Difference between revisions of "Windows Installation"

From Wiki
Jump to navigation Jump to search
m (Text replacement - "pragma-ade.com" to "pragma-ade.nl")
 
(70 intermediate revisions by 19 users not shown)
Line 1: Line 1:
In order to be able to run ConTeXt under Windows, you will need the following:
+
{{note | October 18, 2011: The contents of this page are partly obsolete. To start with, MK IV is warmly recommended nowadays, and the command used for various operations is no longer <code>texexec</code>, in MK IV it is (usually) <code>context</code>. At least try the other Windows installation pages, linked to this page, before following these instructions.}}
* a stand-alone ConTeXt distribution or any other TeX distribution (such as MikTeX, TeX Live, ... )
 
* Perl, Ruby and GhostScript (Perl and Ruby are script languages, GS is a PostScript and PDF interpreter)
 
* some [[Text editor]]
 
* PDF viewer (Adobe Reader, GSview or any other)
 
  
= General =
+
== Requirements ==
 +
In order to be able to run ConTeXt under Windows, you will need:
 +
* a TeX distribution
 +
* some scripting languages: Ruby is absolutely required (unless you plan to use MK IV exclusively), Perl and GhostScript are highly recommended, the rest is optional.
 +
* your favorite [[Text Editors|text editor]] and [[#PDF Viewer|PDF viewer]]
 +
 
 +
If this was too many options to your taste, try the [[Simple Windows Installation]] page instead.
  
 
== Updating ==
 
== Updating ==
  
You have to bear in mind that ConTeXt is being developed reasonably fast (see [[Release Notes]]), so it's recommended to update it regulary. Updating in MikTeX is "one-button-click" operation, updating the stand-alone version means unziping [[cont-tmf.zip]] to the proper folder and remake formats. Recent ConTeXt versions allow you to update with
+
You have to bear in mind that ConTeXt is being developed reasonably fast (see [[Release Notes]]), so it's recommended to update it regulary. The command
 
  ctxtools --update
 
  ctxtools --update
 +
used to work OK, but is '''no more recommended'''. All the three distributions mentioned here have their own way to update. We'll come back to that later (and move this section to a better place).
 +
 +
= TeX Distributions =
 +
 +
You first need to choose a TeX distribution. Options are:
 +
 +
== [[ConTeXt Standalone]] ==
 +
* the official ConTeXt distribution
 +
* easy to keep up-to-date
 +
* includes (almost) everything that you need for ConTeXt
 +
* no LaTeX
 +
** if you don't need it, that's a rather small & convenient way to use ConTeXt
 +
** if you need it, you can have ConTeXt Standalone installed parallel to [[TeX Live|TL]] or [[MikTeX]]
 +
 +
There are two ways to install it on Windows:
 +
* use GUI intaller by Vyatcheslav [http://minimals.contextgarden.net/setup/context-installer/] (sets environmental variables globally)
 +
* install from command-line (TODO: instructions)
  
But you need to <b>update [[cont-win.zip]]</b> every now and then as well (no matter which distribution you use)!
+
== [[TeX Live]] ==
  
== Older versions of Windows ==
+
* reference distribution for (La)TeX for all platforms
 +
* released once per year and sent to members of TeX user groups on DVDs
 +
* used to be gigantic; but since 2008 one can install separate packages and update them
 +
* binaries are compatible with ConTeXt Standalone
 +
* ConTeXt is outdated
 +
** but it's possible to update it manually
 +
** new ConTeXt update mechanism is being prepared
  
The stand-alone distribution only works for newer versions of Windows that have cmd.exe instead of command.com as command interpreter. Running it on Windows 98 (or earlier) is also possible, but needs some tweaking (hardcoding the paths in .bat script). If you really need that and can't make it work alone, try to ask Taco.
+
''Another distribution worth mentioning is [http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/web2c75-e.html W32TeX] that came to our attention when Akira (its author) was the first one to manage to compile [[XeTeX]] for Windows, and still provides the very latest Windows binaries for [[XeTeX]], [[LuaTeX]], [[pdfTeX]], [[MetaPost]], ... Distribution is a bit specific, but his binaries are great - compatible with [[TeX Live]] and used in [[ConTeXt Standalone]].''
  
= Which ConTeXt distribution to choose? =
+
= [[ConTeXt Standalone]] with TexWorks =
  
MikTeX is great tool for people typsetting in LaTeX. Updating the packages is easy and packages are downloaded automatically if you need them. But on the other hand it's not adapted for ConTeXt well enough. ConTeXt is working in MikTeX 2.4 (and with some manual changes in 2.5 as well), but some new features aren't and the new updates are sometimes really way behind the time.
+
This assumes you are not already using a LaTeX distribution like MikTeX.
  
The stand-alone ConTeXt is much better in the way that it is always up-to-date, the environment is set up properly and some special functionality that doesn't work in MikTeX should work here as expected. The only drawbacks (although I don't really dare to call them drawbacks) are that you have to have some other distribution working in parallel if you need LaTeX as well and that the installation and updates are not automatic (though still straightforward).
+
# You do not need to install Ruby first unless you want to run MkII.
 +
# Download the ConTeXt Standalone [http://minimals.contextgarden.net/setup/context-setup-mswin.zip here]
 +
# Run <code>first-setup.bat</code> from the command line. By default, this will download the beta version. If you want the stable version, add <code>--context=current</code>
 +
# It is probably a good idea to make sure ConTeXt is visible from the PATH. In Windows 7, you should go to System > Advanced > Environment Variables and add <code>C:\context\tex\texmf-mswin\bin</code> to your user PATH, assuming you put your ConTeXt folder in <code>C:\</code>. This will allow you to run ConTeXt from the command line anywhere, using <code>context filename.tex</code>.
 +
# Install the [http://www.tug.org/texworks/ TexWorks] standalone and accept the default options upon installation.
 +
# Go to Preferences > Typesetting and add the directory where <code>context.exe</code> is located. It is the same one you added to your PATH.
 +
## Next, under Processing Tools, create a new one and call it anything you want. In the Progream field, enter the path of <code>context.exe</code>, the same as above. In the Arguments section, add <code>$fullname</code> and you are done.
 +
# Now populate the screen with ConTeXt code, select ConTeXt and press Typeset. A PDF screen should pop up with the document.
  
You can use both MikTeX and the stand-alone distr. simultaneously though.
 
  
There's another (not so popular) TeX distribution, [http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/web2c75-e.html W32TeX] which is probably the only one so far which includes [[XeTeX]]. See [[Windows Installation#XeTeX Installation|XeTeX Installation]] to figure out how to install XeTeX on top of standalone distribution.
+
== GhostScript ==
  
I never tried XEmTeX and TeX Live. If anyone is willing to share the experince with other users, you're wellcome to do so.
+
* http://www.cs.wisc.edu/~ghost/
 +
* http://www.ghostscript.com/
  
== Stand-alone ConTeXt distribution ==
+
If you already worked with (La)TeX before, you probably already have it installed. Try
 +
gswin32 --version
  
* http://www.pragma-ade.com/download-1.htm
+
You have to download GhostScript (filename '''<code>gs851w32.exe</code>''' or a similar one) and preferrably GSview as well ('''<code>gsv47w32.exe</code>''' or similar). Be sure to include the executables (folder where gswin32.exe is located) into the PATH variable.
  
 +
= Special Notes =
 
===Installation Instructions===
 
===Installation Instructions===
  
Line 42: Line 76:
 
Here is a step by step of how it should go (i.e. what I did with success):
 
Here is a step by step of how it should go (i.e. what I did with success):
  
# Install [[Windows Installation#Installing Perl and Ruby|Perl and Ruby]]
+
# Install Perl and Ruby
# Download [http://www.pragma-ade.com/context/install/mswincontext.zip mswincontext.zip], unzip it and move/rename the <code>isoimage</code> folder to your favourite destination. The instructions to follow assume that you renamed <code>isoimage</code> to <pre>c:\Programs\context</pre> There should be one folder (<code>usr</code>) and a few files in it.
+
# Download [http://www.pragma-ade.nl/context/install/mswincontext.zip mswincontext.zip], unzip it and move/rename the <code>isoimage</code> folder to your favourite destination. The instructions to follow assume that you renamed <code>isoimage</code> to <pre>c:\Programs\context</pre> There should be one folder (<code>usr</code>) and a few files in it.
 
# Open the folder <code>c:\Programs\context</code> and double-click <code>cdemo.bat</code>.
 
# Open the folder <code>c:\Programs\context</code> and double-click <code>cdemo.bat</code>.
 
# Now you should see the editor SciTE open with a few files. Press F7 to compile one of the files.
 
# Now you should see the editor SciTE open with a few files. Press F7 to compile one of the files.
 
If everything goes smoothly, you are done. If not, read these instructions again carefully. If you cannot get it work, mail the list.
 
If everything goes smoothly, you are done. If not, read these instructions again carefully. If you cannot get it work, mail the list.
  
{{todo|review this steps: change step numbers and join the information - notes about ruby, Acrobat, ... apply to all windows distributions.}}
+
{{todo|review these steps: join the information - notes about ruby, Acrobat, ... apply to all windows distributions.}}
  
 
A few notes on the procedure above:
 
A few notes on the procedure above:
* It is up to you to choose the location where you unzip the file in step #5, no magic there. Just that you know where the files are.
+
* It is up to you to choose the location where you unzip the file in step #2, no magic there. Just that you know where the files are.
* The actual location of the ConTeXt in step #6 tree does not matter. I use <tt>c:\context</tt>, but you might use something else. However, I would not use anything with a space in the name (e.g. <tt>c:\Program Files\context</tt>), as that may confuse things. (Has anybody tried lately?)
+
* The actual location of the ConTeXt tree in step #2 does not matter. I use <tt>c:\context</tt>, but you might use something else. However, I would not use anything with a space in the name (e.g. <tt>c:\Program Files\context</tt>), as that may confuse things. [Seems to work with an August 2006 stand-alone distribution.]
* After you have verified everything works in step #9, you can toss <tt>cdemo.bat</tt> away and use <tt>cstart.bat</tt> to start everything. Make a link to it somewhere so that you can start the system by a shortcut or through the Start menu. ''Do not move the batch script anywhere,'' it has to be run in the root directory of the distribution (e.g. <tt>c:\Programs\context</tt>).
+
* After you have verified everything works in step #3, you can toss <tt>cdemo.bat</tt> away and use <tt>cstart.bat</tt> to start everything. Make a link to it somewhere so that you can start the system by a shortcut or through the Start menu. ''Do not move the batch script anywhere,'' it has to be run in the root directory of the distribution (e.g. <tt>c:\Programs\context</tt>).
* Make sure you have something Acrobatish (any decent PDF viewer) installed, otherwise you won't see the results in step #9.
+
* Make sure you have something Acrobatish (any decent PDF viewer) installed, otherwise you won't see the results in step #4.
 
* A final note: to have it finally running you should build the formats first. To do so there is at least a way:
 
* A final note: to have it finally running you should build the formats first. To do so there is at least a way:
  
Line 69: Line 103:
 
   texexec --make --all
 
   texexec --make --all
  
  Then, close the cmd, double click in cdemo.bat
+
  Then, close the cmd, double-click in cdemo.bat
 
  and voila !
 
  and voila !
  
Line 78: Line 112:
 
# Create a file <code>pragmatex.bat</code> (the name doesn't really matter) with this content: <pre>C:\Programs\context\usr\local\context\tex\setuptex.bat C:\Programs\context\usr\local\context\tex</pre> and make sure that this file is visible by <code>PATH</code>.
 
# Create a file <code>pragmatex.bat</code> (the name doesn't really matter) with this content: <pre>C:\Programs\context\usr\local\context\tex\setuptex.bat C:\Programs\context\usr\local\context\tex</pre> and make sure that this file is visible by <code>PATH</code>.
 
# You can safely continue using your old TeX distribution (MikTeX, TeX Live, ...). If you want to invoke the stand-alone distribution, just execute <pre>pragmatex</pre> from the command-line and all the subsequent calls to <code>texexec</code> will use files from the stand-alone tree (you'll notice the difference in file names when running ConTeXt).
 
# You can safely continue using your old TeX distribution (MikTeX, TeX Live, ...). If you want to invoke the stand-alone distribution, just execute <pre>pragmatex</pre> from the command-line and all the subsequent calls to <code>texexec</code> will use files from the stand-alone tree (you'll notice the difference in file names when running ConTeXt).
 +
# To avoid the need to open a new prompt each time you want to run ConTeXt, create another .bat file in your .tex file's folder with the following content:
  
===Updating the installation===
+
<pre>call C:\Programs\context\usr\local\context\pragmatex.bat
 
+
context filename.tex</pre>
{{todo|explain the best way for updating}}
 
 
 
== MikTeX or ProTeXt ==
 
 
 
* http://www.miktex.org/
 
* http://www.tug.org/protext/ (MikTeX-based distribution, includes TeXnicCenter, GhostScript and WinEdt)
 
 
 
MikTeX is probably the easiest and most recommended solution for newbies or for those who have already been using LaTeX and don't want to install anything else. MikTeX is very user-friendly, updating is very easy.
 
 
 
However, some more experienced users may not always be happy with it:
 
* using fonts doesn't always work as expected (or at least different than in the stand-alone distribution)
 
* ConTeXt format is usually recent, but not always the latest
 
* [[XeTeX]] doesn't work yet with it
 
 
 
=== MikTeX packages that you need ===
 
 
 
Try running
 
texexec --version
 
In most cases MikTeX should install the required package for ConTeXt automatically (if not installed yet). Don't ask me why Russian und Ukrainian hyphenation patterns have to be downloaded as well.
 
 
 
=== Additional steps ===
 
 
 
* <i>(Notes about texmfstart were removed since texmfstart is now part of MikTeXt.)</i>
 
* If you get error messages like these:
 
(C:\Programs\MikTeX\tex\context\base\pdfr-ec.tex) [1.1{original-empty.map}{lm-t
 
exnansi.map}{original-base.map
 
Warning:  (file original-base.map): invalid entry for `fmvr8x': font file missing
 
 
Warning:  (file original-base.map): invalid entry for `xycmat11': font file missing
 
:then delete the folder <code>fonts/map/dvipdfm</code> or (that would be a proper solution) set
 
TEXFONTMAPS = .;$TEXMF/fonts/map/{$progname,pdftex,dvips,}//
 
: (but I have no idea how to do the latter.)
 
 
 
=== After you install or change something: Refresh file name database & Rebuild Formats ===
 
 
 
* ''MikTeX Options -> General -> Refresh FNDB''
 
* ''MikTeX Options -> General -> Update Formats''
 
 
 
''(Don't forget to run the '''MikTeX Update Wizard''' regularly!)''
 
 
 
If you have any problems running ConTeXt, check
 
* ''MikTeX Options -> Formats -> <code>cont-en</code> -> Edit''
 
 
 
The following should be set:
 
Compiler:        pdfetex
 
Input File Name:  cont-en.ini
 
Output File Name: [empty]
 
Preloaded Format: [empty]
 
Description:      [anything]
 
Exclude when updating: [unchecked]
 
 
 
After ''Apply''-ing and ''Build''-ing, ''Refresh'' & ''Update'' as described above. This is the MikTeX way for doing <code>texexec --make --en</code>. The latter has no influence since MikTeX doesn't set any system variables and consequently ConTeXt doesn't know where to leave the created formats.
 
 
 
=== Additional settings (for those who use MetaFun) ===
 
 
 
Some default "security settings" (not really relevant for you unless you run it on a server) may cause you troubles, esp. when using [[MetaFun]]. Do the following:
 
* In <code>[MikTeX PATH]\tex\context\user\cont-sys.tex</code> uncomment the following lines:
 
<texcode>
 
\runMPgraphicstrue
 
\runMPTEXgraphicstrue
 
</texcode>
 
* In case the file doesn't exist yet, copy the file <code>cont-sys.rme</code> (in the same folder) to <code>cont-sys.tex</code> first. <code>cont-sys.rme</code> may change every now and then, so check for major changes from time to time and update your <code>cont-sys.tex</code> accordingly.
 
* Enable <code>write18</code> ''(see below)''
 
 
 
(<code>[MikTeX PATH]</code> and <code>[localtexmf PATH]</code> are chosen during the installation. If you don't know what they are, take a look at ''MikTeX Options -> Roots'')
 
 
 
I don't know why and when exactly this is needed ([[MPtoPDF]] may cause problems), but
 
set TEXSYSTEM=miktex
 
may help you solving some problems.
 
 
 
=== write18 ===
 
 
 
<code>write18</code> allows calling external programs from within TeX. It's not a good idea to have it enabled on a server, but for comfortable work with ConTeXt (for MetaFun or modules for R and gnuplot) you probably need it.
 
 
 
'''MikTeX 2.4'''
 
* Create a file <code>[localtexmf PATH]\miktex\config\miktex.ini</code> and add the following line to it:
 
write18=enable
 
:''(Because of some unknown reason, <code>write18=enable</code> in <code>[localtexmf PATH]\miktex\config\miktex.ini</code> may be ignored on some computers. In that case make the change in <code>[MikTeX PATH]\miktex\config\miktex.ini</code>, but you may have to repeat this step every time you update MikTeX packages.)''
 
'''MikTeX 2.5'''
 
* Each application now has it's own configuration file. To enable <code>write18</code> run
 
initexmf --edit-config-file=miktex\config\pdfetex.ini
 
:and write put
 
EnableWrite18=t
 
:into it. An alternative is to se the environment variable <code>MIKTEX_ENABLEWRITE18=t</code> (currently there's a bug and only MIKTEX_ENABLEWRITE18=t works, but hopefully it'll go away soon).
 
 
 
== W32TeX ==
 
 
 
* http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/web2c75-e.html
 
 
 
The only Windows distribution so far that comes with [[XeTeX]].
 
 
 
== TeX Live or XEmTeX ==
 
 
 
* http://www.tug.org/texlive/
 
* https://xemtex.groups.foundry.supelec.fr/ (TeX Live-based distribution including Perl, Emacs and GhostScript)
 
 
 
[http://www.tug.org/texlive/doc/texlive-en/live.html#x1-200006 Installation instructions] are part of the documentation.
 
 
 
{{todo|can someone with any experience write something about it?}}
 
 
 
== XeTeX Installation ==
 
 
 
(Until Hans decides to apply that to the <b>standalone distribution</b>, this notes might be of interest for those who want to use XeTeX under Windows.)
 
 
 
* Download ftp://akagi.ms.u-tokyo.ac.jp/pub/TeX/win32/xetex-w32.tar.bz2
 
* Unpack it. <i>(The easiest way might be with Total Commander; you need a plugin for it, available on the official website)</i>
 
* Copy the content of <code>bin</code> into <code>texmf-mswin/bin</code> <i>(copy just the missing files, or simply overwrite the others)</i>
 
* Copy the content of <code>share/texmf</code> to <code>texmf</code>. If you really mind, you can delete the following before copying (but it's not necessary):
 
** <code>tex/xetex/xelatex</code>
 
** <code>tex/xetex/generic/hyphen</code>
 
** <code>tex/xetex/generic/ifxetex</code>
 
** <code>web2c/xetex/xe[la]tex.fmt</code>
 
** (<code>doc</code> in case you don't need it)
 
* <code>web2c/xetex/xetex.pool</code> should go to <code>texmf-mswin/web2c/</code>
 
 
 
=== Building the formats ===
 
At the first time and when you update ConTeXt, you have to run the following command from console:
 
texexec --xtx --make --all
 
 
 
=== Using XeTeX ===
 
You can then compile your document using
 
texexec --xtx filename
 
 
 
=== Setting up fontconfig ===
 
* Open <code>setuptex.bat</code> and add the following three lines <i>(here they're surrounded by the best place where they should be put)</i>:
 
set HOMETEXMF=
 
 
set FONTCONFIG_FILE=fonts.conf
 
set FONTCONFIG_PATH=%TEXMFMAIN%\fonts\conf
 
set PKGCACHEDIR=%TEXMFMAIN%\fonts\cache
 
 
if not "%CTXDEVTXPATH%"=="" SET CTXDEVTXPATH=
 
* To use fonts that are not installed on the system you should add something like this to <code>C:\Programs\context\usr\local\context\texmf\fonts\conf\fonts.conf</code>:
 
<dir>c:/Programs/context/usr/local/context/texmf/fonts/opentype/public/lm</dir>
 
* For the first time and every time when you install a new font that you want to use with XeTeX, issue:
 
fc-cache -f -v
 
* To get a list of the available fonts use:
 
fc-list > list.txt
 
 
 
= Required and Useful Tools =
 
 
 
== Installing Perl and Ruby ==
 
 
 
* http://www.activestate.com/Products/ActivePerl/
 
* http://www.ruby-lang.org or http://rubyinstaller.rubyforge.org
 
 
 
You need the two scripting languages in other operating systems as well, but installing them under Windows may be a bit less intuitive for a newbie than under Linux.
 
 
 
You can download ActivePerl [http://www.activestate.com/Products/Download/Download.plex?id=ActivePerl here] and Ruby [http://rubyinstaller.rubyforge.org/wiki/wiki.pl here] or [http://ftp.ruby-lang.org/pub/ruby/binaries/mswin32/ here] (different one; might be better - you only need to extract files from zip).
 
 
 
After installing them (remember the folder where you've put them!) you have to check if both executables are included in the PATH. Open the command line (''Start'' -> ''Run'' ... -> type '''<code>cmd</code>''' or '''<code>command</code>''') and check if
 
perl --version
 
and
 
ruby --version
 
work OK.
 
 
 
If windows complains about ''"Command not found"'', go to the ''Control Panel'' -> ''System'' -> ''Advanced'' -> click on the ''"Environment variables"'' and choose '''path''' in ''"system variables"''. Type in the path (e.g. D\Program Files\Perl\bin\;) where the ruby and perl  *.exe files are installed. Generally, the installation is automatic. you may not need the above method.
 
 
 
''(Installing ruby is optional under Windows, but nevertheless recommended. Some scripts need ruby, although it may happen that you will never use those scripts.)''
 
 
 
=== A note about cygwin ===
 
 
 
<b><i>(Skip this unless you know what you are doing!)</i></b>
 
 
 
If you have a working perl and ruby under cygwin and if they are in <code>PATH</code>, this might already work for ConTeXt (although it's a better idea to use native Windows versions). However, if the inclusion of libraries in ruby fails (because of conversion of path names) and if you object to install ruby again, try setting the environmental variable <code>RUBYLIB</code>:
 
set RUBYLIB=/cygdrive/c/[Path to MikTeX or other distr.]/scripts/context/ruby
 
 
 
<!-- <i>My Computer -> Properties -> Advanced -> Environment Variables -> New</i>
 
<!-- * Variable name: <code>RUBYLIB</code>
 
<!--* Variable value: <code>/cygdrive/c/<i>[Path to MikTeX or other distr.]</i>/scripts/context/ruby</code> -->
 
[http://groups.google.com/group/comp.lang.ruby/browse_thread/thread/50b3c1b275cd0c6d]
 
 
 
== Installing GhostScript ==
 
 
 
* http://www.cs.wisc.edu/~ghost/
 
* http://www.ghostscript.com/
 
 
 
If you already worked with (La)TeX before, you probably already have it installed. Try
 
gswin32 --version
 
 
 
You have to download GhostScript (filename '''<code>gs851w32.exe</code>''' or a similar one) and preferrably GSview as well ('''<code>gsv47w32.exe</code>''' or similar). Be sure to include the executables (folder where gswin32.exe is located) into the PATH variable.
 
 
 
== Other useful software ==
 
 
 
Assuming that you already have Adobe Reader (if not, you can get it [http://www.adobe.com/products/acrobat/readstep2.html here]; you don't need it to compile your documents, but at least to see the results), there is still some software still worth mentioning.
 
 
 
* [http://www.pstoedit.net/pstoedit/ PStoEdit] for Windows is only needed in order to be able to use some advanced features such as those mentioned in [[manual:mmakempy.pdf|METAPOST outlines]]
 
* [[LilyPond]]
 
* [[Font Tools]]
 
* ... ?
 
 
 
= Choosing a [[Text editor]] & compiling =
 
 
 
== For newbies (like Word (ex)users) ==
 
 
 
{{todo|Explain the difference between GUI/text editor/compiler/PDF document; people often ask me: "ConTeXt - oh, you mean that program with a blue screen and colourful fonts?"}}
 
 
 
* '''[http://scintilla.sourceforge.net/SciTE.html SciTE]''' or '''[http://www.winedt.com WinEdt]''' or [http://www.textpad.com/ Textpad] or [http://www.toolscenter.org TeXnicCenter] may be a good choice for a newbie.
 
 
 
WinEdt has a rich graphical user-interface, but more support for LaTeX than for ConTeXt. ''(You need to install WinEdt AFTER the installtion of MikTeX, GhostScript and Adobe Reader for Windows.)''
 
 
 
ConTeXt support for SciTE was written by Hans Hagen (the ConTeXt developer himself) and also includes recognition and auto-completion of most frequent ConTeXt commands.
 
 
 
According to their web-site: "TeXnicCenter is a feature rich integrated development environment (IDE) for developing LaTeX-documents on Microsoft Windows (Windows 9x/ME, NT/2000/XP) freely available under GPL."
 
It can also be used for processing ConTeXt documents.
 
 
 
{{todo|Someone should write how to install SciTE & ConTeXt support for it without installing the stand-alone ConTeXt.}}
 
  
=== For gurus (like (La)TeX users or programmers) ===
+
If you place the <code>pragmatex</code> file in your ConTeXt directory, this will allow you to call ConTeXt from anywhere on your computer with one click. The disadvantage is that it's linked to a specific .tex file.
  
You probably already have your favourite [[Text editor]] (or at least you know what we're talking about) and you may skip this. If not, take a look at the [[Text editor]] page to help you choose one.
+
===Use the same .bat file to run ConTeXt with any .tex file===
* [[Vim]] or [http://www.emacswiki.org/cgi-bin/wiki Emacs] may be a good choice if you're willing to invest some time into learning them - it may be worth the effort.
 
  
== Compiling ==
+
# You can use the .bat file above for any .tex file you have.
 +
Just do the following modification:
 +
<pre>call C:\Programs\context\usr\local\context\pragmatex.bat
 +
context %1</pre>
  
After you've done all that, you can finally use your favourite editor to write your [[First Document|first document]].
+
and save it as ConTeXtthis.bat. Now, you can use it this way:
 +
<pre>ConTeXtthis.bat anyfile.tex </pre>
  
To compile it, open the command line again (Start -> Run ... -> type '''cmd''' or '''command''') and run
+
Where anyfile.tex is your main ConTeXt source file. This whole instruction works well whit TeXnicCenter
texexec yourfilename
 
  
Some text editors support automatic compiling:
+
{{Installation navbox}}
* '''F7''' (= command Build in Tools menu) or '''Ctrl+1''' (= command Process TeX file in Tools menu) in '''SciTE'''
 
* ?? in WinEdt
 
* F?? in TeXnicCenter
 
* see [[Vim#Makefile|makefile]] for Vim
 
  
 
[[Category:Installation]]
 
[[Category:Installation]]

Latest revision as of 08:27, 2 July 2022


NOTE: October 18, 2011: The contents of this page are partly obsolete. To start with, MK IV is warmly recommended nowadays, and the command used for various operations is no longer texexec, in MK IV it is (usually) context. At least try the other Windows installation pages, linked to this page, before following these instructions.

Requirements

In order to be able to run ConTeXt under Windows, you will need:

  • a TeX distribution
  • some scripting languages: Ruby is absolutely required (unless you plan to use MK IV exclusively), Perl and GhostScript are highly recommended, the rest is optional.
  • your favorite text editor and PDF viewer

If this was too many options to your taste, try the Simple Windows Installation page instead.

Updating

You have to bear in mind that ConTeXt is being developed reasonably fast (see Release Notes), so it's recommended to update it regulary. The command

ctxtools --update

used to work OK, but is no more recommended. All the three distributions mentioned here have their own way to update. We'll come back to that later (and move this section to a better place).

TeX Distributions

You first need to choose a TeX distribution. Options are:

ConTeXt Standalone

  • the official ConTeXt distribution
  • easy to keep up-to-date
  • includes (almost) everything that you need for ConTeXt
  • no LaTeX
    • if you don't need it, that's a rather small & convenient way to use ConTeXt
    • if you need it, you can have ConTeXt Standalone installed parallel to TL or MikTeX

There are two ways to install it on Windows:

  • use GUI intaller by Vyatcheslav [1] (sets environmental variables globally)
  • install from command-line (TODO: instructions)

TeX Live

  • reference distribution for (La)TeX for all platforms
  • released once per year and sent to members of TeX user groups on DVDs
  • used to be gigantic; but since 2008 one can install separate packages and update them
  • binaries are compatible with ConTeXt Standalone
  • ConTeXt is outdated
    • but it's possible to update it manually
    • new ConTeXt update mechanism is being prepared

Another distribution worth mentioning is W32TeX that came to our attention when Akira (its author) was the first one to manage to compile XeTeX for Windows, and still provides the very latest Windows binaries for XeTeX, LuaTeX, pdfTeX, MetaPost, ... Distribution is a bit specific, but his binaries are great - compatible with TeX Live and used in ConTeXt Standalone.

ConTeXt Standalone with TexWorks

This assumes you are not already using a LaTeX distribution like MikTeX.

  1. You do not need to install Ruby first unless you want to run MkII.
  2. Download the ConTeXt Standalone here
  3. Run first-setup.bat from the command line. By default, this will download the beta version. If you want the stable version, add --context=current
  4. It is probably a good idea to make sure ConTeXt is visible from the PATH. In Windows 7, you should go to System > Advanced > Environment Variables and add C:\context\tex\texmf-mswin\bin to your user PATH, assuming you put your ConTeXt folder in C:\. This will allow you to run ConTeXt from the command line anywhere, using context filename.tex.
  5. Install the TexWorks standalone and accept the default options upon installation.
  6. Go to Preferences > Typesetting and add the directory where context.exe is located. It is the same one you added to your PATH.
    1. Next, under Processing Tools, create a new one and call it anything you want. In the Progream field, enter the path of context.exe, the same as above. In the Arguments section, add $fullname and you are done.
  7. Now populate the screen with ConTeXt code, select ConTeXt and press Typeset. A PDF screen should pop up with the document.


GhostScript

If you already worked with (La)TeX before, you probably already have it installed. Try

gswin32 --version

You have to download GhostScript (filename gs851w32.exe or a similar one) and preferrably GSview as well (gsv47w32.exe or similar). Be sure to include the executables (folder where gswin32.exe is located) into the PATH variable.

Special Notes

Installation Instructions


TODO: I made an example how to use the stand-alone distr. isolated from an existing distro. I would like to "join" this somehow with the first section and move opening of cdemo.bat to something like testing the installation. Perhaps pragmatex.bat can be executed with autorun or something if one is not using another TeX distribution. (See: To-Do List)


by Ville Voipio on the mailing list, 2006-01-19 (modified)

Here is a step by step of how it should go (i.e. what I did with success):

  1. Install Perl and Ruby
  2. Download mswincontext.zip, unzip it and move/rename the isoimage folder to your favourite destination. The instructions to follow assume that you renamed isoimage to
    c:\Programs\context
    There should be one folder (usr) and a few files in it.
  3. Open the folder c:\Programs\context and double-click cdemo.bat.
  4. Now you should see the editor SciTE open with a few files. Press F7 to compile one of the files.

If everything goes smoothly, you are done. If not, read these instructions again carefully. If you cannot get it work, mail the list.


TODO: review these steps: join the information - notes about ruby, Acrobat, ... apply to all windows distributions. (See: To-Do List)


A few notes on the procedure above:

  • It is up to you to choose the location where you unzip the file in step #2, no magic there. Just that you know where the files are.
  • The actual location of the ConTeXt tree in step #2 does not matter. I use c:\context, but you might use something else. However, I would not use anything with a space in the name (e.g. c:\Program Files\context), as that may confuse things. [Seems to work with an August 2006 stand-alone distribution.]
  • After you have verified everything works in step #3, you can toss cdemo.bat away and use cstart.bat to start everything. Make a link to it somewhere so that you can start the system by a shortcut or through the Start menu. Do not move the batch script anywhere, it has to be run in the root directory of the distribution (e.g. c:\Programs\context).
  • Make sure you have something Acrobatish (any decent PDF viewer) installed, otherwise you won't see the results in step #4.
  • A final note: to have it finally running you should build the formats first. To do so there is at least a way:
 (assuming C:\Programs\context)
 Start->Run->cmd
 cd C:\Programs\context
 cdemo.bat
 Then close the SciTe window but remain in the cmd.
Then, in one line:
C:\Programs\context\usr\local\context\tex\setuptex.bat C:\Programs\context\usr\local\context\tex
 texexec --make --all
Then, close the cmd, double-click in cdemo.bat
and voila !
  • Another way to do it could be to type: texexec --make --all directly in SciTe console.

How to use the stand-alone distr. if you have MikTeX/TeX Live installed

  1. Create a file pragmatex.bat (the name doesn't really matter) with this content:
    C:\Programs\context\usr\local\context\tex\setuptex.bat C:\Programs\context\usr\local\context\tex
    and make sure that this file is visible by PATH.
  2. You can safely continue using your old TeX distribution (MikTeX, TeX Live, ...). If you want to invoke the stand-alone distribution, just execute
    pragmatex
    from the command-line and all the subsequent calls to texexec will use files from the stand-alone tree (you'll notice the difference in file names when running ConTeXt).
  3. To avoid the need to open a new prompt each time you want to run ConTeXt, create another .bat file in your .tex file's folder with the following content:
call C:\Programs\context\usr\local\context\pragmatex.bat 
context filename.tex

If you place the pragmatex file in your ConTeXt directory, this will allow you to call ConTeXt from anywhere on your computer with one click. The disadvantage is that it's linked to a specific .tex file.

Use the same .bat file to run ConTeXt with any .tex file

  1. You can use the .bat file above for any .tex file you have.

Just do the following modification:

call C:\Programs\context\usr\local\context\pragmatex.bat 
context %1

and save it as ConTeXtthis.bat. Now, you can use it this way:

ConTeXtthis.bat anyfile.tex 

Where anyfile.tex is your main ConTeXt source file. This whole instruction works well whit TeXnicCenter