summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--FILES.byname1098
-rw-r--r--FILES.byname.gzbin2172285 -> 2172393 bytes
-rw-r--r--FILES.last07days940
-rw-r--r--graphics/pgf/contrib/lie-hasse/README21
-rw-r--r--graphics/pgf/contrib/lie-hasse/lie-hasse.bib495
-rw-r--r--graphics/pgf/contrib/lie-hasse/lie-hasse.pdfbin0 -> 573306 bytes
-rw-r--r--graphics/pgf/contrib/lie-hasse/lie-hasse.sty2467
-rw-r--r--graphics/pgf/contrib/lie-hasse/lie-hasse.tex555
-rw-r--r--macros/latex/contrib/acro/README2
-rw-r--r--macros/latex/contrib/acro/acro-manual.cls4
-rw-r--r--macros/latex/contrib/acro/acro-manual.pdfbin577602 -> 576935 bytes
-rw-r--r--macros/latex/contrib/acro/acro.history1
-rw-r--r--macros/latex/contrib/acro/acro.sty6
-rw-r--r--macros/latex/contrib/chemmacros/README7
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros-manual.cls382
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros-manual.pdf (renamed from macros/latex/contrib/chemmacros/chemmacros_en.pdf)bin947206 -> 970626 bytes
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros-manual.tex (renamed from macros/latex/contrib/chemmacros/chemmacros_en.tex)137
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.history4
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex31
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex18
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex18
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex28
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex143
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex2
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex11
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex45
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex39
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex23
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex17
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros.sty20
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros4.sty4
-rw-r--r--macros/latex/contrib/chemmacros/chemmacros5.sty31
-rw-r--r--macros/latex/contrib/derivative/README.md4
-rw-r--r--macros/latex/contrib/derivative/derivative.pdfbin184657 -> 184454 bytes
-rw-r--r--macros/latex/contrib/derivative/derivative.sty8
-rw-r--r--macros/latex/contrib/derivative/derivative.tex9
-rw-r--r--macros/latex/contrib/filehook/README3
-rw-r--r--macros/latex/contrib/filehook/filehook.dtx352
-rw-r--r--macros/latex/contrib/filehook/filehook.pdfbin267294 -> 266229 bytes
-rw-r--r--macros/latex/contrib/fontspec/CHANGES.md8
-rw-r--r--macros/latex/contrib/fontspec/fontspec-code-enc.dtx1
-rw-r--r--macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx4
-rw-r--r--macros/latex/contrib/fontspec/fontspec-code-internal.dtx18
-rw-r--r--macros/latex/contrib/fontspec/fontspec-code-keyval.dtx3
-rw-r--r--macros/latex/contrib/fontspec/fontspec-code-opentype.dtx32
-rw-r--r--macros/latex/contrib/fontspec/fontspec-code.pdfbin627145 -> 626791 bytes
-rw-r--r--macros/latex/contrib/fontspec/fontspec.dtx6
-rw-r--r--macros/latex/contrib/fontspec/fontspec.pdfbin610857 -> 610880 bytes
-rw-r--r--macros/latex/contrib/physconst/CHANGELOG.md29
-rw-r--r--macros/latex/contrib/physconst/README.md35
-rw-r--r--macros/latex/contrib/physconst/physconst.dtx7281
-rw-r--r--macros/latex/contrib/physconst/physconst.pdfbin135843 -> 208326 bytes
-rw-r--r--macros/latex/contrib/thuthesis/README.md24
-rw-r--r--macros/latex/contrib/thuthesis/data/denotation.tex4
-rw-r--r--macros/latex/contrib/thuthesis/main.pdfbin768081 -> 771605 bytes
-rw-r--r--macros/latex/contrib/thuthesis/main.tex2
-rw-r--r--macros/latex/contrib/thuthesis/ref/appendix.bib18
-rw-r--r--macros/latex/contrib/thuthesis/ref/refs.bib247
-rw-r--r--macros/latex/contrib/thuthesis/spine.pdfbin20221 -> 20300 bytes
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis.dtx36
-rw-r--r--macros/latex/contrib/thuthesis/thuthesis.pdfbin937163 -> 938283 bytes
-rw-r--r--macros/latex/required/babel/base/README.md34
-rw-r--r--macros/latex/required/babel/base/babel.dtx578
-rw-r--r--macros/latex/required/babel/base/babel.ins2
-rw-r--r--macros/latex/required/babel/base/babel.pdfbin748353 -> 754441 bytes
-rw-r--r--macros/latex/required/babel/base/bbcompat.dtx2
-rw-r--r--macros/luatex/generic/lualibs/NEWS3
-rw-r--r--macros/luatex/generic/lualibs/README.md6
-rw-r--r--macros/luatex/generic/lualibs/lualibs-basic-merged.lua145
-rw-r--r--macros/luatex/generic/lualibs/lualibs-extended-merged.lua9
-rw-r--r--macros/luatex/generic/lualibs/lualibs-file.lua20
-rw-r--r--macros/luatex/generic/lualibs/lualibs-gzip.lua191
-rw-r--r--macros/luatex/generic/lualibs/lualibs-io.lua2
-rw-r--r--macros/luatex/generic/lualibs/lualibs-lua.lua6
-rw-r--r--macros/luatex/generic/lualibs/lualibs-md5.lua28
-rw-r--r--macros/luatex/generic/lualibs/lualibs-os.lua2
-rw-r--r--macros/luatex/generic/lualibs/lualibs-table.lua2
-rw-r--r--macros/luatex/generic/lualibs/lualibs-util-sta.lua9
-rw-r--r--macros/luatex/generic/lualibs/lualibs-util-str.lua2
-rw-r--r--macros/luatex/generic/lualibs/lualibs.dtx18
-rw-r--r--macros/luatex/generic/lualibs/lualibs.pdfbin81170 -> 80955 bytes
-rw-r--r--macros/luatex/generic/luaotfload/NEWS6
-rw-r--r--macros/luatex/generic/luaotfload/README.md4
-rw-r--r--macros/luatex/generic/luaotfload/filegraph.pdfbin39841 -> 39847 bytes
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-2020-01-26.lua (renamed from macros/luatex/generic/luaotfload/fontloader-2019-10-29.lua)502
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-basics-gen.lua2
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-basics-nod.lua11
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-data-con.lua55
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-cff.lua264
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-con.lua28
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-def.lua10
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-ini.lua4
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-ocl.lua5
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-onr.lua2
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-oto.lua2
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-otr.lua2
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-font-ots.lua74
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-l-file.lua20
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-l-io.lua2
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-l-lua.lua6
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-l-table.lua2
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-reference.lua374
-rw-r--r--macros/luatex/generic/luaotfload/fontloader-util-str.lua2
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua19
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-colors.lua80
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-conf.pdfbin77676 -> 77323 bytes
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-configuration.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-database.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-embolden.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-fallback.lua134
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-features.lua42
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-filelist.lua5
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-harf-define.lua34
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua17
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-init.lua23
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-latex.pdfbin394746 -> 443581 bytes
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-latex.tex33
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-letterspace.lua24
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-loaders.lua31
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-log.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-main.lua51
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-main.tex195
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-multiscript.lua200
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-notdef.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-parsers.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-resolvers.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-scripts.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-status.lua94
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-tool.110
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-tool.lua20
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-tool.pdfbin76928 -> 76686 bytes
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-tool.rst10
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-tounicode.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload-unicode.lua4
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload.conf.58
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload.conf.rst10
-rw-r--r--macros/luatex/generic/luaotfload/luaotfload.sty2
-rw-r--r--macros/luatex/generic/luaotfload/scripts-demo.pdfbin21422 -> 21523 bytes
-rw-r--r--macros/luatex/generic/luaotfload/shaper-demo-graphite.pdfbin8487 -> 8487 bytes
-rw-r--r--macros/luatex/generic/luaotfload/shaper-demo.pdfbin8411 -> 8411 bytes
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb246
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.md52
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha5122
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc14
-rw-r--r--systems/texlive/tlnet/tlpkg/texlive.tlpdb.xzbin2163408 -> 2163932 bytes
-rw-r--r--systems/win32/miktex/tm/packages/files.csv.lzmabin524383 -> 522769 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/files.csv.lzmabin524162 -> 523177 bytes
-rw-r--r--systems/win32/miktex/tm/packages/next/pr.ini6
-rw-r--r--systems/win32/miktex/tm/packages/pr.ini8
-rw-r--r--systems/win32/w32tex/ChangeLog10
-rw-r--r--timestamp2
153 files changed, 15406 insertions, 3083 deletions
diff --git a/FILES.byname b/FILES.byname
index 9a194b4c7c..38d711f4f8 100644
--- a/FILES.byname
+++ b/FILES.byname
@@ -4993,7 +4993,7 @@
1990/10/02 | 812 | dviware/vutex/vaxvms.ins
1990/10/02 | 127576 | dviware/vutex/vutex.web
2014/04/13 | 4600576 | dviware/xdvi/22.87/xdvik-22.87.tar.gz
-2020/02/02 | 112451 | FILES.last07days
+2020/02/03 | 162716 | FILES.last07days
2018/06/27 | 99883 | fonts/academicons/academicons.pdf
2018/06/27 | 10779 | fonts/academicons/academicons.sty
2018/06/27 | 5774 | fonts/academicons/academicons.tex
@@ -133115,6 +133115,12 @@
2017/05/17 | 5985 | graphics/pgf/contrib/ladder/ladder.tex
2017/05/17 | 832 | graphics/pgf/contrib/ladder/README.md
2017/05/17 | 213962 | graphics/pgf/contrib/ladder.zip
+2020/01/30 | 20606 | graphics/pgf/contrib/lie-hasse/lie-hasse.bib
+2020/02/03 | 573306 | graphics/pgf/contrib/lie-hasse/lie-hasse.pdf
+2020/02/02 | 58728 | graphics/pgf/contrib/lie-hasse/lie-hasse.sty
+2020/02/03 | 17373 | graphics/pgf/contrib/lie-hasse/lie-hasse.tex
+2020/02/03 | 590 | graphics/pgf/contrib/lie-hasse/README
+2020/02/03 | 586616 | graphics/pgf/contrib/lie-hasse.zip
2014/06/15 | 336497 | graphics/pgf/contrib/logicpuzzle/logicpuzzle.dtx
2014/06/15 | 810773 | graphics/pgf/contrib/logicpuzzle/logicpuzzle.pdf
2014/06/15 | 1855 | graphics/pgf/contrib/logicpuzzle/qrcode.png
@@ -160956,7 +160962,7 @@
2018/04/08 | 4917156 | install/macros/latex/contrib/fithesis.tds.zip
2014/09/30 | 2083562 | install/macros/latex/contrib/flowfram.tds.zip
2020/01/28 | 537038 | install/macros/latex/contrib/fmtcount.tds.zip
-2020/01/26 | 1377822 | install/macros/latex/contrib/fontspec.tds.zip
+2020/02/03 | 1377239 | install/macros/latex/contrib/fontspec.tds.zip
2017/07/14 | 330649 | install/macros/latex/contrib/fonttable.tds.zip
2011/06/06 | 351067 | install/macros/latex/contrib/footmisc.tds.zip
2019/11/24 | 417422 | install/macros/latex/contrib/footnoterange.tds.zip
@@ -161183,10 +161189,10 @@
2019/11/18 | 2636412 | install/macros/latex-dev/required/latex-amsmath-dev.tds.zip
2020/02/02 | 2551525 | install/macros/latex-dev/required/latex-graphics-dev.tds.zip
2020/02/02 | 6999063 | install/macros/latex-dev/required/latex-tools-dev.tds.zip
-2020/02/01 | 22929791 | install/macros/latex/latex-base.tds.zip
+2020/02/03 | 22921387 | install/macros/latex/latex-base.tds.zip
2017/12/18 | 1359749 | install/macros/latex/required/amscls.tds.zip
2013/03/08 | 2480846 | install/macros/latex/required/amslatex/math.tds.zip
-2020/01/15 | 2548125 | install/macros/latex/required/babel-base.tds.zip
+2020/02/03 | 2585382 | install/macros/latex/required/babel-base.tds.zip
2020/02/02 | 2654475 | install/macros/latex/required/latex-amsmath.tds.zip
2019/10/15 | 200482 | install/macros/latex/required/latexbug.tds.zip
2018/04/06 | 1324669 | install/macros/latex/required/latex-cyrillic.tds.zip
@@ -161194,9 +161200,9 @@
2020/02/02 | 6997831 | install/macros/latex/required/latex-tools.tds.zip
2016/09/02 | 108688 | install/macros/luatex/generic/cstypo.tds.zip
2015/10/01 | 154538 | install/macros/luatex/generic/ctablestack.tds.zip
-2019/11/06 | 269839 | install/macros/luatex/generic/lualibs.tds.zip
+2020/02/03 | 272338 | install/macros/luatex/generic/lualibs.tds.zip
2019/12/11 | 195600 | install/macros/luatex/generic/luamplib.tds.zip
-2019/11/10 | 1789667 | install/macros/luatex/generic/luaotfload.tds.zip
+2020/02/03 | 1852727 | install/macros/luatex/generic/luaotfload.tds.zip
2015/10/04 | 277014 | install/macros/luatex/generic/luatexbase.tds.zip
2019/03/24 | 901831 | install/macros/luatex/latex/arabluatex.tds.zip
2013/09/26 | 155171 | install/macros/luatex/latex/luabibentry.tds.zip
@@ -176676,14 +176682,14 @@
2000/05/18 | 2170 | macros/latex/contrib/acmconf/README
2000/05/18 | 30 | macros/latex/contrib/acmconf/THIS-IS-VERSION-1.3
2008/05/14 | 105778 | macros/latex/contrib/acmconf.zip
-2020/01/24 | 12268 | macros/latex/contrib/acro/acro.definitions.tex
-2020/01/24 | 15964 | macros/latex/contrib/acro/acro.history
-2020/01/24 | 12152 | macros/latex/contrib/acro/acro-manual.cls
-2020/01/24 | 577602 | macros/latex/contrib/acro/acro-manual.pdf
-2020/01/24 | 86622 | macros/latex/contrib/acro/acro-manual.tex
-2020/01/24 | 133509 | macros/latex/contrib/acro/acro.sty
-2020/01/24 | 1969 | macros/latex/contrib/acro/example_one.tex
-2020/01/24 | 3251 | macros/latex/contrib/acro/example_two.tex
+2020/02/03 | 12268 | macros/latex/contrib/acro/acro.definitions.tex
+2020/02/03 | 15998 | macros/latex/contrib/acro/acro.history
+2020/02/03 | 12169 | macros/latex/contrib/acro/acro-manual.cls
+2020/02/03 | 576935 | macros/latex/contrib/acro/acro-manual.pdf
+2020/02/03 | 86622 | macros/latex/contrib/acro/acro-manual.tex
+2020/02/03 | 133509 | macros/latex/contrib/acro/acro.sty
+2020/02/03 | 1969 | macros/latex/contrib/acro/example_one.tex
+2020/02/03 | 3251 | macros/latex/contrib/acro/example_two.tex
2016/02/02 | 329 | macros/latex/contrib/acroflex/acroflex.cfg
2016/08/29 | 80056 | macros/latex/contrib/acroflex/acroflex.dtx
2008/07/02 | 1842 | macros/latex/contrib/acroflex/acroflex.ins
@@ -176712,7 +176718,7 @@
2019/11/11 | 7743 | macros/latex/contrib/acronym/CHANGES
2016/03/29 | 896 | macros/latex/contrib/acronym/README
2019/11/11 | 291151 | macros/latex/contrib/acronym.zip
-2020/01/24 | 1368 | macros/latex/contrib/acro/README
+2020/02/03 | 1368 | macros/latex/contrib/acro/README
2010/11/19 | 11356 | macros/latex/contrib/acroterm/acroterm.dtx
2010/11/19 | 1394 | macros/latex/contrib/acroterm/acroterm.ins
2010/11/19 | 172447 | macros/latex/contrib/acroterm/acroterm.pdf
@@ -176752,7 +176758,7 @@
2019/12/30 | 216157 | macros/latex/contrib/acrotex/web.dtx
2018/07/14 | 2338 | macros/latex/contrib/acrotex/web.ins
2020/01/07 | 3362404 | macros/latex/contrib/acrotex.zip
-2020/01/24 | 632591 | macros/latex/contrib/acro.zip
+2020/02/03 | 631856 | macros/latex/contrib/acro.zip
2019/06/13 | 26799 | macros/latex/contrib/actuarialangle/actuarialangle.dtx
2019/06/13 | 120479 | macros/latex/contrib/actuarialangle/actuarialangle.pdf
2019/06/13 | 1176 | macros/latex/contrib/actuarialangle/README.md
@@ -181498,39 +181504,40 @@
2020/01/16 | 47530 | macros/latex/contrib/chemgreek/chemgreek.sty
2020/01/16 | 1374 | macros/latex/contrib/chemgreek/README
2020/01/16 | 721642 | macros/latex/contrib/chemgreek.zip
-2020/01/16 | 135531 | macros/latex/contrib/chemmacros/chemmacros4.sty
-2020/01/16 | 10469 | macros/latex/contrib/chemmacros/chemmacros5.sty
-2020/01/16 | 947206 | macros/latex/contrib/chemmacros/chemmacros_en.pdf
-2020/01/16 | 153192 | macros/latex/contrib/chemmacros/chemmacros_en.tex
-2020/01/16 | 24202 | macros/latex/contrib/chemmacros/chemmacros.history
-2020/01/16 | 5438 | macros/latex/contrib/chemmacros/chemmacros.module.acid-base.code.tex
-2020/01/16 | 2412 | macros/latex/contrib/chemmacros/chemmacros.module.all.code.tex
-2020/01/16 | 14853 | macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex
-2020/01/16 | 5863 | macros/latex/contrib/chemmacros/chemmacros.module.charges.code.tex
-2020/01/16 | 9226 | macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex
-2020/01/16 | 4763 | macros/latex/contrib/chemmacros/chemmacros.module.errorcheck.code.tex
-2020/01/16 | 2612 | macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex
-2020/01/16 | 8002 | macros/latex/contrib/chemmacros/chemmacros.module.isotopes.code.tex
-2020/01/16 | 6264 | macros/latex/contrib/chemmacros/chemmacros.module.lang.code.tex
-2020/01/16 | 4921 | macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex
-2020/01/16 | 7293 | macros/latex/contrib/chemmacros/chemmacros.module.newman.code.tex
-2020/01/16 | 29123 | macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex
-2020/01/16 | 21349 | macros/latex/contrib/chemmacros/chemmacros.module.orbital.code.tex
-2020/01/16 | 4611 | macros/latex/contrib/chemmacros/chemmacros.module.particles.code.tex
-2020/01/16 | 4564 | macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex
-2020/01/16 | 6225 | macros/latex/contrib/chemmacros/chemmacros.module.polymers.code.tex
-2020/01/16 | 14355 | macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex
-2020/01/16 | 14755 | macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex
-2020/01/16 | 10665 | macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex
-2020/01/16 | 18760 | macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex
-2020/01/16 | 3001 | macros/latex/contrib/chemmacros/chemmacros.module.symbols.code.tex
-2020/01/16 | 6069 | macros/latex/contrib/chemmacros/chemmacros.module.thermodynamics.code.tex
-2020/01/16 | 6324 | macros/latex/contrib/chemmacros/chemmacros.module.tikz.code.tex
-2020/01/16 | 2200 | macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex
-2020/01/16 | 4287 | macros/latex/contrib/chemmacros/chemmacros.module.xfrac.code.tex
-2020/01/16 | 8288 | macros/latex/contrib/chemmacros/chemmacros.sty
-2020/01/16 | 2506 | macros/latex/contrib/chemmacros/README
-2020/01/17 | 1064230 | macros/latex/contrib/chemmacros.zip
+2020/02/03 | 135525 | macros/latex/contrib/chemmacros/chemmacros4.sty
+2020/02/03 | 10593 | macros/latex/contrib/chemmacros/chemmacros5.sty
+2020/02/03 | 24462 | macros/latex/contrib/chemmacros/chemmacros.history
+2020/02/03 | 12850 | macros/latex/contrib/chemmacros/chemmacros-manual.cls
+2020/02/03 | 970626 | macros/latex/contrib/chemmacros/chemmacros-manual.pdf
+2020/02/03 | 148452 | macros/latex/contrib/chemmacros/chemmacros-manual.tex
+2020/02/03 | 5438 | macros/latex/contrib/chemmacros/chemmacros.module.acid-base.code.tex
+2020/02/03 | 2412 | macros/latex/contrib/chemmacros/chemmacros.module.all.code.tex
+2020/02/03 | 14592 | macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex
+2020/02/03 | 5863 | macros/latex/contrib/chemmacros/chemmacros.module.charges.code.tex
+2020/02/03 | 9200 | macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex
+2020/02/03 | 4763 | macros/latex/contrib/chemmacros/chemmacros.module.errorcheck.code.tex
+2020/02/03 | 2656 | macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex
+2020/02/03 | 8002 | macros/latex/contrib/chemmacros/chemmacros.module.isotopes.code.tex
+2020/02/03 | 6264 | macros/latex/contrib/chemmacros/chemmacros.module.lang.code.tex
+2020/02/03 | 4889 | macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex
+2020/02/03 | 7293 | macros/latex/contrib/chemmacros/chemmacros.module.newman.code.tex
+2020/02/03 | 30151 | macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex
+2020/02/03 | 21349 | macros/latex/contrib/chemmacros/chemmacros.module.orbital.code.tex
+2020/02/03 | 4611 | macros/latex/contrib/chemmacros/chemmacros.module.particles.code.tex
+2020/02/03 | 4561 | macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex
+2020/02/03 | 6225 | macros/latex/contrib/chemmacros/chemmacros.module.polymers.code.tex
+2020/02/03 | 14383 | macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex
+2020/02/03 | 14805 | macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex
+2020/02/03 | 10759 | macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex
+2020/02/03 | 18725 | macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex
+2020/02/03 | 3001 | macros/latex/contrib/chemmacros/chemmacros.module.symbols.code.tex
+2020/02/03 | 6069 | macros/latex/contrib/chemmacros/chemmacros.module.thermodynamics.code.tex
+2020/02/03 | 6324 | macros/latex/contrib/chemmacros/chemmacros.module.tikz.code.tex
+2020/02/03 | 2331 | macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex
+2020/02/03 | 4287 | macros/latex/contrib/chemmacros/chemmacros.module.xfrac.code.tex
+2020/02/03 | 8421 | macros/latex/contrib/chemmacros/chemmacros.sty
+2020/02/03 | 2540 | macros/latex/contrib/chemmacros/README
+2020/02/03 | 1088735 | macros/latex/contrib/chemmacros.zip
2019/10/02 | 588398 | macros/latex/contrib/chemnum/chemnum_en.pdf
2019/10/02 | 53121 | macros/latex/contrib/chemnum/chemnum_en.tex
2019/10/02 | 74514 | macros/latex/contrib/chemnum/chemnum.sty
@@ -183240,11 +183247,11 @@
2017/01/01 | 72389 | macros/latex/contrib/denisbdoc/denisbdoc.dtx
2017/01/01 | 435 | macros/latex/contrib/denisbdoc/README.md
2017/01/01 | 20684 | macros/latex/contrib/denisbdoc.zip
-2019/12/22 | 184657 | macros/latex/contrib/derivative/derivative.pdf
-2019/12/22 | 42171 | macros/latex/contrib/derivative/derivative.sty
-2019/12/22 | 98840 | macros/latex/contrib/derivative/derivative.tex
-2019/12/22 | 1191 | macros/latex/contrib/derivative/README.md
-2019/12/22 | 205062 | macros/latex/contrib/derivative.zip
+2020/02/03 | 184454 | macros/latex/contrib/derivative/derivative.pdf
+2020/02/03 | 42176 | macros/latex/contrib/derivative/derivative.sty
+2020/02/03 | 99057 | macros/latex/contrib/derivative/derivative.tex
+2020/02/03 | 1196 | macros/latex/contrib/derivative/README.md
+2020/02/03 | 204929 | macros/latex/contrib/derivative.zip
2012/09/17 | 4069 | macros/latex/contrib/designcon/DesignCon.bib
2012/09/17 | 2766 | macros/latex/contrib/designcon/designcon.cls
2012/09/17 | 3697 | macros/latex/contrib/designcon/designcon.layout
@@ -185740,11 +185747,11 @@
2013/03/26 | 19267 | macros/latex/contrib/filedate/filedate.sty
2012/11/06 | 1899 | macros/latex/contrib/filedate/README
2013/03/27 | 575744 | macros/latex/contrib/filedate.zip
-2019/10/03 | 63445 | macros/latex/contrib/filehook/filehook.dtx
-2019/10/03 | 646 | macros/latex/contrib/filehook/filehook.ins
-2019/10/03 | 267294 | macros/latex/contrib/filehook/filehook.pdf
-2019/10/03 | 312 | macros/latex/contrib/filehook/README
-2019/10/03 | 276168 | macros/latex/contrib/filehook.zip
+2020/02/03 | 64079 | macros/latex/contrib/filehook/filehook.dtx
+2020/02/03 | 646 | macros/latex/contrib/filehook/filehook.ins
+2020/02/03 | 266229 | macros/latex/contrib/filehook/filehook.pdf
+2020/02/03 | 274 | macros/latex/contrib/filehook/README
+2020/02/03 | 275511 | macros/latex/contrib/filehook.zip
2012/11/30 | 599 | macros/latex/contrib/fileinfo/doc/fileinfo.RLS
2012/11/30 | 559310 | macros/latex/contrib/fileinfo/doc/myfilist.pdf
2012/11/30 | 489557 | macros/latex/contrib/fileinfo/doc/readprov.pdf
@@ -186868,48 +186875,48 @@
2019/12/20 | 20472 | macros/latex/contrib/fontsetup/system-install-fonts/fsplpscel.otf
2019/12/20 | 17944 | macros/latex/contrib/fontsetup/system-install-fonts/fspmnscel.otf
2019/12/20 | 1479016 | macros/latex/contrib/fontsetup.zip
-2020/01/26 | 21439 | macros/latex/contrib/fontspec/CHANGES.md
-2020/01/26 | 549 | macros/latex/contrib/fontspec/fontspec.cfg
-2020/01/26 | 12465 | macros/latex/contrib/fontspec/fontspec-code-api.dtx
-2020/01/26 | 1217 | macros/latex/contrib/fontspec/fontspec-code-closing.dtx
-2020/01/26 | 4970 | macros/latex/contrib/fontspec/fontspec-code-enc.dtx
-2020/01/26 | 9356 | macros/latex/contrib/fontspec/fontspec-code-feat-aat.dtx
-2020/01/26 | 20768 | macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx
-2020/01/26 | 4037 | macros/latex/contrib/fontspec/fontspec-code-fontload.dtx
-2020/01/26 | 3968 | macros/latex/contrib/fontspec/fontspec-code-graphite.dtx
-2020/01/26 | 7191 | macros/latex/contrib/fontspec/fontspec-code-interfaces.dtx
-2020/01/26 | 39597 | macros/latex/contrib/fontspec/fontspec-code-internal.dtx
-2020/01/26 | 26273 | macros/latex/contrib/fontspec/fontspec-code-keyval.dtx
-2020/01/26 | 12895 | macros/latex/contrib/fontspec/fontspec-code-lang.dtx
-2020/01/26 | 2155 | macros/latex/contrib/fontspec/fontspec-code-load.dtx
-2020/01/26 | 1181 | macros/latex/contrib/fontspec/fontspec-code.ltx
-2020/01/26 | 12279 | macros/latex/contrib/fontspec/fontspec-code-math.dtx
-2020/01/26 | 8351 | macros/latex/contrib/fontspec/fontspec-code-msg.dtx
-2020/01/26 | 6385 | macros/latex/contrib/fontspec/fontspec-code-opening.dtx
-2020/01/26 | 21182 | macros/latex/contrib/fontspec/fontspec-code-opentype.dtx
-2020/01/26 | 627145 | macros/latex/contrib/fontspec/fontspec-code.pdf
-2020/01/26 | 6038 | macros/latex/contrib/fontspec/fontspec-code-scripts.dtx
-2020/01/26 | 17270 | macros/latex/contrib/fontspec/fontspec-code-user.dtx
-2020/01/26 | 9101 | macros/latex/contrib/fontspec/fontspec-code-vars.dtx
-2020/01/26 | 8694 | macros/latex/contrib/fontspec/fontspec-code-xfss.dtx
-2020/01/26 | 13674 | macros/latex/contrib/fontspec/fontspec-doc-api.tex
-2020/01/26 | 9309 | macros/latex/contrib/fontspec/fontspec-doc-enc.tex
-2020/01/26 | 25867 | macros/latex/contrib/fontspec/fontspec-doc-featset.tex
-2020/01/26 | 29795 | macros/latex/contrib/fontspec/fontspec-doc-fontsel.tex
-2020/01/26 | 8673 | macros/latex/contrib/fontspec/fontspec-doc-intro.tex
-2020/01/26 | 4071 | macros/latex/contrib/fontspec/fontspec-doc-luatex.tex
-2020/01/26 | 44588 | macros/latex/contrib/fontspec/fontspec-doc-opentype.tex
-2020/01/26 | 7529 | macros/latex/contrib/fontspec/fontspec-doc-style.sty
-2020/01/26 | 12795 | macros/latex/contrib/fontspec/fontspec-doc-xetex.tex
-2020/01/26 | 3622 | macros/latex/contrib/fontspec/fontspec.dtx
-2020/01/26 | 1687 | macros/latex/contrib/fontspec/fontspec-example.tex
-2020/01/26 | 1980 | macros/latex/contrib/fontspec/fontspec.ins
-2020/01/26 | 1246 | macros/latex/contrib/fontspec/fontspec.ltx
-2020/01/26 | 3057 | macros/latex/contrib/fontspec/fontspec-lua.dtx
-2020/01/26 | 610857 | macros/latex/contrib/fontspec/fontspec.pdf
-2020/01/26 | 19106 | macros/latex/contrib/fontspec/LICENSE
-2020/01/26 | 2846 | macros/latex/contrib/fontspec/README.md
-2020/01/25 | 1317047 | macros/latex/contrib/fontspec.zip
+2020/02/03 | 21760 | macros/latex/contrib/fontspec/CHANGES.md
+2020/02/03 | 549 | macros/latex/contrib/fontspec/fontspec.cfg
+2020/02/03 | 12465 | macros/latex/contrib/fontspec/fontspec-code-api.dtx
+2020/02/03 | 1217 | macros/latex/contrib/fontspec/fontspec-code-closing.dtx
+2020/02/03 | 4929 | macros/latex/contrib/fontspec/fontspec-code-enc.dtx
+2020/02/03 | 9356 | macros/latex/contrib/fontspec/fontspec-code-feat-aat.dtx
+2020/02/03 | 20768 | macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx
+2020/02/03 | 4037 | macros/latex/contrib/fontspec/fontspec-code-fontload.dtx
+2020/02/03 | 3968 | macros/latex/contrib/fontspec/fontspec-code-graphite.dtx
+2020/02/03 | 7191 | macros/latex/contrib/fontspec/fontspec-code-interfaces.dtx
+2020/02/03 | 39351 | macros/latex/contrib/fontspec/fontspec-code-internal.dtx
+2020/02/03 | 26400 | macros/latex/contrib/fontspec/fontspec-code-keyval.dtx
+2020/02/03 | 12895 | macros/latex/contrib/fontspec/fontspec-code-lang.dtx
+2020/02/03 | 2155 | macros/latex/contrib/fontspec/fontspec-code-load.dtx
+2020/02/03 | 1181 | macros/latex/contrib/fontspec/fontspec-code.ltx
+2020/02/03 | 12279 | macros/latex/contrib/fontspec/fontspec-code-math.dtx
+2020/02/03 | 8351 | macros/latex/contrib/fontspec/fontspec-code-msg.dtx
+2020/02/03 | 6385 | macros/latex/contrib/fontspec/fontspec-code-opening.dtx
+2020/02/03 | 21159 | macros/latex/contrib/fontspec/fontspec-code-opentype.dtx
+2020/02/03 | 626791 | macros/latex/contrib/fontspec/fontspec-code.pdf
+2020/02/03 | 6038 | macros/latex/contrib/fontspec/fontspec-code-scripts.dtx
+2020/02/03 | 17270 | macros/latex/contrib/fontspec/fontspec-code-user.dtx
+2020/02/03 | 9101 | macros/latex/contrib/fontspec/fontspec-code-vars.dtx
+2020/02/03 | 8694 | macros/latex/contrib/fontspec/fontspec-code-xfss.dtx
+2020/02/03 | 13674 | macros/latex/contrib/fontspec/fontspec-doc-api.tex
+2020/02/03 | 9309 | macros/latex/contrib/fontspec/fontspec-doc-enc.tex
+2020/02/03 | 25867 | macros/latex/contrib/fontspec/fontspec-doc-featset.tex
+2020/02/03 | 29795 | macros/latex/contrib/fontspec/fontspec-doc-fontsel.tex
+2020/02/03 | 8673 | macros/latex/contrib/fontspec/fontspec-doc-intro.tex
+2020/02/03 | 4071 | macros/latex/contrib/fontspec/fontspec-doc-luatex.tex
+2020/02/03 | 44588 | macros/latex/contrib/fontspec/fontspec-doc-opentype.tex
+2020/02/03 | 7529 | macros/latex/contrib/fontspec/fontspec-doc-style.sty
+2020/02/03 | 12795 | macros/latex/contrib/fontspec/fontspec-doc-xetex.tex
+2020/02/03 | 3622 | macros/latex/contrib/fontspec/fontspec.dtx
+2020/02/03 | 1687 | macros/latex/contrib/fontspec/fontspec-example.tex
+2020/02/03 | 1980 | macros/latex/contrib/fontspec/fontspec.ins
+2020/02/03 | 1246 | macros/latex/contrib/fontspec/fontspec.ltx
+2020/02/03 | 3057 | macros/latex/contrib/fontspec/fontspec-lua.dtx
+2020/02/03 | 610880 | macros/latex/contrib/fontspec/fontspec.pdf
+2020/02/03 | 19106 | macros/latex/contrib/fontspec/LICENSE
+2020/02/03 | 2846 | macros/latex/contrib/fontspec/README.md
+2020/02/03 | 1316521 | macros/latex/contrib/fontspec.zip
2017/07/14 | 46046 | macros/latex/contrib/fonttable/fonttable.dtx
2017/07/14 | 2505 | macros/latex/contrib/fonttable/fonttable.ins
2017/07/14 | 309980 | macros/latex/contrib/fonttable/fonttable.pdf
@@ -195340,13 +195347,13 @@
2004/07/15 | 161773 | macros/latex/contrib/photo/photo.pdf
2001/09/14 | 3184 | macros/latex/contrib/photo/photo_test.tex
2005/04/30 | 152794 | macros/latex/contrib/photo.zip
-2020/01/27 | 1537 | macros/latex/contrib/physconst/CHANGELOG.md
-2020/01/27 | 3711 | macros/latex/contrib/physconst/makefile
-2020/01/27 | 161574 | macros/latex/contrib/physconst/physconst.dtx
-2020/01/27 | 2056 | macros/latex/contrib/physconst/physconst.ins
-2020/01/27 | 135843 | macros/latex/contrib/physconst/physconst.pdf
-2020/01/27 | 3500 | macros/latex/contrib/physconst/README.md
-2020/01/27 | 146415 | macros/latex/contrib/physconst.zip
+2020/02/03 | 2453 | macros/latex/contrib/physconst/CHANGELOG.md
+2020/02/03 | 3711 | macros/latex/contrib/physconst/makefile
+2020/02/03 | 370329 | macros/latex/contrib/physconst/physconst.dtx
+2020/02/03 | 2056 | macros/latex/contrib/physconst/physconst.ins
+2020/02/03 | 208326 | macros/latex/contrib/physconst/physconst.pdf
+2020/02/03 | 3534 | macros/latex/contrib/physconst/README.md
+2020/02/03 | 224285 | macros/latex/contrib/physconst.zip
2012/12/13 | 249731 | macros/latex/contrib/physics/physics.pdf
2012/12/20 | 29610 | macros/latex/contrib/physics/physics.sty
2012/12/13 | 26241 | macros/latex/contrib/physics/physics.tex
@@ -202256,41 +202263,41 @@
2010/01/15 | 10230 | macros/latex/contrib/thumby/thumby.sty
2010/01/15 | 162336 | macros/latex/contrib/thumby.zip
2005/06/21 | 207846 | macros/latex/contrib/thumb.zip
-2020/01/05 | 2620 | macros/latex/contrib/thuthesis/data/abstract.tex
-2020/01/05 | 599 | macros/latex/contrib/thuthesis/data/acknowledgements.tex
-2020/01/05 | 7728 | macros/latex/contrib/thuthesis/data/appendix-survey.tex
-2020/01/05 | 12182 | macros/latex/contrib/thuthesis/data/appendix.tex
-2020/01/05 | 4995 | macros/latex/contrib/thuthesis/data/appendix-translation.tex
-2020/01/05 | 30503 | macros/latex/contrib/thuthesis/data/chap01.tex
-2020/01/05 | 6122 | macros/latex/contrib/thuthesis/data/chap02.tex
-2020/01/05 | 2781 | macros/latex/contrib/thuthesis/data/denotation.tex
-2020/01/05 | 2637 | macros/latex/contrib/thuthesis/data/resume.tex
-2015/12/21 | 35716 | macros/latex/contrib/thuthesis/figures/scan-auth.pdf
-2016/06/17 | 108783 | macros/latex/contrib/thuthesis/figures/scan-record.pdf
-2015/12/21 | 26709 | macros/latex/contrib/thuthesis/figures/scan-statement.pdf
-2015/06/07 | 111420 | macros/latex/contrib/thuthesis/figures/thu-fig-logo.pdf
-2015/06/07 | 7726 | macros/latex/contrib/thuthesis/figures/thu-lib-logo.pdf
-2015/06/07 | 22013 | macros/latex/contrib/thuthesis/figures/thu-text-logo.pdf
-2015/06/07 | 121086 | macros/latex/contrib/thuthesis/figures/thu-whole-logo.pdf
-2020/01/05 | 625 | macros/latex/contrib/thuthesis/latexmkrc
-2020/01/05 | 768081 | macros/latex/contrib/thuthesis/main.pdf
-2020/01/05 | 1425 | macros/latex/contrib/thuthesis/main.tex
-2020/01/05 | 1669 | macros/latex/contrib/thuthesis/Makefile
-2020/01/05 | 8469 | macros/latex/contrib/thuthesis/math_commands.tex
-2020/01/05 | 4577 | macros/latex/contrib/thuthesis/README.md
-2020/01/05 | 405 | macros/latex/contrib/thuthesis/ref/appendix.bib
-2020/01/05 | 6919 | macros/latex/contrib/thuthesis/ref/refs.bib
-2020/01/05 | 20221 | macros/latex/contrib/thuthesis/spine.pdf
-2020/01/05 | 424 | macros/latex/contrib/thuthesis/spine.tex
-2020/01/05 | 4506 | macros/latex/contrib/thuthesis/thusetup.tex
-2020/01/05 | 38523 | macros/latex/contrib/thuthesis/thuthesis-author-year.bst
-2020/01/05 | 35002 | macros/latex/contrib/thuthesis/thuthesis-bachelor.bst
-2020/01/05 | 119287 | macros/latex/contrib/thuthesis/thuthesis.dtx
-2020/01/05 | 2208 | macros/latex/contrib/thuthesis/thuthesis.ins
-2020/01/05 | 35244 | macros/latex/contrib/thuthesis/thuthesis-numeric.bst
-2020/01/05 | 937163 | macros/latex/contrib/thuthesis/thuthesis.pdf
-2018/04/23 | 6715 | macros/latex/contrib/thuthesis/tsinghua.pdf
-2020/01/05 | 2236650 | macros/latex/contrib/thuthesis.zip
+2020/01/06 | 2620 | macros/latex/contrib/thuthesis/data/abstract.tex
+2020/01/06 | 599 | macros/latex/contrib/thuthesis/data/acknowledgements.tex
+2020/01/06 | 7728 | macros/latex/contrib/thuthesis/data/appendix-survey.tex
+2020/01/06 | 12182 | macros/latex/contrib/thuthesis/data/appendix.tex
+2020/01/06 | 4995 | macros/latex/contrib/thuthesis/data/appendix-translation.tex
+2020/01/06 | 30503 | macros/latex/contrib/thuthesis/data/chap01.tex
+2020/01/06 | 6122 | macros/latex/contrib/thuthesis/data/chap02.tex
+2020/02/03 | 2789 | macros/latex/contrib/thuthesis/data/denotation.tex
+2020/01/06 | 2637 | macros/latex/contrib/thuthesis/data/resume.tex
+2018/07/09 | 35716 | macros/latex/contrib/thuthesis/figures/scan-auth.pdf
+2018/07/09 | 108783 | macros/latex/contrib/thuthesis/figures/scan-record.pdf
+2018/07/09 | 26709 | macros/latex/contrib/thuthesis/figures/scan-statement.pdf
+2018/07/09 | 111420 | macros/latex/contrib/thuthesis/figures/thu-fig-logo.pdf
+2018/07/09 | 7726 | macros/latex/contrib/thuthesis/figures/thu-lib-logo.pdf
+2018/07/09 | 22013 | macros/latex/contrib/thuthesis/figures/thu-text-logo.pdf
+2018/07/09 | 121086 | macros/latex/contrib/thuthesis/figures/thu-whole-logo.pdf
+2020/01/06 | 625 | macros/latex/contrib/thuthesis/latexmkrc
+2020/02/03 | 771605 | macros/latex/contrib/thuthesis/main.pdf
+2020/02/03 | 1425 | macros/latex/contrib/thuthesis/main.tex
+2020/02/03 | 1669 | macros/latex/contrib/thuthesis/Makefile
+2020/01/06 | 8469 | macros/latex/contrib/thuthesis/math_commands.tex
+2020/02/03 | 4602 | macros/latex/contrib/thuthesis/README.md
+2020/02/03 | 428 | macros/latex/contrib/thuthesis/ref/appendix.bib
+2020/02/03 | 7290 | macros/latex/contrib/thuthesis/ref/refs.bib
+2020/02/03 | 20300 | macros/latex/contrib/thuthesis/spine.pdf
+2020/01/06 | 424 | macros/latex/contrib/thuthesis/spine.tex
+2020/01/06 | 4506 | macros/latex/contrib/thuthesis/thusetup.tex
+2020/01/06 | 38523 | macros/latex/contrib/thuthesis/thuthesis-author-year.bst
+2020/01/06 | 35002 | macros/latex/contrib/thuthesis/thuthesis-bachelor.bst
+2020/02/03 | 119533 | macros/latex/contrib/thuthesis/thuthesis.dtx
+2020/01/06 | 2208 | macros/latex/contrib/thuthesis/thuthesis.ins
+2020/01/06 | 35244 | macros/latex/contrib/thuthesis/thuthesis-numeric.bst
+2020/02/03 | 938283 | macros/latex/contrib/thuthesis/thuthesis.pdf
+2018/07/09 | 6715 | macros/latex/contrib/thuthesis/tsinghua.pdf
+2020/02/03 | 2241629 | macros/latex/contrib/thuthesis.zip
2016/10/11 | 347 | macros/latex/contrib/ticket/comment
2016/09/07 | 42607 | macros/latex/contrib/ticket/doc/ex_file.pdf
2016/09/07 | 1294 | macros/latex/contrib/ticket/doc/ex_file.tex
@@ -206701,14 +206708,14 @@
2020/02/02 | 430478 | macros/latex/required/amsmath/testmath.pdf
2019/10/06 | 82371 | macros/latex/required/amsmath/testmath.tex
2020/02/02 | 2623593 | macros/latex/required/amsmath.zip
-2020/01/15 | 654676 | macros/latex/required/babel/base/babel.dtx
-2020/01/15 | 7392 | macros/latex/required/babel/base/babel.ins
-2020/01/15 | 748353 | macros/latex/required/babel/base/babel.pdf
-2020/01/15 | 21932 | macros/latex/required/babel/base/bbcompat.dtx
-2020/01/15 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
-2020/01/15 | 713940 | macros/latex/required/babel/base/locale.zip
-2020/01/15 | 5371 | macros/latex/required/babel/base/README.md
-2020/01/15 | 1636132 | macros/latex/required/babel/base.zip
+2020/02/03 | 660562 | macros/latex/required/babel/base/babel.dtx
+2020/02/03 | 7392 | macros/latex/required/babel/base/babel.ins
+2020/02/03 | 754441 | macros/latex/required/babel/base/babel.pdf
+2020/02/03 | 21932 | macros/latex/required/babel/base/bbcompat.dtx
+2020/02/03 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
+2020/02/03 | 728098 | macros/latex/required/babel/base/locale.zip
+2020/02/03 | 5545 | macros/latex/required/babel/base/README.md
+2020/02/03 | 1658152 | macros/latex/required/babel/base.zip
2018/04/06 | 5462 | macros/latex/required/cyrillic/changes.txt
2018/04/06 | 57716 | macros/latex/required/cyrillic/cyinpenc.dtx
2018/04/06 | 206017 | macros/latex/required/cyrillic/cyinpenc.pdf
@@ -207000,45 +207007,45 @@
2018/06/19 | 922 | macros/luatex/generic/kanaparser/kanaparser.tex
2018/06/19 | 2005 | macros/luatex/generic/kanaparser/README.md
2018/06/19 | 378065 | macros/luatex/generic/kanaparser.zip
-2018/09/20 | 18092 | macros/luatex/generic/lualibs/LICENSE
-2019/10/29 | 129952 | macros/luatex/generic/lualibs/lualibs-basic-merged.lua
-2018/12/12 | 1850 | macros/luatex/generic/lualibs/lualibs-boolean.lua
-2018/09/20 | 603 | macros/luatex/generic/lualibs/lualibs-compat.lua
-2019/05/19 | 18253 | macros/luatex/generic/lualibs/lualibs-dir.lua
-2019/11/06 | 27850 | macros/luatex/generic/lualibs/lualibs.dtx
-2019/10/29 | 107966 | macros/luatex/generic/lualibs/lualibs-extended-merged.lua
-2019/05/19 | 21984 | macros/luatex/generic/lualibs/lualibs-file.lua
-2018/12/12 | 361 | macros/luatex/generic/lualibs/lualibs-function.lua
-2019/10/29 | 2980 | macros/luatex/generic/lualibs/lualibs-gzip.lua
-2018/12/12 | 11823 | macros/luatex/generic/lualibs/lualibs-io.lua
-2019/10/29 | 38440 | macros/luatex/generic/lualibs/lualibs-lpeg.lua
-2019/10/29 | 6520 | macros/luatex/generic/lualibs/lualibs-lua.lua
-2018/12/12 | 2555 | macros/luatex/generic/lualibs/lualibs-math.lua
-2018/12/12 | 3309 | macros/luatex/generic/lualibs/lualibs-md5.lua
-2019/01/16 | 5720 | macros/luatex/generic/lualibs/lualibs-number.lua
-2019/06/24 | 18985 | macros/luatex/generic/lualibs/lualibs-os.lua
-2018/12/12 | 11605 | macros/luatex/generic/lualibs/lualibs-package.lua
-2019/11/06 | 81170 | macros/luatex/generic/lualibs/lualibs.pdf
-2018/12/12 | 1923 | macros/luatex/generic/lualibs/lualibs-set.lua
-2019/07/16 | 6644 | macros/luatex/generic/lualibs/lualibs-string.lua
-2019/10/29 | 42323 | macros/luatex/generic/lualibs/lualibs-table.lua
-2019/08/13 | 9904 | macros/luatex/generic/lualibs/lualibs-trac-inf.lua
-2019/10/29 | 41284 | macros/luatex/generic/lualibs/lualibs-unicode.lua
-2018/12/12 | 14755 | macros/luatex/generic/lualibs/lualibs-url.lua
-2019/06/24 | 10136 | macros/luatex/generic/lualibs/lualibs-util-deb.lua
-2019/06/24 | 13625 | macros/luatex/generic/lualibs/lualibs-util-dim.lua
-2018/09/27 | 9034 | macros/luatex/generic/lualibs/lualibs-util-fil.lua
-2019/08/13 | 16190 | macros/luatex/generic/lualibs/lualibs-util-jsn.lua
-2019/10/29 | 7149 | macros/luatex/generic/lualibs/lualibs-util-lua.lua
-2019/05/19 | 24132 | macros/luatex/generic/lualibs/lualibs-util-prs.lua
-2019/03/31 | 9199 | macros/luatex/generic/lualibs/lualibs-util-sta.lua
-2018/12/12 | 6661 | macros/luatex/generic/lualibs/lualibs-util-sto.lua
-2019/10/29 | 45058 | macros/luatex/generic/lualibs/lualibs-util-str.lua
-2019/10/29 | 29567 | macros/luatex/generic/lualibs/lualibs-util-tab.lua
-2019/10/29 | 7722 | macros/luatex/generic/lualibs/lualibs-util-tpl.lua
-2019/11/06 | 2697 | macros/luatex/generic/lualibs/NEWS
-2019/11/06 | 4740 | macros/luatex/generic/lualibs/README.md
-2019/11/06 | 264153 | macros/luatex/generic/lualibs.zip
+2020/01/09 | 18092 | macros/luatex/generic/lualibs/LICENSE
+2020/02/03 | 129751 | macros/luatex/generic/lualibs/lualibs-basic-merged.lua
+2020/01/09 | 1850 | macros/luatex/generic/lualibs/lualibs-boolean.lua
+2020/01/09 | 603 | macros/luatex/generic/lualibs/lualibs-compat.lua
+2020/01/09 | 18253 | macros/luatex/generic/lualibs/lualibs-dir.lua
+2020/02/03 | 27850 | macros/luatex/generic/lualibs/lualibs.dtx
+2020/02/03 | 107999 | macros/luatex/generic/lualibs/lualibs-extended-merged.lua
+2020/02/03 | 22175 | macros/luatex/generic/lualibs/lualibs-file.lua
+2020/01/09 | 361 | macros/luatex/generic/lualibs/lualibs-function.lua
+2020/02/03 | 5115 | macros/luatex/generic/lualibs/lualibs-gzip.lua
+2020/02/03 | 11829 | macros/luatex/generic/lualibs/lualibs-io.lua
+2020/01/09 | 38440 | macros/luatex/generic/lualibs/lualibs-lpeg.lua
+2020/02/03 | 6529 | macros/luatex/generic/lualibs/lualibs-lua.lua
+2020/01/09 | 2555 | macros/luatex/generic/lualibs/lualibs-math.lua
+2020/02/03 | 3414 | macros/luatex/generic/lualibs/lualibs-md5.lua
+2020/01/09 | 5720 | macros/luatex/generic/lualibs/lualibs-number.lua
+2020/02/03 | 18925 | macros/luatex/generic/lualibs/lualibs-os.lua
+2020/01/09 | 11605 | macros/luatex/generic/lualibs/lualibs-package.lua
+2020/02/03 | 80955 | macros/luatex/generic/lualibs/lualibs.pdf
+2020/01/09 | 1923 | macros/luatex/generic/lualibs/lualibs-set.lua
+2020/01/09 | 6644 | macros/luatex/generic/lualibs/lualibs-string.lua
+2020/02/03 | 42339 | macros/luatex/generic/lualibs/lualibs-table.lua
+2020/01/09 | 9904 | macros/luatex/generic/lualibs/lualibs-trac-inf.lua
+2020/01/09 | 41284 | macros/luatex/generic/lualibs/lualibs-unicode.lua
+2020/01/09 | 14755 | macros/luatex/generic/lualibs/lualibs-url.lua
+2020/01/09 | 10136 | macros/luatex/generic/lualibs/lualibs-util-deb.lua
+2020/01/09 | 13625 | macros/luatex/generic/lualibs/lualibs-util-dim.lua
+2020/01/09 | 9034 | macros/luatex/generic/lualibs/lualibs-util-fil.lua
+2020/01/09 | 16190 | macros/luatex/generic/lualibs/lualibs-util-jsn.lua
+2020/01/09 | 7149 | macros/luatex/generic/lualibs/lualibs-util-lua.lua
+2020/01/09 | 24132 | macros/luatex/generic/lualibs/lualibs-util-prs.lua
+2020/02/03 | 9412 | macros/luatex/generic/lualibs/lualibs-util-sta.lua
+2020/01/09 | 6661 | macros/luatex/generic/lualibs/lualibs-util-sto.lua
+2020/02/03 | 45072 | macros/luatex/generic/lualibs/lualibs-util-str.lua
+2020/01/09 | 29567 | macros/luatex/generic/lualibs/lualibs-util-tab.lua
+2020/01/09 | 7722 | macros/luatex/generic/lualibs/lualibs-util-tpl.lua
+2020/02/03 | 2794 | macros/luatex/generic/lualibs/NEWS
+2020/02/03 | 4740 | macros/luatex/generic/lualibs/README.md
+2020/02/03 | 264655 | macros/luatex/generic/lualibs.zip
2019/12/11 | 91681 | macros/luatex/generic/luamplib/luamplib.dtx
2019/12/11 | 148905 | macros/luatex/generic/luamplib/luamplib.pdf
2019/12/11 | 2752 | macros/luatex/generic/luamplib/Makefile
@@ -207047,113 +207054,114 @@
2019/12/11 | 3997 | macros/luatex/generic/luamplib/test-luamplib-latex.tex
2019/12/11 | 3872 | macros/luatex/generic/luamplib/test-luamplib-plain.tex
2019/12/11 | 181442 | macros/luatex/generic/luamplib.zip
-2018/10/03 | 18714 | macros/luatex/generic/luaotfload/COPYING
-2019/11/10 | 39841 | macros/luatex/generic/luaotfload/filegraph.pdf
-2019/09/13 | 8595 | macros/luatex/generic/luaotfload/filegraph.tex
-2019/11/08 | 841239 | macros/luatex/generic/luaotfload/fontloader-2019-10-29.lua
-2019/09/13 | 46091 | macros/luatex/generic/luaotfload/fontloader-basics-chr.lua
-2019/11/10 | 12695 | macros/luatex/generic/luaotfload/fontloader-basics-gen.lua
-2019/11/08 | 8288 | macros/luatex/generic/luaotfload/fontloader-basics-nod.lua
-2018/12/13 | 5029 | macros/luatex/generic/luaotfload/fontloader-data-con.lua
-2018/12/13 | 6866 | macros/luatex/generic/luaotfload/fontloader-font-afk.lua
-2019/09/13 | 81868 | macros/luatex/generic/luaotfload/fontloader-font-cff.lua
-2018/12/13 | 5502 | macros/luatex/generic/luaotfload/fontloader-font-cid.lua
-2019/11/08 | 63308 | macros/luatex/generic/luaotfload/fontloader-font-con.lua
-2019/02/10 | 20185 | macros/luatex/generic/luaotfload/fontloader-font-def.lua
-2019/11/08 | 152750 | macros/luatex/generic/luaotfload/fontloader-font-dsp.lua
-2019/01/14 | 12919 | macros/luatex/generic/luaotfload/fontloader-font-imp-effects.lua
-2018/12/13 | 4299 | macros/luatex/generic/luaotfload/fontloader-font-imp-italics.lua
-2018/12/13 | 3580 | macros/luatex/generic/luaotfload/fontloader-font-imp-ligatures.lua
-2018/12/13 | 3406 | macros/luatex/generic/luaotfload/fontloader-font-imp-tex.lua
-2018/12/13 | 1688 | macros/luatex/generic/luaotfload/fontloader-font-ini.lua
-2018/12/13 | 1449 | macros/luatex/generic/luaotfload/fontloader-font-lua.lua
-2019/05/19 | 24664 | macros/luatex/generic/luaotfload/fontloader-font-map.lua
-2019/11/08 | 27034 | macros/luatex/generic/luaotfload/fontloader-font-ocl.lua
-2019/05/19 | 31249 | macros/luatex/generic/luaotfload/fontloader-font-one.lua
-2019/09/13 | 18711 | macros/luatex/generic/luaotfload/fontloader-font-onr.lua
-2019/11/08 | 107959 | macros/luatex/generic/luaotfload/fontloader-font-osd.lua
-2019/05/19 | 14528 | macros/luatex/generic/luaotfload/fontloader-font-ota.lua
-2019/11/08 | 31802 | macros/luatex/generic/luaotfload/fontloader-font-otc.lua
-2018/12/13 | 7904 | macros/luatex/generic/luaotfload/fontloader-font-oti.lua
-2019/09/13 | 63608 | macros/luatex/generic/luaotfload/fontloader-font-otj.lua
-2019/11/08 | 32862 | macros/luatex/generic/luaotfload/fontloader-font-otl.lua
-2019/09/13 | 22982 | macros/luatex/generic/luaotfload/fontloader-font-oto.lua
-2019/09/13 | 94895 | macros/luatex/generic/luaotfload/fontloader-font-otr.lua
-2019/11/08 | 181078 | macros/luatex/generic/luaotfload/fontloader-font-ots.lua
-2019/07/14 | 36257 | macros/luatex/generic/luaotfload/fontloader-font-ott.lua
-2019/11/08 | 119621 | macros/luatex/generic/luaotfload/fontloader-font-oup.lua
-2018/12/13 | 3821 | macros/luatex/generic/luaotfload/fontloader-fonts-def.lua
-2018/12/13 | 2315 | macros/luatex/generic/luaotfload/fontloader-fonts-enc.lua
-2018/12/13 | 7260 | macros/luatex/generic/luaotfload/fontloader-fonts-ext.lua
-2018/12/13 | 9875 | macros/luatex/generic/luaotfload/fontloader-fonts-gbn.lua
-2018/12/13 | 57342 | macros/luatex/generic/luaotfload/fontloader-fonts-lig.lua
-2018/12/13 | 912 | macros/luatex/generic/luaotfload/fontloader-fonts-mis.lua
-2018/12/13 | 3674 | macros/luatex/generic/luaotfload/fontloader-fonts-syn.lua
-2019/05/19 | 23399 | macros/luatex/generic/luaotfload/fontloader-fonts-tfm.lua
-2019/09/13 | 59356 | macros/luatex/generic/luaotfload/fontloader-font-ttf.lua
-2019/01/16 | 2667 | macros/luatex/generic/luaotfload/fontloader-font-vfc.lua
-2018/12/13 | 1850 | macros/luatex/generic/luaotfload/fontloader-l-boolean.lua
-2019/05/19 | 21984 | macros/luatex/generic/luaotfload/fontloader-l-file.lua
-2018/12/13 | 361 | macros/luatex/generic/luaotfload/fontloader-l-function.lua
-2018/12/13 | 11823 | macros/luatex/generic/luaotfload/fontloader-l-io.lua
-2019/11/08 | 38440 | macros/luatex/generic/luaotfload/fontloader-l-lpeg.lua
-2019/11/08 | 6520 | macros/luatex/generic/luaotfload/fontloader-l-lua.lua
-2018/12/13 | 2555 | macros/luatex/generic/luaotfload/fontloader-l-math.lua
-2019/09/13 | 6644 | macros/luatex/generic/luaotfload/fontloader-l-string.lua
-2019/11/08 | 42323 | macros/luatex/generic/luaotfload/fontloader-l-table.lua
-2019/11/08 | 41281 | macros/luatex/generic/luaotfload/fontloader-l-unicode.lua
-2019/05/19 | 13208 | macros/luatex/generic/luaotfload/fontloader-reference-load-order.lua
-2018/12/13 | 5885 | macros/luatex/generic/luaotfload/fontloader-reference-load-order.tex
-2019/11/08 | 941977 | macros/luatex/generic/luaotfload/fontloader-reference.lua
-2019/05/19 | 11530 | macros/luatex/generic/luaotfload/fontloader-util-fil.lua
-2019/11/08 | 45058 | macros/luatex/generic/luaotfload/fontloader-util-str.lua
-2019/11/10 | 30734 | macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua
-2018/10/03 | 52 | macros/luatex/generic/luaotfload/luaotfload-blacklist.cnf
-2019/10/29 | 3198539 | macros/luatex/generic/luaotfload/luaotfload-characters.lua
-2019/11/10 | 14216 | macros/luatex/generic/luaotfload/luaotfload-colors.lua
-2019/11/10 | 16567 | macros/luatex/generic/luaotfload/luaotfload.conf.5
-2018/10/03 | 735 | macros/luatex/generic/luaotfload/luaotfload.conf.example
-2019/11/10 | 31207 | macros/luatex/generic/luaotfload/luaotfload-configuration.lua
-2019/11/10 | 77676 | macros/luatex/generic/luaotfload/luaotfload-conf.pdf
-2019/11/10 | 18090 | macros/luatex/generic/luaotfload/luaotfload.conf.rst
-2019/11/10 | 134866 | macros/luatex/generic/luaotfload/luaotfload-database.lua
-2019/11/10 | 21955 | macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua
-2019/11/10 | 1162 | macros/luatex/generic/luaotfload/luaotfload-embolden.lua
-2019/11/10 | 19403 | macros/luatex/generic/luaotfload/luaotfload-features.lua
-2019/11/10 | 24714 | macros/luatex/generic/luaotfload/luaotfload-filelist.lua
-2019/11/10 | 102477 | macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua
-2019/11/10 | 12849 | macros/luatex/generic/luaotfload/luaotfload-harf-define.lua
-2019/11/10 | 33688 | macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua
-2019/11/10 | 19047 | macros/luatex/generic/luaotfload/luaotfload-init.lua
-2019/11/10 | 394746 | macros/luatex/generic/luaotfload/luaotfload-latex.pdf
-2019/09/13 | 15664 | macros/luatex/generic/luaotfload/luaotfload-latex.tex
-2019/11/10 | 18449 | macros/luatex/generic/luaotfload/luaotfload-letterspace.lua
-2019/11/10 | 8396 | macros/luatex/generic/luaotfload/luaotfload-loaders.lua
-2019/11/10 | 11387 | macros/luatex/generic/luaotfload/luaotfload-log.lua
-2019/11/10 | 12000 | macros/luatex/generic/luaotfload/luaotfload-main.lua
-2019/11/10 | 80554 | macros/luatex/generic/luaotfload/luaotfload-main.tex
-2019/11/10 | 8241 | macros/luatex/generic/luaotfload/luaotfload-multiscript.lua
-2019/11/10 | 6839 | macros/luatex/generic/luaotfload/luaotfload-notdef.lua
-2019/11/10 | 31136 | macros/luatex/generic/luaotfload/luaotfload-parsers.lua
-2019/11/10 | 11022 | macros/luatex/generic/luaotfload/luaotfload-resolvers.lua
-2019/11/10 | 2541 | macros/luatex/generic/luaotfload/luaotfload-scripts.lua
-2019/11/10 | 5990 | macros/luatex/generic/luaotfload/luaotfload-status.lua
-2019/11/10 | 1828 | macros/luatex/generic/luaotfload/luaotfload.sty
-2019/11/10 | 12644 | macros/luatex/generic/luaotfload/luaotfload-tool.1
-2019/11/10 | 52665 | macros/luatex/generic/luaotfload/luaotfload-tool.lua
-2019/11/10 | 76928 | macros/luatex/generic/luaotfload/luaotfload-tool.pdf
-2019/11/10 | 15853 | macros/luatex/generic/luaotfload/luaotfload-tool.rst
-2019/11/10 | 7563 | macros/luatex/generic/luaotfload/luaotfload-tounicode.lua
-2019/11/10 | 3061 | macros/luatex/generic/luaotfload/luaotfload-unicode.lua
-2019/11/10 | 15809 | macros/luatex/generic/luaotfload/NEWS
-2019/11/10 | 3863 | macros/luatex/generic/luaotfload/README.md
-2019/11/10 | 21422 | macros/luatex/generic/luaotfload/scripts-demo.pdf
-2019/11/10 | 699 | macros/luatex/generic/luaotfload/scripts-demo.tex
-2019/11/10 | 8487 | macros/luatex/generic/luaotfload/shaper-demo-graphite.pdf
-2019/11/08 | 191 | macros/luatex/generic/luaotfload/shaper-demo-graphite.tex
-2019/11/10 | 8411 | macros/luatex/generic/luaotfload/shaper-demo.pdf
-2019/11/08 | 182 | macros/luatex/generic/luaotfload/shaper-demo.tex
-2019/11/11 | 1786037 | macros/luatex/generic/luaotfload.zip
+2019/12/25 | 18714 | macros/luatex/generic/luaotfload/COPYING
+2020/02/03 | 39847 | macros/luatex/generic/luaotfload/filegraph.pdf
+2019/12/25 | 8595 | macros/luatex/generic/luaotfload/filegraph.tex
+2020/02/03 | 845520 | macros/luatex/generic/luaotfload/fontloader-2020-01-26.lua
+2019/12/25 | 46091 | macros/luatex/generic/luaotfload/fontloader-basics-chr.lua
+2019/12/31 | 12699 | macros/luatex/generic/luaotfload/fontloader-basics-gen.lua
+2020/02/03 | 8485 | macros/luatex/generic/luaotfload/fontloader-basics-nod.lua
+2020/02/03 | 5388 | macros/luatex/generic/luaotfload/fontloader-data-con.lua
+2019/12/25 | 6866 | macros/luatex/generic/luaotfload/fontloader-font-afk.lua
+2020/02/03 | 88500 | macros/luatex/generic/luaotfload/fontloader-font-cff.lua
+2019/12/25 | 5502 | macros/luatex/generic/luaotfload/fontloader-font-cid.lua
+2020/02/03 | 63106 | macros/luatex/generic/luaotfload/fontloader-font-con.lua
+2020/02/03 | 20013 | macros/luatex/generic/luaotfload/fontloader-font-def.lua
+2019/12/25 | 152750 | macros/luatex/generic/luaotfload/fontloader-font-dsp.lua
+2019/12/25 | 12919 | macros/luatex/generic/luaotfload/fontloader-font-imp-effects.lua
+2019/12/25 | 4299 | macros/luatex/generic/luaotfload/fontloader-font-imp-italics.lua
+2019/12/25 | 3580 | macros/luatex/generic/luaotfload/fontloader-font-imp-ligatures.lua
+2019/12/25 | 3406 | macros/luatex/generic/luaotfload/fontloader-font-imp-tex.lua
+2020/02/03 | 1794 | macros/luatex/generic/luaotfload/fontloader-font-ini.lua
+2019/12/25 | 1449 | macros/luatex/generic/luaotfload/fontloader-font-lua.lua
+2019/12/25 | 24664 | macros/luatex/generic/luaotfload/fontloader-font-map.lua
+2020/02/03 | 27110 | macros/luatex/generic/luaotfload/fontloader-font-ocl.lua
+2019/12/25 | 31249 | macros/luatex/generic/luaotfload/fontloader-font-one.lua
+2020/02/03 | 18695 | macros/luatex/generic/luaotfload/fontloader-font-onr.lua
+2019/12/25 | 107959 | macros/luatex/generic/luaotfload/fontloader-font-osd.lua
+2019/12/25 | 14528 | macros/luatex/generic/luaotfload/fontloader-font-ota.lua
+2019/12/25 | 31802 | macros/luatex/generic/luaotfload/fontloader-font-otc.lua
+2019/12/25 | 7904 | macros/luatex/generic/luaotfload/fontloader-font-oti.lua
+2019/12/25 | 63608 | macros/luatex/generic/luaotfload/fontloader-font-otj.lua
+2019/12/25 | 32862 | macros/luatex/generic/luaotfload/fontloader-font-otl.lua
+2020/02/03 | 22966 | macros/luatex/generic/luaotfload/fontloader-font-oto.lua
+2020/02/03 | 94911 | macros/luatex/generic/luaotfload/fontloader-font-otr.lua
+2020/02/03 | 181402 | macros/luatex/generic/luaotfload/fontloader-font-ots.lua
+2019/12/25 | 36257 | macros/luatex/generic/luaotfload/fontloader-font-ott.lua
+2019/12/25 | 119621 | macros/luatex/generic/luaotfload/fontloader-font-oup.lua
+2019/12/25 | 3821 | macros/luatex/generic/luaotfload/fontloader-fonts-def.lua
+2019/12/25 | 2315 | macros/luatex/generic/luaotfload/fontloader-fonts-enc.lua
+2019/12/25 | 7260 | macros/luatex/generic/luaotfload/fontloader-fonts-ext.lua
+2019/12/25 | 9875 | macros/luatex/generic/luaotfload/fontloader-fonts-gbn.lua
+2019/12/25 | 57342 | macros/luatex/generic/luaotfload/fontloader-fonts-lig.lua
+2019/12/25 | 912 | macros/luatex/generic/luaotfload/fontloader-fonts-mis.lua
+2019/12/25 | 3674 | macros/luatex/generic/luaotfload/fontloader-fonts-syn.lua
+2019/12/25 | 23399 | macros/luatex/generic/luaotfload/fontloader-fonts-tfm.lua
+2019/12/25 | 59356 | macros/luatex/generic/luaotfload/fontloader-font-ttf.lua
+2019/12/25 | 2667 | macros/luatex/generic/luaotfload/fontloader-font-vfc.lua
+2019/12/25 | 1850 | macros/luatex/generic/luaotfload/fontloader-l-boolean.lua
+2020/02/03 | 22175 | macros/luatex/generic/luaotfload/fontloader-l-file.lua
+2019/12/25 | 361 | macros/luatex/generic/luaotfload/fontloader-l-function.lua
+2020/02/03 | 11829 | macros/luatex/generic/luaotfload/fontloader-l-io.lua
+2019/12/25 | 38440 | macros/luatex/generic/luaotfload/fontloader-l-lpeg.lua
+2020/02/03 | 6529 | macros/luatex/generic/luaotfload/fontloader-l-lua.lua
+2019/12/25 | 2555 | macros/luatex/generic/luaotfload/fontloader-l-math.lua
+2019/12/25 | 6644 | macros/luatex/generic/luaotfload/fontloader-l-string.lua
+2020/02/03 | 42339 | macros/luatex/generic/luaotfload/fontloader-l-table.lua
+2019/12/25 | 41281 | macros/luatex/generic/luaotfload/fontloader-l-unicode.lua
+2019/12/25 | 13208 | macros/luatex/generic/luaotfload/fontloader-reference-load-order.lua
+2019/12/25 | 5885 | macros/luatex/generic/luaotfload/fontloader-reference-load-order.tex
+2020/02/03 | 946393 | macros/luatex/generic/luaotfload/fontloader-reference.lua
+2019/12/25 | 11530 | macros/luatex/generic/luaotfload/fontloader-util-fil.lua
+2020/02/03 | 45072 | macros/luatex/generic/luaotfload/fontloader-util-str.lua
+2020/02/03 | 31134 | macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua
+2019/12/25 | 52 | macros/luatex/generic/luaotfload/luaotfload-blacklist.cnf
+2019/12/25 | 3198539 | macros/luatex/generic/luaotfload/luaotfload-characters.lua
+2020/02/03 | 16553 | macros/luatex/generic/luaotfload/luaotfload-colors.lua
+2020/02/03 | 16548 | macros/luatex/generic/luaotfload/luaotfload.conf.5
+2019/12/25 | 735 | macros/luatex/generic/luaotfload/luaotfload.conf.example
+2020/02/03 | 31207 | macros/luatex/generic/luaotfload/luaotfload-configuration.lua
+2020/02/03 | 77323 | macros/luatex/generic/luaotfload/luaotfload-conf.pdf
+2020/02/03 | 18074 | macros/luatex/generic/luaotfload/luaotfload.conf.rst
+2020/02/03 | 134866 | macros/luatex/generic/luaotfload/luaotfload-database.lua
+2020/02/03 | 21955 | macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua
+2020/02/03 | 1162 | macros/luatex/generic/luaotfload/luaotfload-embolden.lua
+2020/02/03 | 3866 | macros/luatex/generic/luaotfload/luaotfload-fallback.lua
+2020/02/03 | 19511 | macros/luatex/generic/luaotfload/luaotfload-features.lua
+2020/02/03 | 24846 | macros/luatex/generic/luaotfload/luaotfload-filelist.lua
+2020/02/03 | 102477 | macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua
+2020/02/03 | 13693 | macros/luatex/generic/luaotfload/luaotfload-harf-define.lua
+2020/02/03 | 34179 | macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua
+2020/02/03 | 19627 | macros/luatex/generic/luaotfload/luaotfload-init.lua
+2020/02/03 | 443581 | macros/luatex/generic/luaotfload/luaotfload-latex.pdf
+2020/01/30 | 16603 | macros/luatex/generic/luaotfload/luaotfload-latex.tex
+2020/02/03 | 18884 | macros/luatex/generic/luaotfload/luaotfload-letterspace.lua
+2020/02/03 | 8927 | macros/luatex/generic/luaotfload/luaotfload-loaders.lua
+2020/02/03 | 11387 | macros/luatex/generic/luaotfload/luaotfload-log.lua
+2020/02/03 | 12304 | macros/luatex/generic/luaotfload/luaotfload-main.lua
+2020/02/03 | 89811 | macros/luatex/generic/luaotfload/luaotfload-main.tex
+2020/02/03 | 13573 | macros/luatex/generic/luaotfload/luaotfload-multiscript.lua
+2020/02/03 | 6839 | macros/luatex/generic/luaotfload/luaotfload-notdef.lua
+2020/02/03 | 31136 | macros/luatex/generic/luaotfload/luaotfload-parsers.lua
+2020/02/03 | 11022 | macros/luatex/generic/luaotfload/luaotfload-resolvers.lua
+2020/02/03 | 2541 | macros/luatex/generic/luaotfload/luaotfload-scripts.lua
+2020/02/03 | 5990 | macros/luatex/generic/luaotfload/luaotfload-status.lua
+2020/02/03 | 1828 | macros/luatex/generic/luaotfload/luaotfload.sty
+2020/02/03 | 12627 | macros/luatex/generic/luaotfload/luaotfload-tool.1
+2020/02/03 | 52660 | macros/luatex/generic/luaotfload/luaotfload-tool.lua
+2020/02/03 | 76686 | macros/luatex/generic/luaotfload/luaotfload-tool.pdf
+2020/02/03 | 15837 | macros/luatex/generic/luaotfload/luaotfload-tool.rst
+2020/02/03 | 7563 | macros/luatex/generic/luaotfload/luaotfload-tounicode.lua
+2020/02/03 | 3061 | macros/luatex/generic/luaotfload/luaotfload-unicode.lua
+2020/02/03 | 16013 | macros/luatex/generic/luaotfload/NEWS
+2020/02/03 | 3863 | macros/luatex/generic/luaotfload/README.md
+2020/02/03 | 21523 | macros/luatex/generic/luaotfload/scripts-demo.pdf
+2019/12/25 | 699 | macros/luatex/generic/luaotfload/scripts-demo.tex
+2020/02/03 | 8487 | macros/luatex/generic/luaotfload/shaper-demo-graphite.pdf
+2019/12/25 | 191 | macros/luatex/generic/luaotfload/shaper-demo-graphite.tex
+2020/02/03 | 8411 | macros/luatex/generic/luaotfload/shaper-demo.pdf
+2019/12/25 | 182 | macros/luatex/generic/luaotfload/shaper-demo.tex
+2020/02/03 | 1843433 | macros/luatex/generic/luaotfload.zip
2019/12/22 | 2475 | macros/luatex/generic/luapackageloader/luapackageloader.lua
2019/12/22 | 33904 | macros/luatex/generic/luapackageloader/luapackageloader.pdf
2019/12/22 | 1014 | macros/luatex/generic/luapackageloader/luapackageloader.sty
@@ -251018,11 +251026,11 @@
2019/02/28 | 272 | systems/texlive/tlnet/archive/amsldoc-it.tar.xz
2019/02/28 | 1169692 | systems/texlive/tlnet/archive/amsldoc-vn.doc.tar.xz
2019/02/28 | 428 | systems/texlive/tlnet/archive/amsldoc-vn.tar.xz
-2019/11/19 | 2345548 | systems/texlive/tlnet/archive/amsmath.doc.tar.xz
+2020/02/03 | 2364048 | systems/texlive/tlnet/archive/amsmath.doc.r53640.tar.xz
2019/02/28 | 13716 | systems/texlive/tlnet/archive/amsmath-it.doc.tar.xz
2019/02/28 | 428 | systems/texlive/tlnet/archive/amsmath-it.tar.xz
-2019/11/19 | 64088 | systems/texlive/tlnet/archive/amsmath.source.tar.xz
-2019/11/19 | 30296 | systems/texlive/tlnet/archive/amsmath.tar.xz
+2020/02/03 | 30312 | systems/texlive/tlnet/archive/amsmath.r53640.tar.xz
+2020/02/03 | 64156 | systems/texlive/tlnet/archive/amsmath.source.r53640.tar.xz
2019/02/28 | 1938800 | systems/texlive/tlnet/archive/amsrefs.doc.tar.xz
2019/02/28 | 102004 | systems/texlive/tlnet/archive/amsrefs.source.tar.xz
2019/02/28 | 27428 | systems/texlive/tlnet/archive/amsrefs.tar.xz
@@ -255460,11 +255468,11 @@
2019/02/28 | 1160 | systems/texlive/tlnet/archive/graphics-cfg.tar.xz
2019/02/28 | 608 | systems/texlive/tlnet/archive/graphics-def.doc.tar.xz
2019/02/28 | 9660 | systems/texlive/tlnet/archive/graphics-def.tar.xz
-2019/11/07 | 2001436 | systems/texlive/tlnet/archive/graphics.doc.tar.xz
+2020/02/03 | 1988012 | systems/texlive/tlnet/archive/graphics.doc.r53640.tar.xz
2019/02/28 | 2088 | systems/texlive/tlnet/archive/graphics-pln.doc.tar.xz
2019/02/28 | 8476 | systems/texlive/tlnet/archive/graphics-pln.tar.xz
-2019/11/07 | 51852 | systems/texlive/tlnet/archive/graphics.source.tar.xz
-2019/11/07 | 15040 | systems/texlive/tlnet/archive/graphics.tar.xz
+2020/02/03 | 15064 | systems/texlive/tlnet/archive/graphics.r53640.tar.xz
+2020/02/03 | 51832 | systems/texlive/tlnet/archive/graphics.source.r53640.tar.xz
2019/02/28 | 438064 | systems/texlive/tlnet/archive/graphicxbox.doc.tar.xz
2019/02/28 | 3692 | systems/texlive/tlnet/archive/graphicxbox.source.tar.xz
2019/02/28 | 1400 | systems/texlive/tlnet/archive/graphicxbox.tar.xz
@@ -256064,14 +256072,14 @@
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.amd64-freebsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.amd64-netbsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.armhf-linux.tar.xz
-2019/12/23 | 31788 | systems/texlive/tlnet/archive/jadetex.doc.r53212.tar.xz
+2020/02/03 | 31788 | systems/texlive/tlnet/archive/jadetex.doc.r53645.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.i386-cygwin.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.i386-freebsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.i386-linux.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.i386-netbsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/jadetex.i386-solaris.tar.xz
-2019/12/23 | 29812 | systems/texlive/tlnet/archive/jadetex.r53212.tar.xz
-2019/12/23 | 19312 | systems/texlive/tlnet/archive/jadetex.source.r53212.tar.xz
+2020/02/03 | 29800 | systems/texlive/tlnet/archive/jadetex.r53645.tar.xz
+2020/02/03 | 19312 | systems/texlive/tlnet/archive/jadetex.source.r53645.tar.xz
2019/02/28 | 884 | systems/texlive/tlnet/archive/jadetex.win32.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/jadetex.x86_64-cygwin.tar.xz
2019/02/28 | 348 | systems/texlive/tlnet/archive/jadetex.x86_64-darwinlegacy.tar.xz
@@ -256127,9 +256135,9 @@
2019/11/09 | 7192 | systems/texlive/tlnet/archive/jnuexam.tar.xz
2019/02/28 | 150368 | systems/texlive/tlnet/archive/jpsj.doc.tar.xz
2019/02/28 | 7272 | systems/texlive/tlnet/archive/jpsj.tar.xz
-2019/07/26 | 925364 | systems/texlive/tlnet/archive/jsclasses.doc.tar.xz
-2019/07/26 | 55380 | systems/texlive/tlnet/archive/jsclasses.source.tar.xz
-2019/07/26 | 21740 | systems/texlive/tlnet/archive/jsclasses.tar.xz
+2020/02/03 | 927684 | systems/texlive/tlnet/archive/jsclasses.doc.r53641.tar.xz
+2020/02/03 | 21952 | systems/texlive/tlnet/archive/jsclasses.r53641.tar.xz
+2020/02/03 | 55748 | systems/texlive/tlnet/archive/jsclasses.source.r53641.tar.xz
2019/02/28 | 1179020 | systems/texlive/tlnet/archive/jslectureplanner.doc.tar.xz
2019/02/28 | 11960 | systems/texlive/tlnet/archive/jslectureplanner.tar.xz
2019/02/28 | 18444 | systems/texlive/tlnet/archive/js-misc.doc.tar.xz
@@ -256553,7 +256561,7 @@
2019/02/28 | 384 | systems/texlive/tlnet/archive/latexdiff.x86_64-solaris.tar.xz
2019/02/28 | 130636 | systems/texlive/tlnet/archive/latex-doc-ptr.doc.tar.xz
2019/02/28 | 500 | systems/texlive/tlnet/archive/latex-doc-ptr.tar.xz
-2019/11/12 | 17643368 | systems/texlive/tlnet/archive/latex.doc.tar.xz
+2020/02/03 | 18418908 | systems/texlive/tlnet/archive/latex.doc.r53640.tar.xz
2019/02/28 | 8008 | systems/texlive/tlnet/archive/latexfileinfo-pkgs.doc.tar.xz
2019/02/28 | 8120 | systems/texlive/tlnet/archive/latexfileinfo-pkgs.source.tar.xz
2019/02/28 | 856 | systems/texlive/tlnet/archive/latexfileinfo-pkgs.tar.xz
@@ -256684,14 +256692,14 @@
2019/02/28 | 348 | systems/texlive/tlnet/archive/latex-papersize.x86_64-linuxmusl.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/latex-papersize.x86_64-linux.tar.xz
2019/02/28 | 348 | systems/texlive/tlnet/archive/latex-papersize.x86_64-solaris.tar.xz
+2020/02/03 | 168372 | systems/texlive/tlnet/archive/latex.r53640.tar.xz
2019/02/28 | 98676 | systems/texlive/tlnet/archive/latex-referenz.doc.tar.xz
2019/02/28 | 520 | systems/texlive/tlnet/archive/latex-referenz.tar.xz
2019/02/28 | 5020492 | systems/texlive/tlnet/archive/latex-refsheet.doc.tar.xz
2019/02/28 | 480 | systems/texlive/tlnet/archive/latex-refsheet.tar.xz
-2019/11/12 | 498968 | systems/texlive/tlnet/archive/latex.source.tar.xz
+2020/02/03 | 522904 | systems/texlive/tlnet/archive/latex.source.r53640.tar.xz
2019/02/28 | 45788 | systems/texlive/tlnet/archive/latex-tabellen.doc.tar.xz
2019/02/28 | 384 | systems/texlive/tlnet/archive/latex-tabellen.tar.xz
-2019/11/12 | 160488 | systems/texlive/tlnet/archive/latex.tar.xz
2019/02/28 | 84088 | systems/texlive/tlnet/archive/latex-tds.doc.tar.xz
2019/02/28 | 128300 | systems/texlive/tlnet/archive/latex-tds.source.tar.xz
2019/02/28 | 588 | systems/texlive/tlnet/archive/latex-tds.tar.xz
@@ -256758,8 +256766,8 @@
2019/02/28 | 5480 | systems/texlive/tlnet/archive/leaflet.tar.xz
2019/02/28 | 1126000 | systems/texlive/tlnet/archive/lecturer.doc.tar.xz
2019/02/28 | 18668 | systems/texlive/tlnet/archive/lecturer.tar.xz
-2019/02/28 | 2080 | systems/texlive/tlnet/archive/lectures.doc.tar.xz
-2019/02/28 | 6228 | systems/texlive/tlnet/archive/lectures.tar.xz
+2020/02/03 | 2080 | systems/texlive/tlnet/archive/lectures.doc.r53642.tar.xz
+2020/02/03 | 6740 | systems/texlive/tlnet/archive/lectures.r53642.tar.xz
2019/02/28 | 2362392 | systems/texlive/tlnet/archive/ledmac.doc.tar.xz
2019/02/28 | 142344 | systems/texlive/tlnet/archive/ledmac.source.tar.xz
2019/02/28 | 25456 | systems/texlive/tlnet/archive/ledmac.tar.xz
@@ -259182,14 +259190,14 @@
2019/11/16 | 344 | systems/texlive/tlnet/archive/platex.armhf-linux.tar.xz
2019/02/28 | 531356 | systems/texlive/tlnet/archive/platexcheat.doc.tar.xz
2019/02/28 | 568 | systems/texlive/tlnet/archive/platexcheat.tar.xz
-2019/12/24 | 1586492 | systems/texlive/tlnet/archive/platex.doc.r53216.tar.xz
+2020/02/03 | 1607220 | systems/texlive/tlnet/archive/platex.doc.r53638.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/platex.i386-cygwin.tar.xz
2019/11/16 | 340 | systems/texlive/tlnet/archive/platex.i386-freebsd.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/platex.i386-linux.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/platex.i386-netbsd.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/platex.i386-solaris.tar.xz
-2019/12/24 | 36100 | systems/texlive/tlnet/archive/platex.r53216.tar.xz
-2019/12/24 | 120772 | systems/texlive/tlnet/archive/platex.source.r53216.tar.xz
+2020/02/03 | 37648 | systems/texlive/tlnet/archive/platex.r53638.tar.xz
+2020/02/03 | 122988 | systems/texlive/tlnet/archive/platex.source.r53638.tar.xz
2019/09/08 | 542784 | systems/texlive/tlnet/archive/platex-tools.doc.tar.xz
2019/09/08 | 7268 | systems/texlive/tlnet/archive/platex-tools.tar.xz
2019/07/27 | 896 | systems/texlive/tlnet/archive/platex.win32.tar.xz
@@ -261176,14 +261184,14 @@
2019/02/28 | 344 | systems/texlive/tlnet/archive/texdoc.amd64-freebsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/texdoc.amd64-netbsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/texdoc.armhf-linux.tar.xz
-2019/03/29 | 124736 | systems/texlive/tlnet/archive/texdoc.doc.tar.xz
+2020/02/03 | 132400 | systems/texlive/tlnet/archive/texdoc.doc.r53643.tar.xz
2019/02/28 | 336 | systems/texlive/tlnet/archive/texdoc.i386-cygwin.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/texdoc.i386-freebsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/texdoc.i386-linux.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/texdoc.i386-netbsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/texdoc.i386-solaris.tar.xz
+2020/02/03 | 26672 | systems/texlive/tlnet/archive/texdoc.r53643.tar.xz
2019/11/19 | 63868 | systems/texlive/tlnet/archive/tex.doc.tar.xz
-2019/03/29 | 25736 | systems/texlive/tlnet/archive/texdoc.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/texdoctk.aarch64-linux.tar.xz
2019/02/28 | 344 | systems/texlive/tlnet/archive/texdoctk.amd64-freebsd.tar.xz
2019/02/28 | 340 | systems/texlive/tlnet/archive/texdoctk.amd64-netbsd.tar.xz
@@ -261258,8 +261266,8 @@
2019/04/06 | 280 | systems/texlive/tlnet/archive/texlive-cz.tar.xz
2019/03/28 | 1299960 | systems/texlive/tlnet/archive/texlive-de.doc.tar.xz
2019/03/28 | 272 | systems/texlive/tlnet/archive/texlive-de.tar.xz
-2020/02/01 | 158476 | systems/texlive/tlnet/archive/texlive-docindex.doc.r53611.tar.xz
-2020/02/01 | 392 | systems/texlive/tlnet/archive/texlive-docindex.r53611.tar.xz
+2020/02/03 | 158504 | systems/texlive/tlnet/archive/texlive-docindex.doc.r53636.tar.xz
+2020/02/03 | 388 | systems/texlive/tlnet/archive/texlive-docindex.r53636.tar.xz
2020/01/19 | 1858612 | systems/texlive/tlnet/archive/texlive-en.doc.r53451.tar.xz
2020/01/19 | 276 | systems/texlive/tlnet/archive/texlive-en.r53451.tar.xz
2019/04/01 | 2279380 | systems/texlive/tlnet/archive/texlive-es.doc.tar.xz
@@ -261406,14 +261414,14 @@
2020/01/18 | 340 | systems/texlive/tlnet/archive/texplate.amd64-freebsd.r53444.tar.xz
2020/01/18 | 340 | systems/texlive/tlnet/archive/texplate.amd64-netbsd.r53444.tar.xz
2020/01/18 | 336 | systems/texlive/tlnet/archive/texplate.armhf-linux.r53444.tar.xz
-2020/01/19 | 113204 | systems/texlive/tlnet/archive/texplate.doc.r53449.tar.xz
+2020/02/03 | 114704 | systems/texlive/tlnet/archive/texplate.doc.r53637.tar.xz
2020/01/18 | 336 | systems/texlive/tlnet/archive/texplate.i386-cygwin.r53444.tar.xz
2020/01/18 | 340 | systems/texlive/tlnet/archive/texplate.i386-freebsd.r53444.tar.xz
2020/01/18 | 340 | systems/texlive/tlnet/archive/texplate.i386-linux.r53444.tar.xz
2020/01/18 | 336 | systems/texlive/tlnet/archive/texplate.i386-netbsd.r53444.tar.xz
2020/01/18 | 340 | systems/texlive/tlnet/archive/texplate.i386-solaris.r53444.tar.xz
-2020/01/19 | 2587768 | systems/texlive/tlnet/archive/texplate.r53449.tar.xz
-2020/01/19 | 9312 | systems/texlive/tlnet/archive/texplate.source.r53449.tar.xz
+2020/02/03 | 2905600 | systems/texlive/tlnet/archive/texplate.r53637.tar.xz
+2020/02/03 | 8144 | systems/texlive/tlnet/archive/texplate.source.r53637.tar.xz
2020/01/18 | 680 | systems/texlive/tlnet/archive/texplate.win32.r53444.tar.xz
2020/01/18 | 340 | systems/texlive/tlnet/archive/texplate.x86_64-cygwin.r53444.tar.xz
2020/01/18 | 348 | systems/texlive/tlnet/archive/texplate.x86_64-darwinlegacy.r53444.tar.xz
@@ -261820,9 +261828,9 @@
2019/02/28 | 142452 | systems/texlive/tlnet/archive/toolbox.doc.tar.xz
2019/02/28 | 24148 | systems/texlive/tlnet/archive/toolbox.source.tar.xz
2019/02/28 | 3052 | systems/texlive/tlnet/archive/toolbox.tar.xz
-2019/11/12 | 5219440 | systems/texlive/tlnet/archive/tools.doc.tar.xz
-2019/11/12 | 223828 | systems/texlive/tlnet/archive/tools.source.tar.xz
-2019/11/12 | 41104 | systems/texlive/tlnet/archive/tools.tar.xz
+2020/02/03 | 5217348 | systems/texlive/tlnet/archive/tools.doc.r53640.tar.xz
+2020/02/03 | 41220 | systems/texlive/tlnet/archive/tools.r53640.tar.xz
+2020/02/03 | 224212 | systems/texlive/tlnet/archive/tools.source.r53640.tar.xz
2019/02/28 | 40340 | systems/texlive/tlnet/archive/topfloat.doc.tar.xz
2019/02/28 | 1392 | systems/texlive/tlnet/archive/topfloat.tar.xz
2019/07/11 | 379888 | systems/texlive/tlnet/archive/topiclongtable.doc.tar.xz
@@ -262193,14 +262201,14 @@
2019/11/16 | 344 | systems/texlive/tlnet/archive/uplatex.amd64-freebsd.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/uplatex.amd64-netbsd.tar.xz
2019/11/16 | 348 | systems/texlive/tlnet/archive/uplatex.armhf-linux.tar.xz
-2019/12/24 | 880644 | systems/texlive/tlnet/archive/uplatex.doc.r53216.tar.xz
+2020/02/03 | 877940 | systems/texlive/tlnet/archive/uplatex.doc.r53639.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/uplatex.i386-cygwin.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/uplatex.i386-freebsd.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/uplatex.i386-linux.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/uplatex.i386-netbsd.tar.xz
2019/11/16 | 344 | systems/texlive/tlnet/archive/uplatex.i386-solaris.tar.xz
-2019/12/24 | 14748 | systems/texlive/tlnet/archive/uplatex.r53216.tar.xz
-2019/12/24 | 50568 | systems/texlive/tlnet/archive/uplatex.source.r53216.tar.xz
+2020/02/03 | 14660 | systems/texlive/tlnet/archive/uplatex.r53639.tar.xz
+2020/02/03 | 50200 | systems/texlive/tlnet/archive/uplatex.source.r53639.tar.xz
2019/07/27 | 896 | systems/texlive/tlnet/archive/uplatex.win32.tar.xz
2019/11/16 | 348 | systems/texlive/tlnet/archive/uplatex.x86_64-cygwin.tar.xz
2019/11/16 | 352 | systems/texlive/tlnet/archive/uplatex.x86_64-darwinlegacy.tar.xz
@@ -262946,16 +262954,16 @@
2020/01/24 | 138180 | systems/texlive/tlnet/archive/zxjatype.doc.r53500.tar.xz
2020/01/24 | 8760 | systems/texlive/tlnet/archive/zxjatype.r53500.tar.xz
2020/01/17 | 107147 | systems/texlive/tlnet/install-tl
-2020/02/02 | 3949241 | systems/texlive/tlnet/install-tl-unx.tar.gz
-2020/02/02 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2020/02/02 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2020/02/03 | 3949209 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2020/02/03 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2020/02/03 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
2019/05/09 | 4543 | systems/texlive/tlnet/install-tl-windows.bat
-2020/02/02 | 18698949 | systems/texlive/tlnet/install-tl-windows.exe
-2020/02/02 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2020/02/02 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2020/02/02 | 22541603 | systems/texlive/tlnet/install-tl.zip
-2020/02/02 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2020/02/02 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2020/02/03 | 18698843 | systems/texlive/tlnet/install-tl-windows.exe
+2020/02/03 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2020/02/03 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2020/02/03 | 22541603 | systems/texlive/tlnet/install-tl.zip
+2020/02/03 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2020/02/03 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
2019/04/29 | 1221 | systems/texlive/tlnet/README.md
2019/03/13 | 5351 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg
2016/04/12 | 600 | systems/texlive/tlnet/tlpkg/gpg/random_seed
@@ -263010,12 +263018,12 @@
2019/09/23 | 18176 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm
2016/10/11 | 4618 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm
2017/11/14 | 27560 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm
-2020/02/02 | 16094457 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
-2020/02/02 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2020/02/03 | 16094627 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2020/02/03 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
2019/12/10 | 87503 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm
-2020/02/02 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
-2020/02/02 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2020/02/02 | 2163408 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2020/02/03 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2020/02/03 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2020/02/03 | 2163932 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2019/12/22 | 58727 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm
2020/01/17 | 40906 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm
2018/08/31 | 14972 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm
@@ -265296,7 +265304,7 @@
2017/12/20 | 1261301 | systems/win32/miktex/tm/packages/amscls.tar.lzma
2013/02/01 | 4896571 | systems/win32/miktex/tm/packages/amsfonts.tar.lzma
2013/02/01 | 568955 | systems/win32/miktex/tm/packages/amslatex-primer.tar.lzma
-2019/11/18 | 2444168 | systems/win32/miktex/tm/packages/amsmath.tar.lzma
+2020/02/03 | 2463195 | systems/win32/miktex/tm/packages/amsmath.tar.lzma
2013/03/11 | 2065077 | systems/win32/miktex/tm/packages/amsrefs.tar.lzma
2011/06/23 | 385532 | systems/win32/miktex/tm/packages/amstex.tar.lzma
2008/12/23 | 68780 | systems/win32/miktex/tm/packages/analogclock.tar.lzma
@@ -266420,7 +266428,7 @@
2019/10/04 | 281928 | systems/win32/miktex/tm/packages/filehook.tar.lzma
2012/12/04 | 924573 | systems/win32/miktex/tm/packages/fileinfo.tar.lzma
2011/09/21 | 281409 | systems/win32/miktex/tm/packages/filemod.tar.lzma
-2020/02/02 | 524383 | systems/win32/miktex/tm/packages/files.csv.lzma
+2020/02/03 | 522769 | systems/win32/miktex/tm/packages/files.csv.lzma
2001/05/14 | 5617 | systems/win32/miktex/tm/packages/finbib.tar.lzma
2015/10/20 | 44379 | systems/win32/miktex/tm/packages/findhyph.tar.lzma
2011/10/21 | 89323 | systems/win32/miktex/tm/packages/fink.tar.lzma
@@ -266659,7 +266667,7 @@
2016/11/04 | 1845 | systems/win32/miktex/tm/packages/graphics-cfg.tar.lzma
2018/01/12 | 10092 | systems/win32/miktex/tm/packages/graphics-def.tar.lzma
2018/01/18 | 10173 | systems/win32/miktex/tm/packages/graphics-pln.tar.lzma
-2019/11/10 | 2066773 | systems/win32/miktex/tm/packages/graphics.tar.lzma
+2020/02/03 | 2053449 | systems/win32/miktex/tm/packages/graphics.tar.lzma
2014/01/14 | 985128 | systems/win32/miktex/tm/packages/graphicxbox.tar.lzma
2018/01/30 | 410183 | systems/win32/miktex/tm/packages/graphicxpsd.tar.lzma
2005/09/27 | 101378 | systems/win32/miktex/tm/packages/graphicx-psmin.cab
@@ -266891,7 +266899,7 @@
2019/01/30 | 3958562 | systems/win32/miktex/tm/packages/joy-of-tex.tar.lzma
2009/01/31 | 6970 | systems/win32/miktex/tm/packages/jphysiol.tar.lzma
2007/03/13 | 158168 | systems/win32/miktex/tm/packages/jpsj.tar.lzma
-2019/07/27 | 1005986 | systems/win32/miktex/tm/packages/jsclasses.tar.lzma
+2020/02/03 | 1009096 | systems/win32/miktex/tm/packages/jsclasses.tar.lzma
2019/02/07 | 1195326 | systems/win32/miktex/tm/packages/jslectureplanner.tar.lzma
2016/07/15 | 43965 | systems/win32/miktex/tm/packages/js-misc.tar.lzma
2015/06/03 | 259119 | systems/win32/miktex/tm/packages/jumplines.tar.lzma
@@ -266986,7 +266994,7 @@
2019/03/04 | 753256 | systems/win32/miktex/tm/packages/latexalpha2.tar.lzma
2019/11/20 | 2438803 | systems/win32/miktex/tm/packages/latex-amsmath-dev.tar.lzma
2016/11/05 | 150896 | systems/win32/miktex/tm/packages/latexbangla.tar.lzma
-2020/01/14 | 17824104 | systems/win32/miktex/tm/packages/latex-base-dev.tar.lzma
+2020/02/03 | 18882936 | systems/win32/miktex/tm/packages/latex-base-dev.tar.lzma
2019/10/17 | 200688 | systems/win32/miktex/tm/packages/latexbug.tar.lzma
2019/01/31 | 396437 | systems/win32/miktex/tm/packages/latexcolors.tar.lzma
2015/12/08 | 5507619 | systems/win32/miktex/tm/packages/latexcourse-rug.tar.lzma
@@ -267026,7 +267034,7 @@
2017/03/20 | 354588 | systems/win32/miktex/tm/packages/leaflet.tar.lzma
2004/07/13 | 333977 | systems/win32/miktex/tm/packages/leawood.cab
2011/09/13 | 1558514 | systems/win32/miktex/tm/packages/lecturer.tar.lzma
-2019/01/30 | 7424 | systems/win32/miktex/tm/packages/lectures.tar.lzma
+2020/02/03 | 7953 | systems/win32/miktex/tm/packages/lectures.tar.lzma
2016/08/09 | 2514816 | systems/win32/miktex/tm/packages/ledmac.tar.lzma
2007/01/19 | 56963 | systems/win32/miktex/tm/packages/leftidx.tar.bz2
2019/10/20 | 628747 | systems/win32/miktex/tm/packages/leipzig.tar.lzma
@@ -267145,7 +267153,7 @@
2014/08/19 | 236809 | systems/win32/miktex/tm/packages/ltablex.tar.lzma
2010/03/30 | 272798 | systems/win32/miktex/tm/packages/ltabptch.tar.lzma
2017/04/13 | 49206 | systems/win32/miktex/tm/packages/ltb2bib.tar.lzma
-2019/11/11 | 18080144 | systems/win32/miktex/tm/packages/ltxbase.tar.lzma
+2020/02/03 | 18884496 | systems/win32/miktex/tm/packages/ltxbase.tar.lzma
2019/12/20 | 406142 | systems/win32/miktex/tm/packages/ltxcmds.tar.lzma
2011/03/30 | 6745 | systems/win32/miktex/tm/packages/ltxdockit.tar.lzma
2019/04/16 | 78752 | systems/win32/miktex/tm/packages/ltxguidex.tar.lzma
@@ -267544,9 +267552,9 @@
2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma
2019/11/11 | 38784 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma
2019/11/11 | 42872 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma
-2020/02/02 | 196063 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
-2020/02/02 | 1171231 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2020/02/02 | 1091925 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2020/02/03 | 196008 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2020/02/03 | 1169902 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2020/02/03 | 1090590 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
2019/11/11 | 13040 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma
2019/11/11 | 14027 | systems/win32/miktex/tm/packages/miktex-zzip-bin-x64-2.9.tar.lzma
2016/07/15 | 35914 | systems/win32/miktex/tm/packages/mil3.tar.lzma
@@ -267697,184 +267705,184 @@
2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma
2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma
2019/09/11 | 231430 | systems/win32/miktex/tm/packages/newverbs.tar.lzma
-2020/02/02 | 524162 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2020/02/02 | 29254 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
-2020/02/02 | 33365 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
-2020/02/02 | 937057 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
-2020/02/02 | 1042535 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2020/02/02 | 24049 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
-2020/02/02 | 26186 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
-2020/02/02 | 29289 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
-2020/02/02 | 34847 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2020/02/02 | 49767 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
-2020/02/02 | 57201 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2020/02/02 | 84627 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
-2020/02/02 | 94285 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2020/02/02 | 60283 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
-2020/02/02 | 67299 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2020/02/02 | 26651 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
-2020/02/02 | 30218 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
-2020/02/02 | 328735 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
-2020/02/02 | 391624 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2020/02/02 | 32232 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
-2020/02/02 | 36326 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
-2020/02/02 | 49303 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
-2020/02/02 | 54053 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2020/02/02 | 4803 | systems/win32/miktex/tm/packages/next/miktex-config-2.9.tar.lzma
-2020/02/02 | 199137 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
-2020/02/02 | 215591 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
-2020/02/02 | 169531 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
-2020/02/02 | 184252 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
-2020/02/02 | 52069 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
-2020/02/02 | 58829 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2020/02/02 | 20711 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
-2020/02/02 | 22936 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
-2020/02/02 | 450197 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma
-2020/02/02 | 40961 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
-2020/02/02 | 45771 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2020/02/02 | 272528 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
-2020/02/02 | 310037 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2020/02/02 | 40698 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
-2020/02/02 | 44830 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2020/02/02 | 115638 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
-2020/02/02 | 130294 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
-2020/02/02 | 1249897 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
-2020/02/02 | 1384312 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
-2020/02/02 | 33540 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
-2020/02/02 | 38854 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2020/02/02 | 43428 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
-2020/02/02 | 47983 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
-2020/02/02 | 45454 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
-2020/02/02 | 50456 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
-2020/02/02 | 56730 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
-2020/02/02 | 61731 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2020/02/02 | 133213 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
-2020/02/02 | 152057 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
-2020/02/02 | 69646 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
-2020/02/02 | 72647 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2020/02/02 | 68667 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
-2020/02/02 | 77520 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
-2020/02/02 | 246425 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
-2020/02/02 | 281512 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2020/02/02 | 25318 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
-2020/02/02 | 28754 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
-2020/02/02 | 100580 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
-2020/02/02 | 116724 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
-2020/02/02 | 63264 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
-2020/02/02 | 72521 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2020/02/02 | 94221 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
-2020/02/02 | 110904 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2020/02/02 | 57746 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
-2020/02/02 | 64394 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2020/02/02 | 457416 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
-2020/02/02 | 545143 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
-2020/02/02 | 137225 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
-2020/02/02 | 154376 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2020/02/02 | 92932 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
-2020/02/02 | 108832 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
-2020/02/02 | 15896 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
-2020/02/02 | 17661 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
-2020/02/02 | 27822 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
-2020/02/02 | 29666 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
-2020/02/02 | 615421 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
-2020/02/02 | 669930 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2020/02/02 | 498536 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
-2020/02/02 | 560780 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
-2020/02/02 | 539358 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
-2020/02/02 | 575757 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
-2020/02/02 | 93455 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
-2020/02/02 | 102474 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
-2020/02/02 | 1692033 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
-2020/02/02 | 1952764 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2020/02/02 | 67251 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
-2020/02/02 | 73629 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
-2020/02/02 | 26893 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
-2020/02/02 | 31245 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2020/02/02 | 7494 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
-2020/02/02 | 8462 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2020/02/02 | 167803 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
-2020/02/02 | 182579 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
-2020/02/02 | 247650 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
-2020/02/02 | 281251 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
-2020/02/02 | 87334 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
-2020/02/02 | 92153 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
-2020/02/02 | 77962 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma
-2020/02/02 | 86706 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma
-2020/02/02 | 164902 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
-2020/02/02 | 185604 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2020/02/02 | 148590 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
-2020/02/02 | 167123 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
-2020/02/02 | 194998 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
-2020/02/02 | 177513 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
-2020/02/02 | 80497 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
-2020/02/02 | 91162 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
-2020/02/02 | 30996 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
-2020/02/02 | 34842 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
-2020/02/02 | 56398 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
-2020/02/02 | 62844 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
-2020/02/02 | 41833 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
-2020/02/02 | 45700 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2020/02/02 | 45596 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
-2020/02/02 | 52118 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2020/02/02 | 354758 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma
-2020/02/02 | 387847 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma
-2020/02/02 | 321970 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
-2020/02/02 | 356075 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
-2020/02/02 | 186832 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
-2020/02/02 | 193709 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
-2020/02/02 | 201852 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
-2020/02/02 | 237406 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
-2020/02/02 | 77972 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
-2020/02/02 | 87208 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2020/02/02 | 932472 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
-2020/02/02 | 1043586 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
-2020/02/02 | 19798 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
-2020/02/02 | 23383 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
-2020/02/02 | 31149 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
-2020/02/02 | 36632 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
-2020/02/02 | 63141 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
-2020/02/02 | 71725 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2020/02/02 | 42578 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
-2020/02/02 | 50867 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2020/02/02 | 1102962 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
-2020/02/02 | 1229080 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
-2020/02/02 | 41870 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
-2020/02/02 | 50844 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2020/02/02 | 53437 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma
-2020/02/02 | 59445 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma
-2020/02/02 | 26773 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
-2020/02/02 | 29136 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
-2020/02/02 | 16046 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
-2020/02/02 | 17752 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2020/02/02 | 63080 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
-2020/02/02 | 69222 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
-2020/02/02 | 147079 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
-2020/02/02 | 160573 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2020/02/02 | 70231 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
-2020/02/02 | 79709 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
-2020/02/02 | 91183 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
-2020/02/02 | 96239 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
-2020/02/02 | 2458841 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
-2020/02/02 | 2581141 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
-2020/02/02 | 54891 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
-2020/02/02 | 61353 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
-2020/02/02 | 26505 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
-2020/02/02 | 32362 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
-2020/02/02 | 61520 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
-2020/02/02 | 65060 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
-2020/02/02 | 246959 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
-2020/02/02 | 276777 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
-2020/02/02 | 533353 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
-2020/02/02 | 563517 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2020/02/02 | 38793 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
-2020/02/02 | 42909 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2020/02/02 | 196194 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2020/02/02 | 1170623 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
-2020/02/02 | 1091936 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2020/02/02 | 13060 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
-2020/02/02 | 14039 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2020/02/03 | 523177 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2020/02/03 | 29247 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
+2020/02/03 | 33361 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2020/02/03 | 938240 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
+2020/02/03 | 1042656 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2020/02/03 | 28518 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
+2020/02/03 | 30750 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2020/02/03 | 29289 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
+2020/02/03 | 34862 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2020/02/03 | 49609 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
+2020/02/03 | 57228 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2020/02/03 | 84619 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
+2020/02/03 | 94329 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2020/02/03 | 60208 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
+2020/02/03 | 67250 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2020/02/03 | 26664 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
+2020/02/03 | 30217 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2020/02/03 | 328818 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
+2020/02/03 | 391569 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2020/02/03 | 32273 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
+2020/02/03 | 36349 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2020/02/03 | 49435 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
+2020/02/03 | 53992 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2020/02/03 | 4813 | systems/win32/miktex/tm/packages/next/miktex-config-2.9.tar.lzma
+2020/02/03 | 199149 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
+2020/02/03 | 215106 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2020/02/03 | 169187 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
+2020/02/03 | 184220 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2020/02/03 | 51650 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
+2020/02/03 | 58781 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2020/02/03 | 20651 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
+2020/02/03 | 22936 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2020/02/03 | 450193 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma
+2020/02/03 | 40981 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
+2020/02/03 | 45798 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2020/02/03 | 272645 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
+2020/02/03 | 310090 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2020/02/03 | 40679 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
+2020/02/03 | 44922 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2020/02/03 | 115498 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
+2020/02/03 | 130396 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2020/02/03 | 1241871 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
+2020/02/03 | 1383772 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2020/02/03 | 33557 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
+2020/02/03 | 38859 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2020/02/03 | 43403 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
+2020/02/03 | 47979 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2020/02/03 | 45544 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
+2020/02/03 | 50460 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2020/02/03 | 56674 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
+2020/02/03 | 61691 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2020/02/03 | 133208 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
+2020/02/03 | 152112 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2020/02/03 | 69679 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
+2020/02/03 | 72589 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2020/02/03 | 68748 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
+2020/02/03 | 77405 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2020/02/03 | 246454 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
+2020/02/03 | 281547 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2020/02/03 | 25329 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
+2020/02/03 | 28756 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2020/02/03 | 100602 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
+2020/02/03 | 116815 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2020/02/03 | 63300 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
+2020/02/03 | 72583 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2020/02/03 | 94346 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
+2020/02/03 | 110888 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2020/02/03 | 57777 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
+2020/02/03 | 64363 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2020/02/03 | 456907 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
+2020/02/03 | 544015 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2020/02/03 | 137137 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
+2020/02/03 | 149812 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2020/02/03 | 92916 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
+2020/02/03 | 108796 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2020/02/03 | 15897 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
+2020/02/03 | 17666 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2020/02/03 | 27691 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
+2020/02/03 | 29667 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2020/02/03 | 615476 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
+2020/02/03 | 669352 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2020/02/03 | 498711 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
+2020/02/03 | 560879 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2020/02/03 | 539388 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
+2020/02/03 | 575553 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2020/02/03 | 93447 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
+2020/02/03 | 102435 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2020/02/03 | 1688121 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
+2020/02/03 | 1955985 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2020/02/03 | 67274 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
+2020/02/03 | 73604 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2020/02/03 | 26959 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
+2020/02/03 | 31199 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2020/02/03 | 7499 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
+2020/02/03 | 8477 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2020/02/03 | 167847 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
+2020/02/03 | 182655 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2020/02/03 | 247465 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
+2020/02/03 | 281286 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2020/02/03 | 87226 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
+2020/02/03 | 91888 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2020/02/03 | 77881 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma
+2020/02/03 | 86664 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma
+2020/02/03 | 165198 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
+2020/02/03 | 185430 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2020/02/03 | 149015 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
+2020/02/03 | 168702 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2020/02/03 | 195116 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
+2020/02/03 | 177588 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2020/02/03 | 80413 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
+2020/02/03 | 91231 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2020/02/03 | 31002 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
+2020/02/03 | 34848 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2020/02/03 | 56420 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
+2020/02/03 | 62881 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2020/02/03 | 41842 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
+2020/02/03 | 45783 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2020/02/03 | 45614 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
+2020/02/03 | 52075 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2020/02/03 | 354499 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma
+2020/02/03 | 387556 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma
+2020/02/03 | 321656 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
+2020/02/03 | 355939 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2020/02/03 | 186854 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
+2020/02/03 | 193617 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2020/02/03 | 201968 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
+2020/02/03 | 237465 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2020/02/03 | 78000 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
+2020/02/03 | 87159 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2020/02/03 | 932271 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
+2020/02/03 | 1042357 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2020/02/03 | 19795 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
+2020/02/03 | 23368 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2020/02/03 | 31149 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
+2020/02/03 | 36592 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2020/02/03 | 63057 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
+2020/02/03 | 71631 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2020/02/03 | 42582 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
+2020/02/03 | 50895 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2020/02/03 | 1102554 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
+2020/02/03 | 1228602 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2020/02/03 | 41912 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
+2020/02/03 | 50868 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2020/02/03 | 53373 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma
+2020/02/03 | 59438 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma
+2020/02/03 | 26744 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
+2020/02/03 | 29150 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2020/02/03 | 16039 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
+2020/02/03 | 17760 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2020/02/03 | 63192 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
+2020/02/03 | 69242 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2020/02/03 | 147102 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
+2020/02/03 | 161117 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2020/02/03 | 70248 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
+2020/02/03 | 79807 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2020/02/03 | 91294 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
+2020/02/03 | 96237 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2020/02/03 | 2457332 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
+2020/02/03 | 2579531 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2020/02/03 | 54920 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
+2020/02/03 | 61554 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2020/02/03 | 26504 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
+2020/02/03 | 32354 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2020/02/03 | 61557 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
+2020/02/03 | 64990 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2020/02/03 | 247083 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
+2020/02/03 | 276862 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2020/02/03 | 533353 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
+2020/02/03 | 563391 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2020/02/03 | 39205 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
+2020/02/03 | 42928 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2020/02/03 | 196152 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2020/02/03 | 1170823 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2020/02/03 | 1091557 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2020/02/03 | 13072 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
+2020/02/03 | 14059 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2019/03/12 | 1412 | systems/win32/miktex/tm/packages/nextpage.tar.lzma
-2020/02/02 | 652 | systems/win32/miktex/tm/packages/next/pr.ini
+2020/02/03 | 652 | systems/win32/miktex/tm/packages/next/pr.ini
2018/07/06 | 145915 | systems/win32/miktex/tm/packages/nexus-otf.tar.lzma
2017/03/30 | 191149 | systems/win32/miktex/tm/packages/nfssext-cfr.tar.lzma
2012/12/20 | 612251 | systems/win32/miktex/tm/packages/nicefilelist.tar.lzma
@@ -268132,7 +268140,7 @@
2016/07/18 | 142232 | systems/win32/miktex/tm/packages/plari.tar.lzma
2016/07/20 | 93092 | systems/win32/miktex/tm/packages/plates.tar.lzma
2019/01/03 | 533049 | systems/win32/miktex/tm/packages/platexcheat.tar.lzma
-2019/10/22 | 1730887 | systems/win32/miktex/tm/packages/platex.tar.lzma
+2020/02/03 | 1754911 | systems/win32/miktex/tm/packages/platex.tar.lzma
2018/11/26 | 507688 | systems/win32/miktex/tm/packages/platex-tools.tar.lzma
2019/06/07 | 141533 | systems/win32/miktex/tm/packages/plautopatch.tar.lzma
2019/10/17 | 2046945 | systems/win32/miktex/tm/packages/playfair.tar.lzma
@@ -268186,7 +268194,7 @@
2008/11/07 | 35981 | systems/win32/miktex/tm/packages/prettyref.tar.lzma
2017/07/26 | 201385 | systems/win32/miktex/tm/packages/preview.tar.lzma
2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma
-2020/02/02 | 349 | systems/win32/miktex/tm/packages/pr.ini
+2020/02/03 | 354 | systems/win32/miktex/tm/packages/pr.ini
2010/09/27 | 248469 | systems/win32/miktex/tm/packages/printlen.tar.lzma
2008/06/17 | 77313 | systems/win32/miktex/tm/packages/proba.tar.lzma
2017/07/12 | 988486 | systems/win32/miktex/tm/packages/probsoln.tar.lzma
@@ -268516,7 +268524,7 @@
2009/07/13 | 181403 | systems/win32/miktex/tm/packages/sdrt.tar.lzma
2016/05/31 | 1997899 | systems/win32/miktex/tm/packages/sduthesis.tar.lzma
2010/11/01 | 258578 | systems/win32/miktex/tm/packages/secdot.tar.lzma
-2020/01/02 | 59930 | systems/win32/miktex/tm/packages/secnum.tar.lzma
+2020/02/03 | 388840 | systems/win32/miktex/tm/packages/secnum.tar.lzma
2005/10/23 | 18972 | systems/win32/miktex/tm/packages/sectionbox.cab
2019/03/12 | 52416 | systems/win32/miktex/tm/packages/sectionbreak.tar.lzma
2010/10/23 | 368753 | systems/win32/miktex/tm/packages/section.tar.lzma
@@ -268715,7 +268723,7 @@
2020/01/30 | 1151201 | systems/win32/miktex/tm/packages/suftesi.tar.lzma
2006/08/13 | 95996 | systems/win32/miktex/tm/packages/sugconf.tar.bz2
2019/08/22 | 340330 | systems/win32/miktex/tm/packages/superiors.tar.lzma
-2005/04/09 | 43619 | systems/win32/miktex/tm/packages/supertabular.cab
+2020/02/03 | 276948 | systems/win32/miktex/tm/packages/supertabular.tar.lzma
2006/11/14 | 56821 | systems/win32/miktex/tm/packages/susy.tar.bz2
2007/01/02 | 4353 | systems/win32/miktex/tm/packages/svgcolor.tar.bz2
2020/01/14 | 1124010 | systems/win32/miktex/tm/packages/svg.tar.lzma
@@ -268812,7 +268820,7 @@
2009/01/02 | 93067 | systems/win32/miktex/tm/packages/texments.tar.lzma
2017/06/21 | 745451 | systems/win32/miktex/tm/packages/texosquery.tar.lzma
2016/05/31 | 260827 | systems/win32/miktex/tm/packages/tex-overview.tar.lzma
-2020/01/15 | 2709897 | systems/win32/miktex/tm/packages/texplate.tar.lzma
+2020/02/03 | 3027494 | systems/win32/miktex/tm/packages/texplate.tar.lzma
2005/05/04 | 438630 | systems/win32/miktex/tm/packages/texpower.cab
2017/02/05 | 2162832 | systems/win32/miktex/tm/packages/texproposal.tar.lzma
2016/07/20 | 266854 | systems/win32/miktex/tm/packages/tex-ps.tar.lzma
@@ -268937,7 +268945,7 @@
2004/05/07 | 6156 | systems/win32/miktex/tm/packages/tokenizer.cab
2010/08/30 | 865703 | systems/win32/miktex/tm/packages/tolkienfonts.tar.lzma
2013/11/28 | 169234 | systems/win32/miktex/tm/packages/toolbox.tar.lzma
-2019/11/11 | 5485172 | systems/win32/miktex/tm/packages/tools.tar.lzma
+2020/02/03 | 5483481 | systems/win32/miktex/tm/packages/tools.tar.lzma
2016/07/18 | 41952 | systems/win32/miktex/tm/packages/topfloat.tar.lzma
2019/07/13 | 386438 | systems/win32/miktex/tm/packages/topiclongtable.tar.lzma
2018/07/11 | 371929 | systems/win32/miktex/tm/packages/topletter.tar.lzma
@@ -269058,7 +269066,7 @@
2010/07/27 | 116153 | systems/win32/miktex/tm/packages/uowthesis.tar.lzma
2017/08/12 | 910880 | systems/win32/miktex/tm/packages/uowthesistitlepage.tar.lzma
2011/05/25 | 2544 | systems/win32/miktex/tm/packages/upca.tar.lzma
-2019/10/22 | 930417 | systems/win32/miktex/tm/packages/uplatex.tar.lzma
+2020/02/03 | 927260 | systems/win32/miktex/tm/packages/uplatex.tar.lzma
2019/09/29 | 587412 | systems/win32/miktex/tm/packages/upmethodology.tar.lzma
2016/10/18 | 171420 | systems/win32/miktex/tm/packages/uppunctlm.tar.lzma
2012/04/27 | 167179 | systems/win32/miktex/tm/packages/upquote.tar.lzma
@@ -269272,7 +269280,7 @@
2008/06/26 | 246879 | systems/win32/miktex/tm/packages/zwgetfdate.tar.lzma
2013/07/09 | 601588 | systems/win32/miktex/tm/packages/zwpagelayout.tar.lzma
2012/12/20 | 2657 | systems/win32/miktex/tm/packages/zxjafbfont.tar.lzma
-2020/01/18 | 156120 | systems/win32/miktex/tm/packages/zxjafont.tar.lzma
+2020/02/03 | 171229 | systems/win32/miktex/tm/packages/zxjafont.tar.lzma
2020/01/23 | 149124 | systems/win32/miktex/tm/packages/zxjatype.tar.lzma
2002/06/26 | 178694 | systems/win32/oletex/OLETeX1b4.exe
2002/06/26 | 7223 | systems/win32/oletex/README
@@ -269309,15 +269317,15 @@
2019/08/12 | 14654 | systems/win32/w32tex/00FILES.euc
2019/08/12 | 14654 | systems/win32/w32tex/00FILES.sjis
2020/01/20 | 4908972 | systems/win32/w32tex/aleph-w32.tar.xz
-2020/01/28 | 64231716 | systems/win32/w32tex/biblatex-biber.tar.xz
+2020/02/02 | 64233068 | systems/win32/w32tex/biblatex-biber.tar.xz
2016/12/13 | 65971452 | systems/win32/w32tex/cbfonts.tar.xz
-2020/01/31 | 580911 | systems/win32/w32tex/ChangeLog
+2020/02/02 | 581104 | systems/win32/w32tex/ChangeLog
2009/08/03 | 141221 | systems/win32/w32tex/ChangeLog.0
2009/08/03 | 221890 | systems/win32/w32tex/ChangeLog.1
2009/08/03 | 116462 | systems/win32/w32tex/ChangeLog.2
2013/09/03 | 352299 | systems/win32/w32tex/ChangeLog.3
2017/06/24 | 644754 | systems/win32/w32tex/ChangeLog.4
-2020/01/31 | 22470680 | systems/win32/w32tex/cjkzr.tar.xz
+2020/02/02 | 22477816 | systems/win32/w32tex/cjkzr.tar.xz
2013/04/27 | 15858676 | systems/win32/w32tex/context-doc.tar.xz
2020/01/27 | 139777228 | systems/win32/w32tex/context.tar.xz
2020/01/20 | 902564 | systems/win32/w32tex/cweb-w32.tar.xz
@@ -269386,7 +269394,7 @@
2013/04/08 | 13748 | systems/win32/w32tex/vf-n2bk.tar.xz
2019/04/08 | 35478888 | systems/win32/w32tex/w32tex-src.tar.xz
2020/01/31 | 99033084 | systems/win32/w32tex/web2c-lib.tar.xz
-2020/01/31 | 43183336 | systems/win32/w32tex/web2c-w32.tar.xz
+2020/02/02 | 42982644 | systems/win32/w32tex/web2c-w32.tar.xz
2020/01/20 | 810476 | systems/win32/w32tex/win64/aleph-w64.tar.xz
2019/12/09 | 22317480 | systems/win32/w32tex/win64/biblatex-biber-w64.tar.xz
2020/01/27 | 1943864 | systems/win32/w32tex/win64/context-w64.tar.xz
@@ -269428,7 +269436,7 @@
2020/01/20 | 1800476 | systems/win32/w32tex/win64/uptex-w64.tar.xz
2020/01/23 | 3378616 | systems/win32/w32tex/win64/web2c-w64.tar.xz
2020/01/24 | 11110568 | systems/win32/w32tex/win64/xetex-w64.tar.xz
-2020/01/31 | 48839608 | systems/win32/w32tex/xetex-w32.tar.xz
+2020/02/02 | 48778520 | systems/win32/w32tex/xetex-w32.tar.xz
2019/10/03 | 2936880 | systems/win32/w32tex/xindy-w32.tar.xz
2013/11/19 | 11356248 | systems/win32/w32tex/xymtex.tar.xz
2016/09/09 | 4334636 | systems/win32/w32tex/xypic.tar.xz
@@ -269525,7 +269533,7 @@
2004/06/04 | 404 | tds/tds.sed
2004/06/23 | 65418 | tds/tds.tex
2019/05/29 | 304264 | tds.zip
-2020/02/03 | 186 | timestamp
+2020/02/04 | 186 | timestamp
2002/08/26 | 61898 | usergrps/dante/antrag.pdf
2002/08/26 | 118217 | usergrps/dante/antrag.ps
2017/06/30 | 917 | usergrps/dante/dtk/doc/beispiel.bib
diff --git a/FILES.byname.gz b/FILES.byname.gz
index 20b666ed0d..caaa19afd2 100644
--- a/FILES.byname.gz
+++ b/FILES.byname.gz
Binary files differ
diff --git a/FILES.last07days b/FILES.last07days
index ccda4bbfef..443b284512 100644
--- a/FILES.last07days
+++ b/FILES.last07days
@@ -1,183 +1,542 @@
+2020/02/03 | 99057 | macros/latex/contrib/derivative/derivative.tex
+2020/02/03 | 970626 | macros/latex/contrib/chemmacros/chemmacros-manual.pdf
+2020/02/03 | 96237 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
+2020/02/03 | 94911 | macros/luatex/generic/luaotfload/fontloader-font-otr.lua
+2020/02/03 | 946393 | macros/luatex/generic/luaotfload/fontloader-reference.lua
+2020/02/03 | 94346 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
+2020/02/03 | 94329 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
+2020/02/03 | 9412 | macros/luatex/generic/lualibs/lualibs-util-sta.lua
+2020/02/03 | 938283 | macros/latex/contrib/thuthesis/thuthesis.pdf
+2020/02/03 | 938240 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
+2020/02/03 | 9356 | macros/latex/contrib/fontspec/fontspec-code-feat-aat.dtx
+2020/02/03 | 93447 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
+2020/02/03 | 932271 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
+2020/02/03 | 9309 | macros/latex/contrib/fontspec/fontspec-doc-enc.tex
+2020/02/03 | 92916 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
+2020/02/03 | 927684 | systems/texlive/tlnet/archive/jsclasses.doc.r53641.tar.xz
+2020/02/03 | 927260 | systems/win32/miktex/tm/packages/uplatex.tar.lzma
+2020/02/03 | 9200 | macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex
+2020/02/03 | 91888 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
+2020/02/03 | 91294 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
+2020/02/03 | 91231 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
+2020/02/03 | 9101 | macros/latex/contrib/fontspec/fontspec-code-vars.dtx
+2020/02/03 | 89811 | macros/luatex/generic/luaotfload/luaotfload-main.tex
+2020/02/03 | 8927 | macros/luatex/generic/luaotfload/luaotfload-loaders.lua
+2020/02/03 | 88500 | macros/luatex/generic/luaotfload/fontloader-font-cff.lua
+2020/02/03 | 877940 | systems/texlive/tlnet/archive/uplatex.doc.r53639.tar.xz
+2020/02/03 | 87226 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
+2020/02/03 | 87159 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
+2020/02/03 | 8694 | macros/latex/contrib/fontspec/fontspec-code-xfss.dtx
+2020/02/03 | 8673 | macros/latex/contrib/fontspec/fontspec-doc-intro.tex
+2020/02/03 | 86664 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma
+2020/02/03 | 86622 | macros/latex/contrib/acro/acro-manual.tex
+2020/02/03 | 8487 | macros/luatex/generic/luaotfload/shaper-demo-graphite.pdf
+2020/02/03 | 8485 | macros/luatex/generic/luaotfload/fontloader-basics-nod.lua
+2020/02/03 | 8477 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
+2020/02/03 | 84619 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
+2020/02/03 | 845520 | macros/luatex/generic/luaotfload/fontloader-2020-01-26.lua
+2020/02/03 | 8421 | macros/latex/contrib/chemmacros/chemmacros.sty
+2020/02/03 | 8411 | macros/luatex/generic/luaotfload/shaper-demo.pdf
+2020/02/03 | 8351 | macros/latex/contrib/fontspec/fontspec-code-msg.dtx
+2020/02/03 | 8144 | systems/texlive/tlnet/archive/texplate.source.r53637.tar.xz
+2020/02/03 | 80955 | macros/luatex/generic/lualibs/lualibs.pdf
+2020/02/03 | 80413 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
+2020/02/03 | 8002 | macros/latex/contrib/chemmacros/chemmacros.module.isotopes.code.tex
+2020/02/03 | 79807 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
+2020/02/03 | 7953 | systems/win32/miktex/tm/packages/lectures.tar.lzma
+2020/02/03 | 78000 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
+2020/02/03 | 77881 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma
+2020/02/03 | 77405 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
+2020/02/03 | 77323 | macros/luatex/generic/luaotfload/luaotfload-conf.pdf
+2020/02/03 | 771605 | macros/latex/contrib/thuthesis/main.pdf
+2020/02/03 | 76686 | macros/luatex/generic/luaotfload/luaotfload-tool.pdf
+2020/02/03 | 7563 | macros/luatex/generic/luaotfload/luaotfload-tounicode.lua
+2020/02/03 | 754441 | macros/latex/required/babel/base/babel.pdf
+2020/02/03 | 7529 | macros/latex/contrib/fontspec/fontspec-doc-style.sty
+2020/02/03 | 7499 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
+2020/02/03 | 7392 | macros/latex/required/babel/base/babel.ins
+2020/02/03 | 73604 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
+2020/02/03 | 7293 | macros/latex/contrib/chemmacros/chemmacros.module.newman.code.tex
+2020/02/03 | 7290 | macros/latex/contrib/thuthesis/ref/refs.bib
+2020/02/03 | 728098 | macros/latex/required/babel/base/locale.zip
+2020/02/03 | 72589 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
+2020/02/03 | 72583 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
+2020/02/03 | 7191 | macros/latex/contrib/fontspec/fontspec-code-interfaces.dtx
+2020/02/03 | 71631 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
+2020/02/03 | 70248 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
+2020/02/03 | 69679 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
+2020/02/03 | 69242 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
+2020/02/03 | 68748 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
+2020/02/03 | 6839 | macros/luatex/generic/luaotfload/luaotfload-notdef.lua
+2020/02/03 | 6740 | systems/texlive/tlnet/archive/lectures.r53642.tar.xz
+2020/02/03 | 67274 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
+2020/02/03 | 67250 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
+2020/02/03 | 669352 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
+2020/02/03 | 660562 | macros/latex/required/babel/base/babel.dtx
+2020/02/03 | 652 | systems/win32/miktex/tm/packages/next/pr.ini
+2020/02/03 | 6529 | macros/luatex/generic/luaotfload/fontloader-l-lua.lua
+2020/02/03 | 6529 | macros/luatex/generic/lualibs/lualibs-lua.lua
+2020/02/03 | 64990 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
+2020/02/03 | 646 | macros/latex/contrib/filehook/filehook.ins
+2020/02/03 | 64363 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
+2020/02/03 | 64156 | systems/texlive/tlnet/archive/amsmath.source.r53640.tar.xz
+2020/02/03 | 64079 | macros/latex/contrib/filehook/filehook.dtx
+2020/02/03 | 6385 | macros/latex/contrib/fontspec/fontspec-code-opening.dtx
+2020/02/03 | 63300 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
+2020/02/03 | 6324 | macros/latex/contrib/chemmacros/chemmacros.module.tikz.code.tex
+2020/02/03 | 63192 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
+2020/02/03 | 631856 | macros/latex/contrib/acro.zip
+2020/02/03 | 63106 | macros/luatex/generic/luaotfload/fontloader-font-con.lua
+2020/02/03 | 63057 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
+2020/02/03 | 62881 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2020/02/03 | 626791 | macros/latex/contrib/fontspec/fontspec-code.pdf
+2020/02/03 | 6264 | macros/latex/contrib/chemmacros/chemmacros.module.lang.code.tex
+2020/02/03 | 6225 | macros/latex/contrib/chemmacros/chemmacros.module.polymers.code.tex
+2020/02/03 | 61691 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
+2020/02/03 | 61557 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
+2020/02/03 | 61554 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
+2020/02/03 | 615476 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
+2020/02/03 | 610880 | macros/latex/contrib/fontspec/fontspec.pdf
+2020/02/03 | 6069 | macros/latex/contrib/chemmacros/chemmacros.module.thermodynamics.code.tex
+2020/02/03 | 6038 | macros/latex/contrib/fontspec/fontspec-code-scripts.dtx
+2020/02/03 | 60208 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
+2020/02/03 | 5990 | macros/luatex/generic/luaotfload/luaotfload-status.lua
+2020/02/03 | 59438 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma
+2020/02/03 | 590 | graphics/pgf/contrib/lie-hasse/README
+2020/02/03 | 58781 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
+2020/02/03 | 586616 | graphics/pgf/contrib/lie-hasse.zip
+2020/02/03 | 5863 | macros/latex/contrib/chemmacros/chemmacros.module.charges.code.tex
+2020/02/03 | 57777 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
+2020/02/03 | 576935 | macros/latex/contrib/acro/acro-manual.pdf
+2020/02/03 | 575553 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2020/02/03 | 573306 | graphics/pgf/contrib/lie-hasse/lie-hasse.pdf
+2020/02/03 | 57228 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
+2020/02/03 | 56674 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
+2020/02/03 | 56420 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
+2020/02/03 | 563391 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
+2020/02/03 | 560879 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
+2020/02/03 | 55748 | systems/texlive/tlnet/archive/jsclasses.source.r53641.tar.xz
+2020/02/03 | 5545 | macros/latex/required/babel/base/README.md
+2020/02/03 | 549 | macros/latex/contrib/fontspec/fontspec.cfg
+2020/02/03 | 54920 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
+2020/02/03 | 5483481 | systems/win32/miktex/tm/packages/tools.tar.lzma
+2020/02/03 | 544015 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
+2020/02/03 | 5438 | macros/latex/contrib/chemmacros/chemmacros.module.acid-base.code.tex
+2020/02/03 | 53992 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
+2020/02/03 | 539388 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
+2020/02/03 | 5388 | macros/luatex/generic/luaotfload/fontloader-data-con.lua
+2020/02/03 | 53373 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma
+2020/02/03 | 533353 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
+2020/02/03 | 52660 | macros/luatex/generic/luaotfload/luaotfload-tool.lua
+2020/02/03 | 523177 | systems/win32/miktex/tm/packages/next/files.csv.lzma
+2020/02/03 | 522904 | systems/texlive/tlnet/archive/latex.source.r53640.tar.xz
+2020/02/03 | 522769 | systems/win32/miktex/tm/packages/files.csv.lzma
+2020/02/03 | 5217348 | systems/texlive/tlnet/archive/tools.doc.r53640.tar.xz
+2020/02/03 | 52075 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
+2020/02/03 | 51832 | systems/texlive/tlnet/archive/graphics.source.r53640.tar.xz
+2020/02/03 | 51650 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
+2020/02/03 | 5115 | macros/luatex/generic/lualibs/lualibs-gzip.lua
+2020/02/03 | 50895 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
+2020/02/03 | 50868 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
+2020/02/03 | 50460 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
+2020/02/03 | 50200 | systems/texlive/tlnet/archive/uplatex.source.r53639.tar.xz
+2020/02/03 | 498711 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
+2020/02/03 | 49609 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
+2020/02/03 | 49435 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
+2020/02/03 | 4929 | macros/latex/contrib/fontspec/fontspec-code-enc.dtx
+2020/02/03 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2020/02/03 | 4889 | macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex
+2020/02/03 | 4813 | systems/win32/miktex/tm/packages/next/miktex-config-2.9.tar.lzma
+2020/02/03 | 47979 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
+2020/02/03 | 4763 | macros/latex/contrib/chemmacros/chemmacros.module.errorcheck.code.tex
+2020/02/03 | 4740 | macros/luatex/generic/lualibs/README.md
+2020/02/03 | 4611 | macros/latex/contrib/chemmacros/chemmacros.module.particles.code.tex
+2020/02/03 | 4602 | macros/latex/contrib/thuthesis/README.md
+2020/02/03 | 45798 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
+2020/02/03 | 45783 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
+2020/02/03 | 456907 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
+2020/02/03 | 4561 | macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex
+2020/02/03 | 45614 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
+2020/02/03 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+2020/02/03 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
+2020/02/03 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
+2020/02/03 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
+2020/02/03 | 45544 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
+2020/02/03 | 45072 | macros/luatex/generic/luaotfload/fontloader-util-str.lua
+2020/02/03 | 45072 | macros/luatex/generic/lualibs/lualibs-util-str.lua
+2020/02/03 | 450193 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma
+2020/02/03 | 44922 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
+2020/02/03 | 44588 | macros/latex/contrib/fontspec/fontspec-doc-opentype.tex
+2020/02/03 | 443581 | macros/luatex/generic/luaotfload/luaotfload-latex.pdf
+2020/02/03 | 43403 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
+2020/02/03 | 42928 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
+2020/02/03 | 428 | macros/latex/contrib/thuthesis/ref/appendix.bib
+2020/02/03 | 4287 | macros/latex/contrib/chemmacros/chemmacros.module.xfrac.code.tex
+2020/02/03 | 42582 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
+2020/02/03 | 42339 | macros/luatex/generic/luaotfload/fontloader-l-table.lua
+2020/02/03 | 42339 | macros/luatex/generic/lualibs/lualibs-table.lua
+2020/02/03 | 42176 | macros/latex/contrib/derivative/derivative.sty
+2020/02/03 | 41912 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
+2020/02/03 | 41842 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
+2020/02/03 | 41220 | systems/texlive/tlnet/archive/tools.r53640.tar.xz
+2020/02/03 | 40981 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
+2020/02/03 | 4071 | macros/latex/contrib/fontspec/fontspec-doc-luatex.tex
+2020/02/03 | 40679 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
+2020/02/03 | 4037 | macros/latex/contrib/fontspec/fontspec-code-fontload.dtx
+2020/02/03 | 39847 | macros/luatex/generic/luaotfload/filegraph.pdf
+2020/02/03 | 3968 | macros/latex/contrib/fontspec/fontspec-code-graphite.dtx
+2020/02/03 | 3949209 | systems/texlive/tlnet/install-tl-unx.tar.gz
+2020/02/03 | 39351 | macros/latex/contrib/fontspec/fontspec-code-internal.dtx
+2020/02/03 | 39205 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
+2020/02/03 | 391569 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
+2020/02/03 | 388 | systems/texlive/tlnet/archive/texlive-docindex.r53636.tar.xz
+2020/02/03 | 388840 | systems/win32/miktex/tm/packages/secnum.tar.lzma
+2020/02/03 | 38859 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
+2020/02/03 | 387556 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma
+2020/02/03 | 3866 | macros/luatex/generic/luaotfload/luaotfload-fallback.lua
+2020/02/03 | 3863 | macros/luatex/generic/luaotfload/README.md
+2020/02/03 | 37648 | systems/texlive/tlnet/archive/platex.r53638.tar.xz
+2020/02/03 | 3711 | macros/latex/contrib/physconst/makefile
+2020/02/03 | 370329 | macros/latex/contrib/physconst/physconst.dtx
+2020/02/03 | 36592 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
+2020/02/03 | 36349 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
+2020/02/03 | 3622 | macros/latex/contrib/fontspec/fontspec.dtx
+2020/02/03 | 355939 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
+2020/02/03 | 354 | systems/win32/miktex/tm/packages/pr.ini
+2020/02/03 | 354499 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma
+2020/02/03 | 3534 | macros/latex/contrib/physconst/README.md
+2020/02/03 | 3526 | macros/latex/required/babel/base/bbidxglo.dtx
+2020/02/03 | 34862 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
+2020/02/03 | 34848 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
+2020/02/03 | 34179 | macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua
+2020/02/03 | 3414 | macros/luatex/generic/lualibs/lualibs-md5.lua
+2020/02/03 | 33557 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
+2020/02/03 | 33361 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
+2020/02/03 | 328818 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
+2020/02/03 | 3251 | macros/latex/contrib/acro/example_two.tex
+2020/02/03 | 32354 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
+2020/02/03 | 32273 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
+2020/02/03 | 321656 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
+2020/02/03 | 31788 | systems/texlive/tlnet/archive/jadetex.doc.r53645.tar.xz
+2020/02/03 | 31207 | macros/luatex/generic/luaotfload/luaotfload-configuration.lua
+2020/02/03 | 31199 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
+2020/02/03 | 31149 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
+2020/02/03 | 31136 | macros/luatex/generic/luaotfload/luaotfload-parsers.lua
+2020/02/03 | 31134 | macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua
+2020/02/03 | 310090 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
+2020/02/03 | 31002 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
+2020/02/03 | 30750 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
+2020/02/03 | 3061 | macros/luatex/generic/luaotfload/luaotfload-unicode.lua
+2020/02/03 | 3057 | macros/latex/contrib/fontspec/fontspec-lua.dtx
+2020/02/03 | 30312 | systems/texlive/tlnet/archive/amsmath.r53640.tar.xz
+2020/02/03 | 3027494 | systems/win32/miktex/tm/packages/texplate.tar.lzma
+2020/02/03 | 30217 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
+2020/02/03 | 30151 | macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex
+2020/02/03 | 3001 | macros/latex/contrib/chemmacros/chemmacros.module.symbols.code.tex
+2020/02/03 | 29800 | systems/texlive/tlnet/archive/jadetex.r53645.tar.xz
+2020/02/03 | 29795 | macros/latex/contrib/fontspec/fontspec-doc-fontsel.tex
+2020/02/03 | 29667 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
+2020/02/03 | 29289 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
+2020/02/03 | 29247 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
+2020/02/03 | 29150 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
+2020/02/03 | 2905600 | systems/texlive/tlnet/archive/texplate.r53637.tar.xz
+2020/02/03 | 28756 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
+2020/02/03 | 28518 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
+2020/02/03 | 2846 | macros/latex/contrib/fontspec/README.md
+2020/02/03 | 281547 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
+2020/02/03 | 281286 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
+2020/02/03 | 2794 | macros/luatex/generic/lualibs/NEWS
+2020/02/03 | 2789 | macros/latex/contrib/thuthesis/data/denotation.tex
+2020/02/03 | 27850 | macros/luatex/generic/lualibs/lualibs.dtx
+2020/02/03 | 276948 | systems/win32/miktex/tm/packages/supertabular.tar.lzma
+2020/02/03 | 27691 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
+2020/02/03 | 276862 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
+2020/02/03 | 275511 | macros/latex/contrib/filehook.zip
+2020/02/03 | 274 | macros/latex/contrib/filehook/README
+2020/02/03 | 272645 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
+2020/02/03 | 272338 | install/macros/luatex/generic/lualibs.tds.zip
+2020/02/03 | 27110 | macros/luatex/generic/luaotfload/fontloader-font-ocl.lua
+2020/02/03 | 26959 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
+2020/02/03 | 26744 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
+2020/02/03 | 26672 | systems/texlive/tlnet/archive/texdoc.r53643.tar.xz
+2020/02/03 | 26664 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
+2020/02/03 | 266229 | macros/latex/contrib/filehook/filehook.pdf
+2020/02/03 | 2656 | macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex
+2020/02/03 | 26504 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
+2020/02/03 | 264655 | macros/luatex/generic/lualibs.zip
+2020/02/03 | 26400 | macros/latex/contrib/fontspec/fontspec-code-keyval.dtx
+2020/02/03 | 25867 | macros/latex/contrib/fontspec/fontspec-doc-featset.tex
+2020/02/03 | 2585382 | install/macros/latex/required/babel-base.tds.zip
+2020/02/03 | 2579531 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
+2020/02/03 | 2541 | macros/luatex/generic/luaotfload/luaotfload-scripts.lua
+2020/02/03 | 2540 | macros/latex/contrib/chemmacros/README
+2020/02/03 | 25329 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
+2020/02/03 | 24846 | macros/luatex/generic/luaotfload/luaotfload-filelist.lua
+2020/02/03 | 247465 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
+2020/02/03 | 247083 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
+2020/02/03 | 246454 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
+2020/02/03 | 2463195 | systems/win32/miktex/tm/packages/amsmath.tar.lzma
+2020/02/03 | 2457332 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
+2020/02/03 | 2453 | macros/latex/contrib/physconst/CHANGELOG.md
+2020/02/03 | 24462 | macros/latex/contrib/chemmacros/chemmacros.history
+2020/02/03 | 2412 | macros/latex/contrib/chemmacros/chemmacros.module.all.code.tex
+2020/02/03 | 237465 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
+2020/02/03 | 2364048 | systems/texlive/tlnet/archive/amsmath.doc.r53640.tar.xz
+2020/02/03 | 23368 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
+2020/02/03 | 2331 | macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex
+2020/02/03 | 22966 | macros/luatex/generic/luaotfload/fontloader-font-oto.lua
+2020/02/03 | 22936 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
+2020/02/03 | 22921387 | install/macros/latex/latex-base.tds.zip
+2020/02/03 | 22541603 | systems/texlive/tlnet/install-tl.zip
+2020/02/03 | 224285 | macros/latex/contrib/physconst.zip
+2020/02/03 | 224212 | systems/texlive/tlnet/archive/tools.source.r53640.tar.xz
+2020/02/03 | 2241629 | macros/latex/contrib/thuthesis.zip
+2020/02/03 | 22175 | macros/luatex/generic/luaotfload/fontloader-l-file.lua
+2020/02/03 | 22175 | macros/luatex/generic/lualibs/lualibs-file.lua
+2020/02/03 | 21955 | macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua
+2020/02/03 | 21952 | systems/texlive/tlnet/archive/jsclasses.r53641.tar.xz
+2020/02/03 | 21932 | macros/latex/required/babel/base/bbcompat.dtx
+2020/02/03 | 21760 | macros/latex/contrib/fontspec/CHANGES.md
+2020/02/03 | 2163932 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+2020/02/03 | 2155 | macros/latex/contrib/fontspec/fontspec-code-load.dtx
+2020/02/03 | 21523 | macros/luatex/generic/luaotfload/scripts-demo.pdf
+2020/02/03 | 215106 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
+2020/02/03 | 21349 | macros/latex/contrib/chemmacros/chemmacros.module.orbital.code.tex
+2020/02/03 | 21159 | macros/latex/contrib/fontspec/fontspec-code-opentype.dtx
+2020/02/03 | 208326 | macros/latex/contrib/physconst/physconst.pdf
+2020/02/03 | 2080 | systems/texlive/tlnet/archive/lectures.doc.r53642.tar.xz
+2020/02/03 | 20768 | macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx
+2020/02/03 | 20651 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
+2020/02/03 | 2056 | macros/latex/contrib/physconst/physconst.ins
+2020/02/03 | 2053449 | systems/win32/miktex/tm/packages/graphics.tar.lzma
+2020/02/03 | 204929 | macros/latex/contrib/derivative.zip
+2020/02/03 | 20300 | macros/latex/contrib/thuthesis/spine.pdf
+2020/02/03 | 201968 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
+2020/02/03 | 20013 | macros/luatex/generic/luaotfload/fontloader-font-def.lua
+2020/02/03 | 199149 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
+2020/02/03 | 1988012 | systems/texlive/tlnet/archive/graphics.doc.r53640.tar.xz
+2020/02/03 | 1980 | macros/latex/contrib/fontspec/fontspec.ins
+2020/02/03 | 19795 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
+2020/02/03 | 1969 | macros/latex/contrib/acro/example_one.tex
+2020/02/03 | 19627 | macros/luatex/generic/luaotfload/luaotfload-init.lua
+2020/02/03 | 196152 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
+2020/02/03 | 196008 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
+2020/02/03 | 1955985 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
+2020/02/03 | 19511 | macros/luatex/generic/luaotfload/luaotfload-features.lua
+2020/02/03 | 195116 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
+2020/02/03 | 193617 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
+2020/02/03 | 19312 | systems/texlive/tlnet/archive/jadetex.source.r53645.tar.xz
+2020/02/03 | 19106 | macros/latex/contrib/fontspec/LICENSE
+2020/02/03 | 18925 | macros/luatex/generic/lualibs/lualibs-os.lua
+2020/02/03 | 18884 | macros/luatex/generic/luaotfload/luaotfload-letterspace.lua
+2020/02/03 | 18884496 | systems/win32/miktex/tm/packages/ltxbase.tar.lzma
+2020/02/03 | 18882936 | systems/win32/miktex/tm/packages/latex-base-dev.tar.lzma
+2020/02/03 | 18725 | macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex
+2020/02/03 | 18698843 | systems/texlive/tlnet/install-tl-windows.exe
+2020/02/03 | 18695 | macros/luatex/generic/luaotfload/fontloader-font-onr.lua
+2020/02/03 | 186854 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
+2020/02/03 | 185430 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
+2020/02/03 | 1852727 | install/macros/luatex/generic/luaotfload.tds.zip
+2020/02/03 | 184454 | macros/latex/contrib/derivative/derivative.pdf
+2020/02/03 | 1843433 | macros/luatex/generic/luaotfload.zip
+2020/02/03 | 184220 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
+2020/02/03 | 18418908 | systems/texlive/tlnet/archive/latex.doc.r53640.tar.xz
+2020/02/03 | 1828 | macros/luatex/generic/luaotfload/luaotfload.sty
+2020/02/03 | 182655 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
+2020/02/03 | 181402 | macros/luatex/generic/luaotfload/fontloader-font-ots.lua
+2020/02/03 | 18074 | macros/luatex/generic/luaotfload/luaotfload.conf.rst
+2020/02/03 | 1794 | macros/luatex/generic/luaotfload/fontloader-font-ini.lua
+2020/02/03 | 17760 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
+2020/02/03 | 177588 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
+2020/02/03 | 17666 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
+2020/02/03 | 1754911 | systems/win32/miktex/tm/packages/platex.tar.lzma
+2020/02/03 | 17373 | graphics/pgf/contrib/lie-hasse/lie-hasse.tex
+2020/02/03 | 17270 | macros/latex/contrib/fontspec/fontspec-code-user.dtx
+2020/02/03 | 171229 | systems/win32/miktex/tm/packages/zxjafont.tar.lzma
+2020/02/03 | 169187 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
+2020/02/03 | 1688121 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
+2020/02/03 | 1687 | macros/latex/contrib/fontspec/fontspec-example.tex
+2020/02/03 | 168702 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
+2020/02/03 | 168372 | systems/texlive/tlnet/archive/latex.r53640.tar.xz
+2020/02/03 | 167847 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
+2020/02/03 | 1669 | macros/latex/contrib/thuthesis/Makefile
+2020/02/03 | 1658152 | macros/latex/required/babel/base.zip
+2020/02/03 | 16553 | macros/luatex/generic/luaotfload/luaotfload-colors.lua
+2020/02/03 | 16548 | macros/luatex/generic/luaotfload/luaotfload.conf.5
+2020/02/03 | 165198 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
+2020/02/03 | 161117 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
+2020/02/03 | 16094627 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
+2020/02/03 | 1607220 | systems/texlive/tlnet/archive/platex.doc.r53638.tar.xz
+2020/02/03 | 16039 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
+2020/02/03 | 16013 | macros/luatex/generic/luaotfload/NEWS
+2020/02/03 | 15998 | macros/latex/contrib/acro/acro.history
+2020/02/03 | 15897 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
+2020/02/03 | 158504 | systems/texlive/tlnet/archive/texlive-docindex.doc.r53636.tar.xz
+2020/02/03 | 15837 | macros/luatex/generic/luaotfload/luaotfload-tool.rst
+2020/02/03 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
+2020/02/03 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
+2020/02/03 | 152112 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
+2020/02/03 | 15064 | systems/texlive/tlnet/archive/graphics.r53640.tar.xz
+2020/02/03 | 149812 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
+2020/02/03 | 149015 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
+2020/02/03 | 148452 | macros/latex/contrib/chemmacros/chemmacros-manual.tex
+2020/02/03 | 14805 | macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex
+2020/02/03 | 147102 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
+2020/02/03 | 14660 | systems/texlive/tlnet/archive/uplatex.r53639.tar.xz
+2020/02/03 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
+2020/02/03 | 14592 | macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex
+2020/02/03 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+2020/02/03 | 14383 | macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex
+2020/02/03 | 1425 | macros/latex/contrib/thuthesis/main.tex
+2020/02/03 | 14059 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
+2020/02/03 | 1383772 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
+2020/02/03 | 1377239 | install/macros/latex/contrib/fontspec.tds.zip
+2020/02/03 | 137137 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
+2020/02/03 | 13693 | macros/luatex/generic/luaotfload/luaotfload-harf-define.lua
+2020/02/03 | 1368 | macros/latex/contrib/acro/README
+2020/02/03 | 13674 | macros/latex/contrib/fontspec/fontspec-doc-api.tex
+2020/02/03 | 13573 | macros/luatex/generic/luaotfload/luaotfload-multiscript.lua
+2020/02/03 | 135525 | macros/latex/contrib/chemmacros/chemmacros4.sty
+2020/02/03 | 134866 | macros/luatex/generic/luaotfload/luaotfload-database.lua
+2020/02/03 | 133509 | macros/latex/contrib/acro/acro.sty
+2020/02/03 | 133208 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
+2020/02/03 | 132400 | systems/texlive/tlnet/archive/texdoc.doc.r53643.tar.xz
+2020/02/03 | 1316521 | macros/latex/contrib/fontspec.zip
+2020/02/03 | 13072 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
+2020/02/03 | 130396 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
+2020/02/03 | 129751 | macros/luatex/generic/lualibs/lualibs-basic-merged.lua
+2020/02/03 | 12895 | macros/latex/contrib/fontspec/fontspec-code-lang.dtx
+2020/02/03 | 12850 | macros/latex/contrib/chemmacros/chemmacros-manual.cls
+2020/02/03 | 12795 | macros/latex/contrib/fontspec/fontspec-doc-xetex.tex
+2020/02/03 | 12627 | macros/luatex/generic/luaotfload/luaotfload-tool.1
+2020/02/03 | 1246 | macros/latex/contrib/fontspec/fontspec.ltx
+2020/02/03 | 12465 | macros/latex/contrib/fontspec/fontspec-code-api.dtx
+2020/02/03 | 1241871 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
+2020/02/03 | 12304 | macros/luatex/generic/luaotfload/luaotfload-main.lua
+2020/02/03 | 122988 | systems/texlive/tlnet/archive/platex.source.r53638.tar.xz
+2020/02/03 | 1228602 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
+2020/02/03 | 12279 | macros/latex/contrib/fontspec/fontspec-code-math.dtx
+2020/02/03 | 12268 | macros/latex/contrib/acro/acro.definitions.tex
+2020/02/03 | 1217 | macros/latex/contrib/fontspec/fontspec-code-closing.dtx
+2020/02/03 | 12169 | macros/latex/contrib/acro/acro-manual.cls
+2020/02/03 | 1196 | macros/latex/contrib/derivative/README.md
+2020/02/03 | 119533 | macros/latex/contrib/thuthesis/thuthesis.dtx
+2020/02/03 | 11829 | macros/luatex/generic/luaotfload/fontloader-l-io.lua
+2020/02/03 | 11829 | macros/luatex/generic/lualibs/lualibs-io.lua
+2020/02/03 | 1181 | macros/latex/contrib/fontspec/fontspec-code.ltx
+2020/02/03 | 1170823 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
+2020/02/03 | 1169902 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
+2020/02/03 | 116815 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
+2020/02/03 | 1162 | macros/luatex/generic/luaotfload/luaotfload-embolden.lua
+2020/02/03 | 115498 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
+2020/02/03 | 114704 | systems/texlive/tlnet/archive/texplate.doc.r53637.tar.xz
+2020/02/03 | 11387 | macros/luatex/generic/luaotfload/luaotfload-log.lua
+2020/02/03 | 110888 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
+2020/02/03 | 1102554 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
+2020/02/03 | 11022 | macros/luatex/generic/luaotfload/luaotfload-resolvers.lua
+2020/02/03 | 1091557 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
+2020/02/03 | 1090590 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
+2020/02/03 | 1088735 | macros/latex/contrib/chemmacros.zip
+2020/02/03 | 108796 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
+2020/02/03 | 107999 | macros/luatex/generic/lualibs/lualibs-extended-merged.lua
+2020/02/03 | 10759 | macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex
+2020/02/03 | 10593 | macros/latex/contrib/chemmacros/chemmacros5.sty
+2020/02/03 | 1042656 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
+2020/02/03 | 1042357 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
+2020/02/03 | 102477 | macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua
+2020/02/03 | 102435 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
+2020/02/03 | 1009096 | systems/win32/miktex/tm/packages/jsclasses.tar.lzma
+2020/02/03 | 100602 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
2020/02/02 | 9908 | macros/latex-dev/base/ltvers.dtx
2020/02/02 | 9712 | language/japanese/platex/kinsoku.dtx
2020/02/02 | 966 | macros/latex/contrib/supertabular/README
-2020/02/02 | 96239 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma
2020/02/02 | 953 | support/texplate/source/main/resources/org/islandoftex/texplate/templates/texplate-article.toml
2020/02/02 | 950047 | macros/latex-dev/base/ltnews.pdf
-2020/02/02 | 94285 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma
-2020/02/02 | 94221 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma
-2020/02/02 | 937057 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma
2020/02/02 | 934 | language/japanese/uplatex/uplfmt.ins
2020/02/02 | 934905 | language/japanese/uplatex.zip
-2020/02/02 | 93455 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma
2020/02/02 | 932652 | systems/texlive/tlnet/archive/xepersian.doc.r53625.tar.xz
-2020/02/02 | 932472 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma
-2020/02/02 | 92932 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma
-2020/02/02 | 92153 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma
2020/02/02 | 91756 | macros/latex/contrib/jsclasses/jslogo.pdf
2020/02/02 | 91404 | systems/texlive/tlnet/archive/xepersian.source.r53625.tar.xz
-2020/02/02 | 91183 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma
-2020/02/02 | 91162 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma
2020/02/02 | 9064 | systems/texlive/tlnet/archive/ducksay.r53631.tar.xz
2020/02/02 | 899 | macros/latex/contrib/secnum/README.md
2020/02/02 | 898149 | systems/win32/miktex/tm/packages/chemformula.tar.lzma
2020/02/02 | 8980 | support/texplate/source/main/kotlin/org/islandoftex/texplate/TemplateProcessing.kt
2020/02/02 | 8846 | macros/latex/contrib/lectures.zip
2020/02/02 | 883186 | systems/win32/miktex/tm/packages/baskervaldx.tar.lzma
-2020/02/02 | 87334 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma
2020/02/02 | 873148 | systems/texlive/tlnet/archive/chemformula.doc.r53624.tar.xz
-2020/02/02 | 87208 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma
-2020/02/02 | 86706 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma
2020/02/02 | 867066 | language/japanese/platex/pldoc.pdf
2020/02/02 | 86516 | macros/latex/contrib/jsclasses/jsverb.pdf
2020/02/02 | 8623 | macros/latex/contrib/jsclasses/jsverb.dtx
2020/02/02 | 861 | language/japanese/platex/pl209.ins
2020/02/02 | 856 | macros/latex/contrib/supertabular/CATALOG
-2020/02/02 | 8462 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma
-2020/02/02 | 84627 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma
2020/02/02 | 8288 | language/japanese/uplatex/uplvers.dtx
2020/02/02 | 812 | support/texplate/source/main/resources/org/islandoftex/texplate/templates/texplate-standalone.toml
2020/02/02 | 8107 | support/texplate/README.md
-2020/02/02 | 80497 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma
-2020/02/02 | 79709 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma
2020/02/02 | 7818 | language/japanese/platex/plnewsc01.tex
-2020/02/02 | 77972 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma
-2020/02/02 | 77962 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma
-2020/02/02 | 77520 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma
2020/02/02 | 7614 | language/japanese/platex/pl209.dtx
-2020/02/02 | 7494 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma
-2020/02/02 | 73629 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma
2020/02/02 | 735 | support/texplate/source/main/kotlin/org/islandoftex/texplate/Main.kt
-2020/02/02 | 72647 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma
-2020/02/02 | 72521 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma
-2020/02/02 | 71725 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma
-2020/02/02 | 70231 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma
2020/02/02 | 6999063 | install/macros/latex-dev/required/latex-tools-dev.tds.zip
2020/02/02 | 6997831 | install/macros/latex/required/latex-tools.tds.zip
2020/02/02 | 6995 | language/japanese/platex/jltxdoc.dtx
2020/02/02 | 69952 | systems/texlive/tlnet/archive/xint.r53622.tar.xz
-2020/02/02 | 69646 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma
2020/02/02 | 69337 | language/japanese/platex/platex.dtx
-2020/02/02 | 69222 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma
2020/02/02 | 691 | support/texplate/source/main/kotlin/org/islandoftex/texplate/exceptions/InvalidKeySetException.kt
2020/02/02 | 6914369 | macros/latex/required/tools.zip
2020/02/02 | 6914353 | macros/latex-dev/required/tools.zip
-2020/02/02 | 68667 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma
2020/02/02 | 683 | support/texplate/source/main/kotlin/org/islandoftex/texplate/exceptions/TemplateMergingException.kt
2020/02/02 | 68295 | macros/latex/required/tools/tools-overview.pdf
2020/02/02 | 68295 | macros/latex-dev/required/tools/tools-overview.pdf
2020/02/02 | 67501 | macros/latex/contrib/jsclasses/okuverb.pdf
-2020/02/02 | 67299 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma
-2020/02/02 | 67251 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma
2020/02/02 | 6717 | language/japanese/platex/plnewsc06.tex
2020/02/02 | 671108 | systems/texlive/tlnet/archive/baskervaldx.r53626.tar.xz
-2020/02/02 | 669930 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma
-2020/02/02 | 652 | systems/win32/miktex/tm/packages/next/pr.ini
2020/02/02 | 651 | support/texplate/source/main/kotlin/org/islandoftex/texplate/exceptions/InvalidTemplateException.kt
2020/02/02 | 65149 | systems/win32/miktex/tm/packages/polexpr.tar.lzma
-2020/02/02 | 65060 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma
2020/02/02 | 645809 | macros/latex-dev/base/doc.pdf
-2020/02/02 | 64394 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma
-2020/02/02 | 63264 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma
-2020/02/02 | 63141 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma
-2020/02/02 | 63080 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma
-2020/02/02 | 62844 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma
+2020/02/02 | 64233068 | systems/win32/w32tex/biblatex-biber.tar.xz
2020/02/02 | 626 | language/japanese/uplatex/README.md
2020/02/02 | 62303 | macros/latex/contrib/supertabular/supertabular.dtx
-2020/02/02 | 61731 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma
-2020/02/02 | 615421 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma
-2020/02/02 | 61520 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma
-2020/02/02 | 61353 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma
2020/02/02 | 6087 | macros/latex/contrib/jsclasses/okuverb.dtx
2020/02/02 | 607 | support/texplate/source/main/kotlin/org/islandoftex/texplate/util/HandlerUtils.kt
2020/02/02 | 6069 | language/japanese/platex/plnews06.tex
-2020/02/02 | 60283 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma
2020/02/02 | 598 | language/japanese/platex/platexrelease.ins
-2020/02/02 | 59445 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64-2.9.tar.lzma
-2020/02/02 | 58829 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma
-2020/02/02 | 57746 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma
-2020/02/02 | 575757 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma
+2020/02/02 | 58728 | graphics/pgf/contrib/lie-hasse/lie-hasse.sty
+2020/02/02 | 581104 | systems/win32/w32tex/ChangeLog
2020/02/02 | 574 | support/texplate/scripts/texplate.sh
-2020/02/02 | 57201 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma
-2020/02/02 | 56730 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma
2020/02/02 | 565 | language/japanese/platex/pldocs.ins
-2020/02/02 | 56398 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma
-2020/02/02 | 563517 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma
-2020/02/02 | 560780 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma
2020/02/02 | 555 | language/japanese/uplatex/upldocs.ins
2020/02/02 | 5500495 | systems/win32/miktex/tm/packages/mpfonts.tar.lzma
-2020/02/02 | 54891 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma
-2020/02/02 | 545143 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma
2020/02/02 | 5446 | support/texplate/source/main/kotlin/org/islandoftex/texplate/util/MergingUtils.kt
2020/02/02 | 542292 | language/japanese/uplatex/upldoc.pdf
-2020/02/02 | 54053 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma
-2020/02/02 | 539358 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma
2020/02/02 | 535 | support/texplate/source/main/kotlin/org/islandoftex/texplate/model/handlers/CSVListHandler.kt
2020/02/02 | 53584 | language/japanese/platex/plext.dtx
-2020/02/02 | 53437 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-2.9.tar.lzma
-2020/02/02 | 533353 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma
2020/02/02 | 526206 | macros/latex-dev/base/classes.pdf
-2020/02/02 | 524383 | systems/win32/miktex/tm/packages/files.csv.lzma
-2020/02/02 | 524162 | systems/win32/miktex/tm/packages/next/files.csv.lzma
-2020/02/02 | 52118 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma
-2020/02/02 | 52069 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma
2020/02/02 | 5163 | language/japanese/platex/plnewsc04.tex
2020/02/02 | 510636 | systems/win32/miktex/tm/packages/ducksay.tar.lzma
-2020/02/02 | 50867 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma
-2020/02/02 | 50844 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma
-2020/02/02 | 50456 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma
2020/02/02 | 500193 | macros/latex-dev/base/ltnews31.pdf
-2020/02/02 | 498536 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma
2020/02/02 | 4977 | language/japanese/platex/Makefile
-2020/02/02 | 49767 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma
-2020/02/02 | 49303 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma
2020/02/02 | 491739 | systems/win32/miktex/tm/packages/babel-french.tar.lzma
2020/02/02 | 491252 | macros/latex-dev/base/ltnews30.pdf
2020/02/02 | 490908 | macros/latex/required/tools/multicol.pdf
2020/02/02 | 490908 | macros/latex-dev/required/tools/multicol.pdf
-2020/02/02 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+2020/02/02 | 48778520 | systems/win32/w32tex/xetex-w32.tar.xz
2020/02/02 | 486044 | macros/latex/required/tools/array.pdf
2020/02/02 | 486044 | macros/latex-dev/required/tools/array.pdf
2020/02/02 | 482131 | macros/latex/contrib/jsclasses/jsclasses.pdf
2020/02/02 | 48209 | language/japanese/uplatex/uplatex.dtx
2020/02/02 | 480725 | macros/latex/required/amsmath/amsldoc.pdf
-2020/02/02 | 4803 | systems/win32/miktex/tm/packages/next/miktex-config-2.9.tar.lzma
-2020/02/02 | 47983 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma
2020/02/02 | 479580 | systems/texlive/tlnet/archive/ducksay.doc.r53631.tar.xz
2020/02/02 | 469277 | macros/latex-dev/base/docstrip.pdf
2020/02/02 | 4685 | language/japanese/platex/plnews02.tex
-2020/02/02 | 45771 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma
-2020/02/02 | 457416 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma
-2020/02/02 | 45700 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma
-2020/02/02 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
-2020/02/02 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc
-2020/02/02 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc
-2020/02/02 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc
-2020/02/02 | 45596 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma
-2020/02/02 | 45454 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma
2020/02/02 | 452 | support/texplate/source/main/kotlin/org/islandoftex/texplate/model/handlers/BooleanHandler.kt
-2020/02/02 | 450197 | systems/win32/miktex/tm/packages/next/miktex-doc-2.9.tar.lzma
-2020/02/02 | 44830 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma
-2020/02/02 | 43428 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma
2020/02/02 | 433013 | macros/latex-dev/base/ltnews29.pdf
2020/02/02 | 430478 | macros/latex/required/amsmath/testmath.pdf
-2020/02/02 | 42909 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma
-2020/02/02 | 42578 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma
+2020/02/02 | 42982644 | systems/win32/w32tex/web2c-w32.tar.xz
2020/02/02 | 42448 | systems/texlive/tlnet/archive/polexpr.doc.r53633.tar.xz
-2020/02/02 | 41870 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma
-2020/02/02 | 41833 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma
2020/02/02 | 4153 | language/japanese/platex/plnewsc08.tex
-2020/02/02 | 40961 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma
2020/02/02 | 40712 | systems/texlive/tlnet/archive/xepersian.r53625.tar.xz
-2020/02/02 | 40698 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma
2020/02/02 | 404292 | macros/latex-dev/base/usrguide.pdf
2020/02/02 | 40423 | macros/latex/contrib/jsclasses/okumacro.dtx
-2020/02/02 | 3949241 | systems/texlive/tlnet/install-tl-unx.tar.gz
2020/02/02 | 394402 | macros/latex-dev/base/latexchanges.pdf
-2020/02/02 | 391624 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma
-2020/02/02 | 38854 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma
-2020/02/02 | 38793 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma
-2020/02/02 | 387847 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-x64-2.9.tar.lzma
2020/02/02 | 3877 | language/japanese/platex/plnews08.tex
2020/02/02 | 387581 | systems/win32/miktex/tm/packages/pxchfon.tar.lzma
2020/02/02 | 384759 | macros/latex/contrib/secnum.zip
@@ -191,25 +550,18 @@
2020/02/02 | 3713 | language/japanese/platex/plnewsc02.tex
2020/02/02 | 368236 | macros/latex-dev/base/ltnews28.pdf
2020/02/02 | 367426 | macros/latex-dev/base/fntguide.pdf
-2020/02/02 | 36632 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma
2020/02/02 | 366000 | systems/texlive/tlnet/archive/pxchfon.doc.r53629.tar.xz
-2020/02/02 | 36326 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma
2020/02/02 | 362843 | macros/latex-dev/base/ltnews26.pdf
2020/02/02 | 36010 | macros/latex-dev/base/ltnews18.pdf
2020/02/02 | 358112 | systems/texlive/tlnet/archive/lwarp.source.r53632.tar.xz
-2020/02/02 | 356075 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma
2020/02/02 | 355 | macros/latex/contrib/jsclasses/jsclasses.ins
2020/02/02 | 355032 | macros/latex/required/tools/longtable.pdf
2020/02/02 | 355032 | macros/latex-dev/required/tools/longtable.pdf
-2020/02/02 | 354758 | systems/win32/miktex/tm/packages/next/miktex-omega-bin-2.9.tar.lzma
2020/02/02 | 354745 | macros/latex/required/tools/varioref.pdf
2020/02/02 | 354745 | macros/latex-dev/required/tools/varioref.pdf
2020/02/02 | 352157 | macros/latex-dev/base/slides.pdf
2020/02/02 | 350 | support/texplate/source/main/kotlin/org/islandoftex/texplate/model/handlers/Handler.kt
-2020/02/02 | 349 | systems/win32/miktex/tm/packages/pr.ini
2020/02/02 | 3484 | language/japanese/platex/plnewsc11.tex
-2020/02/02 | 34847 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma
-2020/02/02 | 34842 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma
2020/02/02 | 346382 | macros/latex/required/tools/ftnright.pdf
2020/02/02 | 346382 | macros/latex-dev/required/tools/ftnright.pdf
2020/02/02 | 3461230 | systems/win32/miktex/tm/packages/bidi.tar.lzma
@@ -217,30 +569,20 @@
2020/02/02 | 346065 | macros/latex-dev/required/tools/calc.pdf
2020/02/02 | 341316 | systems/win32/miktex/tm/packages/biblatex-apa.tar.lzma
2020/02/02 | 339530 | macros/latex-dev/base/utf8ienc.pdf
-2020/02/02 | 33540 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma
-2020/02/02 | 33365 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma
2020/02/02 | 332844 | systems/texlive/tlnet/archive/xint.source.r53622.tar.xz
2020/02/02 | 3321 | language/japanese/platex/plnewsc03.tex
-2020/02/02 | 328735 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma
2020/02/02 | 328039 | macros/latex/required/tools/theorem.pdf
2020/02/02 | 328039 | macros/latex-dev/required/tools/theorem.pdf
2020/02/02 | 3248 | support/texplate/source/main/kotlin/org/islandoftex/texplate/model/Template.kt
-2020/02/02 | 32362 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma
2020/02/02 | 3231639 | support/texplate/scripts/texplate.jar
-2020/02/02 | 32232 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma
-2020/02/02 | 321970 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma
2020/02/02 | 3197 | language/japanese/platex/plnewsc13.tex
2020/02/02 | 3196 | systems/win32/miktex/tm/packages/bxghost.tar.lzma
2020/02/02 | 3194 | language/japanese/platex/plnews.cls
2020/02/02 | 317280 | systems/texlive/tlnet/archive/biblatex-apa.doc.r53630.tar.xz
-2020/02/02 | 31245 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma
-2020/02/02 | 31149 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma
2020/02/02 | 3106579 | macros/latex-dev/base/source2e.pdf
2020/02/02 | 310569 | macros/latex/required/graphics/grfguide.pdf
2020/02/02 | 310569 | macros/latex-dev/required/graphics/grfguide.pdf
2020/02/02 | 310116 | macros/latex-dev/base/letter.pdf
-2020/02/02 | 310037 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma
-2020/02/02 | 30996 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma
2020/02/02 | 308832 | macros/latex/required/tools/verbatim.pdf
2020/02/02 | 308832 | macros/latex-dev/required/tools/verbatim.pdf
2020/02/02 | 3082654 | install/support/texplate.tds.zip
@@ -249,52 +591,34 @@
2020/02/02 | 306787 | macros/latex-dev/required/tools/bm.pdf
2020/02/02 | 304111 | macros/latex-dev/base/ltluatex.pdf
2020/02/02 | 302843 | macros/latex-dev/base/ltnews22.pdf
-2020/02/02 | 30218 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma
2020/02/02 | 2999 | language/japanese/platex/plnewsc09.tex
2020/02/02 | 299994 | systems/win32/miktex/tm/packages/modes.tar.lzma
2020/02/02 | 299980 | macros/latex-dev/base/inputenc.pdf
2020/02/02 | 2988425 | systems/win32/miktex/tm/packages/lwarp.tar.lzma
2020/02/02 | 298165 | language/japanese/platex/platex.pdf
-2020/02/02 | 29666 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma
2020/02/02 | 2948 | language/japanese/platex/plnewsc10.tex
2020/02/02 | 2931 | language/japanese/platex/plnews04.tex
-2020/02/02 | 29289 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma
-2020/02/02 | 29254 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma
-2020/02/02 | 29136 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma
2020/02/02 | 289788 | macros/latex/required/graphics/graphics.pdf
2020/02/02 | 289788 | macros/latex-dev/required/graphics/graphics.pdf
2020/02/02 | 28885 | support/texplate/doc/texplate-manual.tex
-2020/02/02 | 28754 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma
2020/02/02 | 283330 | macros/latex-dev/base/ltnews20.pdf
-2020/02/02 | 281512 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma
-2020/02/02 | 281251 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma
2020/02/02 | 2789 | macros/latex/contrib/jsclasses/Makefile
-2020/02/02 | 27822 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma
-2020/02/02 | 276777 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma
2020/02/02 | 2763 | language/japanese/platex/plnews03.tex
2020/02/02 | 274461 | macros/latex-dev/base/ltnews23.pdf
2020/02/02 | 273653 | macros/latex-dev/base/tlc2.pdf
2020/02/02 | 273304 | macros/latex-dev/base/cmfonts.pdf
2020/02/02 | 272983 | macros/latex/contrib/supertabular.zip
-2020/02/02 | 272528 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma
-2020/02/02 | 26893 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma
2020/02/02 | 268843 | macros/latex/required/graphics/drivers.pdf
2020/02/02 | 268843 | macros/latex-dev/required/graphics/drivers.pdf
-2020/02/02 | 26773 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma
2020/02/02 | 267213 | macros/latex-dev/base/fix-cm.pdf
-2020/02/02 | 26651 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma
2020/02/02 | 2654475 | install/macros/latex/required/latex-amsmath.tds.zip
-2020/02/02 | 26505 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma
2020/02/02 | 2623593 | macros/latex/required/amsmath.zip
-2020/02/02 | 26186 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma
2020/02/02 | 259323 | macros/latex/required/tools/tabularx.pdf
2020/02/02 | 259323 | macros/latex-dev/required/tools/tabularx.pdf
-2020/02/02 | 2581141 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma
2020/02/02 | 2551525 | install/macros/latex-dev/required/latex-graphics-dev.tds.zip
2020/02/02 | 2550923 | install/macros/latex/required/latex-graphics.tds.zip
2020/02/02 | 254349 | macros/latex/contrib/supertabular/supertabular.pdf
2020/02/02 | 253 | language/japanese/platex/platex.ini
-2020/02/02 | 25318 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma
2020/02/02 | 2530 | support/texplate/source/main/kotlin/org/islandoftex/texplate/util/MessageUtils.kt
2020/02/02 | 252646 | macros/latex-dev/base/ltnews24.pdf
2020/02/02 | 251 | language/japanese/uplatex/uplatex.ini
@@ -307,48 +631,38 @@
2020/02/02 | 2503 | support/texplate/source/main/kotlin/org/islandoftex/texplate/model/Configuration.kt
2020/02/02 | 2502 | support/texplate/source/main/kotlin/org/islandoftex/texplate/util/PathUtils.kt
2020/02/02 | 2497 | language/japanese/zxjafont/README-ja.md
-2020/02/02 | 247650 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma
-2020/02/02 | 246959 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma
2020/02/02 | 246939 | macros/latex/required/tools/layout.pdf
2020/02/02 | 246939 | macros/latex-dev/required/tools/layout.pdf
2020/02/02 | 2468992 | systems/texlive/tlnet/archive/lwarp.doc.r53632.tar.xz
-2020/02/02 | 246425 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma
-2020/02/02 | 2458841 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma
2020/02/02 | 2453 | macros/latex/contrib/lectures/README.md
2020/02/02 | 24392 | systems/texlive/tlnet/archive/polexpr.r53633.tar.xz
2020/02/02 | 242793 | macros/latex/required/tools/showkeys.pdf
2020/02/02 | 242793 | macros/latex-dev/required/tools/showkeys.pdf
2020/02/02 | 2421 | language/japanese/platex/plnewsc12.tex
-2020/02/02 | 24049 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma
2020/02/02 | 239763 | macros/latex-dev/base/ltnews27.pdf
2020/02/02 | 238183 | macros/latex-dev/base/lb2.pdf
2020/02/02 | 238011 | macros/latex/required/tools/xspace.pdf
2020/02/02 | 238011 | macros/latex-dev/required/tools/xspace.pdf
-2020/02/02 | 237406 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma
2020/02/02 | 23692 | systems/texlive/tlnet/archive/biblatex-apa.r53630.tar.xz
2020/02/02 | 235074 | macros/latex-dev/base/ltnews19.pdf
-2020/02/02 | 23383 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma
2020/02/02 | 233496 | macros/latex-dev/base/ltnews21.pdf
2020/02/02 | 232502 | macros/latex/required/graphics/graphicx.pdf
2020/02/02 | 232502 | macros/latex-dev/required/graphics/graphicx.pdf
2020/02/02 | 2313 | language/japanese/platex/plnews05.tex
-2020/02/02 | 22936 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma
2020/02/02 | 22933590 | install/macros/latex-dev/latex-base-dev.tds.zip
2020/02/02 | 2290891 | systems/win32/miktex/tm/packages/xint.tar.lzma
2020/02/02 | 226894 | macros/latex-dev/base/modguide.pdf
2020/02/02 | 226636 | macros/latex-dev/base/cfgguide.pdf
2020/02/02 | 226444 | language/japanese/uplatex/uplatex.pdf
-2020/02/02 | 22541603 | systems/texlive/tlnet/install-tl.zip
2020/02/02 | 22515003 | macros/latex/base.zip
2020/02/02 | 22514411 | macros/latex-dev/base.zip
+2020/02/02 | 22477816 | systems/win32/w32tex/cjkzr.tar.xz
2020/02/02 | 223564 | macros/latex-dev/base/cyrguide.pdf
2020/02/02 | 222531 | macros/latex/required/graphics/keyval.pdf
2020/02/02 | 222531 | macros/latex-dev/required/graphics/keyval.pdf
2020/02/02 | 220731 | macros/latex-dev/base/ltxdoc.pdf
2020/02/02 | 216907 | macros/latex-dev/base/proc.pdf
-2020/02/02 | 2163408 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
2020/02/02 | 215964 | macros/latex-dev/base/slifonts.pdf
-2020/02/02 | 215591 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma
2020/02/02 | 21505 | macros/latex/contrib/lectures/lectures.cls
2020/02/02 | 213086 | macros/latex/contrib/jsclasses/okumacro.pdf
2020/02/02 | 212737 | macros/latex/required/tools/trace.pdf
@@ -356,7 +670,6 @@
2020/02/02 | 211488 | systems/texlive/tlnet/archive/baskervaldx.doc.r53626.tar.xz
2020/02/02 | 2102 | language/japanese/zxjafont/README.md
2020/02/02 | 2092 | macros/latex-dev/required/graphics/README.md
-2020/02/02 | 20711 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma
2020/02/02 | 205348 | systems/texlive/tlnet/archive/baskervillef.doc.r53627.tar.xz
2020/02/02 | 205211 | macros/latex-dev/base/ifthen.pdf
2020/02/02 | 204547 | macros/latex-dev/base/ltx3info.pdf
@@ -366,24 +679,16 @@
2020/02/02 | 202897 | macros/latex-dev/base/lgc2.pdf
2020/02/02 | 20276 | systems/texlive/tlnet/archive/ducksay.source.r53631.tar.xz
2020/02/02 | 202434 | macros/latex-dev/base/nfssfont.pdf
-2020/02/02 | 201852 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma
2020/02/02 | 201521 | macros/latex/required/graphics/color.pdf
2020/02/02 | 201521 | macros/latex-dev/required/graphics/color.pdf
2020/02/02 | 2006 | language/japanese/platex/README.md
2020/02/02 | 200043 | macros/latex/required/amsmath/amstext.pdf
-2020/02/02 | 199137 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma
2020/02/02 | 199056 | macros/latex/required/tools/enumerate.pdf
2020/02/02 | 199056 | macros/latex-dev/required/tools/enumerate.pdf
-2020/02/02 | 19798 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma
2020/02/02 | 196332 | macros/latex-dev/base/ltnews25.pdf
-2020/02/02 | 196194 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma
-2020/02/02 | 196063 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma
2020/02/02 | 1958 | language/japanese/uplatex/README_uplatex.txt
2020/02/02 | 195881 | macros/latex-dev/base/exscale.pdf
-2020/02/02 | 1952764 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma
-2020/02/02 | 194998 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma
2020/02/02 | 194580 | macros/latex/contrib/jsclasses/jsclasses.dtx
-2020/02/02 | 193709 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma
2020/02/02 | 192305 | macros/latex-dev/base/latexsym.pdf
2020/02/02 | 191699 | macros/latex/required/graphics/trig.pdf
2020/02/02 | 191699 | macros/latex-dev/required/graphics/trig.pdf
@@ -392,15 +697,10 @@
2020/02/02 | 1898238 | install/language/japanese/platex.tds.zip
2020/02/02 | 18932 | systems/texlive/tlnet/archive/pxchfon.r53629.tar.xz
2020/02/02 | 1884752 | systems/texlive/tlnet/archive/xint.doc.r53622.tar.xz
-2020/02/02 | 18698949 | systems/texlive/tlnet/install-tl-windows.exe
-2020/02/02 | 186832 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma
2020/02/02 | 18649 | language/japanese/zxjafont/zxjafont.sty
2020/02/02 | 18604 | systems/texlive/tlnet/archive/chemformula.r53624.tar.xz
-2020/02/02 | 185604 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma
-2020/02/02 | 184252 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma
2020/02/02 | 183440 | macros/latex/required/tools/delarray.pdf
2020/02/02 | 183440 | macros/latex-dev/required/tools/delarray.pdf
-2020/02/02 | 182579 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma
2020/02/02 | 181386 | macros/latex-dev/base/syntonly.pdf
2020/02/02 | 1811199 | systems/win32/miktex/tm/packages/unicode-math.tar.lzma
2020/02/02 | 179543 | macros/latex/required/tools/fileerr.pdf
@@ -410,25 +710,17 @@
2020/02/02 | 1784579 | language/japanese/platex.zip
2020/02/02 | 178219 | macros/latex-dev/base/alltt.pdf
2020/02/02 | 177606 | language/japanese/platex/exppl2e.pdf
-2020/02/02 | 17752 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma
-2020/02/02 | 177513 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma
2020/02/02 | 17699 | language/japanese/uplatex/uplfonts.dtx
-2020/02/02 | 17661 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma
2020/02/02 | 175685 | macros/latex/required/tools/hhline.pdf
2020/02/02 | 175685 | macros/latex-dev/required/tools/hhline.pdf
2020/02/02 | 170527 | language/japanese/zxjafont.zip
2020/02/02 | 169764 | macros/latex/required/tools/shellesc.pdf
2020/02/02 | 169764 | macros/latex-dev/required/tools/shellesc.pdf
2020/02/02 | 1695 | support/texplate/source/main/kotlin/org/islandoftex/texplate/util/ValidatorUtils.kt
-2020/02/02 | 169531 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma
-2020/02/02 | 1692033 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma
2020/02/02 | 169053 | systems/win32/miktex/tm/packages/sansmathaccent.tar.lzma
2020/02/02 | 168006 | language/japanese/uplatex/ujclasses.dtx
-2020/02/02 | 167803 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma
-2020/02/02 | 167123 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma
2020/02/02 | 1666 | macros/latex-dev/required/tools/README.md
2020/02/02 | 165748 | macros/latex/required/amsmath/amscd.pdf
-2020/02/02 | 164902 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma
2020/02/02 | 164347 | macros/latex/required/amsmath/amsgen.pdf
2020/02/02 | 163793 | macros/latex/required/tools/xr.pdf
2020/02/02 | 163793 | macros/latex-dev/required/tools/xr.pdf
@@ -441,12 +733,8 @@
2020/02/02 | 161657 | macros/latex-dev/required/tools/somedefs.pdf
2020/02/02 | 161330 | macros/latex/required/amsmath/amsbsy.pdf
2020/02/02 | 161072 | macros/latex-dev/base/ltnews13.pdf
-2020/02/02 | 16094457 | systems/texlive/tlnet/tlpkg/texlive.tlpdb
2020/02/02 | 160706 | language/japanese/zxjafont/zxjafont.pdf
2020/02/02 | 160679 | macros/latex-dev/base/makeindx.pdf
-2020/02/02 | 160573 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma
-2020/02/02 | 16046 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma
-2020/02/02 | 15896 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma
2020/02/02 | 1586 | language/japanese/uplatex/LICENSE
2020/02/02 | 158659 | language/japanese/platex/platex-en.pdf
2020/02/02 | 15837 | language/japanese/zxjafont/zxjafont.tex
@@ -461,10 +749,6 @@
2020/02/02 | 154995 | macros/latex-dev/base/ltnews17.pdf
2020/02/02 | 154491 | macros/latex/required/graphics/epsfig.pdf
2020/02/02 | 154491 | macros/latex-dev/required/graphics/epsfig.pdf
-2020/02/02 | 154376 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma
-2020/02/02 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512
-2020/02/02 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512
-2020/02/02 | 152057 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma
2020/02/02 | 151360 | macros/latex-dev/base/manual.pdf
2020/02/02 | 150928 | macros/latex-dev/base/ltnews14.pdf
2020/02/02 | 150110 | macros/latex/required/graphics/lscape.pdf
@@ -472,11 +756,7 @@
2020/02/02 | 150027 | macros/latex-dev/base/ltnews01.pdf
2020/02/02 | 149122 | support/texdoc.zip
2020/02/02 | 1488 | language/japanese/platex/plcls.ins
-2020/02/02 | 148590 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma
2020/02/02 | 147946 | macros/latex-dev/base/ltnews10.pdf
-2020/02/02 | 147079 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma
-2020/02/02 | 145 | systems/texlive/tlnet/install-tl.zip.sha512
-2020/02/02 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
2020/02/02 | 14486 | macros/latex/contrib/secnum/secnum.dtx
2020/02/02 | 144786 | macros/latex/required/tools/indentfirst.pdf
2020/02/02 | 144786 | macros/latex-dev/required/tools/indentfirst.pdf
@@ -484,14 +764,11 @@
2020/02/02 | 1432 | macros/latex/contrib/jsclasses/README.md
2020/02/02 | 143176 | macros/latex/required/tools/fontsmpl.pdf
2020/02/02 | 143176 | macros/latex-dev/required/tools/fontsmpl.pdf
-2020/02/02 | 14039 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma
2020/02/02 | 139901 | macros/latex-dev/base/ltnews02.pdf
2020/02/02 | 139882 | macros/latex-dev/base/ltnews03.pdf
2020/02/02 | 1392 | macros/latex/contrib/jsclasses/LICENSE
-2020/02/02 | 1384312 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma
2020/02/02 | 13828153 | systems/win32/miktex/tm/packages/koma-script.tar.lzma
2020/02/02 | 137925 | macros/latex-dev/base/ltnews12.pdf
-2020/02/02 | 137225 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma
2020/02/02 | 136159 | macros/latex-dev/base/webcomp.pdf
2020/02/02 | 135839 | macros/latex-dev/base/ltnews16.pdf
2020/02/02 | 135744 | macros/latex/required/amsmath/technote.pdf
@@ -500,34 +777,20 @@
2020/02/02 | 13567 | macros/latex/contrib/supertabular/ChangeLog
2020/02/02 | 135427 | language/japanese/platex/plfonts.dtx
2020/02/02 | 133913 | macros/latex-dev/base/ltnews04.pdf
-2020/02/02 | 133213 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma
2020/02/02 | 133140 | macros/latex-dev/base/ltnews06.pdf
-2020/02/02 | 13060 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma
-2020/02/02 | 130294 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma
2020/02/02 | 129172 | macros/latex-dev/base/ltnews07.pdf
2020/02/02 | 129165 | macros/latex/required/amsmath/amsopn.pdf
2020/02/02 | 1280176 | systems/win32/miktex/tm/packages/baskervillef.tar.lzma
2020/02/02 | 1267972 | macros/latex-dev/base/encguide.pdf
2020/02/02 | 125169 | language/japanese/platex/platexrelease.pdf
-2020/02/02 | 1249897 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma
2020/02/02 | 123 | macros/latex/contrib/jsclasses/okumacro.ins
-2020/02/02 | 1229080 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma
2020/02/02 | 122094 | macros/latex-dev/base/ltnews15.pdf
2020/02/02 | 120216 | macros/latex-dev/base/ltnews09.pdf
2020/02/02 | 119 | macros/latex/contrib/jsclasses/okuverb.ins
-2020/02/02 | 1171231 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma
-2020/02/02 | 1170623 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma
2020/02/02 | 116 | macros/latex/contrib/jsclasses/jslogo.ins
2020/02/02 | 116774 | language/japanese/uplatex/uplatex-en.pdf
-2020/02/02 | 116724 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma
2020/02/02 | 115 | macros/latex/contrib/jsclasses/jsverb.ins
-2020/02/02 | 115638 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma
2020/02/02 | 11305 | macros/latex/contrib/jsclasses/jslogo.dtx
-2020/02/02 | 110904 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma
-2020/02/02 | 1102962 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma
-2020/02/02 | 1091936 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma
-2020/02/02 | 1091925 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma
-2020/02/02 | 108832 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma
2020/02/02 | 1087181 | install/macros/latex/contrib/jsclasses.tds.zip
2020/02/02 | 1073 | macros/latex/contrib/lectures/LICENSE
2020/02/02 | 1071848 | systems/texlive/tlnet/archive/baskervillef.r53627.tar.xz
@@ -539,14 +802,10 @@
2020/02/02 | 104948 | macros/latex-dev/base/ltnews11.pdf
2020/02/02 | 104886 | support/texplate/doc/texplate-manual.pdf
2020/02/02 | 104544 | macros/latex/required/amsmath/amsxtra.pdf
-2020/02/02 | 1043586 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma
2020/02/02 | 10430 | language/japanese/platex/plnewsc07.tex
2020/02/02 | 10426 | language/japanese/platex/plnews01.tex
-2020/02/02 | 1042535 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma
-2020/02/02 | 102474 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma
2020/02/02 | 101297 | macros/latex/required/amsmath/subeqn.pdf
2020/02/02 | 1012810 | install/language/japanese/uplatex.tds.zip
-2020/02/02 | 100580 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma
2020/02/02 | 1001845 | macros/latex/contrib/jsclasses.zip
2020/02/01 | 9875 | support/texdoc/script/texdoclib-score.tlu
2020/02/01 | 9871 | macros/latex/base/ltvers.dtx
@@ -612,7 +871,6 @@
2020/02/01 | 404292 | macros/latex/base/usrguide.pdf
2020/02/01 | 394402 | macros/latex/base/latexchanges.pdf
2020/02/01 | 394191 | macros/latex/contrib/biblatex-contrib/biblatex-apa.zip
-2020/02/01 | 392 | systems/texlive/tlnet/archive/texlive-docindex.r53611.tar.xz
2020/02/01 | 38725 | macros/xetex/latex/xepersian/ftxe-0.12.py
2020/02/01 | 3845 | support/texdoc/README.md
2020/02/01 | 3810 | support/texdoc/doc/texdoc.1
@@ -666,7 +924,6 @@
2020/02/01 | 235074 | macros/latex/base/ltnews19.pdf
2020/02/01 | 233496 | macros/latex/base/ltnews21.pdf
2020/02/01 | 2308774 | macros/generic/xint.zip
-2020/02/01 | 22929791 | install/macros/latex/latex-base.tds.zip
2020/02/01 | 226894 | macros/latex/base/modguide.pdf
2020/02/01 | 226636 | macros/latex/base/cfgguide.pdf
2020/02/01 | 223564 | macros/latex/base/cyrguide.pdf
@@ -706,7 +963,6 @@
2020/02/01 | 160679 | macros/latex/base/makeindx.pdf
2020/02/01 | 15976 | macros/xetex/latex/xepersian/dkun-0.3.py
2020/02/01 | 15867 | macros/xetex/latex/xepersian/dkun-0.4.py
-2020/02/01 | 158476 | systems/texlive/tlnet/archive/texlive-docindex.doc.r53611.tar.xz
2020/02/01 | 156541 | macros/latex/base/tulm.pdf
2020/02/01 | 156288 | macros/latex/base/graphpap.pdf
2020/02/01 | 154995 | macros/latex/base/ltnews17.pdf
@@ -904,7 +1160,6 @@
2020/01/31 | 584331 | macros/latex/contrib/l3kernel/expl3.pdf
2020/01/31 | 5840 | macros/latex-dev/base/ltnews15.tex
2020/01/31 | 5840 | macros/latex/base/ltnews15.tex
-2020/01/31 | 580911 | systems/win32/w32tex/ChangeLog
2020/01/31 | 5797 | macros/latex/required/tools/somedefs.dtx
2020/01/31 | 5797 | macros/latex-dev/required/tools/somedefs.dtx
2020/01/31 | 5777 | macros/latex-dev/base/ltnews16.tex
@@ -991,7 +1246,6 @@
2020/01/31 | 49394 | macros/latex/contrib/l3kernel/l3fp-expo.dtx
2020/01/31 | 4935 | macros/latex/contrib/l3kernel/l3news01.tex
2020/01/31 | 4904 | macros/latex/contrib/unicode-math/um-code-amsmath.dtx
-2020/01/31 | 48839608 | systems/win32/w32tex/xetex-w32.tar.xz
2020/01/31 | 4832 | macros/latex/contrib/unicode-math/um-code-msg.dtx
2020/01/31 | 47759 | macros/latex-dev/base/ltplain.dtx
2020/01/31 | 47759 | macros/latex/base/ltplain.dtx
@@ -1019,7 +1273,6 @@
2020/01/31 | 4343 | macros/latex/required/amsmath/amsxtra.dtx
2020/01/31 | 4326 | macros/latex-dev/base/cmfonts.ins
2020/01/31 | 4326 | macros/latex/base/cmfonts.ins
-2020/01/31 | 43183336 | systems/win32/w32tex/web2c-w32.tar.xz
2020/01/31 | 430816 | systems/win32/w32tex/win64/mftools-w64.tar.xz
2020/01/31 | 4304 | macros/latex-dev/base/ltalloc.dtx
2020/01/31 | 4304 | macros/latex/base/ltalloc.dtx
@@ -1208,7 +1461,6 @@
2020/01/31 | 227510 | macros/latex/contrib/l3kernel/l3syntax-changes.pdf
2020/01/31 | 22676 | macros/latex-dev/base/ltcounts.dtx
2020/01/31 | 22676 | macros/latex/base/ltcounts.dtx
-2020/01/31 | 22470680 | systems/win32/w32tex/cjkzr.tar.xz
2020/01/31 | 22457 | macros/latex-dev/base/cfgguide.tex
2020/01/31 | 22457 | macros/latex/base/cfgguide.tex
2020/01/31 | 2241 | macros/latex/contrib/jmlr/sample-books/bookLogo.png
@@ -1627,6 +1879,7 @@
2020/01/30 | 211442 | fonts/mpfonts/type3/mpfonts-cm/cmtt9.t3
2020/01/30 | 209118 | fonts/mpfonts/type3/mpfonts-cm/cmsltt10.t3
2020/01/30 | 208843 | macros/xetex/latex/bidi/bidi-doc.pdf
+2020/01/30 | 20606 | graphics/pgf/contrib/lie-hasse/lie-hasse.bib
2020/01/30 | 20174 | fonts/mpfonts/type3/mpfonts-cm/mathex.t3
2020/01/30 | 200283 | fonts/mpfonts/type3/mpfonts-cm/cmitt10.t3
2020/01/30 | 1961 | macros/xetex/latex/bidi/bidi-doc-plain-programming.ltx
@@ -1669,6 +1922,7 @@
2020/01/30 | 169748 | fonts/mpfonts/type3/mpfonts-cmfrak/dcfrak.t3
2020/01/30 | 1693 | macros/xetex/latex/bidi/picture.jpg
2020/01/30 | 1666 | macros/xetex/latex/bidi/bidi-doc-title.ltx
+2020/01/30 | 16603 | macros/luatex/generic/luaotfload/luaotfload-latex.tex
2020/01/30 | 163788 | fonts/mpfonts/type3/mpfonts-fge/fgerm10.t3
2020/01/30 | 156507 | macros/latex/contrib/babel-contrib/french/frenchb-doc.pdf
2020/01/30 | 1561 | macros/latex/contrib/babel-contrib/french/README.md
@@ -1884,8 +2138,6 @@
2020/01/28 | 7186 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaExercise.tex
2020/01/28 | 6639 | macros/latex/contrib/tuda-ci/tex/tudasize9pt.clo
2020/01/28 | 6594 | macros/latex/contrib/tuda-ci/tex/tudalettersize10pt.clo
-2020/01/28 | 64231716 | systems/win32/w32tex/biblatex-biber.tar.xz
-2020/01/28 | 6391123 | systems/texlive/tlnet/update-tlmgr-r53576.sh
2020/01/28 | 6341330 | macros/latex/contrib/tuda-ci.zip
2020/01/28 | 618259 | macros/latex/contrib/tuda-ci/doc/DEMO-TUDaBeamer.pdf
2020/01/28 | 6036 | macros/latex/contrib/tuda-ci/tex/tudabeamer.cls
@@ -1908,8 +2160,6 @@
2020/01/28 | 474 | macros/latex/contrib/nwejm/README.md
2020/01/28 | 46902 | macros/latex/contrib/hycolor/hycolor.dtx
2020/01/28 | 4632 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaLetter.tex
-2020/01/28 | 455 | systems/texlive/tlnet/update-tlmgr-r53576.sh.sha512.asc
-2020/01/28 | 455 | systems/texlive/tlnet/update-tlmgr-r53576.exe.sha512.asc
2020/01/28 | 4441 | macros/latex/contrib/tuda-ci/tex/tudacolors.def
2020/01/28 | 4328 | macros/latex/contrib/tuda-ci/tex/tuda-pgfplots.sty
2020/01/28 | 3891 | macros/latex/contrib/tuda-ci/tex/beamercolorthemeTUDa.sty
@@ -1927,7 +2177,6 @@
2020/01/28 | 2983 | macros/latex/contrib/pdfpages/pdfpages.ins
2020/01/28 | 2931 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaAnnouncement.tex
2020/01/28 | 292531 | macros/latex/contrib/pdfpages/pdfpages.pdf
-2020/01/28 | 2443863 | systems/texlive/tlnet/update-tlmgr-r53576.exe
2020/01/28 | 24099 | macros/latex/contrib/nwejm/source/nwejm-examples-template.dtx
2020/01/28 | 238982 | macros/latex/contrib/nwejm/doc/examples/article-in-french.pdf
2020/01/28 | 23243 | macros/latex/contrib/tuda-ci/tex/tudathesis.cfg
@@ -1958,282 +2207,7 @@
2020/01/28 | 1668 | macros/latex/contrib/tuda-ci/tex/tuda-a0paper.clo
2020/01/28 | 1621 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaBibliography.bib
2020/01/28 | 1611 | macros/latex/contrib/fmtcount/README
-2020/01/28 | 154 | systems/texlive/tlnet/update-tlmgr-r53576.exe.sha512
-2020/01/28 | 153 | systems/texlive/tlnet/update-tlmgr-r53576.sh.sha512
2020/01/28 | 14399 | macros/latex/contrib/tuda-ci/tex/tudaletter.cls
2020/01/28 | 1382 | macros/latex/contrib/pdfpages/README
2020/01/28 | 12470 | macros/latex/contrib/pdfpages/dummy-l.pdf
2020/01/28 | 10474 | macros/latex/contrib/tuda-ci/example/DEMO-TUDaSciPoster.tex
-2020/01/27 | 99544 | systems/texlive/tlnet/archive/physunits.doc.r53574.tar.xz
-2020/01/27 | 968120 | systems/texlive/tlnet/archive/kpathsea.doc.r53569.tar.xz
-2020/01/27 | 939105 | macros/luatex/generic/luatexja/doc/luatexja-ja.pdf
-2020/01/27 | 933 | macros/luatex/generic/luatexja/src/patches/lltjp-stfloats.sty
-2020/01/27 | 93396 | macros/latex/contrib/media9/doc/media9.tex
-2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.x86_64-solaris.r53577.tar.xz
-2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.x86_64-linux.r53577.tar.xz
-2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.x86_64-darwinlegacy.r53577.tar.xz
-2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.i386-linux.r53577.tar.xz
-2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz
-2020/01/27 | 920 | systems/texlive/tlnet/archive/texlive-scripts-extra.x86_64-darwin.r53577.tar.xz
-2020/01/27 | 920 | systems/texlive/tlnet/archive/texlive-scripts-extra.i386-solaris.r53577.tar.xz
-2020/01/27 | 920 | systems/texlive/tlnet/archive/texlive-scripts-extra.i386-freebsd.r53577.tar.xz
-2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.x86_64-linuxmusl.r53577.tar.xz
-2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.x86_64-cygwin.r53577.tar.xz
-2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.i386-cygwin.r53577.tar.xz
-2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz
-2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz
-2020/01/27 | 912 | systems/texlive/tlnet/archive/texlive-scripts-extra.i386-netbsd.r53577.tar.xz
-2020/01/27 | 912 | systems/texlive/tlnet/archive/texlive-scripts-extra.armhf-linux.r53577.tar.xz
-2020/01/27 | 902032 | systems/win32/miktex/tm/packages/mcf2graph.tar.lzma
-2020/01/27 | 896 | macros/luatex/generic/luatexja/tool/otf-KozMinPr6N-Regular.txt
-2020/01/27 | 8908 | macros/luatex/generic/luatexja/src/ltj-otf.lua
-2020/01/27 | 880812 | systems/texlive/tlnet/archive/mcf2graph.doc.r53550.tar.xz
-2020/01/27 | 86700 | systems/texlive/tlnet/archive/biblatex-oxref.source.r53571.tar.xz
-2020/01/27 | 8607 | macros/luatex/generic/luatexja/src/ltjltxdoc.dtx
-2020/01/27 | 85736 | systems/texlive/tlnet/archive/fontinst.r53562.tar.xz
-2020/01/27 | 84340 | systems/texlive/tlnet/archive/luatexja.source.r53575.tar.xz
-2020/01/27 | 835844 | systems/texlive/tlnet/archive/newtx.doc.r53549.tar.xz
-2020/01/27 | 8245268 | systems/win32/w32tex/newtxpx-boondoxfonts.tar.xz
-2020/01/27 | 8106 | macros/luatex/generic/luatexja/src/jfm-min.lua
-2020/01/27 | 809501 | macros/latex/contrib/knowledge.zip
-2020/01/27 | 804 | macros/luatex/generic/luatexja/tool/table_ivd_aj1.lua
-2020/01/27 | 79666 | macros/latex/contrib/media9/media9.sty
-2020/01/27 | 7936 | macros/latex/contrib/knowledge/knowledge-configuration.dtx
-2020/01/27 | 781784 | systems/texlive/tlnet/archive/clara.r53552.tar.xz
-2020/01/27 | 7710 | macros/luatex/generic/luatexja/tool/jfm-convert.lua
-2020/01/27 | 758512 | systems/texlive/tlnet/archive/knowledge.doc.r53572.tar.xz
-2020/01/27 | 7547 | macros/luatex/generic/luatexja/src/ltj-unicode-ccfix.lua
-2020/01/27 | 7541 | macros/luatex/generic/luatexja/src/addons/luatexja-ruby.sty
-2020/01/27 | 7453 | macros/luatex/generic/luatexja/src/ltj-math.lua
-2020/01/27 | 7429686 | install/macros/latex/contrib/media9.tds.zip
-2020/01/27 | 7424396 | macros/latex/contrib/media9.zip
-2020/01/27 | 721136 | macros/latex/contrib/knowledge/knowledge.pdf
-2020/01/27 | 69351 | macros/luatex/generic/luatexja/doc/ltjltxdoc.pdf
-2020/01/27 | 6891 | macros/luatex/generic/luatexja/src/addons/luatexja-otf.sty
-2020/01/27 | 6715 | macros/luatex/generic/luatexja/src/ltj-pretreat.lua
-2020/01/27 | 6699 | macros/latex/contrib/knowledge/knowledge-example.tex
-2020/01/27 | 617 | macros/luatex/generic/luatexja/src/patches/lltjp-array.sty
-2020/01/27 | 6060 | macros/luatex/generic/luatexja/tool/kyoikukanjiChars.tex
-2020/01/27 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-darwinlegacy.r53555.tar.xz
-2020/01/27 | 596 | systems/texlive/tlnet/archive/latex-bin-dev.r53553.tar.xz
-2020/01/27 | 592 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-linuxmusl.r53555.tar.xz
-2020/01/27 | 588 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-darwin.r53555.tar.xz
-2020/01/27 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-cygwin.r53555.tar.xz
-2020/01/27 | 588 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r53555.tar.xz
-2020/01/27 | 5889 | macros/luatex/generic/luatexja/src/ltj-lotf_aux.lua
-2020/01/27 | 5850 | macros/luatex/generic/luatexja/src/patches/lltjp-fontspec.sty
-2020/01/27 | 584 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-solaris.r53555.tar.xz
-2020/01/27 | 584 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r53555.tar.xz
-2020/01/27 | 584 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r53555.tar.xz
-2020/01/27 | 584 | systems/texlive/tlnet/archive/texlive-scripts.i386-freebsd.r53555.tar.xz
-2020/01/27 | 584 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r53555.tar.xz
-2020/01/27 | 584 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r53555.tar.xz
-2020/01/27 | 584 | systems/texlive/tlnet/archive/texlive-scripts.aarch64-linux.r53555.tar.xz
-2020/01/27 | 580 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-linux.r53555.tar.xz
-2020/01/27 | 580 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r53555.tar.xz
-2020/01/27 | 580 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r53555.tar.xz
-2020/01/27 | 580 | macros/luatex/generic/luatexja/tool/blocks2defcharrange.rb
-2020/01/27 | 5804 | systems/texlive/tlnet/archive/physunits.source.r53574.tar.xz
-2020/01/27 | 57332 | systems/texlive/tlnet/archive/ps2eps.doc.r53559.tar.xz
-2020/01/27 | 5681 | macros/luatex/generic/luatexja/src/patches/lltjp-tascmac.sty
-2020/01/27 | 551 | macros/luatex/generic/luatexja/tool/jfm-readable.rb
-2020/01/27 | 54427 | macros/luatex/generic/luatexja/src/ltj-jisx0208.lua
-2020/01/27 | 5403 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/README.md
-2020/01/27 | 5363606 | systems/win32/miktex/tm/packages/newtx.tar.lzma
-2020/01/27 | 532782 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.pdf
-2020/01/27 | 531845 | macros/luatex/generic/luatexja/doc/luatexja-en.pdf
-2020/01/27 | 528 | systems/texlive/tlnet/archive/collection-fontutils.r53559.tar.xz
-2020/01/27 | 5222 | macros/luatex/generic/luatexja/src/ltj-debug.lua
-2020/01/27 | 508065 | macros/luatex/generic/luatexja/doc/luatexja.dtx
-2020/01/27 | 5032 | systems/texlive/tlnet/archive/ps2eps.win32.r50155.tar.xz
-2020/01/27 | 501 | macros/luatex/generic/luatexja/src/patches/lltjp-preview.sty
-2020/01/27 | 49749 | macros/latex/contrib/media9/pdfbase.sty
-2020/01/27 | 486420 | systems/texlive/tlnet/archive/kpathsea.win32.r53577.tar.xz
-2020/01/27 | 485933 | macros/luatex/generic/luatexja/doc/luatexja-ruby.pdf
-2020/01/27 | 4808 | macros/luatex/generic/luatexja/src/jfm-tmin.lua
-2020/01/27 | 4732 | systems/texlive/tlnet/archive/texlive-scripts-extra.win32.r50155.tar.xz
-2020/01/27 | 47151 | macros/luatex/generic/luatexja/src/ltj-jfmglue.lua
-2020/01/27 | 4712 | systems/texlive/tlnet/archive/ps2eps.i386-solaris.r40549.tar.xz
-2020/01/27 | 470836 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxref.dtx
-2020/01/27 | 47004 | systems/texlive/tlnet/archive/kpathsea.i386-cygwin.r53577.tar.xz
-2020/01/27 | 4671 | macros/luatex/generic/luatexja/src/ltj-stack.lua
-2020/01/27 | 4664 | systems/texlive/tlnet/archive/ps2eps.x86_64-solaris.r41034.tar.xz
-2020/01/27 | 464 | systems/texlive/tlnet/archive/scheme-infraonly.r53569.tar.xz
-2020/01/27 | 4632 | systems/texlive/tlnet/archive/ps2eps.i386-cygwin.r50455.tar.xz
-2020/01/27 | 4564 | systems/texlive/tlnet/archive/ps2eps.x86_64-cygwin.r50889.tar.xz
-2020/01/27 | 4559 | macros/luatex/generic/luatexja/src/addons/luatexja-adjust.sty
-2020/01/27 | 455647 | macros/luatex/generic/luatexja/doc/ltjsclasses.pdf
-2020/01/27 | 45288 | systems/texlive/tlnet/archive/kpathsea.x86_64-cygwin.r53577.tar.xz
-2020/01/27 | 4528316 | systems/texlive/tlnet/archive/newtx.r53549.tar.xz
-2020/01/27 | 44697 | macros/latex/contrib/knowledge/knowledge-utils.dtx
-2020/01/27 | 4452 | macros/luatex/generic/luatexja/doc/jfm-ujisc33.lua
-2020/01/27 | 44268 | systems/texlive/tlnet/archive/kpathsea.x86_64-solaris.r53577.tar.xz
-2020/01/27 | 44180 | systems/texlive/tlnet/archive/kpathsea.x86_64-linuxmusl.r53577.tar.xz
-2020/01/27 | 441677 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnotes-doc.pdf
-2020/01/27 | 441421 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxyear-doc.pdf
-2020/01/27 | 43820 | macros/luatex/generic/luatexja/src/ltj-jfont.lua
-2020/01/27 | 4380 | systems/texlive/tlnet/archive/ps2eps.amd64-freebsd.r50445.tar.xz
-2020/01/27 | 437456 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxalph-doc.pdf
-2020/01/27 | 435717 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/oxnum-doc.pdf
-2020/01/27 | 4262 | macros/luatex/generic/luatexja/tool/kyoikukanji.txt
-2020/01/27 | 4224 | systems/texlive/tlnet/archive/ps2eps.i386-freebsd.r50473.tar.xz
-2020/01/27 | 42180 | systems/texlive/tlnet/archive/kpathsea.i386-linux.r53577.tar.xz
-2020/01/27 | 420 | systems/texlive/tlnet/archive/xelatex-dev.r53553.tar.xz
-2020/01/27 | 42024 | systems/texlive/tlnet/archive/kpathsea.amd64-freebsd.r53577.tar.xz
-2020/01/27 | 4172 | systems/texlive/tlnet/archive/ps2eps.i386-linux.r50281.tar.xz
-2020/01/27 | 4123 | macros/luatex/generic/luatexja/src/ltj-plain.sty
-2020/01/27 | 4112 | systems/texlive/tlnet/archive/ps2eps.amd64-netbsd.r48698.tar.xz
-2020/01/27 | 4104 | systems/texlive/tlnet/archive/ps2eps.x86_64-linux.r50281.tar.xz
-2020/01/27 | 410340 | systems/texlive/tlnet/archive/fontinst.source.r53562.tar.xz
-2020/01/27 | 4093 | macros/luatex/generic/luatexja/src/ltj-compat.lua
-2020/01/27 | 40908 | systems/texlive/tlnet/archive/kpathsea.i386-solaris.r53577.tar.xz
-2020/01/27 | 4068 | systems/texlive/tlnet/archive/ps2eps.x86_64-linuxmusl.r46840.tar.xz
-2020/01/27 | 40628 | systems/texlive/tlnet/archive/knowledge.source.r53572.tar.xz
-2020/01/27 | 40472 | systems/texlive/tlnet/archive/kpathsea.x86_64-darwin.r53577.tar.xz
-2020/01/27 | 3996 | systems/texlive/tlnet/archive/ps2eps.i386-netbsd.r50171.tar.xz
-2020/01/27 | 39812 | systems/texlive/tlnet/archive/kpathsea.x86_64-linux.r53577.tar.xz
-2020/01/27 | 3972 | systems/texlive/tlnet/archive/ps2eps.armhf-linux.r50150.tar.xz
-2020/01/27 | 39300 | systems/texlive/tlnet/archive/kpathsea.x86_64-darwinlegacy.r53577.tar.xz
-2020/01/27 | 392 | systems/texlive/tlnet/archive/cyrillic-bin.x86_64-linuxmusl.r53554.tar.xz
-2020/01/27 | 392691 | macros/luatex/generic/luatexja/doc/ltjclasses.pdf
-2020/01/27 | 388 | systems/texlive/tlnet/archive/cyrillic-bin.x86_64-darwin.r53554.tar.xz
-2020/01/27 | 388 | systems/texlive/tlnet/archive/cyrillic-bin.x86_64-darwinlegacy.r53554.tar.xz
-2020/01/27 | 388 | systems/texlive/tlnet/archive/cyrillic-bin.x86_64-cygwin.r53554.tar.xz
-2020/01/27 | 388 | systems/texlive/tlnet/archive/cyrillic-bin.armhf-linux.r53554.tar.xz
-2020/01/27 | 388 | systems/texlive/tlnet/archive/cyrillic-bin.amd64-freebsd.r53554.tar.xz
-2020/01/27 | 3872 | systems/texlive/tlnet/archive/ps2eps.aarch64-linux.r48789.tar.xz
-2020/01/27 | 38608 | macros/luatex/generic/luatexja/doc/luatexja-ruby.tex
-2020/01/27 | 385 | macros/luatex/generic/luatexja/src/ltjsclasses.ins
-2020/01/27 | 3857 | macros/luatex/generic/luatexja/src/ltj-lineskip.lua
-2020/01/27 | 3855 | macros/luatex/generic/luatexja/src/luatexja-compat.sty
-2020/01/27 | 384 | systems/texlive/tlnet/archive/cyrillic-bin.x86_64-solaris.r53554.tar.xz
-2020/01/27 | 384 | systems/texlive/tlnet/archive/cyrillic-bin.i386-netbsd.r53554.tar.xz
-2020/01/27 | 384 | systems/texlive/tlnet/archive/cyrillic-bin.i386-linux.r53554.tar.xz
-2020/01/27 | 384 | systems/texlive/tlnet/archive/cyrillic-bin.i386-cygwin.r53554.tar.xz
-2020/01/27 | 384 | systems/texlive/tlnet/archive/cyrillic-bin.aarch64-linux.r53554.tar.xz
-2020/01/27 | 3834 | macros/luatex/generic/luatexja/src/ltj-charrange.lua
-2020/01/27 | 380 | systems/texlive/tlnet/archive/cyrillic-bin.x86_64-linux.r53554.tar.xz
-2020/01/27 | 380 | systems/texlive/tlnet/archive/cyrillic-bin.i386-solaris.r53554.tar.xz
-2020/01/27 | 380 | systems/texlive/tlnet/archive/cyrillic-bin.i386-freebsd.r53554.tar.xz
-2020/01/27 | 380 | systems/texlive/tlnet/archive/cyrillic-bin.amd64-netbsd.r53554.tar.xz
-2020/01/27 | 37784 | systems/texlive/tlnet/archive/kpathsea.amd64-netbsd.r53577.tar.xz
-2020/01/27 | 3735214 | macros/latex/contrib/media9/doc/media9.pdf
-2020/01/27 | 3708392 | systems/texlive/tlnet/archive/media9.doc.r53573.tar.xz
-2020/01/27 | 36698 | macros/luatex/generic/luatexja/src/ltj-direction.lua
-2020/01/27 | 3620 | systems/texlive/tlnet/archive/ps2eps.x86_64-darwinlegacy.r50282.tar.xz
-2020/01/27 | 36204 | systems/texlive/tlnet/archive/kpathsea.i386-freebsd.r53577.tar.xz
-2020/01/27 | 3609 | macros/luatex/generic/luatexja/README
-2020/01/27 | 3604 | systems/texlive/tlnet/archive/physconst.r53570.tar.xz
-2020/01/27 | 36024 | systems/texlive/tlnet/archive/texlive-scripts.win32.r53555.tar.xz
-2020/01/27 | 356 | systems/texlive/tlnet/archive/fontinst.x86_64-darwinlegacy.r53554.tar.xz
-2020/01/27 | 355 | macros/luatex/generic/luatexja/tool/otf-AdobeMingStd-Light.txt
-2020/01/27 | 355 | macros/luatex/generic/luatexja/doc/luatexja.ins
-2020/01/27 | 352 | systems/texlive/tlnet/archive/fontinst.x86_64-linuxmusl.r53554.tar.xz
-2020/01/27 | 35184 | macros/luatex/generic/luatexja/src/patches/lltjfont.sty
-2020/01/27 | 3507289 | macros/luatex/generic/luatexja.zip
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.x86_64-solaris.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.x86_64-linux.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.x86_64-darwin.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.x86_64-cygwin.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.i386-netbsd.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.i386-linux.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.i386-freebsd.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.armhf-linux.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.amd64-netbsd.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.amd64-freebsd.r53554.tar.xz
-2020/01/27 | 348 | systems/texlive/tlnet/archive/fontinst.aarch64-linux.r53554.tar.xz
-2020/01/27 | 34676 | systems/texlive/tlnet/archive/kpathsea.i386-netbsd.r53577.tar.xz
-2020/01/27 | 344 | systems/texlive/tlnet/archive/fontinst.i386-solaris.r53554.tar.xz
-2020/01/27 | 344 | systems/texlive/tlnet/archive/fontinst.i386-cygwin.r53554.tar.xz
-2020/01/27 | 3448 | systems/texlive/tlnet/archive/ps2eps.x86_64-darwin.r50150.tar.xz
-2020/01/27 | 33928 | systems/texlive/tlnet/archive/kpathsea.aarch64-linux.r53577.tar.xz
-2020/01/27 | 3371 | macros/luatex/generic/luatexja/src/patches/lltjp-xunicode.sty
-2020/01/27 | 33458 | macros/luatex/generic/luatexja/src/addons/luatexja-ajmacros.sty
-2020/01/27 | 3311 | macros/luatex/generic/luatexja/tool/ltj-unicode-ccfix_make2.pl
-2020/01/27 | 326 | macros/luatex/generic/luatexja/tool/otf-AdobeMyungjoStd-Medium.txt
-2020/01/27 | 3238 | macros/luatex/generic/luatexja/doc/jfm-test.lua
-2020/01/27 | 323880 | systems/texlive/tlnet/archive/clara.doc.r53552.tar.xz
-2020/01/27 | 32208 | systems/texlive/tlnet/archive/kpathsea.armhf-linux.r53577.tar.xz
-2020/01/27 | 32164 | systems/texlive/tlnet/archive/kpathsea.r53569.tar.xz
-2020/01/27 | 317 | macros/luatex/generic/luatexja/tool/otf-AdobeSongStd-Light.txt
-2020/01/27 | 3100 | macros/luatex/generic/luatexja/tool/table_jisx0208.tex
-2020/01/27 | 3093728 | systems/texlive/tlnet/archive/luatexja.doc.r53575.tar.xz
-2020/01/27 | 3054 | macros/latex/contrib/biblatex-contrib/biblatex-oxref/Makefile
-2020/01/27 | 2997 | macros/luatex/generic/luatexja/src/patches/lltjp-siunitx.sty
-2020/01/27 | 29032 | macros/luatex/generic/luatexja/src/addons/luatexja-preset.sty
-2020/01/27 | 28597 | macros/luatex/generic/luatexja/src/ltj-ruby.lua
-2020/01/27 | 27324 | macros/luatex/generic/luatexja/src/luatexja-core.sty
-2020/01/27 | 26453 | macros/luatex/generic/luatexja/src/lltjext.sty
-2020/01/27 | 2614 | macros/latex/contrib/knowledge/makefile
-2020/01/27 | 2601 | macros/luatex/generic/luatexja/src/jfm-kaiming.lua
-2020/01/27 | 2601 | macros/luatex/generic/luatexja/src/jfm-banjiao.lua
-2020/01/27 | 2575 | macros/luatex/generic/luatexja/src/jfm-quanjiao.lua
-2020/01/27 | 25592 | systems/texlive/tlnet/archive/cyrillic-bin.doc.r53559.tar.xz
-2020/01/27 | 2398 | macros/luatex/generic/luatexja/src/patches/lltjp-unicode-math.sty
-2020/01/27 | 23540 | systems/texlive/tlnet/archive/texlive-scripts-extra.r53569.tar.xz
-2020/01/27 | 2342 | macros/luatex/generic/luatexja/src/jfm-jis.lua
-2020/01/27 | 2337467 | macros/latex/contrib/biblatex-contrib/biblatex-oxref.zip
-2020/01/27 | 2313 | macros/luatex/generic/luatexja/src/ltj-latex.sty
-2020/01/27 | 22428 | systems/texlive/tlnet/archive/biblatex-oxref.r53571.tar.xz
-2020/01/27 | 224024 | systems/texlive/tlnet/archive/texlive.infra.r53576.tar.xz
-2020/01/27 | 2213 | macros/luatex/generic/luatexja/src/patches/lltjp-microtype.sty
-2020/01/27 | 2207 | macros/luatex/generic/luatexja/src/jfm-CCT.lua
-2020/01/27 | 2193 | macros/luatex/generic/luatexja/src/addons/luatexja-zhfonts.sty
-2020/01/27 | 215230 | macros/luatex/generic/luatexja/src/ltj-ivd_aj1.lua
-2020/01/27 | 21284 | systems/texlive/tlnet/archive/knowledge.r53572.tar.xz
-2020/01/27 | 2025 | macros/latex/contrib/knowledge/README.md
-2020/01/27 | 200 | macros/luatex/generic/luatexja/src/jfm-prop.lua
-2020/01/27 | 20049 | macros/luatex/generic/luatexja/src/luatexja.lua
-2020/01/27 | 20036 | systems/texlive/tlnet/archive/mcf2graph.r53550.tar.xz
-2020/01/27 | 199928 | systems/texlive/tlnet/archive/texlive.infra.doc.r53576.tar.xz
-2020/01/27 | 196 | macros/luatex/generic/luatexja/src/jfm-propv.lua
-2020/01/27 | 195488 | systems/texlive/tlnet/archive/texlive-scripts-extra.doc.r53569.tar.xz
-2020/01/27 | 1943412 | systems/texlive/tlnet/archive/biblatex-oxref.doc.r53571.tar.xz
-2020/01/27 | 192 | macros/luatex/generic/luatexja/src/jfm-mono.lua
-2020/01/27 | 18950 | macros/luatex/generic/luatexja/src/ltj-adjust.lua
-2020/01/27 | 1894656 | systems/texlive/tlnet/archive/media9.r53573.tar.xz
-2020/01/27 | 189433 | macros/luatex/generic/luatexja/src/ltjsclasses.dtx
-2020/01/27 | 1832 | macros/luatex/generic/luatexja/src/luatexja.sty
-2020/01/27 | 181444 | systems/texlive/tlnet/archive/luatexja.r53575.tar.xz
-2020/01/27 | 18036 | macros/luatex/generic/luatexja/src/ltj-kinsoku_make.tex
-2020/01/27 | 1776720 | systems/texlive/tlnet/archive/media9.source.r53573.tar.xz
-2020/01/27 | 176639 | macros/luatex/generic/luatexja/src/ltjclasses.dtx
-2020/01/27 | 1760916 | systems/win32/w32tex/qpdf-w32.tar.xz
-2020/01/27 | 1759 | macros/latex/contrib/knowledge/knowledge.ins
-2020/01/27 | 17106 | macros/luatex/generic/luatexja/src/patches/lltjp-geometry.sty
-2020/01/27 | 1700 | systems/texlive/tlnet/archive/physunits.r53574.tar.xz
-2020/01/27 | 1691 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec.sty
-2020/01/27 | 1661 | macros/luatex/generic/luatexja/src/ltj-inputbuf.lua
-2020/01/27 | 164326 | macros/luatex/generic/luatexja/doc/lltjp-geometry.pdf
-2020/01/27 | 159051 | macros/latex/contrib/knowledge/knowledge.tex
-2020/01/27 | 157931 | macros/latex/contrib/knowledge/knowledge-code.dtx
-2020/01/27 | 15556 | macros/luatex/generic/luatexja/src/addons/luatexja-fontspec-27c.sty
-2020/01/27 | 1536 | macros/luatex/generic/luatexja/COPYING
-2020/01/27 | 1500 | systems/texlive/tlnet/archive/cyrillic-bin.r53559.tar.xz
-2020/01/27 | 146415 | macros/latex/contrib/physconst.zip
-2020/01/27 | 1428256 | systems/texlive/tlnet/archive/texlive.infra.win32.r53431.tar.xz
-2020/01/27 | 14186 | macros/luatex/generic/luatexja/src/patches/lltjp-listings.sty
-2020/01/27 | 1406 | macros/luatex/generic/luatexja/src/patches/lltjp-footmisc.sty
-2020/01/27 | 1397 | macros/luatex/generic/luatexja/tool/ivslist.tex
-2020/01/27 | 13964 | systems/texlive/tlnet/archive/latex-bin-dev.doc.r53553.tar.xz
-2020/01/27 | 1388 | systems/texlive/tlnet/archive/collection-mathscience.r53574.tar.xz
-2020/01/27 | 13429 | macros/luatex/generic/luatexja/doc/lltjp-geometry.tex
-2020/01/27 | 132948 | systems/texlive/tlnet/archive/physconst.doc.r53570.tar.xz
-2020/01/27 | 13258 | macros/luatex/generic/luatexja/src/ltj-rmlgbm.lua
-2020/01/27 | 13195 | macros/latex/contrib/media9/ChangeLog
-2020/01/27 | 1278 | macros/luatex/generic/luatexja/src/ltjclasses.ins
-2020/01/27 | 126 | macros/luatex/generic/luatexja/src/ltjltxdoc.ins
-2020/01/27 | 12311 | macros/luatex/generic/luatexja/src/ltj-base.sty
-2020/01/27 | 1224 | macros/luatex/generic/luatexja/tool/chars2defcharrange.rb
-2020/01/27 | 11949 | macros/luatex/generic/luatexja/src/ltj-setwidth.lua
-2020/01/27 | 11755 | macros/luatex/generic/luatexja/src/ltj-base.lua
-2020/01/27 | 11335 | macros/luatex/generic/luatexja/tool/unicodeBlocks.tex
-2020/01/27 | 1130 | macros/luatex/generic/luatexja/tool/function_uax50.lua
-2020/01/27 | 11307 | macros/luatex/generic/luatexja/src/jfm-ujisv.lua
-2020/01/27 | 11106 | macros/luatex/generic/luatexja/src/jfm-ujis.lua
-2020/01/27 | 11092 | systems/texlive/tlnet/archive/physconst.source.r53570.tar.xz
-2020/01/27 | 10792 | systems/texlive/tlnet/archive/ps2eps.r53559.tar.xz
-2020/01/27 | 10758 | macros/luatex/generic/luatexja/src/patches/lltjcore.sty
-2020/01/27 | 105702 | macros/latex/contrib/physunits.zip
-2020/01/27 | 10480 | macros/luatex/generic/luatexja/src/patches/lltjdefs.sty
-2020/01/27 | 1019508 | systems/texlive/tlnet/archive/fontinst.doc.r53562.tar.xz
diff --git a/graphics/pgf/contrib/lie-hasse/README b/graphics/pgf/contrib/lie-hasse/README
new file mode 100644
index 0000000000..e63a82cc60
--- /dev/null
+++ b/graphics/pgf/contrib/lie-hasse/README
@@ -0,0 +1,21 @@
+___________________________________
+
+ Lie Hasse
+
+ v1.0
+
+ 3 February 2020
+___________________________________
+
+Authors : Ben McKay
+Maintainer: Ben McKay
+E-mail : b.mckay@ucc.ie
+Licence : Released under the LaTeX Project Public License v1.3c or
+ later, see http://www.latex-project.org/lppl.txt
+
+----------------------------------------------------------------------
+
+This package draws Hasse diagrams of the posets
+of the simple roots of any complex simple Lie algebra.
+It uses the Dynkin diagrams package dynkin-diagrams.
+
diff --git a/graphics/pgf/contrib/lie-hasse/lie-hasse.bib b/graphics/pgf/contrib/lie-hasse/lie-hasse.bib
new file mode 100644
index 0000000000..d39af91eae
--- /dev/null
+++ b/graphics/pgf/contrib/lie-hasse/lie-hasse.bib
@@ -0,0 +1,495 @@
+% Encoding: ISO-8859-1
+
+
+@Book{Adams:1996,
+ Title = {Lectures on exceptional {L}ie groups},
+ Author = {Adams, J. F.},
+ Publisher = {University of Chicago Press, Chicago, IL},
+ Year = {1996},
+ Note = {With a foreword by J. Peter May,
+ Edited by Zafer Mahmud and Mamoru Mimura},
+ Series = {Chicago Lectures in Mathematics},
+
+ ISBN = {0-226-00526-7; 0-226-00527-5},
+ Mrclass = {22-01 (22E10)},
+ Mrnumber = {1428422},
+ Mrreviewer = {William M. McGovern},
+ Owner = {user},
+ Pages = {xiv+122},
+ Timestamp = {2018.07.22}
+}
+
+@Article{Baba:2009,
+ Title = {Satake diagrams and restricted root systems of semisimple pseudo-{R}iemannian symmetric spaces},
+ Author = {Baba, Kurando},
+ Journal = {Tokyo J. Math.},
+ Year = {2009},
+ Number = {1},
+ Pages = {127--158},
+ Volume = {32},
+
+ Fjournal = {Tokyo Journal of Mathematics},
+ ISSN = {0387-3870},
+ Mrclass = {17B20 (17B22 53C35)},
+ Mrnumber = {2541161},
+ Mrreviewer = {Oksana S. Yakimova},
+ Owner = {user},
+ Timestamp = {2017.12.04},
+ Url = {https://doi.org/10.3836/tjm/1249648414}
+}
+
+@Book{Bourbaki:2002,
+ Title = {Lie groups and {L}ie algebras. {C}hapters 4--6},
+ Author = {Bourbaki, Nicolas},
+ Publisher = {Springer-Verlag, Berlin},
+ Year = {2002},
+ Note = {Translated from the 1968 French original by Andrew Pressley},
+ Series = {Elements of Mathematics (Berlin)},
+
+ ISBN = {3-540-42650-7},
+ Mrclass = {17-01 (00A05 20E42 20F55 22-01)},
+ Mrnumber = {1890629},
+ Owner = {user},
+ Pages = {xii+300},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1007/978-3-540-89394-3}
+}
+
+@Book{Carter:2005,
+ Title = {Lie algebras of finite and affine type},
+ Author = {Carter, R. W.},
+ Publisher = {Cambridge University Press, Cambridge},
+ Year = {2005},
+ Series = {Cambridge Studies in Advanced Mathematics},
+ Volume = {96},
+
+ ISBN = {978-0-521-85138-1; 0-521-85138-6},
+ Mrclass = {17-02 (17B67)},
+ Mrnumber = {2188930},
+ Mrreviewer = {Stephen Slebarski},
+ Owner = {user},
+ Pages = {xviii+632},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1017/CBO9780511614910}
+}
+
+@InCollection{Carter:1995,
+ Title = {On the representation theory of the finite groups of {L}ie
+ type over an algebraically closed field of characteristic 0 [
+ {MR}1170353 (93j:20034)]},
+ Author = {Carter, R. W.},
+ Booktitle = {Algebra, {IX}},
+ Publisher = {Springer, Berlin},
+ Year = {1995},
+ Pages = {1--120, 235--239},
+ Series = {Encyclopaedia Math. Sci.},
+ Volume = {77},
+
+ Doi = {10.1007/978-3-662-03235-0_1},
+ Mrclass = {20C33 (20-02 20G05)},
+ Mrnumber = {1392478},
+ Owner = {user},
+ Timestamp = {2018.05.19},
+ Url = {https://doi.org/10.1007/978-3-662-03235-0_1}
+}
+
+@Article{Chuah:2013,
+ Title = {Cartan automorphisms and {V}ogan superdiagrams},
+ Author = {Chuah, Meng-Kiat},
+ Journal = {Math. Z.},
+ Year = {2013},
+ Number = {3-4},
+ Pages = {793--800},
+ Volume = {273},
+
+ Fjournal = {Mathematische Zeitschrift},
+ ISSN = {0025-5874},
+ Mrclass = {17B20 (17B40)},
+ Mrnumber = {3030677},
+ Mrreviewer = {Zi-Xin Hou},
+ Owner = {user},
+ Timestamp = {2017.12.04},
+ Url = {https://doi.org/10.1007/s00209-012-1030-z}
+}
+
+@InCollection{Draper/Guido:2016,
+ Title = {On the real forms of the exceptional {L}ie algebra {$\mathfrak
+ e_6$} and their {S}atake diagrams},
+ Author = {Draper Fontanals, Cristina and Guido, Valerio},
+ Booktitle = {Non-associative and non-commutative algebra and operator
+ theory},
+ Publisher = {Springer, Cham},
+ Year = {2016},
+ Pages = {211--226},
+ Series = {Springer Proc. Math. Stat.},
+ Volume = {160},
+
+ Mrclass = {17B20 (17A75 17B25 17B60)},
+ Mrnumber = {3613831},
+ Mrreviewer = {Alberto Elduque},
+ Owner = {user},
+ Timestamp = {2018.04.30}
+}
+
+@Book{Dynkin:2000,
+ Title = {Selected papers of {E}. {B}. {D}ynkin with commentary},
+ Author = {Dynkin, E. B.},
+ Publisher = {American Mathematical Society, Providence, RI; International Press, Cambridge, MA},
+ Year = {2000},
+ Note = {Edited by A. A. Yushkevich, G. M. Seitz and A. L. Onishchik},
+
+ ISBN = {0-8218-1065-0},
+ Mrclass = {01A75 (60Jxx)},
+ Mrnumber = {1757976},
+ Mrreviewer = {William M. McGovern},
+ Owner = {user},
+ Pages = {xxviii+796},
+ Timestamp = {2017.11.15}
+}
+
+@Article{Dynkin:1952,
+ Title = {Semisimple subalgebras of semisimple {L}ie algebras},
+ Author = {Dynkin, E. B.},
+ Journal = {Mat. Sbornik N.S.},
+ Year = {1952},
+ Note = {Reprinted in English translation in \cite{Dynkin:2000}.},
+ Pages = {349--462 (3 plates)},
+ Volume = {30(72)},
+
+ Mrclass = {09.1X},
+ Mrnumber = {0047629},
+ Mrreviewer = {I. Kaplansky},
+ Owner = {user},
+ Timestamp = {2017.11.15}
+}
+
+@Article{Frappat/Sciarrino/Sorba:1989,
+ Title = {Structure of basic {L}ie superalgebras and of their affine extensions},
+ Author = {Frappat, L. and Sciarrino, A. and Sorba, P.},
+ Journal = {Comm. Math. Phys.},
+ Year = {1989},
+ Number = {3},
+ Pages = {457--500},
+ Volume = {121},
+
+ Fjournal = {Communications in Mathematical Physics},
+ ISSN = {0010-3616},
+ Mrclass = {17B70 (17A70 17B40)},
+ Mrnumber = {990776},
+ Mrreviewer = {A. Pianzola},
+ Owner = {user},
+ Timestamp = {2017.12.18},
+ Url = {http://0-projecteuclid.org.library.ucc.ie/euclid.cmp/1104178142}
+}
+
+@Book{Grove/Benson:1985,
+ Title = {Finite reflection groups},
+ Author = {Grove, L. C. and Benson, C. T.},
+ Publisher = {Springer-Verlag, New York},
+ Year = {1985},
+ Edition = {Second},
+ Series = {Graduate Texts in Mathematics},
+ Volume = {99},
+
+ ISBN = {0-387-96082-1},
+ Mrclass = {20-01 (20B25 20H15)},
+ Mrnumber = {777684},
+ Owner = {user},
+ Pages = {x+133},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1007/978-1-4757-1869-0}
+}
+
+@Book{Helgason:2001,
+ Title = {Differential geometry, {L}ie groups, and symmetric spaces},
+ Author = {Helgason, Sigurdur},
+ Publisher = {American Mathematical Society, Providence, RI},
+ Year = {2001},
+ Note = {Corrected reprint of the 1978 original},
+ Series = {Graduate Studies in Mathematics},
+ Volume = {34},
+
+ ISBN = {0-8218-2848-7},
+ Mrclass = {53C35 (22E10 22E46 22E60)},
+ Mrnumber = {1834454},
+ Owner = {user},
+ Pages = {xxvi+641},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1090/gsm/034}
+}
+
+@Book{Humphreys:1990,
+ Title = {Reflection groups and {C}oxeter groups},
+ Author = {Humphreys, James E.},
+ Publisher = {Cambridge University Press, Cambridge},
+ Year = {1990},
+ Series = {Cambridge Studies in Advanced Mathematics},
+ Volume = {29},
+
+ ISBN = {0-521-37510-X},
+ Mrclass = {20-02 (20F32 20F55 20G15 20H15)},
+ Mrnumber = {1066460},
+ Mrreviewer = {Louis Solomon},
+ Owner = {user},
+ Pages = {xii+204},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1017/CBO9780511623646}
+}
+
+@Book{Kac:1990,
+ Title = {Infinite-dimensional {L}ie algebras},
+ Author = {Kac, Victor G.},
+ Publisher = {Cambridge University Press, Cambridge},
+ Year = {1990},
+ Edition = {Third},
+
+ ISBN = {0-521-37215-1; 0-521-46693-8},
+ Mrclass = {17B65 (17B67 17B68 58F07)},
+ Mrnumber = {1104219},
+ Owner = {user},
+ Pages = {xxii+400},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1017/CBO9780511626234}
+}
+
+@Article{Khastgir/Sasaki:1996,
+ Title = {Non-canonical folding of {D}ynkin diagrams and reduction of affine {T}oda theories},
+ Author = {Khastgir, S. Pratik and Sasaki, Ryu},
+ Journal = {Progr. Theoret. Phys.},
+ Year = {1996},
+ Number = {3},
+ Pages = {503--518},
+ Volume = {95},
+
+ Fjournal = {Progress of Theoretical Physics},
+ ISSN = {0033-068X},
+ Mrclass = {81T10 (17B81 58F07 81R10)},
+ Mrnumber = {1388245},
+ Mrreviewer = {Mehmet Koca},
+ Owner = {user},
+ Timestamp = {2017.12.18},
+ Url = {https://doi.org/10.1143/PTP.95.503}
+}
+
+@book {Langlands:1967,
+ AUTHOR = {Langlands, Robert P.},
+ TITLE = {Euler products},
+ NOTE = {A James K. Whittemore Lecture in Mathematics given at Yale
+ University, 1967,
+ Yale Mathematical Monographs, 1},
+ PUBLISHER = {Yale University Press, New Haven, Conn.-London},
+ YEAR = {1971},
+ PAGES = {v+53},
+ MRCLASS = {10D20 (22E55)},
+ MRNUMBER = {0419366},
+MRREVIEWER = {Stephen Gelbart},
+}
+@MISC {MathOverflow:123801,
+TITLE = {Invariant subbundles of tangent bundle of flag variety (question)},
+AUTHOR = {Benjamin McKay},
+HOWPUBLISHED = {MathOverflow},
+DATE = {2013-03-06},
+NOTE = {URL:\url{http://mathoverflow.net/a/22350} (visited on 2020-01-29)},
+URL = {http://mathoverflow.net/a/123801},
+URLDATE = {2020-01-29},
+}
+@phdthesis{Nutma:2010,
+ author = {Nutma, Teake Aant},
+ title = {Kac-Moody symmetries and gauged supergravity},
+ school = {Rijksuniversiteit Groningen},
+ year = 2010,
+ address = {Groningen},
+ month = 9,
+ note = {URL:\url{http://inspirehep.net/record/1283406/files/Thesis-2010-Nutma.pdf} (visited on 2020-01-29)}
+}
+@Book{OnishchikVinberg:1990,
+ Title = {Lie groups and algebraic groups},
+ Author = {Onishchik, A. L. and Vinberg, {\`E}. B.},
+ Publisher = {Springer-Verlag},
+ Year = {1990},
+
+ Address = {Berlin},
+ Note = {Translated from the Russian and with a preface by D. A. Leites},
+ Series = {Springer Series in Soviet Mathematics},
+
+ ISBN = {3-540-50614-4},
+ Mrclass = {22-01 (17B20 20G20 22E10 22E15)},
+ Mrnumber = {91g:22001},
+ Mrreviewer = {James E. Humphreys},
+ Owner = {user},
+ Pages = {xx+328},
+ Timestamp = {2017.11.15}
+}
+
+@Book{Onishchik/Vinberg:1990,
+ Title = {Lie groups and algebraic groups},
+ Author = {Onishchik, A. L. and Vinberg, \`E. B.},
+ Publisher = {Springer-Verlag, Berlin},
+ Year = {1990},
+ Note = {Translated from the Russian and with a preface by D. A. Leites},
+ Series = {Springer Series in Soviet Mathematics},
+
+ ISBN = {3-540-50614-4},
+ Mrclass = {22-01 (17B20 20G20 22E10 22E15)},
+ Mrnumber = {1064110},
+ Mrreviewer = {James E. Humphreys},
+ Owner = {user},
+ Pages = {xx+328},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1007/978-3-642-74334-4}
+}
+@Article{Ransingh:2013,
+ Title = {Vogan diagrams of untwisted affine {K}ac-{M}oody superalgebras},
+ Author = {Ransingh, Biswajit},
+ Journal = {Asian-Eur. J. Math.},
+ Year = {2013},
+ Number = {4},
+ Pages = {1350062, 10},
+ Volume = {6},
+
+ Fjournal = {Asian-European Journal of Mathematics},
+ ISSN = {1793-5571},
+ Mrclass = {17B67 (17B05 17B22 17B40)},
+ Mrnumber = {3149279},
+ Mrreviewer = {Xiangqian Guo},
+ Owner = {user},
+ Timestamp = {2018.01.11}
+}
+
+@Article{Ransingh:unpub,
+ Title = {{Vogan diagrams of affine twisted Lie superalgebras}},
+ Author = {Ransingh, B.},
+ Journal = {ArXiv e-prints},
+ Year = {2013},
+
+ Month = mar,
+ Pages = {1--9},
+
+ Adsnote = {Provided by the SAO/NASA Astrophysics Data System},
+ Adsurl = {http://adsabs.harvard.edu/abs/2013arXiv1303.0092R},
+ Archiveprefix = {arXiv},
+ Eprint = {1303.0092},
+ Keywords = {Mathematical Physics, Mathematics - Representation Theory},
+ Owner = {user},
+ Primaryclass = {math-ph},
+ Timestamp = {2018.01.11}
+}
+
+@Article{Regelskis/Vlaar:2016,
+ Title = {{Reflection matrices, coideal subalgebras and generalized Satake diagrams of affine type}},
+ Author = {{Regelskis}, V. and {Vlaar}, B.},
+ Journal = {ArXiv e-prints},
+ Year = {2016},
+
+ Month = feb,
+ Pages = {1--118},
+
+ Adsnote = {Provided by the SAO/NASA Astrophysics Data System},
+ Adsurl = {http://adsabs.harvard.edu/abs/2016arXiv160208471R},
+ Archiveprefix = {arXiv},
+ Eprint = {1602.08471},
+ Keywords = {Mathematical Physics, Mathematics - Quantum Algebra, Mathematics - Representation Theory, Nonlinear Sciences - Exactly Solvable and Integrable Systems},
+ Owner = {user},
+ Primaryclass = {math-ph},
+ Timestamp = {2017.12.04}
+}
+@ARTICLE{Ringel:2013,
+ author = {Ringel, Claus Michael},
+ title = {The root posets and their rich antichains},
+ journal = {arXiv e-prints},
+ keywords = {Mathematics - Combinatorics, Mathematics - Representation Theory},
+ year = "2013",
+ month = "Jun",
+ eid = {arXiv:1306.1593},
+ pages = {arXiv:1306.1593},
+archivePrefix = {arXiv},
+ eprint = {1306.1593},
+ primaryClass = {math.CO},
+ adsurl = {https://ui.adsabs.harvard.edu/abs/2013arXiv1306.1593R},
+ adsnote = {Provided by the SAO/NASA Astrophysics Data System}
+}
+@Book{Satake:1980,
+ Title = {Algebraic structures of symmetric domains},
+ Author = {Satake, Ichir\^o},
+ Publisher = {Iwanami Shoten, Tokyo; Princeton University Press, Princeton, N.J.},
+ Year = {1980},
+ Series = {Kan\^o Memorial Lectures},
+ Volume = {4},
+
+ Mrclass = {32-02 (17C35 32Mxx 53C35)},
+ Mrnumber = {591460},
+ Mrreviewer = {S. Murakami},
+ Owner = {user},
+ Pages = {xvi+321},
+ Timestamp = {2017.11.15}
+}
+
+@Book{Springer:2009,
+ Title = {Linear algebraic groups},
+ Author = {Springer, T. A.},
+ Publisher = {Birkh\"auser Boston, Inc., Boston, MA},
+ Year = {2009},
+ Edition = {second},
+ Series = {Modern Birkh\"auser Classics},
+
+ ISBN = {978-0-8176-4839-8},
+ Mrclass = {20G15 (14L10)},
+ Mrnumber = {2458469},
+ Owner = {user},
+ Pages = {xvi+334},
+ Timestamp = {2018.03.31}
+}
+
+@InCollection{Zuber:1998,
+ Title = {Generalized {D}ynkin diagrams and root systems and their folding},
+ Author = {Zuber, Jean-Bernard},
+ Booktitle = {Topological field theory, primitive forms and related topics ({K}yoto, 1996)},
+ Publisher = {Birkh\"auser Boston, Boston, MA},
+ Year = {1998},
+ Pages = {453--493},
+ Series = {Progr. Math.},
+ Volume = {160},
+
+ Mrclass = {17B20 (05C25 20F55)},
+ Mrnumber = {1653035},
+ Mrreviewer = {Saeid Azam},
+ Owner = {user},
+ Timestamp = {2017.12.18}
+}
+
+@Book{Vinberg:1994,
+ Title = {Lie groups and {L}ie algebras, {III}},
+ Editor = {Vinberg, \`E. B.},
+ Publisher = {Springer-Verlag, Berlin},
+ Year = {1994},
+ Note = {Structure of Lie groups and Lie algebras, A translation of {{\i}t Current problems in mathematics. Fundamental directions. Vol. 41} (Russian), Akad. Nauk SSSR, Vsesoyuz. Inst. Nauchn. i Tekhn. Inform., Moscow, 1990 [ MR1056485 (91b:22001)], Translation by V. Minachin [V. V. Minakhin], Translation edited by A. L. Onishchik and \`E. B. Vinberg},
+ Series = {Encyclopaedia of Mathematical Sciences},
+ Volume = {41},
+
+ ISBN = {3-540-54683-9},
+ Mrclass = {22-06 (17-06 22Exx)},
+ Mrnumber = {1349140},
+ Owner = {user},
+ Pages = {iv+248},
+ Timestamp = {2017.11.15},
+ Url = {https://doi.org/10.1007/978-3-662-03066-0}
+}
+
+@Book{Fulton.Harris:1991,
+ title = {Representation theory},
+ publisher = {Springer-Verlag, New York},
+ year = {1991},
+ author = {Fulton, William and Harris, Joe},
+ volume = {129},
+ series = {Graduate Texts in Mathematics},
+ isbn = {0-387-97527-6; 0-387-97495-4},
+ note = {A first course, Readings in Mathematics},
+ doi = {10.1007/978-1-4612-0979-9},
+ mrclass = {20G05 (17B10 20G20 22E46)},
+ mrnumber = {1153249},
+ mrreviewer = {James E. Humphreys},
+ pages = {xvi+551},
+ url = {https://doi.org/10.1007/978-1-4612-0979-9},
+}
+
+@Comment{jabref-meta: databaseType:bibtex;}
diff --git a/graphics/pgf/contrib/lie-hasse/lie-hasse.pdf b/graphics/pgf/contrib/lie-hasse/lie-hasse.pdf
new file mode 100644
index 0000000000..5be5791e7f
--- /dev/null
+++ b/graphics/pgf/contrib/lie-hasse/lie-hasse.pdf
Binary files differ
diff --git a/graphics/pgf/contrib/lie-hasse/lie-hasse.sty b/graphics/pgf/contrib/lie-hasse/lie-hasse.sty
new file mode 100644
index 0000000000..d1050d8839
--- /dev/null
+++ b/graphics/pgf/contrib/lie-hasse/lie-hasse.sty
@@ -0,0 +1,2467 @@
+% The Lie Hasse package.
+%
+% Version 1.0
+%
+%
+% This package draws Hasse diagrams of root system posets of simple
+% Lie algebraS, in LaTeX documents, using the TikZ package.
+%
+% Benjamin McKay
+% b.mckay@ucc.ie
+%
+% Released under the LaTeX Project Public License v1.3c or later, see
+% http://www.latex-project.org/lppl.txt
+%
+%
+%
+%
+\NeedsTeXFormat{LaTeX2e}[1994/06/01]
+\ProvidesPackage{lie-hasse}[2020/02/02 Lie Hasse]
+\RequirePackage[rgb]{xcolor}
+\RequirePackage{dynkin-diagrams}
+\usetikzlibrary{
+ positioning,
+ fadings,
+ quotes}
+%%%
+%%% Application programming interface:
+%%%
+
+\newif\iflie@hasse@threeD
+\lie@hasse@threeDtrue
+\xdef\lie@hasse@three@D@shift{.3}%
+\newif\iflie@hasse@show@ordering
+\lie@hasse@show@orderingfalse
+\newif\iflie@hasse@show@name
+\lie@hasse@show@namefalse
+\newif\iflie@hasse@show@widths
+\lie@hasse@show@widthsfalse
+\newif\iflie@hasse@show@height
+\lie@hasse@show@heightfalse
+\newif\iflie@hasse@attach@dynkin@diagram
+\lie@hasse@attach@dynkin@diagramfalse
+
+\pgfkeys{
+ /Lie Hasse diagram/.is family,
+ /Lie Hasse diagram,
+ attach Dynkin diagram/.is if = lie@hasse@attach@dynkin@diagram,
+ attach Dynkin diagram/.default = false,
+ edge/.style={ultra thick},
+ edge quotes/.style={/Dynkin diagram/text style,auto,inner sep=2pt},
+ compact edge/.style={},
+ noncompact edge/.style={opacity=0},
+ compact root/.code={\dynkinDrawSolidRootMark{#1}},
+ noncompact root/.code={\dynkinDrawCrossRootMark{#1}},
+ embedded Dynkin diagram/.style={
+ edge length=.5cm,
+ root radius=.05cm
+ },
+ for all roots/.code 2 args={},
+ three D/.is if = lie@hasse@threeD,
+ three D/.default = true,
+ show ordering/.is if = lie@hasse@show@ordering,
+ show ordering/.default = false,
+ show name/.is if = lie@hasse@show@name,
+ show name/.default = false,
+ show widths/.is if = lie@hasse@show@widths,
+ show widths/.default = false,
+ show height/.is if = lie@hasse@show@height,
+ show height/.default = false,
+ z shift/.estore in = \lie@hasse@three@D@shift,
+ z shift/.default = .3,
+ top/.style={black!20,opacity=.4},
+ left/.style={black!20,opacity=.9},
+ right/.style={black!20,opacity=.6},
+ .search also={/Dynkin diagram},
+}
+\NewDocumentCommand\studyHasseDiagramOfRootSystem{O{}mm}%
+{%
+ \xdef\dynkin@parabolic{0}%
+ \pgfkeys{/Lie Hasse diagram,#1}%
+ \xdef\dynkin@user@series{#2}%
+ \xdef\dynkin@user@string{#3}%
+ \global\dynkin@ply=\dynkin@ply@value\relax%
+ \xdef\dynkin@series{#2}%
+ \dynkin@grok@series%
+ \IfSubStr{ABCDEFGHI}{\dynkin@series}{}{\dynkin@error@series}%
+ \xdef\dynkin@string{#3}%
+ \IfInteger{\dynkin@string}%
+ {%
+ \dynkin@integer@rank%
+ }%
+ {%
+ % Turn Satake codes into Dynkin diagram expressions in \dynkin@string.
+ \dynkin@grok@Satake@codes%
+ }%
+ % Expand out any digits in \dynkin@string into multiples of the various root marks.
+ \expand@Dynkin@Roots@Digits%
+ % Assign to \dynkin@roots the input string \dynkin@string with all . symbols removed,
+ % so we only get the symbols representing the marks for the various roots.
+ \StrDel{\dynkin@string}{.}[\temp]%
+ \xdef\dynkin@roots{\temp}%
+ \StrLen{\dynkin@roots}[\temp]%
+ \global\dynkin@nodes=\temp\relax%
+ \dynkin@grok@indefinite@edges%
+ \dynkin@find@rank{}%
+ \dynkin@cross@out@parabolics{}%
+ \dynkin@set@default@label@directions{}%
+ \check@Dynkin@diagram{}%
+ \xdef\lie@hasse@compact@roots{}%
+ \initialize@roots@as@sums@table{}%
+}%
+\newcount\lie@hasse@height%
+\newcount\lie@hasse@width%
+\NewDocumentCommand\doRootThing{mm}%
+{%
+ \pgfkeys{/Lie Hasse diagram/for all roots={#1}{#2}}%
+}%
+\NewDocumentCommand\hasse{O{}mm}%
+{%
+ \ifdefined\filldraw%
+ \IfStrEq{#1}{}%
+ {%
+ \studyHasseDiagramOfRootSystem{#2}{#3}%
+ }%
+ {%
+ \studyHasseDiagramOfRootSystem[#1]{#2}{#3}%
+ }%
+ \label@item@count 0\relax%
+ \expandafter\forcsvlist%
+ \expandafter\add@label%
+ \expandafter{\dynkin@label@list}%
+ \ifnum\dynkin@rank=1%
+ \dynkin{A}{1}%
+ \else%
+ \add@compact@simple@roots@to@compact@roots{}%
+ \IfStrEqCase{#2}%
+ {%%
+ {A}{\hasse@A}%
+ {B}{\hasse@BC}%
+ {C}{\hasse@BC*}%
+ {D}{\hasse@D}%
+ {E}%
+ {%
+ \ifnum\dynkin@rank=6%
+ \hasse@E@six%
+ \else%
+ \ifnum\dynkin@rank=7%
+ \hasse@E@seven%
+ \else%
+ \ifnum\dynkin@rank=8%
+ \hasse@E@eight%
+ \else
+ \ifnum\dynkin@rank>8%
+ \ClassError%
+ {Lie Hasse}%
+ {Rank of E series Hasse diagram: #3{}%
+ exceeds 8; not defined yet}%
+ {}%
+ \fi%
+ \ifnum\dynkin@rank<6%
+ \ClassError%
+ {Lie Hasse}%
+ {Rank of E series Hasse diagram: #3{} less than 6}%
+ {}%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ }%
+ {F}%
+ {%
+ \ifnum\dynkin@rank=4%
+ \hasse@F%
+ \else%
+ \ClassError%
+ {Lie Hasse}%
+ {Rank of F series Hasse diagram: #3{} not 4}%
+ {}%
+ \fi%
+ }%
+ {G}%
+ {%
+ \ifnum\dynkin@rank=2%
+ \hasse@G%
+ \else%
+ \ClassError%
+ {Lie Hasse}%
+ {Rank of G series Hasse diagram: #3{} not 2}%
+ {}%
+ \fi%
+ }%
+ }%%
+ [\ClassError%
+ {Lie Hasse}%
+ {Lie algebra series #2{} not A,B,C,D,E,F or G}%
+ {}]%
+ \draw@simple@root@labels%
+ \fi%
+ \lie@hasse@write@widths{}%
+ \forAllPositiveRootsInHasseDiagram{\doRootThing}%
+ \iflie@hasse@attach@dynkin@diagram%
+ \attachDynkin%
+ \fi%
+ \else%
+ \begin{tikzpicture}\hasse[#1]{#2}{#3}\end{tikzpicture}%
+ \fi%
+}%
+\NewDocumentCommand\drawRootAsDynkinSum{mm}%
+{%
+ \rootSum{#1}{#2}{\rs}%
+ \node at (#1;#2)
+ {%
+ \dynkin[%
+ labels=\rs,%
+ /Lie Hasse diagram/embedded Dynkin diagram]%
+ {\dynkin@series}{\the\dynkin@rank}%
+ };%
+}%
+\NewDocumentCommand\drawRootDecomp{mm}%
+{%
+ \rootSum{#1}{#2}{\rs}%
+ \StrSubstitute{\rs}{,}{}[\rss]%
+ \node[above,/Dynkin diagram/text style] at (#1;#2) {$\rss$};%
+}%
+\NewDocumentCommand\lie@hasse@write@widths{}%
+{%
+ \iflie@hasse@show@widths%
+ \rootSystemHeight{\lie@hasse@height}%
+ \foreach \lie@hasse@i in {1,...,\the\lie@hasse@height}%
+ {%
+ \rootSystemWidthAtGrade{\lie@hasse@i}{\lie@hasse@width}%
+ \path
+ let \p1 = (\lie@hasse@i;1)
+ in
+ node[left]
+ at
+ (0,\y1)
+ {\(\the\lie@hasse@width\)};%
+ }%
+ \fi%
+}%
+
+\NewDocumentCommand\backwardsGtwo{}%
+{%
+ \dynkin[label,backwards,x shift in edge lengths=-1]{G}{\dynkin@roots}%
+}%
+
+\newcount\lie@hasse@E@shift%
+\NewDocumentCommand\attachDynkin{}%
+{%
+ \IfStrEqCase{\dynkin@series}{%
+ {A}{\dynkin{A}{\dynkin@roots}}%
+ {B}{\dynkin{B}{\dynkin@roots}}%
+ {C}{\dynkin{C}{\dynkin@roots}}%
+ {D}{\dynkin[y shift in edge lengths=-1.5,label]%
+ {D}{\dynkin@roots}}%
+ {E}%
+ {%%
+ \ifnum\dynkin@rank=6%
+ \dynkin[%
+ upsidedown,%
+ labels*={1,...,6},%
+ y shift in edge lengths=.5]%
+ {E}{\dynkin@roots}%
+ \else%
+ \lie@hasse@E@shift\the\dynkin@rank\relax%
+ \advance\lie@hasse@E@shift by -2\relax%
+ \dynkin[%
+ backwards,%
+ upsidedown,%
+ label,%
+ x shift in edge lengths=-\the\lie@hasse@E@shift,%
+ y shift in edge lengths=1]%
+ {E}{\dynkin@roots}%
+ \fi%
+ }%%
+ {F}{\dynkin{F}{\dynkin@roots}}%
+ {G}{\backwardsGtwo{}}%
+ }%
+ [\ClassError%
+ {Lie Hasse}%
+ {Lie algebra series \dynkin@series{} not A,B,C,D,E,F or G when attaching Dynkin diagram}%
+ {}]%
+}%
+
+
+\newif\iflie@hasse@multiple@diagrams
+\newcommand\doHasseDiagram[1]%%
+{%
+ \iflie@hasse@multiple@diagrams%
+ \ %
+ \fi%
+ \begin{tikzpicture}%
+ [show background rectangle,%
+ baseline=(current bounding box.east)]]%
+ \hasse#1%
+ \iflie@hasse@show@height%
+ \rootSystemHeight{\lie@hasse@height}%
+ \fi%
+ \iflie@hasse@show@name%
+ \xdef\label@text{$\dynkinName{\dynkin@series}{\the\dynkin@rank}$}%
+ \iflie@hasse@show@ordering%
+ \xdef\label@text{\label@text{} in \currentDynkinOrdering{} ordering}%
+ \fi%
+ \iflie@hasse@show@height%
+ \xdef\label@text{\label@text: height$=\the\lie@hasse@height$}%
+ \fi%
+ \node[anchor=north,yshift=1.5em]
+ at
+ (current bounding box.north)
+ {\label@text};%
+ \fi%
+ \end{tikzpicture}%
+ \iflie@hasse@multiple@diagrams%
+ \ %
+ \fi%
+}%
+\DeclareListParser*{\forscsvlist}{;}%
+\newcommand\hasseDiagrams[1]%
+{%
+ \IfSubStr{#1}{;}%
+ {%
+ \global\lie@hasse@multiple@diagramstrue%
+ }%
+ {%
+ \global\lie@hasse@multiple@diagramsfalse%
+ }%
+ \begin{center}%
+ \expandafter\forscsvlist%
+ \expandafter\doHasseDiagram%
+ \expandafter{#1}%
+ \end{center}%
+}%
+
+
+%%%
+%%% Package internals:
+%%%
+
+
+\pgfdeclarelayer{Dynkin middle}
+\pgfdeclarelayer{Dynkin above}
+\pgfsetlayers{background,Dynkin behind,Dynkin middle,Dynkin above,main}
+
+
+\newcommand*\label@list@at[1]{\csname FOOBAR-#1\endcsname}
+\newcommand*\defn@label@list@entry[1]{\expandafter\def\csname FOOBAR-#1\endcsname}
+\def\add@to@label@list#1#2{\global\defn@label@list@entry{#1}{#2}}%
+\newcount\label@item@count%
+\label@item@count 0\relax%
+\newcommand\add@label[1]%
+{%
+ \advance\label@item@count by 1\relax%
+ \global\add@to@label@list{\the\label@item@count}{#1}%
+}%
+
+\xdef\lie@hasse@compact@roots{}%
+\NewDocumentCommand\if@compact@root{mmm}%
+{%
+\IfSubStr{\lie@hasse@compact@roots}{(#1)}{#2}{#3}%
+}%
+\newcount\current@simple@root%
+\NewDocumentCommand\if@compact@simple@root{mmm}%
+{%
+% #1 is the index of a root, in the internal root ordering of
+% this Lie Hasse package, which is the Carter root ordering.
+% So first we need to convert it to the current root ordering
+% of the Dynkin diagram we are working on.
+\dynkinOrder{\dynkin@series}{\the\dynkin@rank}.Carter::#1->\dynkin@ordering.%
+{\current@simple@root}%
+\StrChar{\dynkin@roots}{\current@simple@root}[\lie@hasse@root@marker]%
+\IfStrEq{*}{\lie@hasse@root@marker}{#2}{#3}%
+}%
+
+\NewDocumentCommand\add@compact@root{m}%
+{%
+ \if@compact@root{#1}%
+ {%do nothing
+ }
+ {%else
+ \edef\temp@lie@hasse@compact@roots{\lie@hasse@compact@roots}%
+ \xdef\lie@hasse@compact@roots{\temp@lie@hasse@compact@roots{ }(#1)}%
+ }%
+}%
+
+\newcount\lie@hasse@sr%
+\newcount\drpo%
+\NewDocumentCommand\add@compact@simple@roots@to@compact@roots{}%
+{%
+\lie@hasse@sr 1\relax%
+\drpo\the\dynkin@rank\relax%
+\advance\drpo by 1\relax%
+\loop%
+ \if@compact@simple@root{\the\lie@hasse@sr}%
+ {%%
+ \add@compact@root{1;\the\lie@hasse@sr}%
+ }%%
+ {%%
+ }%%
+ \advance\lie@hasse@sr by 1\relax%
+\ifnum\lie@hasse@sr<\the\drpo%
+\repeat%
+}%
+
+\newcount\drmo%
+\newcount\lie@hasse@root@count%
+\newcount\lie@hasse@root@count@b%
+\newcount\max@lie@hasse@root@count%
+\newcount\lie@hasse@reorder
+
+\NewDocumentCommand\lie@hasse@fix@order{mm}%
+{%
+ \dynkinOrder{\dynkin@series}{\dynkin@rank}.Carter::{#1}->\dynkin@ordering.{#2}%
+}%
+
+\NewDocumentCommand\draw@one@simple@root@label{mm}%
+%% \draw@one@simple@root@label{r}{s}, draw at Carter number r
+%% the root with text s.
+{%
+ \node[below,%
+ label=%
+ {%
+ [below,%
+ lie@hasse@color,%
+ /Lie Hasse diagram/edge quotes]%
+ \(\pgfkeys{/Dynkin diagram/label macro=#2}\)%
+ }%
+ ]%
+ at%
+ (1;#1)%
+ {};%
+}%
+\NewDocumentCommand\draw@simple@root@labels{}%
+{%
+ \lie@hasse@root@count 1\relax%
+ \max@lie@hasse@root@count \the\dynkin@rank\relax%
+ \advance\max@lie@hasse@root@count 1\relax%
+ \IfStrEq{\dynkin@label@list\dynkin@label@list@star}{}%
+ {%
+ \loop%
+ \set@lie@hasse@color{\the\lie@hasse@root@count}%
+ \lie@hasse@fix@order%
+ {\the\lie@hasse@root@count}%
+ {\lie@hasse@root@count@b}%
+ \edef\label@text{\the\lie@hasse@root@count@b}%
+ \draw@one@simple@root@label%
+ {\the\lie@hasse@root@count}%
+ {\label@text}%
+ \global\advance\lie@hasse@root@count by 1\relax%
+ \ifnum\lie@hasse@root@count<\the\max@lie@hasse@root@count%
+ \repeat%
+ }%
+ {%
+ \edef\lie@hasse@XXX{\dynkin@label@list}%
+ \foreach \lie@hasse@i in \lie@hasse@XXX%
+ {%
+ \set@lie@hasse@color{\the\lie@hasse@root@count}%
+ \lie@hasse@fix@order%
+ {\the\lie@hasse@root@count}%
+ {\lie@hasse@root@count@b}%
+ \draw@one@simple@root@label%
+ {\the\lie@hasse@root@count@b}%
+ {\lie@hasse@i}%
+ \global\advance\lie@hasse@root@count by 1\relax%
+ }%
+ }%
+}%
+\definecolor{lie@hasse@color}{hsb}{0,0,0}
+\NewDocumentCommand\set@lie@hasse@color{m}%
+{%
+\pgfmathsetmacro{\lie@hasse@huenum}{#1/\the\dynkin@rank}%
+\global\definecolor{lie@hasse@color}{hsb}{\lie@hasse@huenum,1,.6}%
+}%
+\NewDocumentCommand\draw@lie@hasse@root{m}%
+{%
+\if@compact@root{#1}%
+{%%
+\pgfkeys{/Lie Hasse diagram/compact root=#1}%
+}%%
+{%%
+\pgfkeys{/Lie Hasse diagram/noncompact root=#1}%
+}%%
+}%
+\xdef\lie@hasse@grade@a{}
+\xdef\lie@hasse@grade@b{}
+\xdef\lie@hasse@index@a{}
+\xdef\lie@hasse@index@b{}
+\newcount\root@gpo%
+\xdef\label@text{}%
+\NewDocumentCommand\draw@lie@hasse@edge{O{}mmmm}%
+%[edge label options]{from grade}{from index}{to index}{simple root}
+{%
+ \root@gpo #2\relax%
+ \advance\root@gpo by 1\relax%
+ \set@lie@hasse@color{#5}%
+ \lie@hasse@fix@order{#5}{\lie@hasse@root@count@b}%
+ \IfStrEq{\dynkin@label@list}{}%
+ {%
+ \xdef\label@text{\the\lie@hasse@root@count@b}%
+ }%
+ {%
+ \xdef\label@text%
+ {%
+ \label@list@at{\the\lie@hasse@root@count@b}%
+ }%
+ }%
+ \if@compact@simple@root{#5}%
+ {%%% Compact
+ \draw[%
+ lie@hasse@color,%
+ /Lie Hasse diagram/edge,%
+ /Lie Hasse diagram/compact edge]%
+ (#2;#3) --%
+ node[lie@hasse@color,/Lie Hasse diagram/edge quotes,#1]%
+ {\(\pgfkeys{/Dynkin diagram/label macro=\label@text}\)}%
+ (\the\root@gpo;#4);%
+ \IfSubStr{\lie@hasse@compact@roots}{#2;#3}%
+ {%% adding to a compact
+ \add@compact@root{\the\root@gpo;#4}%
+ }%%
+ {%%
+ }%%
+ }%%%
+ {%%% Noncompact
+ \draw[%
+ lie@hasse@color,%
+ /Lie Hasse diagram/edge,%
+ /Lie Hasse diagram/noncompact edge]%
+ (#2;#3) --%
+ node[lie@hasse@color,/Lie Hasse diagram/edge quotes,#1]%
+ {\(\pgfkeys{/Dynkin diagram/label macro=\label@text}\)}%
+ (\the\root@gpo;#4);%
+ }%%%
+}%
+\newcount\A@series@grade%
+\newcount\max@A@series@grade%
+\newcount\A@series@x%
+\newcount\A@series@y%
+\newcount\max@A@series@j%
+\newcount\A@series@j%
+\NewDocumentCommand\place@A@roots{}%
+{%
+ \A@series@grade 1\relax%
+ \max@A@series@grade \the\dynkin@rank\relax%
+ \advance\max@A@series@grade by 1\relax%
+ \A@series@x 0\relax%
+ \A@series@y 0\relax%
+ \loop%
+ \max@A@series@j\the\dynkin@rank\relax%
+ \advance\max@A@series@j by -\the\A@series@grade\relax%
+ \advance\max@A@series@j by 2\relax%
+ \A@series@j 1\relax%
+ {%
+ \loop%
+ \coordinate
+ (\the\A@series@grade;\the\A@series@j)
+ at
+ ({.5*\the\A@series@x*\dynkin@edge@length},
+ {.25*\the\A@series@y*\dynkin@edge@length})
+ {};%
+ \advance\A@series@j by 1\relax%
+ \advance\A@series@x by 2\relax%
+ \ifnum\A@series@j<\the\max@A@series@j%
+ \repeat%
+ }%
+ \advance\A@series@grade by 1\relax%
+ \advance\A@series@x by 1\relax%
+ \advance\A@series@y by 2\relax%
+ \ifnum\A@series@grade<\the\max@A@series@grade%
+ \repeat%
+}%
+\newcount\A@series@grade%
+\newcount\max@A@series@grade%
+\NewDocumentCommand\draw@A@roots{}%
+{%
+ \A@series@grade 1\relax%
+ \max@A@series@grade \the\dynkin@rank\relax%
+ \advance\max@A@series@grade by 1\relax%
+ \loop%
+ \max@A@series@j\the\dynkin@rank\relax%
+ \advance\max@A@series@j by -\the\A@series@grade\relax%
+ \advance\max@A@series@j by 2\relax%
+ \A@series@j 1\relax%
+ {%
+ \loop%
+ \draw@lie@hasse@root%
+ {\the\A@series@grade;\the\A@series@j}%
+ \advance\A@series@j by 1\relax%
+ \ifnum\A@series@j<\the\max@A@series@j%
+ \repeat%
+ }%
+ \advance\A@series@grade by 1\relax%
+ \ifnum\A@series@grade<\the\max@A@series@grade%
+ \repeat%
+}%
+\newcount\maxA@i%
+\newcount\maxA@j%
+\newcount\A@lbl%
+\newcount\A@i%
+\newcount\A@j%
+\newcount\A@ipo%
+\newcount\A@rj%
+\newcount\A@rjmo%
+\NewDocumentCommand\draw@A@edges{}%
+{%
+ \maxA@i\the\dynkin@rank\relax%
+ \A@i 1\relax%
+ \loop%
+ \maxA@j \the\dynkin@rank\relax%
+ \advance\maxA@j by -\the\A@i\relax%
+ \advance\maxA@j by 1\relax%
+ \ifnum\maxA@j>-1%
+ \A@j 1\relax%
+ {%
+ \loop%
+ \A@lbl\the\A@i\relax%
+ \advance\A@lbl by \the\A@j\relax%
+ \A@ipo \A@i\relax%
+ \advance\A@ipo by 1\relax%
+ \draw@lie@hasse@edge[left]%
+ {\the\A@i}{\the\A@j}%
+ {\the\A@j}{\the\A@lbl}%
+ \A@rj\the\maxA@j\relax%
+ \advance\A@rj by -\the\A@j\relax%
+ \advance\A@rj by 1\relax%
+ \A@rjmo\the\A@rj\relax%
+ \advance\A@rjmo by -1\relax%
+ \A@lbl-\A@lbl\relax%
+ \advance\A@lbl by \the\dynkin@rank%
+ \advance\A@lbl by 1%
+ \draw@lie@hasse@edge[right]%
+ {\the\A@i}{\the\A@rj}%
+ {\the\A@rjmo}{\the\A@lbl}%
+ \advance\A@j by 1\relax%
+ \ifnum\A@j<\the\maxA@j%
+ \repeat%
+ }%
+ \fi%
+ \advance\A@i by 1\relax%
+ \ifnum\A@i<\the\maxA@i%
+ \repeat%
+}%
+%% \hasse@A@width@at@grade{g}{\w} sets the counter \w to
+%% the value of the width (number of roots) at grade g of
+%% the A root system with rank \the\dynkin@rank
+\NewDocumentCommand\hasse@A@width@at@grade{mm}%
+{%
+ \global#2\the\dynkin@rank\relax%
+ \global\advance#2 by -#1\relax%
+ \global\advance#2 by 1\relax%
+}%
+\NewDocumentCommand\hasse@A{}%
+{%
+ \place@A@roots%
+ \draw@A@edges%
+ \draw@A@roots%
+}%
+%% \hasse@BC@width@at@grade{g}{\w} sets the counter \w to
+%% the value of the width (number of roots) at grade g of
+%% the B or C root system with rank \the\dynkin@rank
+\NewDocumentCommand\hasse@BC@width@at@grade{mm}%
+{%
+ \global#2\the\dynkin@rank\relax%
+ \global\advance#2 by \the\dynkin@rank\relax%
+ \global\advance#2 by -#1\relax%
+ \global\advance#2 by 1\relax%
+ \global\divide#2 by 2\relax%
+}%
+\newcount\tdrmt%
+\newcount\tdrmo%
+\newcount\max@BC@r%
+\newcount\BC@r%
+\newcount\BC@series@x%
+\newcount\BC@series@y%
+\NewDocumentCommand\place@BC@roots{}%
+{%
+\drmo \the\dynkin@rank\relax%
+\advance\drmo by -1\relax%
+\tdrmt \the\drmo\relax%
+\advance\tdrmt by \the\drmo\relax%
+\tdrmo \the\tdrmt\relax%
+\advance\tdrmo 1\relax%
+\max@BC@r \the\dynkin@rank\relax%
+\advance\max@BC@r by 1\relax%
+\BC@r 1\relax%
+\loop%
+ \BC@series@x \the\BC@r\relax%
+ \advance\BC@series@x by -1\relax%
+ \advance\BC@series@x by \the\BC@series@x\relax%
+ \BC@series@y 1\relax%
+ {%%
+ \loop%
+ \coordinate
+ (\the\BC@series@y;\the\BC@r)
+ at
+ ({.5*\the\BC@series@x*\dynkin@edge@length},
+ {.5*(\the\BC@series@y-1)*\dynkin@edge@length})
+ {};%
+ \advance\BC@series@y by 1\relax%
+ \advance\BC@series@x by 1\relax%
+ \ifnum\BC@series@x<\the\tdrmo\repeat%
+ }%%
+ \advance\BC@r by 1\relax%
+ \ifnum\BC@r<\the\max@BC@r%
+\repeat%
+}%
+\newcount\max@BC@i%
+\newcount\BC@i%
+\newcount\BC@series@x%
+\newcount\BC@series@y%
+\newcount\BC@ii%
+\newcount\BC@series@yy%
+\newcount\BC@series@yy%
+\newcount\lbl%
+\newcount\temp@lbl%
+\NewDocumentCommand\draw@BC@edges{s}%
+{%
+\tdrmo \the\dynkin@rank\relax%
+\advance\tdrmo by \the\dynkin@rank\relax%
+\advance\tdrmo by -1\relax%
+\max@BC@i \the\dynkin@rank\relax%
+\advance\max@BC@i by 1\relax%
+\BC@i 1\relax%
+\loop%
+ \BC@series@x \the\BC@i\relax%
+ \advance\BC@series@x by \the\BC@i\relax%
+ \advance\BC@series@x by -2\relax%
+ \BC@series@y 1\relax%
+ {%%
+ \loop%
+ \ifnum\BC@i>1%
+ % draw an edge upward to the left
+ \BC@ii \the\BC@i\relax%
+ \advance\BC@ii by -1\relax%
+ \BC@series@yy \the\BC@series@y\relax%
+ \advance\BC@series@yy by 1\relax%
+ \draw@lie@hasse@edge[right]%
+ {\the\BC@series@y}{\the\BC@i}%
+ {\the\BC@ii}%
+ {\the\BC@ii}%
+ \fi%
+ \ifnum\BC@series@y>1%
+ % draw an edge downward to the left
+ \BC@series@yy \the\BC@series@y\relax%
+ \advance\BC@series@yy by -1\relax%
+ \lbl \the\BC@i\relax%
+ \advance\lbl by \the\BC@series@y\relax%
+ \advance\lbl by -1\relax%
+ \ifnum\dynkin@rank<\the\lbl%
+ \temp@lbl \the\lbl\relax%
+ \lbl \the\dynkin@rank\relax%
+ \advance\lbl by \the\dynkin@rank%
+ \advance\lbl by -\the\temp@lbl%
+%% For the B series:
+ \IfBooleanF{#1}{\global\advance\lbl by 1\relax}%
+ \draw@lie@hasse@edge[left]%
+ {\the\BC@series@yy}{\the\BC@i}%
+ {\the\BC@i}%
+ {\the\lbl}%
+ \else%
+ \draw@lie@hasse@edge[left]%
+ {\the\BC@series@yy}{\the\BC@i}%
+ {\the\BC@i}%
+ {\the\lbl}%
+ \fi%
+ \fi%
+ \advance\BC@series@y by 1\relax%
+ \advance\BC@series@x by 1\relax%
+ \ifnum\BC@series@x<\the\tdrmo\repeat%
+ }%%
+ \advance\BC@i by 1\relax%
+ \ifnum\BC@i<\the\max@BC@i%
+\repeat%
+}%
+\newcount\tdrpt%
+\newcount\BC@r%
+\newcount\BC@series@y%
+\newcount\maxy%
+\NewDocumentCommand\draw@BC@roots{}%
+{%
+\tdrpt \the\dynkin@rank\relax%
+\advance\tdrpt by \the\dynkin@rank\relax%
+\advance\tdrpt by 2\relax%
+\max@BC@r \the\dynkin@rank\relax%
+\advance\max@BC@r by 1\relax%
+\BC@r 1\relax%
+\loop%
+ \BC@series@y 1\relax%
+ \maxy \tdrpt\relax%
+ \advance\maxy -\the\BC@r\relax%
+ \advance\maxy -\the\BC@r\relax%
+ {%%
+ \loop%
+ \draw@lie@hasse@root{\the\BC@series@y;\the\BC@r}%
+ \advance\BC@series@y by 1\relax%
+ \ifnum\BC@series@y<\the\maxy\repeat%
+ }%%
+ \advance\BC@r by 1\relax%
+ \ifnum\BC@r<\the\max@BC@r%
+\repeat%
+}%
+\NewDocumentCommand\hasse@BC{s}% star for C:
+{%
+ \place@BC@roots%
+ \IfBooleanTF{#1}%
+ {%
+ \draw@BC@edges*%
+ }%
+ {%
+ \draw@BC@edges%
+ }%
+ \draw@BC@roots%
+}%
+\NewDocumentCommand\hasse@D{}%
+{%
+ \place@D@roots%
+ \draw@D@edges%
+ \iflie@hasse@threeD%
+ \draw@D@hasse@three@D%
+ \fi%
+ \draw@D@roots%
+}%
+\newcount\drmt%
+\NewDocumentCommand\draw@D@hasse@three@D{}%
+{%
+ \drmo \the\dynkin@rank\relax%
+ \advance\drmo by -1\relax%
+ \drmt \the\dynkin@rank\relax%
+ \advance\drmt by -2\relax%
+ \begin{pgfonlayer}{Dynkin middle}%
+ \fill[/Lie Hasse diagram/left]
+ (\the\drmt;1) --
+ (\the\drmo;1) --
+ (\the\dynkin@rank;1) --
+ (\the\drmo;2) --
+ cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (\the\drmt;1) --
+ (1;\the\drmt) --
+ (2;\the\drmo) --
+ (\the\drmo;2) --
+ cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (\the\drmo;2) --
+ (\the\dynkin@rank;1) --
+ (3;\the\drmo) --
+ (2;\the\drmo) --
+ cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (\the\drmo;1) --
+ (\the\dynkin@rank;1) --
+ (3;\the\drmo) --
+ (2;\the\drmt) --
+ cycle;%
+ \fill[/Lie Hasse diagram/top]
+ (\the\drmt;1) --
+ (\the\drmo;1) --
+ (2;\the\drmt) --
+ (1;\the\drmt) --
+ cycle;%
+ \fill[/Lie Hasse diagram/left]
+ (1;\the\drmt) --
+ (2;\the\drmt) --
+ (3;\the\drmo) --
+ (2;\the\drmo) --
+ cycle;%
+ \end{pgfonlayer}%
+}%
+\NewDocumentCommand\hasse@D@width@at@grade{mm}%
+{%
+ \global#2\the\dynkin@rank\relax%
+ \global\advance#2 by\the\dynkin@rank\relax%
+ \global\advance#2 by -#1\relax%
+ \ifnum#1<\the\dynkin@rank%
+ \global\advance#2 by 1\relax%
+ \else%
+ \global\advance#2 by -1\relax%
+ \fi%
+ \global\divide#2 by 2\relax%
+}%
+\newcount\max@D@grades%
+\newcount\max@D@grades@plus@one%
+\newcount\D@g%
+\newcount\maxD@grd%
+\newcount\D@grd%
+\newcount\maxxD%
+\newcount\iD%
+\newcount\xxD%
+\newcount\sum@D%
+\NewDocumentCommand\place@D@roots{}%
+{%
+ \global\max@D@grades \the\dynkin@rank\relax%
+ \global\advance\max@D@grades \the\dynkin@rank\relax%
+ \global\advance\max@D@grades -3\relax%
+ \max@D@grades@plus@one \the\max@D@grades\relax%
+ \advance\max@D@grades@plus@one 1\relax%
+ \D@g 1\relax%
+ {%
+ \loop%
+ \place@D@roots@at@grade{\the\D@g}%
+ \advance\D@g by 1\relax%
+ \ifnum\D@g<\the\max@D@grades@plus@one%
+ \repeat%
+ }%
+}%
+\newcount\D@r%
+\NewDocumentCommand\place@D@roots@at@grade{m}%
+{%
+ \hasse@D@width@at@grade{#1}{\max@D@roots}%
+ \max@D@roots@plus@one \the\max@D@roots\relax%
+ \advance\max@D@roots@plus@one 1\relax%
+ \D@r 1\relax%
+ {%
+ \loop%
+ \place@D@root@at{#1}{\the\D@r}%
+ \advance\D@r by 1\relax%
+ \ifnum\D@r<\the\max@D@roots@plus@one%
+ \repeat%
+ }%
+}%
+\newcount\drpo%
+\NewDocumentCommand\place@D@root@at{mm}%
+{%
+ \xxD #1\relax%
+ \advance\xxD by #2\relax%
+ \advance\xxD by #2\relax%
+ \advance\xxD by -3\relax%
+ \drpo \the\dynkin@rank\relax%
+ \advance\drpo by 1\relax%
+ \sum@D #1\relax%
+ \advance\sum@D by #2\relax%
+ \ifnum\sum@D=\the\dynkin@rank%
+ \global\def\D@root@x%
+ {\the\xxD-\lie@hasse@three@D@shift}%
+ \else%
+ \ifnum\sum@D=\the\drpo%
+ \ifnum#1<\the\dynkin@rank%
+ \global\def\D@root@x%
+ {\the\xxD-2+\lie@hasse@three@D@shift}%
+ \else%
+ \global\def\D@root@x{\the\xxD}%
+ \fi%
+ \else%
+ \ifnum\sum@D<\the\dynkin@rank%
+ \global\def\D@root@x{\the\xxD}%
+ \else%
+% if \sum@D exceeds rank+1
+ \ifnum#1<\the\dynkin@rank%
+ \global\def\D@root@x{\the\xxD-2}%
+ \else%
+ \global\def\D@root@x{\the\xxD}%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \coordinate
+ (#1;#2)
+ at
+ ({(\D@root@x)*\dynkin@edge@length/2},{(#1-1)*\dynkin@edge@length/2})
+ {};%
+}%
+\NewDocumentCommand\draw@D@edges{}%
+{%
+ \global\max@D@grades \the\dynkin@rank\relax%
+ \global\advance\max@D@grades \the\dynkin@rank\relax%
+ \global\advance\max@D@grades -3\relax%
+ \D@g 1\relax%
+ {%
+ \loop%
+ \draw@D@edges@at@grade{\the\D@g}%
+ \advance\D@g by 1\relax%
+ \ifnum\D@g<\the\max@D@grades%
+ \repeat%
+ }%
+}%
+\newcount\max@D@roots%
+\newcount\max@D@roots@plus@one%
+\NewDocumentCommand\draw@D@edges@at@grade{m}%
+{%
+ \hasse@D@width@at@grade{#1}{\max@D@roots}%
+ \max@D@roots@plus@one \the\max@D@roots\relax%
+ \advance\max@D@roots@plus@one 1\relax%
+ \D@r 1\relax%
+ {%
+ \loop%
+ \draw@D@edges@at{#1}{\the\D@r}{\the\max@D@roots}%
+ \advance\D@r by 1\relax%
+ \ifnum\D@r<\the\max@D@roots@plus@one%
+ \repeat%
+ }%
+}%
+\newcount\hasse@D@gpo%
+\newcount\hasse@D@imo%
+\newcount\hasse@D@w%
+\newcount\hasse@D@gpi%
+\newcount\hasse@D@target%
+\newif\ifhasse@D%
+\xdef\hasse@D@layer{}%
+\xdef\hasse@D@LR{}%
+\newcount\hasse@D@label%
+\NewDocumentCommand\draw@D@edges@at{mm}%
+{%
+ \drmo\the\dynkin@rank\relax%
+ \advance\drmo by -1\relax%
+ \drpo \the\dynkin@rank\relax%
+ \advance\drpo by 1\relax%
+ \hasse@D@gpo#1\relax%
+ \advance\hasse@D@gpo by 1\relax%
+ \hasse@D@gpi#1\relax%
+ \advance\hasse@D@gpi #2\relax%
+ \hasse@D@imo#2\relax%
+ \advance\hasse@D@imo by -1\relax%
+ \hasse@Dfalse%
+ \xdef\hasse@D@layer{Dynkin middle}%
+ \xdef\hasse@D@LR{left}%
+ \hasse@D@width@at@grade{#1}{\hasse@D@w}%
+ \ifnum#2>1%
+ % Not at the left edge, so draw an edge going up to the left
+ \global\hasse@D@label#2\relax%
+ \advance\hasse@D@label -1\relax%
+ \ifnum\hasse@D@gpo=\the\dynkin@rank%
+ \ifnum\hasse@D@imo=1%
+ % (g;i)=(r-1;2) doesn't go anywhere up to the left.
+ \else%
+ % connect g;i to g+1;i-2
+ \global\hasse@Dtrue%
+ \global\hasse@D@target \hasse@D@imo\relax
+ \global\advance\hasse@D@target by -1\relax%
+ \fi%
+ \else%
+ % connect g;i to g+1;i-1
+ \global\hasse@Dtrue%
+ \global\hasse@D@target \hasse@D@imo\relax%
+ \ifnum\hasse@D@gpi=\the\dynkin@rank%
+ \xdef\hasse@D@layer{Dynkin above}%
+ \else%
+ % below or middle.
+ \ifnum\hasse@D@gpi=\the\drpo%
+ \xdef\hasse@D@layer{Dynkin behind}%
+ \fi%
+ \fi%
+ \fi%
+ \ifnum\hasse@D@w=#2%
+ \xdef\hasse@D@LR{right}%
+ \fi%
+ \fi%
+ \ifnum\dynkin@rank>#1%
+ \ifnum\hasse@D@gpi<\the\drpo%
+ \else%
+ \global\advance\hasse@D@label -1\relax%
+ \fi%
+ \fi%
+ \ifhasse@D%
+ \begin{pgfonlayer}{\hasse@D@layer}
+ \draw@lie@hasse@edge%
+ [\hasse@D@LR]%
+ {#1}{#2}%
+ {\the\hasse@D@target}{\the\hasse@D@label}%
+ \end{pgfonlayer}%
+ \fi%
+ \hasse@Dtrue%
+ \xdef\hasse@D@LR{left}%
+ \ifnum\hasse@D@w=#2%
+ \ifodd#1%
+ % not enough room to draw an edge going rightward.
+ \global\hasse@Dfalse\relax%
+ \else%
+ \xdef\hasse@D@LR{right}%
+ \fi%
+ \fi%
+ \ifnum#1=1%
+ \ifnum\drmo=#2%
+ \global\hasse@Dfalse\relax%
+ \else%
+ \xdef\hasse@D@LR{right}%
+ \fi%
+ \fi%
+ \ifhasse@D%
+ \global\hasse@D@label \hasse@D@gpi\relax%
+ \ifnum\hasse@D@label>\the\dynkin@rank%
+ \hasse@D@label -\hasse@D@label\relax%
+ \advance\hasse@D@label \the\dynkin@rank\relax%
+ \advance\hasse@D@label \the\drmo\relax%
+ \fi%
+ \ifnum\drmo<#1%
+ \else%
+ \ifnum#2=1%
+ \else%
+ \ifnum\hasse@D@gpi<\the\drpo%
+ \else%
+ \advance\hasse@D@label 1\relax%
+ \fi%
+ \fi%
+ \fi%
+ \global\hasse@D@target #2\relax%
+ \ifnum\hasse@D@gpi=\the\dynkin@rank%
+ \ifnum#2=1%
+ \else%
+ \global\advance\hasse@D@target by 1\relax%
+ \fi%
+ \else%
+ \ifnum\drmo=#1%
+ \global\advance\hasse@D@target by -1\relax%
+ \fi%
+ \fi%
+ \ifnum\hasse@D@gpi=\the\drpo%
+ \ifnum#2>1%
+ \xdef\hasse@D@layer{Dynkin behind}%
+ \xdef\hasse@D@LR{right}%
+ \fi%
+ \else%
+ \ifnum\hasse@D@gpi=\the\dynkin@rank%
+ \xdef\hasse@D@layer{Dynkin above}%
+ \else%
+ \ifnum\hasse@D@gpi=\the\drmo%
+ \xdef\hasse@D@layer{Dynkin above}%
+ \else%
+ \xdef\hasse@D@layer{Dynkin middle}%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+ \ifhasse@D%
+ \begin{pgfonlayer}{\hasse@D@layer}
+ \draw@lie@hasse@edge%
+ [\hasse@D@LR]%
+ {#1}{#2}%
+ {\the\hasse@D@target}{\the\hasse@D@label}%
+ \end{pgfonlayer}%
+ \fi%
+% % Draw any other edges.
+ \ifnum\hasse@D@gpi=\the\drmo%
+ \hasse@D@target#2\relax%
+ \advance\hasse@D@target by 1\relax%
+ \begin{pgfonlayer}{Dynkin behind}
+ \draw@lie@hasse@edge%
+ [right,near start]%
+ {#1}{#2}%
+ {\the\hasse@D@target}{\the\dynkin@rank}%
+ \end{pgfonlayer}%
+ \fi%
+}%
+\newcount\maxD@grd%
+\newcount\D@grd%
+\newcount\maxxD%
+\newcount\sum@D%
+\NewDocumentCommand\draw@D@roots{}%
+{%
+ \drmo \the\dynkin@rank\relax%
+ \advance\drmo by -1\relax%
+ \maxD@grd \the\dynkin@rank\relax%
+ \advance\maxD@grd by \the\dynkin@rank\relax%
+ \advance\maxD@grd by -2\relax%
+ \D@grd 1\relax%
+ \loop%
+ % Construct the roots at grade \D@grd.
+ \draw@D@roots@at@grade{\D@grd}%
+ \advance\D@grd by 1\relax%
+ \ifnum\D@grd<\the\maxD@grd%
+ \repeat%
+}%
+\NewDocumentCommand\draw@D@roots@at@grade{m}%
+{%
+ \hasse@D@width@at@grade{#1}{\max@D@roots}%
+ \max@D@roots@plus@one \the\max@D@roots\relax%
+ \advance\max@D@roots@plus@one 1\relax%
+ \D@r 1\relax%
+ {%
+ \loop%
+ \draw@lie@hasse@root{\the\D@grd;\the\D@r}%
+ \advance\D@r by 1\relax%
+ \ifnum\D@r<\the\max@D@roots@plus@one%
+ \repeat%
+ }%
+}%
+%}%
+\newcount\lie@hasse@grade@no
+\newcount\lie@hasse@root@no
+\def\lie@hasse@XX{}
+\def\lie@hasse@ZZ{}
+\NewDocumentCommand\lie@hasse@read@root@pair{m}%
+{%
+ \IfSubStr{#1}{:}%
+ {%
+ \StrBefore{#1}{:}[\lie@hasse@XX]%
+ \StrBehind{#1}{:}[\lie@hasse@ZZ]%
+ }%
+ {%
+ \xdef\lie@hasse@XX{#1}%
+ \xdef\lie@hasse@ZZ{0}%
+ }%
+ \IfStrEq{\dynkin@series}{G}%
+ {%
+ \pgfmathsetmacro\lie@hasse@XX%
+ {\lie@hasse@XX}%
+ }%
+ {% else
+ \pgfmathsetmacro\lie@hasse@XX%
+ {\lie@hasse@XX+\lie@hasse@three@D@shift*(\the\lie@hasse@grade@no-\lie@hasse@ZZ-1)}%
+ }%
+}%
+\NewDocumentCommand\lie@hasse@place@root{m}%
+{%
+ \lie@hasse@read@root@pair{#1}%
+ \coordinate
+ (\the\lie@hasse@grade@no;\the\lie@hasse@root@no)
+ at
+ ({\lie@hasse@XX*\dynkin@edge@length/2},
+ {(\the\lie@hasse@grade@no-1)*\dynkin@edge@length/2}) {};%
+ \global\advance\lie@hasse@root@no by 1%
+}%
+\NewDocumentCommand\lie@hasse@place@root@list{m}%
+{%
+ \global\lie@hasse@root@no 1\relax%
+ \expandafter\forcsvlist\expandafter{\lie@hasse@place@root}{#1}%
+ \global\advance\lie@hasse@grade@no by 1%
+}%
+\NewDocumentCommand\lie@hasse@place@roots{m}%
+{%
+ \global\lie@hasse@grade@no 1\relax%
+ \renewcommand*{\do}[1]%
+ {%
+ \lie@hasse@place@root@list{##1}%
+ }%
+ \expandafter\docsvlist\expandafter{#1}%
+}%
+\NewDocumentCommand\lie@hasse@draw@root{m}%
+{%
+ \draw@lie@hasse@root{\the\lie@hasse@grade@no;\the\lie@hasse@root@no}%
+ \global\advance\lie@hasse@root@no by 1%
+}%
+\NewDocumentCommand\lie@hasse@root@draw@list{m}%
+{%
+ \global\lie@hasse@root@no 1\relax%
+ \expandafter\forcsvlist\expandafter{\lie@hasse@draw@root}{#1}%
+ \global\advance\lie@hasse@grade@no by 1%
+}%
+\NewDocumentCommand\lie@hasse@draw@roots{m}%
+{%
+ \global\lie@hasse@grade@no 1\relax%
+ \renewcommand*{\do}[1]%
+ {%
+ \lie@hasse@root@draw@list{##1}%
+ }%
+ \expandafter\docsvlist\expandafter{#1}%
+}%
+\newcount\lie@hasse@grade@no@plus@one%
+\newcount\lie@hasse@edge@count%
+\def\lie@hasse@edge@go{%
+\@ifstar\lie@hasse@process@edge@above\lie@hasse@process@edge@behind}%
+\NewDocumentCommand\lie@hasse@process@edge{m}%
+{%
+ \lie@hasse@edge@go#1!%
+}%
+\def\lie@hasse@process@edge@above#1!%
+{%
+ \global\advance\lie@hasse@edge@count by 1\relax%
+ \begin{pgfonlayer}{Dynkin above}%
+ \lie@hasse@finish@edge#1!%
+ \end{pgfonlayer}%
+}%
+\def\lie@hasse@process@edge@behind#1!%
+{%
+ \global\advance\lie@hasse@edge@count by 1\relax%
+ \begin{pgfonlayer}{Dynkin behind}%
+ \lie@hasse@finish@edge#1\relax%
+ \end{pgfonlayer}%
+}%
+\def\lie@hasse@finish@edge#1+#2#3#4%
+{%
+ \ifx#3<\relax%
+ \draw@lie@hasse@edge[left]%
+ {\the\lie@hasse@grade@no}{#1}%
+ {#4}%
+ {#2}%
+ \else%
+ \draw@lie@hasse@edge[right]%
+ {\the\lie@hasse@grade@no}{#1}%
+ {#4}%
+ {#2}%
+ \fi%
+}%
+\NewDocumentCommand\lie@hasse@process@edge@list{m}%
+{%
+ \global\lie@hasse@edge@count 0\relax%
+ \expandafter\forcsvlist\expandafter\lie@hasse@process@edge{#1}%
+ \global\advance\lie@hasse@grade@no by 1\relax%
+}%
+\NewDocumentCommand\lie@hasse@process@edge@lists{m}%
+{%
+ \global\lie@hasse@grade@no 1\relax%
+ \expandafter\forcsvlist\expandafter{\lie@hasse@process@edge@list}{#1}%
+}%
+\NewDocumentCommand\hasse@X{mm}%
+{%
+ \lie@hasse@place@roots{#1}%
+ \lie@hasse@process@edge@lists{#2}%
+ \lie@hasse@draw@roots{#1}%
+}%
+\NewDocumentCommand\hasse@E@six@width@at@grade{mm}%
+{%
+ \ifnum#1=1%
+ #2 6%
+ \else\ifnum#1=2%
+ #2 5%
+ \else\ifnum#1=3%
+ #2 5%
+ \else\ifnum#1=4%
+ #2 5%
+ \else\ifnum#1=5%
+ #2 4%
+ \else\ifnum#1=6%
+ #2 3%
+ \else\ifnum#1=7%
+ #2 3%
+ \else\ifnum#1=8%
+ #2 2%
+ \else\ifnum#1<1%
+ #2 0%
+ \else\ifnum#1>11%
+ #2 0%
+ \else%
+ #2 1%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
+}%
+% In the following code, edges are described by grade: in grade g, the expression i+r<j. means an edge from g;i to (g+1);j labelled by root r, with a label on the left; use > instead of < to get the right. Use a star in front to get this edge on the higher layer.
+\NewDocumentCommand\hasse@E@six{}%
+{%
+\hasse@X%
+{{0,2,4,5:1,6,8},{1,3,4:1,5,7},{2,3:1,4,5:1,6},{2:1,3,4:1,5,6:1},%
+{3:1,4:2,4,5:1},{3:2,4:1,5:2},{2:2,4:2,6:2},{3:2,5:2},{4:2},{4:3},{4:4}}%
+{%%% grades:
+{% 1
+1+2<1,*2+3>2,*3+4<3,*5+6>5,*2+1<1,*3+2<2,*3+5>4,*4+3>3,*5+3<4,6+5>5},
+{% 2
+*1+3<1,*2+4<2,*3+5<4,4+2<3,*4+4<4,*4+6<5,*2+1<1,2+5>3,*3+2>2,*5+3>5},
+{% 3
+*1+4<1,3+1<2,*2+5<3,*2+1<1,3+4<3,3+6<4,*4+2<3,*4+6<5,1+5>2,5+2>4,*5+4>5},
+{% 4
+*1+5<1,2+4<1,2+6<3,*3+1<1,*3+3>2,4+1<3,4+4<4,*3+6<4,*5+2>4},
+{% 5
+*1+3<1,1+6<2,3+4<2,4+1>2,*2+1<1,*2+6>3,*4+3>3},
+{% 6
+*1+2<1,*1+6<2,2+3<2,*3+1<2,*3+5>3},
+{% 7
+*1+6<1,*2+5<2,*2+2<1,*3+1>2},
+{% 8
+*1+5<1,*2+2>1},
+{% 9
+1+3<1},
+{% 10
+1+4<1}
+}%%%
+\iflie@hasse@threeD%
+\begin{pgfonlayer}{Dynkin middle}%
+\fill[/Lie Hasse diagram/top] (2;1) -- (5;3) -- (2;5) -- (1;5) -- (2;4) -- (1;3) -- (2;2) -- (1;2) -- cycle;%
+\fill[/Lie Hasse diagram/top] (2;3) -- (4;1) -- (6;2) -- (4;5) -- cycle;%
+\fill[/Lie Hasse diagram/right] (1;3) -- (2;3) -- (4;5) -- (3;5) -- cycle;%
+\fill[/Lie Hasse diagram/left] (3;1) -- (4;1) -- (2;3) -- (1;3) -- cycle;%
+\fill[/Lie Hasse diagram/left] (4;3) -- (5;1) -- (6;1) -- (5;2) -- cycle;%
+\fill[/Lie Hasse diagram/right] (4;3) -- (5;2) -- (6;3) -- (5;4) -- cycle;%
+\fill[/Lie Hasse diagram/top] (5;2) -- (7;1) -- (9;1) -- (7;3) -- cycle;%
+\end{pgfonlayer}%
+\fi%
+}%
+\NewDocumentCommand\hasse@E@seven@width@at@grade{mm}%
+{%
+ \ifnum#1=1%
+ #2 7%
+ \else\ifnum#1=2%
+ #2 6%
+ \else\ifnum#1=3%
+ #2 6%
+ \else\ifnum#1=4%
+ #2 6%
+ \else\ifnum#1=5%
+ #2 6%
+ \else\ifnum#1=6%
+ #2 5%
+ \else\ifnum#1=7%
+ #2 5%
+ \else\ifnum#1=8%
+ #2 4%
+ \else\ifnum#1=9%
+ #2 4%
+ \else\ifnum#1=10%
+ #2 3%
+ \else\ifnum#1=11%
+ #2 3%
+ \else\ifnum#1=12%
+ #2 2%
+ \else\ifnum#1=13%
+ #2 2%
+ \else\ifnum#1<1%
+ #2 0%
+ \else\ifnum#1>17%
+ #2 0%
+ \else%
+ #2 1%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
+}%
+
+\NewDocumentCommand\hasse@E@seven{}%
+{%
+\hasse@X%
+{{0,2,4,6,7:1,8,10},%1
+{1,3,5,6:1,7,9},%2
+{2,4,5:1,6,7:1,8},%3
+{3,4:1,5,6:1,7,8:1},%4
+{3:1,4,5:1,6:2,6,7:1},%5
+{4:1,5:2,5,6:1,7:2},%6
+{4:2,5:3,5:1,6:2,8:2},%7
+{4:3,5:2,6:3,7:2},%8
+{3:3,5:3,6:2,7:3},%9
+{4:3,6:3,8:3},%10
+{5:3,7:3,9:3},%11
+{6:3,8:3},%12
+{5:3,7:3},%13
+{6:3},%14
+{6:4},%15
+{6:5},%16
+{6:6}%17
+}
+{%%% grades:
+{% 1
+*1+2<1,*2+1<1,*2+3>2,*3+2<2,*3+4>3,*4+3<3,*4+5<4,4+6>5,*5+4<4,*6+4<5,*6+7>6,*7+6>6},
+{% 2
+*1+3<1,*2+1<1,*2+4<2,*3+2<2,*3+5<3,3+6<4,*4+3<3,*4+6>5,5+3>4,*5+5>5,*5+7>6,*6+4>6},
+{% 3
+*1+4<1,*2+1<1,*2+5<2,2+6<3,*3+2<2,*3+6<4,4+2<3,4+5<4,4+7<5,*5+3<4,*5+7>6,6+3>5,*6+5>6},
+{% 4
+*1+5<1,1+6<2,*2+1<1,*2+6<3,3+1<2,3+5<3,3+7<5,*4+2<3,*4+4>4,5+2<5,*4+7<6,5+5<6,*6+3>6},
+{% 5
+*1+6<1,2+5<1,2+7>3,*3+1<1,*3+4<2,5+1<3,3+7<4,*4+2<2,*4+7>5,5+5<4,6+2>4,*6+4>5},
+{% 6
+*1+4<1,1+7<3,*2+1<1,*2+3>2,*2+7>4,3+5<3,4+1>3,4+4>4,*5+2>4,*5+6>5},
+{% 7
+*1+3<1,1+7<2,*2+1<1,3+4<2,4+1>2,*4+3>3,*2+7>3,*4+6>4,*5+2>4},
+{% 8
+*1+2<1,*1+7<2,2+3<2,2+6<3,*3+1<2,*3+6<4,4+1>3,*4+3>4},
+{% 9
+*1+7<1,*2+2<1,*2+6<2,3+3<2,*4+1>2,*4+4>3},
+{% 10
+*1+6<1,*2+2<1,*2+4<2,*3+1<2,*3+5>3},
+{% 11
+*1+4<1,*2+2<1,*2+5<2,*3+1<2},
+{% 12
+*1+3<1,*1+5<2,*2+2<2},
+{% 13
+*1+5<1,*2+3<1},
+{% 14
+1+4<1},
+{% 15
+1+6<1},
+{% 16
+1+7<1},
+}%%%
+\iflie@hasse@threeD%
+\begin{pgfonlayer}{Dynkin middle}%
+\fill[/Lie Hasse diagram/top] (2;1) -- (6;3) -- (2;6) -- (1;6) -- (2;5) -- (1;4) -- (2;3) -- (1;3) --
+ (2;2) -- (1;2) -- cycle;%
+\fill[/Lie Hasse diagram/top] (5;1) -- (7;3) -- (4;6) -- (2;4) -- cycle;%
+\fill[/Lie Hasse diagram/top] (7;1) -- (9;3) -- (7;5) -- (5;4) -- cycle;%
+\fill[/Lie Hasse diagram/top] (9;1) -- (12;1) -- (13;1) -- (14;1) -- (11;3) -- (7;2) -- cycle;%
+\fill[/Lie Hasse diagram/right] (1;4) -- (2;4) -- (4;6) -- (3;6) -- cycle;%
+\fill[/Lie Hasse diagram/left] (4;1) -- (5;1) -- (2;4) -- (1;4) -- cycle;%
+\fill[/Lie Hasse diagram/left] (4;4) -- (6;1) -- (8;1) -- (7;2) -- (6;2) -- (5;4) -- cycle;%
+\fill[/Lie Hasse diagram/right] (4;4) -- (5;4) -- (6;5) -- (5;6) -- cycle;%
+\fill[/Lie Hasse diagram/right] (6;2) -- (7;2) -- (9;4) -- (8;4) -- cycle;%
+\end{pgfonlayer}%
+\fi%
+}%
+
+\NewDocumentCommand\hasse@E@eight@width@at@grade{mm}%
+{%
+ \ifnum#1=1%
+ #2 8%
+ \else\ifnum#1=2%
+ #2 7%
+ \else\ifnum#1=3%
+ #2 7%
+ \else\ifnum#1=4%
+ #2 7%
+ \else\ifnum#1=5%
+ #2 7%
+ \else\ifnum#1=6%
+ #2 7%
+ \else\ifnum#1=7%
+ #2 7%
+ \else\ifnum#1=8%
+ #2 6%
+ \else\ifnum#1=9%
+ #2 6%
+ \else\ifnum#1=10%
+ #2 6%
+ \else\ifnum#1=11%
+ #2 6%
+ \else\ifnum#1=12%
+ #2 5%
+ \else\ifnum#1=13%
+ #2 5%
+ \else\ifnum#1=14%
+ #2 4%
+ \else\ifnum#1=15%
+ #2 4%
+ \else\ifnum#1=16%
+ #2 4%
+ \else\ifnum#1=17%
+ #2 4%
+ \else\ifnum#1=18%
+ #2 3%
+ \else\ifnum#1=19%
+ #2 3%
+ \else\ifnum#1=20%
+ #2 2%
+ \else\ifnum#1=21%
+ #2 2%
+ \else\ifnum#1=22%
+ #2 2%
+ \else\ifnum#1=23%
+ #2 2%
+ \else\ifnum#1<1%
+ #2 0%
+ \else\ifnum#1>29%
+ #2 0%
+ \else%
+ #2 1%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi%
+}%
+
+\NewDocumentCommand\hasse@E@eight{}%
+{%
+\hasse@X{%
+{0,2,4,6,8,9:1,10,12},%1
+{1,3,5,7,8:1,9,11},%2
+{2,4,6,7:1,8,9:1,10},%3
+{3,5,6:1,7,8:1,9,10:1},%4
+{4,5:1,6,7:1,8:2,8,9:1},%5
+{4:1,5,6:1,7:2,7,8:1,9:2},%6
+{5:1,6:2,6,7:3,7:1,8:2,10:2},%7
+{5:2,6:3,6:1,7:2,8:3,9:2},%8
+{5:3,6:4,6:2,7:3,8:2,9:3},%9
+{5:4,6:3,7:4,7:2,8:3,10:3},%10
+{4:4,6:4,7:3,8:4,9:3,11:3},%11
+{5:4,7:4,8:3,9:4,10:3},%12
+{6:4,8:4,9:5,9:3,10:4},%13
+{7:4,8:5,9:4,10:5},%14
+{7:5,8:4,9:5,11:5},%15
+{6:5,8:5,10:5,12:5},%16
+{7:5,9:5,11:5,13:5},%17
+{8:5,10:5,12:5},%18
+{7:5,9:5,11:5},%19
+{8:5,10:5},%20
+{7:5,9:5},%21
+{6:5,8:5},%22
+{7:5,9:5},%23
+{8:5},%24
+{8:6},%25
+{8:7},%26
+{8:8},%27
+{8:9},%28
+{8:10}%29
+}%
+{%%% grades:
+{% 1
+*1+2<1,*2+1<1,*2+3>2,*3+2<2,*3+4>3,*4+3<3,*4+5>4,*5+4<4,*5+6<5,5+7>6,*6+5>5,*7+5<6,*7+8>7,8+7>7},
+{% 2
+*1+3<1,*2+1<1,*2+4<2,*3+2<2,*3+5<3,*4+3<3,*4+6<4,4+7>5,*5+4<4,*5+7<6,6+4<5,*6+6>6,*6+8>7,*7+5>7},
+{% 3
+*1+4<1,*2+1<1,*2+5<2,*3+2<2,*3+6<3,3+7>4,*4+3<3,*4+7<5,5+3<4,5+6>5,5+8>6,*6+4>5,*6+8<7,7+4>6,*7+6>7},
+{% 4
+*1+5<1,*2+1<1,*2+6<2,2+7>3,*3+2<2,*3+7<4,4+2<3,4+6<4,4+8<6,*5+3<4,*5+5>5,*5+8<7,6+3>6,6+6>7,*7+4>7},
+{% 5
+6+2<5,*1+6<1,1+7<2,*2+1<1,*2+7<3,3+1<2,3+6<3,3+8<5,*4+2<3,*4+5<4,4+8<6,*5+3<4,*5+8>7,6+6<6,7+3>6,*7+5>7},
+{% 6
+*1+7<1,2+6<1,2+8<3,*3+1<1,*3+5<2,*4+2<2,3+8<5,*4+4<4,*4+8>6,5+1<3,5+6<5,6+2>5,6+5>6,*7+3>6,*7+7>7},
+{% 7
+5+1<3,*1+5<1,1+8<3,*2+1<1,*2+4<2,2+8<4,3+6<3,*4+2<2,*4+8>5,5+5<4,6+2>4,*6+4>5,*6+7>6,*7+3>6},
+{% 8
+*1+4<1,1+8<3,*2+1<1,*2+3>2,*2+8>4,3+5<3,4+1<3,4+4<4,4+7<5,*5+2<4,*5+7<6,*6+4>6,6+2>5},
+{% 9
+*1+3<1,1+8<2,*2+1<1,*2+8<3,3+4<2,3+7<4,*4+3>3,4+1<2,*4+7<5,5+1>4,5+4>5,*6+2>5,*6+5>6},
+{% 10
+*1+2<1,*1+8<2,2+3<2,2+7<3,*3+1<2,*3+7>4,4+4<3,5+1>3,*5+3>4,*5+5>5,*6+2<5,*6+6>6},
+{% 11
+*1+8<1,*2+2<1,*2+7<2,3+3<2,3+5>3,*4+1<2,*4+5<4,*5+3>4,5+1>3,*5+6>5,*6+2>5},
+{% 12
+*1+7<1,*2+2<1,*2+5<2,3+3<2,3+6<4,*4+1<2,*4+4>3,*4+6<5,5+1>4,*5+3>5},
+{% 13
+*1+5<1,*2+2<1,*2+4<2,2+6<3,*3+1<2,*3+6>4,4+3<3,5+1>3,*5+4>4},
+{% 14
+*1+4<1,1+6<2,*2+2<1,*2+6<3,3+2<2,3+4<3,*4+1<3,*4+5>4},
+{% 15
+*1+3<1,*1+6<2,2+4<2,*3+2>2,*3+5<3,*4+1<3,*4+7>4},
+{% 16
+*1+6<1,*2+3<1,*2+5<2,*3+2<2,*3+7<3,*4+1<3,*4+8>4},
+{% 17
+*1+5<1,*2+3<1,*2+7<2,*3+2<2,*3+8<3,*4+1>3},
+{% 18
+*1+4<1,*1+7<2,*2+3<2,*2+8<3,*3+2>3},
+{% 19
+*1+7<1,*2+4<1,*2+8<2,*3+3>2},
+{% 20
+*1+5<1,*1+8<2,*2+4>2},
+{% 21
+*1+6<1,*1+8<2,*2+5>2,},
+{% 22
+*1+8<1,*2+6<1,*2+7>2},
+{% 23
+*1+7<1,*2+6>1},
+{% 24
+1+5>1},
+{% 25
+1+4>1},
+{% 26
+1+3>1},
+{% 27
+1+2>1},
+{% 28
+1+1>1}
+}%%%
+\iflie@hasse@threeD%
+\begin{pgfonlayer}{Dynkin middle}%
+\fill[/Lie Hasse diagram/top]
+ (2;1) --
+ (7;3) --
+ (2;7) --
+ (1;7) --
+ (2;6) --
+ (1;5) --
+ (2;4) --
+ (1;4) --
+ (2;3) --
+ (1;3) --
+ (2;2) --
+ (1;2) --
+ cycle;%
+\fill[/Lie Hasse diagram/left]
+ (5;1) --
+ (6;1) --
+ (2;5) --
+ (1;5) --
+ cycle;%
+\fill[/Lie Hasse diagram/right]
+ (2;5) --
+ (4;7) --
+ (3;7) --
+ (1;5) --
+ cycle;%
+\fill[/Lie Hasse diagram/left]
+ (7;1) --
+ (10;1) --
+ (9;2) --
+ (8;2) --
+ (7;4) --
+ (6;4) --
+ (5;5) --
+ (4;5) --
+ cycle;%
+\fill[/Lie Hasse diagram/right]
+ (4;5) --
+ (5;5) --
+ (6;7) --
+ (5;7) --
+ cycle;%
+\fill[/Lie Hasse diagram/right]
+ (6;4) --
+ (7;4) --
+ (9;6) --
+ (8;6) --
+ cycle;%
+\fill[/Lie Hasse diagram/right]
+ (8;2) --
+ (9;2) --
+ (12;4) --
+ (13;3) --
+ (14;4) --
+ (12;5) --
+ cycle;%
+\fill[/Lie Hasse diagram/top]
+ (6;1) --
+ (8;3) --
+ (4;7) --
+ (2;5) --
+ cycle;%
+\fill[/Lie Hasse diagram/left]
+ (12;4) --
+ (14;1) --
+ (15;1) --
+ (13;3) --
+ cycle;%
+\fill[/Lie Hasse diagram/top]
+ (5;5) --
+ (8;1) --
+ (10;4) --
+ (7;7) --
+ cycle;%
+\fill[/Lie Hasse diagram/top]
+ (7;4) --
+ (9;1) --
+ (13;4) --
+ (11;6) --
+ cycle;%
+\fill[/Lie Hasse diagram/top]
+ (9;2) --
+ (11;1) --
+ (15;2) --
+ (13;5) --
+ cycle;%
+\fill[/Lie Hasse diagram/top]
+ (13;3) --
+ (16;1) --
+ (18;1) --
+ (19;1) --
+ (20;1) --
+ (22;1) --
+ (24;1) --
+ (23;2) --
+ (22;2) --
+ (17;4) --
+ cycle;%
+\end{pgfonlayer}%
+\fi%
+}%
+
+\NewDocumentCommand\hasse@F@width@at@grade{mm}%
+{%
+ \ifnum#1=1%
+ #2 4%
+ \else\ifnum#1=2%
+ #2 3%
+ \else\ifnum#1=3%
+ #2 3%
+ \else\ifnum#1=4%
+ #2 3%
+ \else\ifnum#1=5%
+ #2 3%
+ \else\ifnum#1=6%
+ #2 2%
+ \else\ifnum#1=7%
+ #2 2%
+ \else\ifnum#1<1%
+ #2 0%
+ \else\ifnum#1>11%
+ #2 0%
+ \else%
+ #2 1%
+ \fi\fi\fi\fi\fi\fi\fi\fi\fi%
+}%
+
+\NewDocumentCommand\hasse@F{}%
+{%
+\hasse@X%
+{{0,2,4,6},{1,3,5},{2,3:1,4},{2:1,3,4:1},{1:1,3:1,5:1},{2:1,4:1},{1:1,3:1},{2:1},{2:2},{2:3},{2:4}}%
+{% grades:
+{% 1
+1+2<1,*2+3<2,*3+4<3,*2+1>1,*3+2>2,4+3>3},
+{% 2
+*1+3<1,*2+4<3,*2+3<2,*2+1<1,3+2>3},
+{% 3
+*1+3<1,1+4<2,*2+4<3,*2+1<1,3+1>2,*3+3>3},
+{% 4
+*1+2<1,*1+4<2,2+3<2,*3+1>2,*3+4>3},
+{% 5
+*1+4<1,*2+4<2,*2+2>1,*3+1>2},
+{% 6
+*1+3<1,*1+4<2,*2+2>2},
+{% 7
+*1+4<1,*2+3>1},
+{% 8
+1+3<1},
+{% 9
+1+2<1},
+{% 10
+1+1<1}
+}%
+\iflie@hasse@threeD%
+\begin{pgfonlayer}{Dynkin middle}%
+\fill[/Lie Hasse diagram/top] (2;1) -- (4;2) -- (2;3) -- (1;3) -- (2;2) -- (1;2) -- cycle;%
+\fill[/Lie Hasse diagram/left] (2;2) -- (3;1) -- (4;1) -- (3;2) -- cycle;%
+\fill[/Lie Hasse diagram/right] (2;2) -- (3;2) -- (4;3) -- (3;3) -- cycle;%
+\fill[/Lie Hasse diagram/top] (3;2) -- (5;1) -- (6;1) -- (7;1) -- (8;1) -- (5;3) -- cycle;%
+\end{pgfonlayer}%
+\fi%
+}%
+\NewDocumentCommand\hasse@G@width@at@grade{mm}%
+{%
+ \ifnum#1=1%
+ #2 2%
+ \else\ifnum#1<1%
+ #2 0%
+ \else\ifnum#1>5%
+ #2 0%
+ \else%
+ #2 1%
+ \fi\fi\fi%
+}%
+\NewDocumentCommand\hasse@G{}%
+{%
+\hasse@X{{0,2},{1},{1},{1},{1}}{{1+2<1,2+1>1},{1+1<1},{1+1<1},{1+2<1}}%
+}%
+\ExplSyntaxOn
+\DeclareExpandableDocumentCommand{\lie@hasse@repeat@string}{O{}mm}
+{
+ \int_compare:nT { #2 > 0 }
+ {
+ #3 \prg_replicate:nn { #2 - 1 } { #1#3 }
+ }
+ }
+\ExplSyntaxOff
+\newcommand*\exceptional@root@sum[1]{\csname FOO-#1\endcsname}
+\newcommand*\defn@root@sum[1]{\expandafter\def\csname FOO-#1\endcsname}
+\def\@root@sum#1=#2!{\global\defn@root@sum{#1}{#2}}%
+\newcount\left@part@length%
+\newcount\middle@part@length%
+\newcount\right@part@length%
+\NewDocumentCommand\hasse@A@root@sum{mmm}%
+{%
+ \left@part@length#2\relax%
+ \advance\left@part@length by -1\relax%
+ \middle@part@length#1\relax%
+ \right@part@length\the\dynkin@rank\relax%
+ \advance\right@part@length by -#1\relax%
+ \advance\right@part@length by -#2\relax%
+ \advance\right@part@length by 1\relax%
+ \ifnum\left@part@length=0%
+ \ifnum\right@part@length=0%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\middle@part@length}{1}}%
+ \else%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\middle@part@length}{1}.\lie@hasse@repeat@string[.]{\the\right@part@length}{0}}%
+ \fi%
+ \else%
+ \ifnum\right@part@length=0%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\left@part@length}{0}.\lie@hasse@repeat@string[.]{\the\middle@part@length}{1}}%
+ \else%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\left@part@length}{0}.\lie@hasse@repeat@string[.]{\the\middle@part@length}{1}.\lie@hasse@repeat@string[.]{\the\right@part@length}{0}}%
+ \fi%
+ \fi%
+}%
+\NewDocumentCommand\hasse@B@root@sum{mmm}%
+{%
+ \right@part@length#1\relax%
+ \advance\right@part@length by -\the\dynkin@rank\relax%
+ \advance\right@part@length by #2\relax%
+ \advance\right@part@length by -1\relax%
+ \ifnum\right@part@length>0%
+ \left@part@length#2\relax%
+ \advance\left@part@length by -1\relax%
+ \middle@part@length\the\dynkin@rank\relax%
+ \advance\middle@part@length by\the\dynkin@rank\relax%
+ \advance\middle@part@length by -#2\relax%
+ \advance\middle@part@length by -#2\relax%
+ \advance\middle@part@length by 2\relax%
+ \advance\middle@part@length by -#1\relax%
+ \ifnum\left@part@length=0%
+ \ifnum\middle@part@length=0%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\right@part@length}{2}}%
+ \else%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\middle@part@length}{1}.\lie@hasse@repeat@string[.]{\the\right@part@length}{2}}%
+ \fi%
+ \else%
+ \ifnum\middle@part@length=0%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\left@part@length}{0}.\lie@hasse@repeat@string[.]{\the\right@part@length}{2}}%
+ \else%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\left@part@length}{0}.\lie@hasse@repeat@string[.]{\the\middle@part@length}{1}.\lie@hasse@repeat@string[.]{\the\right@part@length}{2}}%
+ \fi%
+ \fi%
+ \else%
+ \hasse@A@root@sum{#1}{#2}{#3}%
+ \fi%
+}%
+\newcount\hasse@C@len%
+\NewDocumentCommand\hasse@C@root@sum{mmm}%
+{%
+ \hasse@B@root@sum{#1}{#2}{\hasse@C@root@tmp}%
+ \StrRight{\hasse@C@root@tmp}{1}[\hasse@C@last@char]%
+ \IfStrEq{\hasse@C@last@char}{2}%
+ {%
+ \StrGobbleRight{\hasse@C@root@tmp}{1}[\hasse@C@left@chunk]%
+ \xdef#3{\hasse@C@left@chunk{}1}%
+ }%
+ {%
+ }%
+}%
+\newcount\hasse@D@len%
+\NewDocumentCommand\hasse@D@root@sum{mmm}%
+{%
+ \hasse@D@len#1\relax%
+ \advance\hasse@D@len by #2\relax%
+ \advance\hasse@D@len by -1\relax%
+ \ifnum\hasse@D@len<\the\dynkin@rank%
+ \hasse@A@root@sum{#1}{#2}{#3}%
+ \else%
+ \ifnum\hasse@D@len=\the\dynkin@rank%
+ \ifnum#2=1%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\dynkin@rank}{1}}%
+ \else%
+ \left@part@length#2\relax%
+ \advance\left@part@length by -1\relax%
+ \right@part@length#1\relax%
+ \advance\right@part@length by -1\relax%
+ \if\left@part@length>0%
+ \xdef#3%
+ {%%
+ \lie@hasse@repeat@string[.]%
+ {\the\left@part@length}{0}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\right@part@length}{1}.0.1%
+ }%%
+ \else%
+ \xdef#3%
+ {%%
+ \lie@hasse@repeat@string[.]%
+ {\the\right@part@length}{1}.0.1%
+ }%%
+ \fi%
+ \fi%
+ \else%
+ \ifnum#1<\the\dynkin@rank%
+ % i-2 zeroes
+ \left@part@length#2\relax%
+ \advance\left@part@length by -2\relax%
+ % 2r-g-2i+2 ones
+ \middle@part@length\the\dynkin@rank\relax%
+ \advance\middle@part@length by \the\dynkin@rank\relax%
+ \advance\middle@part@length by-#1\relax%
+ \advance\middle@part@length by-#2\relax%
+ \advance\middle@part@length by-#2\relax%
+ \advance\middle@part@length by 2\relax%
+ % g+i-r-2 twos
+ \right@part@length#1\relax%
+ \advance\right@part@length by #2\relax%
+ \advance\right@part@length by -\the\dynkin@rank\relax%
+ \advance\right@part@length by -2\relax%
+ \ifnum\left@part@length>0%
+ \ifnum\right@part@length>0%
+ \xdef#3%
+ {%%
+ \lie@hasse@repeat@string[.]%
+ {\the\left@part@length}{0}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\middle@part@length}{1}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\right@part@length}{2}.1.1%
+ }%%
+ \else%
+ \xdef#3%
+ {%%
+ \lie@hasse@repeat@string[.]%
+ {\the\left@part@length}{0}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\middle@part@length}{1}.1.1%
+ }%%
+ \fi%
+ \else%
+ \ifnum\right@part@length>0%
+ \xdef#3%
+ {%%
+ \lie@hasse@repeat@string[.]%
+ {\the\middle@part@length}{1}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\right@part@length}{2}.1.1%
+ }%%
+ \else%
+ \xdef#3{\lie@hasse@repeat@string[.]{\the\middle@part@length}{1}.1.1}%
+ \fi%
+ \fi%
+ \else%
+ % i-1 zeroes
+ \left@part@length#2\relax%
+ \advance\left@part@length by -1\relax%
+ % 2r-g-2i ones
+ \middle@part@length\the\dynkin@rank\relax%
+ \advance\middle@part@length by \the\dynkin@rank\relax%
+ \advance\middle@part@length by-#1\relax%
+ \advance\middle@part@length by-#2\relax%
+ \advance\middle@part@length by-#2\relax%
+ % g+i-r-1 twos
+ \right@part@length#1\relax%
+ \advance\right@part@length by #2\relax%
+ \advance\right@part@length by -\the\dynkin@rank\relax%
+ \advance\right@part@length by -1\relax%
+ \ifnum\left@part@length>0%
+ \xdef#3%
+ {%%
+ \lie@hasse@repeat@string[.]%
+ {\the\left@part@length}{0}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\middle@part@length}{1}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\right@part@length}{2}.1.1%
+ }%%
+ \else%
+ \xdef#3%
+ {%%
+ \lie@hasse@repeat@string[.]%
+ {\the\middle@part@length}{1}.%
+ \lie@hasse@repeat@string[.]%
+ {\the\right@part@length}{2}.1.1%
+ }%%
+ \fi%
+ \fi%
+ \fi%
+ \fi%
+}%
+\newif\ifroot@sum@reset%
+\root@sum@resettrue%
+\NewDocumentCommand\initialize@roots@as@sums@table{}%
+{%
+ \IfStrEqCase{\dynkin@series}%
+ {%
+ {E}%
+ {%
+ \ifnum\dynkin@rank=6%
+ \hasse@set@E@six@root@sums%
+ \else%
+ \ifnum\dynkin@rank=7%
+ \hasse@set@E@seven@root@sums%
+ \else%
+ \hasse@set@E@eight@root@sums%
+ \fi%
+ \fi%
+ }%
+ {F}{\hasse@set@F@root@sums}%
+ {G}{\hasse@set@G@root@sums}%
+ }%
+ \global\root@sum@resetfalse%
+}%
+\xdef\my@root@sum{}%
+\xdef\my@fixed@root@sum{}%
+\NewDocumentCommand\rootSum{oommm}%
+{%
+ \IfValueT{#1}%
+ {%
+ \IfStrEq{\dynkin@series}{#1}%
+ {%
+ }%
+ {%
+ \global\root@sum@resettrue%
+ }%
+ }%
+ \IfValueT{#2}%
+ {%
+ \ifnum\dynkin@rank=#2%
+ \else%
+ \global\root@sum@resettrue%
+ \fi%
+ }%
+ \ifroot@sum@reset%
+ \xdef\dynkin@series{#1}%
+ \global\dynkin@rank #2\relax%
+ \initialize@roots@as@sums@table%
+ \fi%
+ \IfStrEqCase{\dynkin@series}%
+ {%
+ {A}{\hasse@A@root@sum{#3}{#4}{\my@root@sum}}%
+ {B}{\hasse@B@root@sum{#3}{#4}{\my@root@sum}}%
+ {C}{\hasse@C@root@sum{#3}{#4}{\my@root@sum}}%
+ {D}{\hasse@D@root@sum{#3}{#4}{\my@root@sum}}%
+ {E}{\xdef\my@root@sum{\exceptional@root@sum{#3;#4}}}%
+ {F}{\xdef\my@root@sum{\exceptional@root@sum{#3;#4}}}%
+ {G}{\xdef\my@root@sum{\exceptional@root@sum{#3;#4}}}%
+ }%
+ \StrSubstitute{\my@root@sum}{.}{,}[#5]%
+}%
+%% \rootSystemHeight[G][2]{\h} sets the counter \h to the height of the poset
+%% of the root system G2. \rootSystemHeight{\h} uses the current root system.
+\NewDocumentCommand\rootSystemHeight{oom}%
+{%
+ \global\root@sum@resetfalse%
+ \IfValueT{#1}%
+ {%
+ \IfStrEq{\dynkin@series}{#1}%
+ {%
+ }%
+ {%
+ \global\root@sum@resettrue%
+ }%
+ }%
+ \IfValueT{#2}%
+ {%
+ \ifnum\dynkin@rank=#2%
+ \else%
+ \global\root@sum@resettrue%
+ \fi%
+ }%
+ \ifroot@sum@reset%
+ \xdef\dynkin@series{#1}%
+ \global\dynkin@rank #2\relax%
+ \initialize@roots@as@sums@table%
+ \fi%
+ \IfStrEqCase{\dynkin@series}%
+ {%
+ {A}{\global#3\the\dynkin@rank}%
+ {B}%
+ {%%
+ \global#3\the\dynkin@rank\relax%
+ \global\advance#3 by \the\dynkin@rank\relax%
+ \global\advance#3 by -1\relax%
+ }%%
+ {C}%
+ {%%
+ \global#3\the\dynkin@rank\relax%
+ \global\advance#3 by \the\dynkin@rank\relax%
+ \global\advance#3 by -1\relax%
+ }%%
+ {D}%
+ {%%
+ \global#3\the\dynkin@rank\relax%
+ \global\advance#3 by \the\dynkin@rank\relax%
+ \global\advance#3 by -3\relax%
+ }%%
+ {E}%
+ {%%
+ \ifnum\dynkin@rank=6%
+ \global#3 11%
+ \else%
+ \ifnum\dynkin@rank=7%
+ \global#3 17%
+ \else%
+ \global#3 29%
+ \fi%
+ \fi%
+ }%%
+ {F}{\global#3 11}%
+ {G}{\global#3 5}%
+ }%
+}%
+%% \rootSystemWidthAtGrade[G][2]{5}{\w} sets the counter \w to the width
+%% of the 5th grade of the poset of the root system G2.
+%% \rootSystemWidth{5}{\w} uses the current root system.
+\NewDocumentCommand\rootSystemWidthAtGrade{oomm}%
+{%
+ \global\root@sum@resetfalse%
+ \IfValueT{#1}%
+ {%
+ \IfStrEq{\dynkin@series}{#1}%
+ {%
+ }%
+ {%
+ \global\root@sum@resettrue%
+ }%
+ }%
+ \IfValueT{#2}%
+ {%
+ \ifnum\dynkin@rank=#2%
+ \else%
+ \global\root@sum@resettrue%
+ \fi%
+ }%
+ \ifroot@sum@reset%
+ \xdef\dynkin@series{#1}%
+ \global\dynkin@rank #2\relax%
+ \initialize@roots@as@sums@table%
+ \fi%
+ \IfStrEqCase{\dynkin@series}%
+ {%
+ {A}{\hasse@A@width@at@grade{#3}{#4}}%
+ {B}{\hasse@BC@width@at@grade{#3}{#4}}%
+ {C}{\hasse@BC@width@at@grade{#3}{#4}}%
+ {D}{\hasse@D@width@at@grade{#3}{#4}}%
+ {E}%
+ {%%
+ \ifnum\dynkin@rank=6%
+ \hasse@E@six@width@at@grade{#3}{#4}%
+ \else%
+ \ifnum\dynkin@rank=7%
+ \hasse@E@seven@width@at@grade{#3}{#4}%
+ \else%
+ \hasse@E@eight@width@at@grade{#3}{#4}%
+ \fi%
+ \fi%
+ }%%
+ {F}%
+ {%
+ \hasse@F@width@at@grade{#3}{#4}%
+ }%
+ {G}%
+ {%
+ \hasse@G@width@at@grade{#3}{#4}%
+ }%
+ }%
+}%
+\NewDocumentCommand\do@hasse@list{m}{\expandafter\@root@sum#1!}%
+\NewDocumentCommand\hasse@set@E@six@root@sums{}%
+{%
+\forcsvlist{\do@hasse@list}{%
+1;1=1.0.0.0.0.0,%
+1;2=0.1.0.0.0.0,%
+1;3=0.0.1.0.0.0,%
+1;4=0.0.0.1.0.0,%
+1;5=0.0.0.0.1.0,%
+1;6=0.0.0.0.0.1,%
+2;1=1.1.0.0.0.0,%
+2;2=0.1.1.0.0.0,%
+2;3=0.0.1.1.0.0,%
+2;4=0.0.1.0.1.0,%
+2;5=0.0.0.0.1.1,%
+3;1=1.1.1.0.0.0,%
+3;2=0.1.1.1.0.0,%
+3;3=0.1.1.0.1.0,%
+3;4=0.0.1.1.1.0,%
+3;5=0.0.1.0.1.1,%
+4;1=1.1.1.1.0.0,%
+4;2=1.1.1.0.1.0,%
+4;3=0.1.1.1.1.0,%
+4;4=0.1.1.0.1.1,%
+4;5=0.0.1.1.1.1,%
+5;1=1.1.1.1.1.0,%
+5;2=0.1.2.1.1.0,%
+5;3=1.1.1.0.1.1,%
+5;4=0.1.1.1.1.1,%
+6;1=1.1.2.1.1.0,%
+6;2=1.1.1.1.1.1,%
+6;3=0.1.2.1.1.1,%
+7;1=1.2.2.1.1.0,%
+7;2=1.1.2.1.1.1,%
+7;3=0.1.2.1.2.1,%
+8;1=1.2.2.1.1.1,%
+8;2=1.1.2.1.2.1,%
+9;1=1.2.2.1.2.1,%
+10;1=1.2.3.1.2.1,%
+11;1=1.2.3.2.2.1}%
+}%
+\NewDocumentCommand\hasse@set@E@seven@root@sums{}%
+{%
+\forcsvlist{\do@hasse@list}{%
+1;1=1.0.0.0.0.0.0,%
+1;2=0.1.0.0.0.0.0,%
+1;3=0.0.1.0.0.0.0,%
+1;4=0.0.0.1.0.0.0,%
+1;5=0.0.0.0.1.0.0,%
+1;6=0.0.0.0.0.1.0,%
+1;7=0.0.0.0.0.0.1,%
+2;1=1.1.0.0.0.0.0,%
+2;2=0.1.1.0.0.0.0,%
+2;3=0.0.1.1.0.0.0,%
+2;4=0.0.0.1.1.0.0,%
+2;5=0.0.0.1.0.1.0,%
+2;6=0.0.0.0.0.1.1,%
+3;1=1.1.1.0.0.0.0,%
+3;2=0.1.1.1.0.0.0,%
+3;3=0.0.1.1.1.0.0,%
+3;4=0.0.1.1.0.1.0,%
+3;5=0.0.0.1.1.1.0,%
+3;6=0.0.0.1.0.1.1,%
+4;1=1.1.1.1.0.0.0,%
+4;2=0.1.1.1.1.0.0,%
+4;3=0.1.1.1.0.1.0,%
+4;4=0.0.1.1.1.1.0,%
+4;5=0.0.1.1.0.1.1,%
+4;6=0.0.0.1.1.1.1,%
+5;1=1.1.1.1.1.0.0,%
+5;2=1.1.1.1.0.1.0,%
+5;3=0.1.1.1.1.1.0,%
+5;5=0.1.1.1.0.1.1,%
+5;4=0.0.1.2.1.1.0,%
+5;6=0.0.1.1.1.1.1,%
+6;1=1.1.1.1.1.1.0,%
+6;3=1.1.1.1.0.1.1,%
+6;2=0.1.1.2.1.1.0,%
+6;4=0.1.1.1.1.1.1,%
+6;5=0.0.1.2.1.1.1,%
+7;1=1.1.1.2.1.1.0,%
+7;3=1.1.1.1.1.1.1,%
+7;2=0.1.2.2.1.1.0,%
+7;4=0.1.1.2.1.1.1,%
+7;5=0.0.1.2.1.2.1,%
+8;1=1.1.2.2.1.1.0,%
+8;2=1.1.1.2.1.1.1,%
+8;3=0.1.2.2.1.1.1,%
+8;4=0.1.1.2.1.2.1,%
+9;1=1.2.2.2.1.1.0,%
+9;2=1.1.2.2.1.1.1,%
+9;3=1.1.1.2.1.2.1,%
+9;4=0.1.2.2.1.2.1,%
+10;1=1.2.2.2.1.1.1,%
+10;2=1.1.2.2.1.2.1,%
+10;3=0.1.2.3.1.2.1,%
+11;1=1.2.2.2.1.2.1,%
+11;2=1.1.2.3.1.2.1,%
+11;3=0.1.2.3.2.2.1,%
+12;1=1.2.2.3.1.2.1,%
+12;2=1.1.2.3.2.2.1,%
+13;1=1.2.3.3.1.2.1,%
+13;2=1.2.2.3.2.2.1,%
+14;1=1.2.3.3.2.2.1,%
+15;1=1.2.3.4.2.2.1,%
+16;1=1.2.3.4.2.3.1,%
+17;1=1.2.3.4.2.3.2}%
+}%
+\NewDocumentCommand\hasse@set@E@eight@root@sums{}%
+{%
+\forcsvlist{\do@hasse@list}{%
+1;1=1.0.0.0.0.0.0.0,%
+1;2=0.1.0.0.0.0.0.0,%
+1;3=0.0.1.0.0.0.0.0,%
+1;4=0.0.0.1.0.0.0.0,%
+1;5=0.0.0.0.1.0.0.0,%
+1;6=0.0.0.0.0.1.0.0,%
+1;7=0.0.0.0.0.0.1.0,%
+1;8=0.0.0.0.0.0.0.1,%
+2;1=1.1.0.0.0.0.0.0,%
+2;2=0.1.1.0.0.0.0.0,%
+2;3=0.0.1.1.0.0.0.0,%
+2;4=0.0.0.1.1.0.0.0,%
+2;5=0.0.0.0.1.1.0.0,%
+2;6=0.0.0.0.1.0.1.0,%
+2;7=0.0.0.0.0.0.1.1,%
+3;1=1.1.1.0.0.0.0.0,%
+3;2=0.1.1.1.0.0.0.0,%
+3;3=0.0.1.1.1.0.0.0,%
+3;4=0.0.0.1.1.1.0.0,%
+3;5=0.0.0.1.1.0.1.0,%
+3;6=0.0.0.0.1.1.1.0,%
+3;7=0.0.0.0.1.0.1.1,%
+4;1=1.1.1.1.0.0.0.0,%
+4;2=0.1.1.1.1.0.0.0,%
+4;3=0.0.1.1.1.1.0.0,%
+4;4=0.0.1.1.1.0.1.0,%
+4;5=0.0.0.1.1.1.1.0,%
+4;6=0.0.0.1.1.0.1.1,%
+4;7=0.0.0.0.1.1.1.1,%
+5;1=1.1.1.1.1.0.0.0,%
+5;2=0.1.1.1.1.1.0.0,%
+5;3=0.1.1.1.1.0.1.0,%
+5;4=0.0.1.1.1.1.1.0,%
+5;5=0.0.0.1.2.1.1.0,%
+5;6=0.0.1.1.1.0.1.1,%
+5;7=0.0.0.1.1.1.1.1,%
+6;1=1.1.1.1.1.1.0.0,%
+6;2=1.1.1.1.1.0.1.0,%
+6;3=0.1.1.1.1.1.1.0,%
+6;4=0.0.1.1.2.1.1.0,%
+6;5=0.1.1.1.1.0.1.1,%
+6;6=0.0.1.1.1.1.1.1,%
+6;7=0.0.0.1.2.1.1.1,%
+7;1=1.1.1.1.1.1.1.0,%
+7;2=0.1.1.1.2.1.1.0,%
+7;3=1.1.1.1.1.0.1.1,%
+7;4=0.0.1.2.2.1.1.0,%
+7;5=0.1.1.1.1.1.1.1,%
+7;6=0.0.1.1.2.1.1.1,%
+7;7=0.0.0.1.2.1.2.1,%
+8;1=1.1.1.1.2.1.1.0,%
+8;2=0.1.1.2.2.1.1.0,%
+8;3=1.1.1.1.1.1.1.1,%
+8;4=0.1.1.1.2.1.1.1,%
+8;5=0.0.1.2.2.1.1.1,%
+8;6=0.0.1.1.2.1.2.1,%
+9;1=1.1.1.2.2.1.1.0,%
+9;2=0.1.2.2.2.1.1.0,%
+9;3=1.1.1.1.2.1.1.1,%
+9;4=0.1.1.2.2.1.1.1,%
+9;5=0.1.1.1.2.1.2.1,%
+9;6=0.0.1.2.2.1.2.1,%
+10;1=1.1.2.2.2.1.1.0,%
+10;2=1.1.1.2.2.1.1.1,%
+10;3=0.1.2.2.2.1.1.1,%
+10;4=1.1.1.1.2.1.2.1,%
+10;5=0.1.1.2.2.1.2.1,%
+10;6=0.0.1.2.3.1.2.1,%
+11;1=1.2.2.2.2.1.1.0,%
+11;2=1.1.2.2.2.1.1.1,%
+11;3=1.1.1.2.2.1.2.1,%
+11;4=0.1.2.2.2.1.2.1,%
+11;5=0.1.1.2.3.1.2.1,%
+11;6=0.0.1.2.3.2.2.1,%
+12;1=1.2.2.2.2.1.1.1,%
+12;2=1.1.2.2.2.1.2.1,%
+12;3=1.1.1.2.3.1.2.1,%
+12;4=0.1.2.2.3.1.2.1,%
+12;5=0.1.1.2.3.2.2.1,%
+13;1=1.2.2.2.2.1.2.1,%
+13;2=1.1.2.2.3.1.2.1,%
+13;3=0.1.2.3.3.1.2.1,%
+13;4=1.1.1.2.3.2.2.1,%
+13;5=0.1.2.2.3.2.2.1,%
+14;1=1.2.2.2.3.1.2.1,%
+14;2=1.1.2.3.3.1.2.1,%
+14;3=1.1.2.2.3.2.2.1,%
+14;4=0.1.2.3.3.2.2.1,%
+15;1=1.2.2.3.3.1.2.1,%
+15;2=1.2.2.2.3.2.2.1,%
+15;3=1.1.2.3.3.2.2.1,%
+15;4=0.1.2.3.4.2.2.1,%
+16;1=1.2.3.3.3.1.2.1,%
+16;2=1.2.2.3.3.2.2.1,%
+16;3=1.1.2.3.4.2.2.1,%
+16;4=0.1.2.3.4.2.3.1,%
+17;1=1.2.3.3.3.2.2.1,%
+17;2=1.2.2.3.4.2.2.1,%
+17;3=1.1.2.3.4.2.3.1,%
+17;4=0.1.2.3.4.2.3.2,%
+18;1=1.2.3.3.4.2.2.1,%
+18;2=1.2.2.3.4.2.3.1,%
+18;3=1.1.2.3.4.2.3.2,%
+19;1=1.2.3.4.4.2.2.1,%
+19;2=1.2.3.3.4.2.3.1,%
+19;3=1.2.2.3.4.2.3.2,%
+20;1=1.2.3.4.4.2.3.1,%
+20;2=1.2.3.3.4.2.3.2,%
+21;1=1.2.3.4.5.2.3.1,%
+21;2=1.2.3.4.4.2.3.2,%
+22;1=1.2.3.4.5.3.3.1,%
+22;2=1.2.3.4.5.2.3.2,%
+23;1=1.2.3.4.5.3.3.2,%
+23;2=1.2.3.4.5.2.4.2,%
+24;1=1.2.3.4.5.3.4.2,%
+25;1=1.2.3.4.6.3.4.2,%
+26;1=1.2.3.5.6.3.4.2,%
+27;1=1.2.4.5.6.3.4.2,%
+28;1=1.3.4.5.6.3.4.2,%
+29;1=2.3.4.5.6.3.4.2}%
+}%
+\NewDocumentCommand\hasse@set@F@root@sums{}%
+{%
+\forcsvlist{\do@hasse@list}{%
+1;1=1.0.0.0,%
+1;2=0.1.0.0,%
+1;3=0.0.1.0,%
+1;4=0.0.0.1,%
+2;1=1.1.0.0,%
+2;2=0.1.1.0,%
+2;3=0.0.1.1,%
+3;1=1.1.1.0,%
+3;2=0.1.2.0,%
+3;3=0.1.1.1,%
+4;1=1.1.2.0,%
+4;2=1.1.1.1,%
+4;3=0.1.2.1,%
+5;1=1.2.2.0,%
+5;2=1.1.2.1,%
+5;3=0.1.2.2,%
+6;1=1.2.2.1,%
+6;2=1.1.2.2,%
+7;1=1.2.3.1,%
+7;2=1.2.2.2,%
+8;1=1.2.3.2,%
+9;1=1.2.4.2,%
+10;1=1.3.4.2,%
+11;1=2.3.4.2}%
+}%
+\NewDocumentCommand\hasse@set@G@root@sums{}%
+{%
+\forcsvlist{\do@hasse@list}{%
+1;1=1.0,%
+1;2=0.1,%
+2;1=1.1,%
+3;1=2.1,%
+4;1=3.1,%
+5;1=3.2}%
+}%
+\NewDocumentCommand\forAllPositiveRootsInHasseDiagram{m}%
+{%
+ \rootSystemHeight{\lie@hasse@height}%
+ \foreach \root@grady in {1,...,\the\lie@hasse@height}%
+ {%
+ \rootSystemWidthAtGrade{\root@grady}{\lie@hasse@width}%
+ {%
+ \foreach \root@indexy in {1,...,\the\lie@hasse@width}%
+ {%
+ #1{\root@grady}{\root@indexy}%
+ }%
+ }%
+ }%
+}% \ No newline at end of file
diff --git a/graphics/pgf/contrib/lie-hasse/lie-hasse.tex b/graphics/pgf/contrib/lie-hasse/lie-hasse.tex
new file mode 100644
index 0000000000..82643fee14
--- /dev/null
+++ b/graphics/pgf/contrib/lie-hasse/lie-hasse.tex
@@ -0,0 +1,555 @@
+\documentclass{amsart}
+\title[The Lie Hasse package]{The Lie Hasse package \\ Version 1.0}
+%% My name:
+\makeatletter
+\DeclareRobustCommand{\scotsMc}{\scotsMcx{c}}
+\DeclareRobustCommand{\scotsMC}{\scotsMcx{\textsc{c}}}
+\DeclareRobustCommand{\scotsMcx}[1]{%
+ M%
+ \raisebox{\dimexpr\fontcharht\font`M-\height}{%
+ \check@mathfonts\fontsize{\sf@size}{0}\selectfont
+ \kern.3ex\underline{\kern-.3ex #1\kern-.3ex}\kern.3ex
+ }%
+}
+\expandafter\def\expandafter\@uclclist\expandafter{%
+ \@uclclist\scotsMc\scotsMC
+}
+\makeatother
+\newcommand{\authorsname}{\texorpdfstring{Benjamin \scotsMc{}Kay}{Benjamin McKay}}
+\author{\authorsname}
+\address{School of Mathematical Sciences, University College Cork, Cork, Ireland}
+\email{b.mckay@ucc.ie}
+\date{3 February 2020}
+\usepackage{etex}
+\usepackage[T1]{fontenc}
+\usepackage[utf8]{inputenx}
+\usepackage{etoolbox}
+\usepackage{lmodern}
+\RequirePackage[tt=lining]{cfr-lm}
+\usepackage[kerning=true,tracking=true]{microtype}
+\usepackage{amsmath}
+\usepackage{amsfonts}
+\usepackage{mathtools}
+\usepackage{mathtext}
+\usepackage[english]{babel}
+\usepackage[pagebackref]{hyperref}
+ \hypersetup{
+ colorlinks = true, %Colours links instead of ugly boxes
+ urlcolor = black, %Colour for external hyperlinks
+ linkcolor = black, %Colour of internal links
+ citecolor = black %Colour of citations
+ }
+\usepackage{lie-hasse}
+\usetikzlibrary{positioning}
+\usepackage{fancyvrb}\fvset{obeytabs,tabsize=2,fontsize=\small}
+\usepackage[listings]{tcolorbox}
+\tcbuselibrary{breakable}
+\tcbuselibrary{skins}
+\usepackage{varwidth}
+\usepackage{xspace}
+\newcommand{\TikZ}{Ti\textit{k}Z\xspace}
+\definecolor{example-color}{gray}{1}
+\definecolor{example-border-color}{gray}{.8}
+\tcbset{
+ coltitle=black,
+ colback=example-color,
+ colframe=example-border-color,
+ enhanced,breakable,
+ pad at break*=1mm,
+ toprule=1.2mm,
+ bottomrule=1.2mm,
+ leftrule=1mm,
+ rightrule=1mm,
+ toprule at break=-1mm,
+ bottomrule at break=-1mm,
+ before upper={\widowpenalties=3 10000 10000 150}
+}
+\tikzset{
+ /Dynkin diagram,
+ edge length=1cm,
+ ordering=Carter,
+ vertical shift=0}
+\tikzset{
+ background rectangle/.style={
+ shade,
+ top color=olive!20,
+ bottom color=white,
+ draw=olive!15,
+ very thick,
+ rounded corners},
+}
+\begin{document}
+\maketitle
+\begin{center}%
+ \begin{tikzpicture}[show background rectangle]
+ \hasse[
+ edge/.style={},
+ root radius=.02cm,
+ edge length=.5cm,
+ edge quotes/.style={opacity=0}%
+ ]{E}{8}%
+ \end{tikzpicture}%
+\end{center}%
+\begin{center}
+\begin{varwidth}{\textwidth}
+\tableofcontents
+\end{varwidth}
+\end{center}
+\setlength{\arrayrulewidth}{1.5pt}
+
+\section{Quick introduction}
+This package draws the Hasse diagram of the poset of the positive simple roots of each complex simple Lie group, as drawn by Ringel \cite{Ringel:2013}.
+\begin{tcolorbox}[title={Load the package}]
+\begin{Verbatim}
+\documentclass{article}
+\usepackage{lie-hasse}
+\begin{document}
+The Hasse diagram of \(F_4\) is
+\begin{center}
+\hasse[edge length=1cm]{F}{4}
+\end{center}
+\end{document}
+\end{Verbatim}
+\end{tcolorbox}
+\par\noindent{}The Hasse diagram of \(F_4\) is
+\begin{center}
+\hasse[edge length=1cm]{F}{4}
+\end{center}
+Each edge is labelled with the simple root by which vertices differ.
+\begin{tcblisting}{title={Inside a \TikZ statement}}
+\(B_4\) has Dynkin diagram \tikz \dynkin[edge length=.35cm]{B}{4};, Hasse diagram
+\begin{center}
+\hasse[edge length=1cm]{B}{4}
+\end{center}
+\end{tcblisting}
+\begin{tcblisting}{title={Inside a Dynkin diagram environment, diagrams fit together}}
+The Hasse diagram of \(B_4\) is
+\begin{dynkinDiagram}[vertical shift=0,edge length=1cm]{B}{4}
+\hasse{B}{4}
+\end{dynkinDiagram}
+\end{tcblisting}
+We shut off the default vertical shift of the Dynkin diagram, so that it starts at the origin.
+There is an option to \verb!\hasse! for this:
+\begin{tcblisting}{title={Attaching the Dynkin diagram}}
+The Hasse diagram of \(B_4\) is
+\begin{center}
+\hasse[attach Dynkin diagram=true]{B}{4}
+\end{center}
+\end{tcblisting}
+Unfortunately, attaching a Dynkin diagram looks terrible for \(D\) or \(E\) series, so a Dynkin diagram appears below.
+\begin{tcblisting}{title={Attaching the Dynkin diagram}}
+The Hasse diagram of \(D_5\) is
+\begin{center}
+\hasse[attach Dynkin diagram=true]{D}{5}
+\end{center}
+\end{tcblisting}
+\begin{tcblisting}{title={Inside a \TikZ environment}}
+\begin{tikzpicture}
+\hasse{A}{4}
+\draw (4;1) circle (5pt);
+\draw[red] (2;3) circle (5pt);
+\end{tikzpicture}
+\end{tcblisting}
+In this example, we see that the roots of the Hasse diagram are \TikZ{} nodes labelled \(g;i\) for grade \(g\) (i.e. \(g\) units up the page) and index \(i\) (i.e. \(i^{\text{th}}\) root of grade \(g\) drawn on the page, starting from the left).
+
+\section{Inherited options}
+The Lie Hasse package inherits options from the Dynkin diagrams package: the edge lengths are set with
+\begin{Verbatim}
+\tikzset{/Dynkin diagram/edge lengths=1.2cm}
+\end{Verbatim}
+and similarly the ordering of roots with
+\begin{Verbatim}
+\tikzset{/Dynkin diagram/ordering=Bourbaki}
+\end{Verbatim}
+
+\section{Prettier}
+The package includes a more elaborate \verb!\hasseDiagrams! command, taking a list of semicolon separated Dynkin diagram identfiers.
+\begin{tcolorbox}[title={With some global options to make prettier diagrams}]
+\begin{Verbatim}
+\tikzset{
+ background rectangle/.style={
+ shade,
+ top color=olive!20,
+ bottom color=white,
+ draw=olive!15,
+ very thick,
+ rounded corners},
+ /Lie Hasse diagram,
+ edge length=1.2cm,
+ show name=true,
+ vertical shift=0}
+\hasseDiagrams{A4;B4;C4}
+\end{Verbatim}
+\end{tcolorbox}
+\begingroup
+\tikzset{
+ background rectangle/.style={
+ shade,
+ top color=olive!20,
+ bottom color=white,
+ draw=olive!15,
+ very thick,
+ rounded corners},
+ /Lie Hasse diagram,
+ edge length=1.2cm,
+ show name=true,
+ vertical shift=0}
+\hasseDiagrams{A4;B4;C4}
+\endgroup
+Global options:
+\begin{verbatim}
+ edge/.style={ultra thick},
+ edge quotes/.style={/Dynkin diagram/text style,auto,inner sep=2pt},
+\end{verbatim}
+allow to change the edges, and to change the way that labels are printed, and how close labels are to the edges.
+
+
+
+\section{Root order}
+We order the roots as in the Dynkin diagram package: with orderings Adams, Bourbaki, Carter, Dynkin and Kac.
+\emph{Warning:} the default is Carter, \emph{not} Bourbaki; the default in the Dynkin diagram package is Bourbaki.
+We can use this like:
+\begin{Verbatim}
+\tikzset{/Lie Hasse diagram,show name=true,show ordering=true}
+\hasseDiagrams{[ordering=Adams]E6;[ordering=Bourbaki]E6}
+\hasseDiagrams{[ordering=Carter]E6;[ordering=Dynkin]E6}
+\hasseDiagrams{[ordering=Kac]E6}
+\end{Verbatim}
+
+\begingroup
+\tikzset{/Lie Hasse diagram,show name=true,show ordering=true}
+\hasseDiagrams{[ordering=Adams]E6;[ordering=Bourbaki]E6}
+\hasseDiagrams{[ordering=Carter]E6;[ordering=Dynkin]E6}
+\hasseDiagrams{[ordering=Kac]E6}
+\endgroup
+
+\section{Graph height and width}
+The \emph{height} of a Hasse diagram is the number of grades.
+The \emph{width} of each grade is the number of vertices on that grade.
+We recover these with
+\begin{Verbatim}
+\newcount\h
+\rootSystemHeight[G][2]{\h}
+\end{Verbatim}
+to store the height of \(G_2\) in a counter called \verb!\h!, and
+\begin{Verbatim}
+\newcount\w
+\rootSystemWidthAtGrade[G][2]{3}{\w}%
+\end{Verbatim}
+to store the width of \(G_2\) at grade \(3\) in a counter called \verb!\w!.
+
+Once you use \verb!\dynkin{G}{2}! or \verb!\hasse{G}{2}! or the other commands, like
+\begin{Verbatim}
+\rootSystemHeight[G][2]{\h}
+\end{Verbatim}
+the system stores that your default root system is \(G_2\).
+Subsequently calls to
+\begin{Verbatim}
+\rootSystemHeight{\h}
+\end{Verbatim}
+and
+\begin{Verbatim}
+\rootSystemWidthAtGrade{3}{\w}
+\end{Verbatim}
+ do not need to specify the root system.
+
+\begingroup
+The \verb!show height! option:
+\begin{Verbatim}
+\tikzset{/Lie Hasse diagram,show name=true,show height=true}
+\hasseDiagrams{G2}
+\end{Verbatim}
+\tikzset{/Lie Hasse diagram,show name=true,show height=true}
+\hasseDiagrams{G2}
+The \verb!show widths! option:
+\begin{Verbatim}
+\tikzset{/Lie Hasse diagram/show widths=true}
+\hasseDiagrams{G2}
+\end{Verbatim}
+\tikzset{/Lie Hasse diagram/show widths=true}
+\hasseDiagrams{G2}
+\tikzset{/Lie Hasse diagram/show height=false}
+\tikzset{/Lie Hasse diagram/show widths=false}
+\endgroup
+
+\section{Root decompositions}
+Each positive root in a root system is a unique nonnegative integer linear combination of positive simple roots.
+We can recover this expression as
+\begin{Verbatim}
+\rootSum[G][2]{5}{1}{\rs}
+\end{Verbatim}
+which, for the root system \(G_2\), and the root at position \(5;1\) in our Hasse diagram, stores in the variable \verb!\rs! a string which looks like \rootSum[G][2]{5}{1}{\rs}\texttt{\rs}.
+This is a comma separated list of the integer coefficients.
+\emph{Warning:} for the moment, this list of coefficients is in Carter ordering.
+If we omit \verb![G][2]!, the current default root system is implied.
+
+Here is the Dynkin diagram of \(E_8\), indicating the order of the roots in Carter ordering.
+\begin{Verbatim}
+\dynkin[label,ordering=Carter,edge length=.35cm]{E}{8}
+\end{Verbatim}
+\begin{center}
+\dynkin[label,ordering=Carter,edge length=.35cm]{E}{8}
+\end{center}
+Here is the same Dynkin diagram, except showing, at each simple root, the coefficient of that simple root in the highest root.
+\begin{Verbatim}
+\rootSum[E][8]{29}{1}{\rs}
+\dynkin[labels=\rs,ordering=Carter,edge length=.35cm]{E}{8}
+\end{Verbatim}
+\rootSum[E][8]{29}{1}{\rs}
+\begin{center}
+\dynkin[labels=\rs,ordering=Carter,edge length=.35cm]{E}{8}
+\end{center}
+
+The option \verb!for all roots! allows execution of code once on every root.
+\begin{Verbatim}
+\tikzset{/Lie Hasse diagram,
+ edge length=3.2cm,
+ compact root/.code={},
+ noncompact root/.code={},
+ edge quotes/.style={opacity=0},
+ embedded Dynkin diagram/.style={
+ edge length=.4cm,
+ root radius=.05cm
+ },
+ for all roots/.code 2 args={\drawRootAsDynkinSum{#1}{#2}}}
+\hasseDiagrams{D5}
+\end{Verbatim}
+\begingroup
+\tikzset{/Lie Hasse diagram,
+ edge length=3.2cm,
+ compact root/.code={},
+ noncompact root/.code={},
+ edge quotes/.style={opacity=0},
+ embedded Dynkin diagram/.style={
+ edge length=.4cm,
+ root radius=.05cm
+ },
+ for all roots/.code 2 args={\drawRootAsDynkinSum{#1}{#2}}}
+\hasseDiagrams{D5}
+\endgroup
+See more below on compact versus noncompact roots; the code \verb!compact! is applied to draw all of the compact roots, and the code \verb!noncompact! to draw the noncompact roots.
+Setting those codes to be empty, and setting \verb!edge quotes! to be transparent, we get a much simpler Hasse diagram, so that we can see the embedded Dynkin diagrams more clearly.
+
+\section{\texorpdfstring{For all roots \ldots}{For all roots ...}}
+You can make your own macros loop over all of the roots: you define a macro \verb!\foo{g}{i}!, which is fed the grade \(g\) of each root in the diagram, and the \emph{index} \(i\).
+A simple example:
+\begin{Verbatim}
+\newcommand{\foo}[2]%
+{%
+ \node[below,scale=.5] at (#1;#2) {\(#1,#2\)};%
+}%
+\end{Verbatim}
+\newcommand{\foo}[2]%
+{%
+ \node[below,scale=.75] at (#1;#2) {\(#1,#2\)};%
+}%
+Inside a \TikZ{} or \verb!dynkinDiagram! environment:
+\begin{Verbatim}
+\tikzset{/Lie Hasse diagram/edge quotes/.style={opacity=0},
+ /Dynkin diagram/edge length=1.5cm}
+\begin{tikzpicture}
+ \hasse{D}{6}%
+ \forAllPositiveRootsInHasseDiagram{\foo}%
+\end{tikzpicture}
+\end{Verbatim}
+\begingroup
+\tikzset{/Lie Hasse diagram/edge quotes/.style={opacity=0},
+ /Dynkin diagram/edge length=1.5cm}
+\begin{tikzpicture}
+ \hasse{D}{6}%
+ \forAllPositiveRootsInHasseDiagram{\foo}%
+\end{tikzpicture}
+
+If you put this into the \verb!for all roots! option, it executes on its own:
+\begin{Verbatim}
+\tikzset{/Lie Hasse diagram/for all roots/.code 2 args={\foo{#1}{#2}}}
+\hasseDiagrams{C4;D4}
+\end{Verbatim}
+\begingroup
+\tikzset{/Lie Hasse diagram/for all roots/.code 2 args={\foo{#1}{#2}}}
+\hasseDiagrams{C4;D4}
+\endgroup
+\endgroup
+
+\section{Three dimensional effect}
+We draw the \(D,E,F\) Hasse diagrams, following Ringel \cite{Ringel:2013}, as an arrangement of cubes.
+Nutma \cite{Nutma:2010} draws the Hasse diagrams using a more elementary approach, but including also the affine Kac--Moody algebras.
+Opposite sides of any square have the same edge label, by commutativity of addition.
+Hence we don't need to see every edge perfectly.
+The three dimensional effect is the default:
+\begin{Verbatim}
+\hasse{D}{4}\hasse{E}{6}
+\end{Verbatim}
+\begin{center}
+\hasse{D}{4}\hasse{E}{6}
+\end{center}
+We can turn it off:
+\begin{Verbatim}
+\hasse[three D=false]{D}{4}
+\hasse[three D=false]{E}{6}
+\end{Verbatim}
+\begin{center}
+\hasse[three D=false]{D}{4}
+\hasse[three D=false]{E}{6}
+\end{center}
+or globally with \verb!\tikzset{/Lie Hasse diagram/three D=false}!.
+
+The astute reader will perhaps notice that the three dimensional effect is not realistic.
+To be Hasse diagrams, the roots have to line up horizontally by grade.
+This is inconsistent with three dimensional projection of our cubes.
+We have also tried to use only a small number of layers in the three dimensional geometry, so the images are not perfect, but easy enough to read.
+
+We can change the \verb!z shift! to slant the three dimensional images to the right:
+\begingroup
+\begin{Verbatim}
+\hasse[z shift=.1]F4\hasse[z shift=.2]F4\hasse[z shift=.3]F4\hasse[z shift=.4]F4
+\end{Verbatim}
+\hasse[z shift=.1]F4\hasse[z shift=.2]F4\hasse[z shift=.3]F4\hasse[z shift=.4]F4
+\endgroup
+
+We only use three colours and opacities for the faces:
+\begin{Verbatim}
+ top/.style={black!20,opacity=.4},
+ left/.style={black!20,opacity=.9},
+ right/.style={black!20,opacity=.6},
+\end{Verbatim}
+You can change these:
+\begin{Verbatim}
+\hasse[
+ top/.style={red,opacity=.1},
+ right/.style={red,opacity=.2},
+ left/.style={red,opacity=.4}]E6
+\end{Verbatim}
+\begin{center}
+\hasse[
+ top/.style={red,opacity=.1},
+ right/.style={red,opacity=.2},
+ left/.style={red,opacity=.4}]E6
+\end{center}
+
+\section{Label the simple roots}
+Ringel \cite{Ringel:2013} labels his edges like
+\begin{Verbatim}
+\hasseDiagrams{[labels={f,e,d,c,u,b,a}]E7}
+\end{Verbatim}
+\hasseDiagrams{[labels={f,e,d,c,u,b,a}]E7}
+
+\section{Parabolic subgroups}
+This package offers nothing over Ringel's original pictures, except that the user can pick some simple roots whose associated edges are drawn differently.
+The chosen simple roots are called \emph{compact}, following terminology from the theory of parabolic subgroups.
+We let the reader explore the notation for parabolic subgroups in the Dynkin diagrams package, and use this to declare various roots compact.
+\begin{Verbatim}
+\tikzset{/Lie Hasse diagram,attach Dynkin diagram=true,three D=false}
+\hasseDiagrams{D{**x*x*x*}}
+\end{Verbatim}
+\begingroup
+\tikzset{/Lie Hasse diagram,attach Dynkin diagram=true,three D=false}
+\hasseDiagrams{D{**x*x*x*}}
+\endgroup
+Our motivation comes from trying to identify the invariant vector subbundles of the tangent bundle of a rational homogeneous variety \cite{MathOverflow:123801}.
+Such diagrams are often unreadable if we don't turn off the three dimensional graphics.
+By default, noncompact root edges are not drawn.
+\begingroup
+\tikzset{/Lie Hasse diagram,attach Dynkin diagram=true,show name=false,three D=false}
+\begin{Verbatim}
+\hasseDiagrams{E{*xx*x*}}
+\end{Verbatim}
+\hasseDiagrams{E{*xx*x*}}
+\begin{Verbatim}
+\hasseDiagrams{A{x*x*}}
+\end{Verbatim}
+\hasseDiagrams{A{x*x*}}
+\begin{Verbatim}
+\hasseDiagrams{[parabolic=113]B8}
+\end{Verbatim}
+\hasseDiagrams{[parabolic=113]B8}
+\begin{Verbatim}
+\hasseDiagrams{C{**xx*x**}}
+\end{Verbatim}
+\hasseDiagrams{C{**xx*x**}}
+\newpage
+\begin{Verbatim}
+\hasseDiagrams{E{*x*x*x**}}
+\end{Verbatim}
+\hasseDiagrams{E{*x*x*x**}}
+\newpage
+\begin{Verbatim}
+\hasseDiagrams{F{**xx}}
+\end{Verbatim}
+\hasseDiagrams{F{**xx}}
+\begin{Verbatim}
+\hasseDiagrams{G{*x}}
+\end{Verbatim}
+\hasseDiagrams{G{*x}}
+\endgroup
+
+\section{Examples}
+\begingroup
+\tikzset{/Lie Hasse diagram,attach Dynkin diagram=true,show name=true}
+\begin{Verbatim}
+\hasseDiagrams{A1;A2;A3;A4;A5;A6}
+\hasseDiagrams{B3;B4;B5}
+\hasseDiagrams{C2;C3;C4}
+\hasseDiagrams{C5;C6}
+\hasseDiagrams{E6;E7}
+\hasseDiagrams{E8}
+\hasseDiagrams{F4;G2}
+\end{Verbatim}
+\hasseDiagrams{A1;A2;A3;A4;A5;A6}
+\hasseDiagrams{B3;B4;B5}
+\hasseDiagrams{C2;C3;C4}
+\hasseDiagrams{C5;C6}
+\hasseDiagrams{E6;E7}
+\hasseDiagrams{E8}
+\hasseDiagrams{F4;G2}
+\endgroup
+
+\section{Black and white}
+Publishing in colour on paper can be expensive.
+Simple global options:
+\begin{Verbatim}
+\tikzset{
+ background rectangle/.style={
+ shade,
+ top color=gray!15,
+ bottom color=white,
+ draw=gray!5,
+ very thick,
+ rounded corners},
+ /Dynkin diagram/text style/.style={black,scale=.75},
+ /Lie Hasse diagram,
+ edge length=1cm,
+ edge/.style={draw=black!50,ultra thick},
+ edge quotes/.style={black,auto,inner sep=3pt,scale=.75},
+ three D=true,
+ show name=true}
+\end{Verbatim}
+\begingroup
+\tikzset{
+ background rectangle/.style={
+ shade,
+ top color=gray!15,
+ bottom color=white,
+ draw=gray!5,
+ very thick,
+ rounded corners},
+ /Dynkin diagram/text style/.style={black,scale=.75},
+ /Lie Hasse diagram,
+ edge length=1cm,
+ edge/.style={draw=black!50,ultra thick},
+ edge quotes/.style={black,auto,inner sep=3pt,scale=.75},
+ three D=true,
+ show name=true}%
+change our examples to
+\hasseDiagrams{A1;A2;A3;A4;A5;A6}
+\hasseDiagrams{B3;B4;B5}
+\hasseDiagrams{C2;C3;C4}
+\hasseDiagrams{C5;C6}
+\hasseDiagrams{E6;E7}
+\hasseDiagrams{E8}
+\hasseDiagrams{F4;G2}
+\endgroup
+
+\bibliographystyle{amsplain}
+\bibliography{lie-hasse}
+\end{document}
diff --git a/macros/latex/contrib/acro/README b/macros/latex/contrib/acro/README
index 9235273498..221ded70e3 100644
--- a/macros/latex/contrib/acro/README
+++ b/macros/latex/contrib/acro/README
@@ -1,5 +1,5 @@
--------------------------------------------------------------------------
-the ACRO package v2.11b 2020/01/24
+the ACRO package v2.11c 2020/02/03
Typeset Acronyms
diff --git a/macros/latex/contrib/acro/acro-manual.cls b/macros/latex/contrib/acro/acro-manual.cls
index 89f2fb286f..e0a35f4781 100644
--- a/macros/latex/contrib/acro/acro-manual.cls
+++ b/macros/latex/contrib/acro/acro-manual.cls
@@ -215,6 +215,7 @@
\begingroup
\catcode`\^^M=13
\gdef\acroman@read@options#1#2^^M{%
+ \endgroup
\ifblank{#2}{}{\acroman@read@options@#2}%
#1%
\XSIMfilewritestart*{\jobname.tmp}%
@@ -226,7 +227,6 @@
{%
\begingroup
\acroman@readoptions{%
- \endgroup
\setlength\cnltx@sidebysidewidth
{\dimexpr .45\columnwidth -\lst@xleftmargin -\lst@xrightmargin\relax}%
\expanded{%
@@ -251,7 +251,6 @@
{%
\begingroup
\acroman@readoptions{%
- \endgroup
\setlength\cnltx@sidebysidewidth
{\dimexpr .45\columnwidth -\lst@xleftmargin -\lst@xrightmargin\relax}%
\expanded{%
@@ -387,5 +386,6 @@
\acro@add@version{2020-01-11}{2.11}
\acro@add@version{2020-01-16}{2.11a}
\acro@add@version{2020-01-24}{2.11b}
+\acro@add@version{2020-02-03}{2.11c}
\endinput
diff --git a/macros/latex/contrib/acro/acro-manual.pdf b/macros/latex/contrib/acro/acro-manual.pdf
index 2209e26891..4fea1ccc17 100644
--- a/macros/latex/contrib/acro/acro-manual.pdf
+++ b/macros/latex/contrib/acro/acro-manual.pdf
Binary files differ
diff --git a/macros/latex/contrib/acro/acro.history b/macros/latex/contrib/acro/acro.history
index 7fc23c120e..d719448f3e 100644
--- a/macros/latex/contrib/acro/acro.history
+++ b/macros/latex/contrib/acro/acro.history
@@ -282,3 +282,4 @@ feel free to contact me.
- prefer lazy boolean evaluation when possible
2020/01/16 v2.11a - adapt to new l3text module
2020/01/24 v2.11b - fix issue #147
+2020/02/03 v2.11c - fix issue #76
diff --git a/macros/latex/contrib/acro/acro.sty b/macros/latex/contrib/acro/acro.sty
index 3bf03df4d0..7346367aff 100644
--- a/macros/latex/contrib/acro/acro.sty
+++ b/macros/latex/contrib/acro/acro.sty
@@ -35,10 +35,10 @@
\ExplSyntaxOn
-\tl_const:Nn \c_acro_date_tl {2020/01/24}
+\tl_const:Nn \c_acro_date_tl {2020/02/03}
\tl_const:Nn \c_acro_version_major_number_tl {2}
\tl_const:Nn \c_acro_version_minor_number_tl {11}
-\tl_const:Nn \c_acro_version_subrelease_tl {b}
+\tl_const:Nn \c_acro_version_subrelease_tl {c}
\tl_const:Nx \c_acro_version_number_tl
{
\c_acro_version_major_number_tl .
@@ -716,7 +716,7 @@
\sys_if_engine_xetex:TF
{
\cs_set:Npn \acro_hyper_link:nn ##1##2
- { \hyperlink { \XeTeXLinkBox {##1} } {##2} }
+ { \hyperlink {##1} { \XeTeXLinkBox {##2} } }
}
{ \cs_set_eq:NN \acro_hyper_link:nn \hyperlink }
\cs_set:Npn \acro_hyper_target:nn ##1##2
diff --git a/macros/latex/contrib/chemmacros/README b/macros/latex/contrib/chemmacros/README
index 7483ec9d3f..6153319d53 100644
--- a/macros/latex/contrib/chemmacros/README
+++ b/macros/latex/contrib/chemmacros/README
@@ -1,5 +1,5 @@
--------------------------------------------------------------------------
-the CHEMMACROS package v5.9 2019/11/17
+the CHEMMACROS package v5.10 2020/02/03
comprehensive support for typesetting chemistry documents
@@ -28,8 +28,9 @@ The chemmacros package consists of the following files
chemmacros4.sty
chemmacros5.sty,
== DOCUMENTATION FILES ==
- chemmacros_en.tex
- chemmacros_en.pdf,
+ chemmacros-manual.tex
+ chemmacros-manual.pdf
+ chemmacros-manual.cls
README
chemmacros.history
== MODULE CODE FILES ==
diff --git a/macros/latex/contrib/chemmacros/chemmacros-manual.cls b/macros/latex/contrib/chemmacros/chemmacros-manual.cls
new file mode 100644
index 0000000000..179e588d55
--- /dev/null
+++ b/macros/latex/contrib/chemmacros/chemmacros-manual.cls
@@ -0,0 +1,382 @@
+% --------------------------------------------------------------------------
+% the CHEMFORMULA package
+%
+% typeset chemical compounds and reactions
+%
+% --------------------------------------------------------------------------
+% Clemens Niederberger
+% --------------------------------------------------------------------------
+% https://github.com/cgnieder/chemformula/
+% contact@mychemistry.eu
+% --------------------------------------------------------------------------
+% If you have any ideas, questions, suggestions or bugs to report, please
+% feel free to contact me.
+% --------------------------------------------------------------------------
+% Copyright 2011--2020 Clemens Niederberger
+%
+% This work may be distributed and/or modified under the
+% conditions of the LaTeX Project Public License, either version 1.3
+% of this license or (at your option) any later version.
+% The latest version of this license is in
+% http://www.latex-project.org/lppl.txt
+% and version 1.3 or later is part of all distributions of LaTeX
+% version 2005/12/01 or later.
+%
+% This work has the LPPL maintenance status `maintained'.
+%
+% The Current Maintainer of this work is Clemens Niederberger.
+% --------------------------------------------------------------------------
+\ProvidesClass{chemmacros-manual}[2020/02/03]
+
+\LoadClass[load-preamble,add-index]{cnltx-doc}
+\RequirePackage{imakeidx}
+\RequirePackage[utf8]{inputenc}
+
+\RequirePackage[compatibility=newest]{chemmacros}
+\setcnltx{
+ package = {chemmacros},
+ info = {comprehensive support for typesetting chemistry documents},
+ url = https://github.com/cgnieder/chemmacros ,
+ authors = Clemens Niederberger ,
+ email = contact@mychemistry.eu ,
+ abstract = {%
+ \centering
+ \includegraphics{chemmacros-logo.pdf}
+ \par
+ } ,
+ quote-format = \small\biolinumLF ,
+ add-cmds = {
+ abinitio, activatechemgreekmapping, AddRxnDesc, anti, aq, aqi,
+ ba, bond, bridge,
+ cd, ch, changechemgreeksymbol, charrow, chcpd, chemabove, chemalpha,
+ chembeta, ChemCleverefSupport, chemdelta, chemDelta,
+ ChemFancyrefSupport, chemformula@bondlength, chemgamma, ChemModule,
+ chemomega, chemphi, chemPhi, chemsetup, chlewis, chname , cip, cis, ch,
+ CNMR,
+ data, DeclareChemArrow, DeclareChemBond, DeclareChemBondAlias,
+ DeclareChemCharge, DeclareChemEqConstant, declarechemgreekmapping,
+ DeclareChemIUPAC, DeclareChemIUPACShorthand, DeclareChemLatin,
+ DeclareChemNMR, DeclareChemNucleophile, DeclareChemPartialCharge,
+ DeclareChemParticle, DeclareChemPhase, DeclareChemReaction,
+ DeclareChemState,
+ delm, delp, Delta, dexter, Dfi,
+ el, ElPot, endo, entgegen, Enthalpy, enthalpy, entropy,
+ fdelm, fdelp, fmch, fminus, fpch, fplus, fscrm, fscrp,
+ gas, ghs, ghslistall, ghspic, gibbs, gram,
+ hapto, HNMR, Helmholtz, hydrogen,
+ IfChemCompatibilityF, IfChemCompatibilityT, IfChemCompatibilityTF, insitu,
+ invacuo, isotope, iupac,
+ Ka, Kb, Kw,
+ laevus, Lfi, listofreactions, lqd,
+ makepolymerdelims, mch, mega, meta, mhName,
+ NewChemArrow, NewChemBond, NewChemBondAlias,
+ NewChemCharge, NewChemEqConstant, newchemgreekmapping, NewChemIUPAC,
+ NewChemIUPACShorthand, NewChemLatin, NewChemMacroset, NewChemNMR,
+ NewChemNucleophile, NewChemPartialCharge, NewChemParticle, NewChemPhase,
+ NewChemReaction, NewChemState,
+ newman, nitrogen, NMR, Nu, Nuc,
+ orbital, ortho, ox, OX, oxygen,
+ para, pch, per, pH, phase, phosphorus, photon, pKa, pKb, pOH, pos,
+ positron, Pot, ProvideChemArrow, ProvideChemBond, ProvideChemCharge,
+ ProvideChemEqConstant, ProvideChemIUPAC, ProvideChemIUPACShorthand,
+ ProvideChemLatin, ProvideChemNMR, ProvideChemNucleophile,
+ ProvideChemPartialCharge, ProvideChemParticle, ProvideChemPhase,
+ ProvideChemReaction,
+ ProvideChemState, prt,
+ Rad, redox, RemoveChemIUPACShorthand, RenewChemArrow, RenewChemBond,
+ RenewChemCharge, RenewChemEqConstant, renewchemgreekmapping,
+ RenewChemIUPAC, RenewChemIUPACShorthand, RenewChemLatin, RenewChemNMR,
+ RenewChemNucleophile, RenewChemPartialCharge, RenewChemParticle,
+ RenewChemPhase, RenewChemState,
+ Sf, scrm, scrp, second, selectchemgreekmapping, setchemformula,
+ ShowChemArrow, ShowChemBond, sld, Sod, state, sulfur,
+ trans,
+ usechemmodule,
+ val,
+ zusammen
+ } ,
+ add-silent-cmds = {
+ addplot,
+ bottomrule,
+ cancel, cdot, ce, cee, celsius, centering, chemfig, chemname, clap,
+ cnsetup, code, color, cstack, cstsetup,
+ DeclareInstance, DeclareSIUnit, definecolor, draw,
+ electronvolt, endtikzpicture,
+ footnotesize,
+ glqq, grqq,
+ hertz, hspace,
+ includegraphics, intertext, IUPAC,
+ joule,
+ kelvin, kilo,
+ latin, lc, lewis, Lewis, liquid, ltn,
+ metre, midrule, milli, mmHg, mole,
+ nano, nicefrac, num, numrange,
+ ominus, oplus,
+ percent, pgfarrowsdeclarealias, pgfarrowsrenewalias,
+ renewtagform, rightarrow,
+ sample, scriptscriptstyle, setchemfig, sfrac, shade,
+ shadedraw, shorthandoff, si, SI, sisetup, square, subsection,
+ textcolor, textendash, textsuperscript, tikz, tikzpicture, tiny, toprule,
+ upbeta, upeta, upgamma, usetikzlibrary,
+ volt, vphantom, vspave,
+ xspace,
+ z@, z@skip
+ } ,
+ index-setup = { othercode = \footnotesize , level = \section } ,
+ makeindex-setup = { columns = 2 , columnsep = 1em }
+}
+
+\RequirePackage{booktabs,array,longtable}
+
+\RequirePackage{chemfig,cancel,varioref,csquotes}
+
+\RequirePackage[
+ a4paper,
+ top = .1\paperheight,
+ bottom = .1\paperheight,
+ left = .2\paperwidth,
+ right = .1\paperwidth
+]{geometry}
+
+\def\libertine@figurestyle{LF}
+\RequirePackage{amsmath}
+\undef\lvert \undef\lVert
+\undef\rvert \undef\rVert
+\RequirePackage[libertine]{newtxmath}
+\def\libertine@figurestyle{OsF}
+
+\RequirePackage[biblatex]{embrac}
+\ChangeEmph{[}[,.02em]{]}[.055em,-.08em]
+\ChangeEmph{(}[-.01em,.04em]{)}[.04em,-.05em]
+
+\RequirePackage[accsupp]{acro}
+\acsetup{
+ long-format = \scshape ,
+ short-format = \scshape
+}
+
+\RequirePackage{fontawesome}
+\RequirePackage{datetime2}
+\DTMsetup{useregional=numeric,datesep=/}
+\newrobustcmd*\chemmacros@add@version[2]{%
+ \csdef{chemmacros@ver@#2}{%
+ \DTMdate{#1}%
+ \csgdef{chemmacros@ver@#2used}{}%
+ \csdef{chemmacros@ver@#2}{\DTMdate{#1}}%
+ }%
+}
+
+\newrobustcmd*\chemmacros@date[1]{%
+ \ifcsdef{chemmacros@ver@#1used}{}{ (\csuse{chemmacros@ver@#1})}}
+\newrobustcmd*\chemmacros@ifnew[1]{\ifcsstring{c_chemmacros_version_tl}{#1}}
+\newrobustcmd*\chemmacros@NEW{\faStarO\ New}
+
+\renewrobustcmd*\sinceversion[1]{%
+ \chemmacros@ifnew{#1}%
+ {\cnltx@version@note{\textcolor{red}{\chemmacros@NEW}}}%
+ {\cnltx@version@note{\GetTranslation{cnltx-introduced}~#1\chemmacros@date{#1}}}%
+}
+\renewrobustcmd*\changedversion[1]{%
+ \cnltx@version@note{\GetTranslation{cnltx-changed}~#1\chemmacros@date{#1}}%
+}
+
+\newnote*\sincechanged[2]{%
+ \GetTranslation{cnltx-introduced}~#1\chemmacros@date{#1},
+ changed with version~#2\chemmacros@date{#2}\chemmacros@ifnew{#2}{ \chemmacros@NEW}{}%
+}
+
+\RenewDocumentEnvironment{commands}{}
+ {%
+ \cnltx@set@catcode_{12}%
+ \let\command\cnltx@command
+ \cnltxlist
+ }
+ {\endcnltxlist}
+
+\RequirePackage{tcolorbox,xsimverb}
+\tcbuselibrary{skins,breakable}
+\tcbset{enhanced,enhanced jigsaw}
+
+\newtcolorbox{bewareofthedog}{
+ colback = white ,
+ colframe = red ,
+ underlay={%
+ \path[draw=none]
+ (interior.south west)
+ rectangle node[red]{\Huge\bfseries !}
+ ([xshift=-4mm]interior.north west);
+ }%
+}
+
+\newtcolorbox{cnltxcode}[1][]{
+ boxrule = 1pt ,
+ colback = cnltxbg ,
+ colframe = cnltx ,
+ arc = 5pt ,
+ beforeafter skip = .5\baselineskip ,%
+ #1%
+}
+
+\newcommand*\chemmacros@readoptions[1]{%
+ \catcode`\^^M=13
+ \chemmacros@read@options{#1}%
+}
+
+\begingroup
+\catcode`\^^M=13
+\gdef\chemmacros@read@options#1#2^^M{%
+ \endgroup
+ \ifblank{#2}{}{\chemmacros@read@options@#2}%
+ #1%
+ \XSIMfilewritestart*{\jobname.tmp}%
+}%
+\endgroup
+\def\chemmacros@read@options@[#1]{\pgfqkeys{/cnltx}{#1}}
+
+\RenewDocumentEnvironment{sourcecode}{}
+ {%
+ \begingroup
+ \chemmacros@readoptions{%
+ \setlength\cnltx@sidebysidewidth
+ {\dimexpr .45\columnwidth -\lst@xleftmargin -\lst@xrightmargin\relax}%
+ \expanded{%
+ \noexpand\lstset{
+ style=cnltx,
+ \ifboolexpe{ bool {cnltx@sidebyside} and not bool {cnltx@codeonly} }
+ {linewidth=\cnltx@sidebysidewidth,}{}%
+ \expandonce\cnltx@local@listings@options
+ }%
+ }%
+ \XSIMgobblechars{2}%
+ }%
+ }
+ {%
+ \XSIMfilewritestop
+ \cnltxcode[breakable]%
+ \lstinputlisting[style=cnltx]{\jobname.tmp}%
+ \endcnltxcode
+ }
+
+\RenewDocumentEnvironment{example}{}
+ {%
+ \begingroup
+ \chemmacros@readoptions{%
+ \setlength\cnltx@sidebysidewidth
+ {\dimexpr .45\columnwidth -\lst@xleftmargin -\lst@xrightmargin\relax}%
+ \expanded{%
+ \noexpand\lstset{
+ style=cnltx,
+ \ifboolexpe{ bool {cnltx@sidebyside} and not bool {cnltx@codeonly} }
+ {linewidth=\cnltx@sidebysidewidth,}{}%
+ \expandonce\cnltx@local@listings@options
+ }%
+ }%
+ \XSIMgobblechars{2}%
+ }%
+ }
+ {%
+ \XSIMfilewritestop
+ \ifbool{cnltx@sidebyside}
+ {%
+ \cnltxcode
+ \noindent
+ \minipage[c]{\cnltx@sidebysidewidth}%
+ \cnltx@pre@source@hook
+ \lstinputlisting[style=cnltx] {\jobname.tmp}%
+ \cnltx@after@source@hook
+ \endminipage\hfill
+ \minipage[c]{\cnltx@sidebysidewidth}%
+ \cnltx@pre@example@hook
+ \input {\jobname.tmp}%
+ \cnltx@after@example@hook
+ \endminipage
+ }
+ {%
+ \cnltxcode[breakable]%
+ \cnltx@pre@source@hook
+ \lstinputlisting{\jobname.tmp}%
+ \cnltx@after@source@hook
+ \tcblower
+ \cnltx@pre@example@hook
+ \input {\jobname.tmp}%
+ \cnltx@after@example@hook
+ }%
+ \endcnltxcode
+ }
+
+\RequirePackage[
+ backend=biber,
+ style=cnltx,
+ sortlocale=en_US,
+ indexing=cite]{biblatex}
+\RequirePackage{csquotes,varioref}
+\defbibheading{bibliography}{\section{References}}
+
+\RequirePackage[biblatex]{embrac}[2012/06/29]
+\ChangeEmph{[}[,.02em]{]}[.055em,-.08em]
+\ChangeEmph{(}[-.01em,.04em]{)}[.04em,-.05em]
+
+\chemmacros@add@version{2012-01-28}{3.0}
+\chemmacros@add@version{2012-01-30}{3.0a}
+\chemmacros@add@version{2012-02-03}{3.0b}
+\chemmacros@add@version{2012-02-05}{3.0c}
+\chemmacros@add@version{2012-02-10}{3.0d}
+\chemmacros@add@version{2012-02-19}{3.1}
+\chemmacros@add@version{2012-02-26}{3.1a}
+\chemmacros@add@version{2012-03-03}{3.1b}
+\chemmacros@add@version{2012-03-14}{3.1c}
+\chemmacros@add@version{2012-03-20}{3.2}
+\chemmacros@add@version{2012-05-07}{3.3}
+\chemmacros@add@version{2012-05-13}{3.3a}
+\chemmacros@add@version{2012-05-18}{3.3b}
+\chemmacros@add@version{2012-05-18}{3.3c}
+\chemmacros@add@version{2012-07-24}{3.3d}
+\chemmacros@add@version{2012-08-21}{3.3e}
+\chemmacros@add@version{2012-09-11}{3.4}
+\chemmacros@add@version{2012-10-03}{3.4a}
+\chemmacros@add@version{2013-01-04}{3.4b}
+\chemmacros@add@version{2013-01-28}{3.5}
+\chemmacros@add@version{2013-02-19}{3.5a}
+\chemmacros@add@version{2013-02-26}{3.6}
+\chemmacros@add@version{2013-02-27}{3.6a}
+\chemmacros@add@version{2013-04-19}{3.6b}
+\chemmacros@add@version{2013-07-06}{4.0}
+\chemmacros@add@version{2013-08-07}{4.0a}
+\chemmacros@add@version{2013-08-24}{4.1}
+\chemmacros@add@version{2013-10-28}{4.2}
+\chemmacros@add@version{2013-10-31}{4.2a}
+\chemmacros@add@version{2013-11-04}{4.2b}
+\chemmacros@add@version{2013-11-20}{4.2c}
+\chemmacros@add@version{2013-12-15}{4.2d}
+\chemmacros@add@version{2014-01-09}{4.2e}
+\chemmacros@add@version{2014-01-24}{4.3}
+\chemmacros@add@version{2014-01-29}{4.4}
+\chemmacros@add@version{2014-04-08}{4.5}
+\chemmacros@add@version{2014-06-30}{4.5a}
+\chemmacros@add@version{2014-08-08}{4.6}
+\chemmacros@add@version{2015-02-08}{4.7}
+\chemmacros@add@version{2015-09-11}{5.0}
+\chemmacros@add@version{2015-09-23}{5.1}
+\chemmacros@add@version{2015-10-14}{5.2}
+\chemmacros@add@version{2016-01-13}{5.3}
+\chemmacros@add@version{2016-01-23}{5.3a}
+\chemmacros@add@version{2016-02-10}{5.4}
+\chemmacros@add@version{2016-03-08}{5.5}
+\chemmacros@add@version{2016-05-02}{5.6}
+\chemmacros@add@version{2016-05-04}{5.6a}
+\chemmacros@add@version{2016-06-07}{5.7}
+\chemmacros@add@version{2016-06-08}{5.7a}
+\chemmacros@add@version{2016-10-05}{5.7b}
+\chemmacros@add@version{2016-12-28}{5.7c}
+\chemmacros@add@version{2017-04-17}{5.8}
+\chemmacros@add@version{2017-06-13}{5.8a}
+\chemmacros@add@version{2017-08-28}{5.8b}
+\chemmacros@add@version{2018-03-02}{5.8c}
+\chemmacros@add@version{2019-09-23}{5.8d}
+\chemmacros@add@version{2019-09-27}{5.8e}
+\chemmacros@add@version{2019-09-30}{5.8f}
+\chemmacros@add@version{2019-11-17}{5.9}
+\chemmacros@add@version{2020-01-16}{5.9a}
+\chemmacros@add@version{2020-02-03}{5.10}
+
+\endinput
diff --git a/macros/latex/contrib/chemmacros/chemmacros_en.pdf b/macros/latex/contrib/chemmacros/chemmacros-manual.pdf
index 5619833757..02badca256 100644
--- a/macros/latex/contrib/chemmacros/chemmacros_en.pdf
+++ b/macros/latex/contrib/chemmacros/chemmacros-manual.pdf
Binary files differ
diff --git a/macros/latex/contrib/chemmacros/chemmacros_en.tex b/macros/latex/contrib/chemmacros/chemmacros-manual.tex
index 9bf20e8789..991742a710 100644
--- a/macros/latex/contrib/chemmacros/chemmacros_en.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros-manual.tex
@@ -30,133 +30,8 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\documentclass[load-preamble+]{cnltx-doc}
-\usepackage[utf8]{inputenc}
-\usepackage[compatibility=newest]{chemmacros}
-\setcnltx{
- package = {chemmacros},
- info = {comprehensive support for typesetting chemistry documents},
- url = https://github.com/cgnieder/chemmacros ,
- authors = Clemens Niederberger ,
- email = contact@mychemistry.eu ,
- abstract = {%
- \centering
- \includegraphics{chemmacros-logo.pdf}
- \par
- } ,
- quote-format = \small\biolinumLF ,
- add-cmds = {
- abinitio, activatechemgreekmapping, AddRxnDesc, anti, aq, aqi,
- ba, bond, bridge,
- cd, ch, changechemgreeksymbol, charrow, chcpd, chemabove, chemalpha,
- chembeta, ChemCleverefSupport, chemdelta, chemDelta,
- ChemFancyrefSupport, chemformula@bondlength, chemgamma, ChemModule,
- chemomega, chemphi, chemPhi, chemsetup, chlewis, chname , cip, cis, ch,
- CNMR,
- data, DeclareChemArrow, DeclareChemBond, DeclareChemBondAlias,
- DeclareChemCharge, DeclareChemEqConstant, declarechemgreekmapping,
- DeclareChemIUPAC, DeclareChemIUPACShorthand, DeclareChemLatin,
- DeclareChemNMR, DeclareChemNucleophile, DeclareChemPartialCharge,
- DeclareChemParticle, DeclareChemPhase, DeclareChemReaction,
- DeclareChemState,
- delm, delp, Delta, dexter, Dfi,
- el, ElPot, endo, entgegen, Enthalpy, enthalpy, entropy,
- fdelm, fdelp, fmch, fminus, fpch, fplus, fscrm, fscrp,
- gas, ghs, ghslistall, ghspic, gibbs, gram,
- hapto, HNMR, Helmholtz, hydrogen,
- IfChemCompatibilityF, IfChemCompatibilityT, IfChemCompatibilityTF, insitu,
- invacuo, isotope, iupac,
- Ka, Kb, Kw,
- laevus, Lfi, listofreactions, lqd,
- makepolymerdelims, mch, mega, meta, mhName,
- NewChemArrow, NewChemBond, NewChemBondAlias,
- NewChemCharge, NewChemEqConstant, newchemgreekmapping, NewChemIUPAC,
- NewChemIUPACShorthand, NewChemLatin, NewChemMacroset, NewChemNMR,
- NewChemNucleophile, NewChemPartialCharge, NewChemParticle, NewChemPhase,
- NewChemReaction, NewChemState,
- newman, nitrogen, NMR, Nu, Nuc,
- orbital, ortho, ox, OX, oxygen,
- para, pch, per, pH, phase, phosphorus, photon, pKa, pKb, pOH, pos,
- positron, Pot, ProvideChemArrow, ProvideChemBond, ProvideChemCharge,
- ProvideChemEqConstant, ProvideChemIUPAC, ProvideChemIUPACShorthand,
- ProvideChemLatin, ProvideChemNMR, ProvideChemNucleophile,
- ProvideChemPartialCharge, ProvideChemParticle, ProvideChemPhase,
- ProvideChemReaction,
- ProvideChemState, prt,
- Rad, redox, RemoveChemIUPACShorthand, RenewChemArrow, RenewChemBond,
- RenewChemCharge, RenewChemEqConstant, renewchemgreekmapping,
- RenewChemIUPAC, RenewChemIUPACShorthand, RenewChemLatin, RenewChemNMR,
- RenewChemNucleophile, RenewChemPartialCharge, RenewChemParticle,
- RenewChemPhase, RenewChemState,
- Sf, scrm, scrp, second, selectchemgreekmapping, setchemformula,
- ShowChemArrow, ShowChemBond, sld, Sod, state, sulfur,
- trans,
- usechemmodule,
- val,
- zusammen
- } ,
- add-silent-cmds = {
- addplot,
- bottomrule,
- cancel, cdot, ce, cee, celsius, centering, chemfig, chemname, clap,
- cnsetup, code, color, cstack, cstsetup,
- DeclareInstance, DeclareSIUnit, definecolor, draw,
- electronvolt, endtikzpicture,
- footnotesize,
- glqq, grqq,
- hertz, hspace,
- includegraphics, intertext, IUPAC,
- joule,
- kelvin, kilo,
- latin, lc, lewis, Lewis, liquid, ltn,
- metre, midrule, milli, mmHg, mole,
- nano, nicefrac, num, numrange,
- ominus, oplus,
- percent, pgfarrowsdeclarealias, pgfarrowsrenewalias,
- renewtagform, rightarrow,
- sample, scriptscriptstyle, setchemfig, sfrac, shade,
- shadedraw, shorthandoff, si, SI, sisetup, square, subsection,
- textcolor, textendash, textsuperscript, tikz, tikzpicture, tiny, toprule,
- upbeta, upeta, upgamma, usetikzlibrary,
- volt, vphantom, vspave,
- xspace,
- z@, z@skip
- } ,
- index-setup = { othercode = \footnotesize , level = \section } ,
- makeindex-setup = { columns = 2 , columnsep = 1em }
-}
-
-\usepackage{booktabs,array,longtable}
-
-\usepackage{chemfig,cancel,varioref,csquotes}
-
-\usepackage[
- a4paper,
- top = .1\paperheight,
- bottom = .1\paperheight,
- left = .2\paperwidth,
- right = .1\paperwidth
-]{geometry}
+\documentclass{chemmacros-manual}
-
-\makeatletter
-\def\libertine@figurestyle{LF}
-\usepackage{amsmath}
-\undef\lvert \undef\lVert
-\undef\rvert \undef\rVert
-\usepackage[libertine]{newtxmath}
-\def\libertine@figurestyle{OsF}
-\makeatother
-
-\usepackage[biblatex]{embrac}
-\ChangeEmph{[}[,.02em]{]}[.055em,-.08em]
-\ChangeEmph{(}[-.01em,.04em]{)}[.04em,-.05em]
-
-\usepackage[accsupp]{acro}
-\acsetup{
- long-format = \scshape ,
- short-format = \scshape
-}
\DeclareAcronym{ghs}{
short = ghs ,
long = Globally Harmonized System of Classification and Labelling of
@@ -208,19 +83,17 @@
chemformula/format = \libertineLF
}
-\usepackage{siunitx}
-
\sisetup{
detect-mode=false,
mode=text,
text-rm=\libertineLF
}
-\usepackage{filecontents}
-
\defbibheading{bibliography}{\section{References}}
\addbibresource{\jobname.bib}
-\begin{filecontents*}{\jobname.bib}
+\addbibresource{cnltx.bib}
+
+\begin{filecontents*}[overwrite]{\jobname.bib}
@book{iupac:greenbook,
author = {E. Richard Cohan and Tomislav Cvita\v{s} and Jeremy G. Frey and
Bertil Holmstr\"om and Kozo Kuchitsu and Roberto Marquardt and Ian Mills and
@@ -1647,8 +1520,6 @@ modules. In the macro descriptions below \TF\ denotes that a \code{T}, an
\marg{true} \marg{false}]
Checks if class \meta{name} has been loaded. Also works after begin
document.
- \explcommand{chemmacros_leave_vmode:}
- Equivalent of \cs*{leavevmode}.
\explcommand{chemmacros_nobreak:}
Inserts a penalty of \num{10000}.
\explcommand{chemmacros_allow_break:}
diff --git a/macros/latex/contrib/chemmacros/chemmacros.history b/macros/latex/contrib/chemmacros/chemmacros.history
index fc78d0e120..694c1039ce 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.history
+++ b/macros/latex/contrib/chemmacros/chemmacros.history
@@ -386,3 +386,7 @@ Version history
- define latin phrases on the go instead of at begin
document
2020/01/16 - version 5.9a - adapt to renaming of string case changing functions
+2020/02/03 - version 5.10 - define \torr as well as \Torr (units)
+ - prefer lazy boolean evaluation
+ - prefer the kernel commands to
+ \chemmacros_leave_vmode: and \chemmacros_tex_if:
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex
index 3f84c9097b..ed85a205e5 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.base.code.tex
@@ -25,7 +25,7 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{base}{2020/01/16 basic chemmacros module}
+\ChemModule{base}{2020/02/02 basic chemmacros module}
% for the document hooks
\ChemCompatibilityFrom{5.1}
@@ -117,21 +117,27 @@
{
\exp_args:Nc \NewDocumentCommand {NewChem#1} {#2}
{
- \bool_if:nTF { \cs_if_free_p:c {##1} && \cs_if_free_p:c {end##1} }
- { #3 }
+ \bool_lazy_and:nnTF
+ { \cs_if_free_p:c {##1} }
+ { \cs_if_free_p:c {end##1} }
+ {#3}
{ \msg_error:nnn {chemmacros} {new-#1} {##1} }
}
\exp_args:Nc \NewDocumentCommand {RenewChem#1} {#2}
{
- \bool_if:nTF { \cs_if_free_p:c {##1} || \cs_if_free_p:c {end##1} }
+ \bool_lazy_or:nnTF
+ { \cs_if_free_p:c {##1} }
+ { \cs_if_free_p:c {end##1} }
{ \msg_error:nnn {chemmacros} {renew-#1} {##1} }
- { #3 }
+ {#3}
}
\exp_args:Nc \NewDocumentCommand {DeclareChem#1} {#2} {#3}
\exp_args:Nc \NewDocumentCommand {ProvideChem#1} {#2}
{
- \bool_if:nT { \cs_if_free_p:c {##1} && \cs_if_free_p:c {end##1} }
- { #3 }
+ \bool_lazy_and:nT
+ { \cs_if_free_p:c {##1} }
+ { \cs_if_free_p:c {end##1} }
+ {#3}
}
\msg_new:nnn {chemmacros} {new-#1}
{
@@ -178,7 +184,6 @@
\cs_new_eq:NN \chemmacros_ignore_spaces: \tex_ignorespaces:D
-\cs_new_protected:Npn \chemmacros_leave_vmode: { \hbox_unpack:N \c_empty_box }
\cs_new_protected:Npn \chemmacros_nobreak: { \tex_penalty:D 10000 \scan_stop: }
\cs_new_protected:Npn \chemmacros_allow_break: { \tex_penalty:D \c_zero_int }
\cs_new_protected:Npn \chemmacros_skip_nobreak:N #1
@@ -188,13 +193,6 @@
\chemmacros_nobreak:
}
-% do I use those at all?
-\prg_new_conditional:Npnn \chemmacros_tex_if:nn #1#2 {p,T,F,TF}
- { \use:c { if #1 } #2 \prg_return_true: \else: \prg_return_false: \fi: }
-
-\prg_new_conditional:Npnn \chemmacros_latex_if:n #1 {p,T,F,TF}
- { #1 { \prg_return_true: } { \prg_return_false: } }
-
% this is used at least in the `isotope' module
\prg_new_conditional:Npnn \chemmacros_if_is_int:n #1 {p,T,F,TF}
{
@@ -272,7 +270,7 @@
{
\cs_if_exist:cF {cref@#1@name}
{
- \chemmacros_tex_if:nnTF {@cref@capitalise} {}
+ \legacy_if:nTF {@cref@capitalise}
{ \crefname {#1} {#4} {#5} }
{ \crefname {#1} {#2} {#3} }
\Crefname {#1} {#4} {#5}
@@ -485,3 +483,4 @@
2016/05/04 - fix \ChemCleverefSupport
2017/08/28 - add missing hyperref check
2020/01/16 - adapt to renaming of string case changing functions
+2020/02/02 - lazy boolean evaluation
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex
index 292b90747a..7bc4be0b0a 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.chemformula.code.tex
@@ -25,7 +25,7 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{chemformula}{2016/05/03 integration of chemical formulas}
+\ChemModule{chemformula}{2020/02/02 integration of chemical formulas}
\RequirePackage{amstext}
\chemmacros_load_module:n {charges}
@@ -209,17 +209,12 @@
\AtEndPreamble
{
- \bool_if:nTF
- {
- !\l__chemmacros_formula_method_set_bool
- &&
- \chemmacros_if_compatibility_p:nn {>=} {5.2}
- &&
- \chemmacros_if_compatibility_p:nn {<} {5.6}
- }
- { \chemmacros_check_formula_method: }
+ \bool_if:NF \l__chemmacros_formula_method_set_bool
{
- \bool_if:NF \l__chemmacros_formula_method_set_bool
+ \bool_lazy_and:nnTF
+ { \chemmacros_if_compatibility_p:nn {>=} {5.2} }
+ { \chemmacros_if_compatibility_p:nn {<} {5.6} }
+ { \chemmacros_check_formula_method: }
{
\chemmacros_if_compatibility:nnTF {>=} {5.6}
{ \msg_info:nn {chemmacros} {default-formula-method} }
@@ -242,3 +237,4 @@
- don't automatically load an available method: load `chemformula'
if the users haven't decided for themselves and issue a warning
2016/05/03 - correct wrong method check
+2020/02/02 - lazy boolean evaluation
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex
index afe973899d..ef9f8568e2 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.greek.code.tex
@@ -25,9 +25,9 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{greek}{2015/06/09 upright greek symbols}
+\ChemModule{greek}{2020/02/02 upright greek symbols}
-\RequirePackage{chemgreek}[2015/04/09]
+\RequirePackage{chemgreek}[2020/01/16]
\msg_new:nnn {chemmacros} {no-greek}
{
@@ -45,19 +45,15 @@
% chemgreek selects a mapping if an unambiguous choice is possible, otherwise
% selects `default'. Warn the user in this case:
\AtBeginDocument{
- \bool_if:nT
- {
- \chemgreek_if_mapping_active_p:n {default} ||
- \chemgreek_if_mapping_active_p:n {var-default}
- }
+ \bool_lazy_or:nnT
+ { \chemgreek_if_mapping_active_p:n {default} }
+ { \chemgreek_if_mapping_active_p:n {var-default} }
{ \msg_warning:nn {chemmacros} {no-greek} }
}
% an option for manual selection:
\chemmacros_define_global_keys:n
- {
- greek .code:n = \chemmacros_choose_chemgreek_mapping:n {#1}
- }
+ { greek .code:n = \chemmacros_choose_chemgreek_mapping:n {#1} }
\cs_new_protected:Npn \chemmacros_choose_chemgreek_mapping:n #1
{
@@ -70,3 +66,5 @@
}
% --------------------------------------------------------------------------
+\file_input_stop:
+2020/02/02 - lazy boolean evaluation
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex
index 2f272bb740..812dede658 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.mechanisms.code.tex
@@ -40,9 +40,9 @@
\cs_new_protected:Npn \__chemmacros_set_mechanisms:nnn #1#2#3
{
- \tl_set:Nn \l__chemmacros_mechanisms_type_tl { #1 }
- \tl_set:Nn \l__chemmacros_mechanisms_mol_tl { #2 }
- \tl_set:Nn \l__chemmacros_mechanisms_ar_tl { #3 }
+ \tl_set:Nn \l__chemmacros_mechanisms_type_tl {#1}
+ \tl_set:Nn \l__chemmacros_mechanisms_mol_tl {#2}
+ \tl_set:Nn \l__chemmacros_mechanisms_ar_tl {#3}
}
\chemmacros_define_keys:nn {mechanisms}
@@ -50,7 +50,7 @@
type .choice: ,
type / .code:n =
{
- \__chemmacros_set_mechanisms:nnn { S }
+ \__chemmacros_set_mechanisms:nnn {S}
{
\c_math_toggle_token
\c_math_subscript_token { \text {N} }
@@ -60,7 +60,7 @@
} ,
type / 1 .code:n =
{
- \__chemmacros_set_mechanisms:nnn { S }
+ \__chemmacros_set_mechanisms:nnn {S}
{
\c_math_toggle_token
\c_math_subscript_token { \text {N} }
@@ -71,7 +71,7 @@
} ,
type / 2 .code:n =
{
- \__chemmacros_set_mechanisms:nnn { S }
+ \__chemmacros_set_mechanisms:nnn {S}
{
\c_math_toggle_token
\c_math_subscript_token { \text {N} }
@@ -82,7 +82,7 @@
} ,
type / se .code:n =
{
- \__chemmacros_set_mechanisms:nnn { S }
+ \__chemmacros_set_mechanisms:nnn {S}
{
\c_math_toggle_token
\c_math_subscript_token { \text {E} }
@@ -92,7 +92,7 @@
} ,
type / 1e .code:n =
{
- \__chemmacros_set_mechanisms:nnn { S }
+ \__chemmacros_set_mechanisms:nnn {S}
{
\c_math_toggle_token
\c_math_subscript_token { \text {E} }
@@ -103,7 +103,7 @@
} ,
type / 2e .code:n =
{
- \__chemmacros_set_mechanisms:nnn { S }
+ \__chemmacros_set_mechanisms:nnn {S}
{
\c_math_toggle_token
\c_math_subscript_token { \text {E} }
@@ -114,7 +114,7 @@
} ,
type / ar .code:n =
{
- \__chemmacros_set_mechanisms:nnn { S }
+ \__chemmacros_set_mechanisms:nnn {S}
{
\c_math_toggle_token
\c_math_subscript_token { \text {E} }
@@ -123,14 +123,14 @@
{ Ar - }
} ,
type / e .code:n =
- { \__chemmacros_set_mechanisms:nnn { E } { } { } } ,
+ { \__chemmacros_set_mechanisms:nnn {E} { } { } } ,
type / e1 .code:n =
- { \__chemmacros_set_mechanisms:nnn { E } { 1 } { } } ,
+ { \__chemmacros_set_mechanisms:nnn {E} {1} { } } ,
type / e2 .code:n =
- { \__chemmacros_set_mechanisms:nnn { E } { 2 } { } } ,
+ { \__chemmacros_set_mechanisms:nnn {E} {2} { } } ,
type / cb .code:n =
{
- \__chemmacros_set_mechanisms:nnn { E }
+ \__chemmacros_set_mechanisms:nnn {E}
{
1
\c_math_toggle_token
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex
index 1175b3151e..3e5b6b616d 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.nomenclature.code.tex
@@ -51,10 +51,10 @@
\msg_new:nnn {chemmacros} {let-iupac}
{
- You've~ tried~ to~ let~ the~ iupac~ command~ \token_to_str:N #1 ~ to~ the~
- iupac~ command~ \token_to_str:N #2 ,~ but~ the~ latter~ doesn't~ exist.~
- Use~ \token_to_str:N \NewChemIUPAC \c_space_tl instead~ or~declare~
- \token_to_str:N #2 \c_space_tl first.
+ You've~ tried~ to~ let~ the~ iupac~ command~ \token_to_str:N #1
+ \c_space_tl to~ the~ iupac~ command~ \token_to_str:N #2 ,~ but~ the~
+ latter~ doesn't~ exist.~ Use~ \token_to_str:N \NewChemIUPAC \c_space_tl
+ instead~ or~declare~ \token_to_str:N #2 \c_space_tl first.
}
\msg_new:nnn {chemmacros} {new-iupac-shorthand}
@@ -70,75 +70,87 @@
but~ this~ shorthand~ doesn't~ exist,~ yet.
}
+\msg_new:nnn {chemmacros} {show-iupac}
+ { \\ >~ \token_to_str:N #1=iupac~macro: \\ -> #2 }
+
+\msg_new:nnn {chemmacros} {no-iupac-command}
+ { \\ >~ \token_to_str:N #1=not~ defined~ as~ iupac~ macro }
+
+\cs_generate_variant:Nn \msg_show:nnnn {nnnV}
+
+% --------------------------------------------------------------------------
\prop_new:N \l__chemmacros_iupac_prop
-\cs_new_protected:Npn \chemmacros_new_iupac:Nn #1#2
+\cs_new_protected:Npn \__chemmacros_iupac_name:NN #1#2
+ { \str_set:Nx #2 { \chemmacros_remove_backslash:N #1 } }
+
+\cs_new_protected:Npn \__chemmacros_define_iupac:Nn #1#2
{
- \tl_set:Nx \l__chemmacros_tmpa_tl
- { \chemmacros_remove_backslash:N #1 }
- \prop_if_in:NVTF \l__chemmacros_iupac_prop \l__chemmacros_tmpa_tl
- { \msg_error:nnn {chemmacros} {new-iupac} {#1} }
- {
- \prop_put:NVn \l__chemmacros_iupac_prop
- \l__chemmacros_tmpa_tl
- {#2}
- }
+ \__chemmacros_iupac_name:NN #1 \l__chemmacros_tmpa_str
+ \prop_put:NVn \l__chemmacros_iupac_prop
+ \l__chemmacros_tmpa_str
+ {#2}
\chemmacros_make_iupac:
}
+\cs_generate_variant:Nn \__chemmacros_define_iupac:Nn {NV}
-\cs_new_protected:Npn \chemmacros_provide_iupac:Nn #1#2
+\cs_new_protected:Npn \__chemmacros_let_iupac:NN #1#2
{
+ \__chemmacros_iupac_name:NN #1 \l__chemmacros_tmpa_str
+ \__chemmacros_iupac_name:NN #2 \l__chemmacros_tmpb_str
\tl_set:Nx \l__chemmacros_tmpa_tl
- { \chemmacros_remove_backslash:N #1 }
- \prop_if_in:NVF \l__chemmacros_iupac_prop \l__chemmacros_tmpa_tl
- {
- \prop_put:NVn \l__chemmacros_iupac_prop
- \l__chemmacros_tmpa_tl
- {#2}
- }
- \chemmacros_make_iupac:
+ { \prop_item:NV \l__chemmacros_iupac_prop \l__chemmacros_tmpb_str }
+ \__chemmacros_define_iupac:NV #1 \l__chemmacros_tmpa_tl
}
-\cs_new_protected:Npn \chemmacros_define_iupac:Nn #1#2
+\cs_new_protected:Npn \chemmacros_show_iupac:N #1
{
- \tl_set:Nx \l__chemmacros_tmpa_tl
- { \chemmacros_remove_backslash:N #1 }
- \prop_put:NVn \l__chemmacros_iupac_prop
- \l__chemmacros_tmpa_tl
- {#2}
- \chemmacros_make_iupac:
+ \group_begin:
+ \__chemmacros_iupac_name:NN #1 \l__chemmacros_tmpa_str
+ \tl_set:Nx \l__chemmacros_tmpa_tl
+ { \prop_item:NV \l__chemmacros_iupac_prop \l__chemmacros_tmpa_str }
+ \tl_if_empty:NTF \l__chemmacros_tmpa_tl
+ { \msg_show:nnn {chemmacros} {no-iupac-command} {#1} }
+ { \msg_show:nnnV {chemmacros} {show-iupac} {#1} \l__chemmacros_tmpa_tl }
+ \group_end:
+ }
+
+\prg_new_protected_conditional:Npnn \chemmacros_if_iupac:N #1 {T,F,TF}
+ {
+ \__chemmacros_iupac_name:NN #1 \l__chemmacros_tmpa_str
+ \prop_if_in:NVTF \l__chemmacros_iupac_prop \l__chemmacros_tmpa_str
+ { \prg_return_true: }
+ { \prg_return_false: }
+ }
+
+\cs_new_protected:Npn \chemmacros_new_iupac:Nn #1#2
+ {
+ \chemmacros_if_iupac:NTF #1
+ { \msg_error:nnn {chemmacros} {new-iupac} {#1} }
+ { \__chemmacros_define_iupac:Nn #1 {#2} }
}
+\cs_new_protected:Npn \chemmacros_provide_iupac:Nn #1#2
+ {
+ \chemmacros_if_iupac:NF #1
+ { \__chemmacros_define_iupac:Nn #1 {#2} }
+ }
+
+\cs_new_protected:Npn \chemmacros_define_iupac:Nn #1#2
+ { \__chemmacros_define_iupac:Nn #1 {#2} }
+
\cs_new_protected:Npn \chemmacros_renew_iupac:Nn #1#2
{
- \tl_set:Nx \l__chemmacros_tmpa_tl
- { \chemmacros_remove_backslash:N #1 }
- \prop_if_in:NVTF \l__chemmacros_iupac_prop \l__chemmacros_tmpa_tl
- {
- \prop_put:NVn \l__chemmacros_iupac_prop
- \l__chemmacros_tmpa_tl
- {#2}
- }
+ \chemmacros_if_iupac:NTF #1
+ { \__chemmacros_define_iupac:Nn #1 {#2} }
{ \msg_error:nnn {chemmacros} {renew-iupac} {#1} }
- \chemmacros_make_iupac:
}
\cs_new_protected:Npn \chemmacros_let_iupac:NN #1#2
{
- \tl_set:Nx \l__chemmacros_tmpa_tl
- { \chemmacros_remove_backslash:N #1 }
- \tl_set:Nx \l__chemmacros_tmpb_tl
- { \chemmacros_remove_backslash:N #2 }
- \prop_get:NVNTF \l__chemmacros_iupac_prop
- \l__chemmacros_tmpb_tl
- \l__chemmacros_tmpc_tl
- {
- \prop_put:NVV \l__chemmacros_iupac_prop
- \l__chemmacros_tmpa_tl
- \l__chemmacros_tmpc_tl
- }
+ \chemmacros_if_iupac:NTF #2
+ { \__chemmacros_let_iupac:NN #1#2 }
{ \msg_error:nnnn {chemmacros} {let-iupac} {#1} {#2} }
- \chemmacros_make_iupac:
}
\ChemCompatibilityTo{5.2}
@@ -220,6 +232,7 @@
\NewDocumentCommand \LetChemIUPAC {mm}
{ \chemmacros_let_iupac:NN #1 #2 }
+% --------------------------------------------------------------------------
\chemmacros_define_keys:nn {nomenclature}
{
iupac .choice: ,
@@ -234,6 +247,7 @@
\bool_set_true:N \l__chemmacros_iupac_strict_bool ,
}
+% --------------------------------------------------------------------------
% stereo descriptors and other nomenclature commands
% Cahn-Ingold-Prelog
\dim_new:N \l__chemmacros_cip_kern_dim
@@ -643,6 +657,9 @@
}
}
+\NewDocumentCommand \ChemMakeIupacShorthands {}
+ { \chemmacros_make_shorthands: }
+
\NewDocumentCommand \DeclareChemIUPACShorthand {mm}
{ \chemmacros_define_iupac_shorthand:NN #1#2 }
@@ -674,20 +691,20 @@
\NewChemIUPACShorthand - \chemmacros_break_point_hyphen:
\ChemCompatibilityFrom{5.1}
-\NewChemIUPACShorthand ( \chemmacros_break_point_opening_paren:
-\NewChemIUPACShorthand ) \chemmacros_break_point_closing_paren:
-\NewChemIUPACShorthand [ \chemmacros_break_point_opening_bracket:
-\NewChemIUPACShorthand ] \chemmacros_break_point_closing_bracket:
+ \NewChemIUPACShorthand ( \chemmacros_break_point_opening_paren:
+ \NewChemIUPACShorthand ) \chemmacros_break_point_closing_paren:
+ \NewChemIUPACShorthand [ \chemmacros_break_point_opening_bracket:
+ \NewChemIUPACShorthand ] \chemmacros_break_point_closing_bracket:
\EndChemCompatibility
\ChemCompatibilityFrom{5.3}
-\NewChemIUPAC \chemprime { \ensuremath {{}^{\prime}} }
-\NewChemIUPACShorthand ' \chemprime
+ \NewChemIUPAC \chemprime { \ensuremath {{}^{\prime}} }
+ \NewChemIUPACShorthand ' \chemprime
\EndChemCompatibility
\ChemCompatibilityFrom{5.8c}
-\NewChemIUPAC \nonbreakinghyphen { \mbox{-} \nobreak \hspace{0pt} }
-\NewChemIUPACShorthand = \nonbreakinghyphen
+ \NewChemIUPAC \nonbreakinghyphen { \mbox{-} \nobreak \hspace{0pt} }
+ \NewChemIUPACShorthand = \nonbreakinghyphen
\EndChemCompatibility
\cs_new_protected:Npn \chemmacros_iupac:nn #1#2
@@ -697,13 +714,13 @@
\chemmacros_set_keys:nn {nomenclature} {#1}
\chemmacros_make_iupac:
\chemmacros_make_shorthands:
- % what's this vvv in here for?
- \chemmacros_ignore_spaces:
+ % \prop_show:N \l__chemmacros_iupac_shorthands_prop
\chemmacros_if_compatibility:nnT {<=} {5.2}
{ \chemmacros_define_deprecated:NN \- - }
\tl_set_rescan:Nnn \l__chemmacros_tmpa_tl
{ \chemmacros_activate_all_iupac_shorthands: }
{#2}
+ % \tl_analysis_show:N
\l__chemmacros_tmpa_tl
\group_end:
}
@@ -953,3 +970,5 @@
`cip-number-format'
2017/06/11 - change behaviour of \__chemmacros_break_point_insert:nnn so
it does nothing as last token in \iupac
+2020/01/02 - \chemmacros_show_iupac:N
+ - \chemmacros_if_iupac:NTF
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex
index 1ddcc094bb..d305470efa 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.phases.code.tex
@@ -80,7 +80,7 @@
\cs_new_protected:Npn \chemmacros_phase:n #1
{
- \chemmacros_leave_vmode:
+ \mode_leave_vertical:
\bool_if:NTF \l__chemmacros_phases_sub_bool
{ \chemformula_subscript:n { (#1) } }
{
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex
index c30c5fac89..0d2161cc2b 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.reactions.code.tex
@@ -25,7 +25,7 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{reactions}{2019/09/27 reaction environments}
+\ChemModule{reactions}{2020/02/02 reaction environments}
\chemmacros_load_module:n {chemformula}
@@ -167,11 +167,9 @@
\AtEndPreamble
{
- \bool_if:nT
- {
- \chemmacros_if_package_loaded_p:n {tocbasic} ||
- \l__chemmacros_reactions_tocbasic_bool
- }
+ \bool_lazy_or:nnT
+ { \chemmacros_if_package_loaded_p:n {tocbasic} }
+ { \l__chemmacros_reactions_tocbasic_bool }
{
\RequirePackage {tocbasic}
\addtotoclist [float] {lor}
@@ -444,3 +442,4 @@
2016/05/04 - options `tag-open', `tag-close' and `before-tag'
2019/09/23 - added Norwegian translations
2019/09/27 - change `O{}' argument of reactions into `!O{}'
+2020/02/02 - lazy boolean evaluation
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex
index cbc0b2e242..2c0421b470 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.redox.code.tex
@@ -25,7 +25,7 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{redox}{2015/09/30 oxidation numbers, redox reactions}
+\ChemModule{redox}{2020/02/02 oxidation numbers, redox reactions}
\chemmacros_load_modules:n {tikz,xfrac}
@@ -85,18 +85,14 @@
\ChemCompatibilityTo{5.4}
\cs_new_protected:Npn \__chemmacros_ox_sign:n #1
{
- \bool_if:nT
- {
- \fp_compare_p:n { #1 > 0 } &&
- \l__chemmacros_ox_explicit_sign_bool
- }
+ \bool_lazy_and:nnT
+ { \fp_compare_p:n { #1 > 0 } }
+ { \l__chemmacros_ox_explicit_sign_bool }
{ \c_math_toggle_token + \c_math_toggle_token }
- \bool_if:nT
- {
- \fp_compare_p:n { #1 = 0 } &&
- \l__chemmacros_ox_explicit_sign_bool
- }
- { \c_math_toggle_token \pm \c_math_toggle_token }
+ \bool_lazy_and:nnT
+ { \fp_compare_p:n { #1 = 0 } }
+ { \l__chemmacros_ox_explicit_sign_bool }
+ { \c_math_toggle_token \pm \c_math_toggle_token }
\fp_compare:nT { #1 < 0 }
{ \c_math_toggle_token - \c_math_toggle_token }
}
@@ -104,19 +100,17 @@
\ChemCompatibilityFrom{5.4}
\cs_new_protected:Npn \__chemmacros_ox_sign:n #1
{
- \bool_if:nT
+ \bool_lazy_and:nnT
+ { \fp_compare_p:n { #1 > 0 } }
+ { \l__chemmacros_ox_explicit_sign_bool }
+ { \c_math_toggle_token + \c_math_toggle_token }
+ \bool_lazy_all:nT
{
- \fp_compare_p:n { #1 > 0 } &&
- \l__chemmacros_ox_explicit_sign_bool
+ { \fp_compare_p:n { #1 = 0 } }
+ { \l__chemmacros_ox_explicit_sign_bool }
+ { \l__chemmacros_ox_explicit_zero_sign_bool }
}
- { \c_math_toggle_token + \c_math_toggle_token }
- \bool_if:nT
- {
- \fp_compare_p:n { #1 = 0 } &&
- \l__chemmacros_ox_explicit_sign_bool &&
- \l__chemmacros_ox_explicit_zero_sign_bool
- }
- { \c_math_toggle_token \pm \c_math_toggle_token }
+ { \c_math_toggle_token \pm \c_math_toggle_token }
\fp_compare:nT { #1 < 0 }
{ \c_math_toggle_token - \c_math_toggle_token }
}
@@ -334,7 +328,7 @@
% TODO: add option to make `#2' be parsed as chem formula
\cs_new_protected:Npn \chemmacros_redox_partner:nn #1#2
{
- \chemmacros_tex_if:nnTF {measuring@} {}
+ \legacy_if:nTF {measuring@}
{
\group_begin:
\tikz[baseline=(#1.base)] { \node [inner~sep=0pt] (#1) {#2} ; }
@@ -437,4 +431,5 @@
% --------------------------------------------------------------------------
\file_input_stop:
2015/09/30 - new option `explicit-zero-sign'
-
+2020/02/02 - lazy boolean evaluation
+ - prefer \legacy_if:nTF over \chemmacros_if_tex:nnTF
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex
index 057acbf70c..97e1a11cb0 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.scheme.code.tex
@@ -25,7 +25,7 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{scheme}{2019/09/23 a scheme floating environment}
+\ChemModule{scheme}{2020/02/02 a scheme floating environment}
\RequirePackage {chemnum}
@@ -80,7 +80,7 @@
\counterwithin {#1} {chapter}
\setcounter {#1} {0}
}
- \chemmacros_tex_if:nnT {artopt} {}
+ \legacy_if:nT {artopt}
{ \counterwithout {#1} {chapter} }
}
@@ -136,12 +136,15 @@
{
\prop_get:NnNT \l__chemmacros_float_methods_prop {#1}
\l__chemmacros_tmpa_tl
- \bool_if:nT
- { !\l__chemmacros_float_def_bool && \l__chemmacros_tmpa_tl }
{
- \bool_set_true:N \l__chemmacros_float_def_bool
- \tl_set:Nn \l__chemmacros_float_method_tl {#1}
- \msg_info:nnn {chemmacros} {float-method} {#1}
+ \bool_lazy_and:nnT
+ { !\l__chemmacros_float_def_bool }
+ { \l__chemmacros_tmpa_tl }
+ {
+ \bool_set_true:N \l__chemmacros_float_def_bool
+ \tl_set:Nn \l__chemmacros_float_method_tl {#1}
+ \msg_info:nnn {chemmacros} {float-method} {#1}
+ }
}
}
@@ -180,8 +183,9 @@
% #1: env name
\cs_new_protected:Npn \chemmacros_define_float:nn #1#2
{
- \bool_if:nT
- { !\cs_if_exist_p:c {#1} && !\cs_if_exist_p:c {end#1} }
+ \bool_lazy_and:nnT
+ { !\cs_if_exist_p:c {#1} }
+ { !\cs_if_exist_p:c {end#1} }
{
\bool_if:NTF \l__chemmacros_float_def_bool
{
@@ -209,15 +213,13 @@
\newenvironment {#1*}
{\@dblfloat{#1}}
{\end@dblfloat}
- \bool_if:nTF
- {
- \chemmacros_if_class_loaded_p:n {book} ||
- \chemmacros_if_class_loaded_p:n {report}
- }
+ \bool_lazy_or:nnTF
+ { \chemmacros_if_class_loaded_p:n {book} }
+ { \chemmacros_if_class_loaded_p:n {report} }
{
\cs_new_protected:cpn {listof#1s}
{
- \chemmacros_tex_if:nnTF {@twocolumn} {}
+ \legacy_if:nTF {@twocolumn}
{ \@restonecoltrue\onecolumn }
{ \@restonecolfalse }
\exp_args:NNx \chapter* {\exp_not:c {list#1name}}
@@ -225,8 +227,7 @@
{ \MakeUppercase \use:c {list#1name} }
{ \MakeUppercase \use:c {list#1name} }
\@starttoc {#2}
- \chemmacros_tex_if:nnT {@restonecol} {}
- { \twocolumn }
+ \legacy_if:nT {@restonecol} { \twocolumn }
}
}
{
@@ -319,5 +320,7 @@
2015/10/23 - add info message to float method detection
2016/01/23 - make the module compatible with chemscheme
2016/04/25 - cleveref and fancyref support
-2016/12/28 - bug fix: typo in \chemmacros_tex_if:nnTF usage
+2016/12/28 - bug fix: typo in \chemmacros_if_tex:nnTF usage
2019/03/23 - added Norwegian translations
+2020/02/03 - lazy boolean evaluation
+ - prefer \legacy_if:nTF over \chemmacros_if_tex:nnTF
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex
index a1be3187aa..c7e7037829 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.spectroscopy.code.tex
@@ -25,7 +25,7 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{spectroscopy}{2015/12/31 environment for spectroscopic data}
+\ChemModule{spectroscopy}{2020/02/02 environment for spectroscopic data}
\chemmacros_load_modules:n {chemformula}
\RequirePackage{siunitx}
@@ -268,26 +268,20 @@
{
\bool_if:NT \l__chemmacros_nmr_list_bool { \item \scan_stop: }
\group_begin:
- \chemmacros_leave_vmode:
+ \mode_leave_vertical:
\bool_set_false:N \l__chemmacros_nmr_frequency_bool
\bool_set_false:N \l__chemmacros_nmr_solvent_bool
\tl_if_empty:nF {#3}
{ \bool_set_true:N \l__chemmacros_nmr_frequency_bool }
\tl_if_empty:nF {#4}
{ \bool_set_true:N \l__chemmacros_nmr_solvent_bool }
- \bool_if:nT
- {
- \l__chemmacros_nmr_frequency_bool
- ||
- \l__chemmacros_nmr_solvent_bool
- }
+ \bool_lazy_or:nnT
+ { \l__chemmacros_nmr_frequency_bool }
+ { \l__chemmacros_nmr_solvent_bool }
{ \bool_set_true:N \l__chemmacros_nmr_delimiters_bool }
- \bool_if:nT
- {
- \l__chemmacros_nmr_frequency_bool
- &&
- \l__chemmacros_nmr_solvent_bool
- }
+ \bool_lazy_and:nnT
+ { \l__chemmacros_nmr_frequency_bool }
+ { \l__chemmacros_nmr_solvent_bool }
{ \bool_set_true:N \l__chemmacros_nmr_comma_bool }
\tl_if_empty:nTF {#2}
{
@@ -516,3 +510,4 @@
\file_input_stop:
2015/12/31 - new option `atom-number-space'
2017/01/27 - new option `nmr-base-format'
+2020/02/02 - lazy boolean evaluation
diff --git a/macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex b/macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex
index 7b90faad3a..e8c4595af8 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex
+++ b/macros/latex/contrib/chemmacros/chemmacros.module.units.code.tex
@@ -25,7 +25,7 @@
%
% The Current Maintainer of this work is Clemens Niederberger.
% --------------------------------------------------------------------------
-\ChemModule{units}{2019/11/07 chemical units}
+\ChemModule{units}{2020/02/02 chemical units}
\RequirePackage{siunitx}
@@ -37,9 +37,18 @@
\DeclareSIUnit \moLar {\mole\per\liter}
\DeclareSIUnit \MolMass {\gram\per\mole}
\DeclareSIUnit \normal {\textsc{n}}
-\chemmacros_if_compatibility:nnTF {<} {5.8g}
- { \DeclareSIUnit \torr {torr} }
- { \DeclareSIUnit \Torr {Torr} }
+
+\ChemCompatibilityTo{5.8g}
+ \DeclareSIUnit \torr {torr}
+\EndChemCompatibility
+
+\ChemCompatibilityFrom{5.8h}
+ \DeclareSIUnit \Torr {Torr}
+\EndChemCompatibility
+
+\ChemCompatibilityFrom{5.10}
+ \DeclareSIUnit \torr {Torr}
+\EndChemCompatibility
\AtEndPreamble
{
diff --git a/macros/latex/contrib/chemmacros/chemmacros.sty b/macros/latex/contrib/chemmacros/chemmacros.sty
index e18a84fe95..ca76b8ab2c 100644
--- a/macros/latex/contrib/chemmacros/chemmacros.sty
+++ b/macros/latex/contrib/chemmacros/chemmacros.sty
@@ -31,10 +31,10 @@
% --------------------------------------------------------------------------
% package information:
-\tl_const:Nn \c_chemmacros_date_tl {2020/01/16}
+\tl_const:Nn \c_chemmacros_date_tl {2020/02/03}
\tl_const:Nn \c_chemmacros_version_major_number_tl {5}
-\tl_const:Nn \c_chemmacros_version_minor_number_tl {9}
-\tl_const:Nn \c_chemmacros_version_subrelease_tl {a}
+\tl_const:Nn \c_chemmacros_version_minor_number_tl {10}
+\tl_const:Nn \c_chemmacros_version_subrelease_tl {}
\tl_const:Nx \c_chemmacros_version_number_tl
{
\c_chemmacros_version_major_number_tl .
@@ -208,11 +208,9 @@
\cs_new_protected:Npn \ChemCompatibilityBetween #1#2#3 \EndChemCompatibility
{
- \bool_if:nT
- {
- \chemmacros_if_compatibility_p:nn {>=} {#1} &&
- \chemmacros_if_compatibility_p:nn {<} {#2}
- }
+ \bool_lazy_and:nnT
+ { \chemmacros_if_compatibility_p:nn {>=} {#1} }
+ { \chemmacros_if_compatibility_p:nn {<} {#2} }
{#3}
}
@@ -267,6 +265,8 @@
{ \RequirePackage{chemmacros4} }
{ \RequirePackage{chemmacros5} }
-% --------------------------------------------------------------------------
\file_input_stop:
-
+% --------------------------------------------------------------------------
+2020/02/03 - lazy boolean evaluation
+ - prefer the kernel commands to \chemmacros_leave_vmode: and
+ \chemmacros_tex_if:
diff --git a/macros/latex/contrib/chemmacros/chemmacros4.sty b/macros/latex/contrib/chemmacros/chemmacros4.sty
index a9f6b2dfd3..bb392f5afd 100644
--- a/macros/latex/contrib/chemmacros/chemmacros4.sty
+++ b/macros/latex/contrib/chemmacros/chemmacros4.sty
@@ -606,7 +606,7 @@
% --------------------------------------------------------------------------
% a few general functions:
-\cs_new_eq:NN \chemmacros_leave_vmode: \chemformula_leave_vmode:
+\cs_new_eq:NN \mode_leave_vertical: \chemformula_leave_vmode:
\cs_new_eq:NN \chemmacros_ignore_spaces: \tex_ignorespaces:D
\cs_new_eq:NN \chemmacros_nobreak: \chemformula_nobreak:
\cs_new_eq:NN \chemmacros_allow_break: \chemformula_allow_break:
@@ -2295,7 +2295,7 @@
{
\bool_if:NT \l__chemmacros_nmr_list_bool { \item \scan_stop: }
\group_begin:
- \chemmacros_leave_vmode:
+ \mode_leave_vertical:
\bool_set_false:N \l__chemmacros_nmr_frequency_bool
\bool_set_false:N \l__chemmacros_nmr_solvent_bool
\tl_if_empty:nF { #3 }
diff --git a/macros/latex/contrib/chemmacros/chemmacros5.sty b/macros/latex/contrib/chemmacros/chemmacros5.sty
index 1f5ecbc939..e82088aa27 100644
--- a/macros/latex/contrib/chemmacros/chemmacros5.sty
+++ b/macros/latex/contrib/chemmacros/chemmacros5.sty
@@ -85,19 +85,19 @@
% --------------------------------------------------------------------------
% variants of kernel functions:
-\cs_generate_variant:Nn \tl_if_eq:nnTF { xx , V }
-\cs_generate_variant:Nn \seq_set_split:Nnn { Nnx }
-\cs_generate_variant:Nn \prop_item:Nn { NV }
-\cs_generate_variant:Nn \seq_item:Nn { cV }
-\cs_generate_variant:Nn \int_to_arabic:n { V }
-\cs_generate_variant:Nn \tl_replace_once:Nnn { NnV }
-\cs_generate_variant:Nn \prop_gput:Nnn { cxx , NVf }
-\cs_generate_variant:Nn \msg_error:nnn { nnV }
-\cs_generate_variant:Nn \msg_warning:nnn { nnV }
-\cs_generate_variant:Nn \msg_warning:nnnn { nnV }
-\cs_generate_variant:Nn \vbox_set:Nn { NV }
-\cs_generate_variant:Nn \keys_define:nn { x }
-\cs_generate_variant:Nn \keys_set:nn { x , nx }
+\cs_generate_variant:Nn \tl_if_eq:nnTF {xx,V}
+\cs_generate_variant:Nn \seq_set_split:Nnn {Nnx}
+\cs_generate_variant:Nn \prop_item:Nn {NV}
+\cs_generate_variant:Nn \seq_item:Nn {cV}
+\cs_generate_variant:Nn \int_to_arabic:n {V}
+\cs_generate_variant:Nn \tl_replace_once:Nnn {NnV}
+\cs_generate_variant:Nn \prop_gput:Nnn {cxx,NVf}
+\cs_generate_variant:Nn \msg_error:nnn {nnV}
+\cs_generate_variant:Nn \msg_warning:nnn {nnV}
+\cs_generate_variant:Nn \msg_warning:nnnn {nnV}
+\cs_generate_variant:Nn \vbox_set:Nn {NV}
+\cs_generate_variant:Nn \keys_define:nn {x}
+\cs_generate_variant:Nn \keys_set:nn {x,nx}
% --------------------------------------------------------------------------
% temporary variables:
@@ -130,6 +130,10 @@
\clist_new:N \l__chemmacros_tmpb_clist
\clist_new:N \l__chemmacros_tmpc_clist
+\str_new:N \l__chemmacros_tmpa_str
+\str_new:N \l__chemmacros_tmpb_str
+\str_new:N \l__chemmacros_tmpc_str
+
% --------------------------------------------------------------------------
% module mechanism:
\tl_const:Nn \c__chemmacros_module_extension_tl {code.tex}
@@ -323,3 +327,4 @@ Version history
2015/10/14 - bug fix in the module hook mechanism
- bug fix in \chemmacros_if_module_loaded:n
- new `errorcheck' module
+2020/02/03 - add temporary string variables
diff --git a/macros/latex/contrib/derivative/README.md b/macros/latex/contrib/derivative/README.md
index 1ecac42f09..308e79be32 100644
--- a/macros/latex/contrib/derivative/README.md
+++ b/macros/latex/contrib/derivative/README.md
@@ -1,4 +1,4 @@
-## README for derivative package v0.96 dated 2019-12-22
+## README for derivative package v0.97 dated 2019-02-03
The package provides a set of commands `\NewOdvVariant`, `\NewPdvVariant` etc. that can be used to define a variant of a derivative. The package have already defined several derivatives:
@@ -11,7 +11,7 @@ The package provides a set of commands `\NewOdvVariant`, `\NewPdvVariant` etc. t
### Copyright and license
-Copyright 2019 Simon Jensen
+Copyright 2019-2020 Simon Jensen
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
diff --git a/macros/latex/contrib/derivative/derivative.pdf b/macros/latex/contrib/derivative/derivative.pdf
index 39592e3c9d..dae8b7dede 100644
--- a/macros/latex/contrib/derivative/derivative.pdf
+++ b/macros/latex/contrib/derivative/derivative.pdf
Binary files differ
diff --git a/macros/latex/contrib/derivative/derivative.sty b/macros/latex/contrib/derivative/derivative.sty
index f805cbbf86..d410254931 100644
--- a/macros/latex/contrib/derivative/derivative.sty
+++ b/macros/latex/contrib/derivative/derivative.sty
@@ -1,5 +1,5 @@
% derivative.sty
-% Copyright 2019 Simon Jensen
+% Copyright 2019-2020 Simon Jensen
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -16,7 +16,7 @@
\NeedsTeXFormat{LaTeX2e}
\RequirePackage{xparse}[2018/05/09]
-\ProvidesExplPackage{derivative}{2019/12/22}{0.96}{Nice and easy derivatives}
+\ProvidesExplPackage{derivative}{2020/02/03}{0.97}{Nice and easy derivatives}
%%%%% Useful conditionals %%%%%
@@ -924,7 +924,7 @@
{ auto } { \__deriv_scale_auto:Nnnn \__deriv_auto_left:n {#1} {#2} { 1 } }
{ none } { \__deriv_scale_none:nnn {#1} {#2} { 1 } }
}
- { \__deriv_scale_big:nnnm {#1} {#2} { 1 } { l } }
+ { \__deriv_scale_big:nnnn {#1} {#2} { 1 } { l } }
}
% dv , name
\cs_new:Npn \__deriv_scale_right:nn #1 #2
@@ -934,7 +934,7 @@
{ auto } { \__deriv_scale_auto:Nnnn \__deriv_auto_right:n {#1} {#2} { 2 } }
{ none } { \__deriv_scale_none:nnn {#1} {#2} { 2 } }
}
- { \__deriv_scale_big:nnnm {#1} {#2} { 2 } { r } }
+ { \__deriv_scale_big:nnnn {#1} {#2} { 2 } { r } }
}
% left/right , dv , name, number
\cs_new:Npn \__deriv_scale_auto:Nnnn #1 #2 #3 #4
diff --git a/macros/latex/contrib/derivative/derivative.tex b/macros/latex/contrib/derivative/derivative.tex
index 0bc1772615..30eaab1bee 100644
--- a/macros/latex/contrib/derivative/derivative.tex
+++ b/macros/latex/contrib/derivative/derivative.tex
@@ -1,5 +1,5 @@
% derivative.tex
-% Copyright 2019 Simon Jensen
+% Copyright 2019-2020 Simon Jensen
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -1082,8 +1082,8 @@
\Titel{The \pakkenavn{} package}
\Forfatter{Simon Jensen}
\Email{sjelatex@gmail.com}
-\Dato{2019/12/22}
-\Version{0.96}
+\Dato{2019/02/03}
+\Version{0.97}
\RequirePackage{derivative}[\dato]
\derivset{all}[scale-auto = mleftmright]
@@ -2316,5 +2316,8 @@
\begin{change}[version = 0.96, date = 2019-12-22, beta = true]
\item Fixed the double superscript issue for higher order derivative when the variable contained a superscript.
\end{change}
+ \begin{change}[version = 0.97, date = 2020-02-03, beta = true]
+ \item Fixed the argument specifier of {\small\verb|\__deriv_scale_big:nnnn|} when it was used (it was used with \texttt{:nnnm}).
+ \end{change}
\end{changelog}
\end{document} \ No newline at end of file
diff --git a/macros/latex/contrib/filehook/README b/macros/latex/contrib/filehook/README
index a521e4f062..25cc0e39b1 100644
--- a/macros/latex/contrib/filehook/README
+++ b/macros/latex/contrib/filehook/README
@@ -1,7 +1,6 @@
LaTeX package 'filehook'
~~~~~~~~~~~~~~~~~~~~~~~~
-Copyright (c) 2010-2019 by Martin Scharrer <martin@scharrer-online.de>
-WWW: http://latex.scharrer-online.de/
+Copyright (c) 2010-2020 by Martin Scharrer <martin@scharrer-online.de>
Code repository: https://bitbucket.org/martin_scharrer/filehook
Provides several file hooks for files read by \input, \include and \InputIfFileExists.
diff --git a/macros/latex/contrib/filehook/filehook.dtx b/macros/latex/contrib/filehook/filehook.dtx
index efaeb3d5a8..0cd0f63354 100644
--- a/macros/latex/contrib/filehook/filehook.dtx
+++ b/macros/latex/contrib/filehook/filehook.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%<=*COPYRIGHT>
-%% Copyright (C) 2011-2019 by Martin Scharrer <martin@scharrer-online.de>
+%% Copyright (C) 2011-2020 by Martin Scharrer <martin@scharrer-online.de>
%% ----------------------------------------------------------------------
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -26,10 +26,10 @@
%<*driver>
\ProvidesFile{filehook.dtx}[%
%<=*DATE>
- 2019/10/03
+ 2020/02/03
%<=/DATE>
%<=*VERSION>
- v0.6
+ v0.7
%<=/VERSION>
Hooks for input files]
\documentclass{ydoc}
@@ -55,7 +55,7 @@
%</driver>
% \fi
%
-% \CheckSum{1093}
+% \CheckSum{1011}
%
% \CharacterTable
% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z
@@ -97,6 +97,7 @@
% \changes{v0.5d}{2011/10/12}{Fix for fall-back code.}
% \changes{v0.5e}{2019/08/19}{Fix for new LaTeX format.}
% \changes{v0.6}{2019/10/03}{Fix for InputIfFileExists for LaTeX format 2019/10/01.}
+% \changes{v0.7}{2020/02/03}{Further fixes for InputIfFileExists for LaTeX format 2019/10/01.}
%
% \GetFileInfo{filehook.dtx}
%
@@ -530,11 +531,67 @@
\ProcessOptions\relax
% \end{macrocode}
%
+% \subsection{General stuff}
+%
+% \begin{macro}{\iffilehook@newfmt}
+% \begin{macrocode}
+\newif\iffilehook@newfmt
+\@ifl@t@r\fmtversion{2019/10/01}{\filehook@newfmttrue}{\filehook@newfmtfalse}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\filehook@let}[2]{<macro name 1>}{<macro name 2>}
+% \begin{macrocode}
+\def\filehook@let#1#2{%
+ \expandafter\ifx\csname #2\space\endcsname\relax
+ \expandafter\let\csname #1\expandafter\endcsname\csname #2\endcsname
+ \else
+ \expandafter\def\csname #1\expandafter\endcsname\expandafter{\expandafter\protect\csname #1\space\endcsname}%
+ \expandafter\let\csname #1\space\expandafter\endcsname\csname #2\space\endcsname
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+%
+% \begin{macro}{\filehook@glet}[2]{<macro name 1>}{<macro name 2>}
+% \begin{macrocode}
+\def\filehook@glet#1#2{%
+ \expandafter\ifx\csname #2\space\endcsname\relax
+ \expandafter\global\expandafter\let\csname #1\expandafter\endcsname\csname #2\endcsname
+ \else
+ \expandafter\global\expandafter\def\csname #1\expandafter\endcsname\expandafter{\expandafter\protect\csname #1\space\endcsname}%
+ \expandafter\global\expandafter\let\csname #1\space\expandafter\endcsname\csname #2\space\endcsname
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+%
+%
+% \begin{macro}{\filehook@cmp}[2]{<macro name 1>}{<macro name 2>}
+% Compare two macros definition including its space form in case of robust macros.
+% \begin{macrocode}
+\def\filehook@cmp#1#2{%
+ \expandafter\ifx\csname #2\space\endcsname\relax
+ \expandafter\ifx\csname #1\expandafter\endcsname\csname #2\endcsname
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi
+ \else
+ \expandafter\ifx\csname #1\space\expandafter\endcsname\csname #2\space\endcsname
+ \expandafter\expandafter\expandafter\@firstoftwo
+ \else
+ \expandafter\expandafter\expandafter\@secondoftwo
+ \fi
+ \fi
+}
+% \end{macrocode}
+% \end{macro}
+%
%
% \subsection{Initialisation of Hooks}
% The general hooks are initialised to call the file specific hooks.
%
-%
% \begin{macro}{\filehook@csuse}
% \begin{macrocode}
\begingroup
@@ -553,7 +610,7 @@
% \begin{macro}{\filehook@include@atbegin}
% \begin{macrocode}
\def\filehook@include@atbegin#1{%
- \let\InputIfFileExists\filehook@@InputIfFileExists
+ \filehook@let{InputIfFileExists}{filehook@@InputIfFileExists}%
\filehook@csuse{\filehook@include@atbegin@#1}%
\filehook@include@@atbegin
}
@@ -599,7 +656,7 @@
% \begin{macro}{\filehook@input@atbegin}
% \begin{macrocode}
\def\filehook@input@atbegin#1{%
- \let\InputIfFileExists\filehook@@InputIfFileExists
+ \filehook@let{InputIfFileExists}{filehook@@InputIfFileExists}%
\filehook@csuse{\filehook@input@atbegin@\filehook@ensureext{#1}}%
\filehook@input@@atbegin
}
@@ -1108,16 +1165,14 @@
% This is always done inside a group to keep them temporary only.
% The token register is used to avoid doubling of macro argument characters.
%
-% \begin{macrocode}
-\newif\iffilehook@newfmt
-\@ifl@t@r\fmtversion{2019/10/01}{\filehook@newfmttrue}{\filehook@newfmtfalse}
-% \end{macrocode}
-%
% \begin{macro}{\latex@InputIfFileExists}
% Standard \LaTeX\ definition of \Macro\InputIfFileExists.
% \begin{macrocode}
\iffilehook@newfmt
-\DeclareRobustCommand \latex@InputIfFileExists[2]{%
+\expandafter\def\expandafter\latex@InputIfFileExists\expandafter{%
+ \expandafter\protect\csname InputIfFileExists\space\endcsname
+}
+\expandafter\long\expandafter\def\csname latex@InputIfFileExists\space\endcsname#1#2{%
\IfFileExists{#1}%
{%
\expandafter\@swaptwoargs\expandafter
@@ -1136,7 +1191,7 @@
%
% \begin{macro}{\filehook@default@InputIfFileExists}
% \begin{macrocode}
-\long\gdef\filehook@default@InputIfFileExists#1#2{%
+\DeclareRobustCommand\filehook@default@InputIfFileExists[2]{%
\IfFileExists{#1}%
{\expandafter\filehook@swap
\expandafter{\@filef@und}%
@@ -1149,12 +1204,16 @@
}%
}
% \end{macrocode}
+% Make sure definition is global:
+% \begin{macrocode}
+\filehook@glet{filehook@default@InputIfFileExists}{filehook@default@InputIfFileExists}%
+% \end{macrocode}
% \end{macro}
%
% \begin{macro}{\filehook@@default@InputIfFileExists}
% \begin{macrocode}
-\long\gdef\filehook@@default@InputIfFileExists#1#2{%
- \let\InputIfFileExists\filehook@InputIfFileExists
+\DeclareRobustCommand\filehook@@default@InputIfFileExists[2]{%
+ \filehook@let{InputIfFileExists}{filehook@InputIfFileExists}%
\IfFileExists{#1}%
{\expandafter\filehook@swap
\expandafter{\@filef@und}%
@@ -1165,88 +1224,9 @@
}%
}
% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\scrlfile@InputIfFileExists}
-% \begin{macrocode}
-\long\def\scrlfile@InputIfFileExists#1#2{%
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname #1-@alias\endcsname\relax
- \expandafter\@secondoftwo
- \else
- \scr@replacefile@msg{\csname #1-@alias\endcsname}{#1}%
- \expandafter\@firstoftwo
- \fi
- {%
- \expandafter\InputIfFileExists\expandafter{\csname
- #1-@alias\endcsname}{#2}%
- }%
- {\IfFileExists{#1}{%
- \scr@load@hook{before}{#1}%
- #2\@addtofilelist{#1}%
- \@@input \@filef@und
- \scr@load@hook{after}{#1}%
- }}%
-}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\filehook@scrlfile@InputIfFileExists}
-% \begin{macrocode}
-\long\def\filehook@scrlfile@InputIfFileExists#1#2{%
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname #1-@alias\endcsname\relax
- \expandafter\@secondoftwo
- \else
- \scr@replacefile@msg{\csname #1-@alias\endcsname}{#1}%
- \expandafter\@firstoftwo
- \fi
- {%
- \expandafter\InputIfFileExists\expandafter{\csname
- #1-@alias\endcsname}{#2}%
- }%
- {\IfFileExists{#1}{%
- \expandafter\filehook@swap
- \expandafter{\@filef@und}%
- {\scr@load@hook{before}{#1}%
- #2\@addtofilelist{#1}%
- \filehook@every@atbegin{#1}%
- \filehook@atbegin{#1}%
- \@@input}%
- \filehook@atend{#1}%
- \filehook@every@atend{#1}%
- \scr@load@hook{after}{#1}%
- }}%
-}
-% \end{macrocode}
-% \end{macro}
-%
-% \begin{macro}{\filehook@@scrlfile@InputIfFileExists}
+% Make sure definition is global:
% \begin{macrocode}
-\long\def\filehook@@scrlfile@InputIfFileExists#1#2{%
- \let\InputIfFileExists\filehook@InputIfFileExists
- \begingroup\expandafter\expandafter\expandafter\endgroup
- \expandafter\ifx\csname #1-@alias\endcsname\relax
- \expandafter\@secondoftwo
- \else
- \scr@replacefile@msg{\csname #1-@alias\endcsname}{#1}%
- \expandafter\@firstoftwo
- \fi
- {%
- \expandafter\InputIfFileExists\expandafter{\csname
- #1-@alias\endcsname}{#2}%
- }%
- {\IfFileExists{#1}{%
- \expandafter\filehook@swap
- \expandafter{\@filef@und}%
- {\scr@load@hook{before}{#1}%
- #2\@addtofilelist{#1}%
- \filehook@atbegin{#1}%
- \@@input}%
- \filehook@atend{#1}%
- \scr@load@hook{after}{#1}%
- }}%
-}
+\filehook@glet{filehook@@default@InputIfFileExists}{filehook@@default@InputIfFileExists}%
% \end{macrocode}
% \end{macro}
%
@@ -1256,8 +1236,8 @@
% In order to also support it when it is loaded afterwards the two hooks below are used to revert the definition
% before the package and patch it afterwards.
% \begin{macrocode}
-\AtBeginOfPackageFile*{scrlfile}{%
- \let\InputIfFileExists\latex@InputIfFileExists
+\AtBeginOfPackageFile{scrlfile}{%
+ \filehook@glet{InputIfFileExists}{latex@InputIfFileExists}%
}%
\AtEndOfPackageFile*{scrlfile}{%
\RequirePackage{filehook-scrlfile}%
@@ -1268,7 +1248,7 @@
\AtBeginOfPackageFile*{fink}{%
\RequirePackage{kvoptions}%
\begingroup
- \let\InputIfFileExists\latex@InputIfFileExists
+ \filehook@let{InputIfFileExists}{latex@InputIfFileExists}%
}%
\AtEndOfPackageFile*{fink}{%
\edef\@tempa{\noexpand\PassOptionsToPackage{mainext=\fnk@mainext,maindir=\fnk@maindir}{currfile}}%
@@ -1281,9 +1261,8 @@
% exact same position. Please note that the case when |memoir| is used together with |scrlfile| is not explicitly covered.
% In this case the |scrlfile| package will overwrite |memoir|s definition.
% \begin{macrocode}
-\AtBeginOfClassFile*{memoir}{%
- \let\filehook@@InputIfFileExists\latex@InputIfFileExists
- \let\InputIfFileExists\latex@InputIfFileExists
+\AtBeginOfClassFile{memoir}{%
+ \filehook@let{InputIfFileExists}{latex@InputIfFileExists}%
\let\@iinput\filehook@orig@@iinput
}%
\AtEndOfClassFile*{memoir}{%
@@ -1295,45 +1274,28 @@
% error is given if any other unknown definition is detected.
% The \opt{force} option will change the error into a warning and overwrite the macro with the default.
% \begin{macrocode}
-\def\@tempa{9}%
-\ifx\InputIfFileExists\filehook@InputIfFileExists
- \def\@tempa{0}%
-\else
- \iffilehook@force
- \def\@tempa{1}%
- \else
- \iffilehook@newfmt
- % check if both the robust \InputIfFileExist and its internal macro match the default LaTeX definition
- \edef\@tempb{\noexpand\protect\expandafter\noexpand\csname InputIfFileExists\space\endcsname}%
- \ifx\InputIfFileExists\@tempb
- \expandafter\ifx\csname InputIfFileExists\space\expandafter\endcsname\csname latex@InputIfFileExists\space\endcsname
- \def\@tempa{1}%
- \fi
- \fi
- \else\ifx\InputIfFileExists\latex@InputIfFileExists
- \def\@tempa{1}%
- \fi\fi
- \fi
-\fi
-%
-\ifcase\@tempa
-\relax% 0
-\or% 1
- \let\filehook@InputIfFileExists\filehook@default@InputIfFileExists
- \let\filehook@@InputIfFileExists\filehook@@default@InputIfFileExists
- \iffilehook@newfmt
- \expandafter\let\csname InputIfFileExists\space\endcsname\filehook@InputIfFileExists
- \else
- \let\InputIfFileExists\filehook@InputIfFileExists
- \fi
- \iffilehook@force
- \PackageWarning{filehook}{Detected unknown definition of \string\InputIfFileExists.^^J%
- The 'force' option of 'filehook' is in effect. Macro is overwritten with default!}%
- \fi
-\else
- \PackageError{filehook}{Detected unknown definition of \string\InputIfFileExists.^^J%
- Use the 'force' option of 'filehook' to overwrite it.}{}%
-\fi
+\filehook@cmp{InputIfFileExists}{filehook@InputIfFileExists}%
+ {}% already set up
+ {%
+ \filehook@cmp{InputIfFileExists}{latex@InputIfFileExists}%
+ {%
+ \filehook@let{filehook@InputIfFileExists}{filehook@default@InputIfFileExists}%
+ \filehook@let{filehook@@InputIfFileExists}{filehook@@default@InputIfFileExists}%
+ \filehook@let{InputIfFileExists}{filehook@InputIfFileExists}%
+ }%
+ {%
+ \iffilehook@force
+ \filehook@let{filehook@InputIfFileExists}{filehook@default@InputIfFileExists}%
+ \filehook@let{filehook@@InputIfFileExists}{filehook@@default@InputIfFileExists}%
+ \filehook@let{InputIfFileExists}{filehook@InputIfFileExists}%
+ \PackageWarning{filehook}{Detected unknown definition of \string\InputIfFileExists.^^J%
+ The 'force' option of 'filehook' is in effect. Macro is overwritten with default!}%
+ \else
+ \PackageError{filehook}{Detected unknown definition of \string\InputIfFileExists.^^J%
+ Use the 'force' option of 'filehook' to overwrite it.}{}%
+ \fi
+ }%
+ }%
% \end{macrocode}
% \end{macro}
%
@@ -1341,10 +1303,10 @@
\AtBeginDocument{%
% Check if definition got changed again. For the new LaTeX format we check again \InputIfFileExists<space>,
% for the old format to \InputIfFileExists directly.
- \expandafter\ifx\csname InputIfFileExists\iffilehook@newfmt\space\fi\endcsname\filehook@InputIfFileExists\else
+ \filehook@cmp{InputIfFileExists}{filehook@InputIfFileExists}{}{%
\PackageWarning{filehook}{Macro \string\InputIfFileExists\space got redefined after 'filehook' was loaded.^^J%
- Certain file hooks might now be dysfunctional!}
- \fi
+ Certain file hooks might now be dysfunctional!}%
+ }%
}
% \end{macrocode}
%
@@ -1358,7 +1320,7 @@
% \begin{macrocode}
%<!COPYRIGHT>
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesPackage{filehook-memoir}[2011/01/03 v0.1 filehook patch for memoir class]
+\ProvidesPackage{filehook-memoir}[2020/02/02 v0.2 filehook patch for memoir class]
% \end{macrocode}
%
% \begin{macrocode}
@@ -1367,35 +1329,53 @@
% \end{macrocode}
%
% \begin{macro}{\memoir@InputIfFileExists}
+% The definition taken from memoir.cls. Copyright see there.
% \begin{macrocode}
-\long\def\memoir@InputIfFileExists#1#2{%
+\ifcsname InputIfFileExists\space\endcsname
+ \DeclareRobustCommand \memoir@InputIfFileExists[2]{%
+ \IfFileExists{#1}%
+ {%
+ \expandafter\@swaptwoargs\expandafter
+ {\@filef@und\m@matendf{#1}\killm@matf{#1}}{%
+ #2\@addtofilelist{#1}\m@matbeginf{#1}\@@input%
+ }%
+ }%
+ }
+\else
+ % Old definition
+\renewcommand{\memoir@InputIfFileExists}[2]{%
\IfFileExists{#1}%
{#2\@addtofilelist{#1}\m@matbeginf{#1}%
\@@input \@filef@und
\m@matendf{#1}%
\killm@matf{#1}}%
}
+\fi
% \end{macrocode}
% \end{macro}
%
% \begin{macrocode}
-\ifcase
- \ifx\InputIfFileExists\latex@InputIfFileExists 0\else
- \ifx\InputIfFileExists\memoir@InputIfFileExists 0\else
- 1%
- \fi\fi
-\relax
- \global\let\filehook@InputIfFileExists\filehook@default@InputIfFileExists
- \global\let\filehook@@InputIfFileExists\filehook@@default@InputIfFileExists
- \global\let\InputIfFileExists\filehook@InputIfFileExists
+\@tempswafalse
+\filehook@cmp{InputIfFileExists}{filehook@InputIfFileExists}%
+ {\@tempswatrue}%
+ {%
+ \filehook@cmp{InputIfFileExists}{memoir@InputIfFileExists}%
+ {\@tempswatrue}%
+ {}%
+ }%
+
+\if@tempswa
+ \filehook@glet{filehook@InputIfFileExists}{filehook@default@InputIfFileExists}%
+ \filehook@glet{filehook@@InputIfFileExists}{filehook@@default@InputIfFileExists}%
+ \filehook@glet{InputIfFileExists}{filehook@InputIfFileExists}%
\filehook@appendwarg\filehook@atbegin{\m@matbeginf{#1}}%
\filehook@prefixwarg\filehook@atend{\m@matendf{#1}\killm@matf{#1}}%
\PackageInfo{filehook}{Detected 'memoir' class: the memoir hooks will be moved to the `At...OfFiles' hooks}
\else
\iffilehook@force
- \global\let\filehook@InputIfFileExists\filehook@default@InputIfFileExists
- \global\let\filehook@@InputIfFileExists\filehook@@default@InputIfFileExists
- \global\let\InputIfFileExists\filehook@InputIfFileExists
+ \filehook@glet{filehook@InputIfFileExists}{filehook@default@InputIfFileExists}%
+ \filehook@glet{filehook@@InputIfFileExists}{filehook@@default@InputIfFileExists}%
+ \filehook@glet{InputIfFileExists}{filehook@InputIfFileExists}%
\PackageWarning{filehook}{Detected 'memoir' class with unknown definition of \string\InputIfFileExists.^^J%
The 'force' option of 'filehook' is in effect. Macro is overwritten with default!}%
\else
@@ -1455,14 +1435,17 @@
% \begin{macrocode}
%<!COPYRIGHT>
\NeedsTeXFormat{LaTeX2e}[1999/12/01]
-\ProvidesPackage{filehook-scrlfile}[2011/01/03 v0.1 filehook patch for scrlfile package]
+\ProvidesPackage{filehook-scrlfile}[2020/02/02 v0.2 filehook patch for scrlfile package]
\RequirePackage{filehook}
\begingroup
% \end{macrocode}
%
% \begin{macro}{\scrlfile@InputIfFileExists}
% \begin{macrocode}
-\long\def\scrlfile@InputIfFileExists#1#2{%
+\expandafter\def\expandafter\sclrfile@InputIfFileExists\expandafter{%
+ \expandafter\protect\csname InputIfFileExists\space\endcsname
+}
+\expandafter\long\expandafter\def\csname scrlfile@InputIfFileExists\space\endcsname#1#2{%
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname #1-@alias\endcsname\relax
\expandafter\@secondoftwo
@@ -1472,21 +1455,19 @@
\fi
{%
\expandafter\InputIfFileExists\expandafter{\csname
- #1-@alias\endcsname}{#2}%
+#1-@alias\endcsname}{#2}%
}%
{\IfFileExists{#1}{%
- \scr@load@hook{before}{#1}%
- #2\@addtofilelist{#1}%
- \@@input \@filef@und
- \scr@load@hook{after}{#1}%
- }}%
+ \expandafter\scr@input@withhook\expandafter{\@filef@und}{#1}{#2}}%
+ }%
}
% \end{macrocode}
% \end{macro}
%
+%
% \begin{macro}{\filehook@scrlfile@InputIfFileExists}
% \begin{macrocode}
-\long\def\filehook@scrlfile@InputIfFileExists#1#2{%
+\DeclareRobustCommand\filehook@scrlfile@InputIfFileExists[2]{%
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname #1-@alias\endcsname\relax
\expandafter\@secondoftwo
@@ -1511,13 +1492,15 @@
\scr@load@hook{after}{#1}%
}}%
}
+\filehook@glet{filehook@scrlfile@InputIfFileExists}{filehook@scrlfile@InputIfFileExists}%
% \end{macrocode}
% \end{macro}
%
+%
% \begin{macro}{\filehook@@scrlfile@InputIfFileExists}
% \begin{macrocode}
-\long\def\filehook@@scrlfile@InputIfFileExists#1#2{%
- \let\InputIfFileExists\filehook@InputIfFileExists
+\DeclareRobustCommand\filehook@@scrlfile@InputIfFileExists[2]{%
+ \filehook@let{InputIfFileExists}{filehook@InputIfFileExists}%
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname #1-@alias\endcsname\relax
\expandafter\@secondoftwo
@@ -1540,6 +1523,7 @@
\scr@load@hook{after}{#1}%
}}%
}
+\filehook@glet{filehook@@scrlfile@InputIfFileExists}{filehook@@scrlfile@InputIfFileExists}%
% \end{macrocode}
% \end{macro}
%
@@ -1548,21 +1532,25 @@
% not after the |#2\@addtofilelist{#1}| code. Otherwise the |filehook|s could simply be added to these hooks.
% Note that this will stop working if |scrlfile| ever changes its definition of the \Macro\InputIfFileExists macro.
% \begin{macrocode}
-\ifcase
- \ifx\InputIfFileExists\latex@InputIfFileExists 0\else
- \ifx\InputIfFileExists\scrlfile@InputIfFileExists 0\else
- 1%
- \fi\fi
-\relax
- \global\let\filehook@InputIfFileExists\filehook@scrlfile@InputIfFileExists
- \global\let\filehook@@InputIfFileExists\filehook@@scrlfile@InputIfFileExists
- \global\let\InputIfFileExists\filehook@InputIfFileExists
+\@tempswafalse
+\filehook@cmp{InputIfFileExists}{filehook@InputIfFileExists}%
+ {\@tempswatrue}%
+ {%
+ \filehook@cmp{InputIfFileExists}{scrlfile@InputIfFileExists}%
+ {\@tempswatrue}%
+ {}%
+ }%
+
+\if@tempswa
+ \filehook@glet{filehook@InputIfFileExists}{filehook@scrlfile@InputIfFileExists}%
+ \filehook@glet{filehook@@InputIfFileExists}{filehook@@scrlfile@InputIfFileExists}%
+ \filehook@glet{InputIfFileExists}{filehook@InputIfFileExists}%
\PackageInfo{filehook}{Package 'scrlfile' detected and compensated for}%
\else
\iffilehook@force
- \global\let\filehook@InputIfFileExists\filehook@default@InputIfFileExists
- \global\let\filehook@@InputIfFileExists\filehook@@default@InputIfFileExists
- \global\let\InputIfFileExists\filehook@InputIfFileExists
+ \filehook@glet{filehook@InputIfFileExists}{filehook@scrlfile@InputIfFileExists}%
+ \filehook@glet{filehook@@InputIfFileExists}{filehook@@scrlfile@InputIfFileExists}%
+ \filehook@glet{InputIfFileExists}{filehook@InputIfFileExists}%
\PackageWarning{filehook}{Detected 'scrlfile' package with unknown definition of \string\InputIfFileExists.^^J%
The 'force' option of 'filehook' is in effect. Macro is overwritten with default!}%
\else
diff --git a/macros/latex/contrib/filehook/filehook.pdf b/macros/latex/contrib/filehook/filehook.pdf
index ce6afd430f..4d3462623b 100644
--- a/macros/latex/contrib/filehook/filehook.pdf
+++ b/macros/latex/contrib/filehook/filehook.pdf
Binary files differ
diff --git a/macros/latex/contrib/fontspec/CHANGES.md b/macros/latex/contrib/fontspec/CHANGES.md
index d65a8b1c01..176a83b6c8 100644
--- a/macros/latex/contrib/fontspec/CHANGES.md
+++ b/macros/latex/contrib/fontspec/CHANGES.md
@@ -1,6 +1,14 @@
Change history
==============
+## v2.7h (2020/02/03)
+
+ * Eroneous uses of `language=DFLT` changed to `language=dflt`.
+ * Fix spurious error in some cases of `SlantedFont` and `BoldSlantedFont`
+ being specified in a `.fontspec` file.
+ * Fix regression with `unicode-math` related log files showing the wrong
+ NFSS-based font ‘identifier’.
+
## v2.7g (2020/01/26)
* Fix regression that broke changing the default encoding after `fontspec` was loaded
diff --git a/macros/latex/contrib/fontspec/fontspec-code-enc.dtx b/macros/latex/contrib/fontspec/fontspec-code-enc.dtx
index 8969c1be9c..7d30448002 100644
--- a/macros/latex/contrib/fontspec/fontspec-code-enc.dtx
+++ b/macros/latex/contrib/fontspec/fontspec-code-enc.dtx
@@ -69,7 +69,6 @@
\DeclareDocumentCommand \DeclareUnicodeEncoding {mm}
{
\DeclareFontEncoding{#1}{}{}
- \DeclareErrorFont{#1}{lmr}{m}{n}{10}
\DeclareFontSubstitution{#1}{lmr}{m}{n}
\DeclareFontFamily{#1}{lmr}{}
diff --git a/macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx b/macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx
index 935cf81a70..77d431ccf8 100644
--- a/macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx
+++ b/macros/latex/contrib/fontspec/fontspec-code-feat-opentype.dtx
@@ -525,9 +525,9 @@
% \begin{macrocode}
\@@_keys_define_code:nnn {fontspec-opentype} { Language / Default }
{
- \tl_set:Nn \l_@@_lang_tl {DFLT}
+ \tl_set:Nn \l_@@_lang_tl {dflt}
\int_zero:N \l_@@_language_int
- \tl_gset:Nn \g_@@_single_feat_tl { language=DFLT }
+ \tl_gset:Nn \g_@@_single_feat_tl { language=dflt }
}
% \end{macrocode}
%
diff --git a/macros/latex/contrib/fontspec/fontspec-code-internal.dtx b/macros/latex/contrib/fontspec/fontspec-code-internal.dtx
index 432ae803f6..6282569a6f 100644
--- a/macros/latex/contrib/fontspec/fontspec-code-internal.dtx
+++ b/macros/latex/contrib/fontspec/fontspec-code-internal.dtx
@@ -241,7 +241,7 @@
\@@_set_font_type:N \l_@@_test_font
\@@_primitive_font_gset:Onn \l_@@_fontface_cs_tl
{ \@@_construct_font_call:nn { \l_@@_fontname_up_tl } { \l_@@_pre_feat_sclist } }
- { \f@size pt }
+ { \f@size pt + 2sp }
\l_@@_fontface_cs_tl % this is necessary for LuaLaTeX to check the scripts properly
@@ -682,7 +682,7 @@
{ \clist_clear:N \l_@@_fontopts_clist }
\keys_set_groups:nnV {fontspec/fontname} {getfontname} \l_@@_fontopts_clist
\@@_primitive_font_set:OnnF \l_@@_fontface_cs_tl
- { \@@_construct_font_call:nn {#1} { \l_@@_pre_feat_sclist } } { \f@size pt }
+ { \@@_construct_font_call:nn {#1} { \l_@@_pre_feat_sclist } } { \f@size pt + 2sp }
{ \@@_error:nx {font-not-found} {#2} }
}
% \end{macrocode}
@@ -1146,20 +1146,6 @@
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@@_lang_dflt_correct:N}
-% \begin{macrocode}
-%<*XE>
-\cs_new_protected:Nn \@@_lang_dflt_correct:N
- {
- \int_compare:nNnT {#1} = {1145457748} % "DFLT"
- {
- \int_zero:N #1
- }
- }
-%</XE>
-% \end{macrocode}
-% \end{macro}
-%
%
% \iffalse
% \begin{macrocode}
diff --git a/macros/latex/contrib/fontspec/fontspec-code-keyval.dtx b/macros/latex/contrib/fontspec/fontspec-code-keyval.dtx
index b7e660da0c..87a93c176b 100644
--- a/macros/latex/contrib/fontspec/fontspec-code-keyval.dtx
+++ b/macros/latex/contrib/fontspec/fontspec-code-keyval.dtx
@@ -383,10 +383,11 @@
% \begin{macrocode}
\@@_keys_define_code:nnn {fontspec-opentype} {UprightFont} {}
\@@_keys_define_code:nnn {fontspec-opentype} {ItalicFont} {}
+\@@_keys_define_code:nnn {fontspec-opentype} {SlantedFont} {}
\@@_keys_define_code:nnn {fontspec-opentype} {BoldFont} {}
\@@_keys_define_code:nnn {fontspec-opentype} {BoldItalicFont} {}
+\@@_keys_define_code:nnn {fontspec-opentype} {BoldSlantedFont} {}
% \end{macrocode}
-
%
%
%
diff --git a/macros/latex/contrib/fontspec/fontspec-code-opentype.dtx b/macros/latex/contrib/fontspec/fontspec-code-opentype.dtx
index ad9413eca4..be0b8be768 100644
--- a/macros/latex/contrib/fontspec/fontspec-code-opentype.dtx
+++ b/macros/latex/contrib/fontspec/fontspec-code-opentype.dtx
@@ -283,27 +283,27 @@
%<*XE>
%<debug>\typeout{::~ fontspec_check_ot_feat:nnn~ {#2}{#3}{#4}}
\@@_iv_str_to_num:Nx \l_@@_strnum_int {#2}
- \@@_iv_str_to_num:Nx \l_@@_language_int {#3}
- \@@_lang_dflt_correct:N \l_@@_language_int
+
+ \str_if_eq:eeTF {#3} {dflt}
+ { \int_zero:N \l_@@_language_int }
+ { \@@_iv_str_to_num:Nx \l_@@_language_int {#3} }
\@@_iv_str_to_num:Nx \l_@@_script_int {#4}
+
\int_set:Nn \l_tmpb_int
- {
- \XeTeXOTcountfeatures #1
- \l_@@_script_int
- \l_@@_language_int
- }
+ { \XeTeXOTcountfeatures #1 \l_@@_script_int \l_@@_language_int }
+
\int_zero:N \l_tmpa_int
\bool_set_false:N \l_@@_check_bool
\bool_until_do:nn { \int_compare_p:nNn \l_tmpa_int = \l_tmpb_int }
- {
- \ifnum\XeTeXOTfeaturetag #1 \l_@@_script_int \l_@@_language_int
- \l_tmpa_int =\l_@@_strnum_int
- \bool_set_true:N \l_@@_check_bool
- \int_set:Nn \l_tmpa_int {\l_tmpb_int}
- \else
- \int_incr:N \l_tmpa_int
- \fi
- }
+ {
+ \ifnum\XeTeXOTfeaturetag #1 \l_@@_script_int \l_@@_language_int
+ \l_tmpa_int =\l_@@_strnum_int
+ \bool_set_true:N \l_@@_check_bool
+ \int_set:Nn \l_tmpa_int {\l_tmpb_int}
+ \else
+ \int_incr:N \l_tmpa_int
+ \fi
+ }
\bool_if:NTF \l_@@_check_bool \prg_return_true: \prg_return_false:
%</XE>
%<*LU>
diff --git a/macros/latex/contrib/fontspec/fontspec-code.pdf b/macros/latex/contrib/fontspec/fontspec-code.pdf
index 8982d35be2..9ca1bd3430 100644
--- a/macros/latex/contrib/fontspec/fontspec-code.pdf
+++ b/macros/latex/contrib/fontspec/fontspec-code.pdf
Binary files differ
diff --git a/macros/latex/contrib/fontspec/fontspec.dtx b/macros/latex/contrib/fontspec/fontspec.dtx
index 826ad41cce..e5a6f2f111 100644
--- a/macros/latex/contrib/fontspec/fontspec.dtx
+++ b/macros/latex/contrib/fontspec/fontspec.dtx
@@ -70,7 +70,7 @@
\ProvidesExplFile{fontspec.dtx}
%</dtx>
%<*fontspec>
- {2020/01/26}{2.7g}{Font selection for XeLaTeX and LuaLaTeX}
+ {2020/02/03}{2.7h}{Font selection for XeLaTeX and LuaLaTeX}
%</fontspec>
% \end{macrocode}
%
@@ -89,8 +89,8 @@
%<lua>local fontspec = fontspec
%<lua>fontspec.module = {
%<lua> name = "fontspec",
-%<lua> version = "2.7g",
-%<lua> date = "2020/01/26",
+%<lua> version = "2.7h",
+%<lua> date = "2020/02/03",
%<lua> description = "Font selection for XeLaTeX and LuaLaTeX",
%<lua> author = "Khaled Hosny, Philipp Gesang, Will Robertson",
%<lua> copyright = "Khaled Hosny, Philipp Gesang, Will Robertson",
diff --git a/macros/latex/contrib/fontspec/fontspec.pdf b/macros/latex/contrib/fontspec/fontspec.pdf
index b64f441771..2003bddf9c 100644
--- a/macros/latex/contrib/fontspec/fontspec.pdf
+++ b/macros/latex/contrib/fontspec/fontspec.pdf
Binary files differ
diff --git a/macros/latex/contrib/physconst/CHANGELOG.md b/macros/latex/contrib/physconst/CHANGELOG.md
index 059256090c..c765c612a0 100644
--- a/macros/latex/contrib/physconst/CHANGELOG.md
+++ b/macros/latex/contrib/physconst/CHANGELOG.md
@@ -13,7 +13,8 @@
- added localuninstall and distuninstall targets to the makefile
### Changed
- Modified the makefile to split up generation of the .sty, .dtx, and .pdf
-- Modified the .cpp so that every \DeclareRobustCommand starts a new line right away
+- Modified the .cpp so that every \DeclareRobustCommand starts a new line right
+away
- Added a newline in the middle of the title declaration (in .cpp)
- Added a newline in the middle of the \DoNotIndex declaration (in .cpp)
- Added dependency on imakeidx and changed the index to 2 column.
@@ -31,10 +32,30 @@
- Add disribution specific readme
- Add disribution specific makefile
### Changed
-- Update README to have clearer build, distribute, install, and uninstall instructions.
+- Update README to have clearer build, distribute, install, and uninstall
+instructions.
- Distribute with .dtx instead of .sty
- Reordered build, install, distribute, and uninstall sections of the README
- Pulled build up one level of headings in the README
- fix some typos in README
-
-
+## [1.1.0] - 2020/02/03
+### Added
+- macro for Earth's mass
+- macro for Jupiter's mass
+- macro for Earth's radius
+- macro for Jupiter's radius
+- distribution specific change log
+- Numeric variant of each constant for use with e.g. tikz
+### Changes
+- Colomb constant in SI units had an incorrect magnitude; fixed to 10^9 instead
+of 10^14
+- Vacuum permeability was incorrectly a duplicate of the permittivity.
+Premeability is now the correct value.
+- Mass of particles in eV was being computed incorrectly. Fixed values.
+- Order of magnitude of Newton's Gravity, Boltzmann, Planck, and
+Stefan-Boltzmann constants were incorrect.
+- Acceleration due to gravity on Earth was accidentally a copy of G instead of g
+- Acceleration due to gravity on Earth had the wrong units
+- Corrected formatting of README file.
+- Fixed sections of macros - the individual macros were unintentionally
+subsections of the Naming Conversion
diff --git a/macros/latex/contrib/physconst/README.md b/macros/latex/contrib/physconst/README.md
index 8a43c78f49..8727bf5e43 100644
--- a/macros/latex/contrib/physconst/README.md
+++ b/macros/latex/contrib/physconst/README.md
@@ -16,7 +16,8 @@ and version 1.3c or later is part of all distributions of LaTeX
version 2006/05/20 or later.
# Dependencies
-- [`physunits` package](https://github.com/astrobit/physunits) also available at [CTAN](https://ctan.org)
+- [`physunits` package](https://github.com/astrobit/physunits) also available
+at [CTAN](https://ctan.org)
# Build Dependencies
- some LaTeX distribution.
@@ -27,7 +28,8 @@ version 2006/05/20 or later.
# Files
```
- makefile GNU makefile to simplify building and installation on linux
+ makefile GNU makefile to simplify building and installation
+ on linux
README.md This file.
CHANGELOG.md List of changes
physconst.ins The installer file
@@ -40,28 +42,37 @@ version 2006/05/20 or later.
1. `make`
## Otherwise
-1. Run `latex` on `physconst.ins` to create the `.sty` file. e.g. `latex physconst.ins`.
+1. Run `latex` on `physconst.ins` to create the `.sty` file. e.g.
+`latex physconst.ins`.
1. The following steps apply only if you want the documentation (recommended).
- 1. Run `latex` on `physconst.dtx` to create the `.pdf` file. e.g. `xelatex physconst.pdf`.
- 1. Run `makeindex` to create the index, e.g. `makeindex -s gind.ist -o physconst.ind physconst.idx`.
- 1. Run `makeindex` to create the change log, e.g. `makeindex -s gglo.ist -o physconst.gls physconst.glo`.
- 1. Run `latex` on `physconst.dtx` to create the `.pdf` file with index and change log. e.g. `xelatex physconst.pdf`.
- 1. Run `latex` on `physconst.dtx` to get the labels sorted out. e.g. `xelatex physconst.pdf`.
-
-Instructions that might help can be for windows can be found at [this post on StackExchange](https://tex.stackexchange.com/questions/369921/loading-packages-with-ins-and-dtx-files).
+ 1. Run `latex` on `physconst.dtx` to create the `.pdf` file. e.g.
+`xelatex physconst.pdf`.
+ 1. Run `makeindex` to create the index, e.g.
+`makeindex -s gind.ist -o physconst.ind physconst.idx`.
+ 1. Run `makeindex` to create the change log, e.g.
+`makeindex -s gglo.ist -o physconst.gls physconst.glo`.
+ 1. Run `latex` on `physconst.dtx` to create the `.pdf` file with index and
+change log. e.g. `xelatex physconst.pdf`.
+ 1. Run `latex` on `physconst.dtx` to get the labels sorted out. e.g.
+`xelatex physconst.pdf`.
+
+Instructions that might help can be for windows can be found at
+[this post on StackExchange](https://tex.stackexchange.com/questions/369921/loading-packages-with-ins-and-dtx-files).
# Installation
First build the project as described above.
## For a single project
-1. Copy the `physconst.sty` into your project where your `.tex` files are located.
+1. Copy the `physconst.sty` into your project where your `.tex` files are
+located.
## for all users and projects
### Linux / Mac using make and xelatex
1. `make localinstall`
### Otherwise
-Instructions that might help can be for windows can be found at [this post on StackExchange](https://tex.stackexchange.com/questions/369921/loading-packages-with-ins-and-dtx-files).
+Instructions that might help can be for windows can be found at
+[this post on StackExchange](https://tex.stackexchange.com/questions/369921/loading-packages-with-ins-and-dtx-files).
1. Figure out where your LaTeX local packages are installed.
1. Create a directory named `physconst` in that location.
1. Copy the `.sty` file into the directory you just created.
diff --git a/macros/latex/contrib/physconst/physconst.dtx b/macros/latex/contrib/physconst/physconst.dtx
index 691a5fd901..7ade189381 100644
--- a/macros/latex/contrib/physconst/physconst.dtx
+++ b/macros/latex/contrib/physconst/physconst.dtx
@@ -133,7 +133,7 @@
% The normal macros are the ones that you will typically use, whose values are
% determined by the choice of options when the package is invoked.
%
-% \subsection{Naming Convention}
+% \subsubsection{Naming Convention}
%
% Each macro starts with a lower case `k' to indicate that it is a constant.
% If the macro is of special units, e.g. eV, those units will be specified next.
@@ -147,41 +147,136 @@
%\index{Mass|usage}
%
% \DescribeMacro{\kMassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>Electron|usage}
% |\kMassElectron| is the mass of an electron.
%
% \DescribeMacro{\keVMassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>Electron>in eV|usage}
% |\keVMassElectron| is the mass of an electron.
%
+% \DescribeMacro{\kMassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>Electron|usage}
+% |\kMassElectronNumeric| is the numeric value of
+% the mass of an electron.
+%
+% \DescribeMacro{\keVMassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>Electron>in eV|usage}
+% |\keVMassElectronNumeric| is the numeric value of
+% the mass of an electron.
+%
% \DescribeMacro{\kMassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>Proton|usage}
% |\kMassProton| is the mass of a proton.
%
% \DescribeMacro{\keVMassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>Proton>in eV|usage}
% |\keVMassProton| is the mass of a proton.
%
+% \DescribeMacro{\kMassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>Proton|usage}
+% |\kMassProtonNumeric| is the numeric value of
+% the mass of a proton.
+%
+% \DescribeMacro{\keVMassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>Proton>in eV|usage}
+% |\keVMassProtonNumeric| is the numeric value of
+% the mass of a proton.
+%
% \DescribeMacro{\kMassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>Hydrogen atom|usage}
% |\kMassHydrogen| is the mass of a neutral hydrogen atom.
%
% \DescribeMacro{\keVMassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>Hydrogen atom>in eV|usage}
% |\keVMassHydrogen| is the mass of a neutral hydrogen atom.
%
+% \DescribeMacro{\kMassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>Hydrogen atom|usage}
+% |\kMassHydrogenNumeric| is the numeric value of
+% the mass of a neutral hydrogen atom.
+%
+% \DescribeMacro{\keVMassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>Hydrogen atom>in eV|usage}
+% |\keVMassHydrogenNumeric| is the numeric value of
+% the mass of a neutral hydrogen atom.
+%
% \DescribeMacro{\kMassSun}
% \index{Mass>Sun|usage}
% |\kMassSun| is the mass of the Sun.
%
+% \DescribeMacro{\kMassSunNumeric}
+% \index{Mass>Sun|usage}
+% |\kMassSunNumeric| is the numeric value of
+% the mass of the Sun.
+%
+% \DescribeMacro{\kMassEarth}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\kMassEarth| is the mass of the Earth.
+%
+% \DescribeMacro{\kMassEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\kMassEarthNumeric| is the numeric value of
+% the mass of the Earth.
+%
+% \DescribeMacro{\kMassJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\kMassJupiter| is the mass of Jupiter.
+%
+% \DescribeMacro{\kMassJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\kMassJupiterNumeric| is the numeric value of
+% the mass of Jupiter.
+%
% \DescribeMacro{\kMassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>amu|usage}
% |\kMassAMU| is the mass of an atomic mass unit.
%
% \DescribeMacro{\keVMassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% \index{Mass>amu>in eV|usage}
% |\keVMassAMU| is the mass of an atomic mass unit.
%
+% \DescribeMacro{\kMassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>amu|usage}
+% |\kMassAMUNumeric| is the numeric value of
+% the mass of an atomic mass unit.
+%
+% \DescribeMacro{\keVMassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% \index{Mass>amu>in eV|usage}
+% |\keVMassAMUNumeric| is the numeric value of
+% the mass of an atomic mass unit.
+%
%
%\subsubsection{Charge}
%
@@ -192,14 +287,29 @@
% \index{Charge>Elementary|usage}
% |\kChargeFundamental| is the fundamental charge.
%
+% \DescribeMacro{\kChargeFundamentalNumeric}
+% \index{Charge>Elementary|usage}
+% |\kChargeFundamentalNumeric| is the numeric value of
+% the fundamental charge.
+%
% \DescribeMacro{\kChargeElectron}
% \index{Charge>Electron|usage}
% |\kChargeElectron| is the charge of an electron.
%
+% \DescribeMacro{\kChargeElectronNumeric}
+% \index{Charge>Electron|usage}
+% |\kChargeElectronNumeric| is the numeric value of
+% the charge of an electron.
+%
% \DescribeMacro{\kChargeProton}
% \index{Charge>Proton|usage}
% |\kChargeProton| is the charge of a proton.
%
+% \DescribeMacro{\kChargeProtonNumeric}
+% \index{Charge>Proton|usage}
+% |\kChargeProtonNumeric| is the numeric value of
+% the charge of a proton.
+%
%
%\subsubsection{Distances and Lengths}
%
@@ -210,19 +320,58 @@
% \index{Distances and Lengths>Bohr Radius|usage}
% |\kRadiusBohr| is Bohr radius of an atom.
%
+% \DescribeMacro{\kRadiusBohrNumeric}
+% \index{Distances and Lengths>Bohr Radius|usage}
+% |\kRadiusBohrNumeric| is the numeric value of
+% Bohr radius of an atom.
+%
% \DescribeMacro{\kAstronomicalUnit}
% \index{Distances and Lengths>Astronomical Unit|usage}
% |\kAstronomicalUnit| is the astronomical unit (the average distance between
% the Earth and the Sun).
%
+% \DescribeMacro{\kAstronomicalUnitNumeric}
+% \index{Distances and Lengths>Astronomical Unit|usage}
+% |\kAstronomicalUnitNumeric| is the numeric value of
+% the astronomical unit (the average distance between the
+% Earth and the Sun).
+%
% \DescribeMacro{\kParsec}
% \index{Distances and Lengths>Parsec|usage}
% |\kParsec| is the length of a parsec ($\frac{648000\au}{\pi}$).
%
+% \DescribeMacro{\kParsecNumeric}
+% \index{Distances and Lengths>Parsec|usage}
+% |\kParsecNumeric| is the numeric value of
+% the length of a parsec ($\frac{648000\au}{\pi}$).
+%
% \DescribeMacro{\kRadiusSun}
% \index{Distances and Lengths>Solar Radius|usage}
% |\kRadiusSun| is the mean radius of the Sun.
%
+% \DescribeMacro{\kRadiusSunNumeric}
+% \index{Distances and Lengths>Solar Radius|usage}
+% |\kRadiusSunNumeric| is the numeric value of
+% the mean radius of the Sun.
+%
+% \DescribeMacro{\kRadiusEarth}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\kRadiusEarth| is the mean radius of the Earth.
+%
+% \DescribeMacro{\kRadiusEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\kRadiusEarthNumeric| is the numeric value of
+% the mean radius of the Earth.
+%
+% \DescribeMacro{\kRadiusJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\kRadiusJupiter| is the mean radius of Jupiter.
+%
+% \DescribeMacro{\kRadiusJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\kRadiusJupiterNumeric| is the numeric value of
+% the mean radius of Jupiter.
+%
%
%\subsubsection{Energy, Power, and Luminosity}
%
@@ -237,10 +386,25 @@
% \index{Energy, Power, and Luminosity>Rydberg>in eV|usage}
% |\keVRydberg| is the Rydberg energy (the binding energy of Hydrogen).
%
+% \DescribeMacro{\kRydbergNumeric}
+% \index{Energy, Power, and Luminosity>Rydberg|usage}
+% |\kRydbergNumeric| is the numeric value of
+% the Rydberg energy (the binding energy of Hydrogen).
+%
+% \DescribeMacro{\keVRydbergNumeric}
+% \index{Energy, Power, and Luminosity>Rydberg>in eV|usage}
+% |\keVRydbergNumeric| is the numeric value of
+% the Rydberg energy (the binding energy of Hydrogen).
+%
% \DescribeMacro{\kLuminositySun}
% \index{Energy, Power, and Luminosity>Solar Luminosity|usage}
% |\kLuminositySun| is the luminosity of the Sun.
%
+% \DescribeMacro{\kLuminositySunNumeric}
+% \index{Energy, Power, and Luminosity>Solar Luminosity|usage}
+% |\kLuminositySunNumeric| is the numeric value of
+% the luminosity of the Sun.
+%
%
%\subsubsection{Pressure}
%
@@ -248,13 +412,27 @@
%\index{Pressure|usage}
%
% \DescribeMacro{\kPressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% \index{Pressure>Standard Atmosphere|usage}
% |\kPressureAtmosphere| is the standard atmospheric pressure.
%
+% \DescribeMacro{\kPressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% \index{Pressure>Standard Atmosphere|usage}
+% |\kPressureAtmosphereNumeric| is the numeric value of
+% the standard atmospheric pressure.
+%
% \DescribeMacro{\kPressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% \index{Pressure>Standard Pressure|usage}
% |\kPressureStandard| is the standard atmospheric pressure.
%
+% \DescribeMacro{\kPressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% \index{Pressure>Standard Pressure|usage}
+% |\kPressureStandardNumeric| is the numeric value of
+% the standard atmospheric pressure.
+%
%
%\subsubsection{Velocity, Speed and Acceleration}
%
@@ -265,11 +443,25 @@
% \index{Velocity, Speed and Acceleration>Speed of Light|usage}
% |\kSpeedLight| is the speed of light.
%
+% \DescribeMacro{\kSpeedLightNumeric}
+% \index{Velocity, Speed and Acceleration>Speed of Light|usage}
+% |\kSpeedLightNumeric| is the numeric value of
+% the speed of light.
+%
% \DescribeMacro{\kAccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% \index{Velocity, Speed and Acceleration>Acceleration due to Gravity|usage}
% |\kAccelGravity| is the accelertion due to gravity at the surface of the
% Earth.
%
+% \DescribeMacro{\kAccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% \index{Velocity, Speed and Acceleration>Acceleration due to Gravity|usage}
+% |\kAccelGravityNumeric| is the numeric value of
+% the accelertion due to gravity at the surface of the Earth.
+%
%
%\subsubsection{Other Constants}
%
@@ -277,21 +469,45 @@
%\index{Other Constants|usage}
%
% \DescribeMacro{\kCoulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% \index{Other Constants>Coulomb Constant|usage}
% |\kCoulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$).
%
+% \DescribeMacro{\kCoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \index{Other Constants>Coulomb Constant|usage}
+% |\kCoulombNumeric| is the numeric value of
+% the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$).
+%
% \DescribeMacro{\kVacuumPermittivity}
% \index{Other Constants>Vacuum Permittivity|usage}
% |\kVacuumPermittivity| is the electric permittivity of the vacuum.
%
+% \DescribeMacro{\kVacuumPermittivityNumeric}
+% \index{Other Constants>Vacuum Permittivity|usage}
+% |\kVacuumPermittivityNumeric| is the numeric value of
+% the electric permittivity of the vacuum.
+%
% \DescribeMacro{\kVacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% \index{Other Constants>Vacuum Permeability|usage}
% |\kVacuumPermeability| is the magnetic permeability of the vacuum.
%
+% \DescribeMacro{\kVacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% \index{Other Constants>Vacuum Permeability|usage}
+% |\kVacuumPermeabilityNumeric| is the numeric value of
+% the magnetic permeability of the vacuum.
+%
% \DescribeMacro{\kVacuumImpedance}
% \index{Other Constants>Vacuum Impedance|usage}
% |\kVacuumImpedance| is the characteristic impedance of the vacuum.
%
+% \DescribeMacro{\kVacuumImpedanceNumeric}
+% \index{Other Constants>Vacuum Impedance|usage}
+% |\kVacuumImpedanceNumeric| is the numeric value of
+% the characteristic impedance of the vacuum.
+%
% \DescribeMacro{\kBoltzmann}
% \index{Other Constants>Boltzmann|usage}
% |\kBoltzmann| is the Boltzmann constant.
@@ -300,50 +516,124 @@
% \index{Other Constants>Boltzmann>in eV|usage}
% |\keVBoltzmann| is the Boltzmann constant.
%
+% \DescribeMacro{\kBoltzmannNumeric}
+% \index{Other Constants>Boltzmann|usage}
+% |\kBoltzmannNumeric| is the numeric value of
+% the Boltzmann constant.
+%
+% \DescribeMacro{\keVBoltzmannNumeric}
+% \index{Other Constants>Boltzmann>in eV|usage}
+% |\keVBoltzmannNumeric| is the numeric value of
+% the Boltzmann constant.
+%
% \DescribeMacro{\kPlanck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% \index{Other Constants>Planck|usage}
% |\kPlanck| is the Planck constant.
%
% \DescribeMacro{\keVPlanck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% \index{Other Constants>Planck>in eV|usage}
% |\keVPlanck| is the Planck constant.
%
+% \DescribeMacro{\kPlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \index{Other Constants>Planck|usage}
+% |\kPlanckNumeric| is the numeric value of
+% the Planck constant.
+%
+% \DescribeMacro{\keVPlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \index{Other Constants>Planck>in eV|usage}
+% |\keVPlanckNumeric| is the numeric value of
+% the Planck constant.
+%
% \DescribeMacro{\kPlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% \index{Other Constants>Reduced Planck|usage}
% |\kPlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$.
%
% \DescribeMacro{\keVPlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% \index{Other Constants>Reduced Planck>in eV|usage}
% |\keVPlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$.
%
+% \DescribeMacro{\kPlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \index{Other Constants>Reduced Planck|usage}
+% |\kPlanckReducedNumeric| is the numeric value of
+% the Reduced Planck constant $\left(\frac{h}{2\pi}\right)$.
+%
+% \DescribeMacro{\keVPlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \index{Other Constants>Reduced Planck>in eV|usage}
+% |\keVPlanckReducedNumeric| is the numeric value of
+% the Reduced Planck constant $\left(\frac{h}{2\pi}\right)$.
+%
% \DescribeMacro{\kGravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% \index{Other Constants>Newton's Gravitational Constant|usage}
% |\kGravity| is Newton's gravitational constant.
%
+% \DescribeMacro{\kGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% \index{Other Constants>Newton's Gravitational Constant|usage}
+% |\kGravityNumeric| is the numeric value of
+% Newton's gravitational constant.
+%
% \DescribeMacro{\kStefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% \index{Other Constants>Stefan-Boltzmann|usage}
% |\kStefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$.
%
+% \DescribeMacro{\kStefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \index{Other Constants>Stefan-Boltzmann|usage}
+% |\kStefanBoltzmannNumeric| is the numeric value of
+% the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$.
+%
% \DescribeMacro{\kRadiation}
% \index{Other Constants>Radiation|usage}
% |\kRadiation| is the radiation constant, $a
% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$.
%
+% \DescribeMacro{\kRadiationNumeric}
+% \index{Other Constants>Radiation|usage}
+% |\kRadiationNumeric| is the numeric value of
+% the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$.
+%
% \DescribeMacro{\kFineStructure}
% \index{Other Constants>Fine Structure|usage}
% |\kFineStructure| is the fine structure constant.
%
+% \DescribeMacro{\kFineStructureNumeric}
+% \index{Other Constants>Fine Structure|usage}
+% |\kFineStructureNumeric| is the numeric value of
+% the fine structure constant.
+%
% \DescribeMacro{\kFineStructureReciprocal}
% \index{Other Constants>Fine Structure>Reciprocal|usage}
% |\kFineStructureReciprocal| is the reciprocal of the fine structure constant.
%
+% \DescribeMacro{\kFineStructureReciprocalNumeric}
+% \index{Other Constants>Fine Structure>Reciprocal|usage}
+% |\kFineStructureReciprocalNumeric| is the numeric value of
+% the reciprocal of the fine structure constant.
+%
% \DescribeMacro{\kAvogadro}
% \index{Other Constants>Avogadro's Number|usage}
% |\kAvogadro| is Avogadro's Number (the number of particles in a mole).
%
+% \DescribeMacro{\kAvogadroNumeric}
+% \index{Other Constants>Avogadro's Number|usage}
+% |\kAvogadroNumeric| is the numeric value of
+% Avogadro's Number (the number of particles in a mole).
+%
%
%\subsection{Detailed Macros}
%
@@ -353,7 +643,7 @@
% by physconst to define the macros that are normally used (those described
% above.
%
-% \subsection{NamingConvention}
+% \subsubsection{NamingConvention}
% The detailed macros are named like \k@units@precision@name. The units
% specify which units the constant is in (SI, cgs, or eV). For constants that
% are independent of the unit system (e.g. Avogadro's number and the fine
@@ -366,6 +656,8 @@
%\subsubsection{Mass}
%
% \DescribeMacro{\k@SI@short@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassElectron| is the mass of an electron in SI units with
% reduced precision.
% (CODATA~2018)
@@ -382,6 +674,8 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassElectron| is the mass of an electron in SI units with full
% precision.
% (CODATA~2018)
@@ -398,6 +692,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassElectron| is the mass of an electron in cgs units with
% reduced precision.
% (CODATA~2018)
@@ -414,6 +710,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassElectron| is the mass of an electron in cgs units with full
% precision.
% (CODATA~2018)
@@ -430,6 +728,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@short@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassElectron| is the mass of an electron in eV with reduced
% precision.
% (CODATA~2018)
@@ -446,6 +746,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@full@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassElectron| is the mass of an electron in eV with full
% precision.
% (CODATA~2018)
@@ -461,7 +763,121 @@
% {The value is \k@eV@full@MassElectron}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassElectronNumeric| is a mathematical value of
+% the mass of an electron in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@MassElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@MassElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassElectronNumeric| is a mathematical value of
+% the mass of an electron in SI units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@MassElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@MassElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassElectronNumeric| is a mathematical value of
+% the mass of an electron in cgs units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@MassElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@MassElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassElectronNumeric| is a mathematical value of
+% the mass of an electron in cgs units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@MassElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@MassElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassElectronNumeric| is a mathematical value of
+% the mass of an electron in eV with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@MassElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@MassElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassElectronNumeric| is a mathematical value of
+% the mass of an electron in eV with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@MassElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@MassElectronNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassProton| is the mass of a proton in SI units with reduced
% precision.
% (CODATA~2018)
@@ -478,6 +894,8 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassProton| is the mass of a proton in SI units with full
% precision.
% (CODATA~2018)
@@ -494,6 +912,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassProton| is the mass of a proton in cgs units with reduced
% precision.
% (CODATA~2018)
@@ -510,6 +930,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassProton| is the mass of a proton in cgs units with full
% precision.
% (CODATA~2018)
@@ -526,6 +948,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@short@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassProton| is the mass of a proton in eV with reduced precision.
% (CODATA~2018)
%
@@ -541,6 +965,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@full@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassProton| is the mass of a proton in eV with full precision.
% (CODATA~2018)
%
@@ -555,7 +981,119 @@
% {The value is \k@eV@full@MassProton}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassProtonNumeric| is a mathematical value of
+% the mass of a proton in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@MassProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@MassProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassProtonNumeric| is a mathematical value of
+% the mass of a proton in SI units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@MassProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@MassProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassProtonNumeric| is a mathematical value of
+% the mass of a proton in cgs units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@MassProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@MassProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassProtonNumeric| is a mathematical value of
+% the mass of a proton in cgs units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@MassProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@MassProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassProtonNumeric| is a mathematical value of
+% the mass of a proton in eV with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@MassProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@MassProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassProtonNumeric| is a mathematical value of
+% the mass of a proton in eV with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@MassProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@MassProtonNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassHydrogen| is the mass of a neutral hydrogen atom in SI units
% with reduced precision.
% (CODATA~2018)
@@ -572,6 +1110,8 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassHydrogen| is the mass of a neutral hydrogen atom in SI units
% with full precision.
% (CODATA~2018)
@@ -588,6 +1128,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassHydrogen| is the mass of a neutral hydrogen atom in cgs
% units with reduced precision.
% (CODATA~2018)
@@ -604,6 +1146,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassHydrogen| is the mass of a neutral hydrogen atom in cgs
% units with full precision.
% (CODATA~2018)
@@ -620,6 +1164,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@short@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassHydrogen| is the mass of a neutral hydrogen atom in eV with
% reduced precision.
% (CODATA~2018)
@@ -636,6 +1182,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@full@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassHydrogen| is the mass of a neutral hydrogen atom in eV with
% full precision.
% (CODATA~2018)
@@ -651,6 +1199,120 @@
% {The value is \k@eV@full@MassHydrogen}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassHydrogenNumeric| is a mathematical value of
+% the mass of a neutral hydrogen atom in SI units with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@MassHydrogenNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@MassHydrogenNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassHydrogenNumeric| is a mathematical value of
+% the mass of a neutral hydrogen atom in SI units with
+% full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@MassHydrogenNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@MassHydrogenNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassHydrogenNumeric| is a mathematical value of
+% the mass of a neutral hydrogen atom in cgs units
+% with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@MassHydrogenNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@MassHydrogenNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassHydrogenNumeric| is a mathematical value of
+% the mass of a neutral hydrogen atom in cgs units
+% with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@MassHydrogenNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@MassHydrogenNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassHydrogenNumeric| is a mathematical value of
+% the mass of a neutral hydrogen atom in eV with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@MassHydrogenNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@MassHydrogenNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassHydrogenNumeric| is a mathematical value of
+% the mass of a neutral hydrogen atom in eV with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@MassHydrogenNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@MassHydrogenNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@MassSun}
% |\k@SI@short@MassSun| is the mass of the Sun in SI units with reduced
% precision.
@@ -713,7 +1375,205 @@
% {The value is \k@cgs@full@MassSun}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@MassSunNumeric}
+% |\k@SI@short@MassSunNumeric| is a mathematical value of
+% the mass of the Sun in SI units with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@MassSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@MassSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@MassSunNumeric}
+% |\k@SI@full@MassSunNumeric| is a mathematical value of
+% the mass of the Sun in SI units with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@MassSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@MassSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@MassSunNumeric}
+% |\k@cgs@short@MassSunNumeric| is a mathematical value of
+% the mass of the Sun in cgs units with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@MassSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@MassSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@MassSunNumeric}
+% |\k@cgs@full@MassSunNumeric| is a mathematical value of
+% the mass of the Sun in cgs units with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@MassSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@MassSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@MassEarth}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@short@MassEarth| is the mass of the Earth with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@MassEarth\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@MassEarth}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@MassEarth}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@full@MassEarth| is the mass of the Earth with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@MassEarth\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@MassEarth}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@MassEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@short@MassEarthNumeric| is a mathematical value of
+% the mass of the Earth with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@MassEarthNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@MassEarthNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@MassEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@full@MassEarthNumeric| is a mathematical value of
+% the mass of the Earth with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@MassEarthNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@MassEarthNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@MassJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@short@MassJupiter| is the mass of Jupiter with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@MassJupiter\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@MassJupiter}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@MassJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@full@MassJupiter| is the mass of Jupiter with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@MassJupiter\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@MassJupiter}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@MassJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@short@MassJupiterNumeric| is a mathematical value of
+% the mass of Jupiter with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@MassJupiterNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@MassJupiterNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@MassJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@full@MassJupiterNumeric| is a mathematical value of
+% the mass of Jupiter with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@MassJupiterNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@MassJupiterNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassAMU| is the mass of an atomic mass unit in SI units with
% reduced precision.
% (CODATA~2018)
@@ -730,6 +1590,8 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassAMU| is the mass of an atomic mass unit in SI units with full
% precision.
% (CODATA~2018)
@@ -746,6 +1608,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassAMU| is the mass of an atomic mass unit in cgs units with
% reduced precision.
% (CODATA~2018)
@@ -762,6 +1626,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassAMU| is the mass of an atomic mass unit in cgs units with
% full precision.
% (CODATA~2018)
@@ -778,6 +1644,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@short@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassAMU| is the mass of an atomic mass unit in eV with reduced
% precision.
% (CODATA~2018)
@@ -794,6 +1662,8 @@
% \makeatother
%
% \DescribeMacro{\k@eV@full@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassAMU| is the mass of an atomic mass unit in eV with full
% precision.
% (CODATA~2018)
@@ -809,6 +1679,119 @@
% {The value is \k@eV@full@MassAMU}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassAMUNumeric| is a mathematical value of
+% the mass of an atomic mass unit in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@MassAMUNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@MassAMUNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassAMUNumeric| is a mathematical value of
+% the mass of an atomic mass unit in SI units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@MassAMUNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@MassAMUNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassAMUNumeric| is a mathematical value of
+% the mass of an atomic mass unit in cgs units with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@MassAMUNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@MassAMUNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassAMUNumeric| is a mathematical value of
+% the mass of an atomic mass unit in cgs units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@MassAMUNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@MassAMUNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassAMUNumeric| is a mathematical value of
+% the mass of an atomic mass unit in eV with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@MassAMUNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@MassAMUNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassAMUNumeric| is a mathematical value of
+% the mass of an atomic mass unit in eV with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@MassAMUNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@MassAMUNumeric}\end{mdframed}
+% \makeatother
+%
%
%\subsubsection{Charge}
%
@@ -876,6 +1859,74 @@
% {The value is \k@cgs@full@ChargeFundamental}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@ChargeFundamentalNumeric}
+% |\k@SI@short@ChargeFundamentalNumeric| is a mathematical value of
+% the fundamental charge in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@ChargeFundamentalNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@ChargeFundamentalNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@ChargeFundamentalNumeric}
+% |\k@SI@full@ChargeFundamentalNumeric| is a mathematical value of
+% the fundamental charge in SI units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@ChargeFundamentalNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@ChargeFundamentalNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@ChargeFundamentalNumeric}
+% |\k@cgs@short@ChargeFundamentalNumeric| is a mathematical value of
+% the fundamental charge in cgs units with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@ChargeFundamentalNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@ChargeFundamentalNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@ChargeFundamentalNumeric}
+% |\k@cgs@full@ChargeFundamentalNumeric| is a mathematical value of
+% the fundamental charge in cgs units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@ChargeFundamentalNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@ChargeFundamentalNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@ChargeElectron}
% |\k@SI@short@ChargeElectron| is the charge of an electron in SI units with
% reduced precision.
@@ -940,6 +1991,74 @@
% {The value is \k@cgs@full@ChargeElectron}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@ChargeElectronNumeric}
+% |\k@SI@short@ChargeElectronNumeric| is a mathematical value of
+% the charge of an electron in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@ChargeElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@ChargeElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@ChargeElectronNumeric}
+% |\k@SI@full@ChargeElectronNumeric| is a mathematical value of
+% the charge of an electron in SI units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@ChargeElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@ChargeElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@ChargeElectronNumeric}
+% |\k@cgs@short@ChargeElectronNumeric| is a mathematical value of
+% the charge of an electron in cgs units with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@ChargeElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@ChargeElectronNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@ChargeElectronNumeric}
+% |\k@cgs@full@ChargeElectronNumeric| is a mathematical value of
+% the charge of an electron in cgs units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@ChargeElectronNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@ChargeElectronNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@ChargeProton}
% |\k@SI@short@ChargeProton| is the charge of a proton in SI units with reduced
% precision.
@@ -1004,6 +2123,74 @@
% {The value is \k@cgs@full@ChargeProton}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@ChargeProtonNumeric}
+% |\k@SI@short@ChargeProtonNumeric| is a mathematical value of
+% the charge of a proton in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@ChargeProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@ChargeProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@ChargeProtonNumeric}
+% |\k@SI@full@ChargeProtonNumeric| is a mathematical value of
+% the charge of a proton in SI units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@ChargeProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@ChargeProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@ChargeProtonNumeric}
+% |\k@cgs@short@ChargeProtonNumeric| is a mathematical value of
+% the charge of a proton in cgs units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@ChargeProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@ChargeProtonNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@ChargeProtonNumeric}
+% |\k@cgs@full@ChargeProtonNumeric| is a mathematical value of
+% the charge of a proton in cgs units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@ChargeProtonNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@ChargeProtonNumeric}\end{mdframed}
+% \makeatother
+%
%
%\subsubsection{Distances and Lengths}
%
@@ -1071,6 +2258,73 @@
% {The value is \k@cgs@full@RadiusBohr}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@RadiusBohrNumeric}
+% |\k@SI@short@RadiusBohrNumeric| is a mathematical value of
+% Bohr radius of an atom in SI units with reduced
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@RadiusBohrNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@RadiusBohrNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@RadiusBohrNumeric}
+% |\k@SI@full@RadiusBohrNumeric| is a mathematical value of
+% Bohr radius of an atom in SI units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@RadiusBohrNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@RadiusBohrNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@RadiusBohrNumeric}
+% |\k@cgs@short@RadiusBohrNumeric| is a mathematical value of
+% Bohr radius of an atom in cgs units with reduced
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@RadiusBohrNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@RadiusBohrNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@RadiusBohrNumeric}
+% |\k@cgs@full@RadiusBohrNumeric| is a mathematical value of
+% Bohr radius of an atom in cgs units with full
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@RadiusBohrNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@RadiusBohrNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@AstronomicalUnit}
% |\k@SI@short@AstronomicalUnit| is the astronomical unit (the average distance
% between the Earth and the Sun) in SI units with reduced precision.
@@ -1135,6 +2389,74 @@
% {The value is \k@cgs@full@AstronomicalUnit}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@AstronomicalUnitNumeric}
+% |\k@SI@short@AstronomicalUnitNumeric| is a mathematical value of
+% the astronomical unit (the average distance
+% between the Earth and the Sun) in SI units with reduced precision.
+% (IAU~Resolution~B2~2012)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@AstronomicalUnitNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@AstronomicalUnitNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@AstronomicalUnitNumeric}
+% |\k@SI@full@AstronomicalUnitNumeric| is a mathematical value of
+% the astronomical unit (the average distance
+% between the Earth and the Sun) in SI units with full precision.
+% (IAU~Resolution~B2~2012)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@AstronomicalUnitNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@AstronomicalUnitNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@AstronomicalUnitNumeric}
+% |\k@cgs@short@AstronomicalUnitNumeric| is a mathematical value of
+% the astronomical unit (the average distance
+% between the Earth and the Sun) in cgs units with reduced precision.
+% (IAU~Resolution~B2~2012)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@AstronomicalUnitNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@AstronomicalUnitNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@AstronomicalUnitNumeric}
+% |\k@cgs@full@AstronomicalUnitNumeric| is a mathematical value of
+% the astronomical unit (the average distance
+% between the Earth and the Sun) in cgs units with full precision.
+% (IAU~Resolution~B2~2012)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@AstronomicalUnitNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@AstronomicalUnitNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@Parsec}
% |\k@SI@short@Parsec| is the length of a parsec ($\frac{648000\au}{\pi}$) in
% SI units with reduced precision.
@@ -1199,6 +2521,74 @@
% {The value is \k@cgs@full@Parsec}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@ParsecNumeric}
+% |\k@SI@short@ParsecNumeric| is a mathematical value of
+% the length of a parsec ($\frac{648000\au}{\pi}$) in SI
+% units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@ParsecNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@ParsecNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@ParsecNumeric}
+% |\k@SI@full@ParsecNumeric| is a mathematical value of
+% the length of a parsec ($\frac{648000\au}{\pi}$) in SI
+% units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@ParsecNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@ParsecNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@ParsecNumeric}
+% |\k@cgs@short@ParsecNumeric| is a mathematical value of
+% the length of a parsec ($\frac{648000\au}{\pi}$) in cgs
+% units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@ParsecNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@ParsecNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@ParsecNumeric}
+% |\k@cgs@full@ParsecNumeric| is a mathematical value of
+% the length of a parsec ($\frac{648000\au}{\pi}$) in cgs
+% units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@ParsecNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@ParsecNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@RadiusSun}
% |\k@SI@short@RadiusSun| is the mean radius of the Sun in SI units with
% reduced precision.
@@ -1263,6 +2653,206 @@
% {The value is \k@cgs@full@RadiusSun}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@RadiusSunNumeric}
+% |\k@SI@short@RadiusSunNumeric| is a mathematical value of
+% the mean radius of the Sun in SI units with reduced
+% precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@RadiusSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@RadiusSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@RadiusSunNumeric}
+% |\k@SI@full@RadiusSunNumeric| is a mathematical value of
+% the mean radius of the Sun in SI units with full
+% precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@RadiusSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@RadiusSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@RadiusSunNumeric}
+% |\k@cgs@short@RadiusSunNumeric| is a mathematical value of
+% the mean radius of the Sun in cgs units with reduced
+% precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@RadiusSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@RadiusSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@RadiusSunNumeric}
+% |\k@cgs@full@RadiusSunNumeric| is a mathematical value of
+% the mean radius of the Sun in cgs units with full
+% precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@RadiusSunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@RadiusSunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@RadiusEarth}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@short@RadiusEarth| is the mean radius of the Earth with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@RadiusEarth\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@RadiusEarth}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@RadiusEarth}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@full@RadiusEarth| is the mean radius of the Earth with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@RadiusEarth\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@RadiusEarth}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@RadiusEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@short@RadiusEarthNumeric| is a mathematical value of
+% the mean radius of the Earth with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@RadiusEarthNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@RadiusEarthNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@RadiusEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@full@RadiusEarthNumeric| is a mathematical value of
+% the mean radius of the Earth with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@RadiusEarthNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@RadiusEarthNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@RadiusJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@short@RadiusJupiter| is the mean radius of Jupiter with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@RadiusJupiter\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@RadiusJupiter}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@RadiusJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@full@RadiusJupiter| is the mean radius of Jupiter with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@RadiusJupiter\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@RadiusJupiter}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@short@RadiusJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@short@RadiusJupiterNumeric| is a mathematical value of
+% the mean radius of Jupiter with reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@RadiusJupiterNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@RadiusJupiterNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@RadiusJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@full@RadiusJupiterNumeric| is a mathematical value of
+% the mean radius of Jupiter with full precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@RadiusJupiterNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@RadiusJupiterNumeric}\end{mdframed}
+% \makeatother
+%
%
%\subsubsection{Energy, Power, and Luminosity}
%
@@ -1362,6 +2952,108 @@
% {The value is \k@eV@full@Rydberg}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@RydbergNumeric}
+% |\k@SI@short@RydbergNumeric| is a mathematical value of
+% the Rydberg energy (the binding energy of Hydrogen) in SI
+% units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@RydbergNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@RydbergNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@RydbergNumeric}
+% |\k@SI@full@RydbergNumeric| is a mathematical value of
+% the Rydberg energy (the binding energy of Hydrogen) in SI
+% units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@RydbergNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@RydbergNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@RydbergNumeric}
+% |\k@cgs@short@RydbergNumeric| is a mathematical value of
+% the Rydberg energy (the binding energy of Hydrogen) in
+% cgs units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@RydbergNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@RydbergNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@RydbergNumeric}
+% |\k@cgs@full@RydbergNumeric| is a mathematical value of
+% the Rydberg energy (the binding energy of Hydrogen) in
+% cgs units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@RydbergNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@RydbergNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@RydbergNumeric}
+% |\k@eV@short@RydbergNumeric| is a mathematical value of
+% the Rydberg energy (the binding energy of Hydrogen) in eV
+% with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@RydbergNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@RydbergNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@RydbergNumeric}
+% |\k@eV@full@RydbergNumeric| is a mathematical value of
+% the Rydberg energy (the binding energy of Hydrogen) in eV
+% with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@RydbergNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@RydbergNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@LuminositySun}
% |\k@SI@short@LuminositySun| is the luminosity of the Sun in SI units with
% reduced precision.
@@ -1426,10 +3118,79 @@
% {The value is \k@cgs@full@LuminositySun}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@LuminositySunNumeric}
+% |\k@SI@short@LuminositySunNumeric| is a mathematical value of
+% the luminosity of the Sun in SI units with reduced
+% precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@LuminositySunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@LuminositySunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@LuminositySunNumeric}
+% |\k@SI@full@LuminositySunNumeric| is a mathematical value of
+% the luminosity of the Sun in SI units with full
+% precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@LuminositySunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@LuminositySunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@LuminositySunNumeric}
+% |\k@cgs@short@LuminositySunNumeric| is a mathematical value of
+% the luminosity of the Sun in cgs units with
+% reduced precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@LuminositySunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@LuminositySunNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@LuminositySunNumeric}
+% |\k@cgs@full@LuminositySunNumeric| is a mathematical value of
+% the luminosity of the Sun in cgs units with full
+% precision.
+% (IAU~Resolution~B3~2015)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@LuminositySunNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@LuminositySunNumeric}\end{mdframed}
+% \makeatother
+%
%
%\subsubsection{Pressure}
%
% \DescribeMacro{\k@SI@short@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@short@PressureAtmosphere| is the standard atmospheric pressure in SI
% units with reduced precision.
% (CODATA~2018)
@@ -1446,6 +3207,7 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@full@PressureAtmosphere| is the standard atmospheric pressure in SI
% units with full precision.
% (CODATA~2018)
@@ -1462,6 +3224,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@short@PressureAtmosphere| is the standard atmospheric pressure in cgs
% units with reduced precision.
% (CODATA~2018)
@@ -1478,6 +3241,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@full@PressureAtmosphere| is the standard atmospheric pressure in cgs
% units with full precision.
% (CODATA~2018)
@@ -1493,7 +3257,80 @@
% {The value is \k@cgs@full@PressureAtmosphere}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@short@PressureAtmosphereNumeric| is a mathematical value of
+% the standard atmospheric pressure in SI units
+% with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@PressureAtmosphereNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@PressureAtmosphereNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@full@PressureAtmosphereNumeric| is a mathematical value of
+% the standard atmospheric pressure in SI units
+% with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@PressureAtmosphereNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@PressureAtmosphereNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@short@PressureAtmosphereNumeric| is a mathematical value of
+% the standard atmospheric pressure in cgs
+% units with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@PressureAtmosphereNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@PressureAtmosphereNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@full@PressureAtmosphereNumeric| is a mathematical value of
+% the standard atmospheric pressure in cgs units
+% with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@PressureAtmosphereNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@PressureAtmosphereNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@short@PressureStandard| is the standard atmospheric pressure in SI
% units with reduced precision.
% (CODATA~2018)
@@ -1510,6 +3347,7 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@full@PressureStandard| is the standard atmospheric pressure in SI
% units with full precision.
% (CODATA~2018)
@@ -1526,6 +3364,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@short@PressureStandard| is the standard atmospheric pressure in cgs
% units with reduced precision.
% (CODATA~2018)
@@ -1542,6 +3381,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@full@PressureStandard| is the standard atmospheric pressure in cgs
% units with full precision.
% (CODATA~2018)
@@ -1557,6 +3397,78 @@
% {The value is \k@cgs@full@PressureStandard}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@short@PressureStandardNumeric| is a mathematical value of
+% the standard atmospheric pressure in SI units
+% with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@PressureStandardNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@PressureStandardNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@full@PressureStandardNumeric| is a mathematical value of
+% the standard atmospheric pressure in SI units
+% with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@PressureStandardNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@PressureStandardNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@short@PressureStandardNumeric| is a mathematical value of
+% the standard atmospheric pressure in cgs units
+% with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@PressureStandardNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@PressureStandardNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@full@PressureStandardNumeric| is a mathematical value of
+% the standard atmospheric pressure in cgs units
+% with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@PressureStandardNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@PressureStandardNumeric}\end{mdframed}
+% \makeatother
+%
%
%\subsubsection{Velocity, Speed and Acceleration}
%
@@ -1623,7 +3535,74 @@
% {The value is \k@cgs@full@SpeedLight}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@SpeedLightNumeric}
+% |\k@SI@short@SpeedLightNumeric| is a mathematical value of
+% the speed of light in SI units with reduced precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@SpeedLightNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@SpeedLightNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@SpeedLightNumeric}
+% |\k@SI@full@SpeedLightNumeric| is a mathematical value of
+% the speed of light in SI units with full precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@SpeedLightNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@SpeedLightNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@SpeedLightNumeric}
+% |\k@cgs@short@SpeedLightNumeric| is a mathematical value of
+% the speed of light in cgs units with reduced
+% precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@SpeedLightNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@SpeedLightNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@SpeedLightNumeric}
+% |\k@cgs@full@SpeedLightNumeric| is a mathematical value of
+% the speed of light in cgs units with full precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@SpeedLightNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@SpeedLightNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@SI@short@AccelGravity| is the accelertion due to gravity at the surface
% of the Earth in SI units with reduced precision.
% (CODATA 2018)
@@ -1640,6 +3619,8 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@SI@full@AccelGravity| is the accelertion due to gravity at the surface of
% the Earth in SI units with full precision.
% (CODATA 2018)
@@ -1656,6 +3637,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@cgs@short@AccelGravity| is the accelertion due to gravity at the surface
% of the Earth in cgs units with reduced precision.
% (CODATA 2018)
@@ -1672,6 +3655,8 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@cgs@full@AccelGravity| is the accelertion due to gravity at the surface
% of the Earth in cgs units with full precision.
% (CODATA 2018)
@@ -1687,10 +3672,87 @@
% {The value is \k@cgs@full@AccelGravity}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@SI@short@AccelGravityNumeric| is a mathematical value of
+% the accelertion due to gravity at the surface of the
+% Earth in SI units with reduced precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@AccelGravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@AccelGravityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@SI@full@AccelGravityNumeric| is a mathematical value of
+% the accelertion due to gravity at the surface of the
+% Earth in SI units with full precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@AccelGravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@AccelGravityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@cgs@short@AccelGravityNumeric| is a mathematical value of
+% the accelertion due to gravity at the surface of
+% the Earth in cgs units with reduced precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@AccelGravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@AccelGravityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@cgs@full@AccelGravityNumeric| is a mathematical value of
+% the accelertion due to gravity at the surface of the
+% Earth in cgs units with full precision.
+% (CODATA 2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@AccelGravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@AccelGravityNumeric}\end{mdframed}
+% \makeatother
+%
%
%\subsubsection{Other Constants}
%
% \DescribeMacro{\k@SI@short@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
% SI units with reduced precision.
% (Calculated)
@@ -1707,6 +3769,7 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
% SI units with full precision.
% (Calculated)
@@ -1723,6 +3786,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$)
% in cgs units with reduced precision.
% (Calculated)
@@ -1739,6 +3803,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
% cgs units with full precision.
% (Calculated)
@@ -1754,6 +3819,78 @@
% {The value is \k@cgs@full@Coulomb}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@CoulombNumeric| is a mathematical value of
+% the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in SI
+% units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@CoulombNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@CoulombNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@CoulombNumeric| is a mathematical value of
+% the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in SI
+% units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@CoulombNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@CoulombNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@CoulombNumeric| is a mathematical value of
+% the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in cgs
+% units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@CoulombNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@CoulombNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@CoulombNumeric| is a mathematical value of
+% the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in cgs
+% units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@CoulombNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@CoulombNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@VacuumPermittivity}
% |\k@SI@short@VacuumPermittivity| is the electric permittivity of the vacuum
% in SI units with reduced precision.
@@ -1818,10 +3955,79 @@
% {The value is \k@cgs@full@VacuumPermittivity}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@VacuumPermittivityNumeric}
+% |\k@SI@short@VacuumPermittivityNumeric| is a mathematical value of
+% the electric permittivity of the vacuum in SI
+% units with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@VacuumPermittivityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@VacuumPermittivityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@VacuumPermittivityNumeric}
+% |\k@SI@full@VacuumPermittivityNumeric| is a mathematical value of
+% the electric permittivity of the vacuum in SI
+% units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@VacuumPermittivityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@VacuumPermittivityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@VacuumPermittivityNumeric}
+% |\k@cgs@short@VacuumPermittivityNumeric| is a mathematical value of
+% the electric permittivity of the vacuum in
+% cgs units with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@VacuumPermittivityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@VacuumPermittivityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@VacuumPermittivityNumeric}
+% |\k@cgs@full@VacuumPermittivityNumeric| is a mathematical value of
+% the electric permittivity of the vacuum in cgs
+% units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@VacuumPermittivityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@VacuumPermittivityNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@short@VacuumPermeability| is the magnetic permeability of the vacuum
% in SI units with reduced precision.
-% (CODATA~2018)
+% (Calculated)
%
% The macro can be invoked by (e.g.)
% \begin{mdframed}[backgroundcolor=orange!25]%
@@ -1835,9 +4041,10 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@full@VacuumPermeability| is the magnetic permeability of the vacuum in
% SI units with full precision.
-% (CODATA~2018)
+% (Calculated)
%
% The macro can be invoked by (e.g.)
% \begin{mdframed}[backgroundcolor=orange!25]%
@@ -1851,9 +4058,10 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@short@VacuumPermeability| is the magnetic permeability of the vacuum
% in cgs units with reduced precision.
-% (CODATA~2018)
+% (Calculated)
%
% The macro can be invoked by (e.g.)
% \begin{mdframed}[backgroundcolor=orange!25]%
@@ -1867,9 +4075,10 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@full@VacuumPermeability| is the magnetic permeability of the vacuum
% in cgs units with full precision.
-% (CODATA~2018)
+% (Calculated)
%
% The macro can be invoked by (e.g.)
% \begin{mdframed}[backgroundcolor=orange!25]%
@@ -1882,6 +4091,78 @@
% {The value is \k@cgs@full@VacuumPermeability}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@short@VacuumPermeabilityNumeric| is a mathematical value of
+% the magnetic permeability of the vacuum in SI
+% units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@VacuumPermeabilityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@VacuumPermeabilityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@full@VacuumPermeabilityNumeric| is a mathematical value of
+% the magnetic permeability of the vacuum in SI
+% units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@VacuumPermeabilityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@VacuumPermeabilityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@short@VacuumPermeabilityNumeric| is a mathematical value of
+% the magnetic permeability of the vacuum in
+% cgs units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@VacuumPermeabilityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@VacuumPermeabilityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@full@VacuumPermeabilityNumeric| is a mathematical value of
+% the magnetic permeability of the vacuum in cgs
+% units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@VacuumPermeabilityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@VacuumPermeabilityNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@short@VacuumImpedance}
% |\k@short@VacuumImpedance| is the characteristic impedance of the vacuum with
% reduced precision.
@@ -1914,6 +4195,40 @@
% {The value is \k@full@VacuumImpedance}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@short@VacuumImpedanceNumeric}
+% |\k@short@VacuumImpedanceNumeric| is a mathematical value of
+% the characteristic impedance of the vacuum with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@VacuumImpedanceNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@VacuumImpedanceNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@VacuumImpedanceNumeric}
+% |\k@full@VacuumImpedanceNumeric| is a mathematical value of
+% the characteristic impedance of the vacuum with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@VacuumImpedanceNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@VacuumImpedanceNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@Boltzmann}
% |\k@SI@short@Boltzmann| is the Boltzmann constant in SI units with reduced
% precision.
@@ -2009,7 +4324,106 @@
% {The value is \k@eV@full@Boltzmann}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@BoltzmannNumeric}
+% |\k@SI@short@BoltzmannNumeric| is a mathematical value of
+% the Boltzmann constant in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@BoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@BoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@BoltzmannNumeric}
+% |\k@SI@full@BoltzmannNumeric| is a mathematical value of
+% the Boltzmann constant in SI units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@BoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@BoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@BoltzmannNumeric}
+% |\k@cgs@short@BoltzmannNumeric| is a mathematical value of
+% the Boltzmann constant in cgs units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@BoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@BoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@BoltzmannNumeric}
+% |\k@cgs@full@BoltzmannNumeric| is a mathematical value of
+% the Boltzmann constant in cgs units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@BoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@BoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@BoltzmannNumeric}
+% |\k@eV@short@BoltzmannNumeric| is a mathematical value of
+% the Boltzmann constant in eV with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@BoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@BoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@BoltzmannNumeric}
+% |\k@eV@full@BoltzmannNumeric| is a mathematical value of
+% the Boltzmann constant in eV with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@BoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@BoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@Planck| is the Planck constant in SI units with reduced
% precision.
% (CODATA~2018)
@@ -2026,6 +4440,7 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@Planck| is the Planck constant in SI units with full precision.
% (CODATA~2018)
%
@@ -2041,6 +4456,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@Planck| is the Planck constant in cgs units with reduced
% precision.
% (CODATA~2018)
@@ -2057,6 +4473,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@Planck| is the Planck constant in cgs units with full precision.
% (CODATA~2018)
%
@@ -2072,6 +4489,7 @@
% \makeatother
%
% \DescribeMacro{\k@eV@short@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@short@Planck| is the Planck constant in eV with reduced precision.
% (CODATA~2018)
%
@@ -2087,6 +4505,7 @@
% \makeatother
%
% \DescribeMacro{\k@eV@full@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@full@Planck| is the Planck constant in eV with full precision.
% (CODATA~2018)
%
@@ -2101,7 +4520,110 @@
% {The value is \k@eV@full@Planck}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@PlanckNumeric| is a mathematical value of
+% the Planck constant in SI units with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@PlanckNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@PlanckNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@PlanckNumeric| is a mathematical value of
+% the Planck constant in SI units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@PlanckNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@PlanckNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@PlanckNumeric| is a mathematical value of
+% the Planck constant in cgs units with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@PlanckNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@PlanckNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@PlanckNumeric| is a mathematical value of
+% the Planck constant in cgs units with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@PlanckNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@PlanckNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@short@PlanckNumeric| is a mathematical value of
+% the Planck constant in eV with reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@PlanckNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@PlanckNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@full@PlanckNumeric| is a mathematical value of
+% the Planck constant in eV with full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@PlanckNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@PlanckNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in SI units with reduced precision.
% (Calculated)
@@ -2118,6 +4640,7 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in SI units with full precision.
% (Calculated)
@@ -2134,6 +4657,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in cgs units with reduced precision.
% (Calculated)
@@ -2150,6 +4674,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in cgs units with full precision.
% (Calculated)
@@ -2166,6 +4691,7 @@
% \makeatother
%
% \DescribeMacro{\k@eV@short@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@short@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in eV with reduced precision.
% (Calculated)
@@ -2182,6 +4708,7 @@
% \makeatother
%
% \DescribeMacro{\k@eV@full@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@full@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in eV with full precision.
% (Calculated)
@@ -2197,7 +4724,116 @@
% {The value is \k@eV@full@PlanckReduced}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@PlanckReducedNumeric| is a mathematical value of
+% the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in SI units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@PlanckReducedNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@PlanckReducedNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@PlanckReducedNumeric| is a mathematical value of
+% the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in SI units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@PlanckReducedNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@PlanckReducedNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@PlanckReducedNumeric| is a mathematical value of
+% the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in cgs units with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@PlanckReducedNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@PlanckReducedNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@PlanckReducedNumeric| is a mathematical value of
+% the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in cgs units with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@PlanckReducedNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@PlanckReducedNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@short@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@short@PlanckReducedNumeric| is a mathematical value of
+% the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in eV with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@short@PlanckReducedNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@short@PlanckReducedNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@eV@full@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@full@PlanckReducedNumeric| is a mathematical value of
+% the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in eV with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@eV@full@PlanckReducedNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@eV@full@PlanckReducedNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@short@Gravity| is Newton's gravitational constant in SI units with
% reduced precision.
% (CODATA~2018)
@@ -2214,6 +4850,7 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@full@Gravity| is Newton's gravitational constant in SI units with full
% precision.
% (CODATA~2018)
@@ -2230,6 +4867,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@short@Gravity| is Newton's gravitational constant in cgs units with
% reduced precision.
% (CODATA~2018)
@@ -2246,6 +4884,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@full@Gravity| is Newton's gravitational constant in cgs units with
% full precision.
% (CODATA~2018)
@@ -2261,7 +4900,80 @@
% {The value is \k@cgs@full@Gravity}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@short@GravityNumeric| is a mathematical value of
+% Newton's gravitational constant in SI units with reduced
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@GravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@GravityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@full@GravityNumeric| is a mathematical value of
+% Newton's gravitational constant in SI units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@GravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@GravityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@short@GravityNumeric| is a mathematical value of
+% Newton's gravitational constant in cgs units with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@GravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@GravityNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@full@GravityNumeric| is a mathematical value of
+% Newton's gravitational constant in cgs units with full
+% precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@GravityNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@GravityNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with reduced
% precision.
@@ -2279,6 +4991,7 @@
% \makeatother
%
% \DescribeMacro{\k@SI@full@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with full
% precision.
@@ -2296,6 +5009,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@short@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with reduced
% precision.
@@ -2313,6 +5027,7 @@
% \makeatother
%
% \DescribeMacro{\k@cgs@full@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with full
% precision.
@@ -2329,6 +5044,82 @@
% {The value is \k@cgs@full@StefanBoltzmann}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@StefanBoltzmannNumeric| is a mathematical value of
+% the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with reduced
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@StefanBoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@StefanBoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@StefanBoltzmannNumeric| is a mathematical value of
+% the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with full
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@StefanBoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@StefanBoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@StefanBoltzmannNumeric| is a mathematical value of
+% the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with reduced
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@StefanBoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@StefanBoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@StefanBoltzmannNumeric| is a mathematical value of
+% the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with full
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@StefanBoltzmannNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@StefanBoltzmannNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@SI@short@Radiation}
% |\k@SI@short@Radiation| is the radiation constant, $a
% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in SI units with reduced
@@ -2397,6 +5188,78 @@
% {The value is \k@cgs@full@Radiation}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@SI@short@RadiationNumeric}
+% |\k@SI@short@RadiationNumeric| is a mathematical value of
+% the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in SI units with reduced
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@short@RadiationNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@short@RadiationNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@SI@full@RadiationNumeric}
+% |\k@SI@full@RadiationNumeric| is a mathematical value of
+% the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in SI units with full
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@SI@full@RadiationNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@SI@full@RadiationNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@short@RadiationNumeric}
+% |\k@cgs@short@RadiationNumeric| is a mathematical value of
+% the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in cgs units with reduced
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@short@RadiationNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@short@RadiationNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@cgs@full@RadiationNumeric}
+% |\k@cgs@full@RadiationNumeric| is a mathematical value of
+% the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in cgs units with full
+% precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@cgs@full@RadiationNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@cgs@full@RadiationNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@short@FineStructure}
% |\k@short@FineStructure| is the fine structure constant with reduced
% precision.
@@ -2428,6 +5291,38 @@
% {The value is \k@full@FineStructure}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@short@FineStructureNumeric}
+% |\k@short@FineStructureNumeric| is a mathematical value of
+% the fine structure constant with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@FineStructureNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@FineStructureNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@FineStructureNumeric}
+% |\k@full@FineStructureNumeric| is a mathematical value of
+% the fine structure constant with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@FineStructureNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@FineStructureNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@short@FineStructureReciprocal}
% |\k@short@FineStructureReciprocal| is the reciprocal of the fine structure
% constant with reduced precision.
@@ -2460,6 +5355,40 @@
% {The value is \k@full@FineStructureReciprocal}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@short@FineStructureReciprocalNumeric}
+% |\k@short@FineStructureReciprocalNumeric| is a mathematical value of
+% the reciprocal of the fine structure
+% constant with reduced precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@FineStructureReciprocalNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@FineStructureReciprocalNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@FineStructureReciprocalNumeric}
+% |\k@full@FineStructureReciprocalNumeric| is a mathematical value of
+% the reciprocal of the fine structure constant
+% with full precision.
+% (Calculated)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@FineStructureReciprocalNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@FineStructureReciprocalNumeric}\end{mdframed}
+% \makeatother
+%
% \DescribeMacro{\k@short@Avogadro}
% |\k@short@Avogadro| is Avogadro's Number (the number of particles in a mole)
% with reduced precision.
@@ -2492,6 +5421,40 @@
% {The value is \k@full@Avogadro}\end{mdframed}
% \makeatother
%
+% \DescribeMacro{\k@short@AvogadroNumeric}
+% |\k@short@AvogadroNumeric| is a mathematical value of
+% Avogadro's Number (the number of particles in a mole) with
+% reduced precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@short@AvogadroNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@short@AvogadroNumeric}\end{mdframed}
+% \makeatother
+%
+% \DescribeMacro{\k@full@AvogadroNumeric}
+% |\k@full@AvogadroNumeric| is a mathematical value of
+% Avogadro's Number (the number of particles in a mole) with
+% full precision.
+% (CODATA~2018)
+%
+% The macro can be invoked by (e.g.)
+% \begin{mdframed}[backgroundcolor=orange!25]%
+% {\small\texttt{\textbackslash makeatletter\\ The value is
+% \textbackslash k@full@AvogadroNumeric\\
+% \textbackslash makeatother}}\end{mdframed}
+% \makeatletter
+% Resulting in
+% \begin{mdframed}[backgroundcolor=blue!25]%
+% {The value is \k@full@AvogadroNumeric}\end{mdframed}
+% \makeatother
+%
\makeatletter
% \StopEventually{}
%
@@ -2527,6 +5490,8 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@short@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassElectron| is the mass of an electron in SI units with
% reduced precision.
% Source: CODATA~2018
@@ -2535,7 +5500,7 @@
\DeclareRobustCommand{\k@SI@short@MassElectron}{%
\ensuremath{%
9.11%
-\times 10^{-34}\kg}}
+\times 10^{-31}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -2546,6 +5511,8 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassElectron| is the mass of an electron in SI units with full
% precision.
% Source: CODATA~2018
@@ -2557,7 +5524,7 @@
980\expandafter\physconst@decimalsseparator%
087\expandafter\physconst@decimalsseparator%
382%
-\times 10^{-34}\kg}}
+\times 10^{-31}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -2568,6 +5535,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassElectron| is the mass of an electron in cgs units with
% reduced precision.
% Source: CODATA~2018
@@ -2576,7 +5545,7 @@
\DeclareRobustCommand{\k@cgs@short@MassElectron}{%
\ensuremath{%
9.11%
-\times 10^{-31}\gm}}
+\times 10^{-28}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -2587,6 +5556,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassElectron| is the mass of an electron in cgs units with full
% precision.
% Source: CODATA~2018
@@ -2598,7 +5569,7 @@
980\expandafter\physconst@decimalsseparator%
087\expandafter\physconst@decimalsseparator%
382%
-\times 10^{-31}\gm}}
+\times 10^{-28}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -2609,6 +5580,8 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@short@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassElectron| is the mass of an electron in eV with reduced
% precision.
% Source: CODATA~2018
@@ -2616,8 +5589,8 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@short@MassElectron}{%
\ensuremath{%
-5.69%
-\times 10^{-19}\eV\,c^{-2}}}
+5.11%
+\times 10^{5}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -2628,6 +5601,8 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@full@MassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassElectron| is the mass of an electron in eV with full
% precision.
% Source: CODATA~2018
@@ -2635,11 +5610,11 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@full@MassElectron}{%
\ensuremath{%
-5.685\expandafter\physconst@decimalsseparator%
-378\expandafter\physconst@decimalsseparator%
-187\expandafter\physconst@decimalsseparator%
-448%
-\times 10^{-19}\eV\,c^{-2}}}
+5.109\expandafter\physconst@decimalsseparator%
+763\expandafter\physconst@decimalsseparator%
+089\expandafter\physconst@decimalsseparator%
+046%
+\times 10^{5}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -2650,6 +5625,8 @@
%<*package>
%\fi
% \begin{macro}{\kMassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\kMassElectron| is the mass of an electron.
%
% \begin{macrocode}
@@ -2680,6 +5657,8 @@
%<*package>
%\fi
% \begin{macro}{\keVMassElectron}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\keVMassElectron| is the mass of an electron.
%
% \begin{macrocode}
@@ -2699,7 +5678,183 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassElectronNumeric| is the mass of an electron in SI units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@MassElectronNumeric}{%
+\ensuremath{%
+9.11e-31}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassElectronNumeric| is the mass of an electron in SI units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@MassElectronNumeric}{%
+\ensuremath{%
+9.108980087382e-31}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassElectronNumeric| is the mass of an electron in cgs units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@MassElectronNumeric}{%
+\ensuremath{%
+9.11e-28}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassElectronNumeric| is the mass of an electron in cgs units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@MassElectronNumeric}{%
+\ensuremath{%
+9.108980087382e-28}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassElectronNumeric| is the mass of an electron in eV with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@MassElectronNumeric}{%
+\ensuremath{%
+5.11e+05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@MassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassElectronNumeric| is the mass of an electron in eV with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@MassElectronNumeric}{%
+\ensuremath{%
+5.109763089046e+05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\kMassElectronNumeric| is the mass of an electron.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassElectronNumeric}{%
+\k@SI@short@MassElectronNumeric}
+\else
+\DeclareRobustCommand {\kMassElectronNumeric}{%
+\k@SI@full@MassElectronNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassElectronNumeric}{%
+\k@cgs@short@MassElectronNumeric}
+\else
+\DeclareRobustCommand {\kMassElectronNumeric}{%
+\k@cgs@full@MassElectronNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVMassElectronNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\keVMassElectronNumeric| is the mass of an electron.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVMassElectronNumeric}{%
+\k@eV@short@MassElectronNumeric}
+\else
+\DeclareRobustCommand {\keVMassElectronNumeric}{%
+\k@eV@full@MassElectronNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassProton| is the mass of a proton in SI units with reduced
% precision.
% Source: CODATA~2018
@@ -2708,7 +5863,7 @@
\DeclareRobustCommand{\k@SI@short@MassProton}{%
\ensuremath{%
1.67%
-\times 10^{-30}\kg}}
+\times 10^{-27}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -2719,6 +5874,8 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassProton| is the mass of a proton in SI units with full
% precision.
% Source: CODATA~2018
@@ -2730,7 +5887,7 @@
547\expandafter\physconst@decimalsseparator%
813\expandafter\physconst@decimalsseparator%
969%
-\times 10^{-30}\kg}}
+\times 10^{-27}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -2741,6 +5898,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassProton| is the mass of a proton in cgs units with reduced
% precision.
% Source: CODATA~2018
@@ -2749,7 +5908,7 @@
\DeclareRobustCommand{\k@cgs@short@MassProton}{%
\ensuremath{%
1.67%
-\times 10^{-27}\gm}}
+\times 10^{-24}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -2760,6 +5919,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassProton| is the mass of a proton in cgs units with full
% precision.
% Source: CODATA~2018
@@ -2771,7 +5932,7 @@
547\expandafter\physconst@decimalsseparator%
813\expandafter\physconst@decimalsseparator%
969%
-\times 10^{-27}\gm}}
+\times 10^{-24}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -2782,14 +5943,16 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@short@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassProton| is the mass of a proton in eV with reduced precision.
% Source: CODATA~2018
%
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@short@MassProton}{%
\ensuremath{%
-1.04%
-\times 10^{-15}\eV\,c^{-2}}}
+9.38%
+\times 10^{8}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -2800,17 +5963,19 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@full@MassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassProton| is the mass of a proton in eV with full precision.
% Source: CODATA~2018
%
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@full@MassProton}{%
\ensuremath{%
-1.043\expandafter\physconst@decimalsseparator%
-922\expandafter\physconst@decimalsseparator%
-235\expandafter\physconst@decimalsseparator%
-836%
-\times 10^{-15}\eV\,c^{-2}}}
+9.382\expandafter\physconst@decimalsseparator%
+305\expandafter\physconst@decimalsseparator%
+156\expandafter\physconst@decimalsseparator%
+558%
+\times 10^{8}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -2821,6 +5986,8 @@
%<*package>
%\fi
% \begin{macro}{\kMassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\kMassProton| is the mass of a proton.
%
% \begin{macrocode}
@@ -2851,6 +6018,8 @@
%<*package>
%\fi
% \begin{macro}{\keVMassProton}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\keVMassProton| is the mass of a proton.
%
% \begin{macrocode}
@@ -2870,7 +6039,181 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassProtonNumeric| is the mass of a proton in SI units with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@MassProtonNumeric}{%
+\ensuremath{%
+1.67e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassProtonNumeric| is the mass of a proton in SI units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@MassProtonNumeric}{%
+\ensuremath{%
+1.672547813969e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassProtonNumeric| is the mass of a proton in cgs units with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@MassProtonNumeric}{%
+\ensuremath{%
+1.67e-24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassProtonNumeric| is the mass of a proton in cgs units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@MassProtonNumeric}{%
+\ensuremath{%
+1.672547813969e-24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassProtonNumeric| is the mass of a proton in eV with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@MassProtonNumeric}{%
+\ensuremath{%
+9.38e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@MassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassProtonNumeric| is the mass of a proton in eV with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@MassProtonNumeric}{%
+\ensuremath{%
+9.382305156558e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\kMassProtonNumeric| is the mass of a proton.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassProtonNumeric}{%
+\k@SI@short@MassProtonNumeric}
+\else
+\DeclareRobustCommand {\kMassProtonNumeric}{%
+\k@SI@full@MassProtonNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassProtonNumeric}{%
+\k@cgs@short@MassProtonNumeric}
+\else
+\DeclareRobustCommand {\kMassProtonNumeric}{%
+\k@cgs@full@MassProtonNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVMassProtonNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\keVMassProtonNumeric| is the mass of a proton.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVMassProtonNumeric}{%
+\k@eV@short@MassProtonNumeric}
+\else
+\DeclareRobustCommand {\keVMassProtonNumeric}{%
+\k@eV@full@MassProtonNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassHydrogen| is the mass of a neutral hydrogen atom in SI units
% with reduced precision.
% Source: CODATA~2018
@@ -2879,7 +6222,7 @@
\DeclareRobustCommand{\k@SI@short@MassHydrogen}{%
\ensuremath{%
1.67%
-\times 10^{-30}\kg}}
+\times 10^{-27}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -2890,6 +6233,8 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassHydrogen| is the mass of a neutral hydrogen atom in SI units
% with full precision.
% Source: CODATA~2018
@@ -2901,7 +6246,7 @@
458\expandafter\physconst@decimalsseparator%
687\expandafter\physconst@decimalsseparator%
724%
-\times 10^{-30}\kg}}
+\times 10^{-27}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -2912,6 +6257,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassHydrogen| is the mass of a neutral hydrogen atom in cgs
% units with reduced precision.
% Source: CODATA~2018
@@ -2920,7 +6267,7 @@
\DeclareRobustCommand{\k@cgs@short@MassHydrogen}{%
\ensuremath{%
1.67%
-\times 10^{-27}\gm}}
+\times 10^{-24}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -2931,6 +6278,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassHydrogen| is the mass of a neutral hydrogen atom in cgs
% units with full precision.
% Source: CODATA~2018
@@ -2942,7 +6291,7 @@
458\expandafter\physconst@decimalsseparator%
687\expandafter\physconst@decimalsseparator%
724%
-\times 10^{-27}\gm}}
+\times 10^{-24}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -2953,6 +6302,8 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@short@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassHydrogen| is the mass of a neutral hydrogen atom in eV with
% reduced precision.
% Source: CODATA~2018
@@ -2960,8 +6311,8 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@short@MassHydrogen}{%
\ensuremath{%
-1.04%
-\times 10^{-15}\eV\,c^{-2}}}
+9.39%
+\times 10^{8}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -2972,6 +6323,8 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@full@MassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassHydrogen| is the mass of a neutral hydrogen atom in eV with
% full precision.
% Source: CODATA~2018
@@ -2979,11 +6332,11 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@full@MassHydrogen}{%
\ensuremath{%
-1.044\expandafter\physconst@decimalsseparator%
-490\expandafter\physconst@decimalsseparator%
-758\expandafter\physconst@decimalsseparator%
-517%
-\times 10^{-15}\eV\,c^{-2}}}
+9.387\expandafter\physconst@decimalsseparator%
+414\expandafter\physconst@decimalsseparator%
+783\expandafter\physconst@decimalsseparator%
+596%
+\times 10^{8}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -2994,6 +6347,8 @@
%<*package>
%\fi
% \begin{macro}{\kMassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\kMassHydrogen| is the mass of a neutral hydrogen atom.
%
% \begin{macrocode}
@@ -3024,6 +6379,8 @@
%<*package>
%\fi
% \begin{macro}{\keVMassHydrogen}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\keVMassHydrogen| is the mass of a neutral hydrogen atom.
%
% \begin{macrocode}
@@ -3043,6 +6400,180 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassHydrogenNumeric| is the mass of a neutral hydrogen atom in SI units
+% with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@MassHydrogenNumeric}{%
+\ensuremath{%
+1.67e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassHydrogenNumeric| is the mass of a neutral hydrogen atom in SI units
+% with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@MassHydrogenNumeric}{%
+\ensuremath{%
+1.673458687724e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassHydrogenNumeric| is the mass of a neutral hydrogen atom in cgs
+% units with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@MassHydrogenNumeric}{%
+\ensuremath{%
+1.67e-24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassHydrogenNumeric| is the mass of a neutral hydrogen atom in cgs
+% units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@MassHydrogenNumeric}{%
+\ensuremath{%
+1.673458687724e-24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassHydrogenNumeric| is the mass of a neutral hydrogen atom in eV with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@MassHydrogenNumeric}{%
+\ensuremath{%
+9.39e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@MassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassHydrogenNumeric| is the mass of a neutral hydrogen atom in eV with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@MassHydrogenNumeric}{%
+\ensuremath{%
+9.387414783596e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\kMassHydrogenNumeric| is the mass of a neutral hydrogen atom.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassHydrogenNumeric}{%
+\k@SI@short@MassHydrogenNumeric}
+\else
+\DeclareRobustCommand {\kMassHydrogenNumeric}{%
+\k@SI@full@MassHydrogenNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassHydrogenNumeric}{%
+\k@cgs@short@MassHydrogenNumeric}
+\else
+\DeclareRobustCommand {\kMassHydrogenNumeric}{%
+\k@cgs@full@MassHydrogenNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVMassHydrogenNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\keVMassHydrogenNumeric| is the mass of a neutral hydrogen atom.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVMassHydrogenNumeric}{%
+\k@eV@short@MassHydrogenNumeric}
+\else
+\DeclareRobustCommand {\keVMassHydrogenNumeric}{%
+\k@eV@full@MassHydrogenNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@MassSun}
% |\k@SI@short@MassSun| is the mass of the Sun in SI units with reduced
% precision.
@@ -3151,7 +6682,344 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@MassSunNumeric}
+% |\k@SI@short@MassSunNumeric| is the mass of the Sun in SI units with reduced
+% precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@MassSunNumeric}{%
+\ensuremath{%
+1.99e+30}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@MassSunNumeric}
+% |\k@SI@full@MassSunNumeric| is the mass of the Sun in SI units with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@MassSunNumeric}{%
+\ensuremath{%
+1.9884099e+30}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@MassSunNumeric}
+% |\k@cgs@short@MassSunNumeric| is the mass of the Sun in cgs units with reduced
+% precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@MassSunNumeric}{%
+\ensuremath{%
+1.99e+33}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@MassSunNumeric}
+% |\k@cgs@full@MassSunNumeric| is the mass of the Sun in cgs units with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@MassSunNumeric}{%
+\ensuremath{%
+1.9884099e+33}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassSunNumeric}
+% |\kMassSunNumeric| is the mass of the Sun.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassSunNumeric}{%
+\k@SI@short@MassSunNumeric}
+\else
+\DeclareRobustCommand {\kMassSunNumeric}{%
+\k@SI@full@MassSunNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassSunNumeric}{%
+\k@cgs@short@MassSunNumeric}
+\else
+\DeclareRobustCommand {\kMassSunNumeric}{%
+\k@cgs@full@MassSunNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@MassEarth}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@short@MassEarth| is the mass of the Earth with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@MassEarth}{%
+\ensuremath{%
+5.97%
+\times 10^{24}\kg}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@MassEarth}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@full@MassEarth| is the mass of the Earth with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@MassEarth}{%
+\ensuremath{%
+5.972\expandafter\physconst@decimalsseparator%
+168%
+\times 10^{24}\kg}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassEarth}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\kMassEarth| is the mass of the Earth.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassEarth}{%
+\k@short@MassEarth}
+\else
+\DeclareRobustCommand {\kMassEarth}{%
+\k@full@MassEarth}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@MassEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@short@MassEarthNumeric| is the mass of the Earth with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@MassEarthNumeric}{%
+\ensuremath{%
+5.97e+24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@MassEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\k@full@MassEarthNumeric| is the mass of the Earth with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@MassEarthNumeric}{%
+\ensuremath{%
+5.972168e+24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Earth}
+% |\kMassEarthNumeric| is the mass of the Earth.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassEarthNumeric}{%
+\k@short@MassEarthNumeric}
+\else
+\DeclareRobustCommand {\kMassEarthNumeric}{%
+\k@full@MassEarthNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@MassJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@short@MassJupiter| is the mass of Jupiter with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@MassJupiter}{%
+\ensuremath{%
+1.90%
+\times 10^{27}\kg}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@MassJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@full@MassJupiter| is the mass of Jupiter with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@MassJupiter}{%
+\ensuremath{%
+1.898\expandafter\physconst@decimalsseparator%
+124\expandafter\physconst@decimalsseparator%
+6%
+\times 10^{27}\kg}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\kMassJupiter| is the mass of Jupiter.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassJupiter}{%
+\k@short@MassJupiter}
+\else
+\DeclareRobustCommand {\kMassJupiter}{%
+\k@full@MassJupiter}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@MassJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@short@MassJupiterNumeric| is the mass of Jupiter with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@MassJupiterNumeric}{%
+\ensuremath{%
+1.90e+27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@MassJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\k@full@MassJupiterNumeric| is the mass of Jupiter with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@MassJupiterNumeric}{%
+\ensuremath{%
+1.8981246e+27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add mass of Jupiter}
+% |\kMassJupiterNumeric| is the mass of Jupiter.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassJupiterNumeric}{%
+\k@short@MassJupiterNumeric}
+\else
+\DeclareRobustCommand {\kMassJupiterNumeric}{%
+\k@full@MassJupiterNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@short@MassAMU| is the mass of an atomic mass unit in SI units with
% reduced precision.
% Source: CODATA~2018
@@ -3160,7 +7028,7 @@
\DeclareRobustCommand{\k@SI@short@MassAMU}{%
\ensuremath{%
1.66%
-\times 10^{-30}\kg}}
+\times 10^{-27}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -3171,6 +7039,8 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@SI@full@MassAMU| is the mass of an atomic mass unit in SI units with full
% precision.
% Source: CODATA~2018
@@ -3182,7 +7052,7 @@
465\expandafter\physconst@decimalsseparator%
492\expandafter\physconst@decimalsseparator%
239%
-\times 10^{-30}\kg}}
+\times 10^{-27}\kg}}
% \end{macrocode}
% \end{macro}
%
@@ -3193,6 +7063,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@short@MassAMU| is the mass of an atomic mass unit in cgs units with
% reduced precision.
% Source: CODATA~2018
@@ -3201,7 +7073,7 @@
\DeclareRobustCommand{\k@cgs@short@MassAMU}{%
\ensuremath{%
1.66%
-\times 10^{-27}\gm}}
+\times 10^{-24}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -3212,6 +7084,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@cgs@full@MassAMU| is the mass of an atomic mass unit in cgs units with
% full precision.
% Source: CODATA~2018
@@ -3223,7 +7097,7 @@
465\expandafter\physconst@decimalsseparator%
492\expandafter\physconst@decimalsseparator%
239%
-\times 10^{-27}\gm}}
+\times 10^{-24}\gm}}
% \end{macrocode}
% \end{macro}
%
@@ -3234,6 +7108,8 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@short@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@short@MassAMU| is the mass of an atomic mass unit in eV with reduced
% precision.
% Source: CODATA~2018
@@ -3241,8 +7117,8 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@short@MassAMU}{%
\ensuremath{%
-1.04%
-\times 10^{-15}\eV\,c^{-2}}}
+9.31%
+\times 10^{8}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -3253,6 +7129,8 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@full@MassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\k@eV@full@MassAMU| is the mass of an atomic mass unit in eV with full
% precision.
% Source: CODATA~2018
@@ -3260,11 +7138,11 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@eV@full@MassAMU}{%
\ensuremath{%
-1.036\expandafter\physconst@decimalsseparator%
-381\expandafter\physconst@decimalsseparator%
-043\expandafter\physconst@decimalsseparator%
-764%
-\times 10^{-15}\eV\,c^{-2}}}
+9.314\expandafter\physconst@decimalsseparator%
+528\expandafter\physconst@decimalsseparator%
+302\expandafter\physconst@decimalsseparator%
+276%
+\times 10^{8}\eV\,c^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -3275,6 +7153,8 @@
%<*package>
%\fi
% \begin{macro}{\kMassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\kMassAMU| is the mass of an atomic mass unit.
%
% \begin{macrocode}
@@ -3305,6 +7185,8 @@
%<*package>
%\fi
% \begin{macro}{\keVMassAMU}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
% |\keVMassAMU| is the mass of an atomic mass unit.
%
% \begin{macrocode}
@@ -3321,6 +7203,180 @@
%\iffalse
%</package>
%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@short@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@short@MassAMUNumeric| is the mass of an atomic mass unit in SI units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@MassAMUNumeric}{%
+\ensuremath{%
+1.66e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@SI@full@MassAMUNumeric| is the mass of an atomic mass unit in SI units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@MassAMUNumeric}{%
+\ensuremath{%
+1.660465492239e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@short@MassAMUNumeric| is the mass of an atomic mass unit in cgs units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@MassAMUNumeric}{%
+\ensuremath{%
+1.66e-24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@cgs@full@MassAMUNumeric| is the mass of an atomic mass unit in cgs units with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@MassAMUNumeric}{%
+\ensuremath{%
+1.660465492239e-24}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@short@MassAMUNumeric| is the mass of an atomic mass unit in eV with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@MassAMUNumeric}{%
+\ensuremath{%
+9.31e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@MassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\k@eV@full@MassAMUNumeric| is the mass of an atomic mass unit in eV with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@MassAMUNumeric}{%
+\ensuremath{%
+9.314528302276e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kMassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\kMassAMUNumeric| is the mass of an atomic mass unit.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassAMUNumeric}{%
+\k@SI@short@MassAMUNumeric}
+\else
+\DeclareRobustCommand {\kMassAMUNumeric}{%
+\k@SI@full@MassAMUNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kMassAMUNumeric}{%
+\k@cgs@short@MassAMUNumeric}
+\else
+\DeclareRobustCommand {\kMassAMUNumeric}{%
+\k@cgs@full@MassAMUNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVMassAMUNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% \changes{v1.1.0}{2020/02/03}{Correct value in eV.}
+% |\keVMassAMUNumeric| is the mass of an atomic mass unit.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVMassAMUNumeric}{%
+\k@eV@short@MassAMUNumeric}
+\else
+\DeclareRobustCommand {\keVMassAMUNumeric}{%
+\k@eV@full@MassAMUNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
%
%\subsection{Charge}
%
@@ -3437,6 +7493,108 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@ChargeFundamentalNumeric}
+% |\k@SI@short@ChargeFundamentalNumeric| is the fundamental charge in SI units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@ChargeFundamentalNumeric}{%
+\ensuremath{%
+1.60e-19}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@ChargeFundamentalNumeric}
+% |\k@SI@full@ChargeFundamentalNumeric| is the fundamental charge in SI units with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@ChargeFundamentalNumeric}{%
+\ensuremath{%
+1.602176634e-19}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@ChargeFundamentalNumeric}
+% |\k@cgs@short@ChargeFundamentalNumeric| is the fundamental charge in cgs units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@ChargeFundamentalNumeric}{%
+\ensuremath{%
+4.80e-10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@ChargeFundamentalNumeric}
+% |\k@cgs@full@ChargeFundamentalNumeric| is the fundamental charge in cgs units with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@ChargeFundamentalNumeric}{%
+\ensuremath{%
+4.803204713e-10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kChargeFundamentalNumeric}
+% |\kChargeFundamentalNumeric| is the fundamental charge.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kChargeFundamentalNumeric}{%
+\k@SI@short@ChargeFundamentalNumeric}
+\else
+\DeclareRobustCommand {\kChargeFundamentalNumeric}{%
+\k@SI@full@ChargeFundamentalNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kChargeFundamentalNumeric}{%
+\k@cgs@short@ChargeFundamentalNumeric}
+\else
+\DeclareRobustCommand {\kChargeFundamentalNumeric}{%
+\k@cgs@full@ChargeFundamentalNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@ChargeElectron}
% |\k@SI@short@ChargeElectron| is the charge of an electron in SI units with
% reduced precision.
@@ -3547,6 +7705,108 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@ChargeElectronNumeric}
+% |\k@SI@short@ChargeElectronNumeric| is the charge of an electron in SI units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@ChargeElectronNumeric}{%
+\ensuremath{%
+-1.60e-19}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@ChargeElectronNumeric}
+% |\k@SI@full@ChargeElectronNumeric| is the charge of an electron in SI units with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@ChargeElectronNumeric}{%
+\ensuremath{%
+-1.602176634e-19}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@ChargeElectronNumeric}
+% |\k@cgs@short@ChargeElectronNumeric| is the charge of an electron in cgs units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@ChargeElectronNumeric}{%
+\ensuremath{%
+-4.80e-10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@ChargeElectronNumeric}
+% |\k@cgs@full@ChargeElectronNumeric| is the charge of an electron in cgs units with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@ChargeElectronNumeric}{%
+\ensuremath{%
+-4.803204713e-10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kChargeElectronNumeric}
+% |\kChargeElectronNumeric| is the charge of an electron.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kChargeElectronNumeric}{%
+\k@SI@short@ChargeElectronNumeric}
+\else
+\DeclareRobustCommand {\kChargeElectronNumeric}{%
+\k@SI@full@ChargeElectronNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kChargeElectronNumeric}{%
+\k@cgs@short@ChargeElectronNumeric}
+\else
+\DeclareRobustCommand {\kChargeElectronNumeric}{%
+\k@cgs@full@ChargeElectronNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@ChargeProton}
% |\k@SI@short@ChargeProton| is the charge of a proton in SI units with reduced
% precision.
@@ -3654,6 +7914,108 @@
%\iffalse
%</package>
%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@short@ChargeProtonNumeric}
+% |\k@SI@short@ChargeProtonNumeric| is the charge of a proton in SI units with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@ChargeProtonNumeric}{%
+\ensuremath{%
+1.60e-19}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@ChargeProtonNumeric}
+% |\k@SI@full@ChargeProtonNumeric| is the charge of a proton in SI units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@ChargeProtonNumeric}{%
+\ensuremath{%
+1.602176634e-19}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@ChargeProtonNumeric}
+% |\k@cgs@short@ChargeProtonNumeric| is the charge of a proton in cgs units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@ChargeProtonNumeric}{%
+\ensuremath{%
+4.80e-10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@ChargeProtonNumeric}
+% |\k@cgs@full@ChargeProtonNumeric| is the charge of a proton in cgs units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@ChargeProtonNumeric}{%
+\ensuremath{%
+4.803204713e-10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kChargeProtonNumeric}
+% |\kChargeProtonNumeric| is the charge of a proton.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kChargeProtonNumeric}{%
+\k@SI@short@ChargeProtonNumeric}
+\else
+\DeclareRobustCommand {\kChargeProtonNumeric}{%
+\k@SI@full@ChargeProtonNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kChargeProtonNumeric}{%
+\k@cgs@short@ChargeProtonNumeric}
+\else
+\DeclareRobustCommand {\kChargeProtonNumeric}{%
+\k@cgs@full@ChargeProtonNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
%
%\subsection{Distances and Lengths}
%
@@ -3669,7 +8031,7 @@
\DeclareRobustCommand{\k@SI@short@RadiusBohr}{%
\ensuremath{%
5.29%
-\times 10^{-8}\m}}
+\times 10^{-11}\m}}
% \end{macrocode}
% \end{macro}
%
@@ -3690,7 +8052,7 @@
5.292\expandafter\physconst@decimalsseparator%
006\expandafter\physconst@decimalsseparator%
59%
-\times 10^{-8}\m}}
+\times 10^{-11}\m}}
% \end{macrocode}
% \end{macro}
%
@@ -3709,7 +8071,7 @@
\DeclareRobustCommand{\k@cgs@short@RadiusBohr}{%
\ensuremath{%
5.29%
-\times 10^{-6}\cm}}
+\times 10^{-9}\cm}}
% \end{macrocode}
% \end{macro}
%
@@ -3730,7 +8092,7 @@
5.292\expandafter\physconst@decimalsseparator%
006\expandafter\physconst@decimalsseparator%
59%
-\times 10^{-6}\cm}}
+\times 10^{-9}\cm}}
% \end{macrocode}
% \end{macro}
%
@@ -3770,6 +8132,108 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@RadiusBohrNumeric}
+% |\k@SI@short@RadiusBohrNumeric| is Bohr radius of an atom in SI units with reduced
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@RadiusBohrNumeric}{%
+\ensuremath{%
+5.29e-11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@RadiusBohrNumeric}
+% |\k@SI@full@RadiusBohrNumeric| is Bohr radius of an atom in SI units with full
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@RadiusBohrNumeric}{%
+\ensuremath{%
+5.29200659e-11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@RadiusBohrNumeric}
+% |\k@cgs@short@RadiusBohrNumeric| is Bohr radius of an atom in cgs units with reduced
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@RadiusBohrNumeric}{%
+\ensuremath{%
+5.29e-09}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@RadiusBohrNumeric}
+% |\k@cgs@full@RadiusBohrNumeric| is Bohr radius of an atom in cgs units with full
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@RadiusBohrNumeric}{%
+\ensuremath{%
+5.29200659e-09}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRadiusBohrNumeric}
+% |\kRadiusBohrNumeric| is Bohr radius of an atom.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusBohrNumeric}{%
+\k@SI@short@RadiusBohrNumeric}
+\else
+\DeclareRobustCommand {\kRadiusBohrNumeric}{%
+\k@SI@full@RadiusBohrNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusBohrNumeric}{%
+\k@cgs@short@RadiusBohrNumeric}
+\else
+\DeclareRobustCommand {\kRadiusBohrNumeric}{%
+\k@cgs@full@RadiusBohrNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@AstronomicalUnit}
% |\k@SI@short@AstronomicalUnit| is the astronomical unit (the average distance
% between the Earth and the Sun) in SI units with reduced precision.
@@ -3881,6 +8345,109 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@AstronomicalUnitNumeric}
+% |\k@SI@short@AstronomicalUnitNumeric| is the astronomical unit (the average distance
+% between the Earth and the Sun) in SI units with reduced precision.
+% Source: IAU~Resolution~B2~2012
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@AstronomicalUnitNumeric}{%
+\ensuremath{%
+1.50e+11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@AstronomicalUnitNumeric}
+% |\k@SI@full@AstronomicalUnitNumeric| is the astronomical unit (the average distance
+% between the Earth and the Sun) in SI units with full precision.
+% Source: IAU~Resolution~B2~2012
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@AstronomicalUnitNumeric}{%
+\ensuremath{%
+1.495978707e+11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@AstronomicalUnitNumeric}
+% |\k@cgs@short@AstronomicalUnitNumeric| is the astronomical unit (the average
+% distance between the Earth and the Sun) in cgs units with reduced precision.
+% Source: IAU~Resolution~B2~2012
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@AstronomicalUnitNumeric}{%
+\ensuremath{%
+1.50e+13}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@AstronomicalUnitNumeric}
+% |\k@cgs@full@AstronomicalUnitNumeric| is the astronomical unit (the average distance
+% between the Earth and the Sun) in cgs units with full precision.
+% Source: IAU~Resolution~B2~2012
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@AstronomicalUnitNumeric}{%
+\ensuremath{%
+1.495978707e+13}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kAstronomicalUnitNumeric}
+% |\kAstronomicalUnitNumeric| is the astronomical unit (the average distance between
+% the Earth and the Sun).
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kAstronomicalUnitNumeric}{%
+\k@SI@short@AstronomicalUnitNumeric}
+\else
+\DeclareRobustCommand {\kAstronomicalUnitNumeric}{%
+\k@SI@full@AstronomicalUnitNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kAstronomicalUnitNumeric}{%
+\k@cgs@short@AstronomicalUnitNumeric}
+\else
+\DeclareRobustCommand {\kAstronomicalUnitNumeric}{%
+\k@cgs@full@AstronomicalUnitNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@Parsec}
% |\k@SI@short@Parsec| is the length of a parsec ($\frac{648000\au}{\pi}$) in
% SI units with reduced precision.
@@ -3991,6 +8558,108 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@ParsecNumeric}
+% |\k@SI@short@ParsecNumeric| is the length of a parsec ($\frac{648000\au}{\pi}$) in
+% SI units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@ParsecNumeric}{%
+\ensuremath{%
+3.09e+16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@ParsecNumeric}
+% |\k@SI@full@ParsecNumeric| is the length of a parsec ($\frac{648000\au}{\pi}$) in SI
+% units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@ParsecNumeric}{%
+\ensuremath{%
+3.085677581e+16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@ParsecNumeric}
+% |\k@cgs@short@ParsecNumeric| is the length of a parsec ($\frac{648000\au}{\pi}$) in
+% cgs units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@ParsecNumeric}{%
+\ensuremath{%
+3.09e+18}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@ParsecNumeric}
+% |\k@cgs@full@ParsecNumeric| is the length of a parsec ($\frac{648000\au}{\pi}$) in
+% cgs units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@ParsecNumeric}{%
+\ensuremath{%
+3.085677581e+18}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kParsecNumeric}
+% |\kParsecNumeric| is the length of a parsec ($\frac{648000\au}{\pi}$).
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kParsecNumeric}{%
+\k@SI@short@ParsecNumeric}
+\else
+\DeclareRobustCommand {\kParsecNumeric}{%
+\k@SI@full@ParsecNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kParsecNumeric}{%
+\k@cgs@short@ParsecNumeric}
+\else
+\DeclareRobustCommand {\kParsecNumeric}{%
+\k@cgs@full@ParsecNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@RadiusSun}
% |\k@SI@short@RadiusSun| is the mean radius of the Sun in SI units with
% reduced precision.
@@ -4094,6 +8763,342 @@
%\iffalse
%</package>
%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@short@RadiusSunNumeric}
+% |\k@SI@short@RadiusSunNumeric| is the mean radius of the Sun in SI units with
+% reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@RadiusSunNumeric}{%
+\ensuremath{%
+6.96e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@RadiusSunNumeric}
+% |\k@SI@full@RadiusSunNumeric| is the mean radius of the Sun in SI units with full
+% precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@RadiusSunNumeric}{%
+\ensuremath{%
+6.957e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@RadiusSunNumeric}
+% |\k@cgs@short@RadiusSunNumeric| is the mean radius of the Sun in cgs units with
+% reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@RadiusSunNumeric}{%
+\ensuremath{%
+6.96e+10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@RadiusSunNumeric}
+% |\k@cgs@full@RadiusSunNumeric| is the mean radius of the Sun in cgs units with full
+% precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@RadiusSunNumeric}{%
+\ensuremath{%
+6.957e+10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRadiusSunNumeric}
+% |\kRadiusSunNumeric| is the mean radius of the Sun.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusSunNumeric}{%
+\k@SI@short@RadiusSunNumeric}
+\else
+\DeclareRobustCommand {\kRadiusSunNumeric}{%
+\k@SI@full@RadiusSunNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusSunNumeric}{%
+\k@cgs@short@RadiusSunNumeric}
+\else
+\DeclareRobustCommand {\kRadiusSunNumeric}{%
+\k@cgs@full@RadiusSunNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@RadiusEarth}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@short@RadiusEarth| is the mean radius of the Earth with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@RadiusEarth}{%
+\ensuremath{%
+6.37%
+\times 10^{6}\m}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@RadiusEarth}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@full@RadiusEarth| is the mean radius of the Earth with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@RadiusEarth}{%
+\ensuremath{%
+6.371\expandafter\physconst@decimalsseparator%
+0%
+\times 10^{6}\m}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRadiusEarth}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\kRadiusEarth| is the mean radius of the Earth.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusEarth}{%
+\k@short@RadiusEarth}
+\else
+\DeclareRobustCommand {\kRadiusEarth}{%
+\k@full@RadiusEarth}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@RadiusEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@short@RadiusEarthNumeric| is the mean radius of the Earth with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@RadiusEarthNumeric}{%
+\ensuremath{%
+6.37e+06}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@RadiusEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\k@full@RadiusEarthNumeric| is the mean radius of the Earth with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@RadiusEarthNumeric}{%
+\ensuremath{%
+6.3710e+06}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRadiusEarthNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Earth}
+% |\kRadiusEarthNumeric| is the mean radius of the Earth.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusEarthNumeric}{%
+\k@short@RadiusEarthNumeric}
+\else
+\DeclareRobustCommand {\kRadiusEarthNumeric}{%
+\k@full@RadiusEarthNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@RadiusJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@short@RadiusJupiter| is the mean radius of Jupiter with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@RadiusJupiter}{%
+\ensuremath{%
+6.99%
+\times 10^{7}\m}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@RadiusJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@full@RadiusJupiter| is the mean radius of Jupiter with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@RadiusJupiter}{%
+\ensuremath{%
+6.991\expandafter\physconst@decimalsseparator%
+1%
+\times 10^{7}\m}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRadiusJupiter}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\kRadiusJupiter| is the mean radius of Jupiter.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusJupiter}{%
+\k@short@RadiusJupiter}
+\else
+\DeclareRobustCommand {\kRadiusJupiter}{%
+\k@full@RadiusJupiter}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@RadiusJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@short@RadiusJupiterNumeric| is the mean radius of Jupiter with reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@RadiusJupiterNumeric}{%
+\ensuremath{%
+6.99e+07}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@RadiusJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\k@full@RadiusJupiterNumeric| is the mean radius of Jupiter with full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@RadiusJupiterNumeric}{%
+\ensuremath{%
+6.9911e+07}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRadiusJupiterNumeric}
+% \changes{v1.1.0}{2020/02/03}{Add radius of Jupiter}
+% |\kRadiusJupiterNumeric| is the mean radius of Jupiter.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiusJupiterNumeric}{%
+\k@short@RadiusJupiterNumeric}
+\else
+\DeclareRobustCommand {\kRadiusJupiterNumeric}{%
+\k@full@RadiusJupiterNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
%
%\subsection{Energy, Power, and Luminosity}
%
@@ -4109,7 +9114,7 @@
\DeclareRobustCommand{\k@SI@short@Rydberg}{%
\ensuremath{%
2.18%
-\times 10^{-21}\Joule}}
+\times 10^{-18}\Joule}}
% \end{macrocode}
% \end{macro}
%
@@ -4130,7 +9135,7 @@
2.179\expandafter\physconst@decimalsseparator%
775\expandafter\physconst@decimalsseparator%
77%
-\times 10^{-21}\Joule}}
+\times 10^{-18}\Joule}}
% \end{macrocode}
% \end{macro}
%
@@ -4149,7 +9154,7 @@
\DeclareRobustCommand{\k@cgs@short@Rydberg}{%
\ensuremath{%
2.18%
-\times 10^{-14}\erg}}
+\times 10^{-11}\erg}}
% \end{macrocode}
% \end{macro}
%
@@ -4170,7 +9175,7 @@
2.179\expandafter\physconst@decimalsseparator%
775\expandafter\physconst@decimalsseparator%
77%
-\times 10^{-14}\erg}}
+\times 10^{-11}\erg}}
% \end{macrocode}
% \end{macro}
%
@@ -4189,7 +9194,7 @@
\DeclareRobustCommand{\k@eV@short@Rydberg}{%
\ensuremath{%
1.36%
-\times 10^{-2}\eV}}
+\times 10^{1}\eV}}
% \end{macrocode}
% \end{macro}
%
@@ -4210,7 +9215,7 @@
1.360\expandafter\physconst@decimalsseparator%
509\expandafter\physconst@decimalsseparator%
03%
-\times 10^{-2}\eV}}
+\times 10^{1}\eV}}
% \end{macrocode}
% \end{macro}
%
@@ -4270,6 +9275,164 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@RydbergNumeric}
+% |\k@SI@short@RydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen)
+% in SI units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@RydbergNumeric}{%
+\ensuremath{%
+2.18e-18}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@RydbergNumeric}
+% |\k@SI@full@RydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen)
+% in SI units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@RydbergNumeric}{%
+\ensuremath{%
+2.17977577e-18}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@RydbergNumeric}
+% |\k@cgs@short@RydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen)
+% in cgs units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@RydbergNumeric}{%
+\ensuremath{%
+2.18e-11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@RydbergNumeric}
+% |\k@cgs@full@RydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen)
+% in cgs units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@RydbergNumeric}{%
+\ensuremath{%
+2.17977577e-11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@RydbergNumeric}
+% |\k@eV@short@RydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen)
+% in eV with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@RydbergNumeric}{%
+\ensuremath{%
+1.36e+01}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@RydbergNumeric}
+% |\k@eV@full@RydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen)
+% in eV with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@RydbergNumeric}{%
+\ensuremath{%
+1.36050903e+01}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRydbergNumeric}
+% |\kRydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen).
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRydbergNumeric}{%
+\k@SI@short@RydbergNumeric}
+\else
+\DeclareRobustCommand {\kRydbergNumeric}{%
+\k@SI@full@RydbergNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRydbergNumeric}{%
+\k@cgs@short@RydbergNumeric}
+\else
+\DeclareRobustCommand {\kRydbergNumeric}{%
+\k@cgs@full@RydbergNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVRydbergNumeric}
+% |\keVRydbergNumeric| is the Rydberg energy (the binding energy of Hydrogen).
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVRydbergNumeric}{%
+\k@eV@short@RydbergNumeric}
+\else
+\DeclareRobustCommand {\keVRydbergNumeric}{%
+\k@eV@full@RydbergNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@LuminositySun}
% |\k@SI@short@LuminositySun| is the luminosity of the Sun in SI units with
% reduced precision.
@@ -4373,6 +9536,108 @@
%\iffalse
%</package>
%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@short@LuminositySunNumeric}
+% |\k@SI@short@LuminositySunNumeric| is the luminosity of the Sun in SI units with
+% reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@LuminositySunNumeric}{%
+\ensuremath{%
+3.83e+26}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@LuminositySunNumeric}
+% |\k@SI@full@LuminositySunNumeric| is the luminosity of the Sun in SI units with full
+% precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@LuminositySunNumeric}{%
+\ensuremath{%
+3.828e+26}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@LuminositySunNumeric}
+% |\k@cgs@short@LuminositySunNumeric| is the luminosity of the Sun in cgs units with
+% reduced precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@LuminositySunNumeric}{%
+\ensuremath{%
+3.83e+33}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@LuminositySunNumeric}
+% |\k@cgs@full@LuminositySunNumeric| is the luminosity of the Sun in cgs units with
+% full precision.
+% Source: IAU~Resolution~B3~2015
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@LuminositySunNumeric}{%
+\ensuremath{%
+3.828e+33}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kLuminositySunNumeric}
+% |\kLuminositySunNumeric| is the luminosity of the Sun.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kLuminositySunNumeric}{%
+\k@SI@short@LuminositySunNumeric}
+\else
+\DeclareRobustCommand {\kLuminositySunNumeric}{%
+\k@SI@full@LuminositySunNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kLuminositySunNumeric}{%
+\k@cgs@short@LuminositySunNumeric}
+\else
+\DeclareRobustCommand {\kLuminositySunNumeric}{%
+\k@cgs@full@LuminositySunNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
%
%\subsection{Pressure}
%
@@ -4380,6 +9645,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@short@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@short@PressureAtmosphere| is the standard atmospheric pressure in SI
% units with reduced precision.
% Source: CODATA~2018
@@ -4399,6 +9665,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@full@PressureAtmosphere| is the standard atmospheric pressure in SI
% units with full precision.
% Source: CODATA~2018
@@ -4419,6 +9686,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@short@PressureAtmosphere| is the standard atmospheric pressure in cgs
% units with reduced precision.
% Source: CODATA~2018
@@ -4426,7 +9694,7 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@cgs@short@PressureAtmosphere}{%
\ensuremath{%
-1.01\barP[m]}}
+1.01\barP}}
% \end{macrocode}
% \end{macro}
%
@@ -4437,6 +9705,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@PressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@full@PressureAtmosphere| is the standard atmospheric pressure in cgs
% units with full precision.
% Source: CODATA~2018
@@ -4445,7 +9714,7 @@
\DeclareRobustCommand{\k@cgs@full@PressureAtmosphere}{%
\ensuremath{%
1.013\expandafter\physconst@decimalsseparator%
-25\barP[m]}}
+25\barP}}
% \end{macrocode}
% \end{macro}
%
@@ -4456,6 +9725,7 @@
%<*package>
%\fi
% \begin{macro}{\kPressureAtmosphere}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\kPressureAtmosphere| is the standard atmospheric pressure.
%
% \begin{macrocode}
@@ -4485,7 +9755,115 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@short@PressureAtmosphereNumeric| is the standard atmospheric pressure in SI
+% units with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@PressureAtmosphereNumeric}{%
+\ensuremath{%
+1.01e+05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@full@PressureAtmosphereNumeric| is the standard atmospheric pressure in SI
+% units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@PressureAtmosphereNumeric}{%
+\ensuremath{%
+1.01325e+05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@short@PressureAtmosphereNumeric| is the standard atmospheric pressure in cgs
+% units with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@PressureAtmosphereNumeric}{%
+\ensuremath{%
+1.01e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@PressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@full@PressureAtmosphereNumeric| is the standard atmospheric pressure in cgs
+% units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@PressureAtmosphereNumeric}{%
+\ensuremath{%
+1.01325e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kPressureAtmosphereNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\kPressureAtmosphereNumeric| is the standard atmospheric pressure.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPressureAtmosphereNumeric}{%
+\k@SI@short@PressureAtmosphereNumeric}
+\else
+\DeclareRobustCommand {\kPressureAtmosphereNumeric}{%
+\k@SI@full@PressureAtmosphereNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPressureAtmosphereNumeric}{%
+\k@cgs@short@PressureAtmosphereNumeric}
+\else
+\DeclareRobustCommand {\kPressureAtmosphereNumeric}{%
+\k@cgs@full@PressureAtmosphereNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@short@PressureStandard| is the standard atmospheric pressure in SI
% units with reduced precision.
% Source: CODATA~2018
@@ -4505,6 +9883,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@SI@full@PressureStandard| is the standard atmospheric pressure in SI
% units with full precision.
% Source: CODATA~2018
@@ -4525,6 +9904,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@short@PressureStandard| is the standard atmospheric pressure in cgs
% units with reduced precision.
% Source: CODATA~2018
@@ -4532,7 +9912,7 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@cgs@short@PressureStandard}{%
\ensuremath{%
-1.00\barP[m]}}
+1.00\barP}}
% \end{macrocode}
% \end{macro}
%
@@ -4543,6 +9923,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@PressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\k@cgs@full@PressureStandard| is the standard atmospheric pressure in cgs
% units with full precision.
% Source: CODATA~2018
@@ -4551,7 +9932,7 @@
\DeclareRobustCommand{\k@cgs@full@PressureStandard}{%
\ensuremath{%
1.000\expandafter\physconst@decimalsseparator%
-00\barP[m]}}
+00\barP}}
% \end{macrocode}
% \end{macro}
%
@@ -4562,6 +9943,7 @@
%<*package>
%\fi
% \begin{macro}{\kPressureStandard}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
% |\kPressureStandard| is the standard atmospheric pressure.
%
% \begin{macrocode}
@@ -4588,6 +9970,113 @@
%\iffalse
%</package>
%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@short@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@short@PressureStandardNumeric| is the standard atmospheric pressure in SI
+% units with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@PressureStandardNumeric}{%
+\ensuremath{%
+1.00e+05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@SI@full@PressureStandardNumeric| is the standard atmospheric pressure in SI
+% units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@PressureStandardNumeric}{%
+\ensuremath{%
+1.00000e+05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@short@PressureStandardNumeric| is the standard atmospheric pressure in cgs
+% units with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@PressureStandardNumeric}{%
+\ensuremath{%
+1.00e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@PressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\k@cgs@full@PressureStandardNumeric| is the standard atmospheric pressure in cgs
+% units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@PressureStandardNumeric}{%
+\ensuremath{%
+1.00000e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kPressureStandardNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix prefix of units.}
+% |\kPressureStandardNumeric| is the standard atmospheric pressure.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPressureStandardNumeric}{%
+\k@SI@short@PressureStandardNumeric}
+\else
+\DeclareRobustCommand {\kPressureStandardNumeric}{%
+\k@SI@full@PressureStandardNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPressureStandardNumeric}{%
+\k@cgs@short@PressureStandardNumeric}
+\else
+\DeclareRobustCommand {\kPressureStandardNumeric}{%
+\k@cgs@full@PressureStandardNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
%
%\subsection{Velocity, Speed and Acceleration}
%
@@ -4703,7 +10192,110 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@SpeedLightNumeric}
+% |\k@SI@short@SpeedLightNumeric| is the speed of light in SI units with reduced
+% precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@SpeedLightNumeric}{%
+\ensuremath{%
+3.00e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@SpeedLightNumeric}
+% |\k@SI@full@SpeedLightNumeric| is the speed of light in SI units with full precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@SpeedLightNumeric}{%
+\ensuremath{%
+2.99792458e+08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@SpeedLightNumeric}
+% |\k@cgs@short@SpeedLightNumeric| is the speed of light in cgs units with reduced
+% precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@SpeedLightNumeric}{%
+\ensuremath{%
+3.00e+10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@SpeedLightNumeric}
+% |\k@cgs@full@SpeedLightNumeric| is the speed of light in cgs units with full
+% precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@SpeedLightNumeric}{%
+\ensuremath{%
+2.99792458e+10}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kSpeedLightNumeric}
+% |\kSpeedLightNumeric| is the speed of light.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kSpeedLightNumeric}{%
+\k@SI@short@SpeedLightNumeric}
+\else
+\DeclareRobustCommand {\kSpeedLightNumeric}{%
+\k@SI@full@SpeedLightNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kSpeedLightNumeric}{%
+\k@cgs@short@SpeedLightNumeric}
+\else
+\DeclareRobustCommand {\kSpeedLightNumeric}{%
+\k@cgs@full@SpeedLightNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@SI@short@AccelGravity| is the accelertion due to gravity at the surface
% of the Earth in SI units with reduced precision.
% Source: CODATA 2018
@@ -4711,8 +10303,7 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@SI@short@AccelGravity}{%
\ensuremath{%
-6.67%
-\times 10^{-11}\N\kg^{-2}\m^2}}
+9.81\m\Sec^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -4723,6 +10314,8 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@SI@full@AccelGravity| is the accelertion due to gravity at the surface of
% the Earth in SI units with full precision.
% Source: CODATA 2018
@@ -4730,9 +10323,8 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@SI@full@AccelGravity}{%
\ensuremath{%
-6.674\expandafter\physconst@decimalsseparator%
-30%
-\times 10^{-11}\N\kg^{-2}\m^2}}
+9.806\expandafter\physconst@decimalsseparator%
+65\m\Sec^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -4743,6 +10335,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@cgs@short@AccelGravity| is the accelertion due to gravity at the surface
% of the Earth in cgs units with reduced precision.
% Source: CODATA 2018
@@ -4750,8 +10344,8 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@cgs@short@AccelGravity}{%
\ensuremath{%
-6.67%
-\times 10^{-8}\dyne\gm^{-2}\cm^2}}
+9.81%
+\times 10^{2}\cm\Sec^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -4762,6 +10356,8 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@AccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\k@cgs@full@AccelGravity| is the accelertion due to gravity at the surface
% of the Earth in cgs units with full precision.
% Source: CODATA 2018
@@ -4769,9 +10365,9 @@
% \begin{macrocode}
\DeclareRobustCommand{\k@cgs@full@AccelGravity}{%
\ensuremath{%
-6.674\expandafter\physconst@decimalsseparator%
-30%
-\times 10^{-8}\dyne\gm^{-2}\cm^2}}
+9.806\expandafter\physconst@decimalsseparator%
+65%
+\times 10^{2}\cm\Sec^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -4782,6 +10378,8 @@
%<*package>
%\fi
% \begin{macro}{\kAccelGravity}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
% |\kAccelGravity| is the accelertion due to gravity at the surface of the
% Earth.
%
@@ -4809,6 +10407,119 @@
%\iffalse
%</package>
%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@short@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@SI@short@AccelGravityNumeric| is the accelertion due to gravity at the surface
+% of the Earth in SI units with reduced precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@AccelGravityNumeric}{%
+\ensuremath{%
+9.81e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@SI@full@AccelGravityNumeric| is the accelertion due to gravity at the surface of
+% the Earth in SI units with full precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@AccelGravityNumeric}{%
+\ensuremath{%
+9.80665e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@cgs@short@AccelGravityNumeric| is the accelertion due to gravity at the surface
+% of the Earth in cgs units with reduced precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@AccelGravityNumeric}{%
+\ensuremath{%
+9.81e+02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@AccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\k@cgs@full@AccelGravityNumeric| is the accelertion due to gravity at the surface
+% of the Earth in cgs units with full precision.
+% Source: CODATA 2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@AccelGravityNumeric}{%
+\ensuremath{%
+9.80665e+02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kAccelGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Correct value.}
+% \changes{v1.1.0}{2020/02/03}{Fix units.}
+% |\kAccelGravityNumeric| is the accelertion due to gravity at the surface of the
+% Earth.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kAccelGravityNumeric}{%
+\k@SI@short@AccelGravityNumeric}
+\else
+\DeclareRobustCommand {\kAccelGravityNumeric}{%
+\k@SI@full@AccelGravityNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kAccelGravityNumeric}{%
+\k@cgs@short@AccelGravityNumeric}
+\else
+\DeclareRobustCommand {\kAccelGravityNumeric}{%
+\k@cgs@full@AccelGravityNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
%
%\subsection{Other Constants}
%
@@ -4816,6 +10527,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@short@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
% SI units with reduced precision.
% Source: Calculated
@@ -4824,7 +10536,7 @@
\DeclareRobustCommand{\k@SI@short@Coulomb}{%
\ensuremath{%
8.99%
-\times 10^{13}\N\m^2\Coulomb^{-2}}}
+\times 10^{9}\N\m^2\Coulomb^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -4835,6 +10547,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
% SI units with full precision.
% Source: Calculated
@@ -4845,7 +10558,7 @@
8.987\expandafter\physconst@decimalsseparator%
551\expandafter\physconst@decimalsseparator%
79%
-\times 10^{13}\N\m^2\Coulomb^{-2}}}
+\times 10^{9}\N\m^2\Coulomb^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -4856,6 +10569,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$)
% in cgs units with reduced precision.
% Source: Calculated
@@ -4874,6 +10588,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@Coulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@Coulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
% cgs units with full precision.
% Source: Calculated
@@ -4894,6 +10609,7 @@
%<*package>
%\fi
% \begin{macro}{\kCoulomb}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\kCoulomb| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$).
%
% \begin{macrocode}
@@ -4923,6 +10639,113 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@CoulombNumeric| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
+% SI units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@CoulombNumeric}{%
+\ensuremath{%
+8.99e+09}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@CoulombNumeric| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
+% SI units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@CoulombNumeric}{%
+\ensuremath{%
+8.98755179e+09}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@CoulombNumeric| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$)
+% in cgs units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@CoulombNumeric}{%
+\ensuremath{%
+1.00e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@CoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@CoulombNumeric| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$) in
+% cgs units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@CoulombNumeric}{%
+\ensuremath{%
+1.00000000e+00}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kCoulombNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\kCoulombNumeric| is the Coulomb constant ($\frac{1}{4\pi\epsilon_0}$).
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kCoulombNumeric}{%
+\k@SI@short@CoulombNumeric}
+\else
+\DeclareRobustCommand {\kCoulombNumeric}{%
+\k@SI@full@CoulombNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kCoulombNumeric}{%
+\k@cgs@short@CoulombNumeric}
+\else
+\DeclareRobustCommand {\kCoulombNumeric}{%
+\k@cgs@full@CoulombNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@VacuumPermittivity}
% |\k@SI@short@VacuumPermittivity| is the electric permittivity of the vacuum
% in SI units with reduced precision.
@@ -5035,16 +10858,119 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@VacuumPermittivityNumeric}
+% |\k@SI@short@VacuumPermittivityNumeric| is the electric permittivity of the vacuum
+% in SI units with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@VacuumPermittivityNumeric}{%
+\ensuremath{%
+8.85e-12}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@VacuumPermittivityNumeric}
+% |\k@SI@full@VacuumPermittivityNumeric| is the electric permittivity of the vacuum in
+% SI units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@VacuumPermittivityNumeric}{%
+\ensuremath{%
+8.8541878128e-12}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@VacuumPermittivityNumeric}
+% |\k@cgs@short@VacuumPermittivityNumeric| is the electric permittivity of the vacuum
+% in cgs units with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@VacuumPermittivityNumeric}{%
+\ensuremath{%
+7.96e-02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@VacuumPermittivityNumeric}
+% |\k@cgs@full@VacuumPermittivityNumeric| is the electric permittivity of the vacuum
+% in cgs units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@VacuumPermittivityNumeric}{%
+\ensuremath{%
+7.9577471546e-02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kVacuumPermittivityNumeric}
+% |\kVacuumPermittivityNumeric| is the electric permittivity of the vacuum.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kVacuumPermittivityNumeric}{%
+\k@SI@short@VacuumPermittivityNumeric}
+\else
+\DeclareRobustCommand {\kVacuumPermittivityNumeric}{%
+\k@SI@full@VacuumPermittivityNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kVacuumPermittivityNumeric}{%
+\k@cgs@short@VacuumPermittivityNumeric}
+\else
+\DeclareRobustCommand {\kVacuumPermittivityNumeric}{%
+\k@cgs@full@VacuumPermittivityNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@short@VacuumPermeability| is the magnetic permeability of the vacuum
% in SI units with reduced precision.
-% Source: CODATA~2018
+% Source: Calculated
%
% \begin{macrocode}
\DeclareRobustCommand{\k@SI@short@VacuumPermeability}{%
\ensuremath{%
-8.85%
-\times 10^{-12}\N\Amp^{-2}}}
+1.26%
+\times 10^{-6}\N\Amp^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -5055,18 +10981,19 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@full@VacuumPermeability| is the magnetic permeability of the vacuum in
% SI units with full precision.
-% Source: CODATA~2018
+% Source: Calculated
%
% \begin{macrocode}
\DeclareRobustCommand{\k@SI@full@VacuumPermeability}{%
\ensuremath{%
-8.854\expandafter\physconst@decimalsseparator%
-187\expandafter\physconst@decimalsseparator%
-812\expandafter\physconst@decimalsseparator%
-8%
-\times 10^{-12}\N\Amp^{-2}}}
+1.256\expandafter\physconst@decimalsseparator%
+637\expandafter\physconst@decimalsseparator%
+062\expandafter\physconst@decimalsseparator%
+1%
+\times 10^{-6}\N\Amp^{-2}}}
% \end{macrocode}
% \end{macro}
%
@@ -5077,9 +11004,10 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@short@VacuumPermeability| is the magnetic permeability of the vacuum
% in cgs units with reduced precision.
-% Source: CODATA~2018
+% Source: Calculated
%
% \begin{macrocode}
\DeclareRobustCommand{\k@cgs@short@VacuumPermeability}{%
@@ -5096,9 +11024,10 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@VacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@full@VacuumPermeability| is the magnetic permeability of the vacuum
% in cgs units with full precision.
-% Source: CODATA~2018
+% Source: Calculated
%
% \begin{macrocode}
\DeclareRobustCommand{\k@cgs@full@VacuumPermeability}{%
@@ -5118,6 +11047,7 @@
%<*package>
%\fi
% \begin{macro}{\kVacuumPermeability}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\kVacuumPermeability| is the magnetic permeability of the vacuum.
%
% \begin{macrocode}
@@ -5147,6 +11077,113 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@short@VacuumPermeabilityNumeric| is the magnetic permeability of the vacuum
+% in SI units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@VacuumPermeabilityNumeric}{%
+\ensuremath{%
+1.26e-06}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@full@VacuumPermeabilityNumeric| is the magnetic permeability of the vacuum in
+% SI units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@VacuumPermeabilityNumeric}{%
+\ensuremath{%
+1.2566370621e-06}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@short@VacuumPermeabilityNumeric| is the magnetic permeability of the vacuum
+% in cgs units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@VacuumPermeabilityNumeric}{%
+\ensuremath{%
+1.26e+01}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@VacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@full@VacuumPermeabilityNumeric| is the magnetic permeability of the vacuum
+% in cgs units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@VacuumPermeabilityNumeric}{%
+\ensuremath{%
+1.2566370614e+01}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kVacuumPermeabilityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\kVacuumPermeabilityNumeric| is the magnetic permeability of the vacuum.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kVacuumPermeabilityNumeric}{%
+\k@SI@short@VacuumPermeabilityNumeric}
+\else
+\DeclareRobustCommand {\kVacuumPermeabilityNumeric}{%
+\k@SI@full@VacuumPermeabilityNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kVacuumPermeabilityNumeric}{%
+\k@cgs@short@VacuumPermeabilityNumeric}
+\else
+\DeclareRobustCommand {\kVacuumPermeabilityNumeric}{%
+\k@cgs@full@VacuumPermeabilityNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@short@VacuumImpedance}
% |\k@short@VacuumImpedance| is the characteristic impedance of the vacuum with
% reduced precision.
@@ -5208,6 +11245,62 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@short@VacuumImpedanceNumeric}
+% |\k@short@VacuumImpedanceNumeric| is the characteristic impedance of the vacuum with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@VacuumImpedanceNumeric}{%
+\ensuremath{%
+3.77e+02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@VacuumImpedanceNumeric}
+% |\k@full@VacuumImpedanceNumeric| is the characteristic impedance of the vacuum with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@VacuumImpedanceNumeric}{%
+\ensuremath{%
+3.76730313668e+02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kVacuumImpedanceNumeric}
+% |\kVacuumImpedanceNumeric| is the characteristic impedance of the vacuum.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kVacuumImpedanceNumeric}{%
+\k@short@VacuumImpedanceNumeric}
+\else
+\DeclareRobustCommand {\kVacuumImpedanceNumeric}{%
+\k@full@VacuumImpedanceNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@Boltzmann}
% |\k@SI@short@Boltzmann| is the Boltzmann constant in SI units with reduced
% precision.
@@ -5374,7 +11467,165 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@BoltzmannNumeric}
+% |\k@SI@short@BoltzmannNumeric| is the Boltzmann constant in SI units with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@BoltzmannNumeric}{%
+\ensuremath{%
+1.38e-23}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@BoltzmannNumeric}
+% |\k@SI@full@BoltzmannNumeric| is the Boltzmann constant in SI units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@BoltzmannNumeric}{%
+\ensuremath{%
+1.380649e-23}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@BoltzmannNumeric}
+% |\k@cgs@short@BoltzmannNumeric| is the Boltzmann constant in cgs units with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@BoltzmannNumeric}{%
+\ensuremath{%
+1.38e-16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@BoltzmannNumeric}
+% |\k@cgs@full@BoltzmannNumeric| is the Boltzmann constant in cgs units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@BoltzmannNumeric}{%
+\ensuremath{%
+1.380649e-16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@BoltzmannNumeric}
+% |\k@eV@short@BoltzmannNumeric| is the Boltzmann constant in eV with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@BoltzmannNumeric}{%
+\ensuremath{%
+8.62e-05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@BoltzmannNumeric}
+% |\k@eV@full@BoltzmannNumeric| is the Boltzmann constant in eV with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@BoltzmannNumeric}{%
+\ensuremath{%
+8.617333e-05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kBoltzmannNumeric}
+% |\kBoltzmannNumeric| is the Boltzmann constant.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kBoltzmannNumeric}{%
+\k@SI@short@BoltzmannNumeric}
+\else
+\DeclareRobustCommand {\kBoltzmannNumeric}{%
+\k@SI@full@BoltzmannNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kBoltzmannNumeric}{%
+\k@cgs@short@BoltzmannNumeric}
+\else
+\DeclareRobustCommand {\kBoltzmannNumeric}{%
+\k@cgs@full@BoltzmannNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVBoltzmannNumeric}
+% |\keVBoltzmannNumeric| is the Boltzmann constant.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVBoltzmannNumeric}{%
+\k@eV@short@BoltzmannNumeric}
+\else
+\DeclareRobustCommand {\keVBoltzmannNumeric}{%
+\k@eV@full@BoltzmannNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@Planck| is the Planck constant in SI units with reduced
% precision.
% Source: CODATA~2018
@@ -5394,6 +11645,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@Planck| is the Planck constant in SI units with full precision.
% Source: CODATA~2018
%
@@ -5414,6 +11666,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@Planck| is the Planck constant in cgs units with reduced
% precision.
% Source: CODATA~2018
@@ -5433,6 +11686,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@Planck| is the Planck constant in cgs units with full precision.
% Source: CODATA~2018
%
@@ -5453,6 +11707,7 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@short@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@short@Planck| is the Planck constant in eV with reduced precision.
% Source: CODATA~2018
%
@@ -5471,6 +11726,7 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@full@Planck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@full@Planck| is the Planck constant in eV with full precision.
% Source: CODATA~2018
%
@@ -5491,6 +11747,7 @@
%<*package>
%\fi
% \begin{macro}{\kPlanck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\kPlanck| is the Planck constant.
%
% \begin{macrocode}
@@ -5521,6 +11778,7 @@
%<*package>
%\fi
% \begin{macro}{\keVPlanck}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\keVPlanck| is the Planck constant.
%
% \begin{macrocode}
@@ -5540,7 +11798,170 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@PlanckNumeric| is the Planck constant in SI units with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@PlanckNumeric}{%
+\ensuremath{%
+6.63e-34}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@PlanckNumeric| is the Planck constant in SI units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@PlanckNumeric}{%
+\ensuremath{%
+6.62607015e-34}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@PlanckNumeric| is the Planck constant in cgs units with reduced
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@PlanckNumeric}{%
+\ensuremath{%
+6.63e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@PlanckNumeric| is the Planck constant in cgs units with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@PlanckNumeric}{%
+\ensuremath{%
+6.62607015e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@short@PlanckNumeric| is the Planck constant in eV with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@PlanckNumeric}{%
+\ensuremath{%
+4.14e-15}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@PlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@full@PlanckNumeric| is the Planck constant in eV with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@PlanckNumeric}{%
+\ensuremath{%
+4.13566770e-15}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kPlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\kPlanckNumeric| is the Planck constant.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPlanckNumeric}{%
+\k@SI@short@PlanckNumeric}
+\else
+\DeclareRobustCommand {\kPlanckNumeric}{%
+\k@SI@full@PlanckNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPlanckNumeric}{%
+\k@cgs@short@PlanckNumeric}
+\else
+\DeclareRobustCommand {\kPlanckNumeric}{%
+\k@cgs@full@PlanckNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVPlanckNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\keVPlanckNumeric| is the Planck constant.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVPlanckNumeric}{%
+\k@eV@short@PlanckNumeric}
+\else
+\DeclareRobustCommand {\keVPlanckNumeric}{%
+\k@eV@full@PlanckNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in SI units with reduced precision.
% Source: Calculated
@@ -5560,6 +11981,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in SI units with full precision.
% Source: Calculated
@@ -5581,6 +12003,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in cgs units with reduced precision.
% Source: Calculated
@@ -5600,6 +12023,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in cgs units with full precision.
% Source: Calculated
@@ -5621,6 +12045,7 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@short@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@short@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in eV with reduced precision.
% Source: Calculated
@@ -5640,6 +12065,7 @@
%<*package>
%\fi
% \begin{macro}{\k@eV@full@PlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@eV@full@PlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$ in eV with full precision.
% Source: Calculated
@@ -5661,6 +12087,7 @@
%<*package>
%\fi
% \begin{macro}{\kPlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\kPlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$.
%
@@ -5692,6 +12119,7 @@
%<*package>
%\fi
% \begin{macro}{\keVPlanckReduced}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\keVPlanckReduced| is the Reduced Planck constant
% $\left(\frac{h}{2\pi}\right)$.
%
@@ -5712,7 +12140,176 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@PlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in SI units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@PlanckReducedNumeric}{%
+\ensuremath{%
+1.05e-34}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@PlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in SI units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@PlanckReducedNumeric}{%
+\ensuremath{%
+1.05457182e-34}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@PlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in cgs units with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@PlanckReducedNumeric}{%
+\ensuremath{%
+1.05e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@PlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in cgs units with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@PlanckReducedNumeric}{%
+\ensuremath{%
+1.05457182e-27}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@short@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@short@PlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in eV with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@short@PlanckReducedNumeric}{%
+\ensuremath{%
+6.58e-16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@eV@full@PlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@eV@full@PlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$ in eV with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@eV@full@PlanckReducedNumeric}{%
+\ensuremath{%
+6.58211957e-16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kPlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\kPlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPlanckReducedNumeric}{%
+\k@SI@short@PlanckReducedNumeric}
+\else
+\DeclareRobustCommand {\kPlanckReducedNumeric}{%
+\k@SI@full@PlanckReducedNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kPlanckReducedNumeric}{%
+\k@cgs@short@PlanckReducedNumeric}
+\else
+\DeclareRobustCommand {\kPlanckReducedNumeric}{%
+\k@cgs@full@PlanckReducedNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\keVPlanckReducedNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\keVPlanckReducedNumeric| is the Reduced Planck constant
+% $\left(\frac{h}{2\pi}\right)$.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\keVPlanckReducedNumeric}{%
+\k@eV@short@PlanckReducedNumeric}
+\else
+\DeclareRobustCommand {\keVPlanckReducedNumeric}{%
+\k@eV@full@PlanckReducedNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@short@Gravity| is Newton's gravitational constant in SI units with
% reduced precision.
% Source: CODATA~2018
@@ -5721,7 +12318,7 @@
\DeclareRobustCommand{\k@SI@short@Gravity}{%
\ensuremath{%
6.67%
-\times 10^{-15}\N\kg^{-2}\m^2}}
+\times 10^{-11}\N\kg^{-2}\m^2}}
% \end{macrocode}
% \end{macro}
%
@@ -5732,6 +12329,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@SI@full@Gravity| is Newton's gravitational constant in SI units with full
% precision.
% Source: CODATA~2018
@@ -5741,7 +12339,7 @@
\ensuremath{%
6.674\expandafter\physconst@decimalsseparator%
30%
-\times 10^{-15}\N\kg^{-2}\m^2}}
+\times 10^{-11}\N\kg^{-2}\m^2}}
% \end{macrocode}
% \end{macro}
%
@@ -5752,6 +12350,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@short@Gravity| is Newton's gravitational constant in cgs units with
% reduced precision.
% Source: CODATA~2018
@@ -5771,6 +12370,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@Gravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\k@cgs@full@Gravity| is Newton's gravitational constant in cgs units with
% full precision.
% Source: CODATA~2018
@@ -5791,6 +12391,7 @@
%<*package>
%\fi
% \begin{macro}{\kGravity}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
% |\kGravity| is Newton's gravitational constant.
%
% \begin{macrocode}
@@ -5820,7 +12421,115 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@short@GravityNumeric| is Newton's gravitational constant in SI units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@GravityNumeric}{%
+\ensuremath{%
+6.67e-11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@SI@full@GravityNumeric| is Newton's gravitational constant in SI units with full
+% precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@GravityNumeric}{%
+\ensuremath{%
+6.67430e-11}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@short@GravityNumeric| is Newton's gravitational constant in cgs units with
+% reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@GravityNumeric}{%
+\ensuremath{%
+6.67e-08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@GravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\k@cgs@full@GravityNumeric| is Newton's gravitational constant in cgs units with
+% full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@GravityNumeric}{%
+\ensuremath{%
+6.67430e-08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kGravityNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix value of constant.}
+% |\kGravityNumeric| is Newton's gravitational constant.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kGravityNumeric}{%
+\k@SI@short@GravityNumeric}
+\else
+\DeclareRobustCommand {\kGravityNumeric}{%
+\k@SI@full@GravityNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kGravityNumeric}{%
+\k@cgs@short@GravityNumeric}
+\else
+\DeclareRobustCommand {\kGravityNumeric}{%
+\k@cgs@full@GravityNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@short@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with reduced
% precision.
@@ -5830,7 +12539,7 @@
\DeclareRobustCommand{\k@SI@short@StefanBoltzmann}{%
\ensuremath{%
5.67%
-\times 10^{-6}\J\Kelvin^{-4}\m^{-2}\Sec^{-1}}}
+\times 10^{-8}\J\Kelvin^{-4}\m^{-2}\Sec^{-1}}}
% \end{macrocode}
% \end{macro}
%
@@ -5841,6 +12550,7 @@
%<*package>
%\fi
% \begin{macro}{\k@SI@full@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@SI@full@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with full
% precision.
@@ -5851,7 +12561,7 @@
\ensuremath{%
5.670\expandafter\physconst@decimalsseparator%
374%
-\times 10^{-6}\J\Kelvin^{-4}\m^{-2}\Sec^{-1}}}
+\times 10^{-8}\J\Kelvin^{-4}\m^{-2}\Sec^{-1}}}
% \end{macrocode}
% \end{macro}
%
@@ -5862,6 +12572,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@short@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@short@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with reduced
% precision.
@@ -5882,6 +12593,7 @@
%<*package>
%\fi
% \begin{macro}{\k@cgs@full@StefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\k@cgs@full@StefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with full
% precision.
@@ -5903,6 +12615,7 @@
%<*package>
%\fi
% \begin{macro}{\kStefanBoltzmann}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
% |\kStefanBoltzmann| is the Stefan-Boltzmann blackbody constant
% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$.
%
@@ -5933,6 +12646,118 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@short@StefanBoltzmannNumeric| is the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with reduced
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@StefanBoltzmannNumeric}{%
+\ensuremath{%
+5.67e-08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@SI@full@StefanBoltzmannNumeric| is the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in SI units with full
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@StefanBoltzmannNumeric}{%
+\ensuremath{%
+5.670374e-08}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@short@StefanBoltzmannNumeric| is the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with reduced
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@StefanBoltzmannNumeric}{%
+\ensuremath{%
+5.67e-05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@StefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\k@cgs@full@StefanBoltzmannNumeric| is the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$ in cgs units with full
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@StefanBoltzmannNumeric}{%
+\ensuremath{%
+5.670374e-05}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kStefanBoltzmannNumeric}
+% \changes{v1.1.0}{2020/02/03}{Fix order of magnitude of constant.}
+% |\kStefanBoltzmannNumeric| is the Stefan-Boltzmann blackbody constant
+% $\left(\frac{2\pi^5k_\mathrm{B}}{15h^3c^2}\right)$.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kStefanBoltzmannNumeric}{%
+\k@SI@short@StefanBoltzmannNumeric}
+\else
+\DeclareRobustCommand {\kStefanBoltzmannNumeric}{%
+\k@SI@full@StefanBoltzmannNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kStefanBoltzmannNumeric}{%
+\k@cgs@short@StefanBoltzmannNumeric}
+\else
+\DeclareRobustCommand {\kStefanBoltzmannNumeric}{%
+\k@cgs@full@StefanBoltzmannNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@SI@short@Radiation}
% |\k@SI@short@Radiation| is the radiation constant, $a
% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in SI units with reduced
@@ -6046,6 +12871,113 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@SI@short@RadiationNumeric}
+% |\k@SI@short@RadiationNumeric| is the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in SI units with reduced
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@short@RadiationNumeric}{%
+\ensuremath{%
+7.57e-16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@SI@full@RadiationNumeric}
+% |\k@SI@full@RadiationNumeric| is the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in SI units with full
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@SI@full@RadiationNumeric}{%
+\ensuremath{%
+7.565733e-16}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@short@RadiationNumeric}
+% |\k@cgs@short@RadiationNumeric| is the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in cgs units with reduced
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@short@RadiationNumeric}{%
+\ensuremath{%
+7.57e-15}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@cgs@full@RadiationNumeric}
+% |\k@cgs@full@RadiationNumeric| is the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$ in cgs units with full
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@cgs@full@RadiationNumeric}{%
+\ensuremath{%
+7.565733e-15}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kRadiationNumeric}
+% |\kRadiationNumeric| is the radiation constant, $a
+% \left(\frac{8\pi^5k_\mathrm{B}^4}{15c^3h^3}\right)$.
+%
+% \begin{macrocode}
+\ifx\cgsunits\undefined
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiationNumeric}{%
+\k@SI@short@RadiationNumeric}
+\else
+\DeclareRobustCommand {\kRadiationNumeric}{%
+\k@SI@full@RadiationNumeric}
+\fi
+\else
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kRadiationNumeric}{%
+\k@cgs@short@RadiationNumeric}
+\else
+\DeclareRobustCommand {\kRadiationNumeric}{%
+\k@cgs@full@RadiationNumeric}
+\fi
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@short@FineStructure}
% |\k@short@FineStructure| is the fine structure constant with reduced
% precision.
@@ -6105,6 +13037,61 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@short@FineStructureNumeric}
+% |\k@short@FineStructureNumeric| is the fine structure constant with reduced
+% precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@FineStructureNumeric}{%
+\ensuremath{%
+7.30e-03}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@FineStructureNumeric}
+% |\k@full@FineStructureNumeric| is the fine structure constant with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@FineStructureNumeric}{%
+\ensuremath{%
+7.29735257e-03}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kFineStructureNumeric}
+% |\kFineStructureNumeric| is the fine structure constant.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kFineStructureNumeric}{%
+\k@short@FineStructureNumeric}
+\else
+\DeclareRobustCommand {\kFineStructureNumeric}{%
+\k@full@FineStructureNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@short@FineStructureReciprocal}
% |\k@short@FineStructureReciprocal| is the reciprocal of the fine structure
% constant with reduced precision.
@@ -6165,6 +13152,62 @@
%\iffalse
%<*package>
%\fi
+% \begin{macro}{\k@short@FineStructureReciprocalNumeric}
+% |\k@short@FineStructureReciprocalNumeric| is the reciprocal of the fine structure
+% constant with reduced precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@FineStructureReciprocalNumeric}{%
+\ensuremath{%
+1.37e+02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@FineStructureReciprocalNumeric}
+% |\k@full@FineStructureReciprocalNumeric| is the reciprocal of the fine structure
+% constant with full precision.
+% Source: Calculated
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@FineStructureReciprocalNumeric}{%
+\ensuremath{%
+1.37035999e+02}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kFineStructureReciprocalNumeric}
+% |\kFineStructureReciprocalNumeric| is the reciprocal of the fine structure constant.
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kFineStructureReciprocalNumeric}{%
+\k@short@FineStructureReciprocalNumeric}
+\else
+\DeclareRobustCommand {\kFineStructureReciprocalNumeric}{%
+\k@full@FineStructureReciprocalNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
% \begin{macro}{\k@short@Avogadro}
% |\k@short@Avogadro| is Avogadro's Number (the number of particles in a mole)
% with reduced precision.
@@ -6222,6 +13265,62 @@
%\iffalse
%</package>
%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@short@AvogadroNumeric}
+% |\k@short@AvogadroNumeric| is Avogadro's Number (the number of particles in a mole)
+% with reduced precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@short@AvogadroNumeric}{%
+\ensuremath{%
+6.02e+23}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\k@full@AvogadroNumeric}
+% |\k@full@AvogadroNumeric| is Avogadro's Number (the number of particles in a mole)
+% with full precision.
+% Source: CODATA~2018
+%
+% \begin{macrocode}
+\DeclareRobustCommand{\k@full@AvogadroNumeric}{%
+\ensuremath{%
+6.02240760e+23}}
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
+%\iffalse
+%<*package>
+%\fi
+% \begin{macro}{\kAvogadroNumeric}
+% |\kAvogadroNumeric| is Avogadro's Number (the number of particles in a mole).
+%
+% \begin{macrocode}
+\ifx\shortconst\undefined
+\DeclareRobustCommand {\kAvogadroNumeric}{%
+\k@short@AvogadroNumeric}
+\else
+\DeclareRobustCommand {\kAvogadroNumeric}{%
+\k@full@AvogadroNumeric}
+\fi
+% \end{macrocode}
+% \end{macro}
+%
+%\iffalse
+%</package>
+%\fi
% \CheckSum{0}
% \Finale
\makeatother
diff --git a/macros/latex/contrib/physconst/physconst.pdf b/macros/latex/contrib/physconst/physconst.pdf
index 67867850bc..ead2ea8bc7 100644
--- a/macros/latex/contrib/physconst/physconst.pdf
+++ b/macros/latex/contrib/physconst/physconst.pdf
Binary files differ
diff --git a/macros/latex/contrib/thuthesis/README.md b/macros/latex/contrib/thuthesis/README.md
index 3691ac56b6..7c09042602 100644
--- a/macros/latex/contrib/thuthesis/README.md
+++ b/macros/latex/contrib/thuthesis/README.md
@@ -6,15 +6,15 @@
[![CTAN](https://img.shields.io/ctan/v/thuthesis)](https://www.ctan.org/pkg/thuthesis)
# What's ThuThesis?
-ThuThesis is an abbreviation of <b>T</b>sing<b>h</b>ua <b>U</b>niversity <b>Thesis</b> LaTeX Template.
+**ThuThesis** is an abbreviation of **T**sing**h**ua **U**niversity **Thesis** LaTeX Template.
This package establishes a simple and easy-to-use LaTeX template for Tsinghua dissertations, including general undergraduate research papers, masters theses, doctoral dissertations, and postdoctoral reports. An English translation of this README follows the Chinese below.
-# ThuThesis是什么?
-ThuThesis为 <b>T</b>sing<b>h</b>ua <b>U</b>niversity <b>Thesis</b> LaTeX Template之缩写。
+# ThuThesis 是什么?
+**ThuThesis** 是 **T**sing**h**ua **U**niversity **Thesis** LaTeX Template 的缩写。
-此宏包旨在建立一个简单易用的清华大学学位论文LaTeX模板,包括本科综合论文训练、硕士论文、博士论文以及博士后出站报告。
+此宏包旨在建立一个简单易用的清华大学学位论文 LaTeX 模板,包括本科综合论文训练、硕士论文、博士论文以及博士后出站报告。
# 文档
请[下载](https://github.com/xueruini/thuthesis/releases)模板,里面包括具体使用说明以及示例文档:
@@ -31,9 +31,11 @@ ThuThesis为 <b>T</b>sing<b>h</b>ua <b>U</b>niversity <b>Thesis</b> LaTeX Templa
通过 TeX 发行版工具自动从 [CTAN](https://www.ctan.org/pkg/thuthesis) 更新。
## 手动更新
-从 [GitHub](https://github.com/xueruini/thuthesis) 下载放入论文目录,执行命令(Windows 用户在文件夹空白处按`Shift+鼠标右键`,点击“在此处打开命令行窗口”):
+从 [GitHub](https://github.com/xueruini/thuthesis) 下载放入论文目录,执行命令(Windows 用户在文件夹空白处按 `Shift + 鼠标右键`,点击“在此处打开命令行窗口”):
- xetex thuthesis.ins
+```shell
+xetex thuthesis.ins
+```
即可得到 `thuthesis.cls` 等模板文件。
@@ -58,6 +60,8 @@ make [{all|thesis|spine|doc|clean|cleanall|distclean}]
* `make cleanall` 删除示例文件的中间文件和 main.pdf;
* `make distclean` 删除示例文件和模板的所有中间文件和 PDF。
+---
+
# Documentation
Download and unzip the template. Specific usage documentation and examples can be found in the files below. At present, these documents are <b>only available in Chinese</b>:
* Template usage (thuthesis.pdf)
@@ -69,12 +73,14 @@ Download and unzip the template. Specific usage documentation and examples can b
# Updates
## Automatic
-Get the most up-to-date published version of the TeX tools from [CTAN](https://www.ctan.org/pkg/thuthesis).
+Get the most up-to-date published version with your TeX distribution from [CTAN](https://www.ctan.org/pkg/thuthesis).
## Manual
-Download the package from [GitHub](https://github.com/xueruini/thuthesis) to the root directory of your thesis, then execute the command (Windows users `Shift + right click` white area in the file window and click "Open command line window here from the popup menu"):
+Download the package from [GitHub](https://github.com/xueruini/thuthesis) to the root directory of your thesis, then execute the command (Windows users `Shift + right click` white area in the file window and click "Open command line window here" from the popup menu):
- xetex thuthesis.ins
+```shell
+xetex thuthesis.ins
+```
You'll get `thuthesis.cls` along with other template files.
diff --git a/macros/latex/contrib/thuthesis/data/denotation.tex b/macros/latex/contrib/thuthesis/data/denotation.tex
index aeefccbf9a..962c6bb444 100644
--- a/macros/latex/contrib/thuthesis/data/denotation.tex
+++ b/macros/latex/contrib/thuthesis/data/denotation.tex
@@ -12,7 +12,7 @@
\item[MPBI] 聚苯并咪唑模型化合物,N-苯基苯并咪唑
\item[PY] 聚吡咙
\item[PMDA-BDA] 均苯四酸二酐与联苯四胺合成的聚吡咙薄膜
-\item[$\Delta G$] 活化自由能 (Activation Free Energy)
+\item[$\increment G$] 活化自由能 (Activation Free Energy)
\item[$\chi$] 传输系数 (Transmission Coefficient)
\item[$E$] 能量
\item[$m$] 质量
@@ -49,7 +49,7 @@
% \nomenclature{MPBI}{聚苯并咪唑模型化合物,N-苯基苯并咪唑}
% \nomenclature{PY}{聚吡咙}
% \nomenclature{PMDA-BDA}{均苯四酸二酐与联苯四胺合成的聚吡咙薄膜}
-% \nomenclature{$\Delta G$}{活化自由能 (Activation Free Energy)}
+% \nomenclature{$\increment G$}{活化自由能 (Activation Free Energy)}
% \nomenclature{$\chi$}{传输系数 (Transmission Coefficient)}
% \nomenclature{$E$}{能量}
% \nomenclature{$m$}{质量}
diff --git a/macros/latex/contrib/thuthesis/main.pdf b/macros/latex/contrib/thuthesis/main.pdf
index 25ebfc5702..9ed6f02a7a 100644
--- a/macros/latex/contrib/thuthesis/main.pdf
+++ b/macros/latex/contrib/thuthesis/main.pdf
Binary files differ
diff --git a/macros/latex/contrib/thuthesis/main.tex b/macros/latex/contrib/thuthesis/main.tex
index aa45220054..a84e0b479e 100644
--- a/macros/latex/contrib/thuthesis/main.tex
+++ b/macros/latex/contrib/thuthesis/main.tex
@@ -2,7 +2,7 @@
% !TeX program = xelatex
% !TeX spellcheck = en_US
-\documentclass[fontset=windows,degree=master]{thuthesis}
+\documentclass[degree=master,fontset=windows]{thuthesis}
% 学位 degree:
% doctor | master | bachelor | postdoc
% 学位类型 degree-type:
diff --git a/macros/latex/contrib/thuthesis/ref/appendix.bib b/macros/latex/contrib/thuthesis/ref/appendix.bib
index 4fbfb750fc..1e4cc0daef 100644
--- a/macros/latex/contrib/thuthesis/ref/appendix.bib
+++ b/macros/latex/contrib/thuthesis/ref/appendix.bib
@@ -1,14 +1,14 @@
@book{abrahams99tex,
- author = {Paul W. Abrahams and Karl Berry and Kathryn A. Hargreaves},
- title = {{\TeX} for the Impatient},
- publisher = {Addison-Wesley},
- year = {1990},
+ author = {Paul W. Abrahams and Karl Berry and Kathryn A. Hargreaves},
+ title = {{\TeX} for the Impatient},
+ publisher = {Addison-Wesley},
+ year = 1990,
}
@incollection{salomon1995advanced,
- author = {David Salomon},
- title = {The advanced {\TeX}book},
- address = {New York},
- publisher = {Springer},
- year = {1995},
+ author = {David Salomon},
+ title = {The advanced {\TeX}book},
+ address = {New York},
+ publisher = {Springer},
+ year = 1995,
}
diff --git a/macros/latex/contrib/thuthesis/ref/refs.bib b/macros/latex/contrib/thuthesis/ref/refs.bib
index f9d99381e7..120569caab 100644
--- a/macros/latex/contrib/thuthesis/ref/refs.bib
+++ b/macros/latex/contrib/thuthesis/ref/refs.bib
@@ -1,113 +1,113 @@
@book{IEEE-1363,
- author = {{IEEE Std 1363-2000}},
- title = {{IEEE} Standard Specifications for Public-Key Cryptography},
- address = {New York},
- publisher = {IEEE},
- year = 2000
+ author = {{IEEE Std 1363-2000}},
+ title = {{IEEE} Standard Specifications for Public-Key Cryptography},
+ address = {New York},
+ publisher = {IEEE},
+ year = 2000
}
@inproceedings{kocher99,
- author = {C. Kocher and J. Jaffe and B. Jun},
- title = {Differential Power Analysis},
- editor = {M. Wiener},
- booktitle = {Advances in Cryptology ({CRYPTO}~'99)},
- series = {Lecture Notes in Computer Science},
- volume = 1666,
- pages = {388-397},
- publisher = {Springer-Verlag},
- address = {Germany},
- month = {August},
- year = 1999
+ author = {C. Kocher and J. Jaffe and B. Jun},
+ title = {Differential Power Analysis},
+ editor = {M. Wiener},
+ booktitle = {Advances in Cryptology ({CRYPTO}~'99)},
+ series = {Lecture Notes in Computer Science},
+ volume = 1666,
+ pages = {388-397},
+ publisher = {Springer-Verlag},
+ address = {Germany},
+ month = {August},
+ year = 1999
}
@incollection{Krasnogor2004e,
- author = {N. Krasnogor},
- title = {Towards robust memetic algorithms},
- booktitle = {Recent Advances in Memetic Algorithms},
- publisher = {Springer Berlin Heidelberg},
- year = 2004,
- pages = {185-207},
- editor = {W.E. Hart and N. Krasnogor and J.E. Smith},
- volume = 166,
- series = {Studies in Fuzziness and Soft Computing},
- address = {New York},
+ author = {N. Krasnogor},
+ title = {Towards robust memetic algorithms},
+ booktitle = {Recent Advances in Memetic Algorithms},
+ publisher = {Springer Berlin Heidelberg},
+ year = 2004,
+ pages = {185-207},
+ editor = {W.E. Hart and N. Krasnogor and J.E. Smith},
+ volume = 166,
+ series = {Studies in Fuzziness and Soft Computing},
+ address = {New York},
}
@incollection{zjsw,
- author = {班固},
- title = {苏武传},
- booktitle = {传记散文英华},
- publisher = {湖北人民出版社},
- year = 1998,
- pages = {65-69},
- editor = {郑在瀛 and 汪超宏 and 周文复},
- volume = 2,
- series = {新古文观止丛书},
- address = {武汉},
+ author = {班固},
+ title = {苏武传},
+ booktitle = {传记散文英华},
+ publisher = {湖北人民出版社},
+ year = 1998,
+ pages = {65-69},
+ editor = {郑在瀛 and 汪超宏 and 周文复},
+ volume = 2,
+ series = {新古文观止丛书},
+ address = {武汉},
}
@inbook{clzs,
- author = {阎真},
- title = {沧浪之水},
- chapter = {大人物还是讲人情的},
- pages = {185-207},
- publisher = {人民文学出版社},
- address = {北京},
- year = 2001,
+ author = {阎真},
+ title = {沧浪之水},
+ chapter = {大人物还是讲人情的},
+ pages = {185-207},
+ publisher = {人民文学出版社},
+ address = {北京},
+ year = 2001,
}
@book{tex,
- author = "Donald E. Knuth",
- title = "The {\TeX}book",
- publisher = "Addison-Wesley Publishing Company",
- address = "Reading, MA",
- year = 1989,
- edition = "15th",
+ author = "Donald E. Knuth",
+ title = "The {\TeX}book",
+ publisher = "Addison-Wesley Publishing Company",
+ address = "Reading, MA",
+ year = 1989,
+ edition = "15th",
}
@book{companion,
- author = "Michel Goosens and Frank Mittelbach and Alexander Samarin",
- title = "The {\LaTeX} Companion",
- publisher = "Addison-Wesley Publishing Company",
- address = "Reading, MA",
- PAGES = "112--125",
- year = 1994,
+ author = "Michel Goosens and Frank Mittelbach and Alexander Samarin",
+ title = "The {\LaTeX} Companion",
+ publisher = "Addison-Wesley Publishing Company",
+ address = "Reading, MA",
+ PAGES = "112--125",
+ year = 1994,
}
@article{ELIDRISSI94,
- author = "{Chafik El Idrissi}, M. and {Roney}, A. and {Frigon}, C. and
- {Larzilli{\`e}re}, M.",
- title = "Measurements of total kinetic-energy released to the {$N=2$}
- dissociation limit of {H}$_2$ --- evidence of the dissociation
- of very high vibrational {R}ydberg states of {H}$_2$ by
- doubly-excited states",
- journal = "Chemical Physics Letters",
- pages = "260-266",
- volume = 224,
- number = 10,
- year = 1994,
+ author = "{Chafik El Idrissi}, M. and {Roney}, A. and {Frigon}, C.
+ and {Larzilli{\`e}re}, M.",
+ title = "Measurements of total kinetic-energy released to the
+ {$N=2$} dissociation limit of {H}$_2$ --- evidence of the
+ dissociation of very high vibrational {R}ydberg states of
+ {H}$_2$ by doubly-excited states",
+ journal = "Chemical Physics Letters",
+ pages = "260-266",
+ volume = 224,
+ number = 10,
+ year = 1994,
}
@article{MELLINGER96,
- author = "Mellinger, A. and Vidal, C. R. and Jungen, Ch.",
- title = "Laser reduced fluorescence study of the carbon-monoxide nd
+ author = "Mellinger, A. and Vidal, C. R. and Jungen, Ch.",
+ title = "Laser reduced fluorescence study of the carbon-monoxide nd
triplet {R}ydberg series-experimental results and multichannel
quantum-defect analysis",
- journal = "J. Chem. Phys.",
- pages = "8913-8921",
- volume = 104,
- number = 5,
- year = 1996,
+ journal = "J. Chem. Phys.",
+ pages = "8913-8921",
+ volume = 104,
+ number = 5,
+ year = 1996,
}
@article{SHELL02,
- author = "Michael Shell",
- title = "How to Use the {IEEEtran \LaTeX} Class",
- journal = "Journal of {\LaTeX} Class Files",
- year = 2002,
- volume = 12,
- number = 4,
- pages = "100--120"
+ author = "Michael Shell",
+ title = "How to Use the {IEEEtran \LaTeX} Class",
+ journal = "Journal of {\LaTeX} Class Files",
+ year = 2002,
+ volume = 12,
+ number = 4,
+ pages = "100--120"
}
@TechReport{NPB2,
@@ -121,35 +121,35 @@
}
@inproceedings{DPMG,
- author = {Kim, Sangbum and Woo, Namyoon and Yeom, Heon Y. and Park,
+ author = {Kim, Sangbum and Woo, Namyoon and Yeom, Heon Y. and Park,
Taesoon and Park, Hyoungwoo},
- title = {Design and {I}mplementation of {D}ynamic {P}rocess
+ title = {Design and {I}mplementation of {D}ynamic {P}rocess
{M}anagement for {G}rid-enabled {MPICH}},
- booktitle = {the 10th European PVM/MPI Users' Group Conference},
- editor = {Jack Dongarra and Domenico Laforenza and Salvatore Orlando},
- publisher = {Springer-Verlag},
- year = 2003,
- address = {Venice, Italy},
- month = sep,
+ booktitle = {the 10th European PVM/MPI Users' Group Conference},
+ editor = {Jack Dongarra and Domenico Laforenza and Salvatore Orlando},
+ publisher = {Springer-Verlag},
+ year = 2003,
+ address = {Venice, Italy},
+ month = sep,
}
@inproceedings{cnproceed,
- author = {王重阳 and 黄药师 and 欧阳峰 and 洪七公 and 段皇帝},
- publisher = {金大庸},
- title = {武林高手从入门到精通},
- booktitle = {第~$N$~次华山论剑},
- year = 2006,
- address = {西安, 中国},
- month = sep,
+ author = {王重阳 and 黄药师 and 欧阳峰 and 洪七公 and 段皇帝},
+ publisher = {金大庸},
+ title = {武林高手从入门到精通},
+ booktitle = {第~$N$~次华山论剑},
+ year = 2006,
+ address = {西安, 中国},
+ month = sep,
}
@article{cnarticle,
- author = "贾宝玉 and 林黛玉 and 薛宝钗 and 贾探春",
- title = "论刘姥姥食量大如牛之现实意义",
- journal = "红楼梦杂谈",
- pages = "260--266",
- volume = 224,
- year = 1800,
+ author = "贾宝玉 and 林黛玉 and 薛宝钗 and 贾探春",
+ title = "论刘姥姥食量大如牛之现实意义",
+ journal = "红楼梦杂谈",
+ pages = "260--266",
+ volume = 224,
+ year = 1800,
}
@mastersthesis{zhubajie,
@@ -187,37 +187,36 @@
}
@inbook{ColdSources,
- author = {P. Gr{\"o}ning and L. Nilsson and P. Ruffieux and R.
+ author = {P. Gr{\"o}ning and L. Nilsson and P. Ruffieux and R.
Clergereaux and O. Gr{\"o}ning},
- title = {Encyclopedia of Nanoscience and Nanotechnology},
- pages = {547--579},
- publisher = {American Scientific Publishers},
- year = 2004,
- volume = 1,
- address = {USA},
+ title = {Encyclopedia of Nanoscience and Nanotechnology},
+ pages = {547--579},
+ publisher = {American Scientific Publishers},
+ year = 2004,
+ volume = 1,
+ address = {USA},
}
@online{chuban2001,
- author = {萧钰},
- title = {出版业信息化迈入快车道},
- date = {2001-12-19},
- urldate = {2002-04-15},
- url = {http://www.creader.com/news/200112190019.htm},
+ author = {萧钰},
+ title = {出版业信息化迈入快车道},
+ date = {2001-12-19},
+ urldate = {2002-04-15},
+ url = {http://www.creader.com/news/200112190019.htm},
}
@online{oclc2000,
- author = {{Online Computer Library Center, Inc.}},
- title = {History of {OCLC}},
- year = 2000,
- urldate = {2000-01-08},
- url = {http://www.oclc.org/about/history/default.htm},
+ author = {{Online Computer Library Center, Inc.}},
+ title = {History of {OCLC}},
+ year = 2000,
+ urldate = {2000-01-08},
+ url = {http://www.oclc.org/about/history/default.htm},
}
-
@online{thuthesis,
- author = {薛瑞尼},
- title = {ThuThesis: 清华大学学位论文模板},
- urldate = {2019-04-27},
- url = {https://github.com/xueruini/thuthesis},
- year = 2017,
+ author = {薛瑞尼},
+ title = {ThuThesis: 清华大学学位论文模板},
+ urldate = {2019-04-27},
+ url = {https://github.com/xueruini/thuthesis},
+ year = 2017,
}
diff --git a/macros/latex/contrib/thuthesis/spine.pdf b/macros/latex/contrib/thuthesis/spine.pdf
index 714858ee1d..c8f7d1468c 100644
--- a/macros/latex/contrib/thuthesis/spine.pdf
+++ b/macros/latex/contrib/thuthesis/spine.pdf
Binary files differ
diff --git a/macros/latex/contrib/thuthesis/thuthesis.dtx b/macros/latex/contrib/thuthesis/thuthesis.dtx
index 231655c9da..df09334781 100644
--- a/macros/latex/contrib/thuthesis/thuthesis.dtx
+++ b/macros/latex/contrib/thuthesis/thuthesis.dtx
@@ -16,7 +16,7 @@
%
% \iffalse
%<*driver>
-\ProvidesFile{thuthesis.dtx}[2020/01/06 6.0.0 Tsinghua University Thesis Template]
+\ProvidesFile{thuthesis.dtx}[2020/02/03 6.0.1 Tsinghua University Thesis Template]
\documentclass{ltxdoc}
\usepackage{dtx-style}
@@ -150,6 +150,7 @@
% thuthesis.cls & 模板类文件\\
% thuthesis-numeric.bst & 参考文献样式文件\\
% thuthesis-author-year.bst & 参考文献样式文件\\
+% thuthesis-bachelor.bst & 参考文献样式文件\\
% tsinghua.pdf & 校名 logo,系统无隶书字体时使用 \\\midrule
% main.tex & 示例文档主文件\\
% spine.tex & 书脊示例文档\\
@@ -929,7 +930,7 @@
% \begin{macrocode}
%<cls>\NeedsTeXFormat{LaTeX2e}
%<cls>\ProvidesClass{thuthesis}
-%<cls>[2020/01/06 6.0.0 Tsinghua University Thesis Template]
+%<cls>[2020/02/03 6.0.1 Tsinghua University Thesis Template]
% \end{macrocode}
%
% 检查编译引擎,要求使用 \XeLaTeX。
@@ -945,7 +946,7 @@
%<*cls>
\hyphenation{Thu-Thesis}
\def\thuthesis{ThuThesis}
-\def\version{6.0.0}
+\def\version{6.0.1}
\RequirePackage{kvdefinekeys}
\RequirePackage{kvsetkeys}
\RequirePackage{kvoptions}
@@ -2071,6 +2072,7 @@
% 正体会到 \TeX{} macro 的力量!
% \begin{macrocode}
\newcommand\thu@pdfbookmark[2]{}
+\newcommand\thu@phantomsection{}
\NewDocumentCommand\thu@chapter{s o m o}{
\IfBooleanF{#1}{%
\ClassError{thuthesis}{You have to use the star form: \string\thu@chapter*}{}
@@ -2080,21 +2082,25 @@
\ifthenelse{\equal{#2}{}}{%
\thu@pdfbookmark{0}{#3}%
}{%
- \addcontentsline{toc}{chapter}{#3}
- }
+ \thu@phantomsection
+ \addcontentsline{toc}{chapter}{#3}%
+ }%
}{%
- \addcontentsline{toc}{chapter}{#3}
+ \thu@phantomsection
+ \addcontentsline{toc}{chapter}{#3}%
}%
- \ifthu@degree@bachelor \ctexset{chapter/beforeskip=25bp} \fi
+ \ifthu@degree@bachelor\ctexset{chapter/beforeskip=25bp}\fi
\chapter*{#3}%
- \ifthu@degree@bachelor \ctexset{chapter/beforeskip=15bp} \fi
+ \ifthu@degree@bachelor\ctexset{chapter/beforeskip=15bp}\fi
\IfValueTF{#4}{%
- \ifthenelse{\equal{#4}{}}
- {\@mkboth{}{}}
- {\@mkboth{#4}{#4}}
+ \ifthenelse{\equal{#4}{}}{%
+ \@mkboth{}{}%
+ }{%
+ \@mkboth{#4}{#4}%
+ }%
}{%
- \@mkboth{#3}{#3}
- }
+ \@mkboth{#3}{#3}%
+ }%
}
% \end{macrocode}
% \end{macro}
@@ -3378,6 +3384,7 @@
\thu@atendpackage{hyperref}{
\hypersetup{
linktoc = all,
+ bookmarksdepth = 2,
bookmarksnumbered = true,
bookmarksopen = true,
bookmarksopenlevel = 1,
@@ -3393,6 +3400,9 @@
\stepcounter{thu@bookmark}%
\pdfbookmark[#1]{#2}{thuchapter.\thethu@bookmark}%
}
+ \renewcommand\thu@phantomsection{%
+ \phantomsection
+ }
\pdfstringdefDisableCommands{
\let\\\@empty
\let\hspace\@gobble
diff --git a/macros/latex/contrib/thuthesis/thuthesis.pdf b/macros/latex/contrib/thuthesis/thuthesis.pdf
index 6be654adc5..7e7cf172cc 100644
--- a/macros/latex/contrib/thuthesis/thuthesis.pdf
+++ b/macros/latex/contrib/thuthesis/thuthesis.pdf
Binary files differ
diff --git a/macros/latex/required/babel/base/README.md b/macros/latex/required/babel/base/README.md
index f312923fba..897bbee2be 100644
--- a/macros/latex/required/babel/base/README.md
+++ b/macros/latex/required/babel/base/README.md
@@ -1,4 +1,4 @@
-## Babel 3.38
+## Babel 3.39
This package manages culturally-determined typographical (and other)
rules, and hyphenation patterns for a wide range of languages. Many
@@ -7,22 +7,15 @@ lualatex out of the box. A few even work with plain formats.
The latest stable version is available on <https://ctan.org/pkg/babel>.
-Languages are not part of the Babel core any more; in particular, it
-shall be no longer necessary to synchronize Babel core releases with
-releases of Babel language files. See CONTRIB for further details
-about contributing a language. You may also create an ini file or
-improve the existing ones -- it's a trivial task (no programming
-skills required at all), but don't hesitate to ask for help.
+Changes in version 3.39 are described in:
+
+https://github.com/latex3/babel/wiki/What's-new-in-babel-3.39
Included is a set of ini files for about 200 languages.
The best way to install and/or update it is with the help of package
managers.
-Changes are described in babel.pdf with the label "New <version>". The
-manual has been expanded to include some tips and tricks, but it will
-be improved in next releases.
-
### Reporting Bugs
If you wish to report a problem or bug in any of these packages please
@@ -51,14 +44,27 @@ respective authors.
### Latest changes
```
+3.39 2020-02-03
+ - Languages can now be loaded on the fly (via \babelprovide).
+ - With \babelposthyphenation captured chars can now be mapped in
+ the replacement (lua).
+ - \babelcharproperty can be used to assign specific chars to a
+ locale (lua).
+ - Fixes:
+ - Sichuan Yi: line breaking was not activated (lua).
+ - Hyphenation was not always applied with onchar (lua).
+ - bidi=basic-l/basic-r where not activated correctly (xe).
+ - Thai and turkish raised and error without import in
+ \babelprovide.
+ - Cleaned up some ini/tex locale files (de, zh, sa).
+
3.38 2020-01-15
- Automatic switching of ids (\language and \localeid), and fonts
- based on script blocks (lua).s
+ based on script blocks (lua).
- New macro - \localeinfo, to access the basic data in the ini
file loaded by languages.
See https://github.com/latex3/babel/wiki/What's-new-in-babel-3.38
-
-
+
3.37 2019-12-08
- Preliminary code for non-standard hyphenation, like ff ->
ff-f (lua).
diff --git a/macros/latex/required/babel/base/babel.dtx b/macros/latex/required/babel/base/babel.dtx
index 0d4360f493..d0a6314f27 100644
--- a/macros/latex/required/babel/base/babel.dtx
+++ b/macros/latex/required/babel/base/babel.dtx
@@ -1,7 +1,7 @@
% \iffalse
% This document requires lualatex
%%
-%% Copyright (C) 2012-2019 Javier Bezos and Johannes L. Braams.
+%% Copyright (C) 2012-2020 Javier Bezos and Johannes L. Braams.
%% Copyright (C) 1989-2012 Johannes L. Braams and
%% any individual authors listed elsewhere in this file.
%% All rights reserved.
@@ -31,7 +31,7 @@
%
% \iffalse
%<*filedriver>
-\ProvidesFile{babel.dtx}[2020/01/15 v3.38 The Babel package]
+\ProvidesFile{babel.dtx}[2020/02/03 v3.39 The Babel package]
\documentclass{ltxdoc}
\GetFileInfo{babel.dtx}
\usepackage{fontspec}
@@ -235,21 +235,25 @@ Xe\largetex
\part{User guide}
\begin{itemize}
-\item This user guide focuses on \LaTeX. There are also some notes on
- its use with Plain \TeX.
+\item This user guide focuses on internationalization and localization
+ with \LaTeX. There are also some notes on its use with Plain \TeX.
\item Changes and new features with relation to version 3.8 are
- highlighted with \New{X.XX}\hspace{-.5em}. The most recent features
+ highlighted with \New{X.XX}\hspace{-.5em}, and there are some notes
+ for the latest versions in
+ \href{https://github.com/latex3/babel/wiki}{the \babel{} wiki}.
+ The most recent features
could be still unstable. Please, report any issues you find in
- \texttt{https://github.com/latex3/babel/issues}, which is better
+ \href{https://github.com/latex3/babel/issues}{GitHub}, which is better
than just complaining on an e-mail list or a web forum.
\item If you are interested in the \TeX{} multilingual support, please
- join the \textsf{kadingira} list on
- \texttt{http://tug.org/mailman/listinfo/kadingira}. You can follow
+ join the \href{http://tug.org/mailman/listinfo/kadingira}{kadingira
+ mail list}. You can follow
the development of \babel{} in
- \texttt{https://github.com/latex3/babel} (which provides some sample
- files, too).
+ \href{https://github.com/latex3/babel}{GitHub} (which provides many
+ \href{https://github.com/latex3/babel/tree/master/samples}{sample
+ files}, too).
\item See section \ref{contribute} for contributing a language.
@@ -492,6 +496,40 @@ _\usepackage[vietnamese,danish]{babel}_
\end{verbatim}
\end{example}
+\subsection{Mostly monolingual documents}
+
+\New{3.39} Very often, multilingual documents consist of a main
+language with small pieces of text in another languages (words, idioms,
+short sentences). Typically, all you need is to set the line breaking
+rules and, perhaps, the font. In such a case, \babel{} now does not
+require declaring these secondary languages explicitly, because the
+basic settings are loaded on the fly when the language is selected (and
+also when provided in the optional argument of |\babelfont|, if used.)
+
+This is particularly useful, too, when there are short texts of this
+kind coming from an external source whose contents are not known on
+beforehand (for example, titles in a bibliography). At this regard, it
+is worth remembering that |\babelfont| does not load any font until
+required, so that it can be used just in case.
+
+\begin{example}
+ A trivial document is:
+\setengine{luatex/xetex}
+\begin{verbatim}
+\documentclass{article}
+\usepackage[english]{babel}
+
+\babelfont[russian]{rm}{FreeSerif}
+
+\begin{document}
+
+English. \foreignlanguage{russian}{Русский}.
+\foreignlanguage{spanish}{Español}
+
+\end{document}
+\end{verbatim}
+\end{example}
+
\subsection{Modifiers}
\New{3.9c} The basic behavior of some languages can be modified when
@@ -541,6 +579,7 @@ modifiers are a more general mechanism.
cases, the error vanishes when the document is typeset again, but in
more severe ones you will need to remove the |aux| file.
\end{itemize}
+
\subsection{Plain}
In Plain, load languages styles with |\input| and then use
@@ -1188,9 +1227,17 @@ be the same as the option name as set in |\usepackage|!).
\subsection{\texttt{ini} files}
-An alternative approach to define a language is by means of an
-\texttt{ini} file. Currently \babel{} provides about 200 of these
-files containing the basic data required for a language.
+An alternative approach to define a language (or, more precisely, a
+\textit{locale}) is by means of an \texttt{ini} file. Currently
+\babel{} provides about 200 of these files containing the basic data
+required for a locale.
+
+|ini| files are not meant only for \babel, and they has been devised as
+a resource for other packages. To easy interoperability between \TeX{}
+and other systems, they are identified with the BCP 47 codes as
+preferred by the Unicode Common Language Data Repository, which was
+used as source for most of the data provided by these files, too (the
+main exception being the |\...name| strings).
Most of them set the date, and many also the captions (Unicode and
LICR). They will be evolving with the time to add more features
@@ -1280,6 +1327,19 @@ loads \textsf{luatexja}:
\end{description}
\end{note}
+\begin{note}
+ Wikipedia defines a \textit{locale} as follows: “In computing, a
+ locale is a set of parameters that defines the user’s language,
+ region and any special variant preferences that the user wants to see
+ in their user interface. Usually a locale identifier consists of at
+ least a language code and a country/region code.” \Babel{} is moving
+ gradually from the old and fuzzy concept of \textit{language} to the
+ more modern of \textit{locale}. Note each locale is by itself a
+ separate “language”, which explains why there are so many files. This
+ is on purpose, so that possible variants can be created and/or
+ redefined easily.
+\end{note}
+
Here is the list (u means Unicode captions, and l means LICR
captions):
@@ -1891,6 +1951,26 @@ zulu
\endgroup
\hrule
+\bigskip
+
+\textbf{Modifying and adding values to |ini| files}
+
+\New{3.39} There is a way to modify the values of |ini| files when they
+get loaded with |\babelprovide| and |import|. To set, say,
+|digits.native| in the |numbers| section, use something like
+|numbers/digits.native=abcdefghij|. Keys may be added, too. Without
+|import| you may modify the identification keys.
+
+This can be used to create private variants easily. All you need is to
+import the same |ini| file with a different locale name and different
+parameters.
+
+% \begin{example}
+% Let's assume you need only the basic features of `spanish`, so that
+% the |ini| file is enough, and also a variant with your own
+% hyphenation with
+% \end{example}
+
\subsection{Selecting fonts}
\New{3.15} Babel provides a high level interface on top of |fontspec|
@@ -1988,22 +2068,18 @@ to select fonts in addition to the three basic families.
\babelfont[hindi]{rm}{Shobhika}
\end{verbatim}
This makes sure the OpenType script for Devanagari is |deva| and not
- |dev2| (\luatex{} does not detect automatically the correct
- script\footnote{And even with the correct code some fonts could be
- rendered incorrectly by \textsf{fontspec}, so double-check the
- results. \xetex{} fares better, but some fonts are still
- problematic.}). You may also pass some options to \textsf{fontspec}:
- with |silent|, the warnings about unavailable scripts or languages
- are not shown (they are only really useful when the document format
- is being set up).
+ |dev2|, in case it is not detected correctly. You may also pass some
+ options to \textsf{fontspec}: with |silent|, the warnings about
+ unavailable scripts or languages are not shown (they are only really
+ useful when the document format is being set up).
\end{note}
\begin{note}
Directionality is a property affecting margins, indentation, column
- order, etc., not just text. Therefore, it is under the direct
- control of the language, which applies both the script and the
- direction to the text. As a consequence, there is no need to set
- \texttt{Script} when declaring a font (nor \texttt{Language}). In
+ order, etc., not just text. Therefore, it is under the direct control
+ of the language, which applies both the script and the direction to
+ the text. As a consequence, there is no need to set \texttt{Script}
+ when declaring a font with |\babelfont| (nor \texttt{Language}). In
fact, it is even discouraged.
\end{note}
@@ -2012,10 +2088,10 @@ to select fonts in addition to the three basic families.
(|rm|, |sf|, |tt|, and the like). If a language is switched when an
\textit{ad hoc} font is active, or you select the font with this
command, neither the script nor the language is passed. You must
- add them by hand. This is by design, for several reasons (for
+ add them by hand. This is by design, for several reasons —for
example, each font has its own set of features and a generic setting
for several of them could be problematic, and also a “lower-level”
- font selection is useful).
+ font selection is useful.
\end{note}
\begin{note}
@@ -2028,53 +2104,45 @@ to select fonts in addition to the three basic families.
\end{note}
\begin{warning}
- Do not use |\set|\textit{xxxx}|font| and |\babelfont| at the same
- time. |\babelfont| follows the standard \LaTeX{} conventions to set
- the basic families -- define |\|\textit{xx}|default|, and activate
- it with |\|\textit{xx}|family|. On the other hand,
- |\set|\textit{xxxx}|font| in \textsf{fontspec} takes a different
- approach, because |\|\textit{xx}|family| is redefined with the
- family name hardcoded (so that |\|\textit{xx}|default| becomes
- no-op). Of course, both methods are incompatible, and if you use
- |\set|\textit{xxxx}|font|, font switching with |\babelfont| just
- does \textit{not} work (nor the standard |\|\textit{xx}|default|,
- for that matter). As of \New{3.34} there is an attempt to make them
- compatible, but the language system will not be set by \babel and
- should be set with |fontspec| if necessary.
+ Using |\set|\textit{xxxx}|font| and |\babelfont| at the same time is
+ discouraged, but very often works as expected. However, be aware with
+ |\set|\textit{xxxx}|font| the language system will not be set by
+ \babel{} and should be set with |fontspec| if necessary.
\end{warning}
\begin{troubleshooting}
-\trouble{Package fontspec Warning: 'Language 'LANG' not available for
-font 'FONT' with script 'SCRIPT' 'Default' language used instead'}
-\textit{Package fontspec Warning: 'Language 'LANG' not available for
-font 'FONT' with script 'SCRIPT' 'Default' language used instead'}.
-\textbf{This is \textit{not} and error.}
-This warning is shown by \textsf{fontspec}, not by \babel. It could be
-irrelevant for English, but not for many other languages, including
-Urdu and Turkish. This is a useful and harmless warning, and if
-everything is fine with your document the best thing you can do is just
-to ignore it altogether.
+ \trouble{Package fontspec Warning: 'Language 'LANG' not available for
+ font 'FONT' with script 'SCRIPT' 'Default' language used instead'}
+ \textit{Package fontspec Warning: 'Language 'LANG' not available for
+ font 'FONT' with script 'SCRIPT' 'Default' language used instead'}.
+
+ \textbf{This is \textit{not} and error.} This warning is shown by
+ \textsf{fontspec}, not by \babel. It could be irrelevant for English,
+ but not for many other languages, including Urdu and Turkish. This is
+ a useful and harmless warning, and if everything is fine with your
+ document the best thing you can do is just to ignore it altogether.
\end{troubleshooting}
\begin{troubleshooting}
-\trouble{Package babel Info: The following fonts are not babel standard families}
-\textit{Package babel Info: The following fonts are not babel
-standard families}.
-
-\textbf{This is \textit{not} and error.} \babel{} assumes that if you
-are using |\babelfont| for a family, very likely you want to define the
-rest of them. If you don't, you can find some inconsistencies between
-families. This checking is done at the beginning of the document, at a
-point where we cannot know which families will be used.
-
-Actually, there is no real need to use |\babelfont| in a monolingual
-document, if you set the language system in |\setmainfont| (or not,
-depending on what you want).
-
-As the message explains, \textit{there is nothing intrinsically wrong}
-with not defining all the families. In fact, there is nothing
-intrinsically wrong with not using |\babelfont| at all. But you must be
-aware that this may lead to some problems.
+ \trouble{Package babel Info: The following fonts are not babel
+ standard families} \textit{Package babel Info: The following fonts
+ are not babel standard families}.
+
+ \textbf{This is \textit{not} and error.} \babel{} assumes that if you
+ are using |\babelfont| for a family, very likely you want to define
+ the rest of them. If you don't, you can find some inconsistencies
+ between families. This checking is done at the beginning of the
+ document, at a point where we cannot know which families will be
+ used.
+
+ Actually, there is no real need to use |\babelfont| in a monolingual
+ document, if you set the language system in |\setmainfont| (or not,
+ depending on what you want).
+
+ As the message explains, \textit{there is nothing intrinsically
+ wrong} with not defining all the families. In fact, there is nothing
+ intrinsically wrong with not using |\babelfont| at all. But you must
+ be aware that this may lead to some problems.
\end{troubleshooting}
\subsection{Modifying a language}
@@ -2090,7 +2158,7 @@ sometimes necessary, but not always trivial.
}
\end{verbatim}
As of 3.15, there is no need to hide spaces with \texttt{\%%
-} (\babel{} removes them), but it is advisable to do it.
+} (\babel{} removes them), but it is advisable to do so.
\item The new way, which is found in |bulgarian|, |azerbaijani|,
|spanish|, |french|, |turkish|, |icelandic|, |vietnamese| and a few
more, as well as in languages created with |\babelprovide| and its
@@ -2177,6 +2245,17 @@ In most cases, you will only need to define a few macros.
\end{verbatim}
\end{example}
+\begin{example}
+ Locales with names based on BCP 47 codes can be created with
+ something like:
+\begin{verbatim}
+ \babelprovide[import=en-US]{enUS}
+\end{verbatim}
+ Note, however, mixing ways to identify locales can lead to problems.
+ For example, is \verb|yi| the name of the language spoken by the Yi
+ people or is it the code for Yiddish?
+\end{example}
+
The main language is not changed (\texttt{danish} in this example).
So, you must add |\selectlanguage{arhinish}| or other selectors where
necessary.
@@ -2206,8 +2285,7 @@ There are about 200 |ini| files, with data taken from the |ldf| files
and the CLDR provided by Unicode. Not all languages in the latter are
complete, and therefore neither are the |ini| files. A few languages
will show a warning about the current lack of suitability of the date
-format (\textsf{hindi}, \textsf{french}, \textsf{breton}, and
-\textsf{occitan}).
+format (\textsf{french}, \textsf{breton}, and \textsf{occitan}).
Besides |\today|, this option defines an additional command for dates:
|\<language>date|, which takes three arguments, namely, year, month and
@@ -2267,23 +2345,25 @@ the script, no matter which language is active. Although somewhat
inconsistent, this makes setting a language up easier in most typical
cases.
+\Describe{onchar=}{\texttt{ids} $\string|$ \texttt{fonts}}
+\New{3.38} This option is much like an ‘event’ called with a character
+belonging to the script of this locale is found. There are currently
+two ‘actions’, which can be used at the same time (separated by a
+space): with |ids| the |\language| and the |\localeid| are set to the
+values of this locale; with |fonts|, the fonts are changed to those of
+the this locale (as set with |\babelfont|). This option is not
+compatible with |mapfont|. Characters can be added with
+|\babelcharproperty|.
+
\Describe{mapfont=}{\texttt{direction}}
Assigns the font for the writing direction of this language (only with
-|bidi=basic|). More precisely, what |mapfont=direction| means is, ‘when
-a character has the same direction as the script for the “provided”
-language, then change its font to that set for this language’. There
-are 3 directions, following the bidi Unicode algorithm, namely,
-Arabic-like, Hebrew-like and left to right. So, there should be at most
-3 directives of this kind.
-
-\Describe{onchar=}{\texttt{ids} $\string|$ \texttt{fonts}}
-\New{3.38} This options is much like an ‘event’ called with a character
-belonging to the script of the current locale is found. There are two
-action, which can be used at the same time (separated by a space): with
-|ids| the |\language| and the |\localeid| are set to the values of this
-locale; with |fonts|, the fonts are changed to those of the current
-locale (as set with |\babelfont|). This option is not compatible with
-|mapfont|.
+|bidi=basic|). Whenever possible, instead of this option use |onchar|,
+based on the script, which usually makes more sense. More precisely,
+what |mapfont=direction| means is, ‘when a character has the same
+direction as the script for the “provided” language, then change its
+font to that set for this language’. There are 3 directions, following
+the bidi Unicode algorithm, namely, Arabic-like, Hebrew-like and left
+to right. So, there should be at most 3 directives of this kind.
\Describe{intraspace=}{\meta{base} \meta{shrink} \meta{stretch}}
Sets the interword space for the writing system of the language, in em
@@ -2393,6 +2473,12 @@ conditions are not met, write |\BabelEnsureInfo|.
\subsection{Hyphenation and line breaking}
+\Babel{} deals with three kinds of line breaking rules: Western,
+typically the LGC group, South East Asian, like Thai, and CJK, but
+support depends on the engine: \textsf{pdftex} only deals with the
+former, \xetex{} also with the second one, while \luatex{} provides
+basic rules for the latter, too.
+
\Describe{\babelhyphen}{%
\colorbox{thegrey}{\ttfamily\hskip-.2em*\hskip-.2em}\marg{type}}
\DescribeOther\babelhyphen{%
@@ -2515,6 +2601,55 @@ Unicode engines, spacing is based on the ``current'' em unit (the size
of the previous char in \luatex, and the font size set by the last
|\selectfont| in \xetex).
+\Describe{\babelposthyphenation}{\marg{hyphenrules-name}%
+ \marg{lua-pattern}\marg{replacement}}
+
+\New{3.37-3.39} With \luatex{} it is now possible to define
+non-standard hyphenation rules, like |f-f| $\to$ |ff-f|, repeated
+hyphens, ranked ruled (or more precisely, ‘penalized’ hyphenation
+points), and so on. No rules are currently provided by default, but
+they can be defined as shown in the following example, where |{1}| is
+the first captured char (between |()| in the pattern):
+\begin{verbatim}
+\babelposthyphenation{german}{([fmtrp]) | {1}}
+{
+ { no = {1}, pre = {1}{1}- }, % Replace first char with disc
+ remove, % Remove automatic disc (2nd node)
+ {} % Keep last char, untouched
+}
+\end{verbatim}
+
+In the replacements, a captured char may be mapped to another, too. For
+example, if the first capture reads |([ΐΰ])|, the replacement could be
+\verb+{1|ΐΰ|ίύ}+, which maps \textit{ΐ} to \textit{ί}, and \textit{ΰ}
+to \textit{ύ}, so that the diaeresis is removed.
+
+This feature is activated with the first |\babelposthyphenation|.
+
+See the \href{https://github.com/latex3/babel/wiki}{\babel\ wiki} for a
+more detailed description and some examples. It also describes an
+additional replacement type with the key |string|.
+
+\begin{example}
+ Although the main purpose of this command is non-standard
+ hyphenation, it may actually be used for other transformations (after
+ hyphenation is applied, so you must take discretionaries into
+ account). For example, you can use the |string| replacement to
+ replace a character (or series of them) by another character (or
+ series of them). Thus, to enter \textit{ž} as |zh| and \textit{š} as
+ |sh| in a newly created locale for transliterated Russian:
+\begin{verbatim}
+\babelprovide[hyphenrules=+]{russian-latin} % Create locale
+\babelposthyphenation{russian-latin}{([sz])h} % Create rule
+{
+ { string = {1|sz|šž} },
+ remove
+}
+\end{verbatim}
+ In other words, it is a quite general tool. (A counterpart
+ |\babelprehyphenation| is on the way.)
+\end{example}
+
\subsection{Selecting scripts}
Currently \babel{} provides no standard interface to select
@@ -2589,6 +2724,14 @@ differ in the way `weak' numeric characters are ordered (eg, Arabic
options described below).
\end{warning}
+\begin{warning}
+ If characters to be mirrored are shown without changes with \luatex,
+ try with the following line:
+\begin{verbatim}
+\babeladjust{bidi.mirroring=off}
+\end{verbatim}
+\end{warning}
+
There are some package options controlling bidi writing.
\Describe{bidi=}{\texttt{default} $\string|$ \texttt{basic}
@@ -2612,20 +2755,13 @@ consider the intrinsic direction of scripts and weak directionality.)
tentative, but it mostly works. For RL documents use the former, and
for LR ones use the latter.
-\New{3.37} There is some experimental support for \textsf{luahbtex}
-(with |lualatex-dev|) and the latest releases of \textsf{luaotfload}
-(3.11), with |Renderer = Harfbuzz| in \textsf{fontspec}. Since it is
-based on \luatex, the option |basic| mostly works (You may need
-deactivate the |rtlm| or the |rtla| font features, or alternatively
-deactive mirroring in \babel{} with |\babeladjust|.)
-
There are samples on GitHub, under \texttt{/required/babel/samples}.
See particularly |lua-bidibasic.tex| and |lua-secenum.tex|.
\begin{example}
The following text comes from the Arabic Wikipedia (article about
Arabia). Copy-pasting some text from the Wikipedia is a good way to
- test this feature. Remember |basic-r| is available in \luatex{}
+ test this feature. Remember |basic| is available in \luatex{}
only.
\begingroup
% If you are looking at the code to see how it has been written, you
@@ -2638,7 +2774,7 @@ See particularly |lua-bidibasic.tex| and |lua-secenum.tex|.
\begin{verbatim}
\documentclass{article}
-\usepackage[_bidi=basic-r_]{babel}
+\usepackage[_bidi=basic_]{babel}
_\babelprovide[import, main]{arabic}_
@@ -2676,7 +2812,7 @@ _\babelprovide[import, main]{arabic}_
\usepackage[english, _bidi=basic_]{babel}
-\babelprovide[_mapfont=direction_]{arabic}
+\babelprovide[_onchar=ids fonts_]{arabic}
\babelfont{rm}{Crimson}
\babelfont[*arabic]{rm}{FreeSerif}
@@ -2691,7 +2827,7 @@ Arabic as @1فصحى العصر@0 \textit{fuṣḥā l-ʻaṣr} (MSA) and
\end{document}
\end{verbatim}
\endgroup
- In this example, and thanks to |mapfont=direction|, any Arabic letter
+ In this example, and thanks to |onchar=ids fonts|, any Arabic letter
(because the language is |arabic|) changes its font to that set for
this language (here defined via |*arabic|, because Crimson does not
provide Arabic letters).
@@ -2892,6 +3028,7 @@ command is available always in bidi documents, even without
\subsection{Language attributes}
\DescribeMacro{\languageattribute}
+
This is a user-level command, to be used in the preamble of a
document (after |\usepackage[...]{babel}|), that declares which
attributes are to be used for a given language. It takes two
@@ -3088,12 +3225,14 @@ tables, which you can modify with the following macro (for example,
to set them for glyphs in the PUA).
\Describe{\babelcharproperty}{\marg{char-code}\oarg{to-char-code}%
- \marg{propertry}\marg{value}}
+ \marg{property}\marg{value}}
\New{3.32} Here, \marg{char-code} is a number (with \TeX{} syntax).
With the optional argument, you can set a range of values. There are
three properties (with a short name, taken from Unicode): |direction|
-(|bc|), |mirror| (|bmg|), |linebreak| (|lb|). The settings are global.
+(|bc|), |mirror| (|bmg|), |linebreak| (|lb|). The settings are global,
+and this command is allowed only in vertical mode (the preamble or
+between paragraphs).
For example:
\begin{verbatim}
@@ -3102,8 +3241,12 @@ For example:
\babelcharproperty{`)}{linebreak}{cl} % or id, op, cl, ns, ex, in, hy
\end{verbatim}
-This command is allowed only in vertical mode (the preamble or between
-paragraphs).
+\New{3.39} Another property is |locale|, which adds characters to the
+list used by |onchar| in |\babelprovide|, or, if the last argument is
+empty, removes them. The last argument is the locale name:
+\begin{verbatim}
+\babelcharproperty{`,}{locale}{english}
+\end{verbatim}
\subsection{Tweaking some features}
@@ -3243,41 +3386,6 @@ See the code section for |\foreignlanguage*| (a new starred
version of |\foreignlanguage|).
\medskip
-\textbf{Modifying, and adding, values of |ini| files}
-
-\New{3.37} There is a way to modify the values of |ini| files when they
-get loaded with |\babelprovide|. To set, say, |digits.native| in the
-|numbers| section, use something like
-|numbers..digits.native=abcdefghij| (note the double dot between the
-section and the key name). New keys may be added, too.
-
-\medskip
-\textbf{Non-standard hyphenation}
-
-\New{3.37} With \luatex{} it is now possible to define non-standard
-hyohenation rules, like |f-f| $\to$ |ff-f|. No rules are currently
-provided by default, but they can be defined as shown in the following
-example:
-\begin{verbatim}
-\babelposthyphenation{ngerman}{([fmtrp]) | {1}}
-{
- { no = {1}, pre = {1}{1}-}, % Replace first char with disc
- remove, % Remove automatic disc
- {} % Keep last char, untouched
-}
-\end{verbatim}
-
-This feature must be explicitly activated with:
-\begin{verbatim}
-\babeladjust{ hyphenation.extra = on }
-\end{verbatim}
-
-See the \babel{} wiki for a more detailed description and some examples:
-\begin{verbatim}
-https://github.com/latex3/babel/wiki
-\end{verbatim}
-
-\medskip
\textbf{Old and deprecated stuff}
A couple of tentative macros were provided by \babel{} ($\ge$3.9g) with
@@ -4222,8 +4330,8 @@ help from Bernd Raichle, for which I am grateful.
% \section{Tools}
%
% \begin{macrocode}
-%<<version=3.38>>
-%<<date=2020/01/15>>
+%<<version=3.39>>
+%<<date=2020/02/03>>
% \end{macrocode}
%
% \textbf{Do not use the following macros in \texttt{ldf} files. They
@@ -4715,7 +4823,6 @@ help from Bernd Raichle, for which I am grateful.
%
% \changes{babel~3.30}{2019/04/22}{Callbacks aren't specific to
% bidi any more, so they are moved.}
-% \changes{babel~3.32}{2019/05/30}{Consider Harf.}
%
% \begin{macrocode}
\ifx\bbl@languages\@undefined\else
@@ -4737,8 +4844,6 @@ help from Bernd Raichle, for which I am grateful.
\bbl@languages
\fi
\ifodd\bbl@engine
- % Harftex is evolving, so the callback is not harcoded, just in case
- \def\bbl@harfpreline{Harf pre_linebreak_filter callback}%
\def\bbl@activate@preotf{%
\let\bbl@activate@preotf\relax % only once
\directlua{
@@ -4768,23 +4873,14 @@ help from Bernd Raichle, for which I am grateful.
Babel.pre_otfload_v,
'Babel.pre_otfload_v',
luatexbase.priority_in_callback('pre_linebreak_filter',
- '\bbl@harfpreline')
- or luatexbase.priority_in_callback('pre_linebreak_filter',
- 'luaotfload.node_processor')
- or nil)
+ 'luaotfload.node_processor') or nil)
%
luatexbase.add_to_callback('hpack_filter',
Babel.pre_otfload_h,
'Babel.pre_otfload_h',
luatexbase.priority_in_callback('hpack_filter',
- '\bbl@harfpreline')
- or luatexbase.priority_in_callback('hpack_filter',
- 'luaotfload.node_processor')
- or nil)
- }%
- \@ifpackageloaded{harfload}%
- {\directlua{ Babel.mirroring_enabled = false }}%
- {}}
+ 'luaotfload.node_processor') or nil)
+ }}
\let\bbl@tempa\relax
\@ifpackagewith{babel}{bidi=basic}%
{\def\bbl@tempa{basic}}%
@@ -6771,20 +6867,8 @@ help from Bernd Raichle, for which I am grateful.
\ifx\bbl@known@attribs\@undefined
\in@false
\else
-% \end{macrocode}
-%
-% Now we need to see if the attribute occurs in the list of
-% already selected attributes.
-%
-% \begin{macrocode}
\bbl@xin@{,\bbl@tempc-##1,}{,\bbl@known@attribs,}%
\fi
-% \end{macrocode}
-%
-% When the attribute was in the list we issue a warning; this might
-% not be the users intention.
-%
-% \begin{macrocode}
\ifin@
\bbl@warning{%
You have more than once selected the attribute '##1'\\%
@@ -7349,6 +7433,7 @@ help from Bernd Raichle, for which I am grateful.
\edef\bbl@L{\zap@space#1 \@empty}%
\edef\bbl@G{\zap@space#2 \@empty}%
\bbl@startcmds@ii}
+\let\bbl@startcommands\StartBabelCommands
% \end{macrocode}
%
% Parse the encoding info to get the label, input, and font parts.
@@ -7474,6 +7559,7 @@ help from Bernd Raichle, for which I am grateful.
\endgroup
\endgroup
\bbl@scafter}
+\let\bbl@endcommands\EndBabelCommands
% \end{macrocode}
%
% Now we define commands to be used inside |\StartBabelCommands|.
@@ -7602,7 +7688,7 @@ help from Bernd Raichle, for which I am grateful.
\newcommand\SetHyphenMap[1]{%
\bbl@forlang\bbl@tempa{%
\expandafter\bbl@stringdef
- \csname\bbl@tempa @bbl@hyphenmap\endcsname{##1}}}
+ \csname\bbl@tempa @bbl@hyphenmap\endcsname{##1}}}%
%<</Macros local to BabelCommands>>
% \end{macrocode}
%
@@ -8213,7 +8299,7 @@ help from Bernd Raichle, for which I am grateful.
\let\bbl@savelangname\languagename
\edef\bbl@savelocaleid{\the\localeid}%
% Set name and locale id
- \def\languagename{#2}%
+ \edef\languagename{#2}%
% \global\@namedef{bbl@lcname@#2}{#2}%
\bbl@id@assign
\let\bbl@KVP@captions\@nil
@@ -8230,7 +8316,7 @@ help from Bernd Raichle, for which I am grateful.
\let\bbl@KVP@onchar\@nil
\let\bbl@KVP@chargroups\@nil
\bbl@forkv{#1}{% TODO - error handling
- \in@{..}{##1}%
+ \in@{/}{##1}%
\ifin@
\bbl@renewinikey##1\@@{##2}%
\else
@@ -8279,8 +8365,10 @@ help from Bernd Raichle, for which I am grateful.
\bbl@read@ini{##1}{basic data}%
\bbl@exportkey{chrng}{characters.ranges}{}%
\bbl@exportkey{dgnat}{numbers.digits.native}{}%
+ \bbl@exportkey{lnbrk}{typography.linebreaking}{h}%
\bbl@exportkey{hyphr}{typography.hyphenrules}{}%
\bbl@exportkey{intsp}{typography.intraspace}{}%
+ \endinput
\endgroup}% boxed, to avoid extra spaces:
{\setbox\z@\hbox{\InputIfFileExists{babel-#2.tex}{}{}}}}%
{}%
@@ -8301,10 +8389,15 @@ help from Bernd Raichle, for which I am grateful.
Babel.locale_mapped = true
Babel.linebreaking.add_before(Babel.locale_map)
Babel.loc_to_scr = {}
- Babel.chr_to_loc = {}
+ Babel.chr_to_loc = Babel.chr_to_loc or {}
end}%
\bbl@xin@{ ids }{ \bbl@KVP@onchar\space}%
\ifin@
+ \ifx\bbl@starthyphens\@undefined % Needed if no explicit selection
+ \AddBabelHook{babel-onchar}{beforestart}{{\bbl@starthyphens}}%
+ \fi
+ \bbl@exp{\\\bbl@add\\\bbl@starthyphens
+ {\\\bbl@patterns@lua{\languagename}}}%
% TODO - error/warning if no script
\directlua{
if Babel.script_blocks['\bbl@cs{sbcp@\languagename}'] then
@@ -8323,7 +8416,7 @@ help from Bernd Raichle, for which I am grateful.
if Babel.script_blocks['\bbl@cs{sbcp@\languagename}'] then
Babel.loc_to_scr[\the\localeid] =
Babel.script_blocks['\bbl@cs{sbcp@\languagename}']
- end}
+ end}%
\ifx\bbl@mapselect\@undefined
\AtBeginDocument{%
\expandafter\bbl@add\csname selectfont \endcsname{{\bbl@mapselect}}%
@@ -8343,9 +8436,6 @@ help from Bernd Raichle, for which I am grateful.
\fi
% TODO - catch non-valid values
\fi
-% \ifx\bbl@KVP@chargroups\@nil\else
-% \bbl@chargroups
-% \fi
% == mapfont ==
% For bidi texts, to switch the font based on direction
\ifx\bbl@KVP@mapfont\@nil\else
@@ -8430,7 +8520,7 @@ help from Bernd Raichle, for which I am grateful.
return head
end
end
- }}
+ }}%
\fi
\fi
% == require.babel in ini ==
@@ -8497,7 +8587,7 @@ help from Bernd Raichle, for which I am grateful.
\@namedef{date#1}{}% marks lang exists - required by \StartBabelCommands
\@namedef{extras#1}{}%
\@namedef{noextras#1}{}%
- \StartBabelCommands*{#1}{captions}%
+ \bbl@startcommands*{#1}{captions}%
\ifx\bbl@KVP@captions\@nil % and also if import, implicit
\def\bbl@tempb##1{% elt for \bbl@captionslist
\ifx##1\@empty\else
@@ -8520,7 +8610,7 @@ help from Bernd Raichle, for which I am grateful.
\bbl@savetoday
\bbl@savedate
\fi
- \EndBabelCommands
+ \bbl@endcommands
\bbl@exp{%
\def\<#1hyphenmins>{%
{\bbl@ifunset{bbl@lfthm@#1}{2}{\@nameuse{bbl@lfthm@#1}}}%
@@ -8620,7 +8710,7 @@ help from Bernd Raichle, for which I am grateful.
\def\bbl@inipreread##1=##2\@@{%
\bbl@trim@def\bbl@tempa{##1}% Redundant below !!
% Move trims here ??
- \bbl@ifunset{bbl@KVP@\bbl@section..\bbl@tempa}%
+ \bbl@ifunset{bbl@KVP@\bbl@section/\bbl@tempa}%
{\expandafter\bbl@inireader\bbl@tempa=##2\@@}%
{}}%
\let\bbl@inireader\bbl@iniskip
@@ -8643,6 +8733,7 @@ help from Bernd Raichle, for which I am grateful.
\@nameuse{bbl@renew@\bbl@section}%
\global\bbl@csarg\let{renew@\bbl@section}\relax
\@nameuse{bbl@secpost@\bbl@section}%
+% \bbl@csarg\bbl@toglobal{inikeys@\languagename}%
\fi}
\def\bbl@iniline#1\bbl@iniline{%
\@ifnextchar[\bbl@inisec{\@ifnextchar;\bbl@iniskip\bbl@inipreread}#1\@@}% ]
@@ -8665,14 +8756,14 @@ help from Bernd Raichle, for which I am grateful.
\@nameuse{bbl@secpost@\bbl@section}% ends previous section
\def\bbl@section{#1}% starts current section
\def\bbl@elt##1##2{%
- \@namedef{bbl@KVP@#1..##1}{}}%
+ \@namedef{bbl@KVP@#1/##1}{}}%
\@nameuse{bbl@renew@#1}%
\@nameuse{bbl@secpre@#1}% pre-section `hook'
\bbl@ifunset{bbl@inikv@#1}%
{\let\bbl@inireader\bbl@iniskip}%
{\bbl@exp{\let\\\bbl@inireader\<bbl@inikv@#1>}}}
\let\bbl@renewlist\@empty
-\def\bbl@renewinikey#1..#2\@@#3{%
+\def\bbl@renewinikey#1/#2\@@#3{%
\bbl@ifunset{bbl@renew@#1}%
{\bbl@add@list\bbl@renewlist{#1}}%
{}%
@@ -8732,6 +8823,7 @@ help from Bernd Raichle, for which I am grateful.
\bbl@exportkey{lfthm}{typography.lefthyphenmin}{2}%
\bbl@exportkey{rgthm}{typography.righthyphenmin}{3}%
\bbl@exportkey{prehc}{typography.prehyphenchar}{}%
+ \bbl@exportkey{lnbrk}{typography.linebreaking}{h}%
\bbl@exportkey{hyphr}{typography.hyphenrules}{}%
\bbl@exportkey{intsp}{typography.intraspace}{}%
\bbl@exportkey{jstfy}{typography.justify}{w}%
@@ -9016,9 +9108,7 @@ help from Bernd Raichle, for which I am grateful.
\@namedef{bbl@ADJ@layout.lists@on}{%
\bbl@adjust@layout{\let\list\bbl@OL@list}}
\@namedef{bbl@ADJ@hyphenation.extra@on}{%
- \directlua{
- Babel.linebreaking.add_after(Babel.post_hyphenate_replace)
- }}
+ \bbl@activateposthyphen}
% \end{macrocode}
%
% \section{The kernel of Babel (\texttt{babel.def} for \LaTeX only)}
@@ -9851,11 +9941,7 @@ help from Bernd Raichle, for which I am grateful.
% and so on, but bidi text does not work out of the box and some
% development is necessary. It also provides tools to properly
% set left-to-right and right-to-left page layouts. As Lua\TeX-ja
-% shows, vertical typesetting is possible, too. Its main drawback
-% is font handling is often considered to be less mature than
-% \xetex{}, mainly in Indic scripts (but there are steps to make
-% HarfBuzz, the \xetex{} font engine, available in \luatex{}; see
-% <https://github.com/tatzetwerk/luatex-harfbuzz>).
+% shows, vertical typesetting is possible, too.
% \end{itemize}
%
% \changes{babel~3.15}{2017/10/30}{Use an attribute instead of tex language
@@ -10014,18 +10100,20 @@ help from Bernd Raichle, for which I am grateful.
\newtoks\everypar
\everypar=\bbl@severypar
\bbl@severypar{\bbl@xeeverypar\the\everypar}}
- \@ifpackagewith{babel}{bidi=bidi}%
- {\let\bbl@textdir@i\@gobbletwo
- \let\bbl@xebidipar\@empty
- \AddBabelHook{bidi}{foreign}{%
- \def\bbl@tempa{\def\BabelText####1}%
- \ifcase\bbl@thetextdir
- \expandafter\bbl@tempa\expandafter{\BabelText{\LR{##1}}}%
- \else
- \expandafter\bbl@tempa\expandafter{\BabelText{\RL{##1}}}%
- \fi}
- \def\bbl@pardir#1{\ifcase#1\relax\setLR\else\setRL\fi}}
- {}%
+ \def\bbl@tempb{%
+ \let\bbl@textdir@i\@gobbletwo
+ \let\bbl@xebidipar\@empty
+ \AddBabelHook{bidi}{foreign}{%
+ \def\bbl@tempa{\def\BabelText########1}%
+ \ifcase\bbl@thetextdir
+ \expandafter\bbl@tempa\expandafter{\BabelText{\LR{####1}}}%
+ \else
+ \expandafter\bbl@tempa\expandafter{\BabelText{\RL{####1}}}%
+ \fi}
+ \def\bbl@pardir##1{\ifcase##1\relax\setLR\else\setRL\fi}}
+ \@ifpackagewith{babel}{bidi=bidi}{\bbl@tempb}{}%
+ \@ifpackagewith{babel}{bidi=bidi-l}{\bbl@tempb}{}%
+ \@ifpackagewith{babel}{bidi=bidi-r}{\bbl@tempb}{}%
\fi
% \end{macrocode}
%
@@ -10406,7 +10494,6 @@ help from Bernd Raichle, for which I am grateful.
\edef\languagename{%
\ifnum\escapechar=\expandafter`\string#1\@empty
\else\string#1\@empty\fi}%
- % \@namedef{bbl@lcname@#1}{#1}%
\select@language{\languagename}%
% write to auxs
\expandafter\ifx\csname date\languagename\endcsname\relax\else
@@ -10423,8 +10510,13 @@ help from Bernd Raichle, for which I am grateful.
% set name
\edef\languagename{#1}%
\bbl@fixname\languagename
+ \expandafter\ifx\csname date\languagename\endcsname\relax
+ \IfFileExists{babel-\languagename.tex}%
+ {\babelprovide{\languagename}}%
+ {}%
+ \fi
\bbl@iflanguage\languagename{%
- \expandafter\ifx\csname date\languagename\endcsname\relax
+ \expandafter\ifx\csname date\languagename\endcsname\relax
\bbl@error
{Unknown language `#1'. Either you have\\%
misspelled its name, it has not been installed,\\%
@@ -10725,8 +10817,12 @@ help from Bernd Raichle, for which I am grateful.
\def\foreign@language#1{%
% set name
\edef\languagename{#1}%
- % \@namedef{bbl@lcname@#1}{#1}%
\bbl@fixname\languagename
+ \expandafter\ifx\csname date\languagename\endcsname\relax
+ \IfFileExists{babel-\languagename.tex}%
+ {\babelprovide{\languagename}}%
+ {}%
+ \fi
\bbl@iflanguage\languagename{%
\expandafter\ifx\csname date\languagename\endcsname\relax
\bbl@warning % TODO - why a warning, not an error?
@@ -10945,6 +11041,7 @@ help from Bernd Raichle, for which I am grateful.
\let\uselocale\setlocale
\let\locale\setlocale
\let\selectlocale\setlocale
+\let\localename\setlocale
\let\textlocale\setlocale
\let\textlanguage\setlocale
\let\languagetext\setlocale
@@ -11570,6 +11667,12 @@ help from Bernd Raichle, for which I am grateful.
\bbl@trace{Font handling with fontspec}
\@onlypreamble\babelfont
\newcommand\babelfont[2][]{% 1=langs/scripts 2=fam
+ \bbl@foreach{#1}{%
+ \expandafter\ifx\csname date##1\endcsname\relax
+ \IfFileExists{babel-##1.tex}%
+ {\babelprovide{##1}}%
+ {}%
+ \fi}%
\edef\bbl@tempa{#1}%
\def\bbl@tempb{#2}% Used by \bbl@bblfont
\ifx\fontspec\@undefined
@@ -12457,6 +12560,9 @@ help from Bernd Raichle, for which I am grateful.
% \changes{babel~3.37}{2019/12/07}{Added code for non-standard
% hyphenation.}
%
+% First, some general code for line breaking, used by
+% |\babelposthyphenation|.
+%
% \textit{In progress.} Replace regular (ie, implicit) discretionaries
% by spaceskips, based on the previous glyph (which I think makes
% sense, because the hyphen and the previous char go always together).
@@ -12641,7 +12747,7 @@ help from Bernd Raichle, for which I am grateful.
\def\bbl@provide@intraspace{%
\bbl@ifunset{bbl@intsp@\languagename}{}%
{\expandafter\ifx\csname bbl@intsp@\languagename\endcsname\@empty\else
- \bbl@xin@{\bbl@cs{sbcp@\languagename}}{Hant,Hans,Jpan,Kore,Kana}%
+ \bbl@xin@{\bbl@cs{lnbrk@\languagename}}{c}%
\ifin@ % cjk
\bbl@cjkintraspace
\directlua{
@@ -12738,7 +12844,7 @@ Babel.script_blocks = {
{0x2B740, 0x2B81F}, {0x2B820, 0x2CEAF},
{0x2CEB0, 0x2EBEF}, {0x2F800, 0x2FA1F}},
['Hebr'] = {{0x0590, 0x05FF}},
- ['Japa'] = {{0x3000, 0x303F}, {0x3040, 0x309F}, {0x30A0, 0x30FF},
+ ['Jpan'] = {{0x3000, 0x303F}, {0x3040, 0x309F}, {0x30A0, 0x30FF},
{0x4E00, 0x9FAF}, {0xFF00, 0xFFEF}},
['Khmr'] = {{0x1780, 0x17FF}, {0x19E0, 0x19FF}},
['Knda'] = {{0x0C80, 0x0CFF}},
@@ -12760,10 +12866,11 @@ Babel.script_blocks = {
['Thai'] = {{0x0E00, 0x0E7F}},
['Tibt'] = {{0x0F00, 0x0FFF}},
['Vaii'] = {{0xA500, 0xA63F}},
- ['Yiii']= {{0xA490, 0xA4CF}, {0xA000, 0xA48F}}
+ ['Yiii'] = {{0xA000, 0xA48F}, {0xA490, 0xA4CF}}
}
Babel.script_blocks.Hant = Babel.script_blocks.Hans
+Babel.script_blocks.Kana = Babel.script_blocks.Jpan
function Babel.locale_map(head)
if not Babel.locale_mapped then return head end
@@ -12789,7 +12896,7 @@ function Babel.locale_map(head)
end
end
% Now, take action
- if toloc then
+ if toloc and toloc > -1 then
if Babel.locale_props[toloc].lg then
item.lang = Babel.locale_props[toloc].lg
node.set_attribute(item, LOCALE, toloc)
@@ -12856,6 +12963,12 @@ end
Babel.Babel.cjk_characters[\the\count@]['c'] = '#1'
}}
\let\bbl@chprop@lb\bbl@chprop@linebreak
+\def\bbl@chprop@locale#1{%
+ \directlua{
+ Babel.chr_to_loc = Babel.chr_to_loc or {}
+ Babel.chr_to_loc[\the\count@] =
+ \bbl@ifblank{#1}{-1000}{\the\@nameuse{bbl@id@@#1}}\space
+ }}
% \end{macrocode}
%
% Post-handling hyphenation patterns for non-standard rules, like |ff|
@@ -13050,13 +13163,40 @@ end
return head
end
- &% Used below
+ &% The following functions belong to the next macro
+
+ &% This table stores capture maps, numbered consecutively
+ Babel.capture_maps = {}
+
function Babel.capture_func(key, cap)
local ret = "[[" .. cap:gsub('{([0-9])}', "]]..m[%1]..[[") .. "]]"
+ ret = ret:gsub('{([0-9])|([^|]+)|(.-)}', Babel.capture_func_map)
ret = ret:gsub("%[%[%]%]%.%.", '')
ret = ret:gsub("%.%.%[%[%]%]", '')
return key .. [[=function(m) return ]] .. ret .. [[ end]]
end
+
+ function Babel.capt_map(from, mapno)
+ return Babel.capture_maps[mapno][from] or from
+ end
+
+ &% Handle the {n|abc|ABC} syntax in captures
+ function Babel.capture_func_map(capno, from, to)
+ local froms = {}
+ for s in string.utfcharacters(from) do
+ table.insert(froms, s)
+ end
+ local cnt = 1
+ table.insert(Babel.capture_maps, {})
+ local mlen = table.getn(Babel.capture_maps)
+ for s in string.utfcharacters(to) do
+ Babel.capture_maps[mlen][froms[cnt]] = s
+ cnt = cnt + 1
+ end
+ return "]]..Babel.capt_map(m[" .. capno .. "]," ..
+ (mlen) .. ").." .. "[["
+ end
+
}
% \end{macrocode}
%
@@ -13064,7 +13204,10 @@ end
% defined above for converting strings to functions returning a string.
% These functions handle the |{|\textit{n}|}| syntax. For example,
% |pre={1}{1}-| becomes |function(m) return m[1]..m[1]..'-' end|, where
-% |m| are the matches returned after applying the pattern. The way it
+% |m| are the matches returned after applying the pattern. With a
+% mapped capture the functions are similar to
+% |function(m) return Babel.capt_map(m[1],1) end|, where the last
+% argument identifies the mapping to be applied to |m[1]|. The way it
% is carried out is somewhat tricky, but the effect in not dissimilar
% to lua |load| – save the code as string in a TeX macro, and expand
% this macro at the appropriate place. As |\directlua| does not take
@@ -13074,6 +13217,7 @@ end
% \begin{macrocode}
\catcode`\#=6
\gdef\babelposthyphenation#1#2#3{&%
+ \bbl@activateposthyphen
\begingroup
\def\babeltempa{\bbl@add@list\babeltempb}&%
\let\babeltempb\@empty
@@ -13106,6 +13250,11 @@ end
}&%
\endgroup}
\endgroup
+\def\bbl@activateposthyphen{%
+ \let\bbl@activateposthyphen\relax
+ \directlua{
+ Babel.linebreaking.add_after(Babel.post_hyphenate_replace)
+ }}
% \end{macrocode}
%
% \subsection{Layout}
@@ -19714,12 +19863,6 @@ Babel.fontmap[2] = {} -- al/an
Babel.bidi_enabled = true
Babel.mirroring_enabled = true
--- Temporary:
-
-if harf then
- Babel.mirroring_enabled = false
-end
-
require('babel-data-bidi.lua')
local characters = Babel.characters
@@ -20010,7 +20153,10 @@ function Babel.bidi(head, ispar, hdir)
item = nodes[r][1] -- MIRRORING
if Babel.mirroring_enabled and item.id == GLYPH
and temp == 'r' and characters[item.char] then
- item.char = characters[item.char].m or item.char
+ local font_mode = font.fonts[item.font].properties.mode
+ if font_mode ~= 'harf' and font_mode ~= 'plug' then
+ item.char = characters[item.char].m or item.char
+ end
end
end
first_on = nil
@@ -20321,6 +20467,8 @@ Babel.cjk_class = setmetatable ( Babel.cjk_characters, {
__index = function(_, k)
if (k >= 0xAC00 and k <= 0xD7A3) -- H2/H3
or (k >= 0x2E80 and k <= 0x9FFF)
+ or (k >= 0xA000 and k <= 0xA48F) -- Yi
+ or (k >= 0xA490 and k <= 0xA4CF) -- Yi
or (k >= 0xF900 and k <= 0xFAFF)
or (k >= 0xFE10 and k <= 0xFE1F)
or (k >= 0xFE30 and k <= 0xFE6F)
diff --git a/macros/latex/required/babel/base/babel.ins b/macros/latex/required/babel/base/babel.ins
index dc9587f35c..86e70a5fc6 100644
--- a/macros/latex/required/babel/base/babel.ins
+++ b/macros/latex/required/babel/base/babel.ins
@@ -26,7 +26,7 @@
%% and covered by LPPL is defined by the unpacking scripts (with
%% extension .ins) which are part of the distribution.
%%
-\def\filedate{2020/01/15}
+\def\filedate{2020/02/03}
\def\batchfile{babel.ins}
\input docstrip.tex
diff --git a/macros/latex/required/babel/base/babel.pdf b/macros/latex/required/babel/base/babel.pdf
index ee377662eb..fd66d129fc 100644
--- a/macros/latex/required/babel/base/babel.pdf
+++ b/macros/latex/required/babel/base/babel.pdf
Binary files differ
diff --git a/macros/latex/required/babel/base/bbcompat.dtx b/macros/latex/required/babel/base/bbcompat.dtx
index b9ca5b9d88..610eb84045 100644
--- a/macros/latex/required/babel/base/bbcompat.dtx
+++ b/macros/latex/required/babel/base/bbcompat.dtx
@@ -30,7 +30,7 @@
%
% \iffalse
%<*dtx>
-\ProvidesFile{bbcompat.dtx}[2020/01/15 v3.38]
+\ProvidesFile{bbcompat.dtx}[2020/02/03 v3.39]
%</dtx>
%
%% File 'bbcompat.dtx'
diff --git a/macros/luatex/generic/lualibs/NEWS b/macros/luatex/generic/lualibs/NEWS
index 075b7ce05e..42846f767a 100644
--- a/macros/luatex/generic/lualibs/NEWS
+++ b/macros/luatex/generic/lualibs/NEWS
@@ -1,4 +1,7 @@
History of the lualibs package
+2020/02/02 v2.70/
+ * sync with Context current as of 2020/01/26.
+
2019/11/06 v2.69/
* corrected github address and version info.
diff --git a/macros/luatex/generic/lualibs/README.md b/macros/luatex/generic/lualibs/README.md
index b4b8fa774c..3a7d760a94 100644
--- a/macros/luatex/generic/lualibs/README.md
+++ b/macros/luatex/generic/lualibs/README.md
@@ -1,10 +1,10 @@
# The Lualibs Package
-VERSION: 2.69
+VERSION: 2.70
-DATE: 2019-11-06
+DATE: 2020-02-02
-FONTLOADERDATE: 2019-10-29
+FONTLOADERDATE: 2020-01-26
Lualibs is a collection of Lua modules useful for general programming.
diff --git a/macros/luatex/generic/lualibs/lualibs-basic-merged.lua b/macros/luatex/generic/lualibs/lualibs-basic-merged.lua
index bee6c7de54..38c4debd9b 100644
--- a/macros/luatex/generic/lualibs/lualibs-basic-merged.lua
+++ b/macros/luatex/generic/lualibs/lualibs-basic-merged.lua
@@ -1,6 +1,6 @@
-- merged file : lualibs-basic-merged.lua
-- parent file : lualibs-basic.lua
--- merge date : Tue Oct 29 16:47:31 2019
+-- merge date : Sun Feb 2 22:31:00 2020
do -- begin closure to overcome local limits and interference
@@ -20,9 +20,6 @@ if LUAVERSION<5.2 and jit then
MINORVERSION=2
LUAVERSION=5.2
end
-if lua and lua.openfile then
- io.open=lua.openfile
-end
if not lpeg then
lpeg=require("lpeg")
end
@@ -1369,7 +1366,7 @@ if not modules then modules={} end modules ['l-table']={
copyright="PRAGMA ADE / ConTeXt Development Team",
license="see context related readme files"
}
-local type,next,tostring,tonumber,select=type,next,tostring,tonumber,select
+local type,next,tostring,tonumber,select,rawget=type,next,tostring,tonumber,select,rawget
local table,string=table,string
local concat,sort=table.concat,table.sort
local format,lower,dump=string.format,string.lower,string.dump
@@ -2774,7 +2771,7 @@ local open,flush,write,read=io.open,io.flush,io.write,io.read
local byte,find,gsub,format=string.byte,string.find,string.gsub,string.format
local concat=table.concat
local type=type
-if string.find(os.getenv("PATH"),";",1,true) then
+if string.find(os.getenv("PATH") or "",";",1,true) then
io.fileseparator,io.pathseparator="\\",";"
else
io.fileseparator,io.pathseparator="/",":"
@@ -3121,7 +3118,7 @@ local date,time=os.date,os.time
local find,format,gsub,upper,gmatch=string.find,string.format,string.gsub,string.upper,string.gmatch
local concat=table.concat
local random,ceil,randomseed=math.random,math.ceil,math.randomseed
-local rawget,rawset,type,getmetatable,setmetatable,tonumber,tostring=rawget,rawset,type,getmetatable,setmetatable,tonumber,tostring
+local type,setmetatable,tonumber,tostring=type,setmetatable,tonumber,tostring
do
local selfdir=os.selfdir
if selfdir=="" then
@@ -3567,15 +3564,24 @@ local checkedsplit=string.checkedsplit
local P,R,S,C,Cs,Cp,Cc,Ct=lpeg.P,lpeg.R,lpeg.S,lpeg.C,lpeg.Cs,lpeg.Cp,lpeg.Cc,lpeg.Ct
local attributes=lfs.attributes
function lfs.isdir(name)
- return attributes(name,"mode")=="directory"
+ if name then
+ return attributes(name,"mode")=="directory"
+ end
end
function lfs.isfile(name)
- local a=attributes(name,"mode")
- return a=="file" or a=="link" or nil
+ if name then
+ local a=attributes(name,"mode")
+ return a=="file" or a=="link" or nil
+ end
end
function lfs.isfound(name)
- local a=attributes(name,"mode")
- return (a=="file" or a=="link") and name or nil
+ if name then
+ local a=attributes(name,"mode")
+ return (a=="file" or a=="link") and name or nil
+ end
+end
+function lfs.modification(name)
+ return name and attributes(name,"modification") or nil
end
if sandbox then
sandbox.redefine(lfs.isfile,"lfs.isfile")
@@ -3957,35 +3963,46 @@ if not modules then modules={} end modules ['l-gzip']={
copyright="PRAGMA ADE / ConTeXt Development Team",
license="see context related readme files"
}
-if gzip then
- local suffix,suffixes=file.suffix,file.suffixes
+gzip=gzip or {}
+if not zlib then
+ zlib=xzip
+elseif not xzip then
+ xzip=zlib
+end
+if zlib then
+ local suffix=file.suffix
+ local suffixes=file.suffixes
+ local find=string.find
+ local openfile=io.open
+ local gzipwindow=15+16
+ local gziplevel=3
+ local identifier="^\x1F\x8B\x08"
+ local compress=zlib.compress
+ local decompress=zlib.decompress
function gzip.load(filename)
- local f=io.open(filename,"rb")
+ local f=openfile(filename,"rb")
if not f then
- elseif suffix(filename)=="gz" then
- f:close()
- local g=gzip.open(filename,"rb")
- if g then
- local str=g:read("*all")
- g:close()
- return str
- end
else
- local str=f:read("*all")
+ local data=f:read("*all")
f:close()
- return str
+ if data and data~="" then
+ if suffix(filename)=="gz" then
+ data=decompress(data,gzipwindow)
+ end
+ return data
+ end
end
end
- function gzip.save(filename,data)
+ function gzip.save(filename,data,level)
if suffix(filename)~="gz" then
filename=filename..".gz"
end
- local f=io.open(filename,"wb")
+ local f=openfile(filename,"wb")
if f then
- local s=zlib.compress(data or "",9,nil,15+16)
- f:write(s)
+ data=compress(data or "",level or gziplevel,nil,gzipwindow)
+ f:write(data)
f:close()
- return #s
+ return #data
end
end
function gzip.suffix(filename)
@@ -3993,58 +4010,24 @@ if gzip then
local gzipped=extra=="gz"
return suffix,gzipped
end
-else
-end
-if flate then
- local type=type
- local find=string.find
- local compress=flate.gz_compress
- local decompress=flate.gz_decompress
- local absmax=128*1024*1024
- local initial=64*1024
- local identifier="^\x1F\x8B\x08"
function gzip.compressed(s)
return s and find(s,identifier)
end
function gzip.compress(s,level)
if s and not find(s,identifier) then
if not level then
- level=3
+ level=gziplevel
elseif level<=0 then
return s
elseif level>9 then
level=9
end
- return compress(s,level) or s
+ return compress(s,level or gziplevel,nil,gzipwindow) or s
end
end
- function gzip.decompress(s,size,iterate)
+ function gzip.decompress(s)
if s and find(s,identifier) then
- if type(size)~="number" then
- size=initial
- end
- if size>absmax then
- size=absmax
- end
- if type(iterate)=="number" then
- max=size*iterate
- elseif iterate==nil or iterate==true then
- iterate=true
- max=absmax
- end
- if max>absmax then
- max=absmax
- end
- while true do
- local d=decompress(s,size)
- if d then
- return d
- end
- size=2*size
- if not iterate or size>max then
- return false
- end
- end
+ return decompress(s,gzipwindow)
else
return s
end
@@ -4072,6 +4055,8 @@ if not md5 then
end
local md5,file=md5,file
local gsub=string.gsub
+local modification,isfile,touch=lfs.modification,lfs.isfile,lfs.touch
+local loaddata,savedata=io.loaddata,io.savedata
do
local patterns=lpeg and lpeg.patterns
if patterns then
@@ -4087,10 +4072,11 @@ do
md5.sumHEXA=md5.HEX
end
end
+local md5HEX=md5.HEX
function file.needsupdating(oldname,newname,threshold)
- local oldtime=lfs.attributes(oldname,"modification")
+ local oldtime=modification(oldname)
if oldtime then
- local newtime=lfs.attributes(newname,"modification")
+ local newtime=modification(newname)
if not newtime then
return true
elseif newtime>=oldtime then
@@ -4106,31 +4092,32 @@ function file.needsupdating(oldname,newname,threshold)
end
file.needs_updating=file.needsupdating
function file.syncmtimes(oldname,newname)
- local oldtime=lfs.attributes(oldname,"modification")
- if oldtime and lfs.isfile(newname) then
- lfs.touch(newname,oldtime,oldtime)
+ local oldtime=modification(oldname)
+ if oldtime and isfile(newname) then
+ touch(newname,oldtime,oldtime)
end
end
-function file.checksum(name)
+local function checksum(name)
if md5 then
- local data=io.loaddata(name)
+ local data=loaddata(name)
if data then
- return md5.HEX(data)
+ return md5HEX(data)
end
end
return nil
end
+file.checksum=checksum
function file.loadchecksum(name)
if md5 then
- local data=io.loaddata(name..".md5")
+ local data=loaddata(name..".md5")
return data and (gsub(data,"%s",""))
end
return nil
end
function file.savechecksum(name,checksum)
- if not checksum then checksum=file.checksum(name) end
+ if not checksum then checksum=checksum(name) end
if checksum then
- io.savedata(name..".md5",checksum)
+ savedata(name..".md5",checksum)
return checksum
end
return nil
diff --git a/macros/luatex/generic/lualibs/lualibs-extended-merged.lua b/macros/luatex/generic/lualibs/lualibs-extended-merged.lua
index c2502401af..acf7c5a0c5 100644
--- a/macros/luatex/generic/lualibs/lualibs-extended-merged.lua
+++ b/macros/luatex/generic/lualibs/lualibs-extended-merged.lua
@@ -1,6 +1,6 @@
-- merged file : lualibs-extended-merged.lua
-- parent file : lualibs-extended.lua
--- merge date : Tue Oct 29 16:47:22 2019
+-- merge date : Sun Feb 2 22:30:49 2020
do -- begin closure to overcome local limits and interference
@@ -579,7 +579,7 @@ local format_N if environment.FORMAT then
n=n+1
if not f or f=="" then
return format("FORMAT(a%s,'%%.9f')",n)
- elseif f==".6" then
+ elseif f==".6" or f=="0.6" then
return format("FORMAT(a%s)",n)
else
return format("FORMAT(a%s,'%%%sf')",n,f)
@@ -4134,8 +4134,11 @@ function stacker.new(name)
insert(tops,top)
end
local function resolve_step(ti)
+ if not top then
+ return
+ end
local result=nil
- local noftop=top and #top or 0
+ local noftop=#top
if ti>0 then
local current=list[ti]
if current then
diff --git a/macros/luatex/generic/lualibs/lualibs-file.lua b/macros/luatex/generic/lualibs/lualibs-file.lua
index 1b039a4386..d0af94f09d 100644
--- a/macros/luatex/generic/lualibs/lualibs-file.lua
+++ b/macros/luatex/generic/lualibs/lualibs-file.lua
@@ -76,17 +76,27 @@ local P, R, S, C, Cs, Cp, Cc, Ct = lpeg.P, lpeg.R, lpeg.S, lpeg.C, lpeg.Cs, lpeg
local attributes = lfs.attributes
function lfs.isdir(name)
- return attributes(name,"mode") == "directory"
+ if name then
+ return attributes(name,"mode") == "directory"
+ end
end
function lfs.isfile(name)
- local a = attributes(name,"mode")
- return a == "file" or a == "link" or nil
+ if name then
+ local a = attributes(name,"mode")
+ return a == "file" or a == "link" or nil
+ end
end
function lfs.isfound(name)
- local a = attributes(name,"mode")
- return (a == "file" or a == "link") and name or nil
+ if name then
+ local a = attributes(name,"mode")
+ return (a == "file" or a == "link") and name or nil
+ end
+end
+
+function lfs.modification(name)
+ return name and attributes(name,"modification") or nil
end
if sandbox then
diff --git a/macros/luatex/generic/lualibs/lualibs-gzip.lua b/macros/luatex/generic/lualibs/lualibs-gzip.lua
index 31466bde8f..f141b5ebbb 100644
--- a/macros/luatex/generic/lualibs/lualibs-gzip.lua
+++ b/macros/luatex/generic/lualibs/lualibs-gzip.lua
@@ -5,39 +5,77 @@ if not modules then modules = { } end modules ['l-gzip'] = {
license = "see context related readme files"
}
-if gzip then
+-- We only have a few official methods here:
+--
+-- local decompressed = gzip.load (filename)
+-- local resultsize = gzip.save (filename,compresslevel)
+-- local compressed = gzip.compress (str,compresslevel)
+-- local decompressed = gzip.decompress (str)
+-- local iscompressed = gzip.compressed (str)
+-- local suffix, okay = gzip.suffix (filename)
+--
+-- In LuaMetaTeX we have only xzip which implements a very few methods:
+--
+-- compress (str,level,method,window,memory,strategy)
+-- decompress (str,window)
+-- adler32 (str,checksum)
+-- crc32 (str,checksum)
+--
+-- Special window values are:
+--
+-- flate : - 15
+-- zlib : 15
+-- gzip : 15 | 16
+-- auto : 15 | 32
+
+gzip = gzip or { } -- so in luatex we keep the old ones too
+
+if not zlib then
+ zlib = xzip -- in luametatex we shadow the old one
+elseif not xzip then
+ xzip = zlib
+end
+
+if zlib then
- local suffix, suffixes = file.suffix, file.suffixes
+ local suffix = file.suffix
+ local suffixes = file.suffixes
+ local find = string.find
+ local openfile = io.open
+
+ local gzipwindow = 15 + 16 -- +16: gzip, +32: gzip|zlib
+ local gziplevel = 3
+ local identifier = "^\x1F\x8B\x08"
+
+ local compress = zlib.compress
+ local decompress = zlib.decompress
function gzip.load(filename)
- local f = io.open(filename,"rb")
+ local f = openfile(filename,"rb")
if not f then
-- invalid file
- elseif suffix(filename) == "gz" then
- f:close()
- local g = gzip.open(filename,"rb")
- if g then
- local str = g:read("*all")
- g:close()
- return str
- end
else
- local str = f:read("*all")
+ local data = f:read("*all")
f:close()
- return str
+ if data and data ~= "" then
+ if suffix(filename) == "gz" then
+ data = decompress(data,gzipwindow)
+ end
+ return data
+ end
end
end
- function gzip.save(filename,data)
+ function gzip.save(filename,data,level)
if suffix(filename) ~= "gz" then
filename = filename .. ".gz"
end
- local f = io.open(filename,"wb")
+ local f = openfile(filename,"wb")
if f then
- local s = zlib.compress(data or "",9,nil,15+16)
- f:write(s)
+ data = compress(data or "",level or gziplevel,nil,gzipwindow)
+ f:write(data)
f:close()
- return #s
+ return #data
end
end
@@ -47,24 +85,6 @@ if gzip then
return suffix, gzipped
end
-else
-
- -- todo: fallback on flate
-
-end
-
-if flate then
-
- local type = type
- local find = string.find
-
- local compress = flate.gz_compress
- local decompress = flate.gz_decompress
-
- local absmax = 128*1024*1024
- local initial = 64*1024
- local identifier = "^\x1F\x8B\x08"
-
function gzip.compressed(s)
return s and find(s,identifier)
end
@@ -72,46 +92,89 @@ if flate then
function gzip.compress(s,level)
if s and not find(s,identifier) then -- the find check might go away
if not level then
- level = 3
+ level = gziplevel
elseif level <= 0 then
return s
elseif level > 9 then
level = 9
end
- return compress(s,level) or s
+ return compress(s,level or gziplevel,nil,gzipwindow) or s
end
end
- function gzip.decompress(s,size,iterate)
+ function gzip.decompress(s)
if s and find(s,identifier) then
- if type(size) ~= "number" then
- size = initial
- end
- if size > absmax then
- size = absmax
- end
- if type(iterate) == "number" then
- max = size * iterate
- elseif iterate == nil or iterate == true then
- iterate = true
- max = absmax
- end
- if max > absmax then
- max = absmax
- end
- while true do
- local d = decompress(s,size)
- if d then
- return d
- end
- size = 2 * size
- if not iterate or size > max then
- return false
- end
- end
+ return decompress(s,gzipwindow)
else
return s
end
end
end
+
+-- In luametatex we can use this one but it doesn't look like there wil be stream
+-- support so for now we still use zlib (the performance difference is not that
+-- spectacular in our usage.
+
+-- if flate then
+--
+-- local type = type
+-- local find = string.find
+--
+-- local compress = flate.gz_compress
+-- local decompress = flate.gz_decompress
+--
+-- local absmax = 128*1024*1024
+-- local initial = 64*1024
+-- local identifier = "^\x1F\x8B\x08"
+--
+-- function gzip.compressed(s)
+-- return s and find(s,identifier)
+-- end
+--
+-- function gzip.compress(s,level)
+-- if s and not find(s,identifier) then -- the find check might go away
+-- if not level then
+-- level = 3
+-- elseif level <= 0 then
+-- return s
+-- elseif level > 9 then
+-- level = 9
+-- end
+-- return compress(s,level) or s
+-- end
+-- end
+--
+-- function gzip.decompress(s,size,iterate)
+-- if s and find(s,identifier) then
+-- if type(size) ~= "number" then
+-- size = initial
+-- end
+-- if size > absmax then
+-- size = absmax
+-- end
+-- if type(iterate) == "number" then
+-- max = size * iterate
+-- elseif iterate == nil or iterate == true then
+-- iterate = true
+-- max = absmax
+-- end
+-- if max > absmax then
+-- max = absmax
+-- end
+-- while true do
+-- local d = decompress(s,size)
+-- if d then
+-- return d
+-- end
+-- size = 2 * size
+-- if not iterate or size > max then
+-- return false
+-- end
+-- end
+-- else
+-- return s
+-- end
+-- end
+--
+-- end
diff --git a/macros/luatex/generic/lualibs/lualibs-io.lua b/macros/luatex/generic/lualibs/lualibs-io.lua
index fa3ad3c4cd..a955262a31 100644
--- a/macros/luatex/generic/lualibs/lualibs-io.lua
+++ b/macros/luatex/generic/lualibs/lualibs-io.lua
@@ -13,7 +13,7 @@ local concat = table.concat
----- floor = math.floor
local type = type
-if string.find(os.getenv("PATH"),";",1,true) then
+if string.find(os.getenv("PATH") or "",";",1,true) then
io.fileseparator, io.pathseparator = "\\", ";"
else
io.fileseparator, io.pathseparator = "/" , ":"
diff --git a/macros/luatex/generic/lualibs/lualibs-lua.lua b/macros/luatex/generic/lualibs/lualibs-lua.lua
index 51399216cc..f411230d4a 100644
--- a/macros/luatex/generic/lualibs/lualibs-lua.lua
+++ b/macros/luatex/generic/lualibs/lualibs-lua.lua
@@ -37,9 +37,9 @@ end
-- this is lmtx only:
-if lua and lua.openfile then
- io.open = lua.openfile
-end
+-- if lua and lua.openfile then
+-- io.open = lua.openfile
+-- end
-- lpeg
diff --git a/macros/luatex/generic/lualibs/lualibs-md5.lua b/macros/luatex/generic/lualibs/lualibs-md5.lua
index 6758fa4444..9e3f7672d6 100644
--- a/macros/luatex/generic/lualibs/lualibs-md5.lua
+++ b/macros/luatex/generic/lualibs/lualibs-md5.lua
@@ -20,6 +20,8 @@ end
local md5, file = md5, file
local gsub = string.gsub
+local modification, isfile, touch = lfs.modification, lfs.isfile, lfs.touch
+local loaddata, savedata = io.loaddata, io.savedata
-- local gsub, format, byte = string.gsub, string.format, string.byte
--
@@ -55,10 +57,12 @@ do
end
+local md5HEX = md5.HEX
+
function file.needsupdating(oldname,newname,threshold) -- size modification access change
- local oldtime = lfs.attributes(oldname,"modification")
+ local oldtime = modification(oldname)
if oldtime then
- local newtime = lfs.attributes(newname,"modification")
+ local newtime = modification(newname)
if not newtime then
return true -- no new file, so no updating needed
elseif newtime >= oldtime then
@@ -76,34 +80,36 @@ end
file.needs_updating = file.needsupdating
function file.syncmtimes(oldname,newname)
- local oldtime = lfs.attributes(oldname,"modification")
- if oldtime and lfs.isfile(newname) then
- lfs.touch(newname,oldtime,oldtime)
+ local oldtime = modification(oldname)
+ if oldtime and isfile(newname) then
+ touch(newname,oldtime,oldtime)
end
end
-function file.checksum(name)
+local function checksum(name)
if md5 then
- local data = io.loaddata(name)
+ local data = loaddata(name)
if data then
- return md5.HEX(data)
+ return md5HEX(data)
end
end
return nil
end
+file.checksum = checksum
+
function file.loadchecksum(name)
if md5 then
- local data = io.loaddata(name .. ".md5")
+ local data = loaddata(name .. ".md5")
return data and (gsub(data,"%s",""))
end
return nil
end
function file.savechecksum(name,checksum)
- if not checksum then checksum = file.checksum(name) end
+ if not checksum then checksum = checksum(name) end
if checksum then
- io.savedata(name .. ".md5",checksum)
+ savedata(name .. ".md5",checksum)
return checksum
end
return nil
diff --git a/macros/luatex/generic/lualibs/lualibs-os.lua b/macros/luatex/generic/lualibs/lualibs-os.lua
index aa04e254df..8394d19e7c 100644
--- a/macros/luatex/generic/lualibs/lualibs-os.lua
+++ b/macros/luatex/generic/lualibs/lualibs-os.lua
@@ -30,7 +30,7 @@ local date, time = os.date, os.time
local find, format, gsub, upper, gmatch = string.find, string.format, string.gsub, string.upper, string.gmatch
local concat = table.concat
local random, ceil, randomseed = math.random, math.ceil, math.randomseed
-local rawget, rawset, type, getmetatable, setmetatable, tonumber, tostring = rawget, rawset, type, getmetatable, setmetatable, tonumber, tostring
+local type, setmetatable, tonumber, tostring = type, setmetatable, tonumber, tostring
-- This check needs to happen real early on. Todo: we can pick it up from the commandline
-- if we pass --binpath= (which is useful anyway)
diff --git a/macros/luatex/generic/lualibs/lualibs-table.lua b/macros/luatex/generic/lualibs/lualibs-table.lua
index e828203867..98b377bdc1 100644
--- a/macros/luatex/generic/lualibs/lualibs-table.lua
+++ b/macros/luatex/generic/lualibs/lualibs-table.lua
@@ -6,7 +6,7 @@ if not modules then modules = { } end modules ['l-table'] = {
license = "see context related readme files"
}
-local type, next, tostring, tonumber, select = type, next, tostring, tonumber, select
+local type, next, tostring, tonumber, select, rawget = type, next, tostring, tonumber, select, rawget
local table, string = table, string
local concat, sort = table.concat, table.sort
local format, lower, dump = string.format, string.lower, string.dump
diff --git a/macros/luatex/generic/lualibs/lualibs-util-sta.lua b/macros/luatex/generic/lualibs/lualibs-util-sta.lua
index 7819395f69..9ca1c67e9a 100644
--- a/macros/luatex/generic/lualibs/lualibs-util-sta.lua
+++ b/macros/luatex/generic/lualibs/lualibs-util-sta.lua
@@ -81,6 +81,8 @@ end
function stacker.new(name)
+ -- to be sped up, mmaybe foo:bar syntax here but then quite some access
+
local report = logs.reporter("stacker",name or nil)
local s
@@ -93,6 +95,7 @@ function stacker.new(name)
local hashing = true
local function push(...)
+ -- todo check if more than 1 argument
for i=1,select("#",...) do
insert(stack,(select(i,...))) -- watch the ()
end
@@ -153,8 +156,12 @@ function stacker.new(name)
local function resolve_step(ti) -- keep track of changes outside function !
-- todo: optimize for n=1 etc
+ if not top then
+ -- report("messed op stacker %a",name)
+ return
+ end
local result = nil
- local noftop = top and #top or 0
+ local noftop = #top
if ti > 0 then
local current = list[ti]
if current then
diff --git a/macros/luatex/generic/lualibs/lualibs-util-str.lua b/macros/luatex/generic/lualibs/lualibs-util-str.lua
index 432b39ec5a..68c9be5860 100644
--- a/macros/luatex/generic/lualibs/lualibs-util-str.lua
+++ b/macros/luatex/generic/lualibs/lualibs-util-str.lua
@@ -944,7 +944,7 @@ local format_N if environment.FORMAT then
n = n + 1
if not f or f == "" then
return format("FORMAT(a%s,'%%.9f')",n)
- elseif f == ".6" then
+ elseif f == ".6" or f == "0.6" then
return format("FORMAT(a%s)",n)
else
return format("FORMAT(a%s,'%%%sf')",n,f)
diff --git a/macros/luatex/generic/lualibs/lualibs.dtx b/macros/luatex/generic/lualibs/lualibs.dtx
index 66e40a1a6f..579982e542 100644
--- a/macros/luatex/generic/lualibs/lualibs.dtx
+++ b/macros/luatex/generic/lualibs/lualibs.dtx
@@ -37,7 +37,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: lualibs 2019-11-06 v2.69 Lua additional functions.}
+\Msg{* Package: lualibs 2020-02-02 v2.70 Lua additional functions.}
\Msg{************************************************************************}
\keepsilent
@@ -107,7 +107,7 @@ and lualibs-extended.lua.
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{lualibs.drv}
- [2019/11/06 v2.69 Lua Libraries.]
+ [2020/02/02 v2.70 Lua Libraries.]
\documentclass{ltxdoc}
\usepackage{fancyvrb,xspace}
\usepackage[x11names]{xcolor}
@@ -208,7 +208,7 @@ and lualibs-extended.lua.
% \GetFileInfo{lualibs.drv}
%
% \title{The \identifier{lualibs} package}
-% \date{2019/11/06 v2.69}
+% \date{2020/02/02 v2.70}
% \author{Élie Roux · \email{elie.roux@telecom-bretagne.eu}\\
% Philipp Gesang · \email{phg@phi-gamma.net}\\
% The \LaTeX3 Project · \email{https://github.com/latex3/lualibs/}\\
@@ -429,8 +429,8 @@ lualibs = lualibs or { }
lualibs.module_info = {
name = "lualibs",
- version = "2.69", --TAGVERSION
- date = "2019-11-06", --TAGDATE
+ version = "2.70", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "ConTeXt Lua standard libraries.",
author = "Hans Hagen, PRAGMA-ADE, Hasselt NL & Elie Roux & Philipp Gesang",
copyright = "PRAGMA ADE / ConTeXt Development Team",
@@ -583,8 +583,8 @@ local loadmodule = lualibs.loadmodule
local lualibs_basic_module = {
name = "lualibs-basic",
- version = "2.69", --TAGVERSION
- date = "2019-11-06", --TAGDATE
+ version = "2.70", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "ConTeXt Lua libraries -- basic collection.",
author = "Hans Hagen, PRAGMA-ADE, Hasselt NL & Elie Roux & Philipp Gesang",
copyright = "PRAGMA ADE / ConTeXt Development Team",
@@ -665,8 +665,8 @@ lualibs = lualibs or { }
local lualibs_extended_module = {
name = "lualibs-extended",
- version = "2.69", --TAGVERSION
- date = "2019-11-06", --TAGDATE
+ version = "2.70", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "ConTeXt Lua libraries -- extended collection.",
author = "Hans Hagen, PRAGMA-ADE, Hasselt NL & Elie Roux & Philipp Gesang",
copyright = "PRAGMA ADE / ConTeXt Development Team",
diff --git a/macros/luatex/generic/lualibs/lualibs.pdf b/macros/luatex/generic/lualibs/lualibs.pdf
index 725e3cd14b..721f42266f 100644
--- a/macros/luatex/generic/lualibs/lualibs.pdf
+++ b/macros/luatex/generic/lualibs/lualibs.pdf
Binary files differ
diff --git a/macros/luatex/generic/luaotfload/NEWS b/macros/luatex/generic/luaotfload/NEWS
index d8c05e500a..07855af501 100644
--- a/macros/luatex/generic/luaotfload/NEWS
+++ b/macros/luatex/generic/luaotfload/NEWS
@@ -1,5 +1,11 @@
Change History
--------------
+2020-02-02 luaotfload v3.12
+ * new experimental feature multiscript
+ * new experimental feature fallback
+ * extension of the color feature to color output glyphs
+ * Small bug correction
+
2019-11-10 luaotfload v3.11
* Changed the handling of the script key in harf mode to be more compatible with behaviour of the node mode.
It now expects the name of a script that is actually in the font instead of a ISO 15924 script tag. See issue 117.
diff --git a/macros/luatex/generic/luaotfload/README.md b/macros/luatex/generic/luaotfload/README.md
index 57cae2d99b..94a315839b 100644
--- a/macros/luatex/generic/luaotfload/README.md
+++ b/macros/luatex/generic/luaotfload/README.md
@@ -1,8 +1,8 @@
# The Luaotfload Package
-VERSION: 3.11
+VERSION: 3.12
-DATE: 2019-11-10
+DATE: 2020-02-02
## Description
diff --git a/macros/luatex/generic/luaotfload/filegraph.pdf b/macros/luatex/generic/luaotfload/filegraph.pdf
index 9fc854a941..d6202804f9 100644
--- a/macros/luatex/generic/luaotfload/filegraph.pdf
+++ b/macros/luatex/generic/luaotfload/filegraph.pdf
Binary files differ
diff --git a/macros/luatex/generic/luaotfload/fontloader-2019-10-29.lua b/macros/luatex/generic/luaotfload/fontloader-2020-01-26.lua
index dc98bd5696..be8fefacfe 100644
--- a/macros/luatex/generic/luaotfload/fontloader-2019-10-29.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-2020-01-26.lua
@@ -1,9 +1,9 @@
--[[info-----------------------------------------------------------------------
Luaotfload fontloader package
- build 2019-10-29 22:02:47
+ build 2020-02-02 22:46:14
-------------------------------------------------------------------------------
- © 2019 PRAGMA ADE / ConTeXt Development Team
+ © 2020 PRAGMA ADE / ConTeXt Development Team
The code in this file is provided under the GPL v2.0 license. See the
file COPYING in the Luaotfload repository for details.
@@ -62,7 +62,7 @@
--info]]-----------------------------------------------------------------------
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “data-con” 7ce546725b1550f655c78ac9d69419ca] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “data-con” de6ae0997b0e70a23bcc9afff5d8b072] ---
if not modules then modules={} end modules ['data-con']={
version=1.100,
@@ -71,6 +71,7 @@ if not modules then modules={} end modules ['data-con']={
copyright="PRAGMA ADE / ConTeXt Development Team",
license="see context related readme files"
}
+local setmetatable=setmetatable
local format,lower,gsub=string.format,string.lower,string.gsub
local trace_cache=false trackers.register("resolvers.cache",function(v) trace_cache=v end)
local trace_containers=false trackers.register("resolvers.containers",function(v) trace_containers=v end)
@@ -78,16 +79,21 @@ local trace_storage=false trackers.register("resolvers.storage",function(v) tra
containers=containers or {}
local containers=containers
containers.usecache=true
+local getwritablepath=caches.getwritablepath
+local getreadablepaths=caches.getreadablepaths
+local cacheiswritable=caches.is_writable
+local loaddatafromcache=caches.loaddata
+local savedataincache=caches.savedata
local report_containers=logs.reporter("resolvers","containers")
local allocated={}
local mt={
__index=function(t,k)
if k=="writable" then
- local writable=caches.getwritablepath(t.category,t.subcategory) or { "." }
+ local writable=getwritablepath(t.category,t.subcategory) or { "." }
t.writable=writable
return writable
elseif k=="readables" then
- local readables=caches.getreadablepaths(t.category,t.subcategory) or { "." }
+ local readables=getreadablepaths(t.category,t.subcategory) or { "." }
t.readables=readables
return readables
end
@@ -118,7 +124,7 @@ function containers.define(category,subcategory,version,enabled)
end
end
function containers.is_usable(container,name)
- return container.enabled and caches and caches.is_writable(container.writable,name)
+ return container.enabled and caches and cacheiswritable(container.writable,name)
end
function containers.is_valid(container,name)
if name and name~="" then
@@ -132,7 +138,7 @@ function containers.read(container,name)
local storage=container.storage
local stored=storage[name]
if not stored and container.enabled and caches and containers.usecache then
- stored=caches.loaddata(container.readables,name,container.writable)
+ stored=loaddatafromcache(container.readables,name,container.writable)
if stored and stored.cache_version==container.version then
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","load",container.subcategory,name)
@@ -148,17 +154,20 @@ function containers.read(container,name)
end
return stored
end
-function containers.write(container,name,data)
+function containers.write(container,name,data,fast)
if data then
data.cache_version=container.version
if container.enabled and caches then
- local unique,shared=data.unique,data.shared
- data.unique,data.shared=nil,nil
- caches.savedata(container.writable,name,data)
+ local unique=data.unique
+ local shared=data.shared
+ data.unique=nil
+ data.shared=nil
+ savedataincache(container.writable,name,data,fast)
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","save",container.subcategory,name)
end
- data.unique,data.shared=unique,shared
+ data.unique=unique
+ data.shared=shared
end
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","store",container.subcategory,name)
@@ -174,10 +183,10 @@ function containers.cleanname(name)
return (gsub(lower(name),"[^%w\128-\255]+","-"))
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “data-con”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “data-con”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “basics-nod” c05f47077c709bbf12a8758852dc4e06] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “basics-nod” 4ce2f7c752fdc4c1d6d9f74e8cd50be8] ---
if not modules then modules={} end modules ['luatex-fonts-nod']={
version=1.001,
@@ -393,11 +402,18 @@ if not nuts.setreplace then
setfield(n,"replace",h)
end
end
+do
+ local getsubtype=nuts.getsubtype
+ function nuts.start_of_par(n)
+ local s=getsubtype(n)
+ return s==0 or s==2
+ end
+end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “basics-nod”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “basics-nod”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “basics-chr” 58b7ef0c486e06090b362971b9f85e27] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “basics-chr” 58b7ef0c486e06090b362971b9f85e27] ---
characters=characters or {}
@@ -4007,10 +4023,10 @@ characters.indicgroups={
},
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “basics-chr”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “basics-chr”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ini” 4299a02110bbd7c0d27e131235c5319d] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ini” 4dee96e1e1474d324dd126bd5d375df8] ---
if not modules then modules={} end modules ['font-ini']={
version=1.001,
@@ -4047,11 +4063,14 @@ fonts.privateoffsets={
mathbase=0xFF000,
keepnames=false,
}
+if node and not tex.getfontoffamily then
+ tex.getfontoffamily=node.family_font
+end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ini”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ini”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-mis” bc9eb43c27f63ce9d0fff67e104fe1c6] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-mis” bc9eb43c27f63ce9d0fff67e104fe1c6] ---
if not modules then modules={} end modules ['luatex-font-mis']={
version=1.001,
@@ -4083,10 +4102,10 @@ function font.each()
return table.sortedhash(fonts.hashes.identifiers)
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-mis”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-mis”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-con” 8b35e7c2203d5b57c61942e07cee2c0a] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-con” b436bf6880a56216445779ac68fee877] ---
if not modules then modules={} end modules ['font-con']={
version=1.001,
@@ -4114,13 +4133,13 @@ fonts.handlers=handlers
local allocate=utilities.storage.allocate
local setmetatableindex=table.setmetatableindex
constructors.dontembed=allocate()
-constructors.autocleanup=true
constructors.namemode="fullpath"
constructors.version=1.01
constructors.cache=containers.define("fonts","constructors",constructors.version,false)
constructors.privateoffset=fonts.privateoffsets.textbase or 0xF0000
constructors.cacheintex=true
constructors.addtounicode=true
+constructors.fixprotrusion=true
local designsizes=allocate()
constructors.designsizes=designsizes
local loadedfonts=allocate()
@@ -4172,11 +4191,6 @@ function constructors.getmathparameter(tfmdata,name)
end
end
function constructors.cleanuptable(tfmdata)
- if constructors.autocleanup and tfmdata.properties.virtualized then
- for k,v in next,tfmdata.characters do
- if v.commands then v.commands=nil end
- end
- end
end
function constructors.calculatescale(tfmdata,scaledpoints)
local parameters=tfmdata.parameters
@@ -4403,6 +4417,7 @@ function constructors.scale(tfmdata,specification)
properties.direction=direction
target.size=scaledpoints
target.encodingbytes=properties.encodingbytes or 1
+ target.subfont=properties.subfont
target.embedding=properties.embedding or "subset"
target.tounicode=1
target.cidinfo=properties.cidinfo
@@ -4512,7 +4527,7 @@ function constructors.scale(tfmdata,specification)
targetparameters.descender=delta*descender
end
constructors.enhanceparameters(targetparameters)
- local protrusionfactor=(targetquad~=0 and 1000/targetquad) or 0
+ local protrusionfactor=constructors.fixprotrusion and ((targetquad~=0 and 1000/targetquad) or 1) or 1
local scaledwidth=defaultwidth*hdelta
local scaledheight=defaultheight*vdelta
local scaleddepth=defaultdepth*vdelta
@@ -4895,6 +4910,7 @@ function constructors.finalize(tfmdata)
properties.name=properties.name or tfmdata.name
properties.psname=properties.psname or tfmdata.psname
properties.encodingbytes=tfmdata.encodingbytes or 1
+ properties.subfont=tfmdata.subfont or nil
properties.embedding=tfmdata.embedding or "subset"
properties.tounicode=tfmdata.tounicode or 1
properties.cidinfo=tfmdata.cidinfo or nil
@@ -4920,6 +4936,7 @@ function constructors.finalize(tfmdata)
tfmdata.name=nil
tfmdata.psname=nil
tfmdata.encodingbytes=nil
+ tfmdata.subfont=nil
tfmdata.embedding=nil
tfmdata.tounicode=nil
tfmdata.cidinfo=nil
@@ -5430,10 +5447,10 @@ function constructors.addcoreunicodes(unicodes)
return unicodes
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-con”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-con”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-enc” 3e71a54297e8f85a1ac438bb0f20dd79] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-enc” 3e71a54297e8f85a1ac438bb0f20dd79] ---
if not modules then modules={} end modules ['luatex-font-enc']={
version=1.001,
@@ -5502,10 +5519,10 @@ function encodings.load(filename)
return containers.write(encodings.cache,name,data)
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-enc”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-enc”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-cid” 4d87988efa86020a14708ee03c23415f] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-cid” 4d87988efa86020a14708ee03c23415f] ---
if not modules then modules={} end modules ['font-cid']={
version=1.001,
@@ -5656,10 +5673,10 @@ function cid.getmap(specification)
return found
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-cid”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-cid”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-map” f486746e90fe972de4b73e208ac7cbb2] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-map” f486746e90fe972de4b73e208ac7cbb2] ---
if not modules then modules={} end modules ['font-map']={
version=1.001,
@@ -6047,10 +6064,10 @@ function mappings.addtounicode(data,filename,checklookups,forceligatures)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-map”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-map”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-vfc” 94937140f2c909e9c831ba021f1ab303] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-vfc” 94937140f2c909e9c831ba021f1ab303] ---
if not modules then modules={} end modules ['font-vfc']={
version=1.001,
@@ -6148,10 +6165,10 @@ helpers.commands=utilities.storage.allocate {
dummy=dummy,
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-vfc”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-vfc”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otr” b1c03925c949027c86f781785fa7a208] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otr” d96724dcb40c673ac294df7044a39925] ---
if not modules then modules={} end modules ['font-otr']={
version=1.001,
@@ -6160,7 +6177,7 @@ if not modules then modules={} end modules ['font-otr']={
copyright="PRAGMA ADE / ConTeXt Development Team",
license="see context related readme files"
}
-local next,type,tonumber=next,type,tonumber
+local next,type,tonumber,rawget=next,type,tonumber,rawget
local byte,lower,char,gsub=string.byte,string.lower,string.char,string.gsub
local fullstrip=string.fullstrip
local floor,round=math.floor,math.round
@@ -8001,10 +8018,10 @@ function readers.extend(fontdata)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otr”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otr”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-oti” dbae7722baae24d917a17176553825cf] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-oti” dbae7722baae24d917a17176553825cf] ---
if not modules then modules={} end modules ['font-oti']={
version=1.001,
@@ -8147,10 +8164,10 @@ function otffeatures.checkeddefaultlanguage(featuretype,autolanguage,languages)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-oti”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-oti”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ott” aba6d8335a5f38a5a62d3631492f3392] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ott” aba6d8335a5f38a5a62d3631492f3392] ---
if not modules then modules={} end modules ["font-ott"]={
version=1.001,
@@ -9269,10 +9286,10 @@ function otffeatures.normalize(features,wrap)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ott”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ott”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-cff” 98d5a660ea803b65cb883c009ecf3c0b] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-cff” c769020b41b39418f703347f3d328bc7] ---
if not modules then modules={} end modules ['font-cff']={
version=1.001,
@@ -9282,7 +9299,7 @@ if not modules then modules={} end modules ['font-cff']={
license="see context related readme files"
}
local next,type,tonumber,rawget=next,type,tonumber,rawget
-local byte,char,gmatch=string.byte,string.char,string.gmatch
+local byte,char,gmatch,sub=string.byte,string.char,string.gmatch,string.sub
local concat,remove,unpack=table.concat,table.remove,table.unpack
local floor,abs,round,ceil,min,max=math.floor,math.abs,math.round,math.ceil,math.min,math.max
local P,C,R,S,C,Cs,Ct=lpeg.P,lpeg.C,lpeg.R,lpeg.S,lpeg.C,lpeg.Cs,lpeg.Ct
@@ -9389,6 +9406,37 @@ local defaultstrings={ [0]=
"Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003",
"Black","Bold","Book","Light","Medium","Regular","Roman","Semibold",
}
+local standardnames={ [0]=
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,
+ "space","exclam","quotedbl","numbersign","dollar","percent",
+ "ampersand","quoteright","parenleft","parenright","asterisk","plus",
+ "comma","hyphen","period","slash","zero","one","two","three","four",
+ "five","six","seven","eight","nine","colon","semicolon","less",
+ "equal","greater","question","at","A","B","C","D","E","F","G","H",
+ "I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W",
+ "X","Y","Z","bracketleft","backslash","bracketright","asciicircum",
+ "underscore","quoteleft","a","b","c","d","e","f","g","h","i","j",
+ "k","l","m","n","o","p","q","r","s","t","u","v","w","x","y",
+ "z","braceleft","bar","braceright","asciitilde",false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,"exclamdown",
+ "cent","sterling","fraction","yen","florin","section","currency",
+ "quotesingle","quotedblleft","guillemotleft","guilsinglleft",
+ "guilsinglright","fi","fl",false,"endash","dagger","daggerdbl",
+ "periodcentered",false,"paragraph","bullet","quotesinglbase",
+ "quotedblbase","quotedblright","guillemotright","ellipsis","perthousand",
+ false,"questiondown",false,"grave","acute","circumflex","tilde",
+ "macron","breve","dotaccent","dieresis",false,"ring","cedilla",false,
+ "hungarumlaut","ogonek","caron","emdash",false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,"AE",false,"ordfeminine",false,false,false,false,"Lslash",
+ "Oslash","OE","ordmasculine",false,false,false,false,false,"ae",
+ false,false,false,"dotlessi",false,false,"lslash","oslash","oe",
+ "germandbls",false,false,false,false
+}
local cffreaders={
readbyte,
readushort,
@@ -9750,6 +9798,7 @@ do
local x=0
local y=0
local width=false
+ local lsb=0
local r=0
local stems=0
local globalbias=0
@@ -9773,6 +9822,9 @@ do
local factors=false
local axis=false
local vsindex=0
+ local justpass=false
+ local seacs={}
+ local procidx=nil
local function showstate(where)
report("%w%-10s : [%s] n=%i",depth*2,where,concat(stack," ",1,top),top)
end
@@ -10312,14 +10364,14 @@ do
top=0
end
local function divide()
- if version==1 then
+ if version=="cff" then
local d=stack[top]
top=top-1
stack[top]=stack[top]/d
end
end
local function closepath()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
showstate("closepath")
end
@@ -10327,54 +10379,73 @@ do
top=0
end
local function hsbw()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
showstate("hsbw")
end
+ lsb=stack[top-1] or 0
width=stack[top]
end
top=0
end
- local function seac()
- if version==1 then
+ local function sbw()
+ if version=="cff" then
if trace_charstrings then
- showstate("seac")
+ showstate("sbw")
end
+ lsb=stack[top-3]
+ width=stack[top-1]
end
top=0
end
- local function sbw()
- if version==1 then
+ local function seac()
+ if version=="cff" then
if trace_charstrings then
- showstate("sbw")
+ showstate("seac")
end
- width=stack[top-1]
end
top=0
end
+ local popped=3
+ local hints=3
local function callothersubr()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
- showstate("callothersubr (unsupported)")
+ showstate("callothersubr")
+ end
+ if stack[top]==hints then
+ popped=stack[top-2]
+ else
+ popped=3
+ end
+ local t=stack[top-1]
+ if t then
+ top=top-(t+2)
+ if top<0 then
+ top=0
+ end
+ else
+ top=0
end
+ else
+ top=0
end
- top=0
end
local function pop()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
- showstate("pop (unsupported)")
+ showstate("pop")
end
top=top+1
- stack[top]=0
+ stack[top]=popped
else
top=0
end
end
local function setcurrentpoint()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
- showstate("pop (unsupported)")
+ showstate("setcurrentpoint (unsupported)")
end
x=x+stack[top-1]
y=y+stack[top]
@@ -10500,6 +10571,39 @@ do
vhcurveto,
hvcurveto,
}
+ local reverse={ [0]="unsupported",
+ "getstem",
+ "unsupported",
+ "getstem",
+ "vmoveto",
+ "rlineto",
+ "hlineto",
+ "vlineto",
+ "rrcurveto",
+ "unsupported",
+ "unsupported",
+ "unsupported",
+ "unsupported",
+ "hsbw",
+ "unsupported",
+ "setvsindex",
+ "blend",
+ "unsupported",
+ "getstem",
+ "getmask",
+ "getmask",
+ "rmoveto",
+ "hmoveto",
+ "getstem",
+ "rcurveline",
+ "rlinecurve",
+ "vvcurveto",
+ "hhcurveto",
+ "unsupported",
+ "unsupported",
+ "vhcurveto",
+ "hvcurveto",
+ }
local subactions={
[000]=dotsection,
[001]=getstem3,
@@ -10613,7 +10717,7 @@ do
local function call(scope,list,bias)
depth=depth+1
if top==0 then
- showstate(formatters["unknown %s call %s"](scope,"?"))
+ showstate(formatters["unknown %s call %s, case %s"](scope,"?",1))
top=0
else
local index=stack[top]+bias
@@ -10625,13 +10729,12 @@ do
if tab then
process(tab)
else
- showstate(formatters["unknown %s call %s"](scope,index))
+ showstate(formatters["unknown %s call %s, case %s"](scope,index,2))
top=0
end
end
depth=depth-1
end
- local justpass=false
process=function(tab)
local i=1
local n=#tab
@@ -10702,6 +10805,17 @@ do
r=r+1;result[r]=chars[12]
r=r+1;result[r]=chars[t]
top=0
+ elseif t==6 then
+ seacs[procidx]={
+ asb=stack[1],
+ adx=stack[2],
+ ady=stack[3],
+ base=stack[4],
+ accent=stack[5],
+ width=width,
+ lsb=lsb,
+ }
+ top=0
else
local a=subactions[t]
if a then
@@ -10731,44 +10845,52 @@ do
i=i+s+1
elseif t==1 or t==3 or t==18 or operation==23 then
p_getstem()
-if true then
- if top>0 then
- for i=1,top do
- r=r+1;result[r]=encode[stack[i]]
+ if true then
+ if top>0 then
+ for i=1,top do
+ r=r+1;result[r]=encode[stack[i]]
+ end
+ top=0
end
+ r=r+1;result[r]=chars[t]
+ else
top=0
end
- r=r+1;result[r]=chars[t]
-else
- top=0
-end
i=i+1
elseif t==19 or t==20 then
local s=p_getmask() or 0
-if true then
- if top>0 then
- for i=1,top do
- r=r+1;result[r]=encode[stack[i]]
+ if true then
+ if top>0 then
+ for i=1,top do
+ r=r+1;result[r]=encode[stack[i]]
+ end
+ top=0
end
+ r=r+1;result[r]=chars[t]
+ for j=1,s do
+ i=i+1
+ r=r+1;result[r]=chars[tab[i]]
+ end
+ else
+ i=i+s
top=0
end
- r=r+1;result[r]=chars[t]
- for j=1,s do
- i=i+1
- r=r+1;result[r]=chars[tab[i]]
- end
-else
- i=i+s
- top=0
-end
i=i+1
elseif t==9 then
top=0
i=i+1
elseif t==13 then
- local s=hsbw() or 0
- i=i+s+1
+ hsbw()
+ if version=="cff" then
+ r=r+1;result[r]=encode[lsb]
+ r=r+1;result[r]=chars[22]
+ else
+ end
+ i=i+1
else
+ if trace_charstrings then
+ showstate(reverse[t] or "<action>")
+ end
if top>0 then
for i=1,top do
r=r+1;result[r]=encode[stack[i]]
@@ -10789,7 +10911,7 @@ end
end
else
if trace_charstrings then
- showvalue("<action>",t)
+ showstate(reverse[t] or "<action>")
end
top=0
i=i+1
@@ -10808,7 +10930,7 @@ end
((l<1240 and 107) or (l<33900 and 1131) or 32768)+1
end
end
- local function processshape(tab,index)
+ local function processshape(tab,index,hack)
if not tab then
glyphs[index]={
boundingbox={ 0,0,0,0 },
@@ -10821,10 +10943,13 @@ end
x=0
y=0
width=false
+ lsb=0
r=0
top=0
stems=0
result={}
+ popped=3
+ procidx=index
xmin=0
xmax=0
ymin=0
@@ -10838,6 +10963,9 @@ end
updateregions(vsindex)
end
process(tab)
+ if hack then
+ return x,y
+ end
local boundingbox={
round(xmin),
round(ymin),
@@ -10892,6 +11020,8 @@ end
axis=false
regions=data.regions
justpass=streams==true
+ popped=3
+ seacs={}
if regions then
regions={ regions }
axis=data.factors or false
@@ -10905,6 +11035,8 @@ end
locals=false
globals=false
strings=false
+ popped=3
+ seacs={}
end
local function setwidths(private)
if not private then
@@ -10934,6 +11066,29 @@ end
for index=1,#charstrings do
processshape(charstrings[index],index-1)
end
+ if justpass and next(seacs) then
+ local charset=data.dictionaries[1].charset
+ if charset then
+ local lookup=table.swapped(charset)
+ for index,v in next,seacs do
+ local bindex=lookup[standardnames[v.base]]
+ local aindex=lookup[standardnames[v.accent]]
+ local bglyph=bindex and glyphs[bindex]
+ local aglyph=aindex and glyphs[aindex]
+ if bglyph and aglyph then
+ local jp=justpass
+ justpass=false
+ local x,y=processshape(charstrings[bindex+1],bindex,true)
+ justpass=jp
+ local base=bglyph.stream
+ local accent=aglyph.stream
+ local moveto=encode[-x-v.asb+v.adx]..chars[22]..encode[-y+v.ady]..chars[ 4]
+ base=sub(base,1,#base-1)
+ glyphs[index].stream=base..moveto..accent
+ end
+ end
+ end
+ end
stopparsing(fontdata,data)
else
report("no charstrings")
@@ -10950,6 +11105,7 @@ end
vsindex=dictionary.vsindex or 0
glyphs=glphs or {}
justpass=streams==true
+ seacs={}
globalbias,localbias=setbias(globals,locals,nobias)
nominalwidth,defaultwidth=setwidths(dictionary.private)
processshape(tab,index-1)
@@ -11296,10 +11452,10 @@ function readers.cffcheck(filename)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-cff”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-cff”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ttf” 44e61cef50dab9b1aaf48130f9367c34] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ttf” 44e61cef50dab9b1aaf48130f9367c34] ---
if not modules then modules={} end modules ['font-ttf']={
version=1.001,
@@ -12469,10 +12625,10 @@ function readers.gvar(f,fontdata,specification,glyphdata,shapedata)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ttf”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ttf”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-dsp” 5d3db0184c903829b2c5bddcb8cdb14c] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-dsp” 5d3db0184c903829b2c5bddcb8cdb14c] ---
if not modules then modules={} end modules ['font-dsp']={
version=1.001,
@@ -15719,10 +15875,10 @@ function readers.mvar(f,fontdata,specification)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-dsp”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-dsp”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-oup” 0cef35af01739f52fd09feb5401192ae] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-oup” 0cef35af01739f52fd09feb5401192ae] ---
if not modules then modules={} end modules ['font-oup']={
version=1.001,
@@ -18363,10 +18519,10 @@ function readers.expand(data)
expandlookups(sublookups)
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-oup”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-oup”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otl” ec0241b7465a7713e53c246e8e9fb2a8] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otl” ec0241b7465a7713e53c246e8e9fb2a8] ---
if not modules then modules={} end modules ['font-otl']={
version=1.001,
@@ -19070,10 +19226,10 @@ otf.coverup={
end
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otl”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otl”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-oto” 52804afd96f4be005f513a012b874668] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-oto” 24238a7c600d090a8ee88312321dd9b3] ---
if not modules then modules={} end modules ['font-oto']={
version=1.001,
@@ -19085,7 +19241,7 @@ if not modules then modules={} end modules ['font-oto']={
local concat,unpack=table.concat,table.unpack
local insert,remove=table.insert,table.remove
local format,gmatch,gsub,find,match,lower,strip=string.format,string.gmatch,string.gsub,string.find,string.match,string.lower,string.strip
-local type,next,tonumber,tostring,rawget=type,next,tonumber,tostring,rawget
+local type,next,tonumber,tostring=type,next,tonumber,tostring
local trace_baseinit=false trackers.register("otf.baseinit",function(v) trace_baseinit=v end)
local trace_singles=false trackers.register("otf.singles",function(v) trace_singles=v end)
local trace_multiples=false trackers.register("otf.multiples",function(v) trace_multiples=v end)
@@ -19531,10 +19687,10 @@ registerotffeature {
}
otf.basemodeinitializer=featuresinitializer
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-oto”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-oto”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otj” 66c7a910d95d4a52b81061de776898e1] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otj” 66c7a910d95d4a52b81061de776898e1] ---
if not modules then modules={} end modules ['font-otj']={
version=1.001,
@@ -20991,10 +21147,10 @@ function injections.handler(head,where)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otj”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otj”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ota” d6dfb94563d6a52675e274b2e673e4a6] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ota” d6dfb94563d6a52675e274b2e673e4a6] ---
if not modules then modules={} end modules ['font-ota']={
version=1.001,
@@ -21371,10 +21527,10 @@ directives.register("otf.analyze.useunicodemarks",function(v)
analyzers.useunicodemarks=v
end)
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ota”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ota”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ots” d6a0ce4b40cd4ee1895e2248dcf87d37] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ots” d0107799ec82da7f96dafe9626c5ee7f] ---
if not modules then modules={} end modules ['font-ots']={
version=1.001,
@@ -21466,6 +21622,7 @@ local find_node_tail=nuts.tail
local flush_node_list=nuts.flush_list
local flush_node=nuts.flush_node
local end_of_math=nuts.end_of_math
+local start_of_par=nuts.start_of_par
local setmetatable=setmetatable
local setmetatableindex=table.setmetatableindex
local nextnode=nuts.traversers.node
@@ -24436,7 +24593,7 @@ do
checkstep(head)
end
local initialrl=0
- if getid(head)==localpar_code and getsubtype(head)==0 then
+ if getid(head)==localpar_code and start_of_par(head) then
initialrl=pardirstate(head)
elseif direction==1 or direction=="TRT" then
initialrl=-1
@@ -24768,19 +24925,25 @@ registerotffeature {
plug=otf.pluginprocessor,
}
}
+local function markinitializer(tfmdata,value)
+ local properties=tfmdata.properties
+ properties.checkmarks=value
+end
+registerotffeature {
+ name="checkmarks",
+ description="check mark widths",
+ default=true,
+ initializers={
+ node=markinitializer,
+ },
+}
otf.handlers=handlers
+if context then
+ return
+else
+end
local setspacekerns=nodes.injections.setspacekerns if not setspacekerns then os.exit() end
-local tag="kern"
-if fontfeatures then
- function handlers.trigger_space_kerns(head,dataset,sequence,initialrl,font,attr)
- local features=fontfeatures[font]
- local enabled=features and features.spacekern and features[tag]
- if enabled then
- setspacekerns(font,sequence)
- end
- return head,enabled
- end
-else
+local tag="kern"
function handlers.trigger_space_kerns(head,dataset,sequence,initialrl,font,attr)
local shared=fontdata[font].shared
local features=shared and shared.features
@@ -24790,7 +24953,6 @@ else
end
return head,enabled
end
-end
local function hasspacekerns(data)
local resources=data.resources
local sequences=resources.sequences
@@ -24975,23 +25137,11 @@ registerotffeature {
node=spaceinitializer,
},
}
-local function markinitializer(tfmdata,value)
- local properties=tfmdata.properties
- properties.checkmarks=value
-end
-registerotffeature {
- name="checkmarks",
- description="check mark widths",
- default=true,
- initializers={
- node=markinitializer,
- },
-}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ots”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ots”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-osd” 39e92f6e575741646d75ea79e3be87f3] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-osd” 39e92f6e575741646d75ea79e3be87f3] ---
if not modules then modules={} end modules ['font-osd']={
version=1.001,
@@ -27423,10 +27573,10 @@ for i=1,nofscripts do
methods[scripts_two[i]]=method_two
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-osd”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-osd”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ocl” ba40df1a92b9b42a5c70d20c28f44759] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ocl” c1f4cbea3c4ec5002a04fc637b135711] ---
if not modules then modules={} end modules ['font-ocl']={
version=1.001,
@@ -27740,7 +27890,6 @@ do
local pdfshapes={}
local inkscape=runner()
if inkscape then
- local indices=fonts.getindices(tfmdata)
local descriptions=tfmdata.descriptions
local nofshapes=#svgshapes
local f_svgfile=formatters["temp-otf-svg-shape-%i.svg"]
@@ -27964,10 +28113,10 @@ if context then
}
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-ocl”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-ocl”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otc” 1204a2fdc436e644127c0aa38ab69607] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otc” 1204a2fdc436e644127c0aa38ab69607] ---
if not modules then modules={} end modules ['font-otc']={
version=1.001,
@@ -28724,10 +28873,10 @@ end
otf.enhancers.enhance=enhance
otf.enhancers.register("check extra features",enhance)
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-otc”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-otc”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-onr” d4d2449b4084e6afb1837ae5835082cc] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-onr” 22572ec0f86f53631e14b6d1ed43ee51] ---
if not modules then modules={} end modules ['font-onr']={
version=1.001,
@@ -28737,7 +28886,7 @@ if not modules then modules={} end modules ['font-onr']={
license="see context related readme files"
}
local fonts,logs,trackers,resolvers=fonts,logs,trackers,resolvers
-local next,type,tonumber,rawget,rawset=next,type,tonumber,rawget,rawset
+local next,type,tonumber,rawset=next,type,tonumber,rawset
local match,lower,gsub,strip,find=string.match,string.lower,string.gsub,string.strip,string.find
local char,byte,sub=string.char,string.byte,string.sub
local abs=math.abs
@@ -29099,10 +29248,10 @@ function readers.getinfo(filename)
end
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-onr”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-onr”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-one” 987c5c5ed3754ad2feab80985067d59e] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-one” 987c5c5ed3754ad2feab80985067d59e] ---
if not modules then modules={} end modules ['font-one']={
version=1.001,
@@ -29813,10 +29962,10 @@ registerafmenhancer("normalize features",enhance_normalize_features)
registerafmenhancer("check extra features",otfenhancers.enhance)
registerafmenhancer("fix names",enhance_fix_names)
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-one”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-one”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-afk” 54d554530e75c57c56ee76234724e26d] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-afk” 54d554530e75c57c56ee76234724e26d] ---
if not modules then modules={} end modules ['font-afk']={
version=1.001,
@@ -29983,10 +30132,10 @@ fonts.handlers.afm.helpdata={
}
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-afk”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-afk”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-tfm” 3bbba3214fd0b8c6f35ad85592fc2917] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-tfm” 3bbba3214fd0b8c6f35ad85592fc2917] ---
if not modules then modules={} end modules ['luatex-fonts-tfm']={
version=1.001,
@@ -30501,10 +30650,10 @@ registertfmfeature {
}
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-tfm”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-tfm”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-lua” 55b281fb98f7bd848fc19928f376f647] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-lua” 55b281fb98f7bd848fc19928f376f647] ---
if not modules then modules={} end modules ['font-lua']={
version=1.001,
@@ -30544,10 +30693,10 @@ function readers.lua(specification)
return check_lua(specification,fullname)
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-lua”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-lua”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-def” f66c365dae4499f982d8bf16e5d37de3] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-def” c525b9f55da1c736a1f6939c0a6f8f00] ---
if not modules then modules={} end modules ['font-def']={
version=1.001,
@@ -30579,7 +30728,6 @@ local variants=allocate()
specifiers.variants=variants
definers.methods=definers.methods or {}
local internalized=allocate()
-local lastdefined=nil
local loadedfonts=constructors.loadedfonts
local designsizes=constructors.designsizes
local resolvefile=fontgoodies and fontgoodies.filenames and fontgoodies.filenames.resolve or function(s) return s end
@@ -30878,9 +31026,6 @@ function constructors.readanddefine(name,size)
end
return fontdata[id],id
end
-function definers.current()
- return lastdefined
-end
function definers.registered(hash)
local id=internalized[hash]
return id,id and fontdata[id]
@@ -30931,7 +31076,6 @@ function definers.read(specification,size,id)
end
end
end
- lastdefined=tfmdata or id
if not tfmdata then
report_defining("unknown font %a, loading aborted",specification.name)
elseif trace_defining and type(tfmdata)=="table" then
@@ -30947,12 +31091,14 @@ end
function font.getfont(id)
return fontdata[id]
end
-callbacks.register('define_font',definers.read,"definition of fonts (tfmdata preparation)")
+if not context then
+ callbacks.register('define_font',definers.read,"definition of fonts (tfmdata preparation)")
+end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-def”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-def”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-def” 5ad79120ebc5e60f4d322fb3ee13bffe] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-def” 5ad79120ebc5e60f4d322fb3ee13bffe] ---
if not modules then modules={} end modules ['luatex-fonts-def']={
version=1.001,
@@ -31033,10 +31179,10 @@ function fonts.definers.applypostprocessors(tfmdata)
return tfmdata
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-def”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-def”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-ext” 01015ab3758cdc2af29394e6d502a91a] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-ext” 01015ab3758cdc2af29394e6d502a91a] ---
if not modules then modules={} end modules ['luatex-fonts-ext']={
version=1.001,
@@ -31222,10 +31368,10 @@ registerotffeature {
}
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-ext”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-ext”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-tex” 77c374b0ef00c2fb12188ec42beb4257] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-tex” 77c374b0ef00c2fb12188ec42beb4257] ---
if not modules then modules={} end modules ['font-imp-tex']={
version=1.001,
@@ -31324,10 +31470,10 @@ registerotffeature {
description="arabic digits",
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-tex”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-tex”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-ligatures” 043daa4fcccf2560868da359d71d3a4a] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-ligatures” 043daa4fcccf2560868da359d71d3a4a] ---
if not modules then modules={} end modules ['font-imp-ligatures']={
version=1.001,
@@ -31441,10 +31587,10 @@ if context then
}
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-ligatures”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-ligatures”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-italics” fe1ca80fb5ea4a2f8d2d5c484e7ba913] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-italics” fe1ca80fb5ea4a2f8d2d5c484e7ba913] ---
if not modules then modules={} end modules ['font-imp-italics']={
version=1.001,
@@ -31550,10 +31696,10 @@ if context then
registerafmfeature(dimensions_specification)
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-italics”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-italics”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-effects” 73a660359a0ec71e44cc2b7225a715ac] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-effects” 73a660359a0ec71e44cc2b7225a715ac] ---
if not modules then modules={} end modules ['font-imp-effects']={
version=1.001,
@@ -31910,10 +32056,10 @@ local specification={
registerotffeature(specification)
registerafmfeature(specification)
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “font-imp-effects”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “font-imp-effects”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-lig” b9dbe77ce747d4c35bb2a20ffbe5aa51] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-lig” b9dbe77ce747d4c35bb2a20ffbe5aa51] ---
fonts.handlers.otf.addfeature {
@@ -33982,10 +34128,10 @@ fonts.handlers.otf.addfeature {
["type"]="ligature",
}
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-lig”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-lig”] ---
-do --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-gbn” d25472d54c4841db43a745764a63533e] ---
+do --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-gbn” d25472d54c4841db43a745764a63533e] ---
if not modules then modules={} end modules ['luatex-fonts-gbn']={
version=1.001,
@@ -34250,7 +34396,7 @@ function nodes.simple_font_handler(head,groupcode,size,packtype,direction)
return head
end
-end --- [luaotfload, fontloader-2019-10-29.lua scope for “fonts-gbn”] ---
+end --- [luaotfload, fontloader-2020-02-02.lua scope for “fonts-gbn”] ---
--- vim:ft=lua:sw=2:ts=8:et:tw=79
diff --git a/macros/luatex/generic/luaotfload/fontloader-basics-gen.lua b/macros/luatex/generic/luaotfload/fontloader-basics-gen.lua
index 3959ca0222..f52fec6967 100644
--- a/macros/luatex/generic/luaotfload/fontloader-basics-gen.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-basics-gen.lua
@@ -189,7 +189,7 @@ local readables = { }
local usingjit = jit
if not caches.namespace or caches.namespace == "" or caches.namespace == "context" then
- caches.namespace = 'generic'
+ caches.namespace = 'generic-dev'
end
do
diff --git a/macros/luatex/generic/luaotfload/fontloader-basics-nod.lua b/macros/luatex/generic/luaotfload/fontloader-basics-nod.lua
index 172fcc7f7e..be82277bd4 100644
--- a/macros/luatex/generic/luaotfload/fontloader-basics-nod.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-basics-nod.lua
@@ -279,3 +279,14 @@ if not nuts.setreplace then
end
end
+
+do
+
+ local getsubtype = nuts.getsubtype
+
+ function nuts.start_of_par(n)
+ local s = getsubtype(n)
+ return s == 0 or s == 2 -- sorry, hardcoded, won't change anyway
+ end
+
+end
diff --git a/macros/luatex/generic/luaotfload/fontloader-data-con.lua b/macros/luatex/generic/luaotfload/fontloader-data-con.lua
index c79fca7c5c..ec2251b353 100644
--- a/macros/luatex/generic/luaotfload/fontloader-data-con.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-data-con.lua
@@ -6,6 +6,7 @@ if not modules then modules = { } end modules ['data-con'] = {
license = "see context related readme files"
}
+local setmetatable = setmetatable
local format, lower, gsub = string.format, string.lower, string.gsub
local trace_cache = false trackers.register("resolvers.cache", function(v) trace_cache = v end)
@@ -13,21 +14,28 @@ local trace_containers = false trackers.register("resolvers.containers", functi
local trace_storage = false trackers.register("resolvers.storage", function(v) trace_storage = v end)
--[[ldx--
-<p>Once we found ourselves defining similar cache constructs
-several times, containers were introduced. Containers are used
-to collect tables in memory and reuse them when possible based
-on (unique) hashes (to be provided by the calling function).</p>
+<p>Once we found ourselves defining similar cache constructs several times,
+containers were introduced. Containers are used to collect tables in memory and
+reuse them when possible based on (unique) hashes (to be provided by the calling
+function).</p>
-<p>Caching to disk is disabled by default. Version numbers are
-stored in the saved table which makes it possible to change the
-table structures without bothering about the disk cache.</p>
+<p>Caching to disk is disabled by default. Version numbers are stored in the
+saved table which makes it possible to change the table structures without
+bothering about the disk cache.</p>
-<p>Examples of usage can be found in the font related code.</p>
+<p>Examples of usage can be found in the font related code. This code is not
+ideal but we need it in generic too so we compromise.</p>
--ldx]]--
-containers = containers or { }
-local containers = containers
-containers.usecache = true
+containers = containers or { }
+local containers = containers
+containers.usecache = true
+
+local getwritablepath = caches.getwritablepath
+local getreadablepaths = caches.getreadablepaths
+local cacheiswritable = caches.is_writable
+local loaddatafromcache = caches.loaddata
+local savedataincache = caches.savedata
local report_containers = logs.reporter("resolvers","containers")
@@ -36,11 +44,11 @@ local allocated = { }
local mt = {
__index = function(t,k)
if k == "writable" then
- local writable = caches.getwritablepath(t.category,t.subcategory) or { "." }
+ local writable = getwritablepath(t.category,t.subcategory) or { "." }
t.writable = writable
return writable
elseif k == "readables" then
- local readables = caches.getreadablepaths(t.category,t.subcategory) or { "." }
+ local readables = getreadablepaths(t.category,t.subcategory) or { "." }
t.readables = readables
return readables
end
@@ -64,8 +72,8 @@ function containers.define(category, subcategory, version, enabled)
enabled = enabled,
version = version or math.pi, -- after all, this is TeX
trace = false,
- -- writable = caches.getwritablepath and caches.getwritablepath (category,subcategory) or { "." },
- -- readables = caches.getreadablepaths and caches.getreadablepaths(category,subcategory) or { "." },
+ -- writable = getwritablepath and getwritablepath (category,subcategory) or { "." },
+ -- readables = getreadablepaths and getreadablepaths(category,subcategory) or { "." },
}
setmetatable(s,mt)
c[subcategory] = s
@@ -75,7 +83,7 @@ function containers.define(category, subcategory, version, enabled)
end
function containers.is_usable(container,name)
- return container.enabled and caches and caches.is_writable(container.writable, name)
+ return container.enabled and caches and cacheiswritable(container.writable, name)
end
function containers.is_valid(container,name)
@@ -91,7 +99,7 @@ function containers.read(container,name)
local storage = container.storage
local stored = storage[name]
if not stored and container.enabled and caches and containers.usecache then
- stored = caches.loaddata(container.readables,name,container.writable)
+ stored = loaddatafromcache(container.readables,name,container.writable)
if stored and stored.cache_version == container.version then
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","load",container.subcategory,name)
@@ -108,17 +116,20 @@ function containers.read(container,name)
return stored
end
-function containers.write(container, name, data)
+function containers.write(container, name, data, fast)
if data then
data.cache_version = container.version
if container.enabled and caches then
- local unique, shared = data.unique, data.shared
- data.unique, data.shared = nil, nil
- caches.savedata(container.writable, name, data)
+ local unique = data.unique
+ local shared = data.shared
+ data.unique = nil
+ data.shared = nil
+ savedataincache(container.writable, name, data, fast)
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","save",container.subcategory,name)
end
- data.unique, data.shared = unique, shared
+ data.unique = unique
+ data.shared = shared
end
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","store",container.subcategory,name)
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-cff.lua b/macros/luatex/generic/luaotfload/fontloader-font-cff.lua
index a19acc1a1d..5f79ba7a33 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-cff.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-cff.lua
@@ -27,7 +27,7 @@ if not modules then modules = { } end modules ['font-cff'] = {
-- the other hand, we can now feed back cff2 stuff.
local next, type, tonumber, rawget = next, type, tonumber, rawget
-local byte, char, gmatch = string.byte, string.char, string.gmatch
+local byte, char, gmatch, sub = string.byte, string.char, string.gmatch, string.sub
local concat, remove, unpack = table.concat, table.remove, table.unpack
local floor, abs, round, ceil, min, max = math.floor, math.abs, math.round, math.ceil, math.min, math.max
local P, C, R, S, C, Cs, Ct = lpeg.P, lpeg.C, lpeg.R, lpeg.S, lpeg.C, lpeg.Cs, lpeg.Ct
@@ -145,6 +145,38 @@ local defaultstrings = { [0] = -- taken from ff
"Black", "Bold", "Book", "Light", "Medium", "Regular", "Roman", "Semibold",
}
+local standardnames = { [0] = -- needed for seac
+ false, false, false, false, false, false, false, false, false, false, false,
+ false, false, false, false, false, false, false, false, false, false, false,
+ false, false, false, false, false, false, false, false, false, false,
+ "space", "exclam", "quotedbl", "numbersign", "dollar", "percent",
+ "ampersand", "quoteright", "parenleft", "parenright", "asterisk", "plus",
+ "comma", "hyphen", "period", "slash", "zero", "one", "two", "three", "four",
+ "five", "six", "seven", "eight", "nine", "colon", "semicolon", "less",
+ "equal", "greater", "question", "at", "A", "B", "C", "D", "E", "F", "G", "H",
+ "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W",
+ "X", "Y", "Z", "bracketleft", "backslash", "bracketright", "asciicircum",
+ "underscore", "quoteleft", "a", "b", "c", "d", "e", "f", "g", "h", "i", "j",
+ "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y",
+ "z", "braceleft", "bar", "braceright", "asciitilde", false, false, false,
+ false, false, false, false, false, false, false, false, false, false, false,
+ false, false, false, false, false, false, false, false, false, false, false,
+ false, false, false, false, false, false, false, false, false, "exclamdown",
+ "cent", "sterling", "fraction", "yen", "florin", "section", "currency",
+ "quotesingle", "quotedblleft", "guillemotleft", "guilsinglleft",
+ "guilsinglright", "fi", "fl", false, "endash", "dagger", "daggerdbl",
+ "periodcentered", false, "paragraph", "bullet", "quotesinglbase",
+ "quotedblbase", "quotedblright", "guillemotright", "ellipsis", "perthousand",
+ false, "questiondown", false, "grave", "acute", "circumflex", "tilde",
+ "macron", "breve", "dotaccent", "dieresis", false, "ring", "cedilla", false,
+ "hungarumlaut", "ogonek", "caron", "emdash", false, false, false, false,
+ false, false, false, false, false, false, false, false, false, false, false,
+ false, "AE", false, "ordfeminine", false, false, false, false, "Lslash",
+ "Oslash", "OE", "ordmasculine", false, false, false, false, false, "ae",
+ false, false, false, "dotlessi", false, false, "lslash", "oslash", "oe",
+ "germandbls", false, false, false, false
+}
+
local cffreaders = {
readbyte,
readushort,
@@ -655,6 +687,7 @@ do
local x = 0
local y = 0
local width = false
+ local lsb = 0
local r = 0
local stems = 0
local globalbias = 0
@@ -678,6 +711,9 @@ do
local factors = false
local axis = false
local vsindex = 0
+ local justpass = false
+ local seacs = { }
+ local procidx = nil
local function showstate(where)
report("%w%-10s : [%s] n=%i",depth*2,where,concat(stack," ",1,top),top)
@@ -1264,7 +1300,7 @@ do
end
local function divide()
- if version == 1 then
+ if version == "cff" then
local d = stack[top]
top = top - 1
stack[top] = stack[top] / d
@@ -1272,7 +1308,7 @@ do
end
local function closepath()
- if version == 1 then
+ if version == "cff" then
if trace_charstrings then
showstate("closepath")
end
@@ -1281,65 +1317,90 @@ do
end
local function hsbw()
- if version == 1 then
+ if version == "cff" then
if trace_charstrings then
showstate("hsbw")
end
- -- lsb = stack[top-1]
+ lsb = stack[top-1] or 0
width = stack[top]
end
top = 0
end
- local function seac()
- if version == 1 then
+ local function sbw()
+ if version == "cff" then
if trace_charstrings then
- showstate("seac")
+ showstate("sbw")
end
+ lsb = stack[top-3]
+ width = stack[top-1]
end
top = 0
end
- local function sbw()
- if version == 1 then
+ -- asb adx ady bchar achar seac (accented characters)
+
+ local function seac()
+ if version == "cff" then
if trace_charstrings then
- showstate("sbw")
+ showstate("seac")
end
- width = stack[top-1]
end
top = 0
end
- -- these are probably used for special cases i.e. call out to postscript
+ -- These are probably used for special cases i.e. call out to the
+ -- postscript interpreter (p 61 of the spec as well as chapter 8).
+ --
+ -- This needs checking (I have to ask Taco next time we meet.)
+
+ local popped = 3
+ local hints = 3
+
+ -- arg1 ... argn n othersubr# <callothersubr> (on postscript stack)
local function callothersubr()
- if version == 1 then
- -- we don't support this (ok, we could mimick these othersubs)
+ if version == "cff" then
if trace_charstrings then
- showstate("callothersubr (unsupported)")
+ showstate("callothersubr")
+ end
+ if stack[top] == hints then
+ popped = stack[top-2]
+ else
+ popped = 3
end
+ local t = stack[top-1]
+ if t then
+ top = top - (t + 2)
+ if top < 0 then
+ top = 0
+ end
+ else
+ top = 0
+ end
+ else
+ top = 0
end
- top = 0
end
+ -- <pop> number (from postscript stack)
+
local function pop()
- if version == 1 then
- -- we don't support this
+ if version == "cff" then
if trace_charstrings then
- showstate("pop (unsupported)")
+ showstate("pop")
end
top = top + 1
- stack[top] = 0 -- a dummy
+ stack[top] = popped
else
top = 0
end
end
local function setcurrentpoint()
- if version == 1 then
- -- we don't support this
+ if version == "cff" then
if trace_charstrings then
- showstate("pop (unsupported)")
+ showstate("setcurrentpoint (unsupported)")
end
x = x + stack[top-1]
y = y + stack[top]
@@ -1489,6 +1550,41 @@ do
hvcurveto, -- 31
}
+ local reverse = { [0] =
+ "unsupported",
+ "getstem",
+ "unsupported",
+ "getstem",
+ "vmoveto",
+ "rlineto",
+ "hlineto",
+ "vlineto",
+ "rrcurveto",
+ "unsupported",
+ "unsupported",
+ "unsupported",
+ "unsupported",
+ "hsbw",
+ "unsupported",
+ "setvsindex",
+ "blend",
+ "unsupported",
+ "getstem",
+ "getmask",
+ "getmask",
+ "rmoveto",
+ "hmoveto",
+ "getstem",
+ "rcurveline",
+ "rlinecurve",
+ "vvcurveto",
+ "hhcurveto",
+ "unsupported",
+ "unsupported",
+ "vhcurveto",
+ "hvcurveto",
+ }
+
local subactions = {
-- cff 1
[000] = dotsection,
@@ -1540,6 +1636,7 @@ do
for i=1132,2048 do
t[i] = char(28,band(rshift(i,8),0xFF),band(i,0xFF))
end
+ -- we could inline some ...
setmetatableindex(encode,function(t,k)
-- 16.16-bit signed fixed value
local r = round(k)
@@ -1625,7 +1722,7 @@ do
local function call(scope,list,bias) -- ,process)
depth = depth + 1
if top == 0 then
- showstate(formatters["unknown %s call %s"](scope,"?"))
+ showstate(formatters["unknown %s call %s, case %s"](scope,"?",1))
top = 0
else
local index = stack[top] + bias
@@ -1637,7 +1734,7 @@ do
if tab then
process(tab)
else
- showstate(formatters["unknown %s call %s"](scope,index))
+ showstate(formatters["unknown %s call %s, case %s"](scope,index,2))
top = 0
end
end
@@ -1646,8 +1743,6 @@ do
-- precompiling and reuse is much slower than redoing the calls
- local justpass = false
-
-- local function decode(str)
-- local a, b, c, d, e = byte(str,1,5)
-- if a == 28 then
@@ -1765,6 +1860,17 @@ do
r = r + 1 ; result[r] = chars[12]
r = r + 1 ; result[r] = chars[t]
top = 0
+ elseif t == 6 then
+ seacs[procidx] = {
+ asb = stack[1],
+ adx = stack[2],
+ ady = stack[3],
+ base = stack[4],
+ accent = stack[5],
+ width = width,
+ lsb = lsb,
+ }
+ top = 0
else
local a = subactions[t]
if a then
@@ -1796,46 +1902,56 @@ do
-- cff 1: (when cff2 strip them)
elseif t == 1 or t == 3 or t == 18 or operation == 23 then
p_getstem() -- at the start
-if true then
- if top > 0 then
- for i=1,top do
- r = r + 1 ; result[r] = encode[stack[i]]
+ if true then
+ if top > 0 then
+ for i=1,top do
+ r = r + 1 ; result[r] = encode[stack[i]]
+ end
+ top = 0
end
+ r = r + 1 ; result[r] = chars[t]
+ else
top = 0
end
- r = r + 1 ; result[r] = chars[t]
-else
- top = 0
-end
i = i + 1
-- cff 1: (when cff2 strip them)
elseif t == 19 or t == 20 then
local s = p_getmask() or 0 -- after the stems
-if true then
- if top > 0 then
- for i=1,top do
- r = r + 1 ; result[r] = encode[stack[i]]
+ if true then
+ if top > 0 then
+ for i=1,top do
+ r = r + 1 ; result[r] = encode[stack[i]]
+ end
+ top = 0
+ end
+ r = r + 1 ; result[r] = chars[t]
+ for j=1,s do
+ i = i + 1
+ r = r + 1 ; result[r] = chars[tab[i]]
end
+ else
+ i = i + s
top = 0
end
- r = r + 1 ; result[r] = chars[t]
- for j=1,s do
- i = i + 1
- r = r + 1 ; result[r] = chars[tab[i]]
- end
-else
- i = i + s
- top = 0
-end
i = i + 1
-- cff 1: closepath
elseif t == 9 then
top = 0
i = i + 1
elseif t == 13 then
- local s = hsbw() or 0
- i = i + s + 1
+ hsbw()
+ if version == "cff" then
+ -- we do a moveto over lsb
+ r = r + 1 ; result[r] = encode[lsb]
+ r = r + 1 ; result[r] = chars[22]
+ else
+ -- lsb is supposed to be zero
+ end
+ i = i + 1
else
+ if trace_charstrings then
+ showstate(reverse[t] or "<action>")
+ end
if top > 0 then
for i=1,top do
r = r + 1 ; result[r] = encode[stack[i]]
@@ -1856,7 +1972,7 @@ end
end
else
if trace_charstrings then
- showvalue("<action>",t)
+ showstate(reverse[t] or "<action>")
end
top = 0
i = i + 1
@@ -1915,7 +2031,7 @@ end
end
end
- local function processshape(tab,index)
+ local function processshape(tab,index,hack)
if not tab then
glyphs[index] = {
@@ -1931,10 +2047,13 @@ end
x = 0
y = 0
width = false
+ lsb = 0
r = 0
top = 0
stems = 0
result = { } -- we could reuse it when only boundingbox calculations are needed
+ popped = 3
+ procidx = index
xmin = 0
xmax = 0
@@ -1952,6 +2071,10 @@ end
process(tab)
+ if hack then
+ return x, y
+ end
+
local boundingbox = {
round(xmin),
round(ymin),
@@ -2016,6 +2139,8 @@ end
axis = false
regions = data.regions
justpass = streams == true
+ popped = 3
+ seacs = { }
if regions then
regions = { regions } -- needs checking
axis = data.factors or false
@@ -2030,6 +2155,8 @@ end
locals = false
globals = false
strings = false
+ popped = 3
+ seacs = { }
end
local function setwidths(private)
@@ -2064,7 +2191,35 @@ end
startparsing(fontdata,data,streams)
for index=1,#charstrings do
processshape(charstrings[index],index-1)
--- charstrings[index] = nil -- free memory (what if used more often?)
+ end
+ if justpass and next(seacs) then
+ -- old type 1 stuff ... seacs
+ local charset = data.dictionaries[1].charset
+ if charset then
+ local lookup = table.swapped(charset)
+ for index, v in next, seacs do
+ local bindex = lookup[standardnames[v.base]]
+ local aindex = lookup[standardnames[v.accent]]
+ local bglyph = bindex and glyphs[bindex]
+ local aglyph = aindex and glyphs[aindex]
+ if bglyph and aglyph then
+ -- this is a real ugly hack but we seldom enter this branch (e.g. old lbr)
+ local jp = justpass
+ justpass = false
+ local x, y = processshape(charstrings[bindex+1],bindex,true)
+ justpass = jp
+ --
+ local base = bglyph.stream
+ local accent = aglyph.stream
+ local moveto = encode[-x-v.asb+v.adx] .. chars[22]
+ .. encode[-y +v.ady] .. chars[ 4]
+ -- prune an endchar
+ base = sub(base,1,#base-1)
+ -- combine them
+ glyphs[index].stream = base .. moveto .. accent
+ end
+ end
+ end
end
stopparsing(fontdata,data)
else
@@ -2085,6 +2240,7 @@ end
glyphs = glphs or { }
justpass = streams == true
+ seacs = { }
globalbias, localbias = setbias(globals,locals,nobias)
nominalwidth, defaultwidth = setwidths(dictionary.private)
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-con.lua b/macros/luatex/generic/luaotfload/fontloader-font-con.lua
index 652794142b..e42d20d4e1 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-con.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-con.lua
@@ -40,7 +40,6 @@ local setmetatableindex = table.setmetatableindex
-- will be directives
constructors.dontembed = allocate()
-constructors.autocleanup = true
constructors.namemode = "fullpath" -- will be a function
constructors.version = 1.01
@@ -51,6 +50,8 @@ constructors.cacheintex = true -- so we see the original table in fonts.fon
constructors.addtounicode = true
+constructors.fixprotrusion = true
+
-- This might become an interface:
local designsizes = allocate()
@@ -134,21 +135,10 @@ make this profitable and the <l n='lua'/> based variant was just faster. A days
wasted day but an experience richer.</p>
--ldx]]--
--- we can get rid of the tfm instance when we have fast access to the
--- scaled character dimensions at the tex end, e.g. a fontobject.width
--- actually we already have some of that now as virtual keys in glyphs
---
--- flushing the kern and ligature tables from memory saves a lot (only
--- base mode) but it complicates vf building where the new characters
--- demand this data .. solution: functions that access them
-
function constructors.cleanuptable(tfmdata)
- if constructors.autocleanup and tfmdata.properties.virtualized then
- for k, v in next, tfmdata.characters do
- if v.commands then v.commands = nil end
- -- if v.kerns then v.kerns = nil end
- end
- end
+ -- This no longer makes sense because the addition of font.getcopy and its
+ -- possible usage in generic implicates that we need to return the whole
+ -- lot now.
end
-- experimental, sharing kerns (unscaled and scaled) saves memory
@@ -466,6 +456,7 @@ function constructors.scale(tfmdata,specification)
target.size = scaledpoints
--
target.encodingbytes = properties.encodingbytes or 1
+ target.subfont = properties.subfont
target.embedding = properties.embedding or "subset"
target.tounicode = 1
target.cidinfo = properties.cidinfo
@@ -598,7 +589,10 @@ function constructors.scale(tfmdata,specification)
--
constructors.enhanceparameters(targetparameters) -- official copies for us, now virtual
--
- local protrusionfactor = (targetquad ~= 0 and 1000/targetquad) or 0
+ -- I need to fix this in luatex ... get rid of quad there so that we can omit this here.
+ --
+ local protrusionfactor = constructors.fixprotrusion and ((targetquad ~= 0 and 1000/targetquad) or 1) or 1
+ --
local scaledwidth = defaultwidth * hdelta
local scaledheight = defaultheight * vdelta
local scaleddepth = defaultdepth * vdelta
@@ -1034,6 +1028,7 @@ function constructors.finalize(tfmdata)
properties.psname = properties.psname or tfmdata.psname
--
properties.encodingbytes = tfmdata.encodingbytes or 1
+ properties.subfont = tfmdata.subfont or nil
properties.embedding = tfmdata.embedding or "subset"
properties.tounicode = tfmdata.tounicode or 1
properties.cidinfo = tfmdata.cidinfo or nil
@@ -1067,6 +1062,7 @@ function constructors.finalize(tfmdata)
tfmdata.psname = nil
--
tfmdata.encodingbytes = nil
+ tfmdata.subfont = nil
tfmdata.embedding = nil
tfmdata.tounicode = nil
tfmdata.cidinfo = nil
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-def.lua b/macros/luatex/generic/luaotfload/fontloader-font-def.lua
index f3d0f81871..e287bf79ce 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-def.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-def.lua
@@ -45,7 +45,6 @@ specifiers.variants = variants
definers.methods = definers.methods or { }
local internalized = allocate() -- internal tex numbers (private)
-local lastdefined = nil -- we don't want this one to end up in s-tra-02
local loadedfonts = constructors.loadedfonts
local designsizes = constructors.designsizes
@@ -455,10 +454,6 @@ not gain much. By the way, passing id's back to in the callback was
introduced later in the development.</p>
--ldx]]--
-function definers.current() -- or maybe current
- return lastdefined
-end
-
function definers.registered(hash)
local id = internalized[hash]
return id, id and fontdata[id]
@@ -511,7 +506,6 @@ function definers.read(specification,size,id) -- id can be optional, name can al
end
end
end
- lastdefined = tfmdata or id -- todo ! ! ! ! !
if not tfmdata then -- or id?
report_defining( "unknown font %a, loading aborted",specification.name)
elseif trace_defining and type(tfmdata) == "table" then
@@ -533,4 +527,6 @@ end
<p>We overload the <l n='tfm'/> reader.</p>
--ldx]]--
-callbacks.register('define_font', definers.read, "definition of fonts (tfmdata preparation)")
+if not context then
+ callbacks.register('define_font', definers.read, "definition of fonts (tfmdata preparation)")
+end
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-ini.lua b/macros/luatex/generic/luaotfload/fontloader-font-ini.lua
index 462e30bf90..8bab6d9029 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-ini.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-ini.lua
@@ -52,3 +52,7 @@ fonts.privateoffsets = {
mathbase = 0xFF000, -- used for hidden (virtual math)
keepnames = false, -- when set to true names are always kept (not for context)
}
+
+if node and not tex.getfontoffamily then
+ tex.getfontoffamily = node.family_font -- we moved this
+end
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-ocl.lua b/macros/luatex/generic/luaotfload/fontloader-font-ocl.lua
index 3752203fa2..77e1538f94 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-ocl.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-ocl.lua
@@ -363,7 +363,6 @@ local function pdftovirtual(tfmdata,pdfshapes,kind) -- kind = png|svg
local actuale = { "pdf", "page", e } -- saves tables
--
local vfimage = lpdf and lpdf.vfimage or function(wd,ht,dp,data,name)
- -- needed for generic (if used there at all)
local name = storepdfdata(data)
return { "image", { filename = name, width = wd, height = ht, depth = dp } }
end
@@ -439,6 +438,8 @@ do
local xmlfirst = xml.first
function otfsvg.filterglyph(entry,index)
+ -- we only support decompression in lmtx, so one needs to wipe the
+ -- cache when invalid xml is reported
local svg = xmlconvert(entry.data)
local root = svg and xmlfirst(svg,"/svg[@id='glyph"..index.."']")
local data = root and tostring(root)
@@ -483,7 +484,7 @@ do
local pdfshapes = { }
local inkscape = runner()
if inkscape then
- local indices = fonts.getindices(tfmdata)
+ -- local indices = fonts.getindices(tfmdata)
local descriptions = tfmdata.descriptions
local nofshapes = #svgshapes
local f_svgfile = formatters["temp-otf-svg-shape-%i.svg"]
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-onr.lua b/macros/luatex/generic/luaotfload/fontloader-font-onr.lua
index 188aaf6449..fc6bead588 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-onr.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-onr.lua
@@ -21,7 +21,7 @@ add features.</p>
local fonts, logs, trackers, resolvers = fonts, logs, trackers, resolvers
-local next, type, tonumber, rawget, rawset = next, type, tonumber, rawget, rawset
+local next, type, tonumber, rawset = next, type, tonumber, rawset
local match, lower, gsub, strip, find = string.match, string.lower, string.gsub, string.strip, string.find
local char, byte, sub = string.char, string.byte, string.sub
local abs = math.abs
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-oto.lua b/macros/luatex/generic/luaotfload/fontloader-font-oto.lua
index 4d112ac316..6f5f2fb418 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-oto.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-oto.lua
@@ -9,7 +9,7 @@ if not modules then modules = { } end modules ['font-oto'] = { -- original tex
local concat, unpack = table.concat, table.unpack
local insert, remove = table.insert, table.remove
local format, gmatch, gsub, find, match, lower, strip = string.format, string.gmatch, string.gsub, string.find, string.match, string.lower, string.strip
-local type, next, tonumber, tostring, rawget = type, next, tonumber, tostring, rawget
+local type, next, tonumber, tostring = type, next, tonumber, tostring
local trace_baseinit = false trackers.register("otf.baseinit", function(v) trace_baseinit = v end)
local trace_singles = false trackers.register("otf.singles", function(v) trace_singles = v end)
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-otr.lua b/macros/luatex/generic/luaotfload/fontloader-font-otr.lua
index 4fe0a6a976..e726053202 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-otr.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-otr.lua
@@ -65,7 +65,7 @@ if not modules then modules = { } end modules ['font-otr'] = {
-- require("char-ini")
-- end
-local next, type, tonumber = next, type, tonumber
+local next, type, tonumber, rawget = next, type, tonumber, rawget
local byte, lower, char, gsub = string.byte, string.lower, string.char, string.gsub
local fullstrip = string.fullstrip
local floor, round = math.floor, math.round
diff --git a/macros/luatex/generic/luaotfload/fontloader-font-ots.lua b/macros/luatex/generic/luaotfload/fontloader-font-ots.lua
index 5091fd7657..c4f89c156b 100644
--- a/macros/luatex/generic/luaotfload/fontloader-font-ots.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-font-ots.lua
@@ -213,6 +213,7 @@ local find_node_tail = nuts.tail
local flush_node_list = nuts.flush_list
local flush_node = nuts.flush_node
local end_of_math = nuts.end_of_math
+local start_of_par = nuts.start_of_par
local setmetatable = setmetatable
local setmetatableindex = table.setmetatableindex
@@ -3804,7 +3805,7 @@ do
local initialrl = 0
- if getid(head) == localpar_code and getsubtype(head) == 0 then
+ if getid(head) == localpar_code and start_of_par(head) then
initialrl = pardirstate(head)
elseif direction == 1 or direction == "TRT" then
initialrl = -1
@@ -3958,7 +3959,7 @@ do
elseif id == dir_code then
topstack, rlmode = txtdirstate(start,dirstack,topstack,rlparmode)
start = getnext(start)
- -- elseif id == localpar_code then
+ -- elseif id == localpar_code and start_of_par(start) then
-- rlparmode, rlmode = pardirstate(start)
-- start = getnext(start)
else
@@ -4042,7 +4043,7 @@ do
elseif id == dir_code then
topstack, rlmode = txtdirstate(start,dirstack,topstack,rlparmode)
start = getnext(start)
- -- elseif id == localpar_code then
+ -- elseif id == localpar_code and start_of_par(start) then
-- rlparmode, rlmode = pardirstate(start)
-- start = getnext(start)
else
@@ -4153,7 +4154,7 @@ do
elseif id == dir_code then
topstack, rlmode = txtdirstate(start,dirstack,topstack,rlparmode)
start = getnext(start)
- -- elseif id == localpar_code then
+ -- elseif id == localpar_code and start_of_par(start) then
-- rlparmode, rlmode = pardirstate(start)
-- start = getnext(start)
else
@@ -4234,9 +4235,26 @@ registerotffeature {
}
}
+-- Moved here (up) a bit. This doesn't really belong in generic so it will
+-- move to a context module some day.
+
+local function markinitializer(tfmdata,value)
+ local properties = tfmdata.properties
+ properties.checkmarks = value
+end
+
+registerotffeature {
+ name = "checkmarks",
+ description = "check mark widths",
+ default = true,
+ initializers = {
+ node = markinitializer,
+ },
+}
+
-- This can be used for extra handlers, but should be used with care! We implement one
-- here but some more can be found in the osd (script devanagary) file. Now watch out:
--- when a handlers has steps, it is called as the other ones, but when we have no steps,
+-- when a handler has steps, it is called as the other ones, but when we have no steps,
-- we use a different call:
--
-- function(head,dataset,sequence,initialrl,font,attr)
@@ -4247,22 +4265,28 @@ registerotffeature {
otf.handlers = handlers
+if context then
+ return
+else
+ -- todo: move the following code someplace else
+end
+
local setspacekerns = nodes.injections.setspacekerns if not setspacekerns then os.exit() end
-local tag = "kern" -- maybe some day a merge
+local tag = "kern"
-if fontfeatures then
+-- if fontfeatures then
- function handlers.trigger_space_kerns(head,dataset,sequence,initialrl,font,attr)
- local features = fontfeatures[font]
- local enabled = features and features.spacekern and features[tag]
- if enabled then
- setspacekerns(font,sequence)
- end
- return head, enabled
- end
+-- function handlers.trigger_space_kerns(head,dataset,sequence,initialrl,font,attr)
+-- local features = fontfeatures[font]
+-- local enabled = features and features.spacekern and features[tag]
+-- if enabled then
+-- setspacekerns(font,sequence)
+-- end
+-- return head, enabled
+-- end
-else -- generic (no hashes)
+-- else -- generic (no hashes)
function handlers.trigger_space_kerns(head,dataset,sequence,initialrl,font,attr)
local shared = fontdata[font].shared
@@ -4274,7 +4298,7 @@ else -- generic (no hashes)
return head, enabled
end
-end
+-- end
-- There are fonts out there that change the space but we don't do that kind of
-- things in TeX.
@@ -4392,7 +4416,7 @@ local function spaceinitializer(tfmdata,value) -- attr
if rules then
-- not now: analyze (simple) rules
elseif not coverage then
- -- nothng to do
+ -- nothing to do
elseif kind == "gpos_single" then
-- makes no sense in TeX
elseif kind == "gpos_pair" then
@@ -4476,17 +4500,3 @@ registerotffeature {
node = spaceinitializer,
},
}
-
-local function markinitializer(tfmdata,value)
- local properties = tfmdata.properties
- properties.checkmarks = value
-end
-
-registerotffeature {
- name = "checkmarks",
- description = "check mark widths",
- default = true,
- initializers = {
- node = markinitializer,
- },
-}
diff --git a/macros/luatex/generic/luaotfload/fontloader-l-file.lua b/macros/luatex/generic/luaotfload/fontloader-l-file.lua
index 1b039a4386..d0af94f09d 100644
--- a/macros/luatex/generic/luaotfload/fontloader-l-file.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-l-file.lua
@@ -76,17 +76,27 @@ local P, R, S, C, Cs, Cp, Cc, Ct = lpeg.P, lpeg.R, lpeg.S, lpeg.C, lpeg.Cs, lpeg
local attributes = lfs.attributes
function lfs.isdir(name)
- return attributes(name,"mode") == "directory"
+ if name then
+ return attributes(name,"mode") == "directory"
+ end
end
function lfs.isfile(name)
- local a = attributes(name,"mode")
- return a == "file" or a == "link" or nil
+ if name then
+ local a = attributes(name,"mode")
+ return a == "file" or a == "link" or nil
+ end
end
function lfs.isfound(name)
- local a = attributes(name,"mode")
- return (a == "file" or a == "link") and name or nil
+ if name then
+ local a = attributes(name,"mode")
+ return (a == "file" or a == "link") and name or nil
+ end
+end
+
+function lfs.modification(name)
+ return name and attributes(name,"modification") or nil
end
if sandbox then
diff --git a/macros/luatex/generic/luaotfload/fontloader-l-io.lua b/macros/luatex/generic/luaotfload/fontloader-l-io.lua
index fa3ad3c4cd..a955262a31 100644
--- a/macros/luatex/generic/luaotfload/fontloader-l-io.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-l-io.lua
@@ -13,7 +13,7 @@ local concat = table.concat
----- floor = math.floor
local type = type
-if string.find(os.getenv("PATH"),";",1,true) then
+if string.find(os.getenv("PATH") or "",";",1,true) then
io.fileseparator, io.pathseparator = "\\", ";"
else
io.fileseparator, io.pathseparator = "/" , ":"
diff --git a/macros/luatex/generic/luaotfload/fontloader-l-lua.lua b/macros/luatex/generic/luaotfload/fontloader-l-lua.lua
index 51399216cc..f411230d4a 100644
--- a/macros/luatex/generic/luaotfload/fontloader-l-lua.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-l-lua.lua
@@ -37,9 +37,9 @@ end
-- this is lmtx only:
-if lua and lua.openfile then
- io.open = lua.openfile
-end
+-- if lua and lua.openfile then
+-- io.open = lua.openfile
+-- end
-- lpeg
diff --git a/macros/luatex/generic/luaotfload/fontloader-l-table.lua b/macros/luatex/generic/luaotfload/fontloader-l-table.lua
index e828203867..98b377bdc1 100644
--- a/macros/luatex/generic/luaotfload/fontloader-l-table.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-l-table.lua
@@ -6,7 +6,7 @@ if not modules then modules = { } end modules ['l-table'] = {
license = "see context related readme files"
}
-local type, next, tostring, tonumber, select = type, next, tostring, tonumber, select
+local type, next, tostring, tonumber, select, rawget = type, next, tostring, tonumber, select, rawget
local table, string = table, string
local concat, sort = table.concat, table.sort
local format, lower, dump = string.format, string.lower, string.dump
diff --git a/macros/luatex/generic/luaotfload/fontloader-reference.lua b/macros/luatex/generic/luaotfload/fontloader-reference.lua
index b8a21fc937..ce2794cf36 100644
--- a/macros/luatex/generic/luaotfload/fontloader-reference.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-reference.lua
@@ -1,6 +1,6 @@
-- merged file : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 10/29/19 15:00:00
+-- merge date : 01/26/20 18:34:44
do -- begin closure to overcome local limits and interference
@@ -20,9 +20,6 @@ if LUAVERSION<5.2 and jit then
MINORVERSION=2
LUAVERSION=5.2
end
-if lua and lua.openfile then
- io.open=lua.openfile
-end
if not lpeg then
lpeg=require("lpeg")
end
@@ -1052,7 +1049,7 @@ if not modules then modules={} end modules ['l-table']={
copyright="PRAGMA ADE / ConTeXt Development Team",
license="see context related readme files"
}
-local type,next,tostring,tonumber,select=type,next,tostring,tonumber,select
+local type,next,tostring,tonumber,select,rawget=type,next,tostring,tonumber,select,rawget
local table,string=table,string
local concat,sort=table.concat,table.sort
local format,lower,dump=string.format,string.lower,string.dump
@@ -2177,7 +2174,7 @@ local open,flush,write,read=io.open,io.flush,io.write,io.read
local byte,find,gsub,format=string.byte,string.find,string.gsub,string.format
local concat=table.concat
local type=type
-if string.find(os.getenv("PATH"),";",1,true) then
+if string.find(os.getenv("PATH") or "",";",1,true) then
io.fileseparator,io.pathseparator="\\",";"
else
io.fileseparator,io.pathseparator="/",":"
@@ -2532,15 +2529,24 @@ local checkedsplit=string.checkedsplit
local P,R,S,C,Cs,Cp,Cc,Ct=lpeg.P,lpeg.R,lpeg.S,lpeg.C,lpeg.Cs,lpeg.Cp,lpeg.Cc,lpeg.Ct
local attributes=lfs.attributes
function lfs.isdir(name)
- return attributes(name,"mode")=="directory"
+ if name then
+ return attributes(name,"mode")=="directory"
+ end
end
function lfs.isfile(name)
- local a=attributes(name,"mode")
- return a=="file" or a=="link" or nil
+ if name then
+ local a=attributes(name,"mode")
+ return a=="file" or a=="link" or nil
+ end
end
function lfs.isfound(name)
- local a=attributes(name,"mode")
- return (a=="file" or a=="link") and name or nil
+ if name then
+ local a=attributes(name,"mode")
+ return (a=="file" or a=="link") and name or nil
+ end
+end
+function lfs.modification(name)
+ return name and attributes(name,"modification") or nil
end
if sandbox then
sandbox.redefine(lfs.isfile,"lfs.isfile")
@@ -3649,7 +3655,7 @@ local format_N if environment.FORMAT then
n=n+1
if not f or f=="" then
return format("FORMAT(a%s,'%%.9f')",n)
- elseif f==".6" then
+ elseif f==".6" or f=="0.6" then
return format("FORMAT(a%s)",n)
else
return format("FORMAT(a%s,'%%%sf')",n,f)
@@ -4705,6 +4711,7 @@ if not modules then modules={} end modules ['data-con']={
copyright="PRAGMA ADE / ConTeXt Development Team",
license="see context related readme files"
}
+local setmetatable=setmetatable
local format,lower,gsub=string.format,string.lower,string.gsub
local trace_cache=false trackers.register("resolvers.cache",function(v) trace_cache=v end)
local trace_containers=false trackers.register("resolvers.containers",function(v) trace_containers=v end)
@@ -4712,16 +4719,21 @@ local trace_storage=false trackers.register("resolvers.storage",function(v) tra
containers=containers or {}
local containers=containers
containers.usecache=true
+local getwritablepath=caches.getwritablepath
+local getreadablepaths=caches.getreadablepaths
+local cacheiswritable=caches.is_writable
+local loaddatafromcache=caches.loaddata
+local savedataincache=caches.savedata
local report_containers=logs.reporter("resolvers","containers")
local allocated={}
local mt={
__index=function(t,k)
if k=="writable" then
- local writable=caches.getwritablepath(t.category,t.subcategory) or { "." }
+ local writable=getwritablepath(t.category,t.subcategory) or { "." }
t.writable=writable
return writable
elseif k=="readables" then
- local readables=caches.getreadablepaths(t.category,t.subcategory) or { "." }
+ local readables=getreadablepaths(t.category,t.subcategory) or { "." }
t.readables=readables
return readables
end
@@ -4752,7 +4764,7 @@ function containers.define(category,subcategory,version,enabled)
end
end
function containers.is_usable(container,name)
- return container.enabled and caches and caches.is_writable(container.writable,name)
+ return container.enabled and caches and cacheiswritable(container.writable,name)
end
function containers.is_valid(container,name)
if name and name~="" then
@@ -4766,7 +4778,7 @@ function containers.read(container,name)
local storage=container.storage
local stored=storage[name]
if not stored and container.enabled and caches and containers.usecache then
- stored=caches.loaddata(container.readables,name,container.writable)
+ stored=loaddatafromcache(container.readables,name,container.writable)
if stored and stored.cache_version==container.version then
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","load",container.subcategory,name)
@@ -4782,17 +4794,20 @@ function containers.read(container,name)
end
return stored
end
-function containers.write(container,name,data)
+function containers.write(container,name,data,fast)
if data then
data.cache_version=container.version
if container.enabled and caches then
- local unique,shared=data.unique,data.shared
- data.unique,data.shared=nil,nil
- caches.savedata(container.writable,name,data)
+ local unique=data.unique
+ local shared=data.shared
+ data.unique=nil
+ data.shared=nil
+ savedataincache(container.writable,name,data,fast)
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","save",container.subcategory,name)
end
- data.unique,data.shared=unique,shared
+ data.unique=unique
+ data.shared=shared
end
if trace_cache or trace_containers then
report_containers("action %a, category %a, name %a","store",container.subcategory,name)
@@ -5027,6 +5042,13 @@ if not nuts.setreplace then
setfield(n,"replace",h)
end
end
+do
+ local getsubtype=nuts.getsubtype
+ function nuts.start_of_par(n)
+ local s=getsubtype(n)
+ return s==0 or s==2
+ end
+end
end -- closure
@@ -8677,6 +8699,9 @@ fonts.privateoffsets={
mathbase=0xFF000,
keepnames=false,
}
+if node and not tex.getfontoffamily then
+ tex.getfontoffamily=node.family_font
+end
end -- closure
@@ -8743,13 +8768,13 @@ fonts.handlers=handlers
local allocate=utilities.storage.allocate
local setmetatableindex=table.setmetatableindex
constructors.dontembed=allocate()
-constructors.autocleanup=true
constructors.namemode="fullpath"
constructors.version=1.01
constructors.cache=containers.define("fonts","constructors",constructors.version,false)
constructors.privateoffset=fonts.privateoffsets.textbase or 0xF0000
constructors.cacheintex=true
constructors.addtounicode=true
+constructors.fixprotrusion=true
local designsizes=allocate()
constructors.designsizes=designsizes
local loadedfonts=allocate()
@@ -8801,11 +8826,6 @@ function constructors.getmathparameter(tfmdata,name)
end
end
function constructors.cleanuptable(tfmdata)
- if constructors.autocleanup and tfmdata.properties.virtualized then
- for k,v in next,tfmdata.characters do
- if v.commands then v.commands=nil end
- end
- end
end
function constructors.calculatescale(tfmdata,scaledpoints)
local parameters=tfmdata.parameters
@@ -9032,6 +9052,7 @@ function constructors.scale(tfmdata,specification)
properties.direction=direction
target.size=scaledpoints
target.encodingbytes=properties.encodingbytes or 1
+ target.subfont=properties.subfont
target.embedding=properties.embedding or "subset"
target.tounicode=1
target.cidinfo=properties.cidinfo
@@ -9141,7 +9162,7 @@ function constructors.scale(tfmdata,specification)
targetparameters.descender=delta*descender
end
constructors.enhanceparameters(targetparameters)
- local protrusionfactor=(targetquad~=0 and 1000/targetquad) or 0
+ local protrusionfactor=constructors.fixprotrusion and ((targetquad~=0 and 1000/targetquad) or 1) or 1
local scaledwidth=defaultwidth*hdelta
local scaledheight=defaultheight*vdelta
local scaleddepth=defaultdepth*vdelta
@@ -9524,6 +9545,7 @@ function constructors.finalize(tfmdata)
properties.name=properties.name or tfmdata.name
properties.psname=properties.psname or tfmdata.psname
properties.encodingbytes=tfmdata.encodingbytes or 1
+ properties.subfont=tfmdata.subfont or nil
properties.embedding=tfmdata.embedding or "subset"
properties.tounicode=tfmdata.tounicode or 1
properties.cidinfo=tfmdata.cidinfo or nil
@@ -9549,6 +9571,7 @@ function constructors.finalize(tfmdata)
tfmdata.name=nil
tfmdata.psname=nil
tfmdata.encodingbytes=nil
+ tfmdata.subfont=nil
tfmdata.embedding=nil
tfmdata.tounicode=nil
tfmdata.cidinfo=nil
@@ -10862,7 +10885,7 @@ if not modules then modules={} end modules ['font-otr']={
copyright="PRAGMA ADE / ConTeXt Development Team",
license="see context related readme files"
}
-local next,type,tonumber=next,type,tonumber
+local next,type,tonumber,rawget=next,type,tonumber,rawget
local byte,lower,char,gsub=string.byte,string.lower,string.char,string.gsub
local fullstrip=string.fullstrip
local floor,round=math.floor,math.round
@@ -13981,7 +14004,7 @@ if not modules then modules={} end modules ['font-cff']={
license="see context related readme files"
}
local next,type,tonumber,rawget=next,type,tonumber,rawget
-local byte,char,gmatch=string.byte,string.char,string.gmatch
+local byte,char,gmatch,sub=string.byte,string.char,string.gmatch,string.sub
local concat,remove,unpack=table.concat,table.remove,table.unpack
local floor,abs,round,ceil,min,max=math.floor,math.abs,math.round,math.ceil,math.min,math.max
local P,C,R,S,C,Cs,Ct=lpeg.P,lpeg.C,lpeg.R,lpeg.S,lpeg.C,lpeg.Cs,lpeg.Ct
@@ -14088,6 +14111,37 @@ local defaultstrings={ [0]=
"Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003",
"Black","Bold","Book","Light","Medium","Regular","Roman","Semibold",
}
+local standardnames={ [0]=
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,
+ "space","exclam","quotedbl","numbersign","dollar","percent",
+ "ampersand","quoteright","parenleft","parenright","asterisk","plus",
+ "comma","hyphen","period","slash","zero","one","two","three","four",
+ "five","six","seven","eight","nine","colon","semicolon","less",
+ "equal","greater","question","at","A","B","C","D","E","F","G","H",
+ "I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W",
+ "X","Y","Z","bracketleft","backslash","bracketright","asciicircum",
+ "underscore","quoteleft","a","b","c","d","e","f","g","h","i","j",
+ "k","l","m","n","o","p","q","r","s","t","u","v","w","x","y",
+ "z","braceleft","bar","braceright","asciitilde",false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,false,false,false,false,false,false,false,false,"exclamdown",
+ "cent","sterling","fraction","yen","florin","section","currency",
+ "quotesingle","quotedblleft","guillemotleft","guilsinglleft",
+ "guilsinglright","fi","fl",false,"endash","dagger","daggerdbl",
+ "periodcentered",false,"paragraph","bullet","quotesinglbase",
+ "quotedblbase","quotedblright","guillemotright","ellipsis","perthousand",
+ false,"questiondown",false,"grave","acute","circumflex","tilde",
+ "macron","breve","dotaccent","dieresis",false,"ring","cedilla",false,
+ "hungarumlaut","ogonek","caron","emdash",false,false,false,false,
+ false,false,false,false,false,false,false,false,false,false,false,
+ false,"AE",false,"ordfeminine",false,false,false,false,"Lslash",
+ "Oslash","OE","ordmasculine",false,false,false,false,false,"ae",
+ false,false,false,"dotlessi",false,false,"lslash","oslash","oe",
+ "germandbls",false,false,false,false
+}
local cffreaders={
readbyte,
readushort,
@@ -14449,6 +14503,7 @@ do
local x=0
local y=0
local width=false
+ local lsb=0
local r=0
local stems=0
local globalbias=0
@@ -14472,6 +14527,9 @@ do
local factors=false
local axis=false
local vsindex=0
+ local justpass=false
+ local seacs={}
+ local procidx=nil
local function showstate(where)
report("%w%-10s : [%s] n=%i",depth*2,where,concat(stack," ",1,top),top)
end
@@ -15011,14 +15069,14 @@ do
top=0
end
local function divide()
- if version==1 then
+ if version=="cff" then
local d=stack[top]
top=top-1
stack[top]=stack[top]/d
end
end
local function closepath()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
showstate("closepath")
end
@@ -15026,54 +15084,73 @@ do
top=0
end
local function hsbw()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
showstate("hsbw")
end
+ lsb=stack[top-1] or 0
width=stack[top]
end
top=0
end
- local function seac()
- if version==1 then
+ local function sbw()
+ if version=="cff" then
if trace_charstrings then
- showstate("seac")
+ showstate("sbw")
end
+ lsb=stack[top-3]
+ width=stack[top-1]
end
top=0
end
- local function sbw()
- if version==1 then
+ local function seac()
+ if version=="cff" then
if trace_charstrings then
- showstate("sbw")
+ showstate("seac")
end
- width=stack[top-1]
end
top=0
end
+ local popped=3
+ local hints=3
local function callothersubr()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
- showstate("callothersubr (unsupported)")
+ showstate("callothersubr")
+ end
+ if stack[top]==hints then
+ popped=stack[top-2]
+ else
+ popped=3
+ end
+ local t=stack[top-1]
+ if t then
+ top=top-(t+2)
+ if top<0 then
+ top=0
+ end
+ else
+ top=0
end
+ else
+ top=0
end
- top=0
end
local function pop()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
- showstate("pop (unsupported)")
+ showstate("pop")
end
top=top+1
- stack[top]=0
+ stack[top]=popped
else
top=0
end
end
local function setcurrentpoint()
- if version==1 then
+ if version=="cff" then
if trace_charstrings then
- showstate("pop (unsupported)")
+ showstate("setcurrentpoint (unsupported)")
end
x=x+stack[top-1]
y=y+stack[top]
@@ -15199,6 +15276,39 @@ do
vhcurveto,
hvcurveto,
}
+ local reverse={ [0]="unsupported",
+ "getstem",
+ "unsupported",
+ "getstem",
+ "vmoveto",
+ "rlineto",
+ "hlineto",
+ "vlineto",
+ "rrcurveto",
+ "unsupported",
+ "unsupported",
+ "unsupported",
+ "unsupported",
+ "hsbw",
+ "unsupported",
+ "setvsindex",
+ "blend",
+ "unsupported",
+ "getstem",
+ "getmask",
+ "getmask",
+ "rmoveto",
+ "hmoveto",
+ "getstem",
+ "rcurveline",
+ "rlinecurve",
+ "vvcurveto",
+ "hhcurveto",
+ "unsupported",
+ "unsupported",
+ "vhcurveto",
+ "hvcurveto",
+ }
local subactions={
[000]=dotsection,
[001]=getstem3,
@@ -15312,7 +15422,7 @@ do
local function call(scope,list,bias)
depth=depth+1
if top==0 then
- showstate(formatters["unknown %s call %s"](scope,"?"))
+ showstate(formatters["unknown %s call %s, case %s"](scope,"?",1))
top=0
else
local index=stack[top]+bias
@@ -15324,13 +15434,12 @@ do
if tab then
process(tab)
else
- showstate(formatters["unknown %s call %s"](scope,index))
+ showstate(formatters["unknown %s call %s, case %s"](scope,index,2))
top=0
end
end
depth=depth-1
end
- local justpass=false
process=function(tab)
local i=1
local n=#tab
@@ -15401,6 +15510,17 @@ do
r=r+1;result[r]=chars[12]
r=r+1;result[r]=chars[t]
top=0
+ elseif t==6 then
+ seacs[procidx]={
+ asb=stack[1],
+ adx=stack[2],
+ ady=stack[3],
+ base=stack[4],
+ accent=stack[5],
+ width=width,
+ lsb=lsb,
+ }
+ top=0
else
local a=subactions[t]
if a then
@@ -15430,44 +15550,52 @@ do
i=i+s+1
elseif t==1 or t==3 or t==18 or operation==23 then
p_getstem()
-if true then
- if top>0 then
- for i=1,top do
- r=r+1;result[r]=encode[stack[i]]
+ if true then
+ if top>0 then
+ for i=1,top do
+ r=r+1;result[r]=encode[stack[i]]
+ end
+ top=0
end
+ r=r+1;result[r]=chars[t]
+ else
top=0
end
- r=r+1;result[r]=chars[t]
-else
- top=0
-end
i=i+1
elseif t==19 or t==20 then
local s=p_getmask() or 0
-if true then
- if top>0 then
- for i=1,top do
- r=r+1;result[r]=encode[stack[i]]
+ if true then
+ if top>0 then
+ for i=1,top do
+ r=r+1;result[r]=encode[stack[i]]
+ end
+ top=0
end
+ r=r+1;result[r]=chars[t]
+ for j=1,s do
+ i=i+1
+ r=r+1;result[r]=chars[tab[i]]
+ end
+ else
+ i=i+s
top=0
end
- r=r+1;result[r]=chars[t]
- for j=1,s do
- i=i+1
- r=r+1;result[r]=chars[tab[i]]
- end
-else
- i=i+s
- top=0
-end
i=i+1
elseif t==9 then
top=0
i=i+1
elseif t==13 then
- local s=hsbw() or 0
- i=i+s+1
+ hsbw()
+ if version=="cff" then
+ r=r+1;result[r]=encode[lsb]
+ r=r+1;result[r]=chars[22]
+ else
+ end
+ i=i+1
else
+ if trace_charstrings then
+ showstate(reverse[t] or "<action>")
+ end
if top>0 then
for i=1,top do
r=r+1;result[r]=encode[stack[i]]
@@ -15488,7 +15616,7 @@ end
end
else
if trace_charstrings then
- showvalue("<action>",t)
+ showstate(reverse[t] or "<action>")
end
top=0
i=i+1
@@ -15507,7 +15635,7 @@ end
((l<1240 and 107) or (l<33900 and 1131) or 32768)+1
end
end
- local function processshape(tab,index)
+ local function processshape(tab,index,hack)
if not tab then
glyphs[index]={
boundingbox={ 0,0,0,0 },
@@ -15520,10 +15648,13 @@ end
x=0
y=0
width=false
+ lsb=0
r=0
top=0
stems=0
result={}
+ popped=3
+ procidx=index
xmin=0
xmax=0
ymin=0
@@ -15537,6 +15668,9 @@ end
updateregions(vsindex)
end
process(tab)
+ if hack then
+ return x,y
+ end
local boundingbox={
round(xmin),
round(ymin),
@@ -15591,6 +15725,8 @@ end
axis=false
regions=data.regions
justpass=streams==true
+ popped=3
+ seacs={}
if regions then
regions={ regions }
axis=data.factors or false
@@ -15604,6 +15740,8 @@ end
locals=false
globals=false
strings=false
+ popped=3
+ seacs={}
end
local function setwidths(private)
if not private then
@@ -15633,6 +15771,29 @@ end
for index=1,#charstrings do
processshape(charstrings[index],index-1)
end
+ if justpass and next(seacs) then
+ local charset=data.dictionaries[1].charset
+ if charset then
+ local lookup=table.swapped(charset)
+ for index,v in next,seacs do
+ local bindex=lookup[standardnames[v.base]]
+ local aindex=lookup[standardnames[v.accent]]
+ local bglyph=bindex and glyphs[bindex]
+ local aglyph=aindex and glyphs[aindex]
+ if bglyph and aglyph then
+ local jp=justpass
+ justpass=false
+ local x,y=processshape(charstrings[bindex+1],bindex,true)
+ justpass=jp
+ local base=bglyph.stream
+ local accent=aglyph.stream
+ local moveto=encode[-x-v.asb+v.adx]..chars[22]..encode[-y+v.ady]..chars[ 4]
+ base=sub(base,1,#base-1)
+ glyphs[index].stream=base..moveto..accent
+ end
+ end
+ end
+ end
stopparsing(fontdata,data)
else
report("no charstrings")
@@ -15649,6 +15810,7 @@ end
vsindex=dictionary.vsindex or 0
glyphs=glphs or {}
justpass=streams==true
+ seacs={}
globalbias,localbias=setbias(globals,locals,nobias)
nominalwidth,defaultwidth=setwidths(dictionary.private)
processshape(tab,index-1)
@@ -23779,7 +23941,7 @@ if not modules then modules={} end modules ['font-oto']={
local concat,unpack=table.concat,table.unpack
local insert,remove=table.insert,table.remove
local format,gmatch,gsub,find,match,lower,strip=string.format,string.gmatch,string.gsub,string.find,string.match,string.lower,string.strip
-local type,next,tonumber,tostring,rawget=type,next,tonumber,tostring,rawget
+local type,next,tonumber,tostring=type,next,tonumber,tostring
local trace_baseinit=false trackers.register("otf.baseinit",function(v) trace_baseinit=v end)
local trace_singles=false trackers.register("otf.singles",function(v) trace_singles=v end)
local trace_multiples=false trackers.register("otf.multiples",function(v) trace_multiples=v end)
@@ -26150,6 +26312,7 @@ local find_node_tail=nuts.tail
local flush_node_list=nuts.flush_list
local flush_node=nuts.flush_node
local end_of_math=nuts.end_of_math
+local start_of_par=nuts.start_of_par
local setmetatable=setmetatable
local setmetatableindex=table.setmetatableindex
local nextnode=nuts.traversers.node
@@ -29120,7 +29283,7 @@ do
checkstep(head)
end
local initialrl=0
- if getid(head)==localpar_code and getsubtype(head)==0 then
+ if getid(head)==localpar_code and start_of_par(head) then
initialrl=pardirstate(head)
elseif direction==1 or direction=="TRT" then
initialrl=-1
@@ -29452,19 +29615,27 @@ registerotffeature {
plug=otf.pluginprocessor,
}
}
+local function markinitializer(tfmdata,value)
+ local properties=tfmdata.properties
+ properties.checkmarks=value
+end
+registerotffeature {
+ name="checkmarks",
+ description="check mark widths",
+ default=true,
+ initializers={
+ node=markinitializer,
+ },
+}
otf.handlers=handlers
+if context then
+
+--removed
+
+else
+end
local setspacekerns=nodes.injections.setspacekerns if not setspacekerns then os.exit() end
-local tag="kern"
-if fontfeatures then
- function handlers.trigger_space_kerns(head,dataset,sequence,initialrl,font,attr)
- local features=fontfeatures[font]
- local enabled=features and features.spacekern and features[tag]
- if enabled then
- setspacekerns(font,sequence)
- end
- return head,enabled
- end
-else
+local tag="kern"
function handlers.trigger_space_kerns(head,dataset,sequence,initialrl,font,attr)
local shared=fontdata[font].shared
local features=shared and shared.features
@@ -29474,7 +29645,6 @@ else
end
return head,enabled
end
-end
local function hasspacekerns(data)
local resources=data.resources
local sequences=resources.sequences
@@ -29659,18 +29829,6 @@ registerotffeature {
node=spaceinitializer,
},
}
-local function markinitializer(tfmdata,value)
- local properties=tfmdata.properties
- properties.checkmarks=value
-end
-registerotffeature {
- name="checkmarks",
- description="check mark widths",
- default=true,
- initializers={
- node=markinitializer,
- },
-}
end -- closure
@@ -32380,7 +32538,6 @@ do
local pdfshapes={}
local inkscape=runner()
if inkscape then
- local indices=fonts.getindices(tfmdata)
local descriptions=tfmdata.descriptions
local nofshapes=#svgshapes
local f_svgfile=formatters["temp-otf-svg-shape-%i.svg"]
@@ -33355,7 +33512,7 @@ if not modules then modules={} end modules ['font-onr']={
license="see context related readme files"
}
local fonts,logs,trackers,resolvers=fonts,logs,trackers,resolvers
-local next,type,tonumber,rawget,rawset=next,type,tonumber,rawget,rawset
+local next,type,tonumber,rawset=next,type,tonumber,rawset
local match,lower,gsub,strip,find=string.match,string.lower,string.gsub,string.strip,string.find
local char,byte,sub=string.char,string.byte,string.sub
local abs=math.abs
@@ -35192,7 +35349,6 @@ local variants=allocate()
specifiers.variants=variants
definers.methods=definers.methods or {}
local internalized=allocate()
-local lastdefined=nil
local loadedfonts=constructors.loadedfonts
local designsizes=constructors.designsizes
local resolvefile=fontgoodies and fontgoodies.filenames and fontgoodies.filenames.resolve or function(s) return s end
@@ -35453,9 +35609,6 @@ function constructors.readanddefine(name,size)
end
return fontdata[id],id
end
-function definers.current()
- return lastdefined
-end
function definers.registered(hash)
local id=internalized[hash]
return id,id and fontdata[id]
@@ -35506,7 +35659,6 @@ function definers.read(specification,size,id)
end
end
end
- lastdefined=tfmdata or id
if not tfmdata then
report_defining("unknown font %a, loading aborted",specification.name)
elseif trace_defining and type(tfmdata)=="table" then
@@ -35522,7 +35674,9 @@ end
function font.getfont(id)
return fontdata[id]
end
-callbacks.register('define_font',definers.read,"definition of fonts (tfmdata preparation)")
+if not context then
+ callbacks.register('define_font',definers.read,"definition of fonts (tfmdata preparation)")
+end
end -- closure
diff --git a/macros/luatex/generic/luaotfload/fontloader-util-str.lua b/macros/luatex/generic/luaotfload/fontloader-util-str.lua
index 432b39ec5a..68c9be5860 100644
--- a/macros/luatex/generic/luaotfload/fontloader-util-str.lua
+++ b/macros/luatex/generic/luaotfload/fontloader-util-str.lua
@@ -944,7 +944,7 @@ local format_N if environment.FORMAT then
n = n + 1
if not f or f == "" then
return format("FORMAT(a%s,'%%.9f')",n)
- elseif f == ".6" then
+ elseif f == ".6" or f == "0.6" then
return format("FORMAT(a%s)",n)
else
return format("FORMAT(a%s,'%%%sf')",n,f)
diff --git a/macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua b/macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua
index fd4291f67c..f6539dca8d 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-auxiliary.lua
@@ -6,8 +6,8 @@
local ProvidesLuaModule = {
name = "luaotfload-auxiliary",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / auxiliary functions",
license = "GPL v2.0"
}
@@ -429,6 +429,19 @@ function aux.name_of_slot(codepoint)
return false
end
+--[[doc--
+
+ Get the GID of the glyph associated with a given name.
+
+--doc]]--
+function aux.gid_of_name(font_id, glyphname)
+ local slot = aux.slot_of_name(font_id, glyphname)
+ if not slot then return end
+ local tfmdata = identifiers[font_id] or font.fonts[font_id]
+ -- assert(tfmdata) -- Otherwise slot_of_name would have failed already
+ return tfmdata.characters[slot].index or slot
+end
+
-----------------------------------------------------------------------
--- features / scripts / languages
-----------------------------------------------------------------------
@@ -638,7 +651,7 @@ function aux.provides_feature(font_id, asked_script,
or asked_script)
local language = harf.Tag.new(asked_language == "DFLT" and "dflt"
or asked_language)
- local feature = harf.Tag.new(feature)
+ local feature = harf.Tag.new(asked_feature)
for _, tag in next, { GSUBtag, GPOStag } do
local _, script_idx = hbface:ot_layout_find_script(tag, script)
diff --git a/macros/luatex/generic/luaotfload/luaotfload-colors.lua b/macros/luatex/generic/luaotfload/luaotfload-colors.lua
index ddc564b05b..2569eb1b48 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-colors.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-colors.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-colors",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / color",
license = "GPL v2.0",
author = "Khaled Hosny, Elie Roux, Philipp Gesang, Dohyun Kim, David Carlisle",
@@ -40,9 +40,13 @@ local insert_node_after = nodedirect.insert_after
local todirect = nodedirect.todirect
local tonode = nodedirect.tonode
local setfield = nodedirect.setfield
+local setdisc = nodedirect.setdisc
+local setreplace = nodedirect.setreplace
local getid = nodedirect.getid
local getfont = nodedirect.getfont
+local getchar = nodedirect.getchar
local getlist = nodedirect.getlist
+local getdisc = nodedirect.getdisc
local getsubtype = nodedirect.getsubtype
local getnext = nodedirect.getnext
local nodetail = nodedirect.tail
@@ -198,9 +202,14 @@ color_whatsit = function (head, curr, color, push, tail)
end
-- number -> string | nil
-local get_font_color = function (font_id)
+local get_glyph_color = function (font_id, char)
local tfmdata = identifiers[font_id]
local font_color = tfmdata and tfmdata.properties and tfmdata.properties.color
+ if type(font_color) == "table" then
+ local char_tbl = tfmdata.characters[char]
+ char = char_tbl and (char_tbl.index or char)
+ return char and font_color[char] or font_color.default
+ end
return font_color
end
@@ -231,25 +240,30 @@ node_colorize = function (head, toplevel, current_color)
setfield(n, "head", n_list)
end
+ elseif n_id == disc_t then
+ local n_pre, n_post, n_replace = getdisc(n)
+ n_replace, current_color = node_colorize(n_replace, false, current_color)
+ setdisc(n, n_pre, n_post, n_replace)
+
elseif n_id == glyph_t then
--- colorization is restricted to those fonts
--- that received the “color” property upon
--- loading (see ``setcolor()`` above)
- local font_color = get_font_color(getfont(n))
- if font_color ~= current_color then
+ local glyph_color = get_glyph_color(getfont(n), getchar(n))
+ if glyph_color ~= current_color then
if current_color then
head, n, current_color = color_whatsit(head, n, current_color, false)
end
- if font_color then
- head, n, current_color = color_whatsit(head, n, font_color, true)
+ if glyph_color then
+ head, n, current_color = color_whatsit(head, n, glyph_color, true)
end
end
if current_color and color_callback == "pre_linebreak_filter" then
local nn = getnext(n)
while nn and getid(nn) == glyph_t do
- local font_color = get_font_color(getfont(nn))
- if font_color == current_color then
+ local glyph_color = get_glyph_color(getfont(nn), getchar(nn))
+ if glyph_color == current_color then
n = nn
else
break
@@ -381,8 +395,41 @@ end
--- hexadecimal, with an optional fourth transparency
--- value)
---
-local setcolor = function (tfmdata, value)
- local sanitized = sanitize_color_expression(value)
+local glyph_color_tables = { }
+-- Currently this either sets a common color for the whole font or
+-- builds a GID lookup table. This might change later to replace the
+-- lookup table with color information in the character hash. The
+-- problem with that approach right now are differences between harf
+-- and node and difficulties with getting the mapped unicode value for
+-- a GID.
+local function setcolor (tfmdata, value)
+ local sanitized
+ local color_table = glyph_color_tables[tonumber(value) or value]
+ if color_table then
+ sanitized = {}
+ local unicodes = tfmdata.resources.unicodes
+ local gid_mapping = {}
+ local descriptions = tfmdata.descriptions or tfmdata.characters
+ for color, glyphs in next, color_table do
+ for _, glyph in ipairs(glyphs) do
+ local gid = glyph == "default" and "default" or tonumber(glyph)
+ if not gid then
+ local unicode = unicodes[glyph]
+ local desc = unicode and descriptions[unicode]
+ gid = desc and (desc.index or unicode)
+ end
+ if gid then
+ sanitized[gid] = sanitize_color_expression(color)
+ else
+ -- TODO: ??? Error out, warn or just ignore? Ignore
+ -- makes sense because we have to ignore for GIDs
+ -- anyway.
+ end
+ end
+ end
+ else
+ sanitized = sanitize_color_expression(value)
+ end
local properties = tfmdata.properties
if sanitized then
@@ -391,6 +438,17 @@ local setcolor = function (tfmdata, value)
end
end
+function luaotfload.add_colorscheme(name, colortable)
+ if fonts == nil then
+ fonts = name
+ name = #glyph_color_tables + 1
+ else
+ name = name:lower()
+ end
+ glyph_color_tables[name] = colortable
+ return name
+end
+
return function ()
logreport = luaotfload.log.report
if not fonts then
diff --git a/macros/luatex/generic/luaotfload/luaotfload-conf.pdf b/macros/luatex/generic/luaotfload/luaotfload-conf.pdf
index 0515095402..0bc208e735 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-conf.pdf
+++ b/macros/luatex/generic/luaotfload/luaotfload-conf.pdf
Binary files differ
diff --git a/macros/luatex/generic/luaotfload/luaotfload-configuration.lua b/macros/luatex/generic/luaotfload/luaotfload-configuration.lua
index b9ee9a6c7a..b6b214c249 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-configuration.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-configuration.lua
@@ -7,8 +7,8 @@
local ProvidesLuaModule = {
name = "luaotfload-configuration",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / config file reader",
license = "GPL v2.0"
}
diff --git a/macros/luatex/generic/luaotfload/luaotfload-database.lua b/macros/luatex/generic/luaotfload/luaotfload-database.lua
index ad00bb26f7..f4bace8b44 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-database.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-database.lua
@@ -5,8 +5,8 @@
do -- block to avoid to many local variables error
local ProvidesLuaModule = {
name = "luaotfload-database",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / database",
license = "GPL v2.0",
author = "Khaled Hosny, Elie Roux, Philipp Gesang, Marcel Krüger",
diff --git a/macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua b/macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua
index 0df0be7ff5..c6bb5c9371 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-diagnostics.lua
@@ -7,8 +7,8 @@
local ProvidesLuaModule = {
name = "luaotfload-diagnostics",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload-tool submodule / diagnostics",
license = "GPL v2.0"
}
diff --git a/macros/luatex/generic/luaotfload/luaotfload-embolden.lua b/macros/luatex/generic/luaotfload/luaotfload-embolden.lua
index 4e16a992d0..eec5ffde15 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-embolden.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-embolden.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-embolden",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / color",
license = "GPL v2.0",
author = "Marcel Krüger"
diff --git a/macros/luatex/generic/luaotfload/luaotfload-fallback.lua b/macros/luatex/generic/luaotfload/luaotfload-fallback.lua
new file mode 100644
index 0000000000..e07b3c726a
--- /dev/null
+++ b/macros/luatex/generic/luaotfload/luaotfload-fallback.lua
@@ -0,0 +1,134 @@
+-----------------------------------------------------------------------
+-- FILE: luaotfload-fallback.lua
+-- DESCRIPTION: part of luaotfload / fallback
+-----------------------------------------------------------------------
+
+local ProvidesLuaModule = {
+ name = "luaotfload-fallback",
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
+ description = "luaotfload submodule / fallback",
+ license = "GPL v2.0",
+ author = "Marcel Krüger"
+}
+
+if luatexbase and luatexbase.provides_module then
+ luatexbase.provides_module (ProvidesLuaModule)
+end
+
+local nodenew = node.direct.new
+local getfont = font.getfont
+local setfont = node.direct.setfont
+local getwhd = node.direct.getwhd
+local insert_after = node.direct.insert_after
+local traverse_char = node.direct.traverse_char
+local protect_glyph = node.direct.protect_glyph
+local otffeatures = fonts.constructors.newfeatures "otf"
+-- local normalize = fonts.handlers.otf.features.normalize
+local definers = fonts.definers
+local define_font = luaotfload.define_font
+
+local fallback_table_fontnames = {}
+
+local fallback_table = setmetatable({}, {
+ __index = function(t, name)
+ local names = fallback_table_fontnames[name]
+ if not names then
+ t[name] = false
+ return false
+ end
+ local res = setmetatable({}, {
+ __index = function(tt, size)
+ local lookup = {}
+ for i=#names,1,-1 do
+ local f = define_font(names[i] .. ';-fallback', size)
+ local fid
+ if type(f) == 'table' then
+ fid = font.define(f)
+ definers.register(f, fid)
+ elseif f then
+ fid = f
+ f = font.getfont(fid)
+ end
+ lookup[-i] = f -- Needed for multiscript interactions
+ for uni, _ in next, f.characters do
+ rawset(lookup, uni, fid)
+ end
+ end
+ tt[size] = lookup
+ return lookup
+ end,
+ })
+ t[name] = res
+ return res
+ end,
+})
+
+local fallback_lookups = setmetatable({}, {
+ __index = function(t, fid)
+ local f = font.getfont(fid)
+ -- table.tofile('myfont2', f)
+ local res = f and f.fallback_lookup or false
+ if res then
+ res = table.merged(res)
+ for uni in next, f.characters do
+ rawset(res, uni, nil)
+ end
+ end
+ t[fid] = res
+ return res
+ end,
+})
+
+local function makefallbackfont(tfmdata, _, fallback)
+ local t = fallback_table[fallback]
+ if not t then error(string.format("Unknown fallback table %s", fallback)) end
+ fallback = t[tfmdata.size]
+ local fallback_lookup = {}
+ tfmdata.fallback_lookup = fallback
+end
+
+local glyph_id = node.id'glyph'
+-- TODO: unset last_script, matching parentheses etc
+function dofallback(head, _, _, _, direction)
+ head = node.direct.todirect(head)
+ local last_fid, last_fallbacks
+ for cur, cid, fid in traverse_char(head) do
+ if fid ~= last_fid then
+ last_fid, last_fallbacks = fid, fallback_lookups[fid]
+ end
+ if last_fallbacks then
+ local new_fid = last_fallbacks[cid]
+ if new_fid then
+ setfont(cur, new_fid)
+ end
+ end
+ end
+end
+
+function luaotfload.add_fallback(name, fonts)
+ if fonts == nil then
+ fonts = name
+ name = #fallback_table_fontnames + 1
+ else
+ name = name:lower()
+ end
+ fallback_table_fontnames[name] = fonts
+ fallback_table[name] = nil
+ return name
+end
+
+otffeatures.register {
+ name = "fallback",
+ description = "Fill in missing glyphs from other fonts",
+ manipulators = {
+ node = makefallbackfont,
+ plug = makefallbackfont,
+ },
+ -- processors = { -- processors would be nice, but they are applied
+ -- -- too late for our purposes
+ -- node = donotdef,
+ -- }
+}
+
+--- vim:sw=2:ts=2:expandtab:tw=71
diff --git a/macros/luatex/generic/luaotfload/luaotfload-features.lua b/macros/luatex/generic/luaotfload/luaotfload-features.lua
index de129891e3..0fe8a281c6 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-features.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-features.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-features",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / features",
license = "GPL v2.0",
author = "Hans Hagen, Khaled Hosny, Elie Roux, Philipp Gesang, Marcel Krüger",
@@ -29,6 +29,8 @@ local R = lpeg.R
local S = lpeg.S
local C = lpeg.C
+local lower = string.lower
+
local table = table
local tabletohash = table.tohash
local tablesort = table.sort
@@ -240,7 +242,14 @@ local support_incomplete = tabletohash({
--doc]]--
--- (string, string) dict -> (string, string) dict
-local apply_default_features = function (speclist)
+local apply_default_features = function (rawlist)
+ local speclist = {}
+ for k, v in pairs(rawlist) do
+ if type(v) == 'string' then
+ v = ({['true'] = true, ['false'] = false})[lower(v)] or v
+ end
+ speclist[k] = v
+ end
local default_features = luaotfload.features
speclist = speclist or { }
@@ -248,8 +257,8 @@ local apply_default_features = function (speclist)
--- handle language tag
local language = speclist.language
- if language then --- already lowercase at this point
- language = stringgsub(language, "[^a-z0-9]", "")
+ if language then
+ language = stringgsub(lower(language), "[^a-z0-9]", "")
language = rawget(verboselanguages, language) -- srsly, rawget?
or (languages[language] and language)
or "dflt"
@@ -261,7 +270,7 @@ local apply_default_features = function (speclist)
--- handle script tag
local script = speclist.script
if script then
- script = stringgsub(script, "[^a-z0-9]","")
+ script = stringgsub(lower(script), "[^a-z0-9]","")
script = rawget(verbosescripts, script)
or (scripts[script] and script)
or "dflt"
@@ -392,15 +401,7 @@ local handle_request = function (specification)
end
features.raw = request.features or {}
- request.features = {}
- for k, v in pairs(features.raw) do
- if type(v) == 'string' then
- v = string.lower(v)
- v = ({['true'] = true, ['false'] = false})[v] or v
- end
- request.features[k] = v
- end
- request.features = apply_default_features(request.features)
+ request.features = apply_default_features(features.raw)
if name then
specification.name = name
@@ -430,9 +431,12 @@ local handle_request = function (specification)
features.normal = normalize (request.features)
specification.sub = request.sub or specification.sub or false
- if request.features and request.features.mode
- and fonts.readers[request.features.mode] then
- specification.forced = request.features.mode
+ local forced_mode = request.features and request.features.mode
+ if forced_mode then
+ forced_mode = lower(forced_mode)
+ if fonts.readers[forced_mode] then
+ specification.forced = forced_mode
+ end
end
return specification
@@ -576,6 +580,8 @@ local add_auto_features = function ()
end
end
+luaotfload.apply_default_features = apply_default_features
+
return function ()
if not fonts and fonts.handlers then
report ("log", 0, "features",
diff --git a/macros/luatex/generic/luaotfload/luaotfload-filelist.lua b/macros/luatex/generic/luaotfload/luaotfload-filelist.lua
index 4a1348b5f0..11bc525547 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-filelist.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-filelist.lua
@@ -6,8 +6,8 @@
local ProvidesLuaModule = {
name = "luaotfload-filelist",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / filelist",
license = "GPL v2.0"
}
@@ -252,6 +252,7 @@ luaotfload.filelist.data =
{ name = "harf-plug" ,kind = kind_library, ext =".lua", gitdir=gitdirsrc, texdir=texdirtex, gitpref = "luaotfload-" },
{ name = "loaders" ,kind = kind_library, ext =".lua", gitdir=gitdirsrc, texdir=texdirtex, gitpref = "luaotfload-" },
{ name = "multiscript" ,kind = kind_library, ext =".lua", gitdir=gitdirsrc, texdir=texdirtex, gitpref = "luaotfload-" },
+ { name = "fallback" ,kind = kind_library, ext =".lua", gitdir=gitdirsrc, texdir=texdirtex, gitpref = "luaotfload-" },
{ name = "parsers" ,kind = kind_library, ext =".lua", gitdir=gitdirsrc, texdir=texdirtex, gitpref = "luaotfload-" },
{ name = "resolvers" ,kind = kind_library, ext =".lua", gitdir=gitdirsrc, texdir=texdirtex, gitpref = "luaotfload-" },
{ name = "unicode" ,kind = kind_library, ext =".lua", gitdir=gitdirsrc, texdir=texdirtex, gitpref = "luaotfload-" },
diff --git a/macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua b/macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua
index 8e0a2dec5f..50f1b4d590 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-glyphlist.lua
@@ -1,7 +1,7 @@
local ProvidesLuaModule = {
name = "luaotfload-glyphlist",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / autogenerated glyphlist",
copyright = "derived from https://raw.githubusercontent.com/adobe-type-tools/agl-aglfn/master/glyphlist.txt",
original = "Adobe Glyph List, version 2.0, September 20, 2002",
diff --git a/macros/luatex/generic/luaotfload/luaotfload-harf-define.lua b/macros/luatex/generic/luaotfload/luaotfload-harf-define.lua
index ad02cdb99a..555180435a 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-harf-define.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-harf-define.lua
@@ -5,8 +5,8 @@
do -- block to avoid to many local variables error
local ProvidesLuaModule = {
name = "luaotfload-harf-define",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / database",
license = "GPL v2.0",
author = "Khaled Hosny, Marcel Krüger",
@@ -46,6 +46,7 @@ local function loadfont(spec)
local key = string.format("%s:%d", gsub(path, "[/\\]", ":"), sub)
local attributes = lfs.attributes(path)
+ if not attributes then return end
local size, date = attributes.size or 0, attributes.modification or 0
local cached = containers.read(facecache, key)
@@ -193,6 +194,17 @@ local function loadfont(spec)
end
cached.face = hbface
cached.font = hbfont
+ do
+ local nominals = cached.nominals
+ local gid_offset = cached.gid_offset
+ cached.name_to_char = setmetatable({}, {__index = function(t, name)
+ local gid = hbfont:get_glyph_from_name(name)
+ local char = gid and (nominals[gid] or gid_offset + gid)
+ t[name] = char -- ? Do we want this
+ return char
+ end})
+ end
+
return cached
end
@@ -217,11 +229,11 @@ local tlig ={
}
local function scalefont(data, spec)
+ if not data then return data, spec end
local size = spec.size
- local features = spec.features.normal
+ local features = fonts.constructors.checkedfeatures("otf", spec.features.normal)
features.mode = 'plug'
features.features = 'harf'
- fonts.constructors.checkedfeatures("otf", features)
local hbface = data.face
local hbfont = data.font
local upem = data.upem
@@ -316,7 +328,7 @@ local function scalefont(data, spec)
local tfmdata = {
name = spec.specification,
- filename = spec.resolved,
+ filename = 'harfloaded:' .. spec.resolved,
subfont = spec.sub or 1,
designsize = size,
psname = sanitize(data.psname),
@@ -356,8 +368,12 @@ local function scalefont(data, spec)
specification = spec,
shared = {},
properties = {},
+ resources = {
+ unicodes = data.name_to_char,
+ },
}
tfmdata.shared.processes = fonts.handlers.otf.setfeatures(tfmdata, features)
+ fonts.constructors.applymanipulators("otf", tfmdata, features, false)
return tfmdata
end
@@ -404,3 +420,11 @@ fonts.readers.harf = function(spec)
end
return scalefont(loadfont(spec), spec)
end
+
+luatexbase.add_to_callback('find_opentype_file', function(name)
+ return name:gsub('^harfloaded:', '')
+end, 'luaotfload.harf.strip_prefix')
+
+luatexbase.add_to_callback('find_truetype_file', function(name)
+ return name:gsub('^harfloaded:', '')
+end, 'luaotfload.harf.strip_prefix')
diff --git a/macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua b/macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua
index 528d8c1e60..c1d87de312 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-harf-plug.lua
@@ -5,8 +5,8 @@
do -- block to avoid to many local variables error
local ProvidesLuaModule = {
name = "luaotfload-harf-plug",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / database",
license = "GPL v2.0",
author = "Khaled Hosny, Marcel Krüger",
@@ -565,8 +565,17 @@ end
local push_cmd = { "push" }
local pop_cmd = { "pop" }
local nop_cmd = { "nop" }
-local save_cmd = { "pdf", "page", "q" }
-local restore_cmd = { "pdf", "page", "Q" }
+--[[
+ In the following, "text" actually refers to "font" mode and not to "text"
+ mode. "font" mode is called "text" inside of virtual font commands (don't
+ ask me why, but the LuaTeX source does make it clear that this is intentional)
+ and behaves mostly like "page" (especially it does not enter a "BT" "ET"
+ block) except that it always resets the current position to the origin.
+ This is necessary to ensure that the q/Q pair does not interfere with TeX's
+ position tracking.
+ ]]
+local save_cmd = { "pdf", "text", "q" }
+local restore_cmd = { "pdf", "text", "Q" }
-- Convert glyphs to nodes and collect font characters.
local function tonodes(head, node, run, glyphs)
diff --git a/macros/luatex/generic/luaotfload/luaotfload-init.lua b/macros/luatex/generic/luaotfload/luaotfload-init.lua
index e136d6cf63..0f8d7b3206 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-init.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-init.lua
@@ -7,8 +7,8 @@
local ProvidesLuaModule = {
name = "luaotfload-init",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / initialization",
license = "GPL v2.0"
}
@@ -192,6 +192,22 @@ local load_context_modules = function (pth)
end
+local function verify_context_dir (pth)
+ if lfsisdir(file.join(pth, ltx)) then
+ return true
+ end
+ for _, d in ipairs(ctx) do
+ if lfsisdir(file.join(pth, d)) then
+ return true
+ end
+ end
+ logreport("both", 0, "init", "A directory name has been passed as \z
+ fontloader name but this directory does not acutally seem to contain \z
+ a font loader. I will try to interpret your fontloader name in another \z
+ way for now, but please fix your settings.")
+ return false
+end
+
local function init_main(early_hook)
config = config or { } --- global
config.luaotfload = config.luaotfload or { }
@@ -374,7 +390,7 @@ local function init_main(early_hook)
"Loading Context modules in lookup path.")
load_context_modules ()
- elseif lfsisdir (fontloader) then
+ elseif lfsisdir (fontloader) and verify_context_dir (fontloader) then
logreport ("log", 0, "init",
"Loading Context files under prefix “%s”.",
fontloader)
@@ -439,6 +455,7 @@ local init_post_install_callbacks = function ()
direction = tex.get'textdir'
end
domultiscript(head, nil, nil, nil, direction)
+ dofallback(head, nil, nil, nil, direction)
return handler(head, groupcode, nil, nil, direction)
end
luatexbase.add_to_callback("pre_linebreak_filter",
diff --git a/macros/luatex/generic/luaotfload/luaotfload-latex.pdf b/macros/luatex/generic/luaotfload/luaotfload-latex.pdf
index 815d215d6b..f374e6db89 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-latex.pdf
+++ b/macros/luatex/generic/luaotfload/luaotfload-latex.pdf
Binary files differ
diff --git a/macros/luatex/generic/luaotfload/luaotfload-latex.tex b/macros/luatex/generic/luaotfload/luaotfload-latex.tex
index 8a68efd035..cdcb26e26e 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-latex.tex
+++ b/macros/luatex/generic/luaotfload/luaotfload-latex.tex
@@ -208,6 +208,7 @@
%% one that we could map directly onto Latex’s \verb|…|.
\usepackage{pdfpages}
\usepackage {listings}
+\usepackage{csquotes}
\usepackage {luatexbase}
\lstset {
basicstyle=\ttfamily,
@@ -280,7 +281,37 @@
end
end
}
-
+\directlua{
+ luaotfload.add_colorscheme("myscheme",
+ {
+ ["00FFFF30"] = {"default"},
+ ["FF0000"] = {"kabeng"},
+ ["00FF00"] = {"ivowelsignbeng"},
+ ["0000FF"] = {369} %% 369 is the GID of "nadarabeng"
+ })
+ }
+
+ \directlua{
+ luaotfload.add_multiscript
+ ("cyrlgrekbeng",
+ {
+ cyrl = "DejaVuSans:mode=node;script=cyrl;color=FF0000;",
+ grek = "texgyreheros:mode=harf;script=grek;color=0000FF;",
+ beng = "NotoSansBengali:mode=harf;script=bng2;color=00FF00"
+ }
+ )
+ }
+ \directlua
+ {luaotfload.add_fallback
+ ("myfallback",
+ {
+ "DejaVuSans:mode=harf;script=grek;color=FF0000;",
+ "cmuserif:mode=node;script=cyrl;color=00FF00;",
+ "NotoSansBengali:mode=harf;script=bng2;color=0000FF;",
+ "NotoColorEmoji:mode=harf;"
+ }
+ )
+ }
\def \listingpar {\endgraf}
\let \endlistingline \relax
diff --git a/macros/luatex/generic/luaotfload/luaotfload-letterspace.lua b/macros/luatex/generic/luaotfload/luaotfload-letterspace.lua
index 905fc6acce..ce7d6fcd56 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-letterspace.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-letterspace.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-letterspace",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / color",
license = "GPL v2.0",
copyright = "PRAGMA ADE / ConTeXt Development Team",
@@ -82,6 +82,7 @@ local fonthashes = fonts.hashes
local identifiers = fonthashes.identifiers
local chardata = fonthashes.characters
local otffeatures = fonts.constructors.newfeatures "otf"
+local markdata
local function getprevreal(n)
repeat
@@ -144,6 +145,21 @@ if not chardata then
fonthashes.characters = chardata
end
+if not markdata then
+ markdata = setmetatable({}, {__index = function(t, k)
+ if k == true then
+ return t[currentfont()]
+ else
+ local tfmdata = font.getfont(k) or font.fonts[k]
+ if tfmdata then
+ local marks = tfmdata.resources.marks or {}
+ t[k] = marks
+ return marks
+ end
+ end
+ end})
+end
+
---=================================================================---
--- character kerning functionality
---=================================================================---
@@ -334,7 +350,7 @@ kerncharacters = function (head)
local kern = 0
local kerns = prevchardata.kerns
if kerns then kern = kerns[lastchar] or kern end
- krn = kern + krn -- here
+ krn = kern + (markdata[lastfont][lastchar] and 0 or krn) -- here
insert_node_before(head,start,kern_injector(fillup,krn))
end
end
@@ -409,7 +425,7 @@ kerncharacters = function (head)
if kerns then kern = kerns[lastchar] or kern end
end
end
- krn = kern + krn -- here
+ krn = kern + (markdata[lastfont][lastchar] and 0 or krn) -- here
end
setfield(disc, "replace", kern_injector(false, krn))
end --[[if replace and prv and nxt]]
diff --git a/macros/luatex/generic/luaotfload/luaotfload-loaders.lua b/macros/luatex/generic/luaotfload/luaotfload-loaders.lua
index 2865bf5516..0f24e4542e 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-loaders.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-loaders.lua
@@ -8,8 +8,8 @@
local ProvidesLuaModule = {
name = "luaotfload-loaders",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / callback handling",
license = "GPL v2.0"
}
@@ -120,10 +120,20 @@ end
local definers --- (string, spec -> size -> id -> tmfdata) hash_t
do
- local read = fonts.definers.read
+ local ctx_read = fonts.definers.read
+ local register = fonts.definers.register
+ local function read(specification, size, id)
+ local tfmdata = ctx_read(specification, size, id)
+ if not tfmdata or id or tonumber(tfmdata) then
+ return tfmdata
+ end
+ id = font.define(tfmdata)
+ register(tfmdata, id)
+ return id
+ end
local patch = function (specification, size, id)
- local fontdata = read (specification, size, id)
+ local fontdata = ctx_read (specification, size, id)
----if not fontdata then not_found_msg (specification, size, id) end
if type (fontdata) == "table" and fontdata.encodingbytes == 2 then
--- We need to test for `encodingbytes` to avoid passing
@@ -133,7 +143,12 @@ do
else
luatexbase.call_callback ("luaotfload.patch_font_unsafe", fontdata, specification, id)
end
- return fontdata
+ if not fontdata or id or tonumber(fontdata) then
+ return fontdata
+ end
+ id = font.define(fontdata)
+ register(fontdata, id)
+ return id
end
local mk_info = function (name)
@@ -209,9 +224,11 @@ local install_callbacks = function ()
create_callback ("luaotfload.patch_font", "simple", dummy_function)
create_callback ("luaotfload.patch_font_unsafe", "simple", dummy_function)
purge_define_font ()
- local definer = config.luaotfload.run.definer
+ local definer = config.luaotfload.run.definer or "patch"
+ local selected_definer = definers[definer]
+ luaotfload.define_font = selected_definer
luatexbase.add_to_callback ("define_font",
- definers[definer or "patch"],
+ selected_definer,
"luaotfload.define_font",
1)
return true
diff --git a/macros/luatex/generic/luaotfload/luaotfload-log.lua b/macros/luatex/generic/luaotfload/luaotfload-log.lua
index 9532877127..2cbacd597f 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-log.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-log.lua
@@ -6,8 +6,8 @@
local ProvidesLuaModule = {
name = "luaotfload-log",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / logging",
license = "GPL v2.0",
author = "Khaled Hosny, Elie Roux, Philipp Gesang",
diff --git a/macros/luatex/generic/luaotfload/luaotfload-main.lua b/macros/luatex/generic/luaotfload/luaotfload-main.lua
index 65fdc9fc00..35378d91cb 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-main.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-main.lua
@@ -20,8 +20,8 @@ local authors = "\z
-- version number is used below!
local ProvidesLuaModule = {
name = "luaotfload-main",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload entry point",
author = authors,
copyright = authors,
@@ -44,25 +44,35 @@ luaotfload.fontloader_package = "reference" --- default: from current Con
if not tex or not tex.luatexversion then
error "this program must be run in TeX mode" --- or call tex.initialize() =)
-else
- --- version check
- local major = tex.luatexversion / 100
- local minor = tex.luatexversion % 100
- local revision = tex.luatexrevision --[[ : string ]]
- local revno = tonumber (revision)
- local minimum = luaotfload.min_luatex_version
- local actual = { major, minor, revno or 0 }
- if actual [1] < minimum [1]
+end
+
+--- version check
+local major = tex.luatexversion / 100
+local minor = tex.luatexversion % 100
+local revision = tex.luatexrevision --[[ : string ]]
+local revno = tonumber (revision)
+local minimum = luaotfload.min_luatex_version
+local actual = { major, minor, revno or 0 }
+if actual [1] < minimum [1]
or actual == minimum and actual [2] < minimum [2]
or actual == minimum and actual [2] == minimum [2] and actual [3] < minimum [3]
- then
- texio.write_nl ("term and log",
- string.format ("\tFATAL ERROR\n\z
- \tLuaotfload requires a Luatex version >= %d.%d.%d.\n\z
- \tPlease update your TeX distribution!\n\n",
- (unpack or table.unpack) (minimum)))
- error "version check failed"
- end
+then
+ texio.write_nl ("term and log",
+ string.format ("\tFATAL ERROR\n\z
+ \tLuaotfload requires a Luatex version >= %d.%d.%d.\n\z
+ \tPlease update your TeX distribution!\n\n",
+ (unpack or table.unpack) (minimum)))
+ error "version check failed"
+end
+
+if not utf8 then
+ texio.write_nl("term and log", string.format("\z
+ \tluaotfload: module utf8 is unavailable\n\z
+ \tutf8 is available in Lua 5.3+; engine\'s _VERSION is '%s'\n\z
+ \tThis probably means that the engine is not supported\n\z
+ \n",
+ _VERSION))
+ error "module utf8 is unavailable"
end
if status.safer_option ~= 0 then
@@ -316,12 +326,13 @@ luaotfload.main = function ()
loadmodule "harf-plug"
end
initialize "auxiliary" --- additional high-level functionality
+ loadmodule "fallback" --- ...
loadmodule "multiscript" --- ...
loadmodule "tounicode"
luaotfload.aux.start_rewrite_fontname () --- to be migrated to fontspec
- logreport ("both", 0, "main",
+ logreport ("log", 1, "main",
"initialization completed in %0.3f seconds\n",
osgettimeofday() - starttime)
----inspect (timing_info)
diff --git a/macros/luatex/generic/luaotfload/luaotfload-main.tex b/macros/luatex/generic/luaotfload/luaotfload-main.tex
index 9fe9060695..79d7411b20 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-main.tex
+++ b/macros/luatex/generic/luaotfload/luaotfload-main.tex
@@ -32,7 +32,7 @@
\beginfrontmatter
\setdocumenttitle {The \identifier{luaotfload} package}
- \setdocumentdate {2019-11-10 v3.11}
+ \setdocumentdate {2020-02-02 v3.12}
\setdocumentauthor {LaTeX3 Project\\
Elie Roux · Khaled Hosny · Philipp Gesang · Ulrike Fischer · Marcel Krüger\\
Home: \hyperlink {https://github.com/latex3/luaotfload}}
@@ -62,10 +62,20 @@ Supported is the \identifier{luatex} versions of a current TeXLive 2019 (and a c
\endsection
\beginsection{Changes}
+\beginsubsection {New in version 3.12 (by Ulrike Fischer/Marcel Krüger)}
+\begin{itemize}
+\item Corrected a number of small bugs in harf mode.
+\item Extension\marginpar{Experimental!} of the \identifier{color} key to allow
+coloring of specific output glyphs, see page~\pageref{color-glyphs}
+\item A\marginpar{Experimental!} new \identifier{fallback} key to allow to define fallback fonts, see page~\pageref{fallback}
+\item A\marginpar{Experimental!} new \identifier{multiscript} key to allow to use a font
+for more than one script, see page~\pageref{multiscript}
+\end{itemize}
+
\beginsubsection {New in version 3.11 (by Ulrike Fischer/Marcel Krüger)}
\begin{itemize}
\item Changed the handling of the \identifier{script} key in harf mode to be more compatible with behaviour of the node mode. It now expects the name of a script that is actually in the font instead of a ISO 15924 script tag. See issue 117.
-\item Corrected a number of small typos and bugs in harf mode.
+\item Corrected a number of small typos and bugs in harf mode.
\end{itemize}
\beginsubsection {New in version 3.1 (by Ulrike Fischer/Marcel Krüger)}
\begin{itemize}
@@ -771,7 +781,7 @@ obviously, \inlinecode{random}.
\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.
+ When using \identifier{harf} mode it is required to set also the script correctly.
\beginlisting
@@ -787,7 +797,7 @@ obviously, \inlinecode{random}.
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}
+ \beginaltitem {shaper} \phantomsection\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
@@ -805,7 +815,7 @@ obviously, \inlinecode{random}.
\includegraphics{shaper-demo-graphite}
\endaltitem
- \beginaltitem {script} \label{script-tag}
+ \beginaltitem {script} \phantomsection\label{script-tag}
An \OpenType script tag;\footnote{%
See \hyperlink {http://www.microsoft.com/typography/otspec/scripttags.htm}
for a list of valid values.
@@ -839,6 +849,42 @@ obviously, \inlinecode{random}.
\beginlisting
\font \test = "Latin Modern Roman:color=FF0000BB"
\endlisting
+
+ Experimental!\marginpar{\mbox{}\hfill NEW in v3.12!}\phantomsection\label{color-glyphs} The \identifier{color} key has been
+ extended to accept a table with color declarations of (output) glyphs. For example
+
+ \beginlisting
+ \directlua{
+ luaotfload.add_colorscheme("myscheme",
+ {
+ ["00FFFF30"] = {"default"},
+ ["FF0000"] = {"kabeng","ebeng"},
+ ["00FF00"] = {"ivowelsignbeng"},
+ ["0000FF"] = {369} %% 369 is the GID of "nadarabeng"
+ })
+ }
+ \endlisting
+
+ The keys in such a table are like above RGB colors with an optional transparency setting.
+ The values are either lists of glyph names or GID numbers.
+ Both types are font dependant! Not every font use the same
+ glyph names (or even glyph names at all). GID number are font specific anyway. The GID can be found
+ by looking up the \verb+["index"]+ entry in the lua file of a font.
+
+ Such a colorscheme can then be used like this:
+ \beginlisting
+ \font\test={name:Noto Sans Bengali:mode=harf;script=bng2;color=myscheme}
+ \endlisting
+
+ and then would give this output:
+
+
+ {\font\test={name:Noto Sans Bengali:mode=harf;script=bng2;color=myscheme}\test
+ কণ্যা এখন কি করিবে
+ \char"0995 \char"09BF
+ \char"09A8 \char"09CD \char"09A6
+ \char"09CD \char"09B0}
+
\endaltitem
@@ -856,7 +902,7 @@ obviously, \inlinecode{random}.
\endaltitem
- \beginaltitem {kernfactor \& letterspace}\label{p:letterspace}
+ \beginaltitem {kernfactor \& letterspace}\phantomsection\label{p:letterspace}
Define a font with letterspacing (tracking) enabled.
%
In \identifier{luaotfload}, letterspacing is implemented by
@@ -1025,6 +1071,117 @@ obviously, \inlinecode{random}.
\endaltitem
+
+ \beginaltitem {multiscript}\phantomsection\label{multiscript}
+ In\marginpar{New in 3.12 -- experimental} fonts many shaping rules are implemented only for specific scripts and so you get correct typesetting only if the \identifier{script} feature is correctly set. This means that to write a text which uses more than one script you have to declare a font for each script and switch fonts even if the font contains glyphs for all scripts.
+ \identifier{multiscript} tries to help here. The feature is experimental and bound to change. Feedback is welcome but you use it at your risk.
+
+ \identifier{multiscript} allows you to declare fonts for various script. The value is either \identifier{auto} described below, or a name which has been previously declared or a combination of both. An example for such a named multiscript could look like this (the colors are only for demonstration):
+
+ \beginlisting
+ \directlua{
+ luaotfload.add_multiscript
+ ("cyrlgrekbeng",
+ {
+ Cyrl = "DejaVuSans:mode=node;script=cyrl;color=FF0000;",
+ Grek = "texgyreheros:mode=harf;script=grek;color=0000FF;",
+ Beng = "NotoSansBengali:mode=harf;script=bng2;color=00FF00;"
+ }
+ )
+ }
+ \endlisting
+
+ \identifier{cyrlgrekbeng} is the name of the multiscript (the name is case insensitive). The keys are ISO language tags (not open type tags!). They are case insensitive too: the example uses an uppercase letter for ISO tags to differentiate them from script tags. The values are font declarations.
+
+ The multiscript can then be used in a font like this:
+
+ \beginlisting
+ \font\test={name:DejaVuSans:mode=node;multiscript=cyrlgrekbeng;}
+ \endlisting
+
+ This would lead to this output:
+
+ {\Large \font\test={name:DejaVuSans:mode=node;multiscript=cyrlgrekbeng;}\test
+ „a^^^^0301123!?“ „π^^^^0301123!?“ „a!?“ „Б123!?“ a „\char"0995\char"09BF 123“
+ }
+
+ It shows that fonts are switched with the scripts.
+
+ Be aware of the following drawbacks:
+
+ \begin{itemize}
+ \item Quite a lot chars can and should be used with more than one script, they belong to the Common or Inherited class. Examples are punctuation chars, digits, accents but also emoji. Currently these chars follow the active script. That's why the digits are all typeset with a different font, the accent over the pi is different to the one over the a, and why the opening quote is sometimes different to the closing quote. It is clear that some tools to force a script (and so a font) locally and globally for such chars are needed.
+
+ \item \identifier{multiscript} doesn't change hyphenation patterns or other language or script related features.
+
+ \item Language packages like \identifier{babel} or \identifier{polyglossia} have code to change the script too which could interfere or clash. This hasn't been tested yet.
+
+ \item \identifier{multiscript} can slow down the compilation.
+ \end{itemize}
+
+ It is possible to use the value \identifier{auto} with \identifier{multiscript}. luaotfload will then switch the script if it detects a char belonging to another script (and if the font support this script). This can be useful for fonts supporting more than one script or when using the \identifier{fallback} key described below.
+
+ It is also possible to combine \identifier{auto} with a named multiscript with the syntax \identifier{multiscript=auto+name}. The rules of the named multiscript will in such cases take precedence and \identifier{auto} used only for other scripts.
+
+
+
+ \endaltitem
+
+ \beginaltitem {fallback}\label{fallback}
+ This\marginpar{New in 3.12 -- experimental} allows you to define a chain of fonts which are used if glyphs are missing in the main font. It works only for text fonts, not for math fonts set with the \identifier{unicode-math} package.
+ The feature is experimental and bound to change. Feedback is welcome but you use it at your risk.
+ For example
+
+ \beginlisting
+ \directlua
+ {luaotfload.add_fallback
+ ("myfallback",
+ {
+ "DejaVuSans:mode=harf;script=grek;color=FF0000;",
+ "cmuserif:mode=node;script=cyrl;color=00FF00;",
+ "NotoSansBengali:mode=harf;script=bng2;color=0000FF;"
+ "NotoColorEmoji:mode=harf;"
+ }
+ )
+ }
+ \endlisting
+
+ This fallback can then be used e.g. like this:
+
+ \beginlisting
+ \font\test={name:LatinModernRoman:mode=node;fallback=myfallback;}
+ \endlisting
+
+ {\Large
+ \font\test={name:LatinModernRoman:mode=node;fallback=myfallback;}\test
+ 1234 a^^^^0301 π^^^^0301 a!? π123!? a БѨ123!? a \char"1F600\ \char"1F986\ \char"0995\char"09BF a „π“ a „Б“
+ }
+
+ Interesting points in the output are
+ \begin{itemize}
+ \item The accent over the pi, the digits and the quotes are all from the base font. Only missing glyphs are from the fallback.
+ \item The cyrillic is printed with the DejaVu font, despite the fact that is sets the script to \identifier{grek} and that the next font in the fallback chain would fit better.
+ \item The duck emoji is from the Noto font, while the face is from DejaVu as it comes first in the chain.
+ \end{itemize}
+
+ The \identifier{fallback} can be combined with the \identifier{multiscript}. For example
+
+ \beginlisting
+ \font\test={name:LatinModernRoman:mode=node;fallback=myfallback;multiscript=auto;}
+ \endlisting
+
+ {\Large
+ \font\test={name:LatinModernRoman:mode=node;fallback=myfallback;multiscript=auto;}\test
+ 1234 a^^^^0301 π^^^^0301 a!? π123!? a БѨ123!? a \char"1F600\ \char"1F986\ \char"0995\char"09BF a „π“ a „Б“
+ }
+
+ Now the accent over the pi is better. The digits after the pi and the closing quote use the DejaVu font. The digits after
+ the cyrillic use the Latin Modern font because of an interesting \enquote{feature} of this font: It claims to know the \identifier{cyrl} script despite the fact that it doesn't contain any cyrillic glyphs.
+
+ \identifier{fallback} can be nested: fonts in the fallback table can refer to another \identifier{fallback} table.
+
+ As with the \identifier{multiscript} key more control over the used glyph and script in edge cases will be needed.
+ \endaltitem
\enddescriptions
\endsubsection
@@ -1093,8 +1250,8 @@ Currently (2014) there are three of them:
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\beginsection {Combining fonts}
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-Version 2.7 and later support combining characters from multiple fonts into a
+Beside the new keys \identifier{multiscript} and \identifier{fallback} described earlier
+Version 2.7 and later support another method to combine characters from multiple fonts into a
single virtualized one. This requires that the affected fonts be loaded in
advance as well as a special \emphasis{request syntax}. Furthermore, this
allows to define \emphasis{fallback fonts} to supplement fonts that may lack
@@ -1898,18 +2055,32 @@ are defined for which scripts.
has glyph \luaident{index}.
\endaltitem
- \beginaltitem {aux.slot_of_name(name : string)}
- Translates an Adobe Glyph name to the corresponding glyph
- slot.
+ \beginaltitem {aux.slot_of_name(id : int, name : string)}
+ Translates a name for a glyph in font \luaident{id} to the
+ corresponding glyph slot which can be used e.g.\ as an argument to
+ \inlinecode{\char}. The number is assigned by the \identifier{luaotfload} code
+ and not related to the glyph index (GID) of the font as stored in the \identifier{[index]} field
+ of the lua-file.
\endaltitem
- \beginaltitem {aux.name_of_slot(slot : int)}
+ \beginaltitem {aux.gid_of_name(id : int, name : string)}
+ Translates\marginpar{New version 3.12} a name for a glyph in font \luaident{id} to the
+ corresponding glyph index (GID) as stored in the \identifier{[index]} field.
+ \endaltitem
+
+ \beginaltitem {aux.name_of_slot(id : int, slot : int)}
The inverse of \luaident{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
\luaident{name_of_slot}.
\endaltitem
+ \beginaltitem {aux.gid_of_name(id : int, name : string)}
+ Translates a Glyph name to the corresponding GID in font
+ \luaident{id}. This corresponds to the value returned by
+ \inlinecode{\XeTeXglyphindex} in \XeTeX.
+ \endaltitem
+
\beginaltitem {aux.provides_script(id : int, script : string)}
Test if a font supports \luaident{script}.
\endaltitem
diff --git a/macros/luatex/generic/luaotfload/luaotfload-multiscript.lua b/macros/luatex/generic/luaotfload/luaotfload-multiscript.lua
index c2aa664fab..f6a272ecab 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-multiscript.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-multiscript.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-multiscript",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / multiscript",
license = "GPL v2.0",
author = "Marcel Krüger"
@@ -24,6 +24,19 @@ local insert_after = node.direct.insert_after
local traverse_char = node.direct.traverse_char
local protect_glyph = node.direct.protect_glyph
local otffeatures = fonts.constructors.newfeatures "otf"
+-- local normalize = fonts.handlers.otf.features.normalize
+local definers = fonts.definers
+local define_font = luaotfload.define_font
+local scripts_lib = require'luaotfload-scripts'.script
+local script_to_iso = scripts_lib.to_iso
+local script_to_ot = scripts_lib.to_ot
+
+local harf = luaotfload.harfbuzz
+local GSUBtag, GPOStag
+if harf then
+ GSUBtag = harf.Tag.new("GSUB")
+ GPOStag = harf.Tag.new("GPOS")
+end
local sep = lpeg.P' '^0 * ';' * lpeg.P' '^0
local codepoint = lpeg.S'0123456789ABCDEF'^4/function(c)return tonumber(c, 16)end
@@ -35,7 +48,7 @@ local function multirawset(table, key1, key2, value)
return table
end
local script_extensions do
- local entry = lpeg.Cg(codepoint_range * sep * lpeg.Ct((lpeg.C(lpeg.R'AZ' * lpeg.R'az'^1))^1 * ' ') * '#')^-1 * (1-lpeg.P'\n')^0 * '\n'
+ local entry = lpeg.Cg(codepoint_range * sep * lpeg.Ct((lpeg.C(lpeg.R'AZ' * lpeg.R'az'^1)/string.lower)^1 * ' ') * '#')^-1 * (1-lpeg.P'\n')^0 * '\n'
local file = lpeg.Cf(
lpeg.Ct''
* entry^0
@@ -98,7 +111,7 @@ local script_mapping do
Cuneiform = "Xsux", Yi = "Yiii", Zanabazar_Square = "Zanb",
Inherited = "Zinh", Common = "Zyyy", Unknown = "Zzzz",
}
- local entry = lpeg.Cg(codepoint_range * sep * ((lpeg.R'AZ' + lpeg.R'az' + '_')^1/script_aliases))^-1 * (1-lpeg.P'\n')^0 * '\n'
+ local entry = lpeg.Cg(codepoint_range * sep * ((lpeg.R'AZ' + lpeg.R'az' + '_')^1/script_aliases/string.lower))^-1 * (1-lpeg.P'\n')^0 * '\n'
-- local entry = lpeg.Cg(codepoint_range * sep * lpeg.Cc(true))^-1 * (1-lpeg.P'\n')^0 * '\n'
local file = lpeg.Cf(
lpeg.Ct''
@@ -110,6 +123,48 @@ local script_mapping do
f:close()
end
+local function load_on_demand(specifications, size)
+ return setmetatable({}, { __index = function(t, k)
+ local specification = specifications[k]
+ if not specification then return end
+ local f = define_font(specification, size)
+ local fid
+ if type(f) == 'table' then
+ fid = font.define(f)
+ definers.register(f, fid)
+ elseif f then
+ fid = f
+ end
+ t[k] = fid
+ return fid
+ end})
+end
+
+local function collect_scripts(tfmdata)
+ local script_dict = {}
+ local hbdata = tfmdata.hb
+ if hbdata then
+ local face = hbdata.shared.face
+ for _, tag in next, { GSUBtag, GPOStag } do
+ local script_tags = face:ot_layout_get_script_tags(tag) or {}
+ for i = 1, #script_tags do
+ script_dict[tostring(script_tags[i]):gsub(" +$", "")] = true
+ end
+ end
+ else
+ local features = tfmdata.resources.features
+ for _, feature_table in next, features do
+ for _, scripts in next, feature_table do
+ for script in next, scripts do
+ script_dict[script] = true
+ end
+ end
+ end
+ script_dict["*"] = nil
+ end
+ return script_dict
+end
+
local additional_scripts_tables = { }
local additional_scripts_fonts = setmetatable({}, {
@@ -122,27 +177,112 @@ local additional_scripts_fonts = setmetatable({}, {
end,
})
+local function is_dominant_script(scripts, script, first, ...)
+ if script == first then return true end
+ if scripts[first] or not first then return false end
+ return is_dominant_script(scripts, script, ...)
+end
+
local function makecombifont(tfmdata, _, additional_scripts)
- local basescript = tfmdata.properties.script
- local scripts = {basescript = false}
- additional_scripts = additional_scripts_tables[additional_scripts]
- for script, fontname in pairs(additional_scripts) do
- if script ~= basescript then
- local f = fonts.definers.read(fontname, tfmdata.size)
- local fid
- if type(f) == 'table' then
- fid = font.define(f)
- else
- error[[FIXME???]]
+ local has_auto
+ additional_scripts = tostring(additional_scripts)
+ if additional_scripts:sub(1, 5) == "auto+" then
+ additional_scripts = additional_scripts:sub(6)
+ has_auto = true
+ elseif additional_scripts == "auto" then
+ has_auto, additional_scripts = true, false
+ end
+ if additional_scripts then
+ local t = additional_scripts_tables[tonumber(additional_scripts) or additional_scripts]
+ if not t then error(string.format("Unknown multiscript table %s", additional_scripts)) end
+ local lower_t = {}
+ for k, v in next, t do if type(k) == "string" then
+ local l = string.lower(k)
+ if lower_t[l] ~= nil and lower_t[l] ~= v then
+ error(string.format("Inconsistant multiscript table %q for script %s", additional_scripts, l))
+ end
+ lower_t[l] = v
+ end end
+ additional_scripts = lower_t
+ else
+ additional_scripts = {}
+ end
+ if has_auto then
+ local fallback = tfmdata.fallback_lookup
+ if fallback then -- FIXME: here be dragons
+ local fallbacks = {}
+ local current = tfmdata
+ local i = 0
+ while current do
+ local collected = collect_scripts(current)
+ for script in next, collected do
+ local scr_fb = fallbacks[script]
+ if not scr_fb then
+ scr_fb = {}
+ fallbacks[script] = scr_fb
+ end
+ scr_fb[#scr_fb + 1] = current.specification.specification .. ';script=' .. script .. ';-multiscript'
+ end
+ i = i - 1
+ current = fallback[i]
+ end
+ current = tfmdata
+ i = 0
+ while current do
+ local collected = collect_scripts(current)
+ for script, scr_fb in next, fallbacks do
+ if not collected[script] then
+ scr_fb[#scr_fb + 1] = current.specification.specification .. ';-multiscript'
+ end
+ end
+ i = i - 1
+ current = fallback[i]
+ end
+ for script, scr_fb in next, fallbacks do
+ local iso_script = script_to_iso(script)
+ if not additional_scripts[iso_script] and is_dominant_script(scr_fb, script, script_to_ot(iso_script)) then
+ local main = scr_fb[1]
+ table.remove(scr_fb, 1)
+ local fbid = luaotfload.add_fallback(scr_fb)
+ additional_scripts[iso_script] = main .. ';fallback=' .. fbid
+ end
+ end
+ else
+ local spec = tfmdata.specification
+ local collected = collect_scripts(tfmdata)
+ for script in next, collected do
+ local iso_script = script_to_iso(script)
+ if not additional_scripts[iso_script] and is_dominant_script(collected, script, script_to_ot(iso_script)) then
+ additional_scripts[iso_script] = spec.specification .. ';-multiscript;script=' .. script
+ ---- FIXME: IMHO the following which just modiefies the spec
+ -- would be nicer, but it breaks font patching callbacks
+ -- (except if we ignore them, but that would be inconsistant to
+ -- other fonts)
+ -- local new_raw_features = {}
+ -- local new_features = { raw = new_raw_features, normal = new_raw_features }
+ -- for f, v in next, spec.features.raw do
+ -- new_raw_features[f] = v
+ -- end
+ -- new_raw_features.multiscript = false
+ -- new_raw_features.script = script
+ -- local new_normal_features = luaotfload.apply_default_features(new_raw_features)
+ -- new_normal_features.sub = nil
+ -- new_normal_features.lookup = nil
+ -- new_features.normal = normalize(new_normal_features)
+ -- local new_spec = {}
+ -- for k, v in next, spec do
+ -- new_spec[k] = v
+ -- end
+ -- new_spec.hash = nil
+ -- new_spec.features = new_features
+ -- additional_scripts[script] = new_spec
+ end
end
- scripts[script] = {
- fid = fid,
- font = f,
- characters = f.characters,
- }
end
end
- tfmdata.additional_scripts = scripts
+ local basescript = tfmdata.properties.script or "dflt"
+ tfmdata.additional_scripts = load_on_demand(additional_scripts, tfmdata.size)
+ tfmdata.additional_scripts[basescript] = false
end
local glyph_id = node.id'glyph'
@@ -156,29 +296,30 @@ function domultiscript(head, _, _, _, direction)
end
if last_fonts then
local mapped_scr = script_mapping[cid]
- if mapped_scr == "Zinh" then
+ if mapped_scr == "zinh" then
mapped_scr = last_script
else
- local additional_scr = script_extensions[cid]
+ local additional_scripts = script_extensions[cid]
if additional_scripts then
if additional_scripts[last_script] then
mapped_scr = last_script
- elseif not last_fonts[mapped_scr] then
+ elseif last_fonts[mapped_scr] == nil then
for i = 1, #additional_scripts do
- if last_fonts[additional_scripts[i]] then
- mapped_scr = additional_scripts[i]
+ local script = additional_scripts[i]
+ if last_fonts[script] ~= nil then
+ mapped_scr = script
break
end
end
end
- elseif mapped_scr == "Zyyy" then
+ elseif mapped_scr == "zyyy" then
mapped_scr = last_script
end
end
last_script = mapped_scr
local mapped_font = last_fonts[mapped_scr]
if mapped_font then
- setfont(cur, mapped_font.fid)
+ setfont(cur, mapped_font)
end
end
end
@@ -188,6 +329,8 @@ function luaotfload.add_multiscript(name, fonts)
if fonts == nil then
fonts = name
name = #additional_scripts_fonts + 1
+ else
+ name = name:lower()
end
additional_scripts_tables[name] = fonts
return name
@@ -198,6 +341,7 @@ otffeatures.register {
description = "Combine fonts for multiple scripts",
manipulators = {
node = makecombifont,
+ plug = makecombifont,
},
-- processors = { -- processors would be nice, but they are applied
-- -- too late for our purposes
diff --git a/macros/luatex/generic/luaotfload/luaotfload-notdef.lua b/macros/luatex/generic/luaotfload/luaotfload-notdef.lua
index 9c0634f90d..3156882e86 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-notdef.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-notdef.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-notdef",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / color",
license = "GPL v2.0",
author = "Marcel Krüger"
diff --git a/macros/luatex/generic/luaotfload/luaotfload-parsers.lua b/macros/luatex/generic/luaotfload/luaotfload-parsers.lua
index 4cf46fe329..2cdd006378 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-parsers.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-parsers.lua
@@ -7,8 +7,8 @@
local ProvidesLuaModule = {
name = "luaotfload-parsers",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / filelist",
license = "GPL v2.0"
}
diff --git a/macros/luatex/generic/luaotfload/luaotfload-resolvers.lua b/macros/luatex/generic/luaotfload/luaotfload-resolvers.lua
index 61949621cb..c49fa58fd9 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-resolvers.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-resolvers.lua
@@ -11,8 +11,8 @@
local ProvidesLuaModule = {
name = "luaotfload-resolvers",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / resolvers",
license = "GPL v2.0"
}
diff --git a/macros/luatex/generic/luaotfload/luaotfload-scripts.lua b/macros/luatex/generic/luaotfload/luaotfload-scripts.lua
index 48ececf890..814223b5ed 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-scripts.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-scripts.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-script",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / Script helpers",
license = "CC0 1.0 Universal",
author = "Marcel Krüger"
diff --git a/macros/luatex/generic/luaotfload/luaotfload-status.lua b/macros/luatex/generic/luaotfload/luaotfload-status.lua
index b4bad63474..ed3324f304 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-status.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-status.lua
@@ -1,18 +1,18 @@
return {
["hashes"]={
- { "fontloader-2019-10-29.lua", "8b7d755e08cfef0826429ffa68271eb3" },
+ { "fontloader-2020-01-26.lua", "010915906c0926fc7f5f4d064a879be4" },
{ "fontloader-util-fil.lua", "4bb3e4dc72e308d8ed67cd7a80027fa7" },
- { "fontloader-util-str.lua", "fc15d89c4c35f7338d09fc7644fac181" },
+ { "fontloader-util-str.lua", "2e4625b13a5f4be76b1d8664a32119ec" },
{ "fontloader-l-unicode.lua", "9bc311ce08ce498f9caacb6164ea1d9f" },
{ "fontloader-l-math.lua", "a373be3ed2db0d5f98588fa81abca48f" },
{ "fontloader-l-boolean.lua", "18ed6c4b2c40dd87224ea33229548d20" },
- { "fontloader-l-file.lua", "3d6ea476061292a0da98c3f65cdabe46" },
- { "fontloader-l-io.lua", "42608ad95eb2822fdc370d1c11f08fb5" },
- { "fontloader-l-table.lua", "9844897b04a01bb197427d71de71de2b" },
+ { "fontloader-l-file.lua", "60ddd3948d9de7bde8b4a0f5c51ff9f5" },
+ { "fontloader-l-io.lua", "a4042e9d6bce71c61fdd94e6e17f2bf4" },
+ { "fontloader-l-table.lua", "a495e837874aa3e4fa57fea4dd05a26c" },
{ "fontloader-l-string.lua", "e1347bef0eeeff9f098df83b30b32df9" },
{ "fontloader-l-function.lua", "f771cc91839ebcdfc094083434fbe00f" },
{ "fontloader-l-lpeg.lua", "efe630e3a9a1d269120e59cfd8fba4ba" },
- { "fontloader-l-lua.lua", "dda8438a34886bb767dbad381f1ea70a" },
+ { "fontloader-l-lua.lua", "4185c43dd58d217094ef91c0310d8772" },
{ "fontloader-fonts-gbn.lua", "d25472d54c4841db43a745764a63533e" },
{ "fontloader-fonts-lig.lua", "b9dbe77ce747d4c35bb2a20ffbe5aa51" },
{ "fontloader-fonts-ext.lua", "01015ab3758cdc2af29394e6d502a91a" },
@@ -21,74 +21,74 @@ return {
{ "fontloader-fonts-enc.lua", "3e71a54297e8f85a1ac438bb0f20dd79" },
{ "fontloader-fonts-mis.lua", "bc9eb43c27f63ce9d0fff67e104fe1c6" },
{ "fontloader-basics-chr.lua", "58b7ef0c486e06090b362971b9f85e27" },
- { "fontloader-basics-nod.lua", "c05f47077c709bbf12a8758852dc4e06" },
+ { "fontloader-basics-nod.lua", "4ce2f7c752fdc4c1d6d9f74e8cd50be8" },
{ "fontloader-font-imp-effects.lua", "73a660359a0ec71e44cc2b7225a715ac" },
{ "fontloader-font-imp-italics.lua", "fe1ca80fb5ea4a2f8d2d5c484e7ba913" },
{ "fontloader-font-imp-ligatures.lua", "043daa4fcccf2560868da359d71d3a4a" },
{ "fontloader-font-imp-tex.lua", "77c374b0ef00c2fb12188ec42beb4257" },
- { "fontloader-font-def.lua", "f66c365dae4499f982d8bf16e5d37de3" },
+ { "fontloader-font-def.lua", "c525b9f55da1c736a1f6939c0a6f8f00" },
{ "fontloader-font-lua.lua", "55b281fb98f7bd848fc19928f376f647" },
{ "fontloader-font-afk.lua", "54d554530e75c57c56ee76234724e26d" },
{ "fontloader-font-one.lua", "987c5c5ed3754ad2feab80985067d59e" },
- { "fontloader-font-onr.lua", "d4d2449b4084e6afb1837ae5835082cc" },
+ { "fontloader-font-onr.lua", "22572ec0f86f53631e14b6d1ed43ee51" },
{ "fontloader-font-otc.lua", "1204a2fdc436e644127c0aa38ab69607" },
- { "fontloader-font-ocl.lua", "ba40df1a92b9b42a5c70d20c28f44759" },
+ { "fontloader-font-ocl.lua", "c1f4cbea3c4ec5002a04fc637b135711" },
{ "fontloader-font-osd.lua", "39e92f6e575741646d75ea79e3be87f3" },
- { "fontloader-font-ots.lua", "d6a0ce4b40cd4ee1895e2248dcf87d37" },
+ { "fontloader-font-ots.lua", "d0107799ec82da7f96dafe9626c5ee7f" },
{ "fontloader-font-ota.lua", "d6dfb94563d6a52675e274b2e673e4a6" },
{ "fontloader-font-otj.lua", "66c7a910d95d4a52b81061de776898e1" },
- { "fontloader-font-oto.lua", "52804afd96f4be005f513a012b874668" },
+ { "fontloader-font-oto.lua", "24238a7c600d090a8ee88312321dd9b3" },
{ "fontloader-font-otl.lua", "ec0241b7465a7713e53c246e8e9fb2a8" },
{ "fontloader-font-oup.lua", "0cef35af01739f52fd09feb5401192ae" },
{ "fontloader-font-dsp.lua", "5d3db0184c903829b2c5bddcb8cdb14c" },
{ "fontloader-font-ttf.lua", "44e61cef50dab9b1aaf48130f9367c34" },
- { "fontloader-font-cff.lua", "98d5a660ea803b65cb883c009ecf3c0b" },
+ { "fontloader-font-cff.lua", "c769020b41b39418f703347f3d328bc7" },
{ "fontloader-font-ott.lua", "aba6d8335a5f38a5a62d3631492f3392" },
{ "fontloader-font-oti.lua", "dbae7722baae24d917a17176553825cf" },
- { "fontloader-font-otr.lua", "b1c03925c949027c86f781785fa7a208" },
+ { "fontloader-font-otr.lua", "d96724dcb40c673ac294df7044a39925" },
{ "fontloader-font-vfc.lua", "94937140f2c909e9c831ba021f1ab303" },
{ "fontloader-font-map.lua", "f486746e90fe972de4b73e208ac7cbb2" },
{ "fontloader-font-cid.lua", "4d87988efa86020a14708ee03c23415f" },
- { "fontloader-font-con.lua", "8b35e7c2203d5b57c61942e07cee2c0a" },
- { "fontloader-font-ini.lua", "4299a02110bbd7c0d27e131235c5319d" },
- { "fontloader-data-con.lua", "7ce546725b1550f655c78ac9d69419ca" },
- { "fontloader-reference.lua", "5be3565068a1929b173bde862b48a30e" },
- { "fontloader-basics-gen.lua", "b21e91bbd534f77e368f0ec13f865aed" },
+ { "fontloader-font-con.lua", "b436bf6880a56216445779ac68fee877" },
+ { "fontloader-font-ini.lua", "4dee96e1e1474d324dd126bd5d375df8" },
+ { "fontloader-data-con.lua", "de6ae0997b0e70a23bcc9afff5d8b072" },
+ { "fontloader-reference.lua", "0c0e3262f5cc53d1142e459921526f69" },
+ { "fontloader-basics-gen.lua", "b88f9848c3247e4222b7bb63b0ee3f35" },
{ "mktests", "c7cff7025962922944376acc1ffa9c47" },
- { "mkstatus", "1a9f8bbf36426071b6970678975360a9" },
+ { "mkstatus", "72f4b4ff15c9f4fd95b8ba942b541b20" },
{ "mkcharacters", "92c24bb582fc84c0365634f29eb89863" },
{ "mkglyphlist", "557836886d4f0e6d656eac3ded4456a2" },
{ "mkimport", "60e0b11a1a68719033e86a3e0f4d5e86" },
- { "luaotfload-glyphlist.lua", "bb67952ea9fb1c3766402457bd477629" },
+ { "luaotfload-glyphlist.lua", "0c2e6db4d2d944b5e4e6d83971edc166" },
{ "luaotfload-characters.lua", "593ce9dccf6ddc4f7d4be0514f581102" },
- { "luaotfload-tounicode.lua", "f37eab5828b4aee392de359bf4d57027" },
- { "luaotfload-unicode.lua", "861eb4a6332e0b7d8e757cab4759a734" },
- { "luaotfload-resolvers.lua", "5d9e254413ba333a4f559be023355224" },
- { "luaotfload-parsers.lua", "e1f4a54c2f29550d3c8ff18e19841ee4" },
- { "luaotfload-multiscript.lua", "05d2f1c9a27afdbc4b9ad95f958cb6cb" },
- { "luaotfload-loaders.lua", "cc475c8b04368d3f8ef6e52495fb579a" },
- { "luaotfload-harf-plug.lua", "ec3ad02c41bd174aedc350dc4cabbc54" },
- { "luaotfload-harf-define.lua", "7e85627ae64b749f41de5863d7c5ca86" },
- { "luaotfload-notdef.lua", "23d514bea20fcb0343a8382537ab3924" },
- { "luaotfload-embolden.lua", "bd0cd6e3951dab2862ca2d2dc1c6bccb" },
- { "luaotfload-letterspace.lua", "352d83726eead3902323d451907aeb66" },
- { "luaotfload-features.lua", "c60d2fcaab63dc338d9abd82176f96ee" },
- { "luaotfload-database.lua", "3f126f3acdcf4b90f13d6c3c41b83147" },
- { "luaotfload-configuration.lua", "fdb8f0e3b826e91b8598d4b4a387aaa5" },
- { "luaotfload-colors.lua", "7f63ffde97bb798b63f2c94c5a7e474f" },
- { "luaotfload-auxiliary.lua", "5e027ad1dde5655eaa74204cdb709098" },
- { "luaotfload-filelist.lua", "3194c19d0618e4784711e87864e625ea" },
- { "luaotfload-tool.lua", "3f989f7646d8df2aea584d2333cfb894" },
- { "luaotfload-diagnostics.lua", "b31b30dd151cd2e6c359b56f4c9fd12c" },
- { "luaotfload-log.lua", "30d00c154254ce70fe7c1a33692110e2" },
- { "luaotfload-init.lua", "e22c43529440994d0c99734c736dbb65" },
- { "luaotfload-main.lua", "9fc20061c7af28ccfcfb95a69115c3e4" },
+ { "luaotfload-tounicode.lua", "8c678ba2c2c809706a63a79a339d102b" },
+ { "luaotfload-unicode.lua", "ec04cec91b4c7a73acace241f791a228" },
+ { "luaotfload-resolvers.lua", "92c1c59341213f716a6eee355b847849" },
+ { "luaotfload-parsers.lua", "ef73b50dee1935a1af4cd76ed303bba6" },
+ { "luaotfload-multiscript.lua", "d5a1d602ecc4b4caad5f89772dd8affa" },
+ { "luaotfload-loaders.lua", "084e6b89d85ccdc59d90102059d8020a" },
+ { "luaotfload-harf-plug.lua", "09d1f0baf43fb6932d5619436d0ff950" },
+ { "luaotfload-harf-define.lua", "e27975867cbe2eac101ea2ff366050dc" },
+ { "luaotfload-notdef.lua", "1a4f3eeedfb374927fa0673849c5f95b" },
+ { "luaotfload-embolden.lua", "8412b95b699231918ea78384ada0e3df" },
+ { "luaotfload-letterspace.lua", "2ffa8128161281fa2ca7605fc056e13d" },
+ { "luaotfload-features.lua", "2db4774ed71aa8ba4e859655e6076f1b" },
+ { "luaotfload-database.lua", "c11b6638c72aa2216aaf0432278654cc" },
+ { "luaotfload-configuration.lua", "d4c270b581eb22ded89bc2c6dffd7a78" },
+ { "luaotfload-colors.lua", "693b527638ff44e88530bef81cff360c" },
+ { "luaotfload-auxiliary.lua", "90307f9dc0fde714e7ade75ed8606de6" },
+ { "luaotfload-filelist.lua", "629600766c33b11ebce09dd77dbd67c0" },
+ { "luaotfload-tool.lua", "dfa990067c3f21fdebfcbd47b291fc9c" },
+ { "luaotfload-diagnostics.lua", "7c13bd4abdd110073b6dd438c94d28ec" },
+ { "luaotfload-log.lua", "c6e62cd69d185ea57605c21919ae103e" },
+ { "luaotfload-init.lua", "0e156bb051ffa7c51dbdaca4afe0b5ae" },
+ { "luaotfload-main.lua", "352cf2115d0b60e8537557baa9748f7a" },
},
["notes"]={
["committer"]="Ulrike Fischer <fischer@troubleshooting-tex.de>",
- ["description"]="v3.11/2019-11-10",
- ["loader"]="fontloader-2019-10-29.lua",
- ["revision"]="d2ab135f432eadbc68f529447aa47b906ff961ab",
- ["timestamp"]="2019-11-10 21:29:47 +0100",
+ ["description"]="v3.12/2020-02-02",
+ ["loader"]="fontloader-2020-01-26.lua",
+ ["revision"]="df675afec78546b857a89f1c416dc0f2600c8ff0",
+ ["timestamp"]="2020-02-02 22:36:36 +0100",
},
} \ No newline at end of file
diff --git a/macros/luatex/generic/luaotfload/luaotfload-tool.1 b/macros/luatex/generic/luaotfload/luaotfload-tool.1
index 03b8373858..2d4ce7d16c 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-tool.1
+++ b/macros/luatex/generic/luaotfload/luaotfload-tool.1
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH LUAOTFLOAD-TOOL 1 "2019-11-10" "3.11" "text processing"
+.TH LUAOTFLOAD-TOOL 1 "2020-02-02" "3.12" "text processing"
.SH NAME
luaotfload-tool \- generate and query the Luaotfload font names database
.
@@ -326,7 +326,7 @@ state.
.SS miscellaneous
.INDENT 0.0
.TP
-.BI \-\-verbose\fB= N\fP,\fB \ \-v
+.BI \-\-verbose\fB= N\fR,\fB \ \-v
Set verbosity level to \fIn\fP or the number of
repetitions of \fB\-v\fP\&.
.TP
@@ -414,7 +414,7 @@ them with the next run of \fILuaTeX\fP\&.
\fBtexdoc luaotfload\fP to display the manual for the \fILuaotfload\fP
package
.IP \(bu 2
-Luaotfload development \fI\%https://github.com/lualatex/luaotfload\fP
+Luaotfload development \fI\%https://github.com/latex3/luaotfload\fP
.IP \(bu 2
LuaLaTeX mailing list \fI\%http://tug.org/pipermail/lualatex\-dev/\fP
.IP \(bu 2
@@ -430,8 +430,8 @@ Tons, probably.
.SH AUTHORS
.sp
\fILuaotfload\fP was developed by the LuaLaTeX dev team
-(\fI\%https://github.com/lualatex/\fP). It is currently maintained by Ulrike Fischer
-and Marcel Krüger at \fI\%https://github.com/u\-fischer/luaotfload\fP
+(\fI\%https://github.com/lualatex/\fP). It is currently maintained by the LaTeX
+Project Team at \fI\%https://github.com/latex3/luaotfload\fP
The fontloader code is provided by Hans Hagen of Pragma ADE, Hasselt
NL (\fI\%http://pragma\-ade.com/\fP).
.sp
diff --git a/macros/luatex/generic/luaotfload/luaotfload-tool.lua b/macros/luatex/generic/luaotfload/luaotfload-tool.lua
index b83cbb84bc..de69173ed5 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-tool.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-tool.lua
@@ -9,8 +9,8 @@
local ProvidesLuaModule = {
name = "luaotfload-tool",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload-tool / database functionality",
license = "GPL v2.0"
}
@@ -454,6 +454,9 @@ local show_info_table show_info_table = function (t, depth)
for n = 1, #keys do
local key = keys [n]
local val = t [key]
+ if key == "subfontindex" then
+ val = val - 1 -- We use 0-based subfont indices
+ end
if type (val) == "table" then
texiowrite_nl (indent .. stringformat (info_fmt, key, "<table>"))
show_info_table (val, depth + 1)
@@ -670,16 +673,11 @@ end
local subfont_by_name
subfont_by_name = function (lst, askedname, n)
- if not n then
- return subfont_by_name (lst, askedname, 1)
- end
-
- local font = lst[n]
- if font then
+ for n = 1, #lst do
+ local font = lst[n]
if fonts.names.sanitize_fontname (font.fullname) == askedname then
return font
end
- return subfont_by_name (lst, askedname, n + 1)
end
return false
end
@@ -726,7 +724,7 @@ local show_font_info = function (basename, askedname, detail, subfont)
for subfont = 1, nfonts do
logreport (true, 1, "resolve",
[[Showing info for font no. %d]],
- subfont)
+ subfont - 1)
show_info_items(shortinfo[subfont])
if detail == true then
show_full_info(fullname, subfont)
@@ -1211,7 +1209,7 @@ actions.query = function (job)
if subfont then
logreport (false, 0, "resolve",
"Resolved file name %q, subfont nr. %q",
- foundname, subfont)
+ foundname, subfont - 1)
else
logreport (false, 0, "resolve",
"Resolved file name %q", foundname)
diff --git a/macros/luatex/generic/luaotfload/luaotfload-tool.pdf b/macros/luatex/generic/luaotfload/luaotfload-tool.pdf
index e810fa2ff6..eb2d6463bb 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-tool.pdf
+++ b/macros/luatex/generic/luaotfload/luaotfload-tool.pdf
Binary files differ
diff --git a/macros/luatex/generic/luaotfload/luaotfload-tool.rst b/macros/luatex/generic/luaotfload/luaotfload-tool.rst
index 09e4023882..35ca195501 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-tool.rst
+++ b/macros/luatex/generic/luaotfload/luaotfload-tool.rst
@@ -6,9 +6,9 @@
generate and query the Luaotfload font names database
-----------------------------------------------------------------------
-:Date: 2019-11-10
+:Date: 2020-02-02
:Copyright: GPL v2.0
-:Version: 3.11
+:Version: 3.12
:Manual section: 1
:Manual group: text processing
@@ -304,7 +304,7 @@ SEE ALSO
* ``texdoc luaotfload`` to display the manual for the *Luaotfload*
package
-* Luaotfload development `<https://github.com/lualatex/luaotfload>`_
+* Luaotfload development `<https://github.com/latex3/luaotfload>`_
* LuaLaTeX mailing list `<http://tug.org/pipermail/lualatex-dev/>`_
* LuaTeX `<http://luatex.org/>`_
* ConTeXt `<http://wiki.contextgarden.net>`_
@@ -319,8 +319,8 @@ AUTHORS
=======================================================================
*Luaotfload* was developed by the LuaLaTeX dev team
-(`<https://github.com/lualatex/>`__). It is currently maintained by Ulrike Fischer
-and Marcel Krüger at `<https://github.com/u-fischer/luaotfload>`__
+(`<https://github.com/lualatex/>`__). It is currently maintained by the LaTeX
+Project Team at `<https://github.com/latex3/luaotfload>`__
The fontloader code is provided by Hans Hagen of Pragma ADE, Hasselt
NL (`<http://pragma-ade.com/>`__).
diff --git a/macros/luatex/generic/luaotfload/luaotfload-tounicode.lua b/macros/luatex/generic/luaotfload/luaotfload-tounicode.lua
index 560f2c83aa..509a0d782d 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-tounicode.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-tounicode.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-tounicode",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / tounicode",
license = "GPL v2.0",
author = "Hans Hagen, Khaled Hosny, Elie Roux, Philipp Gesang, Marcel Krüger",
diff --git a/macros/luatex/generic/luaotfload/luaotfload-unicode.lua b/macros/luatex/generic/luaotfload/luaotfload-unicode.lua
index 659e92d938..8c1f92cf31 100644
--- a/macros/luatex/generic/luaotfload/luaotfload-unicode.lua
+++ b/macros/luatex/generic/luaotfload/luaotfload-unicode.lua
@@ -5,8 +5,8 @@
local ProvidesLuaModule = {
name = "luaotfload-unicode",
- version = "3.11", --TAGVERSION
- date = "2019-11-10", --TAGDATE
+ version = "3.12", --TAGVERSION
+ date = "2020-02-02", --TAGDATE
description = "luaotfload submodule / Unicode helpers",
license = "CC0 1.0 Universal",
author = "Marcel Krüger"
diff --git a/macros/luatex/generic/luaotfload/luaotfload.conf.5 b/macros/luatex/generic/luaotfload/luaotfload.conf.5
index c6969eaec6..9301e95805 100644
--- a/macros/luatex/generic/luaotfload/luaotfload.conf.5
+++ b/macros/luatex/generic/luaotfload/luaotfload.conf.5
@@ -1,6 +1,6 @@
.\" Man page generated from reStructuredText.
.
-.TH LUAOTFLOAD.CONF 5 "2019-11-10" "3.11" "text processing"
+.TH LUAOTFLOAD.CONF 5 "2020-02-02" "3.12" "text processing"
.SH NAME
luaotfload.conf \- Luaotfload configuration file
.
@@ -605,7 +605,7 @@ The \fITEXMF\fP (using kpathsea).
\fBtexdoc luaotfload\fP to display the PDF manual for the \fILuaotfload\fP
package
.IP \(bu 2
-Luaotfload development \fI\%https://github.com/u\-fischer/luaotfload\fP
+Luaotfload development \fI\%https://github.com/latex3/luaotfload\fP
.IP \(bu 2
LuaLaTeX mailing list \fI\%http://tug.org/pipermail/lualatex\-dev/\fP
.IP \(bu 2
@@ -622,8 +622,8 @@ The XDG base specification
.SH AUTHORS
.sp
\fILuaotfload\fP was developed by the LuaLaTeX dev team
-(\fI\%https://github.com/lualatex/\fP). It is currently maintained by Ulrike Fischer
-and Marcel Krüger at \fI\%https://github.com/u\-fischer/luaotfload\fP
+(\fI\%https://github.com/lualatex/\fP). It is currently maintained by the
+LaTeX Project Team at \fI\%https://github.com/latex3/luaotfload\fP
.sp
This manual page was written by Philipp Gesang <\fI\%phg@phi\-gamma.net\fP>.
.SH COPYRIGHT
diff --git a/macros/luatex/generic/luaotfload/luaotfload.conf.rst b/macros/luatex/generic/luaotfload/luaotfload.conf.rst
index 39faaa5040..b862c8b9b8 100644
--- a/macros/luatex/generic/luaotfload/luaotfload.conf.rst
+++ b/macros/luatex/generic/luaotfload/luaotfload.conf.rst
@@ -6,9 +6,9 @@
Luaotfload configuration file
-----------------------------------------------------------------------
-:Date: 2019-11-10
+:Date: 2020-02-02
:Copyright: GPL v2.0
-:Version: 3.11
+:Version: 3.12
:Manual section: 5
:Manual group: text processing
@@ -386,7 +386,7 @@ SEE ALSO
* ``texdoc luaotfload`` to display the PDF manual for the *Luaotfload*
package
-* Luaotfload development `<https://github.com/u-fischer/luaotfload>`_
+* Luaotfload development `<https://github.com/latex3/luaotfload>`_
* LuaLaTeX mailing list `<http://tug.org/pipermail/lualatex-dev/>`_
* LuaTeX `<http://luatex.org/>`_
* Luaotfload on CTAN `<http://ctan.org/pkg/luaotfload>`_
@@ -402,8 +402,8 @@ AUTHORS
=======================================================================
*Luaotfload* was developed by the LuaLaTeX dev team
-(`<https://github.com/lualatex/>`_). It is currently maintained by Ulrike Fischer
-and Marcel Krüger at `<https://github.com/u-fischer/luaotfload>`_
+(`<https://github.com/lualatex/>`_). It is currently maintained by the
+LaTeX Project Team at `<https://github.com/latex3/luaotfload>`_
This manual page was written by Philipp Gesang <phg@phi-gamma.net>.
diff --git a/macros/luatex/generic/luaotfload/luaotfload.sty b/macros/luatex/generic/luaotfload/luaotfload.sty
index 2c9582e464..f779ecbf83 100644
--- a/macros/luatex/generic/luaotfload/luaotfload.sty
+++ b/macros/luatex/generic/luaotfload/luaotfload.sty
@@ -40,7 +40,7 @@
\fi
\ifdefined\ProvidesPackage
\ProvidesPackage{luaotfload}%
- [2019/11/10 v3.11 OpenType layout system]
+ [2020/02/02 v3.12 OpenType layout system]
\fi
\directlua{
if xpcall(function ()%
diff --git a/macros/luatex/generic/luaotfload/scripts-demo.pdf b/macros/luatex/generic/luaotfload/scripts-demo.pdf
index 34fb4bad45..574765e148 100644
--- a/macros/luatex/generic/luaotfload/scripts-demo.pdf
+++ b/macros/luatex/generic/luaotfload/scripts-demo.pdf
Binary files differ
diff --git a/macros/luatex/generic/luaotfload/shaper-demo-graphite.pdf b/macros/luatex/generic/luaotfload/shaper-demo-graphite.pdf
index b0ca589b30..49a6e2114f 100644
--- a/macros/luatex/generic/luaotfload/shaper-demo-graphite.pdf
+++ b/macros/luatex/generic/luaotfload/shaper-demo-graphite.pdf
Binary files differ
diff --git a/macros/luatex/generic/luaotfload/shaper-demo.pdf b/macros/luatex/generic/luaotfload/shaper-demo.pdf
index 6baf30aa1d..0148482905 100644
--- a/macros/luatex/generic/luaotfload/shaper-demo.pdf
+++ b/macros/luatex/generic/luaotfload/shaper-demo.pdf
Binary files differ
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
index feb3fa41cc..8bf3bfebf7 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb
@@ -26,11 +26,11 @@ depend container_split_src_files/1
depend frozen/0
depend minrelease/2016
depend release/2019
-depend revision/53634
+depend revision/53645
name 00texlive.image
category TLCore
-revision 53624
+revision 53645
shortdesc TeX Live files only in the source repository
longdesc The files here are not copied by the installer and containers
longdesc are not built for them; they exist only in the source
@@ -16357,7 +16357,7 @@ catalogue-version 2.0
name amsmath
category Package
-revision 52854
+revision 53640
catalogue latex-amsmath
shortdesc AMS mathematical facilities for LaTeX
relocated 1
@@ -16373,11 +16373,11 @@ longdesc contributed packages add still further to its appeal; examples
longdesc are empheq, which provides functions for decorating and
longdesc highlighting mathematics, and ntheorem, for specifying theorem
longdesc (and similar) definitions.
-containersize 30296
-containerchecksum 8ac6aa268beda34c926104c42245fdba795cb24ed2fd4ef7d8283522fe761ad226a532f03535d912337651f9fe093c729dfc5c355d176852d7863978b74b1621
-doccontainersize 2345548
-doccontainerchecksum b499e7788568b886612af56380cd33bad54d8ca21e52a36c729e6d319ba02d0f27ad9bccb2fb5cbeb4e86d9a9c4100616c656d43ae1f56ff3eb8e9938b482279
-docfiles size=665
+containersize 30312
+containerchecksum 1982aa9f7345f47e50efe9f1e8be307491458e3689838cda328afdd704fa8e04e232187c0778b05848e46d49fada532b14b74bb0d327ebd91f821190b7bf1306
+doccontainersize 2364048
+doccontainerchecksum 9a9f7d065b3486d31a9db681757fa48d14d319232d918ad07fa5a8cca205a6e0023584eefbf36542bc5dfbd609b69b4801a8c95d7e38cfd9594cbd2afa862e50
+docfiles size=671
RELOC/doc/latex/amsmath/README.md details="General README" language="en"
RELOC/doc/latex/amsmath/ams-external.txt
RELOC/doc/latex/amsmath/ams-internal.txt
@@ -16399,8 +16399,8 @@ docfiles size=665
RELOC/doc/latex/amsmath/technote.tex
RELOC/doc/latex/amsmath/testmath.pdf details="Examples paper" language="en"
RELOC/doc/latex/amsmath/testmath.tex
-srccontainersize 64088
-srccontainerchecksum bee8cbee4dcceb50dda09cbdbd71ca707aa963cbcf012cc7e8ef96ef71646fc08ac6ef9e0346ed47e5cb3e324b9ccfa1928e9a1f6ee9c48f1ea174d927660997
+srccontainersize 64156
+srccontainerchecksum c7f680fe62fcf225ae466f71d78578a8d48e34fa9a8444b4ad7730d6309eb8c7b74bc798e1b116aa6385a810f52c165505d915de66840b5ff42dc82b9f74acab
srcfiles size=79
RELOC/source/latex/amsmath/amsbsy.dtx
RELOC/source/latex/amsmath/amsbsy.ins
@@ -16431,7 +16431,6 @@ catalogue-contact-home http://www.ams.org/tex/amslatex.html
catalogue-ctan /macros/latex/required/amsmath
catalogue-license lppl1.3c
catalogue-topics maths
-catalogue-version 2019-10-01 PL1
name amsmath-it
category Package
@@ -125365,7 +125364,7 @@ catalogue-version 1.1
name graphics
category Package
-revision 52663
+revision 53640
catalogue latex-graphics
shortdesc The LaTeX standard graphics bundle
relocated 1
@@ -125375,13 +125374,12 @@ longdesc of text in LaTeX documents. It comprises the packages color,
longdesc graphics, graphicx, trig, epsfig, keyval, and lscape.
depend graphics-cfg
depend graphics-def
-containersize 15040
-containerchecksum 644fb04d471819b976df0ead918a6f9d4c73affdf45ef19f905462713578be9eff4d487f97423e801651ab352bd49f275b89433ad8b5d5068c2aee7839d003f5
-doccontainersize 2001436
-doccontainerchecksum 194a3ab2ecead492a89c2a50a6afa1764348fa8dc70d2c00fd8eca9dd68aba71361732c9c01b760f4a2e3e5d5f5550fa37e2d42c8fc72cab33f1014ea10bd213
-docfiles size=624
+containersize 15064
+containerchecksum e46cb5c148958bfb538bfb0a3265f4b33c9f950285e39f9e7bb8bf2e8a5bf801a2baff9bee3268c072ed02c8f84097a4e7dadbd5f2a2f50b92fb8e7f9585f03f
+doccontainersize 1988012
+doccontainerchecksum 5b978813cf8fd00523cae6b543af0ef2f50544211a2fab6d2be84d778cf6c720ad2c4c91ef44cac21719358568c5728892a15b29e0b1858d61592d6b196e5479
+docfiles size=626
RELOC/doc/latex/graphics/README.md details="Readme"
- RELOC/doc/latex/graphics/cat-eps-converted-to.pdf
RELOC/doc/latex/graphics/cat.eps
RELOC/doc/latex/graphics/changes.txt
RELOC/doc/latex/graphics/color.pdf
@@ -125397,8 +125395,8 @@ docfiles size=624
RELOC/doc/latex/graphics/rotex.pdf
RELOC/doc/latex/graphics/rotex.tex
RELOC/doc/latex/graphics/trig.pdf
-srccontainersize 51852
-srccontainerchecksum f54ff0eec5c381518003d4203ac8d92a33aa8c18937aec8e74f89ce081710110deb649c359230b8b50036469376722718726ca87616ccbd596f78be0107696a4
+srccontainersize 51832
+srccontainerchecksum bc052e0d9c2d0ee0364511b1faf6965f656fff76ca7961598ba168ceae730e22b962adf130ee5f7b2a44a77cc80f8d54eba3a1438fa3aeb5d400994560bc45c0
srcfiles size=63
RELOC/source/latex/graphics/color.dtx
RELOC/source/latex/graphics/drivers.dtx
@@ -125437,7 +125435,6 @@ catalogue-contact-home https://www.latex-project.org/
catalogue-ctan /macros/latex/required/graphics
catalogue-license lppl1.3c
catalogue-topics graphics collection
-catalogue-version 2019-10-01 PL1
name graphics-cfg
category Package
@@ -139445,7 +139442,7 @@ catalogue-version 2.4
name jadetex
category Package
-revision 53212
+revision 53645
shortdesc Macros supporting Jade DSSSL output
longdesc Macro package on top of LaTeX to typeset TeX output of the Jade
longdesc DSSSL implementation.
@@ -139484,7 +139481,6 @@ depend latexconfig
depend letltxmacro
depend ltxcmds
depend marvosym
-depend oberdiek
depend pdfescape
depend pdftexcmds
depend psnfss
@@ -139500,12 +139496,12 @@ depend url
depend wasysym
depend zapfding
depend jadetex.ARCH
-execute AddFormat name=jadetex engine=pdftex patterns=language.dat options="*jadetex.ini" fmttriggers=amsfonts,atbegshi,atveryend,auxhook,babel,bigintcalc,bitset,cm,colortbl,cyrillic,dehyph,ec,etexcmds,fancyhdr,graphics,graphics-cfg,graphics-def,hycolor,hyperref,hyphen-base,iftex,infwarerr,intcalc,kvdefinekeys,kvoptions,kvsetkeys,latex,latex-fonts,latexconfig,letltxmacro,ltxcmds,marvosym,oberdiek,passivetex,pdfescape,pdftexcmds,psnfss,rerunfilecheck,stmaryrd,symbol,tex-ini-files,tipa,tools,ulem,uniquecounter,url,wasysym,zapfding
-execute AddFormat name=pdfjadetex engine=pdftex patterns=language.dat options="*pdfjadetex.ini" fmttriggers=amsfonts,atbegshi,atveryend,auxhook,babel,bigintcalc,bitset,cm,colortbl,cyrillic,dehyph,ec,etexcmds,fancyhdr,graphics,graphics-cfg,graphics-def,hycolor,hyperref,hyphen-base,iftex,infwarerr,intcalc,kvdefinekeys,kvoptions,kvsetkeys,latex,latex-fonts,latexconfig,letltxmacro,ltxcmds,marvosym,oberdiek,passivetex,pdfescape,pdftexcmds,psnfss,rerunfilecheck,stmaryrd,symbol,tex-ini-files,tipa,tools,ulem,uniquecounter,url,wasysym,zapfding
-containersize 29812
-containerchecksum 995d30e0a77e435f66aeb88e7d6f2183e29f019c31977837366235d80a247d249945561f9e27b908f2ea8d4ebc49dc0e7e3f669ec53ed38365bb45de46ba2605
+execute AddFormat name=jadetex engine=pdftex patterns=language.dat options="*jadetex.ini" fmttriggers=amsfonts,atbegshi,atveryend,auxhook,babel,bigintcalc,bitset,cm,colortbl,cyrillic,dehyph,ec,etexcmds,fancyhdr,graphics,graphics-cfg,graphics-def,hycolor,hyperref,hyphen-base,iftex,infwarerr,intcalc,kvdefinekeys,kvoptions,kvsetkeys,latex,latex-fonts,latexconfig,letltxmacro,ltxcmds,marvosym,passivetex,pdfescape,pdftexcmds,psnfss,rerunfilecheck,stmaryrd,symbol,tex-ini-files,tipa,tools,ulem,uniquecounter,url,wasysym,zapfding
+execute AddFormat name=pdfjadetex engine=pdftex patterns=language.dat options="*pdfjadetex.ini" fmttriggers=amsfonts,atbegshi,atveryend,auxhook,babel,bigintcalc,bitset,cm,colortbl,cyrillic,dehyph,ec,etexcmds,fancyhdr,graphics,graphics-cfg,graphics-def,hycolor,hyperref,hyphen-base,iftex,infwarerr,intcalc,kvdefinekeys,kvoptions,kvsetkeys,latex,latex-fonts,latexconfig,letltxmacro,ltxcmds,marvosym,passivetex,pdfescape,pdftexcmds,psnfss,rerunfilecheck,stmaryrd,symbol,tex-ini-files,tipa,tools,ulem,uniquecounter,url,wasysym,zapfding
+containersize 29800
+containerchecksum 9e0de5a7f835bcaf2675fb07b625b6ea2ea8785728b858af6c7bb5a150442868a8d0f80983f69c9b153b88420adc685b2ef5e1d12bb223f71fc032a4aa9d3588
doccontainersize 31788
-doccontainerchecksum 68790113003974d41d377c316a9f99ea1dbbfbf80c0d27f571b1a124a6beb5068d0e56d0d281ff3170fb3dad69076d35b74a20530d7f2f3b9eba13b9d8a0eff5
+doccontainerchecksum 8dc9b01bb0d9b586851f6cc7be915e79a44bc6236ef38fb4ff4c4d3130fe77a14a6d0bf47512baa51a14c5e120d72467fc0f5b9feac4b310354cb488b363af68
docfiles size=34
texmf-dist/doc/man/man1/jadetex.1
texmf-dist/doc/man/man1/jadetex.man1.pdf
@@ -139524,7 +139520,7 @@ docfiles size=34
texmf-dist/doc/otherformats/jadetex/base/releasenotes.dsl
texmf-dist/doc/otherformats/jadetex/base/releasenotes.xml
srccontainersize 19312
-srccontainerchecksum 13974a6df75d79ae8d3974b7856a9022442b6a983dd892827a698cfcd71e2c56ef9c2031c16195e870b909418f48642729c9be89a7d985eea730e6484b731a8f
+srccontainerchecksum c85c144a4d3868238ec1f0105ccd0f49605c1d810a77ea0eb752838a2df972aedd9d8c0c35499ae48ed9205cf31bcfa20945ba56df06593bf6d3572f825e6814
srcfiles size=21
texmf-dist/source/jadetex/base/Makefile
texmf-dist/source/jadetex/base/jadetex.dtx
@@ -143727,16 +143723,16 @@ catalogue-topics collection
name jsclasses
category Package
-revision 51726
+revision 53641
shortdesc Classes tailored for use with Japanese
relocated 1
longdesc Classes jsarticle and jsbook are provided, together with
longdesc packages okumacro and okuverb. These classes are designed to
longdesc work under ASCII Corporation's Japanese TeX system ptex.
-containersize 21740
-containerchecksum 3ce4b069c3446c5a7973bf9e26b3effe276a827aaf8658068193710c480f1f32bc1299ff008f760df7945ead776da164130eb7d7d63e09dac2aa6ccd0d19222c
-doccontainersize 925364
-doccontainerchecksum ce4144322f2a1b3cfb4a3197ca079c59fd775f2ee0443bdec29f713bc98691245c1ab95e0ac6d685df48db13abe9813bb42344c3a3e7924e221d6f1c4b2e84b4
+containersize 21952
+containerchecksum e9a932b1a667b049283eea0a75d12cf83513b4d4f97d50a8c9f4a820e139fbd922c8448ea226a367be1450ab96e2184ef4973043589e0f84b8a1d55b94931ebc
+doccontainersize 927684
+doccontainerchecksum b19caf831b88256aad481a50a6c3cd73f088d7a8514476b7b8c04be39990b341d79437b4774a3291e4af8cd40aadc83cad75fc50f1b8fbe91fce0cd366f0c0d7
docfiles size=235
RELOC/doc/platex/jsclasses/LICENSE
RELOC/doc/platex/jsclasses/README.md details="Readme"
@@ -143745,8 +143741,8 @@ docfiles size=235
RELOC/doc/platex/jsclasses/jsverb.pdf details="Jsverb package documentation (Japanese)" language="ja"
RELOC/doc/platex/jsclasses/okumacro.pdf details="Okumacro package documentation (Japanese)" language="ja"
RELOC/doc/platex/jsclasses/okuverb.pdf details="Okuverb package documentation (Japanese)" language="ja"
-srccontainersize 55380
-srccontainerchecksum 050f9eb1c70a37d3ab789e0ed5bf168cf91f515cc647943842503606c22eca20a0c701f2b80d63ad4d3d662d3d78fd5a2896c95577f60eb89ff4096df776f177
+srccontainersize 55748
+srccontainerchecksum 09ecb81467d6ba54254edc317c375f858b8e7c978e4bd07667fa2456b05b142e653de561ed2c2576fc368f1ee9bc4c20ddd02950458997b5600269a887317cc1
srcfiles size=72
RELOC/source/platex/jsclasses/Makefile
RELOC/source/platex/jsclasses/jsclasses.dtx
@@ -151740,7 +151736,7 @@ catalogue-version 1.2m
name latex
category Package
-revision 52731
+revision 53640
shortdesc A TeX macro package that defines LaTeX
relocated 1
longdesc LaTeX is a widely-used macro package for TeX, providing many
@@ -151762,11 +151758,11 @@ depend luatex
depend pdftex
depend latexconfig
depend latex-fonts
-containersize 160488
-containerchecksum 02a090812079518fe091c9777a3a6f4f65d0b3cd6a17657f0a6db3d25b4ac54d38fab816abea845e9b5d2fa48044e456c5449ebfd9459c97f3f922a0f34c768c
-doccontainersize 17643368
-doccontainerchecksum f124dc748017ad9a583529b353751116928377cea0aa45f7f89601676213075fc077f8d78a787ce0cc6d9dc85d9f24605527fc1bf990d19b57ea044d2ec6c730
-docfiles size=5452
+containersize 168372
+containerchecksum 9d3b8f53681d8f9d2777d676e9954b986fecc6c56efd384993040ba4842fb1b84c48529badc5f29b1951cd4039bfe6d6f1c158a0874e9e30ae7fdea6dfb6aff7
+doccontainersize 18418908
+doccontainerchecksum 52033cd017c94dfa4051607b30d265a0bb3747666868a094bf9c01c5c1996fcc18744c7719c7dec66b83e8fa94efaf4187755fd2575175f1f8ee762d644da712
+docfiles size=5683
RELOC/doc/latex/base/README.md
RELOC/doc/latex/base/alltt.pdf
RELOC/doc/latex/base/bugs.txt
@@ -151868,6 +151864,8 @@ docfiles size=5452
RELOC/doc/latex/base/ltnews29.tex
RELOC/doc/latex/base/ltnews30.pdf
RELOC/doc/latex/base/ltnews30.tex
+ RELOC/doc/latex/base/ltnews31.pdf
+ RELOC/doc/latex/base/ltnews31.tex
RELOC/doc/latex/base/ltx3info.pdf
RELOC/doc/latex/base/ltx3info.tex
RELOC/doc/latex/base/ltxdoc.pdf
@@ -151894,9 +151892,9 @@ docfiles size=5452
RELOC/doc/latex/base/utf8ienc.pdf
RELOC/doc/latex/base/webcomp.err
RELOC/doc/latex/base/webcomp.pdf
-srccontainersize 498968
-srccontainerchecksum ac0d14f825cc8b16b30a37eacc39a73efb7f17c2ff716ebfb506c7834db26a9e8efe8e0cdd7343467ed873200fabeeac4e664b958131281560f594e22bd1c509
-srcfiles size=735
+srccontainersize 522904
+srccontainerchecksum 37a6b7c500ad0535564157ed30cc1f1071838199e6bc5e52bc823b1e60e14490b16e39c177249fbf71186d099e361da66ae940c6a9b547847e46f47efb6acba6
+srcfiles size=773
RELOC/source/latex/base/alltt.dtx
RELOC/source/latex/base/alltt.ins
RELOC/source/latex/base/classes.dtx
@@ -151937,10 +151935,12 @@ srcfiles size=735
RELOC/source/latex/base/ltdefns.dtx
RELOC/source/latex/base/ltdirchk.dtx
RELOC/source/latex/base/lterror.dtx
+ RELOC/source/latex/base/ltexpl.dtx
RELOC/source/latex/base/ltfiles.dtx
RELOC/source/latex/base/ltfinal.dtx
RELOC/source/latex/base/ltfloat.dtx
RELOC/source/latex/base/ltfntcmd.dtx
+ RELOC/source/latex/base/ltfssaxes.dtx
RELOC/source/latex/base/ltfssbas.dtx
RELOC/source/latex/base/ltfsscmp.dtx
RELOC/source/latex/base/ltfssdcl.dtx
@@ -151965,6 +151965,7 @@ srcfiles size=735
RELOC/source/latex/base/ltsect.dtx
RELOC/source/latex/base/ltspace.dtx
RELOC/source/latex/base/lttab.dtx
+ RELOC/source/latex/base/lttextcomp.dtx
RELOC/source/latex/base/ltthm.dtx
RELOC/source/latex/base/ltvers.dtx
RELOC/source/latex/base/ltxdoc.dtx
@@ -151989,7 +151990,7 @@ srcfiles size=735
RELOC/source/latex/base/tulm.ins
RELOC/source/latex/base/unpack.ins
RELOC/source/latex/base/utf8ienc.dtx
-runfiles size=429
+runfiles size=460
RELOC/makeindex/latex/gglo.ist
RELOC/makeindex/latex/gind.ist
RELOC/tex/latex/base/alltt.sty
@@ -152050,6 +152051,7 @@ runfiles size=429
RELOC/tex/latex/base/leqno.sty
RELOC/tex/latex/base/letter.cls
RELOC/tex/latex/base/letter.sty
+ RELOC/tex/latex/base/ltexpl.ltx
RELOC/tex/latex/base/ltluatex.lua
RELOC/tex/latex/base/ltluatex.tex
RELOC/tex/latex/base/ltnews.cls
@@ -152124,6 +152126,7 @@ runfiles size=429
RELOC/tex/latex/base/t2cenc.dfu
RELOC/tex/latex/base/testpage.tex
RELOC/tex/latex/base/texsys.cfg
+ RELOC/tex/latex/base/textcomp-2018-08-11.sty
RELOC/tex/latex/base/textcomp.sty
RELOC/tex/latex/base/tracefnt.sty
RELOC/tex/latex/base/ts1cmr.fd
@@ -152151,7 +152154,6 @@ runfiles size=429
catalogue-contact-home http://www.latex-project.org/
catalogue-license lppl1.3c
catalogue-topics format
-catalogue-version 2019-10-01 PL3
name latex-amsmath-dev
category Package
@@ -160521,17 +160523,17 @@ catalogue-topics presentation
name lectures
category Package
-revision 49863
-shortdesc Lectures - A document class for quickly drafting nice looking lecture notes
+revision 53642
+shortdesc A document class for quickly drafting nice looking lecture notes
relocated 1
longdesc This LaTeX documentclass provides a number of gimmicks to draft
longdesc nice looking lecture notes, such as a number of theorem
longdesc environments, automatic spacing and alignment of figures and
longdesc much more. More information is available in the package readme.
-containersize 6228
-containerchecksum 54e2b55fb43bf548a0d20dd6c98b3478cac25bff27c013353c1e0b693990bd3afde432d07ec4b0f48054f5e923c70bf5aa60ca5f5d79abbf12d36ff7949948e1
+containersize 6740
+containerchecksum e3fb80a67dcb5198503050d61266cbd3890c91c1c5c93042a17f2aa410223c3943e3dcb73d7d6e7a4d5888d87ae9613fc89025f0435c122ab44a8f822732250f
doccontainersize 2080
-doccontainerchecksum 45788814da746bcc2c00f3c33541fbc4d0114aa03676971b038ec38686d833e698cc1e255aafcd06d6d5029f835e93674f0dc544a8ef267703ecbcbc96da64a3
+doccontainerchecksum bc50485fd0a8782095bbc37b9185bbc61df2a6bdccaef359f2cedd553cedc14ffd0bb8e6690578f1d57b85e2efa650a68af3b579a7c360a737791ddd74373424
docfiles size=2
RELOC/doc/latex/lectures/LICENSE
RELOC/doc/latex/lectures/README.md details="Readme"
@@ -160542,7 +160544,7 @@ catalogue-contact-repository https://github.com/LucaCappelletti94/lectures
catalogue-ctan /macros/latex/contrib/lectures
catalogue-license mit
catalogue-topics class presentation teaching
-catalogue-version 1.0.2
+catalogue-version 1.0.5
name ledmac
category Package
@@ -229919,7 +229921,7 @@ catalogue-version 0.1
name platex
category Package
-revision 53216
+revision 53638
shortdesc pLaTeX2e and miscellaneous macros for pTeX
longdesc The bundle provides pLaTeX2e and miscellaneous macros for pTeX
longdesc and e-pTeX. This is a community edition forked from the
@@ -229937,11 +229939,11 @@ depend unicode-data
depend platex.ARCH
execute AddFormat name=platex engine=eptex options="*platex.ini" patterns=language.dat fmttriggers=babel,cm,hyphen-base,latex-fonts,ptex-fonts,latex
execute AddFormat name=platex-dev engine=eptex options="*platex.ini" patterns=language.dat fmttriggers=babel,cm,hyphen-base,latex-fonts,ptex-fonts,l3kernel,latex-base-dev,unicode-data
-containersize 36100
-containerchecksum 56f9bcf18d70b60d81b56ee36a1635f8651428f5995508dda844dd0fba4e2915fe9885876887674972a9955a4ac58e6079f10f386452e77c4a37d8254377f4ff
-doccontainersize 1586492
-doccontainerchecksum 8500fefd2a3401a9af790394c41bc945bc2e38e1a399d14023567f6d477a88d58f1ba25b35cdedc170d4cada1f040d0f417b419d0843680b2e3d31956f64201e
-docfiles size=403
+containersize 37648
+containerchecksum 58690eed859a95e65460efa6d75d8ee4661bcac522070c982d7be70a385e90d963ed45221c4d24df33d8b312b184f469beca9feb09454a1aa23514f9e9c2d317
+doccontainersize 1607220
+doccontainerchecksum 7281118f321911191f4ab4fc3f7325301de5c2f26e2ebf1573468704ff8d3da950d8b81d6ee8ea1611db0924d11b4b2c5213bbd65f2789dcba78da22cf1d170f
+docfiles size=408
texmf-dist/doc/man/man1/platex.1
texmf-dist/doc/man/man1/platex.man1.pdf
texmf-dist/doc/platex/base/LICENSE
@@ -229951,9 +229953,9 @@ docfiles size=403
texmf-dist/doc/platex/base/platex.pdf details="Package documentation" language="ja"
texmf-dist/doc/platex/base/platexrelease.pdf
texmf-dist/doc/platex/base/pldoc.pdf
-srccontainersize 120772
-srccontainerchecksum c7d1d8fef93b662c92bb67ba2210f6aa03efa065ee1bf46488f5b44a893217d252755d17977db6be920b2eebfa103dd74475b72b43f7e39bf45bebba95b7f7ba
-srcfiles size=179
+srccontainersize 122988
+srccontainerchecksum bb4c769c2b6bc3492312625a4defd6311ed6dece772add6d7baee7dc4d449c910f7f5376b4acda93593d52799c4866c9ecf589767b09a64dd60d69405dae0846
+srcfiles size=184
texmf-dist/source/platex/base/Makefile
texmf-dist/source/platex/base/jclasses.dtx
texmf-dist/source/platex/base/jltxdoc.dtx
@@ -229991,7 +229993,7 @@ srcfiles size=179
texmf-dist/source/platex/base/plnewsc12.tex
texmf-dist/source/platex/base/plnewsc13.tex
texmf-dist/source/platex/base/plvers.dtx
-runfiles size=142
+runfiles size=146
texmf-dist/tex/platex/base/exppl2e.sty
texmf-dist/tex/platex/base/jarticle.cls
texmf-dist/tex/platex/base/jarticle.sty
@@ -282881,7 +282883,7 @@ binfiles arch=x86_64-solaris size=1
name texdoc
category TLCore
-revision 50627
+revision 53643
shortdesc Documentation access for TeX Live
longdesc texdoc is a Lua script providing easy access to the
longdesc documentation in TeX Live: PDF, DVI, plain text files, and
@@ -282891,19 +282893,20 @@ longdesc program by the same name to do the same job, but its
longdesc implementation is unrelated.
depend kpathsea
depend texdoc.ARCH
-containersize 25736
-containerchecksum 2c12bf48d03d456e95d6bc31ad6d46f77c0dfebde73fd8a87e2128c7267327377b8d8d7d9b04ecf7295eaad16eccf1df5bab6f9050df7113c62bfbbffc0d00be
-doccontainersize 124736
-doccontainerchecksum 133abc048e8cbfa84bd2788fe0942bc48d4d2844bec525c010a3590afa62b22ca77518ebbfd26e78c825152ec0eea0a8e1513d15931332656b8fec702b0b7479
-docfiles size=48
+containersize 26672
+containerchecksum 8eb1eace5ee79430d6aa6584f3f11acad1d173d20c9d56b168d2a6ec042dea206ec8d70136511e09bee741c9a11357c66f096b80bbcda38ac6e86f31be4b5463
+doccontainersize 132400
+doccontainerchecksum c23cedadaa8508524207d6ffeb4f11fb5baef5f1e47c5b3f017563ac08a27e7df91e9a68357fab79b38481254bd0e19aa61bf7ea75be26d1d60d1be27dda19b5
+docfiles size=52
texmf-dist/doc/man/man1/texdoc.1
texmf-dist/doc/man/man1/texdoc.man1.pdf
texmf-dist/doc/support/texdoc/COPYING
texmf-dist/doc/support/texdoc/NEWS
texmf-dist/doc/support/texdoc/README.md details="Readme"
+ texmf-dist/doc/support/texdoc/texdoc-doc.cls
texmf-dist/doc/support/texdoc/texdoc.pdf details="Package documentation"
texmf-dist/doc/support/texdoc/texdoc.tex
-runfiles size=29
+runfiles size=30
texmf-dist/scripts/texdoc/texdoc.tlu
texmf-dist/scripts/texdoc/texdoclib-alias.tlu
texmf-dist/scripts/texdoc/texdoclib-cli.tlu
@@ -282923,7 +282926,7 @@ catalogue-contact-support http://lists.tug.org/texdoc
catalogue-ctan /support/texdoc
catalogue-license gpl
catalogue-topics view-doc
-catalogue-version 3.1
+catalogue-version 3.2
name texdoc.aarch64-linux
category TLCore
@@ -283609,15 +283612,15 @@ docfiles size=572
name texlive-docindex
category TLCore
-revision 53611
+revision 53636
shortdesc top-level TeX Live doc.html, etc.
longdesc These files are regenerated as needed, which is often, so we
longdesc make them a separate package. See the tl-update-auto script
longdesc for the process.
-containersize 392
-containerchecksum 40253e250b5d4a33ee3c43e14618552fc6a8b2ba3d8f49d3a42015a0485ff3e81cbe24cb4992615dcf0f16fde6c58df8f8ec2a3877288b778ff2c88187dc1bab
-doccontainersize 158476
-doccontainerchecksum a7a2273279872c4d36c933ae85b8ccc14b3f75329ba43608e0ddb14e7596ede38da2c4b9bdd96c60d05c016c3985bd5c397878eda19e927082dddf1c46d25197
+containersize 388
+containerchecksum 8663eaff2e67ca69b3c4db5aaf8101c0f8213a93d55bc32e2cb44ed32d041252bfc0218721020175eda045f9b096ba5bbce7994b4396f03b53b2319a58f7805a
+doccontainersize 158504
+doccontainerchecksum ce721ac23ca81b1a897d1b4fe0780346dc431b84e06fdbeefcaeb9af9e7abb3cb16ea92f2954b815780634d947051aca401be2c72110adc6a249277988b6c554
docfiles size=311
doc.html
@@ -285750,7 +285753,7 @@ binfiles arch=x86_64-solaris size=3
name texplate
category Package
-revision 53449
+revision 53637
shortdesc A tool for creating document structures based on templates
longdesc TeXplate is a tool for creating document structures based on
longdesc templates. The application name is a word play on TeX and
@@ -285762,35 +285765,35 @@ longdesc theses: the application is powerful enough to generate any
longdesc text-based structure, given that a corresponding template
longdesc exists.
depend texplate.ARCH
-containersize 2587768
-containerchecksum e80c7cf0c48c07fe730f8fe561b1c0caa6001565f6461c2e4f31bae9875f4b66629fcb2755f76e6c7dbd18ce4640e2694441ecfc14bdbbc4ecb5db12c8db4f4b
-doccontainersize 113204
-doccontainerchecksum 522fd835659ac5c768beb55459aa446198c99906acebab1e90a5374bbbbeea13ffc319526bb29b126feab8a0a56bd9757b96fd9e16e925b0f92770db5baa6cc4
-docfiles size=35
+containersize 2905600
+containerchecksum 8c9ff524bbc1c4a9a89d4da0329c560cb4a2916e87fb5dad8ffb8a288bce1c0e0eb4321834a34e4aafd68c3b8a8fc0ba44018b80fcc054e965869cad120bde4a
+doccontainersize 114704
+doccontainerchecksum 0bce839225eb4d2bf8b763510ee89ca3133fef4a4d1ed7ca4a8257d00c64d1b188c3093a0d11c319450a219c220d44edc93ab66a4cca739477c42bd526c54ae8
+docfiles size=36
texmf-dist/doc/support/texplate/README.md details="Readme"
texmf-dist/doc/support/texplate/texplate-manual.pdf details="Package documentation"
texmf-dist/doc/support/texplate/texplate-manual.tex
-srccontainersize 9312
-srccontainerchecksum 779917ac4e17857a618cda5ff8bc7c6dc5d1ba75230e6a5b16f07dc7a3a1daf0208ba758e99efae27296af5264c62602ea1bb34ceaf327a785a81f046563a9d3
-srcfiles size=21
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/Main.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/exceptions/InvalidKeySetException.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/exceptions/InvalidTemplateException.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/exceptions/TemplateMergingException.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/model/Configuration.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/model/Template.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/model/TemplateProcessing.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/model/handlers/BooleanHandler.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/model/handlers/CSVListHandler.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/model/handlers/Handler.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/util/HandlerUtils.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/util/MergingUtils.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/util/MessageUtils.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/util/PathUtils.java
- texmf-dist/source/support/texplate/main/java/org/islandoftex/texplate/util/ValidatorUtils.java
-runfiles size=691
- texmf-dist/scripts/texplate/templates/texplate-article.toml
- texmf-dist/scripts/texplate/templates/texplate-standalone.toml
+srccontainersize 8144
+srccontainerchecksum 599a199747dab1cf39f7e9c2141b38136085009b04578e65a5ce332ee3ecdfeac0999b721fca5f9d7335fc6fdee0a09bf1e078f140dcd4cd74f4a69fdebedf57
+srcfiles size=20
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/Main.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/TemplateProcessing.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/exceptions/InvalidKeySetException.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/exceptions/InvalidTemplateException.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/exceptions/TemplateMergingException.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/model/Configuration.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/model/Template.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/model/handlers/BooleanHandler.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/model/handlers/CSVListHandler.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/model/handlers/Handler.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/util/HandlerUtils.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/util/MergingUtils.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/util/MessageUtils.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/util/PathUtils.kt
+ texmf-dist/source/support/texplate/main/kotlin/org/islandoftex/texplate/util/ValidatorUtils.kt
+ texmf-dist/source/support/texplate/main/resources/org/islandoftex/texplate/templates/texplate-article.toml
+ texmf-dist/source/support/texplate/main/resources/org/islandoftex/texplate/templates/texplate-standalone.toml
+runfiles size=790
texmf-dist/scripts/texplate/texplate.jar
texmf-dist/scripts/texplate/texplate.sh
catalogue-contact-bugs https://gitlab.com/islandoftex/texplate/issues
@@ -285798,7 +285801,7 @@ catalogue-contact-repository https://gitlab.com/islandoftex/texplate
catalogue-ctan /support/texplate
catalogue-license bsd3
catalogue-topics doc-gen gentex doc-templ
-catalogue-version 1.0.1
+catalogue-version 1.0.2
name texplate.aarch64-linux
category Package
@@ -295790,7 +295793,7 @@ catalogue-version 5.1
name tools
category Package
-revision 52731
+revision 53640
catalogue latex-tools
shortdesc The LaTeX standard tools bundle
relocated 1
@@ -295800,11 +295803,11 @@ longdesc afterpage, array, bm, calc, dcolumn, delarray, enumerate,
longdesc fileerr, fontsmpl, ftnright, hhline, indentfirst, layout,
longdesc longtable, multicol, rawfonts, showkeys, somedefs, tabularx,
longdesc theorem, trace, varioref, verbatim, xr, and xspace.
-containersize 41104
-containerchecksum 2d1d7efe895de54aa7979bf96699fb9f473b3fe9a6e03d4ee8360b1418c984caf2cc0825dfdff3f5df1c448c1468235c639fc797479353617fc631fa61f064c6
-doccontainersize 5219440
-doccontainerchecksum 36fa35491bc1e0c8c3d0da6f89d57def9fae6e9688cb9cf09819027f8630d90ee4092b7c48789cf601348e3a1ae6efc577b017ff7dbb5c04b1bbf4b7200eb07e
-docfiles size=1645
+containersize 41220
+containerchecksum 1d3386bd098381e0ede5ff0c6cb107867719a54a8109208a1de448881e172265a000d91c6e7d0607af62de0504913e4698f5ee00a710b5dc32a8157faed094d5
+doccontainersize 5217348
+doccontainerchecksum e0e7d9bd37f2268f7496b66b69fbc520413f74f67356319ec61c1c6c2523f0fa84d7ea4d78f0a9b0875d820c3514ae0c5871d4785df992ac345238e6f5af8a3a
+docfiles size=1651
RELOC/doc/latex/tools/README.md details="Readme"
RELOC/doc/latex/tools/afterpage.pdf
RELOC/doc/latex/tools/array.pdf
@@ -295836,8 +295839,8 @@ docfiles size=1645
RELOC/doc/latex/tools/verbatim.pdf
RELOC/doc/latex/tools/xr.pdf
RELOC/doc/latex/tools/xspace.pdf
-srccontainersize 223828
-srccontainerchecksum 39c9b44dbc83d6280d49834662a2ddf7946a0b0a73ece57feddf8e048ef1211027cf10e2ada8999465965f72396245f5dd243822834ac3034a69e7ca27752966
+srccontainersize 224212
+srccontainerchecksum 57d12bcc8b51f349a45392c7a7b24d2ba52a5ee05f84bf7d70b1bc7e384e4b09b0733a23a0704f5a564dd812401dd851ecd6294201bb83a42b0bc73f7ccb889b
srcfiles size=264
RELOC/source/latex/tools/afterpage.dtx
RELOC/source/latex/tools/afterpage.ins
@@ -295919,7 +295922,6 @@ runfiles size=99
catalogue-ctan /macros/latex/required/tools
catalogue-license lppl1.3c
catalogue-topics collection
-catalogue-version 2019-11-10 PL3
name topfloat
category Package
@@ -305050,7 +305052,7 @@ runfiles size=8100
name uplatex
category Package
-revision 53216
+revision 53639
shortdesc pLaTeX2e and miscellaneous macros for upTeX
longdesc The bundle provides pLaTeX2e macros for upTeX by Takuji Tanaka.
longdesc This is a community edition syncing with platex. The bundle
@@ -305069,11 +305071,11 @@ depend unicode-data
depend uplatex.ARCH
execute AddFormat name=uplatex engine=euptex options="*uplatex.ini" patterns=language.dat fmttriggers=babel,cm,hyphen-base,latex-fonts,uptex-fonts,platex,latex
execute AddFormat name=uplatex-dev engine=euptex options="*uplatex.ini" patterns=language.dat fmttriggers=babel,cm,hyphen-base,latex-fonts,uptex-fonts,platex,l3kernel,latex-base-dev,unicode-data
-containersize 14748
-containerchecksum 9fc26c5c79d9f9c63bf0d1ccf23901cb849c068625016bed51657f804d646efc56b9acfc0b8918ba48a6d7e469293766be3186baf539b3f5c239e0263a86cc8d
-doccontainersize 880644
-doccontainerchecksum 5a39beab76d886fa7315c4d134e9c873f5980f179ea2b50b0dcea33b19bb0aa71356f2bfd29083552d2be34f11079d6636f55482037ff8869aa5966d2199f390
-docfiles size=229
+containersize 14660
+containerchecksum 858ae122087c77ad0d8770353b17f32f5c5552b030f2fe75d43712585a8e71e8b83d9e771c28af40f1e06b41aabf22db6d9b8854df5d976a0f5037312b6bd4ab
+doccontainersize 877940
+doccontainerchecksum 183070b71ba1b918894bbc8b9d8bd86257b9c6cb91dbf7fc8ab952735a7af773b25dc09b761add44e14e081680d7242d98db9b5b906e0b335b58301a646fa356
+docfiles size=228
texmf-dist/doc/man/man1/uplatex.1
texmf-dist/doc/man/man1/uplatex.man1.pdf
texmf-dist/doc/uplatex/base/LICENSE
@@ -305082,9 +305084,9 @@ docfiles size=229
texmf-dist/doc/uplatex/base/uplatex-en.pdf details="Package documentation"
texmf-dist/doc/uplatex/base/uplatex.pdf details="Package documentation" language="ja"
texmf-dist/doc/uplatex/base/upldoc.pdf
-srccontainersize 50568
-srccontainerchecksum 25f70825979d87c62b6c8ad0cdde4835deeb055af2104b3df63a2434508cfae273dbd7c7bb090809e007bf2be40b9994448234738d08a0553afa8f8ecc906a8d
-srcfiles size=69
+srccontainersize 50200
+srccontainerchecksum 29b97e73a37745dfffd9e916bd8557a2093b9f64d681bef273fcfe542de7967a4ad1d147cdac4054ec29b4c9d764e7e68e7a9679268344d7d74ae2bb6277b3f5
+srcfiles size=70
texmf-dist/source/uplatex/base/Makefile
texmf-dist/source/uplatex/base/ujclasses.dtx
texmf-dist/source/uplatex/base/ukinsoku.dtx
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
index 61aed93fbb..e0679165b1 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5
@@ -1 +1 @@
-b729ed610376718bec7a0624f1414586 texlive.tlpdb
+3f16d3f035580fc3b63202c3e0a0d80f texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
index a40abec67d..a5992c9f39 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512
@@ -1 +1 @@
-8852de9b40a1db989b93fc3b3357e6ab3ae833a1351c4c7284f9fd0b92872ebacbfa16bf9b154b8efd10496d9c323e19b97fb67b5df0eb9fb8d0ea0e59d96b0b texlive.tlpdb
+7c84b103cbb7d377f0bf5f840b091c0057cb7777e279f7912f8b3566a54f2012d8b9135a5f93ba4ab521e7111b59db398611c9386f4d5cea9d70e4607e96fe37 texlive.tlpdb
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
index 70f7e0bc1f..02e3153e13 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc
@@ -1,10 +1,10 @@
-----BEGIN PGP SIGNATURE-----
-iQEcBAEBCgAGBQJeNh63AAoJEEzhh34ZQ4xwmDkH/3NkyvCQry5aDIDnkCNI/CVR
-bf+99jFzsjUQNQbb0c+uJ69yc5WM6YKop7kDh5Rl9sZWsLr/MgGIvB441yAMCAlf
-cFchT4l2eWYT13FYiIFb4zGrkEPXe7OuzSgH4H4QrjnUPgRSgxf/58LEQ/6QtRJ/
-81AX76cO8a1UA/RaB31u04cbBE8dQD5DjNDmB7g1eNvqWMxSijbTqNiVy82zEBFF
-Su2FaRttdiuRnylCkOm7BUHC636puM25sEjmKNHyRLutc/kIzaxJ9cQ+p65C581M
-d6KA+OMi7ugUlkv70U5XzwAUkFsNcVWFVxnlJWKd3bmts84i/Qzj4Q0V5injG+U=
-=8IbF
+iQEcBAEBCgAGBQJeN29uAAoJEEzhh34ZQ4xwcr0IAJgpC7zgS1F064PASP5Eq3o+
+9uO96jsJ2QNrOFLkYGklcaOCqT5be96ju2AeTbdVaV3dYl6Hp/VYWm2EXQKepG7s
+HY0+X3aUY3gpJ+x+B0tcAV2ykWcI7dHpz0kwYqaRE9U5sLIf2hRN09xFOcqgragn
+ii47D6YZJTBJiTmq9YFlYaddbNrQ7gNlZb1l4Q7oI8uZV6mpl9Vxf9bPjkCYcd3d
+UUnf/XjSrpaZtMHKyNQSx2w6bs5P42TGgvBwfeiZb2j0jKN8B6lrsaIR3Y4Lshh+
+u+hnsLFcNsMXaYEIs2/TnNHYf4S0gzQpT3OfFwgnn/eoycS41JSVT2izGHMzsmY=
+=c8jM
-----END PGP SIGNATURE-----
diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
index 71940112a1..bb0b484f1d 100644
--- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
+++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/files.csv.lzma b/systems/win32/miktex/tm/packages/files.csv.lzma
index 86fcf3aec7..afb43d8ef1 100644
--- a/systems/win32/miktex/tm/packages/files.csv.lzma
+++ b/systems/win32/miktex/tm/packages/files.csv.lzma
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/files.csv.lzma b/systems/win32/miktex/tm/packages/next/files.csv.lzma
index 2f8913abde..a91a3392cc 100644
--- a/systems/win32/miktex/tm/packages/next/files.csv.lzma
+++ b/systems/win32/miktex/tm/packages/next/files.csv.lzma
Binary files differ
diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini
index 34a22ecd1e..d3373bbcb5 100644
--- a/systems/win32/miktex/tm/packages/next/pr.ini
+++ b/systems/win32/miktex/tm/packages/next/pr.ini
@@ -2,9 +2,9 @@
[repository]
-date=1580678251
+date=1580764583
lastupd=miktex-arctrl-bin-2.9 miktex-arctrl-bin-x64-2.9 miktex-asymptote-bin-2.9 miktex-asymptote-bin-x64-2.9 miktex-autosp-bin-2.9 miktex-autosp-bin-x64-2.9 miktex-axohelp-bin-2.9 miktex-axohelp-bin-x64-2.9 miktex-bibarts-bin-2.9 miktex-bibarts-bin-x64-2.9 miktex-bibtex-bin-2.9 miktex-bibtex-bin-x64-2.9 miktex-bibtex8bit-bin-2.9 miktex-bibtex8bit-bin-x64-2.9 miktex-bzip2-bin-2.9 miktex-bzip2-bin-x64-2.9 miktex-cairo-bin-2.9 miktex-cairo-bin-x64-2.9 miktex-chktex-bin-2.9 miktex-chktex-bin-x64-2.9
-lstdigest=72be21aff8f7f4a805c581249b1ca8f4
+lstdigest=c213cd05cdafaf48d00a77d702a2cca2
numpkg=3851
relstate=next
-version=7337
+version=7338
diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini
index b7db96823f..d12cc4431e 100644
--- a/systems/win32/miktex/tm/packages/pr.ini
+++ b/systems/win32/miktex/tm/packages/pr.ini
@@ -2,9 +2,9 @@
[repository]
-date=1580677908
-lastupd=babel-french baskervaldx baskervillef biblatex-apa bidi bxghost chemformula ducksay jmlr koma-script l3kernel lwarp modes mpfonts polexpr pxchfon sansmathaccent unicode-math xepersian xint
-lstdigest=d116bac80b30ae3efbd3a5a25662026f
+date=1580764301
+lastupd=amsmath graphics jsclasses latex-base-dev lectures ltxbase platex secnum supertabular texplate tools uplatex zxjafont babel-french baskervaldx baskervillef biblatex-apa bidi bxghost chemformula
+lstdigest=6afee95c26db5da805129be5b05bfd99
numpkg=3849
relstate=stable
-version=7337
+version=7338
diff --git a/systems/win32/w32tex/ChangeLog b/systems/win32/w32tex/ChangeLog
index 081237488e..a5a853c930 100644
--- a/systems/win32/w32tex/ChangeLog
+++ b/systems/win32/w32tex/ChangeLog
@@ -1,5 +1,15 @@
W32TeX (x86 & x64) ChangeLog
+[2020/02/02]
+(01) biblatex-biber.tar.xz
+ Update biblatex-apa.
+(02) cjkzr.tar.xz
+ Update pxchfon.
+(03) web2c-w32.tar.xz
+ Update texdoc.
+(04) xetex-w32.tar.xz
+ Update xepersian.
+
[2020/02/01]
(01) ltxpkgdocs.tar.xz
(02) ltxpkgs.tar.xz
diff --git a/timestamp b/timestamp
index bc402aa012..e5b7b948b3 100644
--- a/timestamp
+++ b/timestamp
@@ -2,4 +2,4 @@
# The source CTAN of this site's material:
dante.ctan.org
# The year-month-day-hour-minute of this site's material:
-2020-02-03-02-02
+2020-02-04-02-02