সাব্লাইম টেক্সট 2 এর মধ্যে কীভাবে আমি ফাইলের অনুমতিগুলি (যেমন স্ক্রিপ্ট ফাইলগুলি সম্পাদনযোগ্য করে তুলতে পারি) সম্পাদনা করতে পারি?


4

যেমন শেল স্ক্রিপ্টগুলি লেখার সময়, আমি সাব্লাইম টেক্সট 2 এর মধ্যে থেকে তাদের অনুমতিগুলি (প্রাথমিকভাবে সম্পাদনযোগ্য অনুমতি) পরিবর্তন করতে চাই ।

আমি কীভাবে এটি সম্পাদন করতে পারি?

উত্তর:


7

নিম্নলিখিতটি বর্তমানে সম্পাদিত হওয়া ফাইলটির জন্য সাধারণ উদ্দেশ্যে অনুমতিগুলি সম্পাদনা কমান্ডের নীচে দেওয়া হয়েছে। প্লাগইনগুলি সম্পর্কে আরও বিশদ ব্যাখ্যার জন্য এবং সাব্লাইম টেক্সট 2 মেনু সম্পাদনা করার জন্য, এই পোস্টটি দেখুন

এটি সম্পাদনা মেনুতে একটি পরিবর্তন মোড কমান্ড যুক্ত করবে । নির্বাচিত হলে, ব্যবহারকারীকে chmod এ একটি বৈধ আর্গুমেন্ট স্ট্রিং লিখতে বলা হয় (যেমন বা ; ডিফল্টটি বর্তমানে 4 ডিজিটের অষ্টাল অনুমতিগুলির মতো স্ট্রিংয়ের মতো থাকে ), এটি সম্পাদনা করা ফাইলটিতে প্রয়োগ করা হয়।u+rwx7550644

ইনপুট প্যানেলের স্ক্রিনশট

নির্বাচন করুন টুলস »নতুন প্লাগইন , নিম্নোক্ত সামগ্রী ঢুকিয়ে হিসাবে সংরক্ষণ chmod.pyমধ্যে ~/Application Support/Sublime Text 2/Packages/User/:

import sublime, sublime_plugin, subprocess

def chmod(v, e, permissions):
    subprocess.call( [ "chmod", permissions, v.file_name() ] )

def stat(filename):
    proc = subprocess.Popen( [ "stat", "-f", '%Mp%Lp', filename ], stdout=subprocess.PIPE )
    return str(proc.communicate()[0]).strip()

class ChangeModeCommand(sublime_plugin.TextCommand):
    def run(self, edit):
        if sublime.platform() != 'osx':
            return

        fname = self.view.file_name()

        if fname == None:
            sublime.message_dialog("You need to save this buffer first!")
            return

        perms = stat(fname)

        def done(permissions):
            chmod(self.view, edit, permissions)

        sublime.active_window().show_input_panel(
            "permissions to apply to the file " + fname + ": ", perms, done, None, None)

এই কমান্ডের জন্য একটি মেনু আইটেম সন্নিবেশ করানোর জন্য ~/Application Support/Sublime Text 2/Packages/User/Main.sublime-menu, ফাইলটি ইতিমধ্যে উপস্থিত থাকলে বিদ্যমান ফাইল সামগ্রীর সাথে মার্জ করে নিম্নলিখিতগুলিতে যুক্ত করুন :

[
    {
        "id": "edit",
        "children":
        [
            {"id": "wrap"},
            { "command": "change_mode" }
        ]
    }
]

এটি কি ওএসএক্সের মধ্যে সীমাবদ্ধ রাখা দরকার, বা লিনাক্স অন্তর্ভুক্ত করার জন্য কি এই শর্তটি আলগা করা যেতে পারে, বা এমনকি "উইন্ডোজ নয়" তেও পরিবর্তন করা যেতে পারে?
ডারথ অ্যান্ড্রয়েড

@ দারথঅ্যান্ড্রয়েড এটি পরীক্ষা করার জন্য আমার কাছে এই মুহুর্তে জিইউআই লিনাক্স নেই, তাই কোড এবং প্রশ্ন ট্যাগ উভয় ক্ষেত্রেই আমি সীমাবদ্ধ হয়েছি। লিনাক্স বাদ দেওয়ার কোনও কারণ আমি দেখতে পাচ্ছি না। if sublime.platform() == 'windows':সম্ভবত পাশাপাশি কাজ করবে।
ড্যানিয়েল বেক

3

এটি মূলত লিনাক্সের অধীনেও কাজ করে, তবে statকমান্ডটি ভিন্নভাবে কাজ করে এবং প্রয়োজনীয় অনেকগুলি তথ্য প্রদর্শন করে।

stat -c %a filename 

পরিবর্তে এবং '644' এর মতো কিছু ফেরত দেবে।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.