Bearbeiten von „Text butler“
Zur Navigation springen
Zur Suche springen
Warnung: Du bist nicht angemeldet. Deine IP-Adresse wird bei Bearbeitungen öffentlich sichtbar. Melde dich an oder erstelle ein Benutzerkonto, damit Bearbeitungen deinem Benutzernamen zugeordnet werden.
Die Bearbeitung kann rückgängig gemacht werden. Bitte prüfe den Vergleich unten, um sicherzustellen, dass du dies tun möchtest, und veröffentliche dann unten deine Änderungen, um die Bearbeitung rückgängig zu machen.
Aktuelle Version | Dein Text | ||
Zeile 3: | Zeile 3: | ||
= Links = | = Links = | ||
* [[Flutter-Apps]] | * [[Flutter-Apps]] | ||
= Zielsetzung = | = Zielsetzung = | ||
Zeile 48: | Zeile 47: | ||
Parameter '''mit Listen''' benötigen einen Separator, der die Listenelemente trennt. Enthält die Liste Texte, so wird ein "Auto-Separator" benutzt: das ist das erste Zeichen der Liste, | Parameter '''mit Listen''' benötigen einen Separator, der die Listenelemente trennt. Enthält die Liste Texte, so wird ein "Auto-Separator" benutzt: das ist das erste Zeichen der Liste, | ||
beispielsweise <code>Values= | beispielsweise <code>Values=;a;b;c</code>. | ||
== clear == | == clear == | ||
Zeile 54: | Zeile 53: | ||
=== Parameter === | === Parameter === | ||
* '''output''': spezifiziert den Puffer, der gelöscht wird. Voreinstellung: "output" | |||
=== Beispiel === | === Beispiel === | ||
Zeile 72: | Zeile 61: | ||
== copy == | == copy == | ||
Kopiert einen Puffer in einen anderen, oder einen | Kopiert einen Puffer in einen anderen, oder einen festen Text in einen Puffer. | ||
=== Parameter === | === Parameter === | ||
* '''append''': wenn angeben, wird die Vorlage an das Ziel angehängt. | |||
* '''input''': Puffer, der kopiert wird. Voreinstellung: input | |||
* '''output''': Ziel der Kopieraktion. Voreinstellung: output | |||
* '''text''': kann alternativ zu '''input''' angegeben werden. Dann wird dieser Text ins Ziel kopiert. | |||
=== Beispiele === | === Beispiele === | ||
Im Puffer "input" steht | Im Puffer "input" steht "Hello World", im Puffer "todo" steht "Greetings\n". | ||
<pre>copy out=todo append | <pre>copy out=todo append | ||
</pre> | </pre> | ||
Danach steht in "todo" | Danach steht in "todo": "Greetings\nHello World". | ||
<pre>copy text="Hi Jonny!" | <pre>copy text="Hi Jonny!" | ||
</pre> | </pre> | ||
Danach steht in Puffer "output" | Danach steht in Puffer "output" der Wert "Hi Jonny!". | ||
== count == | == count == | ||
Zeile 128: | Zeile 82: | ||
=== Parameter === | === Parameter === | ||
* '''append''': Ergebnis wird an vorhandenen Text im Zielpuffer angehängt. | |||
* '''ignore''': Groß-/Kleinschreibung spielt keine Rolle. | |||
* '''input''': in diesem Puffer wird gesucht. Voreinstellung: input | |||
* '''output''': Das Ergebnis wird in diesem Puffer ausgegeben. Voreinstellung: output | |||
* '''marker''': definiert einen Platzhalter für die Ergebniszahl in '''template'''. Voreinstellung: '#' | |||
* '''template''': Vorlage, wie die Ergebnismeldung aussieht. Muss '''marker''' enthalten. Voreinstellung: der Wert von '''marker''' | |||
* '''regexpr''': Suchmuster als regulärer Ausdruck. | |||
* '''what''': Suchmuster als String ohne Metazeichen. | |||
Hinweis: Es darf nur entweder '''regexpr''' oder '''what''' angegeben werden, nicht beide oder keiner. | |||
=== Beispiele === | === Beispiele === | ||
Zeile 183: | Zeile 97: | ||
Hic Rhodos, Hic salta! | Hic Rhodos, Hic salta! | ||
</pre> | </pre> | ||
Kommando: | * Kommando: <code>count what="e"</code> | ||
< | |||
</ | |||
Danach steht in "output": | Danach steht in "output": | ||
<pre>4 | <pre>4 | ||
</pre> | </pre> | ||
Kommandos: | * Kommandos: | ||
<pre>count regex=/\S+/ template="# Wörter" output=statistic | <pre>count regex=/\S+/ template="# Wörter" output=statistic | ||
count regexpr=/[.;!?]/ t=', # Sätze' o=statistic append | count regexpr=/[.;!?]/ t=', # Sätze' o=statistic append | ||
Zeile 204: | Zeile 116: | ||
=== Parameter === | === Parameter === | ||
* '''append''': das Ergebnis wird im Zielpuffer angehängt. | |||
* '''baseChar''': Basis für laufende Zeichenfolge. | |||
* '''BaseChars''': wie baseChar, nur eine Liste, wenn mehrere fortlaufende Elemente verwendet werden. | |||
* '''count''': so oft wird der Text kopiert. | |||
* '''ListValues''': eine Liste von Textlisten, wenn mehrere fortlaufende Elemente verwendet werden. | |||
* '''offset''': Basis für laufende Elemente. Voreinstellung: 0 | |||
* '''Offsets''': eine Liste von Offsets, wenn mehrere fortlaufende Elemente verwendet werden. | |||
* '''output''': das Ergebnis wir in diesen Puffer geschrieben. Voreinstellung: output | |||
* '''meta''': Delimiter für die Platzhalter in '''input'''. | |||
* '''step''': Abstand zwischen zwei fortlaufenden Elementen. | |||
* '''Steps''': eine Liste von '''step'''-Angaben, wenn mehrere fortlaufende Elemente verwendet werden | |||
* '''Values''': eine Liste von Texten, die fortlaufend eingefügt werden. | |||
=== Platzhalter === | === Platzhalter === | ||
Zeile 296: | Zeile 152: | ||
<pre>= List: | <pre>= List: | ||
</pre> | </pre> | ||
Kommando: | * Kommando: <code>duplicate count=2 offset=100 step=10 baseChar=Q append</code> | ||
< | |||
</ | |||
Danach steht im Puffer output: | Danach steht im Puffer output: | ||
<pre>= List: | <pre>= List: | ||
Zeile 308: | Zeile 162: | ||
<pre>no: !index! id: !number0! place !char0! key: !char1!!char1!!char1! | <pre>no: !index! id: !number0! place !char0! key: !char1!!char1!!char1! | ||
</pre> | </pre> | ||
Kommando: | * Kommando: <code>duplicate count=3 Offsets=10,0 Steps=5,1 BaseChar="Ak" meta=! out=list</code> | ||
< | |||
</pre> | </pre> | ||
Danach steht im Puffer "list": | Danach steht im Puffer "list": | ||
Zeile 320: | Zeile 173: | ||
<pre>animal %number%: %value% | <pre>animal %number%: %value% | ||
</pre> | </pre> | ||
Kommando: | * Kommando: <code>duplicate count=2 offset=1 Values=,cat,dog</code> | ||
< | |||
</ | |||
Danach steht im Puffer "output": | Danach steht im Puffer "output": | ||
Zeile 332: | Zeile 183: | ||
<pre>animal %value0% named %value1% comes from %value2%. | <pre>animal %value0% named %value1% comes from %value2%. | ||
</pre> | </pre> | ||
Kommando: | * Kommando: <code>duplicate count=2 ListValues=";,cat,dog;,Mia,Harro;,London,Rome"</code> | ||
< | |||
</ | |||
'''Hinweis:''' die Liste der Listen benutzt den Separator ";", die Textlisten den Separator ",". | '''Hinweis:''' die Liste der Listen benutzt den Separator ";", die Textlisten den Separator ",". | ||
Zeile 341: | Zeile 190: | ||
<pre>animal cat named Mia comes from London. | <pre>animal cat named Mia comes from London. | ||
animal dog named Harro comes from Rome. | animal dog named Harro comes from Rome. | ||
</pre> | </pre> | ||
Zeile 379: | Zeile 197: | ||
=== Parameter === | === Parameter === | ||
* '''append''': Das Ergebnis wird an das Ziel angehängt. | |||
* '''end''': Es werden nur Zeilen untersucht, die vor einer Zeile stehen, die auf diesen regulären Ausdruck passt. | |||
* '''filter''': Passt eine Zeile auf diesen regulärer Ausdruck, wird sie ins Ziel übernommen. | |||
* '''Filters''': Eine Liste von regulären Ausdrücken: Passte eine auf eine Zeile, wird diese ins Ziel übernommen. | |||
* '''input''': Puffer mit dem Inhalt, der gefiltert wird. Voreinstellung: input | |||
* '''meta''': Delimiter der Platzhalter in '''template''' oder '''Templates'''. Voreinstellung: '%' | |||
* '''output''': Puffer, in den die gefilterten Zeilen landen. Voreinstellung: output | |||
* '''repeat''': Ist diese Zahl größer 1, wird der Bereich '''start''' und '''end''' entsprechend oft gesucht. Voreinstellung: 1 | |||
* '''start''': Es werden nur Zeilen untersucht, die hinter einer Zeile stehen, die auf diesen regulären Ausdruck passt. | |||
* '''template''': Für jeden Treffer wird diese Vorlage ausgegeben, nachdem dort die Platzhalter ersetzt wurden. | |||
* '''Templates''': Es werden nur Zeilen untersucht, die hinter einer Zeile stehen, die auf diesen regulären Ausdruck passt. | |||
'''Hinweis''': Von den Parametern '''filter''' und '''Filters''' muss genau einer angegeben werden, also nicht keiner | '''Hinweis''': Von den Parametern '''filter''' und '''Filters''' muss genau einer angegeben werden, also nicht keiner | ||
und nicht beide. | und nicht beide. | ||
Zeile 455: | Zeile 218: | ||
* %group2%: das, was mit dem zweiten Klammerpaar im regulären Ausdruck gefunden wird. | * %group2%: das, was mit dem zweiten Klammerpaar im regulären Ausdruck gefunden wird. | ||
und so weiter. | und so weiter. | ||
'''Hinweis:''' Die Delimiter "%" der Platzhalter kann über den Parameter '''meta''' geändert werden. | '''Hinweis:''' Die Delimiter "%" der Platzhalter kann über den Parameter '''meta''' geändert werden. | ||
=== | === Beispiel === | ||
Gilt für alle Beispiele: In Puffer input steht: | Gilt für alle Beispiele: In Puffer input steht: | ||
Zeile 482: | Zeile 243: | ||
</staff> | </staff> | ||
</pre> | </pre> | ||
Kommando | * Kommando <code>filter fi=/name/</code> | ||
< | |||
</ | |||
In Puffer output steht: | In Puffer output steht: | ||
<pre> <name>Easy Rider</name> | <pre> <name>Easy Rider</name> | ||
Zeile 491: | Zeile 250: | ||
<name>Charly</name> | <name>Charly</name> | ||
</pre> | </pre> | ||
Kommando | * Kommando <code>filter start=/<person/ end=</person/ fi=/name/ repeat=2</code> | ||
< | |||
</ | |||
In Puffer output steht: | In Puffer output steht: | ||
<pre> <name>Adam</name> | <pre> <name>Adam</name> | ||
<name>Berta</name> | <name>Berta</name> | ||
</pre> | </pre> | ||
Kommando | * Kommando <code>filter start=/<person/ end=</person/ fi=/<(name|id)>(.*?)</ repeat=2 template="%group1%: %group2%</code> | ||
< | |||
</ | |||
In Puffer output steht: | In Puffer output steht: | ||
<pre>id: 1 | <pre>id: 1 | ||
Zeile 507: | Zeile 262: | ||
name Berta | name Berta | ||
</pre> | </pre> | ||
Kommando | * Kommando <code>filter start=/<person/ end=</person/ Filters=";/<name/;/<id" repeat=2</code> | ||
< | |||
</ | |||
<pre> <id>1</id> | <pre> <id>1</id> | ||
<name>Adam</name> | <name>Adam</name> | ||
Zeile 516: | Zeile 268: | ||
<name>Berta</name> | <name>Berta</name> | ||
</pre> | </pre> | ||
Kommando | * Kommando <code>filter start=/<person/ end=</person/ Filters=";/<(name)>(.?*)</;/<id>(.?*)</;" repeat=2 Templates=";%group1%: %group2%: %group2%;Id: %group1%</code> | ||
< | <pre>Id: 1 | ||
</ | |||
<pre> | |||
name: Adam | name: Adam | ||
Id: 2 | |||
name: Berta | name: Berta | ||
</pre> | </pre> | ||
Zeile 532: | Zeile 281: | ||
=== Parameter === | === Parameter === | ||
'input': paramBufferName, | |||
'output': paramBufferName, | |||
'meta': paramMeta, | |||
'regexpr': paramRegExpr, | |||
'value': paramValue, | |||
'with': paramWith, | |||
'what': paramWhat, | |||