Changes

Jump to navigation Jump to search
1,296 bytes removed ,  22:36, 13 January 2013
no edit summary
setting up and maintaining [[Mark IV]].
The most important motivation for this page is that the [[TeX Live]] 2008 edition contains Mark IV, but it is only copied to the installed system, no post-install setup takes place at all. This year, the post-install setup has to be done manually.== History ==
If you have trouble following these instructionsThe most important original motivation for this page was that the [[TeX Live]] 2008 edition contained Mark IV, but it was only copied to the installed system, no post-install setup took place at all. For the Tex Live 2008 release, please direct you questions or complaints the post-install setup had to be done manually. TeX Live 2009 did not come with a usable Mark IV at all because the luatex on the 2009 editions was too old compared to the ConTeXt version. Instructions on how to deal with TeX Live 2009 were needed then. TeX Live 2010 has a working Context Mark IV out of the [httpbox://wwwyou can just run 'context' directly.ntg.nl/mailman/listinfo/ntg At most, you could run `luatools --generate; context ntg-context mailing list]-make` to deal with any tlmgr updates you may have performed since installing TeX Live.  In TeX Live 2011, not even that is needed and you only have to run `mtxrun --generate` when files are installed manually ''outside'not''' the tex-live listof tlmgr. If you are running tl 2011, this page is just background information, there should be no need to take actual actions.
=== Special notes (TL 2008/2009): ===
Special notes:
* '''Windows''': Running Mark IV under Windows is the same as on Unix, but see [[Running_Mark_IV#In_case_of_trouble|below]] for a installation hints for the 'spaces in names' problem that seem to affect Windows users more often than other platforms.
 
* '''Debian''': Mark IV suggests the tex-gyre package ([[TeX Gyre]]), not distributed currently under Debian due to licensing issues (see [[Debian installation]] )
 
=== Special notes (TL 2010): ===
 
* '''[[MacTeX]]''': You need to [[Running_Mark_IV#Updating_ConTeXt|update]] ConTeXt first.
== Quickstart ==
 
If you have trouble following these instructions, please direct you questions or complaints on the [http://www.ntg.nl/mailman/listinfo/ntg-context ntg-context mailing list], '''not''' the tex-live list.
Just for the extremely impatient unix user that knows how to deal with a web2c-based TeX distribution and has a simple, private (single-user) installation, this is the only absolutely required extra knowledge:
luatools --generate # 2010 and earlieror mtxrun --generate # 2011
is the Mark IV replacement for mktexlsr.
Everybody else should read on.
'''A note for windows users:(tl2008/2009)''' the luatex executable doest does not accept filenames with spaces in their name. This means that if you are on windows you will at least have to set up a texmfcnf.lua as explained below, and you likely will even have to reinstall texlive, because the default texlive installation directory itself contains spaces. [[Running_Mark_IV#File_not_found | Details]]. == Upgrading ConTeXt == Upgrading is not absolutely necessary unless you use [[MacTeX]], but most MKIV users will probably want to play with latest & greatest features. There's a work-in-progress to create a TL repository on the garden with the latest ConTeXt and LuaTeX, so that TeX Live users should be able to upgrade ConTeXt automatically. Until then you can update ConTeXt in different ways, for example with: rsync -av rsync://contextgarden.net/minimals/current/context/current/ /usr/local/texlive/2008/texmf-dist/ To update LuaTeX you may use the following line (depending on your platform): rsync -av rsync://contextgarden.net/minimals/current/bin/luatex/<i><font color="#F00">platform-garden</font></i>/bin/luatex \ /usr/local/texlive/2008/bin/<i><font color="#F00">platform-TL</font></i>/Which resolves to one of the following lines: rsync -av rsync://contextgarden.net/minimals/current/bin/luatex/freebsd/bin/luatex /usr/local/texlive/2008/bin/i386-freebsd/ rsync -av rsync://contextgarden.net/minimals/current/bin/luatex/linux/bin/luatex /usr/local/texlive/2008/bin/i386-linux/ rsync -av rsync://contextgarden.net/minimals/current/bin/luatex/linux-64/bin/luatex /usr/local/texlive/2008/bin/x86_64-linux/ rsync -av rsync://contextgarden.net/minimals/current/bin/luatex/osx-universal/bin/luatex /usr/local/texlive/2008/bin/universal-darwin/ You can upgrade XeTeX or metapost in the same way as LuaTeX. Of course you need to repeat all the steps mentioned above, for MKIV: luatools --generate context --makeand for MKII: mktexlsr texexec --make --all texexec --make --xtx --all Note that this is a quick-and-dirty way to upgrade TL. Use at your own risk. One should be able to update in a more elegant way.
== Generating and updating formats ==
Before first use and after each update to either the [[context]] distribution or the [[luatex]] executable you will have to regenerate the formats. The manual command for that is:
context --make cont-en
This will generate a new Mark IV format with the English interface. Without an explicit format argument, it will generate four formats: Mark IV cont-en, Matk IV cont-nl, luatex+mptopdf, and luatex+plain.
 
Starting with 2011, formats are automatically (re)generated by `context myfile.tex` when it believes it is necessary to do so. Specifically: assuming the format already exists, automatic regeneration takes places whenever the ConTeXt version of the luatex version do not match the ones in the pre-existing format. Manual patches of the core files still require manual regeneration of the formats.
The generated formats are stored inside the texmf cache.
== Using fonts Experimental speedup ==
Context Mark IV can use non-tex fonts (In addition to standard [[luatex]] we provide [[luajittex]] which uses just in OpenType, TrueType or Type1 format) directlytime compilation to speed up processing. The speedup is mostly due to the faster virtual machine. The first time that you run exact speedup depends on the tex/lua ratio and we measured speedups between 10% and 40%. You force this engine with
context myfile--jit ....tex
on a file that uses such non-traditional fonts (which is probably always), the actual fonts themselves have to be loaded in luatex's embedded section of fontforge to extract their metric information. This removes the need for tfm and vf files on your disk, but it is also a somewhat lengthy and often memory-hungry process. Alternatively you can put
That is why the results of that internal preprocessing are also saved inside the texmf cache. Future runs using the same font (not just this file, but all files using that particular font) can then use the cached version of the metrics instead.<texcode>% engine=luajittex</texcode>
=== Font name database ===on top of your main document source.
Because Luatex does not know about the names of == Using fonts all by itself, Mark IV uses a database of 'known font names'to allow you to specify fonts by their internal name instead of the name of the disk file. The mtxrun script named'fonts' maintains this database. At any time, you can run  mtxrun --script fonts --list to get the list of currently known fonts. ==
mtxrun --script The <code>OSFONTDIR</code> environment variable should contain the paths where the system fonts --helpmust be looked for.
will show some other options. Previously,  mtxrun --script fonts --reload was always needed if you wanted See [[Fonts in LuaTex#Getting access to use new fonts by their font name (as opposed to their file names).  In the latest beta (July 2008) versions of Mark IV this is no longer the case. In these new versions, the reload command is run automatically whenever a named font cannot be found.  Nowadays, you only have to do the reload manually when you have installed updates to already installed system fonts that cause the font and/or file names to change. This normally only happens for fonts that are still in development like [[TeX Gyre]] and [[Latin Modern]].
== Downloaded files ==
== In case of trouble ==
=== File not found (TL 2008/2009) ===
* You may get errors like
* You must put the main texmf tree in path without spaces. If you're installing Mark IV via TeXLive 2008, then simply change the top installation path at install time.
* If you're running XP or Server 2003 (and not Vista or Server 2008), you must also set the TeX user home and the Lua cache to paths without spaces. <code>C:/tlhome</code> is a good candidate.
** In <code>texmf.cnf</code> set HOMETEXMF TEXMFHOME to <code>C:/tlhome/$USERNAME</code> or to something similar of your liking. Using $USERNAME in the path will still give a per-user directory, just not under "Documents and Settings". This assumes that the user name doesn't have spaces of course...
** As mentioned above, create/edit <code>texmfcnf.lua</code> and put a line like <code>return { TEXMFCACHE = 'C:/tlhome/$USERNAME/.texlive2008/texmf-var' }</code>, which sets each user's cache inside his space-free TeX home path.
(this paragraph is for developers and power-users only)
If you look at the folder that TEXMFCACHE points to, you will see a folder named luatex-cache. Inside that, there is the folder context. Inside the context folder, there usually is a single subfolder with a hexadecimal name. This is the md5sum of the name of the 'tex root' folder location (aka SELFAUTOPARENTto be precise, it is the md5sum of the full path expansion of the context lua equivalent of the TEXMFCNF variable).  Below this, there are currently four folders:
* '''curl''' contains downloaded files. The url is converted to something that can be represented on disk by replacing problematic characters by dashes
* '''formats''' contains the Mark IV format file
* '''trees''' has a small set of files with hexadecimal names, one for each of the top-level constituents of TEXMF (containing the filename database for that tree), and one for each of the found texmf.cnf files (containing in preprocessed form all the variables defined by that file). The filenames are md5sums of the contained directory or filename.
 
 
[[Category:Installation]]
30

edits

Navigation menu