সর্বদা নমলক রাখুন


8

আমি ইতিমধ্যে শারীরিকভাবে নম লক কী ক্যাপটি সরিয়ে ফেলেছি, তাই আমি ঘটনাক্রমে এটি টিপবো না (আমি একটি খুব কমপ্যাক্ট কীবোর্ড ব্যবহার করি)। তবে আমি বুঝতে পারি যে জর্গে একটি বাগ রয়েছে যা offআমি কীবোর্ড বিন্যাসটি স্যুইচ করার সময় নম লককে টগল করে ।

সুতরাং আমার এমন কিছু দরকার যা হয় হয় নিম লককে একেবারে "বন্ধ" করে দেয়, অথবা বিকল্পভাবে (সম্ভবত সহজ?) নম লক অবস্থা পর্যবেক্ষণ করে এবং এটি "বন্ধ" হিসাবে লক্ষ্য করার সাথে সাথেই এটি "চালু" করে দেয়।

এখানে একটি ইউনিক্স উত্তর দেওয়া হয়েছে যা এটির দিকে লক্ষ্য করে বলে মনে হচ্ছে তবে এলএক্সডিইডি। উবুন্টু 15.04 এবং ityক্যতে এই ধারণাটি কাজ করতে আমার কী করতে হবে?

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

উত্তর:


9

পরিষ্কারটি অবশ্যই বাগটি সংশোধন করতে হবে, তবে কার্যক্ষম হিসাবে নীচের ব্যাকগ্রাউন্ড স্ক্রিপ্টটি কাজটি করবে:

#!/usr/bin/env python3
import subprocess
import time

key = "org.gnome.settings-daemon.peripherals.keyboard numlock-state"
while True:
    time.sleep(1)
    state = subprocess.check_output([
        "/bin/bash", "-c", "gsettings get "+key]).decode("utf-8").strip()
    if state != "'on'":
        subprocess.Popen([
            "/bin/bash", "-c", "gsettings set "+key+" 'on'"])

ব্যবহারবিধি

  • উপরের স্ক্রিপ্টটি খালি ফাইলে অনুলিপি করুন, এটি সংরক্ষণ করুন NM_on.py
  • কমান্ডটি সহ পটভূমিতে এটি পরীক্ষা করুন:

    python3 /path/to/NM_on.py
    
  • যদি সমস্ত ঠিকঠাক কাজ করে তবে এটি স্টার্টআপ অ্যাপ্লিকেশনগুলিতে যুক্ত করুন: ড্যাশ> স্টার্টআপ অ্যাপ্লিকেশন> যুক্ত করুন, কমান্ডটি যুক্ত করুন:

    /bin/bash -c "sleep 10 && python3 /path/to/NM_on.py"
    

ব্যাখ্যা

আমরা Num Lockএকাধিক উপায়ে বর্তমান অবস্থা পেতে পারি :

  • কমান্ড চালাচ্ছি:

    xset q
    

    যা এরূপ একটি আউটপুট দেবে:

    Keyboard Control:
      auto repeat:  on    key click percent:  0    LED mask:  00000000
      XKB indicators:
        00: Caps Lock:   off    01: Num Lock:    off    02: Scroll Lock: off
        03: Compose:     off    04: Kana:        off    05: Sleep:       off
        06: Suspend:     off    07: Mute:        off    08: Misc:        off
        09: Mail:        off    10: Charging:    off    11: Shift Lock:  off
        12: Group 2:     off    13: Mouse Keys:  off
      auto repeat delay:  500    repeat rate:  33
    .....
    

    বা আদেশ সহ:

    gsettings get org.gnome.settings-daemon.peripherals.keyboard numlock-state
    

    যা কেবল ফিরে আসে 'on', 'off'বা 'unknown'

    যেহেতু পরেরটি অত্যন্ত হালকা ওজন, তাই আমরা প্রতি সেকেন্ডে একবার যাচাই করার জন্য এটি ব্যাকগ্রাউন্ড স্ক্রিপ্টে খুব ভালভাবে ব্যবহার করতে পারি, এবং 'on'কমান্ডের সাহায্যে, প্রয়োজনে মান সেট করে :

    gsettings set org.gnome.settings-daemon.peripherals.keyboard numlock-state 'on'
    

এবং তাই এটি ...


সম্পাদন করা

কোনও কারণে, আমি আপনার শেষ অনুচ্ছেদটি মিস করেছি, যাতে আপনি অনুরূপ সমাধান সহ অন্য একটি উত্তর উল্লেখ করেছেন।

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

gsettings get org.gnome.settings-daemon.peripherals.keyboard numlock-state

থেকে পেতে বর্তমান মান, আরো দাবিতে যে কেবল চালানোর হবে

numlockx on

to (re-) set numlockx on
উভয় কমান্ডের সমাপ্ত হওয়া সময়ের দিকে তাকানো (যা কমপক্ষে একটি ইঙ্গিত) এটি তবে অন্যভাবে; আদেশ

gsettings get org.gnome.settings-daemon.peripherals.keyboard numlock-state

আরো "হালকা ওজন" বলে মনে হচ্ছে।

একটি পটভূমি স্ক্রিপ্ট একটি খারাপ ধারণা চালানো?

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

আমার ক্রমাগত কমপক্ষে 4-8 ব্যাকগ্রাউন্ড স্ক্রিপ্ট চলছে। তাদের বেশিরভাগ সপ্তাহ পুনরায় চালু না করেই। আমার প্রবীণ সিস্টেমে কোনও প্রভাব লক্ষ্য করেনি। মনে রাখবেন আপনার সিস্টেমটি যাইহোক অসংখ্য লুপ চালাচ্ছে।


এটি উজ্জ্বল - এবং আশ্চর্যজনকভাবে ব্যাখ্যা করা হয়েছে। তাই আপনাকে অনেক ধন্যবাদ!
টরবেন গুন্ডটোফট-ব্রুন

@ TorbenGundtofte-Bruun আপনাকে স্বাগতম! উত্তরটি আপনি যা সন্ধান করছেন তা যদি হয় তবে আপনি কি এটি গ্রহণ করার বিষয়টি বিবেচনা করবেন?
জ্যাকব ভিলিজম

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

আমার নাম লক বন্ধ আছে, gsettings get org.gnome.settings-daemon.peripherals.keyboard numlock-stateএখনও ফিরে 'on'
রদ্রিগো
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.