যেমন শেল স্ক্রিপ্টগুলি লেখার সময়, আমি সাব্লাইম টেক্সট 2 এর মধ্যে থেকে তাদের অনুমতিগুলি (প্রাথমিকভাবে সম্পাদনযোগ্য অনুমতি) পরিবর্তন করতে চাই ।
আমি কীভাবে এটি সম্পাদন করতে পারি?
যেমন শেল স্ক্রিপ্টগুলি লেখার সময়, আমি সাব্লাইম টেক্সট 2 এর মধ্যে থেকে তাদের অনুমতিগুলি (প্রাথমিকভাবে সম্পাদনযোগ্য অনুমতি) পরিবর্তন করতে চাই ।
আমি কীভাবে এটি সম্পাদন করতে পারি?
উত্তর:
নিম্নলিখিতটি বর্তমানে সম্পাদিত হওয়া ফাইলটির জন্য সাধারণ উদ্দেশ্যে অনুমতিগুলি সম্পাদনা কমান্ডের নীচে দেওয়া হয়েছে। প্লাগইনগুলি সম্পর্কে আরও বিশদ ব্যাখ্যার জন্য এবং সাব্লাইম টেক্সট 2 মেনু সম্পাদনা করার জন্য, এই পোস্টটি দেখুন ।
এটি সম্পাদনা মেনুতে একটি পরিবর্তন মোড কমান্ড যুক্ত করবে । নির্বাচিত হলে, ব্যবহারকারীকে chmod এ একটি বৈধ আর্গুমেন্ট স্ট্রিং লিখতে বলা হয় (যেমন বা ; ডিফল্টটি বর্তমানে 4 ডিজিটের অষ্টাল অনুমতিগুলির মতো স্ট্রিংয়ের মতো থাকে ), এটি সম্পাদনা করা ফাইলটিতে প্রয়োগ করা হয়।u+rwx
755
0644
নির্বাচন করুন টুলস »নতুন প্লাগইন , নিম্নোক্ত সামগ্রী ঢুকিয়ে হিসাবে সংরক্ষণ 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':
সম্ভবত পাশাপাশি কাজ করবে।
এটি মূলত লিনাক্সের অধীনেও কাজ করে, তবে stat
কমান্ডটি ভিন্নভাবে কাজ করে এবং প্রয়োজনীয় অনেকগুলি তথ্য প্রদর্শন করে।
stat -c %a filename
পরিবর্তে এবং '644' এর মতো কিছু ফেরত দেবে।