EnglischFranzösischSpanisch

OnWorks-Favicon

filepp – Online in der Cloud

Führen Sie filepp im kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist die Befehlsdatei PP, die beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


filepp – Ein generischer Dateipräprozessor

ZUSAMMENFASSUNG


filepp [Optionen] Dateiname(n)

BESCHREIBUNG


filepp ist ein generischer Dateipräprozessor, der die vom bereitgestellten Funktionen ermöglicht
C Präprozessor cpp(1) zur Verwendung mit jedem Dateityp. filepp ist so konzipiert, dass es leicht zu bedienen ist
individuell angepasst und erweitert.

OPTIONAL


filepp akzeptiert die folgenden Befehlszeilenoptionen:

-b Unterdrücken Sie Leerzeilen, die aus Include-Dateien stammen (dies hat keine Auswirkung auf die oberste Zeile).
Level-Datei).

-c Lesen Sie die Eingabe von STDIN anstelle einer Datei. Hinweis: Wenn beides -c und Eingabedateien sind
angegeben, werden beide in der angegebenen Reihenfolge als Eingaben verwendet.

-DMakro
Vordefiniert Makro eine Definition von „haben“.1'.

-DMakro=definiere
Vordefiniert Makro eine Definition haben von definiere.

-d Debugging-Informationen ausgeben.

-dd Ausführliche Debugging-Informationen ausgeben. Diese Option zeigt alle normalen Debugging-Vorgänge an
Informationen sowie die vollständige Liste der definierten Makros bei jeder Änderung der Liste.

Herr Gibt leichte Debugging-Informationen aus. Diese Option zeigt minimales Debugging
Informationen.

-dpreverkohlen
Stellen Sie allen Debugging-Informationen voran verkohlen (kann ein Zeichen oder eine Zeichenfolge sein), kann sein
Wird verwendet, um das Debugging leichter lesbar zu machen.

-dpostverkohlen
Postfixieren Sie alle Debugging-Informationen mit verkohlen (kann ein Zeichen oder eine Zeichenfolge sein), this
ist standardmäßig eine neue Zeile. Wenn verkohlen enthält keine neue Zeile, dann wird es auch keine neue Zeile geben
wird nach dem Debuggen von Meldungen gedruckt. (Es können Zeilenumbrüche eingefügt werden verkohlen Verwendung der
__NEWLINE__ Makro.)

-ds Drucken Sie Debugging-Informationen auf stdout statt auf stderr.

-e Definieren Sie alle Umgebungsvariablen als Makros mit Präfix envchar.

-ec verkohlen
Stelle den envchar (Präfix von als Makros definierten Umgebungsvariablen) bis verkohlen, Standardwerte
zu $. (Hinweis: Diese Option wird nur dann wirksam, wenn die Umgebungsvariablen aktiviert sind
werden in Makros umgewandelt).

-ecn Stelle den envchar (Präfix von als Makros definierten Umgebungsvariablen) zu Nothing (Nr
Präfix).

-h Zusammenfassung der Optionen anzeigen.

-Idir Verzeichnis anhängen dir in die Liste der Verzeichnisse, die nach Include-Dateien durchsucht werden.

-Makros Datei
Liest Makros ein von Datei, verwirft aber alles andere in der Datei.

-k Deaktivieren Sie das Parsen aller Schlüsselwörter. Dies ist nützlich, wenn Sie nur das Makro verwenden möchten
Erweiterungsmöglichkeiten von filepp. Mit dieser Option werden alle gefundenen Schlüsselwörter angezeigt
ignoriert, filepp ersetzt lediglich alle mit dem angegebenen Makros -DMakro=definiere
.

-kc verkohlen
Setzen Sie das Schlüsselwort-Präfixzeichen auf verkohlen (kann auch eine Zeichenfolge sein). Alle filepp Schlüsselwörter
wird das Zeichen vorangestellt # standardmäßig. Mit dieser Option kann das Präfix sein
in etwas anderes geändert.

-lc verkohlen
Setzen Sie das Zeilenfortsetzungszeichen auf verkohlen (kann auch eine Zeichenfolge sein). Wenn die Linie
Wird ein Fortsetzungszeichen mit einem darauffolgenden Zeilenumbruch gefunden, so sind es und der Zeilenumbruch
durch das Zeilenfortsetzungs-Ersatzzeichen ersetzt. Standard ist \ (cpp(1)
Stil).

-lec verkohlen
Legen Sie das optionale Schlüsselwort-Zeilenendezeichen auf fest verkohlen (kann auch eine Zeichenfolge sein). Das
ermöglicht die Platzierung zusätzlicher Zeichen am Ende einer Zeile, die ein Schlüsselwort enthält.
Die zusätzlichen Zeichen werden ignoriert. Dies ist nützlich, wenn Schlüsselwörter verwendet werden sollen
eingebettet in Kommentare im HTML- oder C-Stil. Zum Beispiel, um Schlüsselwörter in einen HTML-Code einzubetten
Kommentar, auf den das Schlüsselwort-Präfixzeichen gesetzt werden könnte <--!# und das optionale Schlüsselwort
Zeilenendezeichen eingestellt auf ->. Ein Beispielschlüsselwort wäre dann:

<!--#include „header.h“ ->

Im Fall des optionalen Schlüsselworts Zeilenendzeichen -> würde ignoriert werden.

-lr verkohlen
Setzen Sie das Zeilenfortsetzungs-Ersetzungszeichen auf verkohlen (kann auch eine Zeichenfolge sein).
Der Standardwert ist eine Nullzeichenfolge (cpp(1) Stil).

-lrn Legen Sie das Ersetzungszeichen für die Zeilenfortsetzung als Zeilenumbruch fest.

-m module.pm
Lademodul module.pm. module.pm ist eine perl(1) Modul, das zur Erweiterung genutzt werden kann
oder das Verhalten von ändern filepp. Siehe Sektion FILEPP MODULE für Einzelheiten zu
Module, die in FilePP und enthalten sind FILEPP MODULE API Einzelheiten zum Schreiben Ihres
eigene Module.

-Mdir Verzeichnis anhängen dir zur Liste der nach FilePP-Modulen durchsuchten Verzeichnisse. Das
Die Liste enthält standardmäßig das Verzeichnis, in dem die FilePP-Module installiert sind (falls vorhanden), plus
Standardpfade für Perl-Module. (Hinweis: Dadurch wird das Verzeichnis zur Perl-@INC-Liste hinzugefügt.)

-mp verkohlen
Allen Makros voranstellen verkohlen. Makros werden auf normale Weise definiert, jedoch nur
ersetzt werden, wenn es mit dem Präfix gefunden wird verkohlen. Filepp-Makros funktionieren beispielsweise
ähnlich der Bourne-Shell (sh(1)) Variablen wenn verkohlen eingestellt ist $.

-mpnk Schaltet Makropräfixe innerhalb von Schlüsselwörtern aus. Bei Verwendung eines Makro-Präfixzeichens dieses
Mit dieser Option können Makros ohne das Präfix bei der Schlüsselwortverarbeitung verwendet werden. Für
Beispiel: Wenn das Makropräfix lautet $ dann und #wenn würde geschrieben werden als:

#wenn $MAKRO == 1

Verwendung der mpnk Option ermöglicht die #wenn zu schreiben als:

#wenn MAKRO == 1

