テンキーエミュレーション

テンキーエミュレーション

新しいノートパソコン(Dellインスパイロン 5578) もっているテンキーなし専用のテンキー キーがない多くのラップトップでは、 からテンキーにアクセスできますFnが、このラップトップではそうではありません。 を実行して従来の組み合わせ (たとえば、の代わりに+ )xevを使用しようとすると、イベントは認識されません。また、ラベルにも数字が表示されません。FnFnJ1

私の知る限り、 OS に渡されないFnため、キーでショートカットを作成することはできません。ただし、理論的には代わりに+ を使用できます。問題は、それを適切に行う方法です。Linux 以外の VM でも問題なく動作するように、キーボード レイアウトよりも低いレベルで実行することをお勧めします。FnAlt_LSuper_L

環境:キューブOSホスト部分はFedoraをベースにしています。

私はもう試した:

  • Xfce キー ショートカットを介して xdotool コマンドをバインドします。これにより、さまざまな奇妙な結果が生成されます。コマンド (xdotool key KP_1 およびそのバリエーション) は通常は正常に機能しますが、ショートカットで呼び出された場合は機能しません。ショートカットで呼び出された場合、問題はおそらく、その時点で修飾キーが押されていることです。さまざまな変更 ( --clearmodifiers、修飾キーの keyup など) を試しましたが、どれもうまく機能しません。
  • 同じことを autokey でも実行します。autokey がフリーズする問題がいくつか発生しました。

非解決策:

  • 外付けのテンキー/キーボードを使用する: 外付けキーボードにはテンキー (のようなもの) が付いていますが、旅行中などで外付けキーボードが使用できない、または少なくとも使いにくい場合に備えて、内蔵キーボードにもテンキーを付けておきたいと思います。
  • 数字列を使用する: チェコ語のレイアウトでは、数字列は主にアクセント付きの文字に使用されます。私が使用しているレイアウト(CShackのextractsバリアント)の「数字行」には数字がまったくありません。
  • 別のラップトップを購入する: さまざまな要件を満たすラップトップを見つけるのは困難でした。

答え1

kbindkeysnumlockxおよび少しカスタマイズされたキーボードを試してみるのもよいでしょう。

xbindkeys をインストールしたら、それを実行する必要があります。基本的な構成を作成するために何をすべきかが示されます。

次に、を使用してxbindkeys -kキーを識別し、構成ファイルを変更します (すべてデフォルトの構成ファイルに文書化されています)。

最後に、xbindkeys -v -nすべてが機能するかどうか確認するために実行することをお勧めします。機能する場合は、xbindkeysそのセッションで実行し、起動スクリプトに追加することができます。

私の場合、Windows キー (右) がバインドを実行し、次の~/.xbindkeysrcようになります。

"numlockx toggle"
    m:0x10 + c:134
    Mod2 + Multi_key

これでマッピングを追加できます。5 番目と 6 番目のレベル (NumLock と Shift + NumLock) を使用します。

/usr/share/X11/xkb/symbols/cz の先頭、次の直後:

default  partial alphanumeric_keys

次のスニペットを追加します:

xkb_symbols "with_numpad" {
    include "cz(basic)"

    key.type[Group1] = "EIGHT_LEVEL_ALPHABETIC_LEVEL_FIVE_LOCK";
    key <AC07>  { [         j,          J,   apostrophe,     NoSymbol , 1, 1] };
    key <AC08>  { [         k,          K,      lstroke,     NoSymbol , 2, 2] };
    key <AC09>  { [         l,          L,      Lstroke,     NoSymbol , 3, 3] };
};

ここで、ウィンドウ キー (右) を押すと、xkeybind によって numlock が設定され、J、K、L などが 1、2、3 を返すようになります。

最後のステップとして、新しいキーボードを次のように設定します。

 setxkbmap cz with_numpad

答え2

ここでの正しい方法は、独自のキーボード レイアウトを作成することだと思います。確かに、すべての VM とすべてのオペレーティング システムに対してこれを行う必要がありますが、テンプレート VM に展開するだけで済みます。

実際にそれらを作るのはそれほど難しくなく、見方によっては驚くほど簡単です。Linuxの場合は正しい方向に進んでいます。Windowsの場合はオートホットキー

(または、現在のレイアウトを捨てて、ネオ2ドイツ語向けに最適化されていますが、レイアウトは全体的に優れており、Linux ではすぐに使えるサポートが提供され、Windows ではかなり優れた自動ホットキー実装が提供されます。私は何年も使っています。最大の欠点は、レイアウトがあまりにも風変わりなため、プログラム内のショートカットをカスタマイズして再び使用できるようにしなければならないことが多いことです。たとえば、vim の hjkl は完全にめちゃくちゃです。

関連情報