Vimでは、Jキーは2つの行を結合します。(カーソル位置などで)改行で行を分割するための、同様の組み込みのキーの組み合わせはありますか?
あるいは、それを行うためのキーの組み合わせを定義する最も堅牢な方法は何ですか(挿入モードではなく通常モードで)?
Vimでは、Jキーは2つの行を結合します。(カーソル位置などで)改行で行を分割するための、同様の組み込みのキーの組み合わせはありますか?
あるいは、それを行うためのキーの組み合わせを定義する最も堅牢な方法は何ですか(挿入モードではなく通常モードで)?
回答:
いいえ、そのための組み込みコマンドはありません。
で分割したいときは<Space>
、そうしますr<CR>
。
---編集---
@ keith-nicholasのコメントで、この質問を思い出しました。FWIWその間、うまくいけば「ユニバーサル」な方法を思いついた:
function! BreakHere()
s/^\(\s*\)\(.\{-}\)\(\s*\)\(\%#\)\(\s*\)\(.*\)/\1\2\r\1\4\6
call histdel("/", -1)
endfunction
nnoremap <key> :<C-u>call BreakHere()<CR>
r<CR>
は簡単です。ありがとう!
s<CR>
一方、インデントを保持r<CR>
しません。
a
Enter Escカーソルの右側i
Enter Escに分割するか、左側に分割します。
Vimで行を分割する最も簡単な方法は、通常モードのコマンドですgq
(通常モードまたはビジュアルモードで両方の文字をすばやく連続して入力します)。
gq
は、モーションが続きます。たとえば、gql
1行を現在設定されている幅に分割します。分割線の幅を現在の設定とは異なるように設定するには、次を使用できます
:set textwidth=<n>
ここで、nは1行に必要な文字数(例:10)で、終了したら通常の幅に戻します。
この情報は、モーションを使用して通常モードでラインを結合および分割する方法を示すKholidfuのYoutubeビデオから入手しました:Vimチュートリアル-ラインの結合および分割。