শেল স্ক্রিপ্ট ফাংশনের জন্য ইন্ডেন্টেশন সেট করুন


11

আমি sh-mode(বাশ সাব-মোড) একটি নতুন ফাংশন শুরু করার জন্য প্রতি ইনডেন্ট স্পেসের সংখ্যা নির্ধারণ করার চেষ্টা করছি । আমি সেট করার চেষ্টা করেছি:

'(sh-basic-offset 2)
'(sh-indentation 2)
'(smie-indent-basic 2)

(যেমন দেখানো custom-set-variablesমধ্যে .emacs) এবং কিছু অন্যদের পাশাপাশি, কিন্তু তাদের কেউ কোনো প্রভাব ছিল!


ভেরিয়েবলগুলি সেট করার উপায়টি custom-set-variables(যা কাস্টমাইজ দ্বারা অভ্যন্তরীণভাবে ব্যবহৃত জিনিস তবে হাত দ্বারা ব্যবহার করার উদ্দেশ্যে নয়) is ভালো ব্যবহার মত জিনিস (setq sh-basic-offset 2)
স্টেফান

উত্তর:


7

sh-basic-offsetপ্রয়োজনীয় ইন্ডেন্টেশন সেট করা যা প্রয়োজন তা - তবে যা আমি বুঝতে পারিনি তা হ'ল, কাস্টমাইজেশন কার্যকর হওয়ার আগে সমস্ত শেল স্ক্রিপ্ট ফাইলগুলি বন্ধ করে পুনরায় খোলারও দরকার। ইম্যাক্সের আগে এটি করার আগে কখনও মনে নেই।


1
পরিবর্তনের পরে .emacs, আপনাকে অবশ্যই ইম্যাক্স ছেড়ে যাবে এবং এটি পুনরায় চালু করতে হবে, বা M-x load-fileআপনার পুনরায় লোড করতে ব্যবহার করতে হবে .emacsযদি আপনি আপনার সম্পাদকটিতে খোলা একটি ফাইল পুনরায় লোড করতে চান তবে আপনি C-x C-v RETURNএটি "পুনরায়" বলতে পারেন।
অ্যালেক্স এল

এই বিশেষ ক্ষেত্রে @ অ্যালেক্সএল লোড-ফাইল কাজ করে না। আমি যেমন বলেছি, এটি খুব অস্বাভাবিক। সাধারণত কেবল একটি পরিবর্তনশীল কাস্টমাইজ করা যথেষ্ট।
রবিন গ্রিন

হুম ... আপনি কি জানেন কেন এটি @ রবিন-সবুজ হবে? আমি কৌতুহলী.
অ্যালেক্স এল

আপনি M-x set-variableযে বাফারে কাজ করছেন তার জন্য এটি পরিবর্তন করতে চাইলে আপনিও ব্যবহার করতে পারেন
কোটাকোটাকোটা

1

আমি বেসিক-অফসেটটি 2 এ সেট করেছিলাম তবে এটি কাজ করে বলে মনে হয় না, আমি ফিরে গিয়ে C-h v sh-<TAB>টিপতে পেরে বুঝতে পারি যে sh-indentationআমি সেখানে একটি পরিবর্তনশীল সেট 2 করে রেখেছি এবং সবকিছু এখন এক কবজির মতো কাজ করছে বলে মনে হচ্ছে।


"সেট-বেসিক-অফসেট" বলতে আপনার অর্থ কী তা দয়া করে পরিষ্কার করুন এবং আপনি কীভাবে "পরিবর্তনশীলটিকে 2 এ সেট করেছেন" তাও পরিষ্কার করে দিন ।
স্টিফান

ফোরামটি ট্যাব বাদ দিয়েছে কারণ আমি চরিত্রের চেয়ে বড় এবং কমের মধ্যে রেখেছি। Ch v sh- "প্রেস ট্যাব" স্বয়ংক্রিয়রূপ আপনাকে ভেরিয়েবলের একটি তালিকা প্রদর্শন করবে।
আলবারো পেরেইরা

আমি আপনার মার্কআপটি স্থির করেছি, তবে আপনার মন্তব্য এখনও আপনাকে "সেট-বেসিক-অফসেট" বলতে কী বোঝায় বা আপনি কীভাবে "সেই পরিবর্তনশীলটিকে 2 এ সেট করেছেন" তা ব্যাখ্যা করে না ।
স্টিফান

এই পরিবর্তনশীল 26.1 থেকে অপ্রচলিত, sh-basic-offsetপরিবর্তে ব্যবহার করুন।
goetzc

0

আলবারোর মতো আমারও একই অভিজ্ঞতা ছিল: sh-বেসিক-অফসেটটি কোনও প্রভাব ফেলছে না, তবে sh-indentation সেট করা প্রত্যাশা অনুযায়ী কাজ করছে।

আমার ক্ষেত্রে, আমি (setq sh-basic-offset 2)ইম্যাক্স সহ মূল্যায়ন করেছি , উদাহরণস্বরূপ। এমএক্স ইভাল-এক্সপ্রেশন মাধ্যমে। আমি দৌড়াচ্ছি GNU Emacs 25.2.2 (x86_64-pc-linux-gnu, GTK+ Version 3.22.21) of 2017-09-22, modified by Debian। আমার প্রধান মোডটি শেল-স্ক্রিপ্ট।

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