私はvimが本当にこれを行うことができると思います。私はちょうど私の方法arround検索とregexを使用して置き換えてわからない。誰もがこの周りの私を助けることができます。VIMを使ったCSSのストリップコメント
更新
この件に関するお手伝いを下記にお願いいたします。ここに地図があります。
map <leader>rc :%[email protected]\v/\*([^*]\|[\r\n]\|(\*+([^*/]\|[\r\n])))*\*+/@@g<cr>
私はvimが本当にこれを行うことができると思います。私はちょうど私の方法arround検索とregexを使用して置き換えてわからない。誰もがこの周りの私を助けることができます。VIMを使ったCSSのストリップコメント
更新
この件に関するお手伝いを下記にお願いいたします。ここに地図があります。
map <leader>rc :%[email protected]\v/\*([^*]\|[\r\n]\|(\*+([^*/]\|[\r\n])))*\*+/@@g<cr>
:%[email protected]/\*\([^*]\|[\r\n]\|\(\*\+\([^*/]\|[\r\n]\)\)\)*\*\+/@@g
はそれがエスケープ回避するために、区切り文字として@
を使用してではなく、/
者注(すべてのCSSのコメントを取り除くでしょう\
あなたはまた\v
、「非常に魔法」フラグを(:help \v
を読む)を使用することができ、かつ()|+
文字の魔法を行う必要はありません:。:%[email protected]\v/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/@@g
(この答えはちょうどそれのためにVimの構文に入れてjballの答えを拡張している。)
は、ここでCスタイル(たとえば、/* ... */
ので、CSS)のコメントと一致する必要があります(Stephen Ostermillerから)正規表現です:
注:これはおそらく、正規表現のVIMの特定の風味への適応が必要になります。
本当に簡単です: '/ \\ * \\ _ \。 { - } \\ */''/'はパターンデリミタではありません。 – Benoit
ありがとうございます。D 地図を使ってvimでこれをテストしました test:%s @/\ * \([^ *] \ | [\ r \ n] \ | \(\ * \ + \ ] \ | [\ r \ n] \)\)\)* \ * \ +/@@ g これは機能しませんでした。または私は何かが欠けている。 :) –
@ragingmonあなたは2つを混ぜました。あなたは、すべてのものをエスケープする最初のもの、または「非常に魔法のもの」を使うものを使用する必要があります。そして、 'map'を使うときは、' \ v'変種を使わないとエスケープしなければなりません。 '|'はコマンドを区切るために使われます( ':help:bar'を参照してください) 。 –
Chrisに感謝します。このようなことを私に教えてくれてありがとう。ここには作業中のものがあります>> map rc:%s @ \ v/\ *([^ *] \ | [\ r \ n] \ |(\ *([^ * /] \ | [ n]))))* \ * +/@@ g –