Various minor documentation edits.
[docutils.git] / docs / dev / distributing.txt
blob770e83de51301a65f0c7e9dc17cc92d87effaf2c
1 ===============================
2  Docutils_ Distributor's Guide
3 ===============================
5 :Author: Lea Wiemann
6 :Contact: docutils-develop@lists.sourceforge.net
7 :Revision: $Revision$
8 :Date: $Date$
9 :Copyright: This document has been placed in the public domain.
11 .. _Docutils: http://docutils.sourceforge.net/
13 .. contents::
15 This document describes how to create packages of Docutils (e.g. for
16 shipping with a Linux distribution).  If you have any questions,
17 please direct them to the Docutils-develop_ mailing list.
19 First, please download the most current `release tarball`_ and unpack
20 it.
22 .. _Docutils-develop: ../user/mailing-lists.html#docutils-develop
23 .. _release tarball: http://docutils.sourceforge.net/#download
26 Dependencies
27 ============
29 Docutils has the following dependencies:
31 * Python 2.4 or later is required.  Use ">= Python 2.4" in the
32   dependencies.
34 * Docutils may optionally make use of the PIL (`Python Imaging
35   Library`_).  If PIL is present, it is automatically detected by
36   Docutils.
38 * Docutils recommends the `Pygments`_ syntax hightlighter. If available, it
39   is used for highlighting the content of `code directives`_ and roles as
40   well as included source code files (with the "code" option to the include_
41   directive).
43 .. _Python Imaging Library: http://www.pythonware.com/products/pil/
44 .. _Pygments: http://pygments.org/
45 .. _code directives: ../ref/rst/directives.html#code
46 .. _include: ../ref/rst/directives.html#include
49 Python Files
50 ============
52 The Docutils Python files must be installed into the
53 ``site-packages/`` directory of Python.  Running ``python setup.py
54 install`` should do the trick, but if you want to place the files
55 yourself, you can just install the ``docutils/`` directory of the
56 Docutils tarball to ``/usr/lib/python/site-packages/docutils/``.  In
57 this case you should also compile the Python files to ``.pyc`` and/or
58 ``.pyo`` files so that Docutils doesn't need to be recompiled every
59 time it's executed.
62 Executables
63 ===========
65 The executable front-end tools are located in the ``tools/`` directory
66 of the Docutils tarball.
68 The ``rst2*.py`` tools (except ``rst2newlatex.py``) are intended for
69 end-users.  You should install them to ``/usr/bin/``.  You do not need
70 to change the names (e.g. to ``docutils-rst2html.py``) because the
71 ``rst2`` prefix is unique.
74 Documentation
75 =============
77 The documentation should be generated using ``buildhtml.py``.  To
78 generate HTML for all documentation files, go to the ``tools/``
79 directory and run::
81     # Place html4css1.css in base directory.
82     cp ../docutils/writers/html4css1/html4css1.css ..
83     ./buildhtml.py --stylesheet-path=../html4css1.css ..
85 Then install the following files to ``/usr/share/doc/docutils/`` (or
86 wherever you install documentation):
88 * All ``.html`` and ``.txt`` files in the base directory.
90 * The ``docs/`` directory.
92   Do not install the contents of the ``docs/`` directory directly to
93   ``/usr/share/doc/docutils/``; it's incomplete and would contain
94   invalid references!
96 * The ``licenses/`` directory.
98 * ``html4css1.css`` in the base directory.
101 Removing the ``.txt`` Files
102 ---------------------------
104 If you are tight with disk space, you can remove all ``.txt`` files in
105 the tree except for:
107 * those in the ``licenses/`` directory because they have not been
108   processed to HTML and
110 * ``user/rst/cheatsheet.txt`` and ``user/rst/demo.txt``, which should
111   be readable in source form.
113 Before you remove the ``.txt`` files you should rerun ``buildhtml.py``
114 with the ``--no-source-link`` switch to avoid broken references to the
115 source files.
118 Other Files
119 ===========
121 You may want to install the Emacs-Lisp files
122 ``tools/editors/emacs/*.el`` into the appropriate directory.
125 Configuration File
126 ==================
128 It is possible to have a system-wide configuration file at
129 ``/etc/docutils.conf``.  However, this is usually not necessary.  You
130 should *not* install ``tools/docutils.conf`` into ``/etc/``.
133 Tests
134 =====
136 While you probably do not need to ship the tests with your
137 distribution, you can test your package by installing it and then
138 running ``alltests.py`` from the ``tests/`` directory of the Docutils
139 tarball.
141 For more information on testing, view the `Docutils Testing`_ page.
143 .. _Docutils Testing: http://docutils.sourceforge.net/docs/dev/testing.html