উবুন্টুতে নতুন কীবোর্ড বিন্যাস তৈরি করতে প্রয়োজনীয় পদক্ষেপগুলি কী কী?


43

আমি যে কীবোর্ডটি তৈরি করতে চাইছি তাতে প্রচুর ইউনিকোড রয়েছে এবং এর মতো দেখতে: আমি যে কীবোর্ডটি তৈরি করার চেষ্টা করছি

নিম্নলিখিত টিউটোরিয়ালের সাথে ব্যর্থ হওয়া:

  • https://help.ubuntu.com/commune/Howto%3A%20Custom%20keyboard%20layout%20definitions
    (টিউটোরিয়ালে কয়েকটি ত্রুটি রয়েছে এবং এটি "মুছে ফেলার" পরিবর্তে "কাটা" জিনিসগুলির মতো অনর্থক ভাষা ব্যবহার করে) , এবং এটি আশ্চর্যের সাথে ফর্ম্যাট করা হয়েছে)

আমি ভাবছিলাম যে কেউ যদি ধাপে ধাপে নির্দেশাবলী সহ আরও ভাল টিউটোরিয়াল সরবরাহ করতে দয়া করে?


2
এমএমএইচ, এটি আমার কাছে সদৃশ মনে হচ্ছে । খুব খারাপ আপনি ইতিমধ্যে আপনার প্রশ্নের উপর একটি অনুগ্রহ রেখেছেন: /।
গ্লুটোনিমেট

পছন্দ করুন দেখেনি। আমি এখনও আরও ভাল উত্তর জন্য প্রার্থনা করতে হবে।
আকিভা

আপনি এই লিঙ্কটি ব্যবহার করতে পারেন। help.ubuntu.com/commune/ComposeKey
আনন্দু এম দাস

সম্পর্কিত: Askubuntu.com
প্রশ্নগুলি

উত্তর:


69

ইন উবুন্টু 14.04 , কীবোর্ড লেআউট রাখা হয়

/usr/share/X11/xkb/symbols/


এই ডিরেক্টরিতে প্রতিটি ফাইলের মধ্যে নিম্নলিখিত ধরণের প্রবেশের একটি সিরিজ থাকে:

    কী <AC01> {[a, A, aacute, Aacute]};

এই এন্ট্রিটি নিম্নলিখিত নিয়মাবলীগুলি ব্যবহার করে কীবোর্ডের কয়েকটি নির্দিষ্ট অক্ষরকে একটি কী ম্যাপ করে:

  1. < একটি C01> প্রথম চিঠি Aইঙ্গিত আমরা আলফানিউমেরিক কী ব্লক (অন্যান্য বিকল্পগুলি অন্তর্ভুক্ত মধ্যে খুঁজছি হয় KP [for keypad]এবং FK [for Function Key]);

  2. <a সি 01> দ্বিতীয় চিঠি Cসারি নির্দেশ করে, নীচে যা চাবি পাওয়া যায় থেকে গণনা। (একটি স্ট্যান্ডার্ড মার্কিন কীবোর্ডে, স্পেস বারটি সারিতে AAএবং সংখ্যা কীগুলি সারিতে থাকবে AE)।

  3. <এসি 01 > সংখ্যাগুলি 01কীটির অবস্থান নির্দেশ করে, বাম থেকে গণনা করছে এবং বিশেষভাবে নামযুক্ত কী TABবা যেমন ~(টিল্ড) উপেক্ষা করছে : AC01তৃতীয় সারিতে উপরে রয়েছে, বাম দিক থেকে প্রথম কীটি উপেক্ষা করছে ( Caps Lockউপস্থিত থাকলে উপেক্ষা করুন ); একটি স্ট্যান্ডার্ড ইউএস কীবোর্ডে, এটিই "এ" চিহ্নযুক্ত কী।

  4. বন্ধনীগুলি প্রতিটি কীতে বরাদ্দ করা অক্ষরের তালিকাকে সংযুক্ত করে। এটিতে চারটি পর্যন্ত এন্ট্রি রয়েছে, কমা দ্বারা পৃথক করা:

    1. a - অশোধিত চাবি
    2. - Shiftচরিত্রটি।
    3. á - Alt Grচরিত্র। ( aacute )
    4. Á - Shift+ Alt Grঅক্ষর। ( অ্যাকুট )

