From d0d63530acf762f080e8c6255949398a918bf0bc Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Sun, 30 Mar 2014 11:54:45 +0200 Subject: [doc] workaround for inline code in tables --- doc/luaotfload-latex.tex | 6 ++---- doc/luaotfload-main.tex | 15 +++++++++------ 2 files changed, 11 insertions(+), 10 deletions(-) diff --git a/doc/luaotfload-latex.tex b/doc/luaotfload-latex.tex index 409adcf..c886462 100644 --- a/doc/luaotfload-latex.tex +++ b/doc/luaotfload-latex.tex @@ -208,12 +208,10 @@ \usepackage {listings} \lstset { basicstyle=\ttfamily, - escapechar=Ö, } -\def \inlinecode #1{% - \lstinline {#1}% -} +%\let \inlinecode \lstinline +\protected \def \inlinecode {\lstinline} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% codelistings; this sucks hard since we lack access to buffers diff --git a/doc/luaotfload-main.tex b/doc/luaotfload-main.tex index 5b033c0..5e7c1bc 100644 --- a/doc/luaotfload-main.tex +++ b/doc/luaotfload-main.tex @@ -757,12 +757,15 @@ Currently (2014) there are three of them: Applies legacy \TEX ligatures: \unless \ifcontextmkiv + %% Using braced arg syntax with inline code appears to be + %% impossible within Latex tables -- just ignore the weird + %% exclamation points below. \begintabulate [rlrl] - \beginrow `` \newcell \inlinecode {``} \newcell '' \newcell \inlinecode {''} \endrow - \beginrow ` \newcell \inlinecode {`} \newcell ' \newcell \inlinecode {'} \endrow - \beginrow " \newcell \inlinecode {"} \newcell -- \newcell \inlinecode {--} \endrow - \beginrow --- \newcell \inlinecode {---} \newcell !` \newcell \inlinecode {!`} \endrow - \beginrow ?` \newcell \inlinecode {?`} \newcell \newcell \endrow + \beginrow `` \newcell {\inlinecode !``! } \newcell '' \newcell {\inlinecode !''!} \endrow + \beginrow ` \newcell {\inlinecode !`! } \newcell ' \newcell {\inlinecode !'! } \endrow + \beginrow " \newcell {\inlinecode !"! } \newcell -- \newcell {\inlinecode !--!} \endrow + \beginrow --- \newcell {\inlinecode !---!} \newcell !` \newcell {\inlinecode ?!`?} \endrow + \beginrow ?` \newcell {\inlinecode !?`! } \newcell \newcell \endrow \endtabulate \else %% XXX find a way to wrap these in the tabulate environment @@ -911,7 +914,7 @@ directories. \begincentered \begintabulate [lp{.5\textwidth}] \beginrow - Windows \newcell \inlinecode {\% WINDIR\%\\ Fonts} + Windows \newcell \inlinecode !\% WINDIR\%\\ Fonts! \endrow \beginrow Linux \newcell \fileent{/usr/local/etc/fonts/fonts.conf} and\hfill\break -- cgit v1.2.3 From 9005dd121c14e97b2fe001a5543596047a9c141b Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Sun, 30 Mar 2014 12:01:33 +0200 Subject: =?UTF-8?q?[doc]=20move=20up=20footnote=20concerning=20the=20forme?= =?UTF-8?q?r=20=E2=80=9Ctrep=E2=80=9D=20set?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- doc/luaotfload-main.tex | 18 ++++++++---------- 1 file changed, 8 insertions(+), 10 deletions(-) diff --git a/doc/luaotfload-main.tex b/doc/luaotfload-main.tex index 5e7c1bc..a0df7f0 100644 --- a/doc/luaotfload-main.tex +++ b/doc/luaotfload-main.tex @@ -754,7 +754,14 @@ Currently (2014) there are three of them: \endaltitem \beginaltitem {tlig} - Applies legacy \TEX ligatures: + Applies legacy \TEX ligatures\footnote{% + These contain the feature set \inlinecode {trep} of earlier + versions of \identifier{luaotfload}. + + Note to \XETEX users: this is the equivalent of the + assignment \inlinecode {mapping=text-tex} using \XETEX's input + remapping feature. + }: \unless \ifcontextmkiv %% Using braced arg syntax with inline code appears to be @@ -781,15 +788,6 @@ Currently (2014) there are three of them: \stopframed \stopframed \fi - - \footnote{% - These contain the feature set \inlinecode {trep} of earlier - versions of \identifier{luaotfload}. - - Note to \XETEX users: this is the equivalent of the - assignment \inlinecode {mapping=text-tex} using \XETEX's input - remapping feature. - } \endaltitem \beginaltitem {itlc} -- cgit v1.2.3 From 086a3111ea33c65de1e527d4e21e403d489eec23 Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Sun, 30 Mar 2014 12:39:45 +0200 Subject: [doc] document bisection in manpage --- doc/luaotfload-tool.rst | 66 ++++++++++++++++++++++++++++++++++++++++++++----- 1 file changed, 60 insertions(+), 6 deletions(-) diff --git a/doc/luaotfload-tool.rst b/doc/luaotfload-tool.rst index 761b0ec..da88b21 100644 --- a/doc/luaotfload-tool.rst +++ b/doc/luaotfload-tool.rst @@ -6,16 +6,16 @@ generate and query the Luaotfload font names database ----------------------------------------------------------------------- -:Date: 2014-01-02 -:Copyright: GPL v2.0 -:Version: 2.5 -:Manual section: 1 -:Manual group: text processing +:Date: 2014-03-30 +:Copyright: GPL v2.0 +:Version: 2.5 +:Manual section: 1 +:Manual group: text processing SYNOPSIS ======================================================================= -**luaotfload-tool** [ -bDfFiIlnpquvVhw ] +**luaotfload-tool** [ -bcDfFiIlLnpqRSuvVhw ] **luaotfload-tool** --update [ --force ] [ --quiet ] [ --verbose ] [ --prefer-texmf ] [ --dry-run ] @@ -32,6 +32,8 @@ SYNOPSIS **luaotfload-tool** --list=CRITERION[:VALUE] [ --fields=F1,F2,...,Fn ] +**luaotfload-tool** --bisect=DIRECTIVE + **luaotfload-tool** --help **luaotfload-tool** --version @@ -187,6 +189,58 @@ font and lookup caches cache; 3) ``show`` -> print stats. +bisection +----------------------------------------------------------------------- +--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. + + *DIRECTIVE* can be one of the following: + + 1) ``run`` -> Make ``luaotfload-tool`` respect + the bisection progress when running. + Combined with ``--update`` and possibly + ``--force`` this will only process the files + from the start up until the pivot and ignore + the rest. + 2) ``start`` -> Start bisection: create a + bisection state file and initialize the low, + high, and pivot indices. + 3) ``stop`` -> Terminate the current bisection + session by deleting the state file. + 4) ``good`` | ``bad`` -> Mark the section + processed last as “good” or “bad”, + respectively. The next bisection step will + continue with the bad section. + 5) ``status`` -> Print status information about + the current bisection session. Hint: Use + with higher verbosity settings for more + output. + + A bisection session is initiated by issuing the + ``start`` directive. This sets the pivot to the + middle of the list of available font files. + Now run *luaotfload-tool* with the ``--update`` + flag set as well as ``--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 ``--bisect=bad``. + The next step of ``--bisect=run`` will continue + bisection with the part of the files below the + pivot. + Likewise, issue ``--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, ``good`` + or ``bad`` will have no effect anymore. ``run`` + will always end up processing the single font + file that was left. + Use ``--bisect=stop`` to clear the bisection + state. + miscellaneous ----------------------------------------------------------------------- --verbose=N, -v Set verbosity level to *n* or the number of -- cgit v1.2.3 From 1d53adbda253158348c4e921357114140a54c127 Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Sun, 30 Mar 2014 12:44:57 +0200 Subject: [doc] group debugging related functionality in manpage --- doc/luaotfload-tool.rst | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/doc/luaotfload-tool.rst b/doc/luaotfload-tool.rst index da88b21..4b1a934 100644 --- a/doc/luaotfload-tool.rst +++ b/doc/luaotfload-tool.rst @@ -21,7 +21,7 @@ SYNOPSIS [ --prefer-texmf ] [ --dry-run ] [ --formats=[+|-]EXTENSIONS ] [ --no-compress ] [ --no-strip ] - [ --local ] + [ --local ] [ --max-fonts=N ] **luaotfload-tool** --find=FONTNAME [ --fuzzy ] [ --info ] [ --inspect ] [ --no-reload ] @@ -69,10 +69,6 @@ update mode with every invocation of ``luaotfload-tool``. --no-reload, -n Suppress auto-updates to the database (e.g. when ``--find`` is passed an unknown name). ---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. --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. @@ -80,8 +76,6 @@ update mode --prefer-texmf, -p Organize the file name database in a way so that it prefer fonts in the *TEXMF* tree over system fonts if they are installed in both. ---max-fonts=N Process at most *N* font files, including fonts - already indexed in the count. --formats=EXTENSIONS Extensions of the font files to index. Where *EXTENSIONS* is a comma-separated list of supported file extensions (otf, ttf, ttc, @@ -101,9 +95,6 @@ update mode grow the database considerably and slow down font indexing. ---dry-run, -D Don’t load fonts, scan directories only. - (For debugging file system related issues.) - query mode ----------------------------------------------------------------------- --find=NAME Resolve a font name; this looks up in @@ -127,7 +118,6 @@ query mode library (assumes ``-I``). Automatically enabled if the verbosity level exceeds 2. ---show-blacklist, -b Show blacklisted files (not directories). --list=CRITERION Show entries, where *CRITERION* is one of the following: @@ -189,8 +179,18 @@ font and lookup caches cache; 3) ``show`` -> print stats. -bisection +debugging methods ----------------------------------------------------------------------- +--show-blacklist, -b Show blacklisted files (not directories). +--dry-run, -D Don’t load fonts when updating the database; + scan directories only. + (For debugging file system related issues.) +--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. +--max-fonts=N Process at most *N* font files, including fonts + already indexed in the count. --bisect=DIRECTIVE Bisection of the font database. This mode is intended as assistance in debugging the Luatex engine, especially when -- cgit v1.2.3 From 60478137d15bec36b66276a4bfbfe0f1b1f20269 Mon Sep 17 00:00:00 2001 From: Philipp Gesang Date: Sun, 30 Mar 2014 12:50:38 +0200 Subject: [tool] update usage and help messages to include bisection --- src/luaotfload-tool.lua | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/luaotfload-tool.lua b/src/luaotfload-tool.lua index 41e61f2..1923040 100755 --- a/src/luaotfload-tool.lua +++ b/src/luaotfload-tool.lua @@ -222,6 +222,10 @@ Usage: %s [OPTIONS...] --fields=,,…, which fields to print with --list -b --show-blacklist show blacklisted files + --bisect= control database bisection: valid + directives are "start", "stop", "run", "status", + "good", "bad" + The font database will be saved to %s %s @@ -249,6 +253,8 @@ Usage: luaotfload-tool [--help] [--version] [--verbose=] [--list=] [--fields=] [--cache=] [--flush-lookups] [--show-blacklist] [--diagnose=] + [--no-compress] [--no-strip] [--local] + [--max-fonts=] [--bisect=] Enter 'luaotfload-tool --help' for a larger list of options. ]] -- cgit v1.2.3