Ich schreibe eine IntelliJ Plugin, das Rythmus Maschinencode in HTML-Dateien erkennen soll. Rythm ist eine Vorlage-Engine und die Syntax beginnt mit @Rythm-Engine Plugin für IntelliJ
Ich habe bereits die benutzerdefinierte Sprache Plugin-Tutorial aus dem JetBrains doc gemacht.
weit Also habe ich Syntax Hervorhebungen für Rythmus teilweise arbeiten. Wenn ich den Code unten in einer .rythm Datei kopieren und einfügen würde, wäre alles gut erkannt. Aber dann würde HTML nicht erkannt werden.
habe ich versucht, die Sprache Injektion aus dem IntelliLang Plugin aber jetzt erkennt er den Rythmus Code nur zwischen HTML-Tags.
In diesem Beispiel @ i18n und @something würde als Rythmus zu erkennen. Aber @rythmCode ist immer noch unmarkiert.
Irgendwelche Ideen, wie ich es kann arbeiten, auch wenn @rythmCode außerhalb von HTML-Tags ist?
@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">`
edit:
Schließlich funktioniert es. Jetzt möchte ich einen Formatierer implementieren. Wie kann ich einen HTML-Formatierer für den HTML-Teil und einen Rythm-Formatierer für den Rythm-Teil implementieren?
bearbeiten 2: HTML-Formatierungsarbeiten. Jetzt brauche ich ein wenig Hilfe bei der Rythm-Formatierung. Ich denke, mit meiner .bnf-Datei stimmt etwas nicht.
Also, haben Sie implementieren Ihre IntelliJ Idea-Plugin? Wenn ja, ist es möglich, sie irgendwo zu sehen (als Quellcode oder kompiliert)? –
Sicher, Sie können den Quellcode auf GitHub finden: https://github.com/scireum-incubator/rythm_plugin – MrWhite