タグ付けされた質問 「key-bindings」

キーを押したときにアクションを実行する。これらは、キーマッピングまたはマッピングとも呼ばれます。デフォルトのキー割り当て、およびキー割り当ての作成または再定義についての質問。

12
エスケープ以外の挿入モードを終了する他の方法
私がemacsよりもvimを好む主な理由は、ホームロウからの私の手の動きの距離が非常に低いことです(プログラマーとしても)。ただし、これを行う主な時間の1つは、Escapeキーを押して挿入モードを終了することです。 最近、Ctrl + Cを使用して挿入モードを終了できることも学びました。ただし、これは実際には改善されていません。 ホーム行から手を離さずに、また入力する機能に大きな影響を与えずに、挿入モードを終了するにはどうすればよいですか?注:私は、ドヴォルザークキーボードレイアウトでほとんどバニラのvimを使用していますが、qwertyレイアウトのソリューションも聞きたいです。

1
マッピングをデバッグする方法は?
ユーザーが機能しないマッピングを持っている場合、ここで多くの質問を目にします。ほとんどの場合、理由はかなり似ています。 この質問をこの種の質問のリファレンスにして、マッピングをデバッグするための完全な手順を示すことをお勧めします。ユーザーがマッピングに問題がある場合、ここでリダイレクトして、最も一般的な問題を排除できます。 もちろん、専用の質問を必要とする特定のケースがまだあり、ここでは対処しません。




2
gfのようにカーソルの下でファイル名を開きますが、新しいタブ(または分割)ですか?
通常モードのコマンドgfは、カーソルが現在あるパスのファイルに移動します。 ただし、現在のウィンドウでは、現在のテキストが置き換えられます。つまり、後で戻るには明示的に戻る必要があり、潜在的に現在のバッファに変更を書き込む必要があるということです。 代わりに新しいタブビューでカーソルの下のファイルを開くことで可能だと確信していますか?

5
Altキーをマップする方法は?
私はAlt次の方法でキーをマップしようとしています: :map <A-j> j :map <A-k> k しかし、それは機能しません(ベルがAlt + j/ で鳴りAlt + kます)。 私は何が欠けていますか? OSXでターミナルを使用していますが、リモートLinuxでも同じことが起こります。 でCtrl + v、Alt + j私は持っている:?~H~F(∆ときencoding=utf-8)。 でCtrl + v、Alt + k私は持っている:?~Z(˚ときencoding=utf-8)。 プラグインなしでvimを実行(-u NONE)しても違いはありません。


6
改行以外の行全体を削除できますか?
私は強迫観念で、ファイルに空白を入れないようにするので、vimで私にとってかなり一般的な操作は、行自体ではなく行全体の内容を削除することです(つまり、改行ではありません)。 これを行うための組み込みのvim方法はありますか?おそらくd<movement command>手術? これまでのところ、私が持っている最高のものは(問題の行で)0d$です。もっと速い方法はありますか?

2
なぜYはy $ではなくyyの同義語なのですか?
これには特定の歴史的理由がありますか? 背景 —(質問を既に理解している場合は、この部分をスキップできます。) 中級/上級viユーザーが知っているようにy、 "yank"コマンドは次の移動コマンドで指定されたテキストをヤンク(コピー)します。* ye単語の最後までヤンクし、y0カーソル位置から行頭までヤンクしますy_現在の行全体をy$ヤンクし、カーソル位置から現在の行の最後までヤンクします。 d(削除)コマンドとc(変化する)コマンドが両方同様にこれらの動きのすべてで使用することができます。 ddは、d_現在の行全体の同義語であり、削除します。同様に、現在の行のcc同義語でc_あり、変更します(つまり、すべてのテキストを削除し、行の先頭で挿入モードにします)。** 「yank」コマンドはこの規則に従います。yyのように現在の行全体をヤンクしますy_。 同義語の別のセットがあります:Dは同義語でd$あり、カーソル位置から行末までを削除します。 Cは同義語でc$あり、カーソル位置から行末までテキストを変更し、挿入モードにして新しいテキストを入力します。 しかし、Yある別の同義語yyかy_とヤンクます全体のラインをあなたから期待通りだけでなく、カーソルから行末までCとDパターン。 Vimの下位互換性を維持するためにVimでこのように保持されていることを理解していviます:help Y。 「Y」をカーソルから行末まで(より論理的ですが、Vi互換ではない)動作させたい場合は、「:map Y y $」を使用します。 だから、これはからのホールドオーバーですvi。いいよ しかし、そもそもコマンドがそのように設計されたのはなぜですか?これまでに何か論理はありましたか? *具体的には、レジスタ0にテキストを配置し、名前のないレジスタをレジスタ0に向けます。 **これSは私の質問には関係ありませんが、ccまたはの別の同義語ですc_。

4
Ctrl-Wを使用せずにVimでスプリットを操作するにはどうすればよいですか?
私の端末では、Ctrl+ を入力することはできませんW。これは、端末タブを閉じるためのショートカットだからです。 分割を使用するのが好きですが、を使用しないと分割を行う方法が見つかりませんC-W。これにより、タブを使用せざるを得ませんでした。これはgt、gTまたは#gtで数字を切り替えることができるためです。 mouse=a私の端末はそれをサポートしていないため、どちらも使用できません。 Ctrl+ WコンボなしでVimでスプリットを操作するにはどうすればよいですか?

1
<Esc>を無効にしますが、<C-[>
挿入モードから切り替えるために私は慣れてい&lt;Esc&gt;ます。今、私は&lt;C-[&gt;代わりに自分を再訓練したいと思っています &lt;Esc&gt;。そのため&lt;Esc&gt;、再トレーニングを支援するために無効にする必要があります。 問題は :inoremap &lt;Esc&gt; &lt;Nop&gt; も無効にします&lt;C-[&gt;。vimの場合、それらは同じもののようです。 一方を無効にするには他に方法はありますか?

3
vimで矢印キーを無効にする方法は?
ホーム行にとどまるために、矢印キーを使用するよりもhjklを使用して自分自身を教えたいです。はい、メインナビゲーションキーとしてhjklを使用しないでください。しかし、私の習慣は非常に強く、それが矢印キーへの手の動きを引き起こしたことに気づいてさえいないので、それを学ぼうと思います。 その習慣を打破するには:どうすればhjklまたは他のナビゲーション方法を使用せざるを得ないように矢印キーを無効にできますか? ボーナスとして、それがDont't use this!必須ではないというメッセージがまだ表示されている場合に役立ちます。それらが機能しない場合、それは私が私の習慣を再考するのに十分混乱させるでしょう。

3
`<Bar>`はどういう意味ですか?
ちょうど今の質問に答える際に、 vim.wikia.comにある通常モードのキーマッピングを使用することに言及しました。キーマッピングの説明の途中で、私は何を&lt;Bar&gt;意味するのかわからないことに気付きました。どういう意味ですか? 私はそれを|前後にスペースのあるパイプとパイプで置き換えようとしましたが、それぞれが.vimrc次のエラーメッセージでファイルを壊しました: Error detected while processing /home/bottomsc/.vimrc: line 173: E488: Trailing characters: :nohl&lt;CR&gt;

1
zはvimで何を表しますか?
私は画面シフトに関するヒントを見上げていたところ、次のヒントに出くわしました。 zz = shift current line to middle of screen zt = shift current line to top of screen zb = shift current line to bottom of screen 私の質問は何zですか?それは何の略ですか?他にどのような機能がzありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.