একটি কাস্টম কীবোর্ড মানচিত্র তৈরি করা আপনার প্রদত্ত লাইনে যে অক্ষরগুলি আপনি চান না তার প্রতিস্থাপন করা যতটা সহজ!

উদাহরণ স্বরূপ:

একটি এংলো Saxonist হিসেবে আমি টাইপ áএবং Áঅনেক কম ঘন ঘন চেয়ে আমি টাইপ æএবং Æ

আমার লিস্টে এংলো স্যাক্সন অক্ষর যোগ করার জন্য, আমি কেবল প্রতিস্থাপন aacuteএবং Aacuteসত্তা নাম বা সঙ্গে ইউনিকোড কোড পয়েন্ট জন্য æএবং Æ( "aelig" বা U00E6 এবং "AElig" বা U00C6 যথাক্রমে):

    কী {[a, A, aelig, AElig]};

অথবা

    কী {[a, A, U00E6, U00C6]};

আমি যখন আমার কীবোর্ড লেআউটটি সংশোধন শেষ করেছি, আমি একই ডিরেক্টরিতে ফাইলটিকে একটি নতুন নাম "oe" দিয়ে সংরক্ষণ করি।

evdev.xmlফাইলটিতে একটি নতুন কীবোর্ড বিন্যাস যুক্ত করা হচ্ছে ।

নতুন কীবোর্ড লেআউটটি ব্যবহার করার জন্য, আমাদের X11এটির উপস্থিতি বলতে হবে। উবুন্টুতে 14.04 ফাইলগুলিতে X11ইনস্টল করা কীবোর্ডগুলি ট্র্যাক করে /usr/share/X11/xkb/rules/evdev.xml। তারপরে এটিতে নতুন লেআউট যুক্ত করতে দিন।

  1. X11/xkb/rules/evdev.xmlএকটি সম্পাদক খুলুন
  2. <layoutList>বিভাগের শেষে যান (অনুসন্ধান করুন </layoutList>)। সর্বশেষ </layout>ট্যাগের পরে নিম্নলিখিতগুলি যুক্ত করুন , যেখানে Xআপনার কীবোর্ড বিন্যাসের ফাইলের নাম /usr/share/X11/xkb/symbols(আমার ক্ষেত্রে oe) রয়েছে; Yএকটি উপযুক্ত সংক্ষিপ্ত নাম; এবং Zএক বা একাধিক ভাষায় একটি উপযুক্ত দীর্ঘ নাম এবং aaaএকটি আইনী তিনটি অক্ষর (আইএসও 63৩৯-২) ভাষার কোড (উদাহরণস্বরূপ ইংরাজির জন্য এনজিও ):

    <layout>
     <configItem>
       <name> X </name>
       <shortDescription> Y </shortDescription>
       <description> Z </description>
       <languageList>
          <iso639Id> aaa </iso639Id>
       </languageList>
     </configItem>
     <variantList/>
    </layout>
    

এটি এখানে, সম্পূর্ণ ভূমিকা অনুসরণ করুন

অন্যান্য সম্পর্কিত লিঙ্ক:
http://ubuntuforums.org/showthread.php?t=188761&p=1092145#post1092145 http://www.charvolant.org/~doug/xkb/html/index.html


