FI:PV126 Typographic Programming - Course Information
PV126 Typographic Programming
Faculty of InformaticsAutumn 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
- Applied Informatics (programme FI, B-AP)
- Applied Informatics (programme FI, N-AP)
- Information Technology Security (programme FI, N-IN)
- Bioinformatics (programme FI, B-AP)
- Bioinformatics (programme FI, N-AP)
- Information Systems (programme FI, N-IN)
- Informatics with another discipline (programme FI, B-BI)
- Informatics with another discipline (programme FI, B-FY)
- Informatics with another discipline (programme FI, B-GE)
- Informatics with another discipline (programme FI, B-GK)
- Informatics with another discipline (programme FI, B-CH)
- Informatics with another discipline (programme FI, B-IO)
- Informatics with another discipline (programme FI, B-MA)
- Informatics with another discipline (programme FI, B-SO)
- Informatics with another discipline (programme FI, B-TV)
- Informatics (eng.) (programme FI, D-IN)
- Informatics (eng.) (programme FI, D-IN4)
- Informatics (programme FI, B-IN)
- Informatics (programme FI, D-IN)
- Informatics (programme FI, D-IN4)
- Informatics (programme FI, M-IN)
- Informatics (programme FI, N-IN)
- Mathematical Informatics (programme FI, B-IN)
- Parallel and Distributed Systems (programme FI, B-IN)
- Parallel and Distributed Systems (programme FI, N-IN)
- Computer Graphics and Image Processing (programme FI, B-IN)
- Computer Graphics (programme FI, N-IN)
- Computer Networks and Communication (programme FI, B-IN)
- Computer Networks and Communication (programme FI, N-IN)
- Computer Systems and Technologies (eng.) (programme FI, D-IN4)
- Computer Systems and Technologies (programme FI, D-IN4)
- Computer Systems and Data Processing (programme FI, B-IN)
- Computer Systems (programme FI, N-IN)
- Embedded Systems (eng.) (programme FI, N-IN)
- Programmable Technical Structures (programme FI, B-IN)
- Embedded Systems (programme FI, N-IN)
- Service Science, Management and Engineering (eng.) (programme FI, N-AP)
- Service Science, Management and Engineering (programme FI, N-AP)
- Theoretical Informatics (programme FI, N-IN)
- Upper Secondary School Teacher Training in Informatics (programme FI, M-SS)
- Upper Secondary School Teacher Training in Informatics (programme FI, M-TV)
- Upper Secondary School Teacher Training in Informatics (programme FI, N-SS) (2)
- Artificial Intelligence and Natural Language Processing (programme FI, B-IN)
- Artificial Intelligence and Natural Language Processing (programme FI, N-IN)
- Image Processing (programme FI, N-AP)
- 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.
- Enrolment Statistics (recent)
- Permalink: https://is.muni.cz/course/fi/autumn2009/PV126