-o Name
Ausgabe schreiben nach Name anstelle von STDOUT. Wenn es nur eine Eingabedatei gibt und diese vorhanden ist
denselben Namen wie die Ausgabedatei hat, wird die ursprüngliche Eingabedatei als gesichert
Name~.

-ov Der Überschreibmodus bewirkt, dass die Ausgabedatei die Eingabedatei überschreibt. Nützlich, wenn
Ändern einer großen Anzahl von Dateien auf einmal, z. B.:

filepp -ov -DTHIS=DAS *

Die ursprünglichen Eingabedateien werden als gesichert Name~.

-ovc IN=OUT
Ähnlich wie beim Überschreibmodus besteht der Unterschied darin, dass der Name der Ausgabedatei der Name der Eingabedatei ist
mit IN Teil umgewandelt in OUT. Zum Beispiel, um eine Reihe von Dateien zu verarbeiten, die alle enden
mit .in und lassen Sie die Ausgabedateien alle auf .out enden. Führen Sie Folgendes aus:

filepp -ovc .in=.out *.in

In diesem Fall eine Datei namens test.in verarbeitet und die Ausgabedatei wird erstellt
durchtesten. Hinweis: Wenn die Eingabedatei nicht enthält IN dann wird die Ausgabedatei
haben denselben Namen wie die Eingabedatei und die ursprüngliche(n) Eingabedatei(en) werden gesichert.
bis als Name~!

-pb Leerzeilen beibehalten. Mit dieser Option wird versucht, so viele Zeilen wie möglich beizubehalten
Ausgabedatei wie in der Eingabedatei, also alle Leerzeilen, die normalerweise nicht vorhanden wären
gedruckt werden werden gedruckt. Nützlich beim Vergleich der Eingabedatei mit der Ausgabe.

-Re Behandeln Sie Schlüsselwort- und Makropräfixzeichen sowie Zeilenfortsetzungszeichen wie Perl
reguläre Ausdrücke anstelle normaler Zeichenfolgen.

-s Führen Sie filepp im abgesicherten Modus. Dies schaltet die aus Pragma Stichwort.

-UMakro
Zuvor definierte Definition rückgängig machen Makro.

-u Deaktivieren Sie alle derzeit definierten Makros, einschließlich der vordefinierten.

-v Programmversion anzeigen.

-w Aktivieren Sie beim Ersetzen von Makros Wortgrenzen. Wenn Wortgrenzen aktiviert sind, Makros
wird nur ersetzt, wenn das Makro im Text als Wort vorkommt. Zum Beispiel von
Standard Makro würde in beiden Fällen durch folgenden Text ersetzt werden:

Makro as Wort, MakroNOTaword

aber nur das erste Vorkommen würde durch das ersetzt -w .

Wenn diese Option aktiviert ist filepp ersetzt nur Makros, die alphanumerische Zeichen enthalten
Figuren. Internationale (Nicht-ASCII-)Zeichensätze können mit Perl unterstützt werden
Gebietsschemabehandlung.

SCHLÜSSELWÖRTER


filepp unterstützt die folgenden Schlüsselwörter:

#einschließen <FILE>
Fügen Sie eine Datei in die verarbeitete Datei ein. Diese Variante wird für „System“ verwendet
Dateien einschließen. Es sucht nach einer Datei mit dem Namen FILE in einer Liste von Verzeichnissen
von Ihnen angegeben. Verzeichnisse werden mit der Befehlsoption „-I“ angegeben. filepp
definiert keine Systemverzeichnisse vor, in denen nach Dateien gesucht werden soll.

#einschließen "DATEI"
Fügen Sie eine Datei in die verarbeitete Datei ein. Diese Variante wird für Include-Dateien verwendet
Ihres eigenen Projektes. Es sucht nach einer Datei mit dem Namen FILE zuerst in der aktuellen
Verzeichnis, dann in der Liste der Verzeichnisse, die mit der Befehlsoption „-I“ angegeben werden.
Das aktuelle Verzeichnis ist das Verzeichnis, in dem sich die Basiseingabedatei befindet.

#define Makro
Definieren Sie das Makro Makro eine Definition von „1“ haben. Makro kann dann mit verwendet werden
die Schlüsselwörter #ifdef und #ifndef.

#define Makro definiere
Definieren Sie das Makro Makro den Wert haben definiere. Makro kann dann mit dem verwendet werden
Schlüsselwörter #ifdef und #ifndef. Auch alle Instanzen von Makro nach dem #define
Die Anweisung wird durch die Zeichenfolge ersetzt definiere. Die Saite definiere wird angenommen zu sein
alle Zeichen in der folgenden Zeile Makro.

#define Makro(arg1, arg2, ...) definiere
Definieren Sie das Makro Makro den Wert haben definiere mit Argumenten (arg1, arg2, ...).
Makro kann wie folgt verwendet werden:

#define Makro(foo) defn mit foo in

Wenn nun das Ersetzen erfolgt:

Makro (Balken)

wird werden:

Defn mit bar in

Makros können eine beliebige Anzahl durch Kommas getrennter Argumente haben.

Makros können auch eine variable Anzahl von Argumenten haben, wenn das letzte Makro mit ... endet.
beispielsweise:

#define Fehler(Zeichenfolge, args...) fprintf(stderr, string, args);

Hier wird das erste Argument angegeben Schnur und alle anderen Argumente werden
args. Bei Aufruf als: Fehler("%d,%s", i, Schnur) es wird geben

fprintf(stderr, "%d,%s", i, string);

Auch wenn einem Makro mit einer variablen Anzahl von Argumenten keine Argumente für übergeben werden
Variables Argument, dann können Kommas optional aus der Definition entfernt werden durch
Stellen Sie der Definition ein „##“ voran. Zum Beispiel:

#define Fehler(Zeichenfolge, args...) fprintf(stderr, string, ##args);

Wenn dies so heißt: Fehler("leer") dann wird das Ergebnis sein:

fprintf(stderr, "empty");

Das Komma unmittelbar davor ##Argumente wurde entfernt.

#wenn ausdr
Eine bedingte Anweisung, ausdr wird als wahr (1) oder falsch (0) ausgewertet. Wenn ausdr
wird als wahr ausgewertet, der Text zwischen #wenn und der nächste #else or #endif wird sein
inbegriffen. Wenn ausdr wird als falsch ausgewertet, der Text dazwischen #wenn und der nächste #else
or #endif wird ignoriert. ausdr kann alle üblichen CPP-Stilvergleiche verwenden (==,
!=, <, > usw.). Mehrere Vergleiche können mit und (&&) und oder (||) kombiniert werden.
Die definiert Das Schlüsselwort kann auch verwendet werden, um zu überprüfen, ob Makros definiert sind. Zum Beispiel:

#wenn definiert Makro && Makro == definiere

Hinweis: filepp's #wenn funktioniert nicht genau so wie cpp(1) ist #wenn. cpp(1) ist
#wenn führt nur numerische Stilvergleiche durch. Filepps #wenn Aussage kann auch vergleichen
Strings und reguläre Ausdrücke verwenden perl(1)'s komplette Vergleichspalette
Operationen. Um beispielsweise zu testen, ob zwei Zeichenfolgen genau gleich sind, verwenden Sie Folgendes:

#wenn "MAKRO" eq "string"