আমি এই পোস্টে কিছুটা কাজ করেছি; আপনার সরবরাহ করা সামগ্রীটি খুব উচ্চমানের ছিল, তবে এটি এখনও আমার মতে কাজ করা দরকার। আপনি যে টিউটোরিয়ালগুলি সংযুক্ত করেছেন সেগুলি খুব পুরানো এবং পুরানো এবং "যদি আপনি 8.04 ব্যবহার করেন তবে এক্সওয়াই ও জেড করুন" এর পূর্ণ। আমি একটি সম্পূর্ণ টিউটোরিয়াল উত্তর দেখতে চাই (আমার ইচ্ছা কেবল আমি অনুগ্রহ বাড়িয়ে তুলতে পারি)
আকিভা

@ আকিভা আপনার এই উত্তরটি সাহায্য করেনি? আপনার সমস্যা কোথায়?
সнιη

3
উত্তর সাহায্য করেছে; AC01 ব্যাখ্যা করা সত্যিই ভাল লেখা ছিল, তবে আমি সমস্ত পদক্ষেপ সহ একটি পূর্ণ উত্তর চেয়েছিলাম। আপনি যখন অন্যান্য টিউটোরিয়ালের সাথে যুক্ত হন; তারা বৃদ্ধ, এবং তাদের মধ্যে তিনটি আছে are অন্যান্য ব্যবহারকারীর জন্য, আমি বরং এখানে একটি সম্পূর্ণ উত্তর সরবরাহ করতে চাই। সুতরাং উদাহরণস্বরূপ; কী <ac01> beyond [a, b, c, d] beyond এর বাইরে পাঠ্য ফাইলে আরও উপাদান পাওয়া গেছে এবং একটি এক্সএমএল ফাইলও রয়েছে যা সম্পাদনা করতে হবে। এটি কীভাবে পরীক্ষা করা যায় তা নিয়েও প্রশ্ন রয়েছে। যেমন বললে; আমার এটির জন্য 500 রিপ্রেস অনুগ্রহ করা উচিত ছিল, কারণ একটি ভাল টিউটোরিয়াল তৈরি করা মোটামুটি বড় কাজ।
আকিভা

2
আমি এটির পুরোপুরি জবাব দিতে পারি কারণ আমাকে আমার কীবোর্ড লেআউটটি যাইহোক সংজ্ঞায়িত করতে হবে। যখন আমি এটির কাছাকাছি যাই, আমি সঠিকভাবে উত্তর দেব
আকিভা

এটি কি কেবল জর্গে, বা টিটিস-এর জন্যও কাজ করে?
নারকোলেসিকো

18

দ্রষ্টব্য : ওয়েল্যান্ডল্যান্ড xkb ব্যবহার করে তবে অনেক এক্সটুল সঠিকভাবে কাজ করা বন্ধ করে দিয়েছে (উদাহরণস্বরূপ এক্সডটুল)

দ্রষ্টব্য : এটি একটি বহনযোগ্য টিউটোরিয়াল। কোনও নতুন আট স্তরের বিন্যাস তৈরি করতে এবং বাক্য গঠনটি বোঝার জন্য পৃথক ব্যক্তির পক্ষে এটি সবচেয়ে কার্যকর।

দ্রষ্টব্য: একটি দ্রুত এবং নোংরা সমাধান সরবরাহ করা হয়। এটিতে একটি স্প্রেডশিট অন্তর্ভুক্ত রয়েছে যা আপনার প্রয়োজনীয় কোডটি স্বয়ংক্রিয়ভাবে উত্পন্ন করে।


এক্সকেবি ডিরেক্টরি বোঝা যাচ্ছে

