From aefe346b16163823efeac108a7da42e91e53e5c7 Mon Sep 17 00:00:00 2001 From: Norbert Preining Date: Fri, 17 Sep 2021 03:00:43 +0000 Subject: CTAN sync 202109170300 --- FILES.byname | 627 ++++++------ FILES.byname.gz | Bin 2387066 -> 2387109 bytes FILES.last07days | 560 ++++++----- macros/latex/contrib/mindflow/mindflow.dtx | 91 +- macros/latex/contrib/mindflow/mindflow.pdf | Bin 207665 -> 208084 bytes macros/luatex/generic/luamplib/NEWS | 3 + macros/luatex/generic/luamplib/luamplib.dtx | 17 +- macros/luatex/generic/luamplib/luamplib.pdf | Bin 151131 -> 151188 bytes .../LatexIndent/AlignmentAtAmpersand.pm | 8 +- support/latexindent/LatexIndent/Arguments.pm | 16 +- .../latexindent/LatexIndent/BackUpFileProcedure.pm | 30 +- support/latexindent/LatexIndent/BlankLines.pm | 17 +- support/latexindent/LatexIndent/Check.pm | 130 +++ support/latexindent/LatexIndent/Command.pm | 14 +- support/latexindent/LatexIndent/Document.pm | 61 +- support/latexindent/LatexIndent/Environment.pm | 6 +- support/latexindent/LatexIndent/FileContents.pm | 45 +- support/latexindent/LatexIndent/FileExtension.pm | 40 +- support/latexindent/LatexIndent/GetYamlSettings.pm | 287 ++++-- support/latexindent/LatexIndent/Heading.pm | 4 +- .../LatexIndent/HorizontalWhiteSpace.pm | 16 +- support/latexindent/LatexIndent/IfElseFi.pm | 4 +- support/latexindent/LatexIndent/Indent.pm | 10 +- support/latexindent/LatexIndent/Item.pm | 6 +- .../LatexIndent/KeyEqualsValuesBraces.pm | 6 +- support/latexindent/LatexIndent/Lines.pm | 266 +++++ support/latexindent/LatexIndent/LogFile.pm | 24 +- support/latexindent/LatexIndent/Logger.pm | 2 +- .../latexindent/LatexIndent/ModifyLineBreaks.pm | 42 +- .../LatexIndent/NamedGroupingBracesBrackets.pm | 14 +- support/latexindent/LatexIndent/Preamble.pm | 35 +- support/latexindent/LatexIndent/Replacement.pm | 4 +- support/latexindent/LatexIndent/Sentence.pm | 40 +- support/latexindent/LatexIndent/Special.pm | 24 +- support/latexindent/LatexIndent/Switches.pm | 7 +- .../latexindent/LatexIndent/TrailingComments.pm | 12 +- .../LatexIndent/UnNamedGroupingBracesBrackets.pm | 6 +- support/latexindent/LatexIndent/Verbatim.pm | 54 +- support/latexindent/LatexIndent/Version.pm | 4 +- support/latexindent/README | 2 +- support/latexindent/defaultSettings.yaml | 6 +- support/latexindent/documentation/appendices.tex | 46 +- support/latexindent/documentation/cmhlistings.tex | 9 +- support/latexindent/documentation/latexindent.pdf | Bin 949988 -> 1001116 bytes support/latexindent/documentation/latexindent.tex | 29 +- .../documentation/sec-default-user-local.tex | 29 +- .../latexindent/documentation/sec-how-to-use.tex | 77 ++ .../documentation/sec-the-line-switch.tex | 187 ++++ .../latexindent/documentation/sec-the-m-switch.tex | 5 +- .../subsec-combine-text-wrap-para-line-breaks.tex | 16 +- .../subsec-remove-para-line-breaks.tex | 9 +- .../documentation/subsec-text-wrap-summary.tex | 2 +- .../latexindent/documentation/subsec-text-wrap.tex | 23 +- .../subsubsec-environments-and-their-arguments.tex | 16 +- support/latexindent/documentation/title.tex | 4 +- support/latexindent/latexindent.pl | 7 +- support/lualibs/lua-uca/CHANGELOG.md | 9 + support/lualibs/lua-uca/HACKING.md | 98 ++ support/lualibs/lua-uca/Makefile | 67 ++ support/lualibs/lua-uca/README.md | 38 +- support/lualibs/lua-uca/lua-uca-doc.pdf | Bin 55816 -> 72038 bytes support/lualibs/lua-uca/lua-uca-doc.tex | 11 +- support/lualibs/lua-uca/lua-uca/lua-uca-ducet.lua | 2 +- .../lualibs/lua-uca/lua-uca/lua-uca-languages.lua | 1014 ++++++++++++++++++++ .../lua-uca/lua-uca/lua-uca-reordering-table.lua | 2 +- .../texlive/tlnet/tlpkg/installer/ctan-mirrors.pl | 1 + systems/texlive/tlnet/tlpkg/texlive.tlpdb | 98 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 | 2 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 | 2 +- .../texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc | 14 +- systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz | Bin 2308392 -> 2310484 bytes systems/win32/miktex/tm/packages/next/pr.ini | 8 +- systems/win32/miktex/tm/packages/pr.ini | 8 +- timestamp | 2 +- 74 files changed, 3284 insertions(+), 1091 deletions(-) create mode 100644 support/latexindent/LatexIndent/Check.pm create mode 100644 support/latexindent/LatexIndent/Lines.pm create mode 100644 support/latexindent/documentation/sec-the-line-switch.tex create mode 100644 support/lualibs/lua-uca/HACKING.md create mode 100644 support/lualibs/lua-uca/Makefile diff --git a/FILES.byname b/FILES.byname index 4155159c09..d544cb355c 100644 --- a/FILES.byname +++ b/FILES.byname @@ -5105,7 +5105,7 @@ 1990/10/02 | 5440 | dviware/vutex/vaxvms.hlp 1990/10/02 | 812 | dviware/vutex/vaxvms.ins 1990/10/02 | 127576 | dviware/vutex/vutex.web -2021/09/15 | 56466 | FILES.last07days +2021/09/16 | 61347 | FILES.last07days 2021/07/24 | 1139410 | fonts/aboensis/Aboensis.glyphs 2021/07/24 | 18907382 | fonts/aboensis/aboensis.pdf 2021/07/24 | 137860 | fonts/aboensis/Aboensis-Regular.otf @@ -183293,7 +183293,7 @@ 2016/09/02 | 108688 | install/macros/luatex/generic/cstypo.tds.zip 2015/10/01 | 154538 | install/macros/luatex/generic/ctablestack.tds.zip 2021/05/21 | 273734 | install/macros/luatex/generic/lualibs.tds.zip -2021/08/03 | 198123 | install/macros/luatex/generic/luamplib.tds.zip +2021/09/16 | 198183 | install/macros/luatex/generic/luamplib.tds.zip 2021/05/21 | 1936005 | install/macros/luatex/generic/luaotfload.tds.zip 2015/10/04 | 277014 | install/macros/luatex/generic/luatexbase.tds.zip 2020/03/23 | 891718 | install/macros/luatex/latex/arabluatex.tds.zip @@ -196394,7 +196394,7 @@ 2013/04/01 | 14776 | macros/context/contrib/context-visualcounter/tex/context/third/visualcounter/t-visualcounter.mkvi 2018/03/05 | 11 | macros/context/contrib/context-visualcounter/VERSION 2018/03/22 | 276789 | macros/context/contrib/context-visualcounter.zip -2021/09/13 | 117833397 | macros/context/latest/cont-tmf.zip +2021/09/14 | 117834088 | macros/context/latest/cont-tmf.zip 2016/04/21 | 32846 | macros/cstex/base/cmexb.tar.gz 2016/06/26 | 1728262 | macros/cstex/base/csfonts-t1.tar.gz 2007/03/01 | 187106 | macros/cstex/base/csfonts.tar.gz @@ -216161,11 +216161,11 @@ 2016/07/03 | 1176 | macros/latex/contrib/milog/README.md 2016/07/03 | 488253 | macros/latex/contrib/milog.zip 2021/03/10 | 19106 | macros/latex/contrib/mindflow/LICENSE -2021/09/12 | 21456 | macros/latex/contrib/mindflow/mindflow.dtx +2021/09/15 | 21765 | macros/latex/contrib/mindflow/mindflow.dtx 2021/03/12 | 1705 | macros/latex/contrib/mindflow/mindflow.ins -2021/09/12 | 207665 | macros/latex/contrib/mindflow/mindflow.pdf +2021/09/15 | 208084 | macros/latex/contrib/mindflow/mindflow.pdf 2021/03/17 | 396 | macros/latex/contrib/mindflow/README.md -2021/09/12 | 219394 | macros/latex/contrib/mindflow.zip +2021/09/16 | 219853 | macros/latex/contrib/mindflow.zip 2013/06/21 | 72 | macros/latex/contrib/minibox/minibox.ins 2013/06/21 | 280644 | macros/latex/contrib/minibox/minibox.pdf 2013/06/21 | 7633 | macros/latex/contrib/minibox/minibox.tex @@ -233340,14 +233340,14 @@ 2021/05/21 | 3141 | macros/luatex/generic/lualibs/NEWS 2021/05/21 | 4740 | macros/luatex/generic/lualibs/README.md 2021/05/21 | 266042 | macros/luatex/generic/lualibs.zip -2021/08/03 | 93678 | macros/luatex/generic/luamplib/luamplib.dtx -2021/08/03 | 151131 | macros/luatex/generic/luamplib/luamplib.pdf -2021/08/03 | 2752 | macros/luatex/generic/luamplib/Makefile -2021/08/03 | 8991 | macros/luatex/generic/luamplib/NEWS -2021/08/03 | 1996 | macros/luatex/generic/luamplib/README -2021/08/03 | 4016 | macros/luatex/generic/luamplib/test-luamplib-latex.tex -2021/08/03 | 3872 | macros/luatex/generic/luamplib/test-luamplib-plain.tex -2021/08/03 | 183729 | macros/luatex/generic/luamplib.zip +2021/09/16 | 93702 | macros/luatex/generic/luamplib/luamplib.dtx +2021/09/16 | 151188 | macros/luatex/generic/luamplib/luamplib.pdf +2021/09/16 | 2752 | macros/luatex/generic/luamplib/Makefile +2021/09/16 | 9048 | macros/luatex/generic/luamplib/NEWS +2021/09/16 | 1996 | macros/luatex/generic/luamplib/README +2021/09/16 | 4016 | macros/luatex/generic/luamplib/test-luamplib-latex.tex +2021/09/16 | 3872 | macros/luatex/generic/luamplib/test-luamplib-plain.tex +2021/09/16 | 183790 | macros/luatex/generic/luamplib.zip 2021/05/21 | 18714 | macros/luatex/generic/luaotfload/COPYING 2021/05/21 | 40024 | macros/luatex/generic/luaotfload/filegraph.pdf 2021/05/21 | 8597 | macros/luatex/generic/luaotfload/filegraph.tex @@ -269843,83 +269843,86 @@ 2018/04/15 | 1313 | support/latex-git-log/po/de.po 2020/02/26 | 3353 | support/latex-git-log/README.md 2020/02/27 | 87742 | support/latex-git-log.zip -2021/07/31 | 18760 | support/latexindent/defaultSettings.yaml -2021/07/31 | 13109 | support/latexindent/documentation/appendices.tex -2021/07/31 | 492 | support/latexindent/documentation/cmhlistings.tex -2021/07/31 | 7161 | support/latexindent/documentation/figure-schematic.png -2021/07/31 | 1879 | support/latexindent/documentation/figure-schematic.tex -2021/07/31 | 949988 | support/latexindent/documentation/latexindent.pdf -2021/07/31 | 23932 | support/latexindent/documentation/latexindent.tex -2021/07/31 | 44096 | support/latexindent/documentation/logo.png -2021/07/31 | 1664 | support/latexindent/documentation/logo.tex -2021/07/31 | 246 | support/latexindent/documentation/references.tex -2021/07/31 | 1688 | support/latexindent/documentation/sec-conclusions-know-limitations.tex -2021/07/31 | 68758 | support/latexindent/documentation/sec-default-user-local.tex -2021/07/31 | 2120 | support/latexindent/documentation/sec-demonstration.tex -2021/07/31 | 12024 | support/latexindent/documentation/sec-fine-tuning.tex -2021/07/31 | 18923 | support/latexindent/documentation/sec-how-to-use.tex -2021/07/31 | 10859 | support/latexindent/documentation/sec-indent-config-and-settings.tex -2021/07/31 | 7969 | support/latexindent/documentation/sec-introduction.tex -2021/07/31 | 21650 | support/latexindent/documentation/sec-replacements.tex -2021/07/31 | 3075 | support/latexindent/documentation/sec-the-m-switch.tex -2021/07/31 | 5736 | support/latexindent/documentation/subsec-combine-text-wrap-para-line-breaks.tex -2021/07/31 | 14050 | support/latexindent/documentation/subsec-commands-and-their-options.tex -2021/07/31 | 1909 | support/latexindent/documentation/subsec-noAdditionalIndent-indentRules.tex -2021/07/31 | 22107 | support/latexindent/documentation/subsec-one-sentence-per-line.tex -2021/07/31 | 66280 | support/latexindent/documentation/subsec-poly-switches.tex -2021/07/31 | 11600 | support/latexindent/documentation/subsec-remove-para-line-breaks.tex -2021/07/31 | 1442 | support/latexindent/documentation/subsec-text-wrap-summary.tex -2021/07/31 | 18082 | support/latexindent/documentation/subsec-text-wrap.tex -2021/07/31 | 5979 | support/latexindent/documentation/subsubsec-commands-with-arguments.tex -2021/07/31 | 16703 | support/latexindent/documentation/subsubsec-environments-and-their-arguments.tex -2021/07/31 | 3450 | support/latexindent/documentation/subsubsec-environments-with-items.tex -2021/07/31 | 5286 | support/latexindent/documentation/subsubsec-headings.tex -2021/07/31 | 4873 | support/latexindent/documentation/subsubsec-ifelsefi.tex -2021/07/31 | 7234 | support/latexindent/documentation/subsubsec-no-add-remaining-code-blocks.tex -2021/07/31 | 3850 | support/latexindent/documentation/subsubsec-special.tex -2021/07/31 | 1477 | support/latexindent/documentation/title.tex -2021/07/31 | 61612 | support/latexindent/LatexIndent/AlignmentAtAmpersand.pm -2021/07/31 | 23600 | support/latexindent/LatexIndent/Arguments.pm -2021/07/31 | 6042 | support/latexindent/LatexIndent/BackUpFileProcedure.pm -2021/07/31 | 4798 | support/latexindent/LatexIndent/BlankLines.pm -2021/07/31 | 12661 | support/latexindent/LatexIndent/Braces.pm -2021/07/31 | 10361 | support/latexindent/LatexIndent/Command.pm -2021/07/31 | 21217 | support/latexindent/LatexIndent/Document.pm -2021/07/31 | 1483 | support/latexindent/LatexIndent/DoubleBackSlash.pm -2021/07/31 | 5969 | support/latexindent/LatexIndent/Else.pm -2021/07/31 | 6335 | support/latexindent/LatexIndent/Environment.pm -2021/07/31 | 9803909 | support/latexindent/latexindent.exe -2021/07/31 | 11823 | support/latexindent/LatexIndent/FileContents.pm -2021/07/31 | 6589 | support/latexindent/LatexIndent/FileExtension.pm -2021/07/31 | 52738 | support/latexindent/LatexIndent/GetYamlSettings.pm -2021/07/31 | 10806 | support/latexindent/LatexIndent/Heading.pm -2021/07/31 | 12302 | support/latexindent/LatexIndent/HiddenChildren.pm -2021/07/31 | 3394 | support/latexindent/LatexIndent/HorizontalWhiteSpace.pm -2021/07/31 | 9541 | support/latexindent/LatexIndent/IfElseFi.pm -2021/07/31 | 20575 | support/latexindent/LatexIndent/Indent.pm -2021/07/31 | 6408 | support/latexindent/LatexIndent/Item.pm -2021/07/31 | 5312 | support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm -2021/07/31 | 7881 | support/latexindent/LatexIndent/LogFile.pm -2021/07/31 | 2212 | support/latexindent/LatexIndent/Logger.pm -2021/07/31 | 6793 | support/latexindent/LatexIndent/MandatoryArgument.pm -2021/07/31 | 22938 | support/latexindent/LatexIndent/ModifyLineBreaks.pm -2021/07/31 | 1558 | support/latexindent/latexindent-module-installer.pl -2021/07/31 | 4284 | support/latexindent/LatexIndent/NamedGroupingBracesBrackets.pm -2021/07/31 | 6062 | support/latexindent/LatexIndent/OptionalArgument.pm -2021/07/31 | 2645 | support/latexindent/latexindent.pl -2021/07/31 | 3463 | support/latexindent/LatexIndent/Preamble.pm -2021/07/31 | 3618 | support/latexindent/LatexIndent/Replacement.pm -2021/07/31 | 4355 | support/latexindent/LatexIndent/RoundBrackets.pm -2021/07/31 | 19864 | support/latexindent/LatexIndent/Sentence.pm -2021/07/31 | 13572 | support/latexindent/LatexIndent/Special.pm -2021/07/31 | 1992 | support/latexindent/LatexIndent/Switches.pm -2021/07/31 | 3273 | support/latexindent/LatexIndent/Tokens.pm -2021/07/31 | 6385 | support/latexindent/LatexIndent/TrailingComments.pm -2021/07/31 | 5777 | support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm -2021/07/31 | 22855 | support/latexindent/LatexIndent/Verbatim.pm -2021/07/31 | 833 | support/latexindent/LatexIndent/Version.pm -2021/07/31 | 1874 | support/latexindent/README -2021/07/31 | 5992676 | support/latexindent.zip +2021/09/16 | 18756 | support/latexindent/defaultSettings.yaml +2021/09/16 | 13605 | support/latexindent/documentation/appendices.tex +2021/09/16 | 633 | support/latexindent/documentation/cmhlistings.tex +2021/09/16 | 7161 | support/latexindent/documentation/figure-schematic.png +2021/09/16 | 1879 | support/latexindent/documentation/figure-schematic.tex +2021/09/16 | 1001116 | support/latexindent/documentation/latexindent.pdf +2021/09/16 | 24467 | support/latexindent/documentation/latexindent.tex +2021/09/16 | 44096 | support/latexindent/documentation/logo.png +2021/09/16 | 1664 | support/latexindent/documentation/logo.tex +2021/09/16 | 246 | support/latexindent/documentation/references.tex +2021/09/16 | 1688 | support/latexindent/documentation/sec-conclusions-know-limitations.tex +2021/09/16 | 68771 | support/latexindent/documentation/sec-default-user-local.tex +2021/09/16 | 2120 | support/latexindent/documentation/sec-demonstration.tex +2021/09/16 | 12024 | support/latexindent/documentation/sec-fine-tuning.tex +2021/09/16 | 22507 | support/latexindent/documentation/sec-how-to-use.tex +2021/09/16 | 10859 | support/latexindent/documentation/sec-indent-config-and-settings.tex +2021/09/16 | 7969 | support/latexindent/documentation/sec-introduction.tex +2021/09/16 | 21650 | support/latexindent/documentation/sec-replacements.tex +2021/09/16 | 8035 | support/latexindent/documentation/sec-the-line-switch.tex +2021/09/16 | 3021 | support/latexindent/documentation/sec-the-m-switch.tex +2021/09/16 | 5728 | support/latexindent/documentation/subsec-combine-text-wrap-para-line-breaks.tex +2021/09/16 | 14050 | support/latexindent/documentation/subsec-commands-and-their-options.tex +2021/09/16 | 1909 | support/latexindent/documentation/subsec-noAdditionalIndent-indentRules.tex +2021/09/16 | 22107 | support/latexindent/documentation/subsec-one-sentence-per-line.tex +2021/09/16 | 66280 | support/latexindent/documentation/subsec-poly-switches.tex +2021/09/16 | 11976 | support/latexindent/documentation/subsec-remove-para-line-breaks.tex +2021/09/16 | 1441 | support/latexindent/documentation/subsec-text-wrap-summary.tex +2021/09/16 | 18435 | support/latexindent/documentation/subsec-text-wrap.tex +2021/09/16 | 5979 | support/latexindent/documentation/subsubsec-commands-with-arguments.tex +2021/09/16 | 16597 | support/latexindent/documentation/subsubsec-environments-and-their-arguments.tex +2021/09/16 | 3450 | support/latexindent/documentation/subsubsec-environments-with-items.tex +2021/09/16 | 5286 | support/latexindent/documentation/subsubsec-headings.tex +2021/09/16 | 4873 | support/latexindent/documentation/subsubsec-ifelsefi.tex +2021/09/16 | 7234 | support/latexindent/documentation/subsubsec-no-add-remaining-code-blocks.tex +2021/09/16 | 3850 | support/latexindent/documentation/subsubsec-special.tex +2021/09/16 | 1477 | support/latexindent/documentation/title.tex +2021/09/16 | 61604 | support/latexindent/LatexIndent/AlignmentAtAmpersand.pm +2021/09/16 | 23584 | support/latexindent/LatexIndent/Arguments.pm +2021/09/16 | 6645 | support/latexindent/LatexIndent/BackUpFileProcedure.pm +2021/09/16 | 4503 | support/latexindent/LatexIndent/BlankLines.pm +2021/09/16 | 12661 | support/latexindent/LatexIndent/Braces.pm +2021/09/16 | 5011 | support/latexindent/LatexIndent/Check.pm +2021/09/16 | 10347 | support/latexindent/LatexIndent/Command.pm +2021/09/16 | 21779 | support/latexindent/LatexIndent/Document.pm +2021/09/16 | 1483 | support/latexindent/LatexIndent/DoubleBackSlash.pm +2021/09/16 | 5969 | support/latexindent/LatexIndent/Else.pm +2021/09/16 | 6329 | support/latexindent/LatexIndent/Environment.pm +2021/09/16 | 9809944 | support/latexindent/latexindent.exe +2021/09/16 | 12881 | support/latexindent/LatexIndent/FileContents.pm +2021/09/16 | 6984 | support/latexindent/LatexIndent/FileExtension.pm +2021/09/16 | 55980 | support/latexindent/LatexIndent/GetYamlSettings.pm +2021/09/16 | 10802 | support/latexindent/LatexIndent/Heading.pm +2021/09/16 | 12302 | support/latexindent/LatexIndent/HiddenChildren.pm +2021/09/16 | 3378 | support/latexindent/LatexIndent/HorizontalWhiteSpace.pm +2021/09/16 | 9537 | support/latexindent/LatexIndent/IfElseFi.pm +2021/09/16 | 20565 | support/latexindent/LatexIndent/Indent.pm +2021/09/16 | 6402 | support/latexindent/LatexIndent/Item.pm +2021/09/16 | 5306 | support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm +2021/09/16 | 9243 | support/latexindent/LatexIndent/Lines.pm +2021/09/16 | 8776 | support/latexindent/LatexIndent/LogFile.pm +2021/09/16 | 2188 | support/latexindent/LatexIndent/Logger.pm +2021/09/16 | 6793 | support/latexindent/LatexIndent/MandatoryArgument.pm +2021/09/16 | 22888 | support/latexindent/LatexIndent/ModifyLineBreaks.pm +2021/09/16 | 1558 | support/latexindent/latexindent-module-installer.pl +2021/09/16 | 4270 | support/latexindent/LatexIndent/NamedGroupingBracesBrackets.pm +2021/09/16 | 6062 | support/latexindent/LatexIndent/OptionalArgument.pm +2021/09/16 | 2754 | support/latexindent/latexindent.pl +2021/09/16 | 4446 | support/latexindent/LatexIndent/Preamble.pm +2021/09/16 | 3614 | support/latexindent/LatexIndent/Replacement.pm +2021/09/16 | 4355 | support/latexindent/LatexIndent/RoundBrackets.pm +2021/09/16 | 19822 | support/latexindent/LatexIndent/Sentence.pm +2021/09/16 | 13548 | support/latexindent/LatexIndent/Special.pm +2021/09/16 | 2412 | support/latexindent/LatexIndent/Switches.pm +2021/09/16 | 3273 | support/latexindent/LatexIndent/Tokens.pm +2021/09/16 | 6373 | support/latexindent/LatexIndent/TrailingComments.pm +2021/09/16 | 5771 | support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm +2021/09/16 | 23589 | support/latexindent/LatexIndent/Verbatim.pm +2021/09/16 | 833 | support/latexindent/LatexIndent/Version.pm +2021/09/16 | 1874 | support/latexindent/README +2021/09/16 | 6053672 | support/latexindent.zip 2021/01/03 | 16380 | support/latex-make/figlatex.dtx 2021/01/03 | 221479 | support/latex-make/figlatex.pdf 2001/06/07 | 302 | support/latexmake/latexmake.diz @@ -270263,17 +270266,19 @@ 1996/11/10 | 971 | support/ltxinput/readme.txt 2010/03/15 | 4720 | support/lualibs/lua-alt-getopt/lua-alt-getopt-0.7.0.tar.gz 2009/01/11 | 1463 | support/lualibs/lua-alt-getopt/README -2020/03/24 | 83 | support/lualibs/lua-uca/CHANGELOG.md -2020/03/24 | 1054 | support/lualibs/lua-uca/LICENSE -2020/03/24 | 55816 | support/lualibs/lua-uca/lua-uca-doc.pdf -2020/03/24 | 1291 | support/lualibs/lua-uca/lua-uca-doc.tex -2020/03/24 | 10407 | support/lualibs/lua-uca/lua-uca/lua-uca-collator.lua -2020/03/24 | 1869891 | support/lualibs/lua-uca/lua-uca/lua-uca-ducet.lua -2020/03/24 | 3178 | support/lualibs/lua-uca/lua-uca/lua-uca-languages.lua -2020/03/24 | 6251 | support/lualibs/lua-uca/lua-uca/lua-uca-reordering-table.lua -2020/03/24 | 6061 | support/lualibs/lua-uca/lua-uca/lua-uca-tailoring.lua -2020/03/24 | 4496 | support/lualibs/lua-uca/README.md -2020/03/24 | 268124 | support/lualibs/lua-uca.zip +2021/09/16 | 312 | support/lualibs/lua-uca/CHANGELOG.md +2021/09/16 | 3158 | support/lualibs/lua-uca/HACKING.md +2021/09/16 | 1054 | support/lualibs/lua-uca/LICENSE +2021/09/16 | 72038 | support/lualibs/lua-uca/lua-uca-doc.pdf +2021/09/16 | 1581 | support/lualibs/lua-uca/lua-uca-doc.tex +2021/09/16 | 10407 | support/lualibs/lua-uca/lua-uca/lua-uca-collator.lua +2021/09/16 | 1834704 | support/lualibs/lua-uca/lua-uca/lua-uca-ducet.lua +2021/09/16 | 32808 | support/lualibs/lua-uca/lua-uca/lua-uca-languages.lua +2021/09/16 | 6005 | support/lualibs/lua-uca/lua-uca/lua-uca-reordering-table.lua +2021/09/16 | 6061 | support/lualibs/lua-uca/lua-uca/lua-uca-tailoring.lua +2021/09/16 | 1844 | support/lualibs/lua-uca/Makefile +2021/09/16 | 3860 | support/lualibs/lua-uca/README.md +2021/09/16 | 287597 | support/lualibs/lua-uca.zip 2016/01/24 | 237 | support/lug/images/bg.png 2016/01/24 | 1163 | support/lug/images/br.png 2016/01/24 | 529 | support/lug/images/cn.png @@ -282494,8 +282499,8 @@ 2021/02/24 | 40260 | systems/texlive/tlnet/archive/kpathsea.x86_64-linux.r57878.tar.xz 2021/02/27 | 44648 | systems/texlive/tlnet/archive/kpathsea.x86_64-solaris.r57938.tar.xz 2020/06/24 | 1759292 | systems/texlive/tlnet/archive/kpfonts.doc.r55643.tar.xz -2021/08/24 | 2104108 | systems/texlive/tlnet/archive/kpfonts-otf.doc.r60309.tar.xz -2021/08/24 | 1082624 | systems/texlive/tlnet/archive/kpfonts-otf.r60309.tar.xz +2021/09/16 | 2104448 | systems/texlive/tlnet/archive/kpfonts-otf.doc.r60515.tar.xz +2021/09/16 | 1082224 | systems/texlive/tlnet/archive/kpfonts-otf.r60515.tar.xz 2020/06/24 | 2205528 | systems/texlive/tlnet/archive/kpfonts.r55643.tar.xz 2020/06/24 | 223556 | systems/texlive/tlnet/archive/kpfonts.source.r55643.tar.xz 2019/02/28 | 3968 | systems/texlive/tlnet/archive/ksfh_nat.r24825.tar.xz @@ -287823,7 +287828,7 @@ 2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r55172.tar.xz 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r55172.tar.xz 2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r55172.tar.xz -2021/09/15 | 400148 | systems/texlive/tlnet/archive/texlive-scripts.doc.r60505.tar.xz +2021/09/16 | 400148 | systems/texlive/tlnet/archive/texlive-scripts.doc.r60514.tar.xz 2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r53577.tar.xz 2020/01/27 | 924 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r53577.tar.xz 2020/01/27 | 916 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r53577.tar.xz @@ -287847,7 +287852,7 @@ 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r55172.tar.xz 2020/05/17 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r55172.tar.xz 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r55172.tar.xz -2021/09/15 | 108276 | systems/texlive/tlnet/archive/texlive-scripts.r60505.tar.xz +2021/09/16 | 108300 | systems/texlive/tlnet/archive/texlive-scripts.r60514.tar.xz 2021/02/25 | 572 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r57908.tar.xz 2021/04/12 | 36308 | systems/texlive/tlnet/archive/texlive-scripts.win32.r58829.tar.xz 2020/05/17 | 588 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r55172.tar.xz @@ -288706,8 +288711,8 @@ 2020/03/12 | 43852 | systems/texlive/tlnet/archive/unicode-alphabets.r54236.tar.xz 2019/02/28 | 992 | systems/texlive/tlnet/archive/unicode-bidi.doc.r42482.tar.xz 2019/02/28 | 1120 | systems/texlive/tlnet/archive/unicode-bidi.r42482.tar.xz -2020/10/27 | 3820 | systems/texlive/tlnet/archive/unicode-data.doc.r56768.tar.xz -2020/10/27 | 298404 | systems/texlive/tlnet/archive/unicode-data.r56768.tar.xz +2021/09/16 | 3832 | systems/texlive/tlnet/archive/unicode-data.doc.r60516.tar.xz +2021/09/16 | 305540 | systems/texlive/tlnet/archive/unicode-data.r60516.tar.xz 2020/10/08 | 1725064 | systems/texlive/tlnet/archive/unicode-math.doc.r56594.tar.xz 2020/10/08 | 42816 | systems/texlive/tlnet/archive/unicode-math.r56594.tar.xz 2020/10/08 | 37860 | systems/texlive/tlnet/archive/unicode-math.source.r56594.tar.xz @@ -289577,16 +289582,16 @@ 2020/07/18 | 47816 | systems/texlive/tlnet/archive/zztex.doc.r55862.tar.xz 2020/07/18 | 101724 | systems/texlive/tlnet/archive/zztex.r55862.tar.xz 2021/05/02 | 105152 | systems/texlive/tlnet/install-tl -2021/09/15 | 6811724 | systems/texlive/tlnet/install-tl-unx.tar.gz -2021/09/15 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2021/09/15 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2021/09/16 | 6811636 | systems/texlive/tlnet/install-tl-unx.tar.gz +2021/09/16 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2021/09/16 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2021/04/11 | 4945 | systems/texlive/tlnet/install-tl-windows.bat -2021/09/15 | 20872016 | systems/texlive/tlnet/install-tl-windows.exe -2021/09/15 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2021/09/15 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2021/09/15 | 25629506 | systems/texlive/tlnet/install-tl.zip -2021/09/15 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2021/09/15 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2021/09/16 | 20872882 | systems/texlive/tlnet/install-tl-windows.exe +2021/09/16 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2021/09/16 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2021/09/16 | 25629536 | systems/texlive/tlnet/install-tl.zip +2021/09/16 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2021/09/16 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2021/04/01 | 1229 | systems/texlive/tlnet/README.md 2021/04/01 | 0 | systems/texlive/tlnet/TEXLIVE_2021 2021/07/03 | 7181 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg @@ -289596,7 +289601,7 @@ 2021/07/03 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2021/07/02 | 49348 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2021/09/14 | 6751 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2021/09/15 | 6879 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2020/04/15 | 223687 | systems/texlive/tlnet/tlpkg/installer/curl/curl-ca-bundle.crt 2020/04/15 | 2606592 | systems/texlive/tlnet/tlpkg/installer/curl/curl.exe 2017/04/16 | 2629 | systems/texlive/tlnet/tlpkg/installer/installer-options.txt @@ -289638,12 +289643,12 @@ 2021/05/16 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2021/05/16 | 5402 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2021/05/16 | 27555 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2021/09/15 | 16883112 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2021/09/15 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2021/09/16 | 16883112 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2021/09/16 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2021/05/16 | 86511 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2021/09/15 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2021/09/15 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2021/09/15 | 2307884 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2021/09/16 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2021/09/16 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2021/09/16 | 2308392 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2021/05/16 | 58801 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2021/05/16 | 42084 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2021/05/16 | 16103 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -294561,7 +294566,7 @@ 2020/10/03 | 318630 | 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 -2021/09/15 | 615978 | systems/win32/miktex/tm/packages/files.csv.lzma +2021/09/16 | 615978 | 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 @@ -295945,9 +295950,9 @@ 2018/01/12 | 157226 | systems/win32/miktex/tm/packages/miktex-zip-bin-x64.tar.lzma 2021/08/07 | 39000 | systems/win32/miktex/tm/packages/miktex-zlib-bin-2.9.tar.lzma 2021/08/07 | 43393 | systems/win32/miktex/tm/packages/miktex-zlib-bin-x64-2.9.tar.lzma -2021/09/15 | 240476 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2021/09/15 | 1356313 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2021/09/15 | 1259753 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2021/09/16 | 240461 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2021/09/16 | 1357114 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2021/09/16 | 1259727 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma 2021/08/07 | 13446 | systems/win32/miktex/tm/packages/miktex-zzip-bin-2.9.tar.lzma 2021/08/07 | 14327 | 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 @@ -296155,189 +296160,189 @@ 2018/04/09 | 400132 | systems/win32/miktex/tm/packages/newunicodechar.tar.lzma 2011/09/19 | 101312 | systems/win32/miktex/tm/packages/newvbtm.tar.lzma 2021/03/17 | 232249 | systems/win32/miktex/tm/packages/newverbs.tar.lzma -2021/09/15 | 615727 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2021/09/15 | 51112 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2021/09/15 | 56476 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2021/09/15 | 975020 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2021/09/15 | 1077990 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma -2021/09/15 | 29037 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma -2021/09/15 | 31352 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma -2021/09/15 | 29842 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2021/09/15 | 34666 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2021/09/15 | 50151 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2021/09/15 | 57548 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2021/09/15 | 83540 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2021/09/15 | 95403 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2021/09/15 | 67819 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2021/09/15 | 75792 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2021/09/15 | 27199 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2021/09/15 | 30825 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma -2021/09/15 | 330787 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma -2021/09/15 | 392792 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2021/09/15 | 32673 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2021/09/15 | 36628 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma -2021/09/15 | 51309 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2021/09/15 | 56686 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2021/09/15 | 241812 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2021/09/15 | 263960 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2021/09/15 | 180010 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2021/09/15 | 195637 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma -2021/09/15 | 54632 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2021/09/15 | 61812 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2021/09/15 | 21225 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2021/09/15 | 23365 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2021/09/15 | 461812 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2021/09/15 | 45905 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma -2021/09/15 | 51201 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2021/09/15 | 284581 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2021/09/15 | 325043 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma -2021/09/15 | 41194 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2021/09/15 | 45311 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2021/09/15 | 119818 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2021/09/15 | 133864 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma -2021/09/15 | 1291301 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2021/09/15 | 1421868 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma -2021/09/15 | 100625 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma -2021/09/15 | 112984 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2021/09/15 | 43028 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2021/09/15 | 48251 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma -2021/09/15 | 25019 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2021/09/15 | 28180 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2021/09/15 | 56317 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2021/09/15 | 62787 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2021/09/15 | 136817 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma -2021/09/15 | 154425 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2021/09/15 | 73197 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2021/09/15 | 77951 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2021/09/15 | 71669 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma -2021/09/15 | 80450 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2021/09/15 | 258881 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2021/09/15 | 295204 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma -2021/09/15 | 22049 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma -2021/09/15 | 24995 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma -2021/09/15 | 97339 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2021/09/15 | 112087 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma -2021/09/15 | 64427 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2021/09/15 | 73148 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2021/09/15 | 96632 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma -2021/09/15 | 115351 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2021/09/15 | 38139 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2021/09/15 | 43003 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2021/09/15 | 483653 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2021/09/15 | 566529 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2021/09/15 | 147371 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2021/09/15 | 159579 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2021/09/15 | 94799 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2021/09/15 | 109032 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2021/09/15 | 16358 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma -2021/09/15 | 17981 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2021/09/15 | 28391 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2021/09/15 | 30058 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2021/09/15 | 629399 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2021/09/15 | 681252 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2021/09/15 | 531850 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2021/09/15 | 596931 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma -2021/09/15 | 476919 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma -2021/09/15 | 510588 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2021/09/15 | 94311 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma -2021/09/15 | 103400 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2021/09/15 | 1713894 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2021/09/15 | 2009904 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2021/09/15 | 67619 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2021/09/15 | 74211 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2021/09/15 | 27358 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2021/09/15 | 31620 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2021/09/15 | 7722 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2021/09/15 | 8769 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma -2021/09/15 | 196871 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2021/09/15 | 215249 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2021/09/15 | 250266 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2021/09/15 | 284024 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2021/09/15 | 98380 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2021/09/15 | 103201 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma -2021/09/15 | 60639 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2021/09/15 | 68024 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma -2021/09/15 | 124282 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma -2021/09/15 | 136822 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2021/09/15 | 178354 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2021/09/15 | 196741 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2021/09/15 | 199733 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma -2021/09/15 | 180121 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2021/09/15 | 67483 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma -2021/09/15 | 76826 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2021/09/15 | 31231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2021/09/15 | 35087 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2021/09/15 | 37806 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma -2021/09/15 | 42712 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2021/09/15 | 42891 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2021/09/15 | 46907 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2021/09/15 | 45970 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2021/09/15 | 52523 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2021/09/15 | 194382 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma -2021/09/15 | 206606 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma -2021/09/15 | 35692 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma -2021/09/15 | 40230 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma -2021/09/15 | 744117 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2021/09/15 | 815242 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2021/09/15 | 198169 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma -2021/09/15 | 202795 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2021/09/15 | 208048 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma -2021/09/15 | 243426 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2021/09/15 | 78774 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2021/09/15 | 87777 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2021/09/15 | 1169718 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2021/09/15 | 1301192 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma -2021/09/15 | 20137 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2021/09/15 | 23903 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2021/09/15 | 31536 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2021/09/15 | 37241 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2021/09/15 | 64185 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2021/09/15 | 72206 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2021/09/15 | 50395 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2021/09/15 | 57728 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2021/09/15 | 1340930 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2021/09/15 | 1464205 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2021/09/15 | 42387 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2021/09/15 | 51751 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2021/09/15 | 56515 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2021/09/15 | 60040 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma -2021/09/15 | 25291 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2021/09/15 | 27391 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2021/09/15 | 16412 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2021/09/15 | 18176 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma -2021/09/15 | 63777 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2021/09/15 | 69914 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2021/09/15 | 154806 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2021/09/15 | 169243 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2021/09/15 | 57011 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2021/09/15 | 65786 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2021/09/15 | 98260 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2021/09/15 | 105223 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2021/09/15 | 2672611 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma -2021/09/15 | 2796725 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma -2021/09/15 | 56355 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2021/09/15 | 62228 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma -2021/09/15 | 33545 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma -2021/09/15 | 37358 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2021/09/15 | 27729 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2021/09/15 | 33633 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2021/09/15 | 65619 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma -2021/09/15 | 70649 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma -2021/09/15 | 312108 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2021/09/15 | 345739 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2021/09/15 | 55498 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma -2021/09/15 | 57139 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma -2021/09/15 | 589844 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma -2021/09/15 | 624656 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2021/09/15 | 39128 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2021/09/15 | 43427 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma -2021/09/15 | 240464 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma -2021/09/15 | 1356189 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma -2021/09/15 | 1259692 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2021/09/15 | 13467 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2021/09/15 | 14348 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2021/09/16 | 615727 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2021/09/16 | 51112 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2021/09/16 | 56476 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2021/09/16 | 975020 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2021/09/16 | 1077989 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2021/09/16 | 29037 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2021/09/16 | 31350 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2021/09/16 | 29841 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2021/09/16 | 34666 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2021/09/16 | 50151 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2021/09/16 | 57547 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2021/09/16 | 83540 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2021/09/16 | 95403 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2021/09/16 | 67818 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2021/09/16 | 75792 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2021/09/16 | 27199 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2021/09/16 | 30824 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2021/09/16 | 330787 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2021/09/16 | 392793 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2021/09/16 | 32673 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2021/09/16 | 36628 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2021/09/16 | 51309 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2021/09/16 | 56684 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2021/09/16 | 241810 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2021/09/16 | 263959 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2021/09/16 | 180009 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2021/09/16 | 195636 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2021/09/16 | 54631 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2021/09/16 | 61812 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2021/09/16 | 21224 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2021/09/16 | 23365 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2021/09/16 | 461813 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2021/09/16 | 45905 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2021/09/16 | 51202 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2021/09/16 | 284581 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2021/09/16 | 325042 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2021/09/16 | 41194 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2021/09/16 | 45311 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2021/09/16 | 119818 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2021/09/16 | 133862 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2021/09/16 | 1291299 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2021/09/16 | 1421868 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2021/09/16 | 100624 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2021/09/16 | 112982 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2021/09/16 | 43027 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2021/09/16 | 48252 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2021/09/16 | 25020 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2021/09/16 | 28179 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2021/09/16 | 56317 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2021/09/16 | 62785 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2021/09/16 | 136812 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2021/09/16 | 154427 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2021/09/16 | 73195 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2021/09/16 | 77951 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2021/09/16 | 71668 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2021/09/16 | 80447 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2021/09/16 | 258880 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2021/09/16 | 295203 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2021/09/16 | 22048 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2021/09/16 | 24995 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2021/09/16 | 97338 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2021/09/16 | 112087 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2021/09/16 | 64428 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2021/09/16 | 73147 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2021/09/16 | 96632 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2021/09/16 | 115349 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2021/09/16 | 38140 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2021/09/16 | 43003 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2021/09/16 | 483653 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2021/09/16 | 566525 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2021/09/16 | 147372 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2021/09/16 | 159578 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2021/09/16 | 94799 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2021/09/16 | 109031 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2021/09/16 | 16357 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2021/09/16 | 17980 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2021/09/16 | 28390 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2021/09/16 | 30058 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2021/09/16 | 629399 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2021/09/16 | 681252 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2021/09/16 | 531852 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2021/09/16 | 596929 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2021/09/16 | 476919 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2021/09/16 | 510587 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2021/09/16 | 94310 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2021/09/16 | 103400 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2021/09/16 | 1713893 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2021/09/16 | 2009905 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2021/09/16 | 67618 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2021/09/16 | 74209 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2021/09/16 | 27357 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2021/09/16 | 31619 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2021/09/16 | 7721 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2021/09/16 | 8766 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2021/09/16 | 196872 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2021/09/16 | 215248 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2021/09/16 | 250263 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2021/09/16 | 284022 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2021/09/16 | 98380 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2021/09/16 | 103203 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2021/09/16 | 60637 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2021/09/16 | 68022 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2021/09/16 | 124281 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2021/09/16 | 136821 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2021/09/16 | 178353 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2021/09/16 | 196740 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2021/09/16 | 199732 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2021/09/16 | 180121 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2021/09/16 | 67484 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2021/09/16 | 76825 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2021/09/16 | 31231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2021/09/16 | 35087 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2021/09/16 | 37805 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2021/09/16 | 42711 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2021/09/16 | 42890 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2021/09/16 | 46906 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2021/09/16 | 45969 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2021/09/16 | 52522 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2021/09/16 | 194382 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2021/09/16 | 206605 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2021/09/16 | 35691 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2021/09/16 | 40229 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2021/09/16 | 744117 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2021/09/16 | 815242 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2021/09/16 | 198169 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2021/09/16 | 202796 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2021/09/16 | 208049 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2021/09/16 | 243426 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2021/09/16 | 78774 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2021/09/16 | 87777 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2021/09/16 | 1169717 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2021/09/16 | 1301191 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2021/09/16 | 20137 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2021/09/16 | 23902 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2021/09/16 | 31537 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2021/09/16 | 37242 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2021/09/16 | 64185 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2021/09/16 | 72205 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2021/09/16 | 50394 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2021/09/16 | 57728 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2021/09/16 | 1340930 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2021/09/16 | 1464201 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2021/09/16 | 42385 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2021/09/16 | 51750 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2021/09/16 | 56513 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2021/09/16 | 60039 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2021/09/16 | 25290 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2021/09/16 | 27390 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2021/09/16 | 16412 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2021/09/16 | 18176 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2021/09/16 | 63778 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2021/09/16 | 69914 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2021/09/16 | 154805 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2021/09/16 | 169241 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2021/09/16 | 57011 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2021/09/16 | 65786 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2021/09/16 | 98260 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2021/09/16 | 105221 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2021/09/16 | 2672609 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2021/09/16 | 2796725 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2021/09/16 | 56355 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2021/09/16 | 62229 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2021/09/16 | 33545 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2021/09/16 | 37359 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2021/09/16 | 27727 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2021/09/16 | 33633 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2021/09/16 | 65619 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2021/09/16 | 70648 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2021/09/16 | 312107 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2021/09/16 | 345739 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2021/09/16 | 55498 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma +2021/09/16 | 57139 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma +2021/09/16 | 589842 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2021/09/16 | 624652 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2021/09/16 | 39128 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2021/09/16 | 43426 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2021/09/16 | 240477 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2021/09/16 | 1356285 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2021/09/16 | 1261068 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2021/09/16 | 13465 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2021/09/16 | 14348 | 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 -2021/09/15 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2021/09/16 | 1153 | 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 @@ -296726,7 +296731,7 @@ 2020/10/20 | 342254 | systems/win32/miktex/tm/packages/preview.tar.lzma 2019/06/20 | 375963 | systems/win32/miktex/tm/packages/prftree.tar.lzma 2021/04/23 | 274028 | systems/win32/miktex/tm/packages/principia.tar.lzma -2021/09/15 | 976 | systems/win32/miktex/tm/packages/pr.ini +2021/09/16 | 976 | 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 @@ -298325,7 +298330,7 @@ 2004/06/04 | 404 | tds/tds.sed 2004/06/23 | 65418 | tds/tds.tex 2019/05/29 | 304264 | tds.zip -2021/09/16 | 186 | timestamp +2021/09/17 | 186 | timestamp 2002/08/26 | 61898 | usergrps/dante/antrag.pdf 2002/08/26 | 118217 | usergrps/dante/antrag.ps 2021/08/04 | 917 | usergrps/dante/dtk/doc/beispiel.bib diff --git a/FILES.byname.gz b/FILES.byname.gz index 8307097116..46688b2ae4 100644 Binary files a/FILES.byname.gz and b/FILES.byname.gz differ diff --git a/FILES.last07days b/FILES.last07days index 2b50c59b03..03c4302585 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,282 +1,392 @@ -2021/09/15 | 98380 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma -2021/09/15 | 98260 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma -2021/09/15 | 976 | systems/win32/miktex/tm/packages/pr.ini -2021/09/15 | 975020 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma -2021/09/15 | 97339 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma -2021/09/15 | 96632 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2021/09/16 | 98380 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-2.9.tar.lzma +2021/09/16 | 98260 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-2.9.tar.lzma +2021/09/16 | 9809944 | support/latexindent/latexindent.exe +2021/09/16 | 976 | systems/win32/miktex/tm/packages/pr.ini +2021/09/16 | 975020 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-2.9.tar.lzma +2021/09/16 | 97338 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-2.9.tar.lzma +2021/09/16 | 96632 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-2.9.tar.lzma +2021/09/16 | 95403 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma +2021/09/16 | 9537 | support/latexindent/LatexIndent/IfElseFi.pm +2021/09/16 | 94799 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma +2021/09/16 | 94310 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma +2021/09/16 | 93702 | macros/luatex/generic/luamplib/luamplib.dtx +2021/09/16 | 9243 | support/latexindent/LatexIndent/Lines.pm +2021/09/16 | 9048 | macros/luatex/generic/luamplib/NEWS +2021/09/16 | 87777 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma +2021/09/16 | 8776 | support/latexindent/LatexIndent/LogFile.pm +2021/09/16 | 8766 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma +2021/09/16 | 83540 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma +2021/09/16 | 833 | support/latexindent/LatexIndent/Version.pm +2021/09/16 | 815242 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma +2021/09/16 | 80447 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma +2021/09/16 | 8035 | support/latexindent/documentation/sec-the-line-switch.tex +2021/09/16 | 7969 | support/latexindent/documentation/sec-introduction.tex +2021/09/16 | 78774 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma +2021/09/16 | 77951 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma +2021/09/16 | 7721 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma +2021/09/16 | 76825 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma +2021/09/16 | 75792 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma +2021/09/16 | 744117 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma +2021/09/16 | 74209 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma +2021/09/16 | 73195 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma +2021/09/16 | 73147 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma +2021/09/16 | 7234 | support/latexindent/documentation/subsubsec-no-add-remaining-code-blocks.tex +2021/09/16 | 72205 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma +2021/09/16 | 72038 | support/lualibs/lua-uca/lua-uca-doc.pdf +2021/09/16 | 71668 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma +2021/09/16 | 7161 | support/latexindent/documentation/figure-schematic.png +2021/09/16 | 70648 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma +2021/09/16 | 69914 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma +2021/09/16 | 6984 | support/latexindent/LatexIndent/FileExtension.pm +2021/09/16 | 68771 | support/latexindent/documentation/sec-default-user-local.tex +2021/09/16 | 681252 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma +2021/09/16 | 6811636 | systems/texlive/tlnet/install-tl-unx.tar.gz +2021/09/16 | 68022 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2021/09/16 | 6793 | support/latexindent/LatexIndent/MandatoryArgument.pm +2021/09/16 | 67818 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma +2021/09/16 | 67618 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma +2021/09/16 | 67484 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma +2021/09/16 | 6645 | support/latexindent/LatexIndent/BackUpFileProcedure.pm +2021/09/16 | 66280 | support/latexindent/documentation/subsec-poly-switches.tex +2021/09/16 | 65786 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma +2021/09/16 | 65619 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma +2021/09/16 | 64428 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma +2021/09/16 | 64185 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma +2021/09/16 | 6402 | support/latexindent/LatexIndent/Item.pm +2021/09/16 | 63778 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma +2021/09/16 | 6373 | support/latexindent/LatexIndent/TrailingComments.pm +2021/09/16 | 633 | support/latexindent/documentation/cmhlistings.tex +2021/09/16 | 6329 | support/latexindent/LatexIndent/Environment.pm +2021/09/16 | 629399 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma +2021/09/16 | 62785 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma +2021/09/16 | 624652 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma +2021/09/16 | 62229 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma +2021/09/16 | 61812 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma +2021/09/16 | 61604 | support/latexindent/LatexIndent/AlignmentAtAmpersand.pm +2021/09/16 | 615978 | systems/win32/miktex/tm/packages/files.csv.lzma +2021/09/16 | 615727 | systems/win32/miktex/tm/packages/next/files.csv.lzma +2021/09/16 | 60637 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma +2021/09/16 | 6062 | support/latexindent/LatexIndent/OptionalArgument.pm +2021/09/16 | 6061 | support/lualibs/lua-uca/lua-uca/lua-uca-tailoring.lua +2021/09/16 | 6053672 | support/latexindent.zip +2021/09/16 | 6005 | support/lualibs/lua-uca/lua-uca/lua-uca-reordering-table.lua +2021/09/16 | 60039 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma +2021/09/16 | 5979 | support/latexindent/documentation/subsubsec-commands-with-arguments.tex +2021/09/16 | 5969 | support/latexindent/LatexIndent/Else.pm +2021/09/16 | 596929 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma +2021/09/16 | 589842 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma +2021/09/16 | 57728 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma +2021/09/16 | 5771 | support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm +2021/09/16 | 57547 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma +2021/09/16 | 5728 | support/latexindent/documentation/subsec-combine-text-wrap-para-line-breaks.tex +2021/09/16 | 57139 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma +2021/09/16 | 57011 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma +2021/09/16 | 56684 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma +2021/09/16 | 566525 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma +2021/09/16 | 56513 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma +2021/09/16 | 56476 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma +2021/09/16 | 56355 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma +2021/09/16 | 56317 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma +2021/09/16 | 55980 | support/latexindent/LatexIndent/GetYamlSettings.pm +2021/09/16 | 55498 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma +2021/09/16 | 54631 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma +2021/09/16 | 531852 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma +2021/09/16 | 5306 | support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm +2021/09/16 | 5286 | support/latexindent/documentation/subsubsec-headings.tex +2021/09/16 | 52522 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma +2021/09/16 | 51750 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma +2021/09/16 | 51309 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma +2021/09/16 | 51202 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma +2021/09/16 | 51112 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma +2021/09/16 | 510587 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma +2021/09/16 | 50394 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma +2021/09/16 | 50151 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma +2021/09/16 | 5011 | support/latexindent/LatexIndent/Check.pm +2021/09/16 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2021/09/16 | 4873 | support/latexindent/documentation/subsubsec-ifelsefi.tex +2021/09/16 | 483653 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma +2021/09/16 | 48252 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma +2021/09/16 | 476919 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma +2021/09/16 | 46906 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma +2021/09/16 | 461813 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma +2021/09/16 | 45969 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma +2021/09/16 | 45905 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma +2021/09/16 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2021/09/16 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2021/09/16 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2021/09/16 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2021/09/16 | 45311 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma +2021/09/16 | 4503 | support/latexindent/LatexIndent/BlankLines.pm +2021/09/16 | 4446 | support/latexindent/LatexIndent/Preamble.pm +2021/09/16 | 44096 | support/latexindent/documentation/logo.png +2021/09/16 | 4355 | support/latexindent/LatexIndent/RoundBrackets.pm +2021/09/16 | 43426 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma +2021/09/16 | 43027 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma +2021/09/16 | 43003 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma +2021/09/16 | 42890 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma +2021/09/16 | 42711 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma +2021/09/16 | 4270 | support/latexindent/LatexIndent/NamedGroupingBracesBrackets.pm +2021/09/16 | 42385 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma +2021/09/16 | 41194 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma +2021/09/16 | 40229 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma +2021/09/16 | 4016 | macros/luatex/generic/luamplib/test-luamplib-latex.tex +2021/09/16 | 400148 | systems/texlive/tlnet/archive/texlive-scripts.doc.r60514.tar.xz +2021/09/16 | 392793 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma +2021/09/16 | 39128 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma +2021/09/16 | 3872 | macros/luatex/generic/luamplib/test-luamplib-plain.tex +2021/09/16 | 3860 | support/lualibs/lua-uca/README.md +2021/09/16 | 3850 | support/latexindent/documentation/subsubsec-special.tex +2021/09/16 | 3832 | systems/texlive/tlnet/archive/unicode-data.doc.r60516.tar.xz +2021/09/16 | 38140 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma +2021/09/16 | 37805 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma +2021/09/16 | 37359 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma +2021/09/16 | 37242 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma +2021/09/16 | 36628 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma +2021/09/16 | 3614 | support/latexindent/LatexIndent/Replacement.pm +2021/09/16 | 35691 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma +2021/09/16 | 35087 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma +2021/09/16 | 34666 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma +2021/09/16 | 345739 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma +2021/09/16 | 3450 | support/latexindent/documentation/subsubsec-environments-with-items.tex +2021/09/16 | 3378 | support/latexindent/LatexIndent/HorizontalWhiteSpace.pm +2021/09/16 | 33633 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma +2021/09/16 | 33545 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma +2021/09/16 | 330787 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma +2021/09/16 | 32808 | support/lualibs/lua-uca/lua-uca/lua-uca-languages.lua +2021/09/16 | 3273 | support/latexindent/LatexIndent/Tokens.pm +2021/09/16 | 32673 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma +2021/09/16 | 325042 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma +2021/09/16 | 31619 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma +2021/09/16 | 3158 | support/lualibs/lua-uca/HACKING.md +2021/09/16 | 31537 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma +2021/09/16 | 31350 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma +2021/09/16 | 312 | support/lualibs/lua-uca/CHANGELOG.md +2021/09/16 | 31231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma +2021/09/16 | 312107 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma +2021/09/16 | 30824 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma +2021/09/16 | 305540 | systems/texlive/tlnet/archive/unicode-data.r60516.tar.xz +2021/09/16 | 3021 | support/latexindent/documentation/sec-the-m-switch.tex +2021/09/16 | 30058 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma +2021/09/16 | 29841 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma +2021/09/16 | 295203 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma +2021/09/16 | 29037 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma +2021/09/16 | 287597 | support/lualibs/lua-uca.zip +2021/09/16 | 284581 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma +2021/09/16 | 284022 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma +2021/09/16 | 28390 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma +2021/09/16 | 28179 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma +2021/09/16 | 2796725 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma +2021/09/16 | 27727 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma +2021/09/16 | 2754 | support/latexindent/latexindent.pl +2021/09/16 | 2752 | macros/luatex/generic/luamplib/Makefile +2021/09/16 | 27390 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma +2021/09/16 | 27357 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma +2021/09/16 | 27199 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma +2021/09/16 | 2672609 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma +2021/09/16 | 263959 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma +2021/09/16 | 258880 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma +2021/09/16 | 25629536 | systems/texlive/tlnet/install-tl.zip +2021/09/16 | 25290 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma +2021/09/16 | 250263 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma +2021/09/16 | 25020 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma +2021/09/16 | 24995 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma +2021/09/16 | 246 | support/latexindent/documentation/references.tex +2021/09/16 | 24467 | support/latexindent/documentation/latexindent.tex +2021/09/16 | 243426 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma +2021/09/16 | 241810 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma +2021/09/16 | 2412 | support/latexindent/LatexIndent/Switches.pm +2021/09/16 | 240477 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma +2021/09/16 | 240461 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma +2021/09/16 | 23902 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma +2021/09/16 | 23589 | support/latexindent/LatexIndent/Verbatim.pm +2021/09/16 | 23584 | support/latexindent/LatexIndent/Arguments.pm +2021/09/16 | 23365 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma +2021/09/16 | 2308392 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2021/09/16 | 22888 | support/latexindent/LatexIndent/ModifyLineBreaks.pm +2021/09/16 | 22507 | support/latexindent/documentation/sec-how-to-use.tex +2021/09/16 | 22107 | support/latexindent/documentation/subsec-one-sentence-per-line.tex +2021/09/16 | 22048 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma +2021/09/16 | 219853 | macros/latex/contrib/mindflow.zip +2021/09/16 | 2188 | support/latexindent/LatexIndent/Logger.pm +2021/09/16 | 21779 | support/latexindent/LatexIndent/Document.pm +2021/09/16 | 21650 | support/latexindent/documentation/sec-replacements.tex +2021/09/16 | 215248 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma +2021/09/16 | 21224 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma +2021/09/16 | 2120 | support/latexindent/documentation/sec-demonstration.tex +2021/09/16 | 2104448 | systems/texlive/tlnet/archive/kpfonts-otf.doc.r60515.tar.xz +2021/09/16 | 20872882 | systems/texlive/tlnet/install-tl-windows.exe +2021/09/16 | 208049 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2021/09/16 | 206605 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma +2021/09/16 | 20565 | support/latexindent/LatexIndent/Indent.pm +2021/09/16 | 202796 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma +2021/09/16 | 20137 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma +2021/09/16 | 2009905 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma +2021/09/16 | 199732 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma +2021/09/16 | 1996 | macros/luatex/generic/luamplib/README +2021/09/16 | 19822 | support/latexindent/LatexIndent/Sentence.pm +2021/09/16 | 198183 | install/macros/luatex/generic/luamplib.tds.zip +2021/09/16 | 198169 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma +2021/09/16 | 196872 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma +2021/09/16 | 196740 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma +2021/09/16 | 195636 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma +2021/09/16 | 194382 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma +2021/09/16 | 1909 | support/latexindent/documentation/subsec-noAdditionalIndent-indentRules.tex +2021/09/16 | 1879 | support/latexindent/documentation/figure-schematic.tex +2021/09/16 | 18756 | support/latexindent/defaultSettings.yaml +2021/09/16 | 1874 | support/latexindent/README +2021/09/16 | 1844 | support/lualibs/lua-uca/Makefile +2021/09/16 | 18435 | support/latexindent/documentation/subsec-text-wrap.tex +2021/09/16 | 183790 | macros/luatex/generic/luamplib.zip +2021/09/16 | 1834704 | support/lualibs/lua-uca/lua-uca/lua-uca-ducet.lua +2021/09/16 | 18176 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma +2021/09/16 | 180121 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma +2021/09/16 | 180009 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma +2021/09/16 | 17980 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma +2021/09/16 | 178353 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma +2021/09/16 | 1713893 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma +2021/09/16 | 169241 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma +2021/09/16 | 1688 | support/latexindent/documentation/sec-conclusions-know-limitations.tex +2021/09/16 | 16883112 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2021/09/16 | 1664 | support/latexindent/documentation/logo.tex +2021/09/16 | 16597 | support/latexindent/documentation/subsubsec-environments-and-their-arguments.tex +2021/09/16 | 16412 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma +2021/09/16 | 16357 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma +2021/09/16 | 159578 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma +2021/09/16 | 1581 | support/lualibs/lua-uca/lua-uca-doc.tex +2021/09/16 | 1558 | support/latexindent/latexindent-module-installer.pl +2021/09/16 | 154805 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma +2021/09/16 | 154427 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma +2021/09/16 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2021/09/16 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2021/09/16 | 151188 | macros/luatex/generic/luamplib/luamplib.pdf +2021/09/16 | 1483 | support/latexindent/LatexIndent/DoubleBackSlash.pm +2021/09/16 | 1477 | support/latexindent/documentation/title.tex +2021/09/16 | 147372 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma +2021/09/16 | 1464201 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma +2021/09/16 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2021/09/16 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2021/09/16 | 1441 | support/latexindent/documentation/subsec-text-wrap-summary.tex +2021/09/16 | 14348 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma +2021/09/16 | 1421868 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma +2021/09/16 | 14050 | support/latexindent/documentation/subsec-commands-and-their-options.tex +2021/09/16 | 136821 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma +2021/09/16 | 136812 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma +2021/09/16 | 13605 | support/latexindent/documentation/appendices.tex +2021/09/16 | 1357114 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma +2021/09/16 | 1356285 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma +2021/09/16 | 13548 | support/latexindent/LatexIndent/Special.pm +2021/09/16 | 13465 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma +2021/09/16 | 1340930 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma +2021/09/16 | 133862 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma +2021/09/16 | 1301191 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma +2021/09/16 | 1291299 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma +2021/09/16 | 12881 | support/latexindent/LatexIndent/FileContents.pm +2021/09/16 | 12661 | support/latexindent/LatexIndent/Braces.pm +2021/09/16 | 1261068 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma +2021/09/16 | 1259727 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma +2021/09/16 | 124281 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma +2021/09/16 | 12302 | support/latexindent/LatexIndent/HiddenChildren.pm +2021/09/16 | 12024 | support/latexindent/documentation/sec-fine-tuning.tex +2021/09/16 | 119818 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma +2021/09/16 | 11976 | support/latexindent/documentation/subsec-remove-para-line-breaks.tex +2021/09/16 | 1169717 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma +2021/09/16 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini +2021/09/16 | 115349 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma +2021/09/16 | 112982 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma +2021/09/16 | 112087 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma +2021/09/16 | 109031 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma +2021/09/16 | 10859 | support/latexindent/documentation/sec-indent-config-and-settings.tex +2021/09/16 | 108300 | systems/texlive/tlnet/archive/texlive-scripts.r60514.tar.xz +2021/09/16 | 1082224 | systems/texlive/tlnet/archive/kpfonts-otf.r60515.tar.xz +2021/09/16 | 10802 | support/latexindent/LatexIndent/Heading.pm +2021/09/16 | 1077989 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma +2021/09/16 | 1054 | support/lualibs/lua-uca/LICENSE +2021/09/16 | 105221 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma +2021/09/16 | 10407 | support/lualibs/lua-uca/lua-uca/lua-uca-collator.lua +2021/09/16 | 10347 | support/latexindent/LatexIndent/Command.pm +2021/09/16 | 103400 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma +2021/09/16 | 103203 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma +2021/09/16 | 100624 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma +2021/09/16 | 1001116 | support/latexindent/documentation/latexindent.pdf 2021/09/15 | 95663 | macros/generic/unicode-data/GraphemeBreakProperty.txt -2021/09/15 | 95403 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-x64-2.9.tar.lzma -2021/09/15 | 94799 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-2.9.tar.lzma -2021/09/15 | 94311 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-2.9.tar.lzma 2021/09/15 | 9264 | macros/generic/unicode-data/README.md 2021/09/15 | 908344 | systems/texlive/tlnet/archive/tex4ht.r60512.tar.xz 2021/09/15 | 8950 | macros/generic/unicode-data/BidiBrackets.txt -2021/09/15 | 87777 | systems/win32/miktex/tm/packages/next/miktex-png-bin-x64-2.9.tar.lzma -2021/09/15 | 8769 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-x64-2.9.tar.lzma 2021/09/15 | 84688 | macros/generic/unicode-data/CaseFolding.txt -2021/09/15 | 83540 | systems/win32/miktex/tm/packages/next/miktex-bibtex8bit-bin-2.9.tar.lzma -2021/09/15 | 815242 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-x64-2.9.tar.lzma -2021/09/15 | 80450 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-x64-2.9.tar.lzma -2021/09/15 | 78774 | systems/win32/miktex/tm/packages/next/miktex-png-bin-2.9.tar.lzma -2021/09/15 | 77951 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-x64-2.9.tar.lzma -2021/09/15 | 7722 | systems/win32/miktex/tm/packages/next/miktex-md5-bin-2.9.tar.lzma -2021/09/15 | 76826 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-x64-2.9.tar.lzma -2021/09/15 | 75792 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-x64-2.9.tar.lzma -2021/09/15 | 744117 | systems/win32/miktex/tm/packages/next/miktex-pdftex-bin-2.9.tar.lzma -2021/09/15 | 74211 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-x64-2.9.tar.lzma -2021/09/15 | 73197 | systems/win32/miktex/tm/packages/next/miktex-fonts-bin-2.9.tar.lzma -2021/09/15 | 73148 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma -2021/09/15 | 72206 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-x64-2.9.tar.lzma -2021/09/15 | 71669 | systems/win32/miktex/tm/packages/next/miktex-freeglut-bin-2.9.tar.lzma 2021/09/15 | 7139 | macros/generic/unicode-data/load-unicode-xetex-classes.tex -2021/09/15 | 70649 | systems/win32/miktex/tm/packages/next/miktex-web-bin-x64-2.9.tar.lzma 2021/09/15 | 7054 | macros/generic/unicode-data/load-unicode-data.tex -2021/09/15 | 69914 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2021/09/15 | 681252 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-x64-2.9.tar.lzma -2021/09/15 | 6811724 | systems/texlive/tlnet/install-tl-unx.tar.gz -2021/09/15 | 68024 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-x64-2.9.tar.lzma +2021/09/15 | 6879 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2021/09/15 | 6784012 | systems/texlive/tlnet/archive/pst-mirror.doc.r60506.tar.xz -2021/09/15 | 67819 | systems/win32/miktex/tm/packages/next/miktex-bibtex-bin-2.9.tar.lzma -2021/09/15 | 67619 | systems/win32/miktex/tm/packages/next/miktex-lzma-bin-2.9.tar.lzma -2021/09/15 | 67483 | systems/win32/miktex/tm/packages/next/miktex-mpmcli-bin-2.9.tar.lzma 2021/09/15 | 6701 | fonts/kpfonts-otf/README.md 2021/09/15 | 66440 | fonts/kpfonts-otf/fonts/KpMono-Italic.otf -2021/09/15 | 65786 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-x64-2.9.tar.lzma -2021/09/15 | 65619 | systems/win32/miktex/tm/packages/next/miktex-web-bin-2.9.tar.lzma 2021/09/15 | 6548 | systems/texlive/tlnet/archive/pst-tools.r60507.tar.xz 2021/09/15 | 65136 | fonts/kpfonts-otf/fonts/KpMono-BoldItalic.otf -2021/09/15 | 64427 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-2.9.tar.lzma -2021/09/15 | 64185 | systems/win32/miktex/tm/packages/next/miktex-ps2pk-bin-2.9.tar.lzma -2021/09/15 | 63777 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-2.9.tar.lzma -2021/09/15 | 629399 | systems/win32/miktex/tm/packages/next/miktex-lcdf-typetools-bin-2.9.tar.lzma -2021/09/15 | 62787 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-x64-2.9.tar.lzma -2021/09/15 | 624656 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-x64-2.9.tar.lzma -2021/09/15 | 62228 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-x64-2.9.tar.lzma 2021/09/15 | 62152 | systems/texlive/tlnet/archive/siunitx.r60510.tar.xz -2021/09/15 | 61812 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-x64-2.9.tar.lzma -2021/09/15 | 615978 | systems/win32/miktex/tm/packages/files.csv.lzma -2021/09/15 | 615727 | systems/win32/miktex/tm/packages/next/files.csv.lzma -2021/09/15 | 60639 | systems/win32/miktex/tm/packages/next/miktex-mkfntmap-bin-2.9.tar.lzma -2021/09/15 | 60040 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin-x64.tar.lzma -2021/09/15 | 596931 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-x64-2.9.tar.lzma 2021/09/15 | 59052 | fonts/kpfonts-otf/fonts/KpMono-Regular.otf -2021/09/15 | 589844 | systems/win32/miktex/tm/packages/next/miktex-yap-bin-2.9.tar.lzma 2021/09/15 | 585385 | macros/generic/unicode-data.zip 2021/09/15 | 585368 | install/macros/generic/unicode-data.tds.zip 2021/09/15 | 57916 | fonts/kpfonts-otf/fonts/KpMono-Bold.otf -2021/09/15 | 57728 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-x64-2.9.tar.lzma -2021/09/15 | 57548 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-x64-2.9.tar.lzma -2021/09/15 | 57139 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin-x64.tar.lzma -2021/09/15 | 57011 | systems/win32/miktex/tm/packages/next/miktex-texify-bin-2.9.tar.lzma -2021/09/15 | 56686 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-x64-2.9.tar.lzma -2021/09/15 | 566529 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-x64-2.9.tar.lzma -2021/09/15 | 56515 | systems/win32/miktex/tm/packages/next/miktex-tdsutil-bin.tar.lzma -2021/09/15 | 56476 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-x64-2.9.tar.lzma -2021/09/15 | 56355 | systems/win32/miktex/tm/packages/next/miktex-ttf2pk2-bin-2.9.tar.lzma -2021/09/15 | 56317 | systems/win32/miktex/tm/packages/next/miktex-fmt-bin-2.9.tar.lzma -2021/09/15 | 55498 | systems/win32/miktex/tm/packages/next/miktex-xml2pmx-bin.tar.lzma -2021/09/15 | 54632 | systems/win32/miktex/tm/packages/next/miktex-cweb-bin-2.9.tar.lzma -2021/09/15 | 531850 | systems/win32/miktex/tm/packages/next/miktex-libressl-bin-2.9.tar.lzma -2021/09/15 | 52523 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-x64-2.9.tar.lzma -2021/09/15 | 51751 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-x64-2.9.tar.lzma -2021/09/15 | 51309 | systems/win32/miktex/tm/packages/next/miktex-cjkutils-bin-2.9.tar.lzma -2021/09/15 | 51201 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-x64-2.9.tar.lzma -2021/09/15 | 51112 | systems/win32/miktex/tm/packages/next/miktex-arctrl-bin-2.9.tar.lzma -2021/09/15 | 510588 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-x64-2.9.tar.lzma -2021/09/15 | 50395 | systems/win32/miktex/tm/packages/next/miktex-psutils-bin-2.9.tar.lzma -2021/09/15 | 50151 | systems/win32/miktex/tm/packages/next/miktex-bibarts-bin-2.9.tar.lzma -2021/09/15 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2021/09/15 | 4878 | support/TeX4ht/source/tex4ht-mathjax.tex -2021/09/15 | 483653 | systems/win32/miktex/tm/packages/next/miktex-harfbuzz-bin-2.9.tar.lzma -2021/09/15 | 48251 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-x64-2.9.tar.lzma 2021/09/15 | 480 | fonts/kpfonts-otf/tex/KpLight.fontspec -2021/09/15 | 476919 | systems/win32/miktex/tm/packages/next/miktex-log4cxx-bin-2.9.tar.lzma 2021/09/15 | 469 | fonts/kpfonts-otf/tex/KpRoman.fontspec -2021/09/15 | 46907 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-x64-2.9.tar.lzma -2021/09/15 | 461812 | systems/win32/miktex/tm/packages/next/miktex-doc.tar.lzma -2021/09/15 | 45970 | systems/win32/miktex/tm/packages/next/miktex-m-tx-bin-2.9.tar.lzma -2021/09/15 | 45905 | systems/win32/miktex/tm/packages/next/miktex-dvicopy-bin-2.9.tar.lzma 2021/09/15 | 458264 | fonts/kpfonts-otf/fonts/KpMath-Light.otf -2021/09/15 | 455 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2021/09/15 | 455 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2021/09/15 | 455 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2021/09/15 | 455 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc -2021/09/15 | 45311 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-x64-2.9.tar.lzma -2021/09/15 | 43427 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-x64-2.9.tar.lzma 2021/09/15 | 431712 | fonts/kpfonts-otf/fonts/KpMath-Regular.otf 2021/09/15 | 4305998 | fonts/kpfonts-otf.zip -2021/09/15 | 43028 | systems/win32/miktex/tm/packages/next/miktex-expat-bin-2.9.tar.lzma -2021/09/15 | 43003 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-x64-2.9.tar.lzma -2021/09/15 | 42891 | systems/win32/miktex/tm/packages/next/miktex-mtprint-bin-2.9.tar.lzma -2021/09/15 | 42712 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-x64-2.9.tar.lzma -2021/09/15 | 42387 | systems/win32/miktex/tm/packages/next/miktex-synctex-bin-2.9.tar.lzma -2021/09/15 | 41194 | systems/win32/miktex/tm/packages/next/miktex-dvipng-bin-2.9.tar.lzma -2021/09/15 | 40230 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin-x64.tar.lzma -2021/09/15 | 400148 | systems/texlive/tlnet/archive/texlive-scripts.doc.r60505.tar.xz -2021/09/15 | 392792 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-x64-2.9.tar.lzma -2021/09/15 | 39128 | systems/win32/miktex/tm/packages/next/miktex-zlib-bin-2.9.tar.lzma -2021/09/15 | 38139 | systems/win32/miktex/tm/packages/next/miktex-gsf2pk-bin-2.9.tar.lzma -2021/09/15 | 37806 | systems/win32/miktex/tm/packages/next/miktex-mthelp-bin-2.9.tar.lzma 2021/09/15 | 3750 | macros/generic/unicode-data/load-unicode-math-classes.tex -2021/09/15 | 37358 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin-x64.tar.lzma -2021/09/15 | 37241 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-x64-2.9.tar.lzma -2021/09/15 | 36628 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-x64-2.9.tar.lzma 2021/09/15 | 36066 | fonts/kpfonts-otf/doc/Kpfonts-OTF-Doc-French.ltx -2021/09/15 | 35692 | systems/win32/miktex/tm/packages/next/miktex-patgen-bin.tar.lzma -2021/09/15 | 35087 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-x64-2.9.tar.lzma -2021/09/15 | 34666 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-x64-2.9.tar.lzma -2021/09/15 | 345739 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-x64-2.9.tar.lzma -2021/09/15 | 33633 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-x64-2.9.tar.lzma -2021/09/15 | 33545 | systems/win32/miktex/tm/packages/next/miktex-upmendex-bin.tar.lzma -2021/09/15 | 330787 | systems/win32/miktex/tm/packages/next/miktex-cairo-bin-2.9.tar.lzma 2021/09/15 | 33040 | fonts/kpfonts-otf/doc/Kpfonts-OTF-Doc-English.ltx -2021/09/15 | 32673 | systems/win32/miktex/tm/packages/next/miktex-chktex-bin-2.9.tar.lzma -2021/09/15 | 325043 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-x64-2.9.tar.lzma 2021/09/15 | 32096 | systems/texlive/tlnet/archive/luaxml.r60511.tar.xz -2021/09/15 | 31620 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-x64-2.9.tar.lzma -2021/09/15 | 31536 | systems/win32/miktex/tm/packages/next/miktex-posix-bin-2.9.tar.lzma -2021/09/15 | 31352 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-x64-2.9.tar.lzma 2021/09/15 | 31288 | systems/texlive/tlnet/archive/nicematrix.r60509.tar.xz -2021/09/15 | 31231 | systems/win32/miktex/tm/packages/next/miktex-mspack-bin-2.9.tar.lzma -2021/09/15 | 312108 | systems/win32/miktex/tm/packages/next/miktex-xetex-bin-2.9.tar.lzma -2021/09/15 | 30825 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-x64-2.9.tar.lzma 2021/09/15 | 3038136 | systems/texlive/tlnet/archive/mlacls.doc.r60508.tar.xz -2021/09/15 | 30058 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-x64-2.9.tar.lzma -2021/09/15 | 29842 | systems/win32/miktex/tm/packages/next/miktex-axohelp-bin-2.9.tar.lzma -2021/09/15 | 295204 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-x64-2.9.tar.lzma 2021/09/15 | 2920 | systems/texlive/tlnet/archive/mlacls.r60508.tar.xz -2021/09/15 | 29037 | systems/win32/miktex/tm/packages/next/miktex-autosp-bin-2.9.tar.lzma 2021/09/15 | 289521 | support/TeX4ht/source/tex4ht-sty.tex 2021/09/15 | 287 | fonts/kpfonts-otf/tex/KpSans.fontspec -2021/09/15 | 284581 | systems/win32/miktex/tm/packages/next/miktex-dvipdfmx-bin-2.9.tar.lzma -2021/09/15 | 284024 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-x64-2.9.tar.lzma -2021/09/15 | 28391 | systems/win32/miktex/tm/packages/next/miktex-lacheck-bin-2.9.tar.lzma -2021/09/15 | 28180 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-x64-2.9.tar.lzma -2021/09/15 | 2796725 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-x64-2.9.tar.lzma 2021/09/15 | 278724 | fonts/kpfonts-otf/fonts/KpMath-Sans.otf -2021/09/15 | 27729 | systems/win32/miktex/tm/packages/next/miktex-uriparser-bin-2.9.tar.lzma -2021/09/15 | 27391 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-x64-2.9.tar.lzma -2021/09/15 | 27358 | systems/win32/miktex/tm/packages/next/miktex-makeindex-bin-2.9.tar.lzma -2021/09/15 | 27199 | systems/win32/miktex/tm/packages/next/miktex-bzip2-bin-2.9.tar.lzma -2021/09/15 | 2672611 | systems/win32/miktex/tm/packages/next/miktex-texworks-bin-2.9.tar.lzma 2021/09/15 | 26690 | macros/generic/unicode-data/BidiMirroring.txt -2021/09/15 | 263960 | systems/win32/miktex/tm/packages/next/miktex-console-bin-x64-2.9.tar.lzma -2021/09/15 | 258881 | systems/win32/miktex/tm/packages/next/miktex-freetype2-bin-2.9.tar.lzma -2021/09/15 | 25629506 | systems/texlive/tlnet/install-tl.zip -2021/09/15 | 25291 | systems/win32/miktex/tm/packages/next/miktex-teckit-bin-2.9.tar.lzma -2021/09/15 | 250266 | systems/win32/miktex/tm/packages/next/miktex-metapost-bin-2.9.tar.lzma -2021/09/15 | 25019 | systems/win32/miktex/tm/packages/next/miktex-findtexmf-bin-2.9.tar.lzma -2021/09/15 | 24995 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-x64-2.9.tar.lzma 2021/09/15 | 245067 | macros/generic/unicode-data/LineBreak.txt -2021/09/15 | 243426 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-x64-2.9.tar.lzma -2021/09/15 | 241812 | systems/win32/miktex/tm/packages/next/miktex-console-bin-2.9.tar.lzma -2021/09/15 | 240476 | systems/win32/miktex/tm/packages/miktex-zzdb1-2.9.tar.lzma -2021/09/15 | 240464 | systems/win32/miktex/tm/packages/next/miktex-zzdb1-2.9.tar.lzma 2021/09/15 | 24004 | macros/generic/unicode-data/BidiMirroring-5-1-0.txt -2021/09/15 | 23903 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-x64-2.9.tar.lzma -2021/09/15 | 23365 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-x64-2.9.tar.lzma -2021/09/15 | 2307884 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz -2021/09/15 | 22049 | systems/win32/miktex/tm/packages/next/miktex-fribidixetex-bin-2.9.tar.lzma 2021/09/15 | 21969 | macros/generic/unicode-data/ScriptExtensions.txt -2021/09/15 | 215249 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-x64-2.9.tar.lzma -2021/09/15 | 21225 | systems/win32/miktex/tm/packages/next/miktex-devnag-bin-2.9.tar.lzma -2021/09/15 | 20872016 | systems/texlive/tlnet/install-tl-windows.exe -2021/09/15 | 208048 | systems/win32/miktex/tm/packages/next/miktex-pmx-bin-2.9.tar.lzma +2021/09/15 | 21765 | macros/latex/contrib/mindflow/mindflow.dtx +2021/09/15 | 208084 | macros/latex/contrib/mindflow/mindflow.pdf 2021/09/15 | 20766 | fonts/kpfonts-otf/tex/kpfonts-otf.sty -2021/09/15 | 206606 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-x64-2.9.tar.lzma 2021/09/15 | 2033576 | systems/texlive/tlnet/archive/siunitx.doc.r60510.tar.xz -2021/09/15 | 202795 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-x64-2.9.tar.lzma -2021/09/15 | 20137 | systems/win32/miktex/tm/packages/next/miktex-popt-bin-2.9.tar.lzma -2021/09/15 | 2009904 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-x64-2.9.tar.lzma -2021/09/15 | 199733 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-2.9.tar.lzma 2021/09/15 | 198620 | fonts/kpfonts-otf/fonts/KpMath-Semibold.otf -2021/09/15 | 198169 | systems/win32/miktex/tm/packages/next/miktex-pixman-bin-2.9.tar.lzma 2021/09/15 | 196892 | fonts/kpfonts-otf/fonts/KpMath-Bold.otf -2021/09/15 | 196871 | systems/win32/miktex/tm/packages/next/miktex-metafont-bin-2.9.tar.lzma -2021/09/15 | 196741 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-x64-2.9.tar.lzma -2021/09/15 | 195637 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-x64-2.9.tar.lzma 2021/09/15 | 194713 | fonts/kpfonts-otf/doc/Kpfonts-OTF-Doc-French.pdf -2021/09/15 | 194382 | systems/win32/miktex/tm/packages/next/miktex-omegaware-bin-2.9.tar.lzma 2021/09/15 | 191952 | fonts/kpfonts-otf/doc/Kpfonts-OTF-Doc-English.pdf 2021/09/15 | 1897793 | macros/generic/unicode-data/UnicodeData.txt 2021/09/15 | 185 | fonts/kpfonts-otf/tex/KpMono.fontspec 2021/09/15 | 184037 | macros/generic/unicode-data/EastAsianWidth.txt 2021/09/15 | 1824908 | systems/texlive/tlnet/archive/nicematrix.doc.r60509.tar.xz -2021/09/15 | 18176 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-x64-2.9.tar.lzma 2021/09/15 | 181635 | macros/generic/unicode-data/Scripts.txt 2021/09/15 | 1814383 | fonts/kpfonts-otf/doc/unimath-kpfonts.pdf -2021/09/15 | 180121 | systems/win32/miktex/tm/packages/next/miktex-mpfr-bin-x64-2.9.tar.lzma -2021/09/15 | 180010 | systems/win32/miktex/tm/packages/next/miktex-curl-bin-2.9.tar.lzma -2021/09/15 | 17981 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-x64-2.9.tar.lzma -2021/09/15 | 178354 | systems/win32/miktex/tm/packages/next/miktex-mo-bin-2.9.tar.lzma -2021/09/15 | 1713894 | systems/win32/miktex/tm/packages/next/miktex-luatex-bin-2.9.tar.lzma -2021/09/15 | 169243 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-x64-2.9.tar.lzma -2021/09/15 | 16883112 | systems/texlive/tlnet/tlpkg/texlive.tlpdb 2021/09/15 | 16830 | macros/generic/unicode-data/SpecialCasing.txt 2021/09/15 | 16827 | fonts/kpfonts-otf/doc/unimath-kpfonts.ltx -2021/09/15 | 16412 | systems/win32/miktex/tm/packages/next/miktex-tex2xindy-bin-2.9.tar.lzma -2021/09/15 | 16358 | systems/win32/miktex/tm/packages/next/miktex-kpathsea-bin-2.9.tar.lzma 2021/09/15 | 162112 | support/TeX4ht/source/ChangeLog -2021/09/15 | 159579 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-x64-2.9.tar.lzma -2021/09/15 | 154806 | systems/win32/miktex/tm/packages/next/miktex-tex-bin-2.9.tar.lzma -2021/09/15 | 154425 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-x64-2.9.tar.lzma -2021/09/15 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 2021/09/15 | 153264 | systems/texlive/tlnet/archive/pst-tools.doc.r60507.tar.xz -2021/09/15 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2021/09/15 | 147371 | systems/win32/miktex/tm/packages/next/miktex-hunspell-bin-2.9.tar.lzma -2021/09/15 | 1464205 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-x64-2.9.tar.lzma -2021/09/15 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2021/09/15 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2021/09/15 | 14348 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-x64-2.9.tar.lzma 2021/09/15 | 142764 | fonts/kpfonts-otf/fonts/KpRoman-BoldItalic.otf -2021/09/15 | 1421868 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-x64-2.9.tar.lzma 2021/09/15 | 140444 | fonts/kpfonts-otf/fonts/KpRoman-SemiboldItalic.otf -2021/09/15 | 136822 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-x64-2.9.tar.lzma -2021/09/15 | 136817 | systems/win32/miktex/tm/packages/next/miktex-fontconfig-bin-2.9.tar.lzma 2021/09/15 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r60512.tar.xz 2021/09/15 | 13569 | macros/generic/unicode-data/MathClass-15.txt -2021/09/15 | 1356313 | systems/win32/miktex/tm/packages/miktex-zzdb2-2.9.tar.lzma -2021/09/15 | 1356189 | systems/win32/miktex/tm/packages/next/miktex-zzdb2-2.9.tar.lzma 2021/09/15 | 135332 | fonts/kpfonts-otf/fonts/KpRoman-LightItalic.otf -2021/09/15 | 13467 | systems/win32/miktex/tm/packages/next/miktex-zzip-bin-2.9.tar.lzma -2021/09/15 | 1340930 | systems/win32/miktex/tm/packages/next/miktex-runtime-bin-2.9.tar.lzma -2021/09/15 | 133864 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-x64-2.9.tar.lzma 2021/09/15 | 132992 | fonts/kpfonts-otf/fonts/KpRoman-Italic.otf 2021/09/15 | 132232 | fonts/kpfonts-otf/fonts/KpRoman-Bold.otf 2021/09/15 | 131128 | fonts/kpfonts-otf/fonts/KpRoman-Regular.otf 2021/09/15 | 130476 | fonts/kpfonts-otf/fonts/KpRoman-Light.otf 2021/09/15 | 130164 | macros/generic/unicode-data/PropList.txt -2021/09/15 | 1301192 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-x64-2.9.tar.lzma 2021/09/15 | 129480 | fonts/kpfonts-otf/fonts/KpRoman-Semibold.otf -2021/09/15 | 1291301 | systems/win32/miktex/tm/packages/next/miktex-dvisvgm-bin-2.9.tar.lzma -2021/09/15 | 1259753 | systems/win32/miktex/tm/packages/miktex-zzdb3-2.9.tar.lzma -2021/09/15 | 1259692 | systems/win32/miktex/tm/packages/next/miktex-zzdb3-2.9.tar.lzma -2021/09/15 | 124282 | systems/win32/miktex/tm/packages/next/miktex-mktex-bin-2.9.tar.lzma 2021/09/15 | 123412 | systems/texlive/tlnet/archive/luaxml.doc.r60511.tar.xz 2021/09/15 | 12192 | systems/texlive/tlnet/archive/pst-mirror.r60506.tar.xz 2021/09/15 | 1210048 | systems/texlive/tlnet/archive/tex4ht.source.r60512.tar.xz -2021/09/15 | 119818 | systems/win32/miktex/tm/packages/next/miktex-dvips-bin-2.9.tar.lzma -2021/09/15 | 1169718 | systems/win32/miktex/tm/packages/next/miktex-poppler-bin-2.9.tar.lzma -2021/09/15 | 1153 | systems/win32/miktex/tm/packages/next/pr.ini -2021/09/15 | 115351 | systems/win32/miktex/tm/packages/next/miktex-gregorio-bin-x64-2.9.tar.lzma -2021/09/15 | 112984 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-x64-2.9.tar.lzma -2021/09/15 | 112087 | systems/win32/miktex/tm/packages/next/miktex-gd-bin-x64-2.9.tar.lzma 2021/09/15 | 111128 | fonts/kpfonts-otf/fonts/KpSans-BoldItalic.otf 2021/09/15 | 111088 | fonts/kpfonts-otf/fonts/KpSans-Italic.otf 2021/09/15 | 109396 | macros/generic/unicode-data/emoji-data.txt -2021/09/15 | 109032 | systems/win32/miktex/tm/packages/next/miktex-jpeg-bin-x64-2.9.tar.lzma -2021/09/15 | 108276 | systems/texlive/tlnet/archive/texlive-scripts.r60505.tar.xz -2021/09/15 | 1077990 | systems/win32/miktex/tm/packages/next/miktex-asymptote-bin-x64-2.9.tar.lzma 2021/09/15 | 107080 | systems/texlive/tlnet/archive/siunitx.source.r60510.tar.xz 2021/09/15 | 107025 | macros/generic/unicode-data/WordBreakProperty.txt 2021/09/15 | 105736 | systems/texlive/tlnet/archive/nicematrix.source.r60509.tar.xz -2021/09/15 | 105223 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma -2021/09/15 | 103400 | systems/win32/miktex/tm/packages/next/miktex-lua53-bin-x64-2.9.tar.lzma -2021/09/15 | 103201 | systems/win32/miktex/tm/packages/next/miktex-mfware-bin-x64-2.9.tar.lzma 2021/09/15 | 103124 | fonts/kpfonts-otf/fonts/KpSans-Bold.otf 2021/09/15 | 102540 | fonts/kpfonts-otf/fonts/KpSans-Regular.otf 2021/09/15 | 10080 | systems/texlive/tlnet/archive/mlacls.source.r60508.tar.xz -2021/09/15 | 100625 | systems/win32/miktex/tm/packages/next/miktex-epstopdf-bin-2.9.tar.lzma 2021/09/14 | 996 | macros/latex/contrib/siunitx/README.md 2021/09/14 | 98475 | macros/latex/contrib/siunitx/siunitx-unit.dtx 2021/09/14 | 9617 | macros/luatex/generic/luaxml/luaxml-transform.lua @@ -285,7 +395,6 @@ 2021/09/14 | 8798 | macros/latex/contrib/siunitx/siunitx-command.dtx 2021/09/14 | 7092245 | graphics/pstricks/contrib/pst-mirror/doc/pst-mirror-doc.pdf 2021/09/14 | 6951918 | graphics/pstricks/contrib/pst-mirror.zip -2021/09/14 | 6751 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2021/09/14 | 6452 | systems/texlive/tlnet/archive/collection-latexextra.r60498.tar.xz 2021/09/14 | 637245 | macros/latex/contrib/siunitx/siunitx.pdf 2021/09/14 | 59060 | macros/latex/contrib/siunitx/CHANGELOG.md @@ -364,6 +473,7 @@ 2021/09/14 | 1230 | macros/luatex/generic/luaxml/luaxml-stack.lua 2021/09/14 | 121120 | macros/latex/contrib/siunitx/siunitx-number.dtx 2021/09/14 | 118178 | macros/luatex/generic/luaxml/luaxml.pdf +2021/09/14 | 117834088 | macros/context/latest/cont-tmf.zip 2021/09/14 | 1155 | macros/luatex/generic/luaxml/README 2021/09/14 | 11449 | graphics/pstricks/contrib/pst-mirror/doc/createEPS/xb.eps 2021/09/14 | 11332 | macros/luatex/generic/luaxml/luaxml-mod-handler.lua @@ -504,7 +614,6 @@ 2021/09/13 | 1207 | macros/latex/contrib/crumbs/README.md 2021/09/13 | 1193139 | systems/win32/miktex/tm/packages/njuthesis__doc.tar.lzma 2021/09/13 | 1181 | macros/latex/contrib/clicks/README.md -2021/09/13 | 117833397 | macros/context/latest/cont-tmf.zip 2021/09/13 | 11598 | systems/win32/miktex/tm/packages/mcexam.tar.lzma 2021/09/13 | 11440 | systems/win32/miktex/tm/packages/csvsimple.tar.lzma 2021/09/13 | 11396 | systems/texlive/tlnet/archive/mcexam.r60481.tar.xz @@ -621,10 +730,7 @@ 2021/09/12 | 23420 | fonts/noto/latex/TS1NotoSans-LF.fd 2021/09/12 | 2228 | systems/texlive/tlnet/archive/pst-dart.r60476.tar.xz 2021/09/12 | 222389 | macros/latex/contrib/mcexam/mcexam.pdf -2021/09/12 | 219394 | macros/latex/contrib/mindflow.zip -2021/09/12 | 21456 | macros/latex/contrib/mindflow/mindflow.dtx 2021/09/12 | 2136901 | fonts/libertinust1math/doc/LibertinusT1Math-doc.pdf -2021/09/12 | 207665 | macros/latex/contrib/mindflow/mindflow.pdf 2021/09/12 | 18913 | fonts/newpx/README 2021/09/12 | 18612 | fonts/noto/latex/T2CNotoSansMono-TOsF.fd 2021/09/12 | 18612 | fonts/noto/latex/T2BNotoSansMono-TOsF.fd @@ -739,41 +845,3 @@ 2021/09/10 | 11484795 | graphics/pstricks/contrib/pstricks-add.zip 2021/09/10 | 1115 | macros/unicodetex/latex/uwa-letterhead/example.tex 2021/09/10 | 1041 | macros/unicodetex/latex/uwa-letterhead/README -2021/09/09 | 9920 | systems/texlive/tlnet/archive/bithesis.source.r60452.tar.xz -2021/09/09 | 893252 | systems/texlive/tlnet/archive/hecthese.doc.r60455.tar.xz -2021/09/09 | 8834 | macros/latex/contrib/csvsimple/CHANGES.md -2021/09/09 | 810667 | macros/latex/contrib/csvsimple/csvsimple-legacy.pdf -2021/09/09 | 7964 | macros/latex/contrib/csvsimple/csvsimple.tex -2021/09/09 | 75627 | macros/latex/contrib/csvsimple/csvsimple-example.pdf -2021/09/09 | 7420 | systems/texlive/tlnet/archive/ejpecp.source.r60454.tar.xz -2021/09/09 | 71390 | macros/latex/contrib/csvsimple/csvsimple-legacy.tex -2021/09/09 | 654832 | macros/latex/contrib/nicematrix/nicematrix.dtx -2021/09/09 | 5708 | systems/texlive/tlnet/archive/ejpecp.r60454.tar.xz -2021/09/09 | 476252 | macros/latex/contrib/nicematrix/nicematrix-french.pdf -2021/09/09 | 41531 | macros/latex/contrib/csvsimple/csvsimple-l3.sty -2021/09/09 | 4109 | macros/latex/contrib/csvsimple/csvsimple-doc.sty -2021/09/09 | 4084 | systems/texlive/tlnet/archive/bithesis.r60452.tar.xz -2021/09/09 | 4020 | macros/latex/contrib/csvsimple/csvsimple-example.tex -2021/09/09 | 3980 | systems/texlive/tlnet/archive/hecthese.r60455.tar.xz -2021/09/09 | 309079 | macros/latex/contrib/csvsimple/csvsimple.pdf -2021/09/09 | 30608 | systems/texlive/tlnet/archive/hecthese.source.r60455.tar.xz -2021/09/09 | 2908 | macros/latex/contrib/csvsimple/README.md -2021/09/09 | 288 | macros/latex/contrib/csvsimple/gradesort.xml -2021/09/09 | 284700 | systems/texlive/tlnet/archive/ejpecp.doc.r60454.tar.xz -2021/09/09 | 259 | macros/latex/contrib/csvsimple/transform.xml -2021/09/09 | 256088 | systems/texlive/tlnet/archive/bithesis.doc.r60452.tar.xz -2021/09/09 | 25512 | macros/latex/contrib/csvsimple/csvsimple-legacy.sty -2021/09/09 | 238 | macros/latex/contrib/csvsimple/csvsimple-example.csv -2021/09/09 | 229 | macros/latex/contrib/csvsimple/namesort.xml -2021/09/09 | 227 | macros/latex/contrib/csvsimple/amountsort.xml -2021/09/09 | 2112778 | macros/latex/contrib/csvsimple.zip -2021/09/09 | 2110103 | install/macros/latex/contrib/csvsimple.tds.zip -2021/09/09 | 176 | macros/latex/contrib/csvsimple/matriculationsort.xml -2021/09/09 | 176512 | macros/latex/contrib/nicematrix/nicematrix-french.tex -2021/09/09 | 1721 | macros/latex/contrib/csvsimple/csvsimple.sty -2021/09/09 | 166 | macros/latex/contrib/csvsimple/catsort.xml -2021/09/09 | 1387232 | macros/latex/contrib/nicematrix/nicematrix.pdf -2021/09/09 | 135 | macros/latex/contrib/csvsimple/encoding.xml -2021/09/09 | 127249 | macros/latex/contrib/csvsimple/csvsimple-title.png -2021/09/09 | 1069621 | macros/latex/contrib/csvsimple/csvsimple-l3.pdf -2021/09/09 | 100618 | macros/latex/contrib/csvsimple/csvsimple-l3.tex diff --git a/macros/latex/contrib/mindflow/mindflow.dtx b/macros/latex/contrib/mindflow/mindflow.dtx index 55c6e674a3..b8f60fe220 100644 --- a/macros/latex/contrib/mindflow/mindflow.dtx +++ b/macros/latex/contrib/mindflow/mindflow.dtx @@ -18,7 +18,7 @@ %\NeedsTeXFormat{LaTeX2e} %\ProvidesPackage{mindflow} %<*package> - [2021/09/12 mindflow environment] + [2021/09/15 mindflow environment] % % %<*driver> @@ -63,7 +63,7 @@ {linenumbers,nolinenumbers,mindflowLeft,mindflowRight,mindflowTextFont,mindflowNumFont,mindflowMarkerFont,mindflowLineHeight,setlength,colorlet,color, RequirePackage,SetupKeyvalOptions,DeclareBoolOption,ProcessKeyvalOptions,PassOptionsToPackage, PackageWarning,MessageBreak, - if@mindflow@twocolumn,@mindflow@incolumntrue,if@mindflow@linenumber,@mindflow@leftlinenumbertrue,if@mindflow@on,if@mindflow@off,@mindflow@offfalse,if@mindflow@incolumn,if@mindflow@leftlinenumber,if@mindflow@rightlinenumber,if@mindflow@leftmarker,if@mindflow@rightmarker,if@mindflow@nonbreakable, + @mindflow@incolumntrue,if@mindflow@linenumber,@mindflow@leftlinenumbertrue,if@mindflow@on,if@mindflow@off,@mindflow@offfalse,if@mindflow@incolumn,if@mindflow@leftlinenumber,if@mindflow@rightlinenumber,if@mindflow@leftmarker,if@mindflow@rightmarker,if@mindflow@nonbreakable, mindflow@parindent,mindflow@parskip, ifLNturnsON,LNturnsONtrue,LNturnsONfalse,ifLineNumbers, mindflowset, @@ -71,6 +71,9 @@ mindflowON,endmindflowON,mindflowOFF,endmindflowOFF, mfSepLine,makeLineNumber,LineNumber, mindflow@makeLineNumber,LocallyStopLineNumbers,ResumeLineNumbers, + if@twocolumn, + ifICturnsON,ICturnsONtrue,ICturnsONfalse,AutoIncolumn,ResumeIncolumn, + newtcolorbox, ifdefined,linenomathpatch,cspreto,csappto,patchcmd,linenomathpatchAMS,linenomathAMS,linenomathWithnumbers,linenomath,endlinenomath,linenomathNonumbers,linenopenalty, define@key,setkeys, nowidow, @@ -79,7 +82,7 @@ \lstnewenvironment{code*}% {\setkeys{lst}{columns=fullflexible,keepspaces=true}}{} \lstnewenvironment{code}% -{\setkeys{lst}{columns=fullflexible,keepspaces=true,numbers=left,numberstyle=\scriptsize, stepnumber=1, numbersep=5pt,lastline=253}}{} +{\setkeys{lst}{columns=fullflexible,keepspaces=true,numbers=left,numberstyle=\scriptsize, stepnumber=1, numbersep=5pt,lastline=263}}{} \EnableCrossrefs \CodelineIndex \RecordChanges @@ -125,7 +128,7 @@ %<*example> % \fi \begin{code*} - \usepackage{mindflow} +\usepackage{mindflow} \end{code*} % \iffalse % @@ -136,12 +139,12 @@ % boolean optional, like \verb|off=false|): % % \begin{tabular}{ll} -% \verb|linenumber| & Same as \verb|leftlinenumber|\\ +% \verb|linenumber|\hspace{5em} & Same as \verb|leftlinenumber|\\ % \verb|leftlinenumber| & Enable left line numbers\\ % \verb|rightlinenumber| & Enable right line numbers\\ % \verb|leftmarker| & Enable left marker, by default it is a ``\verb|*|''\\ % \verb|rightmarker| & Enable right marker, by default it is a ``\verb|*|''\\ -% \verb|incolumn| or \verb|twocolumn| & The separation line would fit in the column \\&(\emph{automatically applied in two-column documents})\\ +% \verb|incolumn| & The separation line would fit in the column \\&(\emph{automatically applied in two-column documents})\\ % \verb|off|, \verb|on| & Turn the \verb|mindflow| environments \emph{off} or \emph{on} % \end{tabular} % @@ -154,9 +157,9 @@ %<*example> % \fi \begin{code*} - \begin{mindflow} - (*{\normalfont\meta{text}}*) - \end{mindflow} +\begin{mindflow} + (*{\normalfont\meta{text}}*) +\end{mindflow} \end{code*} % \iffalse % @@ -254,7 +257,7 @@ %<*example> % \fi \begin{code*} - \PassOptionsToPackage{mathlines}{lineno} +\PassOptionsToPackage{mathlines}{lineno} \end{code*} % \iffalse % @@ -353,7 +356,7 @@ % % \begin{itemize} % \item There is no absolute guarantee that the separation lines will not fall alone at the top or bottom of the page, though great effort has been made to reduce the occurrence of such situation. -% \item The \textsf{tcolorbox} version doesn't support line numbering quite well, especially for displayed equations. This is due to the usage of \verb|internallinenumbers|. +% \item The \textsf{nonbreakable} version doesn't support line numbering quite well, especially for displayed equations. This is due to the usage of \verb|internallinenumbers|. % \end{itemize} % % \StopEventually{} @@ -375,7 +378,6 @@ \DeclareBoolOption[false]{linenumber} % Left line numbers \DeclareBoolOption[false]{leftlinenumber} % Left line numbers \DeclareBoolOption[false]{rightlinenumber} % Right line numbers -\DeclareBoolOption[false]{twocolumn} % Two column \DeclareBoolOption[false]{incolumn} % Separation line fits in column \DeclareBoolOption[false]{nonbreakable} % Use the tcolorbox version @@ -384,9 +386,6 @@ \if@mindflow@on \@mindflow@offfalse \fi -\if@mindflow@twocolumn - \@mindflow@incolumntrue -\fi \if@mindflow@linenumber \@mindflow@leftlinenumbertrue \fi @@ -423,6 +422,13 @@ \ifLineNumbers\LNturnsONtrue\fi\nolinenumbers} \def\ResumeLineNumbers{\ifLNturnsON\linenumbers\fi} +\newif\ifICturnsON +\def\AutoIncolumn{\ICturnsONfalse% + \if@mindflow@incolumn\ICturnsONtrue\fi% + \if@twocolumn\@mindflow@incolumntrue\fi% +} +\def\ResumeIncolumn{\ifICturnsON\@mindflow@incolumntrue\fi} + \newcounter{recordLN} \newcounter{mfLN} \setcounter{mfLN}{1} @@ -471,6 +477,7 @@ \medskip% \setcounter{recordLN}{\value{linenumber}}% \setcounter{linenumber}{\value{mfLN}}% + \AutoIncolumn% \mfSepLine% \normalfont\mindflowTextFont\color{mindflowText}% \linenumbers% @@ -482,6 +489,7 @@ \mfSepLine% \setcounter{mfLN}{\value{linenumber}}% \setcounter{linenumber}{\value{recordLN}}% + \ResumeIncolumn% \medskip% } @@ -492,31 +500,43 @@ \RequirePackage{tcolorbox} \newlength{\mindflow@parindent} \newlength{\mindflow@parskip} +\newtcolorbox{mindflow@nonbreakable}[1]{ + enhanced jigsaw, + colback=mindflowBackground,colframe=mindflowLine, + leftrule=0pt, rightrule=0pt, sharp corners, + toprule=\mindflowLineHeight, bottomrule=\mindflowLineHeight, + boxsep=0pt, top=.3\baselineskip, bottom=.3\baselineskip, + fontupper=\mindflowTextFont,extras={colupper={mindflowText}}, + before upper={ + \setlength{\parindent}{\mindflow@parindent}% + \setlength{\parskip}{\mindflow@parskip}% + },#1 +} \def\mindflowON{% - \LNturnsONfalse% - \ifLineNumbers\LNturnsONtrue\fi\nolinenumbers% + \LocallyStopLineNumbers% + \setcounter{recordLN}{\value{linenumber}}% + \setcounter{linenumber}{\value{mfLN}}% + \AutoIncolumn% \setlength{\mindflow@parindent}{\parindent}% \setlength{\mindflow@parskip}{\parskip}% - \begin{tcolorbox}[enhanced jigsaw, - colback=mindflowBackground,colframe=mindflowLine, - leftrule=0pt, rightrule=0pt, sharp corners, - toprule=\mindflowLineHeight, bottomrule=\mindflowLineHeight, - boxsep=0pt, top=.3\baselineskip, bottom=.3\baselineskip, - grow to left by=\linewidth,left=\linewidth, - grow to right by=\linewidth,right=\linewidth, - fontupper=\mindflowTextFont,extras={colupper={mindflowText}}, - before upper={ - \setlength{\parindent}{\mindflow@parindent}% - \setlength{\parskip}{\mindflow@parskip}% - }] + \if@mindflow@incolumn% + \begin{mindflow@nonbreakable}{left=0pt,right=0pt} + \else% + \begin{mindflow@nonbreakable}{% + grow to left by=\linewidth,left=\linewidth, + grow to right by=\linewidth,right=\linewidth} + \fi \begin{internallinenumbers}% \let\makeLineNumber\mindflow@makeLineNumber% } \def\endmindflowON{% \nowidow[3]% \end{internallinenumbers}% - \end{tcolorbox}\par% - \ifLNturnsON\linenumbers\fi% + \end{mindflow@nonbreakable}\par% + \ResumeLineNumbers% + \setcounter{mfLN}{\value{linenumber}}% + \setcounter{linenumber}{\value{recordLN}}% + \ResumeIncolumn% } \fi @@ -553,10 +573,9 @@ } \define@key{mindflow}{leftmarker}[true]{\csname @mindflow@leftmarker#1\endcsname} \define@key{mindflow}{rightmarker}[true]{\csname @mindflow@rightmarker#1\endcsname} -\define@key{mindflow}{linenumber}[true]{\csname @mindflow@linenumber#1\endcsname} +\define@key{mindflow}{linenumber}[true]{\csname @mindflow@leftlinenumber#1\endcsname} \define@key{mindflow}{leftlinenumber}[true]{\csname @mindflow@leftlinenumber#1\endcsname} \define@key{mindflow}{rightlinenumber}[true]{\csname @mindflow@rightlinenumber#1\endcsname} -\define@key{mindflow}{twocolumn}[true]{\csname @mindflow@twocolumn#1\endcsname} \define@key{mindflow}{incolumn}[true]{\csname @mindflow@incolumn#1\endcsname} \define@key{mindflow}{linecolor}{\colorlet{mindflowLine}{#1}} \define@key{mindflow}{textcolor}{\colorlet{mindflowText}{#1}} @@ -577,12 +596,6 @@ \define@key{mindflow}{lineheight}{\setlength{\mindflowLineHeight}{#1}} \newcommand{\mindflowset}[1]{% \setkeys{mindflow}{#1}% - \if@mindflow@twocolumn% - \@mindflow@incolumntrue% - \fi% - \if@mindflow@linenumber% - \@mindflow@leftlinenumbertrue% - \fi% } %%================================ diff --git a/macros/latex/contrib/mindflow/mindflow.pdf b/macros/latex/contrib/mindflow/mindflow.pdf index 925f1bf7bf..0da7c9b6c1 100644 Binary files a/macros/latex/contrib/mindflow/mindflow.pdf and b/macros/latex/contrib/mindflow/mindflow.pdf differ diff --git a/macros/luatex/generic/luamplib/NEWS b/macros/luatex/generic/luamplib/NEWS index 293da0dc6b..f62f86fd6d 100644 --- a/macros/luatex/generic/luamplib/NEWS +++ b/macros/luatex/generic/luamplib/NEWS @@ -1,5 +1,8 @@ History of the luamplib package +2021/09/16 2.21.0 + * allow empty string in textext() + 2021/08/03 2.20.9 * initialize every mplib instance with random integer seed values diff --git a/macros/luatex/generic/luamplib/luamplib.dtx b/macros/luatex/generic/luamplib/luamplib.dtx index 7257505dd5..a1ee352b36 100644 --- a/macros/luatex/generic/luamplib/luamplib.dtx +++ b/macros/luatex/generic/luamplib/luamplib.dtx @@ -85,7 +85,7 @@ See source file '\inFileName' for licencing and contact information. %<*driver> \NeedsTeXFormat{LaTeX2e} \ProvidesFile{luamplib.drv}% - [2021/08/03 v2.20.9 Interface for using the mplib library]% + [2021/09/16 v2.21.0 Interface for using the mplib library]% \documentclass{ltxdoc} \usepackage{metalogo,multicol,mdwlist,fancyvrb,xspace} \usepackage[x11names]{xcolor} @@ -153,7 +153,7 @@ See source file '\inFileName' for licencing and contact information. % \author{Hans Hagen, Taco Hoekwater, Elie Roux, Philipp Gesang and Kim Dohyun\\ % Maintainer: LuaLaTeX Maintainers --- % Support: \email{lualatex-dev@tug.org}} -% \date{2021/08/03 v2.20.9} +% \date{2021/09/16 v2.21.0} % % \maketitle % @@ -413,8 +413,8 @@ See source file '\inFileName' for licencing and contact information. luatexbase.provides_module { name = "luamplib", - version = "2.20.9", - date = "2021/08/03", + version = "2.21.0", + date = "2021/09/16", description = "Lua package to typeset Metapost with LuaTeX's MPLib.", } @@ -1057,8 +1057,8 @@ local function mpprint(buffer,...) end function luamplib.runscript (code) - local id, str = code:match("(.-){(.+)}") - if id and str and str ~= "" then + local id, str = code:match("(.-){(.*)}") + if id and str then local f = runscript_funcs[id] if f then local t = f(str) @@ -1172,7 +1172,8 @@ extra_beginfig := extra_beginfig & " let VerbatimTeX = normalVerbatimTeX;"& "runscript(" &ditto& "luamplib.in_the_fig=true" &ditto& ");"; extra_endfig := extra_endfig & " let VerbatimTeX = specialVerbatimTeX;"& "runscript(" &ditto& - "luamplib.in_the_fig=false luamplib.figid=luamplib.figid+1" &ditto& ");"; + "if luamplib.in_the_fig then luamplib.figid=luamplib.figid+1 end "& + "luamplib.in_the_fig=false" &ditto& ");"; ]] luamplib.legacyverbatimtexpreamble = legacyverbatimtexpreamble @@ -2002,7 +2003,7 @@ luamplib.colorconverter = colorconverter \else \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{luamplib} - [2021/08/03 v2.20.9 mplib package for LuaTeX] + [2021/09/16 v2.21.0 mplib package for LuaTeX] \ifx\newluafunction\@undefined \input ltluatex \fi diff --git a/macros/luatex/generic/luamplib/luamplib.pdf b/macros/luatex/generic/luamplib/luamplib.pdf index 9230176d04..c785dbca43 100644 Binary files a/macros/luatex/generic/luamplib/luamplib.pdf and b/macros/luatex/generic/luamplib/luamplib.pdf differ diff --git a/support/latexindent/LatexIndent/AlignmentAtAmpersand.pm b/support/latexindent/LatexIndent/AlignmentAtAmpersand.pm index 479fb14a46..c015e08a87 100644 --- a/support/latexindent/LatexIndent/AlignmentAtAmpersand.pm +++ b/support/latexindent/LatexIndent/AlignmentAtAmpersand.pm @@ -23,7 +23,7 @@ use Exporter qw/import/; use List::Util qw/max min sum/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::HiddenChildren qw/%familyTree/; @@ -48,8 +48,8 @@ sub find_aligned_block{ # 5 & & 6 & \\ # %* \end{tabular} $logger->trace('*Searching for ALIGNED blocks marked by comments')if($is_t_switch_active); - $logger->trace(Dumper(\%{$masterSettings{lookForAlignDelims}})) if($is_tt_switch_active); - while( my ($alignmentBlock,$yesno)= each %{$masterSettings{lookForAlignDelims}}){ + $logger->trace(Dumper(\%{$mainSettings{lookForAlignDelims}})) if($is_tt_switch_active); + while( my ($alignmentBlock,$yesno)= each %{$mainSettings{lookForAlignDelims}}){ if(ref $yesno eq "HASH"){ $yesno = (defined ${$yesno}{delims} ) ? ${$yesno}{delims} : 1; } @@ -1362,7 +1362,7 @@ sub double_back_slash_else{ # check for existence of \\ statement, and associated line break information $self->check_for_else_statement( # else name regexp - elseNameRegExp=>qr/${${$masterSettings{fineTuning}}{modifyLineBreaks}}{doubleBackSlash}/, + elseNameRegExp=>qr/${${$mainSettings{fineTuning}}{modifyLineBreaks}}{doubleBackSlash}/, # else statements name: note that DBS stands for 'Double Back Slash' ElseStartsOnOwnLine=>"DBSStartsOnOwnLine", # end statements diff --git a/support/latexindent/LatexIndent/Arguments.pm b/support/latexindent/LatexIndent/Arguments.pm index 385a3fcb47..028f0ec842 100644 --- a/support/latexindent/LatexIndent/Arguments.pm +++ b/support/latexindent/LatexIndent/Arguments.pm @@ -19,7 +19,7 @@ use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_m_switch_active $is_t_switch_active $is_tt_switch_active/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::LogFile qw/$logger/; use Data::Dumper; use Exporter qw/import/; @@ -56,7 +56,7 @@ sub find_opt_mand_arguments{ my $objectDependentOptAndMandRegExp = (defined ${$self}{optAndMandArgsRegExp} ? ${$self}{optAndMandArgsRegExp} : $optAndMandRegExpWithLineBreaks); if(${$self}{body} =~ m/^$objectDependentOptAndMandRegExp\h*($trailingCommentRegExp)?/){ - $logger->trace("Optional/Mandatory arguments".(${$masterSettings{commandCodeBlocks}}{roundParenthesesAllowed}?" (possibly round Parentheses)":q())." found in ${$self}{name}: $1") if $is_t_switch_active; + $logger->trace("Optional/Mandatory arguments".(${$mainSettings{commandCodeBlocks}}{roundParenthesesAllowed}?" (possibly round Parentheses)":q())." found in ${$self}{name}: $1") if $is_t_switch_active; # create a new Arguments object # The arguments object is a little different to most @@ -179,7 +179,7 @@ sub find_opt_mand_arguments{ ${$self}{begin} =~ s/\h*$//s; } elsif (${${${$arguments}{children}}[0]}{BeginStartsOnOwnLine}==3) { $logger->trace("Adding a blank line immediately ${$self}{begin} ($BeginStringLogFile==3)") if $is_t_switch_active; - $trailingCharacterToken = "\n".(${$masterSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:q()); + $trailingCharacterToken = "\n".(${$mainSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:q()); } # modification @@ -243,16 +243,16 @@ sub get_arguments_regexp{ my $lineBreaksAtEnd = (defined ${input}{mode} and ${input}{mode} eq 'lineBreaksAtEnd')?'\R*':q(); # arguments Before, by default, includes beamer special and numbered arguments, for example #1 #2, etc - my $argumentsBefore = qr/${${$masterSettings{fineTuning}}{arguments}}{before}/; - my $argumentsBetween = qr/${${$masterSettings{fineTuning}}{arguments}}{between}/; + my $argumentsBefore = qr/${${$mainSettings{fineTuning}}{arguments}}{before}/; + my $argumentsBetween = qr/${${$mainSettings{fineTuning}}{arguments}}{between}/; # commands are allowed strings between arguments, e.g node, decoration, etc, specified in stringsAllowedBetweenArguments my $stringsBetweenArguments = q(); if(defined ${input}{stringBetweenArguments} and ${input}{stringBetweenArguments}==1 - and ref(${$masterSettings{commandCodeBlocks}}{stringsAllowedBetweenArguments}) eq "ARRAY"){ + and ref(${$mainSettings{commandCodeBlocks}}{stringsAllowedBetweenArguments}) eq "ARRAY"){ # grab the strings allowed between arguments - my @stringsAllowedBetweenArguments = @{${$masterSettings{commandCodeBlocks}}{stringsAllowedBetweenArguments}}; + my @stringsAllowedBetweenArguments = @{${$mainSettings{commandCodeBlocks}}{stringsAllowedBetweenArguments}}; $logger->trace("*Looping through array for commandCodeBlocks->stringsAllowedBetweenArguments") if $is_t_switch_active ; @@ -404,7 +404,7 @@ sub comma_else{ # check for existence of \\ statement, and associated line break information $self->check_for_else_statement( # else name regexp - elseNameRegExp=>qr/${${$masterSettings{fineTuning}}{modifyLineBreaks}}{comma}/, + elseNameRegExp=>qr/${${$mainSettings{fineTuning}}{modifyLineBreaks}}{comma}/, # else statements name ElseStartsOnOwnLine=>"CommaStartsOnOwnLine", # end statements diff --git a/support/latexindent/LatexIndent/BackUpFileProcedure.pm b/support/latexindent/LatexIndent/BackUpFileProcedure.pm index a0374552b4..e74b3fd75f 100644 --- a/support/latexindent/LatexIndent/BackUpFileProcedure.pm +++ b/support/latexindent/LatexIndent/BackUpFileProcedure.pm @@ -16,7 +16,7 @@ package LatexIndent::BackUpFileProcedure; # For all communication, please visit: https://github.com/cmhughes/latexindent.pl use strict; use warnings; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/%switches/; use LatexIndent::LogFile qw/$logger/; use File::Basename; # to get the filename and directory path @@ -37,7 +37,7 @@ sub create_back_up_file{ my $fileName = ${$self}{fileName}; # grab the file extension preferences - my %fileExtensionPreference= %{$masterSettings{fileExtensionPreference}}; + my %fileExtensionPreference= %{$mainSettings{fileExtensionPreference}}; # sort the file extensions by preference my @fileExtensions = sort { $fileExtensionPreference{$a} <=> $fileExtensionPreference{$b} } keys(%fileExtensionPreference); @@ -49,10 +49,10 @@ sub create_back_up_file{ $backupFile = "${$self}{cruftDirectory}/$backupFile"; # local variables, determined from the YAML settings - my $onlyOneBackUp = $masterSettings{onlyOneBackUp}; - my $maxNumberOfBackUps = $masterSettings{maxNumberOfBackUps}; - my $cycleThroughBackUps= $masterSettings{cycleThroughBackUps}; - my $backupExtension= $masterSettings{backupExtension}; + my $onlyOneBackUp = $mainSettings{onlyOneBackUp}; + my $maxNumberOfBackUps = $mainSettings{maxNumberOfBackUps}; + my $cycleThroughBackUps= $mainSettings{cycleThroughBackUps}; + my $backupExtension= $mainSettings{backupExtension}; # if both ($onlyOneBackUp and $maxNumberOfBackUps) then we have # a conflict- er on the side of caution and turn off onlyOneBackUp @@ -109,7 +109,14 @@ sub create_back_up_file{ # check that the oldBackupFile exists if(-e $oldBackupFile){ $logger->info(" copying $oldBackupFile to $newBackupFile "); - copy($oldBackupFile,$newBackupFile) or die "Could not write to backup file $backupFile. Please check permissions. Exiting."; + my $backUpFilePossible = 1; + copy($oldBackupFile,$newBackupFile) or ($backUpFilePossible = 0); + if ($backUpFilePossible==0){ + $logger->fatal("*Could not write to backup file $backupFile. Please check permissions. Exiting."); + $logger->fatal("Exiting, no indendation done."); + $self->output_logfile(); + exit(5); + } } } } @@ -131,6 +138,13 @@ sub create_back_up_file{ # output these lines to the log file $logger->info("Backup file: $backupFile"); $logger->info("$fileName will be overwritten after indentation"); - copy($fileName,$backupFile) or die "Could not write to backup file $backupFile. Please check permissions. Exiting."; + my $backUpFilePossible = 1; + copy($fileName,$backupFile) or ($backUpFilePossible = 0); + if ($backUpFilePossible==0){ + $logger->fatal("*Could not write to backup file $backupFile. Please check permissions."); + $logger->fatal("Exiting, no indendation done."); + $self->output_logfile(); + exit(5); + } } 1; diff --git a/support/latexindent/LatexIndent/BlankLines.pm b/support/latexindent/LatexIndent/BlankLines.pm index 2622e9ad90..a3e439d2e0 100644 --- a/support/latexindent/LatexIndent/BlankLines.pm +++ b/support/latexindent/LatexIndent/BlankLines.pm @@ -17,17 +17,16 @@ package LatexIndent::BlankLines; use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_m_switch_active $is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; use Exporter qw/import/; our @EXPORT_OK = qw/protect_blank_lines unprotect_blank_lines condense_blank_lines/; sub protect_blank_lines{ - return unless $is_m_switch_active; my $self = shift; - unless(${$masterSettings{modifyLineBreaks}}{preserveBlankLines}){ + unless(${$mainSettings{modifyLineBreaks}}{preserveBlankLines}){ $logger->trace("*Blank lines will not be protected (preserveBlankLines=0)") if $is_t_switch_active; return } @@ -38,18 +37,15 @@ sub protect_blank_lines{ } sub condense_blank_lines{ - return unless $is_m_switch_active; - - return unless ${$masterSettings{modifyLineBreaks}}{condenseMultipleBlankLinesInto}>0; my $self = shift; $logger->trace("*condense blank lines routine") if $is_t_switch_active; # if preserveBlankLines is set to 0, then the blank-line-token will not be present # in the document -- we change that here - if(${$masterSettings{modifyLineBreaks}}{preserveBlankLines}==0){ + if(${$mainSettings{modifyLineBreaks}}{preserveBlankLines}==0){ # turn the switch on - ${$masterSettings{modifyLineBreaks}}{preserveBlankLines}=1; + ${$mainSettings{modifyLineBreaks}}{preserveBlankLines}=1; # log file information $logger->trace("Updating body to include blank line token, this requires preserveBlankLines = 1") if($is_tt_switch_active); @@ -61,7 +57,7 @@ sub condense_blank_lines{ } # grab the value from the settings - my $condenseMultipleBlankLinesInto = ${$masterSettings{modifyLineBreaks}}{condenseMultipleBlankLinesInto}; + my $condenseMultipleBlankLinesInto = ${$mainSettings{modifyLineBreaks}}{condenseMultipleBlankLinesInto}; # grab the blank-line-token my $blankLineToken = $tokens{blanklines}; @@ -80,9 +76,6 @@ sub condense_blank_lines{ } sub unprotect_blank_lines{ - return unless $is_m_switch_active; - - return unless ${$masterSettings{modifyLineBreaks}}{preserveBlankLines}; my $self = shift; # remove any empty lines that might have been added by the text_wrap routine; see, for example, diff --git a/support/latexindent/LatexIndent/Check.pm b/support/latexindent/LatexIndent/Check.pm new file mode 100644 index 0000000000..67efab2348 --- /dev/null +++ b/support/latexindent/LatexIndent/Check.pm @@ -0,0 +1,130 @@ +package LatexIndent::Check; +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# See http://www.gnu.org/licenses/. +# +# Chris Hughes, 2017 +# +# For all communication, please visit: https://github.com/cmhughes/latexindent.pl +use strict; +use warnings; +use Exporter qw/import/; +use LatexIndent::LogFile qw/$logger/; +use LatexIndent::Switches qw/$is_m_switch_active $is_check_verbose_switch_active/; +our @ISA = "LatexIndent::Document"; # class inheritance, Programming Perl, pg 321 +our @EXPORT_OK = qw/simple_diff/; + +sub simple_diff { + my $self = shift; + + # simple diff... + $logger->info("*simple diff: (check switch active)"); + + # check switch work below here + if (${$self}{originalBody} eq ${$self}{body}){ + $logger->info("no differences, no diff to report"); + return; + } + + # otherwise we loop through the old and new body, and make comparisons + my @oldBody = split("\n",${$self}{originalBody}); + my @newBody = split("\n",${$self}{body}); + my @diff = (); + + # this loop stores the differences ... + if($is_m_switch_active){ + # if -m *is* active, then the number of lines in old and new may not be the same + # so we need to go through the options + my $maxLines = ($#oldBody >= $#newBody ? $#oldBody : $#newBody); + + # loop through to maxLines, accounting for the three scenarios: + # + # oldBody[lineCount] and newBody[lineCount] both defined + # oldBody[lineCount] defined and newBody[lineCount] not defined + # oldBody[lineCount] not defined and newBody[lineCount] defined + # + for (my $lineCount=0;$lineCount<=$maxLines;$lineCount++){ + if ($lineCount<=$#oldBody and $lineCount<=$#newBody ){ + if ($oldBody[$lineCount] ne $newBody[$lineCount]){ + push(@diff,{old=>$oldBody[$lineCount],new=>$newBody[$lineCount],lineNumber=>$lineCount+1}); + } + } elsif ($lineCount<=$#oldBody) { + push(@diff,{old=>$oldBody[$lineCount],lineNumber=>$lineCount+1}); + } else { + push(@diff,{new=>$newBody[$lineCount],lineNumber=>$lineCount+1}); + } + } + } else { + # if -m is not active, then the number of lines in old and new will be the same + for (my $lineCount=0;$lineCount<=$#oldBody;$lineCount++){ + if ($oldBody[$lineCount] ne $newBody[$lineCount]){ + push(@diff,{old=>$oldBody[$lineCount],new=>$newBody[$lineCount],lineNumber=>$lineCount+1}); + } + } + } + + # initialise the old and new tmp body for storage + my $tmpOldBody = '-'; + my $tmpNewBody = '+'; + my $previousLineNumber = -1; + + # and the 'diff chunk' storage array + my @diffChunks = (); + my $diffChunkFirstLineNumber = ${$diff[0]}{lineNumber}; + + # ... and this loop combines the diffs into chunks + for my $i (0..$#diff) { + + my $currentLineNumber = ${$diff[$i]}{lineNumber}; + + if ($i == $#diff + or ( $previousLineNumber>=0 and $currentLineNumber>($previousLineNumber+1) )){ + + my $lastLine = ${$diff[$i-1]}{lineNumber}; + + if ($i == $#diff){ + $lastLine = $currentLineNumber; + $tmpOldBody .= ($tmpOldBody eq '-' ? q() : "\n-").${$diff[$i]}{old}; + $tmpNewBody .= ($tmpNewBody eq '+' ? q() : "\n+").${$diff[$i]}{new}; + } + + push(@diffChunks, {old=>$tmpOldBody, + new=>$tmpNewBody, + firstLine=>$diffChunkFirstLineNumber, + lastLine=>$lastLine } ); + + $tmpOldBody = '-'.${$diff[$i]}{old} if defined ${$diff[$i]}{old}; + $tmpNewBody = '+'.${$diff[$i]}{new} if defined ${$diff[$i]}{new}; + $diffChunkFirstLineNumber = $currentLineNumber; + } else { + $tmpOldBody .= ($tmpOldBody eq '-' ? q() : "\n-").${$diff[$i]}{old} if defined ${$diff[$i]}{old}; + $tmpNewBody .= ($tmpNewBody eq '+' ? q() : "\n+").${$diff[$i]}{new} if defined ${$diff[$i]}{new}; + } + + $previousLineNumber = ${$diff[$i]}{lineNumber}; + } + + # finally, output the diff chunks + foreach (@diffChunks){ + $logger->info("@@ ${$_}{firstLine} -- ${$_}{lastLine} @@"); + $logger->info(${$_}{old}); + $logger->info(${$_}{new}); + + # possibly output to terminal + if($is_check_verbose_switch_active){ + print "\n@@ ${$_}{firstLine} -- ${$_}{lastLine} @@\n"; + print ${$_}{old},"\n"; + print ${$_}{new},"\n"; + } + } +} + +1; diff --git a/support/latexindent/LatexIndent/Command.pm b/support/latexindent/LatexIndent/Command.pm index a877a6295c..b35577ab96 100644 --- a/support/latexindent/LatexIndent/Command.pm +++ b/support/latexindent/LatexIndent/Command.pm @@ -19,7 +19,7 @@ use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::LogFile qw/$logger/; use Data::Dumper; use Exporter qw/import/; @@ -36,19 +36,19 @@ sub construct_command_regexp{ my $self = shift; $optAndMandAndRoundBracketsRegExp = $self->get_arguments_regexp( - roundBrackets=>${$masterSettings{commandCodeBlocks}}{roundParenthesesAllowed}, + roundBrackets=>${$mainSettings{commandCodeBlocks}}{roundParenthesesAllowed}, stringBetweenArguments=>1); $optAndMandAndRoundBracketsRegExpLineBreaks = $self->get_arguments_regexp( - roundBrackets=>${$masterSettings{commandCodeBlocks}}{roundParenthesesAllowed}, + roundBrackets=>${$mainSettings{commandCodeBlocks}}{roundParenthesesAllowed}, mode=>"lineBreaksAtEnd", stringBetweenArguments=>1); # put together a list of the special command names (this was mostly motivated by the \@ifnextchar[ issue) my $commandNameSpecialRegExp = q(); - if(ref(${$masterSettings{commandCodeBlocks}}{commandNameSpecial}) eq "ARRAY"){ + if(ref(${$mainSettings{commandCodeBlocks}}{commandNameSpecial}) eq "ARRAY"){ - my @commandNameSpecial = @{${$masterSettings{commandCodeBlocks}}{commandNameSpecial}}; + my @commandNameSpecial = @{${$mainSettings{commandCodeBlocks}}{commandNameSpecial}}; $logger->trace("*Looping through array for commandCodeBlocks->commandNameSpecial") if $is_t_switch_active ; # note that the zero'th element in this array contains the amalgamate switch, which we don't want! @@ -65,7 +65,7 @@ sub construct_command_regexp{ $logger->trace("*The special command names regexp is: $commandNameSpecialRegExp (see commandNameSpecial)") if $is_t_switch_active; # read from fine tuning - my $commandNameRegExp = qr/${${$masterSettings{fineTuning}}{commands}}{name}/; + my $commandNameRegExp = qr/${${$mainSettings{fineTuning}}{commands}}{name}/; # construct the command regexp $commandRegExp = qr/ @@ -132,7 +132,7 @@ sub tasks_particular_to_each_object{ if (${${${${$self}{children}}[0]}{children}[-1]}{EndFinishesWithLineBreak} == 3 ){ my $EndStringLogFile = ${${${${$self}{children}}[0]}{children}[-1]}{aliases}{EndFinishesWithLineBreak}||"EndFinishesWithLineBreak"; $logger->trace("Adding another blank line to replacement text for ${$self}{name} as last argument has $EndStringLogFile == 3 ") if $is_t_switch_active; - ${$self}{replacementText} .= (${$masterSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:"\n")."\n"; + ${$self}{replacementText} .= (${$mainSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:"\n")."\n"; } # update the argument object diff --git a/support/latexindent/LatexIndent/Document.pm b/support/latexindent/LatexIndent/Document.pm index 4098d01813..c989b20152 100644 --- a/support/latexindent/LatexIndent/Document.pm +++ b/support/latexindent/LatexIndent/Document.pm @@ -21,11 +21,13 @@ use utf8; use open ':std', ':encoding(UTF-8)'; # gain access to subroutines in the following modules -use LatexIndent::Switches qw/store_switches %switches $is_m_switch_active $is_t_switch_active $is_tt_switch_active $is_r_switch_active $is_rr_switch_active $is_rv_switch_active/; +use LatexIndent::Switches qw/store_switches %switches $is_m_switch_active $is_t_switch_active $is_tt_switch_active $is_r_switch_active $is_rr_switch_active $is_rv_switch_active $is_check_switch_active/; use LatexIndent::LogFile qw/process_switches $logger/; use LatexIndent::Logger qw/@logFileLines/; +use LatexIndent::Check qw/simple_diff/; +use LatexIndent::Lines qw/lines_body_selected_lines lines_verbatim_create_line_block/; use LatexIndent::Replacement qw/make_replacements/; -use LatexIndent::GetYamlSettings qw/yaml_read_settings yaml_modify_line_breaks_settings yaml_get_indentation_settings_for_this_object yaml_poly_switch_get_every_or_custom_value yaml_get_indentation_information yaml_get_object_attribute_for_indentation_settings yaml_alignment_at_ampersand_settings yaml_get_textwrap_removeparagraphline_breaks %masterSettings yaml_get_columns/; +use LatexIndent::GetYamlSettings qw/yaml_read_settings yaml_modify_line_breaks_settings yaml_get_indentation_settings_for_this_object yaml_poly_switch_get_every_or_custom_value yaml_get_indentation_information yaml_get_object_attribute_for_indentation_settings yaml_alignment_at_ampersand_settings yaml_get_textwrap_removeparagraphline_breaks %mainSettings yaml_get_columns/; use LatexIndent::FileExtension qw/file_extension_check/; use LatexIndent::BackUpFileProcedure qw/create_back_up_file/; use LatexIndent::BlankLines qw/protect_blank_lines unprotect_blank_lines condense_blank_lines/; @@ -67,7 +69,7 @@ sub new{ my $invocant = shift; my $class = ref($invocant) || $invocant; my $self = {@_}; - $logger->trace(${$masterSettings{logFilePreferences}}{showDecorationStartCodeBlockTrace}) if ${$masterSettings{logFilePreferences}}{showDecorationStartCodeBlockTrace}; + $logger->trace(${$mainSettings{logFilePreferences}}{showDecorationStartCodeBlockTrace}) if ${$mainSettings{logFilePreferences}}{showDecorationStartCodeBlockTrace}; bless ($self,$class); return $self; } @@ -79,13 +81,18 @@ sub latexindent{ $self->yaml_read_settings; $self->file_extension_check; $self->operate_on_file; + + # check switch active, and file changed, gives different exit code + if ($is_check_switch_active and ${$self}{originalBody} ne ${$self}{body}){ + exit(1); + } } sub operate_on_file{ my $self = shift; $self->create_back_up_file; - $self->token_check; + $self->token_check unless ($switches{lines}) ; $self->make_replacements(when=>"before") if ($is_r_switch_active and !$is_rv_switch_active); unless ($is_rr_switch_active){ $self->construct_regular_expressions; @@ -99,24 +106,24 @@ sub operate_on_file{ $logger->trace(Dumper(\%verbatimStorage)) if $is_tt_switch_active; $self->verbatim_modify_line_breaks if $is_m_switch_active; $self->make_replacements(when=>"before") if $is_rv_switch_active; - $self->text_wrap if ($is_m_switch_active and !${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}>1); - $self->protect_blank_lines; + $self->text_wrap if ($is_m_switch_active and !${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}>1); + $self->protect_blank_lines if $is_m_switch_active; $self->remove_trailing_whitespace(when=>"before"); $self->find_file_contents_environments_and_preamble; $self->dodge_double_backslash; $self->remove_leading_space; $self->process_body_of_text; - ${$self}{body} =~ s/\r\n/\n/sg if $masterSettings{dos2unixlinebreaks}; + ${$self}{body} =~ s/\r\n/\n/sg if $mainSettings{dos2unixlinebreaks}; $self->remove_trailing_whitespace(when=>"after"); - $self->condense_blank_lines; - $self->unprotect_blank_lines; + $self->condense_blank_lines if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}}{condenseMultipleBlankLinesInto} ); + $self->unprotect_blank_lines if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}}{preserveBlankLines} ); $self->un_dodge_double_backslash; $self->make_replacements(when=>"after") if $is_rv_switch_active; $self->put_verbatim_back_in (match=>"everything-except-commands"); $self->put_trailing_comments_back_in; $self->put_verbatim_back_in (match=>"just-commands"); $self->make_replacements(when=>"after") if ($is_r_switch_active and !$is_rv_switch_active); - ${$self}{body} =~ s/\r\n/\n/sg if $masterSettings{dos2unixlinebreaks}; + ${$self}{body} =~ s/\r\n/\n/sg if $mainSettings{dos2unixlinebreaks}; } $self->output_indented_text; return @@ -141,6 +148,8 @@ sub construct_regular_expressions{ sub output_indented_text{ my $self = shift; + $self->simple_diff() if $is_check_switch_active; + $logger->info("*Output routine:"); # if -overwrite is active then output to original fileName @@ -172,10 +181,10 @@ sub output_logfile{ my $self = shift; # # put the final line in the logfile - $logger->info("${$masterSettings{logFilePreferences}}{endLogFileWith}") if ${$masterSettings{logFilePreferences}}{endLogFileWith}; + $logger->info("${$mainSettings{logFilePreferences}}{endLogFileWith}") if ${$mainSettings{logFilePreferences}}{endLogFileWith}; # github info line - $logger->info("*Please direct all communication/issues to:\nhttps://github.com/cmhughes/latexindent.pl") if ${$masterSettings{logFilePreferences}}{showGitHubInfoFooter}; + $logger->info("*Please direct all communication/issues to:\nhttps://github.com/cmhughes/latexindent.pl") if ${$mainSettings{logFilePreferences}}{showGitHubInfoFooter}; # open log file my $logfileName = $switches{logFileName}||"indent.log"; @@ -220,19 +229,19 @@ sub find_objects{ my $self = shift; # one sentence per line: sentences are objects, as of V3.5.1 - $self->one_sentence_per_line if ($is_m_switch_active and ${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{manipulateSentences}); + $self->one_sentence_per_line if ($is_m_switch_active and ${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{manipulateSentences}); if ($is_m_switch_active and !${$self}{preamblePresent}){ $self->yaml_get_textwrap_removeparagraphline_breaks; } - if( $is_m_switch_active and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 1){ + if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 1){ # call the remove_paragraph_line_breaks and text_wrap routines - if(${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ + if(${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); } else { - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; } } @@ -253,13 +262,13 @@ sub find_objects{ $self->find_commands_or_key_equals_values_braces_and_special if ${$self}{body} =~ m/$specialBeginAndBracesBracketsBasicRegExp/s; # documents without preamble need a manual call to the paragraph_one_line routine - if ($is_m_switch_active and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 0 ){ + if ($is_m_switch_active and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 0 ){ # call the remove_paragraph_line_breaks and text_wrap routines - if(${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ + if(${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); } else { - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; } } @@ -283,7 +292,7 @@ sub find_commands_or_key_equals_values_braces_and_special{ # the order in which we search for specialBeginEnd and commands/key/braces # can change depending upon specialBeforeCommand - if(${$masterSettings{specialBeginEnd}}{specialBeforeCommand}){ + if(${$mainSettings{specialBeginEnd}}{specialBeforeCommand}){ # search for special begin/end $logger->trace('looking for SPECIAL begin/end *before* looking for commands (see specialBeforeCommand)') if $is_t_switch_active; $self->find_special if ${$self}{body} =~ m/$specialBeginBasicRegExp/s; @@ -318,13 +327,13 @@ sub get_settings_and_store_new_object{ $latexIndentObject->tasks_common_to_each_object(%{$self}); # removeParagraphLineBreaks and textWrapping fun! - $latexIndentObject->text_wrap_remove_paragraph_line_breaks if( $is_m_switch_active and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} ); + $latexIndentObject->text_wrap_remove_paragraph_line_breaks if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} ); # tasks particular to each object $latexIndentObject->tasks_particular_to_each_object; # removeParagraphLineBreaks and textWrapping fun! - $latexIndentObject->text_wrap_remove_paragraph_line_breaks if($is_m_switch_active and !${$masterSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} ); + $latexIndentObject->text_wrap_remove_paragraph_line_breaks if($is_m_switch_active and !${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} ); # store children in special hash push(@{${$self}{children}},$latexIndentObject); @@ -333,7 +342,7 @@ sub get_settings_and_store_new_object{ $self->hidden_children_preparation_for_alignment($latexIndentObject) if(${$latexIndentObject}{lookForAlignDelims} and ${$latexIndentObject}{measureHiddenChildren}); # possible decoration in log file - $logger->trace(${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; + $logger->trace(${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; } @@ -381,7 +390,7 @@ sub tasks_common_to_each_object{ ${$self}{idRegExp} = ${$self}{id}; if($is_m_switch_active - and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{huge} ne "overflow"){ + and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{huge} ne "overflow"){ my $IDwithLineBreaks = join("\\R?\\h*",split(//,${$self}{id})); ${$self}{idRegExp} = qr/$IDwithLineBreaks/s; } diff --git a/support/latexindent/LatexIndent/Environment.pm b/support/latexindent/LatexIndent/Environment.pm index 44388abbf3..12c8d6e191 100644 --- a/support/latexindent/LatexIndent/Environment.pm +++ b/support/latexindent/LatexIndent/Environment.pm @@ -18,7 +18,7 @@ use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active $is_m_switch_active/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::Braces qw/$braceBracketRegExpBasic/; @@ -36,7 +36,7 @@ our $environmentRegExp; sub construct_environments_regexp{ # read from fine tuning - my $environmentNameRegExp = qr/${${$masterSettings{fineTuning}}{environments}}{name}/; + my $environmentNameRegExp = qr/${${$mainSettings{fineTuning}}{environments}}{name}/; $environmentRegExp = qr/ ( \\begin\{ @@ -110,7 +110,7 @@ sub tasks_particular_to_each_object{ } # search for items as the first order of business - $self->find_items if ${$masterSettings{indentAfterItems}}{${$self}{name}}; + $self->find_items if ${$mainSettings{indentAfterItems}}{${$self}{name}}; # search for headings (important to do this before looking for commands!) $self->find_heading if ${$self}{body} =~ m/$allHeadingsRegexp/s; diff --git a/support/latexindent/LatexIndent/FileContents.pm b/support/latexindent/LatexIndent/FileContents.pm index ff7b0eeb18..b18feae6bd 100644 --- a/support/latexindent/LatexIndent/FileContents.pm +++ b/support/latexindent/LatexIndent/FileContents.pm @@ -17,7 +17,7 @@ package LatexIndent::FileContents; use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active $is_m_switch_active/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::Environment qw/$environmentBasicRegExp/; @@ -41,8 +41,8 @@ sub find_file_contents_environments_and_preamble{ # fileContents environments $logger->trace('*Searching for FILE CONTENTS environments (see fileContentsEnvironments)') if $is_t_switch_active; - $logger->trace(Dumper(\%{$masterSettings{fileContentsEnvironments}})) if($is_tt_switch_active); - while( my ($fileContentsEnv,$yesno)= each %{$masterSettings{fileContentsEnvironments}}){ + $logger->trace(Dumper(\%{$mainSettings{fileContentsEnvironments}})) if($is_tt_switch_active); + while( my ($fileContentsEnv,$yesno)= each %{$mainSettings{fileContentsEnvironments}}){ if(!$yesno){ $logger->trace(" *not* looking for $fileContentsEnv as $fileContentsEnv:$yesno"); @@ -133,7 +133,7 @@ sub find_file_contents_environments_and_preamble{ my $needToStorePreamble = 0; # try and find the preamble - if( ${$self}{body} =~ m/$preambleRegExp/sx and ${$masterSettings{lookForPreamble}}{${$self}{fileExtension}}){ + if( ${$self}{body} =~ m/$preambleRegExp/sx and ${$mainSettings{lookForPreamble}}{${$self}{fileExtension}}){ $logger->trace("\\begin{document} found in body (after searching for filecontents)-- assuming that a preamble exists") if $is_t_switch_active ; @@ -173,13 +173,13 @@ sub find_file_contents_environments_and_preamble{ $logger->trace("replaced with ID: ${$preamble}{replacementText}") if $is_tt_switch_active; # indentPreamble set to 1 - if($masterSettings{indentPreamble}){ + if($mainSettings{indentPreamble}){ $logger->trace("storing ${$preamble}{id} for indentation (see indentPreamble)") if $is_tt_switch_active; $needToStorePreamble = 1; } else { # indentPreamble set to 0 $logger->trace("NOT storing ${$preamble}{id} for indentation -- will store as VERBATIM object (because indentPreamble:0)") if $is_t_switch_active; - $preamble->unprotect_blank_lines; + $preamble->unprotect_blank_lines if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}}{preserveBlankLines} ); $verbatimStorage{${$preamble}{id}} = $preamble; } } else { @@ -193,7 +193,7 @@ sub find_file_contents_environments_and_preamble{ if($preamble ne '' and ${$preamble}{body} =~ m/${$_}{id}/){ $logger->trace("filecontents (${$_}{id}) is within preamble") if $is_t_switch_active; # indentPreamble set to 1 - if($masterSettings{indentPreamble}){ + if($mainSettings{indentPreamble}){ $logger->trace("storing ${$_}{id} for indentation (indentPreamble is 1)") if $is_t_switch_active; $indentThisChild = 1; } else { @@ -213,14 +213,14 @@ sub find_file_contents_environments_and_preamble{ push(@{${$self}{children}},$_); # possible decoration in log file - $logger->trace(${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; + $logger->trace(${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; } } if($needToStorePreamble){ $preamble->dodge_double_backslash; $preamble->remove_leading_space; - $preamble->find_commands_or_key_equals_values_braces if($masterSettings{preambleCommandsBeforeEnvironments}); + $preamble->find_commands_or_key_equals_values_braces if($mainSettings{preambleCommandsBeforeEnvironments}); $preamble->tasks_particular_to_each_object; push(@{${$self}{children}},$preamble); } @@ -238,6 +238,23 @@ sub create_unique_id{ sub tasks_particular_to_each_object{ my $self = shift; + # text wrapping, remove paragraph line breaks + if ($is_m_switch_active){ + $self->yaml_get_textwrap_removeparagraphline_breaks; + } + + # option to textWrap beforeFindingChildCodeBlocks + if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 1){ + # call the remove_paragraph_line_breaks and text_wrap routines + if(${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ + $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + } else { + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; + } + } + # search for environments $self->find_environments if ${$self}{body} =~ m/$environmentBasicRegExp/s; @@ -251,15 +268,13 @@ sub tasks_particular_to_each_object{ $self->find_commands_or_key_equals_values_braces_and_special if ${$self}{body} =~ m/$specialBeginAndBracesBracketsBasicRegExp/s; # text wrapping, remove paragraph line breaks - if ($is_m_switch_active){ - $self->yaml_get_textwrap_removeparagraphline_breaks; - + if ($is_m_switch_active and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 0){ # call the remove_paragraph_line_breaks and text_wrap routines - if(${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ + if(${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); } else { - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; } } diff --git a/support/latexindent/LatexIndent/FileExtension.pm b/support/latexindent/LatexIndent/FileExtension.pm index 6902b0f48c..a9ff031493 100644 --- a/support/latexindent/LatexIndent/FileExtension.pm +++ b/support/latexindent/LatexIndent/FileExtension.pm @@ -21,8 +21,8 @@ use PerlIO::encoding; use open ':std', ':encoding(UTF-8)'; use File::Basename; # to get the filename and directory path use Exporter qw/import/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; -use LatexIndent::Switches qw/%switches/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; +use LatexIndent::Switches qw/%switches $is_check_switch_active/; use LatexIndent::LogFile qw/$logger/; our @EXPORT_OK = qw/file_extension_check/; @@ -36,7 +36,7 @@ sub file_extension_check{ my ($name,$dir,$ext) = fileparse($fileName,qr/\..[^.]*$/); # grab the file extension preferences - my %fileExtensionPreference= %{$masterSettings{fileExtensionPreference}}; + my %fileExtensionPreference= %{$mainSettings{fileExtensionPreference}}; # sort the file extensions by preference my @fileExtensions = sort { $fileExtensionPreference{$a} <=> $fileExtensionPreference{$b} } keys(%fileExtensionPreference); @@ -69,17 +69,18 @@ sub file_extension_check{ foreach (@fileExtensions ){ $logger->fatal("I searched for $fileName$_"); } - $logger->fatal("but couldn't find any of them.\nConsider updating fileExtensionPreference.\nExiting, no indendation done."); + $logger->fatal("but couldn't find any of them.\nConsider updating fileExtensionPreference."); + $logger->fatal("*Exiting, no indendation done."); $self->output_logfile(); - die "ERROR: I couldn't find any of the following files: ".$fileName.join(", $fileName",@fileExtensions)." (see fileExtensionPreference)\nExiting, no indendation done."; + exit(3); } } else { # if the file has a recognised extension, check that the file exists unless( -e $fileName ){ - my $message = "ERROR: I couldn't find $fileName, are you sure it exists?\nNo indentation done.\nExiting."; - $logger->fatal("*$message"); + $logger->fatal("*I couldn't find $fileName, are you sure it exists?"); + $logger->fatal("Exiting, no indendation done."); $self->output_logfile(); - die $message; + exit(3); } } } @@ -140,14 +141,31 @@ sub file_extension_check{ # read the file into the Document body my @lines; if($fileName ne "-"){ - open(MAINFILE, $fileName) or die "Could not open input file, $fileName"; + my $openFilePossible=1; + open(MAINFILE, $fileName) or ($openFilePossible=0); + if($openFilePossible==0){ + $logger->fatal("*$fileName exists, but could not open it"); + $logger->fatal("Exiting, no indendation done."); + $self->output_logfile(); + exit(4); + } push(@lines,$_) while(); close(MAINFILE); } else { push(@lines,$_) while (<>) } - # the all-important step: update the body - ${$self}{body} = join("",@lines); + # -n, --lines mode active + if($switches{lines}){ + $self->lines_body_selected_lines(\@lines); + } else { + # the all-important step: update the body + ${$self}{body} = join("",@lines); + } + + # necessary extra storage if check switch is active + if ($is_check_switch_active){ + ${$self}{originalBody} = ${$self}{body}; + } } 1; diff --git a/support/latexindent/LatexIndent/GetYamlSettings.pm b/support/latexindent/LatexIndent/GetYamlSettings.pm index 1529493d4f..168c5d97bb 100644 --- a/support/latexindent/LatexIndent/GetYamlSettings.pm +++ b/support/latexindent/LatexIndent/GetYamlSettings.pm @@ -24,13 +24,13 @@ use File::HomeDir; use Cwd; use Exporter qw/import/; use LatexIndent::LogFile qw/$logger/; -our @EXPORT_OK = qw/yaml_read_settings yaml_modify_line_breaks_settings yaml_get_indentation_settings_for_this_object yaml_poly_switch_get_every_or_custom_value yaml_get_indentation_information yaml_get_object_attribute_for_indentation_settings yaml_alignment_at_ampersand_settings yaml_get_textwrap_removeparagraphline_breaks %masterSettings yaml_get_columns/; +our @EXPORT_OK = qw/yaml_read_settings yaml_modify_line_breaks_settings yaml_get_indentation_settings_for_this_object yaml_poly_switch_get_every_or_custom_value yaml_get_indentation_information yaml_get_object_attribute_for_indentation_settings yaml_alignment_at_ampersand_settings yaml_get_textwrap_removeparagraphline_breaks %mainSettings yaml_get_columns/; # Read in defaultSettings.YAML file our $defaultSettings; # master yaml settings is a hash, global to this module -our %masterSettings; +our %mainSettings; # previously found settings is a hash, global to this module our %previouslyFoundSettings; @@ -64,15 +64,25 @@ sub yaml_read_settings{ # if latexindent.exe is invoked from TeXLive, then defaultSettings.yaml won't be in # the same directory as it; we need to navigate to it if(!$defaultSettings) { - $defaultSettings = YAML::Tiny->read( "$FindBin::RealBin/../../texmf-dist/scripts/latexindent/defaultSettings.yaml"); $logger->info("Reading defaultSettings.yaml (2nd attempt, TeXLive, Windows) from $FindBin::RealBin/../../texmf-dist/scripts/latexindent/defaultSettings.yaml"); + if ( -e "$FindBin::RealBin/../../texmf-dist/scripts/latexindent/defaultSettings.yaml" ){ + $defaultSettings = YAML::Tiny->read( "$FindBin::RealBin/../../texmf-dist/scripts/latexindent/defaultSettings.yaml"); + } else { + $logger->fatal("*Could not open defaultSettings.yaml"); + $self->output_logfile(); + exit(2); + } } # need to exit if we can't get defaultSettings.yaml - die "Could not open defaultSettings.yaml" if(!$defaultSettings); + if(!$defaultSettings){ + $logger->fatal("*Could not open defaultSettings.yaml"); + $self->output_logfile(); + exit(2); + } # master yaml settings is a hash, global to this module - our %masterSettings = %{$defaultSettings->[0]}; + our %mainSettings = %{$defaultSettings->[0]}; &yaml_update_dumper_settings(); @@ -270,26 +280,26 @@ sub yaml_read_settings{ if (ref($firstLevelValue) eq "HASH") { while(my ($secondLevelKey,$secondLevelValue) = each %{$userSettings->[0]{$firstLevelKey}}) { if (ref $secondLevelValue eq "HASH"){ - # if masterSettings already contains a *scalar* value in secondLevelKey + # if mainSettings already contains a *scalar* value in secondLevelKey # then we need to delete it (test-cases/headings-first.tex with indentRules1.yaml first demonstrated this) - if(defined $masterSettings{$firstLevelKey}{$secondLevelKey} - and ref $masterSettings{$firstLevelKey}{$secondLevelKey} ne "HASH"){ - $logger->trace("*masterSettings{$firstLevelKey}{$secondLevelKey} currently contains a *scalar* value, but it needs to be updated with a hash (see $settings); deleting the scalar") if($is_t_switch_active); - delete $masterSettings{$firstLevelKey}{$secondLevelKey} ; + if(defined $mainSettings{$firstLevelKey}{$secondLevelKey} + and ref $mainSettings{$firstLevelKey}{$secondLevelKey} ne "HASH"){ + $logger->trace("*mainSettings{$firstLevelKey}{$secondLevelKey} currently contains a *scalar* value, but it needs to be updated with a hash (see $settings); deleting the scalar") if($is_t_switch_active); + delete $mainSettings{$firstLevelKey}{$secondLevelKey} ; } while(my ($thirdLevelKey,$thirdLevelValue) = each %{$secondLevelValue}) { if (ref $thirdLevelValue eq "HASH"){ # similarly for third level - if (defined $masterSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} - and ref $masterSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} ne "HASH"){ - $logger->trace("*masterSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} currently contains a *scalar* value, but it needs to be updated with a hash (see $settings); deleting the scalar") if($is_t_switch_active); - delete $masterSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} ; + if (defined $mainSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} + and ref $mainSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} ne "HASH"){ + $logger->trace("*mainSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} currently contains a *scalar* value, but it needs to be updated with a hash (see $settings); deleting the scalar") if($is_t_switch_active); + delete $mainSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} ; } while(my ($fourthLevelKey,$fourthLevelValue) = each %{$thirdLevelValue}) { - $masterSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey}{$fourthLevelKey} = $fourthLevelValue; + $mainSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey}{$fourthLevelKey} = $fourthLevelValue; } } else { - $masterSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} = $thirdLevelValue; + $mainSettings{$firstLevelKey}{$secondLevelKey}{$thirdLevelKey} = $thirdLevelValue; } } } else { @@ -297,54 +307,54 @@ sub yaml_read_settings{ # to be amalgamated, rather than overwritten if(ref($secondLevelValue) eq "ARRAY" and - ${${$masterSettings{$firstLevelKey}{$secondLevelKey}}[0]}{amalgamate} + ${${$mainSettings{$firstLevelKey}{$secondLevelKey}}[0]}{amalgamate} and !(ref(${$secondLevelValue}[0]) eq "HASH" and defined ${$secondLevelValue}[0]{amalgamate} and !${$secondLevelValue}[0]{amalgamate}) ){ $logger->trace("*$firstLevelKey -> $secondLevelKey, amalgamate: 1") if($is_t_switch_active); foreach (@{$secondLevelValue}){ $logger->trace("$_") if($is_t_switch_active); - push (@{$masterSettings{$firstLevelKey}{$secondLevelKey}},$_) unless(ref($_) eq "HASH"); + push (@{$mainSettings{$firstLevelKey}{$secondLevelKey}},$_) unless(ref($_) eq "HASH"); } # remove duplicated entries, https://stackoverflow.com/questions/7651/how-do-i-remove-duplicate-items-from-an-array-in-perl my %seen = (); - my @unique = grep { ! $seen{ $_ }++ } @{$masterSettings{$firstLevelKey}{$secondLevelKey}}; - @{$masterSettings{$firstLevelKey}{$secondLevelKey}} = @unique; + my @unique = grep { ! $seen{ $_ }++ } @{$mainSettings{$firstLevelKey}{$secondLevelKey}}; + @{$mainSettings{$firstLevelKey}{$secondLevelKey}} = @unique; $logger->trace("*master settings for $firstLevelKey -> $secondLevelKey now look like:") if $is_t_switch_active; - foreach (@{$masterSettings{$firstLevelKey}{$secondLevelKey}}){ + foreach (@{$mainSettings{$firstLevelKey}{$secondLevelKey}}){ $logger->trace("$_") if($is_t_switch_active); } } else { - $masterSettings{$firstLevelKey}{$secondLevelKey} = $secondLevelValue; + $mainSettings{$firstLevelKey}{$secondLevelKey} = $secondLevelValue; } } } } elsif (ref($firstLevelValue) eq "ARRAY") { # update amalgamate in master settings if(ref(${$firstLevelValue}[0]) eq "HASH" and defined ${$firstLevelValue}[0]{amalgamate}){ - ${$masterSettings{$firstLevelKey}[0]}{amalgamate} = ${$firstLevelValue}[0]{amalgamate}; - shift @{$firstLevelValue} if ${$masterSettings{$firstLevelKey}[0]}{amalgamate}; + ${$mainSettings{$firstLevelKey}[0]}{amalgamate} = ${$firstLevelValue}[0]{amalgamate}; + shift @{$firstLevelValue} if ${$mainSettings{$firstLevelKey}[0]}{amalgamate}; } # if amalgamate is set to 1, then append - if(${$masterSettings{$firstLevelKey}[0]}{amalgamate}){ + if(${$mainSettings{$firstLevelKey}[0]}{amalgamate}){ # loop through the other settings foreach (@{$firstLevelValue}){ - push (@{$masterSettings{$firstLevelKey}},$_); + push (@{$mainSettings{$firstLevelKey}},$_); } } else { # otherwise overwrite - $masterSettings{$firstLevelKey} = $firstLevelValue; + $mainSettings{$firstLevelKey} = $firstLevelValue; } } else { - $masterSettings{$firstLevelKey} = $firstLevelValue; + $mainSettings{$firstLevelKey} = $firstLevelValue; } } # output settings to $logfile - if($masterSettings{logFilePreferences}{showEveryYamlRead}){ + if($mainSettings{logFilePreferences}{showEveryYamlRead}){ $logger->info(Dump \%{$userSettings->[0]}); } else { $logger->info("Not showing settings in the log file (see showEveryYamlRead and showAmalgamatedSettings)."); @@ -532,29 +542,29 @@ sub yaml_read_settings{ if(scalar(@keysValues) == 2){ # for example, -y="defaultIndent: ' '" my $key = $keysValues[0]; - $logger->info("Updating masterSettings with $key: $value"); - $masterSettings{$key} = $value; + $logger->info("Updating mainSettings with $key: $value"); + $mainSettings{$key} = $value; } elsif(scalar(@keysValues) == 3){ # for example, -y="indentRules: one: '\t\t\t\t'" my $parent = $keysValues[0]; my $child = $keysValues[1]; - $logger->info("Updating masterSettings with $parent: $child: $value"); - $masterSettings{$parent}{$child} = $value; + $logger->info("Updating mainSettings with $parent: $child: $value"); + $mainSettings{$parent}{$child} = $value; } elsif(scalar(@keysValues) == 4){ # for example, -y='modifyLineBreaks : environments: EndStartsOnOwnLine:3' -m my $parent = $keysValues[0]; my $child = $keysValues[1]; my $grandchild = $keysValues[2]; - $logger->info("Updating masterSettings with $parent: $child: $grandchild: $value"); - $masterSettings{$parent}{$child}{$grandchild} = $value; + $logger->info("Updating mainSettings with $parent: $child: $grandchild: $value"); + $mainSettings{$parent}{$child}{$grandchild} = $value; } elsif(scalar(@keysValues) == 5){ # for example, -y='modifyLineBreaks : environments: one: EndStartsOnOwnLine:3' -m my $parent = $keysValues[0]; my $child = $keysValues[1]; my $grandchild = $keysValues[2]; my $greatgrandchild = $keysValues[3]; - $logger->info("Updating masterSettings with $parent: $child: $grandchild: $greatgrandchild: $value"); - $masterSettings{$parent}{$child}{$grandchild}{$greatgrandchild} = $value; + $logger->info("Updating mainSettings with $parent: $child: $grandchild: $greatgrandchild: $value"); + $mainSettings{$parent}{$child}{$grandchild}{$greatgrandchild} = $value; } &yaml_update_dumper_settings(); @@ -562,17 +572,9 @@ sub yaml_read_settings{ } - # some users may wish to see showAmalgamatedSettings - # which details the overall state of the settings modified - # from the default in various user files - if($masterSettings{logFilePreferences}{showAmalgamatedSettings}){ - $logger->info("Amalgamated/overall settings to be used:"); - $logger->info(Dumper(\%masterSettings)); - } - if( $is_m_switch_active - and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} - and !${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis} ){ + and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} + and !${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis} ){ # the following settings don't make sense, so we change # @@ -589,8 +591,89 @@ sub yaml_read_settings{ $logger->warn("*textWrapOptions:beforeFindingChildCodeBlocks:1 with textWrapOptions:perCodeBlockBasis:0"); $logger->warn("turning off beforeFindingChildCodeBlocks by changing textWrapOptions:beforeFindingOtherCodeBlocks to be 0"); $logger->warn("you need to set *both* values to be 1 to use the beforeFindingChildCodeBlocks feature"); - ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} = 0; + ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} = 0; } + + # modifyLineBreaks: + # textWrapOptions: + # columns: 80 + # perCodeBlockBasis: 1 + # masterDocument: 1 + # + # needs to be interpretted as + # + # modifyLineBreaks: + # textWrapOptions: + # columns: 80 + # perCodeBlockBasis: 1 + # mainDocument: 1 + # + if( $is_m_switch_active + and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis} + and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{masterDocument} ){ + $logger->warn("*textWrapOptions:masterDocument specified when textWrapOptions:mainDocument preferred"); + $logger->warn("setting textWrapOptions:mainDocument: 1, but note that future versions of latexindent.pl may not support this"); + $logger->warn("recommendation to use textWrapOptions:mainDocument: 1 in place of textWrapOptions:masterDocument:1"); + ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{mainDocument} = 1; + } + + # modifyLineBreaks: + # removeParagraphLineBreaks: + # masterDocument: 1 + # + # needs to be interpretted as + # + # modifyLineBreaks: + # removeParagraphLineBreaks: + # mainDocument: 1 + # + if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{masterDocument} ){ + $logger->warn("*removeParagraphLineBreaks:masterDocument specified when removeParagraphLineBreaks:mainDocument preferred"); + $logger->warn("setting removeParagraphLineBreaks:mainDocument: 1, but note that future versions of latexindent.pl may not support this"); + $logger->warn("recommendation to use removeParagraphLineBreaks:mainDocument: 1 in place of removeParagraphLineBreaks:masterDocument:1"); + ${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{mainDocument} = 1; + } + + # modifyLineBreaks: + # textWrapOptions/removeParagraphLineBreaks: + # all: + # except: + # - 'masterDocument' + # + # need to be interpretted as + # + # modifyLineBreaks: + # textWrapOptions/removeParagraphLineBreaks: + # all: + # except: + # - 'mainDocument' + # + if( $is_m_switch_active ){ + foreach ("textWrapOptions","removeParagraphLineBreaks"){ + if ( ref ${$mainSettings{modifyLineBreaks}{$_}}{all} eq "HASH" + and + defined ${${$mainSettings{modifyLineBreaks}{$_}}{all}}{except} + and + ref ${${$mainSettings{modifyLineBreaks}{$_}}{all}}{except} eq "ARRAY") { + my %except = map { $_ => 1 } @{${${$mainSettings{modifyLineBreaks}}{$_}}{all}{except}}; + if($except{masterDocument}){ + $logger->warn("*$_:all:except:masterDocument specified when mainDocument preferred"); + $logger->warn("setting $_:all:except:mainDocument:1, but note that future versions of latexindent.pl may not support this"); + $logger->warn("recommendation to use $_:all:except:mainDocument:1 in place of $_:all:except:masterDocument:1"); + push( @{${${$mainSettings{modifyLineBreaks}}{$_}}{all}{except}}, "mainDocument" ); + } + } + } + } + + # some users may wish to see showAmalgamatedSettings + # which details the overall state of the settings modified + # from the default in various user files + if($mainSettings{logFilePreferences}{showAmalgamatedSettings}){ + $logger->info("Amalgamated/overall settings to be used:"); + $logger->info(Dumper(\%mainSettings)); + } + return; } @@ -670,11 +753,11 @@ sub yaml_alignment_at_ampersand_settings{ # delims: 1 # alignDoubleBackSlash: 1 # spacesBeforeDoubleBackSlash: 2 - return unless ${$masterSettings{lookForAlignDelims}}{$name}; + return unless ${$mainSettings{lookForAlignDelims}}{$name}; $logger->trace("alignAtAmpersand settings for $name (see lookForAlignDelims)") if($is_t_switch_active); - if(ref ${$masterSettings{lookForAlignDelims}}{$name} eq "HASH"){ + if(ref ${$mainSettings{lookForAlignDelims}}{$name} eq "HASH"){ # specified as a hash, e.g # # lookForAlignDelims: @@ -704,37 +787,37 @@ sub yaml_alignment_at_ampersand_settings{ # default: 0 # # approach: - # - update masterSettings to have the relevant information: leadingBlankColumn and/or default + # - update mainSettings to have the relevant information: leadingBlankColumn and/or default # - delete the spacesBeforeAmpersand hash # if ($yamlname eq "spacesBeforeAmpersand" - and ref(${${$masterSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}) eq "HASH"){ + and ref(${${$mainSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}) eq "HASH"){ $logger->trace("spacesBeforeAmpersand settings for $name") if $is_t_switch_active; # lookForAlignDelims: # aligned: # spacesBeforeAmpersand: # leadingBlankColumn: 0 - if(defined ${${${$masterSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{leadingBlankColumn}){ + if(defined ${${${$mainSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{leadingBlankColumn}){ $logger->trace("spacesBeforeAmpersand: leadingBlankColumn specified for $name") if $is_t_switch_active; - ${${$masterSettings{lookForAlignDelims}}{$name}}{leadingBlankColumn} - = ${${${$masterSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{leadingBlankColumn}; + ${${$mainSettings{lookForAlignDelims}}{$name}}{leadingBlankColumn} + = ${${${$mainSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{leadingBlankColumn}; } # lookForAlignDelims: # aligned: # spacesBeforeAmpersand: # default: 0 - if(defined ${${${$masterSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{default}){ - ${${$masterSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand} - = ${${${$masterSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{default}; + if(defined ${${${$mainSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{default}){ + ${${$mainSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand} + = ${${${$mainSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}}{default}; } else { # deleting spacesBeforeAmpersand hash allows spacesBeforeAmpersand # to pull from the default values @alignAtAmpersandInformation - delete ${${$masterSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}; + delete ${${$mainSettings{lookForAlignDelims}}{$name}}{spacesBeforeAmpersand}; } } - ${$self}{ ${$_}{name} } = (defined ${${$masterSettings{lookForAlignDelims}}{$name}}{$yamlname} ) ? ${${$masterSettings{lookForAlignDelims}}{$name}}{$yamlname} : ${$_}{default}; + ${$self}{ ${$_}{name} } = (defined ${${$mainSettings{lookForAlignDelims}}{$name}}{$yamlname} ) ? ${${$mainSettings{lookForAlignDelims}}{$name}}{$yamlname} : ${$_}{default}; } } else { # specified as a scalar, e.g @@ -815,10 +898,10 @@ sub yaml_get_textwrap_removeparagraphline_breaks{ # will disable textWrapOptions for itemize # if 'all' is set as a hash, then the default value is 1, to be turned off (possibly) later - ${$self}{$_} = ( ref ${$masterSettings{modifyLineBreaks}{$_}}{all} eq "HASH" ? 1 : ${$masterSettings{modifyLineBreaks}{$_}}{all}); + ${$self}{$_} = ( ref ${$mainSettings{modifyLineBreaks}{$_}}{all} eq "HASH" ? 1 : ${$mainSettings{modifyLineBreaks}{$_}}{all}); # get the columns - if($_ eq "textWrapOptions" and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}){ + if($_ eq "textWrapOptions" and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}){ $self->yaml_get_columns; } @@ -835,9 +918,9 @@ sub yaml_get_textwrap_removeparagraphline_breaks{ # if(${$self}{$_} and - ref ${$masterSettings{modifyLineBreaks}{$_}}{all} ne "HASH" + ref ${$mainSettings{modifyLineBreaks}{$_}}{all} ne "HASH" and - ${$masterSettings{modifyLineBreaks}{$_}}{all}){ + ${$mainSettings{modifyLineBreaks}{$_}}{all}){ $logger->trace("$_ for $name is ${$self}{$_}") if $is_t_switch_active; next; }; @@ -865,11 +948,11 @@ sub yaml_get_textwrap_removeparagraphline_breaks{ # if(${$self}{$_} and - defined ${${$masterSettings{modifyLineBreaks}{$_}}{all}}{except} + defined ${${$mainSettings{modifyLineBreaks}{$_}}{all}}{except} and - ref ${${$masterSettings{modifyLineBreaks}{$_}}{all}}{except} eq "ARRAY" + ref ${${$mainSettings{modifyLineBreaks}{$_}}{all}}{except} eq "ARRAY" ){ - my %except = map { $_ => 1 } @{${${$masterSettings{modifyLineBreaks}}{$_}}{all}{except}}; + my %except = map { $_ => 1 } @{${${$mainSettings{modifyLineBreaks}}{$_}}{all}{except}}; if( $except{$name} or $except{$YamlName}){ ${$self}{$_} = 0; my $detail = ($except{$name} ? "per-name" : "per-code-block-type"); @@ -884,19 +967,19 @@ sub yaml_get_textwrap_removeparagraphline_breaks{ # # the textWrapOptions/removeParagraphLineBreaks can contain fields that are hashes or scalar # - if(ref ${$masterSettings{modifyLineBreaks}{$_}}{$YamlName} eq "HASH"){ + if(ref ${$mainSettings{modifyLineBreaks}{$_}}{$YamlName} eq "HASH"){ # textWrapOptions/removeParagraphLineBreaks: # all: 0 # environments: # quotation: 0 $logger->trace("*$YamlName specified with fields in $_, looking for $name") if $is_t_switch_active; - ${$self}{$_} = ${${$masterSettings{modifyLineBreaks}{$_}}{$YamlName}}{$name} if (defined ${${$masterSettings{modifyLineBreaks}{$_}}{$YamlName}}{$name}); - } elsif(defined ${$masterSettings{modifyLineBreaks}{$_}}{$YamlName}){ + ${$self}{$_} = ${${$mainSettings{modifyLineBreaks}{$_}}{$YamlName}}{$name} if (defined ${${$mainSettings{modifyLineBreaks}{$_}}{$YamlName}}{$name}); + } elsif(defined ${$mainSettings{modifyLineBreaks}{$_}}{$YamlName}){ # textWrapOptions/removeParagraphLineBreaks: # all: 0 # environments: 0 - $logger->trace("*$YamlName specified with just a number in $_ ${$masterSettings{modifyLineBreaks}{$_}}{$YamlName}") if $is_t_switch_active; - ${$self}{$_} = ${$masterSettings{modifyLineBreaks}{$_}}{$YamlName} if (defined ${$masterSettings{modifyLineBreaks}{$_}}{$YamlName}); + $logger->trace("*$YamlName specified with just a number in $_ ${$mainSettings{modifyLineBreaks}{$_}}{$YamlName}") if $is_t_switch_active; + ${$self}{$_} = ${$mainSettings{modifyLineBreaks}{$_}}{$YamlName} if (defined ${$mainSettings{modifyLineBreaks}{$_}}{$YamlName}); } } @@ -913,17 +996,17 @@ sub yaml_get_columns{ my $YamlName = ${$self}{modifyLineBreaksYamlName}; # the columns settings can have a variety of different ways of being specified - if(ref ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns} eq "HASH"){ + if(ref ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns} eq "HASH"){ # assign default value of $columns my $columns; - if(defined ${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}){ - $columns = ${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}; + if(defined ${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}){ + $columns = ${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}; } else { $columns = 80; } # possibly specify object wrapping on a per-name basis - if(ref ${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName} eq "HASH"){ + if(ref ${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName} eq "HASH"){ # for example: # modifyLineBreaks: # textWrapOptions: @@ -933,10 +1016,10 @@ sub yaml_get_columns{ # default: 80 # something: 10 # another: 20 - if(defined ${${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{${$self}{name}}){ - $columns = ${${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{${$self}{name}}; - } elsif (${${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{default}){ - $columns = ${${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{default}; + if(defined ${${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{${$self}{name}}){ + $columns = ${${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{${$self}{name}}; + } elsif (${${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{default}){ + $columns = ${${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}}{default}; } } else { # for example: @@ -945,11 +1028,11 @@ sub yaml_get_columns{ # columns: # default: 80 # environments: 10 - $columns = ${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}; + $columns = ${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{$YamlName}; } ${$self}{columns} = $columns; } else { - ${$self}{columns} = ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}; + ${$self}{columns} = ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}; } return; } @@ -973,8 +1056,8 @@ sub yaml_poly_switch_get_every_or_custom_value{ my $name = ($YamlName =~ m/Arguments/) ? ${$self}{parent} : ${$self}{name}; # these variables just ease the notation what follows - my $everyValue = ${${$masterSettings{modifyLineBreaks}}{$YamlName}}{$toBeAssignedToAlias}; - my $customValue = ${${${$masterSettings{modifyLineBreaks}}{$YamlName}}{$name}}{$toBeAssignedToAlias}; + my $everyValue = ${${$mainSettings{modifyLineBreaks}}{$YamlName}}{$toBeAssignedToAlias}; + my $customValue = ${${${$mainSettings{modifyLineBreaks}}{$YamlName}}{$name}}{$toBeAssignedToAlias}; # check for the *custom* value if (defined $customValue){ @@ -1043,12 +1126,12 @@ sub yaml_get_indentation_information{ my $indentationInformation; foreach my $indentationAbout ("noAdditionalIndent","indentRules"){ # check that the 'thing' is defined - if(defined ${$masterSettings{$indentationAbout}}{$name}){ - if(ref ${$masterSettings{$indentationAbout}}{$name} eq "HASH"){ + if(defined ${$mainSettings{$indentationAbout}}{$name}){ + if(ref ${$mainSettings{$indentationAbout}}{$name} eq "HASH"){ $logger->trace("$indentationAbout indentation specified with multiple fields for $name, searching for $name: $YamlName (see $indentationAbout)") if $is_t_switch_active ; - $indentationInformation = ${${$masterSettings{$indentationAbout}}{$name}}{$YamlName}; + $indentationInformation = ${${$mainSettings{$indentationAbout}}{$name}}{$YamlName}; } else { - $indentationInformation = ${$masterSettings{$indentationAbout}}{$name}; + $indentationInformation = ${$mainSettings{$indentationAbout}}{$name}; $logger->trace("$indentationAbout indentation specified for $name (for *all* fields, body, optionalArguments, mandatoryArguments, afterHeading), using '$indentationInformation' (see $indentationAbout)") if $is_t_switch_active ; } # return, after performing an integrity check @@ -1070,23 +1153,23 @@ sub yaml_get_indentation_information{ foreach my $indentationAbout ("noAdditionalIndent","indentRules"){ # global assignments in noAdditionalIndentGlobal and/or indentRulesGlobal my $globalInformation = $indentationAbout."Global"; - next if(!(defined ${$masterSettings{$globalInformation}}{$YamlName})); - if( ($globalInformation eq "noAdditionalIndentGlobal") and ${$masterSettings{$globalInformation}}{$YamlName}==1){ + next if(!(defined ${$mainSettings{$globalInformation}}{$YamlName})); + if( ($globalInformation eq "noAdditionalIndentGlobal") and ${$mainSettings{$globalInformation}}{$YamlName}==1){ $logger->trace("$globalInformation specified for $YamlName (see $globalInformation)") if $is_t_switch_active; return q(); } elsif($globalInformation eq "indentRulesGlobal") { - if(${$masterSettings{$globalInformation}}{$YamlName}=~m/^\h*$/){ + if(${$mainSettings{$globalInformation}}{$YamlName}=~m/^\h*$/){ $logger->trace("$globalInformation specified for $YamlName (see $globalInformation)") if $is_t_switch_active; - return ${$masterSettings{$globalInformation}}{$YamlName}; - } elsif (${$masterSettings{$globalInformation}}{$YamlName} ne '0') { - $logger->warn("$globalInformation specified (${$masterSettings{$globalInformation}}{$YamlName}) for $YamlName, but it needs to only contain horizontal space -- I'm ignoring this one"); + return ${$mainSettings{$globalInformation}}{$YamlName}; + } elsif (${$mainSettings{$globalInformation}}{$YamlName} ne '0') { + $logger->warn("$globalInformation specified (${$mainSettings{$globalInformation}}{$YamlName}) for $YamlName, but it needs to only contain horizontal space -- I'm ignoring this one"); } } } # return defaultIndent, by default $logger->trace("Using defaultIndent for $name") if $is_t_switch_active; - return $masterSettings{defaultIndent}; + return $mainSettings{defaultIndent}; } sub yaml_get_object_attribute_for_indentation_settings{ @@ -1107,13 +1190,13 @@ sub yaml_get_object_attribute_for_indentation_settings{ sub yaml_update_dumper_settings{ # log file preferences - $Data::Dumper::Terse = ${$masterSettings{logFilePreferences}{Dumper}}{Terse}; - $Data::Dumper::Indent = ${$masterSettings{logFilePreferences}{Dumper}}{Indent}; - $Data::Dumper::Useqq = ${$masterSettings{logFilePreferences}{Dumper}}{Useqq}; - $Data::Dumper::Deparse = ${$masterSettings{logFilePreferences}{Dumper}}{Deparse}; - $Data::Dumper::Quotekeys = ${$masterSettings{logFilePreferences}{Dumper}}{Quotekeys}; - $Data::Dumper::Sortkeys = ${$masterSettings{logFilePreferences}{Dumper}}{Sortkeys}; - $Data::Dumper::Pair = ${$masterSettings{logFilePreferences}{Dumper}}{Pair}; + $Data::Dumper::Terse = ${$mainSettings{logFilePreferences}{Dumper}}{Terse}; + $Data::Dumper::Indent = ${$mainSettings{logFilePreferences}{Dumper}}{Indent}; + $Data::Dumper::Useqq = ${$mainSettings{logFilePreferences}{Dumper}}{Useqq}; + $Data::Dumper::Deparse = ${$mainSettings{logFilePreferences}{Dumper}}{Deparse}; + $Data::Dumper::Quotekeys = ${$mainSettings{logFilePreferences}{Dumper}}{Quotekeys}; + $Data::Dumper::Sortkeys = ${$mainSettings{logFilePreferences}{Dumper}}{Sortkeys}; + $Data::Dumper::Pair = ${$mainSettings{logFilePreferences}{Dumper}}{Pair}; } 1; diff --git a/support/latexindent/LatexIndent/Heading.pm b/support/latexindent/LatexIndent/Heading.pm index 0c42f166a6..24d6865c4d 100644 --- a/support/latexindent/LatexIndent/Heading.pm +++ b/support/latexindent/LatexIndent/Heading.pm @@ -19,7 +19,7 @@ use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::Switches qw/$is_m_switch_active $is_t_switch_active $is_tt_switch_active/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::Special qw/$specialBeginBasicRegExp/; use Exporter qw/import/; @@ -33,7 +33,7 @@ sub construct_headings_levels{ my $self = shift; # grab the heading levels - my %headingsLevels = %{$masterSettings{indentAfterHeadings}}; + my %headingsLevels = %{$mainSettings{indentAfterHeadings}}; # output to log file $logger->trace("*Constructing headings reg exp for example, chapter, section, etc (see indentAfterThisHeading)") if $is_t_switch_active ; diff --git a/support/latexindent/LatexIndent/HorizontalWhiteSpace.pm b/support/latexindent/LatexIndent/HorizontalWhiteSpace.pm index 9c5a04e2fb..695e18223f 100644 --- a/support/latexindent/LatexIndent/HorizontalWhiteSpace.pm +++ b/support/latexindent/LatexIndent/HorizontalWhiteSpace.pm @@ -16,7 +16,7 @@ package LatexIndent::HorizontalWhiteSpace; # For all communication, please visit: https://github.com/cmhughes/latexindent.pl use strict; use warnings; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; use Exporter qw/import/; @@ -30,27 +30,27 @@ sub remove_trailing_whitespace{ # removeTrailingWhitespace can be either a hash or a scalar, but if # it's a scalar, we need to fix it - if(ref($masterSettings{removeTrailingWhitespace}) ne 'HASH'){ + if(ref($mainSettings{removeTrailingWhitespace}) ne 'HASH'){ $logger->trace("removeTrailingWhitespace specified as scalar, will update it to be a hash") if $is_t_switch_active; # grab the value - my $removeTWS = $masterSettings{removeTrailingWhitespace}; + my $removeTWS = $mainSettings{removeTrailingWhitespace}; # delete the scalar - delete $masterSettings{removeTrailingWhitespace}; + delete $mainSettings{removeTrailingWhitespace}; # redefine it as a hash - ${$masterSettings{removeTrailingWhitespace}}{beforeProcessing} = $removeTWS; - ${$masterSettings{removeTrailingWhitespace}}{afterProcessing} = $removeTWS; + ${$mainSettings{removeTrailingWhitespace}}{beforeProcessing} = $removeTWS; + ${$mainSettings{removeTrailingWhitespace}}{afterProcessing} = $removeTWS; $logger->trace("removeTrailingWhitespace: beforeProcessing is now $removeTWS") if $is_t_switch_active; $logger->trace("removeTrailingWhitespace: afterProcessing is now $removeTWS") if $is_t_switch_active; } # this method can be called before the indendation, and after, depending upon the input if($input{when} eq "before"){ - return unless(${$masterSettings{removeTrailingWhitespace}}{beforeProcessing}); + return unless(${$mainSettings{removeTrailingWhitespace}}{beforeProcessing}); $logger->trace("Removing trailing white space *before* the document is processed (see removeTrailingWhitespace: beforeProcessing)") if $is_t_switch_active; } elsif($input{when} eq "after"){ - return unless(${$masterSettings{removeTrailingWhitespace}}{afterProcessing}); + return unless(${$mainSettings{removeTrailingWhitespace}}{afterProcessing}); $logger->trace("Removing trailing white space *after* the document is processed (see removeTrailingWhitespace: afterProcessing)") if $is_t_switch_active; } else { return; diff --git a/support/latexindent/LatexIndent/IfElseFi.pm b/support/latexindent/LatexIndent/IfElseFi.pm index 4cbab6efea..e090845828 100644 --- a/support/latexindent/LatexIndent/IfElseFi.pm +++ b/support/latexindent/LatexIndent/IfElseFi.pm @@ -17,7 +17,7 @@ package LatexIndent::IfElseFi; use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_m_switch_active $is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; @@ -33,7 +33,7 @@ our $ifElseFiBasicRegExp = qr/\\if/; # note: we search for \else separately in an attempt to keep this regexp a little more managable sub construct_ifelsefi_regexp{ - my $ifElseFiNameRegExp = qr/${${$masterSettings{fineTuning}}{ifElseFi}}{name}/; + my $ifElseFiNameRegExp = qr/${${$mainSettings{fineTuning}}{ifElseFi}}{name}/; $ifElseFiRegExp = qr/ ( \\ diff --git a/support/latexindent/LatexIndent/Indent.pm b/support/latexindent/LatexIndent/Indent.pm index bf1216d5b1..fcf15fc140 100644 --- a/support/latexindent/LatexIndent/Indent.pm +++ b/support/latexindent/LatexIndent/Indent.pm @@ -19,7 +19,7 @@ use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::Switches qw/$is_m_switch_active $is_t_switch_active $is_tt_switch_active/; use LatexIndent::HiddenChildren qw/%familyTree/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::LogFile qw/$logger/; use Text::Tabs; use Data::Dumper; @@ -126,7 +126,7 @@ sub indent_body{ my $indentation = ${$self}{indentation}; # possibly remove paragraph line breaks - $self->remove_paragraph_line_breaks if ($is_m_switch_active and ${$self}{removeParagraphLineBreaks} and !${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}); + $self->remove_paragraph_line_breaks if ($is_m_switch_active and ${$self}{removeParagraphLineBreaks} and !${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}); # body indendation if(${$self}{linebreaksAtEnd}{begin}==1){ @@ -236,7 +236,7 @@ sub final_indentation_check{ $indentation; /xsmeg; - return unless($masterSettings{maximumIndentation} =~ m/^\h+$/); + return unless($mainSettings{maximumIndentation} =~ m/^\h+$/); # maximum indentation check $logger->trace("*Maximum indentation check") if($is_t_switch_active); @@ -246,7 +246,7 @@ sub final_indentation_check{ ${$self}{body} = join("",@expanded_lines); # grab the maximum indentation - my $maximumIndentation = $masterSettings{maximumIndentation}; + my $maximumIndentation = $mainSettings{maximumIndentation}; my $maximumIndentationLength = length($maximumIndentation)+1; # replace any leading space that is greater than the @@ -355,7 +355,7 @@ sub indent_children_recursively{ $trailingCharacterToken = "%".$self->add_comment_symbol; } elsif ($_==3){ $logger->trace("Adding a blank line at the end of the line that ${$child}{begin} is on, then a linebreak ($BeginStringLogFile == 3)") if $is_t_switch_active; - $trailingCharacterToken = "\n".(${$masterSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:q()); + $trailingCharacterToken = "\n".(${$mainSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:q()); } else { $logger->trace("Adding a linebreak at the beginning of ${$child}{begin} (see $BeginStringLogFile)") if $is_t_switch_active; } diff --git a/support/latexindent/LatexIndent/Item.pm b/support/latexindent/LatexIndent/Item.pm index 16c6bd8b8d..4e10401ae1 100644 --- a/support/latexindent/LatexIndent/Item.pm +++ b/support/latexindent/LatexIndent/Item.pm @@ -18,7 +18,7 @@ use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::IfElseFi qw/$ifElseFiBasicRegExp/; @@ -36,7 +36,7 @@ sub construct_list_of_items{ my $self = shift; # put together a list of the items - while( my ($item,$lookForThisItem)= each %{$masterSettings{itemNames}}){ + while( my ($item,$lookForThisItem)= each %{$mainSettings{itemNames}}){ $listOfItems .= ($listOfItems eq "")?"$item":"|$item" if($lookForThisItem); } @@ -71,7 +71,7 @@ sub find_items{ # otherwise loop through the item names $logger->trace("Searching for items (see itemNames) in ${$self}{name} (see indentAfterItems)") if $is_t_switch_active; - $logger->trace(Dumper(\%{$masterSettings{itemNames}})) if $is_tt_switch_active; + $logger->trace(Dumper(\%{$mainSettings{itemNames}})) if $is_tt_switch_active; while(${$self}{body} =~ m/$itemRegExp\h*($trailingCommentRegExp)?/){ diff --git a/support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm b/support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm index 6eb4f703dd..f7090c3d71 100644 --- a/support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm +++ b/support/latexindent/LatexIndent/KeyEqualsValuesBraces.pm @@ -17,7 +17,7 @@ package LatexIndent::KeyEqualsValuesBraces; use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_m_switch_active $is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; @@ -38,8 +38,8 @@ sub construct_key_equals_values_regexp{ my $blankLineToken = $tokens{blanklines}; # read from fine tuning - my $keyEqualsValuesBracesBrackets = qr/${${$masterSettings{fineTuning}}{keyEqualsValuesBracesBrackets}}{name}/; - my $keyEqualsValuesBracesBracketsFollow = qr/${${$masterSettings{fineTuning}}{keyEqualsValuesBracesBrackets}}{follow}/; + my $keyEqualsValuesBracesBrackets = qr/${${$mainSettings{fineTuning}}{keyEqualsValuesBracesBrackets}}{name}/; + my $keyEqualsValuesBracesBracketsFollow = qr/${${$mainSettings{fineTuning}}{keyEqualsValuesBracesBrackets}}{follow}/; # store the regular expresssion for matching and replacing $key_equals_values_bracesRegExp = qr/ diff --git a/support/latexindent/LatexIndent/Lines.pm b/support/latexindent/LatexIndent/Lines.pm new file mode 100644 index 0000000000..edfe811564 --- /dev/null +++ b/support/latexindent/LatexIndent/Lines.pm @@ -0,0 +1,266 @@ +package LatexIndent::Lines; +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# See http://www.gnu.org/licenses/. +# +# Chris Hughes, 2017 +# +# For all communication, please visit: https://github.com/cmhughes/latexindent.pl +use strict; +use warnings; +use Exporter qw/import/; +use LatexIndent::LogFile qw/$logger/; +use LatexIndent::Switches qw/%switches/; +use LatexIndent::Verbatim qw/%verbatimStorage/; +our @ISA = "LatexIndent::Document"; # class inheritance, Programming Perl, pg 321 +our @EXPORT_OK = qw/lines_body_selected_lines lines_verbatim_create_line_block/; + +sub lines_body_selected_lines { + my $self = shift; + my @lines = @{$_[0]}; + + # strip all space from lines switch + $switches{lines} =~ s/\h//sg; + + $logger->info("*-n,--lines switch is active, operating on lines $switches{lines}"); + $logger->info("number of lines in file: ".($#lines+1)); + $logger->info("*interpretting $switches{lines}"); + + my @lineRanges = split(/,/,$switches{lines}); + my @indentLineRange; + my @NOTindentLineRange; + + my %minMaxStorage; + my %negationMinMaxStorage; + + # loop through line ranges, which are separated by commas + # + # --lines 3-15,17-19 + # + foreach(@lineRanges){ + my $minLine = 0; + my $maxLine = 0; + my $negationMode = 0; + + # + # --lines !3-15 + # + if($_ =~ m/!/s){ + $negationMode = 1; + $_ =~ s/!//s; + $logger->info("negation mode active as $_"); + } + + # --lines min-max + if($_ =~ m/-/s){ + ($minLine,$maxLine) = split(/-/,$_); + } else { + $minLine = $_; + $maxLine = $_; + } + + # both minLine and maxLine need to be INTEGERS + if ($minLine !~ m/^\d+$/ or $maxLine !~ m/^\d+$/){ + $logger->warn("*$_ not a valid line specification; I'm ignoring this entry"); + next; + } + + # swap minLine and maxLine if necessary + if($minLine > $maxLine){ + ($minLine,$maxLine) = ($maxLine, $minLine); + } + + # minline > number of lines needs addressing + if ($minLine-1 > $#lines){ + $logger->warn("*--lines specified with min line $minLine which is *greater than* the number of lines in file: ".($#lines+1)); + $logger->warn("adjusting this value to be ".($#lines+1)); + $minLine = $#lines+1; + } + + # maxline > number of lines needs addressing + if ($maxLine-1 > $#lines){ + $logger->warn("*--lines specified with max line $maxLine which is *greater than* the number of lines in file: ".($#lines+1)); + $logger->warn("adjusting this value to be ".($#lines+1)); + $maxLine = $#lines+1; + } + + # either store the negation, or not + if($negationMode){ + $negationMinMaxStorage{$minLine} = $maxLine; + } else { + $minMaxStorage{$minLine} = $maxLine; + } + $logger->info("min line: $minLine, max line: $maxLine"); + } + + # only proceed if we have a valid line range + if ( (keys %minMaxStorage) < 1 and (keys %negationMinMaxStorage) < 1){ + $logger->warn("*--lines not specified with valid range: $switches{lines}"); + $logger->warn("entire body will be indented, and ignoring $switches{lines}"); + $switches{lines} = 0; + ${$self}{body} = join("",@lines); + return; + } + + # we need to perform the token check here + ${$self}{body} = join("",@lines); + $self->token_check; + ${$self}{body} = q(); + + # negated line ranges + if (keys %negationMinMaxStorage >= 1){ + @NOTindentLineRange = &lines_sort_and_combine_line_range(\%negationMinMaxStorage); + + $logger->info("*negation line range summary: "); + $logger->info("the number of NEGATION line ranges: ".(($#NOTindentLineRange+1)/2)); + $logger->info("the *sorted* NEGATION line ranges are in the form MIN-MAX: "); + for (my $index=0; $index<(($#NOTindentLineRange+1)/2); $index++){ + $logger->info(join("-",@NOTindentLineRange[2*$index..2*$index+1])); + + if($index==0 and $NOTindentLineRange[2*$index]>1){ + $minMaxStorage{1} = $NOTindentLineRange[2*$index]-1; + } elsif($index>0){ + $minMaxStorage{$NOTindentLineRange[2*$index-1]+1} = $NOTindentLineRange[2*$index]-1; + } + } + + # final range + if($NOTindentLineRange[-1]<$#lines){ + $minMaxStorage{$NOTindentLineRange[-1]+1} = $#lines+1; + } + } + + @indentLineRange = &lines_sort_and_combine_line_range(\%minMaxStorage) if (keys %minMaxStorage >= 1) ; + + $logger->info("*line range summary: "); + $logger->info("the number of indent line ranges: ".(($#indentLineRange+1)/2)); + $logger->info("the *sorted* line ranges are in the form MIN-MAX: "); + for (my $index=0; $index<(($#indentLineRange+1)/2); $index++){ + $logger->info(join("-",@indentLineRange[2*$index..2*$index+1])); + } + + my $startLine = 0; + + # now that we have the line range, we can sort arrange the body + while ($#indentLineRange>0){ + my $minLine = shift(@indentLineRange); + my $maxLine = shift(@indentLineRange); + + # perl arrays start at 0 + $minLine--; + $maxLine--; + + $self->lines_verbatim_create_line_block(\@lines,$startLine,$minLine-1) unless ($minLine == 0); + + ${$self}{body} .= join("",@lines[$minLine..$maxLine]); + + $startLine = $maxLine+1; + } + + # final line range + $self->lines_verbatim_create_line_block(\@lines,$startLine,$#lines) if($startLine<=$#lines); + return; +} + +sub lines_sort_and_combine_line_range{ + + my %minMaxStorage = %{$_[0]}; + # + # --lines 8-10,4-5,1-2 + # + # needs to be interpretted as + # + # --lines 1-2,4-5,8-10, + # + # sort the line ranges by the *minimum* value, the associated + # maximum values will be arranged after this + my @indentLineRange = sort { $a <=> $b } keys(%minMaxStorage); + + my @justMinimumValues = @indentLineRange; + for (my $index=0;$index<=$#justMinimumValues;$index++){ + splice(@indentLineRange,2*$index+1,0,$minMaxStorage{$justMinimumValues[$index]}); + } + + for (my $index=1;$index<(($#indentLineRange+1)/2);$index++){ + my $currentMin = $indentLineRange[2*$index]; + my $currentMax = $indentLineRange[2*$index+1]; + my $previousMax = $indentLineRange[2*$index-1]; + my $previousMin = $indentLineRange[2*$index-2]; + + if ( ($currentMin - 1) <= $previousMax and ( $currentMax > $previousMax ) ){ + # overlapping line ranges, for example + # + # --lines 3-5,4-10 + # + # needs to be interpretted as + # + # --lines 3-10 + # + $logger->info("overlapping line range found"); + $logger->info("line ranges (before): ".join(", ",@indentLineRange)); + splice(@indentLineRange,2*$index-1,2); + $logger->info("line ranges (after): ".join(", ",@indentLineRange)); + + # reset index so that loop starts again + $index = 0; + } elsif ( ($currentMin - 1) <= $previousMax and ( $currentMax <= $previousMax ) ){ + # overlapping line ranges, for example + # + # --lines 3-7,4-6 + # + # needs to be interpretted as + # + # --lines 3-7 + # + $logger->info("overlapping line range found"); + $logger->info("line ranges (before): ".join(", ",@indentLineRange)); + splice(@indentLineRange,2*$index,2); + $logger->info("line ranges (after): ".join(", ",@indentLineRange)); + + # reset index so that loop starts again + $index = 0; + } + } + + return @indentLineRange; +} + +sub lines_verbatim_create_line_block{ + my $self = shift; + my @lines = @{$_[0]}; + my $startLine = $_[1]; + my $finishLine = $_[2]; + + my $verbBody = join("",@lines[$startLine..$finishLine]); + $verbBody =~ s/\R?$//s; + + # create a new Verbatim object + my $noIndentBlockObj = LatexIndent::Verbatim->new( begin=>q(), + body=>$verbBody, + end=>q(), + name=>"line-switch-verbatim-protection", + type=>"linesprotect", + modifyLineBreaksYamlName=>"lines-not-to-be-indented", + ); + + # give unique id + $noIndentBlockObj->create_unique_id; + + # verbatim children go in special hash + $verbatimStorage{${$noIndentBlockObj}{id}}=$noIndentBlockObj; + + # remove the environment block, and replace with unique ID + ${$self}{body} .= ${$noIndentBlockObj}{id}."\n"; + + return; +} + +1; diff --git a/support/latexindent/LatexIndent/LogFile.pm b/support/latexindent/LatexIndent/LogFile.pm index 5b44822829..e01792c6fb 100644 --- a/support/latexindent/LatexIndent/LogFile.pm +++ b/support/latexindent/LatexIndent/LogFile.pm @@ -28,7 +28,7 @@ sub process_switches{ # -v switch is just to show the version number if($switches{version}) { print $versionNumber,", ",$versionDate,"\n"; - exit(2); + exit(0); } if(scalar(@ARGV) < 1 or $switches{showhelp}) { @@ -81,9 +81,17 @@ usage: latexindent.pl [options] [file] -rr, --onlyreplacement *only* replacement mode, no indentation; verbatim blocks not respected + -k, --check mode + will exit with 0 if document body unchanged, 1 if changed + -kv, --check mode verbose + as in check mode, but outputs diff to screen as well as to logfile + -n, --lines= + only operate on selected lines; sample usage: + latexindent.pl --lines 3-5 myfile.tex + latexindent.pl --lines 3-5,7-10 myfile.tex ENDQUOTE ; - exit(2); + exit(0); } # if we've made it this far, the processing of switches and logging begins @@ -93,7 +101,14 @@ ENDQUOTE # cruft directory ${$self}{cruftDirectory} = $switches{cruftDirectory}||(dirname ${$self}{fileName}); - die "Could not find directory ${$self}{cruftDirectory}\nExiting, no indentation done." if(!(-d ${$self}{cruftDirectory})); + + # if cruft directory does not exist + if(!(-d ${$self}{cruftDirectory})){ + $logger->fatal("*Could not find directory ${$self}{cruftDirectory}"); + $logger->fatal("Exiting, no indendation done."); + $self->output_logfile(); + exit(6); + } my $logfileName = ($switches{cruftDirectory} ? ${$self}{cruftDirectory}."/" : '').($switches{logFileName}||"indent.log"); @@ -135,6 +150,9 @@ ENDQUOTE $logger->info("-c|--cruft: cruft directory") if($switches{cruftDirectory}); $logger->info("-r|--replacement: replacement mode") if($switches{replacement}); $logger->info("-rr|--onlyreplacement: *only* replacement mode, no indentation") if($switches{onlyreplacement}); + $logger->info("-k|--check mode: will exit with 0 if document body unchanged, 1 if changed") if($switches{check}); + $logger->info("-kv|--check mode verbose: as in check mode, but outputs diff to screen") if($switches{checkverbose}); + $logger->info("-n|--lines mode: will only operate on specific lines $switches{lines}") if($switches{lines}); # check if overwrite and outputfile are active similtaneously if($switches{overwrite} and $switches{outputToFile}){ diff --git a/support/latexindent/LatexIndent/Logger.pm b/support/latexindent/LatexIndent/Logger.pm index 35ff428eab..d3f9d0f48d 100644 --- a/support/latexindent/LatexIndent/Logger.pm +++ b/support/latexindent/LatexIndent/Logger.pm @@ -60,7 +60,7 @@ sub fatal{ $logfileline =~ s/^/ /mg; } push(@logFileLines,$logfileline); - print $logfileline,"\n" if $switches{screenlog}; + print $logfileline,"\n"; } sub trace{ diff --git a/support/latexindent/LatexIndent/ModifyLineBreaks.pm b/support/latexindent/LatexIndent/ModifyLineBreaks.pm index f11221e25b..128dcd8ed8 100644 --- a/support/latexindent/LatexIndent/ModifyLineBreaks.pm +++ b/support/latexindent/LatexIndent/ModifyLineBreaks.pm @@ -18,7 +18,7 @@ use strict; use warnings; use Exporter qw/import/; use Text::Wrap; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_m_switch_active $is_t_switch_active $is_tt_switch_active/; @@ -74,7 +74,7 @@ sub modify_line_breaks_body{ my $trailingCharacterToken = q(); $logger->trace("Adding a blank line at the end of begin ${$self}{begin} followed by a linebreak ($BodyStringLogFile == 3)") if $is_t_switch_active; ${$self}{begin} =~ s/\h*$//; - ${$self}{begin} .= (${$masterSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:"\n")."\n"; + ${$self}{begin} .= (${$mainSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:"\n")."\n"; ${$self}{linebreaksAtEnd}{begin} = 1; $logger->trace("Removing leading space from body of ${$self}{name} (see $BodyStringLogFile)") if $is_t_switch_active; ${$self}{body} =~ s/^\h*//; @@ -127,7 +127,7 @@ sub modify_line_breaks_end{ ${$self}{body} =~ s/\h*$//s; } elsif ($_==3) { $logger->trace("Adding a blank line immediately after body of ${$self}{name} ($EndStringLogFile==3)") if $is_t_switch_active; - $trailingCharacterToken = "\n".(${$masterSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:q()); + $trailingCharacterToken = "\n".(${$mainSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:q()); ${$self}{body} =~ s/\h*$//s; } @@ -203,7 +203,7 @@ sub modify_line_breaks_end_after{ ${$self}{linebreaksAtEnd}{end} = 1; # modified end statement - ${$self}{replacementText} .= (${$masterSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:"\n")."\n"; + ${$self}{replacementText} .= (${$mainSettings{modifyLineBreaks}}{preserveBlankLines}?$tokens{blanklines}:"\n")."\n"; } } } @@ -278,11 +278,11 @@ sub verbatim_modify_line_breaks{ sub text_wrap_remove_paragraph_line_breaks{ my $self = shift; - if(${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ + if(${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); } else { - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); } } @@ -292,7 +292,7 @@ sub text_wrap{ my $self = shift; # alignment at ampersand can take priority - return if(${$self}{lookForAlignDelims} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{alignAtAmpersandTakesPriority}); + return if(${$self}{lookForAlignDelims} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{alignAtAmpersandTakesPriority}); # goal: get an accurate measurement of verbatim objects; # @@ -316,7 +316,7 @@ sub text_wrap{ my @putVerbatimBackIn; # check body for verbatim and get measurements - if (${$self}{body} =~ m/$tokens{verbatim}/s and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{huge} eq "overflow"){ + if (${$self}{body} =~ m/$tokens{verbatim}/s and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{huge} eq "overflow"){ # reference: https://stackoverflow.com/questions/10336660/in-perl-how-can-i-generate-random-strings-consisting-of-eight-hex-digits my @set = ('0' ..'9', 'A' .. 'Z', 'a' .. 'z'); @@ -354,27 +354,27 @@ sub text_wrap{ # columns might have been defined by the user if(defined ${$self}{columns}){ $columns = ${$self}{columns}; - } elsif(ref ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns} eq "HASH"){ - if(defined ${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}){ - $columns = ${${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}; + } elsif(ref ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns} eq "HASH"){ + if(defined ${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}){ + $columns = ${${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}}{default}; } else { $columns = 80; } - } elsif (defined ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}){ - $columns = ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns} ; + } elsif (defined ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}){ + $columns = ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns} ; } else { $columns = 80; } # vital Text::Wrap options $Text::Wrap::columns=$columns; - $Text::Wrap::huge = ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{huge}; + $Text::Wrap::huge = ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{huge}; # all other Text::Wrap options not usually needed/helpful, but available - $Text::Wrap::separator=${$masterSettings{modifyLineBreaks}{textWrapOptions}}{separator} if(${$masterSettings{modifyLineBreaks}{textWrapOptions}}{separator} ne ''); - $Text::Wrap::break = ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{break} if ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{break}; - $Text::Wrap::unexpand = ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{unexpand} if ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{unexpand}; - $Text::Wrap::tabstop = ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{tabstop} if ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{tabstop}; + $Text::Wrap::separator=${$mainSettings{modifyLineBreaks}{textWrapOptions}}{separator} if(${$mainSettings{modifyLineBreaks}{textWrapOptions}}{separator} ne ''); + $Text::Wrap::break = ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{break} if ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{break}; + $Text::Wrap::unexpand = ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{unexpand} if ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{unexpand}; + $Text::Wrap::tabstop = ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{tabstop} if ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{tabstop}; # perform the text wrapping ${$self}{body} = wrap('','',${$self}{body}); @@ -387,7 +387,7 @@ sub construct_paragraph_reg_exp{ $logger->trace("*Constructing the paragraph-stop regexp (see paragraphsStopAt)") if $is_t_switch_active ; my $stopAtRegExp = q(); - while( my ($paragraphStopAt,$yesNo)= each %{${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{paragraphsStopAt}}){ + while( my ($paragraphStopAt,$yesNo)= each %{${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{paragraphsStopAt}}){ if($yesNo){ # the headings (chapter, section, etc) need a slightly special treatment $paragraphStopAt = "afterHeading" if($paragraphStopAt eq "heading"); @@ -436,7 +436,7 @@ sub remove_paragraph_line_breaks{ return unless ${$self}{removeParagraphLineBreaks}; # alignment at ampersand can take priority - return if(${$self}{lookForAlignDelims} and ${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{alignAtAmpersandTakesPriority}); + return if(${$self}{lookForAlignDelims} and ${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{alignAtAmpersandTakesPriority}); $logger->trace("Checking ${$self}{name} for paragraphs (see removeParagraphLineBreaks)") if $is_t_switch_active; diff --git a/support/latexindent/LatexIndent/NamedGroupingBracesBrackets.pm b/support/latexindent/LatexIndent/NamedGroupingBracesBrackets.pm index 50b00ed556..2363407592 100644 --- a/support/latexindent/LatexIndent/NamedGroupingBracesBrackets.pm +++ b/support/latexindent/LatexIndent/NamedGroupingBracesBrackets.pm @@ -17,7 +17,7 @@ package LatexIndent::NamedGroupingBracesBrackets; use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; @@ -35,8 +35,8 @@ sub construct_grouping_braces_brackets_regexp{ my $optAndMandRegExp = $self->get_arguments_regexp; # read from fine tuning - my $NamedGroupingBracesBracketsRegExp = qr/${${$masterSettings{fineTuning}}{namedGroupingBracesBrackets}}{name}/; - my $NamedGroupingFollowRegExp = qr/${${$masterSettings{fineTuning}}{namedGroupingBracesBrackets}}{follow}/; + my $NamedGroupingBracesBracketsRegExp = qr/${${$mainSettings{fineTuning}}{namedGroupingBracesBrackets}}{name}/; + my $NamedGroupingFollowRegExp = qr/${${$mainSettings{fineTuning}}{namedGroupingBracesBrackets}}{follow}/; # defaultSettings.yaml mistakenly had # @@ -50,13 +50,13 @@ sub construct_grouping_braces_brackets_regexp{ # # the mistake was mine, so I feel that the following is necessary; if we # get to V4, then this will be removed and only namedGroupingBracesBrackets will be supported - if(${${$masterSettings{fineTuning}}{NamedGroupingBracesBrackets}}{name}){ + if(${${$mainSettings{fineTuning}}{NamedGroupingBracesBrackets}}{name}){ $logger->warn("*fineTuning:NamedGroupingBracesBrackets is ok for now, but in future versions, fineTuning:namedGroupingBracesBrackets will be used"); - $NamedGroupingBracesBracketsRegExp = qr/${${$masterSettings{fineTuning}}{NamedGroupingBracesBrackets}}{name}/; + $NamedGroupingBracesBracketsRegExp = qr/${${$mainSettings{fineTuning}}{NamedGroupingBracesBrackets}}{name}/; } - if(${${$masterSettings{fineTuning}}{NamedGroupingBracesBrackets}}{follow}){ + if(${${$mainSettings{fineTuning}}{NamedGroupingBracesBrackets}}{follow}){ $logger->warn("*fineTuning:NamedGroupingBracesBrackets is ok for now, but in future versions, fineTuning:namedGroupingBracesBrackets will be used"); - $NamedGroupingFollowRegExp = qr/${${$masterSettings{fineTuning}}{NamedGroupingBracesBrackets}}{follow}/; + $NamedGroupingFollowRegExp = qr/${${$mainSettings{fineTuning}}{NamedGroupingBracesBrackets}}{follow}/; } # store the regular expresssion for matching and replacing diff --git a/support/latexindent/LatexIndent/Preamble.pm b/support/latexindent/LatexIndent/Preamble.pm index a31efd1a49..eab45a10d9 100644 --- a/support/latexindent/LatexIndent/Preamble.pm +++ b/support/latexindent/LatexIndent/Preamble.pm @@ -18,7 +18,7 @@ use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::Switches qw/$is_t_switch_active $is_m_switch_active/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::Environment qw/$environmentBasicRegExp/; use LatexIndent::IfElseFi qw/$ifElseFiBasicRegExp/; @@ -51,36 +51,51 @@ sub indent{ sub tasks_particular_to_each_object{ my $self = shift; + # text wrapping, remove paragraph line breaks + if ($is_m_switch_active){ + $self->yaml_get_textwrap_removeparagraphline_breaks; + } + + # option to textWrap beforeFindingChildCodeBlocks + if( $is_m_switch_active and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 1){ + # call the remove_paragraph_line_breaks and text_wrap routines + if(${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ + $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + } else { + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; + } + } + # search for environments $self->find_environments if ${$self}{body} =~ m/$environmentBasicRegExp/; # search for ifElseFi blocks $self->find_ifelsefi if ${$self}{body} =~ m/$ifElseFiBasicRegExp/s; - if(${$masterSettings{specialBeginEnd}}{specialBeforeCommand}){ + if(${$mainSettings{specialBeginEnd}}{specialBeforeCommand}){ # search for special begin/end $self->find_special if ${$self}{body} =~ m/$specialBeginBasicRegExp/s; # search for commands with arguments - $self->find_commands_or_key_equals_values_braces if(!$masterSettings{preambleCommandsBeforeEnvironments}); + $self->find_commands_or_key_equals_values_braces if(!$mainSettings{preambleCommandsBeforeEnvironments}); } else { # search for commands with arguments - $self->find_commands_or_key_equals_values_braces if(!$masterSettings{preambleCommandsBeforeEnvironments}); + $self->find_commands_or_key_equals_values_braces if(!$mainSettings{preambleCommandsBeforeEnvironments}); # search for special begin/end $self->find_special if ${$self}{body} =~ m/$specialBeginBasicRegExp/s; } # text wrapping, remove paragraph line breaks - if ($is_m_switch_active){ - $self->yaml_get_textwrap_removeparagraphline_breaks; - + if ($is_m_switch_active and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{beforeFindingChildCodeBlocks} == 0){ # call the remove_paragraph_line_breaks and text_wrap routines - if(${$masterSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ + if(${$mainSettings{modifyLineBreaks}{removeParagraphLineBreaks}}{beforeTextWrap}){ $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); } else { - $self->text_wrap if (${$self}{textWrapOptions} and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); + $self->text_wrap if (${$self}{textWrapOptions} and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{perCodeBlockBasis}); $self->remove_paragraph_line_breaks if ${$self}{removeParagraphLineBreaks}; } } diff --git a/support/latexindent/LatexIndent/Replacement.pm b/support/latexindent/LatexIndent/Replacement.pm index 0d79a39f0c..e387d11b4c 100644 --- a/support/latexindent/LatexIndent/Replacement.pm +++ b/support/latexindent/LatexIndent/Replacement.pm @@ -18,7 +18,7 @@ use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active $is_rr_switch_active/; use LatexIndent::LogFile qw/$logger/; use Exporter qw/import/; @@ -34,7 +34,7 @@ sub make_replacements{ $logger->trace("*Replacement mode, -rr switch is active") if $is_t_switch_active ; } - my @replacements = @{$masterSettings{replacements}}; + my @replacements = @{$mainSettings{replacements}}; foreach ( @replacements ){ next if !(${$_}{this} or ${$_}{substitution}); diff --git a/support/latexindent/LatexIndent/Sentence.pm b/support/latexindent/LatexIndent/Sentence.pm index c8534681f0..d41c8869b6 100644 --- a/support/latexindent/LatexIndent/Sentence.pm +++ b/support/latexindent/LatexIndent/Sentence.pm @@ -18,7 +18,7 @@ use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active $is_m_switch_active/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::Environment qw/$environmentBasicRegExp/; @@ -40,7 +40,7 @@ sub one_sentence_per_line{ # sentences FOLLOW my $sentencesFollow = q(); - while( my ($sentencesFollowEachPart,$yesNo)= each %{${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}){ + while( my ($sentencesFollowEachPart,$yesNo)= each %{${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}){ if($yesNo){ if($sentencesFollowEachPart eq "par"){ $sentencesFollowEachPart = qr/\R?\\par/s; @@ -75,7 +75,7 @@ sub one_sentence_per_line{ # if blankLine is not active from sentencesFollow then we need to set up the # beginning of the string, but make sure that it is *not* followed by a # blank line token, or a blank line - if(!${${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{blankLine}){ + if(!${${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{blankLine}){ $sentencesFollow .= ($sentencesFollow eq '' ? q() : "|"). qr/ \G @@ -83,7 +83,7 @@ sub one_sentence_per_line{ /sx; } - if(${${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{blankLine}){ + if(${${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{blankLine}){ $sentencesFollow = ($sentencesFollow eq '' ? q() : qr/(?:$sentencesFollow)(?:\h|\R)*/sx ); } else { $sentencesFollow = ($sentencesFollow eq '' ? q() : qr/(?:$sentencesFollow)(?:\h*\R?)/sx ); @@ -98,7 +98,7 @@ sub one_sentence_per_line{ # sentences BEGIN with my $sentencesBeginWith = q(); - while( my ($sentencesBeginWithEachPart,$yesNo)= each %{${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesBeginWith}}){ + while( my ($sentencesBeginWithEachPart,$yesNo)= each %{${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesBeginWith}}){ if($yesNo){ if($sentencesBeginWithEachPart eq "A-Z"){ $logger->trace("sentence BEGINS with capital letters (see oneSentencePerLine:sentencesBeginWith:A-Z)") if $is_t_switch_active; @@ -118,17 +118,17 @@ sub one_sentence_per_line{ # sentences END with # sentences END with # sentences END with - ${${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesEndWith}}{basicFullStop} = 0 if ${${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesEndWith}}{betterFullStop}; + ${${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesEndWith}}{basicFullStop} = 0 if ${${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesEndWith}}{betterFullStop}; my $sentencesEndWith = q(); - while( my ($sentencesEndWithEachPart,$yesNo)= each %{${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesEndWith}}){ + while( my ($sentencesEndWithEachPart,$yesNo)= each %{${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesEndWith}}){ if($yesNo){ if($sentencesEndWithEachPart eq "basicFullStop"){ $logger->trace("sentence ENDS with full stop (see oneSentencePerLine:sentencesEndWith:basicFullStop") if $is_t_switch_active; $sentencesEndWithEachPart = qr/\./; } elsif($sentencesEndWithEachPart eq "betterFullStop"){ $logger->trace("sentence ENDS with *better* full stop (see oneSentencePerLine:sentencesEndWith:betterFullStop") if $is_t_switch_active; - $sentencesEndWithEachPart = qr/${${$masterSettings{fineTuning}}{modifyLineBreaks}}{betterFullStop}/; + $sentencesEndWithEachPart = qr/${${$mainSettings{fineTuning}}{modifyLineBreaks}}{betterFullStop}/; } elsif ($sentencesEndWithEachPart eq "exclamationMark"){ $logger->trace("sentence ENDS with exclamation mark (see oneSentencePerLine:sentencesEndWith:exclamationMark)") if $is_t_switch_active; $sentencesEndWithEachPart = qr/!/; @@ -163,12 +163,12 @@ sub one_sentence_per_line{ # # is set to 0 then we need to *exclude* the $tokens{blanklines} from the sentence routine, # otherwise we could begin a sentence with $tokens{blanklines}. - if(!${${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{blankLine}){ + if(!${${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{blankLine}){ $notWithinSentence .= "|".qr/(?:\h*\R?$tokens{blanklines})/s; } # similarly for \par - if(${${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{par}){ + if(${${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentencesFollow}}{par}){ $notWithinSentence .= "|".qr/(?:\R?\\par)/s; } @@ -193,7 +193,7 @@ sub one_sentence_per_line{ my $lineBreaksAtEnd = ($6? 1 : ($7?1:0) ); my $trailingComments = q(); # remove trailing comments from within the body of the sentence - if (${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{removeSentenceLineBreaks}){ + if (${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{removeSentenceLineBreaks}){ while($middle =~ m|$trailingCommentRegExp|){ $middle =~ s|\h*($trailingCommentRegExp)||s; $trailingComments .= $1; @@ -203,7 +203,7 @@ sub one_sentence_per_line{ $middle =~ s| (?!\A) # not at the *beginning* of a match (\h*)\R # possible horizontal space, then line break - |$1?$1:" ";|esgx if ${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{removeSentenceLineBreaks}; + |$1?$1:" ";|esgx if ${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{removeSentenceLineBreaks}; $middle =~ s|$tokens{blanklines}\h*\R?|$tokens{blanklines}\n|sg; $logger->trace("follows: $beginning") if $is_tt_switch_active; $logger->trace("sentence: $middle") if $is_tt_switch_active; @@ -211,13 +211,13 @@ sub one_sentence_per_line{ # if indentation is specified for sentences, then we treat # them as objects; otherwise we don't my $replacementText = q(); - if(${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent} =~ m|\h+|){ + if(${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent} =~ m|\h+|){ my $sentenceObj = LatexIndent::Sentence->new( name=>"sentence", begin=>q(), body=>$middle.$end, end=>q(), - indentation=>${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent}, + indentation=>${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent}, modifyLineBreaksYamlName=>"sentence", BeginStartsOnOwnLine=>1, ); @@ -236,7 +236,7 @@ sub one_sentence_per_line{ $replacementText; /xsge; - if(${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent} !~ m/\h+/){ + if(${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent} !~ m/\h+/){ # loop back through the sentenceStorage and replace with the sentence, adjusting line breaks # before and after appropriately while( my $sentence = pop @sentenceStorage){ @@ -244,7 +244,7 @@ sub one_sentence_per_line{ my $sentenceStorageValue = ${$sentence}{value}; # option to text wrap (and option to indent) sentences - if(${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{textWrapSentences}){ + if(${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{textWrapSentences}){ my $sentenceObj = LatexIndent::Document->new(body=>$sentenceStorageValue, name=>"sentence", modifyLineBreaksYamlName=>"sentence", @@ -257,7 +257,7 @@ sub one_sentence_per_line{ $logger->info("You have specified oneSentencePerLine:textWrapSentences, but columns is set to 0"); $logger->info("You might wish to specify, for example: modifyLineBreaks: textWrapOptions: columns: 80"); $logger->info("The value of oneSentencePerLine:textWrapSentences will now be set to 0, so you won't see this message again"); - ${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{textWrapSentences} = 0; + ${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{textWrapSentences} = 0; } else { $sentenceObj->text_wrap; } @@ -270,7 +270,7 @@ sub one_sentence_per_line{ /sx){ my $bodyFirstLine = $1; my $remainingBody = $2; - my $indentation = ${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent}; + my $indentation = ${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent}; $logger->trace("first line of sencent: $bodyFirstLine") if $is_tt_switch_active; $logger->trace("remaining body (before indentation):\n'$remainingBody'") if($is_tt_switch_active); @@ -305,7 +305,7 @@ sub tasks_particular_to_each_object{ my $self = shift; # option to text wrap (and option to indent) sentences - if(${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{textWrapSentences}){ + if(${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{textWrapSentences}){ $self->yaml_get_columns; $self->text_wrap; } @@ -327,7 +327,7 @@ sub tasks_particular_to_each_object{ } sub indent_body{ - return unless ${$masterSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent} =~ m/\h+/; + return unless ${$mainSettings{modifyLineBreaks}{oneSentencePerLine}}{sentenceIndent} =~ m/\h+/; my $self = shift; diff --git a/support/latexindent/LatexIndent/Special.pm b/support/latexindent/LatexIndent/Special.pm index 4e1a8020b3..4b585f42ae 100644 --- a/support/latexindent/LatexIndent/Special.pm +++ b/support/latexindent/LatexIndent/Special.pm @@ -18,7 +18,7 @@ use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; use LatexIndent::IfElseFi qw/$ifElseFiBasicRegExp/; @@ -39,11 +39,11 @@ sub construct_special_begin{ $logger->trace("*Constructing specialBeginEnd regex (see specialBeginEnd)") if $is_t_switch_active; # put together a list of the begin terms in special - while( my ($specialName,$BeginEnd)= each %{$masterSettings{specialBeginEnd}}){ + while( my ($specialName,$BeginEnd)= each %{$mainSettings{specialBeginEnd}}){ if(ref($BeginEnd) eq "HASH"){ if (not defined ${$BeginEnd}{lookForThis}){ ${$BeginEnd}{lookForThis} = 1; - ${${$masterSettings{specialBeginEnd}}{$specialName}}{lookForThis} = 1; + ${${$mainSettings{specialBeginEnd}}{$specialName}}{lookForThis} = 1; $logger->trace("setting lookForThis:1 for $specialName (lookForThis not specified)") if $is_t_switch_active; } @@ -53,7 +53,7 @@ sub construct_special_begin{ } # put together a list of the begin terms in special - while( my ($specialName,$BeginEnd)= each %{$masterSettings{specialBeginEnd}}){ + while( my ($specialName,$BeginEnd)= each %{$mainSettings{specialBeginEnd}}){ # only append the regexps if lookForThis is 1 if( ref($BeginEnd) eq "HASH" ){ @@ -129,13 +129,13 @@ sub find_special{ # otherwise loop through the special begin/end $logger->trace("*Searching ${$self}{name} for special begin/end (see specialBeginEnd)") if $is_t_switch_active ; - $logger->trace(Dumper(\%{$masterSettings{specialBeginEnd}})) if $is_tt_switch_active; + $logger->trace(Dumper(\%{$mainSettings{specialBeginEnd}})) if $is_tt_switch_active; # keep looping as long as there is a special match of some kind while(${$self}{body} =~ m/$specialAllMatchesRegExp/sx){ # loop through each special match - while( my ($specialName,$BeginEnd)= each %{$masterSettings{specialBeginEnd}}){ + while( my ($specialName,$BeginEnd)= each %{$mainSettings{specialBeginEnd}}){ # log file if((ref($BeginEnd) eq "HASH") and ${$BeginEnd}{lookForThis}=~m/\d/s and ${$BeginEnd}{lookForThis} == 1){ @@ -197,21 +197,21 @@ sub find_special{ sub tasks_particular_to_each_object{ my $self = shift; - if( defined ${${$masterSettings{specialBeginEnd}}{${$self}{name}}}{middle}){ + if( defined ${${$mainSettings{specialBeginEnd}}{${$self}{name}}}{middle}){ $logger->trace("middle specified for ${$self}{name} (see specialBeginEnd -> ${$self}{name} -> middle)") if $is_t_switch_active ; # initiate the middle regexp my $specialMiddle = q(); # we can specify middle as either an array or a hash - if(ref(${${$masterSettings{specialBeginEnd}}{${$self}{name}}}{middle}) eq "ARRAY"){ + if(ref(${${$mainSettings{specialBeginEnd}}{${$self}{name}}}{middle}) eq "ARRAY"){ $logger->trace("looping through middle array for ${$self}{name}") if $is_t_switch_active ; - foreach(@{${${$masterSettings{specialBeginEnd}}{${$self}{name}}}{middle}}){ + foreach(@{${${$mainSettings{specialBeginEnd}}{${$self}{name}}}{middle}}){ $specialMiddle .= ($specialMiddle eq ""?q():"|").$_; } $specialMiddle = qr/$specialMiddle/; } else { - $specialMiddle = qr/${${$masterSettings{specialBeginEnd}}{${$self}{name}}}{middle}/; + $specialMiddle = qr/${${$mainSettings{specialBeginEnd}}{${$self}{name}}}{middle}/; } $logger->trace("overall middle regexp for ${$self}{name}: $specialMiddle") if $is_t_switch_active ; @@ -236,7 +236,7 @@ sub tasks_particular_to_each_object{ } - return unless(${$masterSettings{specialBeginEnd}}{specialBeforeCommand}); + return unless(${$mainSettings{specialBeginEnd}}{specialBeforeCommand}); # search for commands with arguments $self->find_commands_or_key_equals_values_braces; @@ -253,7 +253,7 @@ sub post_indentation_check{ # needed to remove leading horizontal space before \else my $self = shift; - return unless ( defined ${${$masterSettings{specialBeginEnd}}{${$self}{name}}}{middle}); + return unless ( defined ${${$mainSettings{specialBeginEnd}}{${$self}{name}}}{middle}); $logger->trace("post indentation check for ${$self}{name} to account for middle") if $is_t_switch_active ; diff --git a/support/latexindent/LatexIndent/Switches.pm b/support/latexindent/LatexIndent/Switches.pm index e5e93b1de0..360ac41504 100644 --- a/support/latexindent/LatexIndent/Switches.pm +++ b/support/latexindent/LatexIndent/Switches.pm @@ -17,7 +17,7 @@ package LatexIndent::Switches; use strict; use warnings; use Exporter qw/import/; -our @EXPORT_OK = qw/%switches store_switches $is_m_switch_active $is_t_switch_active $is_tt_switch_active $is_r_switch_active $is_rr_switch_active $is_rv_switch_active/; +our @EXPORT_OK = qw/%switches store_switches $is_m_switch_active $is_t_switch_active $is_tt_switch_active $is_r_switch_active $is_rr_switch_active $is_rv_switch_active $is_check_switch_active $is_check_verbose_switch_active/; our %switches; our $is_m_switch_active; our $is_t_switch_active; @@ -25,6 +25,8 @@ our $is_tt_switch_active; our $is_r_switch_active; our $is_rr_switch_active; our $is_rv_switch_active; +our $is_check_switch_active; +our $is_check_verbose_switch_active; sub store_switches{ my $self = shift; @@ -39,6 +41,9 @@ sub store_switches{ $is_rr_switch_active = defined $switches{onlyreplacement}?$switches{onlyreplacement}: 0; $is_rv_switch_active = defined $switches{replacementRespectVerb}?$switches{replacementRespectVerb}: 0; $is_r_switch_active = ($is_rr_switch_active|$is_rv_switch_active) ? ($is_rr_switch_active|$is_rv_switch_active) : $is_r_switch_active; + $is_check_switch_active = defined $switches{check}?$switches{check}: 0; + $is_check_verbose_switch_active = defined $switches{checkverbose}?$switches{checkverbose}: 0; + $is_check_switch_active = $is_check_verbose_switch_active ? $is_check_verbose_switch_active : $is_check_switch_active; delete ${$self}{switches}; } 1; diff --git a/support/latexindent/LatexIndent/TrailingComments.pm b/support/latexindent/LatexIndent/TrailingComments.pm index 262201e76a..7d03349c52 100644 --- a/support/latexindent/LatexIndent/TrailingComments.pm +++ b/support/latexindent/LatexIndent/TrailingComments.pm @@ -18,7 +18,7 @@ use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active $is_m_switch_active/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::LogFile qw/$logger/; use Data::Dumper; use Exporter qw/import/; @@ -28,7 +28,7 @@ our $commentCounter = 0; our $trailingCommentRegExp; sub construct_trailing_comment_regexp{ - my $notPreceededBy = qr/${${$masterSettings{fineTuning}}{trailingComments}}{notPreceededBy}/; + my $notPreceededBy = qr/${${$mainSettings{fineTuning}}{trailingComments}}{notPreceededBy}/; $trailingCommentRegExp = qr/$notPreceededBy%$tokens{trailingComment}\d+$tokens{endOfToken}/; } @@ -56,7 +56,7 @@ sub remove_trailing_comments{ my $self = shift; $logger->trace("*Storing trailing comments")if $is_t_switch_active; - my $notPreceededBy = qr/${${$masterSettings{fineTuning}}{trailingComments}}{notPreceededBy}/; + my $notPreceededBy = qr/${${$mainSettings{fineTuning}}{trailingComments}}{notPreceededBy}/; # perform the substitution ${$self}{body} =~ s/ @@ -104,8 +104,8 @@ sub put_trailing_comments_back_in{ my $trailingcommentIDwithLineBreaks; # construct a reg exp that contains possible line breaks in between each character - if(${$masterSettings{modifyLineBreaks}{textWrapOptions}}{separator} ne ''){ - $trailingcommentIDwithLineBreaks = join("\\".${$masterSettings{modifyLineBreaks}{textWrapOptions}}{separator}."?",split(//,$trailingcommentID)); + if(${$mainSettings{modifyLineBreaks}{textWrapOptions}}{separator} ne ''){ + $trailingcommentIDwithLineBreaks = join("\\".${$mainSettings{modifyLineBreaks}{textWrapOptions}}{separator}."?",split(//,$trailingcommentID)); } else { $trailingcommentIDwithLineBreaks = join("(?:\\h|\\R)*",split(//,$trailingcommentID)); } @@ -114,7 +114,7 @@ sub put_trailing_comments_back_in{ # replace the line-broken trailing comment ID with a non-broken trailing comment ID ${$self}{body} =~ s/%\R?$trailingcommentIDwithLineBreaksRegExp/%$trailingcommentID/s; } - my $notPreceededBy = qr/${${$masterSettings{fineTuning}}{trailingComments}}{notPreceededBy}/; + my $notPreceededBy = qr/${${$mainSettings{fineTuning}}{trailingComments}}{notPreceededBy}/; if(${$self}{body} =~ m/%$trailingcommentID ( (?! # not immediately preceeded by diff --git a/support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm b/support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm index eea6ee6747..55f0d7fa27 100644 --- a/support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm +++ b/support/latexindent/LatexIndent/UnNamedGroupingBracesBrackets.pm @@ -17,7 +17,7 @@ package LatexIndent::UnNamedGroupingBracesBrackets; use strict; use warnings; use LatexIndent::Tokens qw/%tokens/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::TrailingComments qw/$trailingCommentRegExp/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active/; use LatexIndent::LogFile qw/$logger/; @@ -38,8 +38,8 @@ sub construct_unnamed_grouping_braces_brackets_regexp{ my $blankLineToken = $tokens{blanklines}; # arguments Before, by default, includes beamer special and numbered arguments, for example #1 #2, etc - my $argumentsBefore = qr/${${$masterSettings{fineTuning}}{arguments}}{before}/; - my $UnNamedGroupingFollowRegExp = qr/${${$masterSettings{fineTuning}}{UnNamedGroupingBracesBrackets}}{follow}/; + my $argumentsBefore = qr/${${$mainSettings{fineTuning}}{arguments}}{before}/; + my $UnNamedGroupingFollowRegExp = qr/${${$mainSettings{fineTuning}}{UnNamedGroupingBracesBrackets}}{follow}/; # store the regular expresssion for matching and replacing $un_named_grouping_braces_RegExp = qr/ diff --git a/support/latexindent/LatexIndent/Verbatim.pm b/support/latexindent/LatexIndent/Verbatim.pm index 2d8fe0e2d8..3abe2e0d46 100644 --- a/support/latexindent/LatexIndent/Verbatim.pm +++ b/support/latexindent/LatexIndent/Verbatim.pm @@ -19,7 +19,7 @@ use warnings; use Data::Dumper; use Exporter qw/import/; use LatexIndent::Tokens qw/%tokens/; -use LatexIndent::GetYamlSettings qw/%masterSettings/; +use LatexIndent::GetYamlSettings qw/%mainSettings/; use LatexIndent::Switches qw/$is_t_switch_active $is_tt_switch_active $is_m_switch_active/; use LatexIndent::LogFile qw/$logger/; our @EXPORT_OK = qw/put_verbatim_back_in find_verbatim_environments find_noindent_block find_verbatim_commands find_verbatim_special verbatim_common_tasks %verbatimStorage/; @@ -32,8 +32,8 @@ sub find_noindent_block{ # noindent block $logger->trace('*Searching for NOINDENTBLOCk (see noIndentBlock)') if $is_t_switch_active; - $logger->trace(Dumper(\%{$masterSettings{noIndentBlock}})) if($is_tt_switch_active); - while( my ($noIndentBlock,$yesno)= each %{$masterSettings{noIndentBlock}}){ + $logger->trace(Dumper(\%{$mainSettings{noIndentBlock}})) if($is_tt_switch_active); + while( my ($noIndentBlock,$yesno)= each %{$mainSettings{noIndentBlock}}){ # integrity check on the field for noIndentBlock if ( ref($yesno) eq "HASH" ){ @@ -123,7 +123,7 @@ sub find_noindent_block{ $logger->trace("replaced with ID: ${$noIndentBlockObj}{id}") if $is_t_switch_active; # possible decoration in log file - $logger->trace(${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; + $logger->trace(${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; } } return; @@ -134,8 +134,8 @@ sub find_verbatim_environments{ # verbatim environments $logger->trace('*Searching for VERBATIM environments (see verbatimEnvironments)') if $is_t_switch_active; - $logger->trace(Dumper(\%{$masterSettings{verbatimEnvironments}})) if($is_tt_switch_active); - while( my ($verbEnv,$yesno)= each %{$masterSettings{verbatimEnvironments}}){ + $logger->trace(Dumper(\%{$mainSettings{verbatimEnvironments}})) if($is_tt_switch_active); + while( my ($verbEnv,$yesno)= each %{$mainSettings{verbatimEnvironments}}){ if($yesno){ $logger->trace("looking for $verbEnv:$yesno environments") if $is_t_switch_active; @@ -192,7 +192,7 @@ sub find_verbatim_environments{ $logger->trace("replaced with ID: ${$verbatimBlock}{id}") if $is_t_switch_active; # possible decoration in log file - $logger->trace(${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; + $logger->trace(${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; } } else { $logger->trace("*not* looking for $verbEnv as $verbEnv:$yesno") if $is_t_switch_active; @@ -210,8 +210,8 @@ sub find_verbatim_commands{ # verbatim commands need to be put back in *after* trailing comments have been put # back in $logger->trace('*Searching for VERBATIM commands (see verbatimCommands)') if $is_t_switch_active; - $logger->trace(Dumper(\%{$masterSettings{verbatimCommands}})) if($is_tt_switch_active); - while( my ($verbCommand,$yesno)= each %{$masterSettings{verbatimCommands}}){ + $logger->trace(Dumper(\%{$mainSettings{verbatimCommands}})) if($is_tt_switch_active); + while( my ($verbCommand,$yesno)= each %{$mainSettings{verbatimCommands}}){ if($yesno){ $logger->trace("looking for $verbCommand:$yesno Commands") if $is_t_switch_active; @@ -281,7 +281,7 @@ sub find_verbatim_commands{ $logger->trace("replaced with ID: ${$verbatimCommand}{id}") if $is_t_switch_active; # possible decoration in log file - $logger->trace(${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; + $logger->trace(${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; } } else { $logger->trace("*not* looking for $verbCommand as $verbCommand:$yesno") if $is_t_switch_active; @@ -295,7 +295,7 @@ sub find_verbatim_special{ my $self = shift; # loop through specialBeginEnd - while( my ($specialName,$BeginEnd)= each %{$masterSettings{specialBeginEnd}}){ + while( my ($specialName,$BeginEnd)= each %{$mainSettings{specialBeginEnd}}){ # only classify special Verbatim if lookForThis is 'verbatim' if( (ref($BeginEnd) eq "HASH") and ${$BeginEnd}{lookForThis}=~m/v/s and ${$BeginEnd}{lookForThis} eq 'verbatim'){ @@ -350,7 +350,7 @@ sub find_verbatim_special{ $logger->trace("replaced with ID: ${$verbatimBlock}{id}") if $is_t_switch_active; # possible decoration in log file - $logger->trace(${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; + $logger->trace(${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}) if ${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; } } } @@ -363,7 +363,7 @@ sub put_verbatim_back_in { my $verbatimCount=0; my $toMatch = q(); if($input{match} eq "everything-except-commands"){ - $toMatch = "noindentblockenvironmentspecial"; + $toMatch = "noindentblockenvironmentspeciallinesprotect"; } else { $toMatch = "command"; } @@ -386,14 +386,32 @@ sub put_verbatim_back_in { while($verbatimFound < $verbatimCount){ while( my ($verbatimID,$child)= each %verbatimStorage){ if($toMatch =~ m/${$child}{type}/){ - if(${$self}{body} =~ m/$verbatimID/mx){ + if(${$self}{body} =~ m/$verbatimID/m){ # possibly remove trailing line break - if(defined ${$child}{EndFinishesWithLineBreak} + if($is_m_switch_active + and defined ${$child}{EndFinishesWithLineBreak} and ${$child}{EndFinishesWithLineBreak}==-1 and ${$self}{body} =~ m/$verbatimID\h*\R/s){ $logger->trace("m-switch active, removing trailing line breaks from ${$child}{name}") if $is_t_switch_active; ${$self}{body} =~ s/$verbatimID(\h*)?(\R|\h)*/$verbatimID /s; } + + # line protection mode can allow line breaks to be removed + # at end of verbatim; these need to be added back in + # + # see + # + # test-cases/line-switch-test-cases/environments-simple-nested-mod13.tex + # + if(${$child}{type} eq "linesprotect"){ + # remove leading space ahead of verbatim ID + ${$self}{body} =~ s/^\h*$verbatimID/$verbatimID/m; + + if($is_m_switch_active and ${$self}{body}=~ m/$verbatimID\h*\S/s){ + ${$self}{body} =~ s/$verbatimID\h*(\S)/$verbatimID\n$1/s; + } + } + # replace ids with body ${$self}{body} =~ s/$verbatimID/${$child}{begin}${$child}{body}${$child}{end}/s; @@ -405,8 +423,8 @@ sub put_verbatim_back_in { delete $verbatimStorage{$verbatimID}; $verbatimFound++; } elsif ($is_m_switch_active - and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{columns}>1 - and ${$masterSettings{modifyLineBreaks}{textWrapOptions}}{huge} ne "overflow" + and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{columns}>1 + and ${$mainSettings{modifyLineBreaks}{textWrapOptions}}{huge} ne "overflow" and ${$self}{body} !~ m/${$child}{id}/){ $logger->trace("$verbatimID not found in body using /m matching, it may have been split across line (see modifyLineBreaks: textWrapOptions)") if($is_t_switch_active); @@ -462,7 +480,7 @@ sub create_unique_id{ sub yaml_get_textwrap_removeparagraphline_breaks{ my $self = shift; - $logger->trace("No text wrap or remove paragraph line breaks for verbatim code blocks, ${$self}{name}") if ${$masterSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; + $logger->trace("No text wrap or remove paragraph line breaks for verbatim code blocks, ${$self}{name}") if ${$mainSettings{logFilePreferences}}{showDecorationFinishCodeBlockTrace}; } 1; diff --git a/support/latexindent/LatexIndent/Version.pm b/support/latexindent/LatexIndent/Version.pm index 81a37b49c0..cd4878cbaa 100644 --- a/support/latexindent/LatexIndent/Version.pm +++ b/support/latexindent/LatexIndent/Version.pm @@ -19,6 +19,6 @@ use warnings; use Exporter qw/import/; our @EXPORT_OK = qw/$versionNumber $versionDate/; -our $versionNumber = '3.11'; -our $versionDate = '2021-07-31'; +our $versionNumber = '3.12'; +our $versionDate = '2021-09-16'; 1 diff --git a/support/latexindent/README b/support/latexindent/README index 04fd1c5b5f..85200ba048 100644 --- a/support/latexindent/README +++ b/support/latexindent/README @@ -1,5 +1,5 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - latexindent.pl, version 3.11, 2021-07-31 + latexindent.pl, version 3.12, 2021-09-16 PERL script to indent code within environments, and align delimited environments in .tex files. diff --git a/support/latexindent/defaultSettings.yaml b/support/latexindent/defaultSettings.yaml index edac9bad82..fc4be94bc0 100644 --- a/support/latexindent/defaultSettings.yaml +++ b/support/latexindent/defaultSettings.yaml @@ -1,4 +1,4 @@ -# defaultSettings.yaml for latexindent.pl, version 3.11, 2021-07-31 +# defaultSettings.yaml for latexindent.pl, version 3.12, 2021-09-16 # a script that aims to # beautify .tex, .sty, .cls files # @@ -528,7 +528,7 @@ modifyLineBreaks: afterHeading: 0 preamble: 0 filecontents: 0 - masterDocument: 0 + mainDocument: 0 removeParagraphLineBreaks: all: 0 beforeTextWrap: 0 @@ -543,7 +543,7 @@ modifyLineBreaks: afterHeading: 0 preamble: 0 filecontents: 0 - masterDocument: 0 + mainDocument: 0 paragraphsStopAt: environments: 1 verbatim: 1 diff --git a/support/latexindent/documentation/appendices.tex b/support/latexindent/documentation/appendices.tex index bbeefb5fd1..617abe1bdc 100644 --- a/support/latexindent/documentation/appendices.tex +++ b/support/latexindent/documentation/appendices.tex @@ -46,14 +46,15 @@ perl latexindent-module-installer.pl then, once you have answered \texttt{Y}, the appropriate modules will be installed onto your distribution. - \subsection{Manually installed modules}\label{sec:manual-module-instal} + \subsection{Manually installing modules}\label{sec:manual-module-instal} Manually installing the modules given in \cref{lst:helloworld} will vary depending on your operating system and \texttt{Perl} distribution. \subsubsection{Linux} - Linux users may be interested in exploring Perlbrew \cite{perlbrew}; an example - installation would be: - \begin{commandshell} + \paragraph{perlbrew} + Linux users may be interested in exploring Perlbrew \cite{perlbrew}; an example + installation would be: + \begin{commandshell} sudo apt-get install perlbrew perlbrew init perlbrew install perl-5.28.1 @@ -65,25 +66,38 @@ cpanm File::HomeDir cpanm Unicode::GCString \end{commandshell} - For other distributions, the Ubuntu/Debian approach may work as follows - \begin{commandshell} + \paragraph{Ubuntu/Debian} + For other distributions, the Ubuntu/Debian approach may work as follows + \begin{commandshell} sudo apt install perl sudo cpan -i App::cpanminus sudo cpanm YAML::Tiny sudo cpanm File::HomeDir sudo cpanm Unicode::GCString \end{commandshell} - or else by running, for example, - \begin{commandshell} + or else by running, for example, + \begin{commandshell} sudo perl -MCPAN -e'install "File::HomeDir"' \end{commandshell} - If you are using Alpine, some \texttt{Perl} modules are not build-compatible with Alpine, - but replacements are available through \texttt{apk}. For example, you might use the - commands given in \cref{lst:alpine-install}; thanks to \cite{jun-sheaf} for providing - these details. + \paragraph{Ubuntu: using the texlive from apt-get} + Ubuntu users that install texlive using \texttt{apt-get} as in the following + \begin{commandshell} +sudo apt install texlive +sudo apt install texlive-latex-recommended +\end{commandshell} + may need the following additional command to work with \texttt{latexindent.pl} + \begin{commandshell} +sudo apt install texlive-extra-utils +\end{commandshell} + + \paragraph{Alpine} + If you are using Alpine, some \texttt{Perl} modules are not build-compatible with Alpine, + but replacements are available through \texttt{apk}. For example, you might use the + commands given in \cref{lst:alpine-install}; thanks to \cite{jun-sheaf} for providing + these details. - \begin{cmhlistings}[style=tcblatex,language=Bash]{\texttt{alpine-install.sh}}{lst:alpine-install} + \begin{cmhlistings}[style=tcblatex,language=Bash]{\texttt{alpine-install.sh}}{lst:alpine-install} # Installing perl apk --no-cache add miniperl perl-utils @@ -107,9 +121,9 @@ cpanm -n YAML::Tiny cpanm -n Unicode::GCString \end{cmhlistings} - Users of NixOS might like to see - \href{https://github.com/cmhughes/latexindent.pl/issues/222}{https://github.com/cmhughes/latexindent.pl/issues/222} - for tips. + Users of NixOS might like to see + \href{https://github.com/cmhughes/latexindent.pl/issues/222}{https://github.com/cmhughes/latexindent.pl/issues/222} + for tips. \subsubsection{Mac} Users of the Macintosh operating system might like to explore the following commands, for example: diff --git a/support/latexindent/documentation/cmhlistings.tex b/support/latexindent/documentation/cmhlistings.tex index 1f058616d6..6b8506c344 100644 --- a/support/latexindent/documentation/cmhlistings.tex +++ b/support/latexindent/documentation/cmhlistings.tex @@ -4,6 +4,13 @@ ^^I:caption: #2^^J ^^I:name: #3^^J } +\newcommand{\cmhlistingsfromfilelines}[4]{ +.. literalinclude:: #1^^J +^^I:class: .#4^^J +^^I:caption: #2^^J +^^I:name: #3^^J +^^I:linenos:^^J +} \newcommand{\cmhlistingsfromfilefour}[6]{ .. literalinclude:: #3^^J ^^I:class: .#6^^J @@ -14,7 +21,7 @@ ^^I:lineno-start: #1^^J } \newcommand{\cmhlabel}[1]{ -.. _#1:^^J +.. \_#1:^^J } \newcommand{\warning}[1]{ .. warning::^^J diff --git a/support/latexindent/documentation/latexindent.pdf b/support/latexindent/documentation/latexindent.pdf index dfb37e0b76..12ad2f551c 100644 Binary files a/support/latexindent/documentation/latexindent.pdf and b/support/latexindent/documentation/latexindent.pdf differ diff --git a/support/latexindent/documentation/latexindent.tex b/support/latexindent/documentation/latexindent.tex index 9379dddcb0..a97d778742 100644 --- a/support/latexindent/documentation/latexindent.tex +++ b/support/latexindent/documentation/latexindent.tex @@ -27,7 +27,6 @@ \usepackage{multicol} \usepackage{changepage} % adjust width of page \usepackage{fancyhdr} % headers & footers -\usepackage{wrapfig} \usepackage{fontawesome} \usepackage[sc,format=hang,font=small]{caption} % captions \usepackage[backend=bibtex]{biblatex} % bibliography @@ -42,7 +41,7 @@ \usepackage{totalcount} \usepackage{standalone} % setup gitinfo2, as in the manual, details just above begin{document} -\usepackage[mark,grumpy]{gitinfo2} +\usepackage[mark]{gitinfo2} % tikz, tcolorbox libraries \usetikzlibrary{positioning} \usetikzlibrary{decorations.pathmorphing} @@ -163,6 +162,21 @@ sharp corners, colbacktitle=white!75!black }, + tex-TCB/.style={ + listing only, + listing engine=listings, + left=0cm, + boxrule=0pt, + sharp corners, + center title, + colframe=white!40!black, + colback=white, + sharp corners, + colbacktitle=white!75!black, + toprule=1pt, + bottomrule=1pt, + titlerule=1pt, + }, yaml-TCB/.style={ listing only, listing engine=listings, @@ -326,6 +340,11 @@ columns=fullflexible, } +\lstdefinestyle{lineNumbersTeX}{ + numbers=left, + numberstyle=\color{blue}, +} + \lstdefinestyle{fileExtensionPreference}{ style=yaml-LST, firstnumber=44,linerange={44-48}, @@ -767,9 +786,14 @@ {}% {\titlerule*[0.5em]{$\cdot$}\contentspage} +% to explore in the future: +% partial toc customisation +% https://tex.stackexchange.com/questions/66345/how-to-remove-section-indentation-in-partial-toc-using-titletoc + \setcounter{secnumdepth}{6} \setcounter{tocdepth}{4} \makeindex + \begin{document} \renewcommand*{\thefootnote}{\arabic{footnote}} \input{title.tex} @@ -801,6 +825,7 @@ \input{subsec-poly-switches} \stopcontents[the-m-switch] \input{sec-replacements} + \input{sec-the-line-switch} \input{sec-fine-tuning} \input{sec-conclusions-know-limitations} \input{references} diff --git a/support/latexindent/documentation/sec-default-user-local.tex b/support/latexindent/documentation/sec-default-user-local.tex index 85738608b9..b649f54f9c 100644 --- a/support/latexindent/documentation/sec-default-user-local.tex +++ b/support/latexindent/documentation/sec-default-user-local.tex @@ -375,7 +375,7 @@ lookForAlignDelims: 0); \item \announce{2020-03-21}{delimiter RegEx feature}{delimiterRegEx} optionally specifies the pattern matching to be used for the alignment delimeter (default: - \lstinline3 '(?\$switches{replacement}, "onlyreplacement|rr"=>\$switches{onlyreplacement}, "replacementrespectverb|rv"=>\$switches{replacementRespectVerb}, + "check|k"=>\$switches{check}, + "checkv|kv"=>\$switches{checkverbose}, + "lines|n=s"=>\$switches{lines}, ); # check local settings doesn't interfer with reading the file; @@ -67,6 +70,6 @@ if($switches{readLocalSettings} and scalar(@ARGV) < 1) { # allow STDIN as input, if a filename is not present unshift( @ARGV, '-' ) unless @ARGV; -my $document = bless ({name=>"masterDocument",modifyLineBreaksYamlName=>"masterDocument",fileName=>$ARGV[0],switches=>\%switches},"LatexIndent::Document"); +my $document = bless ({name=>"mainDocument",modifyLineBreaksYamlName=>"mainDocument",fileName=>$ARGV[0],switches=>\%switches},"LatexIndent::Document"); $document->latexindent; exit(0); diff --git a/support/lualibs/lua-uca/CHANGELOG.md b/support/lualibs/lua-uca/CHANGELOG.md index 5f005ad64d..2d5816ebfc 100644 --- a/support/lualibs/lua-uca/CHANGELOG.md +++ b/support/lualibs/lua-uca/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +2021-09-16 + + - added sorting rules for all languages contained in CLDR collation files. + +2020-06-09 + + - moved development information that depends on files not distributed on CTAN to `HACKING.md`. + - extended documentation. + 2020-03-24 - version `0.1` released diff --git a/support/lualibs/lua-uca/HACKING.md b/support/lualibs/lua-uca/HACKING.md new file mode 100644 index 0000000000..e0b7802ef5 --- /dev/null +++ b/support/lualibs/lua-uca/HACKING.md @@ -0,0 +1,98 @@ +# Lua-UCA hacking + +You need the full installation from +[Github](https://github.com/michal-h21/lua-uca) in order to do stuff described +in this section. Package distributed on CTAN doesn't contain all necessary +files. + +## Install + +The package needs to download Unicode collation data and convert it to a Lua +table. It depends on `wget` and `unzip` utilities. All files can be downloaded +using Make: + + make + +To install the package in the local TEXMF tree, run: + + make install + +## New language support + +To add a new language, add new function to `src/lua-uca/lua-uca-languages.lua` +file. The function name should be short language code. Example function for +the Russian language: + + languages.ru = function(collator_obj) + collator_obj:reorder{ "cyrillic" } + return collator_obj + end + +The language function takes the Collator object as a parameter. Methods showed +in the *Change sorting rules* section can be used with this object. + +The `data/common/collation/` directory in the source repository contains files from the `CLDR` project. +They contain rules for many languages. The files needs to be normalized to the +[NFC form](https://en.wikipedia.org/wiki/Unicode_equivalence), for example using: + + cat cs.xml | uconv -x any-nfc -o cs.xml + +The `uconv` utility is a part of the [ICU Project](http://userguide.icu-project.org/). + +Sorting rules for a language are placed in the `` element. Multiple +`` elements may be present in the XML file. It is usually best to chose the one with attribute +`type="standard"`. + +The following example contains code from `da.xml`: + + + [caseFirst upper] + &D<<đ<<<Đ<<ð<<<Ð + &th<<<þ + &TH<<<Þ + &Y</dev/null)),true) + VERSION:= $(shell git --no-pager describe --abbrev=0 --tags --always ) + DATE:= $(firstword $(shell git --no-pager show --date=short --format="%ad" --name-only)) +endif + + +all: data/allkeys.txt data/common src/lua-uca/lua-uca-ducet.lua src/lua-uca/lua-uca-reordering-table.lua $(DOC_PDF) + + + +data/allkeys.txt: + mkdir data + wget http://www.unicode.org/Public/UCA/latest/allkeys.txt + mv allkeys.txt data + +data/common: + wget http://unicode.org/Public/cldr/33/cldr-common-33.0.zip + unzip cldr-common-33.0.zip "common/collation/*" -d data/ + rm cldr-common-33.0.zip + +src/lua-uca/lua-uca-ducet.lua: + mkdir -p src/lua-uca + texlua tools/make_ducet.lua > src/lua-uca/lua-uca-ducet.lua + +src/lua-uca/lua-uca-reordering-table.lua: + mkdir -p src/lua-uca + texlua tools/make_reordering_table.lua > $@ + +.PHONY: test install + +test: + busted spec/ducet-spec.lua + busted spec/collator_spec.lua + busted spec/languages-spec.lua + busted spec/tailoring-spec.lua + +$(DOC_PDF): $(DOC_SOURCES) + lualatex '\def\version{${VERSION}}\def\gitdate{${DATE}}\input{$<}' + + +install: + mkdir -p ${INSTALL_DIR} + cp ${LUA_DIR}*.lua ${INSTALL_DIR} + +xindex: + $(MAKE) -C $@ + +build: $(DOC_PDF) $(DOC_SOURCES) $(lua_content) + mkdir -p $(BUILD_DIR)/lua-uca/lua-uca + cp $(lua_content) $(BUILD_DIR)/lua-uca/lua-uca/ + cp $(DOC_PDF) $(DOC_SOURCES) Makefile $(BUILD_DIR)/lua-uca/ + @cd $(BUILD_DIR) && zip -r lua-uca.zip lua-uca + + +.PHONY: all xindex build diff --git a/support/lualibs/lua-uca/README.md b/support/lualibs/lua-uca/README.md index b3cef273ea..37343a83af 100644 --- a/support/lualibs/lua-uca/README.md +++ b/support/lualibs/lua-uca/README.md @@ -1,15 +1,9 @@ +\iffalse # The `Lua-UCA` package +\fi This package adds support for the [Unicode collation algorithm](https://unicode.org/reports/tr10/) for Lua 5.3. -## Install - -The package needs to download Unicode collation data and convert it to a Lua table. It depends on `wget` and `unzip` utitilities. - -To install the package in the local TEXMF tree, run: - - make - make install ## Usage @@ -43,18 +37,17 @@ The output: > chochol > jasan -More samples of use can be found in the `spec` directory. -`tools/indexing-sample.lua` is a simple indexing processor. +More samples of the library usage can be found in the source repository of this package on [Github](https://github.com/michal-h21/lua-uca). +% See `HACKING.md` file in the repo for more information. ## Use with Xindex processor [Xindex](https://www.ctan.org/pkg/xindex) is flexible index processor written -in Lua by Herbert Voß. It supports Lua configuration files, which enables use -of Lua-UCA for sorting of the index entries, as shown in [this -example](https://tex.stackexchange.com/a/524014/2891) for Norwegian text. +in Lua by Herbert Voß. It has built-in `Lua-UCA` support starting with version +`0.23`. The support can be requested using the `-u` option: + + xindex -u -l no -c norsk filename.idx -The `xindex` directory in the [source repository](https://github.com/michal-h21/lua-uca/tree/master/xindex) contains more advanced version of such configuration -file together with several examples. Run `make xindex` command to compile them. ## Change sorting rules @@ -90,7 +83,7 @@ It is also possible to expand a letter to multiple letters, like this example fo tailoring "&Ö=Oe" tailoring "&ö=oe" -Some languages, like Norwegian sort uppercase letters before lowercase. This +Some languages, like Norwegian, sort uppercase letters before lowercase. This can be enabled using `collator_obj:uppercase_first()` function: local tailoring = function(s) collator_obj:tailor_string(s) end @@ -102,14 +95,8 @@ can be enabled using `collator_obj:uppercase_first()` function: tailoring("&ǀ<æ<<<Æ<<ä<<<Ä<ø<<<Ø<<ö<<<Ö<<ő<<<Ő<å<<<Å<< 1, 'https://mirror.ibcp.fr/pub/CTAN/' => 1, 'https://mirrors.chevalier.io/CTAN/' => 1, + 'https://mirrors.ircam.fr/pub/CTAN/' => 1, 'https://texlive.mycozy.space/' => 1, }, 'Germany' => { diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb index 4ade0f1b60..6bf059a7d5 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb @@ -26,7 +26,7 @@ depend container_split_src_files/1 depend frozen/0 depend minrelease/2016 depend release/2021 -depend revision/60516 +depend revision/60523 name 00texlive.image category TLCore @@ -4457,7 +4457,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd name 00texlive.installer category TLCore -revision 60514 +revision 60518 shortdesc TeX Live standalone installer package longdesc This package defines the files to go into the installer longdesc archives (install-tl-unx.tar.gz, install-tl.zip) built by the @@ -168548,17 +168548,17 @@ catalogue-topics version-control doc-mgmt name latexindent category Package -revision 60132 +revision 60522 shortdesc Indent a LaTeX document, highlighting the programming structure longdesc The Perl script (also available as a windows executable) longdesc processes a LaTeX file, indenting parts so as to highlight the longdesc structure for the reader. depend latexindent.ARCH -containersize 64260 -containerchecksum d86df485963a13a40bc9070d204ff37750b6390e25d9fe6171777d4392f562eb3c0f1f2524dd09b880dfa1be5bd1e9bf37e4d95429b875a91616a06d542f9351 -doccontainersize 1034864 -doccontainerchecksum 9dc6ae1c8b9fc4e15d3907c64bf437c5174dc32961240138d9371c96fed35e95698712d800804bf8649fbce8b4819ba3808fc4c3749d55fbccf6b430bb075861 -docfiles size=355 +containersize 67528 +containerchecksum bec679b1675fc78565bb91ef3bfe0b4672f67af49c2099f02758fbeae38c1d78b1e8866142cc15277511dc7c07a7d1fc3c5c63bb03d8f43ff8df464e3a2ba951 +doccontainersize 1084236 +doccontainerchecksum cb9f2fe99fec1a364b4172e732c2a2e9197884d1a127e788e812d62a2688c4b3a3aa3c2b7c7579e60fefc76f1e05a72682f76b78b23a8804fd624a738e29b12d +docfiles size=371 texmf-dist/doc/support/latexindent/README details="Readme" texmf-dist/doc/support/latexindent/appendices.tex texmf-dist/doc/support/latexindent/cmhlistings.tex @@ -168578,6 +168578,7 @@ docfiles size=355 texmf-dist/doc/support/latexindent/sec-indent-config-and-settings.tex texmf-dist/doc/support/latexindent/sec-introduction.tex texmf-dist/doc/support/latexindent/sec-replacements.tex + texmf-dist/doc/support/latexindent/sec-the-line-switch.tex texmf-dist/doc/support/latexindent/sec-the-m-switch.tex texmf-dist/doc/support/latexindent/subsec-combine-text-wrap-para-line-breaks.tex texmf-dist/doc/support/latexindent/subsec-commands-and-their-options.tex @@ -168595,12 +168596,13 @@ docfiles size=355 texmf-dist/doc/support/latexindent/subsubsec-no-add-remaining-code-blocks.tex texmf-dist/doc/support/latexindent/subsubsec-special.tex texmf-dist/doc/support/latexindent/title.tex -runfiles size=130 +runfiles size=139 texmf-dist/scripts/latexindent/LatexIndent/AlignmentAtAmpersand.pm texmf-dist/scripts/latexindent/LatexIndent/Arguments.pm texmf-dist/scripts/latexindent/LatexIndent/BackUpFileProcedure.pm texmf-dist/scripts/latexindent/LatexIndent/BlankLines.pm texmf-dist/scripts/latexindent/LatexIndent/Braces.pm + texmf-dist/scripts/latexindent/LatexIndent/Check.pm texmf-dist/scripts/latexindent/LatexIndent/Command.pm texmf-dist/scripts/latexindent/LatexIndent/Document.pm texmf-dist/scripts/latexindent/LatexIndent/DoubleBackSlash.pm @@ -168616,6 +168618,7 @@ runfiles size=130 texmf-dist/scripts/latexindent/LatexIndent/Indent.pm texmf-dist/scripts/latexindent/LatexIndent/Item.pm texmf-dist/scripts/latexindent/LatexIndent/KeyEqualsValuesBraces.pm + texmf-dist/scripts/latexindent/LatexIndent/Lines.pm texmf-dist/scripts/latexindent/LatexIndent/LogFile.pm texmf-dist/scripts/latexindent/LatexIndent/Logger.pm texmf-dist/scripts/latexindent/LatexIndent/MandatoryArgument.pm @@ -168641,7 +168644,7 @@ catalogue-contact-repository https://github.com/cmhughes/latexindent.pl catalogue-ctan /support/latexindent catalogue-license gpl3 catalogue-topics code-layout -catalogue-version 3.11 +catalogue-version 3.12 name latexindent.aarch64-linux category Package @@ -168735,11 +168738,11 @@ binfiles arch=universal-darwin size=1 name latexindent.win32 category Package -revision 60132 +revision 60522 shortdesc win32 files of latexindent -containersize 4054156 -containerchecksum b423291bdd571d1420d18690b627c05f98649d90a09ae8f80f3adc91f47267b37e04f5ef73a44a19cc9cff0c8c81693db00b9c6c5cca7352f4216d00ca664021 -binfiles arch=win32 size=2394 +containersize 4060720 +containerchecksum a29a412212388a8ea5da4eada4ce1575000f5599bdcdf0e0227ad3f20646328cc92799adef27aa3c8b1518410cdc248a72027f376ed92ba1d7cecf8da0bc5abf +binfiles arch=win32 size=2396 bin/win32/latexindent.exe name latexindent.x86_64-cygwin @@ -185053,7 +185056,7 @@ catalogue-version 0.50 name lua-uca category Package -revision 56414 +revision 60523 shortdesc Unicode Collation Algorithm library for Lua relocated 1 longdesc The Lua-UCA library provides basic support for Unicode @@ -185061,18 +185064,23 @@ longdesc Collation Algorithm in Lua. It can be used to sort arrays of longdesc strings according to rules of particular languages. It can be longdesc used in other Lua projects that need to sort text in a language longdesc dependent way, like indexing processors, bibliographic -longdesc generators, etc -containersize 70984 -containerchecksum 51223bc90b7d9c8da149133b5fc019e968da2d82c089a6e5884cd9c32b5306c3f7e575708229b1e6e77ad2840fcb0d4b01fe1d3973478385579ddc4a2d473096 -doccontainersize 58416 -doccontainerchecksum 462d46a84532e483f7d70a6b16bc9b3f7bbd7623b9fa5ec237b8e5fbf5254de69bece3d7a494e87c73ded77852b72b1b5ef43b7b5b6e02f1e181f82727069352 -docfiles size=19 +longdesc generators, etc. +containersize 74132 +containerchecksum 446e19a1782fc134d4096e0b2521b58b3ddc7771b2d05277beac95fe84878ba311b8d4d53968ff63945e06f4144e8766521e0cf796521aa661c8a6d6b1b00c2f +doccontainersize 75268 +doccontainerchecksum b167ef7d91577b747775c85bb842753de01adc13e9c8f7423f737c4e68c93dc47e24e9110aaa6799cadbf1c6d8bf2ed4f6ee9b15215112e6d32db0309cf6e597 +docfiles size=23 RELOC/doc/support/lua-uca/CHANGELOG.md + RELOC/doc/support/lua-uca/HACKING.md RELOC/doc/support/lua-uca/LICENSE RELOC/doc/support/lua-uca/README.md details="Readme" RELOC/doc/support/lua-uca/lua-uca-doc.pdf details="Package documentation" RELOC/doc/support/lua-uca/lua-uca-doc.tex -runfiles size=465 +srccontainersize 1132 +srccontainerchecksum 31e3b2f7c5bb9c62c420a4af26bdf51baf255aa675086fb1cc249409e88d497180540ef54c9c8d8f3005765a0130219e37bff8f8f0c69c8255cc21a0ddd3e625 +srcfiles size=1 + RELOC/source/support/lua-uca/Makefile +runfiles size=464 RELOC/scripts/lua-uca/lua-uca-collator.lua RELOC/scripts/lua-uca/lua-uca-ducet.lua RELOC/scripts/lua-uca/lua-uca-languages.lua @@ -185083,7 +185091,7 @@ catalogue-contact-repository https://github.com/michal-h21/lua-uca catalogue-ctan /support/lualibs/lua-uca catalogue-license mit catalogue-topics typesetting luatex -catalogue-version 0.1 +catalogue-version 0.1a name lua-ul category Package @@ -186293,25 +186301,25 @@ catalogue-version 0.6 name luamplib category Package -revision 60197 +revision 60521 shortdesc Use LuaTeX's built-in MetaPost interpreter relocated 1 longdesc The package enables the user to specify MetaPost diagrams longdesc (which may include colour specifications from the color or longdesc xcolor packages) into a document, using LuaTeX's built-in longdesc MetaPost library. The facility is only available in PDF mode. -containersize 11896 -containerchecksum 448c23ed2cb8df428c7d3d96c5958db48eb212ec3c41ef9b59f196eec24b12fdd3a6b39055118f2a197f974d4b97a30bb968b790c6cddaaf1a7aa4282aa2f6f6 -doccontainersize 153676 -doccontainerchecksum e9cf73c7063b701865d1f3d3be54e1296a11f925ec850cea26e2a727a4c55d1bdf337622e239d87642dfa770699a4d7ffa060965dcc901a1e55ad90fedd66402 +containersize 11892 +containerchecksum 134d378f0dfa1e8c080712a61e4978c4a7d1ccbf99ad171397e238747045a06ba2e2c71d1abde5e975968912c8ce459071717aac6cad2005aa9aa1c7b765dea0 +doccontainersize 153712 +doccontainerchecksum 0ccde00e067a5c7bb9c5e4ecbec68c1bbaa046ced76afe91f0212924225080f75bdc349f33db638d15d1b3814a9c63aa603ae69649b7cff2854ebf5616d50381 docfiles size=43 RELOC/doc/luatex/luamplib/NEWS RELOC/doc/luatex/luamplib/README details="Readme" RELOC/doc/luatex/luamplib/luamplib.pdf details="Package documentation" RELOC/doc/luatex/luamplib/test-luamplib-latex.tex RELOC/doc/luatex/luamplib/test-luamplib-plain.tex -srccontainersize 26824 -srccontainerchecksum 34131732d8e16b6e548d15d4da74a273fc9a8b3652f64b9e0895bb716542205bb471f4a7b47021bb00187f5709c4d061125a13489714f021713a5daad65431a7 +srccontainersize 26832 +srccontainerchecksum 66cdaeb11b9e288c5e5d6ba28a434b0ed3077437ea3084391a951728782cb848f906abbc6da826f2087a17ca7d6c1dc0deb11d8bfbd4af1e7402315309f8069e srcfiles size=24 RELOC/source/luatex/luamplib/Makefile RELOC/source/luatex/luamplib/luamplib.dtx @@ -186319,11 +186327,11 @@ runfiles size=13 RELOC/tex/luatex/luamplib/luamplib.lua RELOC/tex/luatex/luamplib/luamplib.sty catalogue-contact-bugs https://github.com/lualatex/luamplib/issues -catalogue-contact-repository http://github.com/lualatex/luamplib +catalogue-contact-repository https://github.com/lualatex/luamplib catalogue-ctan /macros/luatex/generic/luamplib catalogue-license gpl2 catalogue-topics mp-use graphics-in-tex luatex -catalogue-version 2.20.9 +catalogue-version 2.21.0 name luaotfload category Package @@ -198605,22 +198613,22 @@ catalogue-version 1.02 name mindflow category Package -revision 60485 +revision 60520 shortdesc Write your ideas in a clear way relocated 1 longdesc This package provides an environment that has its own line longdesc numbers or markers and can be well distinguished from the main -longdesc text, for writing you ideas or annotations. -containersize 2664 -containerchecksum 45993419a19897617369ddaf21561c11b3987b73da6341aa4d470f6b089c487582b0cd91b41f723eab0cc831a4a7754fe237ed447040e98f5857b8909a3e8455 -doccontainersize 213208 -doccontainerchecksum efbc747f809ec0b542ed371a20f23282815654fa42221756698161974ea89fee9873869d557d02acf2f1dce45e8d6f4ed3f2ff334ad14e4ef53a258e26e980ae +longdesc text, for writing your ideas or annotations. +containersize 2704 +containerchecksum a555f5141a3e8f2b7145c9f72bdd19bcf9a7831e06f9c68b1c19c57b7bf402adedd2710addf3d2f2e610f2624f34f53ae65c1101354ede0447b50bc021e6a29b +doccontainersize 213608 +doccontainerchecksum 2d9e47eff6ba602c554ed44ead4b5be6bae71262ad3eddba0c17a9f85682ee54608543dc354f4bb308d7efdeead795639baeabfdd4c22da1bc0daeda304313eb docfiles size=57 RELOC/doc/latex/mindflow/LICENSE RELOC/doc/latex/mindflow/README.md details="Readme" RELOC/doc/latex/mindflow/mindflow.pdf details="Package documentation" -srccontainersize 6368 -srccontainerchecksum 58a2f7da760bdc6df817c019e4315e1876efda8070d018173c2b4c8f3794e3311fb32667e4010ff3700ca6c7dd16f0e795f3860e92c6e7c0fd1592999cc9d12d +srccontainersize 6416 +srccontainerchecksum 7239a4b976fa3cff28351e3f47f428b9c3b700a840da1146c5d120f5d9d25fabe98aece8394c14e5a054e61d771c6b43a3d3d712aee1f3a8548e9de890e8de79 srcfiles size=7 RELOC/source/latex/mindflow/mindflow.dtx RELOC/source/latex/mindflow/mindflow.ins @@ -295233,7 +295241,7 @@ docfiles size=376 name texlive-scripts category TLCore -revision 60514 +revision 60518 shortdesc TeX Live infrastructure programs longdesc Includes install-tl, tl-portable, rungs, etc.; not needed for longdesc tlmgr to run but still ours. Not included in tlcritical. @@ -295241,10 +295249,10 @@ depend texlive-scripts.ARCH depend texlive.infra execute addMap mathpple.map postaction shortcut type=menu name="TeX Live command-line" cmd=TEXDIR/tlpkg/installer/tl-cmd.bat -containersize 108300 -containerchecksum 221fafa592682ac751933fcccd4ad87820e941dca1f9a421b6928c4ff699a1c746a8d5e8f18753d6d4d683ccf870847e3e10b84899145f0eeb6467bc29fbcc99 -doccontainersize 400148 -doccontainerchecksum d0518b409955d9bf0d66cc2c05c5e22b6409887929096d67ec6537d21d2a3d3b48b5a6c293620434e7f61161cbef6daabcd6d51ae943aa3d5c714748411b15b4 +containersize 108308 +containerchecksum 5aaa330ca74867f626bc80dc4abda753cab1d70ca68ad077c3f0401850a56cf26d3ef71a8e041130577b44eeeee4b1352f3324164ffc62458ba3f0bb30872cb0 +doccontainersize 400152 +doccontainerchecksum e49c4554962a12f306f27cef76cf604ef5624bcb4892197f940e619576b760bcd84bc59bc4dd1ad22dc84a1149012f1ef12daa808206217b544abdc49a8aa69a docfiles size=495 doc.html texmf-dist/doc/man/man1/fmtutil-sys.1 diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 index 11b9fcf48d..cb12b6f281 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 @@ -1 +1 @@ -83d488415ca1cf2b3889f8665b5e001d texlive.tlpdb +820a38d978b3c47057e9e19d56642a64 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 index 0f4d72c0e3..e2021058d1 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 @@ -1 +1 @@ -89126358af1b84efd031f14715d5d67481bd158a980b539d0736f929344737152e15f1866ba09fe574452edc422a8408ea7ed488d782092598d3025f4c16e949 texlive.tlpdb +634a0b2caa5575dd31f3f6c5ab536dccf63f483063ec0ff00697efc8a3d1e182961e7f0788a06a100a917ca7e1c183e3ededbc9f099717e63b55f5404f6786ad texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc index 668aad14fc..5089ce1709 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----- -iQEcBAEBCgAGBQJhQodVAAoJEEzhh34ZQ4xwXI8H/2/dQV9AztdDXlUr2S55SuGy -SANhI0RH5cA8L2AOPa9jedXoNOrBEsMCVwwwTJoPECvKxokgs3b7MDXagYgSzf+Z -XdrbCtNLpKTlJecn7gU8MoeJp3crw0VmH8d2yooj6QSebSsTAkRBzgYePrh8zB+O -w2xivZMPineiJlY+xASG0Pa3+glwgijykJjjkbVUfwzm3yxSuoa0MT8j4p5MJkhc -P4XZNhxDcmSvq28n19pNbco8QpI1qHQMV9YHF6As+CVkGL7CRKBQKReFjxwfu3W3 -LNKd/L0d/lM5g+2g4COoMyLfL0USnw0wfrUAvlUAADHVp9fSt/oXrRMbA22cfdA= -=EyBL +iQEcBAEBCgAGBQJhQ9ifAAoJEEzhh34ZQ4xwutQIAKEA1+0zCBXCNXlsw5PhZ0gE +c7fwkD/apx9nOZZl64uWnOv5S5r3aWJXAhcnN50MJ37I3V9AMQs/jZUYrpwpz3kF +kQnWPaFH5+ZOHgyaMP2cGMSvSUGwNR54LyAC7GDlZrIRHrF5FLTZkSz42VYGYIcb +3RHfr2Il24w+YD2N+83LlhSswhJqZmX9akGsDjmy2LluC43LHyMfsm64tA3Ogi/s +CPUq3qhONaWDLu+l6DAN5vaNyJBm9lLNlo0NqI4p9Wjs5JgOLniv/qUzrZnVbRem +HeXahhZDmX6lnYkaqu6zL7QMtLGQjDLd6OW2pNyE5lPqsBmUBZB4A4yjiDdBWxk= +=FJ1/ -----END PGP SIGNATURE----- diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz index abf9f6fad8..209aa35c2c 100644 Binary files a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz and b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz differ diff --git a/systems/win32/miktex/tm/packages/next/pr.ini b/systems/win32/miktex/tm/packages/next/pr.ini index e3c86dd5db..7e8a98f16a 100644 --- a/systems/win32/miktex/tm/packages/next/pr.ini +++ b/systems/win32/miktex/tm/packages/next/pr.ini @@ -1,13 +1,13 @@ [repository] -date=1631736939 +date=1631823362 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=d9d706c7b6960e703ead2dbd864c4dba +lstdigest=c3b453f762e3406372c5d90bf35cdd32 numpkg=4790 relstate=next -version=7928 +version=7929 ;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows. ;;;;-----BEGIN MIKTEX SIGNATURE----- -;;;; signature/miktex: M+aYe3JulOJAGMWGkIPzPg7df2S6G5bes7qUegSP7OIPjkoSfCWwl241Q4HXcXZZ1FBRbEqwLElsJwrMl9aOFXmrjbMO4fDnehxzEfHgW1QdKQuGh3DChCdlnfI/RRMhs9/FQD7e2oSE5k2d5oyarQLR5D03HPjCKmFzlgI3s2zLWUY2mNb4X0vXzfkx/nZjJwbVa1lCufdZVcbNgDSBIzBICoWGE9A6adqId9xJv0E6u6a1qOoy94bl+Rzz0bxD5d9Cpa+Xpw7Ie0o4Z35o/r6gDaxXYzJuUrnhl7uS8uSD4Dz08y6UtJUEXQ5sqeSj2b8ybITdr9w1pxl8DoMJLg== +;;;; signature/miktex: coJlEDTriQt70/Fwo7Ztzq8DqRyNLeFpTQ4eOSkTzj1iaYpUSEqWt0GRI9niqjUmrOBZNQSk0xl/FdR71lTm+t2qDP1YXNxzfncQ8WjhmpjQqknCv0cNmBMBICooXmicMUiDN2w1lGMNFSZO+yu7yWiWSXQcB/L5qgo89BlT12+I0CV+3OVHJVLEN5Yk2AMMP6oazdwypgsdwn7jroCps+mOLzGnAJh91hk6I6c3BitLYdGfvwqGOkO/ad6+bBTnOr/pWAMAm/OTjLPnpGK/e4bNML+eZuo8Tq7zqHoJgL5+mBKnwAys1q39dSRYVZYda6C/UDF7g8sneNe7v4ZkSg== ;;;;-----END MIKTEX SIGNATURE----- diff --git a/systems/win32/miktex/tm/packages/pr.ini b/systems/win32/miktex/tm/packages/pr.ini index aace165516..9ed0a6ad7b 100644 --- a/systems/win32/miktex/tm/packages/pr.ini +++ b/systems/win32/miktex/tm/packages/pr.ini @@ -1,13 +1,13 @@ [repository] -date=1631736688 +date=1631823082 lastupd=beamertheme-trigon beamertheme-trigon__doc beamertheme-trigon__source biblatex-gb7714-2015 biblatex-gb7714-2015__doc biblatex-gb7714-2015__source bithesis bithesis__doc bithesis__source circuitikz circuitikz__doc clicks clicks__doc clicks__source crumbs crumbs__doc crumbs__source csvsimple csvsimple__doc easybook -lstdigest=3fd7f7d4a9c094457c93659109b5618e +lstdigest=5b343da344c016eb56c7fc61f9aad699 numpkg=4790 relstate=stable -version=7928 +version=7929 ;;;;This configuration file is signed by a MiKTeX maintainer. The signature follows. ;;;;-----BEGIN MIKTEX SIGNATURE----- -;;;; signature/miktex: xPtEQz5f8SpIqbRTbHeUk6mdmlZaXSMjYDpxpDr3e9Vcf1Vy2ynZZqjxdcekNO0WbOjpcfFdWcw9RunAFSZo4AF+R6x922lrepoIWNc2mffDX9KMxHwiTSyfP4qKgFztwBHYUmZTxbUcJeredqg1sbWoNvDOerA1qOM8rSrqc+T3pErMGodvg8vcv5Fp9f6B8wag4J6fP/Hn0SvVNBU++AjGXT7ufejZMBVLTg9qGU1Kk61VcJyF3a/XSJxsXDYba2sZM1aa29qex4q8v96q8VNbls2OKOvPR6Vkk81wAOKzwEZLF0v7kUwfaPWY2aiw0A54K2BHgGjnbT1bLEkM9A== +;;;; signature/miktex: NUVec6l8uu7adLBppFYyZp/zB4VAOR+6YevtOsyvG2HOJ8QGTlEgUcUSyrY28O2a5vzMRBQftwsvtRofD1H70G2EzGc4qEd6hXiVZn9ZQtTVzDro2YSgZ7tNubuoXCMUEoahneDh3Deq6zT1zeL6JKxbslVi/L2zuuW48/N2sFnBXn1PqhvrHLa35hFvFjur6enwAyYLni8rVsHyy65Aoen06g2BKSMZHqQS178zqhxn0j8+/T+nUeJsVmz36K4aSF1MTPCQmaoJEhuPRoVwkFOFqovqndIZzJ3lJlSUtBpWPHOOwYodnl19/BDfPA5sBhUJJPvD7pyhhI+ueBVPtg== ;;;;-----END MIKTEX SIGNATURE----- diff --git a/timestamp b/timestamp index ee7a6dc070..7064539d94 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: -2021-09-16-02-02 +2021-09-17-02-02 -- cgit v1.2.3