私はVimで Python コードを編集します。
とともに tab キーインデントのために4つのスペースを挿入します。 4つではなく1つの「Backspace」(?)ストロークでこれらのスペースを削除するにはどうすればよいですか?
そのためのいくつかの「設定」オプションが必要です...
これが私の.vimrcです:
set autoindent
set ts=4
set sw=4
set et
set softtabstop=4
tl; dr:set tabstop=4 softtabstop=-1 shiftwidth=0 expandtab
短縮形:set ts=4 sts=-1 sw=0 et
softtabstop
(またはsts
)を-1
に設定すると、自動的にtabstop
(ts
)と同じように動作するため、節約できます。タブを大幅に変更すると、面倒になります。 shiftwidth
(sw
)を0
に設定すると、実質的にtabstop
と同じになります。
shiftwidth
sw
(自動)インデントの各ステップに使用するスペースの数。
cindent
に使用され、 >>、 <<、など。
ゼロの場合、tabstop
値が使用されます。
tabstop
ts
ファイル内のaがカウントするスペースの数。 :retab コマンド、および
softtabstop
オプションも参照してください。
softtabstop
sts
スペースの数 Tab 挿入などの編集操作の実行中にカウントされます Tab または使用 BS。それはのように感じます Tabsが挿入されていますが、実際にはスペースとsが混在して使用されています。これは、
tabs
を標準値に設定したまま、sts
に設定されているように編集できるようにする場合に便利です。sts
が負の場合、shiftwidth
の値が使用されます。これにより、タブストップを変更する手間が省けます。たくさん。expandtab
が設定されていない場合、スペースの数はを使用して最小化されます Tabs。
expandtab
et
挿入モードの場合:適切な数のスペースを使用してを挿入します。スペースはインデントで使用されます > そして < コマンドおよび
autoindent
がオンの場合。expandtab
がオンのときに実際のタブを挿入するには、 Ctrl-VTab。参照 :retab
私は GreedyBackspace.vim このようなものが欲しい人のために書いた。個人的には使っていないので、更新してから久しぶりです。最近、バグレポートを受け取っていません。
いくつかのオプション:
最も簡単な方法は<<
で、.
で繰り返します