web-dev-qa-db-ja.com

Ctrl(またはAlt)+矢印キーを有効にして、「ホーム」および「終了」機能を模倣します

私は長い間Macユーザーであり、現在は開発にUbuntuマシンを使用しています。多かれ少なかれ多くのキーボードショートカットに慣れていますが、慣れないことの1つは「ホーム」を使用することです。 'および' End 'キーを使用して、テキスト行を移動します。 Macでは、「コマンド+右矢印」を使用して行の終わりに移動し、「コマンド+左矢印」を使用して行の先頭に移動します。

Linuxでこの種の機能を有効にする方法はありますか?

これが再マッピング、キーボードショートカット、または何と見なされるかはわかりません...

8
YuKagi

xmodmapいくつかのヒント )を使用すると、ウィンドウシステム全体のキーを再バインドできます。次のアプローチはあなたが望むものを提供しますが、副作用があります:(

最初にターミナルウィンドウで試してみてください。

  1. 左のAltキーをいわゆるMode_switch

    1. キーにMode_switchキー記号を割り当てます。

      xmodmap -e 'keycode  64 = Mode_switch Meta_L Alt_L Meta_L'
      
    2. (通常:Mode_switchがmod1-5修飾キーの1つに割り当てられていることを確認しますが、これはすでにUbuntuに当てはまります)

  2. LeftキーとRightキーの3行目を変更します

    xmodmap -e 'keycode 113 = Left NoSymbol Home'
    xmodmap -e 'keycode 114 = Right NoSymbol End'
    

そのまま、変更はログアウトするまで保持されます。永久に保存したい場合は、以下をファイルに入れてください~/.Xmodmap

keycode  64 = Mode_switch Meta_L Alt_L Meta_L
keycode 113 = Left NoSymbol Home
keycode 114 = Right NoSymbol End

ただし、これはAltキーの通常の機能(メニュー、Alt-Tabなどへのアクセス)を上書きすることに注意してください:(

ただし、私はxmodmap&Coの専門家ではありません。多分誰か他の人がこれを修正する方法を知っています。私は一般的にUbuntuとLinuxが本当に好きですが、このキーボード全体は不必要に複雑で、悲しげに壊れています:-<

3
seya

これは特に崇高なテキストのためのものですが、Altと矢印キーをMacのように再マップする方法を探している人にとっては、私のようにこの答えに出くわすかもしれません。崇高なことに、[設定]> [キーバインディング-ユーザー]を開き、角括弧の間に以下を追加します。

{ "keys": ["alt+left"], "command": "move_to", "args": {"to": "bol", "extend": false} },
{ "keys": ["alt+right"], "command": "move_to", "args": {"to": "eol", "extend": false} }

これで、少なくとも、適切に動作するalt +左​​矢印と右矢印を備えた便利なテキストエディタができました。これが少し役に立ったことを願っています。

3
willcwf

Readline(bashなど)を使用するプログラムの場合、~/.inputrcを編集して、beginning-of-lineend-of-lineを適切な順序にバインドできます。 GUIウィジェットツールキットには独自のバインディングがあり、それが可能であると仮定して、それらに適切なビットとピースを見つける必要があります( GTK + 2.x )。