ন্যানোতে 8 টি স্পেসের পরিবর্তে ট্যাব অক্ষরটিকে কীভাবে 4 স্পেস তৈরি করবেন?


152

আমি যখন এডিবিতে টিএবি টিপব তখন nanoকার্সারটি 8 টি স্পেসের সাথে লাফিয়ে উঠবে:

def square(x):
        return x * x
def cube(y):
        return y * y * y

আমি এটির মতো প্রদর্শন করতে কীভাবে ট্যাব স্টপ প্রস্থটিকে 4 টি স্পেসে সেট করতে পারি:

def square(x):
    return x * x
def cube(y):
    return y * y * y

ন্যানো একটি সুন্দর বেসিক সম্পাদক। একটি ভাল সুযোগ আছে এটি কেবল এটি সমর্থন করে না।
মিলিমুজ

আমি কেবল ন্যানোতে নয়, এটি টার্মিনালে পাইথন ইন্টারপ্রেটার ব্যবহার করার সময় এটি 8 টি স্পেসেও যুক্ত করা যায়।
পতিত শয়তান


6
@ মিলিমুজ, টার্মিনালের ট্যাব স্টপ পরিবর্তন করা ন্যানোকে প্রভাবিত করবে না। এই প্রশ্নটি বিশেষত ন্যানো সম্পর্কে বা ট্যাবটি সেট করার বিষয়ে হওয়া উচিত পাইথনের জন্য, তবে উভয় সম্পর্কে নয় এবং ইন্টারেক্টিভভাবে ট্যাবটি সেট করার বিষয়ে নয় tabযা কমান্ডটি দিয়ে থামে , যা সমস্ত প্রোগ্রামকে প্রভাবিত করে না।
ক্রিস পেজ

উত্তর:


253

আপনি যদি পাইথনের মতো ভাষার সাথে ন্যানো ব্যবহার করেন (যেমন আপনার উদাহরণ হিসাবে) ট্যাবগুলিকে স্পেসে রূপান্তর করাও ভাল ধারণা।

আপনার ~ / .nanorc ফাইলটি সম্পাদনা করুন (বা এটি তৈরি করুন) এবং যুক্ত করুন:

set tabsize 4
set tabstospaces

আপনি যদি ট্যাবগুলি সহ ইতিমধ্যে একটি ফাইল পেয়ে থাকেন এবং সেগুলিকে স্পেসে রূপান্তর করতে চান তবে আমি expandকমান্ডের (শেল) প্রস্তাব দিচ্ছি :

expand -4 input.py > output.py

আমি পুদিনা ব্যবহার করছি এবং যখন আমি 8 থেকে 4 এ / etc / nanorc এ ট্যাবসাইজ সেট করি এবং ফাইলে ফিরে যাই তখন আমি ট্যাবে 8 টি স্পেস পেয়ে যাচ্ছি, এমনকি আমি সেই ন্যানোর্ক ফাইলটি ~ / এ অনুলিপি করার চেষ্টা করেছি। তবে এটি কাজ করে না, বন্ধ এবং পুনরায় খোলার টার্মিনালটি ব্যবহার করে, তবে এখনও আমি ন্যানো-টি 4 ব্যবহার না করে ট্যাবে 4 টি স্পেস পেতে পারি না। ধন্যবাদ
অ্যালেক্স

@ অ্যালেক্স ডাবল পরীক্ষা করুন যে আপনার ফাইলটি বিন্দু .nanorcনয় দিয়ে শুরু হয় nanorc। এটি অবশ্যই আপনার ব্যবহারকারীদের হোম ডিরেক্টরিতে স্থাপন করা উচিত /home/your-username/.nanorc
সোভেন রোজেক

1
ধন্যবাদ, আমি অন্য একটি .Nororc তৈরির কাজ শেষ / / এ থেকে আলাদা করে এটিকে বাড়ির দিরে রেখেছি এবং এটি কাজ করে। এই নতুন 3 টি লাইনে আমি নতুন .আরও আগ্রহী যে কোনও ব্যক্তির জন্য অন্তর্ভুক্ত করেছি: এখন সেট করুন, সেট করুন ট্যাব আকার 4 এবং ট্যাবস্টোস্পেস সেট করুন
অ্যালেক্স

4
এটি যদি আপনার খেলনা হয় তবে আপনি এই পরিবর্তনটি উপলভ্য সিস্টেমে প্রশস্ত করতে পারেন, কেবলমাত্র বিশ্বব্যাপী ফাইলটি সম্পাদনা করুন /etc/nanorc। সেখানে আরও কয়েকটি বিকল্প রয়েছে যা আপনি উপভোগ করতে পারেন।
এফসিএম

হাই @ অ্যালেক্সা এই লিনাক্স শেল কমান্ডটি সমস্ত ফাইলের জন্য কাজ করে তবে অন্য একটি আউটপুট-ফাইল নির্দিষ্ট করে দেওয়া নিশ্চিত করুন, অন্যথায় আপনার ফাইলটি খালি হয়ে যাবে।
সোভেন রোজেক

91

কমান্ড-লাইন পতাকা

থেকে man nano:

-T cols (--tabsize=cols)
    Set the size (width) of a tab to cols columns.
    The value of cols must be greater than 0. The default value is 8.
-E (--tabstospaces)
    Convert typed tabs to spaces.

উদাহরণস্বরূপ, ট্যাবটির আকার 4 এ সেট করতে, ফাঁক দিয়ে ট্যাবগুলি প্রতিস্থাপন করুন এবং "foo.txt" ফাইলটি সম্পাদনা করতে আপনি এই কমান্ডটি চালাবেন:

nano -ET4 foo.txt

কনফিগার ফাইল

থেকে man nanorc:

