আমার লোকেলটি আমি কীতে সেট করব এবং এর ফলাফলগুলি কী কী?


19

এই প্রশ্নটি জিজ্ঞাসা করে ক্রোমিয়াম ব্রাউজারটি "ফাইল মুদ্রণ করুন" এর জন্য ডিফল্ট কাগজের আকার সেট করার অনুমতি দেয় না , এবং চ্যাটটিতে @ গিলিসের সাথে কথোপকথনের মাধ্যমেও এই প্রশ্নটি উত্সাহিত করেছিল। @ ডন_ক্রিসটি দ্বারা চিহ্নিত হিসাবে এবং আমার দ্বারা যাচাই করা হয়েছে, লোকেল পরিবর্তন করা (কমপক্ষে LC_PAPER) কোন কাগজের আকার নির্বাচন করা হয়েছে তার মধ্যে একটি পার্থক্য তৈরি করে।

আমি কোনটি বেছে নেব সে বিষয়ে আমি কখনই তেমন চিন্তাভাবনা করি নি এবং সর্বদা সাথে en_US.UTF-8চলেছিলাম কারণ এটি একটি যুক্তিসঙ্গত ডিফল্ট পছন্দ বলে মনে হয়েছিল।

তবে, চ্যাট প্রতি @ গিলস ( http://chat.stackexchange.com/transcript/message/17017095#17017095 এ কথোপকথন শুরু হয় )) চায়ের:

গিলস: LC_PAPER ডিফল্ট $ LANG এ

গিলস: আপনার অবশ্যই LANG = en_US.UTF-8 থাকা উচিত। এটি একটি খারাপ ধারণা: এটি LC_COLLATE সেট করে এবং এটি প্রায় সর্বদা একটি খারাপ জিনিস

গিলস: এলসি_সিএলএলটি সঠিক কোলেশনকে বর্ণনা করে না, এটি খুব সীমাবদ্ধ (এটি চরিত্র অনুসারে অক্ষরে পরিণত হয়) ল্যাং সরান এবং পরিবর্তে এলসি_সিটিওয়াই এবং এলসি_PAPER সেট করুন

গিলস: প্লাস LC_MESSAGES যদি আপনি ইংরেজি ব্যতীত অন্য কোনও ভাষায় বার্তা চান

স্পষ্টতই, এখানে এমন কিছু বিষয় রয়েছে যা সম্পর্কে আমি অবগত নই এবং আমি নিশ্চিত যে আরও অনেকেই রয়েছেন। সুতরাং, লোকালগুলি সেট করার সময় আপনার কোন বিষয় বিবেচনা করা উচিত এবং সেগুলি কীভাবে সেট করা উচিত? আমি সবসময়ই dpkg-reconfigure localesডেবিয়ান চালিয়েছি, এবং এ নিয়ে দু'বার ভেবে দেখিনি ।

সুনির্দিষ্ট প্রশ্ন: আমি কি আমার লোকেলটি এনএনপি.আউটএফ -8 এ সেট করব? এটি করার কোনও অসুবিধা আছে কি?

এছাড়াও দেখুন: (উচিত) LC_COLLATE অক্ষর ব্যাপ্তি প্রভাবিত করে?

উত্তর:


29

স্থান সেটিংস ব্যবহারকারীর পছন্দগুলি যা আপনার সংস্কৃতির সাথে সম্পর্কিত।

স্থানীয় নাম

আমি জানি যে সমস্ত বর্তমান ইউনিক্স বৈকল্পগুলিতে (তবে কয়েকটি পুরাকীর্তিতে নয়), স্থানীয় নামগুলি একই প্যাটার্নটি অনুসরণ করে:

  • একটি আইএসও 9৩৯-১ লোয়ারকেস দ্বি-বর্ণের ভাষা কোড, বা একটি আইএসও 9৩৯-২ তিন বর্ণের ভাষার কোড যদি ভাষার কোনও দ্বি-বর্ণের কোড না থাকে। উদাহরণস্বরূপ, enইংরেজির deজন্য, জার্মানদের jaজন্য, জাপানিদের ukজন্য, ইউক্রেনীয়দের berজন্য, বারবারের জন্য,…
  • অনেকগুলি নয় তবে সমস্ত ভাষার জন্য, একটি আন্ডারস্কোর _অনুসরণ করে একটি আইএসও 3166 বড় হাতের দ্বি-বর্ণের দেশ কোড। সুতরাং: en_USইউএস ইংলিশের en_UKজন্য, ব্রিটিশ fr_CAইংলিশের জন্য, কানাডিয়ান (কোয়েবেক) ফরাসী, de_DEজার্মানির জার্মানির de_ATজন্য, অস্ট্রিয়ার জার্মানির জন্য, ja_JPজাপানের জন্য (জাপানের) ইত্যাদি।
  • বৈকল্পিকভাবে, একটি বিন্দু .একটি নাম দ্বারা অনুসরণ এনকোডিং অক্ষর যেমন UTF-8, ISO-8859-1, KOI8-U, GB2312, Big5অন্তত গনুহ libc সঙ্গে, ইত্যাদি (আমি জানি না কিভাবে এই ব্যাপক), কেস এবং যতিচিহ্ন নাম এনকোডিং উপেক্ষা করা হয়। উদাহরণস্বরূপ, zh_CN.UTF-8ইউটিএফ -8 এ ম্যান্ডারিন (সরলীকৃত) চীনা ভাষা এনকোডযুক্ত রয়েছে, অন্যদিকে zh_CNGB2312 এ ম্যান্ডারিন চাইনিজ এনকোড করা হয়েছে এবংzh_TW তাইওয়ানিজ (odতিহ্যবাহী) চাইনিজ বিগ 5 এ এনকোড রয়েছে।
  • Allyচ্ছিকভাবে, @একটি বৈকল্পিকের নাম অনুসারে একটি চিহ্ন চিহ্ন । রূপগুলির অর্থ লোকাল-নির্ভর। উদাহরণস্বরূপ, অনেক ইউরোপীয় দেশগুলিতে @euroলোকাল বৈকল্পিক রয়েছে যেখানে মুদ্রার চিহ্নটি € এবং যেখানে এনকোডিং রয়েছে এটিতে এই অক্ষরটি অন্তর্ভুক্ত রয়েছে (আইএসও 8859-15 বা আইএসও 8859-16), পুরানো মুদ্রার চিহ্নের সাথে অবিচ্ছিন্ন বৈকল্পিকের বিপরীতে। উদাহরণস্বরূপ, en_IE(ইংরাজী, আয়ারল্যান্ড) লাতিন 1 (আইএসও 8859-1) এনকোডিং এবং the মুদ্রার প্রতীক হিসাবে en_IE@euroল্যাটিন 9 (আইএসও 8859-15) এনকোডিং এবং the মুদ্রার প্রতীক হিসাবে ব্যবহার করে।

তদতিরিক্ত, দুটি ইউনিকেল নাম রয়েছে যা সমস্ত ইউনিক্স-মতো সিস্টেমে বিদ্যমান: CএবংPOSIX । এই নামগুলি সমার্থক এবং অর্থ গণনা, অর্থাত্ ডিফল্ট সেটিংস যা কোনও কম্পিউটার প্রোগ্রাম দ্বারা পার্স করা ডেটার জন্য উপযুক্ত।

স্থানীয় সেটিংস

নিম্নলিখিত স্থানীয় বিভাগগুলি POSIX দ্বারা সংজ্ঞায়িত করা হয়েছে :

  • LC_CTYPE: টার্মিনাল অ্যাপ্লিকেশন দ্বারা ব্যবহৃত অক্ষর সেট: শ্রেণিবদ্ধকরণ ডেটা (যা অক্ষর হ'ল, বিরামচিহ্ন, ফাঁকা স্থান, অবৈধ, ইত্যাদি) এবং কেস রূপান্তর। পাঠ্যের ইউটিলিটিগুলি সাধারণত LC_CTYPEচরিত্রের সীমানা নির্ধারণে মনোযোগ দেয়।
  • LC_COLLATE: কোলেশন (অর্থ বাছাই) অর্ডার। এই সেটিংটি বেশ কয়েকটি কারণে খুব সীমিত ব্যবহারের জন্য:
    • বেশিরভাগ ভাষায় জটিল জটিল বিধি রয়েছে যা কী সাজানো হচ্ছে তার উপর নির্ভর করে (উদাহরণস্বরূপ অভিধানের শব্দ এবং সঠিক নামগুলি একই ক্রম ব্যবহার করতে পারে না) এবং এর দ্বারা প্রকাশ করা যায় না LC_COLLATE
    • কিছু অ্যাপ্লিকেশন রয়েছে যেখানে লোকাল সেটিংস ব্যবহার করে এমন সফ্টওয়্যার দ্বারা সম্পাদিত যথাযথ ক্রমের আদেশ রয়েছে। উদাহরণস্বরূপ, ওয়ার্ড প্রসেসরগুলি ফাইলের মধ্যে একটি ফাইলের ভাষা এবং এনকোডিং সংরক্ষণ করে (অন্যথায় ফাইলটি বিভিন্ন লোকাল সেটিংস সহ কোনও সিস্টেমে সঠিকভাবে প্রক্রিয়া করা যায় না) এবং পরিবেশ দ্বারা নির্দিষ্ট করা লোকেল সেটিংসের বিষয়ে চিন্তা করে না।
    • LC_COLLATEঅদ্ভুত পার্শ্ব প্রতিক্রিয়া হতে পারে, বিশেষত কারণ এটি A <a <B <… এর ক্রমবিন্যাসের কারণ হয়ে তোলে যা "A এবং Z এর মধ্যে" ছোট ছোট অক্ষরকে y এর মাধ্যমে অন্তর্ভুক্ত করে। বিশেষত, খুব সাধারণ নিয়মিত এক্সপ্রেশন যেমন [A-Z]কিছু অ্যাপ্লিকেশন বিরতি দেয়
  • LC_MESSAGES: তথ্য এবং ত্রুটি বার্তাগুলির ভাষা।
  • LC_NUMERIC: সংখ্যা বিন্যাসকরণ: দশমিক এবং কয়েক হাজার বিভাজক। দশমিক বিভাজক হিসাবে
    অনেক অ্যাপ্লিকেশন হার্ড-কোড .। এটি LC_NUMERICখুব কার্যকর এবং সম্ভাব্য বিপজ্জনক নয়:
    • এমনকি যদি আপনি এটি সেট করেন তবে আপনি ডিফল্ট ফর্ম্যাটটি প্রায়শই দেখতে পাবেন।
    • আপনি এমন পরিস্থিতিতে পড়ার সম্ভাবনা রয়েছে যেখানে একটি অ্যাপ্লিকেশন লোকাল-নির্ভর আউটপুট তৈরি করে এবং অন্য অ্যাপ্লিকেশনটি .দশমিক পয়েন্ট বা ,ক্ষেত্র বিভাজক হিসাবে প্রত্যাশা করে ।
  • LC_MONETARY: মত LC_NUMERIC, তবে স্থানীয় মুদ্রার পরিমাণের জন্য।
    খুব কম অ্যাপ্লিকেশন এটি ব্যবহার করে।
  • LC_TIME: তারিখ এবং সময় বিন্যাসকরণ: সপ্তাহের দিন এবং মাসের নাম, 12 বা 24-ঘন্টা ঘড়ি, তারিখের অংশগুলির ক্রম, বিরামচিহ্ন ইত্যাদি

জিএনইউ লিবিসি, যা আপনি এমবেডেড লিনাক্সে পাবেন না, অতিরিক্ত স্থানীয় বিভাগগুলি সংজ্ঞায়িত করে:

  • LC_PAPER: ডিফল্ট কাগজের আকার (উচ্চতা এবং প্রস্থ দ্বারা সংজ্ঞায়িত)।
  • LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT, LC_IDENTIFICATION: আমি এই ব্যবহার করে কোন আবেদন জানি না।

পরিবেশের পরিবর্তনশীল

অ্যাপ্লিকেশনগুলি যে লোকেল সেটিংস ব্যবহার করে সেগুলি পরিবেশের ভেরিয়েবল থেকে নির্ধারণ করে।

  • তারপরে LANGএনভায়রনমেন্ট ভেরিয়েবলের মান অন্য সেটিংস দ্বারা ওভাররাইড না করা ব্যবহৃত হয়। যদি LANGসেট না করা থাকে তবে ডিফল্ট লোকেল C
  • LC_xxxনাম এনভায়রনমেন্ট ভেরিয়েবল হিসেবে ব্যবহার করা যেতে পারে।
  • যদি LC_ALLসেট করা থাকে, তবে অন্যান্য সমস্ত মান উপেক্ষা করা হবে; এটি LC_ALL=Cচালিত অ্যাপ্লিকেশনগুলি সেট করতে প্রাথমিকভাবে দরকারী যেগুলি যেখানে চালিত হয় নির্বিশেষে একই আউটপুট উত্পাদন করা প্রয়োজন।
  • উপরন্তু, গনুহ libc ব্যবহারসমূহLANGUAGE জন্য ফলব্যাক সংজ্ঞায়িত করতে LC_MESSAGES(যেমন LANGUAGE=fr_BE:fr_FR:enপছন্দ বেলজিয়ান ফরাসি, অথবা যদি অনুপলব্ধ ফ্রান্স ফরাসি, বা অনুপলব্ধ ইংরেজি থাকেন)।

লোকেল ইনস্টল করা হচ্ছে

স্থানীয় ডেটা বড় হতে পারে, তাই কিছু বিতরণ সেগুলি ব্যবহারযোগ্য আকারে শিপ করে না এবং পরিবর্তে একটি অতিরিক্ত ইনস্টলেশন পদক্ষেপের প্রয়োজন হয়।

  • ডেবিয়ানে, লোকেল ইনস্টল করতে, dpkg-reconfigure localesডায়ালগ বাক্সের তালিকা থেকে চালান এবং নির্বাচন করুন, বা সম্পাদনা করুন /etc/locale.genএবং তারপরে চালান locale-gen
  • উবুন্টুতে, লোকেল ইনস্টল করতে, locale-genযুক্তি হিসাবে লোকেলের নাম দিয়ে চালান ।

আপনি নিজের লোকালটি সংজ্ঞায়িত করতে পারেন ।

সুপারিশ

দরকারী সেটিংস হ'ল:

  • LC_CTYPEআপনার পাঠ্য ফাইলগুলিকে এনকোড করা হয়েছে এমন ভাষা এবং এনকোডিং সেট করুন your আপনার টার্মিনালগুলি সেই এনকোডিংটি ব্যবহার করছে তা নিশ্চিত করুন।
    বেশিরভাগ ভাষার ক্ষেত্রে কেবল এনকোডিংয়ের বিষয়। কয়েকটি ব্যতিক্রম আছে; উদাহরণস্বরূপ, একটি বড় হাতের iহয় Iসবচেয়ে ভাষায় কিন্তু İতুর্কি ভাষায় ( tr_TR)।
  • LC_MESSAGESআপনি যে ভাষাতে বার্তা দেখতে চান তা সেট করুন to
  • LC_PAPERআপনি en_USযদি ইউ-লেটারটি ডিফল্ট কাগজের আকার হতে চান এবং সেট এ সেট করুন যদি আপনি en_GBA4 চান তবে অন্য কোনও কিছু (যেমন )।
  • Allyচ্ছিকভাবে LC_TIMEআপনার প্রিয় সময় বিন্যাসে সেট করুন ।

উপরে বর্ণিত হিসাবে, সেটিং এড়ানো LC_COLLATEএবং LC_NUMERIC। আপনি যদি ব্যবহার করেন তবে LANGএটিকে দুটি সেট করে সেট করে স্পষ্ট করে ওভাররাইড করুন C


হাই গিলস, বিস্তারিত উত্তরের জন্য ধন্যবাদ। ডেবিয়ানে ডিফল্ট সেটিংস ওভাররাইড করার জন্য ভাল জায়গা কোথায়? যেহেতু আমার একটি এ 4 পেপার আকারের প্রয়োজন তাই আমার ধারণা আমি এর ডিফল্ট মানটি ওভাররাইড করে LC_PAPER। এবং আমি কি রিবুট ছাড়াই সিস্টেম জুড়ে এটি আপডেট করতে পারি?
ফাহিম মিঠা

1
@ ফাহিমমিঠা পরিবেশের ভেরিয়েবল সেট করার জন্য সেরা ডিস্ট্রো / শেল- অজোনস্টিক কোনটি? এবং যদি আপনি এটি ডেবিয়ানে সিস্টেম-ব্যাপী সেট করতে চান তবে তাও আছে /etc/default/locale। আপনি লগ ইন করার সময় এই ফাইলগুলি কার্যকর হয়; আপনি export LC_PAPER=…এই শেল থেকে আরম্ভ হওয়া আদেশগুলি প্রভাবিত করতে শেলটি করতে পারেন ।
গিলস 'অশুভ হওয়া বন্ধ করুন'
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.