tttool-1.8.1: Changelog.md
# Changelog for tttool
## 1.8.1 (2019-03-30)
* The SVG patterns created with `./tttool oid-code` and `./tttool oid-codes`
now have `id`s that are valid (no spaces).
* The release tarball now contains a binary for Linux as well.
* The release tarball now contains a copy of [The tttool book](http://tttool.readthedocs.io/de/latest/)
## 1.8 (2018-02-06)
* If the script for an oid code contains only one line, one can simply write
house: P(welcome)
instead of
house:
- P(welcome)
* `./tttool oid-table` aligns images on pixel boundaries, so that a naive
rastering of the whole page still yields crisp pixels.
Thanks to @m7thon for the patch!
* The PDF output uses PDF patterns for much smaller PDF files.
* The commands `./tttool oid-code` and `./tttool oid-table` can now also
produce SVG output with SVG patterns:
`--image-format SVG` produces SVG with vector squares
for the pixels, wihle `--image-format SVG+PNG` produces SVG with a small,
repeated pixel graphics in the pattern
* Games are now more likely to be properly round-tripped (GH issue #174)
## 1.7 (2017-01-08)
* `./tttool oid-table` sorts naturally now, so that the sequence is `foo1`
`foo2` `foo10`, and not `foo1` `foo10` `foo2`.
* Read and write the language field in the GME header (GH issue #105)
## 1.6.1 (2016-04-17)
* `./tttool assemble`: Do not fail with too many open files
* Handle “other” play commands (FFE0, FFE1) even if their argument is not 0,
with some crude syntax in the YAML format. The meaning of this argument is
not yet understood, volunteers are welcome!
## 1.6 (2016-01-31)
* Completely re-done option parsing, so there now proper support for short and
long options, arbitrary order of options, better error messages and
per-command `--help` output.
**Incompatibility:** Some commands are now called differently. In
particular, to generate PNG files with all codes from a YAML file, use
`./tttool oid-codes`, not `./tttool oid-code`.
* The size of the OID codes written by `./tttool oid-code` is configurable.
* The png files written by `./tttool oid-code` and `./tttool oid-codes` store
their DPI value, so that importing them into DTP programs is likely to yield
the desired result.
* New command `tttool oid-table` that prints all OIDs of a given YAML file as
a nice and handy table in a PDF file
* The output of `./tttool games` is more detailed.
* Games are not exported by `tttool export` and assembled by `tttool
assemble`. This way, existing Tiptoi products can be modified without losing
them.
* The “other” play commands (FFE0, FFE1, FB00) are implemented in the parser,
printer and serializer, with syntax `P*(..)`, `PA*(..)` and `PA(..)`. These
are not interesting to you unless you want to understand existing Tiptoi
products.
* Support for the “timer” action (FF00) with syntax `T($register,123)`.
* `./tttool assemble` will print all errors due to missing audio files, not
just the first.
* Fix various crashes in corner cases, mostly involving games. Thanks to
@ToniMahagoni for reporting these!
## 1.5.1 (2015-11-11)
* Do not assign object IDs >= 15000, as these are not recognized.
## 1.5 (2015-10-28)
* New commands FB00 (alternative play range command), FFE0 (alternative
play random sample) and FFE1 (alternative play all samples)
* New pixel formats -d 1200d and -d 600d,w hich double the size of the
dots.
* Assign object IDs dependent on project IDs, to avoid overlap.
* Fix missing support in tttool play for > and <=
## 1.4 (2015-04-29)
* The `tttool play` command is greatly enhanced:
+ Audio samples are actually played (On linux, install `sox`).
+ You can use the name of your scripts instead of the OID codes.
+ The prompt supports a persistent history (press ↑).
+ You can tab-complete your input.
* `tttool` knows its own version.
* `tttool assemble` warns if the comment field is too long for the GME file.
## 1.3 (2015-03-18)
* The `tttool play` command now supports jump commands.
## 1.2 (2015-03-08)
* The `language` fields takes arbitrary strings, which will hopefully be
understood by the text-to-speak engine.
## 1.1 (2015-02-15)
* The yaml files support a `language` field, specifying the default language
for the text-to-speech feature.
* The `speak` section of the yaml file can have subsections with differing
languge settings, to allow multi-language files.
* The text-to-speech feature will use either pico2wave or espeak, depending on
what is available.
* The windows release zipfile now comes with espeak and oggenc, so Windows users
can use text-to-speech out of the box.
## 1.0 (2015-01-29)
* Last release without a changelog