
Num Lock / Caps LockがオンまたはオフのときにThinkpad T430に目立つインジケーターがありません。オンまたはオフのときに画面に通知を表示する方法はありますか?
答え1
次の方法で情報を取得できます。設定:
xset q | grep Caps
結果:
00: Caps Lock: off 01: Num Lock: on 02: Scroll Lock: off
しかし、Xがなければ試してみることができます。サポート技術情報:
kbdinfo gkbled
結果:
scrolllock:off numlock:on capslock:off
編集:
ステータスを変更するには、xset
次の点を確認してください。回答。
または、次を使用してステータスを変更できます。xdoツール:
xdotool key Caps_Lock
画面アラートの場合は確認できます核心が不明。
次のスクリプトを試すこともできます。
#!/bin/bash
#lockkey.sh
sleep .2
case $1 in
'num')
mask=2
key="Num"
;;
'caps')
mask=1
key="Caps"
;;
esac
value="$(xset q | grep 'LED mask' | awk '{ print $NF }')"
if [ $(( 0x$value & 0x$mask )) == $mask ]
then
output="$key Lock is on"
else
output="$key Lock is off"
fi
notify-send "$output"
スクリプトをコピーし/usr/local/bin
てバインドCapsして実行できます。
/usr/local/bin/lockkey.sh caps
および/またはNum次のように:
/usr/local/bin/lockkey.sh num
答え2
T430にはCapsLock LEDがない可能性がありますが、電源LEDはソフトウェア(Linuxカーネル4.2でテスト)を介して制御できるため、うまく利用できます。まず、これを/etc/rc.localに追加します。
echo kbd-capslock >/sys/class/leds/tpacpi::power/trigger
chmod 666 /sys/class/leds/tpacpi::power/brightness
最初の行はテキストコンソールを担当し、副作用として最初はLEDを消灯します。 X11を処理するために、2行目では、一般ユーザーがLEDを制御できます。次に、このコードを保存してください。
#!/bin/sh
sleep 0.1
if xset q | grep -q 'Caps Lock: *on'; then
echo 255 >/sys/class/leds/tpacpi::power/brightness
else
echo 0 >/sys/class/leds/tpacpi::power/brightness
fi
実行可能スクリプト(例:/usr/local/bin/capsled.sh)で実行し、デスクトップ設定でCapsLockキーをバインドします。本当に醜いですが動作します(XFCE4でテスト)。 X11でLEDを再マッピングするよりきれいな方法を知っている人はいますか?
答え3
CAPS_STATUS=`xset q | grep -i caps | cut -c 22-24`
#test on $CAPS_STATUS if its on or off