কেন ভিএম সর্বোচ্চ পাঠ্য প্রস্থটি 80 এর পরিবর্তে 79-এ সেট করে?


13

আমি ভিমের কিছু ডিফল্ট মান সম্পর্কে কিছুটা বিস্মিত। বিশেষত, জন্য gq{motion}, বলা হয়

[...]
If the 'textwidth' option is 0, the formatted line
length is the screen width (with a maximum width of
79).

আমি ভেবেছিলাম যে এটির 80পরিবর্তে সর্বাধিক প্রস্থটি সেট করা থাকলে এটি আরও বোধ করা উচিত ।

কেউ কি আমাকে এই সম্পর্কে আলোকিত করতে পারে? আমার ধারণা আমি কিছু মিস করছি


1
ঠিক আছে, 80একটি সুন্দর স্বেচ্ছাচারী "স্ট্যান্ডার্ড" তাই দিয়ে শুরু করা… কেন নয় 79? এখন, এ মোড়ানো লাইন 79একটি 80কলাম ব্যাপী টার্মিনাল ডান দিকে একটি বিট আরো রুম দেয় এবং পারে স্পষ্টতা উন্নত। github.com/vim/vim/blob/…
রোমেনেল

2
হতে পারে, 80কলাম-প্রশস্ত টার্মিনালে শেষ কলামটি মোড়কের প্রতীকটির জন্য সংরক্ষিত ছিল? তবুও, আপনার যদি লাইন নম্বরগুলি চালু থাকে, তবে তারা অবশ্যই একটি কলামের বেশি গ্রহণ করবে। সুতরাং, আমি এখনও বিস্মিত। তদুপরি, আপনি যে কোডটি সংযুক্ত করেছেন সেগুলি থেকে কি 79এটি ব্যবহার করা যেতে পারে? আমি যা পড়ি তা হয়তো বুঝতে পারি নি।
আটকোল্ড

3
... বা আপনি ঠিক সেট করতে textwidthএবং এর সাথে সম্পন্ন করতে পারেন ।
ভ্যানল্যাসার

13
80 হ'ল পুরানো হার্ডওয়্যার টার্মিনালের কলামগুলির সংখ্যা এবং পরে এমএস ডস (পাঠ্য মোড) পর্দার সংখ্যা। tw=79পরিবর্তে tw=8080 টি কলামের টার্মিনালে 80 অক্ষর দীর্ঘ লাইন প্রদর্শন করা একটি অতিরিক্ত নিউলাইন প্রিন্ট করে।
সাতো ক্যাটসুরা

7
একটি নতুন লাইন সর্বদা যুক্ত করা হয়। এটি যদি ৮০ টি অক্ষরের প্রশস্ত টার্মিনালের ৮১ তম অক্ষর হিসাবে দেখা যায় তবে আপনি খালি একটি সম্পূর্ণ রেখা পেয়ে যাবেন।
সাতো ক্যাটসুর

উত্তর:


7

আমার কোনও প্রমাণ নেই যে এই কারণেই 79 টি মূলত বেছে নেওয়া হয়েছিল, তবে এটির মানটি রেখে যাওয়ার একটি ভাল কারণ হ'ল যদি আপনি এর 'list'মধ্যে অন্তর্ভুক্ত কোনও মান ব্যবহার eolকরেন 'listchars'তবে তালিকার প্রদর্শনটি 80-বর্ণের কারণ হতে পারে- একটি 80-অক্ষর-প্রশস্ত টার্মিনালে পরের লাইনে মোড়ানোর জন্য দৈর্ঘ্যের লাইন।

যদি লাইনটি কেবল 79-অক্ষর দীর্ঘ হয় তবে 80-এর কলামটি লাইনটি শেষের listcharজন্য বসে free


পেলাম না। আমার কোথায় ব্যবহার করার কথা 'list'? কি এটি করতে অনুমিত হয়?
আটকোল্ড

