summaryrefslogtreecommitdiff
path: root/src/guile
AgeCommit message (Collapse)Author
2012-05-22build: Fix `.in.scm' rule for out-of-tree builds.Ludovic Courtès
* src/guile/Makefile.am: Switch to GPLv3+. (.in.scm): Mkdir the dirname of $@.
2012-05-18html: Set the output encoding for secondary output files as well.Ludovic Courtès
* src/guile/skribilo/engine/html.scm (document)[guile-2]: Move `set-port-encoding!' code to... (&html-generic-document): ... here, in `set-output-encoding' nested procedure. Call `set-output-encoding' in both the `document?' case and other cases.
2012-05-17Change `define-markup' to generate a macro, to capture location syntactically.Ludovic Courtès
* src/guile/skribilo/lib.scm (dsssl->guile-formals): New procedure, formerly `fix-rest-arg' procedure in `define-markup'. (define-markup)[guile-2]: Turn into a macro-generating macro, such that markups capture their invocation location syntactically. * src/guile/skribilo/location.scm (source-properties->location): New procedure. (invocation-location): Use it. * src/guile/skribilo/package/base.scm (handle): Move above first use, since it's now a macro on Guile 2.0. * src/guile/skribilo/package/slide.scm (slide-vspace): Likewise. * src/guile/skribilo/package/eq.scm: Use (skribilo package base) instead of autoloading it. * tests/Makefile.am (TESTS): Add `location.test'. * tests/location.test: New file.
2012-05-17Switch to GPLv3+.Ludovic Courtès
2012-05-14lout: Avoid passing non-literal strings to `format'.Ludovic Courtès
* src/guile/skribilo/engine/lout.scm (lout-debug): `string-append' to FMT at compile-time. Use `display' instead of `format' when literal strings are passed.
2012-05-14Mention "Guile 2.0" instead of "Guile-VM".Ludovic Courtès
* configure.ac: Remove `--enable-guile-vm' option. Check for `guild' and `guile-tools', defining `GUILD'. Rename `ENABLE_GUILE_VM' to `HAVE_GUILE2'. * guile-vm.am: Rename to... * guilec.am: ... this. * doc/modules/Makefile.am, src/guile/Makefile.am: Update accordingly.
2012-05-14info: Produce a menu consistent with the document structure.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (node-menu): Use `node-children' instead of `markup-body'. Output any node that matches `%block?', not just chapters and sections.
2012-05-14info: Rename `node-next+prev+top' to `node-next+prev+up'.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (node-next+prev+top): Rename to... (node-next+prev+up): ... this. Update callers. * tests/engines/info.test (node-next+prev+up): Update accordingly.
2012-05-14info: Fix prev/next pointers.Ludovic Courtès
* src/guile/skribilo/ast.scm (ast-fold): Explicitly document as depth-first. * src/guile/skribilo/engine/info.scm (info-node): Support PREV and NEXT as false. (node-next+prev+top): Rewrite using `match' and `node-children'. * tests/Makefile.am (TESTS): Add `engines/info.test'. * tests/engines/info.test: New file.
2012-05-14ast: Add `node-children'.Ludovic Courtès
* src/guile/skribilo/ast.scm (node-children): New procedure. * tests/ast.test ("node-children"): New test.
2012-05-13SRFI-64: Write log files as UTF-8; display a backtrace upon error.Ludovic Courtès
Changed copied from libchop v0.5.2-25-g657b029. * src/guile/srfi/srfi-64.upstream.scm (test-on-group-begin-simple)[guile-2]: Set %default-port-encoding to "UTF-8". (%test-evaluate-with-catch): Call `display-backtrace' upon error.
2012-05-12info: Produce a `makeinfo'-conforming document title.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (scribe-document->info)[info-title]: Produce a `makeinfo'-conforming title, which gets pretty-printed in Emacs.
2012-05-12info: Remove unused variables.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (document, section, subsection, subsubsection, chapter): Remove unused variables.
2012-05-12Internationalize (skribilo).Ludovic Courtès
* src/guile/skribilo.scm (skribilo-show-help): Gettextize. * po/POTFILES.in: Add `src/guile/skribilo.scm'.
2012-05-10info/latex/lout: Set the output port's encoding.Ludovic Courtès
* src/guile/skribilo/engine/html.scm (document): Fix typo in comment. * src/guile/skribilo/engine/info.scm (document)[guile-2]: Set the current output port's encoding to "UTF-8". * src/guile/skribilo/engine/latex.scm (latex-engine)[encoding]: New custom. (document): Set the output port's encoding to that. When that encoding is "UTF-8", add the right \usepackage. * src/guile/skribilo/engine/lout.scm (lout-engine)[encoding]: New custom. (document): Set the output encoding. Emit `@SysInclude { latin2 }' for ISO-8859-2.
2012-05-05Fix Guile 1.8 version of `default-to-utf-8'.Ludovic Courtès
* src/guile/skribilo/utils/syntax.scm (default-to-utf-8)[!guile-2]: Expand the body. Reported by Roger Mason <rmason@esd.mun.ca>.
2012-04-25evaluator: Don't use `debug-options' on Guile 2.Ludovic Courtès
* src/guile/skribilo/evaluator.scm (%evaluate): Add a `guile-2' version that doesn't use `debug-options'.
2012-04-25Avoid deprecated features on Guile 2.Ludovic Courtès
* src/guile/skribilo/writer.scm (%procedure-arity): Use `procedure-minimum-arity' on Guile 2. * src/guile/srfi/srfi-64.upstream.scm: Use (ice-9 syncase) only when not on Guile 2. * tests/readers/rss-2.test (guile-2): Likewise.
2012-04-25lout: Fix support of `(font :size #f)'.Ludovic Courtès
* src/guile/skribilo/engine/lout.scm (font): Output a single brace when `:size' is #f.
2012-04-25Use hygienic macros for (skribilo debug) on Guile 2.x.Ludovic Courtès
* src/guile/skribilo/debug.scm (%do-debug-item, %do-with-debug): Export only on Guile 1.8. (debug-item, with-debug): Add a hygienic implementation for Guile 2.x.
2012-04-25Have `%skribilo-module-reader' record positions by default on Guile 2.Ludovic Courtès
* src/guile/skribilo/utils/syntax.scm (%skribilo-module-reader): On Guile 2.x, always pass '(reader/record-positions).
2012-04-25Don't define `when' and `unless' on Guile 2.0.Ludovic Courtès
* src/guile/skribilo/utils/syntax.scm (unless, when): Define only when (not guile-2).
2012-04-25Make sure `skribilo/utils/images.scm' is rebuilt after `make clean'.Ludovic Courtès
* configure.ac: Don't output `src/guile/skribilo/utils/images.scm'. * src/guile/Makefile.am (EXTRA_DIST): Change `images.scm.in' to `images.in'. (BUILT_SOURCES): Add `skribilo/utils/images.scm'. * src/guile/skribilo/utils/images.scm.in: Rename to... * src/guile/skribilo/utils/images.in: ... this. * substitute.am: Substitute `FIG2DEV' and `CONVERT'.
2012-04-25Remove support for `guile-lint'.Ludovic Courtès
* guile-lint.am: Remove. * Makefile.am (EXTRA_DIST): Remove `guile-lint.am'. * doc/modules/Makefile.am (lintable): Remove. Remove inclusion of `guile-lint.am'. * src/guile/Makefile.am: Likewise. * configure.ac: Remove check for `guile-lint' and `HAVE_GUILE_LINT' conditional.
2012-04-25Don't try to build `.go' files with Guile < 2.0.Ludovic Courtès
* src/guile/Makefile.am (nobase_nodist_module_DATA): Add `skribilo/config.go' and `skribilo/utils/images.go' only when ENABLE_GUILE_VM. Reported by Roger Mason <rmason@mun.ca>.
2012-02-08Work around Guile 2.0.5 compiler bug.Ludovic Courtès
* src/guile/skribilo/sui.scm (sui-referenced-file): Work around compiler bug in Guile 2.0.5 <http://bugs.gnu.org/10756>.
2011-09-15rss-2: Work around an obscure match bug (?).Ludovic Courtès
* src/guile/skribilo/reader/rss-2.scm (shtml->skribe): Change the order of the two tr/th/td/tc patterns; otherwise we'd get a match error, leading to a test failure in `rss-2.test'. Problem could not be reproduced outside of this context.
2011-03-10Set `%default-port-encoding' to "UTF-8".Ludovic Courtès
* src/guile/skribilo/utils/syntax.scm (default-to-utf-8): New macro. * src/guile/skribilo.scm (skribilo): Use it around `(doskribe)'.
2011-01-07html: Don't emit newlines when they can be significant.Ludovic Courtès
* src/guile/skribilo/engine/html.scm (chapter, html-section-title itemize, enumerate, figure): Remove extra significant space after `</a>'.
2011-01-07html: Set the output port encoding to match the `charset' custom.Ludovic Courtès
* src/guile/skribilo/engine/html.scm (document)[guile-2]: Set the output port's encoding to that of E's `charset' custom.
2010-11-07eq: lout: Honor `:inline?' when it's not `auto'.Ludovic Courtès
* src/guile/skribilo/package/eq/lout.scm (eq): Honor `:inline?' when it's not `auto'.
2010-11-07lout: Improve handling of `(font :size N ...)'.Ludovic Courtès
* src/guile/skribilo/engine/lout.scm (lout-font-size): Remove. (lout-size-ratio): New procedure. (font): Use it. Change both the font size and the inter-line gap proportionally.
2010-11-07Make sure `skribilo/config.scm' gets built before anything else.Ludovic Courtès
* src/guile/Makefile.am (BUILT_SOURCES): New variable.
2010-08-15lout: Better support boolean and AST values for `date-line'.Ludovic Courtès
* src/guile/skribilo/engine/lout.scm (document): Better support boolean and AST values for DATE-LINE.
2010-08-15Fix "make dist" wrt. `.go' files and generated files.Ludovic Courtès
* guile-vm.am (nobase_dist_module_DATA): New variable. Move $(SOURCES) from $(nobase_nodist_module_DATA) to here. * src/guile/Makefile.am (SOURCES): Remove `skribilo/config.scm'. (CLEANFILES): Set to $(nobase_nodist_module_DATA). (nobase_nodist_module_DATA): New variable.
2010-07-16Fix `engine-loaded?' for Guile 2.0.Ludovic Courtès
* src/guile/skribilo/engine.scm (engine-loaded?): Use `cond-expand' and add a method that works with 2.0.
2010-07-16Pretty-print engines.Ludovic Courtès
* src/guile/skribilo/engine.scm (write): New method.
2010-06-20pie: Fix unbound variable related to autoload tricks.Ludovic Courtès
* src/guile/skribilo/package/pie.scm: Use `(skribilo ast)' instead of trying to autoload it.
2010-03-08Autoload fixlet.Ludovic Courtès
* src/guile/skribilo/package/sigplan.scm: Use `(skribilo lib)' instead of autoloading it.
2010-03-08Remove `skribilo/config.scm' from the distribution.Ludovic Courtès
* src/guile/Makefile.am (SOURCES): Add `skribilo/config.scm'. (nobase_module_DATA): Remove.
2010-03-08Adapt `(skribilo location)' to Guile 2.x.Ludovic Courtès
* src/guile/skribilo/location.scm: Use `(system vm frame)' on Guile 2.x.
2010-03-08Don't set module names when using Guile 2.x.Ludovic Courtès
* src/guile/skribilo/module.scm (maybe-set-module-name!): New procedure.
2010-03-08Factorize encoding twiddling in `set-correct-file-encoding!'.Ludovic Courtès
* doc/modules/skribilo/documentation/api.scm (api-search-definition): Call `set-correct-file-encoding!'. * doc/user/src/outline.txt (Author): Remove accent from last name, as a temporary hack. * doc/user/syntax.skb: Call `set-correct-file-encoding!' in the `outline' syntax example. * doc/user/user.skb: Use `(skribilo utils syntax)'. * src/guile/skribilo.scm (skribilo): Replace encoding twiddling with `set-correct-file-encoding!' call. * src/guile/skribilo/evaluator.scm (load-document, include-document): Likewise. * src/guile/skribilo/source.scm (source-read-lines): Call `set-correct-file-encoding!'. (source-read-definition): Likewise. * src/guile/skribilo/utils/syntax.scm (set-correct-file-encoding!): New macro.
2009-11-27Add `coding:' comments.Ludovic Courtès
Add `coding:' comments for use by both Emacs and Guile 2.x.
2009-11-20Build all the modules with Guile 2.x.Ludovic Courtès
* src/guile/Makefile.am (SOURCES_NOT_COMPILED): Remove. (SOURCES): Add $(engines).
2009-11-20Choose the right encoding for input documents.Ludovic Courtès
* src/guile/skribilo.scm (skribilo): Use the right encoding for the current input port. * src/guile/skribilo/evaluator.scm (load-document, include-document): Likewise. * doc/user/user.skb: Add a `coding:' comment for use by Guile at the top.
2009-11-20Fix `%procedure-arity'.Ludovic Courtès
* src/guile/skribilo/writer.scm (%procedure-arity): Always use `procedure-property'. (make-writer-predicate): Fix `proc-name' argument of `&invalid-argument-error' condition.
2009-11-20Remove duplicate keyword argument from `pie'.Ludovic Courtès
* src/guile/skribilo/package/pie.scm (pie): Remove duplicate `class' keyword argument.
2009-11-20Use `(skribilo-module-syntax)' instead of `(fluid-set! current-reader ...)'.Ludovic Courtès
* doc/modules/skribilo/documentation/api.scm, doc/modules/skribilo/documentation/extension.scm, doc/modules/skribilo/documentation/manual.scm, src/guile/skribilo/writer.scm: Use `(skribilo-module-syntax)' instead of `(fluid-set! current-reader ...)'.
2009-11-20Remove circular dependency introduced by `(skribilo sui)'.Ludovic Courtès
* src/guile/skribilo/sui.scm (sui-referenced-file)[html-file]: New procedure.