From b66ea0d4e8536692eab3deb715a0b87a88a4b506 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 28 Oct 2018 21:04:56 +0000 Subject: luaotfload (28oct18) git-svn-id: svn://tug.org/texlive/trunk@49010 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/luatex/luaotfload/NEWS | 12 + Master/texmf-dist/doc/luatex/luaotfload/README.md | 4 +- .../texmf-dist/doc/luatex/luaotfload/filegraph.pdf | Bin 37196 -> 37196 bytes .../doc/luatex/luaotfload/luaotfload-conf.pdf | Bin 77365 -> 77370 bytes .../doc/luatex/luaotfload/luaotfload-conf.tex | 707 --------------------- .../doc/luatex/luaotfload/luaotfload-latex.pdf | Bin 326028 -> 326850 bytes .../doc/luatex/luaotfload/luaotfload-main.tex | 18 +- .../doc/luatex/luaotfload/luaotfload-tool.pdf | Bin 76590 -> 76593 bytes .../doc/luatex/luaotfload/luaotfload-tool.rst | 4 +- .../doc/luatex/luaotfload/luaotfload-tool.tex | 517 --------------- .../doc/luatex/luaotfload/luaotfload.conf.rst | 4 +- 11 files changed, 34 insertions(+), 1232 deletions(-) delete mode 100644 Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.tex delete mode 100644 Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.tex (limited to 'Master/texmf-dist/doc/luatex') diff --git a/Master/texmf-dist/doc/luatex/luaotfload/NEWS b/Master/texmf-dist/doc/luatex/luaotfload/NEWS index 153ba8d76c3..3780d355a70 100644 --- a/Master/texmf-dist/doc/luatex/luaotfload/NEWS +++ b/Master/texmf-dist/doc/luatex/luaotfload/NEWS @@ -1,5 +1,17 @@ Change History -------------- +2018-10-28 luaotfload v2.93 + * reinserted forgotten man files + * unified and improved version/module info for automatic tagging + * + + +2018-10-21 luaotfload v2.92 + * better deva support, issue #9 + * test for --safer and abort, issue #12 + * newest context files + * correct file: syntax for tfm files, issue #11. + 2018-10-03 luaotfload v2.91 * solved copy & paste of variant glyphs, https://tex.stackexchange.com/questions/451442/localized-glyphs-locl-have-unicode-value-ufffd * solved problem with PUA no longer accessible with \char, see https://github.com/u-fischer/luaotfload/issues/7 diff --git a/Master/texmf-dist/doc/luatex/luaotfload/README.md b/Master/texmf-dist/doc/luatex/luaotfload/README.md index 02dab41a0d7..9bb69f7ca4b 100644 --- a/Master/texmf-dist/doc/luatex/luaotfload/README.md +++ b/Master/texmf-dist/doc/luatex/luaotfload/README.md @@ -1,8 +1,8 @@ # The Luaotfload Package -VERSION: 2.91 +VERSION: 2.93 -DATE: 2018-10-03 +DATE: 2018-10-28 ## Description diff --git a/Master/texmf-dist/doc/luatex/luaotfload/filegraph.pdf b/Master/texmf-dist/doc/luatex/luaotfload/filegraph.pdf index 4f7674ae8f4..1a39b3ca662 100644 Binary files a/Master/texmf-dist/doc/luatex/luaotfload/filegraph.pdf and b/Master/texmf-dist/doc/luatex/luaotfload/filegraph.pdf differ diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.pdf b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.pdf index 101d598121b..b1e101ea36d 100644 Binary files a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.pdf and b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.pdf differ diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.tex b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.tex deleted file mode 100644 index 2ae6e89196d..00000000000 --- a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-conf.tex +++ /dev/null @@ -1,707 +0,0 @@ -\documentclass[a4paper]{article} -% generated by Docutils -% rubber: set program xelatex -\usepackage{fontspec} -% \defaultfontfeatures{Scale=MatchLowercase} -% straight double quotes (defined T1 but missing in TU): -\ifdefined \UnicodeEncodingName - \DeclareTextCommand{\textquotedbl}{\UnicodeEncodingName}{% - {\addfontfeatures{RawFeature=-tlig,Mapping=}\char34}}% -\fi -\usepackage{ifthen} -\usepackage{alltt} -\setcounter{secnumdepth}{0} -\usepackage{longtable,ltcaption,array} -\setlength{\extrarowheight}{2pt} -\newlength{\DUtablewidth} % internal use in tables -\usepackage{tabularx} - -%%% Custom LaTeX preamble -% Linux Libertine (free, wide coverage, not only for Linux) -\setmainfont{Linux Libertine O} -\setsansfont{Linux Biolinum O} -\setmonofont[HyphenChar=None,Scale=MatchLowercase]{DejaVu Sans Mono} - -%%% User specified packages and stylesheets - -%%% Fallback definitions for Docutils-specific commands - -% providelength (provide a length variable and set default, if it is new) -\providecommand*{\DUprovidelength}[2]{ - \ifthenelse{\isundefined{#1}}{\newlength{#1}\setlength{#1}{#2}}{} -} - -% docinfo (width of docinfo table) -\DUprovidelength{\DUdocinfowidth}{0.9\linewidth} - -% subtitle (in document title) -\providecommand*{\DUdocumentsubtitle}[1]{{\large #1}} -% hyperlinks: -\ifthenelse{\isundefined{\hypersetup}}{ - \usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} - \usepackage{bookmark} - \urlstyle{same} % normal text font (alternatives: tt, rm, sf) -}{} -\hypersetup{ - pdftitle={luaotfload.conf}, -} - -\title{luaotfload.conf% - \label{luaotfload-conf}% - \\ % subtitle% - \DUdocumentsubtitle{Luaotfload configuration file}% - \label{luaotfload-configuration-file}} -\author{} -\date{} - -%%% Body -\begin{document} -\maketitle - -% Docinfo -\begin{center} -\begin{tabularx}{\DUdocinfowidth}{lX} -\textbf{Date}: & - 2018-09-21 \\ -\textbf{Copyright}: & - GPL v2.0 \\ -\textbf{Version}: & - 2.9 \\ -\textbf{Manual section}: & -5 -\\ -\textbf{Manual group}: & -text processing -\\ -\end{tabularx} -\end{center} - - -\section{SYNOPSIS% - \label{synopsis}% -} - -\begin{itemize} -\item \textbf{./luaotfload\{.conf,rc\}} - -\item \textbf{XDG\_CONFIG\_HOME/luaotfload/luaotfload\{.conf,rc\}} - -\item \textbf{\textasciitilde{}/.luaotfloadrc} -\end{itemize} - - -\section{DESCRIPTION% - \label{description}% -} - -The file \texttt{luaotfload.conf} contains configuration options for -\emph{Luaotfload}, a font loading and font management component for LuaTeX. - - -\section{EXAMPLE% - \label{example}% -} - -A small Luaotfload configuration file with few customizations could -look as follows: - -\begin{quote} -\begin{alltt} -[db] - formats = afm,ttf - compress = false - -[misc] - termwidth = 60 - -[run] - log-level = 6 -\end{alltt} -\end{quote} - -This will make Luaotfload ignore all font files except for PostScript -binary fonts with a matching AFM file, and Truetype fonts. Also, an -uncompressed index file will be dumped which is going to be much larger -than the default gzip’ed index. The terminal width -is truncated to 60 characters which influences the verbose output -during indexing. Finally, the verbosity is increased greatly: each font -file being processed will be printed to the stdout on a separate line, -along with lots of other information. - -To observe the difference in behavior, save above snippet to -\texttt{./luaotfload.conf} and update the font index: - -\begin{quote} -\begin{alltt} -luaotfload-tool --update --force -\end{alltt} -\end{quote} - -The current configuration can be written to disk using -\textbf{luaotfload-tool}: - -\begin{quote} -\begin{alltt} -luaotfload-tool --dumpconf > luaotfload.conf -\end{alltt} -\end{quote} - -The result can itself be used as a configuration file. - - -\section{SYNTAX% - \label{syntax}% -} - -The configuration file syntax follows the common INI format. For a more -detailed description please refer to the section “CONFIGURATION FILE” -of \textbf{git-config}(1). A brief list of rules is given below: - -\begin{quote} -\begin{itemize} -\item Blank lines and lines starting with a semicolon (\texttt{;}) are ignored. - -\item A configuration file is partitioned into sections that are declared -by specifying the section title in brackets on a separate line: - -\begin{quote} -\begin{alltt} -[some-section] -... section content ... -\end{alltt} -\end{quote} - -\item Sections consist of one or more variable assignments of the form -\texttt{variable-name = value} E. g.: - -\begin{quote} -\begin{alltt} -[foo] - bar = baz - quux = xyzzy - ... -\end{alltt} -\end{quote} - -\item Section and variable names may contain only uppercase and lowercase -letters as well as dashes (\texttt{-}). -\end{itemize} -\end{quote} - - -\section{VARIABLES% - \label{variables}% -} - -Variables in belong into a configuration section and their values must -be of a certain type. Some of them have further constraints. For -example, the “color callback” must be a string of one of the values -\texttt{post\_linebreak\_filter}, \texttt{pre\_linebreak\_filter}, or -\texttt{pre\_output\_filter}, defined in the section \emph{run} of the -configuration file. - -Currently, the configuration is organized into four sections: - -\begin{description} -\item[{db}] \leavevmode -Options relating to the font index. - -\item[{misc}] \leavevmode -Options without a clearly defined category. - -\item[{paths}] \leavevmode -Path and file name settings. - -\item[{run}] \leavevmode -Options controlling runtime behavior of Luaotfload. - -\end{description} - -The list of valid variables, the sections they are part of and their -type is given below. Types represent Lua types that the values must be -convertible to; they are abbreviated as follows: \texttt{s} for the \emph{string} -type, \texttt{n} for \emph{number}, \texttt{b} for \emph{boolean}. A value of \texttt{nil} means -the variable is unset. - - -\subsection{Section \texttt{db}% - \label{section-db}% -} - -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.249\DUtablewidth}|p{0.110\DUtablewidth}|p{0.331\DUtablewidth}|} -\hline - -variable - & -type - & -default - \\ -\hline - -compress - & -b - & -\texttt{true} - \\ -\hline - -designsize-dimen - & -b - & -\texttt{bp} - \\ -\hline - -formats - & -s - & -\texttt{\textquotedbl{}otf,ttf,ttc\textquotedbl{}} - \\ -\hline - -max-fonts - & -n - & -\texttt{2\textasciicircum{}51} - \\ -\hline - -scan-local - & -b - & -\texttt{false} - \\ -\hline - -skip-read - & -b - & -\texttt{false} - \\ -\hline - -strip - & -b - & -\texttt{true} - \\ -\hline - -update-live - & -b - & -\texttt{true} - \\ -\hline -\end{longtable*} - -The flag \texttt{compress} determines whether the font index (usually -\texttt{luaotfload-names.lua{[}.gz{]}} will be stored in compressed forms. -If unset it is equivalent of passing \texttt{--no-compress} to -\textbf{luaotfload-tool}. Since the file is only created for convenience -and has no effect on the runtime behavior of Luaotfload, the flag -should remain set. Most editors come with zlib support anyways. - -The setting \texttt{designsize-dimen} applies when looking up fonts from -families with design sizes. In Opentype, these are specified as -“decipoints” where one decipoint equals ten DTP style “big points”. -When indexing fonts these values are converted to \texttt{sp}. In order to -treat the values as though they were specified in TeX points or Didot -points, set \texttt{designsize-dimen} to \texttt{pt} or \texttt{dd}. - -The list of \texttt{formats} must be a comma separated sequence of strings -containing one or more of these elements: - -\begin{itemize} -\item \texttt{otf} (OpenType format), - -\item \texttt{ttf} and \texttt{ttc} (TrueType format), - -\item \texttt{afm} (Adobe Font Metrics), -\end{itemize} - -It corresponds loosely to the \texttt{--formats} option to -\textbf{luaotfload-tool}. Invalid or duplicate members are ignored; if the -list does not contain any useful identifiers, the default list -\texttt{\textquotedbl{}otf,ttf,ttc\textquotedbl{}} will be used. - -The variable \texttt{max-fonts} determines after processing how many font -files the font scanner will terminate the search. This is useful for -debugging issues with the font index and has the same effect as the -option \texttt{--max-fonts} to \textbf{luaotfload-tools}. - -The \texttt{scan-local} flag, if set, will incorporate the current working -directory as a font search location. NB: This will potentially slow -down document processing because a font index with local fonts will not -be saved to disk, so these fonts will have to be re-indexed whenever -the document is built. - -The \texttt{skip-read} flag is only useful for debugging: It makes -Luaotfload skip reading fonts. The font information for rebuilding the -index is taken from the presently existing one. - -Unsetting the \texttt{strip} flag prevents Luaotfload from removing data -from the index that is only useful when processing font files. NB: this -can increase the size of the index files significantly and has no -effect on the runtime behavior. - -If \texttt{update-live} is set, Luaotfload will reload the database if it -cannot find a requested font. Those who prefer to update manually using -\textbf{luaotfload-tool} should unset this flag. This option does not affect -rebuilds due to version mismatch. - - -\subsection{Section \texttt{default-features}% - \label{section-default-features}% -} - -By default Luaotfload enables \texttt{node} mode and picks the default font -features that are prescribed in the OpenType standard. This behavior -may be overridden in the \texttt{default-features} section. Global defaults -that will be applied for all scripts can be set via the \texttt{global} -option, others by the script they are to be applied to. For example, -a setting of - -\begin{quote} -\begin{alltt} -[default-features] - global = mode=base,color=0000FF - dflt = smcp,onum -\end{alltt} -\end{quote} - -would force \emph{base} mode, tint all fonts blue and activate small -capitals and text figures globally. Features are specified as a comma -separated list of variables or variable-value pairs. Variables without -an explicit value are set to \texttt{true}. - - -\subsection{Section \texttt{misc}% - \label{section-misc}% -} - -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.191\DUtablewidth}|p{0.110\DUtablewidth}|p{0.307\DUtablewidth}|} -\hline - -variable - & -type - & -default - \\ -\hline - -statistics - & -b - & -\texttt{false} - \\ -\hline - -termwidth - & -n - & -\texttt{nil} - \\ -\hline - -version - & -s - & - - \\ -\hline -\end{longtable*} - -With \texttt{statistics} enabled, extra statistics will be collected during -index creation and appended to the index file. It may then be queried -at the Lua end or inspected by reading the file itself. - -The value of \texttt{termwidth}, if set, overrides the value retrieved by -querying the properties of the terminal in which Luatex runs. This is -useful if the engine runs with \texttt{shell\_escape} disabled and the actual -terminal dimensions cannot be retrieved. - -The value of \texttt{version} is derived from the version string hard-coded -in the Luaotfload source. Override at your own risk. - - -\subsection{Section \texttt{paths}% - \label{section-paths}% -} - -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.226\DUtablewidth}|p{0.110\DUtablewidth}|p{0.435\DUtablewidth}|} -\hline - -variable - & -type - & -default - \\ -\hline - -cache-dir - & -s - & -\texttt{\textquotedbl{}fonts\textquotedbl{}} - \\ -\hline - -names-dir - & -s - & -\texttt{\textquotedbl{}names\textquotedbl{}} - \\ -\hline - -index-file - & -s - & -\texttt{\textquotedbl{}luaotfload-names.lua\textquotedbl{}} - \\ -\hline - -lookups-file - & -s - & -\texttt{\textquotedbl{}luaotfload-lookup-cache.lua\textquotedbl{}} - \\ -\hline -\end{longtable*} - -The paths \texttt{cache-dir} and \texttt{names-dir} determine the subdirectory -inside the Luaotfload subtree of the \texttt{luatex-cache} directory where -the font cache and the font index will be stored, respectively. - -Inside the index directory, the names of the index file and the font -lookup cache will be derived from the respective values of -\texttt{index-file} and \texttt{lookups-file}. This is the filename base for the -bytecode compiled version as well as -- for the index -- the gzipped -version. - - -\subsection{Section \texttt{run}% - \label{section-run}% -} - -\setlength{\DUtablewidth}{\linewidth} -\begin{longtable*}[c]{|p{0.226\DUtablewidth}|p{0.110\DUtablewidth}|p{0.365\DUtablewidth}|} -\hline - -variable - & -type - & -default - \\ -\hline - -anon-sequence - & -s - & -\texttt{\textquotedbl{}tex,path,name\textquotedbl{}} - \\ -\hline - -color-callback - & -s - & -\texttt{\textquotedbl{}post\_linebreak\_filter\textquotedbl{}} - \\ -\hline - -definer - & -s - & -\texttt{\textquotedbl{}patch\textquotedbl{}} - \\ -\hline - -log-level - & -n - & -\texttt{0} - \\ -\hline - -resolver - & -s - & -\texttt{\textquotedbl{}cached\textquotedbl{}} - \\ -\hline - -fontloader - & -s - & -\texttt{\textquotedbl{}default\textquotedbl{}} - \\ -\hline -\end{longtable*} - -Unqualified font lookups are treated with the flexible “anonymous” -mechanism. This involves a chain of lookups applied successively until -the first one yields a match. By default, the lookup will first search -for TFM fonts using the Kpathsea library. If this wasn’t successful, an -attempt is made at interpreting the request as an absolute path (like -the \texttt{{[}/path/to/font/foo.ttf{]}} syntax) or a file name -(\texttt{file:foo.ttf}). Finally, the request is interpreted as a font name -and retrieved from the index (\texttt{name:Foo Regular}). This behavior can -be configured by specifying a list as the value to \texttt{anon-sequence}. -Available items are \texttt{tex}, \texttt{path}, \texttt{name} -- representing the -lookups described above, respectively --, and \texttt{file} for searching a -filename but not an absolute path. Also, \texttt{my} lookups are valid -values but they should only be used from within TeX documents, because -there is no means of customizing a \texttt{my} lookups on the command line. - -The \texttt{color-callback} option determines the stage at which fonts that -defined with a \texttt{color=xxyyzz} feature will be colorized. By default -this happens in a \texttt{post\_linebreak\_filter} but alternatively the -\texttt{pre\_linebreak\_filter} or \texttt{pre\_output\_filter} may be chosen, which -is faster but might produce inconsistent output. The -\texttt{pre\_output\_filter} used to be the default in the 1.x series of -Luaotfload, whilst later versions up to and including 2.5 hooked into -the \texttt{pre\_linebreak\_filter} which naturally didn’t affect any glyphs -inserting during hyphenation. Both are kept around as options to -restore the previous behavior if necessary. - -The \texttt{definer} allows for switching the \texttt{define\_font} callback. -Apart from the default \texttt{patch} one may also choose the \texttt{generic} -one that comes with the vanilla fontloader. Beware that this might -break tools like Fontspec that rely on the \texttt{patch\_font} callback -provided by Luaotfload to perform important corrections on font data. - -The fontloader backend can be selected by setting the value of -\texttt{fontloader}. The most important choices are \texttt{default}, which will -load the dedicated Luaotfload fontloader, and \texttt{reference}, the -upstream package as shipped with Luaotfload. Other than those, a file -name accessible via kpathsea can be specified. - -Alternatively, the individual files that constitute the fontloader can -be loaded directly. While less efficient, this greatly aids debugging -since error messages will reference the actual line numbers of the -source files and explanatory comments are not stripped. Currently, -three distinct loading strategies are available: \texttt{unpackaged} will -load the batch that is part of Luaotfload. These contain the identical -source code that the reference fontloader has been compiled from. -Another option, \texttt{context} will attempt to load the same files by -their names in the Context format from the search path. Consequently -this option allows to use the version of Context that comes with the -TeX distribution. Distros tend to prefer the stable version (“current” -in Context jargon) of those files so certain bugs encountered in the -more bleeding edge Luaotfload can be avoided this way. A third option -is to use \texttt{context} with a colon to specify a directory prefix where -the \emph{TEXMF} is located that the files should be loaded from, e. g. -\texttt{context:\textasciitilde{}/context/tex/texmf-context}. This can be used when -referencing another distribution like the Context minimals that is -installed under a different path not indexed by kpathsea. - -The value of \texttt{log-level} sets the default verbosity of messages -printed by Luaotfload. Only messages defined with a verbosity of less -than or equal to the supplied value will be output on the terminal. -At a log level of five Luaotfload can be very noisy. Also, printing too -many messages will slow down the interpreter due to line buffering -being disabled (see \textbf{setbuf}(3)). - -The \texttt{resolver} setting allows choosing the font name resolution -function: With the default value \texttt{cached} Luaotfload saves the result -of a successful font name request to a cache file to speed up -subsequent lookups. The alternative, \texttt{normal} circumvents the cache -and resolves every request individually. (Since to the restructuring of -the font name index in Luaotfload 2.4 the performance difference -between the cached and uncached lookups should be marginal.) - - -\section{FILES% - \label{files}% -} - -Luaotfload only processes the first configuration file it encounters at -one of the search locations. The file name may be either -\texttt{luaotfload.conf} or \texttt{luaotfloadrc}, except for the dotfile in the -user’s home directory which is expected at \texttt{\textasciitilde{}/.luaotfloadrc}. - -Configuration files are located following a series of steps. The search -terminates as soon as a suitable file is encountered. The sequence of -locations that Luaotfload looks at is - -\begin{enumerate} -\renewcommand{\labelenumi}{\roman{enumi}.} -\item The current working directory of the LuaTeX process. - -\item The subdirectory \texttt{luaotfload/} inside the XDG configuration -tree, e. g. \texttt{/home/oenothea/config/luaotfload/}. - -\item The dotfile. - -\item The \emph{TEXMF} (using kpathsea). -\end{enumerate} - - -\section{SEE ALSO% - \label{see-also}% -} - -\textbf{luaotfload-tool}(1), \textbf{luatex}(1), \textbf{lua}(1) - -\begin{itemize} -\item \texttt{texdoc luaotfload} to display the PDF manual for the \emph{Luaotfload} -package - -\item Luaotfload development \url{https://github.com/u-fischer/luaotfload} - -\item LuaLaTeX mailing list \url{http://tug.org/pipermail/lualatex-dev/} - -\item LuaTeX \url{http://luatex.org/} - -\item Luaotfload on CTAN \url{http://ctan.org/pkg/luaotfload} -\end{itemize} - - -\section{REFERENCES% - \label{references}% -} - -\begin{itemize} -\item The XDG base specification -\url{http://standards.freedesktop.org/basedir-spec/basedir-spec-latest.html}. -\end{itemize} - - -\section{AUTHORS% - \label{authors}% -} - -\emph{Luaotfload} was developed by the LuaLaTeX dev team -(\url{https://github.com/lualatex/}). It is currently maintained by Ulrike Fischer -and Marcel Krüger at \url{https://github.com/u-fischer/luaotfload} - -This manual page was written by Philipp Gesang <\href{mailto:phg@phi-gamma.net}{phg@phi-gamma.net}>. - -\end{document} diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-latex.pdf b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-latex.pdf index 465bd88204f..20b1206be71 100644 Binary files a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-latex.pdf and b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-latex.pdf differ diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-main.tex b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-main.tex index d01cc95c8b0..5d401f86ac3 100644 --- a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-main.tex +++ b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-main.tex @@ -32,7 +32,7 @@ \beginfrontmatter \setdocumenttitle {The \identifier{luaotfload} package} - \setdocumentdate {2018/10/03 v2.91} + \setdocumentdate {2018/10/28 upload2.93} \setdocumentauthor {Elie Roux · Khaled Hosny · Philipp Gesang · Ulrike Fischer\\ Home: \hyperlink {https://github.com/lualatex/luaotfload}\\ New Home: \hyperlink {https://github.com/u-fischer/luaotfload}\\ @@ -56,9 +56,23 @@ \pdfbookmark[1]{\contentsname}{table} \typesetcontent +\beginsection {New in version 2.93 (by Ulrike Fischer)} +Mainly internal clean up of the version info to allow automatic versioning. +\endsection + +\beginsection {New in version 2.92 (by Ulrike Fischer)} + +\begin{itemize} + + \item Better devanagari support (issue \#9). + \item \identifier{Luaotfload} doesn't work when luatex is used with the option \inlinecode{--safer}. So it now aborts cleanly when the option is detected -- but you still can get errors from fontspec later! (issue \#12). + \item The syntax \inlinecode{file:} for legacy font works again (issue \#11). + \item The fontloader has been synched with the newest context version from october, 18. +\end{itemize} +\endsection \beginsection {New in version 2.91 (by Ulrike Fischer)} -This version mostly correct two bugs found in the previous fontloader: Glyphvariants weren't copied and pasted correctly. Glyphs encoded in the PUA couldn't be accessed anymore. +This version mostly correct two bugs found in the previous fontloader: Glyphvariants weren't copied and pasted correctly. Glyphs encoded in the PUA couldn't be accessed anymore. \endsection diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.pdf b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.pdf index 730ca437a11..e4aa1a24b14 100644 Binary files a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.pdf and b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.pdf differ diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.rst b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.rst index 9a3c4b25e37..ab18e5bcb7c 100644 --- a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.rst +++ b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.rst @@ -6,9 +6,9 @@ generate and query the Luaotfload font names database ----------------------------------------------------------------------- -:Date: 2018-09-21 +:Date: 2018-10-28 :Copyright: GPL v2.0 -:Version: 2.9 +:Version: 2.93 :Manual section: 1 :Manual group: text processing diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.tex b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.tex deleted file mode 100644 index eab3b38b1de..00000000000 --- a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload-tool.tex +++ /dev/null @@ -1,517 +0,0 @@ -\documentclass[a4paper]{article} -% generated by Docutils -% rubber: set program xelatex -\usepackage{fontspec} -% \defaultfontfeatures{Scale=MatchLowercase} -% straight double quotes (defined T1 but missing in TU): -\ifdefined \UnicodeEncodingName - \DeclareTextCommand{\textquotedbl}{\UnicodeEncodingName}{% - {\addfontfeatures{RawFeature=-tlig,Mapping=}\char34}}% -\fi -\usepackage{ifthen} -\usepackage{alltt} -\setcounter{secnumdepth}{0} -\usepackage{tabularx} - -%%% Custom LaTeX preamble -% Linux Libertine (free, wide coverage, not only for Linux) -\setmainfont{Linux Libertine O} -\setsansfont{Linux Biolinum O} -\setmonofont[HyphenChar=None,Scale=MatchLowercase]{DejaVu Sans Mono} - -%%% User specified packages and stylesheets - -%%% Fallback definitions for Docutils-specific commands - -% providelength (provide a length variable and set default, if it is new) -\providecommand*{\DUprovidelength}[2]{ - \ifthenelse{\isundefined{#1}}{\newlength{#1}\setlength{#1}{#2}}{} -} - -% docinfo (width of docinfo table) -\DUprovidelength{\DUdocinfowidth}{0.9\linewidth} - -% subtitle (in document title) -\providecommand*{\DUdocumentsubtitle}[1]{{\large #1}} - -% optionlist environment -\providecommand*{\DUoptionlistlabel}[1]{\bf #1 \hfill} -\DUprovidelength{\DUoptionlistindent}{3cm} -\ifthenelse{\isundefined{\DUoptionlist}}{ - \newenvironment{DUoptionlist}{% - \list{}{\setlength{\labelwidth}{\DUoptionlistindent} - \setlength{\rightmargin}{1cm} - \setlength{\leftmargin}{\rightmargin} - \addtolength{\leftmargin}{\labelwidth} - \addtolength{\leftmargin}{\labelsep} - \renewcommand{\makelabel}{\DUoptionlistlabel}} - } - {\endlist} -}{} -% hyperlinks: -\ifthenelse{\isundefined{\hypersetup}}{ - \usepackage[colorlinks=true,linkcolor=blue,urlcolor=blue]{hyperref} - \usepackage{bookmark} - \urlstyle{same} % normal text font (alternatives: tt, rm, sf) -}{} -\hypersetup{ - pdftitle={luaotfload-tool}, -} - -\title{luaotfload-tool% - \label{luaotfload-tool}% - \\ % subtitle% - \DUdocumentsubtitle{generate and query the Luaotfload font names database}% - \label{generate-and-query-the-luaotfload-font-names-database}} -\author{} -\date{} - -%%% Body -\begin{document} -\maketitle - -% Docinfo -\begin{center} -\begin{tabularx}{\DUdocinfowidth}{lX} -\textbf{Date}: & - 2018-09-21 \\ -\textbf{Copyright}: & - GPL v2.0 \\ -\textbf{Version}: & - 2.9 \\ -\textbf{Manual section}: & -1 -\\ -\textbf{Manual group}: & -text processing -\\ -\end{tabularx} -\end{center} - - -\section{SYNOPSIS% - \label{synopsis}% -} - -\textbf{luaotfload-tool} {[} -bcDfFiIlLnpqRSuvVhw {]} - -\begin{description} -\item[{\textbf{luaotfload-tool} --update {[} --force {]} {[} --quiet {]} {[} --verbose {]}}] \leavevmode -{[} --prefer-texmf {]} {[} --dry-run {]} -{[} --formats={[}+|-{]}EXTENSIONS {]} -{[} --no-compress {]} {[} --no-strip {]} -{[} --local {]} {[} --max-fonts=N {]} - -\item[{\textbf{luaotfload-tool} --find=FONTNAME {[} --fuzzy {]} {[} --info {]} {[} --inspect {]}}] \leavevmode -{[} --no-reload {]} - -\end{description} - -\textbf{luaotfload-tool} --flush-lookups - -\textbf{luaotfload-tool} --cache=DIRECTIVE - -\textbf{luaotfload-tool} --list=CRITERION{[}:VALUE{]} {[} --fields=F1,F2,...,Fn {]} - -\textbf{luaotfload-tool} --bisect=DIRECTIVE - -\textbf{luaotfload-tool} --help - -\textbf{luaotfload-tool} --version - -\textbf{luaotfload-tool} --show-blacklist - -\textbf{luaotfload-tool} --diagnose=CHECK - -\textbf{luaotfload-tool} --conf=FILE --dumpconf - - -\section{DESCRIPTION% - \label{description}% -} - -luaotfload-tool accesses the font names database that is required by -the \emph{Luaotfload} package. There are two general modes: \textbf{update} and -\textbf{query}. - -\begin{itemize} -\item \textbf{update}: update the database or rebuild it entirely; - -\item \textbf{query}: resolve a font name or display close matches. -\end{itemize} - - -\section{OPTIONS% - \label{options}% -} - - -\subsection{update mode% - \label{update-mode}% -} - -\begin{DUoptionlist} -\item[--update, -u] Update the database; indexes new fonts. - -\item[--force, -f] Force rebuilding of the database; re-indexes -all fonts. - -\item[--local, -L] Include font files in \texttt{\$PWD}. This option -will cause large parts of the database to be -rebuilt. Thus it is quite inefficient. -Additionally, if local font files are found, -the database is prevented from being saved -to disk, so the local fonts need to be parsed -with every invocation of \texttt{luaotfload-tool}. - -\item[--no-reload, -n] Suppress auto-updates to the database (e.g. -when \texttt{--find} is passed an unknown name). - -\item[--no-compress, -c] Do not filter the plain text version of the -font index through gzip. Useful for debugging -if your editor is built without zlib. - -\item[--prefer-texmf, -p] Organize the file name database in a way so -that it prefer fonts in the \emph{TEXMF} tree over -system fonts if they are installed in both. - -\item[--formats=EXTENSIONS] Extensions of the font files to index. -Where \emph{EXTENSIONS} is a comma-separated list of -supported file extensions (otf, ttf, ttc). -If the list is prefixed -with a \texttt{+} sign, the given list is added to -the currently active one; \texttt{-} subtracts. -Default: \emph{otf,ttf,ttc}. -Examples: - -\begin{enumerate} -\renewcommand{\labelenumi}{\arabic{enumi})} -\item \texttt{--formats=-ttc,ttf} would skip -TrueType fonts and font collections; - -\item \texttt{--formats=otf} would scan only OpenType -files; - -\item \texttt{--formats=+afm} includes binary -Postscript files accompanied by an AFM file. -\end{enumerate} -\end{DUoptionlist} - - -\subsection{query mode% - \label{query-mode}% -} - -\begin{DUoptionlist} -\item[--find=NAME] Resolve a font name; this looks up in -the database and prints the file name it is -mapped to. -\texttt{--find} also understands request syntax, -i.e. \texttt{--find=file:foo.otf} checks whether -\texttt{foo.otf} is indexed. - -\item[--fuzzy, -F] Show approximate matches to the file name if -the lookup was unsuccessful (requires -\texttt{--find}). - -\item[--info, -i] Display basic information to a resolved font -file (requires \texttt{--find}). - -\item[--inspect, -I] Display detailed information by loading the -font and analyzing the font table; very slow! -For the meaning of the returned fields see -the LuaTeX documentation. -(requires \texttt{--find}). - -\item[--list=CRITERION] Show entries, where \emph{CRITERION} is one of the -following: - -\begin{enumerate} -\renewcommand{\labelenumi}{\arabic{enumi})} -\item the character \texttt{*}, selecting all entries; - -\item a field of a database entry, for instance -\emph{version} or \emph{format*}, according to which -the output will be sorted. -Information in an unstripped database (see -the option \texttt{--no-strip} above) is nested: -Subfields of a record can be addressed using -the \texttt{->} separator, e. g. -\texttt{file->location}, \texttt{style->units\_per\_em}, -or -\texttt{names->sanitized->english->prefmodifiers}. -NB: shell syntax requires that arguments -containing \texttt{->} be properly quoted! - -\item an expression of the form \texttt{field:value} to -limit the output to entries whose \texttt{field} -matches \texttt{value}. -\end{enumerate} - -For example, in order to output file names and -corresponding versions, sorted by the font -format: - -\begin{quote} -\begin{alltt} -./luaotfload-tool.lua --list="format" --fields="file->base,version" -\end{alltt} -\end{quote} - -This prints: - -\begin{quote} -\begin{alltt} -otf latinmodern-math.otf Version 1.958 -otf lmromancaps10-oblique.otf 2.004 -otf lmmono8-regular.otf 2.004 -otf lmmonoproplt10-bold.otf 2.004 -otf lmsans10-oblique.otf 2.004 -otf lmromanslant8-regular.otf 2.004 -otf lmroman12-italic.otf 2.004 -otf lmsansdemicond10-oblique.otf 2.004 -... -\end{alltt} -\end{quote} - -\item[--fields=FIELDS] Comma-separated list of fields that should be -printed. -Information in an unstripped database (see the -option \texttt{--no-strip} above) is nested: -Subfields of a record can be addressed using -the \texttt{->} separator, e. g. -\texttt{file->location}, \texttt{style->units\_per\_em}, -or \texttt{names->sanitized->english->subfamily}. -The default is plainname,version*. -(Only meaningful with \texttt{--list}.) -\end{DUoptionlist} - - -\subsection{font and lookup caches% - \label{font-and-lookup-caches}% -} - -\begin{DUoptionlist} -\item[--flush-lookups] Clear font name lookup cache (experimental). - -\item[--cache=DIRECTIVE] Cache control, where \emph{DIRECTIVE} is one of the -following: - -\begin{enumerate} -\renewcommand{\labelenumi}{\arabic{enumi})} -\item \texttt{purge} -> delete Lua files from cache; - -\item \texttt{erase} -> delete Lua and Luc files from -cache; - -\item \texttt{show} -> print stats. -\end{enumerate} -\end{DUoptionlist} - - -\subsection{debugging methods% - \label{debugging-methods}% -} - -\begin{DUoptionlist} -\item[--show-blacklist, -b] Show blacklisted files (not directories). - -\item[--dry-run, -D] Don’t load fonts when updating the database; -scan directories only. -(For debugging file system related issues.) - -\item[--no-strip] Do not strip redundant information after -building the database. Warning: this will -inflate the index to about two to three times -the normal size. - -\item[--max-fonts=N] Process at most \emph{N} font files, including fonts -already indexed in the count. - -\item[--bisect=DIRECTIVE] Bisection of the font database. -This mode is intended as assistance in -debugging the Luatex engine, especially when -tracking memleaks or buggy fonts. - -\emph{DIRECTIVE} can be one of the following: - -\begin{enumerate} -\renewcommand{\labelenumi}{\arabic{enumi})} -\item \texttt{run} -> Make \texttt{luaotfload-tool} respect -the bisection progress when running. -Combined with \texttt{--update} and possibly -\texttt{--force} this will only process the files -from the start up until the pivot and ignore -the rest. - -\item \texttt{start} -> Start bisection: create a -bisection state file and initialize the low, -high, and pivot indices. - -\item \texttt{stop} -> Terminate the current bisection -session by deleting the state file. - -\item \texttt{good} | \texttt{bad} -> Mark the section -processed last as “good” or “bad”, -respectively. The next bisection step will -continue with the bad section. - -\item \texttt{status} -> Print status information about -the current bisection session. Hint: Use -with higher verbosity settings for more -output. -\end{enumerate} - -A bisection session is initiated by issuing the -\texttt{start} directive. This sets the pivot to the -middle of the list of available font files. -Now run \emph{luaotfload-tool} with the \texttt{--update} -flag set as well as \texttt{--bisect=run}: only the -fonts up to the pivot will be considered. If -that task exhibited the issue you are tracking, -then tell Luaotfload using \texttt{--bisect=bad}. -The next step of \texttt{--bisect=run} will continue -bisection with the part of the files below the -pivot. -Likewise, issue \texttt{--bisect=good} in order to -continue with the fonts above the pivot, -assuming the tested part of the list did not -trigger the bug. - -Once the culprit font is tracked down, \texttt{good} -or \texttt{bad} will have no effect anymore. \texttt{run} -will always end up processing the single font -file that was left. -Use \texttt{--bisect=stop} to clear the bisection -state. -\end{DUoptionlist} - - -\subsection{miscellaneous% - \label{miscellaneous}% -} - -\begin{DUoptionlist} -\item[--verbose=N, -v] Set verbosity level to \emph{n} or the number of -repetitions of \texttt{-v}. - -\item[--quiet] No verbose output (log level set to zero). - -\item[--log=CHANNEL] Redirect log output (for database -troubleshooting), where \emph{CHANNEL} can be - -\begin{enumerate} -\renewcommand{\labelenumi}{\arabic{enumi})} -\item \texttt{stdout} -> all output will be -dumped to the terminal (default); or - -\item \texttt{file} -> write to a file to the temporary -directory (the name will be chosen -automatically. -\end{enumerate} - -\item[--version, -V] Show version numbers of components as well as -some basic information and exit. - -\item[--help, -h] Show help message and exit. - -\item[--diagnose=CHECK] Run the diagnostic procedure \emph{CHECK}. Available -procedures are: - -\begin{enumerate} -\renewcommand{\labelenumi}{\arabic{enumi})} -\item \texttt{files} -> check \emph{Luaotfload} files for -modifications; - -\item \texttt{permissions} -> check permissions of -cache directories and files; - -\item -\begin{description} -\item[{\texttt{environment} -> print relevant}] \leavevmode -environment and kpse variables; - -\end{description} - -\item \texttt{repository} -> check the git repository -for new releases, - -\item \texttt{index} -> check database, display -information about it. -\end{enumerate} - -Procedures can be chained by concatenating with -commas, e.g. \texttt{--diagnose=files,permissions}. -Specify \texttt{thorough} to run all checks. - -\item[--conf=FILE] Read the configuration from \emph{FILE}. See -\textbf{luaotfload.conf}(\%) for documentation -concerning the format and available options. - -\item[--dumpconf] Print the currently active configuration; the -output can be saved to a file and used for -bootstrapping a custom configuration files. -\end{DUoptionlist} - - -\section{FILES% - \label{files}% -} - -The font name database is usually located in the directory -\texttt{texmf-var/luatex-cache/generic/names/} (\texttt{\$TEXMFCACHE} as set in -\texttt{texmf.cnf}) of your \emph{TeX Live} distribution as a zlib-compressed -file \texttt{luaotfload-names.lua.gz}. -The experimental lookup cache will be created as -\texttt{luaotfload-lookup-cache.lua} in the same directory. -These Lua tables are not used directly by Luaotfload, though. -Instead, they are compiled to Lua bytecode which is written to -corresponding files with the extension \texttt{.luc} in the same directory. -When modifying the files by hand keep in mind that only if the bytecode -files are missing will Luaotfload use the plain version instead. -Both kinds of files are safe to delete, at the cost of regenerating -them with the next run of \emph{LuaTeX}. - - -\section{SEE ALSO% - \label{see-also}% -} - -\textbf{luaotfload.conf}(5), \textbf{luatex}(1), \textbf{lua}(1) - -\begin{itemize} -\item \texttt{texdoc luaotfload} to display the manual for the \emph{Luaotfload} -package - -\item Luaotfload development \url{https://github.com/lualatex/luaotfload} - -\item LuaLaTeX mailing list \url{http://tug.org/pipermail/lualatex-dev/} - -\item LuaTeX \url{http://luatex.org/} - -\item ConTeXt \url{http://wiki.contextgarden.net} - -\item Luaotfload on CTAN \url{http://ctan.org/pkg/luaotfload} -\end{itemize} - - -\section{BUGS% - \label{bugs}% -} - -Tons, probably. - - -\section{AUTHORS% - \label{authors}% -} - -\emph{Luaotfload} was developed by the LuaLaTeX dev team -(\url{https://github.com/lualatex/}). It is currently maintained by Ulrike Fischer -and Marcel Krüger at \url{https://github.com/u-fischer/luaotfload} -The fontloader code is provided by Hans Hagen of Pragma ADE, Hasselt -NL (\url{http://pragma-ade.com/}). - -This manual page was written by Philipp Gesang <\href{mailto:phg@phi-gamma.net}{phg@phi-gamma.net}>. - -\end{document} diff --git a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload.conf.rst b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload.conf.rst index a7a1c73d79d..02365397faa 100644 --- a/Master/texmf-dist/doc/luatex/luaotfload/luaotfload.conf.rst +++ b/Master/texmf-dist/doc/luatex/luaotfload/luaotfload.conf.rst @@ -6,9 +6,9 @@ Luaotfload configuration file ----------------------------------------------------------------------- -:Date: 2018-09-21 +:Date: 2018-10-28 :Copyright: GPL v2.0 -:Version: 2.9 +:Version: 2.93 :Manual section: 5 :Manual group: text processing -- cgit v1.2.3