1

システムにテンキーが接続されているかどうかを判断できますか? 通常、デスクトップ キーボードにはテンキーがありますが、ラップトップには通常ありません (通常のキーボードにテンキー キーがあり、Num Lock でアクティブ化されます)。オペレーティング システムは、テンキー キーが物理的に分離されているかどうかを認識していますか? もしそうなら、その情報は何らかの形でプログラムに公開されていますか?

これを知っておくと、適切なデフォルトのキーバインディングを決定するのに役立ちます。それが利用できない場合は、保守的なデフォルト (テンキーを使用しない) を選択する必要があります。これは、別のテンキーを使用する人々にとってより適切な動作を得るために、少し苛立たしい追加の構成手順を意味するか、または非を選択する必要があります。保守的なデフォルトとテンキーのない人々を苛立たせます...

4

2 に答える 2

2

キーボード機能を照会できるとは思いませんが、iircには「テンキー」キーがあります。;)

がオンかオフかを問い合わせることができるはずですがNum、オフであることはテンキーがないことを知るための簡単な方法ではありません。

あなたがおそらくできることは、テンキーで押されているキーを検出し、サブリミナルにユーザーをだましてそうさせることです。これにより、その特性が識別されます。

于 2012-09-23T04:03:39.393 に答える
1

これらのパッケージをインストールします

sudo apt-get install -y numlockx xdotool x11-utils

次に、このようなスクリプトを使用します

#!/bin/bash
cd
numlockx off &
rm -f s1.sh s2.sh out
 echo -e "#\041/bin/bash
sleep 2
xdotool key KP_5 | xev > out
exit 0" >> s1.sh
chmod +x s1.sh
echo -e "#\041/bin/bash
sleep 9
killall -9 xev
sleep 5
xdotool key BackSpace
exit 0" >> s2.sh
chmod +x s2.sh


bash s1.sh &
bash s2.sh

rm -f s1.sh s2.sh
if [[ "$(cat out | grep "keycode 84" | grep "KP_Begin" )" != "" ]]; then
  echo "Separated Numpad Detected!"
fi
rm out
exit 0

これは、実際のキーパッドを備えた実際のキーボードで、numlock がアクティブでない場合KP_Beginのテンキー キーのキーコードであるためです。KP_53 台の PC でテスト済み。

于 2012-10-06T22:49:45.713 に答える