50

VIM の Javascript の構文強調表示が最適ではないことに気づいた人はいますか? 構文の強調表示を調整するためにスクロールする必要がある場合があることに気付きました。

これを修正する回避策または方法はありますか? 私はvim7.1を使用しています。

4

5 に答える 5

32

VIMRUNTIME に同梱されているものではなく、この改良された Javascript シンタックス ハイライターを試してみてください。

于 2008-09-12T13:28:16.133 に答える
12

シンタックス カラーリングの同期は、おそらく調整が必要です。特定のコンテキストで、変更する必要があることがわかりました。

シンタックス同期 (":help syn-sync") は、vim がカラーリング用のコードの解析を追跡および更新する方法を制御し、ファイル内のどこからでも描画を開始できるようにします。

デフォルトが常にうまくいくとは限らないので、時々私は自分自身が

:syn sync fromstart

以下のドキュメントを読むことをお勧めします

:help syn-sync

または単にチェックする

:help syntax

同期に関するセクションを見つけます。

利用可能な 4 つの基本オプションの中から情報に基づいた決定を下すことができます。「fromstart」モードと「ccomment」モードを切り替えたり、同期設定をクリアしたりするためのファンクション キーへのマッピングを維持しています。

于 2008-09-12T15:04:26.620 に答える
8

これは非常に古い投稿ですが、私も同じことを経験していました.html。ファイルの JavaScript セクションを見ると、シンタックス ハイライトが機能しなくなることがあります。OPが言及しているように、簡単な回避策は上にスクロールすることであり、魔法のように物事が再び強調表示され始めました.

今日、根本的な問題と適切な解決策を見つけました。Vim では、構文の強調表示はコンテキストを使用して正しい強調表示を導き出し、コンテキストは前の行で定義されます。を発行することにより、現在の行の前に何行使用するかを指定することができます:syntax sync minlines=200。この場合、前の 200 行までをコンテキストとして使用します。を実行すると、ファイル全体を使用できます (長いファイルの場合は遅くなる可能性があります) :syntax sync fromstart

それを見つけたら、次の行を my に追加しました.vimrc:

autocmd BufEnter *.html :syntax sync fromstart

そうすることで、.htmlファイルはファイル全体をコンテキストとして使用します。したがって、JavaScript セクションは、JS セクションの長さに関係なく、常に適切に強調表示されます。これが他の誰かに役立つことを願っています!

于 2016-12-01T17:52:12.583 に答える
3

すばやく汚い修正を行うために、時々上下にスクロールしてハイライトを再調整します。Ctrl+L画面の再描画の場合も修正できます。

于 2008-09-12T17:40:20.083 に答える