[latex3-commits] [git/LaTeX3-latex3-luaotfload] master-v3.0008-201910290: updated documentation for next release (22e03bd)

Ulrike Fischer fischer at troubleshooting-tex.de
Thu Oct 31 00:44:16 CET 2019


Repository : https://github.com/latex3/luaotfload
On branch  : master-v3.0008-201910290
Link       : https://github.com/latex3/luaotfload/commit/22e03bd5207730135139db6deb0cd9921f9b4365

>---------------------------------------------------------------

commit 22e03bd5207730135139db6deb0cd9921f9b4365
Author: Ulrike Fischer <fischer at troubleshooting-tex.de>
Date:   Thu Oct 31 00:44:16 2019 +0100

    updated documentation for next release


>---------------------------------------------------------------

22e03bd5207730135139db6deb0cd9921f9b4365
 NEWS                         |  6 ++++
 build.lua                    |  9 ++++--
 buildinfo.txt                |  2 +-
 doc/luaotfload-main.tex      | 77 +++++++++++++++++++++++++++++++++++---------
 doc/luaotfload-tool.1        |  2 +-
 doc/luaotfload.conf.5        |  2 +-
 doc/scripts-demo.tex         | 15 +++++++++
 doc/shaper-demo-graphite.tex |  9 ++++++
 doc/shaper-demo.tex          |  7 ++++
 9 files changed, 107 insertions(+), 22 deletions(-)

diff --git a/NEWS b/NEWS
index 39bfcc4..a0d3c2e 100644
--- a/NEWS
+++ b/NEWS
@@ -1,5 +1,11 @@
 Change History
 --------------
+2019-09-13 luaotfload v3.1
+    * added code to use the harfbuzz library of luahbtex
+    * remove a number of lua tables from the global enviroment (_G) to reduce the polution. 
+      Kept there are only the tables luaotfload, fonts and nodes.
+    * sync with context files from 2019-10-29
+
 2019-09-13 luaotfload v3.0
     * invisible option to avoid that some glyph are shown (issue #63)
     * correct small bug in xheight calculation 
diff --git a/build.lua b/build.lua
index 558c448..1dad8dd 100644
--- a/build.lua
+++ b/build.lua
@@ -123,7 +123,7 @@ docfiledir    = "./doc"
 -- documentation
 -------------------
 
-typesetexe = "lualatex --fmt=lua"..checkformat
+typesetexe = "luahblatex --fmt=luahb"..checkformat
 
 -- main docu
 typesetfiles      = {"luaotfload-latex.tex"}
@@ -136,7 +136,7 @@ docfiles =
   "luaotfload.conf.example",
   "luaotfload-main.tex",
   "luaotfload.conf.rst",
-  "luaotfload-tool.rst"
+  "luaotfload-tool.rst",
   }
 
 textfiles =
@@ -150,7 +150,10 @@ typesetdemofiles  =
   {
    "filegraph.tex",
    "luaotfload-conf.tex",
-   "luaotfload-tool.tex"
+   "luaotfload-tool.tex",
+   "shaper-demo-graphite.tex",
+   "shaper-demo.tex",
+   "scripts-demo.tex"
   }
 
 ---------------------
diff --git a/buildinfo.txt b/buildinfo.txt
index ed02da4..a376512 100644
--- a/buildinfo.txt
+++ b/buildinfo.txt
@@ -57,7 +57,7 @@ The name contains the current date.
 
 !!! date must be naturally correct
 
---> texlua scripts/mkstatus --fontloader=./src/auto/fontloader-2019-08-11.lua
+--> texlua scripts/mkstatus --fontloader=./src/auto/fontloader-2019-10-29.lua
 
 8. Check lualibs status -- perhaps it needs update too
 
diff --git a/doc/luaotfload-main.tex b/doc/luaotfload-main.tex
index 748de7f..e3444b0 100644
--- a/doc/luaotfload-main.tex
+++ b/doc/luaotfload-main.tex
@@ -33,10 +33,9 @@
 
   \setdocumenttitle  {The \identifier{luaotfload} package}
   \setdocumentdate   {2019-10-29 v3.0008-dev}
