summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2006-07-13Made `parse-list-of' tail-recursive.Ludovic Courtes
* 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
2006-07-13Use `setvbuf' on the Skribilo output port.Ludovic Courtes
* src/guile/skribilo.scm (skribilo): Call `setvbuf'. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-8
2006-07-12Fixed autoloading of `verify', plus tiny cosmetic change.Ludovic Court`es
* 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
2006-07-12Noticeable performance improvements (notably in `debug').Ludovic Court`es
* 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
2006-07-11Use SRFI-35 error conditions in `resolve.scm' rather than the `error' ↵Ludovic Court`es
procedures. * 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
2006-07-11By default, use (internally) a reader that does not record positions.Ludovic Court`es
* 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
2006-07-07Tiny configure fix: make `src/skribilo' executable.Ludovic Court`es
* configure.ac (AC_CONFIG_COMMANDS): New. Make `src/skribilo' executable. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-3
2006-07-03outline: Fixed the regexps of the inline markup for `tt' and `q'.Ludovic Court`es
* src/guile/skribilo/reader/outline.scm (%inline-markup): Fixed the regexps for `tt' and `q' so that these markups can occur multiple times per line. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-2
2006-06-07eq: Handle operator precedence when parenthesizing.Ludovic Court`es
* src/guile/skribilo/package/eq.scm (equation-markup-name?): New. (equation-markup?): Use it. (equation-markup-name->operator): New. (%operator-precedence): New. (operator-precedence): New. * src/guile/skribilo/package/eq/lout.scm (simple-markup-writer): Take operator precedence into account. git-archimport-id: lcourtes@laas.fr--2005-libre/skribilo--devo--1.2--patch-1
2006-06-06Sealing and moving to `lcourtes@laas.fr--2005-libre/skribilo--devo--1.2'.lcourtes@laas.fr--2004-libre,skribilo--devel--1.2Ludovic Court`es
git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--version-0
2006-06-06Fixed exception handling in `output.scm'.Ludovic Court`es
* src/guile/skribilo/output.scm (&output-error): New. (&output-unresolved-error): New. (&output-writer-error): New. (handle-output-error): New. Raise the relevant error condition rather than use `skribe-error'. Don't use `(skribilo lib)' (no longer needed). git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-87
2006-06-06Generalized the error condition handling framework.Ludovic Court`es
* src/guile/skribilo/condition.scm (&too-few-arguments-error): New. (%external-error-condition-alist): New. (register-error-condition-handler!): New. (lookup-error-condition-handler): New. (%call-with-skribilo-error-catch): Handle `too-few-arguments-error?'. Use `lookup-error-condition-handler' when unhandled exceptions are caught. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-86
2006-06-06Cleaned up the `write' method for `markup' and `unresolved' objects.Ludovic Court`es
* src/guile/skribilo/ast.scm (write): New method. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-85
2006-06-06Added `bib-map'.Ludovic Court`es
* src/guile/skribilo/biblio.scm (bib-map): New. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-84
2006-05-10Added biblio helpers (abbrev, author, BibTeX) taken from my `biblib.skr'.Ludovic Court`es
git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-83
2006-05-10Added `bib-for-each'. Fixed binding issues in the evaluator and compat.Ludovic Court`es
* src/guile/skribilo/biblio.scm (bib-for-each): New. * src/guile/skribilo/evaluator.scm: Autoload `engine' also when `*current-engine*' is met. * src/guile/skribilo/utils/compat.scm (skribe-read): Export it. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-82
2006-05-09eq: Fixed the rendering of `*' in the Lout implementation.Ludovic Court`es
* src/guile/skribilo/package/eq/lout.scm (*): Use `times' when issuing a `*' sign. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-81
2006-05-09Added `markup-option-set!'.Ludovic Court`es
* src/guile/skribilo/ast.scm (markup-option-set!): New. * src/guile/skribilo/engine/lout.scm (markup-option-set!): Removed. (lout-start-large-scale-structure): Don't invoke `markup-option-set!' on markups that are not a large-scale structure. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-80
2006-04-14eq: Added the `inline?' keyword; fixed the Lout engine.Ludovic Court`es
* src/guile/skribilo/package/eq.scm (eq): Added the `inline?' keyword. * src/guile/skribilo/package/eq/lout.scm (eq): Support it. (simple-lout-markup-writer): Added a parameter specifying whether parentheses are needed. Fixed `-' with that respect. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-79
2006-04-08Merge from lcourtes@laas.fr--2004-libreLudovic Courtes
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 73-78) - Merge from lcourtes@laas.fr--2005-mobile - Moved `convert-image' et al. to `utils/images.scm'. - Image- and compat-related fixes. - Lout engine: small fixes. - Various documentation fixes + completed the doc automake stuff. - Small aesthetic changes in the Lout engine. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-51
2006-04-06Small aesthetic changes in the Lout engine.Ludovic Court`es
* src/guile/skribilo/engine/lout.scm (lout-make-doc-cover-sheet): Added an appropriate `@Break' setting for the title. (lout-engine)[:symbol-table]: Don't produce additional space around `@Eq'. * src/guile/skribilo/package/eq/lout.scm (eq): Don't produce additional space around `@Eq'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-78
2006-03-19Various documentation fixes + completed the doc automake stuff.Ludovic Courtes
* doc/user/Makefile.am (%.html): Added `-P ../img'. (%.lout): Likewise. (SUBDIRS): New. * doc/user/char.skb (Some characters): Use the Lout-specific example for `!' when relevant. * doc/user/figure.skb (The figure markup): Avoid using `example-produce'. * doc/user/slide.skb (dummy-slide-set-output): New. (dummy-slide-output): New. (dummy-slide-vspace-output): New. (dummy-slide-embed-output): New. (Example of Skribilo Slides): Use a processor, as in `document.skb', in order to use the dummy output functions. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-77
2006-03-19Lout engine: small fixes.Ludovic Courtes
* src/guile/skribilo/engine/lout.scm (figure): For `@BypassNumber', make sure NUMBER is not `#f'. * src/guile/skribilo/package/slide/lout.scm: Don't switch automatically DOCUMENT-TYPE to `slides'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-76
2006-03-19Image- and compat-related fixes.Ludovic Courtes
* src/guile/skribilo/utils/images.scm: Autoload `parameters' on `*verbose*' too. * src/guile/skribilo/lib.scm (skribe-read): Moved to... * src/guile/skribilo/utils/compat.scm: ... here. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-75
2006-03-19Moved `convert-image' et al. to `utils/images.scm'.Ludovic Courtes
* src/guile/skribilo/runtime.scm: Moved image-related code to... * src/guile/skribilo/utils/images.scm: ... here (new file). * src/guile/skribilo/utils/Makefile.am (dist_guilemodule_DATA): Updated. * src/guile/skribilo/module.scm (%skribilo-user-autoloads): Added `(skribilo utils images)'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-74
2006-03-19Merge from lcourtes@laas.fr--2005-mobileLudovic Courtes
Patches applied: * lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2 (patch 45-46) - Merge from lcourtes@laas.fr--2004-libre - Lout engine: better handling of the `slides' document type. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-73
2006-03-19Various documentation fixes + completed the doc automake stuff.Ludovic Courtes
* doc/user/Makefile.am (%.html): Added `-P ../img'. (%.lout): Likewise. (SUBDIRS): New. * doc/user/char.skb (Some characters): Use the Lout-specific example for `!' when relevant. * doc/user/figure.skb (The figure markup): Avoid using `example-produce'. * doc/user/slide.skb (dummy-slide-set-output): New. (dummy-slide-output): New. (dummy-slide-vspace-output): New. (dummy-slide-embed-output): New. (Example of Skribilo Slides): Use a processor, as in `document.skb', in order to use the dummy output functions. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-50
2006-03-19Lout engine: small fixes.Ludovic Courtes
* src/guile/skribilo/engine/lout.scm (figure): For `@BypassNumber', make sure NUMBER is not `#f'. * src/guile/skribilo/package/slide/lout.scm: Don't switch automatically DOCUMENT-TYPE to `slides'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-49
2006-03-19Image- and compat-related fixes.Ludovic Courtes
* src/guile/skribilo/utils/images.scm: Autoload `parameters' on `*verbose*' too. * src/guile/skribilo/lib.scm (skribe-read): Moved to... * src/guile/skribilo/utils/compat.scm: ... here. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-48
2006-03-18Moved `convert-image' et al. to `utils/images.scm'.Ludovic Courtes
* src/guile/skribilo/runtime.scm: Moved image-related code to... * src/guile/skribilo/utils/images.scm: ... here (new file). * src/guile/skribilo/utils/Makefile.am (dist_guilemodule_DATA): Updated. * src/guile/skribilo/module.scm (%skribilo-user-autoloads): Added `(skribilo utils images)'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-47
2006-03-18Lout engine: better handling of the `slides' document type.Ludovic Courtes
* src/guile/skribilo/engine/lout.scm (lout-slides-markup-alist): New. (lout-structure-markup): Handle `slides'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-46
2006-03-18Merge from lcourtes@laas.fr--2004-libreLudovic Courtes
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 70-72) - Merge from lcourtes@laas.fr--2005-mobile - Slight optimization: allow for non-proc predicates for markup writers. - Partial rewrite of the debugging facilities (slightly slower). git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-45
2006-03-07Partial rewrite of the debugging facilities (slightly slower).Ludovic Courtes
Patches applied: * skribilo--devel--1.2 (patch 44) - Partial rewrite of the debugging facilities (slightly slower). git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-72
2006-03-07Slight optimization: allow for non-proc predicates for markup writers.Ludovic Courtes
Patches applied: * skribilo--devel--1.2 (patch 43) - Slight optimization: allow for non-proc predicated for markup writers. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-71
2006-03-07Merge from lcourtes@laas.fr--2005-mobileLudovic Courtes
Patches applied: * lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2 (patch 38-42) - Merge from lcourtes@laas.fr--2004-libre - Significantly optimized lookup of markup writers. - Fixed `copy-engine' with respect to the writers optimization. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-70
2006-03-07Partial rewrite of the debugging facilities (slightly slower).Ludovic Courtes
* src/guile/skribilo.scm (skribilo): Use the new debugging API. * src/guile/skribilo/debug.scm: Use SRFI-39 parameter objects. Moved legacy procedures to `compat.scm'. * src/guile/skribilo/utils/compat.scm (set-skribe-debug!): New. (no-debug-color): New. (skribe-debug): New. (add-skribe-debug-symbol): New. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-44
2006-03-07Slight optimization: allow for non-proc predicated for markup writers.Ludovic Courtes
* src/guile/skribilo/engine.scm (engine-add-writer!): Allow PRED to be `#f'. * src/guile/skribilo/writer.scm (make-writer-predicate): Likewise. (lookup-markup-writer)[matching-writer]: Likewise. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-43
2006-03-07Merge from lcourtes@laas.fr--2004-libreLudovic Courtes
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 67-69) - Doc: undoed `patch-65'. - Removed the global engine table. - Inventory fix. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-42
2006-03-07Fixed `copy-engine' with respect to the writers optimization.Ludovic Courtes
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 66) - Fixed `copy-engine' with respect to the writers optimization. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-41
2006-03-07Merge from lcourtes@laas.fr--2004-libreLudovic Courtes
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 64-65) - Fixed tiny module loading/autoloading mistakes. - Doc: commented out code that uses processors to work around bug. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-40
2006-03-07Significantly optimized lookup of markup writers.Ludovic Courtes
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 63) - Significantly optimized lookup of markup writers. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-39
2006-03-07Merge from lcourtes@laas.fr--2004-libreLudovic Courtes
Patches applied: * lcourtes@laas.fr--2004-libre/skribilo--devel--1.2 (patch 60-62) - Slightly optimized the resolution process (added `ast-resolved?'). - Various fixes in the documentation code. - Lout engine: use `push-default-engine' and `pop-default-engine'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-38
2006-03-02Inventory fix.Ludovic Court`es
* doc/user/.arch-inventory (precious): More HTML files. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-69
2006-03-02Removed the global engine table.Ludovic Court`es
* src/guile/skribilo/engine.scm (*engines*): Removed. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-68
2006-03-02Doc: undoed `patch-65'.Ludovic Court`es
* doc/user/markup.skb: Undoed `patch-65'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-67
2006-03-02Fixed `copy-engine' with respect to the writers optimization.Ludovic Court`es
* src/guile/skribilo/engine.scm (copy-engine): Fixed so that the `writers' hash table is actually copied. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-66
2006-03-01Doc: commented out code that uses processors to work around bug.Ludovic Court`es
* doc/user/markup.skb: Commented out inclusion of `document.skb' and `sectioning.skb'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-65
2006-03-01Fixed tiny module loading/autoloading mistakes.Ludovic Court`es
* src/guile/skribilo/module.scm (%skribilo-user-imports): Added `(skribilo location)'. * src/guile/skribilo/output.scm: Fixed autoloading of `(skribilo engine)'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-64
2006-03-01Significantly optimized lookup of markup writers.Ludovic Court`es
* src/guile/skribilo/engine.scm (<engine>)[writers]: Became a hash table (instead of a list). [free-writers]: New. (engine-add-writer!): Changed accordingly. * src/guile/skribilo/writer.scm (write-object): Renamed to `write'. (lookup-markup-writer): Rewritten according to the above changes. (markup-writer-get): Likewise. (markup-writer-get*): Likewise. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-63
2006-03-01Lout engine: use `push-default-engine' and `pop-default-engine'.Ludovic Court`es
* src/guile/skribilo/engine/lout.scm: Once `lout-engine' is defined, invoke `push-default-engine'. Invoke `pop-default-engine' at the end. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-62