ভিআইএম সম্পাদক: ফাইল এনকোডিং এবং লাইন শেষ


0

ফাইল সংরক্ষণ করার সময়, এটি আমার টেক্সটম্যাট (ম্যাক ওএস এক্স) এ ডিফল্ট সেটিংস:

ফাইল এনকোডিং: UTF8 (প্রস্তাবিত) লাইন শেষ: এলএফ (প্রস্তাবিত)

টেক্সটমেট হিসাবে একই ফাইল এনকোডিং এবং লাইন শেষের সাথে ফাইলগুলি সংরক্ষণ করতে আমি কীভাবে ভিআইএম সেট করতে পারি? আমি কোন পরামর্শের জন্য কৃতজ্ঞ হবে। ধন্যবাদ!

উত্তর:


5
" Stick with the UTF-8 encoding.
if has('multi_byte')
  " Encoding used for the terminal.
  if empty(&termencoding)
    let &termencoding = &encoding
  endif

  " Encoding used in buffers, registers, strings in expressions, "viminfo"
  " file, etc.
  set encoding=utf-8

  " Encoding used for writing files.
  setglobal fileencoding=utf-8
endif

" Use both Unix and DOS file formats, but favor the Unix one for new files.
set fileformats=unix,dos

বিঃদ্রঃ: শেষ লাইনের যোগ্যতা হল উভয় ফরম্যাট সঠিকভাবে ভিম বাফারে প্রদর্শিত হয়। উদাহরণস্বরূপ, আপনি যদি মুছে ফেলতে চান dos থেকে fileformatsতারপর, সব dos ফাইলগুলি যা আপনি এখন থেকে ভিমে খুলতে চান তার সাথে ক্লাস্টার করা হবে ^M লাইন শেষ এ প্রতীক। এই ^M অন্য কিছুই না, কিন্তু \r যা ভিম, এই ক্ষেত্রে, সঠিকভাবে ব্যাখ্যা করতে ব্যর্থ হবে। অতএব, এটি দৃঢ়ভাবে রাখা সুপারিশ করা হয় fileformats উপরে প্রদর্শিতভাবে. চিন্তা করবেন না, আপনার যে কোনও নতুন ফাইলগুলি ব্যবহার করা হবে unix ডিফল্ট দ্বারা বিন্যাস (উপরে মন্তব্য বিবৃত)।

আপনি কিছু ফাইল সম্মুখীন হলে dos বিন্যাস এবং এটি রূপান্তর করতে চান unix, তারপর নিম্নলিখিত টাইপ করুন:

:set ff=unix

ধন্যবাদ, কিন্তু শর্ত থাকে কি করে? এটা কি দরকারি?

ভিম কম্পাইল করা হয়েছে কিনা তা যাচাই করা হচ্ছে multibyte বৈশিষ্ট্য (যা ইউনিকোড সমর্থন এবং আরো রয়েছে)। আপনি টাইপ করতে পারেন :version এবং জন্য অনুসন্ধান করুন +multi_byte। যদি এটি উপস্থিত থাকে, তাহলে এর অর্থ হল ভিমকে সংকলিত করা হয়েছে multibyte বৈশিষ্ট্য, এবং এই চেক অবশ্যই পাস হবে। অন্য দিকে, যদি আপনি দেখতে -multi_byte সেখানে, এর বিপরীত অর্থ (ইউনিকোড সমর্থিত নয়), এবং সেই অনুসারে এই চেকটি পাস হবে না, যা ভিমকে আপনার লোড করার সময় ক্র্যাশিং / ভার্কিং থেকে বাধা দেয়। .vimrc
Alexander Shukaev

হ্যাঁ, আমার কাছে ঐ অপশনটি রয়েছে (+ multi_byte)। Utf-8 এ এনকোডিং এবং ফাইলেনকোডিং উভয় সেট করার প্রস্তাব দেওয়া হয়? আমি সত্যিই তাদের মধ্যে পার্থক্য বুঝতে পারছি না। যখন আমি একটি ফাইল তৈরি করা হয় যা এক ব্যবহার করা হয়? এবং আমি এটি সংরক্ষণ যখন কোন এক। ধন্যবাদ!

সংক্ষিপ্ত মন্তব্য ইতিমধ্যে আপনি উভয় প্রকৃত উদ্দেশ্য বেশ কিছু তথ্য দিতে encoding এবং fileencoding। আমি এখানে ভিম ডকুমেন্টেশন পুনরায় লিখতে কোন অভিপ্রায় আছে। :h encoding এবং :h fileencoding তোমার বন্ধুরা
Alexander Shukaev

0

লাইন শেষ দ্বারা নির্ধারিত হয় 'fileformat' (আসলে ব্যবহৃত) এবং 'fileformats' (সনাক্ত কি পায়) বিকল্প। যদি থাকে unix সেখানে আপনি ভাল আছেন; যে প্রতিনিধিত্ব করে <LF>। তুমি ব্যবহার করতে পার :help এই আরো কোন পড়তে।

তোমার 'encoding' সেট করা উচিত utf-8, এবং যে মান উপস্থিত করা উচিত 'fileencodings' (এটি ডিফল্ট করে)।

আপনি সেটিংস চেক করতে পারেন (tailing নোট ? বিকল্পের নাম পরে):

:set encoding?

স্থায়ী পরিবর্তন করতে, রাখুন :set ... আপনার মধ্যে কমান্ড ~/.vimrc

মনে রাখবেন যে আপনি সর্বদা সেটিংস ওভাররাইড করতে পারেন, উদাঃ

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