summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-11-04 17:50:22 +0000
committerKarl Berry <karl@freefriends.org>2010-11-04 17:50:22 +0000
commit0d5d57c86ee7cff21b2bb96d34606564353c973c (patch)
treebb5678300c7939a76597983919d936460d12b9f6
parent986ef687106ef0f32cac4ab33f0af366bbee72dd (diff)
tex-overview (3nov10)
git-svn-id: svn://tug.org/texlive/trunk@20305 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/tex-overview/README9
-rw-r--r--Master/texmf-dist/doc/latex/tex-overview/tex-overview-aux.tex198
-rw-r--r--Master/texmf-dist/doc/latex/tex-overview/tex-overview.pdfbin176012 -> 186387 bytes
-rw-r--r--Master/texmf-dist/doc/latex/tex-overview/tex-overview.tex435
4 files changed, 407 insertions, 235 deletions
diff --git a/Master/texmf-dist/doc/latex/tex-overview/README b/Master/texmf-dist/doc/latex/tex-overview/README
index 722345eb9fe..da3c9cb94e3 100644
--- a/Master/texmf-dist/doc/latex/tex-overview/README
+++ b/Master/texmf-dist/doc/latex/tex-overview/README
@@ -1,7 +1,8 @@
-# a small TeX-overview
+# TeX-overview
-This document gives a short overview of TeX and its children, as well as the macro packages LaTeX and ConTeXt.
-Compile the tex-overview.tex with luaLaTeX to get the pdf-file. The pdf contains tooltips, so make sure your pdf viewer can display them – or you will miss most of the information.
+This document gives an overview about the developments that followed TeX: its children (new engines that provide more features) and its friends (formats based on TeX or newer engines, programs that help you when working with TeX etc.)
+
+Compile the tex-overview.tex with luaLaTeX to get the pdf-file. You may need an up-to-date TeXlive distribution to do so. The pdf contains tooltips, so make sure your pdf viewer can display them – or you will miss most of the information.
Mail me any suggestions and corrections: arno dot trautmann at gmx dot de
@@ -11,4 +12,4 @@ This work may be distributed and/or modified under the conditions of the LaTeX P
This work has the LPPL maintenance status “*maintained*” and the Current Maintainer of this work is Arno Trautmann.
-This work consists of the file tex-overview.tex and the derived file tex-overview.pdf.
+This work consists of the files tex-overview.tex, tex-overview-aux.tex and the derived file tex-overview.pdf.
diff --git a/Master/texmf-dist/doc/latex/tex-overview/tex-overview-aux.tex b/Master/texmf-dist/doc/latex/tex-overview/tex-overview-aux.tex
index 903489fc6fa..e9c63bb3997 100644
--- a/Master/texmf-dist/doc/latex/tex-overview/tex-overview-aux.tex
+++ b/Master/texmf-dist/doc/latex/tex-overview/tex-overview-aux.tex
@@ -1,3 +1,6 @@
+%% This document is part of the package tex-overview and is only useable with the main file tex-overview.tex.
+%% author: Arno Trautmann
+
% !TeX root = tex-overview.tex
%% (for the TeXworks-users.)
@@ -13,17 +16,20 @@
xcolor,
xparse
}
-
%% circumventing a bug in cooltooltips
\makeatletter
\let\topdfescapestring\pdf@escapestring
-% \let\toanywherehook\@empty
-% \def\toAtEndDocument{\g@addto@macro\toanywherehook}
\makeatother
+\ExplSyntaxNamesOn
+
+
+%% define the look-and-feel of the document
\setmainfont{TeX Gyre Pagella}
\setsansfont{TeX Gyre Pagella}
+
+%% setup the style of hyperlinks.
\hypersetup{
colorlinks=true,
linkcolor=blue,
@@ -31,14 +37,12 @@
pdfborder=0 0 0 %% don’t like these boxes
}
-\date{\today}
+%% page layout, headings
\pagestyle{empty}
-
-%% use LaTeX3 syntax from here on:
-\ExplSyntaxNamesOn
-
-\tl_set:Nn\settextviews{}
-\cs_set:Nn\addtotextviews:n{\tl_gput_right:Nn\settextviews{#1}}
+\addtokomafont{disposition}{\color[rgb]{.4 0 0}}
+\addtokomafont{section}{\Huge}
+\addtokomafont{subsection}{\LARGE}
+\addtokomafont{subsubsection}{\Large}
%% some missing definitions for \TeX-like things
\tl_set:Nn\XeT{X\kern -.1667em\lower .5ex\hbox {E}\kern -.125emT\@}
@@ -48,6 +52,7 @@
\tl_set:Nn\vip{red}
\tl_set:Nn\normalimportant{blue}
\tl_set:Nn\experimental{yellow}
+\tl_set:Nn\fonttechnology{pink}
\tl_set:Nn\program{black}
\tl_set:Nn\package{green}
\tl_set:Nn\distro{orange}
@@ -62,8 +67,37 @@
\dim_set:Nn\fboxrule{-1mm}
%% to separate important from not-so-important nodes
-\bool_new:N\short
-\bool_gset_true:N\short
+\bool_new:N\to_short
+
+%% the token list to save all the textviews. When set once, it is reset. May be useful anyhow
+\tl_set:Nn\to_textviews{}
+\NewDocumentCommand\settextviews{}{
+ \to_textviews
+ \tl_set:Nn\to_textviews{}
+}
+\cs_gset:Nn\addtotextviews:f{\tl_gput_right:No\to_textviews{#1}}
+
+%% environment to set the graphs
+\NewDocumentCommand\tograph{sD(){}+m}
+{
+ \IfBooleanT{#1}{
+ \ExplSyntaxNamesOn
+ \bool_gset_true:N\to_short
+ \ExplSyntaxNamesOff
+ #2
+ \begin{tikzpicture}
+ #3
+ \end{tikzpicture}
+ \clearpage
+ }
+ \ExplSyntaxNamesOn
+ \bool_gset_false:N\to_short
+ \ExplSyntaxNamesOff
+ #2
+ \begin{tikzpicture}
+ #3
+ \end{tikzpicture}
+}
%% Style of the nodes: shade from a light
\tikzstyle{coolnode} = [
@@ -81,8 +115,8 @@
\tl_set:No\tonodecontent{\topdfescapestring{#4}}
%% test if we are in the short or full view
- \gdef\nodecolor{#1}
- \bool_if:NTF\short{
+ \tl_gset:Nn\nodecolor{#1}
+ \bool_if:NTF\to_short{
%% short view
\tl_if_eq:NNT#1{\vip}{ %% then check if this is an important node
\node[coolnode]
@@ -96,7 +130,7 @@
\cooltooltip{#2}{\tonodecontent}{\tonodecontent}{}{#5\strut}
};
%% and the text view, to be added only once!
- \addtotextviews:n{\subsubsection*{\color{blue}#5}\parbox{\textwidth}{#4}}
+ \addtotextviews:f{\subsubsection*{\color{blue}#5}\parbox{\columnwidth}{#4}}
}
}
@@ -108,26 +142,13 @@
%% the command to draw from one node to the other one. Fine tuning is possible via optional argument #3
\NewDocumentCommand{\todraw}{st{'}t{.}t{-}O{}d()d()}{
\begin{pgfonlayer}{background}
- %% draw in the case that: either a * is given (always draw) or (' is given and \short) or nothing is given
- \bool_if:nT{#1 || (#2 && \short) || !(#2 || \short)}
+ %% draw in the case that: either a * is given (always draw) or (' is given and \to_short) or nothing is given
+ \bool_if:nT{#1 || (#2 && \to_short) || !(#2 || \to_short)}
{\draw [thick,gray,\IfBooleanT{#3}{dotted},\IfBooleanT{#4}{dashed},#5] (#6) to (#7);} %% I’m just loooving expl3!
\end{pgfonlayer}
}
-%% a command for creation of bib-items.
-\NewDocumentCommand\tobibsection{m}{
- \subsection*{#1}
-}
-\NewDocumentCommand\tobibsubsection{m}{
- \subsection*{#1}
-}
-\NewDocumentCommand\tobib{mD<>{}O{}}{
- \vspace*{1.5ex}
-\begin{minipage}{\textwidth} %% to prevent page breaks
- #1\\ \quad \url{#2} #3
-\end{minipage}
-}
-
+%% a nice way to control the vertical position of nodes
\NewDocumentCommand{\setlayer}{m}{
\fp_set:Nn\layer{#1}
}
@@ -135,25 +156,112 @@
\fp_add:Nn\layer{#1}
}
-\addtokomafont{section}{\LARGE}
-\addtokomafont{subsection}{\large}
+\NewDocumentCommand\topart{m}{
+ \clearpage
+ \dim_set:Nn\pdfpagewidth{9cm} %% make a smaller paper so the header won’t feel so alone on the big, cold paper
+ \dim_set:Nn\pdfpageheight{4cm}
+ \newgeometry{margin=1cm}
+ \part{#1}
+ \newpage
+ \restoregeometry
+ \dim_set:Nn\pdfpagewidth{21cm} %% back to a4
+ \dim_set:Nn\pdfpageheight{29.7cm}
+}
+%% the following code is made to avoid code doubling on cost of readability. It is more an experiment of mine. This code is neither stable nor exemplary …
+%% the first argument, given in (), determines the level of the d
+\NewDocumentCommand\tostruct{D(){0}omO{\tonodestyle}}{
+ \tl_set:Nn\to_disp{section}
+ \int_compare:nT{#1 > 0}{\tl_put_left:Nn\to_disp{sub}}
+ \int_compare:nT{#1 > 1}{\tl_put_left:Nn\to_disp{sub}}
+ \bool_if:NTF\to_short
+ {
+ \int_compare:nT{#1 = 0}{\stepcounter{section}}
+ \tl_gset:cn{\to_disp mand}{\cs:w the\to_disp\cs_end:.\hspace{.175em} #3\newline short view}
+ \IfNoValueTF{#2}{\tl_gset:cn{\to_disp opt}{\tl_use:c{\to_disp mand}}}{\tl_gset:cn{\to_disp opt}{#2, short view}}
+ \cs:w \to_disp \cs_end:*{\cs:w\to_disp mand\cs_end:}
+ \int_compare:nT{#1 = 0}{\addtocounter{section}{-1}}
+ }
+ {
+ \tl_gset:cn{\to_disp mand}{#3}
+ \IfNoValueTF{#2}{\tl_gset:cn{\to_disp opt}{\cs:w \to_disp mand\cs_end:}}{\tl_gset:cn{\to_disp opt}{#2}}
+ \addtotextviews:f{\cs:w \to_disp\cs_end:[#2]{#3}}
+ \cs:w \to_disp\cs_end:[\cs:w \to_disp opt\cs_end:]{\cs:w \to_disp mand\cs_end:}
+ }
+ \cs_gset_eq:NN\tonodestyle#4
+}
-\NewDocumentCommand{\overviewsection}{omO{\tonodestyle}}{
- \clearpage
+\NewDocumentCommand\overviewsection{omO{\tonodestyle}}{
+ \bool_if:NTF\to_short
+ {
+ \stepcounter{section}
+ \tl_gset:Nn\to_mandsect{\thesection.\hspace{.2em} #2\newline short view}
+ \IfNoValueTF{#1}{\tl_gset:Nn\to_optsect{\to_mandsect}}{\tl_gset:Nn\to_optsect{#1, short view}}
+ \section*{\to_mandsect}
+ \addtocounter{section}{-1}
+ }
+ {
+ \tl_gset:Nn\to_mandsect{#2}
+ \IfNoValueTF{#1}{\tl_gset:Nn\to_optsect{\to_mandsect}}{\tl_gset:Nn\to_optsect{#1}}
+ \addtotextviews:f{\section[#1]{#2}}
+ \section[\to_optsect]{\to_mandsect}
+ }
\cs_gset_eq:NN\tonodestyle#3
-%% \dim_set:Nn\pdfpagewidth{9cm} %% make a smaller paper so the header won’t feel so alone on the big, big paper
-%% \dim_set:Nn\pdfpageheight{2.5cm}
- \IfNoValueTF{#1}{\section{#2}}{\section[#1]{#2}}
- \bool_if:NF\short{\addtotextviews:n{\IfNoValueTF{#1}{\section{#2}}{\section[#1]{#2}}}}
-
-%% \dim_set:Nn\pdfpagewidth{21cm} %% back to a4
-%% \dim_set:Nn\pdfpageheight{29.7cm}
}
+
\NewDocumentCommand{\overviewsubsection}{omO{\tonodestyle}}{
+ \tl_set:Nn\to_mandsubsect{#2}
+ \bool_if:NTF\to_short
+ {
+ \IfNoValueTF{#1}{\tl_set:Nn\to_optsubsect{\to_mandsubsect}}{\tl_set:Nn\to_optsubsect{#1, short view}}
+ \subsection*{\to_mandsubsect}
+ }
+ {
+ \IfNoValueTF{#1}{\tl_set:Nn\to_optsubsect{\to_mandsubsect}}{\tl_set:Nn\to_optsubsect{#1}}
+ \addtotextviews:f{\subsection[#1]{#2}} %% there should be \to_opt[]sec in the first arg, but I’m too dumb to get it right
+ \subsection[\to_optsubsect]{\to_mandsubsect}
+ }
+ \cs_gset_eq:NN\tonodestyle#3
+}
+
+\NewDocumentCommand{\overviewsubsubsection}{omO{\tonodestyle}}{
+ \tl_set:Nn\to_mandsubsubsect{#2}
+ \bool_if:NTF\to_short
+ {
+ \IfNoValueTF{#1}{\tl_set:Nn\to_optsubsubsect{\to_mandsubsubsect}}{\tl_set:Nn\to_optsubsubsect{#1, short view}}
+ }
+ {
+ \IfNoValueTF{#1}{\tl_set:Nn\to_optsubsubsect{\to_mandsubsubsect}}{\tl_set:Nn\to_optsubsubsect{#1}}
+ \addtotextviews:f{\subsubsection[#1]{#2}} %% there should be \to_opt[]sec in the first arg, but I’m too dumb to get it right
+ }
+
+ \subsubsection[\to_optsubsubsect]{\to_mandsubsubsect}
\cs_gset_eq:NN\tonodestyle#3
- \IfNoValueTF{#1}{\subsection{#2}}{\subsection[#1]{#2}}
- \bool_if:NF\short{\addtotextviews:n{\IfNoValueTF{#1}{\subsection{#2}}{\subsection[#1]{#2}}}}
}
-\ExplSyntaxNamesOff \ No newline at end of file
+%% a command for creation of bib-items.
+\NewDocumentCommand\tobibsection{m}{
+ \subsection*{#1}
+}
+\NewDocumentCommand\tobibsubsection{m}{
+ \subsection*{#1}
+}
+\NewDocumentCommand\tobib{mD<>{}O{}}{
+ \vspace*{1.5ex}
+\begin{minipage}{\textwidth} %% to prevent page breaks
+ \large #1\normalsize\\ \hspace*{1em} \parbox{\textwidth-1.5em}{\url{#2} #3}
+\end{minipage}
+}
+
+\ExplSyntaxNamesOff
+
+\AtBeginDocument{
+ {
+ \centering
+ \huge\bfseries An overview of \TeX, its children\\ and their friends~\dots\par
+ \flushright\parbox{4cm}{
+ \Large \color[rgb]{.4 0 0} Arno Trautmann\\ \fontsize{9.85}{10}\selectfont arno.trautmann@gmx.de}
+ \hspace*{2cm}\par
+ }
+ \vspace*{1cm}
+} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/tex-overview/tex-overview.pdf b/Master/texmf-dist/doc/latex/tex-overview/tex-overview.pdf
index 601071b81ec..3c185c2983b 100644
--- a/Master/texmf-dist/doc/latex/tex-overview/tex-overview.pdf
+++ b/Master/texmf-dist/doc/latex/tex-overview/tex-overview.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/tex-overview/tex-overview.tex b/Master/texmf-dist/doc/latex/tex-overview/tex-overview.tex
index 5ae5d93bfde..9146b1c7de3 100644
--- a/Master/texmf-dist/doc/latex/tex-overview/tex-overview.tex
+++ b/Master/texmf-dist/doc/latex/tex-overview/tex-overview.tex
@@ -3,43 +3,47 @@
%% Packages needed: see list in the -aux.tex file …
%% just use an up-to-date TeXlive2010 and the lualatex program to typeset
-% this document has version number 0.1b
+% this document has version number 0.1c
\documentclass{scrartcl}
-
\input{tex-overview-aux} %% everything that is not content-related
-\title{An overview of \TeX, its children\\ and their friends~\dots}
-\author{Arno Trautmann\thanks{arno.trautmann@gmx.de}}
\begin{document}
-\maketitle
-
+\savegeometry{normal}
\begin{abstract}
-{\centering \large \hyperref[textextview]{Link for the impatient.}\\[2ex]}
-In the world of \TeX, there are many developments and ambiguous names. This paper tries to give an overview of the development of \TeX\ and related programs. Contributions are welcome!\footnote{The current source of this document is availble at \url{http://github.com/alt/tex-overview}. Please feel free to patch there or mail me any suggestions and comments. I'll be happy to extend and correct this document!}\\
+{\centering \Large \hyperref[textextview]{Link for the impatient.}\\[2ex]}
+In the world of \TeX, there are many developments and ambiguous names. This paper tries to give an overview of the development of \TeX\ and related programs. Contributions are welcome!\footnote{The current source code of this document is availble at \url{http://github.com/alt/tex-overview}. Please feel free to patch there or mail me any suggestions and comments. I'll be happy to extend and correct this document!}
\end{abstract}
\section{Introduction}
-The base frame and main idea of this document was taken from the article \textsf{A brief history of \TeX,~volume~II} by Arthur Reutenauer in the proceedings of \textsf{EuroBacho\TeX 2007} and his talk there (see references). Additional information is taken from original documentations (see references on page \pageref{sec:refs}) and some review articles. For old, historic information, the \textsf{historic archive} maintained by Ulrik Vieth and hosted on \url{ftp.tug.org} (see refs) was very useful. Many thanks for that great archive!
+The base frame and main idea of this document was taken from the article \textit{A brief history of \TeX,~volume~II} by Arthur Reutenauer in the proceedings of \textsf{EuroBacho\TeX 2007} and his talk there (see~references on page~\pageref{sec:refs}). Additional information is taken from original documentations and some review articles. For old, historic information, the \textsf{historic~archive} maintained by Ulrik Vieth and hosted on \url{ftp.tug.org} (see~refs) was very useful, especially in the reconstruction of \LaTeX\ versions. Many thanks for that great archive!
-All information is up to the date of this generated pdf. Everything here is without guarantee – this is just to get an overview. Consult the references for further (and/or correct) information!
+All information is up to the date of this generated pdf and up to the information I found. Everything here is without guarantee – this is just to get an overview. Consult the references for further (and/or~correct) information!
-In the tree views (page \pageref{sec:tree}), every node has a tooltip that shows up when you hover the mouse over it. If your pdf viewer does not support this, go to the end of the document, where every tooltip is written in normal text (page \pageref{sec:text}).
+In the tree views, every node has a tooltip that shows up when you hover the mouse over it. For the case that your pdf viewer does not support this, there is a list of all the descriptions on page~\pageref{sec:text}.
-\clearpage
I tried to make the graphs more readable by using colors. All decisions reflect my personal opinion, not that of the community, of the authors or someone else.
+
\begin{description}
-\item[{\let\nodecolor\normalimportant \tikz \node[coolnode]{normal};}] That is, not very important in my opinion, no huge user group, but still maybe important for special needs. Was in use at least some time back, but is not of great impact nowadays.
+\item[{\let\nodecolor\normalimportant \tikz \node[coolnode]{normal};}] That is, not very important in my opinion, no huge user group, but still maybe important for special needs. Was used by a major community at least some time back, but is not of great impact nowadays.
+
\item[{\let\nodecolor\vip \tikz \node[coolnode]{important};}] Engines or formats that had or have a great impact on (everyday) typesetting for a large community.
+
\item[{\let\nodecolor\experimental \tikz \node[coolnode]{experimental};}] Developments that might still be under construction or were never used by a large community. Nevertheless, these might be very important to the development of other engines or for use of special typesetting.
-\item[{\let\nodecolor\package \tikz \node[coolnode]{package};}] \LaTeX-packages that seemed worth mentioning. There won't be many of this. Not-included packages are not necessarily unimportant!
+
+\item[{\let\nodecolor\package \tikz \node[coolnode]{package};}] \LaTeX-packages or single \TeX-files (useable as packages or modules) that seemed worth mentioning. There won't be many of this; most very important packages won’t be mentioned.
+
\item[{\let\nodecolor\distro \tikz \node[coolnode]{distribution};}] Software bundles that bring \TeX\ and friends to the normal user.
+
\item[{\let\nodecolor\program \tikz \node[coolnode]{program};}] Programs that are not directly connected to \TeX\ (but interesting in the context of using \TeX) or are separate helper programs.
+
+\item[{\let\nodecolor\fonttechnology \tikz \node[coolnode]{font};}] A font technologie. Neither a program nor libraries that provide access to fonts nor the actual files, but rather the abstract definition or specification.
+
\end{description}
-Furthermore, there are two versions of some graphs: A short version mentioning only the most important things and a full one with everything I could find.
+Some graphs are quite complex, which is the reason why there are two versions of them: A short one mentioning only the most important things and a full version with everything I could find.
-In most cases I did not mention the authors of the programs/packages. This is not to diminish their effort but only for clarity (long names make things harder to read). I did not write any of the below-mentioned programs or packages. The authors are given in the documents linked in the references.
+In most cases I did not mention the authors of the programs/packages. This is not to diminish their effort but only for brevity (long names make things harder to read). I did not write any of the below-mentioned programs or packages. The authors are given in the documents linked in the references.
\section{How to contribute}
I hope one day this document would become the standard reference for questions like ”What program do I need for …?“, ”What's the difference between ...\TeX\ and ...\TeX?“, ”Why is it called …?“ etc.
@@ -66,31 +70,31 @@ As this document makes heavy use of pdf-features, some pdf viewers are not able
\item[okular] also does not break the lines.
\item[xpdf] shows only very short tooltips. Most of the information is not visible in the graphs.
+
+\item[gv] shows no tooltips, but the annoying green boxes. (Linux)
\end{description}
-\clearpage
+\subsection*{About this document}
+This document is typeset in the \TeX\ Gyre Pagella font using the lua\LaTeXe/3\ format with lua\TeX\ 0.\the\luatexversion.\luatexrevision.
+
+\setlength{\columnsep}{1.5cm}
\twocolumn
\tableofcontents
-\clearpage
-
-\newgeometry{margin=1cm} %% to save space
-\NewDocumentCommand{\typesetwholecontent}{}{ %% begin all stuff
-\clearpage
-\part{Tree Views}
+\topart{Tree Views}
+\newgeometry{margin=1cm} %% to save space; no need for margins if only a tree is shown
-\overviewsection[\TeX]{\TeX\ – the program}
\label{sec:tree}
\Large
\centering
%%% TEX %%%
-\begin{tikzpicture}
\label{textextview}
+\tograph*({\tostruct[\TeX]{\TeX\ – the program}}){
\setlayer0
\tonode[\vip](tex)(7,\layer)<Born in 1978 by Donald Erwin Knuth.>{\TeX}
- \tonode[\program](ant)(13,\layer)<Ant is Not TeX. A typesetting system inspired by TeX. Only *inspired*, so it has nothing to do with TeX in terms of common code.>{ANT};
+ \tonode[\program](ant)(13,\layer)<Ant is Not TeX. A typesetting system inspired by TeX. Only *inspired*, so it has nothing to do with TeX in terms of common code.>{ANT}
\todraw[dotted](tex)(ant)
\steplayer[-1.5]
@@ -111,213 +115,229 @@ As this document makes heavy use of pdf-features, some pdf viewers are not able
\tonode(tex--xet)(3,\layer)<TeX--XeT was able to really put the glyphs on the right place in the dvi.>{\TeX-{}-\XeT}
\todraw(tex-xet)(tex--xet)
- \tonode[\vip](tex3)(7,\layer)<Ability to handle 8-bit input. 1989. TeX development was frozen in 1991 and only bugfixes were made. Now in version 3.1415926, it gets closer to pi with every bugfix ...>{\TeX3};
+ \tonode[\vip](tex3)(7,\layer)<Ability to handle 8-bit input. 1989. TeX development was frozen in 1991 and only bugfixes were made. Now in version 3.1415926, it gets closer to pi with every bugfix. Don Knuth wishes the version number to be pi when he dies.>{\TeX3}
\todraw*(tex)(tex3)
\steplayer[-2]
- \tonode(enctex)(5.9,\layer)<A small extension to TeX, started 1997. Adds 10 new primitives relating input re-encoding>{enc\TeX};
+ \tonode(enctex)(5.9,\layer)<A small extension to TeX, started 1997. Adds 10 new primitives relating input re-encoding>{enc\TeX}
\todraw(tex3)(enctex)
- \tonode(mltex)(8,\layer)<Extension (started 1990) to TeX that allows hyphenation of words with accented letters. (Therefore the name: MultiLingual TeX.) Distributed as a change file to the original WEB sources of TeX.>{ML\TeX};
+ \tonode(mltex)(8,\layer)<Extension to TeX (started 1990) that allows hyphenation of words with accented letters. (Therefore the name: MultiLingual TeX.) Distributed as a change file to the original WEB sources of TeX.>{ML\TeX}
\todraw(tex3)(mltex)
- \tonode[\experimental](uptex)(11,\layer)<Unicode-aware version of pTeX ("unicode-publishing"-TeX) also modernized from TeX3.>{up\TeX}
+ \tonode[\experimental](uptex)(11,\layer)<Unicode-aware version of pTeX. ("unicode-publishing"-TeX) Also modernized from TeX3.>{up\TeX}
\todraw(tex3)(uptex)
\todraw(ptex)(uptex)
\steplayer[-2]
- \tonode(tex2pdf)(7,\layer)<Early name for pdfTeX. Don't confuse with converters like dvi2pdf.>{\TeX2PDF};
+ \tonode(tex2pdf)(7,\layer)<Early name for pdfTeX. Don't confuse with converters like dvi2pdf.>{\TeX2PDF}
\todraw(enctex)(tex2pdf)
\todraw(mltex)(tex2pdf)
\steplayer[-2]
- \tonode(omega)(1,\layer)<Support for 16bit-unicode-input. Still constrained on the output.>{$\Omega$};
+ \tonode(omega)(1,\layer)<Support for 16bit-unicode-input. Still constrained on the output encoding. Started 1994.>{$\Omega$}
\todraw(tex3)(omega)
- \tonode[\vip](etex)(4,\layer)<An extension to TeX, provided by the NTS team as an intermediate project until NTS would be ready. eTex is a full TeX and backward compatible. The number of TeX's registers is increased and various new primitives useful to programmers are added.>{$\varepsilon$-\TeX};
+ \tonode[\vip](etex)(4,\layer)<An extension to TeX, provided by the NTS team as an intermediate project until NTS would be ready. eTex is a full TeX and backward compatible. The number of TeX's registers is increased and various new primitives useful to programmers are added.>{$\varepsilon$-\TeX}
\todraw(tex--xet)(etex)
\todraw'(tex3)(etex)
- \tonode[\vip](pdftex)(7,\layer)<A new engine to directly produce pdf-files from TeX, without the need of dvi-ps-pdf. This allows to use microtypographic extensions and many other features of the pdf format like page transitions etc.>{pdf\TeX};
+ \tonode[\vip](pdftex)(7,\layer)<A new engine to directly produce pdf-files from TeX, without the need of dvi-ps-pdf. This allows to use microtypographic extensions and many other features of the pdf format like page transitions etc.>{pdf\TeX}
\todraw(tex2pdf)(pdftex)
\todraw'(tex3)(pdftex)
- \tonode(texgx)(9.5,\layer)<GX stands for Graphic eXtension, a font technology. TeXGX was able to handle these fonts. Only on Mac OS.>{\TeX{}gX};
+ \tonode(texgx)(9.5,\layer)<GX stands for Graphic eXtension, a font technology available only on Mac OS. TeXGX was able to handle these fonts.>{\TeX{}gX}
\todraw(tex3)(texgx)
- \tonode(nts)(12,\layer)<A project to completely reimplement TeX in Java. Now NTS is officially declared dead.>{\NTS};
+ \tonode(nts)(12,\layer)<A project to completely reimplement TeX in Java. Now NTS is officially declared dead.>{\NTS}
\todraw(tex3)(nts)
\steplayer[-2]
- \tonode[\experimental](omega2)(0,\layer)<A short-time try to pick up the development of Omega again in 2006. Seemed more like a good plan and is now regarded as obsolete. LuaTeX is kind of a successor.>{$\Omega_2$};
+ \tonode[\experimental](omega2)(0,\layer)<A short-time try to pick up the development of Omega again in 2006. Seemed more like a good plan and is now regarded as obsolete. LuaTeX is kind of a successor.>{$\Omega_2$}
\todraw(omega)(omega2)
- \tonode[\experimental](vtex)(3.6,\layer)<VTeX (VisualTeX) can produce pdf, html, svg, dvi or ps output directly from input. In contrast to pdfTeX, it includes a full PostScript interpreter, thus capable to include EPS figures, PStricks etc. First official version I found: February 15, 1999: VTeX 6.3; last official version seems to be from Oct 1, 2005: VTeX 8.61. Commercial product.>{V\TeX};
+ \tonode[\experimental](vtex)(3.6,\layer)<VTeX (VisualTeX) can produce pdf, html, svg, dvi or ps output directly from input. In contrast to pdfTeX, it includes a full PostScript interpreter, thus capable to include EPS figures, PStricks etc. First official version I found: February 15, 1999: VTeX 6.3; last official version seems to be from Oct 1, 2005: VTeX 8.61. Commercial product.>{V\TeX}
\todraw(etex)(vtex)
\steplayer[-2]
- \tonode[\experimental](aleph)(1,\layer)<Originally named epsilon-Omega, an attempt to stabilize Omega while merging epsilon extensions. Authors: John Plaice and Yannis Haralambous, now maintained for severe bugfixes by Taco Hoekwater.>{$\aleph$ (Aleph)};
+ \tonode[\experimental](aleph)(1,\layer)<Originally named epsilon-Omega, an attempt to stabilize Omega while merging epsilon extensions. Authors: John Plaice and Yannis Haralambous, now maintained for severe bugfixes by Taco Hoekwater.>{$\aleph$ (Aleph)}
\todraw(omega)(aleph)
\todraw(etex)(aleph)
- \tonode[\vip](xetex)(8,\layer)<This extension enables full multilingual support for left-to-right typesetting, right-to-left and almost any other possible direction. Unicode encoding is fully supported (utf8 as native encoding). XeTeX also features support for OpenType and AAT-fonts. In newest versions, character protrusion is possible -- hence the connection to pdfTeX.>{\XeTeX};
+ \tonode[\vip](xetex)(8,\layer)<This extension enables full multilingual support for left-to-right typesetting, right-to-left and almost any other possible direction. Unicode encoding is fully supported (utf8 as native encoding). XeTeX also features support for OpenType and AAT-fonts (via the operation system). In newest versions, character protrusion is possible.>{\XeTeX}
\todraw(texgx)(xetex)
\todraw*(etex)(xetex)
- \tonode[\experimental](extex)(12,\layer)<Planned implementation of a high-quality typesetting system, written in Java. Based on experiences in NTS, eTeX, pdfTeX and Omega. Started in 2003, current version in repository is 0.0. (i. e. not very far ...)>{$\epsilon\chi$\TeX};
+ \tonode[\experimental](extex)(12,\layer)<Planned implementation of a high-quality typesetting system, written in Java. Based on experiences in NTS, eTeX, pdfTeX and Omega. Started in 2003, current version in repository is 0.0. (i. e. not very far ...)>{$\epsilon\chi$\TeX}
\todraw(nts)(extex)
\todraw(omega)(extex)
\todraw(etex)(extex)
\todraw(pdftex)(extex)
- \tonode[\vip](pdfetex)(5,\layer)<Merging the pdfTeX engine with the eTeX-extensions. This engine can produce dvi (with or without the eTeX-extensions) as well as pdf (again, with or without extensions).>{pdf($\epsilon$)-\TeX};
+ \tonode[\vip](pdfetex)(5,\layer)<Merging the pdfTeX engine with the eTeX-extensions. This engine can produce dvi (with or without the eTeX-extensions) as well as pdf (again, with or without extensions).>{pdf($\epsilon$)-\TeX}
\todraw*(etex)(pdfetex)
\todraw*(pdftex)(pdfetex)
- \todraw*[dotted](pdfetex)(xetex)
\steplayer[-2]
- \tonode[\experimental](eetex)(6,\layer)<Experimental extension to pdfeTeX by Taco Hoekwater, created 2000. Distributed as change file. Now dead due to his development of luaTeX.>{ee\TeX};
+ \tonode[\experimental](eetex)(6,\layer)<Experimental extension to pdfeTeX by Taco Hoekwater, created 2000. Distributed as change file. Now dead due to his development of luaTeX.>{ee\TeX}
\todraw(pdfetex)(eetex)
\steplayer[-2]
- \tonode[\program](lua)(0,\layer)<Script language; has nothing to do with TeX!>{Lua};
+ \tonode[\program](lua)(0,\layer)<A script language; has nothing to do with TeX.>{Lua}
- \tonode[\vip](luatex)(4,\layer)<LuaTeX supports utf8, OpenType and totally everything. TeXlive 2010 ships version 0.60.2. luaTeX features an embedded scripting language, lua, making it easy to extend, so most of the programming can be done in lua instead of TeX-hackery.>{lua\TeX};
+ \tonode[\vip](luatex)(4,\layer)<LuaTeX supports utf8, OpenType and many more things. TeXlive 2010 ships version 0.60.2. luaTeX features an embedded scripting language, lua, making it easy to extend, so most of the programming can be done in lua instead of TeX-hackery.>{lua\TeX}
\todraw(aleph)(luatex)
\todraw*(pdfetex)(luatex)
- \todraw[dashed](lua)(luatex);
+ \todraw[dashed](lua)(luatex)
\steplayer[-2]
- \tonode[\experimental](itex)(7,\layer)<iTeX is the official successor of TeX3, announced by Don Knuth at the TUG conference 2010.>{i\TeX};
-\end{tikzpicture}
-
+ \tonode[\experimental](itex)(7,\layer)<iTeX is the official successor of TeX3, announced by Don Knuth at the TUG conference 2010.>{i\TeX}
+}
-\overviewsection[\LaTeX]{\LaTeX\ (Lamport's \TeX\ format)}
+\clearpage
%%% LATEX %%%
-\hspace*{-5em}
-\begin{tikzpicture}
- \tonode(latex090)(-5.5,\layer)<First version still on web (historic archive, see refs) is 0.9, for use with TeX 0.95. No installation help found. Apparently one needs the files lplain.tex and latex.tex to create the format.>{\LaTeX\ 0.9};
+\tograph*(\tostruct[\LaTeX]{\LaTeX\ – Lamport's \TeX\ format}){
+
+ \tonode(latex090)(-5.5,\layer)<First version still on web (historic archive, see refs) is 0.90, for use with TeX 0.95. No installation help found. Apparently one needs the files lplain.tex and latex.tex to create the format.>{\LaTeX\ 0.90}
- \steplayer
- \tonode(latex091)(-2,\layer)<Version 0.91 for use with TeX 0.97 (C) 1983 by Leslie Lamport. Most changes to previous version are in the file lplain.tex.>{\LaTeX\ 0.91};
+ \tonode(latex091)(-2,\layer)<Version 0.91 for use with TeX 0.97 (C) 1983 by Leslie Lamport. Most changes to previous version are in the file lplain.tex.>{\LaTeX\ 0.91}
\todraw(latex090)(latex091)
- \steplayer[-0.4]
- \tonode(latex092)(2,\layer)<First version with the @ as letter for internal names. Seeminlgy first version with a manual. For use with TeX Version 0.999999. (no joke, that's the version number given in the latex.tex file!) (C) 1983 by Leslie Lamport, conversion to 0.92 from 0.91 by Arthur Keller.>{\LaTeX\ 0.92};
+ \tonode(latex092)(2,\layer)<First version with the @ as letter for internal names. Seeminlgy first version with a manual. For use with TeX Version 0.999999. (no joke, that's the version number given in the latex.tex file!) (C) 1983 by Leslie Lamport, conversion to 0.92 from 0.91 by Arthur Keller.>{\LaTeX\ 0.92}
\todraw(latex091)(latex092)
-
- \steplayer[-0.4]
- \tonode(latex09210)(6,\layer)<Adaption of 0.92 for TeX version 1.0. (C) 1983 by Leslie Lamport, conversion to 0.92 from 0.91 by Arthur Keller.>{\LaTeX\ 0.92 - 1.0};
+
+ \tonode(latex09210)(6,\layer)<Adaption of 0.92 for TeX version 1.0. (C) 1983 by Leslie Lamport, conversion to 0.92 from 0.91 by Arthur Keller.>{\LaTeX\ 0.92 - 1.0}
\todraw(latex092)(latex09210)
+ \steplayer[-2.3]
+
+ \tonode(latex2010)(-5,\layer)<Seemingly heavy changes compared to 0.92. Version for TeX 1.0. Release of 11 Dec 1983. There were never public versiaons 1.x >{\LaTeX\ 2.0 - 1.0}
+ \todraw(latex09210.south)(latex2010.north)
- \steplayer[-1.8]
- \tonode(latex2010)(-5,\layer)<Seemingly heavy changes compared to 0.92. Version for TeX 1.0. Release of 11 Dec 1983. There were never public versiaons 1.x >{\LaTeX\ 2.0 - 1.0};
- \todraw(latex09210)(latex2010)
-
- \steplayer[-.4]
- \tonode(latex205)(0,\layer)<No sure information found so far.>{\LaTeX\ 2.05};
+ \tonode(latex205)(0,\layer)<No sure information found so far.>{\LaTeX\ 2.05}
\todraw(latex2010)(latex205)
- \steplayer[-.4]
- \tonode(latex206a)(5,\layer)<Release of version 2.06a of the LaTeX macros. September 1984.>{\LaTeX\ 2.06a};
+ \tonode(latex206a)(5,\layer)<Release of version 2.06a of the LaTeX macros. September 1984.>{\LaTeX\ 2.06a}
\todraw(latex205)(latex206a)
- \steplayer[-2.3]
- \tonode[\vip](latex209)(0,\layer)<The first official version by Leslie Lamport, 1985.>{\LaTeX\ 2.09};
+ \steplayer[-2.5]
+ \tonode[\vip](latex209)(0,\layer)<The first official version by Leslie Lamport, 1985.>{\LaTeX\ 2.09}
\todraw(latex206a)(latex209)
\steplayer[-2]
- \tonode(slitex)(2,\layer)<A variation of LaTeX2.09 to provide an easy way for producing presentations. In LaTeX2e absorbed as a documentclass (slides).>{SLI\TeX};
+ \tonode(slitex)(2,\layer)<A variation of LaTeX2.09 to provide an easy way for producing presentations. In LaTeX2e absorbed as a documentclass (slides).>{SLI\TeX}
\todraw(latex209)(slitex)
- \tonode(amslatex11)(6,\layer)<A port of Spivak's AMS-TeX to LaTeX 2.09, released 1990>{\AMS\LaTeX\ 1.1};
+ \tonode(amslatex11)(6,\layer)<A port of Spivak's AMS-TeX to LaTeX 2.09, released 1990>{\AMS\LaTeX\ 1.1}
\todraw(latex209)(amslatex11)
\steplayer[-1.7]
- \tonode[\vip](latex2ε)(0,\layer)<June 1994: New release of LaTeX to avoid incompatible dialects of LaTeX 2.09. Introduced by the LaTeX3-Team.>{\LaTeXe};
+ \tonode[\vip](latex2ε)(0,\layer)<June 1994: New release of LaTeX to avoid incompatible dialects of LaTeX 2.09. Introduced by the LaTeX3-Team.>{\LaTeXe}
\todraw*(latex209)(latex2ε)
\todraw[dashed](slitex)(latex2ε)
\todraw[dashed](amslatex11)(latex2ε)
- \steplayer[-1.3]
+
+ \tonode[\experimental](lambda)(-7.5,\layer)<A LaTeX based format for the omega engine.>{$\Lambda$}
+ \todraw(latex209)(lambda)
+ \steplayer[-1.5]
+
+ \tonode[\experimental](lamed)(-7.5,\layer)<A LaTeX based format for the aleph engine.>{Lamed}
+ \todraw(lambda)(lamed)
\tonode(amslatex12)(6,\layer)<A port of version 1.1 to LaTeX 2e by Downes and Jones.>{\AMS\LaTeX 1.2}
+ \tonode[\experimental](alatex)(-4.2,\layer)<A slightly changed LaTeX format by Matt Swift to offer modularity at format level. Acts as normal LaTeX if not explicitly told to do different. "A" for "alternate", "abstract" or the indefinite article.>{A\LaTeX}
\todraw(amslatex11)(amslatex12)
\todraw(latex2ε)(amslatex12)
+ \todraw(latex2ε)(alatex)
\steplayer[-1.5]
- \tonode[\vip](pdflatex)(2,\layer)<The standard LaTeX. If anyone talks about "LaTeX" it is nearly shure to be this package. pdfLaTeX2e produces pdf or dvi output.>{pdf\LaTeXe};
- \todraw(latex2ε)(pdflatex)
- \todraw'(latex2ε)(pdflatex)
+ \tonode(amslatex21)(8,\layer)<Version 2.1 of amsLaTeX.>{\AMS\LaTeX 2.1}
+ \todraw(amslatex12)(amslatex21)
+ \steplayer[-1]
+
+ \tonode[\vip](pdflatex)(2,\layer)<The "standard LaTeX". If anyone talks about "LaTeX" it is nearly shure to be this package. pdfLaTeX2e produces pdf or dvi output.>{pdf\LaTeX}
+ \todraw*(latex2ε)(pdflatex)
- \tonode[\vip](xelatex)(5,\layer)<Using the XeTeX engine. There are some special packages that provide easy access to the modern features of XeTeX.>{\XeLaTeX};
- \todraw(latex2ε)(xelatex)
- \todraw'(latex2ε)(xelatex)
+ \tonode[\vip](xelatex)(5,\layer)<Using the XeTeX engine. There are some special packages that provide easy access to the modern features of XeTeX.>{\XeLaTeX}
+ \todraw*(latex2ε)(xelatex)
+
+ \tonode(platex)(-4.6,\layer)<A LaTeX based format for the pTeX engine.>{p\LaTeX}
+ \todraw(latex2ε)(platex)
- \tonode(lualatex)(-1.8,\layer)<LaTeX based on LuaTeX with pdf (standard) or dvi (dviLuaLaTeX) output. LaTeX support for luaTeX is under heavy development to make this machine usable with the format. Work in progress, but already well useable!>{Lua\LaTeX};
+ \tonode(lualatex)(-1.8,\layer)<LaTeX based on LuaTeX with pdf (standard) or dvi (dviLuaLaTeX) output. LaTeX support for luaTeX is under heavy development to make this machine usable with the format. Work in progress, but already well useable! (This document is processed with luaLaTeX2e.)>{Lua\LaTeX}
\todraw(latex2ε)(lualatex)
-
- \tonode(platex)(-4.6,\layer)<A LaTeX-bundle for the pTeX engine.>{p\LaTeXe}
- \todraw(latex2ε)(platex)
-
- \tonode[\experimental](lambda)(-6,\layer)<A LaTeX-package for the omega-engine.>{$\Lambda$}
- \todraw(latex209)(lambda)
- \steplayer[-1.5]
+ \steplayer[-2]
- \tonode[\experimental](lamed)(-7.5,\layer)<A LaTeX-package for the aleph-engine.>{Lamed}
- \todraw(lambda)(lamed)
-
- \steplayer[-1]
- \tonode[\experimental](latex25)(0,\layer)<Will Robertson suggested in an interview (see refs) an interim unstable version on the way to LaTeX3 with version number 2.5 that should bring package authors towards using LaTeX3 syntax. This version should be backwards incompatible to LaTeX2e. (This version does not exist in any official plannings, but I liked the idea, so it is mentioned here ;) )>{\LaTeX2.5};
+ \tonode[\experimental](latex25)(0,\layer)<Will Robertson suggested in an interview (see refs) an interim unstable version on the way to LaTeX3 with version number 2.5 that should bring package authors towards using LaTeX3 syntax. This version should be backwards incompatible to LaTeX2e. (This version does not exist in any official plannings, but I liked the idea, so it is mentioned here ;) )>{\LaTeX2.5}
\todraw(latex2ε)(latex25)
\steplayer[-3]
- \tonode[\experimental](latex3)(0,\layer)<The long-time successor of LaTeX2e. It is planned to implement a very elaborate low-level programming language. (Almost done by now.) The expl3-package provides an implemantation that can be used on top of LaTeX2e. Several LaTeX packages already make heavy use of expl3. (As does this document.)>{\LaTeX{}3};
+ \tonode[\experimental](latex3)(0,\layer)<The long-time successor of LaTeX2e. It is planned to implement a very elaborate low-level programming language. (Almost done by now.) The expl3-package provides an implemantation that can be used on top of LaTeX2e. Several LaTeX packages already make heavy use of expl3. (As does this document.) LaTeX3 makes use of eTeX primitives and therefore needs this engine or successors. Special adaptions of luaTeX features are starting to evolve.>{\LaTeX{}3}
\todraw(latex25)(latex3)
- \todraw[dotted](xelatex)(latex3)
- \todraw[dotted](pdflatex)(latex3)
- \todraw[dotted](lualatex)(latex3)
-\end{tikzpicture}
+}
-\overviewsection[\ConTeXt]{\ConTeXt\ (Context = con tex t – text with tex; formerly pragmatex)}
%%% CONTEXT %%%
-\begin{tikzpicture}
- \tonode(mki)(0,0)<Original ConTeXt with Dutch low level interface.>{\ConTeXt MkI};
- \tonode[\vip](mkii)(0,-3)<ConTeXt with English low level interface. Works with any TeX-engine, like LaTeX: TeX, e-TeX, pdfTeX, Aleph, XeTeX, ...>{\ConTeXt MkII};
+\clearpage
+\tograph*(\tostruct[\ConTeXt]{\ConTeXt: con\,tex\,t – text with tex}){
+ \tonode(pragmatex)(0,\layer)<Former name of ConTeXt.>{pragmatex}
+ \steplayer[-2]
+
+ \tonode(mki)(0,\layer)<Original ConTeXt with Dutch low level interface.>{\ConTeXt MkI}
+ \todraw(mki)(pragmatex)
+ \steplayer[-2]
+
+ \tonode[\vip](mkii)(0,\layer)<ConTeXt with English low level interface. Works with any TeX-engine, as LaTeX does: TeX, e-TeX, pdfTeX, Aleph, XeTeX, ...>{\ConTeXt MkII}
\todraw(mki)(mkii)
+ \steplayer[-2]
- \tonode(mkiii)(4,-4.5)<Reserved for future use for files supporting XeTeX. Was "skipped" for "practical reasons" (Hans Hagen)>{\ConTeXt\ MkIII};
+ \tonode(mkiii)(4,\layer)<Reserved for future use for files supporting XeTeX. Was "skipped" for "practical reasons" (Hans Hagen)>{\ConTeXt\ MkIII}
\todraw(mkii)(mkiii)
+ \steplayer[-2]
- \tonode[\vip](mkiv)(0,-6)<Specially designed for LuaTeX.>{\ConTeXt MkIV};
+ \tonode[\vip](mkiv)(0,\layer)<Specially designed for LuaTeX.>{\ConTeXt MkIV}
\todraw*(mkii)(mkiv)
-\end{tikzpicture}
-} %% end all stuff
-%% and set it twice, with changing from short to full version
-%% the text version below only comes in fully because there is no need for better overview
-\typesetwholecontent
-\ExplSyntaxNamesOn
-\bool_gset_false:N\short
-\ExplSyntaxNamesOff
-\typesetwholecontent
+}
+
+%% go on with the rare formats
+\clearpage
+%%%% formats %%%%
+\tostruct[Other Formats]{Other Formats}
+
+%%% YTeX %%%
+\tograph(\tostruct(1)[Y\TeX]{Y\TeX}[\experimental]){
+ \tonode(ytex)(0,0)<A macro package developed at MIT. Pronounced "why-TeX", "upsilon-TeX" or "oops-TeX". Tries to offer an easy structure for novices as well as a powerfull macro libraries for experienced users.>{Y\TeX}
+}
+
+%%% StarTeX %%%
+\tograph(\tostruct(1)[Star\TeX]{Star\TeX\ – Starter's \TeX}){
+ \tonode(startex)(0,0)<A format designed to help students with short documents. Using html-like notation: <command> instead of \ command>{Star\TeX}
+}
+
+%%% JadeTeX %%%
+\tograph(\tostruct(1)[Jade\TeX]{Jade\TeX}){
+ \tonode(jadetex)(0,0)<A macro package for processing Jade/OpenJade output.>{Jade\TeX}
+}
\clearpage
-\part{Others}
-\overviewsection{Distributions}[\distro]
+
+\tostruct[Pandora's Box]{Pandora's Box}
\parbox{\textwidth}{\normalsize
-This section will feature the main distributions of \TeX\ and related programs. Of course, not every Linux Distribution's \TeX\ package can be listed here, but only official upstream distributions. So far, only \TeX live and Mik\TeX\ are listed, but I'll add others if they are/were important.
+The following pages will be a hodge-podge of many things that are related to \TeX\ and used in the process of generating documents in different file formats, i.\,e. conversion tools, bibliography tools etc. Feel free to contribute, I'll choose case-by-case if I'll add something or won't include it. Text editors or viewers will \emph{not} be included!
+}
+
+\tostruct(1)[Distributions]{Distributions}[\distro]
+\parbox{\textwidth}{\normalsize
+This section will feature the main distributions of \TeX\ and related programs. Of course, not every Linux Distribution's \TeX\ package can be listed here, but only official upstream distributions.
}
\ExplSyntaxOn
\fp_gset:Nn\layerdist{-1.5}
\ExplSyntaxOff
-\overviewsubsection{\TeX live}
-
-\begin{tikzpicture}
+\tograph(\tostruct(2)[\TeX live]{\TeX live}){
\tonode(web2c)(0,\layer)<An Implementation and Distribution of TeX which translates the original WEB sources to a C code.>{Web2c}
\steplayer
- \tonode(emtex)(3,\layer)<Eberhard Mattes TeX Distribution for MS-DOS and OS2.>{em\TeX}
+ \tonode(emtex)(3,\layer)<Eberhard Mattes' TeX Distribution for MS-DOS and OS2.>{em\TeX}
\todraw.(web2c)(emtex)
\steplayer
@@ -329,7 +349,7 @@ This section will feature the main distributions of \TeX\ and related programs.
\tonode(fptex)(3,\layer)<A free TeX distribution for Win32 based on teTeX, by Fabrice Popineau. Still active, provides up-to-date binaries for Windows. Special support for Japanese Typesetting.>{fp\TeX}
\todraw(fptex)(tetex)
- \steplayer
+ \steplayer[-2.5]
\tonode(xemtex)(4,\layer)<A TeX distribution for Windows, based on fpTeX with XEmacs,AucTeX as IDE for (La)TeX. XemTeX was sponsored by the French government.>{XEm\TeX}
\todraw(xemtex)(fptex)
@@ -342,6 +362,10 @@ This section will feature the main distributions of \TeX\ and related programs.
\tonode(tl2008)(0,\layer)<A new package manager and network installer are available. So installation via the net is possible as well as package updates. Missing packages are not installed on-the-fly. The last of the modern machines is added: luaTeX>{\TeX live2008}
\todraw.(tl2008)(tlpre2008)
+
+ \tonode(gwtex)(5,\layer)<A (re)distribution for Mac OS based on TeXlive by Gerben Wierda. Provides TeX-related packages for the i-Installer. Unsupported from 2007 on.>{gw\TeX}
+ \todraw(tlpre2008)(gwtex)
+
\steplayer
\tonode(tl2009)(0,\layer)<Dropped Omega and Lambda. Aleph and Lamed are kept.>{\TeX live2009}
@@ -351,12 +375,14 @@ This section will feature the main distributions of \TeX\ and related programs.
\tonode(tl2010)(0,\layer)<Up to now, latest release of TeXlive.>{\TeX live2010}
\todraw(tl2010)(tl2009)
- \tonode(tlcontrib)(5,\layer)<An extension of TeXlive that contains packages that TeXlive cannot hold because: not free, binary update, not on CTAN or intermediate release. Useable via the TeXlive manager.>{TLContrib}
+ \tonode(tlcontrib)(-5,\layer)<An extension of TeXlive that contains packages that TeXlive cannot hold because: not free, binary update, not on CTAN or intermediate release. Useable via the TeXlive manager.>{TLContrib}
\todraw.(tl2010)(tlcontrib)
-\end{tikzpicture}
-\overviewsubsection{Mik\TeX}
-\begin{tikzpicture}
+ \tonode(mactex)(5,\layer)<Easy-to-install distribution based on TeXlive. For Mac OS only, it provides a native installer, the TeXShop editor and Mac-specific tools.>{Mac\TeX}
+ \todraw(tl2010)(mactex)
+}
+
+\tograph(\tostruct(2)[Mik\TeX]{Mik\TeX}){
\tonode(mt)(0,\layer)<MikTeX is a TeX distribution originally for Windows only. Copyright by Christian Schenk goes back to 2001>{Mik\TeX}
\steplayer
@@ -372,38 +398,54 @@ This section will feature the main distributions of \TeX\ and related programs.
\todraw(mt28)(mt27)
\steplayer
- \tonode(mt29)(0,\layer)<Windows only (stable version). Beta version for GNU/Linux available. featuring xetex 0.9997.4, pdftex 1.40.11, LuaTeX 0.60.2, mpost 1.211>{Mik\TeX\ 2.9}
+ \tonode(mt29)(0,\layer)<Windows only (stable version). Beta version for GNU/Linux available. featuring xetex 0.9997.4, pdftex 1.40.11, LuaTeX 0.60.2, mpost 1.211. Offers both LaTeX and ConTeXt (Mk IV) formats.>{Mik\TeX\ 2.9}
\todraw(mt29)(mt28)
-\end{tikzpicture}
+ \steplayer
+
+ \tonode(protext)(2,\layer)<A distribution based on MikTeX with a comfortable install procedure, Editor etc. Provides an easy installation for a full (La)TeX environment.>{ProTeXt}
+ \todraw(protext)(mt29)
+}
+
+\tograph(\tostruct(2)[\TeX\ collection]{\TeX\ collection}){
+ \tonode(texcollection)(0,\layer)<A meta-distribution. Provided on DVD by the TUG, this distribution ships with TeXlive, MacTeX and ProTeX as well as with a full CTAN snapshot.>{\TeX\ Collection}
-\overviewsubsection{W32\TeX}
-\begin{tikzpicture}
+}
+
+\tograph(\tostruct(2)[W32\TeX]{W32\TeX}){
\tonode(w32tex)(0,\layer)<A distributon to provide binaries for windows, with special support for Japanese. First version (up to the changelog): 2009/08/02. Still highly up-to-date.>{W32\TeX}
-\end{tikzpicture}
+}
-\newpage
-\overviewsection{Pandora's Box}[\program]
-\parbox{\textwidth}{\normalsize
-The following pages will be a hodge-podge of many things that are related to \TeX\ and used in the process of generating documents in different file formats, i.\,e. conversion tools, bibliography tools etc. Feel free to contribute, I'll choose case-by-case if I'll add something or won't include it. Text editors or viewers will \emph{not} be included!
+\tograph(\tostruct(2)[OzTeX]{OzTeX}){
+ \tonode(oztex)(0,\layer)<A commercial distribution for Mac OS. No longer supported.>{Oz\TeX}
+}
+
+\tograph(\tostruct(2)[for Amiga]{for Amiga}){
+ \tonode(amigatex)(-2,\layer)<By Thomas Rockicki and Radical Eye Software. Commercial distribution for Amiga.>{Amiga-TeX}
+ \tonode(pastex)(2,\layer)<A free distribution for Amiga. Distributed as 5 floppy disks (TeX) plus 2 floppy disks (Metafont). Available from the Aminet.>{pasTeX}
}
-\overviewsubsection[META*]{META*}
+\newpage
%%% META* %%%
-\begin{tikzpicture}
- \tonode(metafont)(0,\layer)<The program for creating the fonts originally used by TeX.>{METAFONT};
+\tograph(\tostruct(1)[META*]{META*}[\program]){
+ \tonode(metafont)(0,\layer)<The program for creating the fonts originally used by TeX.>{METAFONT}
\steplayer
- \tonode(metapost)(0,\layer)<A graphic generating program inspired by METAFONT. MetaPost can produce PostScript graphics as well as SVG.>{MetaPost};
+ \tonode(metafog)(3,\layer)<A program to convert metafont shapes to Type1 contours. Uses mathematically correct transformations instead of autotracing.>{Metafog}
+ \todraw(metafog)(metafont)
+
+ \tonode(metatype1)(-3,\layer)<A program to produce Type1 fonts from metafont source code.>{MetaType1}
+ \todraw(metatype1)(metafont)
+
+ \tonode(metapost)(0,\layer)<A graphic generating program inspired by METAFONT. MetaPost can produce PostScript graphics as well as SVG.>{MetaPost}
\todraw(metapost)(metafont)
\steplayer
- \tonode(metafun)(0,\layer)<"MetaFun is Hans Hagen's extension to (or module for) the MetaPost language.">{MetaFun};
+ \tonode(metafun)(0,\layer)<"MetaFun is Hans Hagen's extension to (or module for) the MetaPost language.">{MetaFun}
\todraw(metafun)(metapost)
-\end{tikzpicture}
+}
-\overviewsubsection[Bib\TeX]{Bib\TeX}
%%% BIBTEX %%%
-\begin{tikzpicture}
+\tograph(\tostruct(1)[Bib\TeX]{Bib\TeX}){
\tonode(bibtex)(0,0)<A helper program to generate a bibliography list.>{\BibTeX}
\steplayer[-1]
@@ -428,74 +470,82 @@ The following pages will be a hodge-podge of many things that are related to \Te
\tonode[\package](biblatex)(3,\layer)<A LaTeX package as frontend for biber.>{Bib\LaTeX}
\todraw(biber)(biblatex)
\todraw(bibtexu)(biblatex)
-\end{tikzpicture}
+ \steplayer
+
+ \tonode[\package](librarian)(5,\layer)<A TeX file (useable with all formats) that typesets BibTeX-style bibliographies without the need of BibTeX. Therefore, it provides a format-independent typesetting of bibliographies.>{Librarian}
+}
%%% dvipdfm %%%
-\overviewsubsection[(x)dvipdf(m)(x)]{(x)dvipdf(m)(x)}
-\begin{tikzpicture}
- \tonode(dvipdf)(0,0)<Converts dvi files to pdf files.>{dvipdf};
+\tograph(\tostruct(1)[{(x)dvipdf(m)(x)}]{(x)dvipdf(m)(x)}){
+ \tonode(dvipdf)(0,0)<Converts dvi files to pdf files.>{dvipdf}
\steplayer
- \tonode(dvipdfm)(0,\layer)<Converts dvi files to pdf files. Does not build on dvipdf, but is an independent implementation.>{dvipdfm};
+ \tonode(dvipdfm)(0,\layer)<Converts dvi files to pdf files. Does not build on dvipdf, but is an independent implementation.>{dvipdfm}
\steplayer
- \tonode(dvipdfmx)(0,\layer)<Extended version of dvipdfm. Support for multi-byte encodings and more pdfTeX features. Still active. Combined work of dvipdfm-jpn and dvipdfm-kor.>{dvipdfmx};
+ \tonode(dvipdfmx)(0,\layer)<Extended version of dvipdfm. Support for multi-byte encodings and more pdfTeX features. Still active. Combined work of dvipdfm-jpn and dvipdfm-kor.>{dvipdfmx}
\todraw(dvipdfm)(dvipdfmx)
\steplayer
- \tonode(xdvipdfmx)(0,\layer)<Converts xdvi files produced by XeTeX to pdf files. Normally always executed after a XeTeX run, so the user won't notice that an xdvi document was created in between.>{xdvipdfmx};
+ \tonode(xdvipdfmx)(0,\layer)<Converts xdvi files produced by XeTeX to pdf files. Normally always executed after a XeTeX run, so the user won't notice that an xdvi document was created in between.>{xdvipdfmx}
\todraw(dvipdfmx)(xdvipdfmx)
-\end{tikzpicture}
-
-\overviewsubsection[Font Technologies]{Font Techonolgies}
-\parbox{\textwidth}{\normalsize
-This section tries to cover the development of font technologies – the most important thing for a typesetting system is it's font mechanism …}
-\begin{tikzpicture}
- \tonode(bitmap)(0,\layer)<Bitmap fonts contain the shape of the letters as a number of dots. If you zoom in, a bitmap letter will show pixels.>{Bitmap fonts}
- \steplayer[-3]
+}
- \tonode(metafont)(0,\layer)<Fonts based on the METAFONT program.>{metafont}
+\tograph(\tostruct(1)[Font Technologies]{Font Techonolgies}[\fonttechnology]
+\parbox{\textwidth}{\large
+This section tries to cover the development of font technologies – the most important thing for a typesetting system is it's font mechanism …\\[4ex]}
+){
+ \tonode(bitmap)(0,\layer)<Bitmap fonts contain the shape of the letters as a number of dots. If you zoom in, a bitmap letter will show pixels. Hence one needs a special version for every resolution.>{Bitmap fonts}
\steplayer[-3]
\tonode(type1)(-2,\layer)<Outline font. The shape of a letter is described as mathematical curves so the letter can be made arbitrarely large without getting pixeled.>{PostScript Type 1}
- \tonode(truetype)(2,\layer)<>{TrueType}
+ \tonode(truetype)(2,\layer)<Available on Windows and Mac OS. Outline font technology with quadratic B splines.>{TrueType}
\tonode(freetype)(6,\layer)<TrueType implementation for Unix.>{FreeType}
\todraw(freetype)(truetype)
\steplayer[-3]
- \tonode(gx)(6,\layer)<Only available for Mac OS.>{TrueType GX}
+ \tonode(gx)(6,\layer)<"Graphis eXtension". A font format only available for Mac OS.>{TrueType GX}
\todraw(truetype)(gx)
\steplayer[-3]
- \tonode(opentype)(-2,\layer)<Extension of TrueType font format, adding support for PostScript font data. Developed by Microsoft and Adobe.>{OpenType}
+ \tonode(opentype)(-2,\layer)<Extension of the TrueType font format, adding support for PostScript font data. Developed by Microsoft and Adobe.>{OpenType}
\todraw(truetype)(opentype)
\todraw(type1)(opentype)
- \tonode(aat)(2,\layer)<Only available for Mac OS.>{AAT}
+ \tonode(aat)(6,\layer)<"Apple Advanced Typographie" fonts are succesors of the GX fonts. Only available for Mac OS, too.>{AAT}
\todraw(aat)(gx)
-\end{tikzpicture}
+}
-%%
-%% I've chosen to typeset the bibliography "by hand" for full control of formatting and behaviour. Also, I can choose my own syntax ☺
-%%
-\clearpage
-\restoregeometry
-\part{Text Views} %% these are generated automatically by the code above.
+\addtocontents{toc}{\newpage\vspace*{2.95cm}} %% indeed, this is ridiculous
+
+\topart{Text Views}
\label{sec:text}
-\settextviews
+
+\large
+\addtokomafont{section}{\huge}
+\addtokomafont{subsection}{\LARGE}
+\addtokomafont{subsubsection}{\Large}
+
+\newgeometry{margin=1.5cm,twocolumn} %% a bit more space for text views, but not too much …
+\settextviews %% these are generated automatically by the code above.
+\onecolumn
\appendix
-\part{Appendix}
-\section{References}
+\topart{Appendix}
+
+%%
+%% I've chosen to typeset the bibliography "by hand" for full control of formatting and behaviour. Also, I can choose my own syntax ☺
+%%
+\tostruct{References}
\label{sec:refs}
-\normalsize\obeylines\flushleft %% to get rid of the still active centering
+\obeylines\flushleft %% to get rid of the still active centering
-The references are in order of occurance in the above document. I.\,e. if you want information about Lua\TeX, it will be below e.\,g. $\epsilon$\TeX.
+The references are in order of occurance in the above document. i.\,e. if you want information about Lua\TeX, it will be below e.\,g. $\epsilon$\TeX. Everything that is not listet as ”book“ is freely available on the internet.
\tobibsection{Books}
- \tobib{D.E. Knuth, D.~Bibby, and I.~Makai. The \TeX book\\ Addison-Wesley Reading, MA, 1986.}
+ \tobib{D.E. Knuth, D.~Bibby, and I.~Makai. \textit{The \TeX book}\\ Addison-Wesley Reading, MA, 1986.}
\tobib{F.~Mittelbach, M.~Goossens, J.~Braams, D.~Carlisle, C.~Rowley, C.~Detig, and
- J.~Schrod. The \LaTeX\ companion. \\ Addison-Wesley, 2004.}
+ J.~Schrod. \textit{The \LaTeX\ companion.} \\ Addison-Wesley, 2004.}
\tobibsection{Overview Articles}
\tobib{Arthur Reutenauer. A Brief History of \TeX. Talk at EuroBacho\TeX\ 2007.}%
@@ -504,42 +554,55 @@ The references are in order of occurance in the above document. I.\,e. if you wa
\tobib{Short Article About Omega And Aleph}<http://www.tex.ac.uk/cgi-bin/texfaq2html?label=omegaleph>
\tobib{Interviews with Will Robertson, Hans Hagen et.\,al.}<http://www.tug.org/interviews>
- \tobibsection{Web Archives}
+ \tobibsection{Archives}
\tobib{CTAN – Comprehensive TeX Archive Network:}<http://www.ctan.org>
\tobib{Historic Archive of TeX Distributions:}<ftp://ftp.tug.org/historic>
- \tobibsection{Engines (Web sources)}
+ \tobibsection{Engines}
\tobib{ANT project page}<http://ant.berlios.de>
\tobib{Yasuki S AITO. Report on JTEX: A Japanese TEX. TUGboat 8 (1987), no. 2, 103\,–\,116.}%
<http://www.tug.org/TUGboat/Articles/tb08-2/tb18saito.pdf>
- \tobib{p\TeX sources and documentation}<http://dante.ctan.org/tex-archive/help/Catalogue/entries/ptex.html>
- \tobib{ML\TeX\ source (CH file)}<http://www.tex.ac.uk/tex-archive/systems/generic/mltex/mltex.ch>
+ \tobib{p\TeX\ sources and documentation}<http://dante.ctan.org/tex-archive/help/Catalogue/entries/ptex.html>
\tobib{enc\TeX\ page}<http://www.olsak.net/enctex.html>
+ \tobib{ML\TeX\ source (CH file)}<http://www.tex.ac.uk/tex-archive/systems/generic/mltex/mltex.ch>
+ \tobib{pdf\TeX\ project page}<http://tug.org/applications/pdftex/>
\tobib{\NTS\ project page}<http://nts.tug.org>
\tobib{V\TeX\ – official homepage of micropress-inc}<http://www.micropress-inc.com/>
+ \tobib{\XeTeX\ project page}<http://tug.org/xetex/>
\tobib{$\epsilon\chi$\TeX\ project page}<http://www.extex.org>
\tobib{ee\TeX\ project page}<http://tex.aanhet.net/eetex>
\tobib{Lua\TeX\ project page}<http://www.luatex.org>
\tobib{i\TeX\ announcement by Don Knuth at the TUG 2010}<http://river-valley.tv/tug-2010/an-earthshaking-announcement>
- \tobibsection{Formats (Web sources)}
+ \tobibsection{Formats}
\tobib{\ConTeXt\ wiki}<http://wiki.contextgarden.net>
\tobib{\LaTeX\ project page}<http://www.latex-project.org>
\tobib{\LaTeX3 project}<http://www.latex-project.org/latex3.html>
-
- \tobibsection{Distributions (Web sources)}
+ \tobib{A\LaTeX: Discussion in TUGboat Vol. 16 (1995), No. 3, p. 269ff.}<http://www.tug.org/TUGboat/Articles/tb16-3/tb48swif.pdf>
+ \tobib{Y\TeX\ on CTAN}<http://tug.ctan.org/tex-archive/macros/ytex/>
+ \tobib{Jade\TeX\ project page}<http://jadetex.sourceforge.net/>
+ \tobib{Star\TeX\ on CTAN}<http://www.ctan.org/tex-archive/macros/startex/>
+
+ \tobibsection{Distributions}
\tobib{fp\TeX: Announcment at TUG 1999}<http://www.tug.org/tug99/program/node39.html>
\tobib{\TeX live development history}<http://tug.org/texlive/doc/texlive-en/texlive-en.html>
+ \tobib{gw\TeX\ project page}<http://ii2.sourceforge.net/tex-index.html>
+ \tobib{Brief History of gwTeX}<http://www.tug.org/twg/mactex/award/2007/gerben/aboutgwtex.html>
\tobib{TLContrib project page}<http://tlcontrib.metatex.org/>
+ \tobib{Mac\TeX\ project page}<http://www.tug.org/mactex>
\tobib{MikTeX project page}<http://miktex.org/>
+ \tobib{Pro\TeX t project page}<http://www.tug.org/protext/>
+ \tobib{\TeX Collection page}<http://www.tug.org/texcollection/>
\tobib{Win32 project page}<http://w32tex.org/>
+ \tobib{Oz\TeX\ project page}<http://www.trevorrow.com/oztex/>
+ \tobib{\TeX\ on Amiga}<http://serpens.de/~zza/amigafaq/AmigaFAQg_49.html>
- \tobibsection{Fonts (Web sources)}
+ \tobibsection{Fonts}
\tobib{Type1 Fonts specifications}<http://partners.adobe.com/public/developer/en/font/T1_SPEC.PDF>
\tobib{The FreeType project}<http://freetype.org/index2.html>
\tobib{OpenType specifications}<http://www.microsoft.com/typography/otspec/default.htm>
- \tobibsection{Original Documentation – Everything Else}
+ \tobibsection{Everything Else}
\tobib{dvipdfmx project page}<http://project.ktug.or.kr/dvipdfmx/>
\clearpage