Um zu testen, ob Zeichenfolgen nicht gleich sind, verwenden Sie ne statt eq. Reguläre Ausdrücke können
auch getestet werden, um beispielsweise zu testen, ob ein Makro Leerzeichen enthält. Verwenden Sie:

#wenn "MAKRO" =~ /\S/

Um zu testen, ob ein Makro keine Leerzeichen enthält =~ Kann ersetzt werden mit !~.

Perl-Experten: #wenn funktioniert durch erstes Parsen ausdr für die definiert Schlüsselwort und Überprüfung
Wenn das Makro, auf das es sich bezieht, definiert ist, wird es durch 1 ersetzt, wenn dies der Fall ist, und durch 0, wenn dies der Fall ist
ist nicht. Anschließend wird geprüft ausdr für alle anderen Makros und ersetzt sie durch ihre
Definition. Endlich geht es vorbei ausdr durch Perls eval Funktion, die zurückkommt
richtig oder falsch.

#elif ausdr
#elif steht für „sonst wenn“. Wie #else, es geht mitten in a
#wenn[n][def]-#endif paart und unterteilt es; es ist kein Abgleich erforderlich #endif of
sein eigenes. Wie #wenn, der #elif Die Direktive enthält einen zu testenden Ausdruck.

#ifdef Makro
Eine bedingte Anweisung, wenn Makro wurde der Text zwischen dem definiert #ifdef und
der nächste #else or #endif wird mit inbegriffen sein. Wenn Makro Der Text wurde nicht definiert
zwischen den #ifdef und der nächste #else or #endif wird ignoriert.

#ifndef Makro
Der umgekehrte Fall des #ifdef bedingt.

#else Die #else Die Direktive kann einer Bedingung hinzugefügt werden, um alternativen Text bereitzustellen
Wird verwendet, wenn die Bedingung falsch ist.

#endif Wird zum Beenden einer bedingten Anweisung verwendet. Anschließend wird die normale Verarbeitung fortgesetzt
#endif.

#undef Makro
Definieren Sie ein zuvor definiertes Makro.

#Error mesg
Ursachen filepp mit der Fehlermeldung beenden mesg.

#Warnung mesg
Ursachen filepp um die Warnmeldung auszugeben mesg.

#comment mesg
As filepp soll ein generischer Dateipräprozessor sein, er kann keinen unterstützen
bekannte Kommentarstile, daher definiert es mit diesem Schlüsselwort seinen eigenen. Alle Zeilen
beginnen mit #comment werden als Kommentare behandelt und entfernt von filepp.

#pragma filepp Funktion arg1, arg2, ...
Die #pragma Schlüsselwort, direkt gefolgt vom Wort filepp ermöglicht es dem Benutzer
Führen Sie während des Parsens eine Perl-Funktion aus. Das unmittelbar folgende Wort filepp is
wird als Name der Funktion angenommen und der Rest der Zeile wird als a angenommen
Durch Kommas getrennte Liste von Argumenten für die Funktion. Irgendeins davon filepp intern
Funktionen (siehe Abschnitt FILEPP MODULE API) kann mit aufgerufen werden #pragma Stichwort.

Warnung: Das Zulassen beliebiger Funktionen birgt offensichtliche Sicherheitsrisiken
ausführen, daher wurde die Befehlszeilenoption -s (abgesicherter Modus) hinzugefügt, die das aktiviert
#pragma Schlüsselwort aus.

VORDEFINIERT MAKROS


filepp unterstützt eine Reihe vordefinierter Makros. Alle vordefinierten Makros haben die Form
__MAKRO__, Wobei MAKRO ist:

FILE Dieses Makro wird auf den Namen der aktuellen Eingabedatei erweitert.

LINE Dieses Makro wird auf die aktuelle Eingabezeilennummer erweitert.

DATUM Dieses Makro wird zu einer Zeichenfolge erweitert, die das Datum beschreibt, an dem sich der Präprozessor befindet
ausgeführt wird. Die Zeichenfolge enthält elf Zeichen und sieht aus wie „29. Oktober 2012“.

ISO_DATE
Dieses Makro wird zu einer Zeichenfolge erweitert, die das Datum beschreibt, an dem sich der Präprozessor befindet
ausgeführt wird. Die Zeichenfolge hat das von ISO 8601 angegebene Format (JJJJ-MM-TT) und
sieht aus wie „2012“.

ZEIT- Dieses Makro wird zu einer Zeichenfolge erweitert, die die Zeit beschreibt, zu der sich der Präprozessor befindet
ausgeführt wird. Die Zeichenfolge enthält acht Zeichen und sieht aus wie „02:35:47“.

BASE_DATEI
Dieses Makro wird auf den Namen der Haupteingabedatei erweitert.

INCLUDE_LEVEL
Dieses Makro wird zu einer dezimalen Ganzzahlkonstante erweitert, die die Tiefe von darstellt
Verschachtelung in Include-Dateien. Der Wert dieses Makros wird bei jedem erhöht #einschließen
Direktive und dekrementiert an jedem Ende der Datei.

NEUE ZEILE
Dieses Makro wird zu einer neuen Zeile erweitert.

TAB Dieses Makro wird zu einer Registerkarte erweitert.

NULL Dieses Makro wird zu nichts erweitert. Dies ist nützlich, wenn Sie etwas definieren möchten
nichts.

VERSION
Dieses Makro wird zu einer Zeichenfolgenkonstante erweitert, die die Versionsnummer von beschreibt
filepp. Die Zeichenfolge ist eine Folge von Dezimalzahlen, die durch Punkte und Zeichen getrennt sind
wie „1.8.0“.

FILEPP_INPUT
Dieses Makro wird zu einer Zeichenfolgenkonstante erweitert, die besagt, dass die Datei generiert wurde
automatisch aus dem Strom BASE_DATEI und sieht aus wie „Automatisch generiert“.
von ./filepp.1.in von filepp".

FILEPP MODULE


Die folgenden Module sind in der Hauptdistribution von FilePP enthalten:

FÜR MODULE - für.pm


Das for-Modul implementiert eine einfache for-Schleife. Der Dateiname lautet für.pm.

Die Funktionalität der for-Schleife ähnelt der anderer Programmiersprachen wie z
Perl oder oder C. Es verfügt über eine einzelne Variable (ein Filepp-Makro), der ein numerischer Wert zugewiesen ist
Wert. Dieser numerische Wert ändert sich bei jeder Iteration durch das um ein festgelegtes Inkrement
Schleife. Die Schleife wird beendet, wenn der Wert einen Vergleichstest nicht mehr besteht.

Das for-Modul implementiert die folgenden Schlüsselwörter:

#zum Makro Anfang vergleichen Ende Zuwachs
Die #zum Das Schlüsselwort entspricht funktional der folgenden Schleife im Perl- oder C-Stil:

zum(Makro=Anfang; Makro vergleichen Ende; Makro+=Zuwachs)

Die #zum Das Schlüsselwort erfordert die folgenden durch Leerzeichen getrennten Parameter:

Makro : Der Name des Makros, dem die for-Schleife ihren numerischen Wert zuweisen soll
Wert.

Anfang : Der Wert Makro sollte am Anfang der Schleife zugewiesen werden. Anfang sollte
ein numerischer Wert sein.

vergleichen : Der Vergleich, der zwischen dem aktuellen Wert von durchgeführt werden soll Makro und der Wert
Ende um zu bestimmen, wann die Schleife enden soll. Gültige Werte für vergleichen sind <,
>, >=, <=.

