私は、IntelliJプラグインを作成しています。これは、.htmlファイルのrythmエンジンコードを認識する必要があります。 Rythmはテンプレートエンジンで、構文は@Rythm Engine Plugin for IntelliJ
となっています。すでにJetBrainsのドキュメントからカスタム言語のプラグインチュートリアルを行っています。
これまでのところ、Syntax Highlightingは部分的にrythmで動作しています。 下のコードを.rythmファイルにコピーして貼り付けると、すべてがよく認識されます。しかし、HTMLは認識されません。
IntelliLangプラグインからの言語注入を試みましたが、今はHTMLタグ間のリズムコードしか認識していません。
この例では、@ i18nと@somethingはrythmと認識されます。しかし、@rythmCodeはまだ強調されていません。
@rythmCodeがHTMLタグの外にあっても、どのように動作させることができますか?
@rythmCode {
<li>
<a href="/xxx">@i18n("xxx")</a>
</li>
<li>
<a href="/xxx/@something.getSomething()">@something.getSomething():@something.getSomething()</a>
</li>
}
@rythmCode() {
<div class="row">
<div class="col-md-6 word-wrap">
@something.getSomething(): @something.getSomething()
</div>
<div class="col-md-6 align-right">`
編集:
最後にそれが動作します。今私はフォーマッタを実装したいと思います。 HTMLパート用のHTMLフォーマッタとRythmパート用のRythmフォーマッタを実装するにはどうすればよいですか?
編集2: HTMLフォーマッタが動作します。 Rythmのフォーマットに少し助けが必要です。私は.bnfファイルで何か問題があると思う。
だから、あなたはあなたのIntelliJアイデアプラグインを実装したのですか?もしそうなら、それはどこか(ソースコードとして、またはコンパイルされて)見ることができますか? –
もちろん、GitHubでソースコードを見つけることができます:https://github.com/scireum-incubator/rythm_plugin – MrWhite