Techglimpseの常連読者であるAshiさんからの質問です。彼は、Vimエディターの各行の先頭にテキストを挿入する方法を尋ねます。
各行の先頭にテキストを挿入するVimコマンドがあるかどうか知りたかっただけですか?たとえば、各行の先頭に「hello」を挿入しますか?
Vimエディターの各行の先頭にテキストを挿入する方法
はい、それは可能です。以下に示すように、代替コマンドを使用できます。
# vim sample.txt
方法1: 以下のコマンドを入力してEnterキーを押します。
:%s/^/hello/
スペースまたはその他の特殊文字を追加する場合は、同じものをテキストに追加するだけです。
:%s/^/hello : /
10行目から20行目(つまり範囲)の先頭にテキストを挿入することもできます。
:10,20s/^/hello : /
注: 上記の例では、10行目から20行目の先頭にテキストを挿入します。 行方不明の%
に注意してください 、これはすべての行を置き換えることを意味します。
方法2:マーカーを使用する
ステップ1: テキストを挿入する行にカーソルを移動します。
ステップ2: ESC
を押します ma
と入力します 。この手順では、マーカー a
を作成します
ステップ3: テキストの挿入を停止する行にカーソルを移動します。
ステップ4: タイプ
:'a,.s/^/hello : /
コマンドは複雑に見えるかもしれませんが、範囲を使用するのと似ています。ステップ2で、新しいマーカー a
を作成します 。次に、コマンドは typewriter apostrophe(')
で始まります マーカーa
が続きます –マーカーとコンマで行の先頭を示す(、)
続いてdot(。)and s
コマンド-置換の終了を示します。にんじん(^)コード> 行の始まりを表します。
方法3:ビジュアルエディターを使用する。
ステップ1: テキストを挿入する行にカーソルを移動します。
ステップ2: Ctrl + V
を押します Visual Block
に入る カーソルを使用して最初の列を選択
します テキストの挿入を停止する行まで。
ステップ3: Shift + iを押して、挿入モードに入ります
。挿入するテキストを入力してESC
を押します 。手順2で選択したすべての行にテキストが自動的に挿入されているのがわかります。
それでおしまい!トリックが好きですか?コメントを教えてください。