web-dev-qa-db-ja.com

.Javaファイルのvimエディターで^ Iをタブスペースに置き換えるにはどうすればよいですか?

.Javaファイルをvimで開くと、1つ以上の_^I_文字がプレフィックスとして付いた2行が表示されました。 _^I_に変換されたEclipseのタブのように見えます。

1つの_^I_を4文字のスペースに置き換えたいと思います。

例えば

^I^I^I^IList<History> rulePackagesHistory = result.getHistory();

Vimエディターでそれをどのように行うことができますか?

2
user648330

これらの行を.vimrcに追加します。

set tabstop=4
set shiftwidth=4
set expandtab

その後、入力された新しいタブ文字はそれぞれ4つのスペースに変更されますが、古いタブは変更されません。次のように入力する必要があります。

:retab

これにより、ファイル内の既存のすべてのタブがスペースに変換されます。

retabを使用したくない場合は、Perlを使用して各タブを4つのスペースに置き換えることができます。

Perl -i.bak -pe 's/\t/    /g' file
6
cuonglm

特定のファイルについては、vimにいる間に次を実行できます

を押す必要があります Ctrl+V+I 作成するには^I

:%s /^I/^I^I^I^I/g
0