Vim এ এনটিডিং এবং ফাইলেনকোডিং utf-8 এ সেট করুন


101

এই দুটি কমান্ডের মধ্যে পার্থক্য কি?

  • set encoding=utf-8
  • set fileencoding=utf-8

আমি যখন utf-8 ব্যবহার করতে চাই তখন কি উভয়ই সেট করতে হবে?

এছাড়াও, আমি সেট fileencoding করতে হবে setবা setglobal?


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

উত্তর:


93

টিএল; ডিআর

প্রথম ক্ষেত্রে set encoding=utf-8, আপনি টার্মিনালে প্রদর্শিত আউটপুট এনকোডিং পরিবর্তন করবেন ।

দ্বিতীয় ক্ষেত্রে set fileencoding=utf-8, আপনি লিখিত ফাইলটির আউটপুট এনকোডিং পরিবর্তন করবেন ।

@ ডেনিসের বক্তব্য অনুসারে, আপনি যদি সর্বদা কাজ করতে চান তবে আপনি সেগুলি উভয়টিকে আপনার ~ / .vimrc এ সেট করতে পারেন utf-8

আরো বিস্তারিত

ইউনিকোড নিয়ে কাজ করার বিষয়ে ভিআইএমের উইকি থেকে

" encodingকীভাবে অভ্যন্তরীণভাবে ভীম চরিত্রগুলি উপস্থাপন করবে তা নির্ধারণ করে Un ইউনিকোডের বেশিরভাগ স্বাদের জন্য ইউটিএফ -8 প্রয়োজনীয়।"

" একটি নির্দিষ্ট ফাইলের জন্য এনকোডিংfileencoding সেট করে (স্থানীয়ভাবে বাফার করে); সেটগ্লোবাল ডিফল্ট মান সেট করে An একটি খালি মানটি ব্যবহার করা যেতে পারে: এটি 'এনকোডিং'র মতো ডিফল্ট হয় Or অথবা আপনি ইউসিএস এনকোডিংগুলির একটি সেট করতে চাইতে পারেন, এটি আপনার অক্ষরের মিশ্রণের উপর নির্ভর করে একই ডিস্ক ফাইলটিকে বৃহত্তর বা ছোট করতে পারে Also এছাড়াও, IIUC, utf-8 সর্বদা বিগ-এন্ডিয়ান (হাই বিট ফার্স্ট) থাকে তবে ইউসিএস বড়-এন্ডিয়ান বা ছোট-এন্ডিয়ান হতে পারে, তাই আপনি যদি এটি ব্যবহার করুন, আপনার সম্ভবত 'বোমা' সেট করতে হবে (নীচে দেখুন)।


4
দুঃখিত আমি বুঝতে পারি না। ফাইলেনকোডিং আরও সঠিকভাবে কি করে?
কিরলি জোল্টান

25
প্রথম ক্ষেত্রে, আপনি টার্মিনালে প্রদর্শিত আউটপুট এনকোডিংটি পরিবর্তন করবেন। দ্বিতীয় ক্ষেত্রে, আপনি লিখিত ফাইলটির আউটপুট এনকোডিং পরিবর্তন করবেন।
এড্রিয়েন ল্যাক্রিক্স

4
+1 সংক্ষিপ্ত এবং মিষ্টি উত্তরের জন্য, কেবলমাত্র সরকারী ডকুমেন্টেশনের পুনরাবৃত্তি করার পরিবর্তে! :)
425nesp

প্রয়োজন হলে সরাসরি কমান্ড লাইন থেকে অ্যাড-হক vim -c "set encoding=utf-8" file.ext
হান্স জিনজেল

87
set encoding=utf-8  " The encoding displayed.
set fileencoding=utf-8  " The encoding written to file.

আপনি ~/.vimrcসর্বদা utf-8 দিয়ে কাজ করতে চাইলে আপনি উভয়টিকেও ঠিক রাখতে পারেন।


0

আপনি আপনার .vimrc এ ভেরিয়েবল 'ফাইলেনকোডিংস' সেট করতে পারেন।

এটি বিদ্যমান ফাইল সম্পাদনা করার সময় বিবেচিত অক্ষরের এনকোডিংগুলির একটি তালিকা। কোনও ফাইল পড়ার পরে, ভিম প্রথম বর্ণিত অক্ষর এনকোডিংটি ব্যবহার করার চেষ্টা করে। যদি কোনও ত্রুটি সনাক্ত হয় তবে তালিকার পরবর্তী একটিটি চেষ্টা করা হবে। যখন কোনও এনকোডিং পাওয়া যায় যে কাজ করে, তখন 'ফাইলেনকোডিং' সেট করা থাকে। যদি সমস্ত ব্যর্থ হয়, 'ফাইলেনকোডিং' একটি খালি স্ট্রিংয়ে সেট করা থাকে, যার অর্থ 'এনকোডিং' এর মান ব্যবহৃত হয়।

দেখা :help filencodings

যদি আপনি প্রায়শই সিপি 1252 দিয়ে কাজ করেন তবে আপনি এটি এখানে যুক্ত করতে পারেন:

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