diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/luaotfload-context.tex | 457 | ||||
-rw-r--r-- | doc/luaotfload-latex.tex | 2 | ||||
-rw-r--r-- | doc/luaotfload-main.tex | 183 |
3 files changed, 578 insertions, 64 deletions
diff --git a/doc/luaotfload-context.tex b/doc/luaotfload-context.tex new file mode 100644 index 0000000..aeca7cb --- /dev/null +++ b/doc/luaotfload-context.tex @@ -0,0 +1,457 @@ +% macros=mkvi +%% Copyright (C) 2009-2014 +%% +%% by Elie Roux <elie.roux@telecom-bretagne.eu> +%% and Khaled Hosny <khaledhosny@eglug.org> +%% and Philipp Gesang <philipp.gesang@alumni.uni-heidelberg.de> +%% +%% This file is part of Luaotfload. +%% +%% Home: https://github.com/lualatex/luaotfload +%% Support: <lualatex-dev@tug.org>. +%% +%% Luaotfload is under the GPL v2.0 (exactly) license. +%% +%% ---------------------------------------------------------------------------- +%% +%% Luaotfload is free software; you can redistribute it and/or +%% modify it under the terms of the GNU General Public License +%% as published by the Free Software Foundation; version 2 +%% of the License. +%% +%% Luaotfload is distributed in the hope that it will be useful, +%% but WITHOUT ANY WARRANTY; without even the implied warranty of +%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +%% GNU General Public License for more details. +%% +%% You should have received a copy of the GNU General Public License +%% along with Luaotfload; if not, see <http://www.gnu.org/licenses/>. +%% +%% ---------------------------------------------------------------------------- +%% + +\unprotect + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% layout and paper +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\setuppapersize [A5] [A5] %% 148×210 + +\definelayout [mainlayout] [ + backspace=15mm, %% 133 + textwidth=103mm, + topspace=15mm, +] + +\setuplayout [mainlayout] + +\setuppagenumbering [location=,alternative=doublesided] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% colors +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\usecolors [x11] +\definecolor [primarycolor] [dodgerblue4] +\definecolor [secondarycolor] [goldenrod4] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% interaction +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\setupinteraction [ + state=start, + page=no, + click=yes, + style=italic, + color=primarycolor, + contrastcolor=secondarycolor, + title={The Luaotfload package}, + subtitle={OpenType layout system for Plain TeX and LaTeX}, + author={Elie Roux & Khaled Hosny & Philipp Gesang}, + keywords={luatex, lualatex, unicode, opentype}, +] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% fonts +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\usemodule [simplefonts] + +\definefontfeature [default] [default] [mode=base,liga=yes,dlig=yes,tlig=yes,onum=yes] +\definefontfeature [monospace] [liga=no,tlig=no,onum=no] + +\definefontfamily [mainface] [serif] [Linux Libertine O] [features=default] +%\definefontfamily [mainface] [serif] [Liberation Serif] [feature=default] +%\definefontfamily [mainface] [sans] [Iwona] [feature=default] +\definefontfamily [mainface] [sans] [Iwona Medium] [ + feature=default, + it=file:IwonaMedium-Italic.otf, + tf=file:IwonaMedium-Regular.otf, + bf=file:Iwona-Bold.otf, + bi=file:Iwona-BoldItalic.otf, +] +%definefontfamily [mainface] [sans] [DejaVu Sans] [feature=default] +\definefontfamily [mainface] [mono] [Liberation Mono] [scale=0.85,features=monospace] + +\setupbodyfont [mainface,10pt] + +\def \LUA {Lua} +\def \LUALATEX {Lua\LATEX} +\def \OpenType {\identifier{Open\kern-.25ex Type}} + +\definealternativestyle [emphasis:texmacro] [\ss \it \letterbackslash] [\ss \it \letterbackslash] +\definealternativestyle [emphasis:identifier] [\ss] [\ss] +\definealternativestyle [emphasis:normal] [\sl] [\sl] +\definealternativestyle [emphasis:abbrev] [{\feature [+][smallcaps]}] [{\feature [+][smallcaps]}] +\definealternativestyle [emphasis:Largefont] [{\switchtobodyfont[14pt]}] [{\switchtobodyfont[14pt]}] +\definealternativestyle [emphasis:smallcaps] [{\feature [+][smallcaps]}] [{\feature [+][smallcaps]}] +%definealternativestyle [emphasis:nonproportional] [\mono] [\mono] +\definealternativestyle [emphasis:nonproportional] [\tt] [\tt] +\definealternativestyle [head:section] [{\roman\feature[+][smallcaps]}] [{\roman\feature[+][smallcaps]}] +\definealternativestyle [head:subsection] [{\roman\feature[+][smallcaps]}] [{\roman\feature[+][smallcaps]}] +\definealternativestyle [head:subsubsection] [{\roman\feature[+][smallcaps]}] [{\roman\feature[+][smallcaps]}] +\definealternativestyle [typing:luafunction] [\italic] [\italic] +\definealternativestyle [typing:fileent] [\tt] [\tt] + +\definehighlight [texmacro] [style=emphasis:texmacro] %% cs +\definehighlight [identifier] [style=emphasis:identifier] %% names +\definehighlight [abbrev] [style=emphasis:abbrev] %% acronyms +\definehighlight [emphasis] [style=emphasis:normal] %% level 1 emph + +\definehighlight [Largefont] [style=emphasis:Largefont] %% font size +\definehighlight [smallcaps] [style=emphasis:smallcaps] %% font feature +\definehighlight [nonproportional] [style=emphasis:nonproportional] %% font switch + +\definetype [fileent] [style=typing:fileent] +\definetype [luafunction] [style=typing:luafunction] +\setuptyping [style=ttx] + +\definebodyfontenvironment [8pt] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% headings +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\setuphead [section] [style=head:section, alternative=inmargin] +\setuphead [subsection] [style=head:subsection, alternative=inmargin] +\setuphead [subsubsection] [style=head:subsubsection,alternative=inmargin] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% running headers +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\setupheadertexts + [{\tfx \getmarking[section]}] [pagenumber] + [pagenumber] [{\tfx \fileent{Luaotfload} Manual}] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% structurals +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%% section +\def \beginsection {\dosingleempty \section_begin_indeed} + +\def \section_begin_indeed [#ref]#title{% + \iffirstargument + \startsection [reference=#ref,title=#title]% + \else + \startsection [title=#title]% + \fi +} + +\let \endsection \stopsection + +%% subsection +\def \beginsubsection {\dosingleempty \section_begin_indeed} + +\def \subsection_begin_indeed [#ref]#title{% + \iffirstargument + \startsubsection [reference=#ref,title=#title]% + \else + \startsubsection [title=#title]% + \fi +} + +\let \endsubsection \stopsection + +%% subsubsection +\def \beginsubsubsection {\dosingleempty \section_begin_indeed} + +\def \subsubsection_begin_indeed [#ref]#title{% + \iffirstargument + \startsubsubsection [reference=#ref,title=#title]% + \else + \startsubsubsection [title=#title]% + \fi +} + +\let \endsubsubsection \stopsection + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% inline verbatim +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%% Context offers both \type{…} and \type<<…>>, but not an unbalanced +%% one that we could map directly onto Latex’s \verb|…|. + +\definetype [inlinecode] [style=emphasis:nonproportional] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% codelistings +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% Now *that’s* what I call easy. + +\unexpanded \def \beginlisting {% + \grabbufferdatadirect{listing}{beginlisting}{endlisting}% +} + +\unexpanded \def \endlisting {\typebuffer [listing]} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% enumerations and lists +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\definedescription [descriptionitem] [ + align=right, + alternative=hanging, + width=2em, +] + +\def \begindescriptions {% + \begingroup + \def \beginnormalitem ##1\endnormalitem{% + \startitem##1\stopitem + } + \let \endnormalitem \relax + \let \beginaltitem \startdescriptionitem + \let \endaltitem \stopdescriptionitem +} + +\let \enddescriptions \endgroup + + +\definedescription [definitionitem] [ + align=right, + alternative=hanging, +] + +\def \begindefinitions {% + \begingroup + \def \beginnormalitem ##1\endnormalitem{% + \startitem##1\stopitem + } + \let \endnormalitem \relax + \let \beginaltitem \startdefinitionitem + \let \endaltitem \stopdefinitionitem +} + +\let \enddefinitions \endgroup + + +\definedescription [filelistitem] [ + align=normal, + alternative=hanging, + headstyle=typing:fileent, + width=4cm, +] + +\def \beginfilelist {% + \begingroup + \def \beginnormalitem ##1\endnormalitem{% + \startitem##1\stopitem + } + \let \endnormalitem \relax + \let \beginaltitem \startfilelistitem + \let \endaltitem \stopfilelistitem +} + +\let \endfilelist \endgroup + +\definedescription [functionlistitem] [ + align=normal, + alternative=hanging, + headstyle=typing:luafunction, + width=4cm, +] + +\def \beginfunctionlist {% + \begingroup + \def \beginnormalitem ##1\endnormalitem{% + \startitem##1\stopitem + } + \let \endnormalitem \relax + \let \beginaltitem \startfunctionlistitem + \let \endaltitem \stopfunctionlistitem +} + +\let \endfunctionlist \endgroup + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% columns +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def \begindoublecolumns {\startcolumns [2]} +\let \enddoublecolumns \stopcolumns + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% alignment +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\setupnarrower [before={\blank[line]},after={\blank[line]}] +\let \beginnarrower \startnarrower +\let \endnarrower \stopnarrower + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% special elements +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def \meta #1{<{\italic #1}>} + +\def \beginabstractcontent {% + \grabbufferdatadirect{abstractcontent}{beginabstractcontent}{endabstractcontent}% +} + +\let \endabstractcontent \relax + +\def \setdocumenttitle #1{\setvalue {document_title}{#1}} +\def \setdocumentdate #1{\setvalue {document_date}{#1}} +\def \setdocumentauthor #1{\setvalue {document_author}{#1}} + +\let \typesetdocumenttitle \relax +\let \beginfrontmatter \relax + +\def \endfrontmatter { + \startstandardmakeup + \vfill + \strut \hfill + \startframed [frame=off,align=middle,width=.5\textwidth] + \Largefont{\getvalue {document_title}} + \stopframed + \hfill \strut \par + + \blank [2*big] + + \strut \hfill + \startframed [frame=off,align=middle,width=.65\textwidth] + \setuplocalinterlinespace [18pt] + \getvalue {document_author} + \stopframed + \hfill \strut \par + + \vfill + \strut \hfill \getvalue {document_date} \hfill \strut + \blank [2*big] + + \strut \hfill + \startframed [width=.7\textwidth,align=normal,style=tfx,frame=off]% + \getbuffer [abstractcontent] + \stopframed + \hfill \strut + \stopstandardmakeup +} + +\let \typesetcontent \completecontent + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% floats +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% XXX we can improve on this part later + +\usemodule [vim] +\definevimtyping [bnf] [syntax=bnf] +\definefloat [syntax] [figure] + +\def \beginsyntaxfloat #reference#caption{% + \begingroup + \edef \currentreference {#reference}% + \edef \currentcaption {#caption}% + \grabbufferdatadirect{rawsyntaxdata}{beginsyntaxfloat}{endsyntaxfloat}% +} + +\def \endsyntaxfloat {% + \savebuffer [rawsyntaxdata] [rawsyntaxdata] + \startplacesyntax [ + reference=\currentreference, + title={\currentcaption}, + ] + %% there’s no \typebnfbuffer in t-vim :( + \typebnffile {\jobname-rawsyntaxdata.tmp} + \stopplacesyntax + \endgroup% +} + +\def \figurefloat #reference#caption#file{% + \startplacefigure [ + reference=#reference, + title={#caption}, + ] + \externalfigure [#file] [width=\textwidth] + \stopplacefigure +} + + +\def \tablefloat #reference#caption#content{% + \startplacetable [ + reference=#reference, + title={#caption}, + ] + #content + \stopplacetable +} + + +%% tables + + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% tables +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\setupxtable [frame=off,option=stretch,textwidth=\dimexpr(\textwidth/2)] + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% hyperlinks and references +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\unexpanded \def \hyperlink{% + \dosingleempty \hyperlink_indeed% +} + +\def \hyperlink_indeed [#text]#url{% + \iffirstargument + \useURL [temporary_url] [#url] [] [#text]% + \else + \useURL [temporary_url] [#url]% + \fi% + \from [temporary_url]% +} + + +\def \email #1{\goto{#1}[url(mailto:#1)]} + +\def \label #tag{\reference [#tag]\empty} +\def \pageref #tag{\at{page}{#tag}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% escaped characters +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\let \charpercent \letterpercent +\let \charbackslash \letterbackslash +\let \chartilde \lettertilde + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%% main +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\protect + +\newif \ifcontextmkiv \contextmkivtrue + +\starttext + \input luaotfload-main.tex +\stoptext + diff --git a/doc/luaotfload-latex.tex b/doc/luaotfload-latex.tex index 42799bf..3045c26 100644 --- a/doc/luaotfload-latex.tex +++ b/doc/luaotfload-latex.tex @@ -245,6 +245,8 @@ \def \first {####1}% #2 } + \let \beginaltitem \altitem + \let \endaltitem \relax } \expandafter \def \csname end#1\endcsname {% diff --git a/doc/luaotfload-main.tex b/doc/luaotfload-main.tex index 0098405..0e74aa9 100644 --- a/doc/luaotfload-main.tex +++ b/doc/luaotfload-main.tex @@ -1,3 +1,16 @@ +%\beginsection {foo} + %bar baz +%\endsection + +%\begindescriptions + + %\beginaltitem {mode} foo + %%\identifier{luaotfload} has two \OpenType processing + %%\emphasis{modes}: +%\enddescriptions + +%\endinput + %% Copyright (C) 2009-2014 %% %% by Elie Roux <elie.roux@telecom-bretagne.eu> @@ -514,7 +527,7 @@ obviously, \inlinecode{random}. \begindescriptions - \altitem {mode} + \beginaltitem {mode} \identifier{luaotfload} has two \OpenType processing \emphasis{modes}: \identifier{base} and \identifier{node}. @@ -536,8 +549,9 @@ obviously, \inlinecode{random}. By default \identifier{luaotfload} is in \identifier{node} mode, and \identifier{base} mode has to be requested where needed, e.~g. for math fonts. + \endaltitem - \altitem {script} \label{script-tag} + \beginaltitem {script} \label{script-tag} An \OpenType script tag;\footnote{% See \hyperlink {http://www.microsoft.com/typography/otspec/scripttags.htm} for a list of valid values. @@ -550,14 +564,16 @@ obviously, \inlinecode{random}. Some fonts, including very popular ones by foundries like Adobe, do not assign features to the \inlinecode{dflt} script, in which case the script needs to be set explicitly. + \endaltitem - \altitem {language} + \beginaltitem {language} An \OpenType language system identifier,\footnote{% Cf. \hyperlink {http://www.microsoft.com/typography/otspec/languagetags.htm}. } defaulting to \inlinecode{dflt}. + \endaltitem - \altitem {featurefile} + \beginaltitem {featurefile} A comma-separated list of feature files to be applied to the font. % @@ -585,8 +601,9 @@ obviously, \inlinecode{random}. It can be read and applied as follows: \inlinecode{\\font \\test = Latin Modern Roman:featurefile=tkrn.fea;+tkrn} + \endaltitem - \altitem {color} + \beginaltitem {color} A font color, defined as a triplet of two-digit hexadecimal \abbrev{rgb} values, with an optional fourth value for transparency @@ -598,8 +615,9 @@ obviously, \inlinecode{random}. \beginlisting \font \test = "Latin Modern Roman:color=FF0000BB" \endlisting + \endaltitem - \altitem {kernfactor \& letterspace} + \beginaltitem {kernfactor \& letterspace} Define a font with letterspacing (tracking) enabled. % In \identifier{luaotfload}, letterspacing is implemented by @@ -660,9 +678,10 @@ obviously, \inlinecode{random}. % The implementation of both functions is left entirely to the user. + \endaltitem - \altitem {protrusion \& expansion} + \beginaltitem {protrusion \& expansion} These keys control microtypographic features of the font, namely \emphasis{character protrusion} and \emphasis{font expansion}. @@ -698,6 +717,7 @@ obviously, \inlinecode{random}. \beginlisting \font \test = LatinModernRoman:protrusion=default \endlisting + \endaltitem \enddescriptions \endsubsection @@ -711,12 +731,13 @@ Currently (2014) there are three of them: \begindescriptions - \altitem {anum} + \beginaltitem {anum} Substitutes the glyphs in the \abbrev{ascii} number range with their counterparts from eastern Arabic or Persian, depending on the value of \identifier{language}. + \endaltitem - \altitem {tlig} + \beginaltitem {tlig} Applies legacy \TEX ligatures: \begintabulate [rlrl] @@ -735,9 +756,11 @@ Currently (2014) there are three of them: assignment \inlinecode {mapping=text-tex} using \XETEX's input remapping feature. } + \endaltitem - \altitem {itlc} + \beginaltitem {itlc} Computes italic correction values (active by default). + \endaltitem \enddescriptions @@ -1050,11 +1073,16 @@ categories. \begindoublecolumns \begindefinitions - \altitem{l-lua.lua} \altitem{l-lpeg.lua} - \altitem{l-function.lua} \altitem{l-string.lua} - \altitem{l-table.lua} \altitem{l-io.lua} - \altitem{l-file.lua} \altitem{l-boolean.lua} - \altitem{l-math.lua} \altitem{util-str.lua} + \beginaltitem {l-lua.lua} \endaltitem + \beginaltitem {l-lpeg.lua} \endaltitem + \beginaltitem {l-function.lua} \endaltitem + \beginaltitem {l-string.lua} \endaltitem + \beginaltitem {l-table.lua} \endaltitem + \beginaltitem {l-io.lua} \endaltitem + \beginaltitem {l-file.lua} \endaltitem + \beginaltitem {l-boolean.lua} \endaltitem + \beginaltitem {l-math.lua} \endaltitem + \beginaltitem {util-str.lua} \endaltitem \enddefinitions \enddoublecolumns @@ -1064,18 +1092,18 @@ categories. with \identifier{luaotfload}. \begindoublecolumns \begindefinitions - \altitem{luatex-basics-gen.lua} - \altitem{luatex-basics-nod.lua} - \altitem{luatex-fonts-enc.lua} - \altitem{luatex-fonts-syn.lua} - \altitem{luatex-fonts-tfm.lua} - \altitem{luatex-fonts-chr.lua} - \altitem{luatex-fonts-lua.lua} - \altitem{luatex-fonts-inj.lua} - \altitem{luatex-fonts-otn.lua} - \altitem{luatex-fonts-def.lua} - \altitem{luatex-fonts-ext.lua} - \altitem{luatex-fonts-cbk.lua} + \beginaltitem{luatex-basics-gen.lua} \endaltitem + \beginaltitem{luatex-basics-nod.lua} \endaltitem + \beginaltitem{luatex-fonts-enc.lua} \endaltitem + \beginaltitem{luatex-fonts-syn.lua} \endaltitem + \beginaltitem{luatex-fonts-tfm.lua} \endaltitem + \beginaltitem{luatex-fonts-chr.lua} \endaltitem + \beginaltitem{luatex-fonts-lua.lua} \endaltitem + \beginaltitem{luatex-fonts-inj.lua} \endaltitem + \beginaltitem{luatex-fonts-otn.lua} \endaltitem + \beginaltitem{luatex-fonts-def.lua} \endaltitem + \beginaltitem{luatex-fonts-ext.lua} \endaltitem + \beginaltitem{luatex-fonts-cbk.lua} \endaltitem \enddefinitions \enddoublecolumns @@ -1084,12 +1112,17 @@ categories. \CONTEXT. \begindoublecolumns \begindefinitions - \altitem{data-con.lua} \altitem{font-ini.lua} - \altitem{font-con.lua} \altitem{font-cid.lua} - \altitem{font-map.lua} \altitem{font-oti.lua} - \altitem{font-otf.lua} \altitem{font-otb.lua} - \altitem{font-ota.lua} \altitem{font-def.lua} - \altitem{font-otp.lua} + \beginaltitem{data-con.lua} \endaltitem + \beginaltitem{font-ini.lua} \endaltitem + \beginaltitem{font-con.lua} \endaltitem + \beginaltitem{font-cid.lua} \endaltitem + \beginaltitem{font-map.lua} \endaltitem + \beginaltitem{font-oti.lua} \endaltitem + \beginaltitem{font-otf.lua} \endaltitem + \beginaltitem{font-otb.lua} \endaltitem + \beginaltitem{font-ota.lua} \endaltitem + \beginaltitem{font-def.lua} \endaltitem + \beginaltitem{font-otp.lua} \endaltitem \enddefinitions \enddoublecolumns \enddefinitions @@ -1122,22 +1155,33 @@ files not contained in the merge. Some of these have no equivalent in \beginfilelist - \altitem {luaotfload-features.lua} font feature handling; - incorporates some of the code from - \fileent{font-otc} from \CONTEXT; - \altitem {luaotfload-override.lua} overrides the \CONTEXT logging - functionality. - \altitem {luaotfload-loaders.lua} registers the \OpenType - font reader as handler for - Postscript fonts - (\abbrev{pfa}, \abbrev{pfb}). - \altitem {luaotfload-parsers.lua} various \abbrev{lpeg}-based parsers. - \altitem {luaotfload-database.lua} font names database. - \altitem {luaotfload-colors.lua} color handling. - \altitem {luaotfload-auxiliary.lua} access to internal functionality - for package authors - (proposals for additions welcome). - \altitem {luaotfload-letterspace.lua} font-based letterspacing. + \beginaltitem {luaotfload-features.lua} + font feature handling; incorporates some of the code from + \fileent{font-otc} from \CONTEXT; + \endaltitem + \beginaltitem {luaotfload-override.lua} + overrides the \CONTEXT logging functionality. + \endaltitem + \beginaltitem {luaotfload-loaders.lua} + registers the \OpenType font reader as handler for Postscript + fonts (\abbrev{pfa}, \abbrev{pfb}). + \endaltitem + \beginaltitem {luaotfload-parsers.lua} + various \abbrev{lpeg}-based parsers. + \endaltitem + \beginaltitem {luaotfload-database.lua} + font names database. + \endaltitem + \beginaltitem {luaotfload-colors.lua} + color handling. + \endaltitem + \beginaltitem {luaotfload-auxiliary.lua} + access to internal functionality for package authors (proposals + for additions welcome). + \endaltitem + \beginaltitem {luaotfload-letterspace.lua} + font-based letterspacing. + \endaltitem \endfilelist \beginfigurefloat @@ -1243,14 +1287,17 @@ These are mostly concerned with establishing compatibility with \XETEX. \beginfunctionlist - \altitem {set_sscale_dimens} - Calculate \texmacro{fontdimen}s 10 and 11 to emulate \XETEX. + \beginaltitem {set_sscale_dimens} + Calculate \texmacro{fontdimen}s 10 and 11 to emulate \XETEX. + \endaltitem - \altitem {set_capheight} - Calculates \texmacro{fontdimen} 8 like \XETEX. + \beginaltitem {set_capheight} + Calculates \texmacro{fontdimen} 8 like \XETEX. + \endaltitem - \altitem {patch_cambria_domh} - Correct some values of the font \emphasis{Cambria Math}. + \beginaltitem {patch_cambria_domh} + Correct some values of the font \emphasis{Cambria Math}. + \endaltitem \endfunctionlist @@ -1271,38 +1318,46 @@ are defined for which scripts. \beginfunctionlist - \altitem {aux.font_has_glyph (id : int, index : int)} + \beginaltitem {aux.font_has_glyph (id : int, index : int)} Predicate that returns true if the font \luafunction{id} has glyph \luafunction{index}. + \endaltitem - \altitem {aux.slot_of_name(name : string)} + \beginaltitem {aux.slot_of_name(name : string)} Translates an Adobe Glyph name to the corresponding glyph slot. + \endaltitem - \altitem {aux.name_of_slot(slot : int)} + \beginaltitem {aux.name_of_slot(slot : int)} The inverse of \luafunction{slot_of_name}; note that this might be incomplete as multiple glyph names may map to the same codepoint, only one of which is returned by \luafunction{name_of_slot}. + \endaltitem - \altitem {aux.provides_script(id : int, script : string)} + \beginaltitem {aux.provides_script(id : int, script : string)} Test if a font supports \luafunction{script}. + \endaltitem - \altitem {aux.provides_language(id : int, script : string, language : string)} + \beginaltitem {aux.provides_language(id : int, script : string, language : string)} Test if a font defines \luafunction{language} for a given \luafunction{script}. + \endaltitem - \altitem {aux.provides_feature(id : int, script : string, + \beginaltitem {aux.provides_feature(id : int, script : string, language : string, feature : string)} Test if a font defines \luafunction{feature} for \luafunction{language} for a given \luafunction{script}. + \endaltitem - \altitem {aux.get_math_dimension(id : int, dimension : string)} + \beginaltitem {aux.get_math_dimension(id : int, dimension : string)} Get the dimension \luafunction{dimension} of font \luafunction{id}. + \endaltitem - \altitem {aux.sprint_math_dimension(id : int, dimension : string)} + \beginaltitem {aux.sprint_math_dimension(id : int, dimension : string)} Same as \luafunction{get_math_dimension()}, but output the value in scaled points at the \TEX end. + \endaltitem \endfunctionlist @@ -1312,7 +1367,7 @@ are defined for which scripts. % \beginsubsubsection{Database} % % \beginfunctionlist -% \altitem {aux.scan_external_dir(dir : string)} +% \beginaltitem {aux.scan_external_dir(dir : string)} % Include fonts in directory \luafunction{dir} in font lookups without % adding them to the database. % |