কী কোডগুলি উপযুক্ত ক্রিয়াতে ম্যাপ করা হয়?


18

কী কোডগুলি ব্যবহার করে স্ক্যান কোডগুলির ম্যাপিং কীভাবে পরিবর্তন করতে হবে তা নির্ধারণ করার পরে udev, এই প্রশ্নটি দেখুন , আমি ভাবছিলাম যে কী কী কোডগুলি (বা ইভেন্টগুলি যদি আপনি চান) উপযুক্ত ক্রিয়ায় ম্যাপ করা হয়।

সুতরাং, উদাহরণস্বরূপ, আপনি যদি volume upআপনার কীবোর্ডে টিপেন, একটি স্ক্যান কোড প্রেরণ করা হবে যা volumeupকী কোডে রূপান্তরিত হবে । তবে কী কীভাবে এই কী কোডটি বাধা দেওয়া হয়েছে, ভলিউম আপ হয়েছে এবং উপযুক্ত বিজ্ঞপ্তি প্রদর্শিত হবে?

আমার অনুমান যে কোথাও একটি স্ক্রিপ্ট কল করা উচিত, তাই আমি জানতে চাই like স্ক্রিপ্টগুলি কোথায়।

সম্পাদনা: আমি যে মূল কোডগুলি উল্লেখ করেছি তা মূল কোডগুলি xevরিটার্নের সাথে বিভ্রান্ত হওয়ার কথা নয় , তবে আমি সেগুলিতে আগ্রহী;)


3
আমি একমত নই, উদাহরণস্বরূপ উবুন্টুর পক্ষে বিজ্ঞপ্তিটি খুব নির্দিষ্ট, তাই বিজ্ঞপ্তিটি কীভাবে প্রেরণ হয়েছে তা জানতে চাই । আমার অনুমান যে কোথাও কোনও স্ক্রিপ্ট অবশ্যই কল করা উচিত, তাই আমি জানতে চাই যে এই স্ক্রিপ্টগুলি কোথায়।
গেরহার্ড বার্গার

2
এটি উবুন্টু-সম্পর্কিত প্রশ্ন হিসাবে উবুন্টু হ্যান্ডেলগুলি যেভাবে পরিচালনা করে আইআইআরসি-র বছর পরিবর্তিত হয়েছে। উবুন্টুতে ইভেন্টের ক্রমটি কী তা হ'ল যথাযথ ক্রিয়াকলাপ ঘটাচ্ছে এমন একটি হটকি চাপছে এমন ঘটনা উবুন্টুতে জেনে রাখা অত্যন্ত আকর্ষণীয়। সম্ভাব্য উদ্দেশ্যসমূহ: কাস্টম উজ্জ্বলতা নিয়ন্ত্রণ , গরম প্রধান ইস্যু, ইত্যাদি ডিবাগ
gertvdijk

2
@ শেঠকে পুরানো মনে হচ্ছে। এইচএল 10.04 সাল থেকে অনেক দিন আগে অবহেলিত । ডেস্কটপ বিজ্ঞপ্তিগুলি কীভাবে ট্রিগার করা হয় সে সম্পর্কেও তথ্যের অভাব রয়েছে।
gertvdijk

1
আজ আমি wiki.ubuntu.com/Hotkeys/Troubleshૂટ জুড়ে এসে পৌঁছেছি , যা কিছু সুন্দর পয়েন্টার দেয় (এখানে উইকি.উবুন্টু / হটকিজ / আর্কিটেকচারের একটি লিঙ্ক রয়েছে যা খুব তথ্যপূর্ণ)। আমি মনে করি স্টিফেন অস্টেরমিলারের উত্তর সঠিক দিকে, তবে আমি এই লিপিগুলি সন্ধান করতে এবং সেগুলি পরিবর্তন করতে সক্ষম হতে চাই;)
গারহার্ড বার্গার

1
^^ এই তথ্যটি পুরানো বলে মনে হচ্ছে, এখানে জিনোম-সেটিং-ডেমনের অধীনে কোনও কী-বাইন্ডিং নেই ... কমপিজ বিভাগের অধীনে উজ্জ্বলতার জন্য প্রচুর হিট লাগছে যদিও (আমি unityক্যের জন্য অনুমান করছি?) কে জানে কীভাবে notify-osdকাজ করে? আমি মনে করি সেদিকেই উজ্জ্বলতার বিজ্ঞপ্তিগুলি প্রেরণ করা হচ্ছে ...
গারহার্ড বার্গার

উত্তর:


6

ঠিক আছে, এটি https://help.ubuntu.com/commune/ মাল্টিমিডিয়াকিজে পাওয়া গেছে

