vim-autocloseというVim自動ペアプラグインを見つけました。他のIDEと同じようにうまく機能します。たとえば、入力すると表示{
されます{|}
(「|」はカーソルを表します)。次に、「Enter」を押すと、次のように{|}
なります。
{
|
}
これは私が必要としているものですが、残念ながら中国語入力メソッドアプリケーションが無効になるため、放棄する必要があります。
他の自動クローズプラグインを試しましたが、この方法で自動クローズすることはできません。上記のようにオートクローズを機能させる方法を見つけました。
:autocmd FileType c,java,javascript ino <buffer> { <C-G>u{<CR>}<Esc>O<C-T>
しかし、シフト幅に問題があります。たとえば、私:set shiftwidth=4
が間にある新しい行に{}
は、8つのスペースインデントがあります。新しい行のインデントは、シフト幅を2倍にします。
私の質問は、改行のインデントをshiftwidthの同じスペースインデントに設定する方法です。