この記事はvimのマップマッピングを明確に説明しています

マップは主に、bをキーにマップするマップabなどのカスタムショートカットキーを使用するため、aを押すとbショートカットキーが実行されます。

一、地図紹介

vim構成ファイルにmap、nmap、imap、vmap、vnoremap、nunmap、nmapclearなどがよく見られますが、どういう意味ですか?マップの前のn、v、nore、unなどは、次の意味を持っています。

1. noreは非再帰を意味し、マップはデフォルトで再帰的にマップされます

2. n-通常モードで有効であることを意味します

        例:nmap <leader> s:wqa <CR>#は、リーダーキー(私の設定は\)とsキーを押した後、:wqaコマンドを実行することを意味します。<CR>はキャリッジリターンを表します

3. v-ビジュアルモードで有効であることを意味します

        例:vmap <Cc> + y "は、ビジュアルモードでCtrl + Cを押して、選択したコンテンツをコピーすることを意味します

4. i-挿入モードで有効であることを意味します

5.コマンドラインモードで有効なc-means

6.キーの組み合わせが付いていない、つまりこのマッピングを削除する

       例:unvmap <Cc> "マッピングを削除

7、明確な意味の明確なショートカットキーのマッピング

        例:mapclear、nmapclear、nnoremapclearなど。

上記のマッピングのいくつかは、次のように組み合わせて使用​​できます。

    |コマンドモード
:map:noremap:unmapノーマル、ビジュアル、選択、オペレーター保留
:nmap:nnoremap:nunmapノーマル
:vmap:vnoremap:vunmapビジュアルおよび選択
:smap:snoremap:sunmap選択
:xmap:xnoremap:xunmapビジュアル
:omap :onoremap:ounmapオペレーター保留
:map!:noremap!:unmap!挿入およびコマンドライン
:imap:inoremap:iunmap挿入
:lmap:lnoremap:lunmap挿入、コマンドライン、Lang-Arg
:cmap:cnoremap:cunmapコマンドライン
:tmap:tnoremap:tunmapターミナルジョブ

 

2.関連資料

キーテーブル

<k0> - <k9> 。小型キーボード0前に9 
<S-...> Shiftキー+ 
<C-...> コントロール+キー 
<M-...> Alt +メタ+キーまたはキー 
<A-...> と  <M-...> 
<Esc> エスケープキー 
<Up> 、カーソルキーには、 
<Space> 空間内に挿入される 
<Tab> タブ挿入 
<CR> 同じです<Enter>

特別なパラメータ

一部の特別なパラメーターは、コマンドの後、他のパラメーターの前にマップする必要があります。

<buffer>

<buffer>これらのマッピングコマンドの最初のパラメーターがyesの<buffer>場合、マッピングは現在のバッファー(つまり、現在編集しているファイル)に制限されます。たとえば 
:map <buffer> ,w /a<CR> 
、現在のバッファでキーバインディングを定義することを意味します。 "、w"は、現在のバッファで文字aを検索します。他のバッファで定義することもできます。たとえば 
:map <buffer> ,w /b<CR> 
、複数のタブ(:tabedit)を開いて、各タブで「、w」キーバインディングを定義したい場合は、各タブで個別に定義するだけです。 、そしてそのスコープはそれぞれのタグにのみあります。これらのバッファのキーバインディングをクリアするには<buffer>、次のようなパラメータを追加します。 
:unmap <buffer> ,w 
:mapclear <buffer>

<silent>

<silent>これは、キーバインドの実行時にコマンドラインに
:map <silent> ,w /abcd<CR> 
表示さないことを意味します。たとえば  、wを入力してabcdを検索すると、/ abcdはコマンドラインに表示されません。<silent>パラメータがない場合は表示されます。

<special>

<special>通常、副作用が懸念される特殊なキーを定義するために使用されます。といった: 
:map <special> <F12> /Header<CR>

<expr>

<expr>新しいマッピングを定義する最初のパラメータがの場合、<expr>パラメータは式として計算され、結果が実際に使用されます。次に例を示します。 
:inoremap <expr> . InsertDot() 
これは、カーソルの前のテキストをチェックし、特定の条件下でオムニ補完を開始するために使用できます。すべて。 
一例:

let counter = 0 
inoremap <expr> <C-L> ListItem() 
inoremap <expr> <C-R> ListReset() 

func ListItem() 
let g:counter += 1 
return g:counter . '. ' 
endfunc 

func ListReset() 
let g:counter = 0 
return '' 
endfunc 

挿入モードでは、CTRL-Lはリスト番号を順番に挿入して戻り、CTRL-Rはリスト番号を0にリセットして空に戻ります。

<unique>

<unique>通常、新しいキーマッピングまたは略語コマンドを定義し、キーがマッピングされているかどうかを確認するために使用されます。マッピングまたは略語がすでに存在する場合、コマンドは失敗します

より具体的なマッピングに関連するコンテンツがたくさんあります:ヘルプマップ

おすすめ

転載: blog.csdn.net/lianshaohua/article/details/108388945