set tabsize n
    Use a tab size of n columns. The value of n must be greater than 0.
    The default value is 8.
set/unset tabstospaces
    Convert typed tabs to spaces.

আপনার ~/.nanorcফাইলটি সম্পাদনা করুন (এটি উপস্থিত না থাকলে এটি তৈরি করুন ), এবং এতে সেই আদেশগুলি যুক্ত করুন। উদাহরণ স্বরূপ:

set tabsize 4
set tabstospaces

ন্যানো যখনই এটি চালু হবে তখন ডিফল্টরূপে এই সেটিংসটি ব্যবহার করবে তবে কমান্ড-লাইন পতাকাগুলি সেগুলি ওভাররাইড করবে।


উম্ম ... আমি nan / ডিরেক্টরিতে .nanorc ফাইলটি খুঁজে পাচ্ছি না
পতিত শয়তান

1
ঠিক আছে কিছু মনে করিনি. আমি / ইত্যাদি ডিরেক্টরিতে ন্যানোর্ক পাই। ধন্যবাদ যদিও
পড়েছে শয়তান

5
@ ফ্যালেনস্যাটান, সাধারণত সিস্টেম-বিস্তৃত কাস্টমাইজেশন করার প্রয়োজন না হলে সাধারণত আপনার সম্পাদনা / ইত্যাদি / এড়ানো উচিত। ইতিমধ্যে বিদ্যমান না থাকলে ~ / .nanorc তৈরি করুন এবং আপনার কাস্টমাইজেশনগুলি সেখানে রাখুন।
ক্রিস পেজ

1
নোট করুন যে উপরের উত্তরে আপনাকে "সেট ট্যাবসাইজ 4 সেট করুন", "ট্যাবস্পেস 4 সেট করুন" যুক্ত করতে হবে
টমাস এন

1
সুডো ন্যানো একটি সুস্পষ্ট কারণে ~ / .nanorc গ্রহণ করবেন না; সুতরাং কমান্ড-লাইন পতাকা সমস্যার আরও কার্যকর সমাধান।
ব্যবহারকারী 608800

11

ন্যানো ২.২..6 এ to / .nanorc এ রেখাটি মনে হচ্ছে

set tabsize 4

ট্যাবস্পেস সেট করা আমাকে ত্রুটি দিয়েছে: 'অজানা পতাকা "ট্যাবস্পেস" "


4

ভবিষ্যতের দর্শকদের জন্য, আমার / ইত্যাদি / ন্যানোর্ক ফাইলে একটি লাইন আছে 153 লাইনের নিকটে যা "সেট ট্যাবসাইজ 8" বলে says শব্দটি ট্যাবস্পেসের পরিবর্তে ট্যাবসাইজ করা প্রয়োজন। আমি 8 এর পরিবর্তে 4 দিয়ে এবং লাইনটি uncommented করার পরে এটি আমার সমস্যার সমাধান করেছে।



0

যে কেউ এই পুরানো প্রশ্ন জুড়ে হোঁচট খেতে পারে ...

আমি মনে করি একটি জিনিস আছে যে আমি সমাধান করা প্রয়োজন।

~/.nanorcন্যানোতে আপনার ব্যবহারকারীর নির্দিষ্ট সেটিংস প্রয়োগ করতে ব্যবহৃত হয়, সুতরাং আপনি যদি এমন ফাইলগুলি সম্পাদনা করছেন যা sudo nanoঅনুমতিগুলির জন্য প্রয়োজন হয় তবে এটি কার্যকর হবে না।

যখন ব্যবহার sudoআপনার কাস্টম ব্যবহারকারী কনফিগারেশন ফাইল যখন একটি প্রোগ্রাম খোলার লোড করা হবে না, যেমন আপনি আপনার অ্যাকাউন্ট থেকে প্রোগ্রাম ব্যবহার না করা তাই আপনার কনফিগারেশন পরিবর্তন কেউই ~/.nanorcপ্রয়োগ করা হবে।

যদি আপনি নিজেকে এই পরিস্থিতিতে দেখতে পান ( নিজের কনফিগারেশন সেটিংস চালাতে sudo nano এবং ব্যবহার করতে চান) তবে আপনার কাছে তিনটি বিকল্প রয়েছে:

  • চলমান সময় কমান্ড লাইন পতাকা ব্যবহার sudo nano
  • /root/.nanorcফাইল সম্পাদনা
  • /etc/nanorcগ্লোবাল কনফিগারেশন ফাইল সম্পাদনা

মনে রাখবেন যে /etc/nanorcএকটি গ্লোবাল কনফিগারেশন ফাইল এবং এর ফলে এটি সমস্ত ব্যবহারকারীকে প্রভাবিত করে, এটি আপনার কোনও মাল্টি-ইউজার সিস্টেম রয়েছে কিনা তার উপর নির্ভর করে সমস্যা হতে পারে বা নাও পারে।

এছাড়াও, ব্যবহারকারীর কনফিগারেশন ফাইলগুলি বিশ্বব্যাপী একটিকে ওভাররাইড করবে, সুতরাং আপনি যদি সম্পাদনা করতে চান /etc/nanorcএবং ~/.nanorcবিভিন্ন সেটিংস সহ যখন আপনি চালনা করেন nanoসেটি সেটিংসটি লোড করবে ~/.nanorcতবে আপনি যদি চালনা করেন sudo nanoতবে সেটি সেটিংস থেকে লোড হবে /etc/nanorc

চলমান যখন /root/.nanorcওভাররাইড হবে একই কাজ/etc/nanorcsudo nano

আপনার কাছে প্রচুর বিকল্প না থাকলে পতাকা ব্যবহার করা সম্ভবত সেরা বিকল্প ।

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