Makros
Ein Makro ist ein Halter für einen dynamischen Text. Wenn Sie zum Beispiel das aktuelle Datum in Ihrem Text haben müssen, können Sie entweder Ihren Text jeden Tag ändern oder Sie können ein Datumsmakro verwenden, das das Datumsmakro durch das aktuelle Datum ersetzt. Dieses Verhalten macht das Makro extrem leistungsfähig in Werkzeugen, die dynamischen Text erfordern.
Ein Makrotext kann sowohl Makro-Tags als auch regulären Text enthalten. Es kann null, ein oder mehrere Makrotags enthalten.
Ein Makrofeld ähnelt einem normalen Textfeld. Der einzige Unterschied besteht darin, dass das Makrofeld einen gelben Hintergrund hat, während die regulären Textfelder einen weißen Hintergrund haben.
Syntax
Ein Makro-Tag beginnt und endet mit einem Prozentzeichen (%). Der Makroname befindet sich unmittelbar nach dem ersten Prozentzeichen.
Einfaches Makro Beispiel
Das Makro für den Dateipfad für eine bestimmte Datei heißt "FILE_PATH". Das Makro wird als geschrieben
%DATEIPFAD%
Das obige Beispiel enthält ein "einfaches" Makro. Die einfachen Makros haben nur einen Namen. Es gibt jedoch "komplexe" Makros, die ein wenig zusätzliche Informationen benötigen, um korrekt behandelt zu werden. Viele Makros haben sowohl eine einfache Version als auch mindestens eine komplexe Version.
Die komplexen Makros werden als einfaches Makro mit einem zusätzlichen Teil geschrieben, in den die Parameter geschrieben werden. Die Parameter werden unmittelbar nach dem Makronamen in geraden Klammern ([und]) geschrieben.
Komplexes Makro Beispiel:
Das Makro für das aktuelle Datum hat den Namen "D".
Dieses Makro hat die einfache Form% D%
Es gibt eine erweiterte Alternative zum Datumsmakro, wo das Format des aktuellen Datums ist
kann eingegeben werden (lesen Sie mehr über die Formate in der Makrospezifikation), z.B.
% D [JJJJ-MM]%
Die komplexen Makros können einen oder mehrere Parameter haben. Im obigen Beispiel verwendet das Datumsmakro einen Parameter in der komplexen Form, um anzugeben, welches Format des Datums das Ergebnis sein soll. Wenn mehr als ein Parameter verwendet wird, wird jeder Parameter durch ein Komma (,) getrennt
Ein Parameter Beispiel:
Das Datumsmakro hat eine Version, bei der das Ergebnisdatum das aktuelle Datum plus oder minus a sein kann
bestimmte Anzahl von Tagen. Wenn wir einen Tag hinzufügen möchten und möchten, dass das Ergebnis im Format ist
JJJJ-MM-TT Das Makro wäre:
% D [+ 1, JJJJ-MM-TT]%
Spezielle Makro-Zeichen
Ein Makro besteht aus vier Sonderzeichen.
Prozentzeichen:%
Linke Klammer: [
Rechte Klammer:]
Komma Charakter:,
Die Parameter in einem Makro können mit anderen Makros erstellt werden, die wiederum mehr Makros usw. enthalten. Die Parameter eines Makros dürfen keines der vier Sonderzeichen enthalten, außer wenn ein neues Makro angegeben ist. Keines der vier Sonderzeichen darf direkt als einfacher Text in einem Makro verwendet werden, stattdessen können die folgenden Ersetzungen verwendet werden, um die Zeichen als Ausgabe zu erhalten;
Prozentzeichen: %%
Linke Klammer:% CHAR [91]%
Rechte Klammer:% CHAR [93]%
Komma-Zeichen:%,
Beachten Sie, dass diese Einschränkung der Verwendung der vier Zeichen nur erforderlich ist, wenn statischer Text als Teil der Parameterliste eines Makros geschrieben wird.
Sonderzeichen in der Makro-Parameterliste
Das Makro LENGTH gibt die Anzahl der Zeichen in dem Parameter zurück, z. % LENGTH [der Text]% würde "8" zurückgeben (der Abstand zwischen dem und dem Text wird ebenfalls gezählt). Wenn der Text, der in dem Parameter enthalten ist, irgendeines der Sonderzeichen enthält, kann dies einen Fehler verursachen, z.
% LÄNGE [100%]%.
In diesem Fall könnte das% -Zeichen im Text als Makrostart verwechselt werden und zu einem Fehler führen. Um die Zeichen im Text '100%' zählen zu können, müssen wir ihnen ein Prozentzeichen entziehen. Das Makro% LENGTH [100 %%]% gibt '4' zurück.
Alternative zu dem entkommenen%
Es gibt ein spezielles Makro namens CHAR, das ein Zeichen basierend auf einem UTF-Wert zurückgibt. Thismakro kann verwendet werden, um ein gesuchtes Sonderzeichen zurückzugeben. Wenn der Text '100%' gewünscht wird, könnte der Makrotext '100% CHAR [37]%' lauten.
Beachten Sie, dass die Einschränkung, dass die Sonderzeichen in der Makroparameterliste nicht verwendet werden, nur dann zählt, wenn die Zeichen direkt verwendet werden. Wenn ein Makro verwendet wird, das zu einem der Sonderzeichen führen kann, ist dies kein Fehler.
Makros, die Sonderzeichen zurückgeben, sind Ok
Im Rückblick auf die obigen Beispiele wollen wir ein Makro haben, das uns die Länge des Textes '100%' gibt. Wir werden das Makro CHAR verwenden, um das einzelne Prozentzeichen darzustellen (wir hätten auch '%%' verwenden können). Das letzte Makro (was in Ordnung ist und keinen Fehler auslösen wird) wird sein;
% LÄNGE [100% CHAR [37]%]%
Beachten Sie, dass dies kein Fehler ist, bei dem Sie möglicherweise vermutet haben, dass das Makro CHAR zu einem einzelnen Prozentwert führt, und dass dann ein Fehler auftreten würde, wenn das Makro LENGTH das einzelne Prozentzeichen sehen würde. Die Makros werden so analysiert, dass dieser Fehler nie auftritt.