cd /usr/share/X11/xkb/ && ls
  1. types- কীভাবে উত্পাদিত কীগুলি অ্যাক্টিভ Modifier দ্বারা পরিবর্তন করা হয় । (শিফট, কন্ট্রোল, আল্ট
    the ) আপনি সংশোধক কীগুলি কাস্টমাইজ করতে চান তবে গুরুত্বপূর্ণ।
  2. geometry- কীবোর্ড গ্রাফিক্স আঁকতে ব্যবহৃত হয়।
    গুরুত্বপূর্ণ যদি আপনি কীবোর্ড হার্ডওয়ারের একটি মানহীন টুকরা ডিজাইন করেন।
  3. rules- আপনার বর্তমান সেটআপের জন্য উপযুক্ত কনফিগারেশন আনছে।
    আপনি এটি সংজ্ঞায়িত করতে হবে
  4. keycodes- কীবোর্ড হার্ডওয়্যারের জন্য কীকোডগুলির দোভাষী।
    উদাহরণ: ম্যাকিনটোস কীবোর্ডগুলি স্পেসবার হিসাবে এটি বুঝতে পারে 57। আমরা যদিও এটি লিখি<SPCE>
  5. symbols- কোন কীকোডগুলিতে কোন মান নির্ধারিত হয় । এখানেই আমরা আমাদের কাস্টম বিন্যাসটি সংজ্ঞায়িত করব।
  6. compat- জন্য ছোট Compatabilityসংশোধকগুলির
    অভ্যন্তরীণ আচরণ (শিফট, নিয়ন্ত্রণ, আল্ট ...)

কর্মধারা

keycodes > symbols > compat

আমি কেবল স্পর্শ করি symbols: দ্রুত এবং নোংরা সমাধানের জন্য নীচে দেখুন ।


প্রতীক মানচিত্র

/symbols/us এই ডিরেক্টরিতে যে কোনও ফাইল একই কাঠামো অনুসরণ করে।

partial alphanumeric_keys
xkb_symbols "basic" {
    name[Group1]= "US/ASCII";
    key <TLDE> {        [ quoteleft,    asciitilde      ]       };
    key <AE01> {        [         1,    exclam          ]       };
    modifier_map Shift  { Shift_L, Shift_R };
};

partial - সম্পূর্ণ কীবোর্ড মানচিত্র নয়

alphanumeric_keysকীবোর্ডের বিভাগটি ম্যাপ করা হচ্ছে। একাধিক ব্যবহার করা যেতে পারে
দ্রষ্টব্য: যদি *_keysনির্দিষ্ট না করা হয় তবে একটি সম্পূর্ণ কীবোর্ড ধরে নেওয়া হবে।

"basic" - প্রতীক মানচিত্রের নাম

name[Group1]= "US/ASCII";এই কীবোর্ড গোষ্ঠীতে একটি অনন্য নাম দেয় ।

modifier_mapসংশোধক কী সম্পাদনা করার জন্য । (সিটিআরএল, শিফট, Alt ~)

Shift { Shift_L, Shift_R };সাধারণভাবে প্রয়োজনীয় নয়। এটি উভয় শিফটকে শিফট সংশোধক, ওরফে স্তর 2 এ মানচিত্র করে।

key <TLDE> টিল্ড কী - সাধারণত ট্যাবের উপরে ডানদিকে বাম কী থাকে

key <AE01> চিত্র - তিনটি অংশ নিয়ে গঠিত,AE01

  1. A= আলফানিউমেরিক কী ব্লক।
    KP= কীপ্যাড
    FK= ফাংশন কী

  2. Eকীবোর্ডে সারি।
    Space Key= Aসারি
    Shift Key= Bসারি
    Caps Lock= Cসারি
    Tab Key= Dসারি

  3. 01= সারিতে কীটির অবস্থান।
    AE01= 1
    AB02= X
    AC05=G

[+ ]- সি ভাষায়; স্কোয়ার বন্ধনী একটি তালিকা নির্দেশ করে, যার দ্বারা আইটেমগুলি বিভক্ত হয় ,। তালিকার দৈর্ঘ্য স্তরগুলির পরিমাণ নির্ধারণ করে। উদাহরণ স্বরূপ:

key<AE01> { [ Level 1 , Level 2 , Level 3 , Level 4 , Level 5 ] }

সাধারণত, স্তরগুলি নিম্নলিখিত কিপ্রেসের সাহায্যে বোঝায়:

  1. কোনও সংশোধক কী নেই
  2. Shift
  3. Alt Gr
  4. Shift + + Alt Gr
  5. Custom - স্তর 4 এর বাইরে কিছু দেখার মতো নয়।

