summaryrefslogtreecommitdiff
path: root/src/guile
AgeCommit message (Expand)Author
2006-10-16Lout engine: Honor `inline-definitions-proc'.•••* src/guile/skribilo/engine/lout.scm (document): Invoke the procedure defined by the `inline-definitions-proc' rather than directly invoking `lout-definitions'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-64 Ludovic Court`es
2006-10-12prog: Fixed line number output (`&prog-line').•••* src/guile/skribilo/engine/base.scm: Use `srfi-13'. (&prog-line): Use the `:number' markup option rather than the ident as the line number. * src/guile/skribilo/prog.scm: Use `%skribilo-module-reader'. (make-prog-body): Pass the line number as a `:number' markup option in the `&prog-line' markup. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-62 Ludovic Court`es
2006-10-11Lout engine: Honor `date-line' for slides.•••* src/guile/skribilo/engine/lout.scm (document): Honor `date-line' for `slides' (was only honored for `report'). git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-61 Ludovic Court`es
2006-10-11slide: Propagate the `outline?' parameter in `slide-(sub)?topic'.•••* src/guile/skribilo/package/slide.scm (slide-topic): Propagate the `outline?' parameter as an option. (slide-subtopic): Likewise. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-60 Ludovic Court`es
2006-09-04`base' package: Removed more sources of duplicate identifiers.•••* src/guile/skribilo/package/base.scm (~): Use `gensym' to produce unique identifiers. (ref)[unref]: Likewise. [handle-ref]: Likewise. [do-title-ref]: Likewise. [mark-ref]: Likewise. [make-bib-ref]: Likewise. [line-ref]: Likewise. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-59 Ludovic Courtes
2006-09-03Added error conditions in `ast.scm'.•••* src/guile/skribilo/ast.scm: Use `srfi-3[45]' and `condition' but not `lib'. (&ast-error): New. (&ast-orphan-error): New. (&ast-cycle-error): New. (&markup-unknown-option-error): New. (&markup-already-bound-error): New. (handle-ast-error): New. (markup-option): Use `raise' instead of `skribe-(type-)?error'. (markup-option-set!): Likewise. (markup-option-add!): Likewise. (markup-parent): Likewise. (document-bind-node!): Likewise. (find1-down): Likewise. * src/guile/skribilo/resolve.scm (&resolution-error): Removed. (&resolution-orphan-error): Removed. Moved as `&ast-orphan-error' in `ast.scm'. Updated users. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-58 Ludovic Courtes
2006-09-03Implemented per-document node identifiers.•••* src/guile/skribilo/ast.scm: Autoload `srfi-1' on `fold'. (*node-table*): Removed. (bind-markup!): Removed. (initialize<markup>): Removed. (find-markups): Removed. (write<markup>): Commented out debugging `format'. (<document>)[node-table]: New slot. [nodes-bound?]: New slot. (document-lookup-node): New. (document-bind-node!): New. (document-bind-nodes!): New. (ast-fold): New. (find-markup-ident): Removed. * src/guile/skribilo/output.scm (*document-being-output*): New. (out<document>): New. * src/guile/skribilo/resolve.scm (*document-being-resolved*): New. (resolve!): Invoke `document-bind-nodes!' before resolving the document. (do-resolve!<document>): Parameterize `*document-being-resolved*'. (resolve-ident): Use `document-lookup-node' instead of `find-markups'. * src/guile/skribilo/utils/compat.scm (bind-markup!): New. (find-markups): New. (find-markup-ident): New. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-57 Ludovic Courtes
2006-09-03Removed sources of non-unique node identifiers.•••* src/guile/skribilo/prog.scm (make-prog-body): Use `gensym' to create an identifier instead of `(int->str lnum cs)'. (make-line-mark): Take that identifier. * src/guile/skribilo/package/base.scm (mark): Use `gensym' to create an identifier rather than BS. (ref)[bib-ref]: Likewise. [url-ref]: Likewise. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-55 Ludovic Courtes
2006-08-31Updated the project URL. :-)•••* src/guile/skribilo/config.scm.in (skribilo-url): Now hosted at Savannah (nongnu.org)! git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-53 Ludovic Court`es
2006-08-24Added a GPL headers to those files that did not already have it.•••These are all files written by Manuel Serrano that I left (almost) untouched. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-47 Ludovic Court`es
2006-08-24slide: Added a `:class' argument to (sub)topics.•••* src/guile/skribilo/package/slide.scm (slide-topic): Added a `class' argument. Specified the required options. (slide-subtopic): Likewise. * src/guile/skribilo/package/slide/base.scm (make-topic-slide): Renamed to `make-outline-slide'. Pass `:class' with the topic's class to `slide'. (slide-topic): Added `:options'. (slide-subtopic): New writer. * src/guile/skribilo/package/slide/html.scm (slide-topic): Added `:options'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-45 Ludovic Court`es
2006-08-24slide: Implemented `slide-topic' and `slide-subtopic'.•••* src/guile/skribilo/package/slide.scm: Don't autoload `(skribilo engine html)'. Moved `when-engine-is-loaded' clauses to the bottom. Move base-engine writers to `slide/base.scm'. (slide-topic): New markup. (slide-subtopic): New markup. * src/guile/skribilo/package/slide/Makefile.am (dist_guilemodule_DATA): Added `base.scm'. * src/guile/skribilo/package/slide/html.scm (slide-topic): New writer. * src/guile/skribilo/package/slide/lout.scm: Added topic/subtopic-related customs. * src/guile/skribilo/package/slide/base.scm: New file. This list might be incomplete or outdated if editing the log message was not invoked from an up-to-date changes buffer! git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-43 Ludovic Court`es
2006-08-02Fixed autoloading issue in `(skribilo biblio)'.•••* src/guile/skribilo/biblio.scm: Autoload `(skribilo ast)' on `is-markup?' as well (used by `resolve-bib'). git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-42 Ludovic Court`es
2006-07-31Base package: use `type-name' instead of `find-runtime-type'.•••* src/guile/skribilo/package/base.scm (parse-list-of): Use `type-name' instead of `find-runtime-type'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-41 Ludovic Courtes
2006-07-31Moved the `sui' module; removed the `skribe' subdirectory.•••* configure.ac: Don't produce `src/guile/skribilo/skribe/Makefile'. * src/guile/skribilo/Makefile.am (SUBDIRS): Removed `skribe'. * src/guile/skribilo/sui.scm: No longer use `define-skribe-module'. Rewrote the use the native hash-table API, `(ice-9 match)', and `format' instead of `fprint'. * src/guile/skribilo.scm (doskribe): Use `*skribilo-user-module*'. * src/guile/skribilo/evaluator.scm: Autoload `(skribilo module)'. (%evaluate): Evaluate EXPR in `*skribilo-user-module*'. * src/guile/skribilo/module.scm (%skribilo-user-autoloads): Added `(skribilo sui)'. (%skribe-core-modules): Removed. (define-skribe-module): Don't refer to it. (make-run-time-module): Use `the-root-module'. Properly build it using `make-autoload-interface' and `module-use-interfaces!' so that duplicates are correctly handled. (*skribilo-user-module*): New parameter. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-40 Ludovic Court`es
2006-07-31Removed `(skribilo skribe param)' (was useless).•••* src/guile/skribilo/skribe/Makefile.am (dist_guilemodule_DATA): Removed `param.scm'. * src/guile/skribilo/module.scm (%skribe-core-modules): Removed "param". git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-39 Ludovic Court`es
2006-07-31HTML: Repeat document keywords in each file.•••* src/guile/skribilo/engine/html.scm (&html-generic-document): Lookup the `:keywords' option in `(ast-document n)' rather than `n'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-38 Ludovic Court`es
2006-07-31Fixed autoloading in `(skribilo package base)'.•••* src/guile/skribilo/package/base.scm: Added `bib-load!' and `bib-add!' to the list of symbols that trigger autoloading of `biblio'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-37 Ludovic Court`es
2006-07-31Made the HTML class naming more consistent.•••* src/guile/skribilo/engine/html.scm: Made the default HTML class naming more consistent. Replaced the `skribe-' prefix by `skribilo-'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-36 Ludovic Court`es
2006-07-30Introduced `type-name' as a replacement for `find-runtime-type'.•••* src/guile/skribilo/lib.scm (type-name): New (formerly `find-runtime-type'). * src/guile/skribilo/utils/compat.scm (find-runtime-type): New. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-35 Ludovic Courtes
2006-07-28Fixed `ref' for references by title (`:chapter', `:section', etc.).•••* src/guile/skribilo/package/base.scm (ref)[doref]: Renamed to `do-ident-ref'. [do-title-ref]: New. Originally, default identifiers for chapters, sections, etc. in Skribe were the `:title' option passed through `ast->string'. However, now (it's been a while actually), default identifiers for chapters, etc., are random (returned by `gensym') so the assumption that default identifiers are title no longer holds. Hence the distinction between `do-ident-ref' and `do-title-ref'. * do/user/links.skb (ref): Clarified the doc of `:chapter' et al. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-34 Ludovic Court`es
2006-07-28Moved `(skribilo skribe index)' to `(skribilo index)'.•••* src/guile/skribilo/index.scm: No longer use `define-skribe-module'. Use the native hash-table functions instead of the one from `compat'. (*index-table*): Made an SRFI-39 parameter. * src/guile/skribilo/module.scm (%skribilo-user-autoloads): Added `(skribilo index)'. (%skribe-core-modules): Removed `index'. * src/guile/skribilo/package/base.scm: Use `(skribilo index)' instead of `(skribilo skribe index)'. * src/guile/skribilo/skribe/Makefile.am (dist_guilemodule_DATA): Removed `index.scm'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-33 Ludovic Court`es
2006-07-28Moved `skribe/api.scm' to `(skribilo package base)'.•••* doc/skr/api.skr (doc-markup): Updated default value of SOURCE. * doc/user/bib.skb (bib-sort/authors): Change value of SOURCE (should have been done earlier!). * doc/user/sectioning.skb (p): Likewise. * src/guile/skribilo/evaluator.scm (%evaluate): Updated comment. * src/guile/skribilo/module.scm (%skribilo-user-imports): Added `(skribilo package base)'. (%skribe-core-modules): Removed `api'. * src/guile/skribilo/package/Makefile.am (dist_guilemodule_DATA): Added `base.scm'. * src/guile/skribilo/package/base.scm: No longer use `define-skribe-module'. Use an appropriate `define-module' instead. Fixed uses of `gensym' so that they pass a string instead of a symbol or nothing. Similarly, use Guile's native hash table API instead of the one in `compat'. (include): Use `include-document' instead of `skribe-include'. * src/guile/skribilo/package/eq.scm: Use `package base' instead of `skribe api'. * src/guile/skribilo/package/pie.scm: Likewise. * src/guile/skribilo/skribe/Makefile.am (dist_guilemodule_DATA): Removed `api.scm'. * src/guile/skribilo/utils/compat.scm (date): Export it. (correct-arity?): New. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-32 Ludovic Court`es
2006-07-24pie: Fixed the Lout engine.•••* src/guile/skribilo/engine/lout.scm (lout-color-specification): Export it. * src/guile/skribilo/package/pie.scm: Also autoload `ast' on `ast-parent'. * src/guile/skribilo/package/pie/lout.scm: Autoload `(skribilo engine lout)' on `lout-color-specification'. (pie): Use `format' instead of `printf'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-31 Ludovic Court`es
2006-07-24Lout engine: Fixed handling of `:keywords' for `document'.•••* src/guile/skribilo/engine/lout.scm (lout-pdf-docinfo): Check whether the `:keywords' is `#f' and use an empty list if so. * src/guile/skribilo/engine/html.scm (&html-generic-document): Don't fill `options' for HEAD. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-30 Ludovic Court`es
2006-07-24Updated the FSF address.•••From "59 Temple Place - Suite 330, Boston, MA 02111-1307" to "51 Franklin Street, Fifth Floor, Boston, MA 02110-1301". Magic command line: find . -type f -print0 | xargs -0 sed -i -e 's/51 Franklin Street, Fifth Floor/51 Franklin Street, Fifth Floor/;s/02110-1301/02110-1301/; git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-29 Ludovic Court`es
2006-07-24Reverted patch-22 (was wrong).•••git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-27 Ludovic Court`es
2006-07-24Detect Ploticus at configuration-time and decide how to build the doc.•••* configure.ac: Look for `ploticus' or `pl'. Create an AM conditional. * doc/user/Makefile.am (BUILT_SOURCES): Set to `doc-config.scm'. (html_DATA): New, set to `user.html'. (ps_DATA): Likewise. (doc-config.scm): New target. * doc/user/user.skb: Load `doc-config.scm' and update `%ploticus-program' accordingly. Decide whether or not to include `pie.skb'. * src/guile/skribilo/package/pie.scm: Export `%ploticus-program' and `%ploticus-debug?'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-26 Ludovic Court`es
2006-07-24Updated Automake/Autoconf files for the `pie' package.•••git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-25 Ludovic Court`es
2006-07-23Added a pie-chart package that can use either Ploticus or Lout.•••* doc/user/user.skb: Use the `pie' package and include `pie.skb'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-24 Ludovic Courtes
2006-07-23Improved error reporting of the Skribilo module reader.•••* src/guile/skribilo/utils/syntax.scm (%skribilo-module-reader): Improved error reporting by showing the location of the unexpected character. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-23 Ludovic Courtes
2006-07-23Fixed `engine-add-writer!' so that the insertion order is kept.•••* src/guile/skribilo/engine.scm (engine-add-writer!): Use `append' instead of `cons' when adding a writer, so that the insertion order is honored when lookups are performed. This fixes a generation bug (e.g., for the first page of the User Manual) and slightly improves performance. * src/guile/skribilo/writer.scm (lookup-markup-writer): Documented the impact of registration order. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-22 Ludovic Courtes
2006-07-21Made the HTML engine and `web-book' more style-neutral.•••* src/guile/skribilo/engine/html.scm: Switched all color- and font-related customs to `#f' by default. Adapted a few writers so that they can properly handle this. * src/guile/skribilo/package/web-book.scm: Be careful when using `color' et al. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-21 Ludovic Court`es
2006-07-21Added support for the `:keywords' option of `document' (Lout + HTML).•••* NEWS: Mention it. * doc/user/document.skb: Document it. * doc/user/user.skb (document): Added keywords. Slightly modified the introduction. * src/guile/skribilo/engine/html.scm (document): Added `:keywords' to the list of supported options. (&html-head): Reformatted. (&html-meta): New. (&html-generic-document): Use it. * src/guile/skribilo/engine/lout.scm: Document `pdf-keywords' as deprecated. (lout-pdf-docinfo): Check the `:keywords' option. (document): Mention it as supported. * src/guile/skribilo/skribe/api.scm (document): Added the `keywords' option. (keyword-list->comma-separated): New (stolen from Lout). git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-20 Ludovic Court`es
2006-07-20biblio abbrev: Added a few more abbreviations.•••* src/guile/skribilo/biblio/abbrev.scm (%cs-conference-abbreviations): Fixed "MSS". Added "NSDI". (%ordinal-number-abbreviations): Added up to 19. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-19 Ludovic Court`es
2006-07-20Renamed `(skribilo runtime)' to `(skribilo utils strings)'.•••... and updated users. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-18 Ludovic Court`es
2006-07-20Removed the `(skribilo skribe utils)' module.•••* src/guile/skribilo/ast.scm (find-markup-ident): New, copied from `(skribilo skribe utils)'. (container-search-down): Likewise. (search-down): Likewise. (find-down): Likewise. (find1-down): Likewise. (find1-up): Likewise. (ast-document): Likewise. (ast-chapter): Likewise. (ast-section): Likewise. * src/guile/skribilo/engine.scm (engine-custom-add!): Likewise. * src/guile/skribilo/module.scm (%skribilo-user-imports): Added `(skribilo utils keywords)'. (%skribe-core-modules): Removed `utils'. * src/guile/skribilo/package/eq.scm: Use `utils keywords' instead of `skribe utils'. * src/guile/skribilo/package/eq/lout.scm: Likewise. * src/guile/skribilo/skribe/Makefile.am (dist_guilemodule_DATA): Removed `utils.scm'. * src/guile/skribilo/utils/Makefile.am (dist_guilemodule_DATA): Added `keywords.scm'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-17 Ludovic Court`es
2006-07-20Removed unused code in `(skribilo lib)'.•••* src/guile/skribilo/lib.scm (key-get): Removed. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-16 Ludovic Court`es
2006-07-19Turned `with-debug' into a more self-sufficient macro.•••* src/guile/skribilo/debug.scm (%with-debug): Replaced by `%do-with-debug'. (with-debug): Made into a macro. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-15 Ludovic Court`es
2006-07-19Fixed abbreviations and author names handling.•••* src/guile/skribilo/biblio/abbrev.scm: Fixed module dependencies. (abbreviate-markup): New. Use `markup-body-set!' if needed. (%cs-conference-abbreviations): New. (%ordinal-number-abbreviations): New. (%common-booktitle-abbreviations): New. * src/guile/skribilo/biblio/author.scm: Fixed module dependencies. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-14 Ludovic Court`es
2006-07-19Implemented `markup-body-set!'.•••* src/guile/skribilo/ast.scm (markup-body-set!): New. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-13 Ludovic Court`es
2006-07-19Merged the two bibliography modules.•••* src/guile/skribilo/biblio.scm: Use `srfi-1', `ast', `goops'; don't use `module' and `skribe bib'. Merged the `(skribilo skribe bib)'. * src/guile/skribilo/module.scm (%skribe-core-modules): Removed `bib'. * src/guile/skribilo/skribe/Makefile.am (dist_guilemodule_DATA): Removed `bib.scm'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-12 Ludovic Court`es
2006-07-19compat: Optimized `hashtable->list'.•••* src/guile/skribilo/utils/compat.scm (hashtable->list): Optimized a bit. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-11 Ludovic Court`es
2006-07-14Fixed the handling of `:' by the Skribe reader.•••* src/guile/skribilo/reader/skribe.scm (make-colon-free-token-reader): New. (%make-skribe-reader): Make sure `:' is handled only by the keyword reader. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-10 Ludovic Courtes
2006-07-13Made `parse-list-of' tail-recursive.•••* src/guile/skribilo/skribe/api.scm (parse-list-of): Made tail-recursive, thereby fixing potential stack overflows (e.g., when building the user manual) and perhaps slightly improving performance. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-9 Ludovic Courtes
2006-07-13Use `setvbuf' on the Skribilo output port.•••* src/guile/skribilo.scm (skribilo): Call `setvbuf'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-8 Ludovic Courtes
2006-07-12Fixed autoloading of `verify', plus tiny cosmetic change.•••* src/guile/skribilo/engine.scm: Don't print the base engine at load-time. * src/guile/skribilo/verify.scm: Autoload `(skribilo engine)' on `processor-get-engine' as well. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-7 Ludovic Court`es
2006-07-12Noticeable performance improvements (notably in `debug').•••* src/guile/skribilo/biblio.scm: Don't use `(ice-9 format)': it is unneeded and very slow compared to `simple-format'. * src/guile/skribilo/debug.scm: Export `debug-item' and `with-debug' as macros. (debug-item): Turned into a macro rather than a procedure. Also, don't take `*margin-level*' into account when deciding whether to do something: only look at `*debug-item?*'. (%do-debug-item): New. (%with-debug): Invoke `parameterize' only in the debugging case. This noticeably improves performance. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-6 Ludovic Court`es
2006-07-11Use SRFI-35 error conditions in `resolve.scm' rather than the `error' procedu...•••* src/guile/skribilo/resolve.scm: Don't use `(skribilo runtime)' (unneeded). Use `conditions' and SRFI-3[45]. (&resolution-error): New. (&resolution-orphan-error): New. (handle-resolution-error): New. Register it. (do-resolve!): Raise an invalid-arg condition instead of invoking `error'. (resolve-counter): Raise a `&resolution-orphan-error' condition instead of invoking `skribe-error'. (resolve-ident): Raise an invalid-arg condition rather than invoking `skribe-type-error'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-5 Ludovic Court`es
2006-07-11By default, use (internally) a reader that does not record positions.•••* src/guile/skribilo/utils/syntax.scm (%skribilo-module-reader): If debugging is not required (default), create a reader that does not record positions. * src/skribilo.in: Don't pass `--debug' by default. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-4 Ludovic Court`es