![]() |
SprachunterstützungDie Sprachunterstützung kann (im Rahmen der Projekteinstellungen) über Projekt|Einstellungen (Registerkarte Sprachunterstützung) ein- und ausgeschaltet werden. Die Sprachunterstützung umfaßt u.a. folgende Aspekte:
Das language-Tag ist grundsätzlich das Wurzelelement und enthält die Attribute name und extensions. Der Wert des Attributs name ist der Name der jeweiligen Sprache bzw. Sprachfamilie, der Wert des Attributs extensions ist eine (durch Leerzeichen separierte) Liste von Extensions, die Ed42 darauf hinweisen, dass die im aktuellen File definierten Einstellungen verwendet werden sollen. Beispiel:
Das Tag enthält ein Attribut mit Namen value, dessen Wert eine Zeichenkette ist, die alle Zeichen enthält aus der Schlüsselwörter gebildet werden. Beispiel:
Das Tag enthält ein Attribut mit Namen value, dessen Wert eine Zeichenkette ist, die alle Zeichen enthält, die als Delimiter fungieren. Beispiel:
Das Tag enthält ein Attribut mit Namen value, dessen Wert eine Zeichenkette ist, die alle Zeichen enthält, die Strings begrenzen. Beispiel:
Das Tag enthält ein Attribut mit Namen value, dessen Wert eine Zeichenkette ist, die alle Zeichen enthält, welche die Wirkung eines (in einer anderen Zeichenkette) folgenden Zeichens aufheben. Beispielsweise wird das Zeichen '"' im in der Zeichenkette '\"' nicht als Stringbegrenzer behandelt wenn das Zeichen '\' als Escapezeichen definiert ist. Beispiel:
Das Tag enthält ein Attribut mit Namen value, dessen Wert den Klassendelimiter (z.B. bei C++ ist das der String '::') enthält. Beispiel:
Über das keyword-Tag werden mehrere key-Tags zusammengefaßt. Ein key-Tag enthält ein Attribut mit Namen value, dessen Wert ein Schlüsselwort der aktuellen Sprache bzw. Sprachfamilie ist. Beispiel:
Das Tag enthält folgende Attribute:
Beispiel:
Über das brackets-Tag werden mehrere bracket-Tags zusammengefaßt. Ein bracket-Tag enthält die Attribute start und end. Der Wert des Attributes start ist eine öffnende Klammer, der Wert des Attrubutes end die zugehörige schließende Klammer. Beispiel:
Über das compounds-Tag werden mehrere compound-Tags zusammengefaßt. Ein compound-Tag enthält genau ein Attribut, das entweder den Namen start oder end besitzt. Ein start-Attribut enthält einen Bezeichner oder eine Zeichenkette, der/die einen zusammengesetzten Ausdruck einleitet, entsprechend enthält ein end-Attribut einen Bezeichner oder eine Zeichenkette, der/die einen zusammengesetzten Ausdruck beendet. Beispiel:
Über das commentTypes-Tag werden mehrere commentType-Tags zusammengefaßt. Ein commentType-Tag enthält ein Attribut das Angaben zu Optionen enthält, die bei der Erstellung und Formatierung von Kommentaren berücksichtigt werden sollen. Folgende Werte sind möglich:
Beispiel:
Die Werte 'CLASSES', 'FUNCTIONS', 'PROCEDURES',
'STRUCTS' und 'INTERFACES' werden zusätzlich für
Navigationszwecke
ausgewertet. Beispielsweise bewirkt die Angabe des Werts 'FUNCTIONS',
dass Fuktionen im Rahmen der Navigation besonders unterstützt werden.
U.a. wird dann im Navigationsregister eine Seite für Funktionen angezeigt.
Über das commands-Tag werden mehrere command-Tags zusammengefaßt. Ein command-Tag enthält ein Attribut mit Namen value, das ein Kommando zur Sprachunterstützung enthält. Folgende Kommandos werden unterstützt:
Beispiel: Sprachunterstützung für Pascal/Delphi (pascal_key.xml)<language name="Pascal" extensions=".pas"><keywordChars value="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ_"/> <delimiterChars value="()[]{},;:+*-\/'"<>."/> <stringDelimiterChars value="'"/> <escapeChars value=""/> <classDelimiter value="."/> <keywords> <key value="ABSOLUTE"/> <key value="AND"/> <key value="ARRAY"/> <key value="BEGIN"/> <key value="BOOLEAN"/> <key value="BREAK"/> <key value="BYTE"/> <key value="CASE"/> <key value="CHAR"/> <key value="CLASS"/> <key value="CONST"/> <key value="CONSTRUCTOR"/> <key value="DESTRUCTOR"/> <key value="DIV"/> <key value="DO"/> <key value="DOWNTO"/> <key value="ELSE"/> <key value="END"/> <key value="EXCEPT"/> <key value="EXTERNAL"/> <key value="FALSE"/> <key value="FILE"/> <key value="FINALLY"/> <key value="FOR"/> <key value="FORWARD"/> <key value="FUNCTION"/> <key value="GOTO"/> <key value="IF"/> <key value="IMPLEMENTATION"/> <key value="IN"/> <key value="INLINE"/> <key value="INTEGER"/> <key value="INTERFACE"/> <key value="INTERRUPT"/> <key value="LABEL"/> <key value="MOD"/> <key value="NIL"/> <key value="NOT"/> <key value="OBJECT"/> <key value="OF"/> <key value="OR"/> <key value="PACKED"/> <key value="PRIVATE"/> <key value="PROCEDURE"/> <key value="PROGRAM"/> <key value="PUBLIC"/> <key value="RAISE"/> <key value="REAL"/> <key value="RECORD"/> <key value="REPEAT"/> <key value="SET"/> <key value="SHL"/> <key value="SHR"/> <key value="STRING"/> <key value="THEN"/> <key value="TO"/> <key value="TRUE"/> <key value="TRY"/> <key value="TYPE"/> <key value="UNIT"/> <key value="UNTIL"/> <key value="USES"/> <key value="VAR"/> <key value="VIRTUAL"/> <key value="WHILE"/> <key value="WITH"/> <key value="WORD"/> <key value="XOR"/> </keywords> <comments startLong="(*" endLong="*)" startShort="//"/> <brackets> <bracket start="(" end=")"/> <bracket start="{" end="}"/> <bracket start="[" end="]"/> <bracket start="BEGIN" end="END"/> </brackets> <compounds> <compound start="BEGIN"/> <compound start="CASE"/> <compound start="CLASS"/> <compound start="INTERFACE"/> <compound start="OBJECT"/> <compound start="RECORD"/> <compound end="END"/> </compounds> <commentTypes> <commentType value="MODULES"/> <commentType value="FUNCTIONS"/> <commentType value="PROCEDURES"/> <commentType value="CLASSES"/> <commentType value="STRUCTS"/> <commentType value="INTERFACES"/> </commentTypes> <commands> <command value="IGNORE_UPPER_LOWER"/> <command value="AUTOPARSE"/> </commands> <makroFile value="pascal.mak"/> </language> |
||||||||||||||||||||||||||||||||||||||||
Last Change: 27.10.2001
© Copyright by Stefan Brüning. All rights reserved |