diff options
| author | Khaled Hosny <khaledhosny@eglug.org> | 2010-05-12 21:41:55 +0300 | 
|---|---|---|
| committer | Khaled Hosny <khaledhosny@eglug.org> | 2010-05-12 21:41:55 +0300 | 
| commit | 944e88703bcba2ca878219981db549fd5d7f1fb9 (patch) | |
| tree | d8d557cd9ce5b5b238bd68578a8a01bf422f7249 | |
| parent | 441b4d98ed5edb423b1de9095770789a8f1cfd3c (diff) | |
| download | luaotfload-944e88703bcba2ca878219981db549fd5d7f1fb9.tar.gz | |
Documentation updatesv1.07
| -rw-r--r-- | luaotfload.dtx | 100 | 
1 files changed, 61 insertions, 39 deletions
| diff --git a/luaotfload.dtx b/luaotfload.dtx index 4ec2de5..8c2de48 100644 --- a/luaotfload.dtx +++ b/luaotfload.dtx @@ -102,7 +102,7 @@ and the derived files  \ProvidesFile{luaotfload.drv}%    [2010/05/10 v1.07 ConTeXt font loading system]%  \documentclass{ltxdoc} -\usepackage{metalogo,multicol,mdwlist} +\usepackage{metalogo,multicol,mdwlist,fancyvrb}  \usepackage[colorlinks=true]{hyperref}  \def\LuaTeX{Lua\TeX} @@ -110,6 +110,7 @@ and the derived files  \EnableCrossrefs  \CodelineIndex +\VerbatimFootnotes  \begin{document}    \DocInput{luaotfload.dtx}%  \end{document} @@ -144,14 +145,15 @@ and the derived files  % \maketitle  %  % \begin{abstract} -% \ConTeXt\ font loading system, providing the possibility to load OTF fonts -% with a lot of features, and extended font loading syntax. +% Adaptation of \ConTeXt\ font loading system, providing the ability to load +% \textsf{OpenType} fonts with a lot of features, and extended font loading +% syntax.  % \end{abstract}  %  % \tableofcontents  %  % \section{Documentation} -%  +%  % \subsection{Introduction}  %  % Font management and installation has always been painful with \TeX\ (and @@ -171,7 +173,7 @@ and the derived files  %  % This package is quite low-level, and should be loaded directly in the macro  % package, like it is in \ConTeXt. Sadly, Plain and \LaTeX\ are frozen and -% it's even impossible to adapt them to the new engines.  +% it's even impossible to adapt them to the new engines.  %  % \subsection{Loading fonts}  % @@ -186,11 +188,12 @@ and the derived files  %  % \paragraph{Prefix}  % -% Can be either \texttt{file:} or \texttt{name:} and are used to select between filename based -% or font name based search mechanisms. -% Loading fonts based on filename is restricted to files found by \textsf{kpathsea} -% (typically in the \textsc{texmf} tree). Surrounding font name with square -% brackets is synonym to using \texttt{file:} prefix (for compatibility with \XeTeX). +% Can be either \texttt{file:} or \texttt{name:} and are used to select between +% filename based or font name based search mechanisms. +% Loading fonts based on filename is restricted to files found by +% \textsf{kpathsea} (typically in the \textsc{texmf} tree). Surrounding font +% name with square brackets is synonym to using \texttt{file:} prefix (for +% compatibility with \XeTeX).  % This is usually used for loading old \textsc{tfm} fonts.  % Accessing fonts by fontname allows loading system installed fonts as well as  % \textsc{texmf} ones, and requires a font names database that can be generated @@ -206,10 +209,10 @@ and the derived files  %  % \paragraph{Font features}  % -% Font are a semicolon separated list of items, which are either font parameters -% in the form of |key=value|, or switches to enable/disable certain font +% Font features are a semicolon separated list of items, which are either +% |key=value| font parameters, or switches to enable/disable certain font  % features, in the form of |+feat|/|-feat|. -% The supported parameters are: +% The supported keys are:  % \begin{description}  % \item [mode] \hfill \\  % \textsf{luaotfload} has two OpenType processing modes; \texttt{base} mode @@ -217,10 +220,16 @@ and the derived files  % features to traditional \TeX\ ligaturing and kerning mechanisms and is a bit  % faster, and \texttt{node} mode which, hopefully, supports OpenType fully and  % works by direct processing of node list at lua end and is a bit slower. -% Note that \texttt{node} mode doesn't work inside math. By default, -% \texttt{base} mode is used. +% Note that \texttt{node} mode doesn't work inside math. +% +% By default, \texttt{base} mode is used, however it is advisable to always +% enable \texttt{node} made, except for math fonts, otherwise many OpenType +% features will not function properly or even not work at all, especially for +% advanced scripts like Arabic.  % -% \item [script] \hfill \\ OpenType script string, default value is |dflt|. +% \item [script] \hfill \\ +% OpenType script string, default value is |dflt|. Some fonts don't assign +% features to |dflt| script, in this case script need to be set explicitly.  %  % \item [language] \hfill \\ OpenType language string, default value is |latn|.  % @@ -232,36 +241,45 @@ and the derived files  % \url{http://fontforge.sourceforge.net/featurefile.html} and  % \url{http://www.adobe.com/devnet/opentype/afdko/topic_feature_file_syntax.html}.  % +% For example, to set a |tkrn| feature from |mykern.fea| file: +% +% |\font\lmr=Latin Modern Roman:featurefile=mykern.fea;+tkrn| +%  % \item [color] \hfill \\  % font color, defined as a triplet of two-digit Hex RGB values, with optionally  % another value for the transparency (where |00| is completely transparent and  % |FF| is opaque.)  % -% \item [protrosion]	\hfill \\ TODO -% \item [expansion]	\hfill \\ TODO +% For example, to set text in semitransparent red: +% +% |\font\lmr=Latin Modern Roman:color=FF0000BB| +% +% \item [protrusion \& expansion] \hfill \\ +% Both keys control microtypographic features of the font, namely glyph +% protrusion and expansion. The value of the key is the name of predefined +% lua tables of protrusion and expansion values, see the bottom of +% \texttt{otfl-font-dum.lua} file for an example of such tables. The only +% predefined value is |default|. +% +% For example, to enable default protrusion\footnote{You also need to set +% |\pdfprotrudechars2 \pdfadjustspacing2| to activate protrusion and expansion, +% respectively. See PDF\TeX\ manual for details}: +% +% |\font\lmr=Latin Modern Roman:protrusion=default| +%  % \end{description}  % -% \subparagraph{Additional font features} +% \subparagraph{Non-standard font features}  % \textsf{luaotfload} defines some additional font feature not defined in  % OpenType, currently three features are defined:  %  % \begin{itemize*} -% \item \texttt{anum}: replaces European numbers with eastern Arabic numbers. +% \item \texttt{anum}: replaces European numbers with eastern Arabic numbers or +% Persian numbers, depending on the value of |language|.  % \item \texttt{tlig}: applies legacy \TeX\ ligatures (|``''-- -- !` ?` <<>>|).  % \item \texttt{trep}: applies legacy \TeX\ replacements (|`'"|).  % \end{itemize*}  % -% \subsubsection{Examples} -% \begin{verbatim} -% \font\testa=file:lmroman10-regular                  at 12pt \testa \input tufte \par -% \font\testb=file:lmroman12-regular:+liga;           at 24pt \testb effe flink fietsen \par -% \font\testc=file:lmroman12-regular:mode=node;+liga; at 24pt \testc effe flink fietsen \par -% \font\testd=name:lmroman10bold                      at 12pt \testd a bit bold \par -% -% \font\teste=[lmroman12-regular]:+liga at 30pt \teste text -% \font\testf=[lmroman12-regular]       at 40pt \testf more text -% \end{verbatim} -%  % \subsection{\ConTeXt\ files needed}  %  % This package is a wrapper for several files taken from the \ConTeXt\ macro @@ -300,20 +318,24 @@ and the derived files  % \item \texttt{font-dum.lua}  % \end{itemize*}  % \end{multicols} -%  +%  % \subsection{Troubleshooting}  %  % If you encounter problems with some fonts, please first update to the latest  % version of this package before reporting a bug, as this package is under  % active development.  % -% A very common problem is the lack of features for some otf fonts even when -% specified. It can be related to the fact that some fonts do not provide -% features for the |dflt| script, which is the default one in this package, -% so you may have to specify the script in the command line, for example: +% A very common problem is the lack of features for some OpenType fonts +% even when specified. It can be related to the fact that some fonts do not +% provide features for the |dflt| script, which is the default one in this +% package, so you may have to specify the script in the command line, for +% example:  %  % |\font\myfont = MyFont.otf:script=latn;+liga;|  % +% Also, some feature like contextual substitution, |calt|, will only work with +% |node| mode. +%  % \section{\texttt{luaotfload.lua}}  %  % \iffalse @@ -424,7 +446,7 @@ luaotfload.loadmodule('node-ini.lua')  function attributes.private(name)      local number = luatexbase.attributes['otfl@'..name] -    if not number then  +    if not number then          error('asking for attribute %s, but not declared. '              ..'Please report to the maintainer of luaotfload.',                 name) @@ -436,7 +458,7 @@ end  %  %    Some more modules. We don't load neither \texttt{font-enc.lua} nor  %    \texttt{font-afm.lua} as it will never be used here. -%     +%  %    We also remove a warning from \texttt{node-fnt.lua} as it is \ConTeXt\  %    specific.  % @@ -469,7 +491,7 @@ luaotfload.loadmodule('font-clr.lua')  %    \end{macrocode}  % -%    Finally two functions  +%    Finally two functions  %  %    \begin{macrocode} | 