আপনি যখন আপনার কীবোর্ডে একটি কী চাপান, লিনাক্স কার্নেল এটির জন্য একটি কাঁচা স্ক্যানকোড তৈরি করে (যদি এটি নির্ধারিত হয়)। প্রতিটি স্ক্যানকোড একটি কীকোডে ম্যাপ করা যায়। এটি কার্নেল স্তরে। এক্সের ম্যাপিং কীগুলির মোট (কোয়াটি) মোট স্বতন্ত্র উপায় রয়েছে: এক্স শুরুতে কার্নেল কীকোড টেবিলটি পড়ে, তারপরে কীকোডটিকে তার স্বতন্ত্র কীকোড টেবিলের সাথে মানচিত্র করে (এটি কার্নেল কীকোডগুলির মতো তবে ভিন্ন) :)। তারপরে প্রতিটি কীকোডকে কীসিমের সাথে ম্যাপ করা যায়, অর্থাত্ একটি স্ট্রিং যা কোনও কীকে উপস্থাপন করে বা কোনও ক্রিয়া প্রস্তাব দেয়। সুতরাং আমাদের কীগুলি সম্পূর্ণরূপে কার্যক্ষম করার জন্য তাদের একটি কার্নেল স্ক্যানকোড / কীকোড প্লাস একটি এক্স কীকোড / কীসিয়াম প্রয়োজন। এটি অদ্ভুত বলে মনে হতে পারে তবে এক্স বিকাশকারীদের কার্নেল থেকে পৃথক কীবোর্ড ম্যাপিং রাখার কারণ রয়েছে। এটি মোটেই কঠিন নয়, কেবল একটি বেশ ক্লান্তিকর পদ্ধতি।

তাই কী কোডসগুলি কীসিসের সাথে ম্যাপ করা হয়, তাই কীসিমগুলি কোথায়? আমি এই প্রশ্নের সন্ধান পেয়েছি এবং উত্তর পেয়েছি: আজকাল সমস্ত এক্স কীওয়ার্সের একটি তালিকা আমি কোথায় পাই? যেহেতু আমরা ভলিউম কীগুলির বিষয়ে কথা বলছি XF86keysym.hএটি উত্তরে উল্লিখিত উত্স-কোডে পাওয়া যাবে ।

আমার কম্পিউটারে সেই ফাইলটিতে আমি ভলিউমের জন্য নিম্নলিখিতটি পেয়েছি:

#define XF86XK_AudioLowerVolume 0x1008FF11   /* Volume control down        */
#define XF86XK_AudioMute    0x1008FF12   /* Mute sound from the system */
#define XF86XK_AudioRaiseVolume 0x1008FF13   /* Volume control up          */

আজব ... অন্য যে কোনও কিছুর থেকে আলাদা মান, সম্ভবত কীগুলি পরিচালনা করার জন্য একাধিক সিস্টেম রয়েছে? http://crunchbang.org/forums/viewtopic.php?id=16656


আমি জুবুন্টু ব্যবহার করছি, এবং কীগুলি নিয়ন্ত্রণ করতে, আমাকে ক্রিয়াগুলি ম্যানুয়ালি তৈরি করতে হবে (এর মতো আমি কীবোর্ডের শর্টকাটগুলি কীভাবে xubuntu এ পরিবর্তন করব? )। তবে বিজ্ঞপ্তিগুলি স্বতন্ত্র বলে মনে হচ্ছে যেন তারা কী-প্রেসে উঠেছিল এবং সেই অনুসারে কাজ করছে, এর অর্থ এই হতে পারে যে উবুন্টুতে অন্যান্য প্রোগ্রামগুলি এইভাবে সেট আপ করা হয়েছে, সুতরাং কীগুলিতে স্ক্রিপ্টগুলি ম্যাপ করার দরকার নেই।

সুতরাং আমি নিশ্চিত যে প্রোগ্রামগুলি এখন কী-তে উঠছে (যাতে কোনও স্ক্রিপ্ট খুঁজে পাওয়া যায় না)।

এক্সুবুন্টুতে আমার পালস অডিও নিয়ে সমস্যা হয়েছিল এবং ভলিউম পরিবর্তনের জন্য কাস্টম স্ক্রিপ্টগুলি ব্যবহার করে মনে হয়েছিল যে পালস নিঃশব্দ কীটি নিঃশব্দ করছে , আলসা এবং পালস অডিওকে নিঃশব্দ করছে, তবে কেবল আলসা আকর্ষণীয় কাজের জন্য তৈরি করেছে।


