強調表示されたテキスト私が移動する先のアレイです。私はラインを下に移動するために、jを押す前にgを押す必要があります。私の.vimrcのためのマッピングがありますが、毎回hを押すことなく画面行を移動するためにhjklを使うことができます。あなたの助け マティアス
Vimは
答えて
次のスニペットを使用して、$のような行末までのすべての形式のナビゲートに役立ちます。
" mapping to make movements operate on 1 screen line in wrap mode
function! ScreenMovement(movement)
if &wrap
return "g" . a:movement
else
return a:movement
endif
endfunction
onoremap <silent> <expr> j ScreenMovement("j")
onoremap <silent> <expr> k ScreenMovement("k")
onoremap <silent> <expr> 0 ScreenMovement("0")
onoremap <silent> <expr>^ScreenMovement("^")
onoremap <silent> <expr> $ ScreenMovement("$")
nnoremap <silent> <expr> j ScreenMovement("j")
nnoremap <silent> <expr> k ScreenMovement("k")
nnoremap <silent> <expr> 0 ScreenMovement("0")
nnoremap <silent> <expr>^ScreenMovement("^")
nnoremap <silent> <expr> $ ScreenMovement("$")
砂糖のように働く:)、この助けをありがとう。非常に面白いクリーンな.vimrcがgithubにあります。 –
オプション「
ため
ありがとうございます(あなたが本当にh
とl
を必要とするかどうかわからない...)j
とk
キーを再マッピングすることができます
:map j gj
:map k gk
あなたは試したし、それらを言っていたら、追加それらはあなたの.vimrc
に先行なし:
これはうまくいきますが、 ':noremap'を使ってはいけないので、jは再帰的にマップしませんか?この例では本当に問題ではありませんが、それは良い習慣です。 – naught101
jとg(例えば)をgjとgkに簡単に再マップすることができます:
" map j to gj and k to gk, so line navigation ignores line wrap
nmap j gj
nmap k gk
これらを '.vimrc'にマップすると、マクロやプラグインで後で問題が発生する可能性があります。私は 'gj'と' gk'とタイプするのが面倒だと知っています。リーダーとマッピングするほうが良いでしょう。 –
@jeleraリーダーとのマッピングはどういう意味ですか?だからあなたは '
これは、ラテックスドキュメントのような長いテキストファイルを編集する場合に適しています。しかし、コードを編集するときには、マクロを壊す可能性があるので、これはいい考えではありません(Nereの答えにはjeleraの注釈があります)。
" move on soft lines in insert mode
inoremap <Down> <C-o>g<Down>
inoremap <Up> <C-o>g<Up>
(:私の妥協点は何か(私はナビゲーションキーを使用して挿入モードで使用するすべてのマクロを認識していないよ)のためにのみ挿入してたときに、それを有効にする(および置換)にモードではなく、 this answerから適合)
- 1. Vimは私はVimのではddkP
- 2. はVimのVimのでは自身
- 3. はVIM
- 4. Vimは -
- 5. Vimの方法は、カーソルのvimで
- 6. GVimはコマンドラインVim
- 7. VIM-flake8は
- 8. 使用Vimは
- 9. ワードカウントはVimドキュメント
- 10. はvimの
- 11. はVimの(ルビー)
- 12. はVimの
- 13. 私はvimの
- 14. Vimはtabspaces
- 15. はVimのエラーフォーマット
- 16. [] VIM
- 17. vim
- 18. VIM:
- 19. VIM:
- 20. Vim
- 21. VIM
- 22. は、ユーザーがVimの
- 23. はVIMのQuickFixウィンドウ
- 24. Vimは第一種の新しいVIMに私は、デフォルトで
- 25. VIMの前のポイントに戻るにはVIMエディタの
- 26. homebrewでvimをインストールした後にシステムvimに戻すには?
- 27. VimのシフトタブとVimの逆タブのマッピング
- 28. 結合方法:vimと:s in vim
- 29. VIM:ファイルタイプ
- 30. vimマクロマッピング
私はVIM 7.2を使用しており、毎回gを打つ必要はありません。 -/ – Mikhail
Mikhail、私は7.2を持っています。おそらくそれは設定の問題です。たとえば、jがすでに一連のコマンドにマップされているかどうかを調べるには、「:map j」と入力します。 –
私はVIM 7.2.33を持っているので、私はそれらを押す必要があります。 –