সংক্ষেপে, আপনি যদি + Altgr শিফটে একটি কী মানচিত্র করতে চান তবে আপনার তালিকাটি কমপক্ষে চারটি আইটেম দীর্ঘ হতে হবে।


সতর্কতা - সাধারণ ত্রুটি

এই লাইনগুলির কোনওটিই একটি গুরুতর ত্রুটি সৃষ্টি করবে এবং আপনাকে ব্যবহারযোগ্য কীবোর্ড ছাড়াই ছেড়ে দেবে:

key<AE01> { [ Backspace ] }
key<AE02> { [ a, b, , C ] }
  • Backspaceহওয়া উচিত BackSpace: বানানের প্রতি অতিরিক্ত যত্নবান মনোযোগ দিন।
  • খালি এন্ট্রি হওয়া উচিত VoidSymbol

সেরা সুরক্ষা পরিমাপ!

  1. আপনি যে ফাইলটি সম্পাদনা করছেন তা ব্যাকআপ করুন:

    sudo /bin/cp /usr/share/X11/xkb/symbols/us /usr/share/X11/xkb/symbols/usBACKUP

  2. একটি স্ক্রিপ্ট তৈরি করুন যা আপনি রুট পাসওয়ার্ড ছাড়াই চালাতে পারেন

কিছুটা এইরকম:

#!/bin/bash
sudo /bin/cp -rf /usr/share/X11/xkb/symbols/usBACKUP /usr/share/X11/xkb/symbols/us

