2017-10-19 14 views
0

辞書にキーを一重引用符で囲むのを忘れてしまった。 vimでこれを行う最速の方法は何ですか?vimで複数の行に引用符を追加

fName: 'Please enter your full name:', 
employed: "Are you employed (enter 'y' for yes and 'n' for no)?", 
salary: 'Please enter your current salary:', 
incRate: 'Please enter your percent pay increase:' 

現在のところ私の手順です。

'fName'の先頭に移動し、モードを挿入します。 'wコマンドを挿入します。'、下にjコマンド、後ろの単語bコマンド、上記を繰り返します。

ありがとうございました!

+0

'%s/^/'/'と '%s /:/':/'それが完全なドキュメントでない場合は、ビジュアルモードを使って行を選択し、 's'コマンドを使用してください – balki

+0

'%norm I' ea'' –

+0

@balkiさらに詳しく調べると、キャレット(^)は行の先頭を示すように見えます。しかし、私の行はインデントされているため、最初の単語の左側ではなく、行の一番左に一重引用符が追加されます。あなたはこれを修正する方法を知っていますか?あなたの最後の質問のためだけに –

答えて

1

一つの方法:

ciw'<C-r><C-o>'<Esc> 
2_. or j0. 
2_. 
2_. 

参考:

:help c 
:help iw 
:help i_ctrl-r_ctrl-o 
:help _ 
+1

次の行に進むには、 '2_'の代わりに' + '/' 'を使用します。 –

2

多くの人々はそのためsurround.vimプラグインを使用します。これで、現在の単語をysiw'で囲むことができます。 (ys - サラウンド、iw - 内側の単語、' - 一重引用符で)。​​では、これをj.経由で次の行に適用できます。

+1

surround.vimは私が大いに使っているので、私の最初のアイディアでした。しかし、サラウンドi woult suggets ':g /:/ norm^ysiw 'を使用すると、手作業での繰り返しを避けることができます。 –

関連する問題