From 0d5d57c86ee7cff21b2bb96d34606564353c973c Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Thu, 4 Nov 2010 17:50:22 +0000 Subject: tex-overview (3nov10) git-svn-id: svn://tug.org/texlive/trunk@20305 c570f23f-e606-0410-a88d-b1316a301751 --- .../doc/latex/tex-overview/tex-overview.tex | 435 ++++++++++++--------- 1 file changed, 249 insertions(+), 186 deletions(-) (limited to 'Master/texmf-dist/doc/latex/tex-overview/tex-overview.tex') 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){\TeX} - \tonode[\program](ant)(13,\layer){ANT}; + \tonode[\program](ant)(13,\layer){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} \todraw(tex-xet)(tex--xet) - \tonode[\vip](tex3)(7,\layer){\TeX3}; + \tonode[\vip](tex3)(7,\layer){\TeX3} \todraw*(tex)(tex3) \steplayer[-2] - \tonode(enctex)(5.9,\layer){enc\TeX}; + \tonode(enctex)(5.9,\layer){enc\TeX} \todraw(tex3)(enctex) - \tonode(mltex)(8,\layer){ML\TeX}; + \tonode(mltex)(8,\layer){ML\TeX} \todraw(tex3)(mltex) - \tonode[\experimental](uptex)(11,\layer){up\TeX} + \tonode[\experimental](uptex)(11,\layer){up\TeX} \todraw(tex3)(uptex) \todraw(ptex)(uptex) \steplayer[-2] - \tonode(tex2pdf)(7,\layer){\TeX2PDF}; + \tonode(tex2pdf)(7,\layer){\TeX2PDF} \todraw(enctex)(tex2pdf) \todraw(mltex)(tex2pdf) \steplayer[-2] - \tonode(omega)(1,\layer){$\Omega$}; + \tonode(omega)(1,\layer){$\Omega$} \todraw(tex3)(omega) - \tonode[\vip](etex)(4,\layer){$\varepsilon$-\TeX}; + \tonode[\vip](etex)(4,\layer){$\varepsilon$-\TeX} \todraw(tex--xet)(etex) \todraw'(tex3)(etex) - \tonode[\vip](pdftex)(7,\layer){pdf\TeX}; + \tonode[\vip](pdftex)(7,\layer){pdf\TeX} \todraw(tex2pdf)(pdftex) \todraw'(tex3)(pdftex) - \tonode(texgx)(9.5,\layer){\TeX{}gX}; + \tonode(texgx)(9.5,\layer){\TeX{}gX} \todraw(tex3)(texgx) - \tonode(nts)(12,\layer){\NTS}; + \tonode(nts)(12,\layer){\NTS} \todraw(tex3)(nts) \steplayer[-2] - \tonode[\experimental](omega2)(0,\layer){$\Omega_2$}; + \tonode[\experimental](omega2)(0,\layer){$\Omega_2$} \todraw(omega)(omega2) - \tonode[\experimental](vtex)(3.6,\layer){V\TeX}; + \tonode[\experimental](vtex)(3.6,\layer){V\TeX} \todraw(etex)(vtex) \steplayer[-2] - \tonode[\experimental](aleph)(1,\layer){$\aleph$ (Aleph)}; + \tonode[\experimental](aleph)(1,\layer){$\aleph$ (Aleph)} \todraw(omega)(aleph) \todraw(etex)(aleph) - \tonode[\vip](xetex)(8,\layer){\XeTeX}; + \tonode[\vip](xetex)(8,\layer){\XeTeX} \todraw(texgx)(xetex) \todraw*(etex)(xetex) - \tonode[\experimental](extex)(12,\layer){$\epsilon\chi$\TeX}; + \tonode[\experimental](extex)(12,\layer){$\epsilon\chi$\TeX} \todraw(nts)(extex) \todraw(omega)(extex) \todraw(etex)(extex) \todraw(pdftex)(extex) - \tonode[\vip](pdfetex)(5,\layer){pdf($\epsilon$)-\TeX}; + \tonode[\vip](pdfetex)(5,\layer){pdf($\epsilon$)-\TeX} \todraw*(etex)(pdfetex) \todraw*(pdftex)(pdfetex) - \todraw*[dotted](pdfetex)(xetex) \steplayer[-2] - \tonode[\experimental](eetex)(6,\layer){ee\TeX}; + \tonode[\experimental](eetex)(6,\layer){ee\TeX} \todraw(pdfetex)(eetex) \steplayer[-2] - \tonode[\program](lua)(0,\layer)