যদি কোনওরকম ভুল হয়ে থাকে তবে সেই লাইন কোডটি চালানোর জন্য আপনার মাউসটি ব্যবহার করুন (ব্যাশ স্ক্রিপ্টে এটি রয়েছে যা আপনি sudoers কে অনুমতি দিয়েছেন chmod +xan


একটি ভাঙা সিস্টেম পুনরুদ্ধার করতে ব্যাকআপ কৌশল

  • সতর্কতা: কীবোর্ড এবং অন-স্ক্রীন কীবোর্ড সামান্যতম ত্রুটির সাথে কাজ করা বন্ধ করবে ।
  • মাউস কাজ করবে । টাইপিং অক্ষরগুলি হাইলাইট করে এবং মিডল ক্লিক ব্যবহার করে তাদের আটকানো যায়। বাশ-এ, আপনি returnএকটি লাইন ব্রেকটি আটকানো (এন্টার টিপুন) করতে পারেন ।
  • কীবোর্ড রুট শেলের পুনরুদ্ধার মোডে কাজ করবে । (বাশ থেকে অ্যাক্সেস করা)
  • আপনি ফাইলগুলি স্থির করতে সর্বদা একটি লাইভ পরিবেশ ব্যবহার করতে পারেন।

দ্রুত এবং নোংরা সমাধান

  1. এখানে যাও
  2. ফাইল> একটি অনুলিপি করুন
  3. Mapper শীটটি যেখানে আপনি আপনার বিন্যাসটি সংজ্ঞায়িত করেন।
    • একক অক্ষর এন্ট্রি প্রোগ্রাম দ্বারা বোঝা কোড অনুবাদ করা হয়।
      ( !হয়ে U0021) ইউনিকোড সমর্থিত!
    • স্ট্রিংগুলি অনুবাদ করা হয় না এবং যেমন হয় তেমন ব্যবহার করা হয়। কোনও স্পিলিং বা ক্যাসি ত্রুটি নেই তা নিশ্চিত করুন !.
    • খালি স্কোয়ারগুলি স্বয়ংক্রিয়ভাবে ভরে যায় VoidSymbol
  4. XKB-Sort শিটটিতে কী গ্রুপ রয়েছে, উদাহরণস্বরূপ:
    key <AE01> { [U0021, U0021, U0021, U0021, U0021, U0021, U0021, U0021] };
    key <AE02> { [U005B, U005B, U005B, U005B, U005B, U005B, U005B, U005B] };
    key <AE03> { [U005D, U005D, U005D, U005D, U005D, U005D, U005D, U005D] };
    key <AE04> { [U0022, U0022, U0022, U0022, U0022, U0022, U0022, U0022] };
    key <AE05> { [U002A, U002A, U002A, U002A, U002A, U002A, U002A, U002A] };
    key <AE06> { [U007B, U007B, U007B, U007B, U007B, U007B, U007B, U007B] };
    key <AE07> { [U007D, U007D, U007D, U007D, U007D, U007D, U007D, U007D] };
    key <AE08> { [U002F, U002F, U002F, U002F, U002F, U002F, U002F, U002F] };
    key <AE09> { [U0027, U0027, U0037, U0027, U0027, U0027, U0027, U0027] };
    key <AE10> { [U0029, U0029, U0038, U0029, U0029, U0029, U0029, U0029] };
    key <AE11> { [U0028, U0028, U0039, U0028, U0028, U0028, U0028, U0028] };
    key <AE12> { [U005C, U005C, U005C, U005C, U005C, U005C, U005C, U005C] };
    
    এটি 8 টি স্তরে পরিবর্তন করে:
    1234567890-= // Physical Keys
    ![]"*{}/')(\ // Changed to these characters
  5. XKBট্যাবেরও লাইন রয়েছে। অন্যান্য প্রতিটি ট্যাব উপেক্ষা করা যেতে পারে (এর কোড)।
  6. sudo vim /usr/share/X11/xkb/symbols/us
  7. একটি বিন্যাসের সামগ্রীগুলি প্রতিস্থাপন করুন। আপনি ব্যবহার করবেন না এমন একটি চয়ন করুন। উদাহরণস্বরূপ: আমি কাঠামোটি অক্ষত রেখে কোলেমাক এন্ট্রি পরিবর্তন করেছি এবং কীগুলি প্রতিস্থাপন করেছি।

আগ্রহের রেখাগুলি:

key.type[group1]="EIGHT_LEVEL";          // Enables 8 levels
modifier_map Control { <LFSH>, <RTSH> }; // Maps ctrl`s to shift keys.
key  { [Control_R, Control_R, Control_R, Control_R, Control_R, Control_R, Control_R, Control_R] }; 
key  { [Control_L, Control_L, Control_L, Control_L, Control_L, Control_L, Control_L, Control_L] };
include "level3(lalt_switch)" // Hold Left  Alt for Level 3
include "level5(ralt_switch)" // Hold Right Alt for Level 5


আপনার উত্তরের শীর্ষ লাইনটি বলে: "(ডাব্লুআইপি - ভোট দিবেন না))"। উত্তরটি দেখে মনে হচ্ছে এটি আমার কাছে তুলনামূলকভাবে সম্পূর্ণ - সম্ভবত এই নোটটি সরানো উচিত?
ম্যাটকেলি

1
@ ম্যাটকেলি আহে আমি এটিকে আপডেট করার সন্ধান করতে পারি নি। আমি আসলে একটি স্প্রেডশীট তৈরি করেছি যা আপনি কোন মক কীবোর্ড বিন্যাসে কোন অক্ষর রেখেছেন তার উপর ভিত্তি করে কোডটি স্বয়ংক্রিয়ভাবে তৈরি করে।
আকিভা

এটি কার্যকর স্প্রেডশিটের মতো শোনাচ্ছে - এটি কি প্রকাশ্যে উপলব্ধ?
ম্যাটকেলি

@ ম্যাটকেলি এখানে একটি অনুলিপি রয়েছে। এটির প্রচুর ক্রাফ্ট বের করা দরকার, এবং সম্ভবত কিছু হ্যান্ডেলবারগুলি যুক্ত হয়েছে, তবে আপনি দেখতে পাচ্ছেন এটি কোড উত্পন্ন করে: docs.google.com/spreadsheets/d/…
আকিভা

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