Überarbeitungsverlauf[Zurück]
Klicke auf Einblenden/Ausblenden von Überarbeitungen 18

09 Sep '14, 21:20

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Wie kann ich Befehlsdefinitionen verbatim in eine temporäre Datei exportieren und verbatim reimportieren?

So, hier eine TeX-Frage, bitte keine LaTeX-Lösungen anbieten, sondern Plain TeX ohne e-TeX-Erweiterungen. e-TeX-Erweiterungen, möglichst nur Lösungen, wie man sie aus dem Texbook ableiten kann. Ich möchte die Befehlsdefinitionen verbatim auslagern und auch wieder verbatim einlesen. Wie geht das? Es geht um eine `\texnewdef`-Funktion, vergleichbar mit `\newcommand`, die sofort eine Befehlsreferenz für das aktuelle Dokument schreibt, und zwar mit Befehlsname, Beschreibung und verbatim-Code. Anmerkung: exportiert werden sollen die Befehle in `\texnewdef`, und zwar das, was hinter `\def` steht. \texnewdef[slanted, Formatiert den ersten Parameter als slanted]{\def\slanted[#1]{{\sl #1}}} Hier das Beispiel %definition von verbatim in TeXBook \outer\def\begindisplay{\obeylines\startdisplay} {\obeylines\gdef\startdisplay#1 {\catcode`\^^M=5$$#1\halign|\bgroup\indent##\hfil&&\qquad##\hfil\cr}} \outer\def\enddisplay{\crcr\egroup$$} \chardef\other=12 \def\ttverbatim{\begingroup \catcode`\\=\other \catcode`\{=\other \catcode`\}=\other \catcode`\$=\other \catcode`\&=\other \catcode`\#=\other \catcode`\%=\other \catcode`\~=\other \catcode`\_=\other \catcode`\^=\other \obeyspaces \obeylines \tt} {\obeyspaces\gdef {\ }} % \obeyspaces now gives \ , not \space| \outer\def\begintt{$$\let\par=\endgraf \ttverbatim \parskip=0pt \catcode`\|=0\rightskip=-5pc \ttfinish}{\catcode`\|=0 \catcode`|\=\other % |obeylines |gdef|ttfinish#1^^M#2\endtt{#1|vbox{#2}|endgroup$$}} \catcode`\|=\active {\obeylines\gdef|{\ttverbatim\spaceskip=\ttgl\"u\let^^M=\ \let% |=\endgroup}} %definition von verbatim in TeXBook \newcount\texcomnum %Zähler für die Befehle \newwrite\texmanual %Schreibanweisung für externe Datei \immediate\openout\texmanual=\jobname.man %öffnen und benennen der externen Datei \def\texdisplaymanual{\vskip1\baselineskip BEFEHLSREFERENZ von \jobname.tex \vskip2\baselineskip\immediate\closeout\texmanual \input \jobname.man \vfill } %Einlesen der externen Datei \def\texnewdef[#1,#2]#3{\advance\texcomnum by 1 \immediate\write\texmanual{\the\texcomnum. #1: {#2}\vskip0.1\baselineskip {\tt Hier soll die Befehlsdefintion verbatim-formatiert erscheinen} \vskip1\baselineskip }#3} %leer übergeordnete Befehlsdefinition mit Texthinweis (an der Stelle %steht später der Befel \texnewdef[slanted, Formatiert den ersten Parameter als slanted]{\def\slanted[#1]{{\sl #1}}}% Anwendung der übergeordneten Befehlsdefinition mit neuer Definition und % Schreibanweisung \texnewdef[bold, Formatiert den ersten Parameter als bold]{\def\bold[#1]{{\bf #1}}}% Anwendung der übergeordneten Befehlsdefinition mit neuer Definition und % Schreibanweisung Anwendung im Text \slanted[Slanted text] \bold[Bold text] \texdisplaymanual \bye
Klicke auf Einblenden/Ausblenden von Überarbeitungen 17

08 Sep '14, 22:08

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Wie kann ich Befehlsdefinitionen verbatim in eine temporäre Datei exportieren und verbatim reimportieren?

So, hier eine TeX-Frage, bitte keine LaTeX-Lösungen anbieten, sondern Plain TeX ohne e-TeX-Erweiterungen. Ich möchte die Befehlsdefinitionen verbatim auslagern und auch wieder verbatim einlesen. Wie geht das? Es geht um eine `\texnewdef`-Funktion, vergleichbar mit `\newcommand`, die sofort eine Befehlsreferenz für das aktuelle Dokument schreibt, und zwar mit Befehlsname, Beschreibung und verbatim-Code. Anmerkung: exportiert werden sollen die Befehle in `\texnewdef`, und zwar das, was hinter `\def` steht. \texnewdef[slanted, Formatiert den ersten Parameter als slanted]{\def\slanted[#1]{{\sl #1}}} Hier das Beispiel %definition von verbatim in TeXBook \outer\def\begindisplay{\obeylines\startdisplay} {\obeylines\gdef\startdisplay#1 {\catcode`\^^M=5$$#1\halign|\bgroup\indent##\hfil&&\qquad##\hfil\cr}} \outer\def\enddisplay{\crcr\egroup$$} \chardef\other=12 \def\ttverbatim{\begingroup \catcode`\\=\other \catcode`\{=\other \catcode`\}=\other \catcode`\$=\other \catcode`\&=\other \catcode`\#=\other \catcode`\%=\other \catcode`\~=\other \catcode`\_=\other \catcode`\^=\other \obeyspaces \obeylines \tt} {\obeyspaces\gdef {\ }} % \obeyspaces now gives \ , not \space| \outer\def\begintt{$$\let\par=\endgraf \ttverbatim \parskip=0pt \catcode`\|=0\rightskip=-5pc \ttfinish}{\catcode`\|=0 \catcode`|\=\other % |obeylines |gdef|ttfinish#1^^M#2\endtt{#1|vbox{#2}|endgroup$$}} \catcode`\|=\active {\obeylines\gdef|{\ttverbatim\spaceskip=\ttgl\"u\let^^M=\ \let% |=\endgroup}} %definition von verbatim in TeXBook \newcount\texcomnum %Zähler für die Befehle \newwrite\texmanual %Schreibanweisung für externe Datei \immediate\openout\texmanual=\jobname.man %öffnen und benennen der externen Datei \def\texdisplaymanual{\vskip1\baselineskip BEFEHLSREFERENZ von \jobname.tex \vskip2\baselineskip\immediate\closeout\texmanual \input \jobname.man \vfill } %Einlesen der externen Datei \def\texnewdef[#1,#2]#3{\advance\texcomnum by 1 \immediate\write\texmanual{\the\texcomnum. #1: {#2}\vskip0.1\baselineskip {\tt Hier soll die Befehlsdefintion verbatim-formatiert erscheinen} \vskip1\baselineskip }#3} %leer übergeordnete Befehlsdefinition mit Texthinweis (an der Stelle %steht später der Befel \texnewdef[slanted, Formatiert den ersten Parameter als slanted]{\def\slanted[#1]{{\sl #1}}}% Anwendung der übergeordneten Befehlsdefinition mit neuer Definition und % Schreibanweisung \texnewdef[bold, Formatiert den ersten Parameter als bold]{\def\bold[#1]{{\bf #1}}}% Anwendung der übergeordneten Befehlsdefinition mit neuer Definition und % Schreibanweisung Anwendung im Text \slanted[Slanted text] \bold[Bold text] \texdisplaymanual \bye
Klicke auf Einblenden/Ausblenden von Überarbeitungen 16

08 Sep '14, 21:47

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 15

08 Sep '14, 00:32

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 14

08 Sep '14, 00:30

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 13

07 Sep '14, 15:14

cgnieder's gravatar image

cgnieder
22.1k253463

Klicke auf Einblenden/Ausblenden von Überarbeitungen 12
Themen plain-tex und verbatim sind bereits etabliert, die restlichen inhaltsbeschreibend, texbook halte ich für falsch, werde es aber nicht löschen

07 Sep '14, 11:45

gast3's gravatar image

gast3
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 11

06 Sep '14, 23:36

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 10

06 Sep '14, 13:17

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 9

06 Sep '14, 12:46

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 8

06 Sep '14, 12:45

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 7

06 Sep '14, 12:44

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 6

06 Sep '14, 12:44

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 5

06 Sep '14, 01:20

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 4

06 Sep '14, 01:17

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 3

06 Sep '14, 01:16

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 2

06 Sep '14, 00:49

ctansearch's gravatar image

ctansearch
(ausgesetzt)

Klicke auf Einblenden/Ausblenden von Überarbeitungen 1

06 Sep '14, 00:37

ctansearch's gravatar image

ctansearch
(ausgesetzt)