release notes: Horizontal expansion; let's see if the center holds. :-/ thi README excerpt: SGF Utils is a set of programs for manipulating Smart Game Format files, principally for the game of Go. This release includes one tool: the viewing program sgfv. The code is "early to middling alpha"; see HACKING for why. NEWS excerpt: - 0.6 | 2012-11-20 - new programs The new programs described here are mostly to validate the build process, which takes pains to produce self-contained executables (that is, with component modules tsorted and inlined, removing the runtime need to find them on the filesystem and load them). Although balky at first sight, perhaps this practice can help (future) tools do whole-program analysis... fingers crossed. I must admit feeling irrational delight at the reduced number of open(2) and read(2) calls, when running under strace(1)... Anyway, both program behavior and construction method will likely change a lot before 1.0 release. Time will tell. - sgfc NB: PROVISIONARY AND TRIVIAL. This program reads the collections from each of the specified SGF files, displaying "FILENAME: OK" to stderr. The option ‘--sexp’ (short form ‘-x’), makes sgfc pretty-print the combined collections (of all files) to stdout after checking everything. The output has grammar: COLLECTION := (GAMETREE ...) GAMETREE := ((NODE ...) (SUB-GAMETREE...)) NODE := ((PROPERTY . VALUE) ...) PROPERTY is one of the properties list in src/ff-data.scm, the most important for SGF Utils being ‘FF’ and ‘GM’. The form of VALUE, if any, depends on its property. It may be a number, symbol, string, vector, boolean, or some compound type. Unfortunately, the presence of booleans renders this format unfriendly to Emacs Lisp. :-/ - sgfm NB: PROVISIONARY AND TRIVIAL. This program reads a collection in sexp format (from ‘sgfc -x’, for instance) and writes it to stdout in SGF format. - DT in src/sgf/eg.in no longer invalid Was "YYYY-MM-DD (today)", now "YYYY-MM-DD". There are other invalid bits remaining, however. (At some point we hope sgfc will be able to find and perhaps correct them.) - sgfv ‘C-h’ more performant This used to create some child processes to extract the list of keybindings from the "sgfv --help" output. Blech. - another test: t20 This tests sgfc very lightly, ignoring ‘INTERACTIVE=1’ entirely. BTW, the other test was renamed to t99. - tested with Guile 2.0.6 The configure script now checks for Guile 2.x-specific module ‘(ice-9 curried-definitions)’ and arranges for the "compiler" (har har) to DTRT. - bootstrap tools upgraded - guile-baux-tool (Guile-BAUX) 20121120.1242.e233fad - automake (GNU automake) 1.12.5 tarball, etc, in dir: http://www.gnuvola.org/software/sgf-utils/ atom feed: http://www.gnuvola.org/NEWS.xml.gz -- Thien-Thi Nguyen ..................................... GPG key: 4C807502 . NB: ttn at glug dot org is not me . . (and has not been since 2007 or so) . . ACCEPT NO SUBSTITUTES . ........... please send technical questions to mailing lists ...........