Ende : Die for-Schleife wird beendet, wenn der Test abgeschlossen ist

Makro vergleichen Ende

fehlschlägt. Ende sollte ein numerischer Wert sein.

Zuwachs : Der zu erhöhende Wert Makro bei jeder Iteration der Schleife. Am Ende
jeder Iteration der Wert von Zuwachs wird zum aktuellen Wert von addiert Makro.
Zuwachs sollte ein numerischer Wert sein.

#endfor
Die #endfor Das Schlüsselwort wird verwendet, um das Ende der Schleife anzuzeigen. Alles innerhalb der
Eröffnung #zum und die schließung #endfor wird bei jeder Iteration des verarbeitet
Schleife.

Beispielverwendung:

#zum ZÄHLER 10 > 1 -2.5

COUNTER

#endfor

Im obigen Beispiel wird COUNTER so definiert, dass es jeweils die Werte 10, 7.5, 5 und 2.5 hat
sukzessive Iteration durch die Schleife.

Auch verschachtelte Schleifen sind möglich, ebenso wie das Ändern des Wertes des Makros innerhalb der Schleife.
Anfang, Ende und Zuwachs sollten alle numerische Werte sein, es ist jedoch möglich, sie zu verwenden
Stattdessen werden Makros verwendet, sofern die Makros so definiert sind, dass sie numerische Werte haben.

FÜR JEDE MODULE - foreach.pm


Das foreach-Modul implementiert eine einfache foreach-Schleife. Der Dateiname lautet foreach.pm.

Die Funktionalität der foreach-Schleife ähnelt der anderer Programmiersprachen wie z
als Perl. Es benötigt eine Liste von Werten, die durch ein vom Benutzer definierbares Trennzeichen (',' durch) getrennt sind
Standard). Anschließend werden alle Werte in der Liste durchlaufen und für jeden ein Makro definiert
einzelner Wert für jede Iteration der Schleife. Die Schleife endet, wenn alle Werte erfüllt sind
verwendet worden.

Das foreach-Modul implementiert die folgenden Schlüsselwörter:

#für jede Makro Liste
Die #für jede Das Schlüsselwort entspricht funktional der folgenden Schleife im Perl-Stil:

foreach Makro (Teilt(/delim/, Liste))

Die #für jede Das Schlüsselwort erfordert die folgenden durch Leerzeichen getrennten Parameter:

Makro : Der Name des Makros, dem die foreach-Schleife den Strom zuweisen soll
Listenwert.

Liste : Die Liste der Werte, getrennt durch delim (sehen #foreachdelim Stichwort für die Vorgehensweise
kompensieren delim). Liste kann auch ein Makro sein oder Makros enthalten.

Die Schleife wird von der ausgeführt #für jede Schlüsselwort zum nächsten #endforeach Stichwort.

#endforeach
Die #endforeach Das Schlüsselwort wird verwendet, um das Ende der Schleife anzuzeigen. Alles drin
die Eröffnung #für jede und die schließung #endforeach wird jeweils bearbeitet
Iteration der Schleife.

Beispielverwendung:

#für jede WERT eins, zwei, drei, vier

BEWERTUNG

#endforeach

Im obigen Beispiel wird VALUE so definiert, dass es die Werte eins, zwei, drei und vier hat
jede aufeinanderfolgende Iteration durch die Schleife.

Auch verschachtelte Schleifen sind möglich.

#foreachdelim /delim/
Die #foreachdelim Mit dem Schlüsselwort wird das in jeder Liste verwendete Trennzeichen festgelegt. Der
Trennzeichen kann ein beliebiges Zeichen, eine Zeichenfolge oder ein regulärer Ausdruck sein. Das Trennzeichen sollte
in Schrägstriche eingeschlossen werden, im gleichen Stil wie reguläre Perl-Ausdrücke.
Der Standardwert für delim Ist ','. Um das Trennzeichen auf ein einzelnes Leerzeichen festzulegen, gehen Sie wie folgt vor:

#foreachdelim / /

Einstellen delim Um beliebig viel Leerraum zu haben, gehen Sie wie folgt vor:

#foreachdelim /\s+/

Weitere Informationen zu regulären Ausdrücken finden Sie in der Perl-Dokumentation zu regulären Ausdrücken.

Wörtlich MODULE - literal.pm


Das Literalmodul verhindert, dass Makros, die in Literalzeichenfolgen vorkommen, ersetzt werden. A
Die Literalzeichenfolge hat folgende Form:

„wörtlich Schnur mit Makro im"

Im obigen Beispiel ist Makro wird nicht ersetzt.

Das Verhalten des Literalmoduls kann durch die Definition des Makros umgekehrt werden LITERAL_REVERSE
vor dem Laden des Moduls, zum Beispiel:

filepp -DLITERAL_REVERSE -m literal.pm

Dadurch werden nur Makros ersetzt, die in Zeichenfolgen vorkommen.

TOUPPER MODULE - toupper.pm


Das toupper-Modul wandelt alle Kleinbuchstaben in Großbuchstaben um.

ZU SENKEN MODULE - tolower.pm


Das Tolower-Modul wandelt alle Großbuchstaben in Kleinbuchstaben um.

C / C ++ WIE MODULE - c-comment.pm


Das C-Comment-Modul entfernt alle C-Stile:

/* Kommentar */

und C++-Stil:

// Kommentar

Kommentare aus einer Datei. C- und C++-Kommentare werden entfernt, nachdem Schlüsselwörter verarbeitet wurden.
Wenn Sie C- und C++-Kommentare entfernen möchten, bevor Schlüsselwörter verarbeitet werden, definieren Sie das Makro
REMOVE_C_COMMENTS_FIRST vor dem Laden des Moduls, z.B.:

filepp -DREMOVE_C_COMMENTS_FIRST -m c-comment.pm

HASH WIE MODULE - hash-comment.pm


Das Hash-Comment-Modul entfernt alle Kommentare des Stils:

# Kommentar

aus einer Datei. Dies ist der Kommentarstil, der von Perl, Bourne Shell, C Shell und vielen anderen verwendet wird
andere Programme und Konfigurationsdateien. Hash-Kommentare werden entfernt, nachdem Schlüsselwörter entfernt wurden
verarbeitet wurde. Wenn Sie Hash-Kommentare entfernen möchten, bevor Schlüsselwörter verarbeitet werden, definieren Sie dies
das Makro REMOVE_HASH_COMMENTS_FIRST bevor Sie das Modul laden (Hinweis: Wenn Sie dies tun und
Verwenden Sie auch # als Schlüsselwortzeichen, dann werden die Schlüsselwörter entfernt, BEVOR sie entfernt werden
verarbeitet).

AUFGABE MODULE - Funktion.pm


Mit dem Funktionsmodul kann der Benutzer Makros schreiben, die Perl-Funktionen aufrufen. Sein Dateiname
is Funktion.pm.

Der Funktionsbaustein ermöglicht Makros der Form:

Makro(arg1, arg2, arg3, ...)

