2

基本的に、.HTML ファイルを編集しているとき、Vim に HTML タグをインデントさせたくありませんが、Javascript コードではインデントさせたいと思っています。

これを止めたい:

<table>
    <tr>
        <td>

Enterキーを押したときに、HTMLが次の行の先頭に移動することをお勧めします。

<table>
<tr>
<td>

しかし、私はVimにJavascriptのためにこれを続けてもらいたい:

function fooBar() {
    var myVar = 10;    
}

現在、.gvimrc に次の行があります。

filetype plugin indent on

HTML タグのみに対して Vim のインデントを選択的に無効にすることはできますか? これについてGoogleで調査したところ、コードを貼り付けるためのインデントを無効にするチュートリアルがほとんどでした。

4

2 に答える 2

1

ただやるだけset filetype=javascriptで十分だと思います。ただし、JavaScriptを個別の*.jsファイルに配置する必要があります。

于 2012-07-03T05:26:55.017 に答える
0

これを試して:

set indentexpr=|set cindent

探している効果があるはずです.htmlタグに基づいてインデントしませんが、開き中括弧などの後にインデントし、html構文の強調表示を保持します. これを永続的にするには、vimrc で のように自動コマンドを使用できますau BufEnter *.html set indentexpr=|set cindent

インデントには 4 つのレベルがあります。それらは、優先度の低いものから順に、autoindentsmartindentcindent、およびindentexprです。したがって、 がindentexpr設定されていないことを確認するだけで、 を設定できますcindentcindentデフォルトで文字{,},),:,#をインデントに使用するため、html をインデントせずに中括弧などをインデントします。

于 2012-07-03T09:22:46.440 に答える