PV126 Typographic Programming

Faculty of Informatics
Autumn 2009
Extent and Intensity
2/0/1. 3 credit(s) (plus extra credits for completion). Type of Completion: k (colloquium).
Teacher(s)
Johannes Hagen, M.Sc. (lecturer), doc. RNDr. Petr Sojka, Ph.D. (deputy)
Guaranteed by
prof. Ing. Jiří Sochor, CSc.
Department of Visual Computing – Faculty of Informatics
Contact Person: doc. RNDr. Petr Sojka, Ph.D.
Prerequisites
In the course we will use luatex, a successor to pdftex developed at this university. The macropackage we use is ConTeXt. Here are a few url's that can help you prepare for this course: > http://www.pragma-ade.com/general/magazines/mag-0012.pdf > http://www.luatex.org binaries and reference manual > http://contextgarden.net information about CONTEXT > http://www.lua.org/ information about the Lua language In depth TeX macro language knowledge is not needed since we will use mostly wrapper macros as provided by ConTeXt. However, it makes sense to play a while with the Lua interpreter beforehand. Documentation can be found at http://www.tecgraf.puc-rio.br/~lhf/ftp/doc/hopl.pdf http://www.inf.puc-rio.br/~roberto/lpeg.html You also need to think about a possible application for instance a small pretty printing subsystem (in that case you can use Lua for parsing and preparation and tex for the typesetting).
Course Enrolment Limitations
The course is also offered to the students of the fields other than those the course is directly associated with.
The capacity limit for the course is 35 student(s).
Current registration and enrolment status: enrolled: 0/35, only registered: 0/35, only registered with preference (fields directly associated with the programme): 0/35
fields of study / plans the course is directly associated with
Course objectives
At the end of this course, students should be able to: understand and be able to explain principles of typographic programming using LuaTeX, Context; prepare applications taking advantage of mixing scripting language Lua and advanced features of TeX.
Syllabus
  • There will be a series of meetings where the following topics will be covered.
  • TeX as language, the road from input to output, tokens and nodes.
  • Lua as language, what can it do and what not, why and how do we use it as embedded language.
  • LuaTeX as system, how does the two languages work together in opening up the typesetting engine.
  • CONTEXT MKIV as application, what kind of code is needed to permit the use of advanced font technologies, how to get away with some of TeX's limitations, what kind of technologies are needed to fulfil today's typesetting demands.
  • Typographic programming, what is it and how can it be applied in automated typesetting workflows.
  • In addition one of the computer rooms will be reserved so that we can practice the above and work on the products needed for the exam.
Literature
  • Programming in Lua, Second Edition by Roberto Ierusalimschy,English Edition, Published by Lua.org, March 2006, ISBN13 9788590379829
  • R. Ierusalimschy, L. H. de Figueiredo, W. Celes: Programming in Lua -- Reference, Lua.org, August 2006, ISBN 85-903798-3-3, http://www.lua.org/manual/5.1/
Teaching methods
Teaching is realized by a mixture of classical introductory lectures and by examining typographical programming on the small (team) typographical project of choice.
In addition one of the computer rooms will be reserved so that we can practice the above and work on the products needed for the exam.
Assessment methods
The student has to deliver the following products:
Lua code that transfers a source into directives for TeX.
Code that integrates the code into TeX.
A basic style that presents the pretty printed source on paper and on screen, including a table of contents and index.
During the course we will provide the tools to handle the typesetting. There will be a framework for pretty printing available that students may use.
Language of instruction
English
Further comments (probably available only in Czech)
Study Materials
The course can also be completed outside the examination period.
The course is taught only once.
The course is taught: in blocks.
Note related to how often the course is taught: blokově s distančními konzultacemi.
The course is also listed under the following terms Autumn 2007, Autumn 2008.
  • Enrolment Statistics (recent)
  • Permalink: https://is.muni.cz/course/fi/autumn2009/PV126