summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2011-02-19 00:37:41 +0000
committerKarl Berry <karl@freefriends.org>2011-02-19 00:37:41 +0000
commit8f846f8a8c7b2774059df2db0f153948e98cccf1 (patch)
treeff1781fa9b83db1e66c931962c18f57ae3428294 /Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex
parent09eb455bf0a899e9231b600e1326d5e0e4a67aca (diff)
FAQ-en 3.21 (18feb11)
git-svn-id: svn://tug.org/texlive/trunk@21459 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex')
-rw-r--r--Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex114
1 files changed, 72 insertions, 42 deletions
diff --git a/Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex b/Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex
index cbaf0bdca62..75c2064b556 100644
--- a/Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex
+++ b/Master/texmf-dist/doc/generic/FAQ-en/faq-adj-types.tex
@@ -1,4 +1,4 @@
-% $Id: faq-adj-types.tex,v 1.23 2010/08/12 18:14:24 rf10 Exp rf10 $
+% $Id: faq-adj-types.tex,v 1.28 2011/01/04 00:27:59 rf10 Exp rf10 $
\section{Adjusting the typesetting}
@@ -1377,7 +1377,8 @@ Unfortunately, most of the core software predates \PDFTeX{}, so not even
\PDFLaTeX{} sets the correct values into those variables, to match the
paper size specified in a \csx{documentclass} option.
-The \acro{DVI} drivers \ProgName{dvips} and \ProgName{dvipdfm} define
+The \acro{DVI} drivers \ProgName{dvips}, \ProgName{dvipdfm} and its
+extensions (\ProgName{dvipdfmx} and \ProgName{xdvipdfmx}) define
\csx{special} commands for the document to specify its own paper size;
so in those cases, as when \PDFTeX{} or V\TeX{} is being used, the
paper size can be programmed by the document. Users who wish to, may
@@ -1395,21 +1396,26 @@ engine, there are package options which instruct \Package{geometry}
which \csx{special} commands to use. (Note that the options are
ignored if you are using either \PDFLaTeX{} or V\TeX{}.)
-So, the resolution of the problem is to add
+So, the resolution of the problem, when you are using \latex{}, is to add
\begin{quote}
\begin{verbatim}
-\usepackage[dvixxx,...]{geometry}
+\usepackage[processor-option,...]{geometry}
\end{verbatim}
\end{quote}
-(where \pkgoption{dvixxx} is your current favourite \acro{DVI}
-driver~--- \Package{geometry} knows about \pkgoption{dvips} and
-\pkgoption{dvipdfm}), and the document will run correctly with
-\LaTeX{}. If you're using \PDFLaTeX{}, load with
+Where \pkgoption{processor-option} tells the package what will produce
+your (\PS{} or \acro{PDF} driver~--- \Package{geometry} knows about
+\pkgoption{dvips} and \pkgoption{dvipdfm} (\pkgoption{dvipdfm} also
+serves for the extension \ProgName{dvipdfmx} and
+\ProgName{xdvipdfmx}).
+
+If you're using \PDFLaTeX{}, \xetex{} or V\TeX{}, load with
\begin{quote}
\begin{verbatim}
-\usepackage[pdftex,...]{geometry}
+\usepackage[program-option,...]{geometry}
\end{verbatim}
\end{quote}
+where \pkgoption{program-option} is \pkgoption{pdftex},
+\pkgoption{xetex} or \pkgoption{vtex}.
Needless to say, both the ``big'' classes (\Class{koma-script} and
\Class{memoir}) provide their own ways to get the paper size
@@ -1923,14 +1929,14 @@ are subverted by \environment{samepage}). Naturally, if
\environment{samepage} \emph{does} work, it is capable of leaving
stuff jutting out at the bottom of the page.
-A convenient trick is to set all the relevant stuff in a \csx{parbox}
-(or a \environment{minipage} if it contains things like verbatim text
-that may not be in the argument of a \csx{parbox}). The resulting box
-certainly \emph{won't} break between pages, but that's not to say that
-it will actually do what you want it to do: again, the box may be left
-jutting out at the bottom of the page.
+Another convenient trick is to set all the relevant stuff in a
+\csx{parbox} (or a \environment{minipage} if it contains things like
+verbatim text that may not be used in the argument of a \csx{parbox}).
+The resulting box certainly \emph{won't} break between pages, but
+that's not to say that it will actually do what you want it to do:
+again, the box may be left jutting out at the bottom of the page.
-Why do neither of these obvious things work? Because \TeX{} can't
+Why do neither of these obvious things work?~--- Because \TeX{} can't
really distinguish between infinitely awful things.
\environment{Samepage} will make any possible break point ``infinitely
bad'' and boxes don't even offer the option of breaks, but if the
@@ -2007,13 +2013,23 @@ check for things that have the potential to give trouble. In such a
scenario (which has Knuth's authority behind it, if one is to believe
the rather few words he says on the subject in the \TeX{}book) one can
decide, case by case, how to deal with problems at the last
-proof-reading stage. The alternatives are to insert \csx{clearpage}
-commands as necessary, or to use \csx{enlargethispage}. Supposing you
-have a line or two that stray: issue the command
-\cmdinvoke{enlargethispage}{2\csx{baselineskip}} and two lines are
-added to the page you're typesetting. It depends on the document
-whether this looks impossibly awful or entirely acceptable, but the
-command remains a useful item in the armoury.
+proof-reading stage. At this stage, you can manually alter page
+breaking, using either \csx{pagebreak} or \csx{clearpage}, or you can
+place a \csx{nopagebreak} command to suppress unfortunate breaks.
+Otherwise, you can make small adjustments to the page geometry, using
+\csx{enlargethispage}. Supposing you have a line or two that stray:
+issue the command \cmdinvoke{enlargethispage}{2\csx{baselineskip}} and
+two lines are added to the page you're typesetting. Whether this
+looks impossibly awful or entirely acceptable depends on the document
+context, but the command remains a useful item in the armoury.
+
+Note that both \csx{pagebreak} and \csx{nopagebreak} take an optional
+number argument to adjust how the command is to be interpreted. Thus
+\cmdinvoke{pagebreak}[0], the command `suggests' that a page break
+might be worth doing, whereas \cmdinvoke{pagebreak}[4] `demands' a
+page break. Similarly \cmdinvoke{nopagebreak}[0] makes a suggestion,
+while \cmdinvoke{nopagebreak}[4] is a demand. In both commands, the
+default value of the optional argument is 4.
\begin{ctanrefs}
\item[memoir.cls]\CTANref{memoir}
\item[needspace.sty]\CTANref{needspace}
@@ -2515,8 +2531,13 @@ Documentation is available on the % ! line break
The \Package{minted} package is a relatively recent addition. It
requires that documents be pre-processed using an external
-(\ProgName{python}) script, % ! line break
+(\ProgName{python}) script,
\href{http://pygments.org/}{\ProgName{Pygments}}.
+\ProgName{Pygments}, in turn, needs a ``lexer'' that knows the
+language you want to process; lots of these are available, for the
+more commonly-used languages, and there is advice on ``rolling your
+own'' on the % ! line break.
+<a href='http://pygments.org/docs/lexerdevelopment/'>\ProgName{Pygments} site</a>
The \ProgName{lgrind} system is another well-established pre-compiler,
with all the facilities one might need and a wide repertoire of
@@ -2820,21 +2841,30 @@ developed Music\TeX{}, which allows the typesetting of polyphonic and
other multiple-stave music; Music\TeX{} remains available, but is most
definitely no longer recommended.
-Music\TeX{} has been superseded by its successor MusiX\TeX{}, which is
-a three-pass system (with a processor program that computes values for
-the element spacing in the music), and achieves finer control than is
-possible in the unmodified \TeX{}-based mechanism that Music\TeX{}
-uses. Daniel Taupin's is the only version of MusiX\TeX{} currently
-being developed (the original author, Andreas Egler, had an
-alternative version, but he is now working on a different package
-altogether).
-
-Input to Musix\TeX{} is extremely tricky stuff, and Don Simons'
-preprocessor \ProgName{pmx} is the preferred method of creating input
-for Taupin's version. \ProgName{Pmx} greatly eases use of
-Musix\TeX{}, but it doesn't support the full range of Musix\TeX{}'s
-facilities directly; however, it does allow in-line Musix\TeX{} code
-in \ProgName{pmx} sources.
+Music\TeX{} has been superseded by a further development called
+MusiX\TeX{}, which is a three-pass system (with a processor program
+that computes values for the element spacing in the music, and sorts
+out spaces and ties (which Music\tex{} does ``woodenly''~--- playing
+from a Music\tex{}-typeset page is entirely possible, but the look of
+the slurs is very unsatisfying). Thus Musix\tex{} achieves finer
+control than is possible with the unmodified \TeX{}-based mechanism
+that Music\TeX{} uses.
+
+The original author of Musix\tex{}, Andreas Egler, withdrew from
+development of the package; he has a further package Opus\tex{} (not
+on \acro{CTAN}) which is focused on typesetting Gregorian chant and
+the like.
+
+Daniel Taupin forked his development of MusiX\TeX{}, and his is the
+only version currently maintained (by Daniel's successors, since
+Daniel died).
+
+Input to MusiX\TeX{} is tricky stuff, and Don Simons' preprocessor
+\ProgName{pmx} is the preferred method of creating input for Taupin's
+version. \ProgName{Pmx} greatly eases use of MusiX\TeX{}, but it
+doesn't support the full range of MusiX\TeX{}'s facilities directly;
+however, it does allow in-line MusiX\TeX{} code in \ProgName{pmx}
+sources.
Dirk Laurie's \ProgName{M-Tx} allows preparation of music with lyrics;
it operates ``on top of'' \ProgName{pmx}
@@ -2853,14 +2883,14 @@ Music\TeX{} source code.
There is a mailing list (\Email{TeX-music@icking-music-archive.org})
for discussion of typesetting music in \TeX{}; it mostly covers
-Musix\TeX{} and related systems. To subscribe, use
+MusiX\TeX{} and related systems. To subscribe, use
\URL{http://icking-music-archive.org/mailman/listinfo/tex-music/}
An alternative (free) means of embedding music examples into \AllTeX{}
documents is \href{http://www.lilypond.org}{Lilypond}. Lilypond is
(at heart) a batch music typesetting system with plain text input that
does most of its work without TeX. Lilypond's input syntax is far
-less cryptic than is Musix\TeX{}'s, and it handles much more stuff
+less cryptic than is MusiX\TeX{}'s, and it handles much more stuff
automatically, yielding the same or better quality with less effort.
Lilypond can also produce basic \acro{MIDI} output.
\begin{ctanrefs}
@@ -2869,7 +2899,7 @@ Lilypond can also produce basic \acro{MIDI} output.
\item[midi2tex]\CTANref{midi2tex}
\item[musictex]\CTANref{musictex}
% ! line breaks
-\item[musixtex \nothtml{\rmfamily}(Taupin's version)]\CTANref{musixtex-taupin}
+\item[musixtex \nothtml{\rmfamily}(Taupin's version)]\CTANref{musixtex}
\item[musixtex \nothtml{\rmfamily}(Egler's version)]\CTANref{musixtex-egler}
\item[mutex]\CTANref{mutex}
\item[pmx]\CTANref{pmx}