diff options
author | Karl Berry <karl@freefriends.org> | 2011-10-18 22:31:48 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-10-18 22:31:48 +0000 |
commit | fede1540ce6f021bff42a29058b2a86f9f5af5e5 (patch) | |
tree | 6fabe60e90cc245def7e724fd5c533afb3c6af7a /Master/texmf-dist/source/latex/fifinddo-info | |
parent | 75d21f778e668936a5845cf2aa0cd58b51dbf931 (diff) |
new doc package fifinddo-info (18oct11)
git-svn-id: svn://tug.org/texlive/trunk@24319 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/fifinddo-info')
5 files changed, 1784 insertions, 0 deletions
diff --git a/Master/texmf-dist/source/latex/fifinddo-info/dantev45.cfg b/Master/texmf-dist/source/latex/fifinddo-info/dantev45.cfg new file mode 100644 index 00000000000..25738d8ba72 --- /dev/null +++ b/Master/texmf-dist/source/latex/fifinddo-info/dantev45.cfg @@ -0,0 +1,24 @@ +\ProvidesFile{dantev45.cfg}[2011/10/15 local blogdot.sty config] +%% for type area width 668px and screen width minus +%% scroll bar: +% \renewcommand*{\leftpagemargin}{50} %% -> 768 +% \renewcommand*{\leftpagemargin}{162} %% -> 992 +% \renewcommand*{\leftpagemargin}{256} %% -> 1180 +% \renewcommand*{\rightpagemargin}{\leftpagemargin} +% \renewcommand*{\upperpagemargin}{80} +%% I prepared my presentation for a screen of +%% 600px height and tried to confine myself to a +%% type area height of 440px; a lower margin of 504px would hide +%% the next "page"/"slide" even on a screen 1024px high: +% \renewcommand*{\lowerpagemargin}{504} +% \renewcommand*{\typeareawidth}{640} +% \renewcommand*{\typeareaheight}{440} +%% Debugging: +% \ShowBlogDotBorders +% \ShowBlogDotFrame +% \FillBlogDotTypeArea +% \FillBlogDotBottom +% \ShowBlogDotFillText +%% Overall background color: +% \renewcommand*{\bodybgcolor}{\#ffffff} +\endinput diff --git a/Master/texmf-dist/source/latex/fifinddo-info/dantev45.fdf b/Master/texmf-dist/source/latex/fifinddo-info/dantev45.fdf new file mode 100644 index 00000000000..c11d874c89f --- /dev/null +++ b/Master/texmf-dist/source/latex/fifinddo-info/dantev45.fdf @@ -0,0 +1,59 @@ +\ProvidesFile{dantev45.fdf}[2011/10/14 blogdot settings for dantev45] +\RequirePackage{blogdot} +\renewcommand*{\leftpagemargin}{176} %% 2011/10/01 +%% wiki-listen: %% 2011/10/12 +\renewcommand*{\typeareawidth}{668} %% 2011/10/12 +\renewcommand*{\leftpagemargin}{162} %% 2011/10/12 +\renewcommand*{\typeareaheight}{440} +\renewcommand*{\bodybgcolor}{\#ffffff} +\renewcommand*{\pkgnamefmt}{\code} +\newcommand*{\section}{\cheading2} +\TryBlogDotCFG[dantev45] %% 2011/10/12 +%% The rest shouldn't be changed in recompiling: %% 2011/10/12 +\input{atari.fdf} +\input{lang-de.fdf} +\newcommand*{\labelsection}[1]{% + \nextnormalscreenpage{#1}\section} +\newcommand*{\labelcentersection}[1]{% %% 2011/09/25 + \nextcenterscreenpage{#1}\section} +\makeatletter %% TODO!? +%% Not used 2011/10/01: +% \newenvironment{maxitemize} +% {\textblock{\typeareawidth}% +% % <ul \@style{margin-left:0px}>% +% \itemize +% }{% +% % </ul>% +% \enditemize +% \endtextblock} +\newcommand*{\teilpage}[2]{% +% \labelcentersection{teil-#1} + \labelsection{teil-#1}%% 2011/10/11 + {\textcolor{\#bbccdd}{Teil #1:} + \vspace{21}% %% 2011/09/29 + #2}% +} +%% |\thesis{<label>}{<text>}| must be in a +%% |{theses}| environment +%% (TODO make package for more general use!): %% 2011/10/04 +\newenvironment*{theses} + {\startTable{\@cellpadding{9} + \@cellspacing{0}}} + {\endTable} +\newcommand*{\thesis}[2]{% + \TableRow{ thesis }{% +% \@style{margin:9px}% + \@valign@t + }% + \tablewidthcell{42px}{#1}% %% TODO generalize 2011/10/03 + \simplecell{#2}% + \endTableRow +} +\renewcommand*{\BlogDotRestart}{inhalt} +% \renewcommand*{\nextnormalscreenpage}{% +% \nextscreenpage{\@align@l}} %% 2011/10/11 +%% <- no difference, but still \@align@c differs +%% +%% 2011/10/05 getting around double quotes: +\newcommand*{\LucidaSans}{"Lucida Sans"} +\endinput diff --git a/Master/texmf-dist/source/latex/fifinddo-info/dantev45.tex b/Master/texmf-dist/source/latex/fifinddo-info/dantev45.tex new file mode 100644 index 00000000000..5ec3a7b5957 --- /dev/null +++ b/Master/texmf-dist/source/latex/fifinddo-info/dantev45.tex @@ -0,0 +1,1582 @@ +\ProvidesFile{dantev45.tex}[2011/10/14 DANTE Herbst \string'11] +\ifFillBlogDotTypeArea \comment{ \string"Kompromiss\string" mit + \string\FillBlogDotTypeArea\ }\fi +\CommentBlogDotWholeWidth +\head \charset{ISO-8859-1} %%% {utf-8} + \texrobots +% \stylesheet{all}{blogdot} + \begin{style}{all} + h1 { font-size: 42px; margin-bottom: 21px } + h2 { font-size: 30px; margin-bottom: 21px } + % h3 { font-size: 24px; } + % h4 { font-size: 21px; } + + td { +% font-family:Arial,Verdana,"Lucida Sans",sans-serif; + font-family:Arial,Verdana,\LucidaSans,sans-serif; %% 2011/10/05 + color:#000000; + font-size: 21px + } + + p { margin-bottom:0px } + dl, ol, ul { + padding-left: 1em; + margin-left: 1em; margin-top: 18px; margin-bottom: 18px; + vertical-align: middle; + } + dt { margin: 0px; margin-top: 18px; margin-bottom: 9px; padding: 0px } + li { margin: 0px; margin-top: 9px; margin-bottom: 9px; padding: 0px } + blockquote { margin-left: 2em } + pre { margin-left:2em; margin-top:0px } + + a:link { color:#0000d0; text-decoration:none; } + a:visited { color:purple; text-decoration:none; } + a:hover { color:blue; text-decoration:underline; } + a:active { color:blue; text-decoration:underline; } + \end{style} + \title{Dokumentation und HTML mit fifinddo} +\body +% \topofpage +% \deTeXtopofpage{| \Fileref{heyctan}~| \Fileref{texhax}} + \deTeXtopofpage{} +\endgraf + [\,\STS{big}{\strong{\autref{START}}}%%%\\~| %% big 2011/10/08 + \myalert{<<< zuerst klicken}, + \mystrong{dann auf Bildunterrand klicken} + \small %% <- 2011/10/13 -> + bzw. knapp unter Text + (\wikideref{Internet Explorer}{MSIE}) + \endsmall + und rechts unten fr \ancref{inhalt}{"Rckkehr"}\\ +\quad \autref{teil-0}~| + \autref{titelerlaeut1}~| + \autref{titelerlaeut2}~| + \autref{titelerlaeut3}~| + \autref{interessant}~| + \autref{motive-t}~| + \autref{motive-p}~| + \autref{status}~| +\strong{\autref{inhalt}}\\%%%~| +\quad \autref{teil-1}~| + \autref{txt2tex}~| + \autref{txt2tex-trad}\\%%%~| +\quad \autref{teil-2}~| + \autref{typoz-latex}~| %% 2011/10/05 umgestellt + \autref{minimal-mehr}~| + \autref{typoz-bewert}~| + \autref{typoz-auto}~| + \autref{typoz-ctan}\\%%%~| +\quad \autref{teil-3}~| + \autref{wiki-markup}~| + \autref{wiki-listen}\\%%%~| +\quad \autref{teil-4}~| + \autref{implement}~| + \autref{implement-ms}~| + \autref{implement-ms2}~| + \autref{implement-ma}~| + \autref{implement-ma+}~| + \autref{implement-mas}\\%%%~| +\quad \autref{teil-5}~| + \autref{nicetext}~| + \autref{wiki}\\%%%~| %%% \autref{min-markup-doku}~| \autref{doku-format}~| +\quad \autref{teil-6}~| + \autref{niceverb}~| + \autref{syntax}~| + \autref{vert}~| + \autref{niceverb-noch}~| + \autref{niceverb-sim}\\%%%~| +\quad \autref{teil-7}~| %%% \autref{txt2tex-doku}~| + \autref{kommentar}~| + \autref{kommentarzw}~| + \autref{kommentarzwa}\\%%%~| +\quad \autref{teil-8}~| + \autref{kommentar-ignor}~| + \autref{kommentar-ignor-mehr}~| + \autref{docstrip}~| + \autref{kommentarzch}~| + \autref{ohne-docstrip}\\%%%~| +\quad \autref{teil-9}~| + \autref{doku-vor}~| + \autref{doku-doc}~| + \autref{docinput}~| + \autref{docinput2}~| + \autref{docinput-min}~| + \autref{makedoc-input}~| %% neu statt \autref{mdoccorr} 2011/10/05 + \autref{makedoc-lauf}~| %% neu 2011/10/06 + \autref{erfolg}~| %% ausgebaut 2011/10/05f. + \autref{catcodes}\\%%%~| \\ %% ausgebaut 2011/10/06 +\quad \autref{teil-10}~| + \autref{html-alt}~| + \autref{html-statt-pdf}~| + \autref{html-und-pdf}~| %% 2011/10/06 ausgebaut + \autref{blog-probleme}~| + \autref{schluss}\,] %% gekrzt 2011/10/05 + \hrule +\titlescreenpage +\heading1{\mystrong{Paketdokumentation}\\und + \mystrong{Webseitenpflege} mit\\ + (\pkg{\mystrong{niceverb}.sty} + und)\\\pkg{\mystrong{fifinddo}.sty}} +Uwe Lck +\vspace{18} +šberarbeitete Fassung des auf der\\ +\httpref{www.dante.de/events/mv45/Programm.html}{% + \acronym{DANTE}-Herbsttagung 2011}\\ +gehaltenen Vortrags +\vspace{18} +\Isodate\GenDate + +\teilpage{0}{šber den Vortrag} +\labelsection{titelerlaeut1}{% + \mystrong{Vortragstitel} bedeutet (I):} +\begin{description} + \ditem{"Paketdokumentation"} + \Endash Beschreibung von \LaTeX-Makro-Paketen, \dh +% bzw. der \mystrong{Syntax} einzelner \mystrong{Makros}, +% ihrer \mystrong{Argumente}, der \mystrong{Wirkung}~\dots%%%\\ + \begin{enumerate} + \item in "Schreibmaschinenschrift" (\mystrong{"verbatim"}) gesetzter + \mystrong{Paketcode} wechselt mit in \LaTeX-Qualit„t gesetztem + \mystrong{Kommentar} ab ("zeilenweise") + \item der \mystrong{Kommentar}text \mystrong{enth„lt} + "verbatim" gesetzten \TeX-\mystrong{Code} ("inline") + zur Bezugnahme\pardash insbesondere: + \item \mystrong{Gebrauchsanleitung}/Syntaxbeschreibung fr Nutzer: + \\\meta{\bdquo Tippt man} + \begin{quote} + \mystrong{% + \cs{foo\ast[\metavar{opt-arg}]{\metavar{mand-arg}}}}, + \end{quote} + \meta{so erh„lt man~\dots\ldquo} + \end{itemize} +\end{description} + +\labelcentersection{titelerlaeut2}{% + \mystrong{\ancref{START}{Vortragstitel}} bedeutet (II):} +\begin{textblock}{560} + \begin{description} + \ditem{"Webseitenpflege"} + \Endash "hochtrabend", zun„chst blož: \mystrong{\HTML}-Erzeugung + \Endash + \begin{itemize} + \item \mystrong{Internet}auftritt~(? + \wikideref{Content-Management-System}{CMS}? + \Endash \webdesignref{schreibt.html}{ja~\dots}) + \item bequeme \mystrong{Textformat}-Alternative zu \PDF~\dots + \\ + (Notizen zu \webdesignref{heyctan.htm}{Links}, + Beamer-Pr„sentation~\dots) + \end{itemize} + \end{description} +\end{textblock} + +\nextcenterscreenpage{titelerlaeut3} +\section{\mystrong{\ancref{START}{Vortragstitel}} bedeutet (III):} +\dots\ was haben \mystrong{Paketdokumentation} und +\mystrong{\HTML-Erzeugung} miteinander zu tun\mystrong{??} +\\\\ +(\Endash Zu \mystrong{\HTML-Paketdokumentationen} + \\habe ich es noch \mystrong{nicht} gebracht~\dots) + +\labelcentersection{interessant}{% + Vortrag \mystrong{interessant}~\dots} +\begin{textblock}{600} + \begin{enumerate} + \item wenn man als Makroprogrammierer + \pkg{\mystrong{doc}.sty} und \file{\mystrong{docstrip}.tex} + ("\file{\mystrong{.dtx}}~\dots") + zu aufw„ndig findet~\dots + \item wenn man \mystrong{\HTML} sch„tzt und \mystrong{\PDF} + vermeiden m”chte~\dots + \item wenn man \mystrong{Makro-\Wikideref{Denksport}} mag + \end{enumerate} +\end{textblock} + +\labelcentersection{motive-t}{Inhaltliche Motive} +\begin{textblock}{560} + \begin{enumerate} + \item \strong{"minimales Markup"}, + "\Wikideref{syntaktischer Zucker}" + (\LaTeX-\mystrong{Qualit„t} + \emph{m”glichst ohne} \LaTeX-\mystrong{Befehle}) + \item \strong{"Missbrauch"} von \mystrong{\TeX} + als "\mystrong{Skript}sprache" + \\ + (\dqtd{mit \TeX\ muss und will ich + \mystrong{keine andere} Sprache lernen}; + \mystrong{statt} \PDF-\mystrong{Schriftsatz} + \Endash wie \ctanpkgref{docstrip}) + \item \mystrong{kleine}(?), einfache(?), experimentelle(!), + ("schrullige",) gerade eigenen (U.\,L.) Bedrfnissen + entsprechende \strong{Alternativen} zu existierenden + "professionelleren" Paketen + (\mystrong{Erfolge}\pardash Scheitern~\dots) +% \Endash gespannt auf \mystrong{Kommentare}.) + \end{enumerate} +\end{textblock} +% \begin{description} +% \ditem{"minimales Markup", "syntaktischer Zucker"} +% \begin{itemize} +% \item m”glichst wenig +% \end{itemize} +% \end{description} + +\labelcentersection{motive-p}{Pers”nliche Motive} +\begin{textblock}{424} %% aus 440 2011/10/15 +(bemerkenswerte \mystrong{Mischung} aus:) + \begin{enumerate} + \item gespannt auf \mystrong{Kommentare}\\zu \mystrong{meinen} Paketen, + \item Vortrag soll aber auch ber \mystrong{"Konkurrenzprodukte" informieren} + \item \mystrong{Irrtmer? Hinweise?} + \Endash \mystrong{Terminologie} erst in letzten zwei Wochen + "erarbeitet" + \item Vorstellung von \pkg{\mystrong{blogdot}.sty} + (\ctanpkgref{morehype}-Bndel) %% 2011/10/06 +% \item \wikideref{Worms}{Wormser} \wikideref{Nibelungenlied}{Rache} + \end{enumerate} +(und wohl auch ein wenig der beklagenswerten +\wikideref{Verfassung und Verfassungsvertrag\#Entstehung}{Eitelkeit}~\dots) +\end{textblock} +\labelcentersection{status}{\mystrong{Status}} +% mein erster Tagungsvortrag seit langem\vspace{9} +% Johannes Kster\vspace{9} %% Anregung "keine Zeit" ... 2011/10/03 +nicht richtig fertig, zu umfangreich, hasten, berspringen +\vspace{9} +kein Experte in Typografie, \HTML, \acronym{CSS} + +\labelcentersection{inhalt}{Vortragsteile} +\begin{textblock}{420} + \begin{enumerate} + \item \ancref{teil-1}{\mystrong{"Markup"?}}\pardash Terminologie + \item \ancref{teil-2}{\mystrong{"typografische Zeichen"}} + mit \TeX/\LaTeX + \item \ancref{teil-3}{\mystrong{"Formatierung"}} + \item \ancref{teil-4}{\mystrong{Implementierung}} + "minimalen Markups" "\mystrong{mit \TeX\ allein}" + \item \ancref{teil-5}{Paket\mystrong{dokumentation}} + \item \ancref{teil-6}{\pkg{\mystrong{niceverb}.sty}} + \item \ancref{teil-7}{"Kommentar"} + \item \ancref{teil-8}{Kommentar \mystrong{ausblenden}} + \item \ancref{teil-9}{% +% \mystrong{Vorverarbeitung}} +% von Code+Kommentar-Dateien + "Darstellung"} des Kommentars + \item \ancref{teil-10}{\mystrong{HTML}} erzeugen + \end{enumerate} +\end{textblock} + +\teilpage{1}{\mystrong{"Markup"} oder so + \vspace{18} + \small(Begriffskl„rung\pardash oder so)\endsmall} +\labelsection{txt2tex}{% + Von \file{.txt} zu \file{.tex}} +% \section{Typografische Erg„nzungen reinen Texts} +% \answer{worum man reinen Text erweitern muss, um typografische +% Qualit„t zu erhalten\pardash "minimal" sp„ter!} +Um \mystrong{reinen Text} in \mystrong{\LaTeX-Input} +(fr \LaTeX-Qualit„t) umzuwandeln, muss man normalerweise +Folgendes erg„nzen/„ndern: +% (Versuch~einer +% Unterscheidung und \mystrong{Terminologie}): +\begin{enumerate} + \item %%% \answer{automatische} + %%% \strong{"typografische Anreicherung"}, + %%% \file{.txt}\to\file{.tex}; + \strong{"\wikideref{Typografische Zeichen in HTML}{% + typografische Zeichen}"} + \Endash "typografische" Varianten von + \wikideref{Auslassungspunkte}{% + \mystrong{Auslassungspunkten}}, + \mystrong{Anfhrung}szeichen, + \mystrong{Leerzeichen}, + und \mystrong{Strichen}. + %%% \myalert{Beispiele} + %%% [space factor, Ellipse, geschtzte Leerzeichen, Festabst„nde, + %%% Gedankenstriche, Anfhrungszeichen] + %%% \answer{\pkg{easylatex} etc. + %%% (\webdesignref{heyctan.htm\#mine-related}{% + %%% mine-related}) + %%% bzw. zu \autref{implement}} + \item \strong{"\wikideref{Textformatierung}{% + Formatierung}"}\pardash Umschalten zwischen + \mystrong{Zeichens„tzen}, Einrcken, + \mystrong{Listen}, Verweise,\Dots +% \answer{\Endash durch spezielle einzelne Zeichen (statt +% Backslash~\dots) +% \Endash Wikipedia, Hervorhebungen nicht so wichtig?} +\end{enumerate} +% Begrndung: +\Endash \mystrong{Unterscheidung} nur \mystrong{HTML}-Terminologie? +\\ +\HTML\ verwendet fr \mystrong{ersten} Fall +spezielle \mystrong{Zeichen} wie +\code{\ } (anders als \cs{dots}), +\\ +fr \mystrong{zweiten} Einrahmung mit "Tags" wie +\code{\lt i\gt...\lt/i\gt} +(„hnlich~\LaTeX~\dots); oder~\dots +\vspace{9} +\begin{small} + \answer{dachte zun„chst, Wortsch”pfung sei meine eigene} +\end{small} + +% \answer{\dots\ vgl. +% \wikideref{Auszeichnungssprache\#Beispiele}{Wikipedia}} + +\labelcentersection{txt2tex-trad}{"Auszeichnung"} + \begin{textblock}{540} +"Traditionell" +\begin{itemize} + \item bezieht sich \mystrong{"Auszeichnung"} + \\ + (im "\Wikideref{Manuskript}"/\Wikideref{Typoskript}, + "Markup", + "\Wikideref{Schriftauszeichnung}"/\Wikideref{% + Auszeichnungssprache}) + \\ + anscheinend nur auf \strong{"Formatieren"} + \\ + (vielleicht weil der \mystrong{Setzer} das nicht "ahnen" + konnte), + \item w„hrend \strong{typografische Zeichen}varianten + \\ + fr den \mystrong{Setzer} eher "selbstverst„ndlich" waren + \\ + und im "Manuskript" \mystrong{nicht} besonders \mystrong{angezeigt} wurden. +\end{itemize} + \end{textblock} + +\teilpage{2}{\mystrong{Typografische Zeichen} mit \TeX/\LaTeX} +\labelcentersection{typoz-latex}{% + Typografische Zeichen mit \mystrong{\TeX/\LaTeX}} +% \begin{small} +% \answer{\Endash zur Erinnerung~\dots} +% \end{small} +% <p> +\begin{allrulestable}{8}{}%%%{612} + \begin{tablecoloredrow}{ typoz-latex }{\#eeefff} + \simplecell{\strong{Zeichen}} + \simplecell{\strong{realisiert durch}} + \end{tablecoloredrow} + \rowoftwocells{\mystrong{Auslassung}szeichen}{\cs{dots}} +% \starttr +% \tablewidthcell{200}{Auslassungspunkte} +% \tablewidthcell{412}{\cs{dots}} +% \simplecell{\cs{dots}} +% \endtr + \rowoftwocells{% + Gedanken-/"bis"-\mystrong{Strich}}{% + \dqtd{\code{---}} (englisch), + \dqtd{\code{--}}\pardash\mystrong{Ligaturen}} + \rowoftwocells{% + (Doppelte) \mystrong{Anfhrung}szeichen}{% +% \starttr +% \tablewidthcell{200}{(Doppelte) Anfhrungszeichen} +% \tablewidthcell{412}{% + Englisch: \mystrong{Ligaturen} \code{``...\texcs'\texcs'}; + \\ + Deutsch mit \code{(n)german.sty} oder \code{babel.sty} + \code{\texcs"`...\texcs"\texcs'} + \Endash \mystrong{aktive Zeichen}} +% \endtr + \rowoftwocells{% %% tiefer 2011/10/05 + Geschtztes~\mystrong{Leer}zeichen, Festabstand}{% + \dqtd{\texcs~} + \Endash\mystrong{aktives Zeichen}, \dqtd{\cs{,}}} + \rowoftwocells{% + Englisch: \mystrong{Leer}raum nach Satzzeichen}{% + \dqtd{\cs{ }} ("Steuerungsleerzeichen"), + \dqtd{\cs{@}}, \cs{sfcode`...}} +\end{allrulestable} + <p> +\begin{small} + \answer{"Aktive Zeichen" verhalten sich wie Makros, +% werden mit +% \cs{catcode...13} +% \cs{catcode`\texcs\~=13}} +% eingestellt. + \TeX book S.\,37 + } +\end{small} + +\labelcentersection{minimal-mehr}{Bewertung~\endash\\%%%Vertiefung + %%% von + \mystrong{"minimales Markup"} + genauer + } +\begin{textblock}{560} + \itqtd{\LaTeX-\mystrong{Qualit„t} + \emph{m”glichst ohne} \LaTeX-\mystrong{Befehle}}\\ + \Endash \file{README} des \ctanpkgref{nicetext}-Bndels: +% \begin{itquote} + \\\itqtd{m”glichst keine \mystrong{Zeichen} im Dokument\mystrong{quell}code, + \\die nicht auch \mystrong{gedruckt} werden!% + +% \end{itquote} + }\\ + \Endash schliežt \mystrong{"typografische Zeichen"} ein + \Endash Schw„che meiner (damaligen) Terminologie~\endash + \begin{enumerate} + \item \mystrong{weg} mit \mystrong{Backslash}s, + englischen \mystrong{Befehlen} und + geschwungenen \mystrong{Klammern!} %% ngneng 2011/10/03 + \item berhaupt m”glichst wenig Code-\mystrong{Zeichen} + \item Zeichen m”glichst \mystrong{intuitiv} + \item \dots\ am besten so \mystrong{aussehen wie Ergebnis} + \item \Endash \mystrong{"\acronym{ASCII-WYSIWYG}"} + \Endash vs.~\ctanpkgref{unisugar} mit Unicode~\dots + \end{enumerate} +\end{textblock} + +\labelcentersection{typoz-bewert}{%% center/textblock 2011/10/14 + Typografische Zeichen\pardash Bewertung} +\begin{textblock}{640} + \Endash von \ancref{typoz-latex}{\TeX/\LaTeX:} + \begin{enumerate} + \item \mystrong{\TeX-Ligaturen} schon ganz gut! + \item \mystrong{aktive Zeichen}\Dots na ja\Dots + \dqtd{\texcs~} besser als \dqtd{\code{\ }}, + aber~\dots + \item \mystrong{\cs{dots}} schon bel~\dots + (warum nicht \mystrong{Ligatur} \dqtd{\code{...}}?) + \end{enumerate} +\end{textblock} + +\labelsection{typoz-auto}{% + Typografische Zeichen \mystrong{automatisch?}} +\begin{enumerate} + \item \mystrong{automatische} Umwandlung "reiner" Zeichen + in "typografische"?\\ + \item \mystrong{\cs{sfcode`A=999}} schon in diese Richtung + (\TeX book~S.\,76) + \item so ja optional \mystrong{Anfhrungszeichen} in + \mystrong{\meta{Word}} + \item \dots\ \emph{\mystrong{und hier}} \comment{ texblog.fdf } + \Endash simpel, solange nicht \pkg{german}/\pkg{babel}~\dots: + \\\code{\texcs"...\texcs"} expandiert zu + \cs{glqq...}\cs{grqq} oder so + \item eigentlich \emph{nur dies} + (automatisches Einfgen typografischer Zeichen) + \mystrong{"\code{.txt\to.tex}"} + in \ctanpkgref{nicetext}-Beschreibung + (Schw„che der Terminologie) + \item \emph{WARNUNG!} \mystrong{fehlerhafte} Automatisierung + typografischer \mystrong{Anfhrungszeichen} kann zum Verlust + des \ancref{motive-p}{\mystrong{Doktortitels}} + und politischer Žmter fhren! + (\pkg{gutten.sty}) + \vspace{9} + \begin{small} + \answer{\,\zB\ \pkg{german.sty} nicht geladen, + \cs{glqq}, \cs{grqq} nicht definiert, + Fehlermeldungen ignoriert\,} + \end{small} +\end{enumerate} + +\labelsection{typoz-ctan}{% + \mystrong{\file{.txt}\to\file{.tex}} \emph{vor} \pkg{nicetext}} +\Endash auf CTAN: +\begin{enumerate} + \item \ctanpkgref{txt2latex} kleines + \Wikidedisambref{Perl}{Programmiersprache}-Skript, + wandelt gerade \mystrong{\TeX s spezielle Zeichen} + ("\code{\&}" etc.), \mystrong{\dqtd{\code{...}}} + und doppelte/einzelne \mystrong{Anfhrungszeichen} um + (s.~Datei + \mirrorctanfileref{support/txt2latex}{txt2latex}) + \item \ctanpkgref{txt2tex}\pardash Perl, erzeugt tats„chlich + \LaTeX-\mystrong{Formatierung} (Paketnamen "verkehrt"!) + \item \CtanPkgRef{easylatex}{EasyLaTeX} „hnlich oder mehr, + \mystrong{GUI}(?), Ideen aus \mystrong{Wiki\dots-Markup}; + zuletzt 2004 (\file{README} 2009 eher CTAN-Hand) + \item \CtanPkgRef{smiletex}{SmileTeX} Windows \file{.exe}? + +~Werkzeuge fr Grafikeinbindung etc., + zuletzt 2004 +\end{enumerate} +\Endash fr \mystrong{Paketdokumentation} ist mir das zuviel~\dots + + +\teilpage{3}{\mystrong{"Formatierung"} + \vspace{18pt} + \small(Auszeichnung, Wikipedia)\endsmall} +\labelcentersection{wiki-markup}{% + \mystrong{Wikipedia}: Schriftauszeichnung} +\Endash Anregungen wie fr \ancref{typoz-auto}{\pkg{EasyLaTeX}}? + <p> +\begin{allrulestable}{8}{}%%%{610} +% \rowoftwocells{\strong{\mystrong{Wiki}-Code}}{% +% \strong{wie \mystrong{\LaTeX}-Code}} + \begin{tablecoloredrow}{ wiki-markup 1 }{\#eeefff} + \simplecell{\strong{\mystrong{Wiki}-Code}} + \simplecell{\strong{wie \mystrong{LaTeX}-Code}} + \end{tablecoloredrow} + \rowoftwocells{\code{ == šber ==}} {\cs{section{šber}}} + \rowoftwocells{\code{===~Unter~===}}{\cs{subsection{Unter}}} + \rowoftwocells{\code{% + \urlapostr\urlapostr\urlapostr + fett\urlapostr\urlapostr\urlapostr}}{% + \cs{textbf{fett}}} + \rowoftwocells{\code{% + \urlapostr\urlapostr kursiv\urlapostr\urlapostr}}{% + \cs{textit{kursiv}}} + \rowoftwocells{\code{% + \urlapostr\urlapostr\urlapostr\urlapostr\urlapostr + Fett-\urlapostr\urlapostr\urlapostr + Kur\urlapostr\urlapostr}}{% + \cs{textit{\cs{textbf{Fett-}}Kur}}} +\end{allrulestable} + <p> +\Endash \mystrong{Intuition} dahinter vielleicht: +Bedeutungen von \emph{kursiv} und\\ +\emph{doppelten Anfhrungszeichen} verwandt, +\zB\ Buchtitel + +\labelcentersection{wiki-listen}{% + \mystrong{Wikipedia}: Listen und Zitate} +\begin{allrulestable}{8}{}%%%{640} + \begin{tablecoloredrow}{ wiki-markup 2 }{\#eeefff} + \simplecell{\strong{\mystrong{Wiki}-}} + \simplecell{\strong{wie \mystrong{LaTeX}-Code}} +% \simplecell{} + \simplecell{\strong{\mystrong{Wiki}-}} + \simplecell{\strong{wie \mystrong{LaTeX}-Code}} + \end{tablecoloredrow} + \starttr + \simplecell{\code{\ast~Eins\\\ast~Zwei}} + \simplecell{\cs{begin{itemize}}\\ + \cs{item Eins}\\\cs{item Zwei}\\ + \cs{end{itemize}}} +% \simplecell{} +% \simplecell{\code{Er~nur:\\:Ja,~...}} + \simplecell{\code{Er~nur:\\:Ja,~\dots}} + \simplecell{\code{Er~nur:\\\cs{begin{quote}}\\ +% Ja,~...\\\cs{end{quote}}}} +% Ja,~\dots\\\cs{end{quote}}}} + Ja,~\cs{dots}\\\cs{end{quote}}}} + \endtr + \starttr + \simplecell{\code{# Eins\\# Zwei}} + \simplecell{\cs{begin{enumerate}}\\ + \cs{item Eins}\\\cs{item Zwei}\\ + \cs{end{enumerate}}} +% \simplecell{} + \simplecell{\code{Code:\\\enspace\cs{relax}}} + \simplecell{\code{Code:\\\cs{begin{verbatim}}\\ + \cs{relax}\\\cs{end{verbatim}}}}} + \endtr +\end{allrulestable} +\\ +\Endash immerhin recht \mystrong{"minimal"}, +auch halbwegs \mystrong{intuitiv.} +\vspace{9} +(vgl.~\mirrorctanfileref{\ltxcontrib nicetext/doc}{% + wikicheat.pdf}) + +\teilpage{4}{\mystrong{Implementierung}\\"minimalen Markups" + \\"mit \mystrong{\TeX\ allein}"} +\labelsection{implement}{% + \mystrong{Implementierung}smethoden fr\\"minimales Markup" + mit \mystrong{\TeX}} +\begin{theses} + \thesis{(ML)}{\strong{Ligaturen}\pardash\dots + \\(nicht mein Ding, Zukunft ohne \acronym{METAFONT}?)} + \thesis{(MS)}{\strong{"Substitution"} bzw. \strong{"Skript"}, + genauer: \mystrong{Vorverarbeitung} der + \file{.tex}-Datei, + \mystrong{Zeichenkettenersetzung} + (und mehr) + %%% \\ %% rm. 2011/10/15 + per \wikideref{Skriptsprache}{Skript} + wie mit Perl~/ \wikideref{awk}{awk}~/~etc. + bzw. mit den \ancref{typoz-auto}{beschriebenen} + Paketen} + \thesis{(MA)}{\strong{("forschende") aktive Zeichen} + \Endash im \mystrong{"Schriftsatz-Modus"} + (w„hrend \TeX\ den Dokumentquelltext + stckweise in Glyphen und K„stchen umwandelt) + \mystrong{expandieren} aktive Zeichen mehr oder weniger + direkt zu \mystrong{"normalen"} \LaTeX-Befehlen, + \mystrong{"forschende"} aktive Zeichen + "\mystrong{erkunden} dabei ihre \mystrong{Umgebung}"} +\end{theses} + +\labelsection{implement-ms}{Methode (MS)\pardash Anmerkungen~I} + \TeX s %% apostrophe rm. 2011/10/03 + Mechanismus, sog. \mystrong{"begrenzte Parameter"} + von Makros zu erkennen + (\TeX book S.\,203), %% moved komma 2011/10/03 + bietet eine bequeme, aber auch "begrenzte" Methode, + \wikideref{Zeichenkette}{"Zeichenketten"} ("Strings") + zu erkennen\\(und zu \mystrong{ersetzen}). + \begin{enumerate} + \item Vor- und Nachteile entstehen daraus, dass + ein "String" aus "reinem Text" von \TeX\ intern + durch unterschiedliche \mystrong{"Token-Ketten"} "dargestellt" + werden kann. Auch von \mystrong{Grož-/Kleinschreibung} abzusehen + ist nicht ganz einfach. + \item Diese Methode wurde seit l„ngerem von \LaTeX's internem + \mystrong{\cs{@in}}-Makro + [haupts„chlich zur Erkennung von Paket-Optionen] + und vom Paket \mystrong{\ctanpkgref{substr}} + (Harald Harders bzw. Heiko Oberdiek) + angewandt. %%% angewendet. %% 2011/10/03 + \item Gegenw„rtig fužen auch \mystrong{\file{fifinddo.sty}} und + \mystrong{\file{makedoc.sty}} (\ctanpkgref{nicetext}) + auf dieser Methode\pardash gengte bisher \emph{praktisch}. + \end{enumerate} + +\labelsection{implement-ms2}{Anmerkungen zu (MS)~II + \\(\mystrong{String}s und \mystrong{Scripting} mit + \mystrong{\TeX})} +\begin{enumerate} + \item Die Pakete \ctanpkgref{stringstrings} (Steven Segletes), + \ctanpkgref{xstring} (Christian Tellechea, \CtanPkgRef{etex}{e-\TeX}) + und \ctanpkgref{ted} (Manuel P\'egouri\'e-Gonnard) liefern String-Funktionen + "auf h”chstem Niveau". + \item String-Funktionen finden sich auch in + \ctanpkgref{datatool} (Nicola Talbot), + \ctanpkgref{coolstr} (Nick Setzer) und + \ctanpkgref{texapi} (Paul Isambert). + \item Eine "ernsthafte \mystrong{Skriptsprache}" + bietet neben Zeichenersetzung + allgemeiner \mystrong{"Sortierung"} und \mystrong{"Filter".} + Beispielsweise bietet \ctanpkgref{docstrip} + eine \TeX-basierte Skriptsprache, + die aus einer \mystrong{\file{.dtx}-Quelldatei} + die \mystrong{"Kommentare" entfernt} + und den Rest in verschiedene + \mystrong{"kompakte" \TeX-Eingabedateien} "sortiert". +\end{enumerate} + +\labelsection{implement-ma}{"Minimales Markup"\\ + mit \mystrong{"forschenden" aktiven Zeichen} (MA)} +\mystrong{\pkg{wiki.sty}} aus dem \mystrong{\pkg{nicetext}}-Bndel +implementiert die \ancref{wiki-markup}{zuvor} beschriebene +\mystrong{Wikipedia}-Syntax fr \TeX, \dh\ mit \pkg{wiki.sty} +kann man in der \code{{document}}-Umgebung von \LaTeX +\begin{enumerate} + \item statt \mystrong{\cs{...section{...}}} einrahmende + \mystrong{Gleichheitszeichen}-Folgen verwenden, + \item \mystrong{Kursiv}- und \mystrong{Fett}schrift + mit Folgen von + \wikideref{Apostroph}{% + "\mystrong{Apostroph}-Ersatzzeichen"} + (ASCII-Code~39) ein- und abschalten, + \item \mystrong{Listen} und \mystrong{Blockzitate} + aus Menschen- oder Programmiersprache durch + spezielle \mystrong{Zeilenanf„nge} anzeigen. +\end{enumerate} + +\labelsection{implement-ma+}{\pkg{\mystrong{wiki}.sty}s + \mystrong{"forschende"} Zeichen} +\begin{enumerate} + \item \mystrong{Gleichheitszeichen} werden \emph{aktive} Zeichen, + die feststellen, wieviele Gleichheitszeichen unmittelbar + aufeinander folgen. + \item Ebenso funktionieren die \mystrong{Apostroph}-Ersatzzeichen. + Dabei werden \cs{textit} und \cs{textbf} nicht direkt + verwendet, das \mystrong{Umschalten} und die + \mystrong{Kursivkorrektur} + finden \mystrong{ohne} \mystrong{"Gruppenbildung"} statt. + \item Um \mystrong{Listen} und \mystrong{Zitate} am Zeilenanfang + zu erkennen, wird das \mystrong{Zeilenende}-Zeichen + (\code{^^M}) \mystrong{aktiv} und „ndert auch fr kurze Zeit + die Kategorie des Leerzeichens. + So analysiert \code{^^M} den Anfang der n„chsten Zeile + und kann feststellen, ob eine Liste bzw. ein Blockzitat + \mystrong{beginnt}, \mystrong{fortgesetzt} wird, oder + \mystrong{endet}, oder ob der Liste ein + \mystrong{weiterer Punkt} (\cs{item}) hinzugefgt wird. + Entsprechend wird automatisch eine + \cs{begin{...}}- bzw. \cs{end{...}}-Zeile oder das Makro + \mystrong{\cs{item}} eingefgt +\end{enumerate} + +\labelcentersection{implement-mas}{(MA) vs. (MS)} +\begin{textblock}{600} + Die Methoden \mystrong{(MA)} (aktive Zeichen) + und \mystrong{(MS)}\\(Substitution/Skript) + \mystrong{schliežen sich \emph{nicht} gegenseitig aus.} + \\Welche Methode man anwendet, + ist vielleicht "Geschmackssache". + Die \ancref{wiki-markup}{\mystrong{Wikipedia-Abschnittsberschrift}} + (Gleichheitszeichen) wird in + \file{\mystrong{wiki}.sty} nach Methode (MA),\\ + in \file{\mystrong{makedoc}.sty} nach Methode (MS) implementiert. +\end{textblock} + +\teilpage{5}{\mystrong{Dokumentation} von \LaTeX-Paketen + \vspace{18} + \small(mit \mystrong{\pkg{nicetext}})\endsmall} + +% \labelsection{min-markup-doku}{% +% \mystrong{"Minimales Markup"} in der Paket\mystrong{dokumentation} +% mit \pkg{nicetext}} +% +\labelcentersection{nicetext}{Die \mystrong{Pakete} %% center 2011/10/14 + des \mystrong{\pkg{nicetext}}-Bndels} +\begin{textblock}{600} %% aus 640 2011/10/15 + \begin{description} + \ditem{\pkg{wiki.sty}} + % Implementierung von + \mystrong{Wikipedia-Markup} gem„ž (MA) + (\ancref{implement-ma}{\so}) + \ditem{\pkg{niceverb.sty}} + \mystrong{"minimales Markup"}(?) speziell fr \mystrong{Beschreibung} + \\ %% 2011/10/15 + von \mystrong{\LaTeX-Makros} und \LaTeX-\mystrong{Paketen} + % in gewisser Weise auch "typografische Varianten" + % von ASCII-Zeichen, alles gem„ž + (MA) + \ditem{\pkg{makedoc.sty}} + % \mystrong{Skript}sprache fr die + \mystrong{Vorverarbeitung} von + % Dateien, die \mystrong{Code und Kommentar} ("gemischt") enthalten, + \mystrong{Code+Kommentar}-Dateien + % implementiert insbesondere + % \mystrong{Wikipedia-šberschriften}, alles + (MS) + \ditem{\pkg{mdoccorr.cfg}} + \mystrong{Regeln} zum Einfgen \mystrong{typografischer Zeichen} (MS) + \ditem{\pkg{fifinddo.sty}} + % allgemeine \mystrong{Skript}sprache, um \mystrong{aus Text}dateien + % andere \mystrong{Text}dateien zu \mystrong{erzeugen}, + % Grundlage fr \mystrong{\pkg{makedoc.sty}} + \mystrong{\pkg{makedoc.sty}} zugrundeliegende + \mystrong{Skript}sprache + \end{description} +\end{textblock} + +% \labelsection{doku-format}{% +% Paketdokumentation: \mystrong{Formatierung}} +% +\labelsection{wiki}{% + \pkg{\mystrong{wiki}.sty}} +% \begin{textblock}{480} + \begin{enumerate} + \item \ancref{implement-ma}{\mystrong{Schrift}kodierung} + durch \emph{Folgen} von \mystrong{Apostrophen} finde ich + \mystrong{nicht intuitiv genug}, + um andere Paketbearbeiter damit konfrontieren zu wollen, + \small\answer{Publikum (U.\,Z.): \Wikideref{Markdown}!}\endsmall + \item \dots\ sie ist gegenw„rtig auch \mystrong{inkompatibel} mit der + Verwendung "aktiver Apostrophe" in + \pkg{\mystrong{niceverb}.sty}. + \item \ancref{implement-ma}{\mystrong{šberschriften}kodierung} durch + \mystrong{Gleichheitszeichen} verwende ich bisher in der + (MA)-Implementierung von \pkg{\mystrong{makedoc}.sty}. + \item Dass \ancref{implement-ma+}{\mystrong{Einrcken}} eine + \mystrong{verbatim}-Umgebung ausl”st, finde ich + \mystrong{unpraktisch.} + \item Im Quelltext sehe ich lieber \mystrong{"1."}, \mystrong{"2."}, + \dots als "\code{\#}". + \\ + \small\answer{Publikum: \Wikideref{Markdown}!}\endsmall + \item \mystrong{Unnummerierte Listen} mit \texcs* sind + \mystrong{OK}, + habe ich mal fr \mystrong{"Fremddokumentation"} eingesetzt. + \end{enumerate} +% \end{textblock} + + +\teilpage{6}{\pkg{\mystrong{niceverb}.sty}} +\labelsection{niceverb}{% + \pkg{\mystrong{niceverb}.sty}\pardash "Schrift\mystrong{auszeichnung}"} + \wikideref{Definitionsmenge}{"Fortsetzung"} der + \ancref{wiki-markup}{\mystrong{Wikipedia}-Schriftauszeichnung:} +\begin{enumerate} + \item Umrahmung mit \mystrong{einfachen Apostroph}-Ersatzzeichen + (\code{'nicetext'}) %% verb->text 2011/10/08 + wirkt wie \mystrong{\cs{textsf}} + \Endash fr \mystrong{Paketnamen}. + \item \mystrong{einfache Anfhrung}szeichen + wirken wie \mystrong{\cs{texttt}} + \Endash fr \mystrong{Code} + \Endash tats„chlich wirkt \code{\lq\cs{foo}'} + (solange nicht in Makro-Argument) wie + \mystrong{\cs{verb}\code{+\cs{foo}+}} + (\mystrong{Inline-verbatim}). +% \item \mystrong{Vertikalstriche} (\code{|\cs{foo}|}) +% sollen \mystrong{Code} beim \mystrong{šberfliegen} der +% Dokumentation \mystrong{herausstechen} lassen +% ("hier Erl„uterung von \cs{foo}!") +% \Endash \mystrong{Farbhinterlegung}? derzeit +% \mystrong{"K„sten"} wie mit \cs{fbox}: +% \begin{quote} +% \allrulestable{2}{}\starttr +% \simplecell{\cs{foo}} +% \endtr\endallrulestable +% \end{quote} +% % Allerdings achte ich darauf, dass alle dieselbe +% % H”he haben und die Zeilenh”he und -tiefe nicht „ndern +% % (\cs{InlineCmdBox}). +% "Intern" wird zwischen \mystrong{\cs{VerticalCmdBox}} und +% \mystrong{\cs{InlineCmdBox}} +% (erm”glicht zusammenfassende Aufz„hlung von Makros +% in \emph{einem} Absatz) gew„hlt. +\end{enumerate} + \vspace{0} + <p \@align@c> +\begin{allrulestable}{8}{} + \begin{tablecoloredrow}{ wiki-markup 1 }{\#eeefff} + \simplecell{\strong{Code mit \mystrong{niceverb}.sty}} + \simplecell{\strong{wie Code \mystrong{sonst}}} + \end{tablecoloredrow} + \rowoftwocells{\code{'nicetext'}}{\cs{textsf{nicetext}}} + \rowoftwocells{\code{\lq\cs{foo}'}}{\cs{verb+}\cs{foo+}} + \rowoftwocells{\code{\lq README.txt'}}{\cs{texttt{README.txt}}} +\end{allrulestable} + </p> + +\labelcentersection{syntax}{\mystrong{Beschreibung} von \LaTeX-Makros} +\begin{textblock}{640} %% 2011/10/15 + \meta{\bdquo Tippt man} + \begin{verbatim} + \mystrong{% + \texcs\foo\ast[\metavar{opt-arg}]{\metavar{mand-arg}}} + \end{verbatim} + \meta{so erh„lt man~\dots\ldquo} + \Endash so soll die Beschreibung der \mystrong{Syntax} von + \mystrong{\cs{foo}} im \mystrong{\file{.pdf}} aussehen. + \endash %%% <p> + \mystrong{Code} dafr mit \pkg{\mystrong{niceverb}.sty}: + \begin{verbatim} + \mystrong{% + \lq\texcs\foo\ast[\lt opt-arg\gt]{\lt mand-arg\gt}\rq} + \end{verbatim} + % (mittlerweile auch mit \mystrong{Martin Scharrer}s \ctanpkgref{ydoc}, + % abgesehen von den \mystrong{Anfhrung}szeichen}). + \Endash \mystrong{"\acronym{ASCII-WYSIWYG}"} + %% <- mod. 2011/10/03 -> + \\\endash + \cs{langle} \mystrong{"typografisches"} "\code{\lt}", + \\\endash + \cs{rangle} "typografisches" "\code{\gt}". + % Im \mystrong{"Auto-Modus"} kann man die umrahmenden + % \mystrong{Anfhrung}szeichen + % \mystrong{weglassen! (Backslash aktiv)} + \\ + \endash %%% <p> + \mystrong{Code} dafr mit \pkg{\mystrong{doc}.sty} + (aus der \LaTeX-"base"-Distribution): + \begin{verbatim} + \mystrong{% + \texcs|\texcs\foo\ast[|% + \texcs\meta{opt-arg}|]{|% + \texcs\meta{mand-arg}|}|} + \end{verbatim} +\end{textblock} + +\labelsection{vert}{\mystrong{Hervorhebung} von + Makro\mystrong{beschreibungen}} +%% TODO Link weiter fkt. nicht mit Firefox im Internetshop 2011/10/12 +\mystrong{Vertikalstriche} (\code{|\cs{foo}|}) +\begin{itemize} + \item schalten im vorigen Beispiel (\pkg{\mystrong{doc}.sty}) + \endashed{wie es sehr \mystrong{blich} ist} + \mystrong{verbatim}-Modus an/aus, + \dh\ \mystrong{\code{|\cs{foo}|}} krzt + \mystrong{\cs{verb|}\cs{foo|}} ab~\endash + \item sollen mit \pkg{\mystrong{niceverb}.sty} + \mystrong{Code hervorheben} und + beim \mystrong{šberfliegen} der + Dokumentation \mystrong{herausstechen} lassen + (\itqtd{hier~Erl„uterung~von~\cs{foo}!}) +\end{itemize} +\Endash \mystrong{Farbhinterlegung}? derzeit +\mystrong{"K„sten"} wie mit \cs{fbox}, +% \begin{quote} +% \allrulestable{2}{}\starttr +% \simplecell{\cs{foo}} +% \endtr\endallrulestable +% \end{quote} +% Allerdings achte ich darauf, dass alle dieselbe +% H”he haben und die Zeilenh”he und -tiefe nicht „ndern +% (\cs{InlineCmdBox}). +% "Intern" wird zwischen \mystrong{\cs{VerticalCmdBox}} und +% \mystrong{\cs{InlineCmdBox}} +% (erm”glicht zusammenfassende Aufz„hlung von Makros +% in \emph{einem} Absatz) gew„hlt. +intern soll \cs{InlineCmdBox} zusammenfassende Aufz„hlungen von Makros +\emph{in einem Absatz} erm”glichen. \strong{Beispiel}~Code/Ergebnis: +\begin{verbatim} + |\texcs\foo\ast[\lt opt-arg\gt]{\lt mand-arg\gt}| +\end{verbatim} +\begin{quote} + \allrulestable{2}{}\starttr + \simplecell{% + \,\cs{foo\ast[\metavar{opt-arg}]% + {\metavar{mand-arg}}}\,} + \endtr\endallrulestable +\end{quote} + +\labelsection{niceverb-noch}{% + \pkg{\mystrong{niceverb}.sty} \mystrong{noch:}} +\begin{enumerate} + \item \mystrong{"\code{\lt meta\gt}"} erzeugt "\metavar{meta}" + \mystrong{sowohl} innerhalb \mystrong{als auch} + aužerhalb von einfachen Anfhrungszeichen. + \item Im \strong{"Auto-Modus"} werden \LaTeX-Befehle nicht + ausgefhrt, sondern als \mystrong{verbatim}-Text + interpretiert, etwa folgende Sterne und Klammern + als \mystrong{Syntaxbeschreibung} dazu. %% . 2011/10/03 + \item \Endash dient besonders + der \mystrong{"Fremddokumentation"} + (vorhandene \acronym{ASCII}-Paketdokumentation + anderer Autoren ohne Eingriff in \LaTeX-Qualit„t setzen). + \item "\code{\mystrong{\&}}" %% \mystrong 2011/10/08 + ist \mystrong{aktives Zeichen}, welches in + \mystrong{Makroargumenten} Befehlen und + Syntaxbeschreibungen vorangestellt werden kann, + um \mystrong{"nachzuhelfen"}: + \begin{verbatim} + \mystrong{% + \cs{footnote{\texcs&\texcs\foo\ast + [\lt opt-arg\gt]% + {\lt mand-arg\gt}}}} + \end{verbatim} + \item % Natrlich gibt es mit all diesen \mystrong{aktiven Zeichen} + % auch \mystrong{Probleme}, und \mystrong{Auswege} dazu~\dots + \mystrong{aktive Zeichen}~\to\ \mystrong{Probleme}~\dots + \mystrong{Auswege}~\dots +\end{enumerate} + +\labelsection{niceverb-sim}{\mystrong{Žhnliche} Pakete + \mystrong{anderer} Autoren} +% \\\answer{\pkg{ltxdoc.cls} +\begin{enumerate} + \item \pkg{\mystrong{niceverb}.sty} ist wesentlich inspiriert + durch die Dokumentationsmethode \mystrong{Stephan B”ttcher}s + in \CtanPkgRef{lineno}{\mystrong{lineno}.sty}. + \item Žhnliche Funktionalit„t liefert auch + \mystrong{\pkg{ltxguide.cls}} fr die "\LaTeX-Guides". + \item Die \ancref{syntax}{bequeme \mystrong{Syntaxbeschreibung}} + gibt es + ("mittlerweile") auch in \mystrong{Martin Scharrers} + \ctanpkgref{ydoc}. + \item \pkg{\mystrong{niceverb}.sty} ist ebenso wie + \pkg{\mystrong{ydoc}} als \strong{Alternative} + zu \pkg{\mystrong{doc}.sty} konzipiert. + \pkg{\mystrong{ydoc}} liefert dabei einen „hnlichen + \mystrong{Funktionsumfang} wie \pkg{\mystrong{doc}.sty}, + w„hrend \emph{ich} (fr meine Zwecke) + einen solchen Funktionsumfang berhaupt + \mystrong{nicht haben will.} + \Endash \mystrong{Allerdings} habe ich einzelne + \pkg{\mystrong{doc}.sty}-Funktionen in + \pkg{\mystrong{makedoc}.sty} und in + \pkg{\mystrong{readprov}.sty} + (\ctanpkgref{fileinfo}-Bndel). %% "Bndel" 2011/10/03 +\end{enumerate} + + +\teilpage{7}{"Kommentar"} +\labelsection{kommentar}{% + \mystrong{Code} und \mystrong{"Kommentar"}} +% "Perversion der \mystrong{Kommentarzeichen}"} +\small\answer{vgl. \Wikideref{Schuld und Shne}, + \Wikideref{Pride and Prejudice}, + \Wikideref{Gesetzeskommentar} zum + \Wikideref{Code civil}}\endsmall + <p> +\TeX\ bietet wie alle "normalen" Programmiersprachen die M”glichkeit, +\mystrong{in Quelldateien Text} einzufgen, der \mystrong{nicht} +vom Compiler bzw. Interpreter (als \mystrong{Befehle/Daten}) +verarbeitet werden soll, sondern an (menschliche) \mystrong{Leser} +gerichtet ist\pardash hier \mystrong{"Kommentar"}. +\\ %% 2011/10/15 +Einzelne \mystrong{Zwecke} +(der \wikideref{Kommentar (Programmierung)}{Wikipedia-Artikel} + weiž noch mehr~\dots): + +\labelcentersection{kommentarzw}{\mystrong{Zwecke} des Kommentars} +\begin{textblock}{576} %% 2011/10/15 + \begin{enumerate} + \item \strong{Erl„uterungen} fr \strong{Programmierer}, + um die \strong{Wartung} des Codes zu erleichtern~\endash + \item gerade im Falle von \mystrong{\TeX}- und \LaTeX-Paketen + (alter~Zeiten) %%% enth„lt/enthielt der "Kommentar" + an \strong{Nutzer} gerichtete \mystrong{"Erl„uterungen"} + im~Sinne einer \strong{Gebrauchsanleitung}\\ + (manchmal der einzig verfgbaren). %% Genitiv 2011/10/15 + \item In etwa gleichrangig %%% ist die + Bedeutung des \strong{"Auskommentierens"} von Code, + \dh %%% der + \mystrong{"Kommentar"}~enth„lt %%% in diesem Fall + eigentlich \mystrong{Befehle/Daten} fr %%% den + Compiler/Interpreter, die der \mystrong{Programmierer} + (oder~auch~Dokument\mystrong{autor}) %%% m”chte diesen + \mystrong{"aufbewahren"} m”chte statt v”llig zu + \mystrong{l”schen} %% <- 2011/10/15 -> +% \mystrong{Code nicht} ganz und gar \mystrong{l”schen}, +% sondern ihn \mystrong{"aufbewahren"~\dots} + \end{enumerate} +\end{textblock} + +\labelsection{kommentarzwa}{Zwecke des \mystrong{"Auskommentierens"}} +\begin{enumerate-a} + \item als eine Art \strong{"Versionskontrolle"}: + man \mystrong{beh„lt sich vor}, den~Code~sp„ter wieder + "an den Compiler/Interpreter zu richten" + (durch einfache Entfernung der + \Wikideref{Kommentarzeichen} bzw. + \mystrong{"Kommentarbegrenzern"}), + \zB\ zum "\Wikideref{Debugging}" + oder~fr~bestimmte Adressaten~\endash + \item als "Erinnerung" and frhere \mystrong{"Fehlversuche"}, + die auf frhere "šberlegungen" hinweist und so wieder + der \strong{Wartung} durch den Programmierer/Autor dient. +\end{enumerate-a} +Ich nehme an, bei vielen ist in der t„glichen Praxis mit \TeX/\LaTeX +das "Auskommentieren" die \strong{haupts„chliche} Funktion des +\mystrong{"Kommentars"}~\dots + + +\teilpage{8}{Methoden Kommentar \mystrong{"auszublenden"}} +\labelsection{kommentar-ignor}{% + \mystrong{Feinheiten} des \mystrong{"Ausblendens"}\\von Kommentar} +\begin{enumerate} + \item Enth„lt eine \mystrong{\TeX/\LaTeX-Paketdatei} + die \TeX-Anweisungen und gleichzeitig die \strong{Gebrauchsanweisung}, + so umfasst sie typischerweise wesentlich mehr + \mystrong{Kommentarzeilen} als \mystrong{Anweisungszeilen}. + \item Auch \strong{"Programmierertext"}, der die Implementierung + sorgf„ltig diskutiert, kann im Verh„ltnis zum Code sehr + umfangreich sein (\zB\ \pkg{\file{lineno}.sty}). + \item \mystrong{"Vor langer Zeit"} forderte das \strong{Einlesen} + von \TeX-Makrodateien aufgrund der "\mystrong{Hardware}-Umst„nde" + bereits so viel Zeit, dass es \mystrong{sinnvoll} war, + das Einlesen von Kommentarzeilen v”llig zu \strong{vermeiden}~\dots +\end{enumerate} + +\labelsection{kommentar-ignor-mehr}{% + \mystrong{"Ausblenden"} von Kommentar\pardash\mystrong{Forts.}~\dots} +\begin{enumerate} + \item Ein \mystrong{"primitiver" Ansatz} dazu war, + die \strong{"Gebrauchsanleitung"}\\ + "am Ende der Datei" \mystrong{nach} dem + \mystrong{\cs{endinput}}-Befehl der Datei + anzubringen. Die Datei enthielt dann gerne am + \mystrong{Anfang} den Hinweis auf die Gebrauchsanleitung + der Datei an ihrem \mystrong{Ende}.\\ + Der \cs{endinput}-Befehl bricht die Verarbeitung der Datei ab, + so dass die Zeilen darunter tats„chlich + keine Verarbeitungszeit mehr beanspruchen. + \item \mystrong{Andererseits} sollte fr die \strong{Wartung} + der Kommentar eben doch in der \mystrong{N„he} der + betreffenden Code-Zeilen angebracht werden~\dots +\end{enumerate} + +\labelsection{docstrip}{% + \pkg{docstrip} \mystrong{blendet} noch \mystrong{effizienter} aus:} + +\begin{enumerate} + \item Mit \mystrong{\LaTeX2} hatten \mystrong{Paket-Dateien} + die Endung \mystrong{"\file{.sty}".}\\ + Sie \mystrong{enthielten} noch \mystrong{"Kommentar"} wie oben. + \item Mit \mystrong{\LaTeX2e} wurden \pkg{\mystrong{doc}.sty} und + \pkg{\mystrong{docstrip}.tex} eingefhrt. + Dateien, die \mystrong{Code} und \mystrong{Kommentar + "gemischt"} enthielten, bekamen nun die Endung + \mystrong{"\file{.doc}"} oder \mystrong{"\file{.dtx}".} + \pkg{docstrip} wandelt solche Dateien in Dateien mit Endungen + haupts„chlich wie \mystrong{"\code{.sty}"} oder + \mystrong{"\code{.cls}"} um; + diese sollen \mystrong{keinen Kommentar} mehr enthalten + (bis auf \mystrong{Lizenz}-Hinweise) und sind diejenigen, + die~im~\TeX-Lauf tats„chlich \mystrong{eingelesen} werden, + \mystrong{aužer\Dots} +\end{enumerate} + +\labelsection{kommentarzch}{Kommentar\mystrong{zeichen}} +\begin{enumerate} + \item Kommentar\mystrong{zeilen} sind mit \TeX/\LaTeX\ gew”hnlich + durch das Kommentar\mystrong{zeichen} ("\code{\%}") + am Anfang gekennzeichnet. + \item (Nach \mystrong{\cs{endinput}} wird Code auch + \mystrong{ohne} Kommentarzeichen ignoriert; + ebenso kann man im Prinzip "Kommentar" \metavar{kommentar} mit + \mystrong{"\cs{iffalse}\metavar{kommentar}\cs{fi}"} + einrahmen.) + \item Diese (ganz oben) \mystrong{Zeilen mit Kommentarzeichen} + werden dann von \mystrong{\pkg{docstrip}} entfernt~\dots + \dh, diese Kommentarzeichen dienen gar \mystrong{nicht} + mehr dem Zweck, die Zeilen beim Einlesen der Paketdatei + als "zu ignorieren" zu kennzeichnen, vielmehr sind sie gar + nicht mehr da. \mystrong{Wieso dann noch Kommentarzeichen?} + \item \dots\ tats„chlich: Mit \mystrong{Paul Isambert}s + \CtanPkgRef{codedoc}{CodeDoc} ist der "Kommentar" + normaler, von \mystrong{Listing-Umgebungen} + unterbrochener Text (ohne "\code{\%}" links). + Letztere schreiben den Code in die \mystrong{kompakte Paketdatei}. +\end{enumerate} + +\labelsection{ohne-docstrip}{% + \emph{Ohne} \pkg{docstrip} \mystrong{heute}} +(\autref{docstrip} fortsetzend:)\Dots +\emph{aber} %% emph 2011/10/08 +es gibt die \mystrong{\file{.sty}-Pakete}, +die \mystrong{\emph{mit} Kommentarzeilen} +(ohne \pkg{docstrip} einzuschalten) eingelesen werden, \mystrong{noch +heute!} +\begin{itemize} + \item verschiedene in \acronym{TDS}-\file{ltxmisc/}, darunter + einige geniale, fr manche unverzichtbare Pakete von + \httpref{ctan.org/author/id/arseneau}{\mystrong{% + Donald Arseneau}} (ich sehe gerade \ctanpkgref{framed}~\dots) + \item \mystrong{Stephan B”ttcher}s \CtanPkgRef{lineno}{lineno.sty} + (Zeilennummerierung besonders fr + \mystrong{kritische Editionen} und \mystrong{Einreichungen}) + enth„lt gewaltig viel Kommentar\pardash von mir bernommen, + nie geh”rt, dass das Laden zu lange dauere~\dots + \item alle (? \cs{endinput}) meine + \httpref{ctan.org/author/id/lueck}{\mystrong{eigenen}} + Pakete (was natrlich einfach eine Frechheit sein kann~\dots) +\end{itemize} + + +\teilpage{9}{\mystrong{"Darstellung"} des Kommentars} +% \mystrong{Vorverarbeitung}\\von Code+Kommentar-Dateien} +% Verarbeitung als Dokumentation +\labelsection{doku-vor}{"Darstellung" des Kommentars + \Endash \mystrong{"Vorzeit"}} +\begin{enumerate} + \item \emph{Vor} \pkg{\mystrong{doc}.sty} + war der \mystrong{Kommentar} in \mystrong{Paketdateien} + dazu da, mit einem \mystrong{Texteditor} gelesen oder + im \mystrong{"Text"}-Modus + (als "Listing", im Gegensatz zum fr \TeX\ + erforderlichen \mystrong{"Grafik"}-Modus) + ausge\mystrong{druckt} zu werden. + \item Kommentar entsprechend + "reiner \mystrong{\acronym{ASCII}}-Text", + weder "typografische Zeichen" noch Auszeichnung. +\end{enumerate} + +\labelsection{doku-doc}{% + Darstellung des Kommentars mit \pkg{\mystrong{doc}.sty}} +\begin{enumerate} + \item Erst mit \pkg{\mystrong{doc}.sty} wurde + die heute von \mystrong{\LaTeX-Paketen} auf dem + \mystrong{CTAN} gewohnte \LaTeX-Druck\mystrong{qualit„t} + des \mystrong{Kommentars} m”glich, + wobei man den \mystrong{Code} als Imitation + der Texteditor- und Listing-Druckqualit„t auszeichnet. + \mystrong{Entscheidend} ist dabei der + \mystrong{"\Wikideref{Don't repeat yourself}"}-Grundsatz + \Endash die \mystrong{Code} und + \mystrong{Kommentar mischende} Quelldatei wird fr + den Qualit„tsausdruck nicht von Hand berarbeitet, + sondern "automatisch" mit dem \mystrong{\cs{DocInput}}-Befehl + verarbeitet. + \item (Wie war das eigentlich mit \mystrong{\acronym{WEB}?}) + \item Dazu kann man allerdings (oder konnte bisher) + \mystrong{nicht} (den frheren) + \mystrong{"\acronym{ASCII}"-Kommentar} verwenden, + der Kommentar muss vielmehr als "\LaTeX-Input" + mit \mystrong{typografischen Zeichen} und + \LaTeX-\mystrong{Markup} + in der \mystrong{Code+Kommentar}-Quelldatei stehen + (vgl. \pkg{ltxdoc}-Dokumentation zu \code{{oldcomments}}). +\end{enumerate} + +\labelsection{docinput}{% + \mystrong{\cs{DocInput}}\cb{\metavar{c+k}}}} +\dots~(\mystrong{\pkg{doc}}, \ctanpkgref{gmdoc},~\dots) +verarbeitet die \mystrong{Code/Kommentar mischende} Datei +\mystrong{\metavar{c+k}} so\pardash sie enthalte als Beispiel +% dass die nette \cs{rmfamily}/\cs{ttfamily}-Mischung frs \file{.pdf} +% entsteht +\begin{verbatim} + \% \cs{textit{dolce far niente:}} + \% \ \ \ \cs{begin{macrocode}} + \ \ \cs{relax} + \% \ \ \ \cs{end{macrocode}} + \% -- genug, +\end{verbatim} +\cs{DocInput{\metavar{c+k}}} fhrt \mystrong{\cs{MakePercentIgnore}} +vor \cs{input{\metavar{c+k}}} aus, Effekt wie +\begin{verbatim} %% 2011/10/03 exakt "%" weggelassen + \ \cs{textit{dolce far niente:}} + \ \ \ \ \cs{begin{macrocode}} + \ \ \cs{relax} + \ \ \ \ \cs{end{macrocode}} + \ -- genug, +\end{verbatim} + +\labelsection{docinput2}{(\cs{DocInput})} +(šbertrag:) +\begin{verbatim} + \ \cs{textit{dolce far niente:}} + \ \ \ \ \cs{begin{macrocode}} + \ \ \cs{relax} + \ \ \ \ \cs{end{macrocode}} + \ -- genug, +\end{verbatim} +\dots~so kommt der \mystrong{Code} in eine +\mystrong{Listing}-Umgebung, der \mystrong{Rest} wird +\mystrong{"normal"} in \LaTeX-Qualit„t gesetzt. + <p> +\mystrong{"Minimales Markup"} wrde bedeuten, +dass man \mystrong{dasselbe} Ergebnis~\dots + +\labelcentersection{docinput-min}{%% center 2011/10/14 + \mystrong{"Minimale" Kennzeichnung} des Codes}} +\begin{textblock}{420} + \dots~statt mit + \begin{verbatim} + \% \cs{textit{dolce far niente:}} + \% \ \ \ \cs{begin{macrocode}} + \ \ \cs{relax} + \% \ \ \ \cs{end{macrocode}} + \% -- genug, + \end{verbatim} + schon mit + \begin{verbatim} + \% \cs{textit{dolce far niente:}} + \ \ \cs{relax} + \% -- genug, + \end{verbatim} + erh„lt. %%% bekommt. %% 2011/10/14 + Dies erreichen~\dots +\end{textblock} + +\labelsection{docinput-alt}{% + \mystrong{"smartes"} \cs{DocInput}} +%% Zeilenumbrche/\Endash 2011/10/08: +\Endash \mystrong{Algorithmus} klar:\\ +\quad \Endash nach Zeile +\emph{mit} "\code{\%}" vor \emph{"ohne"} %% war verkehrtrum 2011/10/03 +"\cs{begin{macrocode}}",\\ +\quad \Endash im umgekehrten Fall "\cs{end{macrocode}}" +einfgen~\endash +\begin{enumerate} + \item \ctanpkgref{gmdoc} (\mystrong{Grzegorz Murzinowski}; + \myalert{ich meine mich zu erinnern:}\\ + wie bei \pkg{wiki.sty} sind die + \mystrong{Zeilenendzeichen aktiv}\\ + und schauen sich den n„chsten Zeilenanfang an) + \item \ctanpkgref{lineno} (\mystrong{Stephan B”ttcher}) + \Endash eine \acronym{UNIX}-Shell wendet ein + in der Datei \pkg{lineno.sty} enthaltenes + \Wikideref{awk}-Skript auf \file{lineno.sty} + an, erzeugt Dokumentationsdatei \file{lineno.tex}~\dots + \item \pkg{\mystrong{makedoc}.sty} (selbst) bietet statt awk +% zusammen mit \pkg{\mystrong{fifinddo}.sty} + eine Art \TeX-basierte Skriptsprache und unterschiedliche + \mystrong{Zeilenparser},\\ + um jeweils eine Dokumentationsdatei zu erzeugen. +% Auf Kommentarzeilen werden in +% \mystrong{\file{mdoccorr.cfg}} festgelegte +% Zeichenkettenersetzungen angewendet, um +% \mystrong{typografische Zeichen} einzufgen +% ("\file{.txt}\to\file{.tex}"). +\end{enumerate} + +\labelcentersection{kommentarz-kombi}{% + \mystrong{"Interpretationen"} von Kommentarzeichen} + +\begin{textblock}{560} +\mystrong{echter} Kommentar vs. \mystrong{"Auskommentieren"}, +ich: %%% "\code{\%\%}" vs. "\code{\%}") + \begin{verbatim} + \cs{typeout{ok}} \%\% Code + \%\ \cs{typeout{ko}} \%\% auskommentierter Code + \%\% \lt- falls ko \%\% Kommentar + \%\% \% \lt- falls KO \%\% auskommentierter Kommentar + \%\% \%\% \lt- 2011/10/01 \%\% Kommentar zum Kommentar + \end{verbatim} + \mystrong{ergibt} mit \pkg{makedoc} und von mir bevorzugten + Einstellungen: + \begin{quote} + \ \ \cs{typeout{ok} \%\% Code}\\ + \%\ \cs{typeout{ko} \%\% auskommentierter Code}\\ + \gets falls ko + \end{quote} + \Endash Parsermakros %% c -> k 2011/10/14 + fr verschiedene \mystrong{"Stile"}, + etwa Pakete \mystrong{anderer} Autoren, die + \mystrong{keine "\code{\%\%}"} verwenden +\end{textblock} + +% \labelcentersection{mdoccorr}{\pkg{mdoccorr.cfg}} +% Textersetzungen nur in Kommentarzeilen +% \vspace{9} +% (s.~Datei +% \mirrorctanfileref{\ltxcontrib nicetext/use}{mdoccorr.cfg}) + +\labelcentersection{makedoc-input}{% + \mystrong{\pkg{makedoc}}s %% \mystrong 2011/10/08 + \cs{DocInput{\metavar{job}}}} +\begin{textblock}{600} + %% <- 2011/10/07 -> + Genaue Entsprechung zu \cs{DocInput} fehlt derzeit.\\ + "\metavar{job}" ergibt sich von selbst, oder~\dots\\ + Verschiedene \mystrong{Skriptbefehle} + untersttzen unterschiedliche \mystrong{Dokumentationsstile} + (šbersicht: %% 2011/10/07 + \mirrorctanfileref{\ltxcontrib nicetext/doc}{% + mdoccheat.pdf}).\\ + <p> + c+k-Dateien werden mit \pkg{makedoc} \emph{nicht direkt} eingelesen. + \\Die Hauptdatei + \begin{enumerate} + \item \mystrong{erzeugt} aus (je)der c+k-Datei eine + \mystrong{Dokumentationsversion} + (\mystrong{"\file{.txt}\to\file{.tex}"}, + Einfgen von "\mystrong{Listing}-Wrappern", + \mystrong{Zeichenkettenersetzungen} + fr \mystrong{Gliederung} und \mystrong{typografische Zeichen}, + dazu Datei + \mirrorctanfileref{\ltxcontrib nicetext/use}{% + mdoccorr.cfg}/\localfilenewref{% + mdoccorr.pdf}{\file{pdf}}, %% 2011/10/09 + \item liest und \mystrong{setzt} die erzeugte Datei dann als + \mystrong{\file{.tex}.} + \end{enumerate} + %% 2011/10/06: + \mystrong{Genauer}~\dots +\end{textblock} + +\labelsection{makedoc-lauf}{Dokumentationslauf} %% 2011/10/06 +[Genauer]~\dots~\mystrong{kompiliere} %% 2011/10/07 +ich typischerweise die Dokumentation +\begin{enumerate} + \item \file{\metavar{job}.\mystrong{pdf}} von + \file{\metavar{job}.\mystrong{sty}} aus + \file{\metavar{job}.\mystrong{tex}}. + \item \file{\metavar{job}.\mystrong{tex}} + enth„lt \pkg{makedoc}-Befehle + zur Erzeugung von + \file{\metavar{job}.\mystrong{doc}} aus + \file{\metavar{job}.\mystrong{sty}} und zum Einlesen von + \file{\metavar{job}.\mystrong{doc}}, + \item kann noch Dokumentation von + \mystrong{Erg„nzungspaketen} + \metavar{add} via + \file{\metavar{add}.\mystrong{doc}} einbinden. + \item \file{\metavar{job}\mystrong{.doc}}/\file{\metavar{add}\mystrong{.doc}} + k”nnen\\(nach \cs{RequirePackage{makedoc}})\\ + ganz zu Anfang des \TeX-Laufs innerhalb einer Gruppe erzeugt + und dann in der \code{{document}}-Umgebung mit + \mystrong{\cs{input}} eingelesen werden. +\end{enumerate} + +% \labelsection{txt2tex-doku}{% +% Paketdokumentation~\dots} +% % \section{Markup in der \mystrong{Paketdokumentation}} +% \dots\ betrifft Dateien, die gleichzeitig Makrocode und +% dessen Kommentierung enthalten: +% \TODO: sp„ter oder anders? +% \begin{enumerate} +% \item verbatim im Kommentar +% \item Hervorhebung beschriebener Makros +% \item "Metavariablen" im Kommentar +% \item Listing\pardash Kennzeichnung von Code/Kommentar +% \item \cs{textsf} fr Paketnamen +% \item "minimal": Pakete anderer Autoren +% \item \cs{DoNotIndex} +% \end{enumerate} +% \\ +% [\ctanpkgref{xdoc}, \ctanpkgref{ydoc}, +% \ctanpkgref{DoX}, \ctanpkgref{pauldoc}] + +\labelsection{erfolg}{Erfolge/Scheitern} +% \begin{textblock}{360} + \begin{enumerate} + \item Ich kann damit \mystrong{flott} + Pakete schreiben/dokumentieren\\ + (auch mit \mystrong{Dokumentation} als + \mystrong{"\Wikideref{Roadmap}"} beginnen). + \\ %%% \item %% 2011/10/06 + \emph{Nach} Einrichten des + Dokumentations-\mystrong{Workflows}\\ + l„uft mittlerweile meist alles \mystrong{"wie am Schnrchen".} + \item %% 2011/10/06 + \mystrong{Einrichten} eines solchen Workflows + war aufw„ndig,\\dafr jetzt \mystrong{Vorlagen} + sowie \mystrong{Bash}- und + \mystrong{\pkg{fifinddo}-Skripts}. + \item \mystrong{Fehler} wegen Umwegs ber + \mystrong{erzeugte} Dateien\\ + (mehr Zeilen als in Quelldatei) + manchmal \mystrong{schwer verst„ndlich}~\dots + \item %% 2011/10/06 + In der \mystrong{Praxis} kann ich (derzeit) + doch \mystrong{\LaTeX-Befehle}\\ + (Backslashs, \dots, vgl.~\ancref{minimal-mehr}{Vorgabe}) + \mystrong{nicht} ganz \mystrong{vermeiden},\\ + wohl vor allem bei \mystrong{Verweisen}~\dots + \item Dennoch gelungene \mystrong{"Fremddokumentationen":}\\ + \mirrorctanfileref{\ltxcontrib nicetext/demo}{arseneau.pdf}, + \mirrorctanfileref{\ltxcontrib nicetext/demo}{substr.pdf}. + \end{enumerate} +% \end{textblock} + +\labelcentersection{catcodes}{% + Vorteile und Problematik der + \mystrong{Zeichenkategorien} (\cs{catcode...})% +} +\begin{textblock}{560} + \begin{enumerate} + \item fr \mystrong{Dokumentation}svorverarbeitung + Einlesen als \mystrong{"reinen Text"} + (\cs{dospecials} \mystrong{"\code{other}"}) + \item \mystrong{\cs{PatternCodes}} fr Ersetzungsregeln + anzupassen + \item \pkg{\mystrong{blog}.sty} (\ctanpkgref{morehype}-Bndel) + nutzt dagegen "minimale" \mystrong{\TeX-Syntax}, + \mystrong{expandiert} Makros zu \mystrong{\HTML}-Code + (Hauptdatei "\file{makehtml.tex}" \oae\ + wandelt \metavar{job}\mystrong{\file{.tex}} + zeilenweise + in \metavar{job}\mystrong{\file{.html}} um). + \end{enumerate} +\end{textblock} + +\teilpage{10}{\mystrong{HTML} erzeugen} +\labelcentersection{html-statt-pdf}{% +% Notizen in reinem Text~/ \HTML~/ \PDF} + \mystrong{Nutzen} von \HTML\ (vs.~\PDF)} +\begin{textblock}{520} %% 560 -> 520 2011/10/14 + \begin{enumerate} + \item \mystrong{Internetauftritt/CMS} + \item "Elektronischer \mystrong{Zettelkasten}" + \begin{enumerate-a} + \item Querverweise + \item gegliederte/kommentierte \mystrong{Link-Sammlungen} + \item Hervorhebung von \mystrong{Stichw”rtern} + in Texten aus anderen Formaten +% (Xpad/Tomboy) + %% <- unterer Link funktioniert nicht mehr 2011/10/03; + %% OK mit </li> in allen \item -> + (\httpref{mterry.name/xpad}{Xpad}/\Wikidedisambref{Tomboy}{Software}) + %% <- Software 2011/10/04 + \end{enumerate-a} + \item besserer \mystrong{Lesefluss ohne Seiten}umbrche,\\ + ohne problematische \mystrong{Zeilen}umbrche + \item \mystrong{keine Arbeit mit Umbrchen}\\(aužer gedankliche Gliederung) + \item \mystrong{Bildschirmfl„che} voll nutzen + \end{enumerate} +\end{textblock} +\labelsection{html-alt}{% + \mystrong{HTML}-Erzeugung\pardash \mystrong{Alternativen}} +\begin{itemize} + \item HTML-Editoren, CMSe?; Formeln? keine Ahnung, \myalert{egal} + \item \strong{\CtanPkgRef{tex4ht}{TeX4th}} + (Eitan Gurari\dagger; + \meta{\wikideref{TeX4ht}{Wikipedia}} sehr informativ) + \Endash \wikideref{TeX4ht}{\mystrong{verarbeitet + \file{.dvi}}}, kommt insofern (wohl) mit allen Paketen/Makros + zurecht, ohne sie einzeln zu behandeln + \Endash damit \mystrong{Webseiten} pflegen\myalert{?} + \item diverse \strong{Syntax-Wandler} wie + \Wikideref{LaTeX2html} (Perl), \urlref{hevea.inria.fr}, + \httpref{evalwhen.com/tex2page}{\TeX2page}, + %% <- \ctanpkgref{tex2page}: not on CTAN + \CtanPkgRef{tth}{TtH} + (\Wikidedisambref{C}{Programmiersprache}; + \httpref{hutchinson.belmont.ma.us/tth/}{Home:} Formeln!); + vgl.~\urlref{tug.org/interest.html\#web}%%%~\TODO + \item \pkg{\strong{blog}.sty} + (\ctanpkgref{morehype}-Bndel) %% "Bndel" 2011/10/03 + \Endash expandiert Makros zu HTML; + \mystrong{\LaTeX}-Makros \mystrong{umdefiniert}, + \mystrong{neue} Makros fr bestimmte + \mystrong{\HTML-Strukturen}, \zB \pkg{\mystrong{lnavicol}.sty} +\end{itemize} + +\labelcentersection{html-und-pdf}{% + \HTML\ und \PDF\ aus \mystrong{selber Quelle}?} +%% ausgebaut 2011/10/06: +\begin{textblock}{540} + \begin{enumerate} + \item \cs{labelsection} etc.\pardash \mystrong{"\pkg{html\TeX}"}\\ + (\mystrong{\HTML} regt zu Makros an, die \mystrong{auch} fr + \mystrong{\PDF}-Erzeugung interessant w„ren,\\ + angefangen mit logischer Auszeichnung wie + \code{\lt code\gt}/\cs{code}, + \code{\lt strong\gt}/\cs{strong}.) + % \vspace{9} + \item \pkg{\mystrong{texlinks}.sty} + (\ctanpkgref{morehype}-Bndel)\\ + bietet \mystrong{Beispiele} fr \mystrong{Makros}, + die \mystrong{gleichermažen} + \begin{itemize} + \item fr \mystrong{\pkg{hyperref}/\PDF} + \item wie fr \mystrong{\HTML}-Erzeugung mit + \pkg{\mystrong{blog}.sty} + \end{itemize} + geeignet sind + (fužen auf wenigen + "\Wikideref{Pivot}/\Wikideref{Angelpunkt}"-Makros + wie etwa \cs{href},\\nur ein solches fr + \pkg{hyperref} vs. \pkg{blog} unterschiedlich zu definieren). + \end{enumerate} +\end{textblock} + +\labelcentersection{blog-probleme}{% + Was (zur Zeit) \emph{nicht} geht} %% emph 2011/10/08 +\begin{textblock}{560} + (weil Makros \mystrong{nur expandiert} werden, %% 2011/10/06 + vgl.~\Wikideref{Funktionale Programmierung}): + Z„hler, optionale Argumente, \ast-Varianten, \cs{unskip}, \cs{verb}; + \cs{begin} ”ffnet keine Gruppe fr lokale Einstellungen, + solche k”nnen ohnehin nicht vorgenommen werden. + ("Was man an \TeX\ hat.") + \Endash Mathe: Brche/Wurzeln? vgl. dazu + \httpref{hutchinson.belmont.ma.us/tth/}{TtH}. + \vspace{9} + \mystrong{Ausweg} irgendwann: besondere Behandlung + von Zeilen, die bestimmte einzelne Makros enthalten, + wie etwa + \cs{EXECUTE{\metavar{einstellungen}}}, + \cs{begin}, \cs{end}. + \vspace{9} + Wandlung \mystrong{zeilenweise} erschwert auch Verteilen + von \mystrong{Makroargumenten ber mehrere Zeilen} + ("Klammer rechtzeitig ”ffnen"). + Knftige Alternativen w„ren \ctanpkgref{catchfile} + oder "bis zur n„chsten leeren Zeile am Stck" einlesen. +\end{textblock} + + +\labelcentersection{schluss}{Dank} %% schwarz 2011/10/14 +%% gekrzt 2011/10/05: +% \labelcentersection{schluss}{Schluss} +% Dieser Vortrag war fr mich eine \mystrong{Prfung}, +% \\die ich hoffentlich mit \mystrong{"Auszeichnung"} bestanden habe! +% \\("Markup") +% \vspace{42} +% \cheading2{Dank} +\begin{textblock}{600} + \begin{itemize} + \item \pkg{\mystrong{blog}.sty} wurde (2010) + mittelbar/teilweise durch die + \wikideref{Deutsche Forschungsgemeinschaft}{DFG} + untersttzt + \item den \mystrong{Einstieg} in \mystrong{\HTML} + verdanke ich in erster Linie meinem Bruder, + Rainer Lck (\urlref{www.webdesign-bu.de}) + \item frs \mystrong{Zuh”ren} \answer{Zuschauen} + \end{itemize} +und \strong{nachtr„glich:} + \begin{itemize} + \item an \mystrong{Uwe Ziegenhagen} (\ua) fr Hinweis auf\\ + \Wikideref{Markdown} und + \httpref{johnmacfarlane.net/pandoc}{pandoc}, + \item an \mystrong{Bernd Raichle} fr Hinweis auf + \mystrong{Kees van der Laan}s (NTG) Arbeiten ber + "minimales Markup", + \item "\mystrong{technischen} Helfern" %% <- 2011/10/08 -> + (Kabel/% + \httpref{www.x.org/wiki/Projects/XRandR}{\code{xrandr}})! + \end{itemize} +\end{textblock} + +% \nextcenterscreenpage{} +% \labelsection{}{% +% \section{} +\screenbottom{START} +\finish + diff --git a/Master/texmf-dist/source/latex/fifinddo-info/expose.tex b/Master/texmf-dist/source/latex/fifinddo-info/expose.tex new file mode 100644 index 00000000000..c5e00851381 --- /dev/null +++ b/Master/texmf-dist/source/latex/fifinddo-info/expose.tex @@ -0,0 +1,94 @@ +\def\exposedate{2011/09/04} +\ProvidesFile{expose.tex}[\exposedate] +\documentclass[a4paper,11pt]{article} +\usepackage{german} +\newcommand*{\DQ}[1]{"`#1"'} +\usepackage{parskip} +\parskip=.84\parskip +\usepackage[atari]{umlaute} +\input{makedoc.cfg} +\providecommand{\pkg}{\pkgnamefmt} +\providecommand{\code}{\texttt} +\title{Paketdokumentation und Webseitenpflege\\ + mit (\pkg{niceverb.sty} und) \pkg{fifinddo.sty}} +\author{\acro{DANTE}-Herbsttagung 2011\\Uwe Lck} +\date{Entwurf \exposedate} +\begin{document} +\maketitle +\thispagestyle{empty} + +Das 'nicetext'-Bndel\urlpkgfoot{nicetext} +versucht sich an +\wikideref{Syntaktischer Zucker}{\strong{% + \DQ{syntaktischem Zucker}}:} +Schriftsatz in \TeX-Qualit„t +bei m”glichst wenig \TeX-artiger Auszeichnung. +% Grunds„tzlich sehe ich dafr zwei Methoden: +Das kann durch +(MS)~Zeichenkettenersetzung %%%, +oder (auch) durch +(MA)~aktive Zeichen +(die einige Fallunterscheidungen ausfhren) %%%. +% Sie schliežen sich keineswegs gegenseitig aus. +% Die praktische Bedeutung des Bndels liegt fr mich zur Zeit +% ganz in der Paketdokumentation. +erreicht werden. + +Die \DQ{herrschende Lehre} fr die \strong{Dokumentation} von \LaTeX-Paketen +ist die \DQ{\file{.dtx}}-Methode, die z.\,B. eine spezielle +Markierung des Paketcodes erfordert. +'makedoc.sty' aus dem 'nicetext'-Bndel dagegen +setzt die gute alte Idee um, dass man Kommentarzeilen schon +% dadurch dadurch von Codezeilen unterscheiden kann, +% dass erstere mit einem Kommentarzeichen (\lq\code{\%}\rq) beginnen! +am Kommentarzeichen (\lq`%'\rq) erkennt! + +Mit derselben Absicht verwendete Stephan B”ttcher die +\strong{Skriptsprache} \meta{\Wikideref{awk}} +% fr die Dokumentation von +zur Kommentierung von 'lineno.sty'.\urlpkgfoot{lineno} +'makedoc.sty' bietet % dem gegenber +stattdessen eine Skriptsprache, % deren Interpretationsengine +die wie bei 'docstrip.tex'\urlpkgfoot{docstrip} +durch die \TeX-Engine selbst verarbeitet wird, +zusammen mit besonderen Makros. +'makedoc' wandelt die Paketdatei in eine Dokumentationsdatei um, +indem Kommentarzeichen entfernt und Codezeilen in Listing-Umgebungen +eingebettet werden. Bei dieser Gelegenheit kann auch gem„ž Methode (MS) +\TeX-Code fr typografische Feinheiten eingefgt und die +\Wikideref{MediaWiki}-\wikideref{Hilfe:Inhaltsverzeichnis}{Gliederung} +umgesetzt werden. + +'niceverb.sty' (ebenfalls in 'nicetext') % bietet weitere Feinheiten +erm”glicht weiter +nach der Methode (MA) +% fr +eine geradezu \acro{WYS\-I\-WYG}-artige \strong{Syntaxbeschreibung} +fr Paketmakros. \linebreak +% Sogar Pakete anderer Autoren (z.\,B. Donald Arseneau) +% k”nnen in \TeX-Qualit„t aus der reinen ASCII-Dokumentation +% in der Paketdatei gesetzt werden, ohne Žnderungen an dieser Datei +% vorzunehmen. +% Bei eigenen Paketen erfordert die Kommentierung +% wenig mehr Aufwand als Kommentarzeichen, und der Kommentarcode +% ist so leserlich wie berhaupt nur m”glich. +Makros k”n\-nen \DQ{im Handumdrehen} kommentiert werden. +% (oder man schreibt zuerst den Kommentar als Plan)~\dots +Vorhandene \linebreak +\acro{ASCII}-Dokumentation kann \DQ{automatisch} +in \TeX-Qualit„t gesetzt werden. + +% \enlargethispage{1\baselineskip} + +'makedoc.sty' erweitert die \TeX-Skriptsprache aus 'fifinddo.sty' +zum Verarbeiten von Text-Dateien zu Text-Dateien. +'blog.sty' aus dem \ctanpkgref{morehype}-Bndel +setzt ebenfalls auf 'fifinddo' auf. +Im Gegensatz zu 'makedoc' werden dabei die Makros der Quelldateien +\emph{expandiert} -- in \strong{\acro{HTML}}-Tags und -Zeichen. + +Der Vortrag vergleicht diese Ans„tze mit denen +\httpref{www.webdesign-bu.de/uwe\string_lueck/heyctan.htm\#mine-related} + {\strong{anderer}} Autoren. + +\end{document} diff --git a/Master/texmf-dist/source/latex/fifinddo-info/makedot.tex b/Master/texmf-dist/source/latex/fifinddo-info/makedot.tex new file mode 100644 index 00000000000..7bd0f64625a --- /dev/null +++ b/Master/texmf-dist/source/latex/fifinddo-info/makedot.tex @@ -0,0 +1,25 @@ +\def \GenDate {2011/10/15} %% <- TODO update! +\ProvidesFile{makedot.tex}[\GenDate\space blogdot driver (UL)] +%% public packages: +\RequirePackage{blogdot,texlinks} +%% local settings (overridable for single documents): +% \input{atari.fdf} +% \input{lang-de.fdf} +% \input{lang-en.fdf} +%% local/experimental settings: +\input{texblog.fdf} +%% settings for single job: +\input{dantev45.fdf} +\def\htmljob{dantev45} +%% alternatively, load these settings from a file +%% `jobname.tex' that may be made with `echo'/by a script. + +\SumBlogDotWidth %% blogdot special + +%% as in all my blog.sty driver files: +\ResultFile{\htmljob\htmakeext} +\BlogCopyFile[\TextCodes + \MakeActiveDef\"{\catchdq}% + ]{\htmljob.tex} +\CloseResultFile +\stop |