High-Level Languages for TeX

Vít Novotný

Zpravodaj Československého sdružení uživatelů TeXu (2022)

  • Volume: 032, Issue: 1-4, page 35-48
  • ISSN: 1211-6661

Abstract

top
TeX is the assembly language of digital typesetting, which requires advanced programming skills from authors and designers, and which provides few high-level abstractions to programmers. In this article, I introduce selected markup, programming, and style-sheet languages for TeX, which enable the division of labor between authors, programmers, and designers, and which simplify the process of electronic document preparation. The article transcribes my invited talk at the general assembly of CSTUG on May 14, 2022.

How to cite

top

Novotný, Vít. "Vysokoúrovňové jazyky pro TeX." Zpravodaj Československého sdružení uživatelů TeXu 032.1-4 (2022): 35-48. <http://eudml.org/doc/298645>.

@article{Novotný2022,
abstract = {TeX je strojový kód světa digitální sazby, který od spisovatelů a grafiků vyžaduje netriviální programátorské dovednosti a programátorům poskytuje minimum vysokoúrovňových abstrakcí. V článku představuji vybrané značkovací, programovací a stylové jazyky pro TeX, které umožňují dělbu práce mezi spisovatele, vývojáře a grafiky a usnadňují proces přípravy elektronických dokumentů. Článek je přepis mé přednášky na valném shromáždění CSTUGu 14. května 2022.},
author = {Novotný, Vít},
journal = {Zpravodaj Československého sdružení uživatelů TeXu},
keywords = {vysokoúrovňové jazyky; programovací jazyky; značkovací jazyky; stylové jazyky; ε-TeX; pdfTeX; LuaTeX; LuaMetaTeX; LaTeX 2ε; LaTeX3; expl3; XML; DocBook; TEI; XHTML; XSLT; CSS; CSL; ConTeXt; HTML; markdown; YAML; Pandoc; TikZ; BibLaTeX; BibLaTeXML; LyLuaTeX; high-level languages; programming languages; markup languages; style-sheet languages; ε-TeX; pdfTeX; LuaTeX; LuaMetaTeX; LaTeX 2ε; LaTeX3; expl3; XML; DocBook; TEI; XHTML; XSLT; CSS; CSL; ConTeXt; HTML; markdown; YAML; Pandoc; TikZ; BibLaTeX; BibLaTeXML; LyLuaTeX},
language = {cze},
number = {1-4},
pages = {35-48},
publisher = {Československé sdružení uživatelů TeXu},
title = {Vysokoúrovňové jazyky pro TeX},
url = {http://eudml.org/doc/298645},
volume = {032},
year = {2022},
}

TY - JOUR
AU - Novotný, Vít
TI - Vysokoúrovňové jazyky pro TeX
JO - Zpravodaj Československého sdružení uživatelů TeXu
PY - 2022
PB - Československé sdružení uživatelů TeXu
VL - 032
IS - 1-4
SP - 35
EP - 48
AB - TeX je strojový kód světa digitální sazby, který od spisovatelů a grafiků vyžaduje netriviální programátorské dovednosti a programátorům poskytuje minimum vysokoúrovňových abstrakcí. V článku představuji vybrané značkovací, programovací a stylové jazyky pro TeX, které umožňují dělbu práce mezi spisovatele, vývojáře a grafiky a usnadňují proces přípravy elektronických dokumentů. Článek je přepis mé přednášky na valném shromáždění CSTUGu 14. května 2022.
LA - cze
KW - vysokoúrovňové jazyky; programovací jazyky; značkovací jazyky; stylové jazyky; ε-TeX; pdfTeX; LuaTeX; LuaMetaTeX; LaTeX 2ε; LaTeX3; expl3; XML; DocBook; TEI; XHTML; XSLT; CSS; CSL; ConTeXt; HTML; markdown; YAML; Pandoc; TikZ; BibLaTeX; BibLaTeXML; LyLuaTeX; high-level languages; programming languages; markup languages; style-sheet languages; ε-TeX; pdfTeX; LuaTeX; LuaMetaTeX; LaTeX 2ε; LaTeX3; expl3; XML; DocBook; TEI; XHTML; XSLT; CSS; CSL; ConTeXt; HTML; markdown; YAML; Pandoc; TikZ; BibLaTeX; BibLaTeXML; LyLuaTeX
UR - http://eudml.org/doc/298645
ER -

References

top
  1. Novotný, Vít, Vysokoúrovňové jazyky pro TeX, 2022. Dostupné také z: https://www.cstug.cz/informace/zpravy/2022-04-01-valna-hromada-2022/. (2022) 
  2. Knuth, Donald E., The TeXbook, Sv. A. Reading, MA: Addison-Wesley, 1984. Computers & Typesetting. V současnosti jsou dostupné 35. výtisk (měkká vazba, 2017) a 23. výtisk (pevná vazba, 2021). (1984) 
  3. Knuth, Donald E., TeX: The Program, Sv. B. Reading, MA: Addison-Wesley, 1986. Computers & Typesetting. Od pátého výtisku (1994) xvi+600 stran. V současnosti je dostupný 11. výtisk (pevná vazba, 2021). (1986) 
  4. The NTS Team, Breitenlohner, Peter, ε-TeX: An extended version of TeX, from the NTS project, [online]. CTAN, 1998-02 [vid. 2022-09-26]. Dostupné z: https://ctan.org/pkg/etex. Verze 2. (1998) 
  5. Thành, Hàn Thế, Rahtz, Sebastian, Hagen, Hans, Henkel, Hartmut, Jackowski, Paweł, Schröder, Martin, Berry, Karl, pdfTeX: A TeX extension for direct creation of PDF, [online]. CTAN, 2022-03-01 [vid. 2022-09-26]. Dostupné z: https://ctan.org/pkg/pdftex. Rev. 875. (2022) 
  6. LuaTeX development team, LuaTeX Reference Manual, [online]. CTAN, 2022-02-28 [vid. 2022-09-26]. Dostupné z: https://ctan.org/pkg/luatex. Verze 1.15. (2022) 
  7. Knuth, Donald E., Plain: The Plain TeX format, [online]. CTAN, 2021 [vid. 2022-09-26]. Dostupné z: https://ctan.org/pkg/plain. Verze 3.141592653. (2021) 
  8. Lamport, Leslie, LaTeX: A Document Preparation System, 2. vyd. Addison-Wesley, 1994. isbn 978-0201529838. (1994) 
  9. Hagen, Hans, ConTeXt: the manual, [online]. PRAGMA ADE, 2001 [vid. 2022-09-26]. Dostupné z: http://pragma-ade.com/general/manuals/cont-eni.pdf. (2001) 
  10. LuaMetaTeX development team, LuaMetaTeX Reference Manual, [online]. PRAGMA ADE, 2022-08-03 [vid. 2022-10-04]. Dostupné z: http://pragma-ade.nl/general/manuals/luametatex.pdf. Verze 2.09.59. (2022) 
  11. The LaTeX Project Team, The LaTeX3 kernel: style guide for code authors, [online]. CTAN, 2022-09-28 [vid. 2022-10-04]. Dostupné z: https://ctan.org/pkg/l3kernel. (2022) 
  12. The LaTeX Project Team, The expl3 package and LaTeX3 programming, [online]. CTAN, 2022-09-28 [vid. 2022-10-04]. Dostupné z: https://ctan.org/pkg/l3kernel. (2022) 
  13. The LaTeX Project Team, The LaTeX3 interfaces, [online]. CTAN, 2022-09-28 [vid. 2022-10-04]. Dostupné z: https://ctan.org/pkg/l3kernel. (2022) 
  14. Sharif, Bonita, Maletic, Jonathan I, 10.1109/ICPC.2010.41, In: 18th International Conference on Program Comprehension. 2010, s. 196–205. Dostupné z DOI: 10.1109/ICPC.2010.41. (2010) DOI10.1109/ICPC.2010.41
  15. Thompson, Michael, Re: Error in ``cabal install pandoc'', [online]. Google Groups [vid. 2022-10-04]. Dostupné z: https://groups.google.com/g/pandoc-discuss/c/tKB4E7y6H2E/m/OiieKAuWsl4J. 
  16. Wagner, Zdeněk, Kombinace XML a TeXu při sazbě divadelní hry, 2017. Dostupné také z: https://www.cstug.cz/informace/zpravy/2017-11-15-valna-hromada-2017/. (2017) 
  17. Přispěvatelé ConTeXt Garden, XML, [online]. ConTeXt Garden, 2022-07-01 [vid. 2022-10-04]. Dostupné z: https://wiki.contextgarden.net/XML. (2022) 
  18. Maier, Denis, Typesetting XML with ConTeXt, 2019. Dostupné také z: https://youtu.be/TEZJ9uZmoJY. (2019) 
  19. Ben-Kiki, Oren, Evans, Clark, Net, Ingy, YAML Ain’t Markup Language, [online]. 2021-10-01. [vid. 2022-10-05]. Dostupné z: https://yaml.org/spec/1.2.2/. Verze 1.2, Revize 1.2.2. (2021) 
  20. Gruber, John, Markdown, [online]. Daring Fireball, 2004 [vid. 2022-10-05]. Dostupné z: https://daringfireball.net/projects/markdown/. (2004) 
  21. MacFarlane, John, Pandoc: a universal document converter, [online]. 2022. [vid. 2022-10-05]. Dostupné z: https://pandoc.org/. (2022) 
  22. Novotný, Vít, A Markdown Interpreter for TeX, [online]. CTAN, 2022-10-03 [vid. 2022-10-05]. Dostupné z: https://ctan.org/pkg/markdown. Verze 2.17.1. (2022) 
  23. Rehák, Dominik, 10.5300/2021-1-4/83, Zpravodaj CSTUGu. 2021, roč. 31, č. 1–4, s. 83–92. Dostupné z DOI: 10.5300/2021-1-4/83. (2021) DOI10.5300/2021-1-4/83
  24. Novotný, Vít, 10.47397/tb/43-1/tb133novotny-markdown, TUGboat. 2022, roč. 43, č. 1, s. 10–15. Dostupné z DOI: 10.47397/tb/43-1/tb133novotny-markdown. (2022) DOI10.47397/tb/43-1/tb133novotny-markdown
  25. The LaTeX Project Team, LaTeX 2ε font selection, [online]. CTAN, 2021-12 [vid. 2022-10-05]. Dostupné z: https://ctan.org/pkg/fntguide. (2021) 
  26. The LaTeX Project Team, The xtemplate package: Prototype document functions, [online]. CTAN, 2022-06-22 [vid. 2022-10-05]. Dostupné z: https://ctan.org/pkg/xtemplate. (2022) 
  27. Niederberger, Clemens, The xtemplate package: An example, TUGboat. 2012, roč. 33, č. 3, s. 272–275. Dostupné také z: https://tug.org/TUGboat/tb33-3/tb105niederberger.pdf. (2012) 
  28. Mittelbach, Frank, LaTeX3 architecture and current work in progress, 2011. Dostupné také z: https://youtu.be/-lr6KEPGLDs. (2011) 
  29. Mittelbach, Frank, Using LaTeX3's xtemplate, [online]. Stack Exchange, 2013-06-06 [vid. 2021-12-06]. Dostupné z: https://tex.stackexchange.com/a/118015/70941. (2013) 
  30. Tantau, Till, The Ti k Z and PGF Packages: Manual for version 3.1.9a, [online]. CTAN, 2021 [vid. 2022-10-06]. Dostupné z: https://ctan.org/pkg/pgf. (2021) 
  31. Carter, Sam, The Ti k Zducks package: using ducks in TikZ, [online]. CTAN, 2020 [vid. 2022-10-06]. Dostupné z: https://ctan.org/pkg/tikzducks. Verze 1.5. (2020) 
  32. Kime, Philip, Wemheuer, Moritz, Lehman, Philipp, The BibLaTeX Package: Programmable Bibliographies and Citations, [online]. CTAN, 2022-07-12 [vid. 2022-10-06]. Dostupné z: https://ctan.org/pkg/biblatex. Verze 3.18b. (2022) 
  33. Novotný, Vít, 10.5300/2018-1-4/1, Zpravodaj CSTUGu. 2018, roč. 28, č. 1–4, s. 1–10. Dostupné z DOI: 10.5300/2018-1-4/1. (2018) DOI10.5300/2018-1-4/1
  34. Lupták, Dávid, 10.5300/2016-1-4/106, Zpravodaj CSTUGu. 2016, roč. 26, č. 1–4, s. 106–120. Dostupné z DOI: 10.5300/2016-1-4/106. (2016) DOI10.5300/2016-1-4/106
  35. Peron, Fr. Jacques, Liska, Urs, Springuel, Br. Samuel, lyLuaTeX: Programmable Bibliographies and Citations, [online]. CTAN, 2019-05-27 [vid. 2022-10-06]. Dostupné z: https://ctan.org/pkg/lyluatex. Verze 1.0f. (2019) 
  36. Novotný, Vít, Vysokoúrovňové jazyky pro TeX, [online]. GitHub [vid. 2022-10-16]. Dostupné z: http://github.com/witiko/high-level-languages-for-tex. 
  37. Devlin, Jacob, Chang, Ming-Wei, Lee, Kenton, Toutanova, Kristina N., BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding, In: NAACL. 2019. Dostupné také z: https://arxiv.org/abs/1810.04805v2. (2019) 
  38. Brown, Tom, Mann, Benjamin, Ryder, Nick, Subbiah, Melanie, Kaplan, Jared D, Dhariwal, Prafulla, Neelakantan, Arvind, Shyam, Pranav, Sastry, Girish, Askell, Amanda, Agarwal, Sandhini, Herbert-Voss, Ariel, Krueger, Gretchen, Henighan, Tom, Child, Rewon, Ramesh, Aditya, Ziegler, Daniel, Wu, Jeffrey, Winter, Clemens, Hesse, Chris, Chen, Mark, Sigler, Eric, Litwin, Mateusz, Gray, Scott, Chess, Benjamin, Clark, Jack, Berner, Christopher, McCandlish, Sam, Radford, Alec, Sutskever, Ilya, Amodei, Dario, Language Models are Few-Shot Learners, In: LAROCHELLE, H. et al. (ed.). Advances in Neural Information Processing Systems. Curran Associates, Inc., 2020, sv. 33, s. 1877–1901. Dostupné také z: https://arxiv.org/abs/2005.14165v4. (2020) 
  39. Papers with Code contributors, Code Generation, [online]. Ed. STOJNIC, Robert et al. Papers with Code [vid. 2022-09-29]. Dostupné z: https://paperswithcode.com/task/code-generation. 
  40. Zhou, Yingbo, Porwal, Utkarsh, Konow, Roberto, Spelling Correction as a Foreign Language, In: DEGENHARDT, Jon et al. (ed.). eCOM 2019: The SIGIR 2019 Workshop on eCommerce [online]. Paris, France, 2019 [vid. 2022-09-29]. CEUR Workshop Proceedings, č. 2410. ISSN 1613-0073. Dostupné z: http://ceur-ws.org/Vol-2410/paper28.pdf. (2019) 
  41. Nagy, Attila, Bial, Bence, Ács, Judit, Automatic punctuation restoration with BERT models, [online]. Cornell University, 2021 [vid. 2022-09-29]. Dostupné z: https://arxiv.org/abs/2101.07343v1. (2021) 
  42. Lu, Jiasen, Batra, Dhruv, Parikh, Devi, Lee, Stefan, ViLBERT: Pretraining Task-Agnostic Visiolinguistic Representations for Vision-and-Language Tasks, In: WALLACH, H. et al. (ed.). NeurIPS 2019. Curran Associates, Inc., 2019, sv. 32. Dostupné také z: https://arxiv.org/abs/1908.02265v1. (2019) 

NotesEmbed ?

top

You must be logged in to post comments.

To embed these notes on your page include the following JavaScript code on your page where you want the notes to appear.

Only the controls for the widget will be shown in your chosen language. Notes will be shown in their authored language.

Tells the widget how many notes to show per page. You can cycle through additional notes using the next and previous controls.

    
                

Note: Best practice suggests putting the JavaScript code just before the closing </body> tag.