einer Datei hinzugefügt werden soll. Wenn das Makro gefunden wird, führt es eine Funktion in Perl aus
Modul, mit Argumenten Arg1, Arg2, Arg3, ... an die Funktion übergeben. Die Funktion muss
einen String zurückgeben. Die zurückgegebene Zeichenfolge ersetzt den Aufruf der Funktion in der Ausgabe.
Die Funktion kann beliebig viele Argumente haben. Wenn die Funktion keine Argumente hat, sollte sie dies tun
mit einer leeren Argumentliste aufgerufen werden:

Makro()

Wenn das Wort Makro wird in der Eingabedatei gefunden, ohne dass ein folgt ( es wird sein
ignoriert.

Um den Funktionsbaustein nutzen zu können, muss der Benutzer eine Perl-Funktion bereitstellen, die optional akzeptiert
in Argumenten und gibt einen String zurück. Die Funktion kann entweder eine interne von filepp sein
Funktionen oder eine vom Benutzer selbst bereitgestellte Funktion, die in einem Perl-Modul bereitgestellt wird. Die Funktion kann hinzugefügt werden
In zwei Wegen. Der erste Weg führt über die Funktion Stichwort:

#Funktion Makro Funktion
Makro ist der Name des Makros, der verwendet wird, um einen Aufruf der Funktion in zu kennzeichnen
die Eingabedatei und Funktion ist der Name der aufzurufenden Funktion.

Die zweite Methode zum Hinzufügen einer Funktion besteht darin, die Perl-Funktion aufzurufen:

Funktion::AddFunction($makro,$Funktion)
welches die gleichen Eingänge hat wie das Funktion Stichwort.

Funktionen können entweder über das Schlüsselwort entfernt werden:

#rmfunction Makro
oder über die Perl-Funktion

Funktion::RemoveFunction($makro)

MATHE MODULE - mathe.pm


Das Modul stellt eine Reihe von Makros bereit, die mathematische Operationen ausführen. Wenn das
Makros werden in einer Eingabedatei eingegeben, ausgewertet und das Ergebnis zurückgegeben
die Ausgabe.

Das Mathematikmodul umfasst die folgenden Makros:

füge hinzu ein, b, c, ...)
Nimmt eine beliebige Anzahl von Argumenten auf und gibt deren Summe zurück: (a + b + c + ...)

sub(a, b)
Gibt a minus b zurück: (a - b)

mul(a, b, c, ...)
Nimmt eine beliebige Anzahl von Argumenten auf und gibt deren Produkt zurück: (a * b * c * ...)

Diva, b)
Gibt a über b zurück: (a / b)

Bauchmuskeln(a) Gibt den absoluten Wert von a zurück.

atan2(a, b)
Gibt den Arkustangens von a/b im Bereich -pi bis pi zurück.

weil(a) Gibt den Kosinus von a im Bogenmaß zurück.

exp(a) Bringt das e zur Potenz von a zurück.

int(a) Gibt den ganzzahligen Teil von a zurück.

log(a) Gibt den natürlichen Logarithmus (Basis e) von a zurück.

Rand(a)
Gibt eine zufällige Bruchzahl zwischen 0 und a zurück. Wenn a weggelassen wird,
gibt einen Wert zwischen 0 und 1 zurück.

Sünde(a) Gibt den Sinus von a im Bogenmaß zurück.

sqrt(a)
Gibt die Quadratwurzel von a zurück.

srand(a)
Legt den Zufallszahlenstartwert für rand() fest.

Das Mathematikmodul definiert auch pi als M_PI und e als M_E.

Die Mathematikmakros werden mithilfe von implementiert Funktion.pm Modul. Verschachtelte Makros sind erlaubt,
ebenso wie die Übergabe anderer Makros mit numerischen Definitionen als Argumente.

FORMAT MODULE - format.pm


Dieses Modul stellt eine Reihe von Makros zum Formatieren von Zeichenfolgen und Zahlen bereit.

Das Formatmodul stellt folgende Makros zur Verfügung:

printf(Format, arg1, arg2, ...)
Die printf Das Makro verhält sich genauso wie die Perl/C-Funktion printf. Es braucht
in einer Formatzeichenfolge, gefolgt von einer Liste der zu druckenden Argumente. Siehe die printf(3) Mann
Ausführliche Informationen finden Sie auf dieser Seite oder in der Perl-Dokumentation printf Funktion.

topper(string)
Konvertiert die Eingabezeichenfolge in Großbuchstaben.

toupperfirst(string)
Konvertiert das erste Zeichen der Eingabezeichenfolge in Großbuchstaben.

tolower(string)
Konvertiert die Eingabezeichenfolge in Kleinbuchstaben.

tolowerfirst(string)
Konvertiert das erste Zeichen der Eingabezeichenfolge in Kleinbuchstaben.

substr(string, Offset, Länge)
Extrahiert einen Teilstring aus der Eingabe Schnur. substr verhält sich genauso wie Perl
Substr-Funktion. Offset wird verwendet, um das erste Zeichen der Zeichenfolge anzugeben
Ausgabe (negativ für Offset vom Ende der Zeichenfolge), Länge ist die Länge des Strings
ausgeben. Wenn die Länge weggelassen wird, wird alles vom Offset zurückgegeben. Für
weitere Informationen zu substr siehe die Perl-Dokumentation.

Die Formatmakros werden mit dem implementiert Funktion.pm Modul.

BIGDEF MODULE - bigdef.pm


Das bigdef-Modul ermöglicht die einfache Definition mehrzeiliger Makros. Der Dateiname lautet bigdef.pm.

Ein mehrzeiliges Makro ist ein Makro, dessen Definition sich über mehr als eine Zeile erstreckt. Der
Die übliche Art und Weise, diese zu definieren, besteht darin, jeweils am Ende ein Zeilenfortsetzungszeichen zu platzieren
Zeile in der Definition. Dies kann jedoch bei großen mehrzeiligen Texten störend und unlesbar sein
Makros. Das bigdef-Modul versucht dies zu verbessern, indem es zwei Schlüsselwörter bereitstellt:

#bigdef Makro Definition...
Die #bigdef Schlüsselwort hat die gleiche Syntax wie #define, der einzige Unterschied besteht darin, dass
Die Makrodefinition umfasst alles, was auf den Makronamen folgt, einschließlich aller folgenden
Reihen bis zum nächsten #endbigdef Stichwort.

#endbigdef
Beendet eine Bigdef. Alles zwischen diesem Schlüsselwort und dem letzten vorhergehenden #bigdef is
im Makro enthalten.

Alle in der Definition gefundenen Schlüsselwörter werden ZUM ZEITPUNKT DES MAKROS als normal ausgewertet
DEFINIERT und alle daraus resultierenden Ausgaben werden in die Definition einbezogen.

Hinweis: Der Unterschied zwischen bigfunc und bigdef besteht in der Zeit, in der die Schlüsselwörter in der Definition enthalten sind
ausgewertet. Bigdef wertet sie aus, wenn das Makro DEFINIERT ist, bigfunc wertet sie wann immer aus
Das Makro wird ERSETZT.

BIGFUNC MODULE - bigfunc.pm


Das bigfunc-Modul ermöglicht die einfache Definition mehrzeiliger Makros. Der Dateiname lautet
bigfunc.pm.

Ein mehrzeiliges Makro ist ein Makro, dessen Definition sich über mehr als eine Zeile erstreckt. Der
Die übliche Art und Weise, diese zu definieren, besteht darin, jeweils am Ende ein Zeilenfortsetzungszeichen zu platzieren
Zeile in der Definition. Dies kann jedoch bei großen mehrzeiligen Texten störend und unlesbar sein
Makros. Das bigfunc-Modul versucht dies zu verbessern, indem es zwei Schlüsselwörter bereitstellt:

