| Autor |
Nachricht |
Chiller
Mitglied
Benutzerprofil
Anmeldungsdatum: 04.09.2011
Beiträge: 65
|
Chiller Mitglied
13:23:01 28.01.2012 Titel: |
Syntax Highlighting nach eigener Definition |
Zitieren |
Moin moin
Ich schreibe gerade an einem Programm, welches Wellenformen als Hex-File exportieren kann.
Da man je nach Anwendung ein anderes Format (Header, Zeilenaufbau, etc.) braucht, möchte ich dem Benutzer die Möglichkeit geben, seine eigene Definition zu machen.
Damit der Benutzer sieht ob er Fehler macht, möchte ich einen Syntax Highlighting machen, welches drei verschiedene Datensorten akzeptiert:
- Text "Das ist ein Text"
- Zahlen 22, 0x16
- Keywords : Irgendwelche Zeichenfolgen (Nur Buchstaben und Zahlen)
Jeder Wert muss mit einem + von den anderen Werten getrennt sein, es dürfen nicht zwei Werte zwischen einem + geschrieben werden.
Beispiel:
"Text" + Keyword + 22 + 0xF4 + Fehler + "Text" 22
Hier würde Fehler und "Text" 22 Rot unterstrichen, da es Fehler sind. Die anderen Textteilen würden dann in den entsprechenden Farben geschrieben.
Ich habe bereits vorhandene Syntax Highlightings angeschaut, aber diese sind leider alle nur für Code...
Ich wäre sehr froh wenn mir da jemand helfen könnte.
Grüsse
Chiller |
|
|
|
 |
Firefighter
Mitglied
Benutzerprofil
Anmeldungsdatum: 27.03.2007
Beiträge: 2820
|
Firefighter Mitglied
13:28:46 28.01.2012 Titel: |
|
Zitieren |
|
 |
Chiller
Mitglied
Benutzerprofil
Anmeldungsdatum: 04.09.2011
Beiträge: 65
|
Chiller Mitglied
13:43:38 28.01.2012 Titel: |
|
Zitieren |
Danke.
Mit dem kann ich schon mal nach Schlüsselwörter suchen, aber...
Wie kann ich dann die korrekte Formatierung prüfen? Das wird ja das eigentlich schwierige am Ganzen.
Z.B. sollen Pluszeichen welche in einem Textteil sind nicht als Trennzeichen verwendet werden.
Weisst du wie das z.B. im Visual Studio gelöst wurde, dass die Formatierung sauber läuft?
Gibt es da einen Algorythmus?
Grüsse
Chiller |
|
|
|
 |
dot
Mitglied
Benutzerprofil
Anmeldungsdatum: 20.05.2004
Beiträge: 3858
|
dot Mitglied
13:50:33 28.01.2012 Titel: |
|
Zitieren |
|
 |
Firefighter
Mitglied
Benutzerprofil
Anmeldungsdatum: 27.03.2007
Beiträge: 2820
|
Firefighter Mitglied
13:51:18 28.01.2012 Titel: |
|
Zitieren |
Naja das was in Visual Studio passiert sind ja zwei unterschiedliche Dinge. Einmal hast du einen Syntaxhighlighter welcher dir Stumpf deine Keywords markiert und du brauchst einen On-The-Fly Parser der den Text ueberprueft. So solltest du das auch in deinem Programm trennen.
Algorithmen gibt es dafuer keine vorgefertigten, das musst du dir leider selbst schreiben. |
_________________ Mein Blog
Clean-Code-Developer
Wie man richtig Fragen stellt
|
|
 |
Chiller
Mitglied
Benutzerprofil
Anmeldungsdatum: 04.09.2011
Beiträge: 65
|
Chiller Mitglied
14:12:45 28.01.2012 Titel: |
|
Zitieren |
@dot:
So weit ich das verstanden habe ist die SDK eigentlich dazu gedacht, macros für VS zu schreiben. Ich will aber ein Programm schreiben, welches das VS nicht voraussetzt. Wenn ich mich irre, dann korrigiere mich bitte.
@Firefighter:
Stimmt, ist eigentlich logisch, dass das zwei Abläufe sind.
Ich habe mir überlegt, ob es nicht sinnvoll wäre den ganzen Text in Objekte zu unterteilen und alles was zu einem Objekt gemacht wurde, aus dem Text zu entfernen. Diese Objekte würden dann ein paar Infos haben wie: Den Text oder Wert, Startpunkt im Text, Länge im Text,
Durch die Unterteilung in Objekten könnte ich gleich sehen ob es Fehler gibt, da auch Pluszeichen in solche Objekte umgewandelt würden. Falls dann noch etwas im Text übrig bleibt ist es ein Fehler.
Das einfärben würde ich dann anhand der Objekte machen.
Ich weiss noch nicht ob das Funktionieren wird, aber bis jetzt sehe ich noch kein Problem.
Grüsse
Chiller |
|
|
|
 |
dot
Mitglied
Benutzerprofil
Anmeldungsdatum: 20.05.2004
Beiträge: 3858
|
dot Mitglied
15:04:05 28.01.2012 Titel: |
|
Zitieren |
Oh sry, ich dachte du wolltest Syntaxhighlighting für eine eigene Sprache in VS einbauen... |
_________________ one point of view will never reveal the entire scene.
|
|
 |