-  \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}\\
-                      Support: \email     {lualatex-dev at tug.org}}
+  \setdocumentauthor {LaTeX3 Project\\
+                      Elie Roux · Khaled Hosny · Philipp Gesang · Ulrike Fischer · Marcel Krüger\\
+                      Home: \hyperlink {https://github.com/latex3/luaotfload}}
 
   \typesetdocumenttitle
 
@@ -55,6 +54,26 @@
 
 \pdfbookmark[1]{\contentsname}{table}
 \typesetcontent
+\beginsection {Engine and version support}
+\identifier{luaotfload} is a quite large and complex package. It imports code from context which is actively developed along with the luatex binary. It is not possible 
+to support a large number of engines variants or versions.
+
+Supported is the \identifier{luatex} versions of a current TeXLive 2019 (and a current MiKTeX). Beginning with version 3.1 of this package also \identifier{luahbtex} is supported.  
+\endsection
+
+\beginsection {New in version 3.1 (by Ulrike Fischer/Marcel Krüger)}
+\begin{itemize}
+\item   The package has been moved to the github of the LaTeX3 Project and is now maintained
+        officially by the LaTeX3 Project team.
+\item   Code to use the harfbuzz library of luahbtex has been added. See the description of the harf mode.
+\item   To reduce the polution of the global lua enviroment a number of lua tables have been removed.
+        Only the tables \identifier{luaotfload}, \identifier{fonts} and \identifier{nodes} have been kept there.
+\item   The fontloader has been synched with the context files from 2019-10-29.
+
+\end{itemize}
+\endsection
+
+
 \beginsection {New in version 3.00 (by Ulrike Fischer/Marcel Krüger)}
 \begin{itemize}
 \item Default Ignorable characters are now invisible by default (issue 63). This can be deactivated with the option \texttt{invisible}.
@@ -154,7 +173,7 @@ On the other side there is a lot new:
   \beginaltitem {Lualibs} The update of the fontloader files also required an update of the \identifier{Lualibs} package. This \identifier{Luaotfload} version needs version 2.6 of \identifier{Lualibs}.
   \endaltitem
 
-  \beginaltitem {Maintenance} As the current maintainer wasn't available and it was urgent to get a \identifier{Luaotfload} compatible with \LUATEX 1.08/1.09 maintenance has been transfered to Ulrike Fischer and Marcel Krüger. The package is currently maintained and developed at \hyperlink{https://github.com/u-fischer/luaotfload}. Issues should be reported there.
+  \beginaltitem {Maintenance} As the current maintainer wasn't available and it was urgent to get a \identifier{Luaotfload} compatible with \LUATEX 1.08/1.09 maintenance has been transfered to Ulrike Fischer and Marcel Krüger. The package was maintained and developed at \hyperlink{https://github.com/u-fischer/luaotfload}. Issues should be reported there.
   \endaltitem
 
   \beginaltitem {Documentation}
@@ -181,11 +200,8 @@ These fonts can contain many more characters than \TEX fonts, as well
 as additional functionality like ligatures, old-style numbers, small
 capitals, etc., and support more complex writing systems like Arabic
 and Indic\footnote{%
-  Unfortunately, \identifier{luaotfload} doesn‘t support many Indic
-  scripts right now.
-  Assistance in implementing the prerequisites is greatly
-  appreciated.
-}
+  Unfortunately, the default fontloader of \identifier{luaotfload} doesn‘t support many Indic
+  scripts correctly. For these scripts it is recommended to use the harf mode along with the binary \identifier{luahbtex}.}
 scripts.
 
 \OpenType fonts are widely deployed and available for all modern
@@ -382,7 +398,7 @@ where \meta{prefix} is either \inlinecode{file:} or \inlinecode {name:}.\footnot
   %
   For a working example see the
   \hyperlink [test in the luaotfload
-  repo]{https://github.com/u-fischer/luaotfload/blob/master/testfiles/my-resolver.lvt}.
+  repo]{https://github.com/latex3/luaotfload/blob/master/testfiles/my-resolver.lvt}.
 }
 %
 It determines whether the font loader should interpret the request as
@@ -721,10 +737,9 @@ obviously, \inlinecode{random}.
 \begindescriptions
 
   \beginaltitem {mode}
-         Until version 2.94
-         \identifier{luaotfload} had two \OpenType processing
+         \identifier{luaotfload} had three \OpenType processing
          \emphasis{modes}:
-         \identifier{base} and \identifier{node}.
+         \identifier{base}, \identifier{node} and \identifier{harf}.
 
          \identifier{base} mode works by mapping \OpenType
          features to traditional \TEX ligature and kerning mechanisms.
@@ -744,12 +759,42 @@ obviously, \inlinecode{random}.
          mode, and \identifier{base} mode has to be requested where needed,
          e.~g. for math fonts.
 
-         Since version 2.94 it is possible to call other font renderers with the mode key. A simple example with a plain reader can be found at \hyperlink{https://github.com/u-fischer/luaotfload/pull/26\#issuecomment-437716326}.
-         A more useful example needs the new experimental harftex engine (windows binaries can be found at w32tex.org), and the harf renderer (\hyperlink{https://github.com/khaledhosny/harf}). With both it is possible to render a font using the harfbuzz library (used also by xetex).
+         \identifier{harf} mode is new in version 3.1 and needs the new \identifier{luahbtex} engine (the mode is ignored if \identifier{luahbtex} is not used). With it is possible to render a font using the harfbuzz library in-built in the new engine. \identifier{harf} mode improves greatly the rendering of indic and arabic scripts and is highly recommended for such scripts.
+         
+         When using \identifier{harf} mode it is required to set also the script correctly:
          
          
+         \beginlisting
+         \font\burmesefont={file:NotoSerifMyanmar-Regular.ttf:mode=harf;script=mymr;}
+         \font\devafont={file:NotoSansDevanagari-Regular.ttf:mode=harf;script=deva;}
+         \font\banglafont={name:Noto Sans Bengali:mode=harf;script=beng;}
+         \font\tibetanfont={name:Noto Serif Tibetan:mode=harf;script=tibt;}
+         \endlisting
+
+         \includegraphics{scripts-demo}
+         
+         
+         It is possible to call other font renderers with the mode key. A simple example with a plain reader can be found at \url{https://github.com/latex3/luaotfload/pull/26#issuecomment-437716326}.
+          
   \endaltitem
+  \beginaltitem {shaper} \label{shaper-tag}
+  If \identifier{luahbtex} and \identifier{harf} mode are used it is possible to specify a shaper, like \identifier{graphite2} or \identifier{ot} (open type).
   
+  \beginlisting
+  \pardir TRT\textdir TRT
+  \font\test={file:AwamiNastaliq-Regular.ttf:mode=harf;shaper=ot}
+  \endlisting
+  
+  \includegraphics{shaper-demo}
+  
+  \beginlisting
+  \pardir TRT\textdir TRT
+  \font\test={file:AwamiNastaliq-Regular.ttf:mode=harf;shaper=graphite2}
+  \endlisting
+
+  \includegraphics{shaper-demo-graphite}
+    
+  \endaltitem  
   \beginaltitem {script} \label{script-tag}
          An \OpenType script tag;\footnote{%
            See \hyperlink {http://www.microsoft.com/typography/otspec/scripttags.htm}
diff --git a/doc/luaotfload-tool.1 b/doc/luaotfload-tool.1
index 3636d2f..106fa37 100644
--- a/doc/luaotfload-tool.1
+++ b/doc/luaotfload-tool.1
@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH LUAOTFLOAD-TOOL 1 "2019-09-13" "3.00" "text processing"
+.TH LUAOTFLOAD-TOOL 1 "2019-10-29" "3.0008-dev" "text processing"
 .SH NAME
 luaotfload-tool \- generate and query the Luaotfload font names database
 .
diff --git a/doc/luaotfload.conf.5 b/doc/luaotfload.conf.5
index 1173d9a..17ceaa5 100644
--- a/doc/luaotfload.conf.5
+++ b/doc/luaotfload.conf.5
@@ -1,6 +1,6 @@
 .\" Man page generated from reStructuredText.
 .
-.TH LUAOTFLOAD.CONF 5 "2019-09-13" "3.00" "text processing"
+.TH LUAOTFLOAD.CONF 5 "2019-10-29" "3.0008-dev" "text processing"
 .SH NAME
 luaotfload.conf \- Luaotfload configuration file
 .
diff --git a/doc/scripts-demo.tex b/doc/scripts-demo.tex
new file mode 100644
index 0000000..4973032
--- /dev/null
+++ b/doc/scripts-demo.tex
@@ -0,0 +1,15 @@
+\documentclass{standalone}
+
+\font\burmesefont={file:NotoSerifMyanmar-Regular.ttf:mode=harf;script=mymr;}
+\font\devafont={file:NotoSansDevanagari-Regular.ttf:mode=harf;script=deva;}
+\font\banglafont={name:Noto Sans Bengali:mode=harf;script=beng;}
+\font\tibetanfont={name:Noto Serif Tibetan:mode=harf;script=tibt;}
+\standaloneenv{tabular}
+\begin{document}
+\begin{tabular}{l}
+\burmesefont မ္မတီခေါင်းလောင်းကြီ\\
+\devafont  क्रर्कि \\
+\banglafont কণ্যা এখন কি করিবে\\
+\tibetanfont སྐྱེས་ཙམ་ཉིད་ནས་ཆེ་མཐོངས་དང༌།
+\end{tabular}
+\end{document} 
\ No newline at end of file
diff --git a/doc/shaper-demo-graphite.tex b/doc/shaper-demo-graphite.tex
new file mode 100644
index 0000000..cf83fb2
--- /dev/null
+++ b/doc/shaper-demo-graphite.tex
@@ -0,0 +1,9 @@
+\documentclass[12pt]{standalone}
+
+\begin{document}
+
+\pardir TRT\textdir TRT
+\font\test={file:AwamiNastaliq-Regular.ttf:mode=harf;shaper=graphite2}
+\test
+اُرْشَلیمئے
+\end{document}
diff --git a/doc/shaper-demo.tex b/doc/shaper-demo.tex
new file mode 100644
index 0000000..b4931dc
--- /dev/null
+++ b/doc/shaper-demo.tex
@@ -0,0 +1,7 @@
+\documentclass[12pt]{standalone}
+\begin{document}
+\pardir TRT\textdir TRT
+\font\test={file:AwamiNastaliq-Regular.ttf:mode=harf;shaper=ot}
+\test
+اُرْشَلیمئے
+\end{document}





More information about the latex3-commits mailing list