#bigfunc Makro Definition...
Die #bigfunc Schlüsselwort hat die gleiche Syntax wie #define, der einzige Unterschied besteht darin, dass
Die Makrodefinition umfasst alles, was auf den Makronamen folgt, einschließlich aller folgenden
Reihen bis zum nächsten #endbigfunc Stichwort.

#endbigfunc
Beendet eine große Funktion. Alles zwischen diesem Schlüsselwort und dem letzten vorhergehenden #bigfunc is
im Makro enthalten.

Alle in der Definition gefundenen Schlüsselwörter werden ZUM ZEITPUNKT DES MAKROS als normal ausgewertet
REPLACED und alle daraus resultierenden Ausgaben werden in die Definition einbezogen.

Hinweis: Der Unterschied zwischen bigfunc und bigdef besteht in der Zeit, in der die Schlüsselwörter in der Definition enthalten sind
ausgewertet. Bigdef wertet sie aus, wenn das Makro DEFINIERT ist, bigfunc wertet sie wann immer aus
Das Makro wird ERSETZT.

DEFPLUS MODULE - defplus.pm


Das Defplus-Modul ermöglicht das Anhängen zusätzlicher Informationen an ein vorhandenes Makro. Seine Datei
Name ist defplus.pm.

Das Defplus-Modul ermöglicht das Anhängen weiterer Dinge an bestehende Makros. Das Modul
implementiert ein Schlüsselwort:

#defplus Makro Definition...
Die #defplus Schlüsselwort hat die gleiche Syntax wie #define, der einzige Unterschied besteht darin, ob
Das Makro ist dann bereits definiert Definition wird an die bestehende Definition angehängt
des Makros. Wenn das Makro undefiniert ist, dann #defplus verhält sich genau gleich
Weg wie #define.

REGEXP MODULE - regexp.pm


Das Regexp-Modul ermöglicht die Ersetzung regulärer Perl-Ausdrücke mit filepp. Es ist
Dateiname ist regexp.pm.

Durch die Perl-Ersetzung regulärer Ausdrücke kann nach einem regulären Ausdruck gesucht und gesucht werden
durch etwas anderes ersetzt. Reguläre Ausdrücke sind wie folgt definiert:

#regexp /regexp/Ersatz/
Es ist der Perl-Syntax sehr ähnlich und der folgende Perl-Code wird ausgeführt
in jeder Zeile der Eingabedatei:

$line =~ s/regexp/Ersatz/g
Für Benutzer, die Perl nicht verstehen, bedeutet dies, dass alle Vorkommen von ersetzt werden regexp
in der aktuellen Zeile mit Ersatz.

Eine vollständige Beschreibung regulärer Ausdrücke und möglicher Ersetzungen würde den Rahmen sprengen
diese Manpage. Weitere Informationen finden Sie in der Perl-Dokumentation mit dem Befehl:

perldoc Perlre

Es können beliebig viele reguläre Ausdrücke definiert werden. Jeder reguläre Ausdruck wird ausgewertet
einmal für jede Zeile der Eingabedatei. Reguläre Ausdrücke werden in der Reihenfolge ausgewertet, in der sie vorliegen
sind festgelegt.

Reguläre Ausdrücke können auf folgende Weise undefiniert werden:

#rmregexp /regexp/Ersatz/
Dadurch wird der angegebene reguläre Ausdruck entfernt.

Im Debugging-Modus kann die aktuelle Liste der regulären Ausdrücke mithilfe des Pragmas angezeigt werden
Stichwort:

#pragma filepp ShowRegexp
Wenn Sie sich nicht im Debugging-Modus befinden, wird keine Ausgabe erzeugt.

Ein einzelner regulärer Ausdruck kann auch in der Befehlszeile mit definiert werden REGEXP
Makro, zum Beispiel:

filepp -DREGEXP=/regexp/Ersatz/ -m regexp.pm Eingabedatei

Beachten Sie das REGEXP Das Makro muss definiert werden, BEVOR das Regexp-Modul geladen wird
-DREGEXP... nach -m regexp.pm wird nicht funktionieren. Wenn Sie den Befehlszeilenansatz verwenden, wenn
REGEXP Das Makro wurde erfolgreich als regulärer Ausdruck analysiert, von dem aus es nicht definiert wird
die normale FilePP-Makroliste, bevor die Verarbeitung beginnt. Natürlich ist Vorsicht geboten
beim Escapezeichen von Sonderzeichen in der Shell mit Befehlszeilen-Regexps.

BLC MODULE - blc.pm


Das Modul „Klammerlinienfortsetzung“ bewirkt, dass Linien fortgesetzt werden, wenn sie mehr offene Stellen haben
Klammern: „(“ als schließende Klammern: „)“ in einer Zeile. Die Linie wird bis zum fortgesetzt
Es werden gleich viele offene und geschlossene Klammern gefunden.

Klammern können bei der Zeilenfortsetzung nicht mitgezählt werden, indem man sie mit a maskiert
Backslash: „\(“ und „\)“. Alle gefundenen Klammern mit einem vorangehenden Backslash werden ignoriert
bei der Entscheidung, ob eine Zeilenfortsetzung erfolgen soll, und lassen Sie dann den Backslash einmal entfernen
Die vollständige Zeile wurde gefunden.

C MAKROS MODULE - cmacros.pm


Das cmacros-Modul bewirkt, dass die Definition der folgenden vordefinierten Makros in Anführungszeichen gesetzt wird:
DATUM, ZEIT, AUSFÜHRUNG, BASE_FILE, DATEI, (Hinweis: Vordefinierte Makros werden als __MACRO__ geschrieben).

Dadurch ähneln die Makros eher „C“, da der C-Präprozessor diese auch in Anführungszeichen setzt
Makros.

C MAKROS MODULE - cpp.pm


Der cpp sorgt dafür, dass sich filepp ähnlich wie ein C-Präprozessor verhält cpp(1).

HAFTUNGSAUSSCHLUSS: filepp ist nicht als Ersatz für einen C-Präprozessor gedacht, auch nicht mit
dieses Modul. Ich würde die Verwendung von filepp als C-Präprozessor nicht empfehlen, es sei denn, Sie sind vollständig
Verstehen Sie, wie es sich von einem echten C-Präprozessor unterscheidet. Die Ausgabe von filepp mit dem cpp
Das Modul ist nicht dasselbe wie ein echter C-Präprozessor.

GREIFEN MODULE - grab.pm


Das Grab-Modul wird verwendet, um Eingaben vor der Verarbeitung zu erfassen. Der Dateiname lautet grab.pm.

Das Grab-Modul dient hauptsächlich zur Verwendung in anderen Modulen wie for.pm und bigfunc.pm. Es
Ergreift alle Eingaben aus einer Datei, bevor irgendeine Verarbeitung darauf erfolgt. Dies ermöglicht andere
Module, die die Verarbeitung der ursprünglichen Eingabedaten durchführen, bevor die Hauptverarbeitung abgeschlossen ist.
Beispielsweise speichert das for-Modul die ursprüngliche Eingabe in einer Schleife und verwendet sie jeweils wieder
Zeit, in der die Schleife verarbeitet wird.