NotifyOSD https://wiki.ubuntu.com/NotifyOSD#Volume_changes সম্পর্কে এটি দেখুন

যদি আপনি এই চিত্রগুলি দেখেন: https://wiki.ubuntu.com/NotifyOSD# আর্কিটেকচার

বিশেষত এটি: এখানে চিত্র বর্ণনা লিখুন

এটি দেখায় যে একটি "হার্ডওয়্যার কী শ্রোতা" রয়েছে যা ডিবিস বা এইচএল ফর্মটি গ্রহণ করে? এরপরে এটি "সিস্টেম থেকে ভিজ্যুয়াল উপাদান পুনরুদ্ধার করে" যা শব্দ এবং উজ্জ্বলতার আইকনগুলি নোটিফাই-ওএসডি উত্সে রয়েছে এবং সেখান থেকে বুদ্বুদ তৈরি করে।


এটি সমস্ত ক্রেজি বিভ্রান্তিকর, তবে যতদূর আমি এটি বুঝতে পেরেছি (এতদূর):

কাঁচা স্ক্যানকোড (উদা। e016)> কীকোড (প্রাক্তন 160)> কীসিম (প্রাক্তন প্রোগ্রাম শ্রবণ)


দেখে মনে হচ্ছে এই কোথাও পাচ্ছে! শুরু থেকে সিডাব্লু হিসাবে চিহ্নিত হয়েছে তাই আমি অনুমান করি আপনি এখনও উন্নতি করছেন? :)
gertvdijk

হ্যাঁ, আমার আরও কিছুটা অনুসন্ধান করা দরকার, ডায়াগ্রামটিতে অনেকগুলি প্রশ্ন চিহ্ন রয়েছে।
মাতিও

আপনি কীভাবে দুর্ঘটনাক্রমে একটি সম্প্রদায়ের উইকি উত্তর তৈরি করেছেন? এটিকে পূর্বাবস্থায় ফেলার জন্য কোনও মোডকে জিজ্ঞাসা করুন ... ওহ এবং সেই গ্রাফগুলি সম্ভবত বেশিরভাগ পুরানো হয়ে গেছে, কারণ এইচএল দীর্ঘদিন থেকে অবহেলিত ... আচ্ছা অন্তত আমরা কোথাও পাচ্ছি: ডি
জারহার্ড বার্গার


@gertvdijk আমি জানি, তবে যে সমস্ত উচ্ছ্বাস তিনি মিস করতে যাচ্ছেন তার জন্য এটি লজ্জার বিষয় হবে;)
বার্গার

1

বেশিরভাগ ক্ষেত্রে, কোনও স্ক্রিপ্ট নেই যা চালিত হয়। এগুলি উইন্ডো ম্যানেজার বা সেটিংস ডেমনগুলিতে ইভেন্টগুলি প্রেরণের কারণ ঘটায়। প্রক্রিয়াটিতে স্ক্রিপ্টিং সম্পর্কে আমি কেবলমাত্র সচেতন তখনই যখন আপনি কাস্টম কী বাইন্ডিংগুলি কনফিগার করেন। কাস্টম কীবাইন্ডিংয়ের জন্য, আপনি কমান্ড লাইনগুলি (এক্সিকিউটেবল বা স্ক্রিপ্ট) যুক্ত করতে পারেন এবং কীগুলিতে আবদ্ধ থাকতে পারেন।

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


তাহলে ডেস্কটপ বিজ্ঞপ্তিগুলি কীভাবে ট্রিগার করা হয়?
জেরহার্ড বার্গার

আমি বিশ্বাস করি যে জিনোম সেটিং ডিমন উদাহরণস্বরূপ ভলিউম এবং উজ্জ্বলতার ক্ষেত্রে তাদের ট্রিগার করার জন্য দায়ী।
স্টিফেন অস্টেরমিলার

2
আমি আপনার স্ক্রিপ্টটি চালিয়েছি, তবে এটির যা দেখায় তা হ'ল শর্টকাটগুলি আপনি সিস্টেম সেটিংস> কীবোর্ড> শর্টকাটসের সাহায্যে অ্যাক্সেস করতে পারেন , উদাহরণস্বরূপ আমি উজ্জ্বলতার কোনও রেফারেন্স পাইনি।
জেরহার্ড বার্গার

শ্লোককাট কীগুলি পাওয়ার জন্য দুর্দান্ত স্ক্রিপ্ট।
মাতেও

0

উত্তরটি ড্রাইভারদের সাথে সম্পর্কিত ।

অপারেটিং সিস্টেমের সাথে ইন্টারঅ্যাক্ট করার জন্য প্রতিটি হার্ডওয়্যারের অবশ্যই ড্রাইভার থাকতে হবে।

