2016-11-26 16 views
0

ターゲットテキストファイル。`{`と `}`の間にある行に4つの空白を追加するには?

<style type="text/css"> 
    #wrap{ 
    height: 550px; 
    width: 660px; 
    } 
    #wrap ul{ 
    list-style: none; 
    } 
    #wrap li{ 
    border-radius:3px; 
    cursor:pointer; 
    } 
    #wrap{ 
    height: 550px; 
    width: 660px; 
    } 
    #wrap ul{ 
    list-style: none; 
    } 
    #wrap li{ 
    border-radius:3px; 
    cursor:pointer; 
    } 
</style> 

今私は以下のように表示された上記作るために、{}の間で見つけラインの初めに4つの空白を追加します。

<style type="text/css"> 
    #wrap{ 
     height: 550px; 
     width: 660px; 
    } 
    #wrap ul{ 
     list-style: none; 
    } 
    #wrap li{ 
     border-radius:3px; 
     cursor:pointer; 
    } 
    #wrap{ 
     height: 550px; 
     width: 660px; 
    } 
    #wrap ul{ 
     list-style: none; 
    } 
    #wrap li{ 
     border-radius:3px; 
     cursor:pointer; 
    } 
</style> 

多分、タスクを実行するすべてのコミットを実行するのは馬鹿です。

3,4s/^/ /g 
7s/^/ /g 
10,11s/^/ /g 
14,15s/^/ /g 
18s/^/ /g 
21,22s/^/ /g 

さらにシンプルでスマートな方法がありますか?

:2,23norm == 

をしかし、直接あなたの質問に答えるために、あなたは:を含む行を対象にする必要があります:ドキュメントのファイルタイプが正しくhtmlに設定し、集計が正しく設定されている、次は十分なはずれたと仮定すると、

答えて

0

:2,23g/:/s/^/ /

手動で範囲を定義したくない場合は、あなたができる:

vit:g/:/s/^/ /

'<,'>の範囲を自動的に挿入します。

-1
:g/^[^<#}]/ normal >> 

説明:

: ........... command 
g ........... global command (executes on the following pattern 
/........... start search pattern 
^ ........... beginning of line 
[^ ] ........ denied list 
<#} ......... denied chars 
/........... search pattern's end 
normal ...... execute in normal mode 
>> .......... indentation 

このパターンは、あまりにも再発あなたは~/.vimrcファイルにマップを置くことができ、このようなものである場合:

map <F2> <esc>:g/^[^<#}]/ normal >><cr> 

<cr>は、キャリッジリターン

を意味し、
+0

regパターンが間違っていることが確認されています。 –

関連する問題