#greifen Makro Definition...
Das Grab-Modul beginnt mit der Erfassung aller Eingaben ab dem Schlüsselwort „grab“.

#endgrab
Beendet einen Grab. Alles zwischen diesem Schlüsselwort und dem letzten vorhergehenden #greifen wird sein
erfasst und zur Verwendung in anderen Modulen gespeichert.

Greifer können bei Bedarf verschachtelt werden.

Wenn Sie Grab von einem anderen Modul aus aufrufen, verwenden Sie die folgenden Funktionen:

Grab::StartGrab($startkeyword,$endkeyword)
$startkeyword ist das Schlüsselwort, von dem aus StartGrab aufgerufen wird. $endkeyword lernen muss die
Schlüsselwort, bei dem das Greifen aufhören sollte.

@Aufführen=Grab::GetInput()
Gibt eine Perl-Liste zurück, die alle seit der letzten Ausführung von Grab erfassten Eingaben enthält.

$line=Grab::GetInputLine()
Gibt die Zeilennummer der Eingabedatei zurück, in der das Grabbing zuletzt begonnen hat.

FILEPP MODULE API


Das Verhalten von filepp können durch den Einsatz von Modulen verändert oder erweitert werden. filepp
Module sind in der Tat perl(1) Module, und der Rest dieses Abschnitts geht davon aus, dass der Leser über ein Modul verfügt
Kenntnisse in Perl.

filepp Module sind perl(1) Module, die erweitern oder modifizieren fileppVerhalten von beiden
anrufen oder ersetzen filepp's interne Funktionen. filepp hat den Perl-Paketnamen Filepp
Daher können seine internen Funktionen innerhalb von Modulen entweder als aufgerufen werden Filepp::function() or
nur Funktion(). Irgendein von fileppDie internen Funktionen können von innen aufgerufen oder ersetzt werden
a filepp Modul, die nützlichsten sind:

Debuggen($string,$ number)
Print $string als Debugging-Informationen, wenn das Debugging aktiviert ist. $ number is
optional und kann verwendet werden, um die Debugging-Ebene festzulegen, auf der $string sollte sein
gedruckt, wobei niedrigere Zahlen eine höhere Priorität haben. Befehlszeilenoption d druckt alles
Debugging-Informationen für 2 und darunter, Option dd druckt alle Debugging-Informationen für 3
und unten und Option dl druckt alle Debugging-Informationen für 1 und darunter. Wenn
$ number wird nicht bereitgestellt, der Standardwert ist 1.

AddProcessor($Funktion,$pos,$ type)
Ermöglicht dem Modul, eine Funktion mit dem Namen hinzuzufügen $Funktion zu filepp's Verarbeitungskette.
Die Verarbeitungskette besteht aus einer Reihe von Funktionen, die in jeder Zeile einer Datei ausgeführt werden
es wird verarbeitet. Die Standardfunktionen in der Verarbeitungskette sind ParseKeywords
welches Keyword-Parsing durchführt und ErsetzenDefiniert was die Makroersetzung durchführt.
Der Kette können weitere Funktionen hinzugefügt werden, wobei jede Funktion einen String entgegennimmt
(die aktuelle Zeile) als Eingabe und gibt die verarbeitete Zeichenfolge als Ausgabe zurück.

Standardmäßig oder wenn $pos auf 0 gesetzt ist, wird der Prozessor am Ende hinzugefügt
Verarbeitungskette. Wenn $pos Ist der Wert auf 1 gesetzt, wird der Prozessor am Anfang des hinzugefügt
Verarbeitungskette.

$ type steuert, worauf der Prozessor läuft. Hierfür gibt es drei Möglichkeiten: 0
(Standard): Der Prozessor läuft auf allem, was an die Verarbeitungskette übergeben wird; 1: die
Prozessor läuft nur auf vollen Zeilen; 2: Der Prozessor läuft nur auf Teillinien (ein Teil).
Zeile ist der Text, der auf ein Schlüsselwort folgt, z. B if was analysiert werden muss
Makros).

Beide $pos und $ type sind optionale Parameter.

AddProcessorAfter($Funktion,$vorhanden,$ type)
Fügt Funktion hinzu $Funktion in die Verarbeitungskette direkt nach bestehendem Verarbeiter eingebunden
$vorhanden. Wenn $vorhanden wird dann nicht gefunden $Funktion wird am Ende hinzugefügt
Verarbeitungskette. Zum Vergleich wird der Vergleich mit regulären Ausdrücken verwendet $vorhanden mit
die Namen der Funktionen in der Verarbeitungskette.

$ type es ist optional.

AddProcessorBefore($Funktion,$vorhanden,$ type)
Fügt Funktion hinzu $Funktion direkt vor dem bestehenden Verarbeiter in die Verarbeitungskette eingebunden
$vorhanden. Wenn $vorhanden wird dann nicht gefunden $Funktion wird am Anfang des hinzugefügt
Verarbeitungskette. Zum Vergleich wird der Vergleich mit regulären Ausdrücken verwendet $vorhanden mit
die Namen der Funktionen in der Verarbeitungskette.

$ type es ist optional.

RemoveProcessor($Funktion)
Entfernt die Prozessorfunktion $Funktion aus der Verarbeitungskette.

$string=ErsetzenDefines($string)
Ersetzt alle Makros in $string mit ihren Definitionen und gibt das verarbeitete Ergebnis zurück
String.

AddKeyword($string,$Funktion)
Fügen Sie das genannte Schlüsselwort hinzu $string. Wenn das Schlüsselwort in der Textverarbeitung gefunden wird
Funktion benannt $Funktion wird mit allem ausgeführt, was auf das übergebene Schlüsselwort folgt
als einzelnes Argument.

RemoveKeyword($string)
Entfernt das genannte Schlüsselwort $string.

RemoveAllKeywords()
Entfernt alle derzeit definierten Schlüsselwörter filepp (wird für die -k-Befehlszeile verwendet
Möglichkeit).

AddIfword($string)
Fügt ein benanntes Schlüsselwort hinzu $string zur Ifword-Liste. Ein Ifword nimmt die folgende Zeichenfolge auf
das Schlüsselwort und analysiert es optional und gibt eine 1 zurück, wenn die Zeichenfolge als wahr analysiert wird
und 0 für falsch. Die Standard-Ifwords sind if, wenndef und ifndef.

RemoveIfword($string)
Entfernt das benannte Schlüsselwort $string aus der Ifword-Liste (Hinweis: Dadurch wird NICHT entfernt
Schlüsselwort, Verwendung RemoveKeyword dafür).

AddElseword($string)
Fügt ein benanntes Schlüsselwort hinzu $string zur Elseword-Liste. Ein Elseword übernimmt die Zeichenfolge
folgt dem Schlüsselwort und analysiert es optional und gibt eine 1 zurück, wenn die Zeichenfolge analysiert wird
für wahr und 0 für falsch. Die Standard-Elsewords sind sonst und elif.

RemoveElseword($string)
Entfernt das benannte Schlüsselwort $string aus der Elseword-Liste.

AddEndifword($string)
Fügt ein benanntes Schlüsselwort hinzu $string zur Endifword-Liste. Ein Endifword sollte eine 1 zurückgeben
Zeigt die erfolgreiche Beendigung des if-Blocks an. Wenn das Endifword 0 zurückgibt
Endifword wird ignoriert und filepp übernimmt den aktuellen if-Block und macht nach dem weiter
Endifword. Das Standard-Endifword ist Endif.