Http://www.linuxforu.com/2010/11/ বোঝা-linux-device-drivers / এর উদ্ধৃতি :

একটি ড্রাইভার চালনা করে, পরিচালনা করে, নিয়ন্ত্রণ করে, নির্দেশ দেয় এবং তার কমান্ডের অধীনে সত্তাকে নিরীক্ষণ করে । একটি বাস ড্রাইভার একটি বাসের সাথে কী করে, একটি ডিভাইস ড্রাইভার একটি কম্পিউটার ডিভাইস (কম্পিউটারের সাথে সংযুক্ত হার্ডওয়ারের কোনও অংশ) যেমন মাউস, কীবোর্ড, মনিটর, হার্ড ডিস্ক, ওয়েব-ক্যামেরা, ঘড়ি এবং আরও অনেক কিছু দিয়ে থাকে।

তদ্ব্যতীত, "পাইলট" কোনও ব্যক্তি বা এমনকি কোনও ব্যক্তি দ্বারা নিরীক্ষিত একটি স্বয়ংক্রিয় সিস্টেম হতে পারে (উদাহরণস্বরূপ বিমানের মধ্যে একটি অটো-পাইলট সিস্টেম)। একইভাবে, হার্ডওয়্যারের একটি নির্দিষ্ট অংশটি সফ্টওয়্যার (কোনও ডিভাইস ড্রাইভার) দ্বারা নিয়ন্ত্রণ করা যেতে পারে, বা অন্য হার্ডওয়্যার ডিভাইস দ্বারা নিয়ন্ত্রিত হতে পারে, যার ফলস্বরূপ একটি সফ্টওয়্যার ডিভাইস ড্রাইভার দ্বারা পরিচালিত হতে পারে। পরবর্তী ক্ষেত্রে, এই জাতীয় নিয়ন্ত্রণকারী ডিভাইসটিকে সাধারণত একটি ডিভাইস নিয়ামক বলা হয়। এটি নিজেই একটি ডিভাইস হওয়ার কারণে প্রায়শই একটি ড্রাইভারেরও প্রয়োজন হয়, যা সাধারণত বাস ড্রাইভার হিসাবে পরিচিত।

একটি ডিভাইসে একটি ডিভাইস নিবন্ধ রয়েছে যা নিয়ন্ত্রণ / স্ট্যাটাস বিট এবং ডেটা বিটগুলি সঞ্চয় করে। যখনই কিছু ডেটা স্থানান্তরিত করা দরকার তখন এটি সাধারণত ডেটা বিট সেট করে প্রেরণ করা হয়।

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

লিঙ্ক:

  • আপনি যদি আগ্রহী হন, তবে আমি বলতে চাই যে আপনার 17 ভালো করে লেখা নিবন্ধ নিয়ে গঠিত ডিভাইস ড্রাইভার উপর এই সিরিজের পড়া linuxforu : http://www.linuxforu.com/tag/linux-device-drivers-series/

  • আপনি ইউএসবি কীবোর্ডের জন্য কীভাবে কোনও ডিভাইস ড্রাইভার লিখতে হবে সে সম্পর্কে নির্দেশাবলী সম্বলিত সুনির্দিষ্ট নথিটি পড়তে পারেন: http://www.emntech.com/docs/USB_KeyBoard_Driver_eMNTech.pdf

  • আপনি যদি লিনাক্স ডিভাইস ড্রাইভারদের সম্পর্কে খুব উত্সাহিত হন তবে "লিনাক্স ডিভাইস ড্রাইভারস" বইটি পড়ুন যা নিখরচায় পিডিএফ হিসাবে উপলব্ধ: http://lwn.net/Kernel/LDD3/


3
উহম ... আমি মনে করি না যে ড্রাইভারগুলি আমার কীবোর্ডে টিপবো কীটির অর্থের কোনও ধারণা আছে । নোটবুকের কয়েকটি বিশেষ হটকি ডিভাইসের জন্য এটির জন্য ড্রাইভারের দরকার পড়তে পারে - তবে এটি "ভলিউম আপ" এর মতো নিয়মিত মাল্টিমিডিয়া হটকিগুলি কভার করে না। এটি অবশ্যই কার্নেল / এক্স / ডিইএর আরও সাধারণ অঞ্চলে beেকে রাখতে হবে। আমি লিনাক্স কার্নার ডিভাইস ড্রাইভার প্রোগ্রামিং সম্পর্কে উল্লেখগুলি খুব বিস্তৃত বলেও মনে করি।
gertvdijk

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