Register
Registerzeilen kopieren und ausgeben
Für acon gibt es ein paar Sonderbefehle , siehe unten.
qrix N ixn abc acon (ohne N, dafür s.u. qrix n)
Qrix N ixn abc
Wie index , aber Kopie des Registerabschnitts ab abc in die iV bzw. bei Qrix direkt in die aktuelle Exportdatei. Bei acon leider umgekehrt.
Das Ergebnis beginnt mit der ersten Zeile des Registers, die mit abc beginnt; wenn es keine solche Zeile gibt, die erste, die alphanumerisch hinter abc kommt.
Mit if "" ... kann man checken, ob nichts gefunden wurde (abc hinter dem Ende des Registers!)
N gibt die Zahl der gewünschten Zeilen an; wenn N fehlt, wird 20 angenommen.
Ist N negativ, wird rückwärts vorgegangen, so daß die letzte ausgegebene Zeile die erste ist, die mit abc beginnt. In der iV sind die Zeilen durch ¶ (Code 20) getrennt. Folglich muß man z.B. schreiben:
qrix -2 |1 b\var (e"¶"), um die letzte Zeile im Register 1 zu erhalten, die mit a beginnt.
Tip: Um das Zeichen ¶ z.B. in *** zu wandeln: ins _^T_***_ in die nächste Zeile nach dem qrix-Befehl.
ixn kann ein symbolischer Registername sein oder eine Angabe wie |3 für Register 3. Für die Register 10 und 11 gelten |: bzw. |; . Für MultiX-Register : ~ziabc , mit dem Kennbuchstaben z und der Registernummer i, z.B. ~u5abc für Register 5 der Indexdatei cat.udx.
Trunkierung ist möglich (wie bei manueller Nutzung des Registers): dazu ein ? an das Ende von abc setzen.
Mit show IV kann der Abschnitt sofort in die Anzeige gebracht werden, mit ins ... in ein Datenfeld.
Achtung: Für acon muß man die Zahl N vorher in einem eigenen Befehl qrix nN angeben, siehe unten.
Hinweis: Der Suchbegriff abc wird vor der Ausführung umcodiert (z.B. Indexparameter, Abschnitt #-3). Um das zu verhindern, setzt man einen _ davor.
qrix dbegrenzer acon (Default: qrix d@ )
Mit dem Begrenzer wird eine Von-Bis-Angabe möglich.
Der Wert abc kann dann aus 2 Teilen bestehen, getrennt durch begrenzer . Dann endet die Auflistung mit dem letzten Eintrag, der kleiner ist als das, was hinter begrenzer steht. [Bis V24.3 galt auch das Zeichen '<' als Begrenzer.]
Wenn ein anderes Zeichen als @, oder eine Zeichenkombination, als Begrenzer fungieren soll, muß man das vorher mit diesem Befehl angeben, und diese Einstellung gilt dann bis zum Sitzungsende.
Beispiel: qrix d--- und danach qrix 2000 per a---b (d.h. maximal 2000 Zeilen)
Wenn b fehlt, kommt nichts heraus.
Wenn von a beginnend alles bis zum Ende des Registers herauskommen soll, muss für b z.B. ~ gesetzt werden, ein Zeichen, das hinter allen anderen ASCII-Zeichen ordnert (Code 126).
Ist zusätzlich Trunkierung gewünscht, muß man das ? an das Ende des ersten Teils (direkt vor dem Begrenzer) setzen. Dann kommen
trunkierte Zeilen heraus, wie wenn man bei der Direktsuche das Suchwort mit ? beendet.
Sonderfall der Von/Bis-Suche
Wenn ein symbolisches Register mit Präfix benutzt wird, wie z.B. dis für "D " im Reg. 1, dann muß bei der Zeichenfolge B das Präfix mit angegeben werden: dis a---D g würde alle Einträge unter D a bis direkt vor D g sammeln. Mit qrix dis a---g käme viel mehr heraus!
qrix f function
Der Wert function (0,1,2,3,4) steht für die Funktionsweise:
(Die Einstellung gilt nur bis zum Ende des FLEXes!)
0 : Registerzeilen genauso, wie man sie in Indexfenster sieht (default) (auch acon)
1 : Satznummern hinzugefügt, getrennt durch ':' anzahlTABtextTAB:nn:nn:nn (auch acon)
2 : wie 0, aber die Anzahl am Ende der Zeile, mit TAB getrennt textTABanzahl (nur acon)
3 : wie 1, aber für jede Satznummer eine eigene Zeile: nn|RegZeile (nicht in acon)
(Damit hat man sofort eine ViewListe)
4 : Sonderfall: Schreibt in die Exportdatei nur die Satznummern. Diese kann dann wie eine PRESTO-Ergebnismenge eingelesen werden (read set name ) (nicht in acon)
5 : wie 1, aber nur die Nummer des ersten Satzes : anzahlTABtextTAB:nn (ab 2006.07 auch acon)
6 : Sonderfall: wie 4, aber Nummern kommen in die iV, durch : getrennt (nicht in acon)
qrix t i acon
Der Wert i ( >=0) wird als Schwelle für die Indexanzeige genommen. Nur Zeilen mit mehr als i Einträgen werden dann gezeigt. Nützlich z.B. für visuelle Dublettenkontrollen. Der Wert bleibt beim anschließenden Aufblättern des Index erhalten, kann aber durch
qrix t 0 abgeschaltet werden.
Beispiel:
Man möchte aus dem Register 4 = TAF die erste bzw. letzte Zeile, die mit "handbuch" beginnt
qrix 1 taf handbuch ODER qrix 1 |4 handbuch
bzw.
qrix -2 taf handbuchzzz\var (e"¶") ODER qrix -2 |4 handbuchzzz\var (e"¶")
Nun steht die Zeile in der iV.
Weitere Beispiele sieht man in der FLEX-Datei qrix.flx .
----------------------------------------------------------------
NUR acon
Qrix statt qrix schreibt in die iV - bei a99 umgekehrt!
Für alle folgenden Varianten gilt: Was hinter qrix steht, kann fehlen, dann muß es aber in der iV stehen, also vorher mit var hineingeschrieben worden sein.
qrix m N
Einstellung der maximalen Zählung (Satznummern je Registerzeile), die angezeigt werden soll (Default: 1000). D.h. bei Indexeinträgen mit mehr als N Treffern erscheint ">N" vor der Registerzeile. Ein kleiner Wert von N bewirkt Beschleunigung.
Hinweis: Falls der Wert N größer sein soll als der aktuell eingestellte Maximalwert für Ergebnismengen, muß man jenen zuerst ebenfalls hochsetzen; dazu dient der Befehl set maxr i
Sonderfall: qrix m 0 kombiniert mit qrix f 2 bringt den Registerauszug ohne Trefferzahlen.
qrix n N
Einstellung der Anzahl N auszugebender Zeilen,
z.B. qrix n 20 (Default: 10)
wirkt sich auf alle nachfolgenden qrix-Befehle aus, bis eine neue Einstellung kommt
Ein negativer Wert ist nicht möglich. Dazu gibt es einen zusätzlichen Befehl:
qrix -
Damit stellt man ein, daß der nachfolgende echte Befehl dann rückwärts geht.
qrix stepsize N
Die Schrittweite des Registerauszugs auf den Wert N setzen. Default N=1.
qrix title [+] [N ]
Zu jedem Indexeintrag zusätzlich die Kurztitel ausgeben. Die optionale Angabe N legt die Maximalzahl der Kurztitelzeilen pro Indexeintrag fest (default: N=10).
Der Wert N=0 schaltet die Ausgabe der Kurztitel wieder ab.
Ein +-Zeichen direkt hinter title weist das Programm an, jeder Titelzeile die Satznummer voranzustellen:
Formatvorschrift: Satznummer:TABKurztitelzeile
Besonderheit bei acon
Wenn vorher eine Restriktion gesetzt wurde, werden die Registerzeilen damit kombiniert: es werden nur diejenigen Registerzeilen ausgegeben, deren Datensätze der Restriktion entsprechen.
Vorher jedoch ist find *new zu geben, sonst kann es zu Fehlfunktionen kommen.
Achtung:
Wenn mit einem Befehl exp wX eine Umcodierung über Exportparameter verlangt wurde, dann wird diese auch hier angewendet.