web-dev-qa-db-ja.com

xmodmapを使用して<Ctrl> + <hjkl>を<Left Down Up Right>にグローバルにマッピングしようとしています(Vimのような矢印キー)

マップしようとしています Ctrl+HJKL 矢印キーへ LeftDownUpRight、それぞれ、Ubuntu OS上(グローバル、Vim内ではない)。

here に投稿された解決策を試みましたが、修飾子コマンドは機能しません。ここに私がしようとしているものがあります:

xmodmap -e "keycode 45 Control_L = k Up"
xmodmap -e "keycode 45 control = k Up"

(キーコード45は「k」にマップされます)

どちらのコマンドも機能しません。 (エラーは発生しませんが、 ctrl + k に再マップされません up arrow

このxmodmapを実行する方法はありますか?そうでない場合は、よりクリーンな回避策がありますか?

ありがとう!

編集:私は答えを見つけました here -Swiftに感謝

Ubuntuをコードネーム「VimOS」に変えることは確かに非常に奇妙な考えです。 Vimのキーを自由で公平なキーボードのクラスターにマッピングする方がはるかに適切だと思います。または間違いなく、それが有用であることもあります。

ただし、Vimマッピングに関する最初の提案を削除するわけではありません。あなたの質問に対する答えは次のとおりです。
システム全体のvimスタイル(hjkl)ナビゲーション

部分的に私はこの見解に同意します(Shell hellに感謝):

注3:セットアップ Ctrl / Meta + HJKL キーバインドはvimスタイルのナビゲーションを使用する最も簡単な方法のようですが、そうではありません。まず、アプリケーションごとにこれを行う必要があり、面倒なプロセスです。 2つ目:おそらく、特定のアプリケーションのデフォルトマッピングを破ることになります。最後になりましたが、一部のアプリ(例: rtorrentまたはhtopでは、デフォルトを変更できません。ソースコードをパッチして保存します。同様の理由で、あなたは仕事を終わらせません Super / Hyper、どちらか。

また、私はここで近い答えを見つけました:
スーパーユーザー:Super + hjklをX の下の矢印キーにマッピング

Vimはスイッチングモードを使用してキーをマッピングします。したがって、Vimのxmodmapは、従来のVimのエクスペリエンスを壊すのは、プラグ可能なグローバルです。それでもそれが哀れなように聞こえると主張する ;)

Vimはいくつかの編集モードをサポートしています-通常、挿入、置換、視覚、選択、コマンドライン、オペレータ保留。これらのモードのすべてまたは一部で動作するようにキーをマップできます。

Vimでのマッピングキー-チュートリアル(パート1)
Vimでのキーのマッピング-チュートリアル(パート2)
Vimでのキーのマッピング-チュートリアル(パート3)

6
swift

Tux-JとTux-KをKDEのUpとDownにマッピングしていますが、これはすべてのアプリケーションに関連しています。実際には設定はかなり簡単です。

  1. ここに移動:System Settings -> Custom Shorcuts -> Preset Actions
  2. Preset Actionsを右クリックし、New -> Global Shortcut -> Send Keyboard Inputを選択します
  3. 新しいショートカットVIM-Jを呼び出します
  4. [トリガー]タブで[ショートカット]ボタンをクリックし、 Tux-J
  5. [アクション]タブにDownと入力します
  6. ウィンドウの下部にあるApplyをクリックします。
  7. ショートカットが機能することを確認します。その場合、残りのHKおよびLキーを構成します。

お楽しみください!

1
dotancohen