diff options
68 files changed, 4900 insertions, 2736 deletions
diff --git a/FILES.byname b/FILES.byname index fa9be24d4f..f94ec2384e 100644 --- a/FILES.byname +++ b/FILES.byname @@ -2147,12 +2147,12 @@ 2024/11/18 | 1851 | biblio/citation-style-language/README.md 2024/11/18 | 12878 | biblio/citation-style-language/vancouver.csl 2024/11/18 | 4677009 | biblio/citation-style-language.zip -2024/12/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2024/12/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx 2022/10/08 | 127 | biblio/ctan-bibdata/biblatex-ctan/ctan.cbx -2024/12/18 | 2904521 | biblio/ctan-bibdata/ctan.bib -2024/12/18 | 3808874 | biblio/ctan-bibdata/ctan.pdf +2024/12/19 | 2905117 | biblio/ctan-bibdata/ctan.bib +2024/12/19 | 3809976 | biblio/ctan-bibdata/ctan.pdf 2023/01/16 | 1489 | biblio/ctan-bibdata/README -2024/12/18 | 4226192 | biblio/ctan-bibdata.zip +2024/12/19 | 4228118 | biblio/ctan-bibdata.zip 2023/02/23 | 3126 | biblio/pbibtex/pbibtex-base/cpp.awk 2023/02/23 | 1009 | biblio/pbibtex/pbibtex-base/generate.sh 2023/02/23 | 22362 | biblio/pbibtex/pbibtex-base/jabbrv.bst @@ -5514,7 +5514,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 -2024/12/18 | 72517 | FILES.last07days +2024/12/19 | 75300 | 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 @@ -179118,12 +179118,12 @@ 2006/05/09 | 237421 | help/es-tex-faq/FAQ-CervanTeX.sgml 2006/05/10 | 239159 | help/es-tex-faq/FAQ-CervanTeX.tex 2006/09/28 | 612513 | help/es-tex-faq.zip -2024/10/08 | 20269036 | help/faq-fr-gutenberg/faq-gut-main.tar.gz -2024/10/08 | 20141 | help/faq-fr-gutenberg/LICENSE -2024/10/08 | 21531556 | help/faq-fr-gutenberg/pdf/faqlatexgutenberg.pdf -2024/10/08 | 21631631 | help/faq-fr-gutenberg/pdf/faqlatexgutenberg_sombre.pdf -2024/10/08 | 2264 | help/faq-fr-gutenberg/README.md -2024/10/08 | 50146045 | help/faq-fr-gutenberg.zip +2024/12/19 | 20299218 | help/faq-fr-gutenberg/faq-gut-main.tar.gz +2024/12/19 | 20141 | help/faq-fr-gutenberg/LICENSE +2024/12/19 | 22575934 | help/faq-fr-gutenberg/pdf/faqlatexgutenberg.pdf +2024/12/19 | 22679023 | help/faq-fr-gutenberg/pdf/faqlatexgutenberg-sombre.pdf +2024/12/19 | 2265 | help/faq-fr-gutenberg/README.md +2024/12/19 | 51757200 | help/faq-fr-gutenberg.zip 1994/03/14 | 54892 | help/index.doc 2024/05/05 | 1112963 | help/LaTeX-FAQ-francaise/FAQ-fr_pages.tar.gz 2023/01/06 | 166341 | help/LaTeX-FAQ-francaise/FAQ_leaflet_fr.pdf @@ -204707,23 +204707,25 @@ 2020/05/21 | 2571 | info/latex-veryshortguide/veryshortguide.ins 2020/05/21 | 134527 | info/latex-veryshortguide/veryshortguide.pdf 2020/05/21 | 548808 | info/latex-veryshortguide.zip -2024/12/08 | 2074 | info/latex-via-exemplos/changelog.txt +2024/12/19 | 2426 | info/latex-via-exemplos/changelog.txt +2024/12/19 | 10203 | info/latex-via-exemplos/latex-via-exemplos-abntex2.tex +2024/12/19 | 12674 | info/latex-via-exemplos/latex-via-exemplos-abntexto.tex 2024/11/17 | 4120 | info/latex-via-exemplos/latex-via-exemplos.bib -2022/05/16 | 2713 | info/latex-via-exemplos/latex-via-exemplos-certificado.tex -2023/04/09 | 1889 | info/latex-via-exemplos/latex-via-exemplos-cracha.tex +2019/08/15 | 162 | info/latex-via-exemplos/latex-via-exemplos-certificado-lista-nomes.csv +2024/12/19 | 2725 | info/latex-via-exemplos/latex-via-exemplos-certificado.tex +2024/12/19 | 261 | info/latex-via-exemplos/latex-via-exemplos-cracha-lista-participantes.csv +2024/12/19 | 1895 | info/latex-via-exemplos/latex-via-exemplos-cracha.tex 2024/12/03 | 663 | info/latex-via-exemplos/latex-via-exemplos-fig.tex 2023/04/09 | 730 | info/latex-via-exemplos/latex-via-exemplos-folder.tex -2019/08/15 | 162 | info/latex-via-exemplos/latex-via-exemplos-lista-nomes.csv -2023/04/09 | 204 | info/latex-via-exemplos/latex-via-exemplos-lista-participantes.csv -2024/12/08 | 1528072 | info/latex-via-exemplos/latex-via-exemplos.pdf +2024/12/19 | 1586514 | info/latex-via-exemplos/latex-via-exemplos.pdf 2024/12/08 | 3267 | info/latex-via-exemplos/latex-via-exemplos-poster.tex -2024/12/07 | 4471 | info/latex-via-exemplos/latex-via-exemplos-slides.tex -2024/12/08 | 635499 | info/latex-via-exemplos/latex-via-exemplos.tex +2024/12/18 | 4839 | info/latex-via-exemplos/latex-via-exemplos-slides.tex +2024/12/19 | 641662 | info/latex-via-exemplos/latex-via-exemplos.tex 2024/12/03 | 425 | info/latex-via-exemplos/latex-via-exemplos-todonotes.tex 2023/05/01 | 131 | info/latex-via-exemplos/latex-via-exemplos-twoside.tex -2024/11/24 | 3993 | info/latex-via-exemplos/makedoc.sh -2024/11/24 | 2252 | info/latex-via-exemplos/README.md -2024/12/09 | 1654779 | info/latex-via-exemplos.zip +2024/12/19 | 4060 | info/latex-via-exemplos/makedoc.sh +2024/12/19 | 2497 | info/latex-via-exemplos/README.md +2024/12/19 | 1722645 | info/latex-via-exemplos.zip 1994/04/20 | 16115 | info/ling-mac.tex 2004/07/13 | 36781 | info/lmodern/lm10pt.png 2004/07/13 | 170 | info/lmodern/lm10pt.tex @@ -214629,21 +214631,20 @@ 2011/04/02 | 12265 | macros/context/contrib/context-mathsets/tex/context/third/mathsets/t-mathsets.tex 2018/03/05 | 11 | macros/context/contrib/context-mathsets/VERSION 2018/03/22 | 404328 | macros/context/contrib/context-mathsets.zip -2024/06/30 | 2651 | macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/README.md -2023/04/15 | 221130 | macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf -2024/06/30 | 195 | macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex -2024/06/30 | 271 | macros/context/contrib/context-pocketdiary/t-pocketdiary/LICENSE -2023/04/15 | 1025 | macros/context/contrib/context-pocketdiary/t-pocketdiary/README.md -2023/04/15 | 1877 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.mkiv -2023/04/25 | 3319 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua -2024/06/30 | 2703 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/PocketDiary.mkiv -2023/04/15 | 3317 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.mkiv -2023/04/25 | 7358 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua -2023/04/25 | 18589 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua -2023/04/25 | 23828 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua -2024/12/16 | 52012 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv -2024/12/16 | 10 | macros/context/contrib/context-pocketdiary/t-pocketdiary/VERSION -2024/12/16 | 11 | macros/context/contrib/context-pocketdiary/VERSION +2024/06/30 | 2651 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md +2024/12/18 | 178305 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf +2024/06/30 | 195 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex +2024/06/30 | 271 | macros/context/contrib/context-pocketdiary/LICENSE +2023/04/15 | 1025 | macros/context/contrib/context-pocketdiary/README.md +2023/04/15 | 1877 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.mkiv +2023/04/25 | 3319 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua +2024/06/30 | 2703 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.mkiv +2023/04/15 | 3317 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.mkiv +2023/04/25 | 7358 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua +2023/04/25 | 18589 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua +2023/04/25 | 23828 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua +2024/12/18 | 52022 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv +2024/12/18 | 11 | macros/context/contrib/context-pocketdiary/VERSION 2023/04/27 | 240719 | macros/context/contrib/context-pocketdiary.zip 2023/05/10 | 7913 | macros/context/contrib/context-simpleslides/doc/context/third/simpleslides/example.pdf 2023/05/10 | 313 | macros/context/contrib/context-simpleslides/doc/context/third/simpleslides/example.tex @@ -242471,34 +242472,34 @@ 2021/09/20 | 575 | macros/latex/contrib/lipsum/README.md 2021/09/20 | 1525 | macros/latex/contrib/lipsum/README.txt 2021/09/20 | 784793 | macros/latex/contrib/lipsum.zip -2015/10/25 | 11875 | macros/latex/contrib/lisp-on-tex/examples/div2.pdf -2015/10/25 | 973 | macros/latex/contrib/lisp-on-tex/examples/div2.tex -2015/10/25 | 36632 | macros/latex/contrib/lisp-on-tex/examples/fact.pdf -2015/10/25 | 838 | macros/latex/contrib/lisp-on-tex/examples/fact.tex -2015/10/25 | 32295 | macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.pdf -2015/10/25 | 1800 | macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.tex -2015/10/25 | 12971 | macros/latex/contrib/lisp-on-tex/examples/nqueen.pdf -2015/10/25 | 1892 | macros/latex/contrib/lisp-on-tex/examples/nqueen.tex -2015/10/25 | 252 | macros/latex/contrib/lisp-on-tex/examples/repl.tex -2015/10/25 | 30975 | macros/latex/contrib/lisp-on-tex/examples/rocket.pdf -2015/10/25 | 641 | macros/latex/contrib/lisp-on-tex/examples/rocket.tex -2015/10/25 | 13933 | macros/latex/contrib/lisp-on-tex/examples/showfont.pdf -2015/10/25 | 941 | macros/latex/contrib/lisp-on-tex/examples/showfont.tex -2015/10/25 | 1665 | macros/latex/contrib/lisp-on-tex/LICENSE -2015/10/25 | 5317 | macros/latex/contrib/lisp-on-tex/lisp-arith.sty -2015/10/25 | 6646 | macros/latex/contrib/lisp-on-tex/lisp-gc.sty -2015/10/25 | 720 | macros/latex/contrib/lisp-on-tex/lisp-latexutil.sty -2015/10/25 | 3147 | macros/latex/contrib/lisp-on-tex/lisp-mod-fpnum.sty -2015/10/25 | 3975 | macros/latex/contrib/lisp-on-tex/lisp-mod-l3regex.sty -2015/10/25 | 31867 | macros/latex/contrib/lisp-on-tex/lisp-on-tex.sty -2015/10/25 | 6668 | macros/latex/contrib/lisp-on-tex/lisp-prim.sty -2015/10/25 | 4386 | macros/latex/contrib/lisp-on-tex/lisp-read.sty -2015/10/25 | 979 | macros/latex/contrib/lisp-on-tex/lisp-simple-alloc.sty -2015/10/25 | 2691 | macros/latex/contrib/lisp-on-tex/lisp-string.sty -2015/10/25 | 2222 | macros/latex/contrib/lisp-on-tex/lisp-util.sty -2015/10/25 | 12008 | macros/latex/contrib/lisp-on-tex/README.md -2015/10/25 | 247935 | macros/latex/contrib/lisp-on-tex/tug2013/slide.pdf -2015/10/25 | 405435 | macros/latex/contrib/lisp-on-tex.zip +2024/12/19 | 12711 | macros/latex/contrib/lisp-on-tex/examples/div2.pdf +2024/12/19 | 973 | macros/latex/contrib/lisp-on-tex/examples/div2.tex +2024/12/19 | 39893 | macros/latex/contrib/lisp-on-tex/examples/fact.pdf +2024/12/19 | 838 | macros/latex/contrib/lisp-on-tex/examples/fact.tex +2024/12/19 | 32301 | macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.pdf +2024/12/19 | 1800 | macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.tex +2024/12/19 | 13805 | macros/latex/contrib/lisp-on-tex/examples/nqueen.pdf +2024/12/19 | 1892 | macros/latex/contrib/lisp-on-tex/examples/nqueen.tex +2024/12/19 | 252 | macros/latex/contrib/lisp-on-tex/examples/repl.tex +2024/12/19 | 33454 | macros/latex/contrib/lisp-on-tex/examples/rocket.pdf +2024/12/19 | 641 | macros/latex/contrib/lisp-on-tex/examples/rocket.tex +2024/12/19 | 15269 | macros/latex/contrib/lisp-on-tex/examples/showfont.pdf +2024/12/19 | 941 | macros/latex/contrib/lisp-on-tex/examples/showfont.tex +2024/12/19 | 1665 | macros/latex/contrib/lisp-on-tex/LICENSE +2024/12/19 | 5317 | macros/latex/contrib/lisp-on-tex/lisp-arith.sty +2024/12/19 | 6646 | macros/latex/contrib/lisp-on-tex/lisp-gc.sty +2024/12/19 | 720 | macros/latex/contrib/lisp-on-tex/lisp-latexutil.sty +2024/12/19 | 3147 | macros/latex/contrib/lisp-on-tex/lisp-mod-fpnum.sty +2024/12/19 | 3973 | macros/latex/contrib/lisp-on-tex/lisp-mod-l3regex.sty +2024/12/19 | 31867 | macros/latex/contrib/lisp-on-tex/lisp-on-tex.sty +2024/12/19 | 6668 | macros/latex/contrib/lisp-on-tex/lisp-prim.sty +2024/12/19 | 4386 | macros/latex/contrib/lisp-on-tex/lisp-read.sty +2024/12/19 | 979 | macros/latex/contrib/lisp-on-tex/lisp-simple-alloc.sty +2024/12/19 | 2909 | macros/latex/contrib/lisp-on-tex/lisp-string.sty +2024/12/19 | 2222 | macros/latex/contrib/lisp-on-tex/lisp-util.sty +2024/12/19 | 12239 | macros/latex/contrib/lisp-on-tex/README.md +2024/12/19 | 247935 | macros/latex/contrib/lisp-on-tex/tug2013/slide.pdf +2024/12/19 | 412329 | macros/latex/contrib/lisp-on-tex.zip 2000/08/28 | 6421 | macros/latex/contrib/listbib/listbib 2000/07/30 | 421 | macros/latex/contrib/listbib/listbib.cfg 2000/08/28 | 63905 | macros/latex/contrib/listbib/listbib.doc @@ -256528,22 +256529,21 @@ 2024/11/15 | 1122 | macros/latex/contrib/turnthepage/turnthepage.sty 2024/11/15 | 6417 | macros/latex/contrib/turnthepage/turnthepage.tex 2024/11/19 | 126893 | macros/latex/contrib/turnthepage.zip -2024/12/04 | 617 | macros/latex/contrib/tutodoc/code/DEPENDS.yaml -2024/12/04 | 3068 | macros/latex/contrib/tutodoc/code/tutodoc-bw.css.cls -2024/12/04 | 37383 | macros/latex/contrib/tutodoc/code/tutodoc.cls -2024/12/04 | 3169 | macros/latex/contrib/tutodoc/code/tutodoc-color.css.cls -2024/12/04 | 3270 | macros/latex/contrib/tutodoc/code/tutodoc-dark.css.cls -2024/12/04 | 2259 | macros/latex/contrib/tutodoc/code/tutodoc-draft.css.cls -2024/12/04 | 1141 | macros/latex/contrib/tutodoc/code/tutodoc-en.loc.cls -2024/12/04 | 1206 | macros/latex/contrib/tutodoc/code/tutodoc-es.loc.cls -2024/12/04 | 1181 | macros/latex/contrib/tutodoc/code/tutodoc-fr.loc.cls -2024/12/04 | 1141519 | macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf -2024/12/04 | 65577 | macros/latex/contrib/tutodoc/doc/tutodoc-en.tex -2024/12/04 | 1178379 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf -2024/12/04 | 69938 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex -2024/12/04 | 1691 | macros/latex/contrib/tutodoc/MANIFEST.md -2024/12/04 | 532 | macros/latex/contrib/tutodoc/README.md -2024/12/05 | 2213291 | macros/latex/contrib/tutodoc.zip +2024/12/19 | 5175 | macros/latex/contrib/tutodoc/code/tutodoc-bw.css.cls +2024/12/19 | 43031 | macros/latex/contrib/tutodoc/code/tutodoc.cls +2024/12/19 | 5261 | macros/latex/contrib/tutodoc/code/tutodoc-color.css.cls +2024/12/19 | 5411 | macros/latex/contrib/tutodoc/code/tutodoc-dark.css.cls +2024/12/19 | 4662 | macros/latex/contrib/tutodoc/code/tutodoc-draft.css.cls +2024/12/19 | 1141 | macros/latex/contrib/tutodoc/code/tutodoc-en.loc.cls +2024/12/19 | 1206 | macros/latex/contrib/tutodoc/code/tutodoc-es.loc.cls +2024/12/19 | 1181 | macros/latex/contrib/tutodoc/code/tutodoc-fr.loc.cls +2024/12/19 | 1156350 | macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf +2024/12/19 | 80669 | macros/latex/contrib/tutodoc/doc/tutodoc-en.tex +2024/12/19 | 1225193 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf +2024/12/19 | 86676 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex +2024/12/19 | 1691 | macros/latex/contrib/tutodoc/MANIFEST.md +2024/12/19 | 532 | macros/latex/contrib/tutodoc/README.md +2024/12/19 | 2284814 | macros/latex/contrib/tutodoc.zip 2022/03/30 | 6929935 | macros/latex/contrib/twemojis/all-twemojis.pdf 2022/03/30 | 4161 | macros/latex/contrib/twemojis/README.md 2022/03/30 | 861548 | macros/latex/contrib/twemojis/twemojis.dtx @@ -257026,22 +257026,22 @@ 2015/05/20 | 151 | macros/latex/contrib/ucharcat/ucharcat.ins 2015/11/19 | 159215 | macros/latex/contrib/ucharcat/ucharcat.pdf 2015/11/20 | 160624 | macros/latex/contrib/ucharcat.zip -2024/09/30 | 2496 | macros/latex/contrib/ucph-revy/README.md +2024/12/18 | 2496 | macros/latex/contrib/ucph-revy/README.md 2023/05/21 | 1110 | macros/latex/contrib/ucph-revy/ucph-revy.bib 2023/09/08 | 1369 | macros/latex/contrib/ucph-revy/ucph-revy-da-doc.ins -2024/09/25 | 270526 | macros/latex/contrib/ucph-revy/ucph-revy-da-doc.pdf +2024/12/18 | 273058 | macros/latex/contrib/ucph-revy/ucph-revy-da-doc.pdf 2023/09/08 | 1287 | macros/latex/contrib/ucph-revy/ucph-revy-da-man.ins -2024/09/25 | 166576 | macros/latex/contrib/ucph-revy/ucph-revy-da-man.pdf -2024/09/25 | 108556 | macros/latex/contrib/ucph-revy/ucph-revy.dtx +2024/12/18 | 166989 | macros/latex/contrib/ucph-revy/ucph-revy-da-man.pdf +2024/12/18 | 109619 | macros/latex/contrib/ucph-revy/ucph-revy.dtx 2023/09/08 | 1329 | macros/latex/contrib/ucph-revy/ucph-revy-en-doc.ins -2024/09/25 | 273650 | macros/latex/contrib/ucph-revy/ucph-revy-en-doc.pdf +2024/12/18 | 275757 | macros/latex/contrib/ucph-revy/ucph-revy-en-doc.pdf 2023/09/08 | 1270 | macros/latex/contrib/ucph-revy/ucph-revy-en-man.ins -2024/09/25 | 171925 | macros/latex/contrib/ucph-revy/ucph-revy-en-man.pdf +2024/12/18 | 172089 | macros/latex/contrib/ucph-revy/ucph-revy-en-man.pdf 2023/05/22 | 1064 | macros/latex/contrib/ucph-revy/ucph-revy-ex-da.ins 2023/05/22 | 1063 | macros/latex/contrib/ucph-revy/ucph-revy-ex-en.ins 2023/05/22 | 1020 | macros/latex/contrib/ucph-revy/ucph-revy-ex-thumb.ins 2023/09/09 | 1293 | macros/latex/contrib/ucph-revy/ucph-revy.ins -2024/09/30 | 881038 | macros/latex/contrib/ucph-revy.zip +2024/12/19 | 886473 | macros/latex/contrib/ucph-revy.zip 2023/11/09 | 2848 | macros/latex/contrib/ucs/config/ascii.ucf 2023/11/09 | 6796 | macros/latex/contrib/ucs/config/boxdraw.ucf 2023/11/09 | 5551 | macros/latex/contrib/ucs/config/braille.ucf @@ -308389,8 +308389,8 @@ 2019/02/28 | 1500 | systems/texlive/tlnet/archive/beamerthemejltree.r21977.tar.xz 2021/04/07 | 224372 | systems/texlive/tlnet/archive/beamerthemelalic.doc.r58777.tar.xz 2021/04/07 | 2924 | systems/texlive/tlnet/archive/beamerthemelalic.r58777.tar.xz -2024/11/23 | 104892 | systems/texlive/tlnet/archive/beamertheme-light.doc.r72933.tar.xz -2024/11/23 | 1924 | systems/texlive/tlnet/archive/beamertheme-light.r72933.tar.xz +2024/12/19 | 51800 | systems/texlive/tlnet/archive/beamertheme-light.doc.r73158.tar.xz +2024/12/19 | 2080 | systems/texlive/tlnet/archive/beamertheme-light.r73158.tar.xz 2019/02/28 | 178716 | systems/texlive/tlnet/archive/beamertheme-metropolis.doc.r43031.tar.xz 2019/02/28 | 6572 | systems/texlive/tlnet/archive/beamertheme-metropolis.r43031.tar.xz 2019/02/28 | 18424 | systems/texlive/tlnet/archive/beamertheme-metropolis.source.r43031.tar.xz @@ -309287,8 +309287,8 @@ 2024/07/20 | 27712 | systems/texlive/tlnet/archive/changebar.source.r71847.tar.xz 2019/02/28 | 57396 | systems/texlive/tlnet/archive/changelayout.doc.r16094.tar.xz 2019/02/28 | 3872 | systems/texlive/tlnet/archive/changelayout.r16094.tar.xz -2024/09/18 | 174484 | systems/texlive/tlnet/archive/changelog.doc.r72305.tar.xz -2024/09/18 | 3508 | systems/texlive/tlnet/archive/changelog.r72305.tar.xz +2024/12/19 | 175576 | systems/texlive/tlnet/archive/changelog.doc.r73157.tar.xz +2024/12/19 | 3520 | systems/texlive/tlnet/archive/changelog.r73157.tar.xz 2019/02/28 | 274712 | systems/texlive/tlnet/archive/changepage.doc.r15878.tar.xz 2019/02/28 | 2612 | systems/texlive/tlnet/archive/changepage.r15878.tar.xz 2019/02/28 | 5956 | systems/texlive/tlnet/archive/changepage.source.r15878.tar.xz @@ -309772,7 +309772,7 @@ 2020/03/04 | 408 | systems/texlive/tlnet/archive/collection-langpolish.r54074.tar.xz 2023/05/16 | 400 | systems/texlive/tlnet/archive/collection-langportuguese.r67125.tar.xz 2024/09/06 | 404 | systems/texlive/tlnet/archive/collection-langspanish.r72203.tar.xz -2024/12/12 | 7332 | systems/texlive/tlnet/archive/collection-latexextra.r73102.tar.xz +2024/12/19 | 7344 | systems/texlive/tlnet/archive/collection-latexextra.r73155.tar.xz 2024/07/28 | 708 | systems/texlive/tlnet/archive/collection-latex.r71912.tar.xz 2024/06/15 | 740 | systems/texlive/tlnet/archive/collection-latexrecommended.r71527.tar.xz 2024/12/10 | 1056 | systems/texlive/tlnet/archive/collection-luatex.r73087.tar.xz @@ -312439,8 +312439,8 @@ 2019/02/28 | 147704 | systems/texlive/tlnet/archive/functan.doc.r15878.tar.xz 2019/02/28 | 2552 | systems/texlive/tlnet/archive/functan.r15878.tar.xz 2019/02/28 | 9636 | systems/texlive/tlnet/archive/functan.source.r15878.tar.xz -2024/12/15 | 732744 | systems/texlive/tlnet/archive/functional.doc.r73124.tar.xz -2024/12/15 | 11256 | systems/texlive/tlnet/archive/functional.r73124.tar.xz +2024/12/19 | 732764 | systems/texlive/tlnet/archive/functional.doc.r73156.tar.xz +2024/12/19 | 11216 | systems/texlive/tlnet/archive/functional.r73156.tar.xz 2019/02/28 | 185644 | systems/texlive/tlnet/archive/fundus-calligra.doc.r26018.tar.xz 2019/02/28 | 1540 | systems/texlive/tlnet/archive/fundus-calligra.r26018.tar.xz 2019/02/28 | 3480 | systems/texlive/tlnet/archive/fundus-calligra.source.r26018.tar.xz @@ -314606,6 +314606,9 @@ 2019/02/28 | 50936 | systems/texlive/tlnet/archive/listofsymbols.doc.r16134.tar.xz 2019/02/28 | 2552 | systems/texlive/tlnet/archive/listofsymbols.r16134.tar.xz 2019/02/28 | 6188 | systems/texlive/tlnet/archive/listofsymbols.source.r16134.tar.xz +2024/12/19 | 127044 | systems/texlive/tlnet/archive/listparskip.doc.r73155.tar.xz +2024/12/19 | 2248 | systems/texlive/tlnet/archive/listparskip.r73155.tar.xz +2024/12/19 | 8928 | systems/texlive/tlnet/archive/listparskip.source.r73155.tar.xz 2024/10/14 | 324712 | systems/texlive/tlnet/archive/litetable.doc.r72539.tar.xz 2024/10/14 | 3576 | systems/texlive/tlnet/archive/litetable.r72539.tar.xz 2023/03/08 | 56116 | systems/texlive/tlnet/archive/lithuanian.doc.r66461.tar.xz @@ -314709,8 +314712,8 @@ 2019/02/28 | 14224 | systems/texlive/tlnet/archive/lsc.r15878.tar.xz 2019/02/28 | 1899640 | systems/texlive/tlnet/archive/lshort-bulgarian.doc.r15878.tar.xz 2019/02/28 | 424 | systems/texlive/tlnet/archive/lshort-bulgarian.r15878.tar.xz -2023/05/06 | 1562468 | systems/texlive/tlnet/archive/lshort-chinese.doc.r67025.tar.xz -2023/05/06 | 472 | systems/texlive/tlnet/archive/lshort-chinese.r67025.tar.xz +2024/12/19 | 1561888 | systems/texlive/tlnet/archive/lshort-chinese.doc.r73160.tar.xz +2024/12/19 | 472 | systems/texlive/tlnet/archive/lshort-chinese.r73160.tar.xz 2020/06/24 | 1644616 | systems/texlive/tlnet/archive/lshort-czech.doc.r55643.tar.xz 2020/06/24 | 384 | systems/texlive/tlnet/archive/lshort-czech.r55643.tar.xz 2019/02/28 | 777012 | systems/texlive/tlnet/archive/lshort-dutch.doc.r15878.tar.xz @@ -315217,9 +315220,9 @@ 2023/09/08 | 469960 | systems/texlive/tlnet/archive/marginnote.doc.r68204.tar.xz 2023/09/08 | 3312 | systems/texlive/tlnet/archive/marginnote.r68204.tar.xz 2023/09/08 | 10208 | systems/texlive/tlnet/archive/marginnote.source.r68204.tar.xz -2024/11/23 | 1395232 | systems/texlive/tlnet/archive/markdown.doc.r72932.tar.xz -2024/11/23 | 66828 | systems/texlive/tlnet/archive/markdown.r72932.tar.xz -2024/11/23 | 139508 | systems/texlive/tlnet/archive/markdown.source.r72932.tar.xz +2024/12/19 | 1422380 | systems/texlive/tlnet/archive/markdown.doc.r73159.tar.xz +2024/12/19 | 67212 | systems/texlive/tlnet/archive/markdown.r73159.tar.xz +2024/12/19 | 139968 | systems/texlive/tlnet/archive/markdown.source.r73159.tar.xz 2019/02/28 | 426608 | systems/texlive/tlnet/archive/marvosym.doc.r29349.tar.xz 2019/02/28 | 133476 | systems/texlive/tlnet/archive/marvosym.r29349.tar.xz 2019/02/28 | 1256 | systems/texlive/tlnet/archive/marvosym.source.r29349.tar.xz @@ -316799,12 +316802,12 @@ 2019/11/19 | 340 | systems/texlive/tlnet/archive/pdfjam.amd64-freebsd.r52858.tar.xz 2019/11/19 | 340 | systems/texlive/tlnet/archive/pdfjam.amd64-netbsd.r52858.tar.xz 2019/11/19 | 340 | systems/texlive/tlnet/archive/pdfjam.armhf-linux.r52858.tar.xz -2024/06/29 | 159588 | systems/texlive/tlnet/archive/pdfjam.doc.r71641.tar.xz +2024/12/19 | 27200 | systems/texlive/tlnet/archive/pdfjam.doc.r73154.tar.xz 2019/11/19 | 340 | systems/texlive/tlnet/archive/pdfjam.i386-freebsd.r52858.tar.xz 2019/11/19 | 336 | systems/texlive/tlnet/archive/pdfjam.i386-linux.r52858.tar.xz 2019/11/19 | 340 | systems/texlive/tlnet/archive/pdfjam.i386-netbsd.r52858.tar.xz 2019/11/19 | 340 | systems/texlive/tlnet/archive/pdfjam.i386-solaris.r52858.tar.xz -2024/06/29 | 13024 | systems/texlive/tlnet/archive/pdfjam.r71641.tar.xz +2024/12/19 | 13476 | systems/texlive/tlnet/archive/pdfjam.r73154.tar.xz 2021/02/25 | 336 | systems/texlive/tlnet/archive/pdfjam.universal-darwin.r57908.tar.xz 2019/11/19 | 340 | systems/texlive/tlnet/archive/pdfjam.x86_64-cygwin.r52858.tar.xz 2019/11/19 | 348 | systems/texlive/tlnet/archive/pdfjam.x86_64-darwinlegacy.r52858.tar.xz @@ -319772,7 +319775,7 @@ 2022/09/13 | 600 | systems/texlive/tlnet/archive/texlive-scripts.amd64-freebsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.amd64-netbsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.armhf-linux.r64356.tar.xz -2024/12/18 | 442468 | systems/texlive/tlnet/archive/texlive-scripts.doc.r73152.tar.xz +2024/12/19 | 442392 | systems/texlive/tlnet/archive/texlive-scripts.doc.r73161.tar.xz 2024/07/09 | 908 | systems/texlive/tlnet/archive/texlive-scripts-extra.aarch64-linux.r71749.tar.xz 2024/07/09 | 920 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-freebsd.r71749.tar.xz 2024/07/09 | 908 | systems/texlive/tlnet/archive/texlive-scripts-extra.amd64-netbsd.r71749.tar.xz @@ -319794,7 +319797,7 @@ 2022/09/13 | 592 | systems/texlive/tlnet/archive/texlive-scripts.i386-linux.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-netbsd.r64356.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.i386-solaris.r64356.tar.xz -2024/12/18 | 114392 | systems/texlive/tlnet/archive/texlive-scripts.r73152.tar.xz +2024/12/19 | 114412 | systems/texlive/tlnet/archive/texlive-scripts.r73161.tar.xz 2022/09/13 | 580 | systems/texlive/tlnet/archive/texlive-scripts.universal-darwin.r64356.tar.xz 2024/05/10 | 60592 | systems/texlive/tlnet/archive/texlive-scripts.windows.r71215.tar.xz 2022/09/13 | 596 | systems/texlive/tlnet/archive/texlive-scripts.x86_64-cygwin.r64356.tar.xz @@ -321761,16 +321764,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 2024/12/03 | 125893 | systems/texlive/tlnet/install-tl -2024/12/18 | 5757875 | systems/texlive/tlnet/install-tl-unx.tar.gz -2024/12/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 -2024/12/18 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2024/12/19 | 5755401 | systems/texlive/tlnet/install-tl-unx.tar.gz +2024/12/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2024/12/19 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc 2024/04/13 | 5743 | systems/texlive/tlnet/install-tl-windows.bat -2024/12/18 | 27717174 | systems/texlive/tlnet/install-tl-windows.exe -2024/12/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2024/12/18 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2024/12/18 | 34430650 | systems/texlive/tlnet/install-tl.zip -2024/12/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2024/12/18 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2024/12/19 | 27716031 | systems/texlive/tlnet/install-tl-windows.exe +2024/12/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2024/12/19 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2024/12/19 | 34430657 | systems/texlive/tlnet/install-tl.zip +2024/12/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2024/12/19 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc 2024/03/13 | 1229 | systems/texlive/tlnet/README.md 2024/03/13 | 0 | systems/texlive/tlnet/TEXLIVE_2024 2024/01/02 | 9011 | systems/texlive/tlnet/tlpkg/gpg/pubring.gpg @@ -321780,7 +321783,7 @@ 2024/01/02 | 1280 | systems/texlive/tlnet/tlpkg/gpg/trustdb.gpg 2024/07/29 | 50743 | systems/texlive/tlnet/tlpkg/installer/config.guess 2010/11/11 | 11651 | systems/texlive/tlnet/tlpkg/installer/COPYING.MinGW-runtime.txt -2024/12/18 | 7151 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2024/12/19 | 7155 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2024/11/27 | 236849 | 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 @@ -321822,12 +321825,12 @@ 2023/02/21 | 20371 | systems/texlive/tlnet/tlpkg/TeXLive/TLCrypto.pm 2024/05/02 | 5898 | systems/texlive/tlnet/tlpkg/TeXLive/TLDownload.pm 2023/04/08 | 28167 | systems/texlive/tlnet/tlpkg/TeXLive/TLPaper.pm -2024/12/18 | 19665862 | systems/texlive/tlnet/tlpkg/texlive.tlpdb -2024/12/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2024/12/19 | 19667583 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2024/12/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 2024/06/22 | 87725 | systems/texlive/tlnet/tlpkg/TeXLive/TLPDB.pm -2024/12/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 -2024/12/18 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2024/12/18 | 2620332 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2024/12/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2024/12/19 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2024/12/19 | 2617512 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz 2023/02/20 | 58928 | systems/texlive/tlnet/tlpkg/TeXLive/TLPOBJ.pm 2023/06/11 | 42749 | systems/texlive/tlnet/tlpkg/TeXLive/TLPSRC.pm 2023/02/21 | 16138 | systems/texlive/tlnet/tlpkg/TeXLive/TLTREE.pm @@ -333705,7 +333708,7 @@ 2014/07/05 | 611 | systems/win32/yandy/README 2014/07/05 | 1004628 | systems/win32/yandy/yandy-src.tar.xz 2014/07/05 | 1012416 | systems/win32/yandy.zip -2024/12/19 | 186 | timestamp +2024/12/20 | 186 | timestamp 2002/08/26 | 61898 | usergrps/dante/antrag.pdf 2002/08/26 | 118217 | usergrps/dante/antrag.ps 2021/11/11 | 917 | usergrps/dante/dtk/doc/beispiel.bib diff --git a/FILES.byname.gz b/FILES.byname.gz Binary files differindex e85fa1a471..cfa0b99563 100644 --- a/FILES.byname.gz +++ b/FILES.byname.gz diff --git a/FILES.last07days b/FILES.last07days index e90fd49fa1..bb2c61508f 100644 --- a/FILES.last07days +++ b/FILES.last07days @@ -1,3 +1,102 @@ +2024/12/19 | 979 | macros/latex/contrib/lisp-on-tex/lisp-simple-alloc.sty +2024/12/19 | 973 | macros/latex/contrib/lisp-on-tex/examples/div2.tex +2024/12/19 | 941 | macros/latex/contrib/lisp-on-tex/examples/showfont.tex +2024/12/19 | 8928 | systems/texlive/tlnet/archive/listparskip.source.r73155.tar.xz +2024/12/19 | 886473 | macros/latex/contrib/ucph-revy.zip +2024/12/19 | 86676 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex +2024/12/19 | 838 | macros/latex/contrib/lisp-on-tex/examples/fact.tex +2024/12/19 | 80669 | macros/latex/contrib/tutodoc/doc/tutodoc-en.tex +2024/12/19 | 7344 | systems/texlive/tlnet/archive/collection-latexextra.r73155.tar.xz +2024/12/19 | 732764 | systems/texlive/tlnet/archive/functional.doc.r73156.tar.xz +2024/12/19 | 720 | macros/latex/contrib/lisp-on-tex/lisp-latexutil.sty +2024/12/19 | 7155 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +2024/12/19 | 67212 | systems/texlive/tlnet/archive/markdown.r73159.tar.xz +2024/12/19 | 6668 | macros/latex/contrib/lisp-on-tex/lisp-prim.sty +2024/12/19 | 6646 | macros/latex/contrib/lisp-on-tex/lisp-gc.sty +2024/12/19 | 641 | macros/latex/contrib/lisp-on-tex/examples/rocket.tex +2024/12/19 | 641662 | info/latex-via-exemplos/latex-via-exemplos.tex +2024/12/19 | 5755401 | systems/texlive/tlnet/install-tl-unx.tar.gz +2024/12/19 | 5411 | macros/latex/contrib/tutodoc/code/tutodoc-dark.css.cls +2024/12/19 | 532 | macros/latex/contrib/tutodoc/README.md +2024/12/19 | 5317 | macros/latex/contrib/lisp-on-tex/lisp-arith.sty +2024/12/19 | 5261 | macros/latex/contrib/tutodoc/code/tutodoc-color.css.cls +2024/12/19 | 51800 | systems/texlive/tlnet/archive/beamertheme-light.doc.r73158.tar.xz +2024/12/19 | 5175 | macros/latex/contrib/tutodoc/code/tutodoc-bw.css.cls +2024/12/19 | 51757200 | help/faq-fr-gutenberg.zip +2024/12/19 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +2024/12/19 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +2024/12/19 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc +2024/12/19 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc +2024/12/19 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2024/12/19 | 472 | systems/texlive/tlnet/archive/lshort-chinese.r73160.tar.xz +2024/12/19 | 4662 | macros/latex/contrib/tutodoc/code/tutodoc-draft.css.cls +2024/12/19 | 442392 | systems/texlive/tlnet/archive/texlive-scripts.doc.r73161.tar.xz +2024/12/19 | 4386 | macros/latex/contrib/lisp-on-tex/lisp-read.sty +2024/12/19 | 43031 | macros/latex/contrib/tutodoc/code/tutodoc.cls +2024/12/19 | 4228118 | biblio/ctan-bibdata.zip +2024/12/19 | 412329 | macros/latex/contrib/lisp-on-tex.zip +2024/12/19 | 4060 | info/latex-via-exemplos/makedoc.sh +2024/12/19 | 39893 | macros/latex/contrib/lisp-on-tex/examples/fact.pdf +2024/12/19 | 3973 | macros/latex/contrib/lisp-on-tex/lisp-mod-l3regex.sty +2024/12/19 | 3809976 | biblio/ctan-bibdata/ctan.pdf +2024/12/19 | 3520 | systems/texlive/tlnet/archive/changelog.r73157.tar.xz +2024/12/19 | 34430657 | systems/texlive/tlnet/install-tl.zip +2024/12/19 | 33454 | macros/latex/contrib/lisp-on-tex/examples/rocket.pdf +2024/12/19 | 32301 | macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.pdf +2024/12/19 | 31867 | macros/latex/contrib/lisp-on-tex/lisp-on-tex.sty +2024/12/19 | 3147 | macros/latex/contrib/lisp-on-tex/lisp-mod-fpnum.sty +2024/12/19 | 2909 | macros/latex/contrib/lisp-on-tex/lisp-string.sty +2024/12/19 | 2905117 | biblio/ctan-bibdata/ctan.bib +2024/12/19 | 27716031 | systems/texlive/tlnet/install-tl-windows.exe +2024/12/19 | 2725 | info/latex-via-exemplos/latex-via-exemplos-certificado.tex +2024/12/19 | 27200 | systems/texlive/tlnet/archive/pdfjam.doc.r73154.tar.xz +2024/12/19 | 261 | info/latex-via-exemplos/latex-via-exemplos-cracha-lista-participantes.csv +2024/12/19 | 2617512 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2024/12/19 | 252 | macros/latex/contrib/lisp-on-tex/examples/repl.tex +2024/12/19 | 2497 | info/latex-via-exemplos/README.md +2024/12/19 | 247935 | macros/latex/contrib/lisp-on-tex/tug2013/slide.pdf +2024/12/19 | 2426 | info/latex-via-exemplos/changelog.txt +2024/12/19 | 2284814 | macros/latex/contrib/tutodoc.zip +2024/12/19 | 22679023 | help/faq-fr-gutenberg/pdf/faqlatexgutenberg-sombre.pdf +2024/12/19 | 2265 | help/faq-fr-gutenberg/README.md +2024/12/19 | 22575934 | help/faq-fr-gutenberg/pdf/faqlatexgutenberg.pdf +2024/12/19 | 2248 | systems/texlive/tlnet/archive/listparskip.r73155.tar.xz +2024/12/19 | 2222 | macros/latex/contrib/lisp-on-tex/lisp-util.sty +2024/12/19 | 2080 | systems/texlive/tlnet/archive/beamertheme-light.r73158.tar.xz +2024/12/19 | 20299218 | help/faq-fr-gutenberg/faq-gut-main.tar.gz +2024/12/19 | 20141 | help/faq-fr-gutenberg/LICENSE +2024/12/19 | 19667583 | systems/texlive/tlnet/tlpkg/texlive.tlpdb +2024/12/19 | 1895 | info/latex-via-exemplos/latex-via-exemplos-cracha.tex +2024/12/19 | 1892 | macros/latex/contrib/lisp-on-tex/examples/nqueen.tex +2024/12/19 | 1800 | macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.tex +2024/12/19 | 175576 | systems/texlive/tlnet/archive/changelog.doc.r73157.tar.xz +2024/12/19 | 1722645 | info/latex-via-exemplos.zip +2024/12/19 | 1691 | macros/latex/contrib/tutodoc/MANIFEST.md +2024/12/19 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2024/12/19 | 1665 | macros/latex/contrib/lisp-on-tex/LICENSE +2024/12/19 | 1586514 | info/latex-via-exemplos/latex-via-exemplos.pdf +2024/12/19 | 1561888 | systems/texlive/tlnet/archive/lshort-chinese.doc.r73160.tar.xz +2024/12/19 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 +2024/12/19 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 +2024/12/19 | 15269 | macros/latex/contrib/lisp-on-tex/examples/showfont.pdf +2024/12/19 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 +2024/12/19 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +2024/12/19 | 1422380 | systems/texlive/tlnet/archive/markdown.doc.r73159.tar.xz +2024/12/19 | 139968 | systems/texlive/tlnet/archive/markdown.source.r73159.tar.xz +2024/12/19 | 13805 | macros/latex/contrib/lisp-on-tex/examples/nqueen.pdf +2024/12/19 | 13476 | systems/texlive/tlnet/archive/pdfjam.r73154.tar.xz +2024/12/19 | 12711 | macros/latex/contrib/lisp-on-tex/examples/div2.pdf +2024/12/19 | 127044 | systems/texlive/tlnet/archive/listparskip.doc.r73155.tar.xz +2024/12/19 | 12674 | info/latex-via-exemplos/latex-via-exemplos-abntexto.tex +2024/12/19 | 1225193 | macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf +2024/12/19 | 12239 | macros/latex/contrib/lisp-on-tex/README.md +2024/12/19 | 1206 | macros/latex/contrib/tutodoc/code/tutodoc-es.loc.cls +2024/12/19 | 1181 | macros/latex/contrib/tutodoc/code/tutodoc-fr.loc.cls +2024/12/19 | 1156350 | macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf +2024/12/19 | 114412 | systems/texlive/tlnet/archive/texlive-scripts.r73161.tar.xz +2024/12/19 | 1141 | macros/latex/contrib/tutodoc/code/tutodoc-en.loc.cls +2024/12/19 | 11216 | systems/texlive/tlnet/archive/functional.r73156.tar.xz +2024/12/19 | 10203 | info/latex-via-exemplos/latex-via-exemplos-abntex2.tex 2024/12/18 | 9841 | info/lshort/chinese/src/lshort-zh-cn-style.sty 2024/12/18 | 8788 | systems/texlive/tlnet/archive/principia.r73146.tar.xz 2024/12/18 | 85132 | macros/latex/contrib/functional/functional.sty @@ -8,22 +107,17 @@ 2024/12/18 | 745 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light/beamertheme-light.sty 2024/12/18 | 7252 | info/lshort/chinese/src/lshort-zh-cn-layout.tex 2024/12/18 | 722 | info/lshort/chinese/src/make.bat -2024/12/18 | 7151 | systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl 2024/12/18 | 698560 | macros/latex/contrib/functional/functional.pdf 2024/12/18 | 692204 | systems/texlive/tlnet/archive/huawei.doc.r73148.tar.xz 2024/12/18 | 6608 | systems/texlive/tlnet/archive/jsonparse.r73147.tar.xz 2024/12/18 | 61057 | macros/generic/markdown/CHANGES.md 2024/12/18 | 60256 | systems/texlive/tlnet/archive/xepersian.r73145.tar.xz -2024/12/18 | 5757875 | systems/texlive/tlnet/install-tl-unx.tar.gz 2024/12/18 | 573 | info/lshort/chinese/src/Makefile 2024/12/18 | 54162 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light.zip 2024/12/18 | 53015 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light/beamertheme-light-example.pdf +2024/12/18 | 52022 | macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv 2024/12/18 | 505156 | systems/texlive/tlnet/archive/jsonparse.doc.r73147.tar.xz -2024/12/18 | 48 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 -2024/12/18 | 488 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc -2024/12/18 | 488 | systems/texlive/tlnet/install-tl.zip.sha512.asc -2024/12/18 | 488 | systems/texlive/tlnet/install-tl-windows.exe.sha512.asc -2024/12/18 | 488 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512.asc +2024/12/18 | 4839 | info/latex-via-exemplos/latex-via-exemplos-slides.tex 2024/12/18 | 476636 | systems/texlive/tlnet/archive/newpx.doc.r73150.tar.xz 2024/12/18 | 4744252 | systems/texlive/tlnet/archive/newpx.r73150.tar.xz 2024/12/18 | 47060 | info/lshort/chinese/src/chap/chap.03.elements.tex @@ -31,16 +125,12 @@ 2024/12/18 | 4655 | info/lshort/chinese/src/chap/biblio.tex 2024/12/18 | 450704 | systems/texlive/tlnet/archive/principia.doc.r73146.tar.xz 2024/12/18 | 4435 | macros/generic/markdown/docstrip.cfg -2024/12/18 | 442468 | systems/texlive/tlnet/archive/texlive-scripts.doc.r73152.tar.xz 2024/12/18 | 4367 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light/beamerthemelight.sty -2024/12/18 | 4226192 | biblio/ctan-bibdata.zip 2024/12/18 | 40169 | info/lshort/chinese/src/chap/chap.05.style.tex 2024/12/18 | 392 | systems/texlive/tlnet/archive/newpx.source.r73150.tar.xz 2024/12/18 | 3832 | macros/generic/markdown/examples/example.md -2024/12/18 | 3808874 | biblio/ctan-bibdata/ctan.pdf 2024/12/18 | 36689 | info/lshort/chinese/src/chap/chap.04.math.tex 2024/12/18 | 3658 | info/lshort/chinese/src/chap/preface.overview.tex -2024/12/18 | 34430650 | systems/texlive/tlnet/install-tl.zip 2024/12/18 | 338 | info/lshort/chinese/src/lshort-zh-cn.ist 2024/12/18 | 33350 | info/lshort/chinese/src/chap/chap.06.spec.tex 2024/12/18 | 326 | macros/generic/markdown/DEPENDS.txt @@ -49,12 +139,12 @@ 2024/12/18 | 30520 | systems/texlive/tlnet/archive/mpchess.r73149.tar.xz 2024/12/18 | 301036 | macros/latex/contrib/functional/functional.tex 2024/12/18 | 2951 | info/lshort/chinese/src/INSTRUCTIONS.md -2024/12/18 | 2904521 | biblio/ctan-bibdata/ctan.bib 2024/12/18 | 2806 | macros/generic/markdown/examples/context-mkiv.tex -2024/12/18 | 27717174 | systems/texlive/tlnet/install-tl-windows.exe +2024/12/18 | 275757 | macros/latex/contrib/ucph-revy/ucph-revy-en-doc.pdf 2024/12/18 | 27323 | info/lshort/chinese/src/chap/chap.01.basics.tex -2024/12/18 | 2620332 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +2024/12/18 | 273058 | macros/latex/contrib/ucph-revy/ucph-revy-da-doc.pdf 2024/12/18 | 260756 | systems/texlive/tlnet/archive/huawei.r73148.tar.xz +2024/12/18 | 2496 | macros/latex/contrib/ucph-revy/README.md 2024/12/18 | 2427280 | systems/texlive/tlnet/archive/mpchess.doc.r73149.tar.xz 2024/12/18 | 2408 | systems/texlive/tlnet/archive/bib2gls.windows.r73151.tar.xz 2024/12/18 | 23565 | info/lshort/chinese/src/chap/chap.08.custom.tex @@ -63,33 +153,31 @@ 2024/12/18 | 2036 | macros/generic/markdown/examples/latex-pdftex.tex 2024/12/18 | 2009 | macros/latex/contrib/beamer-contrib/themes/beamertheme-light/beamertheme-light-example.tex 2024/12/18 | 2007 | macros/generic/markdown/examples/latex-luatex.tex -2024/12/18 | 19665862 | systems/texlive/tlnet/tlpkg/texlive.tlpdb 2024/12/18 | 19405 | info/lshort/chinese/src/chap/chap.02.text.tex 2024/12/18 | 187768 | macros/latex/contrib/changelog.zip 2024/12/18 | 18403 | CTAN.sites 2024/12/18 | 1800 | info/lshort/chinese/README.md +2024/12/18 | 178305 | macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf 2024/12/18 | 17722 | info/lshort/chinese/src/chap/sec.symbol.table.tex 2024/12/18 | 1763865 | install/macros/generic/markdown.tds.zip 2024/12/18 | 17335 | info/lshort/chinese/src/chap/chap.07.graphic.tex +2024/12/18 | 172089 | macros/latex/contrib/ucph-revy/ucph-revy-en-man.pdf 2024/12/18 | 1678 | macros/generic/markdown/markdown.ins -2024/12/18 | 1678 | biblio/ctan-bibdata/biblatex-ctan/ctan.bbx +2024/12/18 | 166989 | macros/latex/contrib/ucph-revy/ucph-revy-da-man.pdf 2024/12/18 | 1655709 | macros/generic/markdown.zip 2024/12/18 | 1635 | info/lshort/chinese/README-zh.md 2024/12/18 | 1590304 | info/lshort/chinese.zip -2024/12/18 | 153 | systems/texlive/tlnet/install-tl-windows.exe.sha512 -2024/12/18 | 152 | systems/texlive/tlnet/install-tl-unx.tar.gz.sha512 2024/12/18 | 1472327 | info/lshort/chinese/lshort-zh-cn.pdf 2024/12/18 | 146203 | macros/latex/contrib/listparskip.zip -2024/12/18 | 145 | systems/texlive/tlnet/install-tl.zip.sha512 -2024/12/18 | 144 | systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 2024/12/18 | 140951 | macros/generic/markdown/markdown.png 2024/12/18 | 13848 | info/lshort/chinese/src/chap/app.B.error.help.tex 2024/12/18 | 1379 | info/lshort/chinese/src/chap/titlepage.tex 2024/12/18 | 1250427 | macros/generic/markdown/markdown.pdf -2024/12/18 | 114392 | systems/texlive/tlnet/archive/texlive-scripts.r73152.tar.xz +2024/12/18 | 11 | macros/context/contrib/context-pocketdiary/VERSION 2024/12/18 | 1142 | info/lshort/chinese/src/lshort-zh-cn.tex 2024/12/18 | 11136 | systems/texlive/tlnet/archive/huawei.source.r73148.tar.xz 2024/12/18 | 10963 | info/lshort/chinese/src/chap/preface.contrib.tex +2024/12/18 | 109619 | macros/latex/contrib/ucph-revy/ucph-revy.dtx 2024/12/18 | 1057532 | systems/texlive/tlnet/archive/xepersian.doc.r73145.tar.xz 2024/12/18 | 1040284 | macros/generic/markdown/markdown.html 2024/12/18 | 1040057 | macros/generic/markdown/markdown.dtx @@ -180,7 +268,6 @@ 2024/12/16 | 55 | graphics/pgf/contrib/tikzbricks/DEPENDS.txt 2024/12/16 | 53538 | graphics/metapost/contrib/macros/mpchess/doc/mpchess-doc-fr.tex 2024/12/16 | 5285 | graphics/pgf/contrib/tikzbricks/tikzbricks-doc-settings.sty -2024/12/16 | 52012 | macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv 2024/12/16 | 51480 | systems/texlive/tlnet/archive/fancyhdr.source.r73133.tar.xz 2024/12/16 | 505337 | macros/generic/lt3luabridge/lt3luabridge.pdf 2024/12/16 | 504333 | macros/generic/lt3luabridge.zip @@ -246,10 +333,8 @@ 2024/12/16 | 1396 | macros/generic/lt3luabridge/docstrip.cfg 2024/12/16 | 132836 | systems/texlive/tlnet/archive/bidi.r73131.tar.xz 2024/12/16 | 1309 | graphics/metapost/contrib/macros/mpchess/doc/fond.pdf -2024/12/16 | 11 | macros/context/contrib/context-pocketdiary/VERSION 2024/12/16 | 113908 | systems/texlive/tlcontrib/tlpkg/texlive.tlpdb.xz 2024/12/16 | 1131 | graphics/pgf/contrib/tikzbricks/README.md -2024/12/16 | 10 | macros/context/contrib/context-pocketdiary/t-pocketdiary/VERSION 2024/12/16 | 10814 | macros/luatex/generic/luamplib/test-luamplib-latex.tex 2024/12/16 | 1031 | macros/generic/lt3luabridge/README.md 2024/12/16 | 10103 | graphics/pgf/contrib/tikzbricks/tikzbricks-doc.tex @@ -304,7 +389,6 @@ 2024/12/15 | 73417 | systems/win32/miktex/tm/packages/next/miktex-graphite2-bin-x64-2.9.tar.lzma 2024/12/15 | 73399 | systems/win32/miktex/tm/packages/ppmcheckpdf__doc.tar.lzma 2024/12/15 | 73380 | systems/win32/miktex/tm/packages/next/miktex-tex4ht-bin-x64-2.9.tar.lzma -2024/12/15 | 732744 | systems/texlive/tlnet/archive/functional.doc.r73124.tar.xz 2024/12/15 | 73095 | support/bib2gls/examples/sample-textsymbols.pdf 2024/12/15 | 724955 | systems/win32/miktex/tm/packages/siunitx__doc.tar.lzma 2024/12/15 | 724336 | systems/win32/miktex/tm/packages/zref-vario__doc.tar.lzma @@ -723,7 +807,6 @@ 2024/12/15 | 11362 | systems/win32/miktex/tm/packages/functional.tar.lzma 2024/12/15 | 1128976 | systems/win32/miktex/tm/packages/babel__doc.tar.lzma 2024/12/15 | 11259 | systems/win32/miktex/tm/packages/postnotes.tar.lzma -2024/12/15 | 11256 | systems/texlive/tlnet/archive/functional.r73124.tar.xz 2024/12/15 | 112427 | systems/win32/miktex/tm/packages/next/miktex-texware-bin-x64-2.9.tar.lzma 2024/12/15 | 11208 | systems/win32/miktex/tm/packages/lie-hasse.tar.lzma 2024/12/15 | 110677 | systems/win32/miktex/tm/packages/stocksize__doc.tar.lzma @@ -917,51 +1000,3 @@ 2024/12/13 | 1037 | support/expltools/doc/warnings-and-errors-00-introduction.md 2024/12/13 | 1032 | fonts/simpleicons/tfm/SimpleIcons--simpleiconsonethree.tfm 2024/12/13 | 1030 | support/expltools/doc/project-proposal-05-benefits-of-grant-funding.md -2024/12/12 | 9941 | graphics/pgf/contrib/tikzlings/tikzlings-hippos.sty -2024/12/12 | 9668 | graphics/pgf/contrib/tikzlings/tikzlings-bees.sty -2024/12/12 | 9292 | graphics/pgf/contrib/tikzlings/tikzlings-owls.sty -2024/12/12 | 9147 | graphics/pgf/contrib/tikzlings/tikzlings-bears.sty -2024/12/12 | 908 | graphics/pgf/contrib/tikzlings/tikzlibrarytikzlings.code.tex -2024/12/12 | 878815 | graphics/pgf/contrib/tikzlings.zip -2024/12/12 | 8611 | graphics/pgf/contrib/tikzlings/tikzlings-pandas.sty -2024/12/12 | 813824 | graphics/pgf/contrib/tikzlings/tikzlings-doc.pdf -2024/12/12 | 808 | systems/texlive/tlnet/archive/gratzer-color-scheme.r73102.tar.xz -2024/12/12 | 79276 | systems/texlive/tlnet/archive/gratzer-color-scheme.doc.r73102.tar.xz -2024/12/12 | 7332 | systems/texlive/tlnet/archive/collection-latexextra.r73102.tar.xz -2024/12/12 | 554971 | macros/latex/contrib/rub-kunstgeschichte.zip -2024/12/12 | 545496 | systems/texlive/tlnet/archive/cora-macs.doc.r73101.tar.xz -2024/12/12 | 5285 | graphics/pgf/contrib/tikzlings/tikzlings-doc-settings.sty -2024/12/12 | 51 | graphics/pgf/contrib/tikzlings/DEPENDS.txt -2024/12/12 | 48271 | graphics/pgf/contrib/tikzlings/tikzlings-addons.sty -2024/12/12 | 4500 | systems/texlive/tlnet/archive/cora-macs.r73101.tar.xz -2024/12/12 | 3012 | graphics/pgf/contrib/tikzlings/tikzlings.sty -2024/12/12 | 2500 | systems/texlive/tlnet/archive/tikzmarmots.r73100.tar.xz -2024/12/12 | 22967 | graphics/pgf/contrib/tikzlings/tikzlings-apes.sty -2024/12/12 | 2105040 | systems/texlive/tlnet/archive/luatex.windows.r73105.tar.xz -2024/12/12 | 209904 | systems/texlive/tlnet/archive/tikzmarmots.doc.r73100.tar.xz -2024/12/12 | 19248 | graphics/pgf/contrib/tikzlings/tikzlings-doc.tex -2024/12/12 | 18695 | graphics/pgf/contrib/tikzlings/tikzlings-chickens.sty -2024/12/12 | 18314 | graphics/pgf/contrib/tikzlings/tikzlings-sloths.sty -2024/12/12 | 17926 | graphics/pgf/contrib/tikzlings/tikzlings-meerkats.sty -2024/12/12 | 17413 | graphics/pgf/contrib/tikzlings/tikzlings-cats.sty -2024/12/12 | 17306 | graphics/pgf/contrib/tikzlings/tikzlings-coatis.sty -2024/12/12 | 1578 | graphics/pgf/contrib/tikzlings/tikzlings-list.sty -2024/12/12 | 1504896 | systems/texlive/tlnet/archive/tex4ht.source.r73104.tar.xz -2024/12/12 | 14477 | graphics/pgf/contrib/tikzlings/tikzlings-marmots.sty -2024/12/12 | 13930 | graphics/pgf/contrib/tikzlings/tikzlings-sheep.sty -2024/12/12 | 13850 | graphics/pgf/contrib/tikzlings/tikzlings-bugs.sty -2024/12/12 | 136384 | systems/texlive/tlnet/archive/tex4ht.doc.r73104.tar.xz -2024/12/12 | 13308 | graphics/pgf/contrib/tikzlings/tikzlings-anteaters.sty -2024/12/12 | 12315 | graphics/pgf/contrib/tikzlings/tikzlings-wolves.sty -2024/12/12 | 11977 | graphics/pgf/contrib/tikzlings/tikzlings-squirrels.sty -2024/12/12 | 11859 | graphics/pgf/contrib/tikzlings/tikzlings-koalas.sty -2024/12/12 | 11722 | graphics/pgf/contrib/tikzlings/tikzlings-pigs.sty -2024/12/12 | 11658 | graphics/pgf/contrib/tikzlings/tikzlings-moles.sty -2024/12/12 | 11631 | graphics/pgf/contrib/tikzlings/tikzlings-mice.sty -2024/12/12 | 1139296 | systems/texlive/tlnet/archive/tex4ht.r73104.tar.xz -2024/12/12 | 10906 | graphics/pgf/contrib/tikzlings/tikzlings-bats.sty -2024/12/12 | 10815 | graphics/pgf/contrib/tikzlings/tikzlings-penguins.sty -2024/12/12 | 10791 | graphics/pgf/contrib/tikzlings/tikzlings-rhinos.sty -2024/12/12 | 1064 | graphics/pgf/contrib/tikzlings/README.md -2024/12/12 | 10304 | graphics/pgf/contrib/tikzlings/tikzlings-elephants.sty -2024/12/12 | 10191 | graphics/pgf/contrib/tikzlings/tikzlings-snowmen.sty diff --git a/biblio/ctan-bibdata/ctan.bib b/biblio/ctan-bibdata/ctan.bib index 60a22954c3..fc4bd12909 100644 --- a/biblio/ctan-bibdata/ctan.bib +++ b/biblio/ctan-bibdata/ctan.bib @@ -1,7 +1,7 @@ %% bib file of all CTAN packages %% (C) Herbert Voß %% -%% created at 18-12-2024, 02:00:02 +%% created at 19-12-2024, 02:00:02 %% %% This file is provided under the terms of the LPPL v1.3 or @@ -6227,8 +6227,8 @@ title = {The \texttt{beamertheme-light} package}, subtitle = {A minimal beamer style}, author = {Fabien Vergnet and Vivien Goepp and {Unknown}}, - date = {2024-12-13}, - version = {1.1}, + date = {2024-12-18}, + version = {1.2}, license = {gpl3}, mirror = {https://mirror.ctan.org/macros/latex/contrib/beamer-contrib/themes/beamertheme-light}, url = {https://ctan.org/pkg/beamertheme-light}, @@ -11840,8 +11840,8 @@ title = {The \texttt{changelog} package}, subtitle = {Typesetting keepachangelog.com style changelogs}, author = {Rebecca Turner}, - date = {2024-09-17}, - version = {2.5.1}, + date = {2024-12-18}, + version = {2.6.0}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/changelog}, url = {https://ctan.org/pkg/changelog}, @@ -28615,10 +28615,10 @@ @manual{ctan-functional, title = {The \texttt{functional} package}, - subtitle = {Provide an intuitive functional programming interface for \LaTeX{}2}, + subtitle = {An intuitive functional programming interface for \LaTeX{}2}, author = {Jianrui Lyu}, - date = {2024-12-14}, - version = {2024B}, + date = {2024-12-18}, + version = {2024C}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/latex/contrib/functional}, url = {https://ctan.org/pkg/functional}, @@ -41110,6 +41110,21 @@ url = {https://ctan.org/pkg/listofsymbols}, } +@manual{ctan-listparskip, + title = {The \texttt{listparskip} package}, + subtitle = {Adjust vertical space around lists}, + author = {Conrad Kosowsky}, + date = {2024-12-18}, + version = {1.0}, + license = {lppl1.3c}, + mirror = {https://mirror.ctan.org/macros/latex/contrib/listparskip}, + url = {https://ctan.org/pkg/listparskip}, + annotation = {This package modifies list environments such that they add + and before or after + a list if and only if the environment follows or precedes, + respectively, a blank line (i.e. a ).}, +} + @manual{ctan-litebook, title = {The \texttt{LiteBook} package}, subtitle = {A fresh cover and chapter design for books}, @@ -42154,9 +42169,9 @@ @manual{ctan-lshort-zh-cn, title = {The \texttt{lshort-zh-cn} package}, subtitle = {Introduction to \LaTeX{}, in Chinese}, - author = {Zhaopeng Xing and Louis Stuart and Xiangdong Zeng}, - date = {2023-05-05}, - version = {6.04}, + author = {Zhaopeng Xing and Louis Stuart and Xiangdong Zeng and Tingxuan Zhang}, + date = {2024-12-18}, + version = {6.05}, license = {fdl}, mirror = {https://mirror.ctan.org/info/lshort/chinese}, url = {https://ctan.org/pkg/lshort-zh-cn}, @@ -44557,8 +44572,8 @@ title = {The \texttt{markdown} package}, subtitle = {Converting and rendering markdown documents inside \TeX{}}, author = {Vít Starý Novotný}, - date = {2024-11-22}, - version = {3.9.0-0-g4f1abe21}, + date = {2024-12-18}, + version = {3.9.1-0-g92254dfb}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/macros/generic/markdown}, url = {https://ctan.org/pkg/markdown}, @@ -72191,7 +72206,7 @@ title = {The \texttt{tikz3d-fr} package}, subtitle = {Work with some 3D figures}, author = {Cédric Pierquet}, - date = {2024-09-16}, + date = {2024-12-18}, version = {0.1.3}, license = {lppl1.3c}, mirror = {https://mirror.ctan.org/graphics/pgf/contrib/tikz3d-fr}, diff --git a/biblio/ctan-bibdata/ctan.pdf b/biblio/ctan-bibdata/ctan.pdf Binary files differindex 46ee46998c..931b252fd5 100644 --- a/biblio/ctan-bibdata/ctan.pdf +++ b/biblio/ctan-bibdata/ctan.pdf diff --git a/help/faq-fr-gutenberg/README.md b/help/faq-fr-gutenberg/README.md index 3232a28882..368271dd42 100644 --- a/help/faq-fr-gutenberg/README.md +++ b/help/faq-fr-gutenberg/README.md @@ -12,7 +12,7 @@ If you'd like to read the FAQ, please visit the URL above. This package also contains two PDF versions of this FAQ: - [with code verbatim in clear mode](pdf/faqlatexgutenberg.pdf) -- [with code verbatim in dark mode](pdf/faqlatexgutenberg_sombre.pdf) +- [with code verbatim in dark mode](pdf/faqlatexgutenberg-sombre.pdf) ## Participate @@ -31,7 +31,7 @@ of this content, and to preserve a permanent copy. For questions and comments: faq@gutenberg-asso.fr -## Version 2024-10-07 +## Version 2024-12-18 # FAQ LaTeX francophone GUTenberg — Foire aux Questions @@ -46,7 +46,7 @@ l'URL ci-dessus. Ce package contient aussi deux versions PDF de cette FAQ : - [avec verbatim des codes en mode clair](pdf/faqlatexgutenberg.pdf) -- [avec verbatim des codes en mode sombre](pdf/faqlatexgutenberg_sombre.pdf) +- [avec verbatim des codes en mode sombre](pdf/faqlatexgutenberg-sombre.pdf) ## Participer @@ -66,4 +66,4 @@ la réutilisation de ce contenu, et pour en conserver une copie pérenne. Pour toutes questions et remarques : faq@gutenberg-asso.fr -## Version 2024-10-07
\ No newline at end of file +## Version 2024-12-18 diff --git a/help/faq-fr-gutenberg/pdf/faqlatexgutenberg_sombre.pdf b/help/faq-fr-gutenberg/pdf/faqlatexgutenberg-sombre.pdf Binary files differindex 4d3cd7da50..a600b4ba7a 100644 --- a/help/faq-fr-gutenberg/pdf/faqlatexgutenberg_sombre.pdf +++ b/help/faq-fr-gutenberg/pdf/faqlatexgutenberg-sombre.pdf diff --git a/help/faq-fr-gutenberg/pdf/faqlatexgutenberg.pdf b/help/faq-fr-gutenberg/pdf/faqlatexgutenberg.pdf Binary files differindex 4c3871797f..574292646a 100644 --- a/help/faq-fr-gutenberg/pdf/faqlatexgutenberg.pdf +++ b/help/faq-fr-gutenberg/pdf/faqlatexgutenberg.pdf diff --git a/info/latex-via-exemplos/README.md b/info/latex-via-exemplos/README.md index f94542877e..2e2ed24e41 100644 --- a/info/latex-via-exemplos/README.md +++ b/info/latex-via-exemplos/README.md @@ -22,6 +22,7 @@ For example, will compile using pdflatex as pdflatex latex-via-exemplos-fig pdflatex latex-via-exemplos-poster pdflatex latex-via-exemplos-slides + biber latex-via-exemplos-slides pdflatex latex-via-exemplos-slides pdflatex latex-via-exemplos-certificado pdflatex latex-via-exemplos-cracha @@ -32,24 +33,23 @@ For example, will compile using pdflatex as Note that latex-via-exemplos-slides.tex and latex-via-exemplos-todonotes.tex are compiled twice. The next step is to compile latex-via-exemplos.tex -using XeLaTeX (or LuaLaTeX) as +using XeLaTeX or LuaLaTeX as - xelatex latex-via-exemplos + lualatex latex-via-exemplos bibtex latex-via-exemplos makeindex latex-via-exemplos - xelatex latex-via-exemplos - xelatex latex-via-exemplos + lualatex latex-via-exemplos + lualatex latex-via-exemplos The latex-via-exemplos is one sided document. -To generate two sided version, compile latex-via-exemplos-twosides.tex -using XeLaTeX (or LuaLaTeX) as +To generate two sided version, compile latex-via-exemplos-twosides.tex using XeLaTeX (or LuaLaTeX) as - xelatex latex-via-exemplos-twosides + lualatex latex-via-exemplos-twosides bibtex latex-via-exemplos-twosides makeindex latex-via-exemplos-twosides - xelatex latex-via-exemplos-twosides - xelatex latex-via-exemplos-twosides + lualatex latex-via-exemplos-twosides + lualatex latex-via-exemplos-twosides **Note:** The linux user will use shell script "makedoc.sh" to compile at once as @@ -68,20 +68,24 @@ show usage parameters. Remark ------ -The latex-via-exemplos.tex require japanese font in way to compile, -due to example of multilingual features of XeLaTeX/LuaLaTeX. +The latex-via-exemplos.tex require japanese font in way to compile, due to example of multilingual features of XeLaTeX/LuaLaTeX. -It requires several packages available on CTAN, used on their examples. +Also requires several packages available on CTAN, used on examples. Author ------ -Sadao Massago +Name: Sadao Massago -DFQM-UFSCar +Email: sadao at ufscar dot br + +Institute: DFQM-UFSCar + +Copyright 2018-2024 Sadao Massago License ------- -All files are distributed as GNU GPL version 2, or (at your option) -any latter version. +This work may be distributed and/or modified under the conditions of the LaTeX Project Public License, either version 1.3c of this license or (at your option) any later version. + +The latest version of this license is in -https://opensource.org/licenses/gpl-license +http://www.latex-project.org/lppl.txt diff --git a/info/latex-via-exemplos/changelog.txt b/info/latex-via-exemplos/changelog.txt index 90a1e1486a..976f6bb880 100644 --- a/info/latex-via-exemplos/changelog.txt +++ b/info/latex-via-exemplos/changelog.txt @@ -1,4 +1,11 @@ -version 2024-12-08 +version 2024-12-19 + - example of glossaries and acronyms using packages acro and glossaries + - new packages: tabularray, overpic, tocloft + - some update on description of helper apps. + - some bug fix. + - changed version numbering scheme + - license term changed from GNU General Public License (GPL) to LaTeX Project Public License (LPPL) +version 0.5.11 2024-12-08 - new fonts examples: mlmodern, sansmathfonts, and fontsetup. - updated example for anbtexto for ABNT - some new packages. diff --git a/info/latex-via-exemplos/latex-via-exemplos-abntex2.tex b/info/latex-via-exemplos/latex-via-exemplos-abntex2.tex new file mode 100644 index 0000000000..a5b2ccae1d --- /dev/null +++ b/info/latex-via-exemplos/latex-via-exemplos-abntex2.tex @@ -0,0 +1,254 @@ +% \documentclass[12pt,a4paper,openright,twoside,english,brazil]{abntex2} % impressão no papel +\documentclass[12pt,a4paper,oneside,english,brazil]{abntex2} % online +\usepackage{iftex} % Para detectar o motor de TeX utilizado +% Fontes, de acordo com o motor do TeX +\ifPDFTeX + \usepackage[T1]{fontenc} % codificação da fonte em 8-bits + \usepackage{mlmodern} % fontes MLModern (espessura Book) + %\usepackage{lmodern} % fontes Latin Modern (espessura normal) + \usepackage[utf8]{inputenc} % acentuação direta em UTF-8 +\else + \usepackage{fontsetup} %New Computer Modern com espessura Book + % Note que a fonte padrão para XeLaTeX/LuaLaTeX é Latin Modern +\fi +% pacotes matemáticas de acordo com o motor TeX +\ifPDFTeX + \usepackage{amsmath,amssymb} % para matematica +\else + % para matematica + \usepackage{unicode-math} + \ifLuaTeX + \usepackage{lualatex-math} + \fi +\fi + +\usepackage[overload]{textcase} % para poder ter comandos de LaTeX/fórmula no titulo +\usepackage{microtype} % micro tipografia para ajuste refinado de espaçamento +\usepackage{hyperref} % para link automático no PDF +% Desabilitando ou redefinindo comandos que causa erros no bookmark do PDF +\pdfstringdefDisableCommands{% + \let\MakeUppercase\relax% desabilitando + % \\ e \and já é tratada adequadamente em ABNT2 +} +\usepackage{pdfpages} % para incluir documento PDF (ex.: folha de aprovação) +\usepackage{indentfirst} % se quer que o primeiro parágrafo seja indentada +\usepackage{csquotes} % biblatex recomenda quando usa babel ou proligrosia +% Com BibLaTeX (recomendado) +\usepackage[backend=biber, language=auto, style=abnt]{biblatex} +\addbibresource{modelo-biblatex.bib} % arquivo bib +% para compatibilidade com documentos que usam com abntex2cite +\makeatletter + \@ifpackageloaded{biblatex}{ + \let\citeonline\textcite + \let\apudonline\textapud + }{} +\makeatother +%% Se for criar o índice remissivo (opcional) +%\usepackage{makeidx} +%\makeindex + +% Para evitar o Overflow \hbox, podera usar \sloppy +\sloppy +% enumeração subordinado a capítulo +\numberwithin{equation}{chapter} +% permite quebrar equacoes entre linhas +\allowdisplaybreaks +% reduzindo o espaço entre numeração e titulo no sumário +% (para caso de ter somente capitulo e seção) +\setlength{\cftlastnumwidth}{2.5em} % do sumário de ABNTeX + +% Dados para capa, folha de rosto, etc +\title{Exemplo de ABNTeX2} % ou \titulo{} +% caso de mais de um autor, separe com o comando \and +\author{Sadao Massago} % ou \autor{} +\date{Dezembro de 2024} % ou \data{} +\instituicao{DFQM-UFSCar} % Instituição +\local{Sorocaba} % Local. +% Texto do tipo "Monografia apresentada à ..., como requisito parcial para a obtenção do título de ..." impresso na folha de rosto e folha de aprovação. +% Consultar a sua instituição para saber o texto correto. +\preambulo{Texto do tipo ``Monografia apresentada ...'' que depende da instituição} +% Tipo de trabalho é usado na ficha catalográfica +% "Tese (doutorado)", "Dissertação (mestrado)", "Trabalho de conclusão de curso (graduação)", etc. +\tipotrabalho{Exemplo} +\orientador{Nome do orientador} +%\orientador[Oreintadora:]{Nome da orientadora} +%\coorientador{Nome dos coorientadores} % caso existam +%\coorientador[Coorientadora:]{Nome das coorientadoras} % caso existam +% (Opcional): informações para PDF +% Precisa ajustar o pdfkeywords (palavras-chave) de acordo com o trabalho. +\makeatletter +\hypersetup{pdftitle={\@title}, + pdfauthor={\@author}, + pdfsubject={\imprimirpreambulo}, + pdfkeywords={ABNT}{Trabalho acadêmico}{LaTeX}{ABNTeX2} +} +\makeatother +% INICIO DO DOCUMENTO +\begin{document} +\imprimircapa % Capa é obrigatória no ABNT (não use \maketitle) +% Observação: Lombada (parte de trás do livro) é opcional no ABNT e não tem comandos específicos para ele no abntex2. +% Folha de rosto é obrigatório no ABNT +% versao ``*'' não pula página, permitindo adicionar ficha catalográfica no verso +% Se não tiver a ficha catalográfica (e se for impressão frente/verso), use a versão sem ``*'' +\imprimirfolhaderosto* % pule uma linha antes da ficha catalográfica. + +% Ficha catalográfica, caso existir, deve ficar no verso da folha de rosto +\begin{fichacatalografica} +Ficha catalográfica provisória. +% Quando tiver versão definitiva, inserir aqui +% \includepdf{fichacatalograficafinal.pdf} +\end{fichacatalografica} +% Errata, caso existir +%\begin{errata} +%Caso exista errata. Opcional no ABNT. +%\end{errata} +% Folha de aprovação é obrigatório no ABNT +\begin{folhadeaprovacao} +% provisória: Veja o código no manual do abntex2. +% quando tiver a folha de aprovação devidamente assinada, incluir aqui +% \includepdf{folhadeaprovacaofinal.pdf} +\end{folhadeaprovacao} +% Dedicatória +%\begin{dedicatoria} +%Dedicatória é um elemento opcional para ABNT. +%\end{dedicatoria} +% Agradecimentos +\begin{agradecimentos} +Agradecimentos é opcional no ABNT, mas boa educação é agradecer aos que contribuíram para realização do trabalho. +\end{agradecimentos} +% Uma mensagem bonita% reduzindo o espaço entre numeração e titulo no sumário +% (para caso de ter somente capitulo e seção) +\setlength{\cftlastnumwidth}{2.5em} % do sumário de ABNTeX +%\begin{epigrafe} +%Uma mensagem que é opcional no ABNT. +%\end{epigrafe} +% Resumo +\begin{resumo} +Resumo em português, obrigatório no ABNT. + +\noindent +\textbf{Palavras-chave}: ABNT, LaTeX, ABNTeX2. +\end{resumo} +% Resumo em linguagem estrangeira +\begin{resumo}[Abstract] +%[\MakeUppercase{Abstract}] +\begin{otherlanguage}{english} +Resumo em língua estrangeira (obrigatório no ABNT). + +\noindent +\textbf{Keywords}: ABNT, LaTeX, ABNTeX2. +\end{otherlanguage} +\end{resumo} +%\clearpage\thispagestyle{empty}\cleardoublepage +% \phantomsection\pdfbookmark[chapter]{\listfigurename}{lof} +% \listoffigures % opcional no ABNT +%\clearpage\thispagestyle{empty}\cleardoublepage +%\phantomsection\pdfbookmark[chapter]{\listfigurename}{lot} +%\listoftables % opcional no ABNT +%\begin{siglas} % Lista de siglas é opcional no ABNT. +%\item[ABNT] Associação Brasileira de Normas Técnicas. +%\end{siglas} +%\begin{simbolos}% Lista de Símbolos é opcional no ABNT +%\item[$\pi$] Razão entre circunferência e raio. +%\end{simbolos} + +% Sumário é obrigatório no ABNT +% A versão ``*'' remove a entrada "sumário" do bookmark do PDF e do sumário +\clearpage\thispagestyle{empty}\cleardoublepage +\tableofcontents* + +% CONTEÚDO PRINCIPAL +\clearpage\thispagestyle{empty}\cleardoublepage +\mainmatter % ou \textual +% Como já é conteúdo textual, capítulos serão enumerados. +\chapter{Prefácio} % % prefácio (ou apresentação) é opcional no ABNT +Prefácio aqui. Se preferir, pode incorporar na introdução. + +\clearpage\thispagestyle{empty}\cleardoublepage +\chapter{Introdução} +Introdução aqui. + +\clearpage\thispagestyle{empty}\cleardoublepage +\chapter{Citações} +\begin{citacao} +As citações diretas, no texto, com mais de três linhas, devem ser destacadas com recuo de 4 cm da margem esquerda, com letra menor que a do texto utilizado e sem as aspas. +No caso de documentos datilografados, deve-se observar apenas o recuo +\apud[5.3]{NBR10520:2002}{book:abntex2:araujo} +% \cite[5.3]{NBR10520:2002}. +\end{citacao} + +\begin{citacao}[english] +Text in English with correct hyphenation and in italic. +\end{citacao} + +Observação: ``Citações simples, com até três linhas, devem ser +incluídas com aspas. Observe que em \LaTeX, as aspas iniciais são diferentes das finais'' \cite{book:abntex2:araujo}. + +Citações indiretas (reescritas) é formatado normalmente como um texto, mas também precisam estar com fontes citadas. + +\clearpage\thispagestyle{empty}\cleardoublepage +\chapter{Alíneas} +Alíneas é uma subdivisão enumerada alfabeticamente para assuntos de texto, pequeno demais para criar uma seção/subseção. + +Visualmente, é uma lista enumerada alfabeticamente. +Cada alínea deve terminar em ponto e virgula, com excessão de últmo que é ponto. + +Uma subalíneas são divisões de alineas, mas não são enumeradas. + +No ABNTeX2, alíneas e subalíneas são criados pelos ambientes \texttt{alineas} e \texttt{subalineas} respectivamente, sendo seus elementos especificados pelo comando \verb+\item+ como na lista. + +\begin{alineas} +\item Primeira alínea; +\item Segunda alínea: +\begin{subalineas} +\item alinea é enumerada alfabeticamente. +\item subalínea não são enumeradas. +\end{subalineas} +\end{alineas} + +\clearpage\thispagestyle{empty}\cleardoublepage +\chapter{Fonte de tabelas e figuras} +A fonte de tabelas e figuras são colocadas embaixo, pelo comando \verb+\legend+ + +\begin{figure}[hbp!] +\center +\caption{Imagem exemplo contido no pacote \texttt{mwe}\label{fig:simples}} +\includegraphics[width=0.35\linewidth]{example-image} +\legend{Fonte: CTAN -- \url{https://ctan.org/}} +\end{figure} +No caso de subfiguras e sub tabelas, colocar fonte em cada uma delas, com \verb+\legend+. + +\clearpage\thispagestyle{empty}\cleardoublepage +\chapter{Considerações Finais} +Conclusão do trabalho. + +% PÓS TEXTUAL +\clearpage\thispagestyle{empty}\cleardoublepage +\backmatter % ou o comando \postextual +%% Referencias bibliográficas é obrigatório no ABNT +%% Em geral, usa-se o BibLaTeX (ou BibTeX) +\printbibliography % Com BibLaTeX +% Glossário é opcional no ABNT. +%\clearpage\phantomsection\addcontentsline{toc}{chapter}{Glossário} %adicionando no sumário +% inserir glossário pelo comando de acordo com o pacote usado: pacotes mais usados são acro e glossaries +% Apêndice é opcional no ABNT. +% Caso existir, inicio de apêndices será marcado com o comando \apendices +\clearpage\thispagestyle{empty}\cleardoublepage +\apendices % não usar o \appendix +\chapter{Primeiro Apêndice} +Conteúdo do primeiro apêndice. +\clearpage\thispagestyle{empty}\cleardoublepage +\chapter{Segundo Apêndice} +Conteúdo do segundo apêndice. +% Anexos são opcionais no ABNT +% Caso existir, inicio de anexos será marcado com o comando \anexos +\clearpage\thispagestyle{empty}\cleardoublepage +\anexos +\chapter{Primeiro Anexo} +Conteúdo do primeiro anexo +\chapter{Segundo Anexo} +Conteúdo do segundo anexo +% Índice remissivo (opcional) +% \clearpage\thispagestyle{empty}\cleardoublepage +% \printindex % Índice remissivo é opcional no ABNT +\end{document} diff --git a/info/latex-via-exemplos/latex-via-exemplos-abntexto.tex b/info/latex-via-exemplos/latex-via-exemplos-abntexto.tex new file mode 100644 index 0000000000..df25a3d0eb --- /dev/null +++ b/info/latex-via-exemplos/latex-via-exemplos-abntexto.tex @@ -0,0 +1,352 @@ +% Padrão para abntexto +% Classe base: article +% pacote adicional: geometry, graphicx +% font size: 12pt +% twoside=true +% Observação: Tabelas e figuras flutuantes não estão suportados oficienalemnte (2024). Além disso, tabela flutuante está desativada e a figura flutuante pode não funciona junto com subfiguras -- usando multiplace desta classe -- +% +% neste modelo, usa o layout de um lado +\documentclass[a4paper]{abntexto} +% O padrão é dois lados. Para um lado, ou modo eletronico (um lado com margem menor), requer pequeno ajuste + +% Em um lado somente +\let\twosidelayout=\onesidelayout + +% No formato eletronico (suas margens parece não ser de ABNT) +%\let\onesidelayout=\eletroniclayout% pretextual +%\let\twosidelayout=\eletroniclayout% textual + +\usepackage{iftex} % Para detectar o motor de TeX utilizado +% Fontes, de acordo com o motor do TeX +\ifPDFTeX % PDFLaTeX + \usepackage[T1]{fontenc} % codificação da fonte em 8-bits + \usepackage{mlmodern} % fontes MLModern que é mais escura que Computer Modern tradicional (espessura de letra de Book) + %\usepackage{lmodern} % fontes Latin Modern: espessura tradicional do Computer Modern + \usepackage[utf8]{inputenc} % acentuação direta em UTF-8 +\else % XeLaTeX/LuaLaTeX + \usepackage{fontsetup} % New Cmputer Modern com espessura da letra de Book + % Padrão do XeLaTeX/LuaLaTeX +\fi + +% idiomas +\usepackage[english,main=brazil]{babel}%padrão é brazil. + +% pacotes matemáticas de acordo com o motor TeX +\ifPDFTeX + \usepackage{amsmath,amssymb} % para matematica +\else + % para matematica + \usepackage{unicode-math} + \ifLuaTeX + \usepackage{lualatex-math} + \fi +\fi +%Outros pacotes +\usepackage{hyperref} % para link automático no PDF +% Desabilitando ou redefinindo comandos que causa erros no bookmark do PDF +\pdfstringdefDisableCommands{% +\let\MakeUppercase\relax% desabilitando +\def\\{ }% +\def\and{ e } +} +\usepackage{pdfpages} % para incluir documento PDF (ex.: folha de aprovação) +\usepackage{indentfirst} % se quer que o primeiro parágrafo seja indentada +%% Se for criar o índice remissivo (opcional) +%\usepackage{makeidx} +%\makeindex +\usepackage{microtype} % micro tipografia para ajuste refinado de espaçamento + +\usepackage{xtab} % para tabela longa configurável xtabular +% Para linhas horizontais com espaçamento melhorado: \toprule, \midrule, \bottomrule, \cmidrule +\usepackage{booktabs} + +% BibLaTeX +\usepackage{csquotes} % biblatex recomenda quando usar o pacote de idiomas babel/poligrossia +\usepackage[backend=biber, language=auto, style=abnt]{biblatex} +\addbibresource{modelo-biblatex.bib} % arquivo bib + + +%\addto{\captionsbrazil}{ +% \renewcommand{\refname}{Referências} +%} + +% Mesmo com \usechapters do ABNTexto, tamanho das fontes do título da referências bibliográficas e similares ficam como seção. Para ser de capítulo, precisa de ajustes +\defbibheading{bibliography}[\refname]{\chapter*{#1}} +\makeatletter +% Índice remissivo +\AddToHook{env/theindex/begin}{\let\@section@original\section \let\section\chapter} +\AddToHook{env/theindex/end}{\let\section\@section@original} +% referências bibliográficas +\AddToHook{env/thebibliography/begin}{\let\@section@original\section \let\section\chapter} +\AddToHook{env/thebibliography/end}{\let\section\@section@original} +% Glossário com pacote glossaries +\AtBeginDocument{\@ifpackageloaded{glossaries}{ + \AddToHook{cmd/printglossary/before}{\let\@section@original\section \let\section\chapter} + \AddToHook{cmd/printglossary/after}{\let\section\@section@original} +}} %\@ifpackageloaded %\AtBeginDocument +\makeatother + +\usechapters% ativar o uso de capítulos (ajuste ao sumário) +% ABNTexto define o contador \c@chapter usando \newcount do TeX. +% Assim, está sem o \cl@chapter para subordinar outros contadores +% Para que a subordinação de outros contadores (dois ou mais) funcionem devidamente (como feito pelo \numberwithin{}{}, \newtheorem{}{}[] e \newcounter{}[]), deve ter o seguinte comando +\makeatletter + \@ifundefined{c@chapter}{\newcount \c@chapter}{}% contador principal + \global\let\cl@chapter\@empty% lista de aplicações de \@elt nos contadores subordinados (ao executar, aplicará \@elt em cada um dos contadores subordinados) + \def\@stpelt@on@cl#1{ + \begingroup% agrupando para que mudanças seja local. + \let\@elt@original\@elt% copia do original + \let\@elt\@stpelt % \@elt será o \@stpelt + \csname cl@#1\endcsname % aplica o \@elt em cada contador + \let\@elt\@elt@original% restaura o \@elt original + \endgroup + } + + % Caso de part, subsubsection e paragraph, são analogos + \AddToHook{cmd/recountchapter/after}{\@stpelt@on@cl{chapter}} + \AddToHook{cmd/recountsection/after}{\@stpelt@on@cl{section}} + \AddToHook{cmd/recountsubsection/after}{\@stpelt@on@cl{subsection}} +\makeatother + +% versão * do capítulo/seção não tem no ABNTexto. +% No ABNTexto, será \clearpage\nonum\notoc\chapter{\centering } ou \nonum\notoc\section{\centering } +% Providenciando versão * pela praticidade em usar no conteúdo pretextual (ABNT: deve ser centralizada) + +\makeatletter + \let\chapter@nostar\chapter% copiando o original + \def\chapter{\@ifstar\chapter@star\chapter@nostar} + \def\chapter@star#1{% com * + \cleardoublepage + \nonum\notoc\chapter@nostar{\centering #1} + } +% Para artigos +%\let\section@nostar\section% copiando o original +%\def\section{\@ifstar\section@star\section@nostar} +%\def\section@star#1{% com * +% \nonum\notoc\section@nostar{\centering #1} +%} +\makeatother +% informação do documento (requer o pacote hyperref) +\hypersetup{pdftitle={Exemplo de ABNTexto}, + pdfauthor={Sadao Massago}, + pdfsubject={Exemplo do documento em ABNT com a classe ABNTexto}, + pdfkeywords={ABNT}{Trabalho acadêmico}{LaTeX}{ABNTexto} +} + +\sloppy % preferência a underfull (muito espaço entre palavras) +% enumeração subordinado a capítulo +\numberwithin{equation}{chapter} +% permite quebrar equacoes entre linhas +\allowdisplaybreaks + +% INICIO DO DOCUMENTO +\begin{document} + +\begin{titlepage} +UNIVERSIDADE FEDERAL DE SÃO CARLOS \\ +CENTRO DE CIÊNCIAS E TECNOLOGIAS PARA SUSTENTABILIDADE +\begin{center} +\vfill +\Large SADAO MASSAGO +\vfill +{\Huge\bfseries EXEMPLO DE ABNTEXTO} +\vfill +SOROCABA \\ +NOVEMBRO DE 2024 +\end{center} +\end{titlepage} +\pretextual % pretextual é iniciado automaticamente? +% Folha de rosto é obrigatório no ABNT +\begin{center} +\vfill +Sadao Massago +\vfill +{\Large\bfseries Exemplo de ABNTexto} +\vfill +\begin{flushright}\begin{minipage}{0.5\textwidth} +\noindent% sem indentação +\singlesp % espaçamento simpoles, usando o comando de ABNTexto +Texto do tipo ‘‘Monografia apresentada ...’’ que depende da instituição +\end{minipage}\end{flushright} +\vfill +Universidade Federal de São Carlos \\ +Centro de Ciências e Tecnologias para Sustentabilidade +\vfill +Orientador(a): Nome do(a) orientador(a) +\vfill +Sorocaba\\ +Novembro de 2024 +\end{center} + +%% Ficha catalográfica, caso existir, deve ficar no verso da folha de rosto +%\newpage % Quando tiver versão definitiva, inserir aqui +%\includepdf{fichacatalograficafinal.pdf} +% +%Caso exista errata. Opcional no ABNT. +%\chapter*{Errata} +% +\newpage +Folha de aprovação é obrigatório no ABNT +%% Quando tiver a folha de aprovação devidamente assinada, incluir aqui +%% \includepdf{folhadeaprovacaofinal.pdf} +% +%\chapter*{} +%%Dedicatória é um elemento opcional para ABNT +% +\chapter*{} +Agradecimentos é opcional no ABNT, mas boa educação é agradecer aos que contribuíram para realização do trabalho. +% +%\chapter*{} +%epigrafe (uma mensagem) que é opcional no ABNT. Deverá colocar o autor da mensagem, alinhada a direita. +% +\chapter*{Resumo} +\noindent Resumo em português, obrigatório no ABNT. + +\noindent +\textbf{Palavras-chave}: ABNT, LaTeX, ABNTexto. +% +\chapter*{Abstract} %Resumo em língua estrangeira (obrigatório no ABNT). +\begin{otherlanguage}{english} +\noindent Abstract in foreign language is required in ABNT. + +\noindent +\textbf{Keywords}: ABNT, LaTeX, ABNTexto. +\end{otherlanguage} +% +%\clearpage\phantomsection\pdfbookmark[chapter]{\listfigurename}{lof} +%\chapter*{Lista de Figuras}% opcional no ABNT +%\maketoc{lof} +% +%\clearpage\phantomsection\pdfbookmark[chapter]{\listfigurename}{lot} +%\chapter*{Lista de Tabelas} % opcional no ABNT +%\maketoc{lot} +% +% \clearpage +%\chapter*{Siglas} % Lista de siglas é opcional no ABNT. +%\begin{description} +%\item[ABNT] Associação Brasileira de Normas Técnicas. +%\end{description} +%\end{siglas} +% +% \clearpage +%\chapter*{Simbolos}% Lista de Símbolos é opcional no ABNT +%\begin{description} +%\item[$\pi$] Razão entre circunferência e raio. +%\item[ABNT] Associação Brasileira de Normas Técnicas. +%\end{description} +% +\clearpage +% \section*{Sumário} % artigo +\chapter*{Sumário} +\maketoc % produz sumário. Não use \tableofcontents + +% CONTEÚDO PRINCIPAL +\clearpage +\textual \let\textual=\relax% iniciando o textual e desativando o comando +% +% Como já é conteúdo textual, capítulos serão enumerados. +\chapter{Prefácio} % prefácio (ou apresentação) é opcional no ABNT +Prefácio aqui. Se preferir, pode incorporar na introdução. + +\clearpage +\chapter{Introdução} +Introdução aqui. + +\clearpage +\chapter{Alíneas} +Alineas é criado pelo ambiente \texttt{topics}. +\begin{topics} +\item \label{alinea:1} ítem 1 +\begin{topics} +\item subítem a +\item subítem b +\end{topics} +\item \label{alinea:2} ítem 2 +\end{topics} +\clearpage +\chapter{Legenda} +O comando \verb+\legend+ especifica se vai ser figura ou tabela e cria a legenda (título). +Deve respeitar a ordem dos comandos \verb+\legend+, \verb+\src+ e \verb+\place+. O ambiente de figuras flutuantes \texttt{figure} funciona, mas não está suportado oficialmente na classe \texttt{abntexto} (2024). Se usar, não esquecer de verificar se está de acordo com o ABNT. +\begin{figure}[hbp!] +\legend{figure}{Uma figura} +\src{CTAN: \url{https://ctan.org/}} +\label{fig:teste} +\place{\includegraphics[width=0.4\linewidth]{example-image}} +\end{figure} +Ver \ref{fig:teste}. + +Poderá usar subfiguras nativamente como na Figura~\ref{fig:teste2} (Figura~\ref{fig:teste2:a} e \ref{fig:teste2:b}). +\begin{figure}[hbp!] +\legend{figure}{Duas figuras}\label{fig:teste2} +\begin{multiplace} + \sublegend{figure}{Normal} + \src{CTAN: \url{https://ctan.org/}} + \label{fig:teste2:a} + \subplace{\includegraphics[width=0.4\linewidth]{example-image-a}} + % figura 2 + \sublegend{figure}{Rotacionada} + \src{CTAN: \url{https://ctan.org/}} + \label{fig:teste2:b} + \subplace{\includegraphics[width=0.4\linewidth,angle=45]{example-image-a}} +\end{multiplace} +\end{figure} + +Não há suporte para tabelas flutuantes (2024). Logo, tabelas devem ser inseridas diretamente, mesmo que seja pequena. + +\begin{center} +\legend{table}{Um título}\label{tab:primeira} +\src{Elaboração do autor.} +\place{% +\begin{tabular}{ll} +\toprule %\hline + produto & preço \\ +\midrule %\hline + cenouras (500g) & R\$0,50 \\ + cogumelos (vidro de 500g) & R\$5,00 \\ + batata (1Kg) & R\$1,20 \\ \midrule % \hline + total & R\$6,70 \\ + \bottomrule %\hline +\end{tabular} +} +\end{center} + +Não há suporte para tabelas longas. Se precisar, use o pacote \texttt{xtab} e configure devidamente. + +\clearpage +\chapter{Citações} +Para citações curtas, use \verb+\enquote{texto}\cite{key}+. + +Para citações longas (mais de 3 linhas), use +\verb+\Enquote{texto\cite{key}}+ (com ``E'' maiúsculo). +Por exemplo, +\Enquote{O Lua\LaTeX{} foi designado para ser o sucessor do PDF\LaTeX{} e por isso, deve ser o \LaTeX{} padrão no futuro, mas pode ser um pouco mais lento do que o Xe\LaTeX. \cite{book:sadao:2019} +} %Enquote + +\clearpage +\chapter{Considerações Finais} +Conclusão do trabalho. +% PÓS TEXTUAL +\clearpage +%% Referencias bibliográficas é obrigatório no ABNT +\phantomsection\addcontentsline{toc}{chapter}{\refname}%adicionando no sumário +\printbibliography%sem opção, para devido funcionamento em ABNTexto +%% glossário é opcional no ABNT +%\clearpage\phantomsection\addtoext{toc}{chapter}{Glossário} %adicionando no sumário pelo comando de ABNTexto +% inserir glossário pelo comando de acordo com o pacote usado: pacotes mais usados são acro e glossaries +%%Apêndices são opcionais no ABNT +%\clearpage +%\appendix{Primeiro Apêndice} +%Conteúdo do primeiro apêndice. +%\clearpage +%\appendix{Segundo Apêndice} +%Conteúdo do segundo apêndice. +%% Anexos são opcionais no ABNT +%\clearpage +%\annex{Primeiro Anexo} +%Conteúdo do primeiro anexo +%\annex{Segundo Anexo} +%Conteúdo do segundo anexo +%% Índice remissivo (opcional no ABNT) +% \clearpage\phantomsection\addtoext{toc}{chapter}{\indexname}%adicionando no sumário pelo comando de ABNTexto +% \printindex +\end{document} diff --git a/info/latex-via-exemplos/latex-via-exemplos-lista-nomes.csv b/info/latex-via-exemplos/latex-via-exemplos-certificado-lista-nomes.csv index c4f99b1969..c4f99b1969 100644 --- a/info/latex-via-exemplos/latex-via-exemplos-lista-nomes.csv +++ b/info/latex-via-exemplos/latex-via-exemplos-certificado-lista-nomes.csv diff --git a/info/latex-via-exemplos/latex-via-exemplos-certificado.tex b/info/latex-via-exemplos/latex-via-exemplos-certificado.tex index 34f3084f90..771816740b 100644 --- a/info/latex-via-exemplos/latex-via-exemplos-certificado.tex +++ b/info/latex-via-exemplos/latex-via-exemplos-certificado.tex @@ -36,7 +36,7 @@ % associa lista para o arquivo CSV % \DTLloaddb[noheader,keys={Nome,Trabalho}]{lista}{latex-via-exemplos-lista-nomes.csv} -\DTLloaddb{lista}{latex-via-exemplos-lista-nomes.csv} +\DTLloaddb{lista}{latex-via-exemplos-certificado-lista-nomes.csv} \DTLforeach{lista}{% processa cada item da lista \personname=Nome,\worktitle=Trabalho}{% diff --git a/info/latex-via-exemplos/latex-via-exemplos-lista-participantes.csv b/info/latex-via-exemplos/latex-via-exemplos-cracha-lista-participantes.csv index a7f53dfa69..f51dd5af1f 100644 --- a/info/latex-via-exemplos/latex-via-exemplos-lista-participantes.csv +++ b/info/latex-via-exemplos/latex-via-exemplos-cracha-lista-participantes.csv @@ -1,3 +1,5 @@ +%% Arquvio usado por `latex-via-exemplos-cracha.tex'. +%% Name,Country,Institute {Fulano de Tal},Brazil,Instituto 1 Beltrano,Brazil,Insituto 2 diff --git a/info/latex-via-exemplos/latex-via-exemplos-cracha.tex b/info/latex-via-exemplos/latex-via-exemplos-cracha.tex index 490b1be34d..4989092dcf 100644 --- a/info/latex-via-exemplos/latex-via-exemplos-cracha.tex +++ b/info/latex-via-exemplos/latex-via-exemplos-cracha.tex @@ -4,7 +4,7 @@ \usepackage{graphicx} \usepackage{xcolor} \usepackage{rotating} -% paacote para gerar cartão de visitaas e similares +% paacote para gerar cartão de visitas e similares \usepackage[rowmode,cutmark]{ticket} % A4 = 210mmx297mm @@ -52,7 +52,7 @@ % Associa o nome 'namelist' ao arquivo %\DTLloaddb{namelist}{\jobname-dat.csv} -\DTLloaddb{namelist}{latex-via-exemplos-lista-participantes.csv} +\DTLloaddb{namelist}{latex-via-exemplos-cracha-lista-participantes.csv} \begin{document} % para cada linha do 'namelist' \DTLforeach*{namelist}{% Associar cada coluna do CSV no comando diff --git a/info/latex-via-exemplos/latex-via-exemplos-slides.tex b/info/latex-via-exemplos/latex-via-exemplos-slides.tex index 4041045376..906a9f4607 100644 --- a/info/latex-via-exemplos/latex-via-exemplos-slides.tex +++ b/info/latex-via-exemplos/latex-via-exemplos-slides.tex @@ -2,22 +2,26 @@ \usepackage[T1]{fontenc} % codificação da fonte em 8-bits \usepackage[utf8]{inputenc} % acentuação direta -\usepackage[brazil]{babel} % em portugues brasileiro +\usepackage[brazilian]{babel} % em portugues brasileiro % \usetheme{Warsaw} % tema (modelo) \usetheme{AnnArbor} \usecolortheme{default} % tema de cores (Esquema de cores) % para ver como fica as combinacoes de tema e esquema de cores, % veja o site https://hartwork.org/beamer-theme-matrix/ -% \usefonttheme[onlymath]{serif} % use serif for math %\setbeamerfont{title}{family=\rm} % titulo em romano \usepackage{amssymb,amsmath} % para incrementar fórmulas \usepackage{tikz} % para cria degrade no fundo +% \usepackage{hyperref} % ja eh carregado pelo beamer +\usepackage{sansmathfonts} % fontes sans para fórmulas %\usepackage[sfdefault]{notomath} % Mudando fontes + \usepackage{lipsum} % para gerar texto, para teste -% \usepackage{hyperref} % ja eh carregado pelo beamer +\usepackage[bibencoding=utf8,backend=biber,style=authoryear-comp]{biblatex} +\addbibresource{latex-via-exemplos.bib} + \hypersetup{% informacoes do PDF pdftitle={Slide beamer},% pdfauthor={Sadao Massago}, @@ -59,7 +63,7 @@ \section{Overlay (apresentando por etapas)} % section será usado no sumário e similares \begin{frame} % slide - \frametitle{Slides de apresentação} + \frametitle{Slides de apresentação} \begin{itemize} \item <1->\alert<1>{Usar letras grandes} \item <2->\alert<2>{Cor do fundo deve criar contraste com texto} @@ -85,7 +89,7 @@ Este é um bloco com título. \section{Ambiente \texttt{verbatim} no slide} % outra entrada de sumário -% Ambiente \texttt{verbatim} e similar requer opção \texttt{fragile}. +% Ambiente \texttt{verbatim} e similar requer opção \texttt{fragile}. \begin{frame}[fragile] % outro slide \frametitle{Verbatim} Ambiente \texttt{verbatim} e similar requer opção \texttt{fragile}. @@ -100,7 +104,7 @@ end. % Para listar o código do beamer, deverá criar o novo ambiente para evitar conflito de \end{frame}. %% Crie um novo ambiente como segue, no preamble. %\newenvironment{verbatimframe} -%{\begin{frame}[fragile,environment=verbatimframe]} +%{\begin{frame}[fragile,environment=verbatim]} %{\end{frame}} %% Depois use ele %\begin{verbatimframe} @@ -114,7 +118,7 @@ end. %\end{verbatim} %\end{verbatimframe} -%\begin{note} % outra nota: ambiente note so funciona fora do frame. Não funciona na versão 2016. Testar na versão mais recente. +%\begin{note} % outra nota: ambiente note só funciona fora do frame. Não funciona na versão 2016. Testar na versão mais recente. \note{Sem a opção \texttt{fragile}, não pode usar o ambiente \texttt{verbatim} dentro do \texttt{frame}. Não pode usar ``\texttt{overlay}'' no ambiente \texttt{verbatim} } @@ -140,4 +144,13 @@ Opção \texttt{plain} desativa cabeçalho e rodapé do frame para ter mais espa Útil para colocar figura maior, por exemplo. } +\section{referêcnias} +\begin{frame}[allowframebreaks] +\frametitle{Bibliografia} +\nocite{*} % todas referências +\printbibliography[heading=none] +%%\bibliographystyle{amsalpha} % estilo não faz efeito +%\bibliography{latex-via-exemplos} +\end{frame} + \end{document}
\ No newline at end of file diff --git a/info/latex-via-exemplos/latex-via-exemplos.pdf b/info/latex-via-exemplos/latex-via-exemplos.pdf Binary files differindex 371886336a..9bbddf92c3 100644 --- a/info/latex-via-exemplos/latex-via-exemplos.pdf +++ b/info/latex-via-exemplos/latex-via-exemplos.pdf diff --git a/info/latex-via-exemplos/latex-via-exemplos.tex b/info/latex-via-exemplos/latex-via-exemplos.tex index d032aa1351..ac5be8c7f2 100644 --- a/info/latex-via-exemplos/latex-via-exemplos.tex +++ b/info/latex-via-exemplos/latex-via-exemplos.tex @@ -1,6 +1,4 @@ -% Usar XeLaTeX ou LuaLaTeX -% acento nao sobrevive no arquivo temporario de showexpl -% Use diretamente do arquivo externo, ou use XeLaTeX/LuaLaTeX +% Para este documento, usar XeLaTeX ou LuaLaTeX % \makeatletter \@ifclassloaded{book}{}{ @@ -181,16 +179,24 @@ \usepackage{dcolumn} % alinhar decimais \usepackage{tabularx} % igualar colunas \usepackage{longtable} - +% \toprule, midrule, cmidrule{}, bottomrule +\usepackage{booktabs} +% xtabular (tabela longa cnfigurável) +\usepackage{xtab} +% implementação moderna de tabela (tblr que funciona tanto no modo texto como no modo matemático) +\usepackage{tabularray} +\UseTblrLibrary{booktabs} +\UseTblrLibrary{caption} + \usepackage{makeidx} \makeindex -\usepackage[nottoc]{tocbibind} +\usepackage[nottoc]{tocbibind} % bibliogrphy and index on tableofcontents \usepackage{amsthm} -\usepackage{multicol} +\usepackage{multicol} % multiple column on document \usepackage{makeidx} % pacote para produzir % indice remissvo (glossário) @@ -200,12 +206,15 @@ % and change to uppercase, the formula, ref, cite, etc too. \usepackage[overload]{textcase} \usepackage{listings} % format source code +\usepackage{showexpl} % ele carrega listings +% acento nao sobrevive no arquivo temporario de showexpl +% Use diretamente do arquivo externo, ou use XeLaTeX/LuaLaTeX + \usepackage{verbatim} % For verbatim \usepackage{fancyvrb} % for VerbatimOut -\usepackage{keyval} - -\usepackage{showexpl} % ele carrega listings +\usepackage{keyval} % key=value in command parameter +% % \usepackage{algorithmicx} \usepackage{algpseudocode} % arquivo de estilo de algorithmicx @@ -268,25 +277,24 @@ % texto circulado: de 2022 \usepackage{circledtext} % -% \toprule, midrule, cmidrule{}, bottomrule -\usepackage{booktabs} -% xtabular (tabela longa cnfigurável) -\usepackage{xtab} -% % Para evaluar expressões matemáticas -\usepackage{xfp} -\usepackage{numerica} -\usepackage{numerica-tables} +\usepackage{xfp} % estilo sin(pi) +\usepackage{numerica} % estilo \sin(\pi) +\usepackage{numerica-tables} % para tabelar \usepackage{yfonts} % fonte Baroque para iniciais +%\usepackage{array} % precisa para acro usar longtable +%\usepackage{acro} % cria lista de siglas, e similares + + % TODO's %\usepackage{todonotes} % carega xkeyval, tikz, etc %% caixa colorida usada para exemplo de certificado. % \usepacakge{tcolorbox} -% Opção 'H' e criar float personalizado. +% Adiciona a opção 'H' e também permite criar float personalizado. %\usepackage{float} %\newfloat{algorithm}{tbp}{loa}[chapter] % \floatname{algorithm}{Algorítimo} @@ -833,6 +841,7 @@ %%%%%%%%%%%%%%%%%%%%%% \makeatletter +\AtBeginDocument{% % From % https://wiki.lyx.org/LyX/Logotype %\providecommand{\LyX}{L\kern-.1667em\lower.25em\hbox{Y}\kern-.125emX\@} @@ -898,6 +907,7 @@ % \if b\expandafter\@car\f@series\@nil\boldmath\fi % \LaTeX\kern.15em2$_{\textstyle\varepsilon}$}} +} %\AtBeginDocument % fim do logo \makeatother @@ -1020,12 +1030,17 @@ % Setima atualização (0.5.8): 17 de maio de 2022 % Oitava atualização (0.5.9): 01 de maio de 2023 % Nona atualização (0.5.9): 01 de maio de 2023} -% Decima atualização (0.5.10): 08 de dezembro de 2024} -% Decima primeira atualização -\date{Versão 0.5.11, 08 de dezembro de 2024} +% Decima atualização (0.5.10): 08 de dezembro de 2024 +% Decima primeira atualização (0.5.11): 08 de dezembro de 2024 +% Decima segunda atualização +\date{19 de dezembro de 2024} + %%%%%%%%%%%%%%%%%%%%%%% % Documet start here +%---------------------- +% INICIO DO DOCUMENTO +%%%%%%%%%%%%%%%%%%%%%%% \pagestyle{empty} \begin{document} @@ -1035,8 +1050,8 @@ Copyright \textcopyright 2018--2024 por Sadao Massago. Todos os direitos reservados. -Este documento é software livre; podendo ser redistribuído e/ou modificado de acordo com os termos da Licença Pública da GNU como publicado pela Free Software Foundation; versão 2 da Licença, ou (se for sua opção) qualquer versão posterior. -Veja \url{https://opensource.org/licenses/gpl-license}. +Este documento é software livre; podendo ser redistribuído e/ou modificado de acordo com os termos da Licença Pública do Projeto LaTeX (LPPL); versão 1.3c da Licença, ou (se for sua opção) qualquer versão posterior. +Veja \url{http://www.latex-project.org/lppl.txt}. \ @@ -1098,7 +1113,7 @@ Capítulo~13 e 14 exploram várias possibilidades dentro dos pacotes de \texttt{ Capítulo~15 discute o uso de pacotes fora do \texttt{base} e \texttt{required} para ajuste de documentos. A partir deste capítulo, serão apresentados pacotes fora do \texttt{base} e \texttt{required}. -Isto significa que os pacotes indicados podem precisar de instalação a parte. +Isto significa que os pacotes indicados podem precisar de instalação a parte em alguns sistemas. Capítulo~16 discute o pacote \texttt{xcolor} especial para cores, e \texttt{tikz} espacial para criar ilustrações. @@ -1170,20 +1185,20 @@ Em 2004, o \TeX{} começou a suportar oficialmente o \texttt{utf-8}, facilitando Em 2007, o Xe\TeX{} que suporta o uso de fontes do sistema implementado inicialmente no \texttt{Mac OSX} foi portado para \texttt{linux} e \texttt{Windows}. Em 2008, o recurso de sincronização do documento fonte com o \texttt{PDF} tornou fácil e \texttt{PDF} foi substituindo a saída DVI do \TeX{} na diagramação. Em 2010 foi lançado a primeira versão estável do Lua\TeX{}, considerado como o sucessor do PDF\TeX{}. -O Lua\TeX{}, além de poder usar as fontes do sistema como o Xe\TeX, também pode estender a funcionalidade com a linguagem script \texttt{Lua}. +O Lua\TeX{}, além de poder usar as fontes do sistema como o Xe\TeX, também pode estender a funcionalidade com a linguagem \texttt{script} \texttt{Lua}. \section{Como usar \LaTeX{}} O \TeX{}\index{TeX} é um sistema de compilação de documentos e o \LaTeX{}\index{LaTeX} é um conjunto de macros (instruções) para automatizar e facilitar a diagramação de documentos. O documento é preparado como arquivo texto num editor de texto, compilado pelo \LaTeX{}, visualizado e corrigido e compilado novamente, até obter o resultado desejado. O arquivo fonte do documento costuma ser editado no editor próprio para \LaTeX{} tais como \texttt{TeXMaker}\index{TeXMaker} (\url{http://www.xm1math.net/texmaker/}) e \texttt{TeXStudio}\index{TeXStudio} (\url{https://www.texstudio.org/}), ambos disponível livremente em várias plataformas. -Além de recursos para facilitar a escrever documentos, eles contam com botões de compilação e visualização, assim como sincronismo de PDF com o código fonte. +Além de recursos para facilitar a escrever documentos, eles contam com botões de compilação e visualização, assim como sincronismo de \texttt{PDF} com o código fonte. Para quem quer a funcionalidade mais próxima dos aplicativos de escritórios que permite visualizar como vai ficar enquanto escreve e quer elaborar o documento usando botões e menus em vez de digitar comandos, poderá optar pelo \LyX{}\index{LyX} (\url{https://www.lyx.org/}) que também é livre e suporta várias plataformas. Para evitar erros de escrita, é recomendável que ative o corretor ortográfico com idioma desejado, o que depende de cada editor. Para compilar, deverá instalar alguma distribuição de \TeX{}. Em geral, o mais recomendado é o \texttt{TeXLive}\index{TeXLive} para \texttt{Linux}, \texttt{MacTeX}\index{MacTeX} para \texttt{Mac OSX} e \texttt{MikTeX}\index{MikTeX} para \texttt{Windows}, todos são livres. -Evite usar o espaço no nome de arquivos para \LaTeX, pois o sincronismo do código fonte com o PDF (posicionar PDF na posição correspondente à linha de código fonte e vice-versa) pode tornar parcial. +Evite usar o espaço no nome de arquivos para \LaTeX, pois o sincronismo do código fonte com o \texttt{PDF} (posicionar \texttt{PDF} na posição correspondente à linha de código fonte e vice-versa) pode tornar parcial. \clearpage\thispagestyle{empty}\cleardoublepage \chapter{Iniciando um Documento} @@ -1194,7 +1209,7 @@ Um documento em \LaTeX{} inicia-se com o comando \verb+\documentclass+\index{doc Em seguida, será especificado os pacotes (conjunto de instruções) adicionais a serem carregados e também será realizada algumas configurações. Esta parte do documento é chamado de \texttt{preamble}\index{preamble} (preâmbulo) do documento. Depois inicia o conteúdo do documento com \verb+\begin{document}+, escreve o corpo do documento e finaliza o documento com \verb+\end{document}+. -O código do primeiro documento e sua saída em pdf (que está dentro da moldura) seria como do Exemplo~\ref{ex02:inicial}. +O código do primeiro documento e sua saída em \texttt{pdf} (que está dentro da moldura) seria como do Exemplo~\ref{ex02:inicial}. % \begin{spacing}{1} %\begin{singlespacing} @@ -1223,7 +1238,7 @@ O que é delimitado pelo chaves é o parâmetro obrigatório\index{parâmetro!ob Os parâmetros colocados entre colchetes, separados pela vírgula são os opcionais\index{parâmetro!opcional}. Neste exemplo, são \texttt{12pt} e \texttt{a4paper}. Opcionais significa que pode ou não colocar tais opções. -O parâmetro obrigatório do comando \verb+\documentclass+ é tipo de documentos. +O parâmetro obrigatório (colocado entre chaves) do comando \verb+\documentclass+ é o tipo de documentos. Aqui foi escolhido o \texttt{article}\index{article} (artigo) que tem como objetivo, colocar maior quantidade de informações no espaço limitado. Outro tipo de documento bastante usados é o \texttt{book}\texttt{book} (livro). Os parâmetros opcionais usados foram \texttt{12pt}\index{12pt} que é o tamanho de letra\index{tamanho!letra} em 12pt e \texttt{a4paper}\index{a4paper} que é o tamanho do papel\index{tamanho!papel} em padrão \texttt{A4}. @@ -1234,7 +1249,7 @@ O \LaTeX{} dispõe uma grande quantidade de pacotes, uma para casa situação. No Exemplo~\ref{ex02:inicial}, foram carregados os pacotes \texttt{fontenc}, \texttt{inputenc} e \texttt{babel}, todos eles com um parâmetro. O primeiro pacote \texttt{fontenc}\index{fontenc} é usado para especificar a codificação das fontes de letras. A opção \texttt{T1} indica que a fonte está em \texttt{T1} que dispõe de letras de 8-bits (acentuadas). -Esta opção é útil para definir a regra de hifenização local do documento no \texttt{preamble} e efetuar busca de texto com letras acentuadas no PDF final. +Esta opção é útil para definir a regra de hifenização local do documento no \texttt{preamble} e efetuar busca de texto com letras acentuadas no \texttt{PDF} final. A seguir, o pacote \texttt{inputenc}\index{inputenc} especifica a codificação do documento fonte (o que está editando). Atualmente, o \texttt{utf8} é o recomendado, mas antigamente usava o \texttt{latin1} para português brasileiro. Note que \texttt{inputenc} foi colocado depois da \texttt{fontenc}. @@ -1248,14 +1263,14 @@ Depois encontra o \verb+\begin{document}+. O comando \verb+\begin+\index{begin@\verb+\begin+} inicia um ambiente. Um ambiente\index{ambiente} é uma configuração que será aplicado nos trechos entre \verb+\begin{<ambiente>}+ e \verb+\end{<ambiente>}+\index{end@\verb+\end+}. O \verb+\begin{document}+ e \verb+\end{document}+ -determina o ambiente de documento na qual seus conteúdos serão colocados no arquivo PDF. +determina o ambiente de documento na qual seus conteúdos serão colocados no arquivo \texttt{PDF}. A quebra de linha não efetua quebra de linha na saída. Para que tenha um novo parágrafo\index{parágrafo} de fato, deverá pular uma linha. Note que, se tiver mais de um espaço, o \LaTeX{} interpretará como um único espaço. -Para gerar o arquivo PDF, deverá processar o \LaTeX. +Para gerar o arquivo \texttt{PDF}, deverá processar com o \LaTeX. Salve o arquivo com extensão \texttt{tex} e clique no botão de \texttt{Compilar} no caso de \texttt{TeXMaker} e botão \texttt{LaTeX} no caso de \texttt{TexStudio} (na versão mais nova, é um triângulo verde). \section{Mensagem de erro e correção} @@ -1267,7 +1282,7 @@ Para melhorar a precisão da localização de erros, quebre o parágrafo em vár Assim, deve corrigir os erros e compilar de novo, até sumir com todos os erros. -Quando compila o documento, o \texttt{TeXMaker} posicionará na página do PDF, correspondente aonde fica o cursor no editor de texto. Para localizar qual código gerou uma determinada parte de PDF, clique no botão direito sobre parte do PDF e escolha ``clique para ir para a linha''. +Quando compila o documento, o \texttt{TeXMaker} posicionará na página do \texttt{PDF}, correspondente aonde fica o cursor no editor de texto. Para localizar qual código gerou uma determinada parte de \texttt{PDF}, clique no botão direito sobre parte do \texttt{PDF} e escolha ``clique para ir para a linha''. \section{Caracteres especiais} Existem vários caracteres especiais reservados para os comandos e similares do \LaTeX. Por exemplo, ``\verb+\+'' é usado para iniciar um comando, chaves é usado para indicar os parâmetros, etc. @@ -1316,7 +1331,7 @@ Para comentar/descomentar um trecho maior no \texttt{TeXMaker}, selecione o trec Quando editar um documento, existem palavras que devem aparecer grudados (não pode ficar primeira parte no final de linha e outra no começo da linha) como no caso de enumeração de páginas, exemplos, teoremas, etc. Neste caso, usa-se o til (\verb+~+\index{\verb+~+}) em vez do espaço\index{espaço!não quebrável}. -Por exemplo, no caso de ``\verb+página~1+'', não acontece de ``\texttt{página}'' ficar no final de uma linha e ``\verb+1+'' ficar no começo da próxima linha. Outros casos é colocar entre artigos e pronomes, como em ``O~Teorema de Potágoras'' para evitar que artigo fique no final de uma linha e restante na próxima linha. +Por exemplo, no caso de ``\verb+página~1+'', não acontece de ``\texttt{página}'' ficar no final de uma linha e ``\verb+1+'' ficar no começo da próxima linha. Outros casos é colocar entre artigos e pronomes, como em \verb+O~Teorema de Pitágoras+ para evitar que o artigo fique no final de uma linha e restante na próxima linha. Por último, quando insere comandos e precisa ter espaço depois dele, coloque um par de chaves\index{espaço!depois do comando}. Por exemplo, ``\verb+\LaTeX produz+'' ficaria como ``\LaTeX produz'' (grudados) enquanto que ``\verb+\LaTeX{} produz+'' ficará como ``\LaTeX{} produz'' (com espaço correto). Também lembre-se que no comando de \LaTeX, maiúsculo e minusculo são distinguidas. Portanto, ``\verb+Latex+'' ou ``\verb+\latex+'' resultarão em erros em vez de produzir logotipo de \LaTeX. @@ -3491,7 +3506,7 @@ Veja o Exemplo~\ref{ex09:longtable}. Para que este exemplo funcione, deverá ter Note que, ao iniciar o ambiente, coloca as configurações tais como títulos, o que fazer antes de mudar a página, etc. Depois pula a linha com ``\verb+\\+'' e resto segue normalmente. -Como \texttt{longtable} usa o arquivo auxiliar para armazenar sua largura, pode precisar compilar duas vezes para ter o resultado desejado (assim como acontece com referencias cruzadas). +Como \texttt{longtable} usa o arquivo auxiliar para armazenar sua largura, pode precisar compilar duas vezes para ter o resultado desejado (assim como acontece com referências cruzadas). Para efetuar as configurações tais como o que fazer quando muda a página, etc, veja o manual correspondente. @@ -3606,6 +3621,9 @@ Observe como e onde foi usado o \verb|\unitlength|\index{unitlength@\verb+\unitl \unitlength=0.45\linewidth % unidade \begin{picture}(1.0,1.0) % caixa reservada \put(0,0){\includegraphics[width=\unitlength]{latex-via-exemplos-fig}} +% grade para localizar coordenadas +% \multiput(0,0)(0.1,0){11}{\line(0,1){1}} +% \multiput(0,0)(0,0.1){11}{\line(1,0){1}} \put(0.35,0.45){\LARGE $e^{\pi i}+1=0$} \end{picture} \caption{Técnica de sobreposicao\label{fig:sobreposicao}} @@ -5252,6 +5270,7 @@ Veja o Exemplo~\ref{ex14:keyval}. \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[brazil]{babel} +\usepackage{keyval} \makeatletter % O que vai fazer se encontrar "foo" no parametro do grupo "my". \define@key{my}{foo}{foo vale #1\par} % se receber foo sem o seu valor, dara erro @@ -5285,6 +5304,7 @@ O comando \verb+\newif\if<nome>+ cria o condicional \verb+\if<nome>+ que torna v \usepackage[T1]{fontenc} \usepackage[utf8]{inputenc} \usepackage[brazil]{babel} +\usepackage{keyval} \makeatletter \newif\ifmyparkeyvaltitle % testar se tem titulo % O titulo será associado ao comando para poder ser usado posteriormente. @@ -5528,7 +5548,7 @@ Note que foi usado \verb+\gdef+\index{gdef@\verb+\gdef+} que é atalho para \ver Existe o comando \verb+edef+\index{edef@\verb+\edef+} que expande os argumentos na hora de definir. Por exemplo, \verb+\def\pagina{thepage}+ define comando que imprime a página na qual o comando \verb+\pagina+ foi chamado, enquanto que \verb+\edef\pagina{thepage}+ define comando que imprime a página na qual o comando \verb+\pagina+ foi definido. Note que, \verb+xdef+\index{xdef@\verb+\xdef+} é um atalho para \verb+\global\edef+ que mantém a definição dos comandos globalmente. No caso da definição de dentro ter parâmetro, a indicação de parâmetro também leva dois ``\#''. -Outro caso é acrescentar algo no comando já existente, como em\verb+\def\foo{\foo{} mais algo}+ que causa erros pela recursão infinita e \verb+\edef\foo{\foo{} mais algo}+ que funciona devidamente. Note que, para adicionar algo no comando ou ambiente existente, deverá usar o \verb+\AddToHook+ ou similar para funcionar devidamente. +Outro caso é acrescentar algo no comando já existente, como em\verb+\def\foo{\foo{} mais algo}+ que causa erros pela recursão infinita e \verb+\edef\foo{\foo{} mais algo}+ que funciona devidamente. Note que, para adicionar algo no comando ou ambiente existente, deverá usar o \verb+\AddToHook+ ou similar para funcionar devidamente. %LaTeX 01/10/2020 \section{Alterando os comandos e ambientes existêntes} As vezes, queremos efetuar alteração no ambiente ou comandos existentes, adicionando comandos a mais. Isto costumava ser feito pelo comando \verb+\addto+ do pacote \texttt{babel} ou similar. @@ -6054,6 +6074,48 @@ e usar como % %\end{verbatim} +\section{Ajustando o sumário} + +Para ajustar o estilo de sumário e similares, costuma usar o pacote \texttt{tocloft}\index{tocloft}. Este pacote também permite criar lista de objetos similares a de sumários (por exemplo, lista de algorítimos). +Uma das coisas que ocorre com certa frequência é ter livro sem as seções e com a ausência de linhas pontilhadas no capítulo do sumário, dificultar a localização da página correspondente. Neste caso, é só acrescentar a linha pontilhada no capítulo, como no Exdemplo~\ref{ex15:tocloft}. +\begin{singlespacing} +\begin{lstlisting}[caption={ex15-tocloft.tex},label=ex15:tocloft] +\documentclass[a4paper,12pt,oneside]{book} +\usepackage[brazilian]{babel} +\usepackage{tocloft} +\setcounter{tocdepth}{1} % até nivel 1 (seção) +% Fontes do sumário +%\renewcommand{\cfttoctitlefont}{\hfill\Large} +%\renewcommand{\cftaftertoctitle}{\hfill} +% linhas pontilhadas para capítulo no sumário. +\renewcommand{\cftchapdotsep}{\cftdotsep} +\begin{document} +\tableofcontents % sumário +\chapter{Primeiro} +\section{Seção} +\chapter{Outro capítulo} +\section{Outra seção} +\end{document} +\end{lstlisting} +\end{singlespacing} + na qual o sumário ficará algo moco segue + +%\begin{singlespacing} +\begin{ltxlistingout} +{\noindent\huge\bfseries Sumário} +\vspace{12ex} + +{\bfseries\noindent {1}\hspace{1em}Primeiro\dotfill{2}} + +{1.1}\hspace{1em}Seção\dotfill{2} + +\medskip + +{\bfseries\noindent {2}\hspace{1em}Outro Capítulo\dotfill{3}} + +{2.1}\hspace{1em}Outra seção\dotfill{3} +\end{ltxlistingout} +%\end{singlespacingout} \section{Links} @@ -6171,6 +6233,7 @@ Por exemplo, para desativar o \verb+\MakeUppercase+ ou redefinir \verb+\\+ dentr \pdfstringdefDisableCommands{% \let\MakeUppercase\relax%desativando \def\\{ }% em vez da nova linha, será espaço + \def\and{ e } } \end{lstlisting} \end{singlespacing} @@ -6285,9 +6348,9 @@ Veja o Exemplo~\ref{ex:d:enumitem} que usa os pacotes \texttt{enumitem} e \textt \section{Trocando as fontes -- parte 2} \LaTeX{} dispõe de diversas fontes gratuitas para diagramar o documento. -Em geral, usamos o \texttt{Latin Modern}\index{Latin Modern} que é uma extensão do \texttt{Computer Modern}\index{Computer Modern} para derivados de latim que tem letras acentuadas. +Em geral, para versão impressa, costuma usar o \texttt{Latin Modern}\index{Latin Modern} que é uma extensão do \texttt{Computer Modern}\index{Computer Modern} para derivados de latim que tem letras acentuadas. Outra opção é \texttt{MLModern}\index{MLModern} que é fonte compatível com \texttt{Computer Modern} e \texttt{Latin Modern}, mas um pouco mais grossa, adequado para livros eletrônicos. -Note que o \texttt{Computer Modern} tradicional e \texttt{Latin Modern} são adequados para textos impressos no papel, e o \texttt{MLModern} é adequado para texto a ser lido na tela. +%Note que o \texttt{Computer Modern} tradicional e \texttt{Latin Modern} são adequados para textos impressos no papel, e o \texttt{MLModern} é adequado para texto a ser lido na tela. Para usar o \texttt{MLModern}, carregue o pacote \texttt{mlmodern} e para usar a fonte \texttt{Latin Modern}, carregue o pacote \texttt{lmodern} no \texttt{preamble} do documento, como em \begin{singlespacing} @@ -6358,7 +6421,7 @@ Se quer usar a fonte \texttt{sans serif} na fórmula matemática (para uso em \ %\end{lstlisting} %\end{singlespacing} -Fonte \texttt{Schoolbook L} +Fonte \texttt{Schoolbook L} pode ser escolhdo por \begin{singlespacing} \begin{lstlisting} \usepackage{mlmodern} % para complementar @@ -6640,6 +6703,8 @@ Veja o Exemplo~\ref{ex15:pdflscape}. \end{ltxlistingout} %\end{minipage}} +Para inserir figuras externas como parte de texto como o logotipo, poderá usar o pacote \texttt{inlinegraphicx}\index{inlinegraphicx} que disponibilizará o comando \verb+\inlinegraphics+ que tem a mesma sintaxe do \verb+\includegrahics+, mas que ajusta a altura e posição à linha de texto. Se quer alterar a escala, poderá usar a opção \texttt{scale} como em \verb+\includegrahics+ que faz ajuste relativa à altura da linha de texto. + % %float, OK %wrapfig (ou floatflt), OK @@ -6652,7 +6717,7 @@ Veja o Exemplo~\ref{ex15:pdflscape}. O pacote \texttt{booktabs}\index{booktabs} oferece comandos para traçar linhas horizontais com espaçamento ajustado adequadamente. Use \verb+\toprule+\index{toprule@\verb+\toprule+} para linha acima da tabela, \verb+\midrule{}+\index{midrule@\verb+\midrule+} e \verb+\cmidrule+\index{cmidrule@\verb+\cmidrule+} para linhas dentro da tabela e -\verb+\bottomrule+\index{bottomrule@\verb+\bottomrule+} para linha abaixo da tabela. No ABNT, encima e embaixo da tabela é fechada, mas não no lado esquerdo e direito. +\verb+\bottomrule+\index{bottomrule@\verb+\bottomrule+} para linha abaixo da tabela. No caso de \texttt{ABNT}, encima e embaixo da tabela é fechada, mas não no lado esquerdo e direito. Veja a Tablea~\ref{ex15:booktabs}). @@ -6685,7 +6750,7 @@ O comando \verb+\legend+ é da classe \texttt{abntex2}, mas se quiser usar sem a \end{verbatim} ou similar no preâmbulo do documento para definir o comando. -Para tabelas longas simples, poderá usar o pacote \texttt{longtable}, mas para tabelas longas mais sofisticadas como exigido pelo ABNT, costuma usar o pacote \texttt{xtab}\index{xtab} que implementa o ambiente \texttt{xtabular}\index{xtabular} +Para tabelas longas simples, poderá usar o pacote \texttt{longtable}, mas para tabelas longas mais sofisticadas como exigido pelo \texttt{ABNT}, costuma usar o pacote \texttt{xtab}\index{xtab} que implementa o ambiente \texttt{xtabular}\index{xtabular} A Tabela~\ref{ex15:xtab} é tabela que ocupa várias páginas. Note que o termo ``continua'' (caso ocupar duas ou mais páginas), ``continuação'' (caso ocupar três páginas) e ``conclusão'' (caso ocupar duas ou mais páginas) no cabeçalho da tabela, conforme ABNT. @@ -6731,8 +6796,8 @@ Acumulado do ano & 5,79 & 7,8997 \\ \bottomrule \end{xtabular} -\legend{Fonte: \href{https://blog.nubank.com.br/ipca-2022/}{https://blog.nubank.com.br/ipca-2022/}, - \href{https://brasilindicadores.com.br/poupanca/}{https://brasilindicadores.com.br/poupanca/} +\legend{Fonte: \url{https://blog.nubank.com.br/ipca-2022/}, + \url{https://brasilindicadores.com.br/poupanca/} } \end{center} \end{ltxlisting} @@ -6792,6 +6857,125 @@ Veja a Tablea~\ref{ex15:xcolor:table} Para configuração de cores mais sofisticada, veja o manual do pacote \texttt{colortbl}\index{colortbl}. +Para implementação mais moderna da tabela, poderá usar o ambiente \texttt{tblr}\index{tblr} do pacote \texttt{tabularray}\index{tabularray} que permite incorporar recursos do \texttt{tabularx} como do \texttt{colortbl}, entre outros. Veja o Exemplo~\ref{ex15:table:tblr}. Note que \texttt{tblr} funciona também dentro da fórmula, isto é, pode ser usado como \texttt{array}. Para usar pacotes adicionais como \texttt{booktabs}, \texttt{caption}, etc., usa-se o comando \verb+\UseTblrLibrary+ para que seja configurado devidamente. +Colocando o \texttt{preamble} + +\begin{singlespacing} +\begin{lstlisting} +\usepackage{xcolor} +\usepackage{tabularray} +\UseTblrLibrary{booktabs} +\end{lstlisting} +\end{singlespacing} + +poderá usar o código como do Exemplo~\ref{ex15:table:tblr}. + +\begin{ltxlisting}[caption={ex15-table-tblr.tex},label=ex15:table:tblr] +\begin{table}[hbp!] +\begin{center} +\caption{Tabela com \texttt{tabularray}}\label{tab:tabulaary} +\begin{tblr}{ %configurações +colspec = {rX}, % alinhamentos/espaçamentos das colunas +row{odd} = {gray!15}, % cor da linha impar +%row{even} = {white}, % cor da linha par +row{1} = {font=\bfseries\sffamily}, +row{2-Z} = {font=\sffamily}, +row{Z} = {fg=blue}, +} +% conteúdo da tabela + produto & preço \\ +\midrule + cenouras (500g) & R\$0,50 \\ + cogumelos (vidro de 500g) & R\$5,00 \\ + batata (1Kg) & R\$1,20 \\ + beterraba (1Kg) & R\$1,50 \\ + alface (1 maço) & R\$0,50 \\ +\bottomrule + total & R\$8,70 \\ +\end{tblr} +\end{center} +\end{table} +\end{ltxlisting} + +O \texttt{tablarray} implementa também a funcionalidade da tabela longa correspondente que pode ser usado pelo ambiente \texttt{longtblr},% tblr com a opção \texttt{long} não ficará mesmo que longtblr +mas não consegue configurar perfeitamente para \texttt{ABNT} por não conseguir saber se a tabela cabe ou não em uma única página (2024). No caso de tabela ocupar mais de uma página, poderá efetuar a configuração + +\begin{singlespacing} +\begin{lstlisting} +\usepackage{url} % para endereço web, se hyperref não está carregado. +\usepackage{xcolor} % para colorir tabelas +\usepackage{tabularray} % tabularray +\UseTblrLibrary{booktabs} % adiciona booktabs +% configurando +\DefTblrTemplate{firsthead-text}{default}{~(continua)} % primeira página +\DefTblrTemplate{lasthead-text}{default}{~(conclusão)} %última página +\DefTblrTemplate{conthead-text}{default}{~(continuação)} % páginas do meio +% desativando os rodapés +\DefTblrTemplate{firstfoot,middlefoot}{default}{} +% redefinindo o título da primeira página +\DefTblrTemplate{caption}{default}{ + \UseTblrTemplate{caption-tag}{default} + \UseTblrTemplate{caption-sep}{default} + \UseTblrTemplate{caption-text}{default} +} +% redefinindo o título da última página +\DefTblrTemplate{lasthead}{default}{ + \UseTblrTemplate{caption-tag}{default} + \UseTblrTemplate{caption-sep}{default} + \UseTblrTemplate{caption-text}{default} + \UseTblrTemplate{lasthead-text}{default} % acrescenttar o lasthead-text +} +% último rodapé para inserir fonte +\DefTblrTemplate{lastfoot-text}{default}{} % inicialmente vazio +\DefTblrTemplate{lastfoot}{default}{ % rodapé d aúltima página + \UseTblrTemplate{lastfoot-text}{default} % colocar o lastfoot-text +} +\end{lstlisting} +\end{singlespacing} + +no \texttt{preamble} para que a tabela do Exemplo~\ref{ex15:table:longtblr} fique compatível como \texttt{ABNT}. Note que \verb+\legend+ é o comando de \texttt{ABNTeX2}. Se não estiver usando o \texttt{ABNTeX2}, deverá substituir com outra, ou providenciar no \texttt{preamble}. + +\begin{singlespacing} +\begin{lstlisting}[caption={ex15-table-longtblr.tex},label=ex15:table:longtblr] +\DefTblrTemplate{lastfoot-text}{default}{\legend{Fonte: \url{https://blog.nubank.com.br/ipca-2022/}\par\hspace{3em}\url{https://brasilindicadores.com.br/poupanca/} +} +} +\begin{longtblr} +[% + caption = {Inflação (IPCA) e juro de poupança de 2022}, % titulo + label={tab:inflacao}, % rotulo para referências cruzadas +] +{ + %theme=default, % default é tema padrão + colspec = {XXX}, % colunas de largura automatica + rowhead = 1, % primeira linha será repatida em todas páginas + row{1} = {font=\bfseries}, % linha de título + row{even} = {gray!50}, % página par em cinza + row{Z} = {font=\bfseries}, % última linha +} +\toprule +Mês & Inglação & Poupança \\ +\midrule +Janeiro & 0,54 & 0,5608 \\ +Fevereiro & 1,01 & 0,5000 \\ +Março & 1,62 & 0,5976 \\ +Abril & 1,06 & 0,5558 \\ +Maio & 0,47 & 0,6671 \\ +Junho & 0,67 & 0,6491 \\ +Julho & -0,68 & 0,6639 \\ +Agosto & -0,36 & 0,7421 \\ +Setembro & -0,29 & 0,6814 \\ +Outubro & 0,59 & 0,6501 \\ +Novembro & 0,41 & 0,6515 \\ +Dezembro & 0,62 & 0,7082 \\ +\bottomrule +Acumulado do ano & 5,79 & 7,8997 \\ +\end{longtblr} +\end{lstlisting} +\end{singlespacing} + +Observe que, nos argumentos dos comandos de configuração, o espaço serão eliminados, exceto quando estiver dentro do outro comando. Isto melhor a precisão dos cálculos necessários. Assim, usa-se o espaço não quebrável (``\verb+~+''). + \section{Criando ambientes tipo figuras e tabelas} O pacote \texttt{float}\index{float} permite criar elemento flutuante do tipo figuras e tabelas. @@ -6837,13 +7021,14 @@ O código % atalho para lista de algoritmos \newcommand\listofalgorithms\listofalgorithmtypes % contador subordinado a capítulo -\usepackage{chngcntr} % não e necessário a partir de 2018/04/01 \counterwithin{algorithmtype}{chapter} \end{lstlisting} \end{singlespacing} % Cria o ambiente \texttt{algorithm} similar a \texttt{longtable}. +% \usepackage{chngcntr} % não e necessário a partir de 2018/04/01 +% para usar counterwithin \section{Escrevendo medidas internacionais} Para escrever medidas, requer alguns cuidados tais como usar letra romana reta (por ser abreviatura da palavra), ter pequeno espaço entre valor e medida, entre outros. @@ -6869,6 +7054,12 @@ Números \num{.3e45} \\ % notacao cientifica \numproduct{1.654 x 2.34 x 3.430} % ``x'' vira $\times$ +% valor monetaria costuma ser arredondado em duas decimais +% DE (Alemão) usa virgula para decimais também +R\$\num[locale=DE,round-precision=2,round-mode=places]{27.3671} +e +R\$\num[locale=DE,round-precision=2,round-mode=places]{15} + Ângulos \ang{10} \\ % grau @@ -6882,11 +7073,10 @@ Números O comando \verb+\unit+\index{unit@\verb+\unit+} produz unidade de medida de acordo com o seu parâmetro (o comando da versão 2 equivalente \verb+\si+\index{si@\verb+\si+} também continua funcionando). A configuração de saída pode ser efetuado pelo parâmetro opcional. -O \verb+\si+, assim como \verb+\num+ e \verb+\ang+, funciona tanto no modo texto como no modo matemático. +O \verb+\unit+, assim como \verb+\num+ e \verb+\ang+, funciona tanto no modo texto como no modo matemático. Em geral, coloca-se pequeno espaço entre valor e medida. -O comando \verb+\qty+\index{qty@\verb+\qty+} automatiza isso. O comando da versão 2 equivalente é -\verb+\SI+\index{SI@\verb+\SI+} que pode ser usado quando \verb+\qty+ não está disponível como no caso de usar junto com o pacote \texttt{physics}, ou quer colocar símbolo antes do valor. +O comando \verb+\qty+\index{qty@\verb+\qty+} automatiza isso. O comando da versão 2 equivalente é \verb+\SI+\index{SI@\verb+\SI+} que pode ser usado quando \verb+\qty+ não está disponível como no caso de usar junto com o pacote \texttt{physics}, ou quer colocar símbolo antes do valor. Ele tem a forma \verb+\qty[opção]{valor}[simbolo anterior]{unidade}+ @@ -6916,9 +7106,19 @@ Medidas com valor \qty{1.23}{J.mol^{-1}.K^{-1}} \\ % modo textual \qty{.23e7}{\candela} \\ % como macros -\qty{1,345}{\coulomb\per\mole} % outro exemplo -// Comando da versão 2 permite colocar elemento antes do número -\SI[per-mode=symbol]{1.99}[R\$]{\per\kilogram} \\ % com simbolo R$ antes +\qty[locale = DE]{1.345}{\coulomb\per\mole} % alemanha usa virgula como decimal também + +Medida não numérico + +\qty[parse-numbers = false]{x}{\metre\per\second} + +é mesmo que + +$x\,\unit{\metre\per\second}$ + +% Comando da versão 2 permite colocar elemento antes do número. +% Para este exemplo, está arredondando para duas casas decimais. +\SI[per-mode=symbol,locale=DE,round-precision=2,round-mode=places,round-integer-to-decimal]{1.987}[R\$]{\per\kilogram} \\ % com simbolo R$ antes Colocar medida após valor usando \verb+\unit+ e colocar valor já com medida usando \verb+\qty+ @@ -6963,7 +7163,7 @@ A configuração geral de formatação pode ser feito pela opção do pacote ou %\end{LTXexample} %\end{singlespacing} -A nova versão, apesar de continuar com os comandos da versão 2, separa o comando para números complexos e com o produto, como pode ver no exemplo de \verb+\num+ (Exemplo~\ref{ex15:num}). Se quer que não tenha esta separação, poderá carregar no modo de versão 2, com o comando \verb+\usepackage{siunitx}[=v2]+ e usar somente os comandos da versão 2. +A nova versão, apesar de continuar com os comandos da versão 2, separa o comando para números complexos e com o produto, como pode ver no exemplo de \verb+\num+ (Exemplo~\ref{ex15:num}). Se o documento já está escrita usando os comando da versão 2 (sem esta separação), poderá carregar no modo de versão 2, com o comando \verb+\usepackage{siunitx}[=v2]+. \section{Calculando o valor de uma função} Para efetuar cálculo de funções matemáticas no \LaTeX, como no caso de tabelar funções nos pontos dados, podemos usar o pacote \texttt{xfp}\index{xfp} ou \texttt{numerica}\index{numerica}. O pacote \texttt{xfp} evalua a expressão matemática normalmente, enquanto que \texttt{numérica} evalua a expressão escrita na forma \TeX, permitindo que mesma expressão pode ser usado tanto para evaluar, como para exibir. Além de \texttt{numerica} ter mais recursos, o \texttt{numerica-tables}\index{numerica-tables} permite tabelar funções rapidamente. @@ -7145,7 +7345,7 @@ O código \usepackage{xcolor} \usepackage{graphicx} \usepackage{lipsum} -\backgroundsetup{contents={\sffamily\bfseries RASCUNHO}} +\backgroundsetup{color=red,opacity=0.2,contents={\sffamily\bfseries RASCUNHO}} \begin{document} \lipsum \end{document} @@ -7154,6 +7354,7 @@ O código Coloca a marca d'àgua ``RASCUNHO'' em todas páginas, usando o pacote \texttt{background}\index{background}. Note que, se quer colocar a imagem externa, basta usar o \verb+\includegraphics+ em vez de texto. +Para desativar/modificar a marca d'água no meio do documento, basta chamar o \verb+\backgroundsetup+ novamente. O mesmo efeito pode ser obtido pelo pacote \texttt{draftwatermark}\index{draftwatermark} como segue. @@ -7165,7 +7366,7 @@ O mesmo efeito pode ser obtido pelo pacote \texttt{draftwatermark}\index{draftwa \usepackage{xcolor} \usepackage{graphicx} \usepackage{lipsum} -\DraftwatermarkOptions{text={\sffamily\bfseries RASCUNHO}} % versão 2.x (nova) +\DraftwatermarkOptions{color=red,text={\tikz{\node[opacity=0.2]{\sffamily\bfseries RASCUNHO}}}} % versão 2.x (nova) % \SetWatermarkText{\sffamily\bfseries\Huge RASCUNHO} % versão antiga \begin{document} \lipsum @@ -7173,7 +7374,7 @@ O mesmo efeito pode ser obtido pelo pacote \texttt{draftwatermark}\index{draftwa \end{lstlisting} \end{singlespacing} -O comando \verb+\DraftwatermarkOptions+ pode ser chamado no meio do documento, o que é útil para alterar a marca d'àgua ou ativar/desativar localmente. +A funcionalidade é similar ao \texttt{background}, mas não consegue controlar a opacidade da imagem do fundo. Uma forma de contornar isso é usar o \verb+\tikz+ como no exemplo anterior. % xwatermark não está tendo manutenção, não funcionado no sitema novo. %No caso do \texttt{xwatermark}\index{xwatermark}, tem opção de colocar a marca d'àgua na frente, em vez do lado de trás. O código @@ -7199,7 +7400,7 @@ O comando \verb+\DraftwatermarkOptions+ pode ser chamado no meio do documento, o % %Coloca RASCUNO em todas as páginas. Usando a versão ``*'', poderá colocar na frente da figura ``minha-figura''. -Outro pacote é o \texttt{eso-pic}\index{eso-pic}. +Outro pacote é o \texttt{eso-pic}\index{eso-pic}. Apesar de ser mais difícil de usar por basear no ambiente \texttt{picture}, era um pacote popular e pacotes/documentos mais antigos podem fazer uso dele. Por exemplo, o código % @@ -7211,7 +7412,7 @@ Por exemplo, o código \usepackage{xcolor} \usepackage{lipsum} % marca d'agua -% Versão sem * é na toda página. Versão * é somente na página corrente +% Versão sem * é para toda página. Versão * é somente na página corrente \AddToShipoutPictureBG{% %\AtPageLowerLeft{% Este é padrão \unitlength=\paperwidth @@ -7226,13 +7427,48 @@ Por exemplo, o código \end{lstlisting} \end{singlespacing} % -após carregar o pacote \texttt{eso-pic}, coloca a palavra ``Rascunho'' rotacionado por $45^\circ$ em todas as páginas como marca d'água. +após carregar o pacote \texttt{eso-pic}, colocará a palavra ``Rascunho'' rotacionado por $45^\circ$ em todas as páginas como marca d'água. O comando \verb+\AddToShipoutPictureBG+ criará um ambiente \texttt{picture}. Logo, podemos colocar os comandos aceitos no ambiente \texttt{picture} dentro dele. Para limpar o fundo, usa-se o \verb+\ClearShipoutPictureBG+\index{ClearShipoutPictureBG@\verb+\ClearShipoutPictureBG+}. Os comandos do \texttt{eso-pic} tem a versão ``BG'' para atrás da página como marca d'agua e versão ``FG'' para colocar na frente da página. Por exemplo, \verb+\AddToShipoutPictureFG+\index{AddToShipoutPictureFG@\verb+\AddToShipoutPictureFG+} coloca na frente em vez de trás da página. +Caso pretende colocar marca d'água sem o pacote, poderá usar o recurso de \verb+\AddToHook+ do \LaTeX{} %LaTeX 01/10/2020 2020 +em vez de usar o pacote, como no exemplo a seguir. + +\begin{singlespacing} +\begin{lstlisting} +\documentclass{article} +\usepackage{graphicx} +\usepackage{xcolor} +\usepackage{tikz} +\usepackage{lipsum} +% marca d'água personalidada. +% neste comando, poderá receber parametro opcional para repassar para \node +\newcommand{\tikzwatermark}[1][draw=red, text=red]{ + \begin{tikzpicture}[overlay, remember picture] + \node[rotate=45, scale=5, #1] at (current page) {\bfseries\sffamily RASCUNHO}; + \end{tikzpicture} +} +% comando para colocar marca d'água: poderá desativar/alterar com o uso de \newcommand +\newcommand{\putwatermark}{ + \tikzwatermark[opacity=0.33, fill=yellow, draw=red, text=red] +} +% shipout é chamado quando gera páginas +% Adiciona no shipout +%\AddToHook{shipout/foreground}{ % na frente +\AddToHook{shipout/background}{ % atrás + \putwatermark +} +\begin{document} +\lipsum[1-4] +\end{document} +\end{lstlisting} +\end{singlespacing} + +O \texttt{shipout}\index{shipout} é chamado quando criar cada página. Note que no exemplo, foi criado comando auxiliar \verb+\putwatermark+ para colocar marca d'água em vez de colocar marca d'água diretamente, o que permite redefinir dentro do documento para desativar/modificar o mesmo. + \section{Algorítmo e código fonte} Para algoritmos, poderá usar o pacote \texttt{algorithmicx}\index{algorithmicx} que destaca entre pacotes com mesma finalidade, por poder configurar a forma como será exibido. Para usar, carrege o pacote \texttt{algpseudocode}\index{algpseudocode} que carregará o pacote \texttt{algoritmicx} e define estilo para pseudo código. @@ -7320,8 +7556,8 @@ Para traçar linhas verticais para blocos indentados, poderá usar o pacote \tex O Pacote \texttt{algorithmicx} vem com padrão, mais dois estilos que são para linguagem Pascal e C, mas para colocar código fonte de um programa, costuma usar o pacote \texttt{listings}\index{listings} que implementa o ambiente \texttt{lstlisting}\index{lstlisting} na qual formata o código de acordo com a linguagem de programação escolhida. -Ele já vem com configurações para diversas idiomas, tais como \texttt{Ada}, \texttt{Algol}, \texttt{Assember}, \texttt{awk}, \texttt{bash}, \texttt{Basic}, \texttt{C\#}, \texttt{C++}, \texttt{C}, \texttt{Cobol}, \texttt{Delphi}, \texttt{Fortran}, \texttt{Gnuplot}, \texttt{HTML}, \texttt{Java}, \texttt{Lisp}, \texttt{Logo}, \texttt{Lua}, \texttt{Make}, \texttt{Mathematica}, \texttt{Matlab}, \texttt{Metapost}, \texttt{Modula-2}, \texttt{Objective C}, \texttt{Octave}, \texttt{Pascal}, \texttt{Perl}, \texttt{PHP}, \texttt{Prolog}, \texttt{Python}, \texttt{GNU R}, \texttt{Ruby}, \texttt{SAS}, \texttt{Scilab}, \texttt{sh}, \texttt{SQL}, \texttt{TeX}, \texttt{XML}, entre vários outros. -Se a linguagem pretendida não estiver na lista, poderá definir novos idiomas. +Ele já vem com configurações para diversas linguagens de programação, tais como \texttt{Ada}, \texttt{Algol}, \texttt{Assember}, \texttt{awk}, \texttt{bash}, \texttt{Basic}, \texttt{C\#}, \texttt{C++}, \texttt{C}, \texttt{Cobol}, \texttt{Delphi}, \texttt{Fortran}, \texttt{Gnuplot}, \texttt{HTML}, \texttt{Java}, \texttt{Lisp}, \texttt{Logo}, \texttt{Lua}, \texttt{Make}, \texttt{Mathematica}, \texttt{Matlab}, \texttt{Metapost}, \texttt{Modula-2}, \texttt{Objective C}, \texttt{Octave}, \texttt{Pascal}, \texttt{Perl}, \texttt{PHP}, \texttt{Prolog}, \texttt{Python}, \texttt{GNU R}, \texttt{Ruby}, \texttt{SAS}, \texttt{Scilab}, \texttt{sh}, \texttt{SQL}, \texttt{TeX}, \texttt{XML}, entre vários outros. +Se a linguagem pretendida não estiver na lista, poderá definir uma nova linguagem de programação. Para o seu uso, costuma efetuar configurações iniciais no \texttt{preamble} com o comando \verb+\lstset+\index{lstset@\verb+\lstset+} e no ambiente de \texttt{lstlisting}, efetuar mais alguns ajustes se necessário. Veja o Exemplo~\ref{ex15:listings} @@ -7591,6 +7827,56 @@ Veja o Exemplo~\ref{ex15:showexpl:completo}. % %listings, OK %showexl, OK +\section{Ênfase modo antigo e cancelamento} +Além da ênfase em itálico, também poderá usar o sublinhado como era feito na maquina de escrever. + +O pacote \texttt{ulem}\index{ulem} implementa várias formas de ``sublinhar'' o texto. +Para que os comandos \verb+emph+ e \verb+\em+, assim como o ambiente \texttt{em} não sejam trocados pelo comando de sublinhar texto, use a opção \texttt{normalem}. +Assim, coloque \verb+\usepackage[normalem]{ulem}+ no \texttt{preamble} para poder usar diversos efeitos de ``sublinhar'' o texto. + +Veja o Exemplo~\ref{ex15:ulem}. + +\begin{ltxlisting}[caption={ex15-ulem.tex},label=ex15:ulem] +Sublinhando: \uline{importante} \\ +Sublinhando com linha dupla: \uuline{urgente} \\ +Com onda: \uwave{barco} \\ +Cancelando o texto: \sout{errado} \\ +Removendo: \xout{removido} \\ +Linha tracejada: \dashuline{tracejada} \\ +Linha pontilhada: \dotuline{pontilhada} +\end{ltxlisting} + +Para destacar texto, costuma usar o pacote \texttt{soul}\index{soul} como no exemplo~\ref{ex15:soul}, na qual a cor de destaque foi configurado com os comandos + +\begin{singlespace} +\begin{lstlisting} +\usepackage{soul} % para destacar +\usepackage{xcolor} % para configurar cores +\setulcolor{green} % cor para sublinhar +\setstcolor{red} % cor para cancelar +\sethlcolor{yellow} % cor para destaque +\end{lstlisting} + +\end{singlespace} + +\begin{ltxlisting}[caption={ex15-soul.tex},label=ex15:soul] +Espaçado: \so{espaçado} \\ +Small Caps: \caps{Small Caps} \\ +Sublinhado: \ul{sublinhado} \\ +Cancelando o texto: \st{errado} \\ +Destacando: \hl{destacando} +\end{ltxlisting} + +Para cancelar as equações, use o pacote \texttt{cancel}\index{cancel}. +Veja o Exemplo~\ref{ex15:cancel} para ver o uso. + +\begin{ltxlisting}[caption={ex15-cancel.tex},label=ex15:cancel] +\renewcommand{\CancelColor}{\color{red}} %cor de cancelamento pode ser alterado +\[x+\cancel{2y} = z \] +\[x+\bcancel{2y} = z \] +\[x+\xcancel{2y} = z \] +\[x+\cancelto{0}{2y} = z \] +\end{ltxlisting} \section{Mais sobre referências bibliográficas} @@ -7767,56 +8053,182 @@ Para quem pretende criar o estilo novo, note que no Bib\LaTeX{} deve implementar %natbib, %biblatex -\section{Ênfase modo antigo e cancelamento} -Além da ênfase em itálico, também poderá usar o sublinhado como era feito na maquina de escrever. -O pacote \texttt{ulem}\index{ulem} implementa várias formas de ``sublinhar'' o texto. -Para que os comandos \verb+emph+ e \verb+\em+, assim como o ambiente \texttt{em} não sejam trocados pelo comando de sublinhar texto, use a opção \texttt{normalem}. -Assim, coloque \verb+\usepackage[normalem]{ulem}+ no \texttt{preamble} para poder usar diversos efeitos de ``sublinhar'' o texto. +\section{Siglas e glossários} +A lista de síglas\index{lista de!siglas}, símbolos\index{lista de!simbolos} e glossários\index{glossários} podem ser criados pelo pacote \texttt{acro}\index{acro} como no Exemplo~\ref{acro}, cuja saída será omitida. -Veja o Exemplo~\ref{ex15:ulem}. +\begin{singlespacing} +\begin{lstlisting}[caption={ex15-acro.tex},label=ex15:acro] +\documentclass[12pt]{article} -\begin{ltxlisting}[caption={ex15-ulem.tex},label=ex15:ulem] -Sublinhando: \uline{importante} \\ -Sublinhando com linha dupla: \uuline{urgente} \\ -Com onda: \uwave{barco} \\ -Cancelando o texto: \sout{errado} \\ -Removendo: \xout{removido} \\ -Linha tracejada: \dashuline{tracejada} \\ -Linha pontilhada: \dotuline{pontilhada} -\end{ltxlisting} +% Não precisa executar o comando externo, mas precisa compilar duas vezes. +% A lista será automaticamente ordenada. -Para destacar texto, costuma usar o pacote \texttt{soul}\index{soul} como no exemplo~\ref{ex15:soul}, na qual a cor de destaque foi configurado com os comandos +\usepackage[brazilian]{babel} +%\usepackage{array,longtable} % para usar longtable na lista +\usepackage{tabularray} % para usar tabularray na lista +\usepackage{acro} % lista de abreviaturas e siglas +% configurando +\acsetup{ + %first-style = long-short, % modo "long (short)" (default) + %list/display = used, % somente usados (default) pode ser all ou used + % list/template=description, % lista de descrição (é default?) + pages/display = none % página impressa: first (default?), all ou none +} -\begin{singlespace} -\begin{lstlisting} -\usepackage{soul} % para destacar -\usepackage{xcolor} % para configurar cores -\setulcolor{green} % cor para sublinhar -\setstcolor{red} % cor para cancelar -\sethlcolor{yellow} % cor para destaque +% abreviaturas e siglas +\DeclareAcronym{ibge}{ + short = {IBGE}, + long = {Instituto Brasileiro de Geografia e Estatística}, + tag = {abrev}, +} +\DeclareAcronym{abnt}{ + short = {ABNT}, + long = {Associação Brasileira de Normas Técnicas}, + tag = {abrev}, +} +% Símbolos (explicação dos símbolos) +\DeclareAcronym{pi}{ + short = {$\pi$}, + long = {Razão entre circunferência e diâmetro}, + tag = {simb}, + first-style = short, +} +% glossários (explicação do termo) +% Exemlificando o uso de plural não canônica também +\DeclareAcronym{primo}{ + short = {primo}, + short-plural-form = {primos}, % quando é só acrescentar 's' no final, não é necessário + long = {é o número inteiro cuja único divisor é $\pm 1$, ele ou oposto dele mesmo}, + long-plural-form = {são números inteiros cuja único divisor é $\pm 1$, ele ou oposto dele mesmo}, + % list = {Como será exibido na lista} + tag = {glos}, + first-style = short, % como será na primeira ocorrência +} +% se tiver a forma plural, poderá usar o \Acp e \acp para acessar. +%%%%%%%%%%%%%%%%%%%%% +% inicio do documento +%%%%%%%%%%%%%%%%%%%%% +\begin{document} +% siglas +\printacronyms[name={Lista de abreviaturas e siglas}, include=abrev, heading=section*] % só o abrev +\acsetup{pages/display = first} % com página da primeira ocorrencia +% Símbolos +\printacronyms[name={Lista de símbolos}, template=tabularray, include=simb] % só o simb, formato tabelas +\tableofcontents +\section{Siglas e grossários} +% Usar \Ac para inicio do parágrafo (primeira letra em maiusuclo) e \ac para meio do texto (todo em minusculo) +\Ac{abnt} adota a tabela no estilo \ac{ibge}. + +Definimos o \ac{pi} como sendo ... + +% \Acp e \acp acessa a forma plural. +Seja $p$, $q$, números \acp{primo}. Então ... + +% \printacronyms[name={Abreviaturas, siglas, símbolos e significados},display=all, heading=section*] % todas + +\acsetup{pages/display = none} % sem pagina das ocorrencias +\printacronyms[name={Glossários}, include=glos,heading=section] % só o glos +\end{document} \end{lstlisting} +\end{singlespacing} -\end{singlespace} +No exemplo anterior, a diferenciação entre siglas, símbolos e glossários foi feito pelo valor do \texttt{tag}, mas como permite \texttt{tag} genérico, pode cometer erros de digitação. Assim as vezes, é preferível usar o pacote com maior rigidez como o \texttt{glossaries}\index{glossaries}. O pacote \texttt{glossaries} também permite processar a ordenação pelo comando externo \texttt{makeglossaries} para ter maior controle. O Exemplo~\ref{ex15:glossaries} ilustra o uso (saída será omitida). -\begin{ltxlisting}[caption={ex15-soul.tex},label=ex15:soul] -Espaçado: \so{espaçado} \\ -Small Caps: \caps{Small Caps} \\ -Sublinhado: \ul{sublinhado} \\ -Cancelando o texto: \st{errado} \\ -Destacando: \hl{destacando} -\end{ltxlisting} +\begin{singlespacing} +\begin{lstlisting}[caption={ex15-glossaries.tex},label=ex15:glossaries] +\documentclass[a4paper,12pt]{article} -Para cancelar as equações, use o pacote \texttt{cancel}\index{cancel}. -Veja o Exemplo~\ref{ex15:cancel} para ver o uso. +\usepackage[brazil]{babel} +\usepackage{hyperref} -\begin{ltxlisting}[caption={ex15-cancel.tex},label=ex15:cancel] -\renewcommand{\CancelColor}{\color{red}} %cor de cancelamento pode ser alterado -\[x+\cancel{2y} = z \] -\[x+\bcancel{2y} = z \] -\[x+\xcancel{2y} = z \] -\[x+\cancelto{0}{2y} = z \] -\end{ltxlisting} +%\usepackage{xtab} % tabela longa configurável + +\usepackage{acro} % necessário para opção acronym + +%% Para evitar conflito com xtab: https://golatex.de/viewtopic.php?t=13108 +\makeatletter + \@namedef{ver@supertabular.sty}{} +\makeatother + +\usepackage[nonumberlist=true,style=index,acronym]{glossaries} % Caso usar o comando externo, sdrá o makeindex +%\usepackage[xindy={language=portuguese},nonumberlist=true,style=index,acronym]{glossaries} % Caso usar comando externo, será o xindy (recomendado) +% Ativando o uso de glossários +%\makeglossaries % com comando externo (para compilar, execute o makeglossaries) +\makenoidxglossaries % com TeX (não precisa executar o comando makeglossaries) + +% comando para criar nova categoria +% \newglossary[<log-ext>]{<name>}{<in-ext>}{<out-ext>}{<title>}[<counter>] +\newglossary[slg]{symbols}{syi}{syg}{Lista de Símbolos} % criando categoria symbols + +%%%%%%%%%%%%%%%%%%%%%%%% +% Entradas de glossários +%%%%%%%%%%%%%%%%%%%%%%%% + +% abreviaturas e siglas +\newglossaryentry{ibge}{ + name={IBGE}, + description={Instituto Brasileiro de Geografia e Estatística}, + type=acronym, +} + +\newglossaryentry{abnt}{ + name={ABNT}, + %see=IBGE, + description={Associação Brasileira de Normas Técnicas}, + type=acronym +} + +% Símbolos (explicação dos símbolos) +\newglossaryentry{pi} +{ + name={\ensuremath{\pi}}, + sort={pi}, + description={Razão entre circunferência e diâmetro}, + type=symbols +} + +% glossário (explicação do termo) +\newglossaryentry{primo}{ + name={primo}, + plural={primos}, % acessados pelo Glspl e glspl + description={é o número inteiro cuja único divisor é $\pm 1$, ele ou oposto dele mesmo}, +} + +%\glsaddall % adicionar todas entradas (padrão é somente usados) + +\begin{document} +% siglas: com TeX +\printnoidxglossary[type=acronym,title={Lista de abreviaturas e siglas},sort=use] +% siglas: com makeglossaries +\printglossary[type=acronym,title={Lista de abreviaturas e siglas},sort=use] +% Símbolos: com TeX +\printnoidxglossary[type=symbols,title={Lista de símbolos},sort=use] +% simbolos: com makeglossaries +\printglossary[type=symbols,title={Lista de símbolos},sort=use] +% sumário +\tableofcontents +\section{Siglas e glossários} +% Usar \Gls para inicio do parágrafo (primeira letra em maiusuclo) e \gls para meio do texto (todo em minusculo) +\Gls{abnt} adota a tabela no estilo \gls{ibge}. + +Definimos o \gls{pi} como sendo ... + +%Glspl e glspl ~sao formato em plutal. +Sejam $p$ e $q$, um número \glspl{primo}. Então ... + +%\phantomsection +%\addcontentsline{toc}{section}{\glossaryname} +%\printnoidxglossaries % com TeX: todos glossários +\printnoidxglossary % com TeX: somente o principal +% +%\printglossaries % com makeglossaries: todos glossarios +%\printglossary % com makeglossaries: somente o principal +\end{document} +\end{lstlisting} +\end{singlespacing} + +Caso desejar usar o comando externo, use o \verb+\makeglossaries+ e \verb+\printglossary+ no documento e chame o comando \texttt{makeglossaries <nome do arquivo>} onde \texttt{<nome do arquivo>} é nome do arquivo sem a extensão \texttt{.tex}. Este comando efetua a chamada de \texttt{makeindex} ou \texttt{xindy} com parâmetro adequado para efetuar ordenação. \clearpage\thispagestyle{empty}\cleardoublepage \chapter{Gráfico e Diagramas}\label{chap:xcolor:tikz} @@ -7932,7 +8344,7 @@ Veja o Exemplo~\ref{ex16:tikz:basico} para começar. %\begin{LTXexample}[pos=b,caption={ex12-02.tex, parte b}, label=ex:12-02:b] \begin{ltxlisting}[caption={ex16-tikz:basico.tex}, label=ex16:tikz:basico] Poderá desenhar no modo \texttt{inline} como em \tikz \draw[fill] circle (2pt); -ou \tikz{\draw (0,0) -- (1.5,0);} e também como figura independente +ou \tikz{\draw (0,0) -- (1.5,0);} e também como figura independente \begin{tikzpicture} \draw[rounded corners=8pt] (0,0) -- (0,2) -- (2,2) -- (2,0) -- cycle; @@ -8179,6 +8591,11 @@ Veja Exemplo~\ref{ex16:tikz:pintar}. % Parametro draw eh para desenhar o contorno \pattern[pattern=north east lines, draw=blue] (3,0) circle (1); +% usando a transparencia +% ++(coordenada) é a coordenada anterior somado com este +\draw[fill=blue] (7,0) rectangle ++(1,1); +\draw[opacity=0.5,fill=red] (7,0) circle (0.7); + % sombra eh feito pelo shade e sombra com contorno com shadedraw (igual a shade com parametro draw) % sombra pode ser degrade e aceita o sintaxe do xcolor (cor!percentual) % Na funcao, \x^2 nao funciona. Deve ser (\x)^2. @@ -8195,6 +8612,12 @@ Veja Exemplo~\ref{ex16:tikz:pintar}. \draw[shade, left color=blue!25, right color=red!25,draw=blue] (\xi,-3) -- (\xi+0.5,-3) -- (\xi,-4) -- cycle; \draw (\xi+0.25,-4) node{\x}; } +% iteracao na lista de pares +% ++(coordenada) é a coordenada anterior somado com este +\foreach \x/\y [count = \i] in {0/0, 1/0, 2/0, 0/1, 1/1, 2/1} +{ + \draw[fill=yellow,draw=blue] (\x,{\y-6}) node[anchor=south west,draw,fill]{\i}; +} \end{tikzpicture} \end{center} \end{ltxlisting} @@ -8210,6 +8633,7 @@ Para traçar grades, existe o comando \texttt{grid}\index{grid}. O Exemplo~\ref{ % A4: 21cmx29.7cm \usepackage[a4paper,lmargin=0.5cm,textheight=28.05cm,textwidth=19.05cm]{geometry} \usepackage{tikz} +\pagestyle{empty}% sem enumeração da página \begin{document} \begin{tikzpicture} \draw [black!20, very thin, step=0.1cm] (0,0) grid (19,28); @@ -8238,12 +8662,12 @@ Veja Exemplo~\ref{ex16:tikz:matriz}. \draw[thick,dashed,blue] (A-1-3.north east) -- (A-3-3.south east); % limitando a parte escalonada \draw[thick,dotted,blue] (A-2-1.north west) -- (A-2-1.north east) -- (A-3-1.south east); -% onde vai colocar a seta para piv\^o +% onde vai colocar a seta para pivô \coordinate (P) at ($(A-2-1)!-2!(A-2-2)$); \coordinate (Q) at ($(A-2-1)!-1.3!(A-2-2)$); -% colocando a seta na linha de piv\^o +% colocando a seta na linha de pivô \draw[->] (P) -- (Q); -\node at ($(P)!-1.2!(Q)$) {piv\^o}; +\node at ($(P)!-1.2!(Q)$) {pivô}; \end{tikzpicture} \end{center} \end{ltxlisting} @@ -8276,21 +8700,72 @@ no \texttt{preamble} do documento. A \ar[r, "\phi"] \ar[d, red] \ar[to=2-2, phantom, "\circlearrowleft" description] & B \ar[d, "\psi" red] \\ C \ar[r, red, "\varphi" red, "\eta" {swap, blue}] & D \end{tikzcd} +% setas curvas +\begin{tikzcd} +A \ar[r, "\phi"] \ar[rr, "f", bend left, red] & B \ar[r, "\psi", Rightarrow] & C \ar[loop right] +\end{tikzcd} +% cruzando: necessário para diagrama 3D +\begin{tikzcd} +A \arrow[dr] & B \arrow[dl, crossing over] \\ +C & D +\end{tikzcd} + \end{center} \end{ltxlisting} %\end{LTXexample} %\end{singlespacing} +O comando \verb+\ar+ (ou \verb+\arrow+) traça a seta de acordo com o seu parâmetro. O primeiro argumento é para onde vai (d = para baixo, r=para direita, l=para esquerda, u=par acima). Também pode indicar origem e/ou destino pelo índices ou rótulos, usando \verb+from+ e/ou ``\verb+to+''). + As bibliotecas para \texttt{tikz} é extensa, cobrindo vários tipos de desenhos e diagramas. Se precisar de algo desse tipo, consulte o material para ver se já tem a biblioteca pronta. -Para desenhar gráficos de funções ou de dados em 2D ou em 3D, existe o pacote especializado \texttt{pgfplots}\index{pgfplots} que não vamos discutir aqui. +Para desenhar gráficos de funções ou de dados em \texttt{2D} ou em \texttt{3D}, existe o pacote especializado \texttt{pgfplots}\index{pgfplots} que não vamos discutir aqui. + -%xcolor, OK -%tikz, OK -%algumas bibliotecas do tikz, OK %pgfplot? Nao veremos +\section{Mais um pouco sobre sobreposição} + +Para escrever/desenhar sobre a figura externa pronta, com frequência, existe o pacote \texttt{overpic}\index{overpic} que abre o ambiente \texttt{picture} e ajusta o \verb+\unitlength+ ao mesmo tempo. O padrão é usar o valor de \verb+\unitlength+ como 1\% da maior escala da imagem. +O Exemplo~\ref{ex16:imagem:sobreposicao} produzirá mesmo efeito do Exemplo~\ref{ex09:imagem:sobreposicao}. + +% \setcounter{lstorichapter}{\value{chapter}} +% \setcounter{lstorisection}{\value{section}} +\begin{singlespacing} +%\begin{LTXexample}[pos=b,caption={ex09-04.tex},label=ex:09-04] +\begin{lstlisting}[caption={ex16-imagem-sobreposicao.tex},label=ex16:imagem:sobreposicao] +\begin{figure}[htbp!] +\center +% opção grid pode ser usado para produzir grade sobre a figura, facilitando encontrar a posição correta sobre a imagem +%\begin{overpic}[width=0.45\linewidth,grid,tics=10]{latex-via-exemplos-fig} +\begin{overpic}[width=0.45\linewidth]{latex-via-exemplos-fig} + \put(35,45){\LARGE $e^{\pi i}+1=0$} +\end{overpic} +\caption{Usando overpic\label{fig:overpic}} +\end{figure} +\end{lstlisting} +%\end{LTXexample} +\end{singlespacing} +%\setcounter{chapter}{\value{lstorichapter}} +%\setcounter{section}{\value{lstorisection}} + +Para sobrepor elementos mais complexos sobre a imagem, é melhor usar o ambiente \texttt{tikzpicture} do pacote \texttt{tikz} (do que ambiente \texttt{picture}), como no Exemplo~\ref{ex16:imagem:sobreposicao:tikz}. + +\begin{ltxlisting}[caption={ex16-imagem-sobreposicao-tikz.tex},label=ex16:imagem:sobreposicao:tikz] +\begin{figure}[htbp!] +\center +\def\picunit{0.45\textwidth} % unidade nesta figura +\begin{tikzpicture}[x=\picunit, y=\picunit] + \node[anchor=south west,inner sep=0] (image) at (0,0) + {\includegraphics[width=\picunit]{latex-via-exemplos-fig}}; + % grid (grade) serve para localizar a posição correta sobre a imagem + %\draw[step=0.1] (0,0) grid (1,1); + \node[anchor=south west,inner sep=0] at (0.35,0.45) {\LARGE $e^{\pi i}+1=0$}; +\end{tikzpicture} +\end{figure} +\end{ltxlisting} + \clearpage\thispagestyle{empty}\cleardoublepage \chapter{Produzindo \texttt{Poster} e \texttt{Slides}} @@ -8457,8 +8932,8 @@ Alguns dos mais importantes são \item[shrink] Reduz o tamanho do conteúdo para caber no \texttt{frame} atual, se necessário. Isto pode reduzir o tamanho da letra e por isso, deve ser usado com muita cautela. Use em conjunto com \texttt{plain} para ampliar a área de \texttt{slide}. \end{description} -Note que \BibTeX{} não funciona no \texttt{beamer}. -Assim, deverá criar manualmente a referência bibliográfica com o ambiente \texttt{thebibliography}. +%Note que \BibTeX{} não funciona no \texttt{beamer}. +%Assim, deverá criar manualmente a referência bibliográfica com o ambiente \texttt{thebibliography}. \clearpage\thispagestyle{empty}\cleardoublepage \chapter{Usando \XeLaTeX{} e Lua\LaTeX{}} @@ -8769,7 +9244,7 @@ As fontes \texttt{Open Type} que podem ser usados pelo \XeLaTeX{} e Lua\LaTeX{} No Lua\LaTeX, estas fontes podem ser acessadas pelo nome das fontes, mas no \XeLaTeX, somente as fontes instaladas no sistema operacional podem ser acessados pelo nome. Fontes encontradas em outras localidades tais como junto ao documento \TeX{} ou no diretório de \TeX{} devem ser indicados pelo nome do arquivo, incluindo a sua extensão. Assim, se os comandos do pacote \texttt{fontspec} ou de \texttt{iffont} não conseguirem encontrar as fontes pelo nome no \XeLaTeX, tente usar o nome do arquivo da fonte (sem esquecer da sua extensão). -No caso de querer usar as fontes da \texttt{MicroSoft} no \texttt{MS Windows},% compilando com LuaLaTeX, +No caso de querer usar as fontes da \texttt{MicroSoft} no \texttt{MS Windows}, % compilando com LuaLaTeX, coloque \begin{singlespacing} @@ -8785,7 +9260,7 @@ no \texttt{preamble}, lembrando que no caso de \XeLaTeX, fontes que não está n Uma das dificuldades de usar fontes não padrão é saber as combinações adequadas, o que requer o conhecimento de tipografia e diagramação. Para resolver este problema em \XeLaTeX{} e Lua\LaTeX{}, foi desenvolvido o pacote \texttt{fontsetup}\index{fontsetup}. O padrão deste pacote é usar a fonte \texttt{New Computer Modern} na espessura \texttt{Book} adequado para livros eletrônicos e similares, mas existem muitas opções deste pacote que configura para outras combinações das fontes pré estabelecidas. Por exemplo, a opção \texttt{stixtwo} carrega a fonte \texttt{STIX 2} que é do tipo times. Veja o documento do pacote \texttt{fontsetup} para mais detalhes. -Para usar fonte de espessura \texttt{Book} compatível com Computer Modern no PDF\LaTeX{} em vez de \XeLaTeX/Lua/LaTeX, use a fonte {MLModern}.%\index{fonte MLModern}. +Para usar fonte de espessura \texttt{Book} compatível com Computer Modern no PDF\LaTeX{} em vez de \XeLaTeX/Lua\LaTeX, use a fonte {MLModern}.%\index{fonte MLModern}. O Exemplo~\ref{ex18:fontsetup} é um exemplo usando a fonte compatível com Computer Modern, mas com espessura \texttt{Book} apropriado para livros eletrônicos e similares. Para PDF\LaTeX, usa a fonte \texttt{MLModern}\index{fonte!MLModern} e para \XeLaTeX/Lua\LaTeX, usa-se a fonte \texttt{New Computer Modern}\index{fonte!New Computer Modern}. @@ -8801,21 +9276,20 @@ A opção para tornar espessura compatível com o \texttt{Computer Modern} tradi %\usepackage{lmodern} % fontes Latin Modern: espessura tradicional do Computer Modern \usepackage[utf8]{inputenc} % acentuação direta em UTF-8 \else % XeLaTeX/LuaLaTeX - % \usepackage{fontspec} % pacote para configurar fontes - % \defaultfontfeatures{Ligatures=TeX} - % seleção das fontes desejadas pode ser colocados aqui \usepackage{fontsetup} % New Computer Modern com espessura da letra de Book % \usepackage[olddefault]{fontsetup} % espessura tradicional do Computer Modern \fi \end{lstlisting} \end{singlespacing} +Para \texttt{poster} e \texttt{slides}, é recomendado que use a fonte \texttt{sans serif}. Para escolher o \texttt{New Computer Modern} no estilo \texttt{sans serif} pelo pacote \texttt{fontsetup}, use a opção \texttt{sansdefault}. + \section{Usando em conjunto com Bib\LaTeX} O documento em vários idiomas pode precisar também de referências bibliográficas em vários idiomas. O Bib\LaTeX{} permite internacionalizar a referência bibliográfica (mesmo sem usar \XeLaTeX/Lua\LaTeX). Para especificar o idioma da referência bibliográfica no arquivo \texttt{bib} para Bib\LaTeX, coloca-se o idioma no campo \texttt{langid}\index{biblatex!langid} de cada item. -O ``\verb+*_romanized+''\index{biblatex!romanized} é a escrita em alfabeto romano caso o campo esteja em carácter que não seja romano. +O ``\verb+*_romanized+''\index{biblatex!romanized} é a escrita em alfabeto romano caso o campo esteja em carácter que não seja alfabeto romano. Ele será usado para a ordenação e similar. O campo ``\verb+*_translated_<idioma>+''\index{biblatex!translated} é a tradução para o \verb+<idioma>+ se as referências forem formatados para \verb+<idioma>+. Veja o Exemplo~\ref{ex18:biblatex:bib}. @@ -9042,191 +9516,7 @@ O exemplo~\ref{ex19:abntex2} ilustra o uso desta classe, com alguns comentários A sua saída será omitida aqui. \begin{singlespacing} -\begin{lstlisting}[caption={ex19-abntex2.tex},label={ex19:abntex2}] -% \documentclass[12pt,a4paper,openright,twoside,english,brazil]{abntex2} % impressão no papel -\documentclass[12pt,a4paper,oneside,english,brazil]{abntex2} % online -\usepackage{iftex} % Para detectar o motor de TeX utilizado -% Fontes, de acordo com o motor do TeX -\ifPDFTeX - \usepackage[T1]{fontenc} % codificação da fonte em 8-bits - \usepackage{mlmodern} % fontes MLModern - %\usepackage{lmodern} % fontes Latin Modern - \usepackage[utf8]{inputenc} % acentuação direta em UTF-8 -\else - \usepackage{fontsetup} %New Computer Modern com espessura Book - % Note que a fonte padrão para XeLaTeX/LuaLaTeX é latin Modern - %\usepackage{fontspec} % pacote para configurar fontes - %\defaultfontfeatures{Ligatures=TeX} - % seleção das fontes desejadas pode ser colocados aqui -\fi -% pacotes matemáticas de acordo com o motor TeX -\ifPDFTeX - \usepackage{amsmath,amssymb} % para matematica -\else - % para matematica - \usepackage{unicode-math} - \ifLuaTeX - \usepackage{lualatex-math} - \fi -\fi - -\usepackage[overload]{textcase} % para poder ter comandos de LaTeX/fórmula no titulo - -\usepackage{hyperref} % para link automático no PDF -% Desabilitando ou redefinindo comandos que causa erros no bookmark do PDF -\pdfstringdefDisableCommands{% - \let\MakeUppercase\relax% desabilitando - % \\ e \and já é tratada adequadamente em ABNT2 -} -\usepackage{pdfpages} % para incluir documento PDF (ex.: folha de aprovação) -\usepackage{indentfirst} % se quer que o primeiro parágrafo seja indentada -%% Se for criar o índice remissivo (opcional) -%\usepackage{makeidx} -%\makeindex -% Dados para capa, folha de rosto, etc -\title{Exemplo de ABNTeX2} % ou \titulo{} -% caso de mais de um autor, separe com o comando \and -\author{Sadao Massago} % ou \autor{} -\date{Julho de 2021} % ou \data{} -\instituicao{DFQM-UFSCar} % Instituição -\local{Sorocaba} % Local. -% Texto do tipo "Monografia apresentada à ..., como requisito parcial para a obtenção do título de ..." impresso na folha de rosto e folha de aprovação. -% Consultar a sua instituição para saber o texto correto. -\preambulo{Texto do tipo ``Monografia apresentada ...'' que depende da instituição} -% Tipo de trabalho é usado na ficha catalográfica -% "Tese (doutorado)", "Dissertação (mestrado)", "Trabalho de conclusão de curso (graduação)", etc. -\tipotrabalho{Exemplo} -\orientador{Nome do orientador} -\coorientador{Nome dos coorientadores} % caso existam -% (Opcional): informações para PDF -% Somente para PDF -% Precisa ajustar o pdfkeywords (palavras-chave) de acordo com o trabalho. -\makeatletter -\hypersetup{pdftitle={\@title}, - pdfauthor={\@author}, - pdfsubject={\imprimirpreambulo}, - pdfkeywords={ABNT}{Trabalho acadêmico}{LaTeX}{ABNTeX2} -} -\makeatother -% INICIO DO DOCUMENTO -\begin{document} -\imprimircapa % Capa é obrigatória no ABNT (não use \mnaketitle) -% Observação: Lombada (parte de trás do livro) é opcional no ABNT e não tem comandos específicos para ele no abntex2. -% Folha de rosto é obrigatório no ABNT -% versao ``*'' não pula página, permitindo adicionar ficha catalográfica no verso -% Se não tiver a ficha catalográfica, use a versão sem ``*'' -\imprimirfolhaderosto* % pule uma linha antes da ficha catalográfica. - -% Ficha catalográfica, caso existir, deve ficar no verso da folha de rosto -\begin{fichacatalografica} -Ficha catalográfica provisória. -% Quando tiver versão definitiva, inserir aqui -% \includepdf{fichacatalograficafinal.pdf} -\end{fichacatalografica} -% Errata, caso existir -\begin{errata} -Caso exista errata. Opcional no ABNT. -\end{errata} -% Folha de aprovação é obrigatório no ABNT -\begin{folhadeaprovacao} -% provisória: Veja o código no manual do abntex2. -% quando tiver a folha de aprovação devidamente assinada, incluir aqui -% \includepdf{folhadeaprovacaofinal.pdf} -\end{folhadeaprovacao} -% Dedicatória -\begin{dedicatoria} -Dedicatória é um elemento opcional para ABNT. -\end{dedicatoria} -% Agradecimentos -\begin{agradecimentos} -Agradecimentos é opcional no ABNT, mas boa educação é agradecer aos que contribuíram para realização do trabalho. -\end{agradecimentos} -% Uma mensagem bonita -\begin{epigrafe} -Uma mensagem que é opcional no ABNT. -\end{epigrafe} -% Resumo -\begin{resumo} -Resumo em português, obrigatório no ABNT. - -\noindent -\textbf{Palavras-chave}: ABNT, LaTeX, ABNTeX2. -\end{resumo} -% Resumo em linguagem estrangeira -\begin{resumo}[Abstract] -%[\MakeUppercase{Abstract}] -\begin{otherlanguage}{english} -Resumo em língua estrangeira (obrigatório no ABNT). - -\noindent -\textbf{Keywords}: ABNT, LaTeX, ABNTeX2. -\end{otherlanguage} -\end{resumo} -%\clearpage\thispagestyle{empty}\cleardoublepage -% \phantomsection\pdfbookmark[chapter]{\listfigurename}{lof} -% \listoffigures % opcional no ABNT -%\clearpage\thispagestyle{empty}\cleardoublepage -%\phantomsection\pdfbookmark[chapter]{\listfigurename}{lot} -%\listoftables % opcional no ABNT -%\begin{siglas} % Lista de siglas é opcional no ABNT. -%\item[ABNT] Associação Brasileira de Normas Técnicas. -%\end{siglas} -%\begin{simbolos}% Lista de Símbolos é opcional no ABNT -%\item[$\pi$] Razão entre circunferência e raio. -%\end{simbolos} - -% Sumário é obrigatório no ABNT -% A versão ``*'' remove a entrada "sumário" do bookmark do PDF e do sumário -\clearpage\thispagestyle{empty}\cleardoublepage -\tableofcontents* - -% CONTEÚDO PRINCIPAL -\clearpage\thispagestyle{empty}\cleardoublepage -\mainmatter % ou \textual -% Como já é conteúdo textual, capítulos serão enumerados. -\chapter{Prefácio} % % prefácio (ou apresentação) é opcional no ABNT -Prefácio aqui. Se preferir, pode incorporar na introdução. -\clearpage\thispagestyle{empty}\cleardoublepage -\chapter{Introdução} -Introdução aqui. -\clearpage\thispagestyle{empty}\cleardoublepage -\chapter{Primeiro Capítulo} -Conteúdo do primeiro capítulo -\clearpage\thispagestyle{empty}\cleardoublepage -\chapter{Considerações Finais} -Conclusão do trabalho. -% PÓS TEXTUAL -\clearpage\thispagestyle{empty}\cleardoublepage -\backmatter % ou o comando \postextual -%% Referencias bibliográficas é obrigatório no ABNT -%% Em geral, usa-se o BibLaTeX ou BibTeX -\begin{thebibliography}{99} -\bibitem{livro:primeiro} Primeira referência. -\end{thebibliography} -% \clearpage\thispagestyle{empty}\cleardoublepage -% Glossário é opcional no ABNT. -% Apêndice é opcional no ABNT. -% Caso existir, inicio de apêndices será marcado com o comando \apendices -\clearpage\thispagestyle{empty}\cleardoublepage -\apendices % não usar o \appendix -\chapter{Primeiro Apêndice} -Conteúdo do primeiro apêndice. -\clearpage\thispagestyle{empty}\cleardoublepage -\chapter{Segundo Apêndice} -Conteúdo do segundo apêndice. -% Anexos são opcionais no ABNT -% Caso existir, inicio de anexos será marcado com o comando \anexos -\clearpage\thispagestyle{empty}\cleardoublepage -\anexos -\chapter{Primeiro Anexo} -Conteúdo do primeiro anexo -\chapter{Segundo Anexo} -Conteúdo do segundo anexo -% Índice remissivo (opcional) -% \clearpage\thispagestyle{empty}\cleardoublepage -% \printindex % Índice remissivo é opcional no ABNT -\end{document} -\end{lstlisting} +\lstinputlisting[caption={ex19-abntex2.tex},label=ex19:abntex2]{latex-via-exemplos-abntex2} \end{singlespacing} Note que a folha de aprovação provisória costuma estar presente no documento (é será substituída pela folha definitiva quando for aprovado). @@ -9674,368 +9964,13 @@ A Tabela~\ref{tab:longa} foi criado pelo ambiente \texttt{xtabular} do pacote \t \end{singlespacing} \section{Documento ABNT usando \texttt{ABNTexto}} -A classe \texttt{ABNTexto}\index{ABNTexto} que está na fase de desenvolvimento é uma alternativa leve para \texttt{ABNTeX2}, para diagramar em ABNT. Enquanto que \texttt{ABNTeX2} usa a classe \texttt{memoir} e diversos pacotes para maior flexibilidade, \texttt{ABNTexto} usa a classe \texttt{article} e muitos poucos pacotes, tornando muito leve. +A classe \texttt{ABNTexto}\index{ABNTexto} que está na fase de desenvolvimento é uma alternativa leve para \texttt{ABNTeX2}, para diagramar em \texttt{ABNT}. Enquanto que \texttt{ABNTeX2} usa a classe \texttt{memoir} e diversos pacotes para maior flexibilidade, \texttt{ABNTexto} usa a classe \texttt{article} e muitos poucos pacotes, tornando muito leve. % No entanto, como ele ainda está na fase de desenvolvimento (2024), pode apresentar algumas inconveniências. Um exemplo de \texttt{ABNTexto} com uso de Bib\LaTeX{} é como no Exemplo~\ref{ex19:abntexto}, cuja saída é omitida. \begin{singlespacing} -\begin{lstlisting}[caption={ex19-abntexto.tex},label={ex19:abntexto}] -% Padrão para abntexto -% Classe base: article -% pacote adicional: geometry, graphicx -% font size: 12pt -% twoside=true -% Observação: Tabelas e figuras flutuantes não estão suportados oficienalemnte (2024). Além disso, tabela flutuante está desativada e a figura flutuante pode não funciona junto com subfiguras -- usando multiplace desta classe -- -% -% neste modelo, usa o layout de um lado -\documentclass[a4paper]{abntexto} -% O padrão é dois lados. Para um lado, ou modo eletronico (um lado com margem menor), requer pequeno ajuste - -% Em um lado somente -\let\twosidelayout=\onesidelayout - -% No formato eletronico (suas margens parece não ser de ABNT) -%\let\onesidelayout=\eletroniclayout% pretextual -%\let\twosidelayout=\eletroniclayout% textual - -\usepackage{iftex} % Para detectar o motor de TeX utilizado -% Fontes, de acordo com o motor do TeX -\ifPDFTeX % PDFLaTeX - \usepackage[T1]{fontenc} % codificação da fonte em 8-bits - \usepackage{mlmodern} % fontes MLModern que é mais escura que Computer Modern tradicional (espessura de letra de Book) - %\usepackage{lmodern} % fontes Latin Modern: espessura tradicional do Computer Modern - \usepackage[utf8]{inputenc} % acentuação direta em UTF-8 -\else % XeLaTeX/LuaLaTeX - \usepackage{fontsetup} % New Cmputer Modern com espessura da letra de Book - % \usepackage[olddefault]{fontsetup} % espessura tradicional do Computer Modern -\fi - -% idiomas -\usepackage[english,main=brazil]{babel}%padrão é brazil. - -% pacotes matemáticas de acordo com o motor TeX -\ifPDFTeX - \usepackage{amsmath,amssymb} % para matematica -\else - % para matematica - \usepackage{unicode-math} - \ifLuaTeX - \usepackage{lualatex-math} - \fi -\fi -%Outros pacotes -\usepackage{hyperref} % para link automático no PDF -% Desabilitando ou redefinindo comandos que causa erros no bookmark do PDF -\pdfstringdefDisableCommands{% -\let\MakeUppercase\relax% desabilitando -\def\\{ }% -\def\and{ e } -} -\usepackage{pdfpages} % para incluir documento PDF (ex.: folha de aprovação) -\usepackage{indentfirst} % se quer que o primeiro parágrafo seja indentada -%% Se for criar o índice remissivo (opcional) -%\usepackage{makeidx} -%\makeindex -\usepackage{microtype} % micro tipografia para ajuste refinado de espaçamento - -\usepackage{xtab} % para tabela longa configurável xtabular -% Para linhas horizontais com espaçamento melhorado: \toprule, \midrule, \bottomrule, \cmidrule -\usepackage{booktabs} - -% BibLaTeX -\usepackage{csquotes} % biblatex recomenda quando usar o pacote de idiomas babel/poligrossia -\usepackage[ - backend=biber, - % backref é util para depulação: na referências, aparece páginas onde foi citado - % backref=true, - language=auto, -% autolang=other, % para ambiente <otherlanguage> do babel e polygrossia -% autolang=langname, % somente para ambiente <language> do polygrossia. - % bibencoding=utf8, - style=abnt %authoryear, -]{biblatex} -\addbibresource{modelo-biblatex.bib} % arquivo bib - -%\addto{\captionsbrazil}{ -% \renewcommand{\refname}{Referências} -%} - -% Mesmo com \usechapters, tamanho das fontes do título da referências bibliográficas e similares ficam como seção. Para ser de capítulo, precisa de ajustes -\defbibheading{bibliography}[\refname]{\chapter*{#1}} -\makeatletter -% Índice remissivo -\AddToHook{env/theindex/begin}{\let\@section@original\section \let\section\chapter} -\AddToHook{env/theindex/end}{\let\section\@section@original} -% referências bibliográficas -\AddToHook{env/thebibliography/begin}{\let\@section@original\section \let\section\chapter} -\AddToHook{env/thebibliography/end}{\let\section\@section@original} -% Glossário com pacote glossaries -\AtBeginDocument{\@ifpackageloaded{glossaries}{ - \AddToHook{cmd/printglossary/before}{\let\@section@original\section \let\section\chapter} - \AddToHook{cmd/printglossary/after}{\let\section\@section@original} -}} %\@ifpackageloaded %\AtBeginDocument -\makeatother - -\usechapters% ativar o uso de capítulos (ajust ao sumário) -% abntexto define o contador \c@chapter usando \newcount do TeX. -% Assim, está sem o \cl@chapter para subordinar outros contadores -% Para que a subordinação de outros contadores (dois ou mais) funcionem devidamente (como feito pelo \numberwithin{}{}, \newtheorem{}{}[] e \newcounter{}[]), deve ter o seguinte comando -\makeatletter - \@ifundefined{c@chapter}{\newcount \c@chapter}{}% contador principal - \global\let\cl@chapter\@empty% lista de aplicações de \@elt nos contadores subordinados (ao executar, aplicará \@elt em cada um dos contadores subordinados) - \def\@stpelt@on@cl#1{ - \begingroup% agrupando para que mudanças seja local. - \let\@elt@original\@elt% copia do original - \let\@elt\@stpelt % \@elt será o \@stpelt - \csname cl@#1\endcsname % aplica o \@elt em cada contador - \let\@elt\@elt@original% restaura o \@elt original - \endgroup - } - - % Caso de part, subsubsection e paragraph, são analogos - \AddToHook{cmd/recountchapter/after}{\@stpelt@on@cl{chapter}} - \AddToHook{cmd/recountsection/after}{\@stpelt@on@cl{section}} - \AddToHook{cmd/recountsubsection/after}{\@stpelt@on@cl{subsection}} -\makeatother - -% versão * do capítulo/seção não tem no ABNTexto. -% No ABNTexto, será \clearpage\nonum\notoc\chapter{\centering } ou \nonum\notoc\section{\centering } -% Providenciando versão * pela praticidade em usar no conteúdo pretextual (ABNT: deve ser centralizada) - -\makeatletter - \let\chapter@nostar\chapter% copiando o original - \def\chapter{\@ifstar\chapter@star\chapter@nostar} - \def\chapter@star#1{% com * - \cleardoublepage - \nonum\notoc\chapter@nostar{\centering #1} - } -% Para artigos -%\let\section@nostar\section% copiando o original -%\def\section{\@ifstar\section@star\section@nostar} -%\def\section@star#1{% com * -% \nonum\notoc\section@nostar{\centering #1} -%} -\makeatother -% informação do documento (requer o pacote hyperref) -\hypersetup{pdftitle={Exemplo de ABNTexto}, - pdfauthor={Sadao Massago}, - pdfsubject={Exemplo do documento em ABNT com a classe ABNTexto}, - pdfkeywords={ABNT}{Trabalho acadêmico}{LaTeX}{ABNTexto} -} - -\sloppy % preferência a underfull (muito espaço entre palavras) - -% INICIO DO DOCUMENTO -\begin{document} - -\begin{titlepage} -UNIVERSIDADE FEDERAL DE SÃO CARLOS \\ -CENTRO DE CIÊNCIAS E TECNOLOGIAS PARA SUSTENTABILIDADE -\begin{center} -\vfill -\Large SADAO MASSAGO -\vfill -{\Huge\bfseries EXEMPLO DE ABNTEXTO} -\vfill -SOROCABA \\ -NOVEMBRO DE 2024 -\end{center} -\end{titlepage} -\pretextual % pretextual é iniciado automaticamente? -% Folha de rosto é obrigatório no ABNT -\begin{center} -\vfill -Sadao Massago -\vfill -{\Large\bfseries Exemplo de ABNTexto} -\vfill -\begin{flushright}\begin{minipage}{0.5\textwidth} -\noindent% sem indentação -\singlesp % espaçamento simpoles, usando o comando de ABNTexto -Texto do tipo ‘‘Monografia apresentada ...’’ que depende da instituição -\end{minipage}\end{flushright} -\vfill -Universidade Federal de São Carlos \\ -Centro de Ciências e Tecnologias para Sustentabilidade -\vfill -Orientador(a): Nome do(a) orientador(a) -\vfill -Sorocaba\\ -Novembro de 2024 -\end{center} - -%% Ficha catalográfica, caso existir, deve ficar no verso da folha de rosto -%\newpage % Quando tiver versão definitiva, inserir aqui -%\includepdf{fichacatalograficafinal.pdf} -% -%Caso exista errata. Opcional no ABNT. -%\chapter*{Errata} -% -\newpage -Folha de aprovação é obrigatório no ABNT -%% Quando tiver a folha de aprovação devidamente assinada, incluir aqui -%% \includepdf{folhadeaprovacaofinal.pdf} -% -%\chapter*{} -%%Dedicatória é um elemento opcional para ABNT -% -\chapter*{} -Agradecimentos é opcional no ABNT, mas boa educação é agradecer aos que contribuíram para realização do trabalho. -% -%\chapter*{} -%epigrafe (uma mensagem) que é opcional no ABNT. Deverá colocar o autor da mensagem, alinhada a direita. -% -\chapter*{Resumo} -\noindent Resumo em português, obrigatório no ABNT. - -\noindent -\textbf{Palavras-chave}: ABNT, LaTeX, ABNTexto. -% -\chapter*{Abstract} %Resumo em língua estrangeira (obrigatório no ABNT). -\begin{otherlanguage}{english} -\noindent Abstract in foreign language is required in ABNT. - -\noindent -\textbf{Keywords}: ABNT, LaTeX, ABNTexto. -\end{otherlanguage} -% -%\clearpage\phantomsection\pdfbookmark[chapter]{\listfigurename}{lof} -%\chapter*{Lista de Figuras}% opcional no ABNT -%\maketoc{lof} -% -%\clearpage\phantomsection\pdfbookmark[chapter]{\listfigurename}{lot} -%\chapter*{Lista de Tabelas} % opcional no ABNT -%\maketoc{lot} -% -% \clearpage -%\chapter*{Siglas} % Lista de siglas é opcional no ABNT. -%\begin{description} -%\item[ABNT] Associação Brasileira de Normas Técnicas. -%\end{description} -%\end{siglas} -% -% \clearpage -%\chapter*{Simbolos}% Lista de Símbolos é opcional no ABNT -%\begin{description} -%\item[$\pi$] Razão entre circunferência e raio. -%\item[ABNT] Associação Brasileira de Normas Técnicas. -%\end{description} -% -\clearpage -% \section*{Sumário} % artigo -\chapter*{Sumário} -\maketoc - -% CONTEÚDO PRINCIPAL -\clearpage -\textual \let\textual=\relax% iniciando o textual e desativando o comando -% -% Como já é conteúdo textual, capítulos serão enumerados. -\chapter{Prefácio} % prefácio (ou apresentação) é opcional no ABNT -Prefácio aqui. Se preferir, pode incorporar na introdução. - -\clearpage -\chapter{Introdução} -Introdução aqui. -\clearpage -\chapter{Alíneas} -Alineas é criado pelo ambiente \texttt{topics}. -\begin{topics} -\item \label{alinea:1} 1 -\begin{topics} -\item a -\item b -\end{topics} -\item \label{alinea:2} 2 -\end{topics} -\clearpage -\chapter{Legenda} -O comando \verb+\legend+ especifica se vai ser figura ou tabela e cria a legenda (título). -Deve respeitar a ordem dos comandos \verb+\legend+, \verb+\src+ e \verb+\place+. O ambiente de figuras flutuantes \texttt{figure} funciona, mas não está suportado oficialmente na classe \texttt{abntexto} (2024). Se usar, não esquecer de verificar se está de acordo com o ABNT. -\begin{figure}[hbp!] -\legend{figure}{Uma figura} -\src{Elaboração do autor} -\label{fig:teste} -\place{\includegraphics[width=0.4\linewidth]{imagem-exemplo}} -\end{figure} -Ver \ref{fig:teste}. - -Poderá usar subfiguras nativamente como na Figura~\ref{fig:teste2} (Figura~\ref{fig:teste2:a} e \ref{fig:teste2:b}). -\begin{figure}[hbp!] -\legend{figure}{Duas figuras}\label{fig:teste2} -\begin{multiplace} - \sublegend{figure}{Normal} - \src{Elaboração do autor} - \label{fig:teste2:a} - \subplace{\includegraphics[width=0.4\linewidth]{imagem-exemplo}} - % figura 2 - \sublegend{figure}{Rotacionada} - \src{Elaboração do autor} - \label{fig:teste2:b} - \subplace{\includegraphics[width=0.4\linewidth]{imagem-exemplo-2}} -\end{multiplace} -\end{figure} - -Não há suporte para tabelas flutuantes (2024). Logo, tabelas devem ser inseridas diretamente, mesmo que seja pequena. - -\begin{center} -\legend{table}{Um título}\label{tab:primeira} -\src{Elaboração do autor.} -\place{% -\begin{tabular}{ll} -\toprule %\hline - produto & preço \\ -\midrule %\hline - cenouras (500g) & R\$0,50 \\ - cogumelos (vidro de 500g) & R\$5,00 \\ - batata (1Kg) & R\$1,20 \\ \midrule % \hline - total & R\$6,70 \\ - \bottomrule %\hline -\end{tabular} -} -\end{center} - -Não há suporte para tabelas longas. Se precisar, use o pacote \texttt{xtab} e configure devidamente. - -\clearpage -\chapter{Citações} -Para citações curtas, use \verb+\enquote{texto}\cite{key}+. - -Para citações longas (mais de 3 linhas), use -\verb+\Enquote{texto\cite{key}}+ (com ``E'' maiúsculo). -Por exemplo, -\Enquote{O Lua\LaTeX{} foi designado para ser o sucessor do PDF\LaTeX{} e por isso, deve ser o \LaTeX{} padrão no futuro, mas pode ser um pouco mais lento do que o Xe\LaTeX. \cite{book:sadao:2019} -} %Enquote -\clearpage -\chapter{Considerações Finais} -Conclusão do trabalho. -% PÓS TEXTUAL -\clearpage -%% Referencias bibliográficas é obrigatório no ABNT -\phantomsection\addcontentsline{toc}{chapter}{\refname}%adicionando no sumário -\printbibliography%sem opção, para devido funcionamento em ABNTexto -%% glossário é opcional no ABNT -%\clearpage\phantomsection\addtoext{toc}{chapter}{\glossaryname}%adicionando no sumário pelo comando de ABNTexto -%\printglossaries -%%Apêndices são opcionais no ABNT -%\clearpage -%\appendix{Primeiro Apêndice} -%Conteúdo do primeiro apêndice. -%\clearpage -%\appendix{Segundo Apêndice} -%Conteúdo do segundo apêndice. -%% Anexos são opcionais no ABNT -%\clearpage -%\annex{Primeiro Anexo} -%Conteúdo do primeiro anexo -%\annex{Segundo Anexo} -%Conteúdo do segundo anexo -%% Índice remissivo (opcional no ABNT) -% \clearpage\phantomsection\addtoext{toc}{chapter}{\indexname}%adicionando no sumário pelo comando de ABNTexto -% \printindex -\end{document} -\end{lstlisting} +\lstinputlisting[caption={ex19-abntexto.tex},label=ex19:abntexto]{latex-via-exemplos-abntexto} \end{singlespacing} O \texttt{ABNTeX2} é mais completo, mas por basear na classe \texttt{momoir} e carregar diversos pacotes, torna mais pesado. @@ -10948,6 +10883,9 @@ No sistema de \texttt{blog} e \texttt{moodle} ou similar sem a suporte ao pacote \chapter{Desenvolvendo Pacotes} Aqui veremos como escrever seu próprio pacote, também chamado de arquivos de estilos. +Lembrando que, o arquivo de estilos, classes e similares não precisam ser instalados para ser usado. +O \LaTeX{} dá preferência aos arquivos locais (o que está junto com arquivo \texttt{.tex}). Assim, se quer testar um estilo ou classe mais nova que está instalado, basta manter o arquivo novo junto ao arquivo \texttt{.tex}, o que costuma fazer para desenvolver arquivos de estilos e/ou de classes. + \section{Criando pacotes} Pacote é conjunto de configurações de documentos e definições de comandos ou similares para ser aplicado no documento desejado. Pacote também é chamado de arquivo de estilos e tem a extensão \texttt{sty}\index{arquivos!sty}. @@ -11615,11 +11553,11 @@ Veja o Exemplo~\ref{ex:b:blindtext}. % \Blindtext % Gera vários parágrafos \Blindtext[1] % um parágrafo de textos %\blinditemize % lista de itens -%\blindenumerate % lista de enumeracao -%\blinddescription % lista de descricao -%\blindmathpaper % texto e formulas. -%\blinddocument % documento com secao, subsecao, listas, etc. Nao inclui formulas -% \Blinddocument % documento longo, com texto com secao, subsecao, listas, etc. Este inclui formulas +%\blindenumerate % lista de enumeração +%\blinddescription % lista de descrição +%\blindmathpaper % texto e fórmulas. +%\blinddocument % documento com seção, subseção, listas, etc. Não inclui fórmulas +% \Blinddocument % documento longo, com texto com seção, subseção, listas, etc. Este inclui fórmulas \end{ltxlisting} %\end{LTXexample} %\end{singlespacing} @@ -12546,8 +12484,7 @@ A figura diagramado com a classe \texttt{standalone} é como do Exemplo~\ref{ex: \usetikzlibrary{patterns} \begin{document} \begin{tikzpicture} -\draw[pattern=north east lines] (-1,-1) rectangle(1,1); -\draw[fill=white] (0,0) circle(1); +\draw[pattern=north east lines] (-1,-1) rectangle(1,1) (0,0) circle(1); \end{tikzpicture} \end{document} \end{ltxlisting} @@ -12677,10 +12614,10 @@ site: \url{https://www.xm1math.net/texmaker/} site: \url{https://www.texstudio.org/} -TeXMaker é um editor de código fonte do \LaTeX{} multiplataforma leve e eficiente. +O \texttt{TeXMaker} é um editor de código fonte do \LaTeX{} multiplataforma leve e eficiente. Ele apresenta painel de inserção de símbolos matemáticos e visualizador de PDF integrado. Apesar de não vir com menu para chamar \texttt{biber} usado no Bib\LaTeX, pode ajustar a chamada de \BibTeX{} ou acrescentar no menu personalizado (menu ``usuário''). -TeXStudio, por sua vez, é um ``fork'' do TeXMaker, incorpolando mais recursos. Isto torma um pouco mais pesado, mas apresenta a capacidade de compilar um trecho do código no tempo real, mostrando na janela de edição. +O \texttt{TeXStudio}, por sua vez, é um ``fork'' do \texttt{TeXMaker}, incorporando mais recursos. Isto torna um pouco mais pesado, mas apresenta a capacidade de compilar um trecho do código no tempo real, mostrando na janela de edição. Para isso, basta selecionar um trecho, e no menu aberto pelo botão direito, escolher ``Preview selection/parentheses''. @@ -12692,13 +12629,16 @@ site: \url{https://sourceforge.net/projects/lyxwininstaller/} O \LyX{} é um editor com aparência similar a aplicativos Office (MS Office/Libre Office), mas que compila o documento em \LaTeX. Ele também importa/exporta documentos \LaTeX. -O instalador de \LyX{} para MS Windows pode encarregar de instalar o MikTeX básico, caso tenha conexão com a internet, mas também pode deixar o MikTeX pré-instalado. Ele também instala automaticamente os pacotes adicionais. +O instalador de \LyX{} para \texttt{MS Windows} pode encarregar de instalar o \texttt{MikTeX} básico, caso tenha conexão com a internet, mas também pode deixar o \texttt{MikTeX} pré-instalado. Ele também instala automaticamente os pacotes adicionais. No menu de ajuda, encontrará o tutorial e guia de usuário. O \LyX{} foi desenvolvido para usuários de \LaTeX. Como o usuário de \LaTeX{} ganha desempenho significativo em relação ao usuário comum, é altamente recomendado que estude o \LaTeX. Pra ativar o verificador ortográfico no tempo real, entre em ``tools->preferences'', e em ``[language settings]->[spell checker]'', selecione ``enchant'' ou similar para ``spell check engine'' e cheque o ``[ ]spell check continuouslly''. +\begin{remark} +O \texttt{Windows} costuma não vir com visualizador de \texttt{PDF} instalados. Apesar de editores para \LaTeX{} costuma vir com visualizador de \texttt{PDF} integrados, é bom ter um visualizador dedicado. Uma das opções é instalar o \texttt{Sumatr PDF} (\url{https://www.sumatrapdfreader.org/}) que é muito leve. Ele não tem recursos de preenchimento de formulários ou acrescentar notas como o \texttt{Adobe Reader} (\url{https://get.adobe.com/br/reader/}), mas atende a maioria das necessidades. +\end{remark} \section{Editor gráfico\index{editor gráfico}} Editores gráficos ajudam a elaboração de ilustrações e similares. @@ -12707,10 +12647,9 @@ Editores gráficos ajudam a elaboração de ilustrações e similares. site: \url{http://www.inkscape.org/} -inkscape é um editor gráfico vetorial para criar ilustrações no estilo do Corel Draw (comercial) ou Adobe Illustrator (comercial). +\texttt{InkScape} é um editor gráfico vetorial para criar ilustrações no estilo do \texttt{Corel Draw} (comercial) ou \texttt{Adobe Illustrator} (comercial). Ele é bem mais leve e fácil de ser usado do que os seus concorrentes. -Pode ser usado para criar uma ilustração nova, -ou retocar o arquivo \texttt{pdf} já existente. +Pode ser usado para criar uma ilustração nova, ou retocar o arquivo \texttt{pdf} já existente. A versão atual permite instalar plugin para inserir fórmulas \LaTeX{} diretamente na figura. Note que nem todo efeito pode ser salva no \texttt{eps} e também no \texttt{pdf}. @@ -12719,11 +12658,11 @@ Por isso, é necessário checar o \texttt{eps} ou \texttt{pdf} quando criando. O manual pode ser acessado pelo menu de ajuda, sem precisar ficar procurando na internet. Quando salva como \texttt{PDF}, selecione ``usar tamanho do objeto exportado'' na opção ``tamanho da saída de página''. -Também ajuste o ``resolução para renderização (dpi)'' para mínimo de 300 em ''[v] Efeeitos de filtro de renderização''. +Também ajuste o ``resolução para renderização (dpi)'' para mínimo de 300 em ''[v] Efeitos de filtro de renderização''. Se quer deixar o tamanho do papel já ajustado para tamanho da figura, selecione toda figura (<ctrl>A) e entre em "file->document propries". No "custom size", clique em [fit page to selection]. -Para inserir fórmulas diretamente na figura, instale o \texttt{textext}. +Para inserir fórmulas diretamente na figura, instale o \texttt{textext} (\url{https://textext.github.io/textext/}). %Veja o site \url{http://pav.iki.fi/software/textext/index.html} para detalhes. %No caso de MS Windows, o instalador deste plugin abaixará seus dependentes, mas se quer instalar offline (sem a conexão da rede), "necessary library files from pyGTK" mencionado pelo site, deve estar na mesma pasta do instalador de textext. %Para que \texttt{textext} funcione no MS Windows, é necessário que \texttt{ghost script} e \texttt{pstoedit} estejam funcionando corretamente, além do \texttt{MikTeX} (ou outro TeX com pdflatex). @@ -12734,34 +12673,37 @@ Para inserir fórmulas diretamente na figura, instale o \texttt{textext}. %No caso de usar o \texttt{psfrag}, a fórmula é inserida durante a compilação do documento, sempre mantendo tamanho de letras coerente com o texto, independente do ajuste de tamanho da figura. Para usar \texttt{psfrag}, não esqueça de tirar o check do "convert texts to path" na hora de salvar como \texttt{eps}. Na versão atual, existe a opção de separar o texto para ser processado diretamente no \LaTeX. -Para isso, basta escolher ``Omitir texto no PDF e criar um arquivo LaTeX'' na opção de ``Orietnação do teto''. +Para isso, basta escolher ``Omitir texto no \texttt{PDF} e criar um arquivo \LaTeX'' na opção de ``Orietnação do teto''. Assim, ele criará um arquivo tex para cada pdf. No documento do \LaTeX, insere o arquivo tex com o comando \verb+\input+. Com esta opção, o comando \LaTeX{} pode ser usado diretamente na figura que será processado quando gera o documento no \LaTeX. \subsection*{Dia\index{editor gráfico!Dia}} site: \url{http://projects.gnome.org/dia/} -Editor de diagramas, similar ao comercial Microsoft Visio. -Diagramas costumam usar peças prontas, assim como curvas que se quebram no meio, o que é recomendável usar um editor próprio. -Se for o caso de criar ilustrações, use o inkscape. +Editor de diagramas, similar ao comercial \texttt{Microsoft Visio}. +Diagramas costumam usar peças prontas, assim como curvas que se quebram no meio, o que é recomendável usar um editor próprio. O \texttt{Dia} é feito especialmente para editar diagramas, mas não há atualização recente. + +Se for o caso de criar ilustrações, use o \texttt{InkScape}. \subsection*{GIMP\index{editor gráfico!GIMP}} site: \url{http://www.gimp.org/} -É o editor de imagem como o Adobe Photoshop (comercial) ou Corel Photo Paint (comercial). O "GIMP Help" é uma espécie de manual que precisa ser abaixado/instalado a parte devido ao seu tamanho. +É o editor de imagem como o \texttt{Adobe Photoshop} (comercial) ou \texttt{Corel Photo Paint} (comercial). O "GIMP Help" é uma espécie de manual que precisa ser abaixado/instalado a parte devido ao seu tamanho. Ainda não há versão traduzida para português deste manual. +Se for apenas fazer pequeno retoque e converter formato da imagem (para \texttt{jpg} e \texttt{png}, por exemplo), poderá usar o aplicativo mais leve. + \subsection*{LaTeX Draw\index{editor gráfico!LaTeX Draw}} site: \url{http://latexdraw.sourceforge.net/} -Editor escrito em java, especializado para pacote \texttt{pstricks} do LaTeX. +Editor escrito em java, especializado para pacote \texttt{pstricks} do \LaTeX. Ele permite abrir muitas figuras com \texttt{pstrick}, editado manualmente ou gerado pelo outro programa. Como vários programas tais como \texttt{gnuplot}, \texttt{geogebra}, \texttt{inkscape}, etc podem salvar no formato \LaTeX{} com \texttt{pstrick}, poderá usar este editor para retoques. Note que o ajuste de tamanho da figura deve ser feito no editor e não no documento, para ter espessura da linha inalterada, mas se entender um pouco do \texttt{pstrick}, poderá editar o código da figura exportada para deixar escalável dentro do documento (sem alterar a espessura). -Como \texttt{pstrick} é um pacote desenvolvido para \texttt{dvi/ps}, precisará usar o pacote adicional \texttt{pstool} (não é pstools), \texttt{pst-pdf} ou similar, quanto pretende compilar diretamente para \texttt{PDF} através do \texttt{pdflatex}. +Como \texttt{pstrick} é um pacote desenvolvido para \texttt{dvi/ps}, precisará usar o pacote adicional \texttt{pstool} (não é pstools), \texttt{pst-pdf} ou similar, quanto pretende compilar diretamente para \texttt{PDF} através do PDF\LaTeX, \XeLaTeX{} ou Lua\LaTeX. Uma maneira clássica de gerar \texttt{PDF} sem tais pacotes é usar o LaTeX=>dvips=>ps2pdf. \subsection*{FlowFramTk\index{editor gráfico!FlowFramTk}} @@ -12788,19 +12730,18 @@ Ele permite criar facilmente os diagramas em \texttt{tikz} através da interface \subsection*{Asymptote\index{gráfico científico!Asymptote}} -site: \url{https://sourceforge.net/projects/asymptote/} - +site: % \url{https://sourceforge.net/projects/asymptote/} \url{https://asymptote.sourceforge.io/} -Asymptote é uma linguagem/interpretador gráfico 2D/3D inspitado em MetaPost que permite produzir gráficos em Post Script, PDF e SVG. +O \texttt{Asymptote} é uma linguagem/interpretador gráfico 2D/3D inspitado em \texttt{MetaPost} que permite produzir gráficos em \texttt{Post Script}, \texttt{PDF} e \texttt{SVG}. \subsection*{Geogebra\index{gráfico científico!Geogebra}} site: \url{http://www.geogebra.org/} Ele é um aplicativo de geometria dinâmica, mas permite incorporar gráficos de funções. Além de exportar para ser colocado na página web, permite exportar para \texttt{eps/pdf/pstrick/tikz}. -Como o texto da figura em \texttt{eps} ficará desenhado, não é possível usar o \texttt{psfrag}. +%Como o texto da figura em \texttt{eps} ficará desenhado, não é possível usar o \texttt{psfrag}. Para retocar texto/fórmulas, exporte no formato \LaTeX{} como \texttt{pstrick} ou \texttt{tikz}. \subsection*{gnuplot\index{gráfico científico!gnuplot}} @@ -12815,19 +12756,19 @@ Como ele é um interpretador, precisará aprender alguns comandos básicos para site: \url{http://maxima.sourceforge.net/} -Algebra computacional como Maple (comercial) e Mathematica (comercial), implementando a linguagem MacSyma. -Costuma ser usado com a interface gráfica WxMaxima que permite efetuar diversas tarefas sem saber a linguagem, inclusive gerar gráficos 2D e 3D das funções. +Álgebra computacional como \texttt{Maple} (comercial) e \texttt{Mathematica} (comercial), implementando a linguagem \texttt{MacSyma}. +Costuma ser usado com a interface gráfica \texttt{WxMaxima} (\url{http://wxmaxima-developers.github.io/wxmaxima/}) que permite efetuar diversas tarefas sem saber a linguagem, inclusive gerar gráficos 2D e 3D das funções. %Ele ainda não suporta traçar as curvas de níveis ou superfícies de nível. -A interface gráfica mais recomendada é o WxMaxima que o instalador do Maxima instala por padrão no caso de MS Windows. +No caso de \texttt{MS Windows}, o instalador do \texttt{Maxima} instala por padrão. %Para o tutorial em português, veja a seção de maxima. \subsection*{GNU R\index{gráfico científico!GNU R}} site: \url{http://www.r-project.org/} -GNU R é um aplicativo popular especial para estatística e implementa a linguagem R, bem parecido com a linguagem S. -Ele produz ótimos gráficos, mas requer conhecimento de um pouco da linguagem R. -Uma das interfaces gráficas recomendados é o R Studio, mas para quem quer usar com o menu como no MiniTab (comercial), poderá instalar o Deducer (não testado). +\texttt{GNU R} é um aplicativo popular especial para estatística e implementa a linguagem \texttt{R}, bem parecido com a linguagem \texttt{S}. +Ele produz ótimos gráficos, mas requer conhecimento de um pouco da linguagem \texttt{R}. +Uma das interfaces gráficas recomendados é o \texttt{R Studio}, mas para quem quer usar com o menu como no \texttt{MiniTab} (comercial), poderá instalar o \texttt{Deducer} (não testado). site do R Studio: \url{http://www.rstudio.org/} @@ -12835,31 +12776,31 @@ site do Deducer: \url{http://www.deducer.org/} \subsection*{GNU Octave e outros clones do MatLab\index{gráfico científico!GNU Octave}} -gnu octave: \url{http://www.gnu.org/software/octave/} +gnu octave: \url{https://octave.org/} scilab: \url{http://www.scilab.org/} -freemat: \url{http://freemat.sourceforge.net/} +% freemat: \url{http://freemat.sourceforge.net/} -Para quem entende um pouco da linguagem MatLab, o octave, scilab e freemat podem ser usados para gerar gráficos matemáticos no formato vetorial. -O GNU Octave é mais popular. -O emergente FreeMat é simples de instalar e usar, mas ainda perde dos concorrentes em termos de recursos. +Para quem entende um pouco da linguagem \texttt{MatLab}, o \texttt{GNU Octave} e \texttt{SciLab} podem ser usados para gerar gráficos matemáticos no formato vetorial. +O \texttt{GNU Octave} é mais popular. +% O emergente \texttt{FreeMat} é simples de instalar e usar, mas ainda perde dos concorrentes em termos de recursos e não é atualizado por longo período de tempo. \subsection*{SciDAVis e outras imitações do Microcal Origin\index{gráfico científico!SciDavis}} -SciDAVis: \url{http://scidavis.sourceforge.net/} +SciDAVis: \url{https://github.com/SciDAVis/scidavis} % \url{http://scidavis.sourceforge.net/} RLPlot: \url{http://rlplot.sourceforge.net/} -SciDAVis é programa multiplataforma para análise de daos e criação de gráficos como o famoso Microcal Origin. -O gráfico é de boa qualidade e permite eportar em diversos formatos, incluindo o formato vetorial \texttt{eps}. -O RLPlot é mais simples, mas tem recurso de adicionar texto e linhas poligonais no gráfico gerado. +O \texttt{SciDAVis} é programa multiplataforma para análise de dados e criação de gráficos como o popular \texttt{Microcal Origin} (comercial). +O gráfico é de boa qualidade e permite exportar em diversos formatos, incluindo o formato vetorial \texttt{eps}. +O \texttt{RLPlot} é mais simples, mas tem recurso de adicionar texto e linhas poligonais no gráfico gerado. %Existe também o QtiPlot (gratuito para linux) que é uma espécie de clone do Microcal Origin que permite até importar o arquivo do Microcal Origin 7.5, mas a versão para MS Windows é comercial (ou a versão demo limitada). %O FitYK (gratuito para linux) é desenvolvimento especialmente para ajuste de curvas, mas versão para MS Windows é comercial. % -O aplicativo gratuito e multiplataforma FitYK (\url{http://fityk.nieto.pl/}) é desenvolvimento especialmente para ajuste de curvas que é interessante, apesar de não ser clone de Microcal Origin. +O aplicativo gratuito e multiplataforma \texttt{FitYK} (\url{http://fityk.nieto.pl/}) é desenvolvimento especialmente para ajuste de curvas que é interessante, apesar de não ser clone de \texttt{Microcal Origin}. \subsection*{LibreCAD\index{gráfico científico!LibreCAD}} @@ -12869,21 +12810,21 @@ site: \url{http://librecad.org/} LibreCAD é un CAD 2D de código aberto e é multiplataforma. \subsection*{Outros} -Nem sempre os aplicativos matemáticos tem a habilidade de exportar gráficos vetoriais, como no caso de MathMod (sucessor do k3dsurf). +Nem sempre os aplicativos matemáticos tem a habilidade de exportar gráficos vetoriais, como no caso de \texttt{MathMod} (sucessor do \texttt{k3dsurf}). Isto ocorre devido a dificuldade ou impossibilidade de criar gráfico vetorial de alguns tipos específicos de imagens matematicos obtidos. Neste caso, exporte a figura com resolução de 600DPI quando tem os traços bem definidos (desenho técnico) ou 300DPI no caso de traços estar menos definidos (como imagem no estilo de fotos), o que é recomendado para impressão. -Se for ampliar dentro do documento, a escala da ampliação deve ser considerada, exportando para ter o míniml de DPI após ampliação. +Se for ampliar dentro do documento, a escala da ampliação deve ser considerada, exportando para ter o mínimo de DPI após ampliação. \begin{itemize} -\item MathMod\index{gráfico científico!MathMod} (sucessor do k3DSurf para linux/win): Plotador de superfícies tanto a paramétrica como implícita, usando interface gráfica amigável. +\item \texttt{MathMod}\index{gráfico científico!MathMod} (sucessor do \texttt{k3DSurf} para linux/win): Plotador de superfícies tanto a paramétrica como implícita, usando interface gráfica amigável. Site: \url{http://sourceforge.net/projects/mathmod/} -\item Fractint\index{gráfico científico!FractInt} (multi plataforma): Um dos mais poderosos softers para plotar fractais. Por ser baseado em DOS, a interface gráfica não é amigável na versão estável. A versão de teste contém a implementação para Windows. +\item \texttt{Fractint}\index{gráfico científico!FractInt} (multi plataforma): Um dos mais poderosos softers para plotar fractais. Por ser baseado em \texttt{DOS}, a interface gráfica não é amigável na versão estável. A versão de teste contém a implementação para \texttt{Windows}. Site: \url{http://www.fractint.org/} -\item Graphvis\index{gráfico científico!Graphvis} (multiplataforma). Especial para produzir grafos, usando a linguagen dot. +\item \texttt{Graphvis}\index{gráfico científico!Graphvis} (multiplataforma). Especial para produzir grafos, usando a linguagen \texttt{dot}. Site: \url{https://www.graphviz.org/} @@ -12958,7 +12899,6 @@ converterá para \texttt{pdf}. site: \url{https://ctan.org/pkg/tex4ht}, \url{https://math.nist.gov/~BMiller/LaTeXML/}, \url{https://ctan.org/pkg/lwarp}. - \texttt{TeX4ht} é um convertor de \TeX/\LaTeX para \texttt{HTML/XHTML}, similar a \texttt{Hevea}, \texttt{TTH}, e \texttt{LaTeX2HTML}, que roda em diversas plataformas. Note que todos $4$ programas clássicos são de multiplataformas e cada um tem vantagens e desvantagens. \texttt{Hevea} e \texttt{TTH}, não apresenta suporte decente às fórmulas matemáticas. @@ -12980,6 +12920,8 @@ O \texttt{LaTeXML} é implementado em \texttt{perl} e usa o \texttt{PDF} e \text O \texttt{lwarp} é conjunto de pacotes de \LaTeX{} que converte \LaTeX{} para \texttt{HTML5}. As equações e figuras ficarão no formato \texttt{SVG} por padrão, mas pode usar \texttt{MathJaX} para equações. Ele não suporta \texttt{MathML} para equações ainda (2024). O \texttt{script} auxiliar \texttt{lwarpmk} é usado na conversão automática das equações e imagens para \texttt{SVG}. +Note que muitos editores de escritório como \texttt{MS Office} e \texttt{LIbre Office} permite importar arquivos \texttt{HTML}. + %\textbf{Observação:} Acentuação dentro do ambiente tabular (\a{'}, \a{~}, etc) não será reconhecido no \texttt{TeX4ht}. Neste caso, use a acentuação direta. %\begin{enumerate}[{Observação}~1] @@ -13073,8 +13015,8 @@ As equações e figuras ficarão no formato \texttt{SVG} por padrão, mas pode u site: \url{http://writer2latex.sourceforge.net/} Convertor do editor de texto do \texttt{Open Office/Libre Office} para \texttt{LaTeX/XHTML+MathML}. -Ele pode ser usado como plugin ou pelo comando de linha. -Dependendo da instalação do \texttt{Libre Office}, já estará instalado. +Ele pode ser usado como \texttt{plugin} ou pelo comando de linha. +Dependendo da instalação do \texttt{Libre Office}, já vem instalado. \subsection*{Excel2LaTeX\index{convertor!Excel2LaTeX}} @@ -13092,6 +13034,13 @@ site: \url{http://calc2latex.sourceforge.net/} Macro para \texttt{Open Calc} (do \texttt{Open Office}) para gerar tabelas de \LaTeX{} a partir da planilha. Não há atualização recente. +\subsection{Pandoc\index{convertor!Pandoc}} + +site: \url{https://pandoc.org/} + +O \texttt{Pandoc} é um convertor de formato de documentos que suportam diversos formatos. Entre eles, tem a conversão de arquivos \texttt{MarkDown} para \LaTeX. Se não quer usar aplicativos do comando de linha, poderá usar do \texttt{GhostWriter} (\url{https://ghostwriter.kde.org/}) que é um editor de \texttt{MarkDown}, capaz de visualizar o resultado automaticamente em paralelo, assim como efetuar conversão pelo menu. +O \texttt{MarkDown} é um formato de arquivo texto que pode ser lido diretamente, mas que também pode ser convertidos em \texttt{HTML} ou similar de forma rápida e simples. Este formato é popular no arquivo ``readme'' usado para descrição do programa ou similar, blogs, etc, além de elaboração de documentos simples (o \texttt{Pandoc} suporta fórmulas matemáticas no modo \TeX). + \section{Outras ferramentas\index{ferramentas}} \subsection*{jabref\index{ferramentas!jabref}} @@ -13099,7 +13048,7 @@ Não há atualização recente. site: \url{http://jabref.sourceforge.net/} Se usar o \BibTeX, é recomendável que use este editor para editar arquivo ".bib". -Muitos usuários de \LaTeX{} deixam de usar o \BibTeX{} devido a chatice de editar o arquivo do \BibTeX{} que usa a sintaxe diferente do \LaTeX, mas com o \texttt{jabref}, as coisas mudam. +Muitos usuários de \LaTeX{} deixam de usar o \BibTeX{} devido ao chatice de editar o arquivo do \BibTeX{} que usa o sintaxe diferente do \LaTeX, mas com o \texttt{jabref}, as coisas mudam. Ele também suporta o Bib\LaTeX{} (para isso, deverá usar o modo Bib\LaTeX). Também é aconselhável usar a codificação \texttt{utf-8} quando usa o modo Bib\LaTeX{} para evitar problemas com caracteres acentuados. @@ -13109,42 +13058,59 @@ Também é aconselhável usar a codificação \texttt{utf-8} quando usa o modo B site: \url{http://jpdftweak.sourceforge.net/} -Esta ferramenta é essencial para ajustes finais do documento PDF. Permite dividir ou juntar PDF, trocar ordem das páginas, alterar o tamanho de pápel, ajustar o tamanho e posição do corpo do texto, colocar várias páginas em uma, etc. O domínio do jpedtweak é importante para quem precisa manipular PDF pronta, como preparar para edição. -Para elaborar poster, poderá diagramar no papel de tamanho 1/4 (1/2 de escala em cada dimensão) com letra 12pt e ao finalizar, poderá usar o jpefTweak para ampliar no tamanho normal. Com o fator de ampliação 2x, a letra ficará com 24pt, apropriado para posters. Com isso, poderá criar posters sem precisar de pacote ou truque especial. -Para quem quer automatizar com script, o Multvalent pode ser interessante. Note que Multivalent é um visualizador para HTML, DVI, PDF, etc e o processamento de PDF será feito pelo comando de linha em vez de GUI, o que fez perder o espaço para jPDFTweak que apareceu mais tarde. -Para recorte rápido do arquivo PDF, o PDFSAM (http://www.pdfsam.org/) é mais prático que o jpdfTWeak. +Esta ferramenta é importante para ajustes finais do documento \texttt{PDF}. Permite dividir ou juntar PDF, trocar ordem das páginas, alterar o tamanho de papel, ajustar o tamanho e posição do corpo do texto, colocar várias páginas em uma, etc. O domínio do \texttt{jpdftweak} é útil para quem precisa manipular \texttt{PDF} pronta, como preparar para edição. +Para elaborar poster, poderá diagramar no papel de tamanho 1/4 (1/2 de escala em cada dimensão) com letra 12pt e ao finalizar, poderá usar o \texttt{jpdfTweak} para ampliar no tamanho normal. Com o fator de ampliação 2x, a letra ficará com 24pt, apropriado para posters. Com isso, poderá criar posters sem precisar de pacote ou truque especial. +Para quem quer um aplicativo de comando de linha para processamento em lotes, o \texttt{Multvalent} (\url{https://multivalent.sourceforge.net/}) pode ser interessante, mas ele não está sendo atualizado por muito tempo. Assim, poderá optar pelo \texttt{PSPDFUtils} (\url{https://github.com/rrthomas/psutils}) e/ou \texttt{pdfjam} (\url{https://github.com/pdfjam/pdfjam}). Para adicionar/remover senhas ou similares, o \texttt{PDFTk} (\url{https://www.pdflabs.com/tools/pdftk-the-pdf-toolkit/} -- GUI e linha de comando) e \texttt{qpdf} (\url{https://github.com/qpdf/qpdf} -- comando de linha) podem ser usados. +%Note que \texttt{Multivalent} (\url{https://multivalent.sourceforge.net/}) útil para processamento de \texttt{PDF} pelo comando de linha não é mantido por longo período de tempo. +%é um visualizador para HTML, DVI, PDF, etc e o processamento de PDF será feito pelo comando de linha em vez de GUI, o que fez perder o espaço para \texttt{jPDFTweak} que apareceu mais tarde. +Para recorte rápido do arquivo \texttt{PDF}, use o \texttt{pdfarranger/PDFSAM} comentado a seguir. -\subsection*{pdfarranger (linux e windows)\index{ferramentas!pdfarranger}} +\subsection*{pdfarranger (linux, windows e mac OS)\index{ferramentas!pdfarranger}} site: \url{https://github.com/jeromerobert/pdfarranger} -É um fork do pdfshuffler (\url{ttp://sourceforge.net/projects/pdfshuffler/}) que era somente para linux. Usado para manuseio dos arquivos em PDF. Usando interface amigável, poderá concatenar arquivos, eliminar páginas, reordenar páginas, rotacionar, etc. Não é potente como o jPDFTWeak, mas para manuseio simples, ele é prático. Usuários de Mac, podrá usar o PDFSAM (\url{http://www.pdfsam.org/}). +É um ``fork'' do \texttt{pdfshuffler} (\url{ttp://sourceforge.net/projects/pdfshuffler/}) que era somente para \texttt{linux}. Usado para manuseio dos arquivos em \texttt{PDF}. Usando interface amigável, poderá concatenar arquivos, eliminar páginas, reordenar páginas, rotacionar, etc. Não é potente como o \texttt{jPDFTWeak}, mas para manuseio simples, ele é prático. Caso não tiver disponível na sua plataforma, existe o aplicativo implementado em \texttt{java} \texttt{PDFSAM} (\url{http://www.pdfsam.org/}). \subsection*{xournal++ e jaurnal\index{ferramentas!xournal++/jaurnal}} +sites: xournal++: \url{https://github.com/xournalpp/xournalpp} jaurnal: \url{http://www.dklevine.com/general/software/tc1000/jarnal.htm} -xournal++ é uma reimplementação do xournal (\url{http://xournal.sourceforge.net/}) que é um caderno eletrônico. mas pode abrir um arquivo PDF, escrever sobre ele e exportar como um novo aruivo PDF. Este recurso é interessante para corrigir trabalhos. Se tiver uma mesa digitalizadora, poderá efetuar correção tão rápida como corrigir sobre texto impresso. O jaurnal é similar ao xournal, mas é implementado em java. A xournal++ é mais recomendado. +O \texttt{xournal++} é uma reimplementação do \texttt|{xournal} (\url{http://xournal.sourceforge.net/}) que é um caderno eletrônico, mas pode abrir um arquivo \texttt{PDF}, escrever sobre ele e exportar como um novo arquivo \texttt{PDF}. Este recurso é interessante para corrigir trabalhos. Se tiver uma mesa digitalizadora, poderá efetuar correção tão rápida como corrigir sobre texto impresso. Ele também é usado como losa digital para aulas \texttt{online} (Para losa digital, o \texttt{Open Board} disponível em \url{https://openboard.ch/index.en.html} também é interessante). + +O \texttt{jaurnal} é similar ao \texttt{xournal}, mas é implementado em \texttt{java}. A \texttt{xournal++} é mais recomendado. + +% Open Board +% https://openboard.ch/index.en.html +% tem funcionalidade similar como losa eletronica, mas parece para escrever sobre PDF. \subsection*{Scribus\index{ferramentas!scribus}} site: \url{http://www.scribus.net/} -O Scribus é um aplicativo para elaborar revistas, jornais, posters, etc como o Microsoft Publisher (comercial). -O Scribus permite inserir ``caixa de LaTeX'', o que facilita o desenvolvimento de material científico. Apesar do usuário de LaTeX costumam querer diagramar o poster de apresentação no LaTeX, se precisar produzir poster, folhetos, etc com frequência, é aconselhável aprender a usar o Scribus. +O \texttt{Scribus} é um aplicativo para elaborar revistas, jornais, posters, etc como o \texttt{Microsoft Publisher} (comercial). +O \texttt{Scribus} permite inserir ``caixa de \LaTeX'', o que facilita o desenvolvimento de material científico. Apesar do usuário de \LaTeX{} costumam querer diagramar o poster de apresentação no \LaTeX, se precisar produzir poster, folhetos, etc com frequência, é aconselhável aprender a usar o \texttt{Scribus}. \subsection*{Alguns serviços web\index{ferramentas!serviços Web}} -\url{http://detexify.kirelabs.org/classify.html} reconhecimento de símbolos LaTeX a partir do traço manual +\url{http://detexify.kirelabs.org/classify.html} reconhecimento de símbolos \LaTeX{} a partir do traço manual. Para versão offline para ser instalado no computador, veja \url{https://github.com/zoeyfyi/TeX-Match}. -\url{https://webdemo.myscript.com/views/math/index.html} Reconhecimento de fórmula escrito a mão e cria código LaTeX e MathML. +\url{https://huggingface.co/spaces/breezedeus/Pix2Text-Demo} +% \url{https://p2t.breezedeus.com/} +Converte imagem em texto com fórmula \LaTeX. É serviço online baseado no aplicativo de comando de linha \texttt{pix2tex} disponível em \url{https://github.com/breezedeus/pix2text} que é de código aberto.% que permite converter texto com fórmula de \LaTeX. +% Para idiomas que não sejam inglês ou chines, use o site \url{https://huggingface.co/spaces/breezedeus/Pix2Text-Demo} (é mais lento). +% Para caso de fórmulas escrito a mão, veja o aplicativo \url{https://github.com/vertexi/ImMathWriter}. + Note que existem diversos serviços online deste tipo, mas muitos não são baseados nos aplicativos de código aberto, ou nem gratuitos. Um desse serviços gratuito útil é \url{https://webdemo.myscript.com/views/math/index.html} que reconhece a fórmula escrito a mão e cria código \LaTeX{} e MathML. \url{http://www.imagemagick.org/MagickStudio/scripts/MagickStudio.cgi} Serviço de conversão do formato de imagens. \url{https://pt.overleaf.com/} -Serviço de web com ambiente LaTeX. Para uso pessoal é gratuito. +Serviço de web com ambiente \LaTeX. Para uso pessoal é gratuito. Outro serviço similar é \url{https://papeeria.com/} e \url{https://www.authorea.com/}. Em geral, o plano gratuito limita o tempo e/ou número de compilação, ou similar. Portanto, o ideal é ter o \TeX{} instalado no seu próprio computador. + +% overleaf like: LaTeX and markdown (use dropbox and like) +% https://papeeria.com/ \url{https://www.hipdf.com/}, \url{https://www.sejda.com/pdf-editor}, \url{https://www.pdfescape.com/} Alguns dos diversos serviços gratuitos para editar PDF online. diff --git a/info/latex-via-exemplos/makedoc.sh b/info/latex-via-exemplos/makedoc.sh index 4ec8091518..8846b267e5 100755 --- a/info/latex-via-exemplos/makedoc.sh +++ b/info/latex-via-exemplos/makedoc.sh @@ -58,6 +58,10 @@ function clear() rm *.snm rm *.vrb + # of beamer (produced by biblatex) + rm *.bcf + rm *.run.xml + # of todo notes rm *.tdo @@ -131,9 +135,9 @@ fi pdflatex latex-via-exemplos-fig pdflatex latex-via-exemplos-poster pdflatex latex-via-exemplos-slides +biber latex-via-exemplos-slides pdflatex latex-via-exemplos-slides pdflatex latex-via-exemplos-certificado -pdflatex latex-via-exemplos-slides pdflatex latex-via-exemplos-cracha pdflatex latex-via-exemplos-folder pdflatex latex-via-exemplos-todonotes diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/LICENSE b/macros/context/contrib/context-pocketdiary/LICENSE index b67e1cc880..b67e1cc880 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/LICENSE +++ b/macros/context/contrib/context-pocketdiary/LICENSE diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/README.md b/macros/context/contrib/context-pocketdiary/README.md index f89e5ff70d..f89e5ff70d 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/README.md +++ b/macros/context/contrib/context-pocketdiary/README.md diff --git a/macros/context/contrib/context-pocketdiary/VERSION b/macros/context/contrib/context-pocketdiary/VERSION index 79bed18f6f..2c1b424d8a 100644 --- a/macros/context/contrib/context-pocketdiary/VERSION +++ b/macros/context/contrib/context-pocketdiary/VERSION @@ -1 +1 @@ -2024.12.16 +2024-12-18 diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/README.md b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md index c6fabe8031..c6fabe8031 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/README.md +++ b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/README.md diff --git a/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf Binary files differnew file mode 100644 index 0000000000..e784e228cf --- /dev/null +++ b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex index 806ba7460c..806ba7460c 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex +++ b/macros/context/contrib/context-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.tex diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/VERSION b/macros/context/contrib/context-pocketdiary/t-pocketdiary/VERSION deleted file mode 100644 index a9c1f6d839..0000000000 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/VERSION +++ /dev/null @@ -1 +0,0 @@ -2024.12.16
\ No newline at end of file diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf b/macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf Binary files differdeleted file mode 100644 index 542bfe8a76..0000000000 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/doc/context/third/pocketdiary/t-pocketdiary-module-doc.pdf +++ /dev/null diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.mkiv b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.mkiv index f5817bd2eb..f5817bd2eb 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.mkiv +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/moons-MP.mkiv diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua index e0f2a5c537..e0f2a5c537 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Moonphase/t-moonphase.lua diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/PocketDiary.mkiv b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.mkiv index 9498200a49..9498200a49 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/PocketDiary.mkiv +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/PocketDiary.mkiv diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.mkiv b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.mkiv index 0ccd8923cc..0ccd8923cc 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.mkiv +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/sun-MP.mkiv diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua index 4b3c03589a..4b3c03589a 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/Solar/t-solar.lua diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua index f72cabc8e4..f72cabc8e4 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-calendar.lua diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua index efd15a26dd..efd15a26dd 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.lua diff --git a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv index c5ed82b6fa..9bb83c4c79 100644 --- a/macros/context/contrib/context-pocketdiary/t-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv +++ b/macros/context/contrib/context-pocketdiary/tex/context/third/pocketdiary/t-pocketdiary.mkiv @@ -668,7 +668,7 @@ %D In this file 4 overlays are defined which are used in a dedicated %D \type{\framed[]{}} to typeset the pictograms. %D -%M \input ./Moonphase/moons-MP +%M \input ./Moonphase/moons-MP.mkiv %M \defineoverlay[waningmoon][\useMPgraphic{Moon::Waning_moon}] %M \defineoverlay[growingmoon][\useMPgraphic{Moon::Growing_moon}] %M \defineoverlay[newmoon][\useMPgraphic{Moon::Newmoon}] @@ -717,7 +717,7 @@ %D In this file 3 overlays are defined which can then be used as a %D background in a dedicated framed environment. -%M \input ./solar/sun-MP +%M \input ./solar/sun-MP.mkiv %M \defineoverlay[Sunrise][\useMPgraphic{Sun::Sunrise}] %M \defineoverlay[Sunset][\useMPgraphic{Sun::Sunset}] %M \defineoverlay[Light][\useMPgraphic{Sun::Light}] diff --git a/macros/latex/contrib/lisp-on-tex/README.md b/macros/latex/contrib/lisp-on-tex/README.md index 045f98aaed..69dab9b111 100644 --- a/macros/latex/contrib/lisp-on-tex/README.md +++ b/macros/latex/contrib/lisp-on-tex/README.md @@ -190,6 +190,13 @@ shows that LISP on TeX uses Mark-Sweep GC and the heap size is 5000. (\intTOstring :42) % '42' ``` +`\stringTOint` : Convert a string to integer +****************************************************** + +``` +(\stringTOint '42') % :42 +``` + `\group` : Grouping. ******************************* @@ -557,6 +564,11 @@ of l3regex. Load it by `\usepackage`: ## CHANGELOG ## +Dec. 18, 2024 : 2.1 +************************* + +* Add \stringTOint function, thanks for @homologic + Oct. 25, 2015 : 2.0 ************************* @@ -594,4 +606,4 @@ Modified BSD (see LICENCE) ************************************************ HAKUTA Shizuya <hak7a3@live.jp> -https://bitbucket.org/hak7a3/lisp-on-tex/ +https://github.com/hak7a3/lisp-on-tex diff --git a/macros/latex/contrib/lisp-on-tex/examples/div2.pdf b/macros/latex/contrib/lisp-on-tex/examples/div2.pdf Binary files differindex 6cb01f55aa..a866e6894c 100644 --- a/macros/latex/contrib/lisp-on-tex/examples/div2.pdf +++ b/macros/latex/contrib/lisp-on-tex/examples/div2.pdf diff --git a/macros/latex/contrib/lisp-on-tex/examples/fact.pdf b/macros/latex/contrib/lisp-on-tex/examples/fact.pdf Binary files differindex 5bb156ab39..3e8f4f2f68 100644 --- a/macros/latex/contrib/lisp-on-tex/examples/fact.pdf +++ b/macros/latex/contrib/lisp-on-tex/examples/fact.pdf diff --git a/macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.pdf b/macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.pdf Binary files differindex b40e5f7c9b..3e106c6367 100644 --- a/macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.pdf +++ b/macros/latex/contrib/lisp-on-tex/examples/fpnummodule-mandelbrot.pdf diff --git a/macros/latex/contrib/lisp-on-tex/examples/nqueen.pdf b/macros/latex/contrib/lisp-on-tex/examples/nqueen.pdf Binary files differindex c605d4212c..132af8ffa1 100644 --- a/macros/latex/contrib/lisp-on-tex/examples/nqueen.pdf +++ b/macros/latex/contrib/lisp-on-tex/examples/nqueen.pdf diff --git a/macros/latex/contrib/lisp-on-tex/examples/rocket.pdf b/macros/latex/contrib/lisp-on-tex/examples/rocket.pdf Binary files differindex bfff99d340..7c46764a82 100644 --- a/macros/latex/contrib/lisp-on-tex/examples/rocket.pdf +++ b/macros/latex/contrib/lisp-on-tex/examples/rocket.pdf diff --git a/macros/latex/contrib/lisp-on-tex/examples/showfont.pdf b/macros/latex/contrib/lisp-on-tex/examples/showfont.pdf Binary files differindex 13ef7fce56..05ba13ed93 100644 --- a/macros/latex/contrib/lisp-on-tex/examples/showfont.pdf +++ b/macros/latex/contrib/lisp-on-tex/examples/showfont.pdf diff --git a/macros/latex/contrib/lisp-on-tex/lisp-mod-l3regex.sty b/macros/latex/contrib/lisp-on-tex/lisp-mod-l3regex.sty index 03b278d386..53637d55b4 100644 --- a/macros/latex/contrib/lisp-on-tex/lisp-mod-l3regex.sty +++ b/macros/latex/contrib/lisp-on-tex/lisp-mod-l3regex.sty @@ -1,5 +1,5 @@ % wrapper for l3regex -\RequirePackage{l3regex} +\RequirePackage{expl3} % \regex_match:nnTF \@lisp@env@add@global\regMatch{\@tlabel@func{\@lisp@func@check@args{2}{\@lisp@regex@match}}} diff --git a/macros/latex/contrib/lisp-on-tex/lisp-string.sty b/macros/latex/contrib/lisp-on-tex/lisp-string.sty index 9c0c011a2c..3d6f79d1c9 100644 --- a/macros/latex/contrib/lisp-on-tex/lisp-string.sty +++ b/macros/latex/contrib/lisp-on-tex/lisp-string.sty @@ -23,6 +23,12 @@ \@lisp@env@add@global\intTOstring{\@tlabel@func{\@lisp@func@check@args{1}{\@conv@intTOstr}}} \def\@conv@intTOstr#1\@tlabel@int#2{\gdef#1{\@tlabel@string{#2}}} +%% STRING2INT : string -> int +%% (\stringTOint 'i') -> i + +\@lisp@env@add@global\stringTOint{\@tlabel@func{\@lisp@func@check@args{1}{\@conv@strTOint}}} +\def\@conv@strTOint#1\@tlabel@string#2{\gdef#1{\@tlabel@int{#2}}} + %% IMMEDIATEWRITE : () -> () %% It outputs the output buffer immediately. %% It cause error if the buffer is incomplete. diff --git a/macros/latex/contrib/tutodoc/code/DEPENDS.yaml b/macros/latex/contrib/tutodoc/code/DEPENDS.yaml deleted file mode 100644 index 1b8260eaad..0000000000 --- a/macros/latex/contrib/tutodoc/code/DEPENDS.yaml +++ /dev/null @@ -1,27 +0,0 @@ -# ----------------------------------------------------------- # -# -- File generated automatically by TeXoptidep. -- # -# -- -- # -# -- WARNING! The alphabetical order used does not reflect -- # -# -- the order used in the source code. -- # -# ----------------------------------------------------------- # - -class: - - scrartcl - -package: - - clrstrip - - csquotes - - fontawesome5 - - geometry - - hyperref - - inputenc - - keytheorems - - marginnote - - minted - - tcolorbox - -library: - tcolorbox: - - breakable - - minted - - skins diff --git a/macros/latex/contrib/tutodoc/code/tutodoc-bw.css.cls b/macros/latex/contrib/tutodoc/code/tutodoc-bw.css.cls index cad88f64de..4dc1296f24 100644 --- a/macros/latex/contrib/tutodoc/code/tutodoc-bw.css.cls +++ b/macros/latex/contrib/tutodoc/code/tutodoc-bw.css.cls @@ -1,28 +1,16 @@ -% -- COLORFUL HIGHLIGHTING OF CONTENT -- % - -\NewExpandableDocumentCommand{\tutodoc@build@title@color}{m}{% - white% -} - -\NewExpandableDocumentCommand{\tutodoc@build@upper@color}{m}{% - \tdocdarkcolor[40]{Gray}% -} - -\NewExpandableDocumentCommand{\tutodoc@build@back@color}{m}{% - \tdoclightcolor[10]{Gray}% -} - -\NewExpandableDocumentCommand{\tutodoc@build@frame@color}{m}{% - Gray!75!black!45% -} - -\colorlet{tutodoc@admonition@shadow@color}{Gray!15} +% ================= % +% == ADMONITIONS == % +% ================= % +% ------------------------- % +% -- ICONS & ENV. COLORS -- % +% ------------------------- % \ExplSyntaxOn %%% -% We use two ''prop'' variables to factorize the code just after. +% We use two ''prop'' variables to associate each \env to its icon +% and color. %%% \prop_new:N \g__tutodoc_focus_color_prop \prop_new:N \g__tutodoc_focus_icon_prop @@ -46,12 +34,94 @@ \ExplSyntaxOff +% ------------------ % +% -- EXTRA COLORS -- % +% ------------------ % + +\NewExpandableDocumentCommand{\tutodoc@build@title@color}{m}{% + white% +} + +\NewExpandableDocumentCommand{\tutodoc@build@upper@color}{m}{% + \tdocdarkcolor[40]{Gray}% +} + +\NewExpandableDocumentCommand{\tutodoc@build@back@color}{m}{% + \tdoclightcolor[10]{Gray}% +} + +\NewExpandableDocumentCommand{\tutodoc@build@frame@color}{m}{% + Gray!75!black!45% +} + +\colorlet{tutodoc@admonition@shadow@color}{Gray!15} + + +% ----------------------- % +% -- VERTICAL SPACINGS -- % +% ----------------------- % + +\newcommand{\tutodoc@admonition@space@above}{\medskipamount} +\newcommand{\tutodoc@admonition@space@below}{\medskipamount} + + + +% ========================= % +% == LISTINGS - AGNOSTIC == % +% ========================= % + +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % + +\newcommand{\tutodoc@code@style}{friendly_grayscale} + +\colorlet{tutodoc@code@back@color}{gray!5} +\colorlet{tutodoc@code@text@color}{black} -% :: LEXER USED :: % + +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % + +\colorlet{tutodoc@code@frame@color}{darkgray} + +\newcommand{\tutodoc@code@left@len}{3pt} +\newcommand{\tutodoc@code@right@len}{3pt} +\newcommand{\tutodoc@code@top@len}{1.5pt} +\newcommand{\tutodoc@code@bottom@len}{1.5pt} + +\newcommand{\tutodoc@code@arc@len}{2pt} + +\newcommand{\tutodoc@code@left@rule@len}{1pt} +\newcommand{\tutodoc@code@right@rule@len}{1pt} +\newcommand{\tutodoc@code@top@rule@len}{1pt} +\newcommand{\tutodoc@code@bottom@rule@len}{1pt} + +\colorlet{tutodoc@code@shadow@color}{Gray!25} + +\newcommand{\tutodoc@code@shadow@xshift@len}{.75mm} +\newcommand{\tutodoc@code@shadow@yshift@len}{-.75mm} +\newcommand{\tutodoc@code@shadow@offset@len}{0mm} + +\colorlet{tutodoc@code@segment@color}{gray} + + + +% ====================== % +% == LISTINGS - LATEX == % +% ====================== % + +% ---------------- % +% -- LEXER USED -- % +% ---------------- % \newcommand{\tutodoc@latex@lexer}{latex} -% :: INLINE LATEX MACRO :: % + +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % \newcommand{\tutodoc@latex@style}{friendly_grayscale} @@ -59,23 +129,26 @@ \colorlet{tutodoc@latex@text@color}{black} -% :: THE TCOLORBOX LISTING STYLE :: % +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % \colorlet{tutodoc@latex@frame@color}{darkgray} -\newcommand{\tutodoc@latex@left@len}{1mm} -\newcommand{\tutodoc@latex@right@len}{1mm} -\newcommand{\tutodoc@latex@top@len}{1mm} -\newcommand{\tutodoc@latex@bottom@len}{1mm} +\newcommand{\tutodoc@latex@left@len}{3pt} +\newcommand{\tutodoc@latex@right@len}{3pt} +\newcommand{\tutodoc@latex@top@len}{1.5pt} +\newcommand{\tutodoc@latex@bottom@len}{1.5pt} -\newcommand{\tutodoc@latex@arc@len}{.75mm} +\newcommand{\tutodoc@latex@arc@len}{2pt} \newcommand{\tutodoc@latex@left@rule@len}{1pt} \newcommand{\tutodoc@latex@right@rule@len}{1pt} \newcommand{\tutodoc@latex@top@rule@len}{1pt} \newcommand{\tutodoc@latex@bottom@rule@len}{1pt} -\colorlet{tutodoc@latex@shadow@color}{black!30} +\colorlet{tutodoc@latex@shadow@color}{Gray!25} + \newcommand{\tutodoc@latex@shadow@xshift@len}{.75mm} \newcommand{\tutodoc@latex@shadow@yshift@len}{-.75mm} \newcommand{\tutodoc@latex@shadow@offset@len}{0mm} @@ -84,19 +157,25 @@ -% -- TEXT AND PAGE COLORS -- % +% ========================== % +% == TEXT AND PAGE COLORS == % +% ========================== % \colorlet{tutodoc@page@color}{white} \colorlet{tutodoc@text@color}{black} -% -- LINKS COLOR -- % +% ================= % +% == LINKS COLOR == % +% ================= % \definecolor{tutodoc@link@color}{named}{DimGray} -% -- SHOWCASE -- % +% ============== % +% == SHOWCASE == % +% ============== % \NewExpandableDocumentCommand{\tutodoc@showcase@rule@color}{}{% black% @@ -120,14 +199,22 @@ -% -- VERSION & CHANGES -- % +% ======================= % +% == VERSION & CHANGES == % +% ======================= % + +% -------------------- % +% -- DATE & VERSION -- % +% -------------------- % \NewExpandableDocumentCommand{\tutodoc@changes@when@color}{}{% gray% } -% -- ICONS -- % +% --------------------------- % +% -- ENVS FOR CHANGES MADE -- % +% --------------------------- % \newcommand{\tutodoc@changes@start@project@icon}{\faAnchor} diff --git a/macros/latex/contrib/tutodoc/code/tutodoc-color.css.cls b/macros/latex/contrib/tutodoc/code/tutodoc-color.css.cls index 8bcf1d0db0..50f46702e7 100644 --- a/macros/latex/contrib/tutodoc/code/tutodoc-color.css.cls +++ b/macros/latex/contrib/tutodoc/code/tutodoc-color.css.cls @@ -1,4 +1,42 @@ -% -- COLORFUL HIGHLIGHTING OF CONTENT -- % +% ================= % +% == ADMONITIONS == % +% ================= % + +% ------------------------- % +% -- ICONS & ENV. COLORS -- % +% ------------------------- % + +\ExplSyntaxOn + +%%% +% We use two ''prop'' variables to associate each \env to its icon +% and color. +%%% +\prop_new:N \g__tutodoc_focus_color_prop +\prop_new:N \g__tutodoc_focus_icon_prop + +\prop_set_from_keyval:Nn \g__tutodoc_focus_color_prop { + note = cyan, + tip = ForestGreen, + imp = orange, + caut = violet, + warn = red, +} + +\prop_set_from_keyval:Nn \g__tutodoc_focus_icon_prop { + note = \faInfoCircle, + tip = \faLightbulb, + imp = \faHighlighter, + caut = \faBiohazard, + warn = \faSkullCrossbones, +} + +\ExplSyntaxOff + + +% ------------------ % +% -- EXTRA COLORS -- % +% ------------------ % \NewExpandableDocumentCommand{\tutodoc@build@title@color}{m}{% white% @@ -20,66 +58,101 @@ #1!75!black!45% } -\colorlet{tutodoc@admonition@shadow@color}{black!30} +\colorlet{tutodoc@admonition@shadow@color}{Gray!17} -\ExplSyntaxOn +% ----------------------- % +% -- VERTICAL SPACINGS -- % +% ----------------------- % -%%% -% We use two ''prop'' variables to factorize the code just after. -%%% -\prop_new:N \g__tutodoc_focus_color_prop -\prop_new:N \g__tutodoc_focus_icon_prop +\newcommand{\tutodoc@admonition@space@above}{\medskipamount} +\newcommand{\tutodoc@admonition@space@below}{\medskipamount} -\prop_set_from_keyval:Nn \g__tutodoc_focus_color_prop { - note = cyan, - tip = ForestGreen, - imp = orange, - caut = violet, - warn = red, -} -\prop_set_from_keyval:Nn \g__tutodoc_focus_icon_prop { - note = \faInfoCircle, - tip = \faLightbulb, - imp = \faHighlighter, - caut = \faBiohazard, - warn = \faSkullCrossbones, -} -\ExplSyntaxOff +% ========================= % +% == LISTINGS - AGNOSTIC == % +% ========================= % +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % +\newcommand{\tutodoc@code@style}{pastie} -% :: LEXER USED :: % +\colorlet{tutodoc@code@back@color}{gray!5} +\colorlet{tutodoc@code@text@color}{black} + + +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % + +\colorlet{tutodoc@code@frame@color}{darkgray} + +\newcommand{\tutodoc@code@left@len}{3pt} +\newcommand{\tutodoc@code@right@len}{3pt} +\newcommand{\tutodoc@code@top@len}{1.5pt} +\newcommand{\tutodoc@code@bottom@len}{1.5pt} + +\newcommand{\tutodoc@code@arc@len}{2pt} + +\newcommand{\tutodoc@code@left@rule@len}{1pt} +\newcommand{\tutodoc@code@right@rule@len}{1pt} +\newcommand{\tutodoc@code@top@rule@len}{1pt} +\newcommand{\tutodoc@code@bottom@rule@len}{1pt} + +\colorlet{tutodoc@code@shadow@color}{Gray!25} + +\newcommand{\tutodoc@code@shadow@xshift@len}{.75mm} +\newcommand{\tutodoc@code@shadow@yshift@len}{-.75mm} +\newcommand{\tutodoc@code@shadow@offset@len}{0mm} + +\colorlet{tutodoc@code@segment@color}{gray} + + + +% ====================== % +% == LISTINGS - LATEX == % +% ====================== % + +% ---------------- % +% -- LEXER USED -- % +% ---------------- % \newcommand{\tutodoc@latex@lexer}{latex} -% :: INLINE LATEX MACRO :: % + +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % \newcommand{\tutodoc@latex@style}{pastie} -\colorlet{tutodoc@latex@back@color}{yellow!4} +\colorlet{tutodoc@latex@back@color}{gray!5} \colorlet{tutodoc@latex@text@color}{black} -% :: THE TCOLORBOX LISTING STYLE :: % +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % \colorlet{tutodoc@latex@frame@color}{darkgray} -\newcommand{\tutodoc@latex@left@len}{1mm} -\newcommand{\tutodoc@latex@right@len}{1mm} -\newcommand{\tutodoc@latex@top@len}{1mm} -\newcommand{\tutodoc@latex@bottom@len}{1mm} +\newcommand{\tutodoc@latex@left@len}{3pt} +\newcommand{\tutodoc@latex@right@len}{3pt} +\newcommand{\tutodoc@latex@top@len}{1.5pt} +\newcommand{\tutodoc@latex@bottom@len}{1.5pt} -\newcommand{\tutodoc@latex@arc@len}{.75mm} +\newcommand{\tutodoc@latex@arc@len}{2pt} \newcommand{\tutodoc@latex@left@rule@len}{1pt} \newcommand{\tutodoc@latex@right@rule@len}{1pt} \newcommand{\tutodoc@latex@top@rule@len}{1pt} \newcommand{\tutodoc@latex@bottom@rule@len}{1pt} -\colorlet{tutodoc@latex@shadow@color}{black!30} +\colorlet{tutodoc@latex@shadow@color}{Gray!25} + \newcommand{\tutodoc@latex@shadow@xshift@len}{.75mm} \newcommand{\tutodoc@latex@shadow@yshift@len}{-.75mm} \newcommand{\tutodoc@latex@shadow@offset@len}{0mm} @@ -88,19 +161,25 @@ -% -- TEXT AND PAGE COLORS -- % +% ========================== % +% == TEXT AND PAGE COLORS == % +% ========================== % \colorlet{tutodoc@page@color}{white} \colorlet{tutodoc@text@color}{black} -% -- LINKS COLOR -- % +% ================= % +% == LINKS COLOR == % +% ================= % \colorlet{tutodoc@link@color}{NavyBlue!85!white} -% -- SHOWCASE -- % +% ============== % +% == SHOWCASE == % +% ============== % \NewExpandableDocumentCommand{\tutodoc@showcase@rule@color}{}{% black% @@ -124,14 +203,22 @@ -% -- VERSION & CHANGES -- % +% ======================= % +% == VERSION & CHANGES == % +% ======================= % + +% -------------------- % +% -- DATE & VERSION -- % +% -------------------- % \NewExpandableDocumentCommand{\tutodoc@changes@when@color}{}{% \tdoclightcolor[60]{DarkBlue}% } -% -- ICONS -- % +% --------------------------- % +% -- ENVS FOR CHANGES MADE -- % +% --------------------------- % \newcommand{\tutodoc@changes@start@project@icon}{\faAnchor} diff --git a/macros/latex/contrib/tutodoc/code/tutodoc-dark.css.cls b/macros/latex/contrib/tutodoc/code/tutodoc-dark.css.cls index 765081697d..867264c1a1 100644 --- a/macros/latex/contrib/tutodoc/code/tutodoc-dark.css.cls +++ b/macros/latex/contrib/tutodoc/code/tutodoc-dark.css.cls @@ -1,4 +1,42 @@ -% -- COLORFUL HIGHLIGHTING OF CONTENT -- % +% ================= % +% == ADMONITIONS == % +% ================= % + +% ------------------------- % +% -- ICONS & ENV. COLORS -- % +% ------------------------- % + +\ExplSyntaxOn + +%%% +% We use two ''prop'' variables to associate each \env to its icon +% and color. +%%% +\prop_new:N \g__tutodoc_focus_color_prop +\prop_new:N \g__tutodoc_focus_icon_prop + +\prop_set_from_keyval:Nn \g__tutodoc_focus_color_prop { + note = cyan, + tip = ForestGreen, + imp = orange, + caut = violet, + warn = red, +} + +\prop_set_from_keyval:Nn \g__tutodoc_focus_icon_prop { + note = \faInfoCircle, + tip = \faLightbulb, + imp = \faHighlighter, + caut = \faBiohazard, + warn = \faSkullCrossbones, +} + +\ExplSyntaxOff + + +% ------------------ % +% -- EXTRA COLORS -- % +% ------------------ % \NewExpandableDocumentCommand{\tutodoc@build@title@color}{m}{% \tdocdarkcolor[95]{white}% @@ -20,42 +58,74 @@ \tdocdarkcolor[65]{#1}% } -\colorlet{tutodoc@admonition@shadow@color}{black!68} +\colorlet{tutodoc@admonition@shadow@color}{black!80} -\ExplSyntaxOn +% ----------------------- % +% -- VERTICAL SPACINGS -- % +% ----------------------- % -%%% -% We use two ''prop'' variables to factorize the code just after. -%%% -\prop_new:N \g__tutodoc_focus_color_prop -\prop_new:N \g__tutodoc_focus_icon_prop +\newcommand{\tutodoc@admonition@space@above}{\medskipamount} +\newcommand{\tutodoc@admonition@space@below}{\medskipamount} -\prop_set_from_keyval:Nn \g__tutodoc_focus_color_prop { - note = cyan, - tip = ForestGreen, - imp = orange, - caut = violet, - warn = red, -} -\prop_set_from_keyval:Nn \g__tutodoc_focus_icon_prop { - note = \faInfoCircle, - tip = \faLightbulb, - imp = \faHighlighter, - caut = \faBiohazard, - warn = \faSkullCrossbones, -} -\ExplSyntaxOff +% ========================= % +% == LISTINGS - AGNOSTIC == % +% ========================= % +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % +\newcommand{\tutodoc@code@style}{github-dark} -% :: LEXER USED :: % +\colorlet{tutodoc@code@back@color}{\tdocdarkcolor[30]{white}} +\colorlet{tutodoc@code@text@color}{\tdocdarkcolor[80]{white}} + + +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % + +\colorlet{tutodoc@code@frame@color}{darkgray} + +\newcommand{\tutodoc@code@left@len}{3pt} +\newcommand{\tutodoc@code@right@len}{3pt} +\newcommand{\tutodoc@code@top@len}{1.5pt} +\newcommand{\tutodoc@code@bottom@len}{1.5pt} + +\newcommand{\tutodoc@code@arc@len}{2pt} + +\newcommand{\tutodoc@code@left@rule@len}{1pt} +\newcommand{\tutodoc@code@right@rule@len}{1pt} +\newcommand{\tutodoc@code@top@rule@len}{1pt} +\newcommand{\tutodoc@code@bottom@rule@len}{1pt} + +\colorlet{tutodoc@code@shadow@color}{black!80} + +\newcommand{\tutodoc@code@shadow@xshift@len}{.75mm} +\newcommand{\tutodoc@code@shadow@yshift@len}{-.75mm} +\newcommand{\tutodoc@code@shadow@offset@len}{0mm} + +\colorlet{tutodoc@code@segment@color}{gray} + + + +% ====================== % +% == LISTINGS - LATEX == % +% ====================== % + +% ---------------- % +% -- LEXER USED -- % +% ---------------- % \newcommand{\tutodoc@latex@lexer}{latex} -% :: INLINE LATEX MACRO :: % + +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % \newcommand{\tutodoc@latex@style}{github-dark} @@ -63,23 +133,26 @@ \colorlet{tutodoc@latex@text@color}{\tdocdarkcolor[80]{white}} -% :: THE TCOLORBOX LISTING STYLE :: % +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % \colorlet{tutodoc@latex@frame@color}{darkgray} -\newcommand{\tutodoc@latex@left@len}{1mm} -\newcommand{\tutodoc@latex@right@len}{1mm} -\newcommand{\tutodoc@latex@top@len}{1mm} -\newcommand{\tutodoc@latex@bottom@len}{1mm} +\newcommand{\tutodoc@latex@left@len}{3pt} +\newcommand{\tutodoc@latex@right@len}{3pt} +\newcommand{\tutodoc@latex@top@len}{1.5pt} +\newcommand{\tutodoc@latex@bottom@len}{1.5pt} -\newcommand{\tutodoc@latex@arc@len}{.75mm} +\newcommand{\tutodoc@latex@arc@len}{2pt} \newcommand{\tutodoc@latex@left@rule@len}{1pt} \newcommand{\tutodoc@latex@right@rule@len}{1pt} \newcommand{\tutodoc@latex@top@rule@len}{1pt} \newcommand{\tutodoc@latex@bottom@rule@len}{1pt} -\colorlet{tutodoc@latex@shadow@color}{black!30} +\colorlet{tutodoc@latex@shadow@color}{black!80} + \newcommand{\tutodoc@latex@shadow@xshift@len}{.75mm} \newcommand{\tutodoc@latex@shadow@yshift@len}{-.75mm} \newcommand{\tutodoc@latex@shadow@offset@len}{0mm} @@ -88,19 +161,25 @@ -% -- TEXT AND PAGE COLORS -- % +% ========================== % +% == TEXT AND PAGE COLORS == % +% ========================== % \colorlet{tutodoc@page@color}{black} \colorlet{tutodoc@text@color}{\tdocdarkcolor[80]{white}} -% -- LINKS COLOR -- % +% ================= % +% == LINKS COLOR == % +% ================= % \definecolor{tutodoc@link@color}{HTML}{9591A6} -% -- SHOWCASE -- % +% ============== % +% == SHOWCASE == % +% ============== % \NewExpandableDocumentCommand{\tutodoc@showcase@rule@color}{}{% white% @@ -124,14 +203,22 @@ -% -- VERSION & CHANGES -- % +% ======================= % +% == VERSION & CHANGES == % +% ======================= % + +% -------------------- % +% -- DATE & VERSION -- % +% -------------------- % \NewExpandableDocumentCommand{\tutodoc@changes@when@color}{}{% \tdoclightcolor[60]{cyan}% } -% -- ICONS -- % +% --------------------------- % +% -- ENVS FOR CHANGES MADE -- % +% --------------------------- % \newcommand{\tutodoc@changes@start@project@icon}{\faAnchor} diff --git a/macros/latex/contrib/tutodoc/code/tutodoc-draft.css.cls b/macros/latex/contrib/tutodoc/code/tutodoc-draft.css.cls index d20943ab29..3798f815be 100644 --- a/macros/latex/contrib/tutodoc/code/tutodoc-draft.css.cls +++ b/macros/latex/contrib/tutodoc/code/tutodoc-draft.css.cls @@ -1,9 +1,16 @@ -% -- COLORFUL HIGHLIGHTING OF CONTENT -- % +% ================= % +% == ADMONITIONS == % +% ================= % + +% -------------------------------------- % +% -- ONY CLASSICAL THEOREM-LIKE \ENVS -- % +% -------------------------------------- % \ExplSyntaxOn %%% -% We use a ''seq'' variable to factorize the code just after. +% Without icons and colors, we just use a ''seq'' variable to give +% all the suffixes for the environments concerned. %%% \seq_new:N \g__tutodoc_focus_color_seq @@ -18,12 +25,72 @@ \ExplSyntaxOff +% ----------------------- % +% -- VERTICAL SPACINGS -- % +% ----------------------- % + +\newcommand{\tutodoc@admonition@space@above}{2pt plus 2pt} +\newcommand{\tutodoc@admonition@space@below}{2pt plus 2pt} + + + +% ========================= % +% == LISTINGS - AGNOSTIC == % +% ========================= % + +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % + +\codenolexertrue +\newcommand{\tutodoc@code@style}{default} + +\colorlet{tutodoc@code@back@color}{white} +\colorlet{tutodoc@code@text@color}{black} + + +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % + +\colorlet{tutodoc@code@frame@color}{darkgray} + +\newcommand{\tutodoc@code@left@len}{2pt} +\newcommand{\tutodoc@code@right@len}{2pt} +\newcommand{\tutodoc@code@top@len}{0pt} +\newcommand{\tutodoc@code@bottom@len}{0pt} + +\newcommand{\tutodoc@code@arc@len}{0pt} + +\newcommand{\tutodoc@code@left@rule@len}{1pt} +\newcommand{\tutodoc@code@right@rule@len}{0pt} +\newcommand{\tutodoc@code@top@rule@len}{0pt} +\newcommand{\tutodoc@code@bottom@rule@len}{0pt} + +\colorlet{tutodoc@code@shadow@color}{black} + +\newcommand{\tutodoc@code@shadow@xshift@len}{0mm} +\newcommand{\tutodoc@code@shadow@yshift@len}{0mm} +\newcommand{\tutodoc@code@shadow@offset@len}{0mm} -% :: LEXER USED :: % +\colorlet{tutodoc@code@segment@color}{black} + + + +% ====================== % +% == LISTINGS - LATEX == % +% ====================== % + +% ---------------- % +% -- LEXER USED -- % +% ---------------- % \newcommand{\tutodoc@latex@lexer}{text} -% :: INLINE LATEX MACRO :: % + +% ----------------- % +% -- INLINE CODE -- % +% ----------------- % \newcommand{\tutodoc@latex@style}{default} @@ -31,14 +98,16 @@ \colorlet{tutodoc@latex@text@color}{black} -% :: THE TCOLORBOX LISTING STYLE :: % +% -------------------------------- % +% -- FRAMED LISTING (tcolorbox) -- % +% -------------------------------- % \colorlet{tutodoc@latex@frame@color}{darkgray} -\newcommand{\tutodoc@latex@left@len}{1mm} -\newcommand{\tutodoc@latex@right@len}{1mm} -\newcommand{\tutodoc@latex@top@len}{1mm} -\newcommand{\tutodoc@latex@bottom@len}{1mm} +\newcommand{\tutodoc@latex@left@len}{2pt} +\newcommand{\tutodoc@latex@right@len}{2pt} +\newcommand{\tutodoc@latex@top@len}{0pt} +\newcommand{\tutodoc@latex@bottom@len}{0pt} \newcommand{\tutodoc@latex@arc@len}{0pt} @@ -48,6 +117,7 @@ \newcommand{\tutodoc@latex@bottom@rule@len}{0pt} \colorlet{tutodoc@latex@shadow@color}{black} + \newcommand{\tutodoc@latex@shadow@xshift@len}{0mm} \newcommand{\tutodoc@latex@shadow@yshift@len}{0mm} \newcommand{\tutodoc@latex@shadow@offset@len}{0mm} @@ -56,19 +126,39 @@ -% -- TEXT AND PAGE COLORS -- % +% ========================== % +% == TEXT AND PAGE COLORS == % +% ========================== % \colorlet{tutodoc@page@color}{white} \colorlet{tutodoc@text@color}{black} -% -- LINKS COLOR -- % +% ================ % +% == LINK COLOR == % +% ================ % \definecolor{tutodoc@link@color}{named}{black} +% ======================= % +% == VERTICAL SPACINGS == % +% ======================= % + +\setlength{\parskip}{0.5pt plus 1pt} + +\RedeclareSectionCommands[ + runin = false, + afterindent = false, + beforeskip = .25\baselineskip, + afterskip = 5pt +]{section, subsection, subsubsection} -% -- SHOWCASE -- % + + +% ============== % +% == SHOWCASE == % +% ============== % \NewExpandableDocumentCommand{\tutodoc@showcase@rule@color}{}{% black% @@ -92,28 +182,41 @@ -% -- VERSION & CHANGES -- % +% ======================= % +% == VERSION & CHANGES == % +% ======================= % + +% -------------------- % +% -- DATE & VERSION -- % +% -------------------- % \NewExpandableDocumentCommand{\tutodoc@changes@when@color}{}{% black% } -% -- (NO) ICONS -- % +% --------------------------- % +% -- ENVS FOR CHANGES MADE -- % +% --------------------------- % -\newcommand{\tutodoc@changes@start@project@icon}{} +%%% +% The draft theme doesn't use any icon. +%%% + +% \newcommand{\tutodoc@changes@start@project@icon}{} \ExplSyntaxOn -\prop_new:N \g__tutodoc_topic_change_prop -\prop_set_from_keyval:Nn \g__tutodoc_topic_change_prop { - break = , - fix = , - new = , - prob = , - tech = , - update = , - todo = , +\seq_new:N \g__tutodoc_topic_change_seq + +\seq_set_from_clist:Nn \g__tutodoc_topic_change_seq { + break , + fix , + new , + prob , + tech , + update, + todo , } \ExplSyntaxOff diff --git a/macros/latex/contrib/tutodoc/code/tutodoc.cls b/macros/latex/contrib/tutodoc/code/tutodoc.cls index a85dd64b60..fe1f0b52e4 100644 --- a/macros/latex/contrib/tutodoc/code/tutodoc.cls +++ b/macros/latex/contrib/tutodoc/code/tutodoc.cls @@ -9,18 +9,14 @@ \ProvidesExplClass {tutodoc} - {2024-12-04} % Creation: 2023-11-29 - {1.7.0} + {2024-12-18} % Creation: 2023-11-29 + {1.7.1} {This package proposes tools for writing "human friendly" documentations of LaTeX packages.} -% =================== % -% == PACKAGES USED == % -% =================== % - -% ------------- % -% -- OPTIONS -- % -% ------------- % +% ================== % +% == \CLS OPTIONS == % +% ================== % %%% % refs:: @@ -36,6 +32,10 @@ { \msg_see_documentation_text:n { tutodoc } } +%%% +% The theme is identified by the following macro that can be changed +% when the class is loaded. +%%% \newcommand{\tutodoc@theme}{color} @@ -82,17 +82,17 @@ \ExplSyntaxOff -% ------------------------------------------------- % -% -- OPTIONS FOR PACKAGES IMPORTED BY OTHER ONES -- % -% ------------------------------------------------- % +% =============================================== % +% == OPTIONS FOR \PACKS IMPORTED BY OTHER ONES == % +% =============================================== % -% xcolor is loaded by minted and tcolorbox. +% ''xcolor'' will be loaded by ''minted'' and ''tcolorbox'' below. \PassOptionsToPackage{svgnames}{xcolor} -% ------------- % -% -- IMPORTS -- % -% ------------- % +% ============= % +% == IMPORTS == % +% ============= % \RequirePackage{geometry} @@ -102,7 +102,8 @@ \RequirePackage{clrstrip} -% Before the tcolorbox library minted. +% Special settings for ''minted'' need to be done before the loading +% of the ''tcolorbox'' library ''minted''. \RequirePackage[highlightmode = immediate] {minted} @@ -129,13 +130,9 @@ \RequirePackage{csquotes} -% =============== % -% == MAIN CODE == % -% =============== % - -% --------------------- % -% -- LOCALE SETTINGS -- % -% --------------------- % +% ===================== % +% == LOCALE SETTINGS == % +% ===================== % \ExplSyntaxOn @@ -149,39 +146,41 @@ { \msg_see_documentation_text:n { tutodoc } } -% Management of English composition rules. -\newcommand{\tutodoc@use@english}{\relax} - % Babel requires colon management for our translations. \newcommand{\tutodoc@colon}{:} \AtBeginDocument{ -% Babel is used. +%%% +% Settings if ''babel'' \pack is used. +%%% \@ifpackageloaded{babel}{ -% We must take care of colons and spacing. +% We must take care of spacings with colons. \iflanguage{french}{ \renewcommand{\tutodoc@colon}{\babelshorthand{:}} }{} }{} -% Polyglossia is used. +%%% +% Settings if ''polyglossia'' \pack is used. +%%% \@ifpackageloaded{polyglossia}{ -% If polyglossia is used, we must load english if necessary +% If ''polyglossia'' is used, we must load english if necessary % (see the ''\tutodoc@use@english'' macro below). \iflanguageloaded{english}{}{ \setotherlanguage{english} } }{}% +% Standard way to find the \lang to use. \newcommand{\tdoclang}{\BCPdata{language}} % We must take care of English rules for English contents. - \renewcommand\tutodoc@use@english{% + \newcommand\tutodoc@use@english{% \foreignlanguage{english}% } -% If the lang is not supported, we emit a warning and just turn -% to the english language. +% If the \lang is not supported, we emit a warning and just use +% the english language. \makeatletter \InputIfFileExists{tutodoc-\tdoclang.loc.cls}{}{ @@ -198,9 +197,9 @@ \ExplSyntaxOff -% ----------------------- % -% -- GEOMETRY SETTINGS -- % -% ----------------------- % +% =================== % +% == PAGE GEOMETRY == % +% =================== % \geometry{ top = 1.9cm, @@ -215,17 +214,13 @@ \setlength{\parindent}{0cm} -% --------------- % -% -- TOC & Co. -- % -% --------------- % - -\ifcsundef{chapter}% - {}% - {\renewcommand{\thechapter}{\Alph{chapter}}} +% ================== % +% == TITLES & TOC == % +% ================== % \renewcommand{\thesection}{\Roman{section}} \renewcommand{\thesubsection}{\arabic{subsection}} -\renewcommand{\thesubsubsection}{\roman{subsubsection}} +\renewcommand{\thesubsubsection}{\alph{subsubsection}} % Source % * https://tex.stackexchange.com/a/558025/6880 @@ -246,12 +241,10 @@ subparagraph } -\DeclareTOCStyleEntry[indentfollows = chapter]{tocline}{section} - -% --------------------------- % -% -- COLOR TRANSFORMATIONS -- % -% --------------------------- % +% =========================== % +% == COLOR TRANSFORMATIONS == % +% =========================== % %%% % prototype:: @@ -277,9 +270,9 @@ \NewExpandableDocumentCommand{\tdoclightcolor}{ O{5} m }{#2!#1} -% ----------- % -% -- ICONS -- % -% ----------- % +% =========== % +% == ICONS == % +% =========== % %%% % prototype:: @@ -294,9 +287,54 @@ } -% ----------- % -% -- THEME -- % -% ----------- % +% ============== % +% == LISTINGS == % +% ============== % + +%%% +% We use a \std \latex boolean to switch on or off lexers for listings +% (this allows the ''draft'' mode to display listings in verbatim). +%%% +\newif\ifcodenolexer +\codenolexerfalse + + +\ExplSyntaxOn + +%%% +% prototype:: +% #1 : (style-abbrev) +% a shortcut for a \tcolorbox styling command. +% @ #1 in [code, sbs, std] +% +% In the following easy-to-understand macro, we use one fictive \tcolorbox +% style such as to indicate an unknown ''tutodoc'' shortcut style. For example, +% this will give the following message if the user type ''MISTYPED-STYLE''. +% +% term:: +% Package pgfkeys Error: I do not know the key '/tcb/[[tutodoc : tdoclatex +% bad option "MISTYPED-STYLE"]]' and I am going to ignore it. Perhaps you +% misspelled it. +% +% See the pgfkeys package documentation for explanation. +%%% + +\NewExpandableDocumentCommand{\tdoctcb}{ m }{ + \str_case:nnF { #1 } { + { sbs } { listing ~ side ~ text } + { code } { listing ~ only } + { std } { listing ~ and ~ text } + } { + [[tutodoc ~ : ~ LaTeX ~ listing ~ illegal ~ style ~ "#1"]] + } +} + +\ExplSyntaxOff + + +% ============================== % +% == THEME - GENERAL SETTINGS == % +% ============================== % \input{tutodoc-\tutodoc@theme.css.cls} @@ -312,9 +350,10 @@ } -% ------------- % -% -- QUOTING -- % -% ------------- % + +% ============= % +% == QUOTING == % +% ============= % %%% % prototype:: @@ -328,9 +367,9 @@ } -% ------------------------------ % -% -- EXPLAINING ENGLISH NAMES -- % -% ------------------------------ % +% ============================== % +% == EXPLAINING ENGLISH WORDS == % +% ============================== % %%% % prototype:: @@ -361,13 +400,14 @@ } -% ----------------------------------- % -% -- SOBER HIGHLIGHTING OF CONTENT -- % -% ----------------------------------- % -% :::::::::::::::::::::: % -% :: EXAMPLE & REMARK :: % -% :::::::::::::::::::::: % +% =========================== % +% == HIGHLIGHTING CONTENTS == % +% =========================== % + +% ---------------------- % +% -- EXAMPLE & REMARK -- % +% ---------------------- % \ExplSyntaxOn @@ -382,6 +422,14 @@ %%% +% Themes define specific vertical spacings. +%%% +\newkeytheoremstyle{tutodoc@admonition@exa@style}{ + spaceabove = \tutodoc@admonition@space@below, + spacebelow = \tutodoc@admonition@space@below +} + +%%% % prototype:: % :action: looping over ''\g__tutodoc_focus_std_seq'' to build new % numbered theorems sharing the same section level counter. @@ -393,11 +441,13 @@ \newkeytheorem{tdoc#1}[ name = \use:c { tutodoc@trans@#1@title }, within = section, + style = tutodoc@admonition@exa@style ] } { \newkeytheorem{tdoc#1}[ name = \use:c { tutodoc@trans@#1@title }, numberlike = tdocexa, + style = tutodoc@admonition@exa@style ] } @@ -407,10 +457,9 @@ \ExplSyntaxOff -% -------------------------------------- % -% -- COLORFUL HIGHLIGHTING OF CONTENT -- % -% -------------------------------------- % - +% ----------------- % +% -- ADMONITIONS -- % +% ----------------- % %%% % note:: @@ -422,16 +471,17 @@ % 1) ''\g__tutodoc_focus_color_seq'' is to use a dedicated basic theorem % (this should be only useful for the draft theme). % +% % warning:: % The variables should be defined inside the themes! -%%% -\ifcsundef{g__tutodoc_focus_color_seq}{ -%%% -% source:: +% +% +% refs:: % + https://tex.stackexchange.com/a/727022/6880 % + https://tex.stackexchange.com/a/682332/6880 % + https://tex.stackexchange.com/a/623232/6880 %%% +\ifcsundef{g__tutodoc_focus_color_seq}{ \tcbset{ tutodoc-focus-color-style/.style = { % General. @@ -448,6 +498,7 @@ % Padding. left = 3pt, right = 3pt, + arc = 2pt, % Frame. shadow = {.75mm}{-.75mm}{0mm}{tutodoc@admonition@shadow@color}, } @@ -461,7 +512,7 @@ % prototype:: % :action: ''key/value'' iteration over ''\g__tutodoc_focus_color_prop'' % to build new colorful unumbered theorems. To achieve that, -% we use a ''tcolorbox'' style given to the ''\newkeytheorem'' +% we use a \tcolorbox style given to the ''\newkeytheorem'' % macro from the ''keytheorems'' \pack, and icons from the % ''fontawesome5'' \pack. %%% @@ -487,7 +538,8 @@ \seq_map_inline:Nn \g__tutodoc_focus_color_seq { \newkeytheorem{tdoc#1}[ name = \use:c { tutodoc@trans@#1@title }, - numberlike = tdocexa, + numberlike = tdocexa,, + style = tutodoc@admonition@exa@style, % Some hooks... preheadhook = \small, postheadhook = \leavevmode, @@ -499,9 +551,10 @@ \ExplSyntaxOff -% ---------------------------------------------- % -% -- NAMES OF PACKAGES, MACROS & ENVIRONMENTS -- % -% ---------------------------------------------- % + +% ========================================= % +% == \PACKS, \CLSS, MACROS & \ENVS NAMES == % +% ========================================= % %%% % prototype:: @@ -541,65 +594,53 @@ %%% % prototype:: -% #1 : (env-options) -% hard typed options with the good delimiters -% #2 : (env-name) +% #1 : (env-name) % the name of an environment % % :extra: this macro has a star version. % -% Here are the four kind of outputs. +% Here are the different outputs available. % % 1) ''\tdocenv{myenv}'' prints % verb::''\begin{myenv} ... \end{myenv}''. % -% 2) ''\tdocenv[{<opt1>[mando2]}]{myenv}'' prints -% verb::''\begin{myenv}<opt1>[mando2] ... \end{myenv}''. -% -% 3) ''\tdocenv*{myenv}'' prints -% verb::''myenv''. -% -% 4) ''\tdocenv*[{<opt1>[mando2]}]{myenv}'' prints +% 2) ''\tdocenv*{myenv}'' prints % verb::''myenv''. %%% -% -% Cleaner code from https://tex.stackexchange.com/a/703379/6880 . -\NewDocumentCommand{\tdocenv}{ s O{} m }{% +\NewDocumentCommand{\tdocenv}{ s m }{% \IfBooleanTF{#1}{% - \texttt{#3}% + \texttt{#2}% }{% - \texttt{\string\begin\string{#3\string}#2 % +% Source: https://tex.stackexchange.com/a/703379/6880 . + \texttt{\string\begin\string{#2\string} % \!\!...\@\!\!\! % - \string\end\string{#3\string}}% + \string\end\string{#2\string}}% }% } -% ------------------------- % -% -- EXPLAINING PREFIXES -- % -% ------------------------- % +% ========================= % +% == EXPLAINING PREFIXES == % +% ========================= % \ExplSyntaxOn -% :::::::::::::: % -% :: MESSAGES :: % -% :::::::::::::: % - \msg_set:nnnn { tutodoc ~ (macroenv) } { macroenv : prefix-why-bad-format } { Bad ~ format, ~ something ~ like ~ ''pre.fix'' ~ expected. } { You ~ must ~ use ~ one ~ single ~ point. } -% :::::::::::::::::::: % -% :: PREFIX FROM... :: % -% :::::::::::::::::::: % +% -------------------- % +% -- PREFIX FROM... -- % +% -------------------- % \seq_new:N \l__tutodoc_prewhy_parts_seq \int_new:N \l__tutodoc_prewhy_nbparts_int \tl_new:N \l__tutodoc_pretext_tl \tl_new:N \l__tutodoc_posttext_tl + %%% % prototype:: % #1 : (pre.fix) @@ -636,9 +677,9 @@ \ExplSyntaxOff -% ::::::::::::::::::::: % -% :: JUST ONE PREFIX :: % -% ::::::::::::::::::::: % +% --------------------- % +% -- JUST ONE PREFIX -- % +% --------------------- % %%% % prototype:: @@ -656,14 +697,10 @@ } -% ------------------------ % -% -- GENERAL FORMATTING -- % -% ------------------------ % - -% :::::::::::::::::::::::: % -% :: TEXT INSIDE A RULE :: % -% :::::::::::::::::::::::: % +% ======================== % +% == TEXT BETWEEN RULES == % +% ======================== % \ExplSyntaxOn @@ -686,8 +723,10 @@ % cf::''this post ; % https://tex.stackexchange.com/a/604708/6880''. %%% - -\NewDocumentCommand{\tdocruler}{ O{\tutodoc@showcase@rule@color} m }{ +\NewDocumentCommand{\tdocruler}{ + O{\tutodoc@showcase@rule@color} + m +}{ \par { \centering @@ -713,9 +752,13 @@ \ExplSyntaxOff -% ::::::::::::::::::::::::::: % -% :: INTERNAL ENVIRONMENTS :: % -% ::::::::::::::::::::::::::: % +% ============== % +% == SHOWCASE == % +% ============== % + +% --------------------------- % +% -- INTERNAL ENVIRONMENTS -- % +% --------------------------- % %%% % prototype:: @@ -726,28 +769,26 @@ % #3 : (color) % one color used to set the one for the decorated texts printed % corresponding to the two first arguments. -% #4 : (text color) -% color of the content -% #5 : (rule color builder) +% #4 : (rule color builder) % the macro used to build the color from the user's rule color % % :action: this environment just adds its content processed by \latex % between centered materials produced by the macro ''\tdocruler'' % such as to stress the start and the end of the content. %%% -\NewDocumentEnvironment{tutodoc@showcase@basic}{ m m m m m }{% - \tdocruler[#5{#3}]{#1}% - \nopagebreak\medskip\nopagebreak\color{#4}% +\NewDocumentEnvironment{tutodoc@showcase@rules}{ m m m m }{% + \tdocruler[#4{#3}]{#1}% + \nopagebreak\medskip\nopagebreak% }{% \nopagebreak\medskip\nopagebreak% - \tdocruler[#5{#3}]{#2}% + \tdocruler[#4{#3}]{#2}% } %%% % prototype:: -% #1 .. #5 : :see: env.tutodoc@showcase@basic -% #6 : (back color builder) +% #1 .. #4 : :see: env.tutodoc@showcase@rules +% #5 : (back color builder) % the macro used to build the color from the user's back color % % :action: this environment adds a page-width colored stripe in the @@ -756,27 +797,26 @@ % produced by the macro ''\tdocruler'' such as to stress the % start and the end of the content. %%% - -\NewDocumentEnvironment{tutodoc@showcase@colorstrip}{ m m m m m m }{ - \begin{colorstrip}{#6{#3}}% - \begin{tutodoc@showcase@basic}{#1}{#2}{#3}{#4}{#5}% +\NewDocumentEnvironment{tutodoc@showcase@colorstrip}{ m m m m m }{ + \begin{colorstrip}{#5{#3}}% + \begin{tutodoc@showcase@rules}{#1}{#2}{#3}{#4}% }{% - \end{tutodoc@showcase@basic}% + \end{tutodoc@showcase@rules}% \end{colorstrip} } \ExplSyntaxOn -% ::::::::::::::::::::::: % -% :: SETTING SOME KEYS :: % -% ::::::::::::::::::::::: % +% ----------------------- % +% -- SETTING SOME KEYS -- % +% ----------------------- % -\tl_new:N \l_tutodoc_showcase_before_tl -\tl_new:N \l_tutodoc_showcase_after_tl -\tl_new:N \l_tutodoc_showcase_stripe_color_tl -\tl_new:N \l_tutodoc_showcase_text_color_tl -\bool_new:N \l_tutodoc_showcase_no_stripe_bool +\tl_new:N \g_tutodoc_showcase_style_tl +\tl_new:N \l_tutodoc_showcase_before_tl +\tl_new:N \l_tutodoc_showcase_after_tl +\tl_new:N \l_tutodoc_showcase_stripe_color_tl +\tl_new:N \l_tutodoc_showcase_text_color_tl %%% @@ -788,14 +828,19 @@ % after : the descriptive text after the real output %%% \keys_define:nn { tutodoc / showcase } { +% Style? + style .choices:nn = { + minimal, + rule, + stripe + } { + \tl_gset:Nx \g_tutodoc_showcase_style_tl {#1} + }, % Colors. col-stripe .tl_set:N = \l_tutodoc_showcase_stripe_color_tl, col-stripe .initial:n = \tutodoc@showcase@stripe@color, col-text .tl_set:N = \l_tutodoc_showcase_text_color_tl, col-text .initial:n = \tutodoc@showcase@text@color, -% Stripe? - nostripe .bool_set:N = \l_tutodoc_showcase_no_stripe_bool, - nostripe .initial:n = false, % Texts. before .tl_set:N = \l_tutodoc_showcase_before_tl, before .initial:n = \tutodoc@trans@latex@show@start, @@ -804,13 +849,13 @@ } -% :::::::::::::::::::::::::::::: % -% :: SHOWCASE FROM TYPED CODE :: % -% :::::::::::::::::::::::::::::: % +% ------------------------------ % +% -- SHOWCASE FROM TYPED CODE -- % +% ------------------------------ % % prototype:: % #1 : (key-val options) -% :see: \keys_define:nn { tutodoc / showcase } +% :see: l3keys(tutodoc / showcase) % % :action: this \env formats \latex code, given as an argument, % by framing it with texts decorated by ''\tdocruler'', @@ -819,42 +864,53 @@ % It is also possible to have a coloured strip of the width % of the page in the background of the content. % -% :see: env.tutodoc@showcase@basic , +% :see: env.tutodoc@showcase@rules , % env.tutodoc@showcase@colorstrip %%% \NewDocumentEnvironment{tdocshowcase}{ O{} }{ \group_begin: + \tl_gset:Nn \g_tutodoc_showcase_style_tl {minimal} \keys_set:nn { tutodoc / showcase } { #1 } - \bool_if:NTF \l_tutodoc_showcase_no_stripe_bool { - \begin{tutodoc@showcase@basic} - { \tl_use:N \l_tutodoc_showcase_before_tl } - { \tl_use:N \l_tutodoc_showcase_after_tl } - { \tl_use:N \l_tutodoc_showcase_stripe_color_tl } - { \tl_use:N \l_tutodoc_showcase_text_color_tl } - { \tutodoc@showcase@build@rule@color } - }{ - \begin{tutodoc@showcase@colorstrip} - { \tl_use:N \l_tutodoc_showcase_before_tl } - { \tl_use:N \l_tutodoc_showcase_after_tl } - { \tl_use:N \l_tutodoc_showcase_stripe_color_tl } - { \tl_use:N \l_tutodoc_showcase_text_color_tl } - { \tutodoc@showcase@build@rule@color } - { \tutodoc@showcase@build@back@color } + \str_case:Nn { \g_tutodoc_showcase_style_tl } { + { minimal } { + \smallskip\par + } + { rule } { + \smallskip + \begin{tutodoc@showcase@rules} + { \tl_use:N \l_tutodoc_showcase_before_tl } + { \tl_use:N \l_tutodoc_showcase_after_tl } + { \tl_use:N \l_tutodoc_showcase_stripe_color_tl } + { \tutodoc@showcase@build@rule@color } + } + { stripe } { + \begin{tutodoc@showcase@colorstrip} + { \tl_use:N \l_tutodoc_showcase_before_tl } + { \tl_use:N \l_tutodoc_showcase_after_tl } + { \tl_use:N \l_tutodoc_showcase_stripe_color_tl } + { \tutodoc@showcase@build@rule@color } + { \tutodoc@showcase@build@back@color } + } } + + \color{ \tl_use:N \l_tutodoc_showcase_text_color_tl } }{ - \bool_if:NTF \l_tutodoc_showcase_no_stripe_bool { - \end{tutodoc@showcase@basic} - }{ + \str_case:Nn { \g_tutodoc_showcase_style_tl } { + { rule } { + \end{tutodoc@showcase@rules} + } + { stripe } { \end{tutodoc@showcase@colorstrip} } + } \group_end: } -% :::::::::::::::::::::::: % -% :: SHOWCASE FROM FILE :: % -% :::::::::::::::::::::::: % +% ------------------------ % +% -- SHOWCASE FROM FILE -- % +% ------------------------ % \tl_new:N \l__tutodoc_showcase_options_tl @@ -867,84 +923,53 @@ % the path of a file %%% \NewDocumentCommand{\tdocshowcaseinput}{ O{} m }{ - \group_begin: - \keys_set_known:nnN { tutodoc / showcase } - { #1 } - \l__tutodoc_showcase_options_tl - - \exp_last_unbraced:NNV \tdocshowcase [\l__tutodoc_showcase_options_tl] - \input{#2} - \endtdocshowcase - \group_end: + \begin{tdocshowcase}[#1] + \input{#2} + \end{tdocshowcase} } \ExplSyntaxOff -% -------------------- % -% -- LATEX EXAMPLES -- % -% -------------------- % - -% :::::::::::::::::::::::::::::::::::::::::::::: % -% :: STYLES OF THE LISTING ENV. AND THE MACRO :: % -% :::::::::::::::::::::::::::::::::::::::::::::: % +% ==================== % +% == LATEX EXAMPLES == % +% ==================== % -% :::::::::::::::::::::::: % -% :: INLINE LATEX MACRO :: % -% :::::::::::::::::::::::: % +% ----------------------------- % +% -- INLINE LATEX CODE MACRO -- % +% ----------------------------- % %%% -% See the \doc of the macro ''\newmintinline'' from the package ''minted'' +% See the \doc of the macro ''\newmintinline'' from the package \minted % to have \infos about the macro ''tdoclatexin''. %%% -\newmintinline[tdoclatexin]{\tutodoc@latex@lexer}{% - bgcolor = tutodoc@latex@back@color,% - style/.expand once = \tutodoc@latex@style % <-- This needs minted3! +\newmintinline[tdoclatexin]{\tutodoc@latex@lexer}{ + bgcolor = tutodoc@latex@back@color, + style/.expand once = \tutodoc@latex@style } -% ::::::::::::::::::::::::::::::::::: % -% :: TCOLORBOX LISTING ENVIRONMENT :: % -% ::::::::::::::::::::::::::::::::::: % - -\ExplSyntaxOn +% ------------------------------------------------ % +% -- MINTED/TCOLORBOX LATEX LISTING ENVIRONMENT -- % +% ------------------------------------------------ % %%% % prototype:: -% #1 : (tdoclatex-style) -% a style of formatting for a \latex listing and its output. -% -% :see: macro.tdoclatex , -% macro.tdoclatexinput +% #1 : (minted-like-options) +% a list of legal \minted options. +% #2 : (tcolorbox-styling-commands) +% you can override the default \tcolorbox settings with the help +% of the macro ''\tdoctcb''. % -% In the following easy-to-understand macro, we use one fictive ''tcolorbox'' -% style such as to indicate an unknown ''tutodoc'' style to the user. -% For example, this can give one message similar to the following one. +% :see: macro.tdoctcb % -% term:: -% Package pgfkeys Error: I do not know the key '/tcb/tdoclatex bad option -% "MISTYPED-STYLE"' and I am going to ignore it. Perhaps you misspelled it. -% -% See the pgfkeys package documentation for explanation. -%%% -\NewExpandableDocumentCommand{\tutodoc@latex@listing@format@option}{ m }{ - \str_case:nnF { #1 } { - { sbs } { listing ~ side ~ text } - { code } { listing ~ only } - { std } { listing ~ and ~ text } - } { tdoclatex ~ bad ~ option ~ "#1" } -} - -\ExplSyntaxOff - -%% -% source:: +% refs:: % + https://tex.stackexchange.com/a/604821/6880 % + https://tex.stackexchange.com/a/327983/6880 -%% +%%% \tcbset{ - tutodoc-latex-listing-style/.style = { + tutodoc-latex-listing-style/.style 2 args = { % General. minted language/.expand once = \tutodoc@latex@lexer, minted style/.expand once = \tutodoc@latex@style, @@ -956,6 +981,7 @@ colupper = tutodoc@latex@text@color, collower = tutodoc@latex@text@color, % Padding. + boxsep = 0pt, left = \tutodoc@latex@left@len, right = \tutodoc@latex@right@len, bottom = \tutodoc@latex@bottom@len, @@ -976,58 +1002,62 @@ dash pattern = {on 5pt off 2.5pt}, line width = .75pt }, - #1 +% Extra minted otpions. + minted options = {#1}, +% Extra tcolorbox styles. + #2 }, } %%% % prototype:: -% #1 : (tdoclatex-style) -% the style to be used (code only, code and output side by side, -% or the standard style corresponding to the code followed by -% its output) -% @ #1 in [code, sbs, std] +% #1 : (minted-like-options) +% :see: tcbset(tutodoc-latex-listing-style) +% #2 : (tcolorbox-styling-commands) +% :see: tcbset(tutodoc-latex-listing-style) % % note:: % See the \doc of the macro ''\newtcblisting'' from the package -% ''tcolorbox'' to have \infos about the environment ''tdoclatex''. +% \tcolorbox to have \infos about the environment ''tdoclatex''. %%% -\newtcblisting{tdoclatex}[1][std]{% - tutodoc-latex-listing-style = \tutodoc@latex@listing@format@option{#1} +\NewTCBListing{tdoclatex}{ O{} D<>{} }{% + tutodoc-latex-listing-style = {#1}{#2} } -% :::::::::::::::::::::::::::::::::::::: % -% :: TCOLORBOX IMPORTED LISTING MACRO :: % -% :::::::::::::::::::::::::::::::::::::: % +% -------------------------------------- % +% -- TCOLORBOX IMPORTED LISTING MACRO -- % +% -------------------------------------- % %%% % prototype:: -% #1 : (tdoclatex-style) -% :see: ''\newtcblisting{tdoclatex}'' -% #2 : (file path) +% #1 : (minted-like-options) +% :see: tcbset(tutodoc-latex-listing-style) +% #2 : (tcolorbox-styling-commands) +% :see: tcbset(tutodoc-latex-listing-style) +% #3 : (file path) % the path of the file to input and format. % % note:: % See the \doc of the macro ''\newtcbinputlisting'' from the package -% ''tcolorbox'' to have more \infos about the macro ''\tdoclatexinput''. +% \tcolorbox to have more \infos about the macro ''\tdoclatexinput''. %%% -\newtcbinputlisting{\tdoclatexinput}[2][std]{ - listing file = {#2}, - tutodoc-latex-listing-style = \tutodoc@latex@listing@format@option{#1} +\NewTCBInputListing{\tdoclatexinput}{ O{} D<>{} m }{ + listing file = {#3}, + tutodoc-latex-listing-style = {#1}{#2} } -% -------------------------- % -% -- LATEX REAL USE CASES -- % -% -------------------------- % +% ===================== % +% == LATEX USE CASES == % +% ===================== % \ExplSyntaxOn -% ::::::::::::::::::::: % -% :: SETTING THE KEY :: % -% ::::::::::::::::::::: % +% --------------------- % +% -- SETTING THE KEY -- % +% --------------------- % \tl_new:N \l_tutodoc_listing_explain_tl @@ -1036,7 +1066,6 @@ % prototype:: % explain : the text between the code and its highlighted output. % -% % note:: % This key can be used in addition to those of the ''tdocshowcase'' % \env, @@ -1047,9 +1076,9 @@ } -% ::::::::::::::::::::: % -% :: LATEXSHOW MACRO :: % -% ::::::::::::::::::::: % +% --------------------- % +% -- LATEXSHOW MACRO -- % +% --------------------- % \tl_new:N \l__tutodoc_showcase_options_passed_tl @@ -1057,8 +1086,8 @@ %%% % prototype:: % #1 : (key-val options) -% :see: \keys_define:nn { tutodoc / listing / latexshow } , -% \keys_define:nn { tutodoc / showcase } +% :see: l3keys(tutodoc / listing / latexshow) , +% l3keys(tutodoc / showcase) % #2 : (file path) % the path of a file % @@ -1071,7 +1100,7 @@ { #1 } \l__tutodoc_showcase_options_passed_tl - \tdoclatexinput[code]{#2} + \tdoclatexinput<\tdoctcb{code}>{#2} \tl_use:N \l_tutodoc_listing_explain_tl @@ -1083,13 +1112,155 @@ \ExplSyntaxOff -% -- CHANGES - WHEN? --% -\ExplSyntaxOn +% ========================= % +% == LISTINGS - AGNOSTIC == % +% ========================= % + +% ---------------------------------- % +% -- DOES THE THEME AVOID LEXERS? -- % +% ---------------------------------- % + +\NewExpandableDocumentCommand{\tutodoc@code@lexer}{ m }{% + \ifcodenolexer text\else #1\fi% +} + + +% ---------------------------------- % +% -- INLINE GENERALIST CODE MACRO -- % +% ---------------------------------- % + +%%% +% prototype:: +% #1 : (minted-like-options) +% a list of legal \minted options. +% #2 : (coding-lang) +% the name of the \minted lexer corresponding to the coding langage +% for the formating. +% +% warning:: +% There are only two arguments, because the \mintinline macro will eat +% the bit of inline code to be colored. +%%% +\NewDocumentCommand{\tdoccodein}{ O{} m }{% + \mintinline[ + bgcolor = tutodoc@code@back@color, + style/.expand once = \tutodoc@code@style, + #1 + ]{\tutodoc@code@lexer{#2}}% +} -% :::::::::::::: % -% :: MESSAGES :: % -% :::::::::::::: % + +% ----------------------------------------------------- % +% -- MINTED/TCOLORBOX GENERALIST LISTING ENVIRONMENT -- % +% ----------------------------------------------------- % + +%%% +% prototype:: +% #1 : (minted-like-options) +% :see: macro.tdoccodein +% #2 : (tcolorbox-styling-commands) +% you can override the default \tcolorbox settings with the help +% of the macro ''\tdoctcb''. +% #3 : (coding-lang) +% :see: macro.tdoccodein +% +% :see: macro.tdoctcb +% +% refs:: +% + https://tex.stackexchange.com/a/604821/6880 +% + https://tex.stackexchange.com/a/327983/6880 +%%% +\tcbset{ + tutodoc-full-listing-style/.style n args = {3}{ +% General. + minted style/.expand once = \tutodoc@code@style, + minted language/.expand once = \tutodoc@code@lexer{#3}, + breakable, + enhanced, +% Colors. + colframe = tutodoc@code@frame@color, + colback = tutodoc@code@back@color, + colupper = tutodoc@code@text@color, + collower = tutodoc@code@text@color, +% Padding. + boxsep = 0pt, + left = \tutodoc@code@left@len, + right = \tutodoc@code@right@len, + bottom = \tutodoc@code@bottom@len, + top = \tutodoc@code@top@len, +% Frame. + shadow = {\tutodoc@code@shadow@xshift@len}% + {\tutodoc@code@shadow@yshift@len}% + {\tutodoc@code@shadow@offset@len}% + {tutodoc@code@shadow@color}, + arc = \tutodoc@code@arc@len, + leftrule = \tutodoc@code@left@rule@len, + rightrule = \tutodoc@code@right@rule@len, + bottomrule = \tutodoc@code@bottom@rule@len, + toprule = \tutodoc@code@top@rule@len, +% Separating line. + segmentation style = { + tutodoc@code@segment@color, + dash pattern = {on 5pt off 2.5pt}, + line width = .75pt + }, + listing only, +% Extra minted otpions. + minted options = {#1}, +% Extra tcolorbox styles. + #2 + }, +} + + +%%% +% prototype:: +% #1 : (minted-like-options) +% :see: macro.tdoccodein +% #2 : (tcolorbox-styling-commands) +% :see: \tcbset{tutodoc-full-listing-style} +% #3 : (coding-lang) +% :see: macro.tdoccodein +% +% note:: +% See the \doc of the macro ''\NewTCBListing'' from the package +% \tcolorbox to have \infos about the environment ''tdoccode''. +%%% +\NewTCBListing{tdoccode}{ O{} D<>{} m }{% + tutodoc-full-listing-style = {#1}{#2}{#3} +} + + +% -------------------------------------- % +% -- TCOLORBOX IMPORTED LISTING MACRO -- % +% -------------------------------------- % + +%%% +% prototype:: +% #1 : (minted-like-options) +% :see: macro.tdoccodein +% #2 : (tcolorbox-styling-commands) +% :see: \tcbset{tutodoc-full-listing-style} +% #3 : (coding-lang) +% :see: macro.tdoccodein +% #4 : (file path) +% the path of the file to input and format. +% +% note:: +% See the \doc of the macro ''\NewTCBInputListing'' from the package +% \tcolorbox to have more \infos about the macro ''\tdoccodeinput''. +%%% +\NewTCBInputListing{\tdoccodeinput}{ O{} D<>{} m m }{ + listing file = {#4}, + tutodoc-full-listing-style = {#1}{#2}{#3} +} + + + +% == CHANGES - WHEN? --% + +\ExplSyntaxOn \msg_set:nnnn { tutodoc ~ (version-n-change) } { version-n-change : date-bad-format } @@ -1097,9 +1268,9 @@ { Use ~ YYYY-MM-DD. } -% ::::::::::::::::: % -% :: MARGIN NOTE :: % -% ::::::::::::::::: % +% ----------------- % +% -- MARGIN NOTE -- % +% ----------------- % \reversemarginpar{} @@ -1198,9 +1369,9 @@ \ExplSyntaxOff -% :::::::::::::::::::::: % -% :: VERSION AND DATE :: % -% :::::::::::::::::::::: % +% ---------------------- % +% -- VERSION AND DATE -- % +% ---------------------- % \newlength{\tutodoc@version@date@vertical@sep@len} \setlength{\tutodoc@version@date@vertical@sep@len}{-4.25pt} @@ -1244,9 +1415,9 @@ } -% :::::::::: % -% :: DATE :: % -% :::::::::: % +% ---------- % +% -- DATE -- % +% ---------- % %%% % prototype:: @@ -1274,25 +1445,21 @@ } -% --------------------- % -% -- CHANGES - WHAT? -- % -% --------------------- % +% ===================== % +% == CHANGES - WHAT? == % +% ===================== % \ExplSyntaxOn -% :::::::::::::: % -% :: MESSAGES :: % -% :::::::::::::: % - \msg_set:nnnn { tutodoc ~ (version-n-change) } { version-n-change : topic-missing-title } { Missing ~ title. } { One ~ single ~ title ~ must ~ be ~ indicated. } -% ::::::::::::::::::: % -% :: GENERIC TOPIC :: % -% ::::::::::::::::::: % +% ------------------- % +% -- GENERIC TOPIC -- % +% ------------------- % \tl_new:N \l_tutodoc_topic_what_color_tl \tl_new:N \l_tutodoc_topic_when_color_tl @@ -1325,6 +1492,25 @@ %%% +% For themes using icons, we need a specific paragraph with less vertical +% space consuming. +%%% +\ifcsundef{g__tutodoc_topic_change_seq}{ + \newcommand{\tutodoc@what@change@paragraph}{% + \@startsection{paragraph} % + {4} % Level 4 (after section and co) + {\z@} % No indentation before the title + {1.25ex \@plus 1ex \@minus .2ex} % Vertical space before: + % 2ex with flexibility (+1ex / -0.2ex) + {-1em} % Negative spacing after + % ==> Title slightly aligned to the left. + {\normalfont\normalsize % Title style + \bfseries\sffamily} % + } +}{} + + +%%% % prototype:: % #1 : (title) % a title that will be followed by a colon. @@ -1332,7 +1518,7 @@ % one material that expects to be an icon command from the % ''fontawsome5'' \pack % #3 : (key-val options) -% :see: \keys_define:nn { tutodoc / version-n-change / topic / options } +% :see: l3keys(tutodoc / version-n-change / topic / options) % % :action: this environment prints some \infos about specific changes % achieved in a new version (no special formatting is applied). @@ -1352,14 +1538,26 @@ \tl_put_right:Nn \l__tutodoc_topic_all_user_options_tl { \l_tutodoc_topic_date_tl } \group_begin: - \color{\tl_use:N \l_tutodoc_topic_what_color_tl} - - \paragraph{ \color{\tl_use:N \l_tutodoc_topic_what_color_tl} - \IfBlankF{#2}{\tdocicon{#2}} - \textsc{#1.} - \exp_args:Ne \IfBlankF{\l__tutodoc_topic_all_user_options_tl}{ + + \ifcsundef{g__tutodoc_topic_change_seq}{{} +% Icon used by the theme. + \tutodoc@what@change@paragraph{ + \color{\tl_use:N \l_tutodoc_topic_what_color_tl} + \IfBlankF{#2}{\tdocicon{#2}} + \textsc{#1.} + } + }{ +% No icon used by the theme. + \smallskip + { + \normalfont\normalsize\bfseries\sffamily + \textsc{#1.} + } + } + % A date and/or a version. + \exp_args:Ne \IfBlankF{\l__tutodoc_topic_all_user_options_tl}{ \exp_args:NNee \tutodoc@new@change@margin {\l_tutodoc_topic_when_color_tl} {\l_tutodoc_topic_version_tl} @@ -1367,18 +1565,17 @@ {\tutodoc@version@date@vertical@sep@len} {\tutodoc@version@date@vertical@offset@len} } - } - \begin{itemize} + \begin{itemize} }{ - \end{itemize} + \end{itemize} \group_end: } -% :::::::::::::::::::::: % -% :: CLASSICAL TOPICS :: % -% :::::::::::::::::::::: % +% ---------------------- % +% -- CLASSICAL TOPICS -- % +% ---------------------- % %%% % prototype:: @@ -1388,11 +1585,21 @@ % to build topic-like \envs using the \env ''tdoctopic'' % (the title respects the locale settings). %%% -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \NewDocumentEnvironment{ tdoc#1 } { O{} } { - \begin{tdoctopic}{ \use:c { tutodoc@trans@chges@#1 } } < #2 > [##1] - }{ - \end{tdoctopic} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \NewDocumentEnvironment{ tdoc#1 } { O{} } { + \begin{tdoctopic}{ \use:c { tutodoc@trans@chges@#1 } } < #2 > [##1] + }{ + \end{tdoctopic} + } + } +}{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \NewDocumentEnvironment{ tdoc#1 } { O{} } { + \begin{tdoctopic}{ \use:c { tutodoc@trans@chges@#1 } } [##1] + }{ + \end{tdoctopic} + } } } @@ -1406,21 +1613,33 @@ % % :action: the short text printed will be preceded by a pretty anchor icon. %%% -\NewDocumentCommand{ \tdocstartproj }{ O{tutodoc@text@color} m } { +\NewDocumentCommand{ \tdocstartproj }{ + O{tutodoc@text@color} + m +} { \group_begin: - \color{#1} - \tdocicon{\tutodoc@changes@start@project@icon}#2 + \color{#1} + \ifcsundef{g__tutodoc_topic_change_seq}{ +% Icon used. + \tdocicon{\tutodoc@changes@start@project@icon} + }{ +% No icon used. + \raisebox{4pt}{\normalfont\tiny\bfseries\sffamily[Init]}\kern2pt + } + + #2 \group_end: } \ExplSyntaxOff -% ----------------- % -% -- DECORATIONS -- % -% ----------------- % -% Source +% ================ % +% == DECORATION == % +% ================ % + +% refs:: % + https://tex.stackexchange.com/a/130529/6880 % (for the leaders trick) % + https://tex.stackexchange.com/a/269887/6880 diff --git a/macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf b/macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf Binary files differindex 531e5711e4..1c9eadd931 100644 --- a/macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf +++ b/macros/latex/contrib/tutodoc/doc/tutodoc-en.pdf diff --git a/macros/latex/contrib/tutodoc/doc/tutodoc-en.tex b/macros/latex/contrib/tutodoc/doc/tutodoc-en.tex index de0b4f1732..2f9cecbafd 100644 --- a/macros/latex/contrib/tutodoc/doc/tutodoc-en.tex +++ b/macros/latex/contrib/tutodoc/doc/tutodoc-en.tex @@ -6,23 +6,34 @@ \begin{filecontents*}[overwrite]{gallery-showcase-bw.tex} \documentclass[theme = bw]{tutodoc} -% -- FORDOC -- % - \usepackage{multicol} +\usepackage{lastpage} + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{\thepage\kern1pt/\kern1pt\pageref*{LastPage}}% +} + \newcommand\thisstyle{bw} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] - In the flow of the text, it is always useful to be able to indicate examples and comments to supplement the main content. + In the flow of the text, it is always useful to be able to provide examples and comments to supplement the main content. } + \newcommand\myadmotext{ Depending on the context of use, it is sometimes necessary to be able to highlight content by indicating its degree of importance. } +\newcommand\myhighlightedtextnonote{ + What to say? + I don't know, but it's nice. No ? +} + \newcommand\myhighlightedtext{ - What to say + What to say\,% \footnote{ Let's not forget the footnotes... }? @@ -30,19 +41,48 @@ } +\newcommand\mychgestext{ + In a change log, it is important to visualise the types of changes clearly. This makes it easier for the user to read! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} -\textsf{\Huge\bfseries The theme \texttt{"\thisstyle"}} +\textsf{\Huge\bfseries The \texttt{"\thisstyle"} theme} + +\section{Liens} + +{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very big link}}, but at least we can see it. -\section{Links} -{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very large link}}, but at least you can see it. +\section{\LaTeX\ listings} +Typing inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is showing use cases such as the following one. + +\begin{tdoclatex} +Formatted \LaTeX\ code is great: $E = m c^2$ or $pi \neq \frac{3}{14}$. +\end{tdoclatex} + + +There's also a less invasive side-by-side mode. Nice! No ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Formatted \LaTeX\ code is great: \\ +$E = m c^2$ or $\pi \neq \frac{3}{14}$. +\end{tdoclatex} -\section{Highlight, version and date} + +\section{Highlighting, versioning and dating} \subsection{tdocexa, tdocrem} @@ -58,7 +98,6 @@ \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -67,20 +106,28 @@ \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -88,47 +135,68 @@ \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{New demo section...} +\tdocstartproj{A new demonstration section...} -\medskip +\begin{tdoctodo} + \item A gallery would be welcome... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{LaTeX codes} - -Typing an inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is demonstrating use cases such as the following one. - -\begin{tdoclatex} -Seeing \LaTeX\ code formatted is nice: $E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -There's also a less intrusive side-by-side mode. Nice! No ? - -\begin{tdoclatex}[sbs] -Seeing \LaTeX\ code formatted is nice: \\ -$E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -136,23 +204,34 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \begin{filecontents*}[overwrite]{gallery-showcase-color.tex} \documentclass[theme = color]{tutodoc} -% -- FORDOC -- % - \usepackage{multicol} +\usepackage{lastpage} + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{\thepage\kern1pt/\kern1pt\pageref*{LastPage}}% +} + \newcommand\thisstyle{color} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] - In the flow of the text, it is always useful to be able to indicate examples and comments to supplement the main content. + In the flow of the text, it is always useful to be able to provide examples and comments to supplement the main content. } + \newcommand\myadmotext{ Depending on the context of use, it is sometimes necessary to be able to highlight content by indicating its degree of importance. } +\newcommand\myhighlightedtextnonote{ + What to say? + I don't know, but it's nice. No ? +} + \newcommand\myhighlightedtext{ - What to say + What to say\,% \footnote{ Let's not forget the footnotes... }? @@ -160,19 +239,48 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. } +\newcommand\mychgestext{ + In a change log, it is important to visualise the types of changes clearly. This makes it easier for the user to read! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} -\textsf{\Huge\bfseries The theme \texttt{"\thisstyle"}} +\textsf{\Huge\bfseries The \texttt{"\thisstyle"} theme} + +\section{Liens} + +{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very big link}}, but at least we can see it. -\section{Links} -{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very large link}}, but at least you can see it. +\section{\LaTeX\ listings} +Typing inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is showing use cases such as the following one. +\begin{tdoclatex} +Formatted \LaTeX\ code is great: $E = m c^2$ or $pi \neq \frac{3}{14}$. +\end{tdoclatex} -\section{Highlight, version and date} + +There's also a less invasive side-by-side mode. Nice! No ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Formatted \LaTeX\ code is great: \\ +$E = m c^2$ or $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + + +\section{Highlighting, versioning and dating} \subsection{tdocexa, tdocrem} @@ -188,7 +296,6 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -197,20 +304,28 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -218,47 +333,68 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{New demo section...} +\tdocstartproj{A new demonstration section...} -\medskip +\begin{tdoctodo} + \item A gallery would be welcome... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{LaTeX codes} - -Typing an inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is demonstrating use cases such as the following one. - -\begin{tdoclatex} -Seeing \LaTeX\ code formatted is nice: $E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -There's also a less intrusive side-by-side mode. Nice! No ? - -\begin{tdoclatex}[sbs] -Seeing \LaTeX\ code formatted is nice: \\ -$E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -266,23 +402,34 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \begin{filecontents*}[overwrite]{gallery-showcase-dark.tex} \documentclass[theme = dark]{tutodoc} -% -- FORDOC -- % - \usepackage{multicol} +\usepackage{lastpage} + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{\thepage\kern1pt/\kern1pt\pageref*{LastPage}}% +} + \newcommand\thisstyle{dark} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] - In the flow of the text, it is always useful to be able to indicate examples and comments to supplement the main content. + In the flow of the text, it is always useful to be able to provide examples and comments to supplement the main content. } + \newcommand\myadmotext{ Depending on the context of use, it is sometimes necessary to be able to highlight content by indicating its degree of importance. } +\newcommand\myhighlightedtextnonote{ + What to say? + I don't know, but it's nice. No ? +} + \newcommand\myhighlightedtext{ - What to say + What to say\,% \footnote{ Let's not forget the footnotes... }? @@ -290,19 +437,48 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. } +\newcommand\mychgestext{ + In a change log, it is important to visualise the types of changes clearly. This makes it easier for the user to read! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} -\textsf{\Huge\bfseries The theme \texttt{"\thisstyle"}} +\textsf{\Huge\bfseries The \texttt{"\thisstyle"} theme} + +\section{Liens} + +{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very big link}}, but at least we can see it. + + +\section{\LaTeX\ listings} -\section{Links} +Typing inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is showing use cases such as the following one. -{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very large link}}, but at least you can see it. +\begin{tdoclatex} +Formatted \LaTeX\ code is great: $E = m c^2$ or $pi \neq \frac{3}{14}$. +\end{tdoclatex} + + +There's also a less invasive side-by-side mode. Nice! No ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Formatted \LaTeX\ code is great: \\ +$E = m c^2$ or $\pi \neq \frac{3}{14}$. +\end{tdoclatex} -\section{Highlight, version and date} +\section{Highlighting, versioning and dating} \subsection{tdocexa, tdocrem} @@ -318,7 +494,6 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -327,20 +502,28 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -348,47 +531,68 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{New demo section...} +\tdocstartproj{A new demonstration section...} -\medskip +\begin{tdoctodo} + \item A gallery would be welcome... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{LaTeX codes} - -Typing an inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is demonstrating use cases such as the following one. - -\begin{tdoclatex} -Seeing \LaTeX\ code formatted is nice: $E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -There's also a less intrusive side-by-side mode. Nice! No ? - -\begin{tdoclatex}[sbs] -Seeing \LaTeX\ code formatted is nice: \\ -$E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -396,23 +600,34 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \begin{filecontents*}[overwrite]{gallery-showcase-draft.tex} \documentclass[theme = draft]{tutodoc} -% -- FORDOC -- % - \usepackage{multicol} +\usepackage{lastpage} + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{\thepage\kern1pt/\kern1pt\pageref*{LastPage}}% +} + \newcommand\thisstyle{draft} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] - In the flow of the text, it is always useful to be able to indicate examples and comments to supplement the main content. + In the flow of the text, it is always useful to be able to provide examples and comments to supplement the main content. } + \newcommand\myadmotext{ Depending on the context of use, it is sometimes necessary to be able to highlight content by indicating its degree of importance. } +\newcommand\myhighlightedtextnonote{ + What to say? + I don't know, but it's nice. No ? +} + \newcommand\myhighlightedtext{ - What to say + What to say\,% \footnote{ Let's not forget the footnotes... }? @@ -420,19 +635,48 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. } +\newcommand\mychgestext{ + In a change log, it is important to visualise the types of changes clearly. This makes it easier for the user to read! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} -\textsf{\Huge\bfseries The theme \texttt{"\thisstyle"}} +\textsf{\Huge\bfseries The \texttt{"\thisstyle"} theme} +\section{Liens} -\section{Links} +{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very big link}}, but at least we can see it. -{\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{A very large link}}, but at least you can see it. +\section{\LaTeX\ listings} -\section{Highlight, version and date} +Typing inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is showing use cases such as the following one. + +\begin{tdoclatex} +Formatted \LaTeX\ code is great: $E = m c^2$ or $pi \neq \frac{3}{14}$. +\end{tdoclatex} + + +There's also a less invasive side-by-side mode. Nice! No ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Formatted \LaTeX\ code is great: \\ +$E = m c^2$ or $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + + +\section{Highlighting, versioning and dating} \subsection{tdocexa, tdocrem} @@ -448,7 +692,6 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -457,20 +700,28 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -478,47 +729,68 @@ $E = m c^2$ or $\pi \neq \frac{3}{14}$. \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{New demo section...} +\tdocstartproj{A new demonstration section...} -\medskip +\begin{tdoctodo} + \item A gallery would be welcome... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{LaTeX codes} - -Typing an inline code such as \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} is useful, as is demonstrating use cases such as the following one. - -\begin{tdoclatex} -Seeing \LaTeX\ code formatted is nice: $E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -There's also a less intrusive side-by-side mode. Nice! No ? - -\begin{tdoclatex}[sbs] -Seeing \LaTeX\ code formatted is nice: \\ -$E = m c^2$ or $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -587,7 +859,7 @@ Blu, blu, blu, blu, blu, blu, blu, blu, blu, blu, blu, blu, blu... \tdocversion[red]{10.2.0-beta}[2023-12-01] Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... -\bigskip % CAUTION! This prevents overlapping. +\smallskip\bigskip % CAUTION! This prevents overlapping. \tdocversion{10.2.0-alpha} Ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, @@ -650,9 +922,9 @@ ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble... \begin{filecontents*}[overwrite]{examples-version-n-change-manual-setting.tex} -This is what it looks like without vertical movement. +This is what it looks like without vertical shift. -\paragraph{A home-made setting}% +\paragraph{A home-made setting.}% \tdocversion{1.2.3}[2024-10-29]<0pt> Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... @@ -710,7 +982,7 @@ Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... Important and harmless. \end{tdocimp} -\begin{tdocimp}[Mini title] +\begin{tdocimp}[Small title] Useful? \end{tdocimp} \end{filecontents*} @@ -721,7 +993,7 @@ Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... Something useful to tell you... \end{tdocnote} -\begin{tdocnote}[Mini title] +\begin{tdocnote}[Small title] Useful? \end{tdocnote} \end{filecontents*} @@ -732,7 +1004,7 @@ Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... Caution, caution... \end{tdoccaut} -\begin{tdoccaut}[Mini title] +\begin{tdoccaut}[Small title] Useful? \end{tdoccaut} \end{filecontents*} @@ -743,7 +1015,7 @@ Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... A tip. \end{tdoctip} -\begin{tdoctip}[Mini title] +\begin{tdoctip}[Small title] Useful? \end{tdoctip} \end{filecontents*} @@ -754,7 +1026,7 @@ Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... Avoid the dangers... \end{tdocwarn} -\begin{tdocwarn}[Mini title] +\begin{tdocwarn}[Small title] Useful? \end{tdocwarn} \end{filecontents*} @@ -765,7 +1037,7 @@ Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... An example... \end{tdocexa} -\begin{tdocexa}[Mini title] +\begin{tdocexa}[Small title] Useful? \end{tdocexa} \end{filecontents*} @@ -797,72 +1069,134 @@ VERSUS. Another? \end{tdocrem} -\begin{tdocrem}[Mini title] +\begin{tdocrem}[Small title] Useful? \end{tdocrem} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-latexshow-options.tex} -\tdoclatexshow[explain = What comes next is colorful..., - before = Rendering below., - after = Finished rendering., - col-stripe = orange, - col-text = blue!70!black] - {examples-listing-xyz.tex} +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you.tex} +\NewDocumentCommand{\helloyou}{m}{% + \IfBlankTF{#1}{% + Ah, not very chatty today! + }{% + Hello #1. + + Amazing! Actually, not at all...% + }% +} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-ABC.tex} -\begin{tdoclatex}[sbs] - $A = B + C$ -\end{tdoclatex} +\begin{filecontents*}[overwrite]{examples-listing-full-input-hello-you-hs.tex} +\tdoccodeinput{hs}{examples-listing-full-hello-you.hs} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-xyz.tex} -% Just one demo. -$x y z = 1$ +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you.hs} +main :: IO () + +main = do + putStr "Who are you? " + name <- getLine + + if name == "" + then putStrLn "Ah, not very chatty today!" + + else do + putStrLn ("Hello " ++ name ++ ".") + putStrLn "Amazing! Actually, not at all..." \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-strange.tex} -\begin{tdoclatex}[std] - [Strange... Or not!] -\end{tdoclatex} +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you-lua.tex} +\begin{tdoccode}[style = solarized-light, linenos]% + <leftrule = 22pt, colback = orange!5, colframe = red!35>% + {lua} +io.write("Who are you?") +local name = io.read() + +if name == "" then + print("Ah, not very chatty today!") + +else + print("Hello “ .. name .. ”.") + print("Amazing! Actually, not at all...") +end +\end{tdoccode} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-strange-bis.tex} -\begin{tdoclatex} - \string[Strange... Or not!] -\end{tdoclatex} +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you-perl.tex} +\begin{tdoccode}{pl} +print "Who are you? "; +my $name = <STDIN>; + +chomp($name); + +if ($name eq "") { + print "Ah, not very chatty today!"; + +} else { + print "Hello $name"; + print "Amazing! Actually, not at all..."; +} +\end{tdoccode} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-showcase-customized.tex} -\begin{tdocshowcase}[before = My beginning, - after = My end, - col-stripe = red, - col-text = orange!75!black] - Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... -\end{tdocshowcase} +\begin{filecontents*}[overwrite]{examples-listing-full-input-hello-you-tex.tex} +\tdoccodeinput[style = solarized-light, linenos]% + <leftrule = 22pt, colback = orange!5, colframe = red!35>% + {tex}{examples-listing-full-hello-you.tex} \end{filecontents*} \begin{filecontents*}[overwrite]{examples-showcase-hook.tex} +\begin{tdocshowcase}[] + [This works...] +\end{tdocshowcase} + +OR. + \begin{tdocshowcase} - \string[This works...] + \string[This also works...] \end{tdocshowcase} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-showcase-nostripe-customized.tex} -\begin{tdocshowcase}[nostripe, - before = My beginning, - after = My end, +\begin{filecontents*}[overwrite]{examples-showcase-rule.tex} +\begin{tdocshowcase}[style = rule] + Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... +\end{tdocshowcase} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-stripe-custom.tex} +\begin{tdocshowcase}[style = stripe, col-stripe = green, - col-text = purple] + col-text = purple, + before = Mon début, + after = Ma fin à moi] + Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... +\end{tdocshowcase} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-input-stripe.tex} +\tdocshowcaseinput[style = stripe, + col-stripe = red, + col-text = LightCoral]% + {examples-showcase-external.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-rule-custom.tex} +\begin{tdocshowcase}[style = rule, + col-stripe = red, + col-text = orange!75!black, + before = My beginning, + after = My end] Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... \end{tdocshowcase} \end{filecontents*} @@ -884,13 +1218,106 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-showcase-nostripe.tex} -\begin{tdocshowcase}[nostripe] +\begin{filecontents*}[overwrite]{examples-showcase-stripe.tex} +\begin{tdocshowcase}[style = stripe] Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... \end{tdocshowcase} \end{filecontents*} +\begin{filecontents*}[overwrite]{examples-showcase-input-default.tex} +\tdocshowcaseinput{examples-showcase-external.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-input-rule.tex} +\tdocshowcaseinput[style = rule]{examples-showcase-external.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexshow-options.tex} +\tdoclatexshow[style = stripe, + col-stripe = orange, + col-text = blue!70!black, + before = Rendering hereafter., + explain = What comes next is coloured..., + after = Finished rendering.,] + {examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-ABC.tex} +\begin{tdoclatex}<\tdoctcb{sbs}> +$A = B + C$ +\end{tdoclatex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-xyz.tex} +% Just one demo. +$x y z = 1$ +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-std.tex} +\tdoclatexinput{examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-strange.tex} +\begin{tdoclatex}[] +[Strange... Or not!] +\end{tdoclatex} +OR. +\begin{tdoclatex}<> +<Strange... Or not!> +\end{tdoclatex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-ABC-custom.tex} +\begin{tdoclatex}% + [linenos, style = igor, showspaces]% + <\tdoctcb{sbs}, + attach boxed title to top left = {yshift = -9pt}, + fonttitle = \bfseries, + title = Local modifications, + top = 10pt> +% Sometimes useful, but don't overuse it! +$A = B + C$ +% End of this demonstration. +\end{tdoclatex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-sbs.tex} +\tdoclatexinput<\tdoctcb{sbs}>{examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-code.tex} +\tdoclatexinput<\tdoctcb{code}>{examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-perso.tex} +\tdoclatexinput[style = igor, showspaces]% + <colframe = purple, colback = red!5>% + {examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-strange-bis.tex} +\begin{tdoclatex} +\string[Strange... Or not!] +\end{tdoclatex} +OR. +\begin{tdoclatex} +\string<Strange... Or not!> +\end{tdoclatex} +\end{filecontents*} + + % ======================== % % == SOURCE FOR THE DOC == % % ======================== % @@ -909,6 +1336,10 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \usepackage{tasks} \usepackage{pdfpages} +\includepdfset{ + pages=-, + fitpaper=true +} \setlength{\parindent}{0em} @@ -923,72 +1354,14 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \newcommand\git{\trademark{git}} \newcommand\pdf{\trademark{PDF}} +\newcommand\brainfuck{\trademark{Brainfuck}} +\newcommand\lua{\trademark{Lua}} +\newcommand\perl{\trademark{Perl}} +\newcommand\python{\trademark{Python}} -% --------------- % -% -- IMPORTANT -- % -% --------------- % -% -% See the French version of this file for the text to be used -% for languages other than English. - - -% --------------- % -% -- IMPORTANT -- % -% --------------- % -% -% See the French version of this file for the text to be used -% for languages other than English. +\newcommand\pygmentsREF{\href{https://pygments.org/}{\trademark{Pygments}}} -% == FORDOC == % - -% Source. -% * https://tex.stackexchange.com/a/604698/6880 - -\NewDocumentCommand{ \tdocbasicinputDOC }{ m }{% - Consider the following code. - - \tdoclatexinput[code]{#1} - - This will produce the following. - - \input{#1} -} - - -% == FORDOC == % - -% Source. -% * https://tex.stackexchange.com/a/604698/6880 - -\NewDocumentCommand{ \tdocextrarulerDOC }{ m }{% - \par - { - \centering - \color{green!50!black}% - \leavevmode - \kern.075\linewidth - \leaders\hrule height3.25pt\hfill\kern0pt - \footnotesize\itshape\bfseries\space\ignorespaces#1\unskip\space - \leaders\hrule height3.25pt\hfill\kern0pt - \kern.075\linewidth - \par - } -} - -\NewDocumentEnvironment{ tdocshowcaseDOC } - { O{ Start of the rendering in this doc. } - O{ End of rendering in this doc. } }{ - \tdocextrarulerDOC{#1} - \nopagebreak\smallskip\nopagebreak -}{ - \nopagebreak\smallskip\nopagebreak - \tdocextrarulerDOC{#2} -} - - -% == FORDOC == % - \NewDocumentCommand{\mailsubject}{m}% <-- Translate me! {subject \tdocquote{\texttt{tutodoc - CONTRIB - #1}}} @@ -1059,7 +1432,7 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \title{The \texttt{tutodoc} class \\ Tutorial-style documentation} \author{Christophe, BAL} -\date{Dec 4, 2024 - Version 1.7.0} +\date{Dec 18, 2024 - Version 1.7.1} \maketitle @@ -1070,9 +1443,9 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... } is used by its author to semantically produce documentation of \LaTeX\ packages and classes in a tutorial style\,% \footnote{ - The idea is to produce an efficient \texttt{PDF} file that can be browsed for one-off needs. This is generally what is expected of coding documentation. + The idea is to produce an efficient \texttt{PDF} file that can be browsed for one-off needs. This is generally what is expected for a coding documentation. } - using a sober rendering for reading on screen. + with a sober rendering for reading on screen. \smallskip @@ -1092,66 +1465,52 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \small -\begin{tdocbreak} - \item Format: the \tdoccls{scrartcl} class replaces the venerable \tdoccls{article}. This implies better placement of the margin notes with the options retained for loading \tdoccls{scrartcl}. - - \item \LaTeX\ code: the macro \tdocmacro{tdocinlatex} has been renamed \tdocmacro{tdoclatexin}. +\begin{tdocfix} + \item Documentation: references to tools to indicate changes have been incorrectly written as characteristics of highlighted colored content. +\end{tdocfix} - \item Color key names will be hyphenated where necessary: this implies the following changes. - % - \begin{enumerate} - \item Admonitions: the \tdoclatexin{colchges} option of the environments has been renamed \tdoclatexin{col-chges}. - \item Showcases: for the environment \tdocenv*{tdocshowcase} and the macro \tdocmacro{tdocshowcaseinput}, the \tdoclatexin{colstripe} and \tdoclatexin{coltext} options have been renamed \tdoclatexin{col-stripe} and \tdoclatexin{col-text}\,. - \end{enumerate} +\begin{tdocbreak} + \item The \tdocmacro{tdocenv} macro and its starred version no longer offer an option. + + \item \LaTeX\ showcases: the default layout is more sober, and there are options for having just the rulers, or the colored stripe. See just after. \end{tdocbreak} -\begin{tdocfix} - \item Admonitions: for the \tdocmacro{newkeytheorem} used with the \tdoclatexin{draft} theme, \tdoclatexin{postheadhook = \leavevmode} has been added (this is necessary because the content can naturally be of the list type). -\end{tdocfix} - - \begin{tdocnew} - \item Documentation: addition of a section listing dependencies. - - \item Class options. + \item Formatting of computer codes in addition to those specifically in \LaTeX. % \begin{enumerate} - \item Options not specific to \thisproj\ are passed on to the class in charge of general formatting. - - \item The \tdoccls{scrartcl} options \tdoclatexin{fontsize} and \tdoclatexin{DIV} can't be used because their values are fixed by \thisproj. - \end{enumerate} + \item Creation of \tdocenv{tdoccode} and \tdocmacro{tdoccodein}. - \item The macro \tdocmacro{tdocinEN} respects the English linguistic rules. + \item For macros for inline code, and environments for blocks of code, \tdocpack{minted} options are indicated inside square brackets in the traditional way: \tdoclatexin{[minted options]}\,. - \item Admonitions. - % - \begin{enumerate} - \item A new environment \tdocenv{tdoctodo} has been added. + \item For code block environments, \tdocpack{tcolorbox} options are indicated inside rafters: \tdoclatexin{<tcolorbox options>}\,. - \item Each environment has a new option \tdoclatexin{col} for the color of the content indicating changes. + \item The new macro \tdocmacro{tdoctcb} allows to use shortcuts for regularly used \tdocpack{tcolorbox} styles. \end{enumerate} + + \item Documentation: a new section presents tools for formatting computer codes other than those in \LaTeX. \end{tdocnew} \begin{tdocupdate} - \item \tdoclatexin{draft} theme and changes: the environments for the kind of changes stop to use icons. + \item Sub-sub-sections are numbered in lower case. - \item Documentation: the theme gallery uses a better fake example. -\end{tdocupdate} + \item Themes. + % + \begin{enumerate} + \item Less space consumed. + \item Shadows have better coloring. + \item For all themes except the \tdoclatexin{draft} one, the radius of the arcs of the corners of the frames has changed from \tdoclatexin{.75mm} to \tdoclatexin{.2pt},. -\begin{tdoctech} - \item Simplified organisation of configuration files in the final project. - % - \begin{enumerate} - \item \texttt{CSS}-like: use of one file per theme with a name like \texttt{tutodoc-bw.css.cls}\,. + \item Use case in \LaTeX: with the theme \tdoclatexin{color}, the background color changes from \tdoclatexin[bgcolor = yellow!4]{yellow!4} to \tdoclatexin{gray!5}. - \item Locale: use of names like \texttt{tutodoc-en.loc.cls}\,. + \item Latest changes: with the \tdoclatexin{dark} theme, the \tdoclatexin{[Init]} text produced by the \tdocmacro{tdocstartproj} macro uses the same font as the environment titles to indicate changes. \end{enumerate} -\end{tdoctech} +\end{tdocupdate} } @@ -1200,7 +1559,7 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \end{tasks} -\section{General formatting imposed} +\section{General settings} \subsection{Font size and page geometry} @@ -1208,7 +1567,7 @@ The \tdoccls{scrartcl} class is loaded via the \tdoclatexin{fontsize = 10pt} opt \begin{tdocwarn} - The macros for dating and versioning presented in the \ref{tutodoc-changes} section require fixed settings for page geometry and font size. + The macros for dating and versioning presented in the section \ref{tutodoc-changes} on page \pageref{tutodoc-changes} require fixed settings for page geometry and font size. \end{tdocwarn} @@ -1219,7 +1578,7 @@ The selected settings are directly visible in this documentation. \subsection{Dynamic links} -The \tdocpack{hyperref} package is imported, if it hasn't already been, and the settings chosen are just for the colors of links relating to citations, files, internal links, and finally \verb#url# (this color will depend on the theme chosen). +The \tdocpack{hyperref} package is imported, if it hasn't already been, and the settings chosen are just for the colors of links relating to citations, files, internal links, and finally \verb#url# (this colors will depend on the theme chosen). \section{What language is used by the \thisproj\ class?} @@ -1230,13 +1589,11 @@ On the other hand, the \thisproj\ class identifies \tdoclatexin|en| as the main Technically, we use \tdoclatexin|\BCPdata{language}| which returns a language in short format. } As this language is included in the list of languages taken into account, see below, the \thisproj\ class will produce the expected effects. - \begin{tasks}[label=\small\textbullet](3) \task \tdoclatexin|en| : English. \task \tdoclatexin|es| : Spanish. \task \tdoclatexin|fr| : French. \end{tasks} - \begin{tdocnote} @@ -1264,7 +1621,7 @@ Cool and top stand for \tdocinEN*{cool} and \tdocinEN{top}. \end{tdoclatex} -The macro \tdocmacro{tdocinEN} and its starred version are based on \tdocmacro{tdocquote} : for example, \tdocquote{semantic} is obtained via \tdoclatexin|tdocquote{semantic}| . +The macro \tdocmacro{tdocinEN} and its starred version are based on \tdocmacro{tdocquote} : for example, \tdocquote{semantic} is obtained via \tdoclatexin|tdocquote{semantic}|\,. \begin{tdocnote} @@ -1281,7 +1638,7 @@ To modify the general layout, there is the \thisproj\ class option \tdoclatexin{ a black-and-white theme with some shades of grey. \task \tdoclatexin{color}: - a coloured theme : this is the default value. + a colored theme, this is the default value. \task \tdoclatexin{dark}: a dark theme ideal for resting the eyes. @@ -1318,10 +1675,10 @@ To modify the general layout, there is the \thisproj\ class option \tdoclatexin{ \addcontentsline{toc}{section}{Appendix -- Theme gallery}% \egroup -\bigskip +\bigskip\bigskip \begin{tdocnote} - Each example is exactly a two pages long \pdf\ and has been inserted directly into this document (so don't be surprised by the page numbers). + Each example is a \pdf\ directly inserted into this document (so don't be surprised by the page numbers). \end{tdocnote} \newpage @@ -1336,25 +1693,13 @@ To modify the general layout, there is the \thisproj\ class option \tdoclatexin{ \immediate\write18{SOURCE_DATE_EPOCH=0 FORCE_SOURCE_DATE=1 latexmk -shell-escape -pdflatex gallery-showcase-draft} % The gallery starts here... -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-bw} +\includepdf{gallery-showcase-bw} -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-color} +\includepdf{gallery-showcase-color} -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-dark} +\includepdf{gallery-showcase-dark} -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-draft} +\includepdf{gallery-showcase-draft} } @@ -1365,7 +1710,7 @@ To modify the general layout, there is the \thisproj\ class option \tdoclatexin{ \section{Highlighting content} \begin{tdocnote} - The environments presented in this section + The environments presented in this section\,% \footnote{ The formatting comes from the \tdocpack{keytheorems} package. } @@ -1377,35 +1722,24 @@ To modify the general layout, there is the \thisproj\ class option \tdoclatexin{ \subsection{Content in the reading flow} -% ------------------ % - - \begin{tdocimp} - All the environments presented in this section share the same counter, which will be reset to zero as soon as a section with a level at least equal to a \tdoclatexin|\section| is opened. + All the environments presented in this section share the same counter, which will be reset to zero as soon \tdoclatexin|\section| is used. \end{tdocimp} -% ------------------ % - - \subsubsection{Examples} -Numbered examples, if required, are indicated via \tdocenv{tdocexa}, which offers an optional argument for adding a mini-title. +Numbered examples are indicated via \tdocenv{tdocexa}, which offers an optional argument for adding a small title. Here are two possible uses. -\tdoclatexinput[sbs]{examples-admonitions-exa.tex} - - - -% ------------------ % +\tdoclatexinput<\tdoctcb{sbs}>{examples-admonitions-exa.tex} \begin{tdoctip} It can sometimes be useful to return to the line at the start of the content. The code below shows how to proceed (this trick also applies to the \verb#tdocrem# environment presented next). Note in passing that the numbering follows that of the previous example as desired. \end{tdoctip} -\tdoclatexinput[sbs]{examples-admonitions-exa-leavevmode.tex} - +\tdoclatexinput<\tdoctcb{sbs}>{examples-admonitions-exa-leavevmode.tex} % \subsection{Content in the reading flow} @@ -1414,8 +1748,7 @@ Here are two possible uses. Everything happens via \tdocenv{tdocrem}, which works identically to the \tdocenv*{tdocexa} environment, as shown in the following example. -\tdoclatexinput[sbs]{examples-admonitions-rmk.tex} - +\tdoclatexinput<\tdoctcb{sbs}>{examples-admonitions-rmk.tex} \subsection{Flashy content} @@ -1423,7 +1756,7 @@ Everything happens via \tdocenv{tdocrem}, which works identically to the \tdocen \begin{tdocnote} The formatting proposed here is the default one, but others are possible by changing the theme: see the gallery of use cases in the appendix page \pageref{tutodoc-theme-gallery}. - As for the icons, they are obtained via the \tdocpack{fontawesome5} package, and the \tdocmacro{tdocicon} macro manages the spacing in relation to the text. + As for the icons, they are obtained via the \tdocpack{fontawesome5} package, and the \tdocmacro{tdocicon} macro which manages the spacing relatively to the text.% \footnote{ For example, \tdoclatexin|\fbox{tdocicon{faBed}{Fatigued}}| @@ -1437,18 +1770,16 @@ Everything happens via \tdocenv{tdocrem}, which works identically to the \tdocen The \tdocenv*{tdoctip} environment is used to give tips. Here's how to use it. -\tdoclatexinput[sbs]{examples-admonitions-tip.tex} - +\tdoclatexinput<\tdoctcb{sbs}, bottom = 3pt, top = 3pt>{examples-admonitions-tip.tex} \smallskip \begin{tdoctip} - Sometimes, highlighted content can be reduced to a list. In this case, the formatting can be improved as follows where we use the \tdoclatexin{wide} option from the \tdocpack{enumitem} package. - - \tdoclatexinput[sbs]{examples-admonitions-leavevmode-items.tex} + Sometimes, highlighted content can be reduced to a list. In this case, the formatting can be improved as follows where we use the \tdoclatexin{wide} option from the \tdocpack{enumitem} package imported by this documentation. + \tdoclatexinput<\tdoctcb{sbs}, bottom = 3pt, top = 3pt>{examples-admonitions-leavevmode-items.tex} \end{tdoctip} @@ -1473,8 +1804,7 @@ The \tdocenv*{tdoctip} environment is used to give tips. Here's how to use it. \desc - \tdoclatexinput[sbs]{examples-admonitions-\filename.tex} - + \tdoclatexinput<\tdoctcb{sbs}, bottom = 3pt, top = 3pt>{examples-admonitions-\filename.tex} } @@ -1483,40 +1813,27 @@ The \tdocenv*{tdoctip} environment is used to give tips. Here's how to use it. Here's what you can type semantically. -\begin{tdoclatex}[sbs] -\tdoccls{myclass} is for... \\ -\tdocpack{mypackage} is for... \\ -\tdocmacro{onemacro} is for... \\ -\tdocenv{env} produces... \\ -\tdocenv[{[opt1]<opt2>}]{env} \\ -Just \tdocenv*{env}... \\ -Finally \tdocenv*[{[opt1]<opt2>}]{env}... - % For copy and paste. +\begin{tdoclatex}<\tdoctcb{sbs}> +\tdoccls{myclass} is for... \\ +\tdocpack{mypackage} is for... \\ +\tdocmacro{onemacro} is for... \\ +\tdocenv{env} produces... \\ +Just \tdocenv*{env}... \end{tdoclatex} \begin{tdocrem} - Unlike \tdocmacro{tdoclatexin}, \tdocmacro{tdocenv} and \tdocmacro{tdocenv*} macros don't color the text they produce. - In addition, \tdoclatexin{\tdocenv{monenv}} produces \tdocenv{monenv} with spaces to allow line breaks if required. + Unlike \tdocmacro{tdoclatexin}, the \tdocmacro{tdocmacro}, \tdocmacro{tdocenv} and \tdocmacro{tdocenv*} macros don't color the text they produce. + In addition, \tdoclatexin{\tdocenv{monenv}} produces \tdocenv{monenv} with breakable spaces to allow line breaks if required. \end{tdocrem} -\begin{tdocwarn} - The optional argument of the \tdocmacro{tdocenv} macro is copied and pasted - \footnote{ - Remember that almost anything is possible from now on. - } - when rendering. This may sometimes require the use of protective braces, as in the example above. -\end{tdocwarn} - - - \section{Origin of a prefix or suffix} To explain the names chosen, there is nothing like indicating and explaining the short prefixes and suffixes used. This is easily done as follows. -\begin{tdoclatex}[sbs] +\begin{tdoclatex}<\tdoctcb{sbs}> \tdocpre{sup} relates to... \\ \tdocprewhy{sup.erbe} means... \\ \emph{\tdocprewhy{sup.er} for...} @@ -1531,250 +1848,237 @@ To explain the names chosen, there is nothing like indicating and explaining the \section{A real-life rendering} \label{tutodoc-showcase} -It is sometimes useful to render code directly in the documentation. This type of rendering must be dissociable from the explanatory text. +It is sometimes useful to render code directly in the documentation. This requires the rendering to be dissociable from the explanatory text. -\subsection{With a colored stripe} +\subsection{A minimalist rendering by default} -\begin{tdocexa} [With default text] - It can be useful to show a real rendering directly in a document. +\begin{tdocexa} + It can be useful to show a real rendering directly in a document.% \footnote{ Typically when making a demo. } - This is done via \tdocenv{tdocshowcase} as follows. - - \tdoclatexinput[code]{examples-showcase-default.tex} - + This is typed via the environment \tdocenv*{tdocshowcase} as follows. - The result is the following rendering. - \footnote{ - Behind the scenes, the strip is created effortlessly using the \tdocpack{clrstrip} package. - } + \tdoclatexshow[explain = {This results in the following rendering, which is a combination of low vertical spacing and simple import.}]{examples-showcase-default.tex} \end{tdocexa} -\input{examples-showcase-default.tex} - - - -\smallskip \begin{tdocrem} - See the section \ref{tutodoc-latexshow} on page \pageref{tutodoc-latexshow} to easily obtain code followed by its actual rendering as in the previous example. + The section \ref{tutodoc-listing-latexshow} on page \pageref{tutodoc-listing-latexshow} explains how to obtain, via the macro \tdocmacro{tdoclatexshow}, a code followed by its actual rendering as in the previous example. \end{tdocrem} -\begin{tdocnote} - The explanatory texts adapt to the language detected by \thisproj. -\end{tdocnote} +\begin{tdocwarn} + With the default settings, if the code to be formatted begins with an opening bracket, we must use one of the following tricks. + \tdoclatexshow[explain = {This will produce the following.}]{examples-showcase-hook.tex} +\end{tdocwarn} -% ------------------ % +\subsection{With framing lines} -\begin{tdocexa}[Change the colors and/or the texts] - \leavevmode +To make the formatted \LaTeX\ code more visible, you can use the \tdoclatexin{rule} style, as in the following examples. - \tdoclatexinput[code]{examples-showcase-customized.tex} +\begin{tdocexa} + The option \tdoclatexin{style = rule} provides the following where the automatically added texts will adapt to the language found by \thisproj. - This will produce the following. + \input{examples-showcase-rule.tex} +\end{tdocexa} - \medskip - \input{examples-showcase-customized.tex} +\begin{tdocexa}[Editable text and colours] + You can easily obtain the following horror. + + \input{examples-showcase-rule-custom.tex} + Here's the code that was used.% + \footnote{ + The next section will justify the a priori strange choice of \tdoclatexin{col-stripe} instead of \tdoclatexin{col-rule}\,. + } + + \tdoclatexinput<\tdoctcb{code}>{examples-showcase-rule-custom.tex} \end{tdocexa} \begin{tdocnote} - In the previous example, the text uses the proposed darkened orange. On the other hand, red is used as a base to obtain the colors used for the strip: the transformations used depend on the theme chosen.% + In the previous example, the text uses the proposed darkened orange. However, the red is used as a base to obtain the colors used for the framing lines: the transformations used depend on the theme chosen.% \footnote{ For example, the themes \tdoclatexin{bw} and \tdoclatexin{draft} ignore the key \tdoclatexin{col-stripe}! } - % - You should also be aware that behind the scenes, the macro \tdocmacro{tdocruler} is used. + You should also be aware that behind the scenes, the macro \tdocmacro{tdocruler} is used, it works as follows. - \begin{tdoclatex}[std] - \tdocruler[red]{A decorated pseudo-title} + \begin{tdoclatex}<\tdoctcb{std}> +\tdocruler[red]{A decorated pseudo-title} \end{tdoclatex} \end{tdocnote} -% ------------------ % - - -\begin{tdocwarn} - With the default settings, if the code to be formatted begins with an opening bracket, use \tdocmacro{string} as in the following example. - - \tdoclatexinput[code]{examples-showcase-hook.tex} - +\subsection{With colored stripe} - This will produce the following. -\end{tdocwarn} - - -\input{examples-showcase-hook.tex} - - - -\subsection{Without a coloured strip} - -The rendering of \tdocenv{tdocshowcase} with a coloured strip may not be suitable, or sometimes may not be acceptable despite the work done by \tdocpack{clrstrip}. -It is possible not to use a coloured strip, as we will see straight away. +There are situations where you need to be able to clearly identify an example of formatted \LaTeX\ code. This can be done, as the following examples show.% +\footnote{ + Behind the scenes, the strips are created effortlessly using the \tdocpack{clrstrip} package. +} \begin{tdocexa} - The use of \tdocenv[{[nostripe]}]{tdocshowcase} indicate to not use \tdocpack{clrstrip}. - Here is an example. - - \tdoclatexinput[code]{examples-showcase-nostripe.tex} - - - This will produce the following. - - \medskip - - \input{examples-showcase-nostripe.tex} + The \tdoclatexin{style = stripe} option provides the following. + \input{examples-showcase-stripe.tex} \end{tdocexa} -% ------------------ % - - -\begin{tdocexa}[Change the colors and/or the texts] - \leavevmode - - \tdoclatexinput[code]{examples-showcase-nostripe-customized.tex} - - - This will produce the following horror. - - \medskip +\begin{tdocexa}[Editable text and colors] + You can easily produce a beautiful horror like the one below. - \input{examples-showcase-nostripe-customized.tex} + \input{examples-showcase-stripe-custom.tex} + + Here's the code that was used.% + \footnote{ + Now we understand why we chose \tdoclatexin{col-stripe} instead of \tdoclatexin{col-rule}\,. + } + \tdoclatexinput<\tdoctcb{code}>{examples-showcase-stripe-custom.tex} \end{tdocexa} \subsection{By importing the \LaTeX\ code} -To obtain renderings by importing the code from an external file, simply use the \tdocmacro{tdocshowcaseinput} macro whose option uses the syntax of that of \tdocenv{tdocshowcase} and the mandatory argument corresponds to the path of the file. - - -\begin{tdocexa} - The following was obtained via \tdoclatexin+\tdocshowcaseinput{external.tex}+. - - \medskip +To obtain renderings by importing the code from an external file, instead of typing it, simply use the macro \tdocmacro{tdocshowcaseinput} whose option uses the same syntax as that of the environment \tdocenv*{tdocshowcase}, and the mandatory argument corresponds to the path of the file. Here are some examples of use. - \tdocshowcaseinput{examples-showcase-external.tex} +\foreach \exatitle/\style in { + {Standard use}/% <-- Translate me! + {default}, + {With framing lines}/% <-- Translate me! + {rule}, + {A colored stripe}/% <-- Translate me! + {stripe}% +}{ + \begin{tdocexa}[\exatitle] + \leavevmode + \tdoclatexinput<\tdoctcb{code}>{examples-showcase-input-\style.tex} - \medskip - - As for \tdoclatexin+\tdocshowcaseinput[col-stripe = red, col-text = orange!75!black]{external.tex}+\,, this will produce the color change shown below. - - \medskip + This gives: - \tdocshowcaseinput[col-stripe = red, col-text = orange!75!black]{examples-showcase-external.tex} + \smallskip -\end{tdocexa} + \input{examples-showcase-input-\style.tex} + \end{tdocexa} +} \section{Use cases in \LaTeX} +\label{tutodoc-listing-latex} -Documenting a package or class is best done through use cases showing both the code and the corresponding result. +Documenting a package, or class, is best done through use cases showing both the code and the corresponding result.% \footnote{ - Code is formatted using the \tdocpack{minted} package. + Code is formatted using the \tdocpack{minted} and \tdocpack{tcolorbox} packages. } -%\begin{tdoccaut} -% Version 3 of \tdocpack{minted} cannot be used at the moment, as it contains bugs: see \url{https://github.com/gpoore/minted/issues/401}. We therefore force the use of version 2 of minted. -% -%\end{tdoccaut} +\subsection{\tdocquote{Inline} codes} +\label{tutodoc-listing-latex-inline} +\begin{tdocexa}[Standard use] + The \tdocmacro{tdoclatexin} macro\,% + \footnote{ + The name of the macro \tdocmacro{tdoclatexin} comes from \tdocquote{\tdocprewhy{in.line} \LaTeX}\,. + } + can be used to type code in line in a similar way to \tdocmacro{verb}, or as a standard macro (see the handling of braces in the latter case below). + Here are some examples of use.% + \footnote{ + A background color is deliberately used to subtly highlight the \tdoclatexin{\LaTeX} codes. + } -\subsection{\tdocquote{Inline} codes} -\label{tutodoc-listing-inline} + \begin{tdoclatex}<\tdoctcb{sbs}> +1: \tdoclatexin|$a^b = c$| \\ +2: \tdoclatexin+\tdoclatexin|$a^b = c$|+ \\ +3: \tdoclatexin{\tdoclatexin{$a^b = c$}} + \end{tdoclatex} +\end{tdocexa} -The \tdocmacro{tdoclatexin} macro -\footnote{ - The name of the macro \tdocmacro{tdoclatexin} comes from \tdocquote{\tdocprewhy{in.line} \LaTeX}. -} -can be used to type inline code in a similar way to \tdocmacro{verb} or like a standard macro (see brace management in the last case below). -Here are some examples. +\begin{tdocexa}[Possible options] + As the \tdocmacro{tdoclatexin} macro is based on \tdocpack{minted}, you can use all the options taken into account by \tdocpack{minted}. + Here are some examples. -\begin{tdoclatex}[sbs] - 1: \tdoclatexin|$a^b = c$| \\ - 2: \tdoclatexin+\tdoclatexin|$a^b = c$|+ \\ - 3: \tdoclatexin{\tdoclatexin{$a^b = c$}} -\end{tdoclatex} + \begin{tdoclatex}<\tdoctcb{sbs}> +1: \tdoclatexin[style = bw]{$a^b = c$} \\ +2: \tdoclatexin[style = igor, + showspaces]{$a^b = c$} + \end{tdoclatex} +\end{tdocexa} \begin{tdocnote} - The \tdocmacro{tdoclatexin} macro can be used in a footnote: see below. + The \tdocmacro{tdoclatexin} macro can be used in a footnote as shown below.% \footnote{ - \tdoclatexin+$minted = TOP$+ has been typed \tdoclatexin|\tdoclatexin+$minted = TOP$+| in this footnote... + \tdoclatexin+$minted = TOP$+ has been typed \tdoclatexin|\tdoclatexin+$minted = TOP$+| in this footnote. } - In addition, a background color is deliberately used to subtly highlight the codes \tdoclatexin#\LaTeX#\,. \end{tdocnote} -% ------------------ % - - \subsection{Directly typed codes} \begin{tdocexa}[Side by side] - Using \tdocenv[{[sbs]}]{tdoclatex}, we can display a code and its rendering side by side. - \tdocbasicinputDOC{examples-listing-ABC.tex} + Displaying a code and its rendering side by side is done as follows where the macro \tdocmacro{tdoctcb} allows you to just type \tdoclatexin{tdoctcb{sbs}} instead of \tdoclatexin{listing side text} (\tdoclatexin#sbs# is for \tdocquote{\tdocprewhy{s.ide} \tdocprewhy{b.y} \tdocprewhy{s.ide}}, while \tdoclatexin#tcb# is the standard abbreviation for \texttt{tcolorbox}). Note the use of rafters, not square brackets (more on this later). + \tdoclatexshow{examples-listing-latex-ABC.tex} \end{tdocexa} -% ------------------ % - - \begin{tdocexa}[Following] - \tdocenv{tdoclatex} produces the following result, which corresponds to the default option \tdoclatexin#std#\,. + \tdocenv{tdoclatex} produces the following result (this default setting is also obtained by using \tdoclatexin#\tdoctcb{std}#).% \footnote{ \tdoclatexin{std} refers to the \tdocquote{standard} behaviour of \tdocpack{tcolorbox} in relation to the \tdocpack{minted} library. } \begin{tdoclatex} - $A = B + C$ +$A = B + C$ \end{tdoclatex} \end{tdocexa} -% ------------------ % - - \begin{tdocexa}[Just the code] - Via \tdocenv[{[code]}]{tdoclatex}, we'll just get the code as shown below. + Via \tdoclatexin#\tdoctcb{code}#, we'll just get the code as below. - \begin{tdoclatex}[code] - $A = B + C$ + \begin{tdoclatex}<\tdoctcb{code}> +$A = B + C$ \end{tdoclatex} \end{tdocexa} -% ------------------ % +\begin{tdocexa}[Customise] + The \tdocenv*{tdoclatex} environment accepts two types of optional argument. + % + \begin{enumerate} + \item Between classic square brackets, you can use any option taken into account by \tdocpack{minted}. + \item Between rafters, you can use any option managed by the environments obtained via \tdocpack{tcolorbox}. + \end{enumerate} -\begin{tdocwarn} - With default formatting, if the code begins with an opening bracket, the default option must be explicitly indicated. - \tdocbasicinputDOC{examples-listing-strange.tex} + For example, the following modifications can be made if required.% + \footnote{ + This documentation uses the options between rafters to obtain correct rendering of code producing shaded frames: see the section \ref{tutodoc-admonitions} on page \pageref{tutodoc-admonitions}. + } + + \tdoclatexshow{examples-listing-latex-ABC-custom.tex} +\end{tdocexa} +\medskip - \smallskip +\begin{tdocwarn} + To obtain the default formatting for a code beginning with a bracket or a rafter, you'll need to do a bit of fiddling, as shown below. + \tdoclatexshow{examples-listing-latex-strange.tex} - Another method is to use the \tdocmacro{string} primitive. - \tdocbasicinputDOC{examples-listing-strange-bis.tex} + \smallskip + Another method is to use the \tdocmacro{string} primitive, as shown below. + \tdoclatexshow{examples-listing-latex-strange-bis.tex} \end{tdocwarn} @@ -1782,129 +2086,167 @@ Here are some examples. For the following codes, consider a file with the relative path \verb+examples-listing-xyz.tex+, and with the following contents. -\tdoclatexinput[code]{examples-listing-xyz.tex} - +\tdoclatexinput<\tdoctcb{code}>{examples-listing-latex-xyz.tex} \medskip -The \tdocmacro{tdoclatexinput} macro, shown below, expects the path of a file and offers the same options as the \tdocenv*{tdoclatex} environment. - +The \tdocmacro{tdoclatexinput} macro, shown below, expects the path of a file and offers the same system of options between square brackets, or rafters, as the environment \tdocenv*{tdoclatex}. + +\foreach \title/\extra/\fname in {% + {Side by side}/% + {}/% + sbs, + {Following}/% + {, which also corresponds to the option \tdoclatexin{\tdoctcb{std}}\,}/% + std,% + {Only the code}/% + {}/% + code,% + {Customise}/% + {}/% + perso% +}{ + \begin{tdocexa}[\title] + \leavevmode + \tdoclatexshow[explain=This produces the following formatting\extra.]{examples-listing-latex-latexinput-option-\fname.tex} + \end{tdocexa} +} -% ------------------ % -\begin{tdocexa}[Side by side] - \leavevmode +\subsection{Imported codes put into practice} +\label{tutodoc-listing-latexshow} - \begin{tdoclatex}[code] -\tdoclatexinput[sbs]{examples-listing-xyz.tex} +\begin{tdocnote} + The default texts take into account the language detected by \thisproj. +\end{tdocnote} - \end{tdoclatex} - This produces the following layout. +\begin{tdocexa}[Showcase] + The following comes from \tdoclatexin+\tdoclatexshow{examples-listing-xyz.tex}+. - \tdoclatexinput[sbs]{examples-listing-xyz.tex} + \smallskip + \tdoclatexshow{examples-listing-latex-xyz.tex} \end{tdocexa} -% ------------------ % - - -\begin{tdocexa}[Following] - \leavevmode - - \begin{tdoclatex}[code] -\tdoclatexinput{examples-listing-xyz.tex} - - \end{tdoclatex} - - This produces the following formatting where the default option is \tdoclatexin#std#. +\begin{tdocexa}[Changing the explanatory text] + Using the key \tdoclatexin|explain|, you can use a custom text. Thus, \tdoclatexin|\tdoclatexshow[explain = Here is the rendering.]{examples-listing-xyz.tex}| will give the following. - \tdoclatexinput{examples-listing-xyz.tex} + \smallskip + \tdoclatexshow[explain = Here is the rendering.]{examples-listing-latex-xyz.tex} \end{tdocexa} -% ------------------ % - +\begin{tdocexa}[The options available] + In addition to the explanatory text, it is also possible to use all the options of \tdocenv*{tdocshowcase} environment, see \ref{tutodoc-showcase} on page \pageref{tutodoc-showcase}. + Here is an example to illustrate this. -\begin{tdocexa}[Just the code] - \leavevmode + \medskip - \begin{tdoclatex}[code] -\tdoclatexinput[code]{examples-listing-xyz.tex} + \tdoclatexinput<\tdoctcb{code}>{examples-listing-latex-latexshow-options.tex} - \end{tdoclatex} + \smallskip - This produces the following layout. + This will produce the following. - \tdoclatexinput[code]{examples-listing-xyz.tex} + \smallskip + \input{examples-listing-latex-latexshow-options.tex} \end{tdocexa} -% ------------------ % - +\section{Presenting computer code} -\subsection{Imported codes put into practice} -\label{tutodoc-latexshow} - -\begin{tdocexa}[Showcase] - The following comes from \tdoclatexin+\tdoclatexshow{examples-listing-xyz.tex}+. - - \medskip - - \begin{tdocshowcaseDOC} - \tdoclatexshow{examples-listing-xyz.tex} +Some packages offer functions that require to code a little in \lua.%. +\footnote{ + For mathematics, these include \tdocpack{luacas} and \tdocpack{tkz-elements}. +} +For these projects, the documentation must be able to present lines of code; this is why \thisproj\ makes it easy to do this, and much more.% +\footnote{ + As code formatting is done via the packages \tdocpack{minted} and \tdocpack{tcolorbox}, the macros and environments presented in this section allow code to be formatted in all the languages supported by \pygmentsREF, a \python\ project used behind the scenes by \tdocpack{minted}. +} - \end{tdocshowcaseDOC} -\end{tdocexa} +\begin{tdocimp} + The tools in this section can also be used to present \LaTeX code, but they should not be used for simple use cases, as the macros and environments presented next are for studying code, not just for using it: see the section \ref{tutodoc-listing-latex} on page \pageref{tutodoc-listing-latex} to use the right tools for formatting \LaTeX\ use cases. +\end{tdocimp} -\begin{tdocnote} - The default texts take into account the language detected by \thisproj. -\end{tdocnote} -% ------------------ % +\subsection{\tdocquote{Inline} codes} +The \tdocmacro{tdoccodein}\,% +\footnote{ + The name of the macro \tdocmacro{tdoccodein} comes from \tdocquote{\tdocprewhy{in.line} \tdocpre{code}}\,. +} +macro expects two arguments: the \ordinalnum{1} indicates the programming language, and the \ordinalnum{2} gives the code to be formatted. +It is possible to use an option identical to that proposed by \tdocmacro{tdoclatexin}: see the section \ref{tutodoc-listing-latex-inline} on page \pageref{tutodoc-listing-latex-inline}. +Here are some possible use cases.% +\footnote{ + A background color is used to subtly highlight the formatted codes. For example, typing \tdoclatexin{\tdoccodein{py}{funny = "ah"*3}} will produce \tdoccodein{py}{funny = "ah"*3}\,. +} -\begin{tdocexa}[Changing the explanatory text] - Using the key \tdoclatexin|explain|, you can use custom text. Thus, \tdoclatexin|tdoclatexshow[explain = Here is the rendering.]{examples-listing-xyz.tex}| will give the following. +\begin{tdoclatex} +1: \tdoccodein{py}{print("OK" if i = 0 else "KO")} \\ +2: \tdoccodein[style = bw]{py}{print("OK" if i = 0 else "KO")} \\ +3: \tdoccodein[style = igor, showspaces]% + {py}{print("OK" if i = 0 else "KO")} +\end{tdoclatex} - \medskip +\medskip - \begin{tdocshowcaseDOC} - \tdoclatexshow[explain = Here is the rendering.]{examples-listing-xyz.tex} +\begin{tdocnote} + The page \url{https://pygments.org/languages} contains a complete list of supported languages with their short names. For example, it is possible to format \brainfuck\ code like this obscure sequence \tdoccodein{bf}{++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.} which displays \tdoccodein{text}{Hello}\,. +\end{tdocnote} - \end{tdocshowcaseDOC} -\end{tdocexa} -% ------------------ % +\subsection{Codes typed directly} +Code can be typed directly into a document via \tdocenv{tdoccode} which expects an argument indicating the programming language, and any options between parenthesis and/or square brackets identical to those proposed by \tdocenv{tdoclatex}: see the section \ref{tutodoc-listing-latex} on page \pageref{tutodoc-listing-latex}.% +\footnote{ + Note that the coloring of the \LaTeX\ codes is lexically correct, but semantically wrong. +} -\begin{tdocexa}[The options available] - In addition to the explanatory text, it is also possible to use all the options of \tdocenv*{tdocshowcase} environment, see \ref{tutodoc-showcase} page \pageref{tutodoc-showcase}. - Here is an example to illustrate this. - \medskip +% Strings "..." in the source codes must also be translated. +\foreach \title/\lang in {% + {Standard feature}/% + perl,% + {One-off rendering customization}/% + lua% +}{ + \begin{tdocexa}[\title] + \leavevmode + \tdoclatexshow{examples-listing-full-hello-you-\lang} + \end{tdocexa} +} - \tdoclatexinput[code]{examples-listing-latexshow-options.tex} +\subsection{Imported codes} - \medskip +The \tdoclatexin{tdoccodeinput} macro expects the language and path of a file to be formatted, and possibly options similar to those offered by the \tdocenv*{tdoccode} environment. - This will produce the following. - \medskip +% Strings "..." in the source codes must also be translated. +\foreach \title/\lang in {% + {Standard features}/% + hs,% + {Customize rendering on occasion}/% + tex% +}{ + \begin{tdocexa}[\title] + \leavevmode + \tdoclatexinput<\tdoctcb{code}>{examples-listing-full-input-hello-you-\lang} - \begin{tdocshowcaseDOC} - \input{examples-listing-latexshow-options.tex} + This gives: - \end{tdocshowcaseDOC} -\end{tdocexa} + \input{examples-listing-full-input-hello-you-\lang} + \end{tdocexa} +} \section{Indicate changes} @@ -1917,28 +2259,20 @@ To make it easier to monitor a project, it is essential to provide a history ind \subsection{When?} \label{tutodoc-changes-when} -You can either date something, or version it, in which case the version number can be dated. +You can date and/or version something. -% ------------------ % - - -\begin{tdocexa}[Dating new products] +\begin{tdocexa}[Dating new features] The \tdocmacro{tdocdate} macro is used to indicate a date in the margin, as in the following example. \tdoclatexshow{examples-version-n-change-dating.tex} - \end{tdocexa} -% ------------------ % - - \begin{tdocexa}[Versioning new features, possibly with a date] - Associating a version number with a new feature is done using the \tdocmacro{tdocversion} macro, with the colour and date being optional arguments. + Associating a version number with a new feature is done using the \tdocmacro{tdocversion} macro, with the color and date being optional arguments. \tdoclatexshow{examples-version-n-change-versioning.tex} - \end{tdocexa} @@ -1946,15 +2280,13 @@ You can either date something, or version it, in which case the version number c The following example shows that a date and/or version must be placed just after a paragraph title, and not before it. \tdoclatexshow{examples-version-n-change-para-title.tex} - \end{tdocexa} -\begin{tdocexa}[Adjust vertical positioning] +\begin{tdocexa}[Adjust vertical shift] If required, you can modify the vertical offset used to place dates and versions in the margin, the default value being $(-8\,\mathit{pt})$. \tdoclatexshow{examples-version-n-change-manual-setting.tex} - \end{tdocexa} @@ -1968,7 +2300,7 @@ You can either date something, or version it, in which case the version number c \begin{tdoccaut} - Only the use of the digital format \tdoclatexin+YYYY-MM-DD+ is verified, + Only the use of the digital format \tdoclatexin+YYYY-MM-DD+ is verified,% \footnote{ Technically, checking the validity of a date using \LaTeX3 presents no difficulty. } @@ -1985,13 +2317,14 @@ You can either date something, or version it, in which case the version number c \begin{tdocnote} - For icons, see the note at the beginning of the section \ref{tutodoc-admonitions} page \pageref{tutodoc-admonitions}. + For icons, see the note at the beginning of the section \ref{tutodoc-admonitions} on page \pageref{tutodoc-admonitions}. \end{tdocnote} \subsubsection{Sobriety first} \foreach \exatitle/\filename in { +% Standard. {Just for the very first version}/%<-- Translate me! first, {For new features}/% <-- Translate me! @@ -2008,6 +2341,7 @@ You can either date something, or version it, in which case the version number c todo, {Technical information}/% <-- Translate me! tech, +% Customized. {Selectable themes with an icon}/% <-- Translate me! user-choice-icon, {Selectable themes without icons}/%<-- Translate me! @@ -2016,17 +2350,14 @@ You can either date something, or version it, in which case the version number c \begin{tdocexa}[\exatitle] \leavevmode - \tdoclatexinput[sbs]{examples-version-n-change-chges-\filename.tex} - + \tdoclatexinput<\tdoctcb{sbs}>{examples-version-n-change-chges-\filename.tex} \end{tdocexa} } -\subsubsection{De la couleur si besoin} - \subsubsection{Color if necessary} -It may be useful to highlight certain changes: this can only be done by modifying the content color. +It may be useful to highlight some changes: this can only be done by modifying the content color. \foreach \exatitle/\filename in { {A flashy first version}/%<-- Translate me! @@ -2037,27 +2368,25 @@ It may be useful to highlight certain changes: this can only be done by modifyin \begin{tdocexa}[\exatitle] \leavevmode - \tdoclatexinput[sbs]{examples-version-n-change-color-chges-\filename.tex} - + \tdoclatexinput<\tdoctcb{sbs}>{examples-version-n-change-color-chges-\filename.tex} \end{tdocexa} } \subsection{The what and the when} -The optional keys \tdoclatexin{col}\,, \tdoclatexin{date} and \tdoclatexin{version} allow to date and version a change of a particular type. +The optional keys \tdoclatexin{col-chges}\,, \tdoclatexin{date} and \tdoclatexin{version} allow to date and/or version a change of a particular type. Here are some examples of use. \tdoclatexshow{examples-version-n-change-what-n-when.tex} - \section{Ornament} -Let's finish this documentation with a small formatting tool that is very useful. +Let's finish this documentation with a small formatting tool that can be very useful. -\begin{tdoclatex}[sbs] +\begin{tdoclatex}<\tdoctcb{sbs}> Bla, bla, bla... \tdocsep % Practical for demarcation. @@ -2065,7 +2394,7 @@ Bla, bla, bla... This works with enumerations. \begin{itemize} - \item Underline. + \item Focus. \end{itemize} \tdocsep % Uniform behaviour. @@ -2106,9 +2435,9 @@ Ble, ble, ble... \end{figure} -The translations are roughly organized as in figure \ref{tutodoc-contrib-translate-dir} where only the folders important for the translations have been \tdocquote{opened}\,.%}. +The translations are roughly organized as in figure \ref{tutodoc-contrib-translate-dir} where just the important folders for the translations have been \tdocquote{opened}\,.% \footnote{ - This was the organization on October 5, 2024, but it's still relevant today. + This was the organization on October 5, 2024. } \textbf{A little further down, the section \ref{tutodoc-contrib-translate} explains how to add new translations}. @@ -2138,8 +2467,8 @@ The \texttt{LICENSE.txt} file is aptly named, while the \texttt{README.md} file \begin{tdocimp} The \verb#api# folder contains translations relating to the functionalities of \thisproj. - Here you'll find \verb#TXT# files for editing with a text or code editor, but not with a word processor. - The content of these files uses commented lines in English to explain what \thisproj\ will do; these lines begin with \verb#//#\,. Here's an extract from such a file, where translations are made after each \,$=$\ sign, without touching the preceding, as this initial piece is used internally by the \thisproj code. + Here you'll find \verb#TXT# files for editing with a text or code editor, but not with a document processor. + The content of these files uses commented lines in English to explain what \thisproj\ will do; these lines begin with \verb#//#\,. Here's an extract from such a file, where translations are made after each \,$=$\ sign, without touching the preceding, as this initial piece is used internally by the \thisproj\ code. \tdocsep \vspace{-10pt} @@ -2156,7 +2485,7 @@ The \texttt{LICENSE.txt} file is aptly named, while the \texttt{README.md} file \begin{tdocnote} - The \verb#doc# folder is reserved for documentation. It contains files of type \verb#TEX# that can be compiled directly for real-time validation of translations. + The \verb#doc# folder is reserved for documentation. It contains \verb#TEX# files that can be compiled directly for real-time validation of translations. \end{tdocnote} @@ -2170,22 +2499,22 @@ The \texttt{LICENSE.txt} file is aptly named, while the \texttt{README.md} file \emph{\textbf{Let's say you want to add support for Italian from files written in English.}}% \footnote{ - As mentioned above, there is no real need for the \texttt{doc} documentation folder. + As mentioned above, there is no real need for the \texttt{doc} folder. } -\paragraph{Method 1 : \git.} +\paragraph{Method 1 : use of \git.} \begin{enumerate} - \item Obtain the entire project folder via \thisrepo\,. + \item Recover the entire project folder via \thisrepo\,. Do not use the \verb#main# branch, which is used to freeze the latest stable versions of projects in the single \thismonorepo\ repository,. - \item In the \verb#tutodoc/contrib/translate# folder, create a \verb#it# copy of the \verb#en# folder, with the short name of the language documented in + \item In the \verb#tutodoc/contrib/translate# folder, create an \verb#it# copy of the \verb#en# folder, with the short name of the language documented in \href{https://en.wikipedia.org/wiki/IETF_language_tag#List_of_common_primary_language_subtags}% {the page \tdocquote{IIETF language tag}} from \texttt{Wikipedia}. - \item Once the translation is complete in the \verb#it# folder, you'll need to communicate it via \thisrepo\ using a classic \verb#git push#\,. + \item Once the translation is complete in the \verb#it# folder, share it via \thisrepo\ using a classic \verb#git push#\,. \end{enumerate} @@ -2207,15 +2536,15 @@ The \texttt{LICENSE.txt} file is aptly named, while the \texttt{README.md} file \subsection{Improving the source code} \begin{tdocimp} - If you want to participate in \thisproj\, you'll need to use the \LaTeX3 programming paradigm. + If you want to participate to \thisproj\,, you'll need to use the \LaTeX3 programming paradigm. \end{tdocimp} -Participation as a coder is made via the \thisrepo\ repository corresponding to the \verb#tutodoc# development branch. +Participation as a coder is made via the repository \thisrepo\ corresponding to the \verb#tutodoc# development branch. \begin{tdoccaut} -Do not use the \verb#main# branch, which is used to freeze the latest stable versions of projects in the single \thismonorepo\ repository. +Do not use the \verb#main# branch, which is used to freeze the latest stable versions of projects in the mono repository \thismonorepo. \end{tdoccaut} @@ -2223,6 +2552,59 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \small +\begin{tdocfix}[version = 1.7.1, date = 2024-12-18] + \item Documentation: references to tools to indicate changes have been incorrectly written as characteristics of highlighted colored content. +\end{tdocfix} + + +\begin{tdocbreak} + \item The \tdocmacro{tdocenv} macro and its starred version no longer offer an option. + + \item \LaTeX\ showcases: the default layout is more sober, and there are options for having just the rulers, or the colored stripe. See just after. +\end{tdocbreak} + + +\begin{tdocnew} + \item Formatting of computer codes in addition to those specifically in \LaTeX. + % + \begin{enumerate} + \item Creation of \tdocenv{tdoccode} and \tdocmacro{tdoccodein}. + + \item For macros for inline code, and environments for blocks of code, \tdocpack{minted} options are indicated inside square brackets in the traditional way: \tdoclatexin{[minted options]}\,. + + \item For code block environments, \tdocpack{tcolorbox} options are indicated inside rafters: \tdoclatexin{<tcolorbox options>}\,. + + \item The new macro \tdocmacro{tdoctcb} allows to use shortcuts for regularly used \tdocpack{tcolorbox} styles. + \end{enumerate} + + \item Documentation: a new section presents tools for formatting computer codes other than those in \LaTeX. +\end{tdocnew} + + +\begin{tdocupdate} + \item Sub-sub-sections are numbered in lower case. + + \item Themes. + % + \begin{enumerate} + \item Less space consumed. + + \item Shadows have better coloring. + + \item For all themes except the \tdoclatexin{draft} one, the radius of the arcs of the corners of the frames has changed from \tdoclatexin{.75mm} to \tdoclatexin{.2pt},. + + \item Use case in \LaTeX: with the theme \tdoclatexin{color}, the background color changes from \tdoclatexin[bgcolor = yellow!4]{yellow!4} to \tdoclatexin{gray!5}. + + \item Latest changes: with the \tdoclatexin{dark} theme, the \tdoclatexin{[Init]} text produced by the \tdocmacro{tdocstartproj} macro uses the same font as the environment titles to indicate changes. + \end{enumerate} +\end{tdocupdate} + +\tdocsep + + +% ------------------ % + + \begin{tdocbreak}[version = 1.7.0, date = 2024-12-04] \item Format: the \tdoccls{scrartcl} class replaces the venerable \tdoccls{article}. This implies better placement of the margin notes with the options retained for loading \tdoccls{scrartcl}. @@ -2231,7 +2613,7 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \item Color key names will be hyphenated where necessary: this implies the following changes. % \begin{enumerate} - \item Admonitions: the \tdoclatexin{colchges} option of the environments has been renamed \tdoclatexin{col-chges}. + \item Indicate the latest changes: the \tdoclatexin{colchges} option of the environments has been renamed \tdoclatexin{col-chges}. \item Showcases: for the environment \tdocenv*{tdocshowcase} and the macro \tdocmacro{tdocshowcaseinput}, the \tdoclatexin{colstripe} and \tdoclatexin{coltext} options have been renamed \tdoclatexin{col-stripe} and \tdoclatexin{col-text}\,. \end{enumerate} @@ -2256,10 +2638,10 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \item The macro \tdocmacro{tdocinEN} respects the English linguistic rules. - \item Admonitions. + \item Indicate the latest changes. % \begin{enumerate} - \item A new environment \tdocenv{tdoctodo} has been added. + \item Add the environment \tdocenv{tdoctodo}\,. \item Each environment has a new option \tdoclatexin{col} for the color of the content indicating changes. \end{enumerate} @@ -2267,7 +2649,7 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \begin{tdocupdate} - \item \tdoclatexin{draft} theme and changes: the environments for the kind of changes stop to use icons. + \item \tdoclatexin{draft} theme and changes: the environments for the latest changes stop to use icons. \item Documentation: the theme gallery uses a better fake example. \end{tdocupdate} @@ -2278,9 +2660,9 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \item Simplified organisation of configuration files in the final project. % \begin{enumerate} - \item \texttt{CSS}-like: use of one file per theme with a name like \texttt{tutodoc-bw.css.cls}\,. + \item Use of one file per theme with a name like \texttt{tutodoc-*.css.cls}\,. - \item Locale: use of names like \texttt{tutodoc-en.loc.cls}\,. + \item Locale: use of names like \texttt{tutodoc-*.loc.cls}\,. \end{enumerate} \end{tdoctech} @@ -2325,9 +2707,9 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \begin{tdocbreak}[version = 1.6.0, date = 2024-10-27] - \item The \tdocenv*{showcase} environment and its descendants: the \tdoclatexin{color} key has been renamed \tdoclatexin{col-stripe}. + \item The \tdocenv*{showcase} environment and its descendants: the \tdoclatexin{color} key has been renamed \tdoclatexin{colstripe}. - \item The macro \tdocmacro{tdoclinkcolor} has been renamed \tdoclatexin{tutodoc@link@color} for internal use. + \item The macro \tdocmacro{tdoclinkcolor} becomes the color \tdoclatexin{tutodoc@link@color} for internal use. \end{tdocbreak} @@ -2336,7 +2718,7 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \item Change log: addition of the \tdocenv*{tdoctech} environment for technical information. - \item The \tdocenv*{showcase} environment and its descendants: the \tdoclatexin{col-text} key can also be used to change the text color. + \item The \tdocenv*{showcase} environment and its descendants: the \tdoclatexin{coltext} key can also be used to change the text color. \item The new functionalities have been documented. \end{tdocnew} @@ -2351,7 +2733,7 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \begin{tdocfix} - \item The Spanish translations were not included in the previous version! Don't laugh too hard... + \item The Spanish translations were not included in the previous version! Don't laugh too loud... \end{tdocfix} \tdocsep @@ -2394,7 +2776,7 @@ Do not use the \verb#main# branch, which is used to freeze the latest stable ver \begin{tdocbreak}[version = 1.4.0, date = 2024-09-28] \item The \tdocenv*{tdoccaution} environment has been renamed \tdocenv*{tdoccaut} for simplified input. - \item Content highlighting: examples and remarks, indicated via the \tdocenv*{tdocexa} and \tdocenv*{tdocrem} environments, are always numbered using a common counter. + \item Content highlighting: examples and remarks, indicated via the \tdocenv*{tdocexa} and \tdocenv*{tdocrem} environments, are numbered using a common counter. \item The unused macro \tdocmacro{tdocxspace} has been deleted. \end{tdocbreak} diff --git a/macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf b/macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf Binary files differindex 47cee60d37..d524b60cde 100644 --- a/macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf +++ b/macros/latex/contrib/tutodoc/doc/tutodoc-fr.pdf diff --git a/macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex b/macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex index 0c55d7bfcf..6b0a09385a 100644 --- a/macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex +++ b/macros/latex/contrib/tutodoc/doc/tutodoc-fr.tex @@ -12,18 +12,37 @@ \frenchsetup{StandardItemLabels=true} \usepackage{multicol} +\usepackage{lastpage} + +\makeatletter + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{% + \thepage\kern1pt/\kern1pt\pageref*{LastPage}% + }% +} + +\makeatother + \newcommand\thisstyle{bw} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] Dans le flot du texte, il est toujours utile de pouvoir indiquer des exemples et des remarques qui viennent compléter le contenu principal. } + \newcommand\myadmotext{ Suivant le contexte d'utilisation, il est parfois nécessaire de pouvoir mettre en avant des contenus en indiquant leur degré d'importance. } +\newcommand\myhighlightedtextnonote{ + Que dire ? + Je ne sais pas, mais c'est sympathique. Non ? +} + \newcommand\myhighlightedtext{ Que dire\,% \footnote{ @@ -33,16 +52,46 @@ } +\newcommand\mychgestext{ + Dans un journal de bord, il est important de bien visualiser les types de changements. Ceci rend plus efficace la lecture côté utilisateur ! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} \textsf{\Huge\bfseries Le thème \texttt{"\thisstyle"}} - \section{Liens} {\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{Un lien très gros}}, mais au moins on le voit. + +\section{Des codes \LaTeX} + +Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. + +\begin{tdoclatex} +Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + +On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Du code \LaTeX\ mis en forme, c'est top: \\ +$E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + + \section{Mettre en avant, versionner et dater} \subsection{tdocexa, tdocrem} @@ -59,7 +108,6 @@ \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -68,20 +116,28 @@ \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -89,47 +145,68 @@ \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{Nouvelle section démonstrative...} +\tdocstartproj{Une nouvelle section démonstrative...} -\medskip +\begin{tdoctodo} + \item Une galerie serait bienvenue... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{Des codes \LaTeX} - -Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. - -\begin{tdoclatex} -Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? - -\begin{tdoclatex}[sbs] -Du code \LaTeX\ mis en forme, c'est top : \\ -$E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -143,18 +220,37 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \frenchsetup{StandardItemLabels=true} \usepackage{multicol} +\usepackage{lastpage} + +\makeatletter + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{% + \thepage\kern1pt/\kern1pt\pageref*{LastPage}% + }% +} + +\makeatother + \newcommand\thisstyle{color} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] Dans le flot du texte, il est toujours utile de pouvoir indiquer des exemples et des remarques qui viennent compléter le contenu principal. } + \newcommand\myadmotext{ Suivant le contexte d'utilisation, il est parfois nécessaire de pouvoir mettre en avant des contenus en indiquant leur degré d'importance. } +\newcommand\myhighlightedtextnonote{ + Que dire ? + Je ne sais pas, mais c'est sympathique. Non ? +} + \newcommand\myhighlightedtext{ Que dire\,% \footnote{ @@ -164,16 +260,46 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. } +\newcommand\mychgestext{ + Dans un journal de bord, il est important de bien visualiser les types de changements. Ceci rend plus efficace la lecture côté utilisateur ! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} \textsf{\Huge\bfseries Le thème \texttt{"\thisstyle"}} - \section{Liens} {\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{Un lien très gros}}, mais au moins on le voit. + +\section{Des codes \LaTeX} + +Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. + +\begin{tdoclatex} +Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + +On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Du code \LaTeX\ mis en forme, c'est top: \\ +$E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + + \section{Mettre en avant, versionner et dater} \subsection{tdocexa, tdocrem} @@ -190,7 +316,6 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -199,20 +324,28 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -220,47 +353,68 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{Nouvelle section démonstrative...} +\tdocstartproj{Une nouvelle section démonstrative...} -\medskip +\begin{tdoctodo} + \item Une galerie serait bienvenue... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{Des codes \LaTeX} - -Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. - -\begin{tdoclatex} -Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? - -\begin{tdoclatex}[sbs] -Du code \LaTeX\ mis en forme, c'est top : \\ -$E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -274,18 +428,37 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \frenchsetup{StandardItemLabels=true} \usepackage{multicol} +\usepackage{lastpage} + +\makeatletter + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{% + \thepage\kern1pt/\kern1pt\pageref*{LastPage}% + }% +} + +\makeatother + \newcommand\thisstyle{dark} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] Dans le flot du texte, il est toujours utile de pouvoir indiquer des exemples et des remarques qui viennent compléter le contenu principal. } + \newcommand\myadmotext{ Suivant le contexte d'utilisation, il est parfois nécessaire de pouvoir mettre en avant des contenus en indiquant leur degré d'importance. } +\newcommand\myhighlightedtextnonote{ + Que dire ? + Je ne sais pas, mais c'est sympathique. Non ? +} + \newcommand\myhighlightedtext{ Que dire\,% \footnote{ @@ -295,16 +468,46 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. } +\newcommand\mychgestext{ + Dans un journal de bord, il est important de bien visualiser les types de changements. Ceci rend plus efficace la lecture côté utilisateur ! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} \textsf{\Huge\bfseries Le thème \texttt{"\thisstyle"}} - \section{Liens} {\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{Un lien très gros}}, mais au moins on le voit. + +\section{Des codes \LaTeX} + +Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. + +\begin{tdoclatex} +Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + +On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Du code \LaTeX\ mis en forme, c'est top: \\ +$E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + + \section{Mettre en avant, versionner et dater} \subsection{tdocexa, tdocrem} @@ -321,7 +524,6 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -330,20 +532,28 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -351,47 +561,68 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{Nouvelle section démonstrative...} +\tdocstartproj{Une nouvelle section démonstrative...} -\medskip +\begin{tdoctodo} + \item Une galerie serait bienvenue... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{Des codes \LaTeX} - -Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. - -\begin{tdoclatex} -Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? - -\begin{tdoclatex}[sbs] -Du code \LaTeX\ mis en forme, c'est top : \\ -$E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -405,18 +636,37 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \frenchsetup{StandardItemLabels=true} \usepackage{multicol} +\usepackage{lastpage} + +\makeatletter + +\renewcommand*\pagemark{% + \usekomafont{pagenumber}{% + \thepage\kern1pt/\kern1pt\pageref*{LastPage}% + }% +} + +\makeatother + \newcommand\thisstyle{draft} + \newcommand\myexrmktext{ \tdocversion{1.7.0}[2024-12-04] Dans le flot du texte, il est toujours utile de pouvoir indiquer des exemples et des remarques qui viennent compléter le contenu principal. } + \newcommand\myadmotext{ Suivant le contexte d'utilisation, il est parfois nécessaire de pouvoir mettre en avant des contenus en indiquant leur degré d'importance. } +\newcommand\myhighlightedtextnonote{ + Que dire ? + Je ne sais pas, mais c'est sympathique. Non ? +} + \newcommand\myhighlightedtext{ Que dire\,% \footnote{ @@ -426,16 +676,46 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. } +\newcommand\mychgestext{ + Dans un journal de bord, il est important de bien visualiser les types de changements. Ceci rend plus efficace la lecture côté utilisateur ! +} + + +\ExplSyntaxOn + +\int_new:N \g__tutodoc_for_doc_int + +\ExplSyntaxOff + + \begin{document} \textsf{\Huge\bfseries Le thème \texttt{"\thisstyle"}} - \section{Liens} {\Large\bfseries \href{https://github.com/bc-tools/for-latex/tree/main/tutodoc}{Un lien très gros}}, mais au moins on le voit. + +\section{Des codes \LaTeX} + +Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. + +\begin{tdoclatex} +Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + +On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? + +\begin{tdoclatex}<\tdoctcb{sbs}> +Du code \LaTeX\ mis en forme, c'est top: \\ +$E = m c^2$ ou $\pi \neq \frac{3}{14}$. +\end{tdoclatex} + + + \section{Mettre en avant, versionner et dater} \subsection{tdocexa, tdocrem} @@ -452,7 +732,6 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOff -\myexrmktext \subsection{tdocnote, tdoctip...} @@ -461,20 +740,28 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOn +\int_set:Nn \g__tutodoc_for_doc_int { 0 } + \ifcsundef{g__tutodoc_focus_color_seq}{ \prop_map_inline:Nn \g__tutodoc_focus_color_prop { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } { \seq_map_inline:Nn \g__tutodoc_focus_color_seq { - \medskip + \int_gincr:N \g__tutodoc_for_doc_int \begin{tdoc#1} - \myhighlightedtext + \int_compare:nTF + {\g__tutodoc_for_doc_int = 1 } + { \myhighlightedtext } + { \myhighlightedtextnonote } \end{tdoc#1} } } @@ -482,47 +769,68 @@ $E = m c^2$ ou $\pi \neq \frac{3}{14}$. \ExplSyntaxOff + \subsection{tdocbreak, tdocfix...} -\tdocstartproj{Nouvelle section démonstrative...} +\tdocstartproj{Une nouvelle section démonstrative...} -\medskip +\begin{tdoctodo} + \item Une galerie serait bienvenue... +\end{tdoctodo} -\myexrmktext +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\ExplSyntaxOn +\mychgestext -\begin{multicols}{2} +\ifcsundef{g__tutodoc_topic_change_seq}{ + \medskip +}{} -\prop_map_inline:Nn \g__tutodoc_topic_change_prop { - \begin{tdoc#1} - \item Infos... - \end{tdoc#1} -} +\ExplSyntaxOn -\vfill\null +\int_set:Nn \g__tutodoc_for_doc_int { 0 } -\end{multicols} +\begin{tabular}{% + @{\hskip 0pt}p{.26\linewidth}% + *{3}{@{\hskip 7pt}p{.23\linewidth}}@{\hskip 0pt}% +} + \ifcsundef{g__tutodoc_topic_change_seq}{ + \prop_map_inline:Nn \g__tutodoc_topic_change_prop { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-12pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + }{ + \seq_map_inline:Nn \g__tutodoc_topic_change_seq { + \int_gincr:N \g__tutodoc_for_doc_int + + \vspace{-5pt} + + \begin{tdoc#1} + \item Infos... + \end{tdoc#1} + + \int_compare:nTF + {\g__tutodoc_for_doc_int = 4 } + { \\ } + { & } + } + } +\end{tabular} \ExplSyntaxOff - -\section{Des codes \LaTeX} - -Taper du code \LaTeX\ en ligne comme \tdoclatexin{E = m c^2 \neq \pi \neq \frac{3}{14}} est utile, tout comme montrer des cas d'utilisation comme le suivant. - -\begin{tdoclatex} -Du code \LaTeX\ mis en forme, c'est top : $E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - - -On dispose aussi d'un mode côte-à-côte moins envahissant. Sympa ! Non ? - -\begin{tdoclatex}[sbs] -Du code \LaTeX\ mis en forme, c'est top : \\ -$E = m c^2$ ou $\pi \neq \frac{3}{14}$. -\end{tdoclatex} - \end{document} \end{filecontents*} @@ -591,7 +899,7 @@ Blu, blu, blu, blu, blu, blu, blu, blu, blu, blu, blu, blu, blu... \tdocversion[red]{10.2.0-beta}[2023-12-01] Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... -\bigskip % ATTENTION ! Ceci évite le chevauchement. +\smallskip\bigskip % ATTENTION ! Ceci évite le chevauchement. \tdocversion{10.2.0-alpha} Ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, @@ -656,7 +964,7 @@ ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble, ble... \begin{filecontents*}[overwrite]{examples-version-n-change-manual-setting.tex} Voilà ce que cela donne sans déplacement vertical. -\paragraph{Un réglage maison}% +\paragraph{Un réglage maison.}% \tdocversion{1.2.3}[2024-10-29]<0pt> Blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo, blo... @@ -803,66 +1111,126 @@ VERSUS. \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-latexshow-options.tex} -\tdoclatexshow[explain = Ce qui vient est coloré..., - before = Rendu ci-après., - after = Rendu fini., - col-stripe = orange, - col-text = blue!70!black] - {examples-listing-xyz.tex} +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you.tex} +\NewDocumentCommand{\helloyou}{m}{% + \IfBlankTF{#1}{% + Ah, pas très bavard aujourd'hui !% + }{% + Bonjour #1. + + Épatant ! En fait, pas du tout...% + }% +} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-ABC.tex} -\begin{tdoclatex}[sbs] - $A = B + C$ -\end{tdoclatex} +\begin{filecontents*}[overwrite]{examples-listing-full-input-hello-you-hs.tex} +\tdoccodeinput{hs}{examples-listing-full-hello-you.hs} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-xyz.tex} -% Juste une démo. -$x y z = 1$ +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you.hs} +main :: IO () +main = do + putStr "Qui êtes-vous ? " + name <- getLine + + if name == "" + then putStrLn "Ah, pas très bavard aujourd'hui !" + else do + putStrLn ("Bonjour " ++ name ++ ".") + putStrLn "Épatant ! En fait, pas du tout..." \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-strange.tex} -\begin{tdoclatex}[std] - [Étrange... Ou pas !] -\end{tdoclatex} +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you-lua.tex} +\begin{tdoccode}[style = solarized-light, linenos]% + <leftrule = 22pt, colback = orange!5, colframe = red!35>% + {lua} +io.write("Qui êtes-vous ? ") +local name = io.read() + +if name == "" then + print("Ah, pas très bavard aujourd'hui !") + +else + print("Bonjour " .. name .. ".") + print("Épatant ! En fait, pas du tout...") +end +\end{tdoccode} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-listing-strange-bis.tex} -\begin{tdoclatex} - \string[Étrange... Ou pas !] -\end{tdoclatex} +\begin{filecontents*}[overwrite]{examples-listing-full-hello-you-perl.tex} +\begin{tdoccode}{pl} +print "Qui êtes-vous ? "; +my $name = <STDIN>; + +chomp($name); + +if ($name eq "") { + print "Ah, pas très bavard aujourd'hui !\n"; + +} else { + print "Bonjour $name.\n"; + print "Épatant ! En fait, pas du tout...\n"; +} +\end{tdoccode} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-showcase-customized.tex} -\begin{tdocshowcase}[before = Mon début, - after = Ma fin à moi, - col-stripe = red, - col-text = orange!75!black] - Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... -\end{tdocshowcase} +\begin{filecontents*}[overwrite]{examples-listing-full-input-hello-you-tex.tex} +\tdoccodeinput[style = solarized-light, linenos]% + <leftrule = 22pt, colback = orange!5, colframe = red!35>% + {tex}{examples-listing-full-hello-you.tex} \end{filecontents*} \begin{filecontents*}[overwrite]{examples-showcase-hook.tex} +\begin{tdocshowcase}[] + [Cela fonctionne...] +\end{tdocshowcase} + +OU. + \begin{tdocshowcase} - \string[Cela fonctionne...] + \string[Cela fonctionne aussi...] \end{tdocshowcase} \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-showcase-nostripe-customized.tex} -\begin{tdocshowcase}[nostripe, - before = Mon début, - after = Ma fin à moi, +\begin{filecontents*}[overwrite]{examples-showcase-rule.tex} +\begin{tdocshowcase}[style = rule] + Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... +\end{tdocshowcase} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-stripe-custom.tex} +\begin{tdocshowcase}[style = stripe, col-stripe = green, - col-text = purple] + col-text = purple, + before = Mon début, + after = Ma fin à moi] + Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... +\end{tdocshowcase} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-input-stripe.tex} +\tdocshowcaseinput[style = stripe, + col-stripe = red, + col-text = LightCoral]% + {examples-showcase-external.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-rule-custom.tex} +\begin{tdocshowcase}[style = rule, + col-stripe = red, + col-text = orange!75!black, + before = Mon début, + after = Ma fin à moi] Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... \end{tdocshowcase} \end{filecontents*} @@ -884,13 +1252,106 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \end{filecontents*} -\begin{filecontents*}[overwrite]{examples-showcase-nostripe.tex} -\begin{tdocshowcase}[nostripe] +\begin{filecontents*}[overwrite]{examples-showcase-stripe.tex} +\begin{tdocshowcase}[style = stripe] Bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla, bla... \end{tdocshowcase} \end{filecontents*} +\begin{filecontents*}[overwrite]{examples-showcase-input-default.tex} +\tdocshowcaseinput{examples-showcase-external.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-showcase-input-rule.tex} +\tdocshowcaseinput[style = rule]{examples-showcase-external.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexshow-options.tex} +\tdoclatexshow[style = stripe, + col-stripe = orange, + col-text = blue!70!black, + before = Rendu ci-après., + explain = Ce qui vient est coloré..., + after = Rendu fini.,] + {examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-ABC.tex} +\begin{tdoclatex}<\tdoctcb{sbs}> +$A = B + C$ +\end{tdoclatex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-xyz.tex} +% Juste une démo. +$x y z = 1$ +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-std.tex} +\tdoclatexinput{examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-strange.tex} +\begin{tdoclatex}[] +[Étrange... Ou pas !] +\end{tdoclatex} +OU. +\begin{tdoclatex}<> +<Étrange... Ou pas !> +\end{tdoclatex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-ABC-custom.tex} +\begin{tdoclatex}% + [linenos, style = igor, showspaces]% + <\tdoctcb{sbs}, + attach boxed title to top left = {yshift = -9pt}, + fonttitle = \bfseries, + title = Modifications locales, + top = 10pt> +% Parfois utile, mais ne pas en abuser ! +$A = B + C$ +% Fin de cette démonstration. +\end{tdoclatex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-sbs.tex} +\tdoclatexinput<\tdoctcb{sbs}>{examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-code.tex} +\tdoclatexinput<\tdoctcb{code}>{examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-latexinput-option-perso.tex} +\tdoclatexinput[style = igor, showspaces]% + <colframe = purple, colback = red!5>% + {examples-listing-latex-xyz.tex} +\end{filecontents*} + + +\begin{filecontents*}[overwrite]{examples-listing-latex-strange-bis.tex} +\begin{tdoclatex} +\string[Étrange... Ou pas !] +\end{tdoclatex} +OU. +\begin{tdoclatex} +\string<Étrange... Ou pas !> +\end{tdoclatex} +\end{filecontents*} + + % ======================== % % == SOURCE FOR THE DOC == % % ======================== % @@ -909,6 +1370,10 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \usepackage{tasks} \usepackage{pdfpages} +\includepdfset{ + pages=-, + fitpaper=true +} % Some useful commands. \newcommand\thisproj{\tdoccls{tutodoc}} @@ -921,48 +1386,12 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \newcommand\git{\trademark{git}} \newcommand\pdf{\trademark{PDF}} +\newcommand\brainfuck{\trademark{Brainfuck}} +\newcommand\lua{\trademark{Lua}} +\newcommand\perl{\trademark{Perl}} +\newcommand\python{\trademark{Python}} -% Source. -% * https://tex.stackexchange.com/a/604698/6880 - -\NewDocumentCommand{ \tdocbasicinputDOC }{ m }{% - Considérons le code suivant. - - \tdoclatexinput[code]{#1} - - Ceci produira ce qui suit. - - \input{#1} -} - - -% Source. -% * https://tex.stackexchange.com/a/604698/6880 - -\NewDocumentCommand{ \tdocextrarulerDOC }{ m }{% - \par - { - \centering - \color{green!50!black}% - \leavevmode - \kern.075\linewidth - \leaders\hrule height3.25pt\hfill\kern0pt - \footnotesize\itshape\bfseries\space\ignorespaces#1\unskip\space - \leaders\hrule height3.25pt\hfill\kern0pt - \kern.075\linewidth - \par - } -} - -\NewDocumentEnvironment{ tdocshowcaseDOC } - { O{ Début du rendu dans cette doc. } - O{ Fin du rendu dans cette doc. } }{ - \tdocextrarulerDOC{#1} - \nopagebreak\smallskip\nopagebreak -}{ - \nopagebreak\smallskip\nopagebreak - \tdocextrarulerDOC{#2} -} +\newcommand\pygmentsREF{\href{https://pygments.org/}{\trademark{Pygments}}} \NewDocumentCommand{\mailsubject}{m}% <-- Translate me! @@ -1035,7 +1464,7 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \title{La classe \texttt{tutodoc} \\ Documentation de type tutoriel} \author{Christophe, BAL} -\date{4 déc. 2024 - Version 1.7.0} +\date{18 déc. 2024 - Version 1.7.1} \maketitle @@ -1048,7 +1477,7 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \footnote{ L'idée est de produire un fichier \texttt{PDF} efficace à parcourir pour des besoins ponctuels. C'est généralement ce que l'on attend d'une documentation liée au codage. } - via un rendu sobre pour une lecture sur écran. + avec un rendu sobre pour une lecture sur écran. \smallskip @@ -1070,9 +1499,9 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... } is used by its author to semantically produce documentation of \LaTeX\ packages and classes in a tutorial style\,% \footnote{ - The idea is to produce an efficient \texttt{PDF} file that can be browsed for one-off needs. This is generally what is expected of coding documentation. + The idea is to produce an efficient \texttt{PDF} file that can be browsed for one-off needs. This is generally what is expected for a coding documentation. } - using a sober rendering for reading on screen. + with a sober rendering for reading on screen. \smallskip @@ -1090,67 +1519,52 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \subsection*{Derniers changements} \egroup -\begin{tdocbreak} - \item Mise en forme : la classe \tdoccls{scrartcl} remplace la vénérable \tdoccls{article}. Cela implique un meilleur positionnement des notes de marge avec les options retenues pour charger \tdoccls{scrartcl}. +\begin{tdocfix} + \item Documentation: les références aux outils pour indiquer des changements ont été incorrectement écrites comme caractéristiques des contenus colorés mis en avant. +\end{tdocfix} - \item Code \LaTeX\ : la macro \tdocmacro{tdocinlatex} a été renommée \tdocmacro{tdoclatexin}. - \item Les noms des clés pour les couleurs utiliseront des traits d'union lorsque cela sera nécessaire : cela implique les changements suivants. - % - \begin{enumerate} - \item Mise en avant colorée de contenus : l'option \tdoclatexin{colchges} des environnements a été renommée \tdoclatexin{col-chges}. +\begin{tdocbreak} + \item La macro \tdocmacro{tdocenv} et sa version étoilée ne proposent plus d'option. - \item Démonstration de codes \LaTeX\ : pour l'environnement \tdocenv*{tdocshowcase} et la macro \tdocmacro{tdocshowcaseinput}, les options \tdoclatexin{colstripe} et \tdoclatexin{coltext} ont été renommées \tdoclatexin{col-stripe} et \tdoclatexin{col-text}\,. - \end{enumerate} + \item Cas d'utilisation \LaTeX: la présentation par défaut est plus sobre, et des options permettent d'ajouter les lignes cadrantes, ou la bande colorée. Voir juste après. \end{tdocbreak} -\begin{tdocfix} - \item Mise en avant colorée de contenus : pour les \tdocmacro{newkeytheorem} utilisés avec le thème \tdoclatexin{draft}, il a fallu ajouter \tdoclatexin{postheadhook = \leavevmode} (ceci est nécessaire car le contenu peut juste être de type liste). -\end{tdocfix} - - \begin{tdocnew} - \item Documentation : ajout d'une section listant les dépendances. - - \item Options de classe. + \item Mise en forme de codes informatiques en plus de ceux spécifiquement en \LaTeX. % \begin{enumerate} - \item Les options qui ne sont pas spécifiques à \thisproj\ sont transmises à la classe chargée de la mise en forme générale. + \item Création de \tdocenv{tdoccode} et de \tdocmacro{tdoccodein}. - \item Les options \tdoclatexin{fontsize} et \tdoclatexin{DIV} de la classe \tdoccls{scrartcl} ne peuvent pas être utilisées, car leurs valeurs sont fixées par \thisproj. - \end{enumerate} + \item Pour les macros pour du code en ligne, et les environnements pour des blocs de code, des options de type \tdocpack{minted} s'indiquent à l'intérieur de crochet de manière traditionnelle: \tdoclatexin{[options minted]}\,. - \item La macro \tdocmacro{tdocinEN} respecte les règles linguistiques anglaises. + \item Pour les environnements pour des blocs de code, des options de type \tdocpack{tcolorbox} s'indiquent à l'intérieur de chevrons: \tdoclatexin{<options tcolorbox>}\,. - \item Mise en avant colorée de contenus. - % - \begin{enumerate} - \item Un nouvel environnement \tdocenv{tdoctodo} a été ajouté. - - \item Chaque environnement dispose d'une nouvelle option \tdoclatexin{col} pour la couleur du contenu indiquant les changements. + \item La nouvelle macro \tdocmacro{tdoctcb} permet d'utiliser des raccourcis pour les styles \tdocpack{tcolorbox} régulièrement utilisés. \end{enumerate} + + \item Documentation: une nouvelle section présente les outils de mise en forme de codes informatiques autres que les cas d'utilisation de \LaTeX. \end{tdocnew} \begin{tdocupdate} - \item Le thème \tdoclatexin{draft} et les changements : les environnements pour les types de changements n'mploient plus d'icones. - - \item Documentation : la galerie des thèmes utilise un meilleur exemple factice. -\end{tdocupdate} - + \item Les sous-sous-sections sont numérotées en lettres minuscules. - -\begin{tdoctech} - \item Organisation simplifiée des fichiers de configuration dans le projet final. + \item Thèmes. % \begin{enumerate} - \item Comme du \texttt{CSS} : emploi d'un fichier par thème avec des noms du type \texttt{tutodoc-bw.css.cls}\,. + \item Moins d'espace consommé. + + \item Les ombres ont une meilleure coloration. + + \item Pour tous les thèmes sauf le \tdoclatexin{draft}, le rayon des arcs des coins des cadres passe de \tdoclatexin{.75mm} à \tdoclatexin{.2pt}\,. + \item Cas d'utilisation de \LaTeX: avec le thème \tdoclatexin{color}, la couleur du fond passe de \tdoclatexin[bgcolor = yellow!4]{yellow!4} à \tdoclatexin{gray!5}. - \item Locale : utilisation de noms comme \texttt{tutodoc-fr.loc.cls}\,. + \item Dernières modifications: avec le thème \tdoclatexin{dark}, le texte \tdoclatexin{[Init]} produit par la macro \tdocmacro{tdocstartproj} utilise la même police que celle des titres des environnements pour indiquer des changements. \end{enumerate} -\end{tdoctech} +\end{tdocupdate} } @@ -1199,7 +1613,7 @@ Blablobli, blablobli, blablobli, blablobli, blablobli, blablobli... \end{tasks} -\section{Mises en forme générales imposées} +\section{Réglages généraux} \subsection{Taille de la police et géométrie de la page} @@ -1207,7 +1621,7 @@ La classe \tdoccls{scrartcl} est chargée via l'option \tdoclatexin{fontsize = 1 \begin{tdocwarn} - Les macros pour dater et versionner présentées dans la section \ref{tutodoc-changes} ont besoin de réglages fixes pour la géométrie des pages et la taille de la police. + Les macros pour dater et versionner présentées dans la section \ref{tutodoc-changes} page \pageref{tutodoc-changes} ont besoin de réglages fixes pour la géométrie des pages et la taille de la police. \end{tdocwarn} @@ -1218,24 +1632,22 @@ Les réglages choisis sont directement visibles dans cette documentation. \subsection{Liens dynamiques} -Le package \tdocpack{hyperref} est importé, si ce n'est pas fait, et les réglages choisis portent juste sur les couleurs des liens relatifs aux citations, aux fichiers, aux liens internes, et enfin aux \verb#url# (cette couleur dépendra du thème choisi). +Le package \tdocpack{hyperref} est importé, si ce n'est pas fait, et les réglages choisis portent juste sur les couleurs des liens relatifs aux citations, aux fichiers, aux liens internes, et enfin aux \verb#url# (ces couleurs dépendent du thème choisi). \section{Quelle langue est utilisée par la classe \thisproj\ ?} -Cette documentation charge le package \tdocpack{babel} via \tdoclatexin|\usepackage[english]{babel}|\, un package que \thisproj\ ne charge pas. -En revanche, la classe \thisproj\ identifie \tdoclatexin|fr| comme la langue principale utilisée par \tdocpack{babel}.%. +Cette documentation charge le package \tdocpack{babel} via \tdoclatexin|\usepackage[french]{babel}|\, un package que \thisproj\ ne charge pas. +En revanche, la classe \thisproj\ identifie \tdoclatexin|fr| comme la langue principale utilisée par \tdocpack{babel}.% \footnote{ Techniquement, on utilise \tdoclatexin|\BCPdata{language}| qui renvoie une langue au format court. } Comme cette langue fait partie de la liste des langues prises en compte, voir ci-dessous, la classe \thisproj\ produira les effets attendus. - \begin{tasks}[label=\small\textbullet](3) \task \tdoclatexin|en| : anglais. \task \tdoclatexin|es| : espagnol. \task \tdoclatexin|fr| : français. \end{tasks} - \begin{tdocnote} @@ -1262,7 +1674,7 @@ Cool et top signifient \tdocinEN*{cool} et \tdocinEN{top}. \end{tdoclatex} -La macro \tdocmacro{tdocinEN} et sa version étoilée s'appuient sur \tdocmacro{tdocquote} : par exemple, \tdocquote{sémantique} s'obtient via \tdoclatexin|\tdocquote{sémantique}| . +La macro \tdocmacro{tdocinEN} et sa version étoilée s'appuient sur \tdocmacro{tdocquote} : par exemple, \tdocquote{sémantique} s'obtient via \tdoclatexin|\tdocquote{sémantique}|\,. \begin{tdocnote} @@ -1272,9 +1684,8 @@ La macro \tdocmacro{tdocinEN} et sa version étoilée s'appuient sur \tdocmacro{ Dans le contenu entre guillemets, les règles linguistiques anglaises sont respectées comme le montre l'exemple suivant. -\begin{tdoclatex} -Test: \tdocquote{OK?} - +\begin{tdoclatex}<\tdoctcb{sbs}> + Test: \tdocquote{OK?} \\ \tdocinEN{Test: \tdocquote{OK?}} \end{tdoclatex} @@ -1299,7 +1710,7 @@ Pour modifier la mise en forme générale, la classe \thisproj\ propose l'option \begin{tdocnote} - A la fin de ce document, après l'historique des changements, vous trouverez une galerie de cas d'utilisation de ces différents thèmes : se rendre à l'annexe page \pageref{tutodoc-theme-gallery}. + À la fin de ce document, après l'historique des changements, vous trouverez une galerie de cas d'utilisation de ces différents thèmes : se rendre à l'annexe page \pageref{tutodoc-theme-gallery}. \end{tdocnote} @@ -1323,10 +1734,10 @@ Pour modifier la mise en forme générale, la classe \thisproj\ propose l'option \addcontentsline{toc}{section}{Annexe -- Galerie des thèmes}% \egroup -\bigskip +\bigskip\bigskip \begin{tdocnote} - Chaque exemple est un \pdf\ de deux pages exactement qui a été directement inséré dans ce document (ne soyez donc pas surpris par les numéros de page). + Chaque exemple est un \pdf\ directement inséré dans ce document (ne soyez donc pas surpris par la numérotation des pages). \end{tdocnote} \newpage @@ -1341,25 +1752,13 @@ Pour modifier la mise en forme générale, la classe \thisproj\ propose l'option \immediate\write18{SOURCE_DATE_EPOCH=0 FORCE_SOURCE_DATE=1 latexmk -shell-escape -pdflatex gallery-showcase-draft} % The gallery starts here... -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-bw} +\includepdf{gallery-showcase-bw} -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-color} +\includepdf{gallery-showcase-color} -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-dark} +\includepdf{gallery-showcase-dark} -\includepdf[ - pages=1-2, - fitpaper=true -]{gallery-showcase-draft} +\includepdf{gallery-showcase-draft} } @@ -1370,7 +1769,7 @@ Pour modifier la mise en forme générale, la classe \thisproj\ propose l'option \section{Mettre en avant du contenu} \begin{tdocnote} - Les environnements présentés dans cette section + Les environnements présentés dans cette section\,% \footnote{ La mise en forme provient du package \tdocpack{keytheorems}. } @@ -1383,26 +1782,24 @@ Pour modifier la mise en forme générale, la classe \thisproj\ propose l'option \subsection{Du contenu dans le flot de la lecture} \begin{tdocimp} - Tous les environnements présentés dans cette section partagent le même compteur qui sera remis à zéro dès qu'une section de niveau au moins égale à une \tdoclatexin|\section| sera ouverte. + Tous les environnements présentés dans cette section partagent le même compteur qui sera remis à zéro dès que \tdoclatexin|\section| est employée. \end{tdocimp} \subsubsection{Des exemples} -Des exemples numérotés, si besoin, s'indiquent via \tdocenv{tdocexa} qui propose un argument optionnel pour ajouter un mini-titre. +Des exemples numérotés s'indiquent via \tdocenv{tdocexa} qui propose un argument optionnel pour ajouter un mini-titre. Voici deux usages possibles. -\tdoclatexinput[sbs]{examples-admonitions-exa.tex} - +\tdoclatexinput<\tdoctcb{sbs}>{examples-admonitions-exa.tex} \begin{tdoctip} Il peut parfois être utile de revenir à la ligne dès le début du contenu. Le code suivant montre comment faire (ce tour de passe-passe reste valable pour l'environnement \verb#tdocrem# présenté juste après). Noter au passage que la numérotation suit celle de l'exemple précédent comme souhaité. \end{tdoctip} -\tdoclatexinput[sbs]{examples-admonitions-exa-leavevmode.tex} - +\tdoclatexinput<\tdoctcb{sbs}>{examples-admonitions-exa-leavevmode.tex} %\subsection{Du contenu dans le flot de la lecture} @@ -1412,8 +1809,7 @@ Voici deux usages possibles. Tout se passe via \tdocenv{tdocrem} avec un fonctionnement identique à l'environnement \tdocenv*{tdocexa} comme le montre l'exemple suivant. -\tdoclatexinput[sbs]{examples-admonitions-rmk.tex} - +\tdoclatexinput<\tdoctcb{sbs}>{examples-admonitions-rmk.tex} \subsection{Du contenu tape-à-l'oeil} @@ -1421,7 +1817,7 @@ Tout se passe via \tdocenv{tdocrem} avec un fonctionnement identique à l'enviro \begin{tdocnote} La mise en forme proposée ici est celle par défaut, mais d'autres sont possible en changeant de thème : voir la galerie de cas d'utilisation dans l'annexe page \pageref{tutodoc-theme-gallery}. - Quant aux icônes, elles sont obtenues via le package \tdocpack{fontawesome5}, et la macro \tdocmacro{tdocicon} gère l'espacement vis-à-vis du texte. + Quant aux icônes, elles sont obtenues via le package \tdocpack{fontawesome5} et la macro \tdocmacro{tdocicon} qui gère l'espacement vis-à-vis du texte.% \footnote{ Par exemple, \tdoclatexin|\fbox{\tdocicon{\faBed}{Fatigué}}| @@ -1436,18 +1832,16 @@ Tout se passe via \tdocenv{tdocrem} avec un fonctionnement identique à l'enviro L'environnement \tdocenv*{tdoctip} sert à donner des astuces. Voici comment l'employer. -\tdoclatexinput[sbs]{examples-admonitions-tip.tex} - +\tdoclatexinput<\tdoctcb{sbs}, bottom = 3pt, top = 3pt>{examples-admonitions-tip.tex} \smallskip \begin{tdoctip} - Quelque fois, un contenu mis en avant peut se réduire à une liste. Dans ce cas, la mise en forme peut être améliorée comme suit où nous utilisons l'option \tdoclatexin{wide} du package \tdocpack{enumitem}. - - \tdoclatexinput[sbs]{examples-admonitions-leavevmode-items.tex} + Quelque fois, un contenu mis en avant peut se réduire à une liste. Dans ce cas, la mise en forme peut être améliorée comme suit où nous utilisons l'option \tdoclatexin{wide} du package \tdocpack{enumitem} qui est importé par cette documentation. + \tdoclatexinput<\tdoctcb{sbs}, bottom = 3pt, top = 3pt>{examples-admonitions-leavevmode-items.tex} \end{tdoctip} @@ -1461,19 +1855,18 @@ L'environnement \tdocenv*{tdoctip} sert à donner des astuces. Voici comment l'e important, % {Avertir d'un point très délicat}/% <-- Translate me! - {L'environnement \tdocenv*{tdoccaut} sert à indiquer un point délicat à l'utilisateur. Voici comment l'employer.}/%<-- Translate me! + {L'environnement \tdocenv*{tdoccaut} sert à pointer quelque chose de délicat. Voici comment l'employer.}/%<-- Translate me! caution, % {Avertir d'un danger}/% <-- Translate me! - {L'environnement \tdocenv*{tdocwarn} sert à avertir l'utilisateur d'un piège à éviter. Voici comment l'employer.}/% <-- Translate me! + {L'environnement \tdocenv*{tdocwarn} permet d'avertir l'utilisateur d'un piège à éviter. Voici comment l'employer.}/% <-- Translate me! warn% } { \subsubsection{\sectitle} \desc - \tdoclatexinput[sbs]{examples-admonitions-\filename.tex} - + \tdoclatexinput<\tdoctcb{sbs}, bottom = 3pt, top = 3pt>{examples-admonitions-\filename.tex} } @@ -1482,42 +1875,30 @@ L'environnement \tdocenv*{tdoctip} sert à donner des astuces. Voici comment l'e Voici ce qu'il est possible de taper de façon sémantique. -\begin{tdoclatex}[sbs] -\tdoccls{maclasse} sert à... \\ -\tdocpack{monpackage} est pour... \\ -\tdocmacro{unemacro} permet de... \\ -\tdocenv{env} produit... \\ -\tdocenv[{[opt1]<opt2>}]{env} \\ -Juste \tdocenv*{env}... \\ -Enfin \tdocenv*[{[opt1]<opt2>}]{env}... - % Pour les copier-coller. +\begin{tdoclatex}<\tdoctcb{sbs}> +\tdoccls{maclasse} sert à... \\ +\tdocpack{monpackage} est pour... \\ +\tdocmacro{unemacro} permet de... \\ +\tdocenv{env} produit... \\ +Juste \tdocenv*{env}... \end{tdoclatex} \begin{tdocrem} - Contrairement à \tdocmacro{tdoclatexin}, les macros \tdocmacro{tdocenv} et \tdocmacro{tdocenv*} ne colorent pas le texte produit. - De plus, \tdoclatexin{\tdocenv{monenv}} produit \tdocenv{monenv} avec des espaces afin d'autoriser des retours à la ligne si besoin. + Contrairement à \tdocmacro{tdoclatexin}, les macros \tdocmacro{tdocmacro}, \tdocmacro{tdocenv} et \tdocmacro{tdocenv*} ne colorent pas le texte produit. + De plus, \tdoclatexin{\tdocenv{monenv}} produit \tdocenv{monenv} avec des espaces sécables afin d'autoriser des retours à la ligne si besoin. \end{tdocrem} -\begin{tdocwarn} - L'argument optionnel de la macro \tdocmacro{tdocenv} est copié-collé - \footnote{ - Se souvenir que tout est possible ou presque dorénavant. - } - lors du rendu. Ceci peut donc parfois nécessiter d'utiliser des accolades protectrices comme dans l'exemple ci-dessus. -\end{tdocwarn} - - \section{Origine d'un préfixe ou d'un suffixe} Pour expliquer les noms retenus, rien de tel que d'indiquer et expliciter les courts préfixes et suffixes employés. Ceci se fait facilement comme suit. -\begin{tdoclatex}[sbs] -\tdocpre{sup} est relatif à... \\ -\tdocprewhy{sup.erbe} signifie... \\ +\begin{tdoclatex}<\tdoctcb{sbs}> +\tdocpre{sup} est relatif à... \\ +\tdocprewhy{sup.erbe} signifie... \\ \emph{\tdocprewhy{sup.er} pour...} \end{tdoclatex} @@ -1534,226 +1915,237 @@ Il est parfois utile d'obtenir directement le rendu d'un code dans la documentat -\subsection{Avec une bande colorée} +\subsection{Un rendu minimaliste par défaut} -\begin{tdocexa}[Avec les textes par défaut] - Il peut être utile de montrer un rendu réel directement dans un document. +\begin{tdocexa} + Il peut être utile de montrer un rendu réel directement dans un document.% \footnote{ Typiquement lorsque l'on fait une démo. } - Ceci se tape via \tdocenv{tdocshowcase} comme suit. + Ceci se tape via l'environnement \tdocenv*{tdocshowcase} comme suit. - \tdoclatexinput[code]{examples-showcase-default.tex} + \tdoclatexshow[explain = {On obtient alors le rendu suivant qui est la combinaison d'un faible espacement vertical et d'une simple importation.}]{examples-showcase-default.tex} +\end{tdocexa} - On obtient alors le rendu suivant. - \footnote{ - En coulisse, la bande est créée sans effort grâce au package \tdocpack{clrstrip}. - } - - \medskip +\begin{tdocrem} + La section \ref{tutodoc-listing-latexshow} page \pageref{tutodoc-listing-latexshow} explique comment obtenir, via la macro \tdocmacro{tdoclatexshow}, un code suivi de son rendu réel comme dans l'exemple précédent. +\end{tdocrem} - \input{examples-showcase-default.tex} -\end{tdocexa} +\begin{tdocwarn} + Avec les paramètres par défaut, si le code à formater commence par un crochet ouvrant, il faut utiliser l'une des astuces suivantes. + \tdoclatexshow[explain = {Ceci produira ce qui suit.}]{examples-showcase-hook.tex} +\end{tdocwarn} -\begin{tdocrem} - Voir la section \ref{tutodoc-latexshow} page \pageref{tutodoc-latexshow} pour obtenir facilement un code suivi de son rendu réel comme dans l'exemple précédent. -\end{tdocrem} +\subsection{Avec des lignes cadrantes} -\begin{tdocnote} - Les textes explicatifs s'adaptent à la langue détectée par \thisproj. -\end{tdocnote} +Pour rendre plus visible le code \LaTeX\ mis en forme, on peut faire appel au style \tdoclatexin{rule} comme dans les exemple suivants. -\begin{tdocexa}[Changer les couleurs et/ou les textes par défaut] - \leavevmode +\begin{tdocexa} + L'option \tdoclatexin{style = rule} permet d'obtenir ce qui suit ce qui suit où les textes ajoutés automatiquement s'adapteront à la langue repéré par \thisproj. - \tdoclatexinput[code]{examples-showcase-customized.tex} + \input{examples-showcase-rule.tex} +\end{tdocexa} - Ceci produira ce qui suit. +\begin{tdocexa}[Du texte et des couleurs modifiables] + On peut obtenir facilement l'horreur suivante. - \medskip + \input{examples-showcase-rule-custom.tex} - \input{examples-showcase-customized.tex} + Voici le code qui a été employé.% + \footnote{ + La section suivante va justifier le choix, a priori étrange, de \tdoclatexin{col-stripe} au lieu de \tdoclatexin{col-rule}\,. + } + \tdoclatexinput<\tdoctcb{code}>{examples-showcase-rule-custom.tex} \end{tdocexa} \begin{tdocnote} - Dans l'exemple précédent, le texte utilise bien l'orange assombri proposé. Par contre, le rouge sert de base pour obtenir les couleurs utilisées pour la bande : les transformations utilisées dépendent du thème choisi.% + Dans l'exemple précédent, le texte utilise bien l'orange assombri proposé. Par contre, le rouge sert de base pour obtenir les couleurs utilisées pour les lignes cadrantes: les transformations utilisées dépendent du thème choisi.% \footnote{ Par exemple, les thèmes \tdoclatexin{bw} et \tdoclatexin{draft} ne tiennent pas compte de la clé \tdoclatexin{col-stripe} ! } % - Il faut également savoir qu'en coulisse, la macro \tdocmacro{tdocruler} est employée. + Il faut également savoir qu'en coulisse, la macro \tdocmacro{tdocruler} est employée, elle fonctionne comme suit. - \begin{tdoclatex}[std] - \tdocruler[red]{Un pseudo-titre décoré} + \begin{tdoclatex}<\tdoctcb{std}> +\tdocruler[red]{Un pseudo-titre décoré} \end{tdoclatex} \end{tdocnote} -\begin{tdocwarn} - Avec les réglages par défaut, si le code \LaTeX\ à mettre en forme commence par un crochet ouvrant, il faudra user de \tdocmacro{string} comme dans l'exemple suivant. - - \tdoclatexinput[code]{examples-showcase-hook.tex} - - - Ceci produira ce qui suit. -\end{tdocwarn} - -\input{examples-showcase-hook.tex} - - - -\subsection{Sans bande colorée} +\subsection{Avec une bande colorée} -Le rendu de \tdocenv{tdocshowcase} avec une bande colorée peut ne pas convenir, ou parfois ne pas être acceptable malgré le travail fait par \tdocpack{clrstrip}. -Il est possible de ne pas utiliser une bande colorée comme nous allons le voir tout de suite. +Il est des situations où l'on doit pouvoir clairement identifier un exemple de code \LaTeX\ mis en forme. Ceci est faisable comme le montrent les exemples suivants.% +\footnote{ + En coulisse, les bandes sont créées sans effort grâce au package \tdocpack{clrstrip}. +} \begin{tdocexa} - L'emploi de \tdocenv[{[nostripe]}]{tdocshowcase} demande de ne pas faire appel à \tdocpack{clrstrip}. - Voici un exemple d'utilisation. - - \tdoclatexinput[code]{examples-showcase-nostripe.tex} - - - Ceci produira ce qui suit. - - \medskip - - \input{examples-showcase-nostripe.tex} + L'option \tdoclatexin{style = stripe} fournit ce qui suit. + \input{examples-showcase-stripe.tex} \end{tdocexa} -\begin{tdocexa}[Changer les couleurs et/ou les textes par défaut] - \leavevmode - - \tdoclatexinput[code]{examples-showcase-nostripe-customized.tex} +\begin{tdocexa}[Du texte et des couleurs modifiables] + On peut produire facilement une belle horreur comme celle qui arrive. + \input{examples-showcase-stripe-custom.tex} - Ceci produira l'horreur suivante. - - \medskip - - \input{examples-showcase-nostripe-customized.tex} + Voici le code qui a été employé.% + \footnote{ + On comprend maintenant le choix de \tdoclatexin{col-stripe} au lieu de \tdoclatexin{col-rule}\,. + } + \tdoclatexinput<\tdoctcb{code}>{examples-showcase-stripe-custom.tex} \end{tdocexa} \subsection{En important le code \LaTeX} -Pour obtenir des rendus en important le code depuis un fichier externe, au lieu de le taper, il suffit d'employer la macro \tdocmacro{tdocshowcaseinput} dont l'option reprend la syntaxe de celle de \tdocenv{tdocshowcase} et l'argument obligatoire correspond au chemin du fichier. - - -\begin{tdocexa} - Ce qui suit a été obtenu via \tdoclatexin+\tdocshowcaseinput{external.tex}+. - - \medskip - - \tdocshowcaseinput{examples-showcase-external.tex} +Pour obtenir des rendus en important le code depuis un fichier externe, au lieu de le taper, il suffit d'employer la macro \tdocmacro{tdocshowcaseinput} dont l'option reprend la syntaxe de celle de l'environnement \tdocenv*{tdocshowcase}, et l'argument obligatoire correspond au chemin du fichier. Voici des exemples d'utilisation. - \medskip - - Via \tdoclatexin+\tdocshowcaseinput[col-stripe = red, col-text = orange!75!black]{external.tex}+\,, on obtient le changement de couleur observable ci-après. +\foreach \exatitle/\style in { + {Usage standard}/% <-- Translate me! + {default}, + {Avec des lignes cadrantes}/% <-- Translate me! + {rule}, + {Une bande colorée}/% <-- Translate me! + {stripe}% +}{ + \begin{tdocexa}[\exatitle] + \leavevmode + \tdoclatexinput<\tdoctcb{code}>{examples-showcase-input-\style.tex} - \medskip + Ceci donne: - \tdocshowcaseinput[col-stripe = red, col-text = orange!75!black]{examples-showcase-external.tex} + \smallskip -\end{tdocexa} + \input{examples-showcase-input-\style.tex} + \end{tdocexa} +} \section{Cas d'utilisation en \LaTeX} +\label{tutodoc-listing-latex} -Documenter un package ou une classe se fait efficacement via des cas d'utilisation montrant à la fois du code et le résultat correspondant.% +Documenter un package, ou une classe, se fait efficacement via des cas d'utilisation montrant à la fois du code et le résultat correspondant.% \footnote{ - La mise en forme des codes se fait via le package \tdocpack{minted}. + La mise en forme des codes se fait via les packages \tdocpack{minted} et \tdocpack{tcolorbox}. } -%\begin{tdoccaut} -% La version 3 de \tdocpack{minted} ne peut pas être prise en compte pour le moment car elle comporte des bugs : voir \url{https://github.com/gpoore/minted/issues/401}. On force donc l'usage de la version 2 de \tdocpack{minted}. -%\end{tdoccaut} +\subsection{Codes \tdocquote{en ligne}} +\label{tutodoc-listing-latex-inline} +\begin{tdocexa}[Usage standard] + La macro \tdocmacro{tdoclatexin}\,% + \footnote{ + Le nom de la macro \tdocmacro{tdoclatexin} vient de \tdocquote{\tdocprewhy{in.line} \LaTeX} soit \tdocinEN{\LaTeX\ en ligne}. + } + permet de taper du code en ligne via un usage similaire à \tdocmacro{verb}, ou bien comme une macro standard (voir la gestion des accolades dans le dernier cas ci-dessous). + Voici des exemples d'utilisation.% + \footnote{ + Une couleur de fond est volontairement utilisée pour subtilement faire ressortir les codes \tdoclatexin{\LaTeX}\,. + } -\subsection{Codes \tdocquote{en ligne}} -\label{tutodoc-listing-inline} + \begin{tdoclatex}<\tdoctcb{sbs}> +1: \tdoclatexin|$a^b = c$| \\ +2: \tdoclatexin+\tdoclatexin|$a^b = c$|+ \\ +3: \tdoclatexin{\tdoclatexin{$a^b = c$}} + \end{tdoclatex} +\end{tdocexa} -La macro \tdocmacro{tdoclatexin} -\footnote{ - Le nom de la macro \tdocmacro{tdoclatexin} vient de \tdocquote{\tdocprewhy{in.line} \LaTeX} soit \tdocinEN{\LaTeX\ en ligne}. -} -permet de taper du code en ligne via un usage similaire à \tdocmacro{verb} ou bien comme une macro standard (voir la gestion des accolades dans le dernier cas ci-dessous). -Voici des exemples d'utilisation. +\begin{tdocexa}[Des options possibles] + Comme la macro \tdocmacro{tdoclatexin} s'appuie sur \tdocpack{minted}, on peut utiliser toutes les options prises en compte par \tdocpack{minted}. + Voici des exemples d'utilisation. -\begin{tdoclatex}[sbs] - 1: \tdoclatexin|$a^b = c$| \\ - 2: \tdoclatexin+\tdoclatexin|$a^b = c$|+ \\ - 3: \tdoclatexin{\tdoclatexin{$a^b = c$}} -\end{tdoclatex} + \begin{tdoclatex}<\tdoctcb{sbs}> +1: \tdoclatexin[style = bw]{$a^b = c$} \\ +2: \tdoclatexin[style = igor, + showspaces]{$a^b = c$} + \end{tdoclatex} +\end{tdocexa} \begin{tdocnote} - La macro \tdocmacro{tdoclatexin} est utilisable dans une note de pied de page : voir ci-dessous. + La macro \tdocmacro{tdoclatexin} est utilisable dans une note de pied de page comme ci-dessous.% \footnote{ - \tdoclatexin+$minted = TOP$+ a été tapé \tdoclatexin|\tdoclatexin+$minted = TOP$+| dans cette note de bas de page.. + \tdoclatexin+$minted = TOP$+ a été tapé \tdoclatexin|\tdoclatexin+$minted = TOP$+| dans cette note de bas de page. } - De plus, une couleur de fond est volontairement utilisée pour subtilement faire ressortir les codes \tdoclatexin#\LaTeX#\,. \end{tdocnote} \subsection{Codes tapés directement} +\label{tutodoc-listing-latex-direct} \begin{tdocexa}[Face à face] - Via \tdocenv[{[sbs]}]{tdoclatex}, on affichera un code et son rendu côte à côte. - Indiquons que \tdoclatexin#sbs# est pour \tdocquote{\tdocprewhy{s.ide} \tdocprewhy{b.y} \tdocprewhy{s.ide}} soit \tdocinEN{côte à côte}. - \tdocbasicinputDOC{examples-listing-ABC.tex} + Afficher un code et son rendu côte à côte se fait comme suit où la macro \tdocmacro{tdoctcb} permet de juste taper \tdoclatexin{\tdoctcb{sbs}} au lieu de \tdoclatexin{listing side text} (\tdoclatexin#sbs# est pour \tdocquote{\tdocprewhy{s.ide} \tdocprewhy{b.y} \tdocprewhy{s.ide}}\,, soit \tdocinEN{côte à côte}, tandis que \tdoclatexin#tcb# est l'abréviation standard de \texttt{tcolorbox}). Bien noter l'emploi de chevrons, et non de crochets (nous revenons sur ceci un plus bas). + \tdoclatexshow{examples-listing-latex-ABC.tex} \end{tdocexa} \begin{tdocexa}[À la suite] - \tdocenv{tdoclatex} produit le résultat suivant qui correspond à l'option par défaut \tdoclatexin#std#\,. + \tdocenv{tdoclatex} produit le résultat suivant (ce réglage par défaut s'obtient aussi via l'emploi de \tdoclatexin#\tdoctcb{std}#).% \footnote{ \tdoclatexin{std} fait référence au comportement \tdocquote{standard} de \tdocpack{tcolorbox} vis à vis de la librairie \tdocpack{minted}. } \begin{tdoclatex} - $A = B + C$ +$A = B + C$ \end{tdoclatex} \end{tdocexa} \begin{tdocexa}[Juste le code] - Via \tdocenv[{[code]}]{tdoclatex}, on aura juste le code comme ci-après. + Via \tdoclatexin#\tdoctcb{code}#, on aura juste le code comme ci-après. - \begin{tdoclatex}[code] - $A = B + C$ + \begin{tdoclatex}<\tdoctcb{code}> +$A = B + C$ \end{tdoclatex} \end{tdocexa} -\begin{tdocwarn} - Avec la mise en forme par défaut, si le code commence par un crochet ouvrant, il faudra indiquer explicitement l'option par défaut. - \tdocbasicinputDOC{examples-listing-strange.tex} +\begin{tdocexa}[Personnaliser] + L'environnement \tdocenv*{tdoclatex} accepte deux types d'argument optionnel. + % + \begin{enumerate} + \item Entre de classiques crochets, on peut employer toute option prise en compte par \tdocpack{minted}. + \item Entre des chevrons, on peut employer toute option prise en compte par les environnements obtenus via \tdocpack{tcolorbox}. + \end{enumerate} - \smallskip + Par exemple, on peut faire les modifications suivantes si besoin.% + \footnote{ + Cette documentation utilise les options entre chevrons pour obtenir des rendus corrects de codes \LaTeX\ produisant des cadres ombrés : voir la section \ref{tutodoc-admonitions} page \pageref{tutodoc-admonitions}. + } - Une autre méthode consiste à utiliser la primitive \tdocmacro{string}. - \tdocbasicinputDOC{examples-listing-strange-bis.tex} + \tdoclatexshow{examples-listing-latex-ABC-custom.tex} +\end{tdocexa} + +\medskip + +\begin{tdocwarn} + Pour obtenir la mise en forme par défaut d'un code commençant par un crochet, ou un chevron, il faudra bidouiller un peu comme ci-dessous. + \tdoclatexshow{examples-listing-latex-strange.tex} + \smallskip + + Une autre méthode consiste à utiliser la primitive \tdocmacro{string} comme ci-après. + \tdoclatexshow{examples-listing-latex-strange-bis.tex} \end{tdocwarn} @@ -1762,114 +2154,172 @@ Voici des exemples d'utilisation. Pour les codes suivants, on considère un fichier de chemin relatif \verb+examples-listing-xyz.tex+, et ayant le contenu suivant. -\tdoclatexinput[code]{examples-listing-xyz.tex} - +\tdoclatexinput<\tdoctcb{code}>{examples-listing-latex-xyz.tex} \medskip -La macro \tdocmacro{tdoclatexinput}, présentée ci-dessous, attend le chemin d'un fichier et propose les mêmes options que l'environnement \tdocenv*{tdoclatex}. +La macro \tdocmacro{tdoclatexinput}, présentée ci-dessous, attend le chemin d'un fichier et propose le même système d'options entre crochets, ou entre chevrons, que l'environnement \tdocenv*{tdoclatex}. -\begin{tdocexa}[Face à face] - \leavevmode +\foreach \title/\extra/\fname in {% + {Face à face}/% + {}/% + sbs, + {À la suite}/% + { qui correspond aussi à l'option \tdoclatexin{\tdoctcb{std}}\,}/% + std,% + {Juste le code}/% + {}/% + code,% + {Personnaliser}/% + {}/% + perso% +}{ + \begin{tdocexa}[\title] + \leavevmode + \tdoclatexshow[explain=Ceci produit la mise en forme suivante\extra.]{examples-listing-latex-latexinput-option-\fname.tex} + \end{tdocexa} +} - \begin{tdoclatex}[code] -\tdoclatexinput[sbs]{examples-listing-xyz.tex} - \end{tdoclatex} - Ceci produit la mise en forme suivante. +\subsection{Codes importés et mis en situation} +\label{tutodoc-listing-latexshow} - \tdoclatexinput[sbs]{examples-listing-xyz.tex} +\begin{tdocnote} + Les textes par défaut de la macro \tdocmacro{tdoclatexshow} tiennent compte de la langue détectée par \thisproj. +\end{tdocnote} -\end{tdocexa} +\begin{tdocexa}[Mise en situation] + \tdoclatexin+\tdoclatexshow{examples-listing-xyz.tex}+ produit ce qui suit. -\begin{tdocexa}[À la suite] - \leavevmode + \smallskip - \begin{tdoclatex}[code] -\tdoclatexinput{examples-listing-xyz.tex} + \tdoclatexshow{examples-listing-latex-xyz.tex} +\end{tdocexa} - \end{tdoclatex} - Ceci produit la mise en forme suivante où l'option employée par défaut est \tdoclatexin#std#. +\begin{tdocexa}[Changer le texte explicatif] + Via la clé \tdoclatexin|explain|, on peut utiliser un texte personnalisé. Ainsi, \tdoclatexin|\tdoclatexshow[explain = Voici le rendu réel.]{examples-listing-xyz.tex}| produira ce qui suit. - \tdoclatexinput{examples-listing-xyz.tex} + \smallskip + \tdoclatexshow[explain = Voici le rendu réel.]{examples-listing-latex-xyz.tex} \end{tdocexa} -\begin{tdocexa}[Juste le code] - \leavevmode +\begin{tdocexa}[Les options disponibles] + En plus du texte explicatif, il est aussi possible d'utiliser toutes les options de l'environnement \tdocenv*{tdocshowcase}, voir la section \ref{tutodoc-showcase} page \pageref{tutodoc-showcase}. + Voici un exemple illustrant ceci. - \begin{tdoclatex}[code] -\tdoclatexinput[code]{examples-listing-xyz.tex} + \medskip - \end{tdoclatex} + \tdoclatexinput<\tdoctcb{code}>{examples-listing-latex-latexshow-options.tex} - Ceci produit la mise en forme suivante. + \smallskip - \tdoclatexinput[code]{examples-listing-xyz.tex} + Ceci va produire ce qui suit. + + \smallskip + \input{examples-listing-latex-latexshow-options.tex} \end{tdocexa} +\section{Présenter du code informatique} -\subsection{Codes importés et mis en situation} -\label{tutodoc-latexshow} +Certains packages proposent des fonctionnalités nécessitant de coder un peu en \lua.% +\footnote{ + Pour les mathématiques, on peut citer \tdocpack{luacas} et \tdocpack{tkz-elements}. +} +Pour ces projets, la documentation doit pouvoir présenter des lignes de code \lua\,; c'est pour cette raison que \thisproj\ permet de faire cela aisément, et bien plus.% +\footnote{ + La mise en forme des codes étant faite via les packages \tdocpack{minted} et \tdocpack{tcolorbox}, les macros et les environnements présentés dans cette section permettent la mise en forme de codes dans tous les langages supportés par \pygmentsREF, un projet \python\ utilisé en coulisse par \tdocpack{minted}. +} -\begin{tdocexa}[Mise en situation] - \tdoclatexin+\tdoclatexshow{examples-listing-xyz.tex}+ produit ce qui suit. - \medskip +\begin{tdocimp} + Les outils de cette section permettent aussi de présenter du code \LaTeX, mais il ne faut pas les utiliser pour de simples cas d'utilisation, car les macros et les environnements présentées juste après servent à étudier du code, et non juste à l'employer : se reporter à la section \ref{tutodoc-listing-latex} page \pageref{tutodoc-listing-latex} pour faire appel aux bons outils pour la mise en forme de cas d'utilisation \LaTeX. +\end{tdocimp} - \begin{tdocshowcaseDOC} - \tdoclatexshow{examples-listing-xyz.tex} - \end{tdocshowcaseDOC} -\end{tdocexa} +\subsection{Codes \tdocquote{en ligne}} -\begin{tdocnote} - Les textes par défaut tiennent compte de la langue détectée par \thisproj. -\end{tdocnote} +La macro \tdocmacro{tdoccodein}\,% +\footnote{ + Le nom de la macro \tdocmacro{tdoccodein} vient de \tdocquote{\tdocprewhy{in.line} \tdocpre{code}} soit \tdocinEN{code en ligne}. +} +attend deux arguments : le 1\ier\ indique le langage de programmation, et le 2\ieme\ donne le code à mettre en forme. +Il est possible d'utiliser une option de fonctionnement identique à ce que propose \tdocmacro{tdoclatexin} : voir la section \ref{tutodoc-listing-latex-inline} page \pageref{tutodoc-listing-latex-inline}. +Voici des cas d'utilisation possibles.% +\footnote{ + Une couleur de fond est volontairement utilisée pour subtilement faire ressortir les codes mis en forme. + Par exemple, taper \tdoclatexin{\tdoccodein{py}{funny = "ah"*3}} produira \tdoccodein{py}{funny = "ah"*3}\,. +} +\begin{tdoclatex} +1: \tdoccodein{py}{print("OK" if i = 0 else "KO")} \\ +2: \tdoccodein[style = bw]{py}{print("OK" if i = 0 else "KO")} \\ +3: \tdoccodein[style = igor, showspaces]% + {py}{print("OK" if i = 0 else "KO")} +\end{tdoclatex} -\begin{tdocexa}[Changer le texte explicatif] - Via la clé \tdoclatexin|explain|, on peut utiliser un texte personnalisé. Ainsi, \tdoclatexin|\tdoclatexshow[explain = Voici le rendu réel.]{examples-listing-xyz.tex}| produira ce qui suit. +\medskip - \medskip +\begin{tdocnote} + Sur la page \url{https://pygments.org/languages/} se trouve la liste complète des langages supportés avec leur nom court. + Par exemple, il est possible de mettre en forme du code \brainfuck\ comme cette séquence \tdoccodein{bf}{++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.} qui sert à afficher \tdoccodein{text}{Hello}\,. +\end{tdocnote} - \begin{tdocshowcaseDOC} - \tdoclatexshow[explain = Voici le rendu réel.]{examples-listing-xyz.tex} - \end{tdocshowcaseDOC} -\end{tdocexa} +\subsection{Codes tapés directement} -\begin{tdocexa}[Les options disponibles] - En plus du texte explicatif, il est aussi possible d'utiliser toutes les options de l'environnement \tdocenv*{tdocshowcase}, voir \ref{tutodoc-showcase} page \pageref{tutodoc-showcase}. - Voici un exemple illustrant ceci. +On peut taper directement du code dans un document \LaTeX\ via \tdocenv{tdoccode} qui attend un argument indiquant le langage de programmation, et d'éventuelles options entre crochets et/ou entre chevrons de fonctionnements identiques à ce que propose \tdocenv{tdoclatex} : voir la section \ref{tutodoc-listing-latex-direct} page \pageref{tutodoc-listing-latex-direct}.% +\footnote{ + Noter que la coloration des codes \LaTeX\ est correcte du point de vue lexical, mais fausse sémantiquement parlant. +} - \medskip - \tdoclatexinput[code]{examples-listing-latexshow-options.tex} +% Strings "..." in the source codes must also be translated. +\foreach \title/\lang in {% + {Fonctionnement standard}/% + perl,% + {Personnalisation ponctuelle du rendu}/% + lua% +}{ + \begin{tdocexa}[\title] + \leavevmode + \tdoclatexshow{examples-listing-full-hello-you-\lang} + \end{tdocexa} +} - \medskip +\subsection{Codes importés} - Ceci va produire ce qui suit. +La macro \tdocmacro{tdoccodeinput} attend le langage et le chemin d'un fichier à mettre en forme, et éventuellement d'options similaires à ce que propose l'environnement \tdocenv*{tdoccode}\,. - \medskip - \begin{tdocshowcaseDOC} - \input{examples-listing-latexshow-options.tex} +% Strings "..." in the source codes must also be translated. +\foreach \title/\lang in {% + {Fonctionnement standard}/% + hs,% + {Personnalisation ponctuelle du rendu}/% + tex% +}{ + \begin{tdocexa}[\title] + \leavevmode + \tdoclatexinput<\tdoctcb{code}>{examples-listing-full-input-hello-you-\lang} + + Ceci donne: - \end{tdocshowcaseDOC} -\end{tdocexa} + \input{examples-listing-full-input-hello-you-\lang} + \end{tdocexa} +} \section{Indiquer les changements} @@ -1882,22 +2332,20 @@ Afin de faciliter le suivi d'un projet, il est indispensable de fournir un histo \subsection{À quel moment ?} \label{tutodoc-changes-when} -On peut au choix dater quelque chose, ou bien le versionner, dans ce second cas le numéro de version pourra éventuellement être daté. +On peut dater et/ou versionner quelque chose. \begin{tdocexa}[Dater des nouveautés] La macro \tdocmacro{tdocdate} permet d'indiquer une date dans la marge comme dans l'exemple suivant. \tdoclatexshow{examples-version-n-change-dating.tex} - \end{tdocexa} -\begin{tdocexa}[Versionner des nouveautés en les datant événtuellement] +\begin{tdocexa}[Versionner des nouveautés en les datant éventuellement] Associer un numéro de version à une nouveauté se fait via la macro \tdocmacro{tdocversion}, la couleur et la date étant des arguments optionnels. \tdoclatexshow{examples-version-n-change-versioning.tex} - \end{tdocexa} @@ -1905,7 +2353,6 @@ On peut au choix dater quelque chose, ou bien le versionner, dans ce second cas L'exemple suivant montre qu'il faut placer une dates et/ou une version juste après un titre de paragraphe, et non avant. \tdoclatexshow{examples-version-n-change-para-title.tex} - \end{tdocexa} @@ -1913,7 +2360,6 @@ On peut au choix dater quelque chose, ou bien le versionner, dans ce second cas Si besoin, on peut modifier le décalage vertical utilisé pour bien placer les dates et les versions dans la marge, la valeur par défaut étant $(-8\,\mathit{pt})$. \tdoclatexshow{examples-version-n-change-manual-setting.tex} - \end{tdocexa} @@ -1927,14 +2373,11 @@ On peut au choix dater quelque chose, ou bien le versionner, dans ce second cas \begin{tdoccaut} - Seul l'emploi du format numérique \tdoclatexin+YYYY-MM-DD+ est vérifié, + Seul l'emploi du format numérique \tdoclatexin+YYYY-MM-DD+ est vérifié,% \footnote{ Techniquement, vérifier la validité d'une date, via \LaTeX3, ne présente pas de difficulté. } et ceci est un choix ! Pourquoi cela ? Tout simplement car dater et versionner des explications devrait se faire de façon semi-automatisée afin d'éviter tout bug humain. -% \footnote{ -% L'auteur de \thispack{} est entrain de mettre en place un ensemble d'outils permettant une telle semi-automatisation. -% }. \end{tdoccaut} @@ -1947,17 +2390,14 @@ On peut au choix dater quelque chose, ou bien le versionner, dans ce second cas \begin{tdocnote} -\begin{tdocnew} - \item Info 1... - \item Info 2... -\end{tdocnew} -% Concernant les icônes, voir la note au début de la section \ref{tutodoc-admonitions} page \pageref{tutodoc-admonitions}. + Concernant les icônes, voir la note au début de la section \ref{tutodoc-admonitions} page \pageref{tutodoc-admonitions}. \end{tdocnote} \subsubsection{La sobriété avant tout} \foreach \exatitle/\filename in { +% Standard. {Juste pour la toute première version}/%<-- Translate me! first, {Pour les nouveautés}/% <-- Translate me! @@ -1974,7 +2414,7 @@ On peut au choix dater quelque chose, ou bien le versionner, dans ce second cas todo, {Informations techniques}/% <-- Translate me! tech, - % +% Customized. {Thématiques aux choix avec une icône}/%<-- Translate me! user-choice-icon, {Thématiques aux choix sans icône}/% <-- Translate me! @@ -1983,8 +2423,7 @@ On peut au choix dater quelque chose, ou bien le versionner, dans ce second cas \begin{tdocexa}[\exatitle] \leavevmode - \tdoclatexinput[sbs]{examples-version-n-change-chges-\filename.tex} - + \tdoclatexinput<\tdoctcb{sbs}>{examples-version-n-change-chges-\filename.tex} \end{tdocexa} } @@ -2002,26 +2441,24 @@ Il peut être utile de mettre en avant certains changements : ceci n'est faisabl \begin{tdocexa}[\exatitle] \leavevmode - \tdoclatexinput[sbs]{examples-version-n-change-color-chges-\filename.tex} - + \tdoclatexinput<\tdoctcb{sbs}>{examples-version-n-change-color-chges-\filename.tex} \end{tdocexa} } \subsection{Le quoi et le quand} -Les clés optionnelles \tdoclatexin{col-chges}\,, \tdoclatexin{date} et \tdoclatexin{version} permettent de dater et versionner directement un changement d'un type particulier. Voici des exemples d'utilisation. +Les clés optionnelles \tdoclatexin{col-chges}\,, \tdoclatexin{date} et \tdoclatexin{version} permettent de dater et/ou versionner directement un changement d'un type particulier. Voici des exemples d'utilisation. \tdoclatexshow{examples-version-n-change-what-n-when.tex} - \section{Décoration} -Finissons cette documentation avec un petit outil de mise en forme qui rend de grands services. +Finissons cette documentation avec un petit outil de mise en forme qui peut rendre de grands services. -\begin{tdoclatex}[sbs] +\begin{tdoclatex}<\tdoctcb{sbs}> Bla, bla, bla... \tdocsep % Pratique pour délimiter. @@ -2071,7 +2508,7 @@ Ble, ble, ble... Les traductions sont organisées grosso-modo comme dans la figure \ref{tutodoc-contrib-translate-dir} où seuls les dossiers importants pour les traductions ont été \tdocquote{ouverts}\,.% \footnote{ - Cette organisation était celle du 5 octobre 2024, mais elle reste d'actualité. + Cette organisation était celle du 5 octobre 2024. } \textbf{Un peu plus bas, la section \ref{tutodoc-contrib-translate} donne les démarches à suivre pour ajouter de nouvelles traductions.} @@ -2095,7 +2532,7 @@ Ce dossier permet de savoir où en sont les traductions du point de vue du proje \subsubsection{Les fichiers \texttt{README.md} et \texttt{LICENSE.txt}} -Le fichier \texttt{LICENSE.txt} est bien nommé, tandis que le fichier \texttt{README.md} reprend en anglais les points importants de ce qui est dit dans cette section sur les nouvelles traductions. +Le fichier \texttt{LICENSE.txt} est bien nommé, tandis que le fichier \texttt{README.md} reprend en anglais les points importants de ce qui est dit dans cette section à propos des nouvelles traductions. @@ -2122,7 +2559,7 @@ Le fichier \texttt{LICENSE.txt} est bien nommé, tandis que le fichier \texttt{R \begin{tdocnote} - Le dossier \verb#doc# est réservé aux documentations. Il contient des fichiers de type \verb#TEX# compilables directement pour une validation en temps réel des traductions faites. + Le dossier \verb#doc# est réservé aux documentations. Il contient des fichiers \verb#TEX# compilables directement pour une validation en temps réel des traductions faites. \end{tdocnote} @@ -2136,14 +2573,14 @@ Le fichier \texttt{LICENSE.txt} est bien nommé, tandis que le fichier \texttt{R \emph{\textbf{Imaginons que vous souhaitiez ajouter le support de l'italien en partant de fichiers rédigés en anglais.}}% \footnote{ - Comme indiqué plus haut, il n'y a pas de besoin réel du côté du dossier \texttt{doc} de la documentation. + Comme indiqué plus haut, il n'y a pas de besoin réel du côté du dossier \texttt{doc}. } -\paragraph{Méthode 1 : \git.} +\paragraph{Méthode 1 : utilisation de \git.} \begin{enumerate} - \item Obtenir tout le dossier du projet via \thisrepo\,. + \item Récupérer le dossier du projet via \thisrepo\,. Ne pas passer via la branche \verb#main# qui sert à figer les dernières versions stables des projets du dépôt unique \thismonorepo\,. \item Dans le dossier \verb#tutodoc/contrib/translate#, créer une copie \verb#it# du dossier \verb#en#\,, le nom court de la langue étant documenté dans @@ -2151,7 +2588,7 @@ Le fichier \texttt{LICENSE.txt} est bien nommé, tandis que le fichier \texttt{R {la page \tdocquote{IIETF language tag}} de \texttt{Wikipédia}. - \item Une fois la traduction achevée dans le dossier \verb#it# , il faudra la communiquer via \thisrepo\ en usant d'un classique \verb#git push#\,. + \item Une fois la traduction achevée dans le dossier \verb#it#, partager la via \thisrepo\ en usant d'un classique \verb#git push#\,. \end{enumerate} @@ -2189,6 +2626,59 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \small +\begin{tdocfix}[version = 1.7.1, date = 2024-12-18] + \item Documentation: les références aux outils pour indiquer des changements ont été incorrectement écrites comme caractéristiques des contenus colorés mis en avant. +\end{tdocfix} + + +\begin{tdocbreak} + \item La macro \tdocmacro{tdocenv} et sa version étoilée ne proposent plus d'option. + + \item Cas d'utilisation \LaTeX: la présentation par défaut est plus sobre, et des options permettent d'ajouter les lignes cadrantes, ou la bande colorée. Voir juste après. +\end{tdocbreak} + + +\begin{tdocnew} + \item Mise en forme de codes informatiques en plus de ceux spécifiquement en \LaTeX. + % + \begin{enumerate} + \item Création de \tdocenv{tdoccode} et de \tdocmacro{tdoccodein}. + + \item Pour les macros pour du code en ligne, et les environnements pour des blocs de code, des options de type \tdocpack{minted} s'indiquent à l'intérieur de crochet de manière traditionnelle: \tdoclatexin{[options minted]}\,. + + \item Pour les environnements pour des blocs de code, des options de type \tdocpack{tcolorbox} s'indiquent à l'intérieur de chevrons: \tdoclatexin{<options tcolorbox>}\,. + + \item La nouvelle macro \tdocmacro{tdoctcb} permet d'utiliser des raccourcis pour les styles \tdocpack{tcolorbox} régulièrement utilisés. + \end{enumerate} + + \item Documentation: une nouvelle section présente les outils de mise en forme de codes informatiques autres que les cas d'utilisation de \LaTeX. +\end{tdocnew} + + +\begin{tdocupdate} + \item Les sous-sous-sections sont numérotées en lettres minuscules. + + \item Thèmes. + % + \begin{enumerate} + \item Moins d'espace consommé. + + \item Les ombres ont une meilleure coloration. + + \item Pour tous les thèmes sauf le \tdoclatexin{draft}, le rayon des arcs des coins des cadres passe de \tdoclatexin{.75mm} à \tdoclatexin{.2pt}\,. + + \item Cas d'utilisation de \LaTeX: avec le thème \tdoclatexin{color}, la couleur du fond passe de \tdoclatexin[bgcolor = yellow!4]{yellow!4} à \tdoclatexin{gray!5}. + + \item Dernières modifications: avec le thème \tdoclatexin{dark}, le texte \tdoclatexin{[Init]} produit par la macro \tdocmacro{tdocstartproj} utilise la même police que celle des titres des environnements pour indiquer des changements. + \end{enumerate} +\end{tdocupdate} + +\tdocsep + + +% ------------------ % + + \begin{tdocbreak}[version = 1.7.0, date = 2024-12-04] \item Mise en forme : la classe \tdoccls{scrartcl} remplace la vénérable \tdoccls{article}. Cela implique un meilleur positionnement des notes de marge avec les options retenues pour charger \tdoccls{scrartcl}. @@ -2197,7 +2687,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \item Les noms des clés pour les couleurs utiliseront des traits d'union lorsque cela sera nécessaire : cela implique les changements suivants. % \begin{enumerate} - \item Mise en avant colorée de contenus : l'option \tdoclatexin{colchges} des environnements a été renommée \tdoclatexin{col-chges}. + \item Indiquer les derniers changements : l'option \tdoclatexin{colchges} des environnements a été renommée \tdoclatexin{col-chges}. \item Démonstration de codes \LaTeX\ : pour l'environnement \tdocenv*{tdocshowcase} et la macro \tdocmacro{tdocshowcaseinput}, les options \tdoclatexin{colstripe} et \tdoclatexin{coltext} ont été renommées \tdoclatexin{col-stripe} et \tdoclatexin{col-text}\,. \end{enumerate} @@ -2222,10 +2712,10 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \item La macro \tdocmacro{tdocinEN} respecte les règles linguistiques anglaises. - \item Mise en avant colorée de contenus. + \item Indiquer les derniers changements. % \begin{enumerate} - \item Un nouvel environnement \tdocenv{tdoctodo} a été ajouté. + \item Ajout de l'environnement \tdocenv{tdoctodo}\,. \item Chaque environnement dispose d'une nouvelle option \tdoclatexin{col} pour la couleur du contenu indiquant les changements. \end{enumerate} @@ -2233,7 +2723,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \begin{tdocupdate} - \item Le thème \tdoclatexin{draft} et les changements : les environnements pour les types de changements n'mploient plus d'icones. + \item Le thème \tdoclatexin{draft} et les changements : les environnements pour les derniers changements n'emploient plus d'icone. \item Documentation : la galerie des thèmes utilise un meilleur exemple factice. \end{tdocupdate} @@ -2244,10 +2734,10 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \item Organisation simplifiée des fichiers de configuration dans le projet final. % \begin{enumerate} - \item Comme du \texttt{CSS} : emploi d'un fichier par thème avec des noms du type \texttt{tutodoc-bw.css.cls}\,. + \item Emploi d'un fichier par thème avec des noms du type \texttt{tutodoc-*.css.cls}\,. - \item Locale : utilisation de noms comme \texttt{tutodoc-fr.loc.cls}\,. + \item Localisation : utilisation de noms comme \texttt{tutodoc-*.loc.cls}\,. \end{enumerate} \end{tdoctech} @@ -2258,7 +2748,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \begin{tdocnew}[version = 1.6.2, date = 2024-10-30] - \item Les macros \tdocmacro{tdocdate} et \tdocmacro{tdocversion} ont un nouvel argument final facultatif \tdoclatexin{<voffset>} pour choisir un décalage vertical spécifique. + \item Les macros \tdocmacro{tdocdate} et \tdocmacro{tdocversion} ont un nouvel argument final facultatif \tdoclatexin{<voffset>} pour modifier le décalage vertical. \item De meilleurs environnements pour indiquer les modifications apportées. \begin{enumerate} @@ -2292,7 +2782,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \begin{tdocbreak}[version = 1.6.0, date = 2024-10-27] - \item L'environnement \tdocenv*{showcase} et ses descendants : la clé \tdoclatexin{color} a été renommée \tdoclatexin{col-stripe}. + \item L'environnement \tdocenv*{showcase} et ses descendants : la clé \tdoclatexin{color} a été renommée \tdoclatexin{colstripe}. \item La macro \tdocmacro{tdoclinkcolor} devient la couleur \tdoclatexin{tutodoc@link@color} destinée à un usage interne. \end{tdocbreak} @@ -2303,7 +2793,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \item Journal des modifications : ajout de l'environnement \tdocenv*{tdoctech} pour les informations techniques. - \item L'environnement \tdocenv*{showcase} et ses descendants : la clé \tdoclatexin{col-text} permet de changer aussi la couleur du texte. + \item L'environnement \tdocenv*{showcase} et ses descendants : la clé \tdoclatexin{coltext} permet de changer aussi la couleur du texte. \item Les nouvelles fonctionnalités ont été documentées. \end{tdocnew} @@ -2360,7 +2850,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \begin{tdocbreak}[version = 1.4.0, date = 2024-09-28] \item L'environnement \tdocenv*{tdoccaution} a été renommé \tdocenv*{tdoccaut} pour une saisie simplifiée. - \item Mise en avant de contenus : les exemples et remarques, indiqués via les environnements \tdocenv*{tdocexa} et \tdocenv*{tdocrem}, sont toujours numérotés via un compteur commun. + \item Mise en avant de contenus : les exemples et remarques, indiqués via les environnements \tdocenv*{tdocexa} et \tdocenv*{tdocrem}, sont numérotés via un compteur commun. \item La macro inutilisée \tdocmacro{tdocxspace} a été supprimée. \end{tdocbreak} @@ -2369,7 +2859,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \begin{tdocnew} \item Journal des changements : la macro \tdocmacro{tdocstartproj} permet de gérer le cas de la première version publique. - \item Factorisation du code : la macro \tdocmacro{tdocicon} est en charge de l'ajout d'icônes devant du texte. + \item Factorisation du code : la macro \tdocmacro{tdocicon} se charge de l'ajout d'icônes devant du texte. \end{tdocnew} @@ -2456,7 +2946,7 @@ La participation en tant que codeuse, ou codeur, se fait via le dépôt \thisrep \begin{tdocnew}[version = 1.1.0, date = 2024-01-06] \item Journal des changements : deux nouveaux environnements. \begin{enumerate} - \item \tdocenv{tdocbreak} pour les \tdocquote{bifurcations}\,, soit les modifications non rétrocompatibles. + \item \tdocenv{tdocbreak} pour les \tdocquote{bifurcations}\,, c'est-à-dire les modifications non rétrocompatibles. \item \tdocenv{tdocprob} pour les problèmes repérés. \end{enumerate} diff --git a/macros/latex/contrib/ucph-revy/README.md b/macros/latex/contrib/ucph-revy/README.md index d2b6baed04..59f9f2ebcf 100644 --- a/macros/latex/contrib/ucph-revy/README.md +++ b/macros/latex/contrib/ucph-revy/README.md @@ -1,6 +1,6 @@ Package ucph-revy ================= -v1.0.2 +v1.1.0 A class for typesetting scripts, containing both lyrics and prose, in the style used by the student revues (revy) at the Faculties of diff --git a/macros/latex/contrib/ucph-revy/ucph-revy-da-doc.pdf b/macros/latex/contrib/ucph-revy/ucph-revy-da-doc.pdf Binary files differindex 1080060964..8f603644ff 100644 --- a/macros/latex/contrib/ucph-revy/ucph-revy-da-doc.pdf +++ b/macros/latex/contrib/ucph-revy/ucph-revy-da-doc.pdf diff --git a/macros/latex/contrib/ucph-revy/ucph-revy-da-man.pdf b/macros/latex/contrib/ucph-revy/ucph-revy-da-man.pdf Binary files differindex d040dacefe..f44d24ce13 100644 --- a/macros/latex/contrib/ucph-revy/ucph-revy-da-man.pdf +++ b/macros/latex/contrib/ucph-revy/ucph-revy-da-man.pdf diff --git a/macros/latex/contrib/ucph-revy/ucph-revy-en-doc.pdf b/macros/latex/contrib/ucph-revy/ucph-revy-en-doc.pdf Binary files differindex 784e1235ca..1ce56ca227 100644 --- a/macros/latex/contrib/ucph-revy/ucph-revy-en-doc.pdf +++ b/macros/latex/contrib/ucph-revy/ucph-revy-en-doc.pdf diff --git a/macros/latex/contrib/ucph-revy/ucph-revy-en-man.pdf b/macros/latex/contrib/ucph-revy/ucph-revy-en-man.pdf Binary files differindex d2baff1111..42c4984baa 100644 --- a/macros/latex/contrib/ucph-revy/ucph-revy-en-man.pdf +++ b/macros/latex/contrib/ucph-revy/ucph-revy-en-man.pdf diff --git a/macros/latex/contrib/ucph-revy/ucph-revy.dtx b/macros/latex/contrib/ucph-revy/ucph-revy.dtx index 9fdb39549e..35cef0d6a2 100644 --- a/macros/latex/contrib/ucph-revy/ucph-revy.dtx +++ b/macros/latex/contrib/ucph-revy/ucph-revy.dtx @@ -20,7 +20,7 @@ %<class>\NeedsTeXFormat{LaTeX2e}[2005/12/01] %<class>\ProvidesClass{ucph-revy} %<*class> - [2024/09/24 v1.0.2 A class for making musical manuscripts] + [2024/12/18 v1.1.0 A class for making musical manuscripts] %</class> %<*driver> \documentclass[a4paper]{ltxdoc} @@ -1042,15 +1042,17 @@ % De her definitioner indeholder forskellen på at vende % registermærkningerne mod højre eller mod venstre. % \changes{v1.0.1}{2024/02/07}{Juster mærkebredden} +% \changes{v1.1.0}{2024/12/18}{Gør tabsne bredere, så printere ikke skærer dem af} % \end{danish}^^A % \begin{english}^^A % These definitions contain the differences % between right and left facing thumb tabs. % \changes{v1.0.1}{2024/02/07}{Adjust tab width} +% \changes{v1.1.0}{2024/12/18}{Make tabs wider, to clear cutoff when printed} % \end{english} % \begin{macrocode} \def\overtableft{-.75cm} - \def\overtabright{.5cm} + \def\overtabright{1.0cm} \def\undertabright{\overtabright} \def\undertableft{\overtableft - 1cm} \def\underangle{|-} @@ -1063,7 +1065,7 @@ \def\movetoleftside{ % \end{macrocode} % \begin{macrocode} - \def\overtableft{-1.8cm} + \def\overtableft{-2.3cm} \def\overtabright{.2cm} \def\undertabright{\overtabright + 1cm} \def\undertableft{\overtableft} @@ -2210,12 +2212,19 @@ % \end{environment} % % \begin{environment}{props} +% \begin{environment}{costumes} +% \begin{danish} +% \changes{v1.1.0}{2024/12/18}{Introducer Kostume-miljøet} +% \end{danish} +% \begin{english} +% \changes{v1.1.0}{2024/12/18}{Introduce costumes environment} +% \end{english} % \begin{environment}{mics} % \begin{environment}{instructors} % \begin{danish} % Ud over rollelisten findes også miljøer til lister over -% rekvisitter (som også ver med i eksemplet), mikrofoner og -% instruktørere.\footnote{\cn\ stiller ikke nogen krav til +% rekvisitter (som også ver med i eksemplet), kostumer, mikrofoner +% og instruktørere.\footnote{\cn\ stiller ikke nogen krav til % hvorvidt nogen af de her miljøer bliver brugt. Check med din % revyorganisation for at høre hvad der skal være med i materiale % til din revy.} For de sidste miljøer er kommandoerne til at lave @@ -2225,6 +2234,9 @@ % % \end{showcommand} % \begin{showcommand} +% \verb|\costume|\marg{kostume}\oarg{ansvarlig}\meta{beskrivelse}, +% \end{showcommand} +% \begin{showcommand} % \verb|\mic|\marg{fk.}\oarg{skuespiller}\meta{mikrofon} % \end{showcommand} % og @@ -2233,20 +2245,24 @@ % \end{showcommand} % \end{danish} % \begin{english} -% Beyond the roles environment, \cn\ defines these three +% Beyond the roles environment, \cn\ defines these four % additional environments, for typesetting lists that may be % useful to a production. Of these, the examples in figures % \ref{eksempel} and \ref{lists} used \verb|props|. -% -% Within these environments, \verb|props|, \verb|mics| and -% \verb|instructors|, the macros for setting a list item are +% +% Within these environments, \verb|props|, \verb|costumes|, +% \verb|mics| and \verb|instructors|, the macros for setting a +% list item are % \begin{showcommand} % \verb|\prop|\marg{prop}\oarg{responsible}\meta{description}, % \end{showcommand} % \begin{showcommand} +% \verb|\costume|\marg{costume}\oarg{responsible}\meta{description}, +% \end{showcommand} +% \begin{showcommand} % \verb|\mic|\marg{abr.}\oarg{actor}\meta{microphon} % \end{showcommand} -% og +% and % \begin{showcommand} % \verb|\instructor|\oarg{title}\meta{name}, % \end{showcommand} @@ -2265,13 +2281,19 @@ \newenvironment{props}{ \begin{revy@list}{\@propname} \revy@itemname{prop} - }{ + }{ + \end{revy@list} +} +\newenvironment{costumes}{ + \begin{revy@list}{\@costumename} + \revy@itemname{costume} + }{ \end{revy@list} } \newenvironment{mics}{ \begin{revy@list}{\@micname} \revy@itemname{mic} - }{ + }{ \end{revy@list} } % \end{macrocode} @@ -2293,26 +2315,29 @@ \def\instructor{% \@ifnextchar [{\@instructorwith}{\@instructorwithout}%] } - }{ + }{ \end{revy@list} } % \end{macrocode} -% \end{implementation} +% \end{implementation} +% \end{environment} % \end{environment} % \end{environment} % \end{environment} % % % \begin{macro}{\rolename} +% \begin{macro}{\costumename} % \begin{macro}{\propname} % \begin{macro}{\micname} % \begin{macro}{\instructorname} % \begin{danish} -% Miljøernes standardoverskrifter---"`Roller:"', "`Rekvisitter:"', -% "`Mikrofoner"' og "`Instruktører:"'---kan ændres med -% makroerne +% Miljøernes standardoverskrifter---"`Roller:"', "`Kostumer:"', +% "`Rekvisitter:"', "`Mikrofoner"' og "`Instruktører:"'---kan +% ændres med makroerne % \begin{showcommand} % \verb|\rolename|\marg{tekst}, +% \item\verb|\costumename|\marg{tekst}, % \item\verb|\propname|\marg{tekst}, % \item\verb|\micname|\marg{tekst} % \end{showcommand} @@ -2323,10 +2348,11 @@ % \end{danish} % \begin{english} % The default headings for these environments---``Roller:'', -% ``Rekvisitter:'', ``Mikrofoner'' and ``Instruktører:''---may be -% changed with the macros +% ``Kostumer:'', ``Rekvisitter:'', ``Mikrofoner'' and +% ``Instruktører:''---may be changed with the macros % \begin{showcommand} % \verb|\rolename|\marg{text}, +% \item\verb|\costumename|\marg{text}, % \item\verb|\propname|\marg{text}, % \item\verb|\micname|\marg{text} % \end{showcommand} @@ -2338,6 +2364,7 @@ % \begin{implementation} % \begin{macrocode} \def\rolename#1{\def\@rolename{#1}} +\def\costumename#1{\def\@costumename{#1}} \def\propname#1{\def\@propname{#1}} \def\micname#1{\def\@micname{#1}} \def\instructorname#1{\def\@instructorname{#1}} @@ -2350,6 +2377,7 @@ % \end{english} % \begin{macrocode} \def\@rolename{Roller:} +\def\@costumename{Kostumer:} \def\@propname{Rekvisitter:} \def\@micname{Mikrofoner:} \def\@instructorname{Instruktører:} @@ -2359,6 +2387,7 @@ % \end{macro} % \end{macro} % \end{macro} +% \end{macro} % % \begin{danish} % \subsection{Brødtekst} diff --git a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl index 7c907d5d75..8c74e47c23 100644 --- a/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl +++ b/systems/texlive/tlnet/tlpkg/installer/ctan-mirrors.pl @@ -28,7 +28,6 @@ $mirrors = { 'India' => { 'https://2.mirrors.in.sahilister.net/ctan/' => 1, 'https://in.mirrors.cicku.me/ctan/' => 1, - 'https://mirror.niser.ac.in/ctan/' => 1, }, 'Iran' => { 'http://ctan.asis.ai/' => 1, @@ -39,6 +38,7 @@ $mirrors = { 'https://ftp.kddilabs.jp/CTAN/' => 1, 'https://ftp.yz.yamagata-u.ac.jp/pub/CTAN/' => 1, 'https://jp.mirrors.cicku.me/ctan/' => 1, + 'https://mirror.aria-on-the-planet.es/CTAN/' => 1, }, 'Korea' => { 'https://ftp.kaist.ac.kr/tex-archive/' => 1, @@ -134,6 +134,7 @@ $mirrors = { 'https://ftp.fagskolen.gjovik.no/pub/tex-archive/' => 1, }, 'Poland' => { + 'https://ctan.gust.org.pl/tex-archive/' => 1, 'https://polish-mirror.evolution-host.com/ctan/' => 1, 'https://sunsite.icm.edu.pl/pub/CTAN/' => 1, }, @@ -154,7 +155,6 @@ $mirrors = { 'https://ctan.javinator9889.com/' => 1, }, 'Sweden' => { - 'https://ftpmirror1.infania.net/mirror/CTAN/' => 1, 'https://mirror.accum.se/mirror/CTAN/' => 1, }, 'Switzerland' => { diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb b/systems/texlive/tlnet/tlpkg/texlive.tlpdb index ab48a7b36e..54f5e28b57 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb @@ -26,11 +26,11 @@ depend container_split_src_files/1 depend frozen/0 depend minrelease/2016 depend release/2024 -depend revision/73152 +depend revision/73161 name 00texlive.image category TLCore -revision 73151 +revision 73155 shortdesc TeX Live files only in the source repository longdesc The files here are not copied by the installer and containers longdesc are not built for them; they exist only in the source @@ -2737,6 +2737,7 @@ runfiles size=14492 tlpkg/tlpsrc/listliketab.tlpsrc tlpkg/tlpsrc/listofitems.tlpsrc tlpkg/tlpsrc/listofsymbols.tlpsrc + tlpkg/tlpsrc/listparskip.tlpsrc tlpkg/tlpsrc/litetable.tlpsrc tlpkg/tlpsrc/lithuanian.tlpsrc tlpkg/tlpsrc/liturg.tlpsrc @@ -4980,7 +4981,7 @@ depend setting_available_architectures:aarch64-linux amd64-freebsd amd64-netbsd name 00texlive.installer category TLCore -revision 73152 +revision 73161 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 @@ -35324,26 +35325,27 @@ catalogue-version 1.2.0.a name beamertheme-light category Package -revision 72933 +revision 73158 shortdesc A minimal beamer style relocated 1 longdesc The LaTeX package beamertheme-light provides an aesthetic and longdesc minimal beamer style by redefining colors and fonts. -containersize 1924 -containerchecksum a72decdca29788e3d995bbb725e92a26f9df2cbb7ec4b9c2367caf6a750b1e3eb5c9833a2ed28fae4880ac9af5b9f23a2f1783fa711af10528f0d790fff4eec8 -doccontainersize 104892 -doccontainerchecksum 51693fb7dd4e081384f82b4a3fe086cbb736403a3db895c39311919f156608702307894e024fbf71229d7e834d37b7c35e17d030d8153cd59ddd9fc41ae6c0bb -docfiles size=29 +containersize 2080 +containerchecksum 10014038e5d4fc30112f9fec87494c2cd78eb66c9fa5ae98edb72b8ef33f2f766859436d3be434ae41a41188092024094360ae9633de0a36b378ae96d2d2f710 +doccontainersize 51800 +doccontainerchecksum 1062d137ef5f9bcf451f2030509cb0c2614ef1f3abdf52d56f75bccd9a6e6384e5afe5493cdbf8d59d6b6c3bbb059d22ffd4008eae2a37cb5befdf25e434a183 +docfiles size=15 RELOC/doc/latex/beamertheme-light/README details="Readme" RELOC/doc/latex/beamertheme-light/beamertheme-light-example.pdf details="Example of use" RELOC/doc/latex/beamertheme-light/beamertheme-light-example.tex -runfiles size=2 +runfiles size=3 RELOC/tex/latex/beamertheme-light/beamertheme-light.sty + RELOC/tex/latex/beamertheme-light/beamerthemelight.sty catalogue-also beamertheme-focus catalogue-ctan /macros/latex/contrib/beamer-contrib/themes/beamertheme-light catalogue-license gpl3 catalogue-topics presentation -catalogue-version 1.1 +catalogue-version 1.2 name beamertheme-metropolis category Package @@ -56288,17 +56290,17 @@ catalogue-version 1.0 name changelog category Package -revision 72305 +revision 73157 shortdesc Typesetting keepachangelog.com style changelogs relocated 1 longdesc This package provides a changelog environment (which itself longdesc provides a version environment) to represent a changelog. The longdesc package supports multiple authors, unreleased changes, and longdesc yanked (revoked) releases. Inspired by keepachangelog.com. -containersize 3508 -containerchecksum 173ce39eada5619e87bbd03b2aaab1d5b9ad1f0148af29c35020a213a06c8e469ca3f1aebe570a41d89cdbdc4c8d37b926bed784ad95cf88fe7b2508c50648bf -doccontainersize 174484 -doccontainerchecksum 30c37a6ce616419454395254d6159bb846eb28bf88e8c91ffc47de08de8055e2041175579305a240edf6dc25a597e0895be5e4110bc52e83529dff9655e75e52 +containersize 3520 +containerchecksum b5ed92d16b55932d43139751d7ca583faea2d3c53ea2867b4dd9abc25fa4bf9519993c43838990475ac9b284b0967e6ea6cfde15413d05922fa9568d22ce7481 +doccontainersize 175576 +doccontainerchecksum 731857f70faefee5f7042d935820fe9d2402cd569cb63312cb2b550c95a4d0da0e70dd1e3f41ca73e3a95a779af20156f8d29634f44bf1669016a10bd1f32ef2 docfiles size=57 RELOC/doc/latex/changelog/LICENSE.txt RELOC/doc/latex/changelog/README.md details="Readme" @@ -56314,7 +56316,7 @@ catalogue-contact-repository https://github.com/9999years/latex-changelog catalogue-ctan /macros/latex/contrib/changelog catalogue-license lppl1.3c catalogue-topics version-control doc-mgmt expl3 -catalogue-version 2.5.1 +catalogue-version 2.6.0 name changepage category Package @@ -72954,7 +72956,7 @@ containerchecksum e2186a4295eb854d56e838deaae8330e47ced975d28ad83b51d8ada6955a5a name collection-latexextra category Collection -revision 73102 +revision 73155 shortdesc LaTeX additional packages relocated 1 longdesc A very large collection of add-on packages for LaTeX. @@ -73796,6 +73798,7 @@ depend listingsutf8 depend listlbls depend listliketab depend listofsymbols +depend listparskip depend litetable depend lkproof depend lmake @@ -74542,8 +74545,8 @@ depend zref-vario depend zugferd depend zwgetfdate depend zwpagelayout -containersize 7332 -containerchecksum 2edf834f9d9d39fa18ee869fd4a9e300b0b282c95a6d31c4a14d14049b9255e6e81bb68aaba1c7e4ed12d04dd993a2670d02abcadc4e89d0a9632e4ae72f9af7 +containersize 7344 +containerchecksum 1625e2b147cf0d4a04b5d431ae98d0a2bab13a202aac9feea6259342204b40e3e6bd33a5ca182e9133472c76519edf273ba1388e7bd8cf1af00f62b75685ea97 name collection-latexrecommended category Collection @@ -137441,8 +137444,8 @@ catalogue-topics maths name functional category Package -revision 73124 -shortdesc Provide an intuitive functional programming interface for LaTeX2 +revision 73156 +shortdesc An intuitive functional programming interface for LaTeX2 relocated 1 longdesc This package provides an intuitive functional programming longdesc interface for LaTeX2, which is an alternative choice to expl3 @@ -137452,10 +137455,10 @@ longdesc evaluation of them is from outside to inside. With this longdesc package, the evaluation of functions is from inside to outside, longdesc which is the same as other programming languages such as Lua. longdesc In this way, it is rather easy to debug code too. -containersize 11256 -containerchecksum 2168768486003888e23e088f7154dfa31f86e3df2558236e919c565c411e251ff395f2f901cfe86e83724c6e4158c0999a13213338d95ca1232e11974e039e6d -doccontainersize 732744 -doccontainerchecksum aaf9a9eca90d7c7e0a1329007e09e0a7cf9e5552428c439f8d68edba24573babb65876cf36bdeae3777f3f594d3d43fdc2924f7617cef7f2a4e2061276a155c2 +containersize 11216 +containerchecksum cc6ac78c6d281ad680426bb9551f21c7182ca237634c45d93e7de2ee64f8d4b17ba210c4b001a7bcf0aed296a9b0a535eab0a32a8a97d6b2f7981a6988c50f0a +doccontainersize 732764 +doccontainerchecksum 1652727bfdc8c4e53ffe1380196370a5e7a500980021c1a57c65ff0bc46651f0284aaad2c2a7e58b77ca6b2ad1d997d73ce1afe1f3be40ef3691407707c9dfd1 docfiles size=246 RELOC/doc/latex/functional/README.txt details="Readme" RELOC/doc/latex/functional/functional.pdf details="Package documentation" @@ -137470,7 +137473,7 @@ catalogue-contact-support https://github.com/lvjr/functional/discussions catalogue-ctan /macros/latex/contrib/functional catalogue-license lppl1.3c catalogue-topics macro-supp latex3 expl3 -catalogue-version 2024B +catalogue-version 2024C name fundus-calligra category Package @@ -201113,6 +201116,38 @@ catalogue-license lppl catalogue-topics toc-etc catalogue-version 0.2 +name listparskip +category Package +revision 73155 +shortdesc Adjust vertical space around lists +relocated 1 +longdesc This package modifies list environments such that they add +longdesc \parskip and \partopsep before or after a list if and only if +longdesc the environment follows or precedes, respectively, a blank line +longdesc (i.e. a \par). +containersize 2248 +containerchecksum 7d718507fbddc6b35bc4d0e3a5674cce8b29f5a932ec01e6727955b7edcdb0dfa5531ee5433564098a85c641d56485db1fcb142e02d5e7ec22b70dc3ec873d24 +doccontainersize 127044 +doccontainerchecksum 18e3573f185b2605fc159831d19a0399db3cbe89a8152a9b7a7bc69196f5ed8669bd4346bb54304827e3494ff0f10dd45a33b7eb4f93902a497af2d5f2f8cab1 +docfiles size=45 + RELOC/doc/latex/listparskip/README.txt details="Readme" + RELOC/doc/latex/listparskip/listparskip_code.pdf details="Code implementation" + RELOC/doc/latex/listparskip/listparskip_example.pdf details="Example of use" + RELOC/doc/latex/listparskip/listparskip_example.tex + RELOC/doc/latex/listparskip/listparskip_heading.tex + RELOC/doc/latex/listparskip/listparskip_user_guide.pdf details="User guide" + RELOC/doc/latex/listparskip/listparskip_user_guide.tex +srccontainersize 8928 +srccontainerchecksum e8a277fe253b5dab5b122cd02f2038dd4c46a5ab960fc52b46f39c6c61273577d41076f012cf57116f8afa509ddd3f0d23237fa45347eabbba8ee6625f52f045 +srcfiles size=7 + RELOC/source/latex/listparskip/listparskip_code.dtx +runfiles size=1 + RELOC/tex/latex/listparskip/listparskip.sty +catalogue-ctan /macros/latex/contrib/listparskip +catalogue-license lppl1.3c +catalogue-topics list-supp +catalogue-version 1.0 + name litetable category Package revision 72539 @@ -203657,16 +203692,16 @@ catalogue-topics tut-latex bulgarian name lshort-chinese category Package -revision 67025 +revision 73160 catalogue lshort-zh-cn shortdesc Introduction to LaTeX, in Chinese relocated 1 longdesc A Chinese edition of the not so short introduction to LaTeX2e, longdesc with additional information of typesetting Chinese language. containersize 472 -containerchecksum 6d6ac34f79c3d5447c1bbd7f2c87071a92867bd770fd023bc4d6fb48500d27f1b1a8706a727b0d0a7b47eaa9a639c6b5a691b7d21a5e178eb79131cb4bd75b6c -doccontainersize 1562468 -doccontainerchecksum c220f086c2e0c9bd52ba3ee1eddd2afcb0aaed1c4fc4b9ebf854ce57b4720df7ab3c5475f3164cf740b3020c14c5682e1798e43c8ad9e39eba596a24b04644d3 +containerchecksum b5681877031871595ce106993668b0e2a5346740eb15a4062bcf019aaabbc034275b1aabcb2a078a887e1d048fa18c1d7d5d5b0624ce63ef48884bf287dc8e01 +doccontainersize 1561888 +doccontainerchecksum 5c425b3c76ea373d97693b81bbe4a6da423772271530e23ca1cc2160b463177f5a8e109e7010b5004b2dc627c2a5080b47d4c6506ea06c29ece97aa8d16c7ddd docfiles size=460 RELOC/doc/latex/lshort-chinese/README-zh.md details="Readme (Chinese)" language="zh" RELOC/doc/latex/lshort-chinese/README.md details="Readme" @@ -203700,7 +203735,7 @@ catalogue-contact-repository https://github.com/CTeX-org/lshort-zh-cn catalogue-ctan /info/lshort/chinese catalogue-license fdl catalogue-topics tut-latex chinese-doc -catalogue-version 6.04 +catalogue-version 6.05 name lshort-czech category Package @@ -211465,7 +211500,7 @@ catalogue-topics notes name markdown category Package -revision 72932 +revision 73159 shortdesc Converting and rendering markdown documents inside TeX relocated 1 longdesc The package provides facilities for the conversion of markdown @@ -211476,11 +211511,11 @@ longdesc inside TeX documents. depend l3kernel depend lt3luabridge depend lua-uni-algos -containersize 66828 -containerchecksum 8749071ca0784f64c53a43b77dd37793bd72e591764372db4738e62d36b0abecad2b706d200426be44b2308da406eed13fae9fc8207a01faa0a3b6553a0e1de2 -doccontainersize 1395232 -doccontainerchecksum 351eb2435bbd2acb73f3b15b6419f292acf16aa81c300a7b2739937cabb574105b70e7d482bc89b6eb0363f58121ef97b17e15c99b10586a088acfbb7567845b -docfiles size=630 +containersize 67212 +containerchecksum 18aa1b37e098c5b216507c4ad17c67c2e1e4d39489843ffb9cd7e5d416b200fb911aad212cddacdec4e7482e2f249a68c7c2894925f569db607a41c7caf77c28 +doccontainersize 1422380 +doccontainerchecksum 5ba37a104aee3ce5acc264abd989eef41eb673fd054cd98f2ea3fe8dcac25b6385cab5e2bb288ee341dda45a6c6377441bad8573a6ea4a4a279b2bbae6d49e8d +docfiles size=634 RELOC/doc/context/third/markdown/examples/context-mkiv.tex RELOC/doc/context/third/markdown/examples/example.md RELOC/doc/context/third/markdown/examples/scientists.csv @@ -211501,13 +211536,13 @@ docfiles size=630 RELOC/doc/optex/markdown/examples/example.md RELOC/doc/optex/markdown/examples/optex.tex RELOC/doc/optex/markdown/examples/scientists.csv -srccontainersize 139508 -srccontainerchecksum 4d439d6aecc982632ae9e2b862a3504af769586e55b21bf958f4797483fc432693c98b74d1b6ee02291641082ffab0e535d059787de3d436b2e171a9effd7bba -srcfiles size=258 +srccontainersize 139968 +srccontainerchecksum 0e258a350e9ccef51294ee00544711beb4d64a4a6408d98c15dd0dad00dc5e235d0c591a19dd31c664f42ac8aa9adb3a1deb2cf0e255057591bc21582e37e9a8 +srcfiles size=257 RELOC/source/generic/markdown/docstrip.cfg RELOC/source/generic/markdown/markdown.dtx RELOC/source/generic/markdown/markdown.ins -runfiles size=146 +runfiles size=147 RELOC/scripts/markdown/markdown-cli.lua RELOC/tex/context/third/markdown/t-markdown.tex RELOC/tex/context/third/markdown/t-markdownthemewitiko_markdown_defaults.tex @@ -211525,7 +211560,7 @@ catalogue-contact-repository https://github.com/Witiko/markdown catalogue-ctan /macros/generic/markdown catalogue-license lppl1.3c catalogue-topics markup -catalogue-version 3.9.0-0-g4f1abe21 +catalogue-version 3.9.1-0-g92254dfb name marvosym category Package @@ -257697,36 +257732,36 @@ catalogue-version 0.3 name pdfjam category Package -revision 71641 +revision 73154 shortdesc Shell scripts interfacing to pdfpages longdesc The package makes available the pdfjam shell script that longdesc provides a simple interface to much of the functionality of the longdesc excellent pdfpages package (by Andreas Matthias) for LaTeX. The -longdesc pdfjam script takes one or more PDF files (and/or JPG/PNG -longdesc graphics files) as input, and produces one or more PDF files as -longdesc output. It is useful for joining files together, selecting -longdesc pages, reducing several source pages onto one output page, -longdesc etc., etc. +longdesc pdfjam script takes one or more PDF (and/or JPG/PNG) files as +longdesc input, and produces one or more PDF files as output. It is +longdesc useful for joining files together, selecting pages, reducing +longdesc several source pages onto one output page, etc., etc. The +longdesc package contains no PDF documentation, but a comprehensive +longdesc --help output instead. depend pdfjam.ARCH -containersize 13024 -containerchecksum 8958507b64e83edffe5f4ede0ab37bd151794ad432d3035d3164fe838003a6e0c27b344e926859a8ac0882d679c4ac6346474676a890187223e1968bd193e3bf -doccontainersize 159588 -doccontainerchecksum 49cac6319b3c7ec12b7b1b68790616b311a2a5eb9cb3c9b06d53432977866fb612eb50864470c8fb62ab9b5c6aaefe522783316e769a1dd2bfebdeb116d10ecd -docfiles size=54 +containersize 13476 +containerchecksum dbb98feb93a9fff50fdcde855584fddae670e8f9506bdd661beb70c8e886aa72b0c1fbd40372b38fde5f937874b1ed5777fd1ef1385c2d98ec1035ac1c74ab7a +doccontainersize 27200 +doccontainerchecksum c04862e39d0477c5d35d4682c70968317e6bc599c97dfd15b4f4b40bdb9e813a9633c3c50d9519a797a0daa88c5be226d5d0298d8755f54b84277bf2a25e6c28 +docfiles size=17 texmf-dist/doc/man/man1/pdfjam.1 texmf-dist/doc/man/man1/pdfjam.man1.pdf texmf-dist/doc/support/pdfjam/COPYING texmf-dist/doc/support/pdfjam/README.md details="Readme" - texmf-dist/doc/support/pdfjam/VERSION + texmf-dist/doc/support/pdfjam/VERSION-4.00 texmf-dist/doc/support/pdfjam/pdfjam.conf - texmf-dist/doc/support/pdfjam/tests.zip -runfiles size=12 +runfiles size=11 texmf-dist/scripts/pdfjam/pdfjam -catalogue-contact-repository https://github.com/rrthomas/pdfjam +catalogue-contact-repository https://github.com/pdfjam/pdfjam catalogue-ctan /support/pdfjam catalogue-license gpl2+ catalogue-topics pdfprocess -catalogue-version 3.12 +catalogue-version 4.00 name pdfjam.aarch64-linux category Package @@ -330938,7 +330973,7 @@ docfiles size=376 name texlive-scripts category TLCore -revision 73152 +revision 73161 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. @@ -330946,10 +330981,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 114392 -containerchecksum f72803c91f45d7ac34bf9b6f7bcca9353ee396e7ed7bcf4eef8c3beb968ad31fc4f18f2c8c2de9326cfc63766178c59c9b1a05236ec2aa83d3201367e38478da -doccontainersize 442468 -doccontainerchecksum d4c4b4fbb7aaf2c2e76c9026cf346cb78fe669089c26671e3c52b717a943b2048445f374a5e9948956d9c63ecc55531afd8954249cd3d7433adb1c31f152861a +containersize 114412 +containerchecksum f693cfaf9c30ad045c008349328e07ce6a3f8a5f2b06fa31c41bf3634e8aaf8edccdd6e007f5cb877d11e0aced795ff3f17e932518968b90219ca6962596ccb9 +doccontainersize 442392 +doccontainerchecksum bedb2b1f1a01ee83e76431aa8b87e47922bd7e1a1940607e1ece585123e7f93878becea4a0c6b09f7de50373f777c3fe108517c15fa0d1aa6124c1dba09d9f29 docfiles size=575 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 99fdb52ec7..bc36b6315a 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.md5 @@ -1 +1 @@ -f5ee4a90f49cf483b2fd4b43a6ceadca texlive.tlpdb +ef513603da0f41cd4c17319c17e8801a texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 index 32136b06ac..ea7dda74e7 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512 @@ -1 +1 @@ -6e91217164c1ced1a46dffd387fcc80b71c8df78bfb4de4ee1f6113d3b8b695a9baf5a116a0389c2fcf4dd157b276faf7ca67b94206d000726a84f17c4c0379f texlive.tlpdb +f45aa7966b703d04ef06bf446363850e8b7de51b15ee268a3912c9b4927391fce4568bb657af1c13ee6b6193739bf22061022f702213a9e692f7de7367a09a60 texlive.tlpdb diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc index 9879f8d742..121aa6af65 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.sha512.asc @@ -1,11 +1,11 @@ -----BEGIN PGP SIGNATURE----- -iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmdiG/YACgkQTOGHfhlD -jHB8LwgAgcw05Ky77YBWfmYpldsYYRYDUM/VjiZ1126gJtHWUyHmPsh8hAlKzcdL -UCccajSdl7MNV0cTXU56fs+OmZwL7/W1s22Y10YCCkVLmlb+/9WpdmmNM/WTRYw4 -SbK8+EDV5Cwpi7XO8IsVWCJR0zReZE/4YkJicFFysrOBdvpPGGNKhZJIamLuyeM3 -0WWzhjArwG4etLh/PACtO43L/QDoZM1FPuMqdDfZ3dwWi0X65v+Q2k2icBEnvenZ -/9evLpoXIYsHqPU4LOL4CR+v5oktCp9djO7Sly3A+nFCI6FkNg9evtRZQKr7Tj4L -ncqL4KLZsHYtwgauASyBCLfG34kFXA== -=6e+s +iQEzBAEBCgAdFiEE2PL4YFeoV+QqiBBqTOGHfhlDjHAFAmdjbcoACgkQTOGHfhlD +jHCV7wf9E9cGyzIYi99+i76/AzStfc6km1XxXKcW0cbrvhtpK/iiTnGYjw/hCm4e +ikYhYhXeeHONlpCnS1wvJFuU+kONrWuBavMvlkNoim1V2AnGzPAFvg7uWlg7BurX +XVfliJwtImRK6r+knfpFaSgPlV+bXKwTr24CqgC+SkvcBC55efwL24hmRFZEpBFA +FJtPuuP6rvCZwyzEHz1cZxzwjl/Zm8fx98R8ReILo6g1wVbT/UWPSjxwDU815gA4 +SgAMTUh4zB9onPiH6eBBIK77ijLZOmaD+0+Jr6EqI6Xc2z9UMYNeSSmNx1XcYyjp +mcy0liYLX+AQWdGHCuJxjFJ85BCvhw== +=QfjF -----END PGP SIGNATURE----- diff --git a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz Binary files differindex 0471fcb38d..c599da22be 100644 --- a/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz +++ b/systems/texlive/tlnet/tlpkg/texlive.tlpdb.xz @@ -2,4 +2,4 @@ # The source CTAN of this site's material: irony.dante.de # The year-month-day-hour-minute of this site's material: -2024-12-19-02-02 +2024-12-20-02-02 |