@ অ্যাটকোল্ড এটি এমন একটি বিকল্প যার ফলে সাধারণত অদৃশ্য (যেমন লাইনের শেষ) অক্ষরগুলি স্ক্রিনে প্রদর্শিত হয়। এটি কার্যকর হয় তা দেখতে দেখুন :help 'list'বা চালানোর চেষ্টা করুন :set list
ধনী

:set listবেশি কিছু করে না আমি বাজি ধরতে পারি আমার নেই eolমধ্যে listchars। আমি খুব নিশ্চিত নই যে এই 79চরিত্রগুলির পিছনে কারণটি । আমি বিশ্বাস করি @ সাতো-কাতসুরার মন্তব্যে সেরা উত্তর রয়েছে।
এটকোল্ড

eolহয় 'listchars'ডিফল্টরূপে, কিন্তু অবশ্যই এটা আপনার কনফিগ সম্ভব কিছু এটি সরানো দিয়েছে। আমি আমার জবাবে বিশেষত বলেছি যে আমার বিশ্বাস করার কোনও কারণ নেই যে এটি theতিহাসিক কারণ যা 79৯ টি মূলত নির্বাচিত হয়েছিল। আমি এখন অন্য কারণ দিচ্ছি কেন এটি ব্যবহারের জন্য এখন ভাল মান হিসাবে অবিরত থাকে।
ধনী

@Atcold। নিউলাইনটি ডিফল্টরূপে প্রদর্শিত হয় না, এটির জন্য কোনও অতিরিক্ত চরিত্র সংরক্ষণ করার কোনও মানে হয় না।
ক্রিশ্চিয়ান ব্রাবাঁট

6

এটা যে এই "ডিফল্ট" শুধুমাত্র এতে প্রয়োগ গুরুত্বপূর্ণ gqএবং gwযে অধ্যায় বর্ণনা অনুযায়ী কমান্ড এবং স্বয়ং-বিন্যাস। ডিফল্ট textwidthহয় 0। :rightএবং :centerডিফল্ট 80, না 79।

কেন 79 নির্বাচিত হয়েছে হিসাবে, তাই না সরাসরি হোল্ড ওভারের ষষ্ঠ থেকে হতে পারে যেহেতু gq, gw, এবং স্বয়ংক্রিয়-বিন্যাসে ষষ্ঠ মধ্যে কোন অস্তিত্ব নেই। এটি বেশিরভাগ জল্পনা, তবে আমি বিশ্বাস করি যে অটো-ফর্ম্যাটটির জন্য 79৯ ডিফল্টটি ভি এর বিদ্যমান অটো-মোড়কের সাথে সামঞ্জস্যের জন্য বেছে নেওয়া হয়েছিল। এটি এর জন্য প্রযোজ্য gqএবং gwএটি একটি পার্শ্ব-প্রতিক্রিয়া; কেউ আশা করতে পারে 80 অন্যথায় বেছে নেওয়া হত।

Vi তে (এবং ভিমে যদি textwidth=0) পাঠ্যটি উইন্ডো প্রস্থের বিয়োগে স্বয়ংক্রিয়ভাবে মোড়ানো শুরু করে wrapmargin। তবে, যদি wrapmargin=0, কোনও স্বয়ং-মোড়ক স্থান গ্রহণ করবে না। এর অর্থ হ'ল আপনি যদি ৮০ অক্ষরের সীমা সহ একটি ADM-3A ব্যবহার wrapmargin=1করছিলেন তবে এর সাথে অটো মোড়ক সহ সর্বাধিক প্রস্থটি 79 হয় this পরের চরিত্রটি কোথায় মোড়ানো হবে তা সিদ্ধান্ত নেওয়ার আগে হতে চলেছে। অবশ্যই, vi এবং vim পরবর্তী লাইনে কার্সারটি রাখতে পারে (খুব দীর্ঘ শব্দটি টাইপ করার সময় যেমনটি পর্যবেক্ষণ করা হয়) তবে অতিরিক্ত কলামটি ছেড়ে দেওয়া কিছুটা সুন্দর।

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