diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/Makefile b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/Makefile new file mode 100644 index 0000000..8c8376f --- /dev/null +++ b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/Makefile @@ -0,0 +1,11 @@ +S = /z/ing_doc/sachwort/ +Q = /z/ing_doc/sachwort/quell/ +C = /z/ing_doc/c/ + +sawo: $(Q)swverz.nq + nroff -ms $(Q)swverz.nq > $(S)sachw + nroff -ms $(Q)deck > $(S)deck_swv + +print: $(S)sachw + lpr $(S)deck_swv $(S)sachw + diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/deck b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/deck new file mode 100644 index 0000000..1f9712e --- /dev/null +++ b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/deck @@ -0,0 +1,40 @@ +.so /z/ing_doc/c/macdoc +.nf + ############################################################ + ############################################################ + ## ## + ## ## + ## ## + ## ## + ## ##### # ##### # # ## + ## # # # # # # # # ## + ## # # # # # # ## + ## ##### # # # ####### ##### ## + ## # ####### # # # ## + ## # # # # # # # # ## + ## ##### # # ##### # # ## + ## ## + ## ## + ## ## + ## ## + ## # # ####### ###### ####### ## + ## # # # # # # # # ## + ## # # # # # # # # ## + ## # # # # # ###### # ## + ## # # # # # # # # ## + ## # # # # # # # # ## + ## ## ## ####### # # # ## + ## ## + ## ## + ## ## + ## ## + ## ## + ## ## + ## ## + ## ## + ## ## + ## ## + ## ## + ############################################################ + ############################################################ +.fi diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/do_swvz b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/do_swvz new file mode 100755 index 0000000..c35f3ad --- /dev/null +++ b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/do_swvz @@ -0,0 +1,14 @@ +cat teil1/doc1_a? \ + teil2/doc2_a? \ + teil3/doc3_a? \ +> teil1_2.src +tr '\040' '\012' < teil1_2.src > teil1_2.nl +rm teil1_2.src +sort -udf teil1_2.nl -o teil1_2.swq +rm teil1_2.nl +echo "editiere teil1_2.swq zu swd_file" +echo "erstelle sawo.h: mk_incl swd_file" +echo "erstelle Programm sawort: cc -c -O sawort.c; cc -i sawort.o -o sawort" +echo "erzeuge Verzeichnis: sawort teil1_2.lp" +echo "Ergebnisfile swverz.q ist zu editieren und mit nroff aufzubereiten" + diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/koleng80 b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/koleng80 new file mode 100755 index 0000000..a139f67 Binary files /dev/null and b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/koleng80 differ diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/mk_incl b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/mk_incl new file mode 100755 index 0000000..7aff581 Binary files /dev/null and b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/mk_incl differ diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/mk_incl.c b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/mk_incl.c new file mode 100644 index 0000000..8167e52 --- /dev/null +++ b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/mk_incl.c @@ -0,0 +1,93 @@ +/* Erstellung des include-Files zur Vektordefinition des +** Sachwort-Katalogs; +** Aufruf: mk_incl sawo.nr +*/ + +# include +# include + +main(argc, argv) int argc; char *argv[]; +{ + register int c, i; + FILE *fs, *fk, *fopen(); + int snr; + int ach; + int k; + struct tab + { + int alpha; + int von; + }; + struct tab Atab[26]; + char buf[60]; + +if (argc != 2) +{ + printf("\nAnzahl Argumente: %d", argc); + printf("\usage: mk_incl file_sachw_katalog\n"); + exit(0); +} +if ((fs = fopen(*++argv, "r")) == NULL) +{ + perror("sachw_kat not found"); + exit(0); +} +if ((fk = fopen("sawo.h", "w+")) == NULL) +{ + perror("sawo.h not open"); + exit(0); +} + +/* Erstellung des include-Files zum Sachwort-Katalog */ + +fprintf(fk, "/* Sachwort-Katalog --> Vektordefinition */\n\n"); +fprintf(fk, "struct kat\n{\n\tint len;\n\tchar *saw;\n\tint snr;\n};\n"); +fprintf(fk, "struct kat Katalog[] =\n{\n"); + +/* Uebernahme aus dem Sachwort-Katalog und Eintrag: Wort Schluessel-Nr. */ + +snr = 0; +i = 0; +k = 0; +ach = 'z'; +while ((c = getc(fs)) != EOF) +{ + if (c != '\n') + { + buf[i++] = tolower(c); + if (c == '\b') buf[i-1] = '<'; + if (c == '"') --i; + } + else + { + if (i > 1) + { + buf[i] = '\0'; + fprintf(fk, "\t%2d,\t\"%s\",\t%d,\n", i, buf, ++snr); + i = 0; + if (ach != buf[0] && (buf[0] >= 'a' && buf[0] <= 'z')) + { + Atab[k].alpha = buf[0]; + Atab[k].von = snr; + ach = buf[0]; + if (k < 25) ++k; + } + } + } +} + +/* Endebehandlung */ + +fprintf(fk,"};\n"); +fprintf(fk,"\n/*Katalog zur Bezugnahme Buchstabenwechsel */\n\n"); +fprintf(fk,"struct tab\n{\n\tint alpha;\n\tint von;\n};\n"); +fprintf(fk,"struct tab Atab[] = \n{\n"); +for (ach = 0; ach < k; ach++) + fprintf(fk,"\t%d,%d,\n", Atab[ach].alpha,Atab[ach].von); +fprintf(fk,"\t%d,%d,\n", Atab[ach].alpha,snr); +fprintf(fk,"};\n"); +fprintf(fk,"int bis = %d;\n", k); +fclose(fk); +fclose(fs); +} + diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/sawo.h b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/sawo.h new file mode 100644 index 0000000..b74ea5a --- /dev/null +++ b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/sawo.h @@ -0,0 +1,497 @@ +/* Sachwort-Katalog --> Vektordefinition */ + +struct kat +{ + int len; + char *saw; + int snr; +}; +struct kat Katalog[] = +{ + 9, "abbildung", 1, + 7, "abbruch", 2, + 14, "abfragesprache", 3, + 13, "abha +# include + +# define PL 72 +# define APL 75 +/* am Anfang Seitenangabe auf Zl: 75 */ + +# define MAXZLEN 80 + +# include "sawo.h" + +main(argc, argv) int argc; char *argv[]; +{ + register int c; + FILE *fpo, *fps, *fopen(); + int flag; + int flagp; + int flagh; + int flagn; + int flagb; + int flagw; + int i; + int j; + int k; + int l; + int lo; + int bvon; + int bbis; + int zlen; + int pl = APL; + int pgnr; + char page[8]; + char hbuf[80]; /* Speicher fuer Vergleichswort im Text */ + char buf[80]; + +if ((fpo = fopen(*++argv, "r")) == NULL) +{ + perror("file_nroff not found"); + exit(0); +} +if (argc != 2) +{ + printf("\nAnzahl Argumente: %d", argc); + printf("\nusage: sawort file\n"); + exit(0); +} + +if ((fps = fopen("swverz", "w+")) == NULL) +{ + perror("swverz not open"); + exit(0); +} +printf("Zur Orientierung wird in Zehnerschritten die Seitennr. ausgegeben!\n"); +flag = 0; +flagb = 0; +pgnr = 1; +i = 0; +while (( c = getc(fpo)) != EOF) +{ +/* putchar(c); */ + switch(c) + { + case '\b': ++flagb; + ++flagh; + break; + case '\n': if (!(--pl)) + { + ++pgnr; + if (!(pgnr % 10)) printf("Seite %d\n",pgnr); + pl = PL; + } + if (i >= 1 && hbuf[i-1] == '-') + { + --i; + break; + } + case ' ': + case '.': + case ',': + case ';': + case '!': + case '?': + case ':': + hbuf[i] = '\0'; + if (i > 0) + { + flagw = 0; + if (hbuf[0] >= 'a' && hbuf[0] >= 'z') + { + for (l = 0; l < bis; l++) + { + if (hbuf[0] == Atab[l].alpha) + { + ++flagw; + break; + } + } + if (flagw) + { + bvon = Atab[l].von; + bbis = Atab[l+1].von; + } + else goto nocomp; + } + else + { + bvon = 0; + bbis = Atab[bis].von; + } + for (k = bvon; k < bbis; k++) + { + if (!strncmp(hbuf, Katalog[k].saw, Katalog[k].len)) + { + fprintf(fps, "%03d\t%03d\n",Katalog[k].snr,pgnr); + break; + } + } + } +nocomp: + i = 0; + ++flag; + ++flagn; + flagb = 0; + break; + case '"' : + k = hbuf[i-1]; + if ((k == 'A' || k == 'U' || k == 'O' + || k == 'a' || k == 'u' || k == 'o') + && (flagb == 1)) hbuf[i++] = '<'; + flagb = 0; + flagh = 0; + break; + default : if (!flagh) + { + if (i < 80) hbuf[i++] = tolower(c); + else printf("\n***FEHLER\n"); + } + flagh = 0; + flagb = 0; + flagn = 0; + } +} +fclose(fps); +fclose(fpo); +printf("Sortierung\n"); +system("sort -du -o sawo swverz"); +printf("Zusammenstellung Sachwort->Seite\n"); +if ((fpo = fopen("sawo", "r")) == NULL) +{ + perror("sawo not found"); + exit(0); +} +if ((fps = fopen("swverz.q", "w+")) == NULL) +{ + perror("swverz.q not open"); + exit(0); +} +flag = 0; +i = 0; +k = 0; +while ((c = getc(fpo)) != EOF) +{ + switch(c) + { + case '\t': hbuf[i] = '\0'; + l = atoi(hbuf); + if (l != k) + { + strcpy(hbuf, Katalog[l-1].saw); + j = 0; + for (i = 0; i < Katalog[l-1].len; i++) + { + if (hbuf[i] == '<') + { + buf[j++] = '\b'; + buf[j++] = '"'; + } + else buf[j++] = hbuf[i]; + } + buf[j] = '\0'; + zlen = j; + k = l; + fprintf(fps, "\n%s ",buf); + ++flag; + } + else flag = 0; + i = 0; + break; + case '\n': hbuf[i] = '\0'; + l = atoi(hbuf); + if (flag) + { + zlen += 4; + if (MAXZLEN < zlen) + { + fprintf(fps, "\n"); + zlen = 0; + } + fprintf(fps, "%3d",l); + lo = l; + } + else + { + zlen += 4; + if (MAXZLEN < zlen) + { + fprintf(fps, "\n"); + zlen = 0; + } + if (lo != l) fprintf(fps, ", %3d",l); + } + i = 0; + break; + default: hbuf[i++] = c; + } +} +fclose(fpo); +fclose(fps); +} diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/sawort.o b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/sawort.o new file mode 100644 index 0000000..a2977c9 Binary files /dev/null and b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/sawort.o differ diff --git a/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/swd_file b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/swd_file new file mode 100644 index 0000000..7191224 --- /dev/null +++ b/WEGA/contrib/ingres/dbs/ing_doc/sachwort/quell/swd_file @@ -0,0 +1,648 @@ +Abarbeitung +Abbildung +Abbruch +Abfragesprache +Abh\o'a"'ngigkeit +Abschluss +Acceerror +ACCESS +Addition +Adressen +Aggregat +Aktion +Aktualisierungskommandos +alter/ego-Flag +AMX +amx +Anmeldung +Anweisungen +any +anyu +append +Arbeitsbibliothek +Archivierung +arctangens +argc +Arithmetik +ascending +ascii +assign +asynchron +atan +atof +atoi +atol +atoX +Attribut +Aufbereitung +Ausgabe +Ausgangsrelation +Auswahl +Ausz\o'u"'ge +autoclear\-Funktion +backslash +Backups +Basisrelation +Basistupel +Batch-Files +batchline +batch-Prozessor +begintrap +bell_signal +Berechtigungen +Bereichsdeklaration +Betriebssystem +-b-Flag +Bibliothek +Bildschirm +Bitkombination +bitpos +blank +Block +bmove +boolean +Boole-Werte +branch +break +Bulk +by +case +C-Bibliotheksfunktionen +cc +C-Compiler +change-Kommando +char +chash +cheap +cheapsort +chefes +chgrp +chmod +cisam +clear +clock +close +C-Objektfile +COL +colon +columns +comma +comment +commit +comparison_operator +Compiler +COMPLEMENT +compressed +Computer-Installation +concat +conditions +const +constramt-Liste +continuetrap +control +conversion +convert +copy +copydb +copyr +count +C-Preprozessor +crash +creatdb +creater +C-Sprachbeschreibung +C-Statement +ctype +current_directory +C-Variable +Dam\o'a"'nen +dash +data +database +date +Datei +Daten +Datenbank +Datenbasis +Datenrelationen +Datentyp +dayfile +db +DBA +dbname +DBTMPLT +Debug-Information +declaration +declared +DECOMP +Decomposition +default +deferred +define +Deklaration +Dekompositionsverfahren +delete +delim +demo +desc +description +Deskription-File +destroy +destroydb +device +Direktzugriffsmethoden +Dezimalpunkt +Diagnose +direction +directory +Disjunktion +divr +do +DO-Konstruktion +Domaene +domain +Dom\o'a"'ne +double +Druckaufbereitung +dummy +duplicate +Durchschnittswert +Editor +Einf\o'u"'gemodus +Eingabefile +Eingabe-Generator +Eingabemodus +Eintrittsfunktion +else +em +embedded +empty +enda +endo +endtrap +Entwurf +environment +EOF +equel +erase +Erfassungsmaske +Ergebnis +Errorcode +error +escape +evaluation +exceed +exectrap +eval +execution +exist +exit +Exponent +eXtended +extension +extern +fclose +Fehler +field +File +fillfactor +find +first +flag +float +follow +fopen +fork +Format +for-Schleife +found +fprintf +free +from +fscanf +ftoa +functional_expression +Funktion +Ganzzahlarithmetik +Geltungsbereich +Genauigkeit +Gesamtzugriffsrechte +getup +gid +Gleitkomma +global +goto +group +Gruppe +gutil +hash +Hauptspeicher +header +heap +help +helpr +Hexadezimalzahl +hold +HOLD-MODUS +ident +Identifikator +IF-Anweisungen +ignore +Implementation +implizit +include +inclusive +Index +Indizes +indizieren +ING_DB +ing_db +Ingres +init_file +Initialisierung +initially +Initialstruktur +input +insert +Installation +Integer +integral +integrities +Integrit\o'a"'t +integrity +interaktiv +Interface +intermediate +intern +Interpreter +interrupt +Intervall +intgrity +into +INTRO +invalid +involves +iocv +isam +isascii +isdigit +itoa +join +Kaschieren +keys +kill +Klassifizierung +Klausel +Kommando +Kommentar +Komponente +Konsistenz +Konstante +Konvertierung +Kopie +Korrektur +Korrespondenz +Kursor +label +Language +large +last_page +Laufzeit +layout +Leerseite +left +length +libc +libm +libq +library +limited +line +list +L\o'a"'nge +Logarithmus +logical_operator +login +logout +long +MACRO +mail +main +mainloop +major +make +Makro +MALLOC +Manual +marc +Marke +Maske +match +matching +Maximum +maxpage +maxu +Mehrfachverzweigung +memory +Menue +Meta-Daten-file +min +minpage +minu +mkdir +Modifikation +modify +MODULA-R +modulo +Monitor +Morpheme +mountbar +move +MS-DOS +must +Mustersuche +Nachricht +Negation +NEW-PAGE-Anweisungen +newrel +NEXT +Notation +Nullbyte +number +numerisch +Nutzer +oatoi +occurred +occurs +offset +Oktalzahl +only +open +openr +Operator +Option +over +overflow +OVQP +owned +page +panic +Papierformates +Parameter +Parser +parsing +passwd +Pathname +pattern +permission +permit +perror +Pfadname +Phase +pipe +Plattenzugriff +pmove +pnumascending +Pointer +portabel +Positionierung +prargs +Pre-Compiler +Preprozessor +primary +Prim\o'a"'r- +PRINT +printf +print +Priorit\o'a"'t +proc +profile +Programm +Projektion +Prompt +protect +Pr\o'u"'fprozeduren +provide +Prozedur +Prozesstabelle +Pseudodom\o'a"'nen +Pseudo-Zeichen +Puffer +purge +putchar +q-Editor-Kommando +qual +Qualifikation +QUEL +Quellcode +Quell-File +query +quit-Monitor-Kommando +Quit-Signal +Quoting-Symbole +random +range +r_code +read +real +reboot +Recherche +Recover +Redabas +redeclared +references +Rekursion +rekursiv +relational +Relationen +relname +RELOP +remove +REPEAT +replace +Report +Reservierungszeit +reset +restore +Resultat +retrieve +return +Returncode +rmdir +root +rparen +rp_arg +rp_code +rp_desc +rp +Satzbegrenzer +save +SCALE +scan +scanf +Schachtelungstiefe +Schl\o'u"'ssel +Schnittstelle +Schreiberlaubnis +Schutz +scompare +secondary +section +Seiten- +Sekund\o'a"'rindex +Semantik +sequence +SET-Anweisung +SETJMP +-s-Flag +sgtty +shared +Shell +short +Sicherheit +Sicherungsdatum +signal +signifikant +simple_aggregate +Sitzung +size +Skalierungsfaktor +skeleton +slash +smove +Software +Sortieren +sortorder +Spaltenbreite +Spalten\o'u"'berschriften +special +specifier +Speicher +Sperren +Spezifikation +spool +Sprachbeschreibung +Spreizen +Sprungmarke +Sprungs +stack +Standard +Start-Menue +startup +Startvorgang +Statement +static +Status +Steuerfiles +storage +strcmp +strcpy +string +Struktur +stty +Subschema +Sub-Shell +Suchpfad +sukzessiv +Summenbildung +Superuser +support +Switch +symbol +sync +synchron +SYNOPSIS +Synonym +Syntax +SYSACCT +syserror +sysmod +System- +target +tempdata +template +tempor\o'a"'r +TERMCAP +Terminal +terminated +Text +then +TID +time +Token +trace +tree +Trennzeichen +TRUE +truncated +tty +Tupel +type +Typ- +Uebersetzungsprotokoll +-u-Flag +uid +Umwandlung +unable +unary +unavailable +underscore +undo +unexpected +unique +UNIX +unknown +unrecognizable +Unterbrechung +Unterlauf +unterminated +unterscheiden +until +update +usage +user +Usersetup +value +VAR +var_assign +Variable +vector +Verfallsdatum +Verkettung +Verkn\o'u"'pfungsoperator +Verschachtelung +Verschl\o'u"'sselung +Versionsnummer +Vertriebsversion +view +violation +virtuell +-Vno +Vor\o'u"'bersetzer +Vorrangregeln +Vorw\o'a"'rtssuchen +Vorverarbeitung +wakeup +warning +Werte-Status +Wertebereich +where +which +while +width +with +w-Kommando +WORD +work +write +x-Quelltext +Zahlensystem +Zeichen +Zeichenkette +Zeile +Zeit +zero +Ziel +zip +Zugriff +Zyklus