カスタムテーブル

カスタムテーブル

Unix端末で特定のキーボードキーを変更できますか?

たとえば、押すと印刷さ,れますか_

これが実際に可能な場合はどうすればよいですか?

私はUbuntuにいます。

答え1

から引用ここ:

カスタムテーブル

独自のマップを作成してホームディレクトリ(たとえば、//.Xmodmap)に保存できます。現在のキーマップを設定ファイルに印刷します。

xmodmap -pke > ~/.Xmodmap

~/.Xmodmap に必要な変更を行い、次のコマンドを使用して新しい設定をテストします。

xmodmap ~/.Xmodmap

Xorgの起動時にカスタムテーブルを有効にするには、次のように追加します。

~/.xinitrc
if [ -f $HOME/.Xmodmap ]; then
    /usr/bin/xmodmap $HOME/.Xmodmap
fi

または、グローバル起動スクリプトを編集します /etc/X11/xinit/xinitrc

変更のテスト

現在のセッションを一時的に変更することもできます。たとえば、

xmodmap -e "keycode  46 = l L l L lstroke Lstroke lstroke"
xmodmap -e "keysym a = e E"

返品:

man xmodmap詳細は参照してください。

編集する:

明確に言えば、xmodmap ~/.XmodmapこれはXorgを起動するときだけでなく、いくつかの場所で使用することができます。たとえば、 ~/.bashrc には2つの機能があります。

   # map caps to esc

   mapcaps(){
      xmodmap -e "clear lock"
      xmodmap -e "keycode 0x42 = Escape"
      echo mapcaps: caps-lock set to Escape via xmodmap
   }
   unmapcaps(){
      xmodmap -e "keycode 0x42 = Caps_Lock"
      xmodmap -e "add lock = Caps_Lock"
      echo unmapcaps: caps-lock set to caps-lock via xmodmap
   }

これにより、CapsをEscに動的にマッピングできます。

実際に制限はありません。 ~/.xinitrc、~/.bash_profile、カスタムスクリプトなどからxmodmapを自由に呼び出します。

答え2

正直なところ、私はあなたが試してみたことはありません。ただし、以前はターミナル(非X)の代替キーバインディング(キーの組み合わせ)を追加しました。

以下を使用してキーバインディングを表示できます。showkeyまたはshowkey -s

さらなる調査と修正のために関連プログラムを使用します。

loadkeys dumpkeys keymaps setkeycodes

Slackwareで変更するのはとても簡単でした。 Ubuntuを検索するのに時間がかかりましたが、同じファイルが見つかりませんでした/usr/share/kbd/keymaps/i386/qwerty/*map.gz。ライブブートUbuntuシステムにのみアクセスできますが。あなたはより良いかもしれません。

答え3

X Window Systemでこれを行うには、Xmodmapを使用できます。私は構文を習得したことがないので、構文を見つけてください。実際のケースをクリックしてそこから始めます。

関連情報