
Ich verwende das Listings-Paket mit einer benutzerdefinierten Sprachdefinition. In meiner Sprache habe ich Typen der Form:
Foo@Bar>>Baz
Bar und Baz sind Schlüsselwörter in der Sprache und sollten daher hervorgehoben werden. Foo ist ein beliebiger Bezeichner und erfordert keine spezielle Hervorhebungsbehandlung.
Wenn ich die obigen Token durch Leerzeichen trenne, ist alles in Ordnung. Wenn ich sie jedoch nicht durch Leerzeichen trenne (wie im obigen Beispiel), erhalte ich nur die entsprechende Hervorhebung für Baz, nicht für Bar.
Ich habe mir die Dokumentation angesehen (http://texdoc.net/texmf-dist/doc/latex/listings/listings.pdf), habe aber keine Möglichkeit gefunden, anzugeben, dass das @-Zeichen nicht Teil des Bezeichners sein soll. Ich habe versucht, @ als Schlüsselwort einzuschließen:
keywords=[5]{@},
keywordstyle=[5]\bfseries,
aber das schien nicht zu helfen.
Irgendwelche Vorschläge?
Antwort1
Keine Sorge – ich habe die Antwort gefunden! Der Trick besteht darin, @ als „anderes“ Zeichen zu kennzeichnen; standardmäßig ist es ein „Buchstabe“ und daher in Bezeichnern enthalten. Das reicht:
alsoother={@},