RemoveEndifword($string)
Entfernt das benannte Schlüsselwort $string aus der Endifword-Liste.

AddIncludePath($string)
Fügt den Include-Pfad hinzu $string zur Liste der zu durchsuchenden Verzeichnisse hinzufügen
Dateien (wird für die Befehlszeilenoption -I verwendet).

AddModulePath($string)
Fügt den Pfad hinzu $string Zur Liste der Verzeichnisse, in denen nach FilePP-Modulen gesucht werden soll (verwendet
für die Befehlszeilenoption -M).

AddOpenInputFunc($Funktion)
Fügt ein $Funktion zu einer Liste von Funktionen, die jedes Mal ausgeführt werden sollen, wenn eine neue Basiseingabedatei erstellt wird
ist geöffnet.

AddCloseInputFunc($Funktion)
Fügt ein $Funktion zu einer Liste von Funktionen, die jedes Mal ausgeführt werden sollen, wenn eine neue Basiseingabedatei erstellt wird
geschlossen ist.

AddOpenOutputFunc($Funktion)
Fügt ein $Funktion zu einer Liste von Funktionen, die jedes Mal ausgeführt werden sollen, wenn eine Ausgabedatei erstellt wird
geöffnet.

AddCloseOutputFunc($Funktion)
Fügt ein $Funktion zu einer Liste von Funktionen, die jedes Mal ausgeführt werden sollen, wenn eine Ausgabedatei erstellt wird
geschlossen.

AddInputFile($string)
Fügt eine weitere Eingabedatei zur Liste der zu verarbeitenden Dateien hinzu (wird zum Hinzufügen von Eingaben verwendet).
Dateien in der Befehlszeile).

ChangeOutputFile($string)
Schließt die aktuelle Ausgabedatei und versucht, eine neue mit dem Namen zu öffnen $string.

SetKeywordchar($string)
Legen Sie das anfängliche Schlüsselwort char auf fest $string (wird für die Befehlszeilenoption -kc verwendet).

SetContchar($string)
Setzen Sie das Zeilenfortsetzungszeichen auf $string (wird für die Befehlszeilenoption -lc verwendet).

SetContrepchar($string)
Setzen Sie das Zeilenfortsetzungs-Ersetzungszeichen auf $string (wird für den Befehl -lr verwendet
Zeilenoption).

SetOptLineEndchar($string)
Legen Sie das optionale Schlüsselwort-Zeilenendezeichen auf fest $string (wird für den Befehl -lec verwendet
Zeilenoption).

SetBlankSupp(1/0)
Schaltet die Leerzeilenunterdrückung ein/aus (1 = unterdrücken, 0 = nicht unterdrücken). Wann
Wenn die Leerzeilenunterdrückung aktiviert ist, werden Leerzeilen in Eingabedateien nicht in die kopiert
Ausgabe. Im Gegensatz zur entsprechenden Befehlszeilenoption (-b) kann diese Funktion auch
wirken sich auf die Datei der obersten Ebene aus. Es gilt die Einstellung der Leerzeilenunterdrückung
auf die aktuell verarbeitete Datei und alle in der aktuellen Datei enthaltenen Dateien.

ResetBlankSupp()
Setzt die Leerzeilenunterdrückung auf den in der Befehlszeile angegebenen Wert zurück. Nur das
wirkt sich auf die Ausgabe von Leerzeilen aus der aktuell verarbeiteten Datei und allem aus
Dateien, die in der aktuellen Datei enthalten sind. In der Datei der obersten Ebene ist dies immer der Fall
Leerzeilenunterdrückung aus.

SetEatTrail($string)
If $string ist ein Makro, wann immer das Makro alle Leerzeichen zwischen ersetzt
Die Ersetzung des Makros und das nächste Zeichen in der Zeile werden verzehrt. Zum Beispiel,
wenn Makro foo ist definiert zu Bar und foo wurde so eingestellt, dass seine Spur gefressen wird
wie folgt vor:

Iss meine Foo-Spur

wird ersetzt durch

iss mein Bartrail

CheckEatTrail($string)
Gibt 1 zurück, wenn es sich um ein Makro handelt $string Der Schwanz wird gefressen, sonst 0.

SetEnvchar($string)
Legen Sie das Präfix der in Makros konvertierten Umgebungsvariablen fest (envchar) Um $string
(wird für die Befehlszeilenoptionen -ec und -ecn verwendet).

DefineEnv()
Definieren Sie alle Umgebungsvariablen als Makros mit Präfix envchar (wird für den Befehl -e verwendet
Zeilenoption).

SetOutput(1/0)
Schaltet das Schreiben der geparsten Eingabedatei in die Ausgabedatei ein/aus. Dies dauert entweder 1
(Ausgang ein) oder 0 (Ausgang aus) als Eingang. Wenn der Ausgang ausgeschaltet ist, ist der einzige
Ausgabe produziert aus filepp wird das sein, was von Modulen generiert wird.

SetWordBoundaries(1/0)
Schaltet on(1) oder WOW!(0) Wortgrenzenprüfung beim Ersetzen von Makros (verwendet für -w
Befehlszeilenoption).

SetCharPerlre(1/0)
Schaltet on(1) oder WOW!(0) Zulassen des Schlüsselwortpräfixes char und des Zeilenfortsetzungszeichens
Seien Sie Perl-reguläre Ausdrücke (wird für die Befehlszeilenoption -re verwendet).

UndefAll()
Hebt die Definition aller derzeit definierten Makros auf, einschließlich der vordefinierten (verwendet für -u).
Befehlszeilenoption).

UseModule($string)
Lasten a perl(1) Modul benannt $string mit dem Perl-Befehl erfordern (verwendet für die
-m-Befehlszeilenoption).

SetParseLineEnd($Funktion)
Legt die Funktion fest, um zu bestimmen, ob die Zeilenfortsetzung in der aktuellen Zeile erfolgen soll
zu $Funktion.

$string=GetNextLine()
Gibt die nächste Zeile (nachdem die Zeilenfortsetzung behandelt wurde) der Eingabe zurück
Datei, die gerade verarbeitet wird. Gibt NULL für das Ende der Datei zurück.

Schreiben($string)
Schreibt $string in die aktuelle Ausgabedatei.

Ausgabe($string)
Bedingt schreibt $string in die aktuelle Ausgabedatei. Wenn die Ausgabe eingeschaltet ist
dann schreibt $string. Die Ausgabe wird mithilfe der SetOutput-Funktion ein- und ausgeschaltet.

Dazu alles Standard filepp Schlüsselwörter haben äquivalente Funktionen, die optional sind
Nehmen Sie ein einzelnes Argument. Die Funktionen haben den gleichen Namen wie das Schlüsselwort, nur mit a
Großbuchstabe (z. B.: #define Schnur ruft die Funktion auf Definieren(Schnur)).

Eine vollständige Beschreibung der Analysieren Funktion und alles andere filepp interne Funktionen ist
würde den Rahmen dieser Manpage sprengen. Der filepp Das Drehbuch ist gut kommentiert und hoffentlich
für einen Perl-Programmierer lesbar, also verwenden Sie die Quelle Luke!

Nutzen Sie filepp online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad