This got broken by some recent changes. As part of this, remove a
now-deleted wiki page and also add a Makefile target to build the page
(for Doom, at least).
The text output mode included useless whitespace at the end of lines
and also occasionally generated lines containing nothing but
whitespace. Clean up the code that generates text output and fix
these bugs.
The "general options" section of the manpage(s) has become quite
cluttered, and some of the options are obscure things most people don't
need to know about. Move the really obscure ones into their own category
near the end of the manpage, and factor out the options used when
starting a game from the command line into their own section as well.
Also add some missing doc comments for Hexen command line options.
Move to a "substs" hash in docgen which contains pairs of strings
to substitute. Populate @GAME@, @GAME_UPPER@ and @CFGFILE@ based
on the game supplied via -g.
Make the corresponding substitutions in default.cfg.template. Now
all of {default,heretic,hexen,strife}.cfg.5 are correct for the
respective game.
Convert chocolate-setup.6 into a template file and generate outputs
based on @PROGRAM_PREFIX@.
Add @PACKAGE_SHORTNAME@ to the list of parameters handed to docgen
and make appropriate substitutions in the manpage templates.
This is in order to better support derivative engines.
Rework the manpages to be parameterized with @PROGRAM_PREFIX@ and
@PACKAGE_NAME@. Alter the `docgen` generator to substitute those
parameters. Supply those parameters via the autofoo Makefile.
Adjust the fixed path chocolate-server.6 to be generated from
server.template, similar to doom.template -> chocolate-doom.6.
Further work is required, not least renaming chocolate-setup.6,
but several further parameterizations.
My last commits broke functionality for Python2, but it's relatively
simple to fix.
open() becomes io.open() -- it effectively does nothing for Python3,
but for Python2 it uses a backported version of the open() call.
Python2 uses bytes and strings interchangably, but I needed to use
stdout.sys.buffer for writing arbitrary bytes data to stdout.
Conditionally call the appropriate stream depending on Python version.
When encountering non-ASCII UTF-8 characters in source files (as
exists in Crispy Doom), the Python scripts would fail to work with
a UnicodeDecodeError if the locale was not a UTF-8 one (eg, the C
locale as encountered in chroot build environments).
Let's just use UTF-8 on both open() and replace print() statements with
sys.stdout.buffer.write(). This guarantees that all input and output is
UTF-8 regardless.
When interpreting a template file that uses the @include statement, we
must read the included file from a path relative to the first template
file, rather than relative to the working directory when invoking the
script. This will allow us to do out-of-tree builds.
also checks that extra options were provided on the command line (thanks
Sander van Dijk).
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 2223
file. Generate documentation for the default.cfg and chocolate-doom.cfg
configuration files.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 1091
documentation for -nosound, -nomusic, -nosfx. Fix up some bugs with the
docgen wikitext output and allow control over output of Vanilla options.
Subversion-branch: /trunk/chocolate-doom
Subversion-revision: 984