summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-03-18writer: Adapt `%procedure-arity' to Guile-VM.Ludovic Courtès
* src/guile/skribilo/writer.scm (%using-vm?): Remove. It would always be true since `resolve-module' creates non-existent modules. (%procedure-arity): Use `eval-case', assuming the `else' clause matches Guile-VM, which is the case with Guile `master' commit 7eba9c99c262acb872a52d95c45a216232d2b8dc (dated Wed Mar 18 00:46:16 2009 +0100).
2009-03-17outline: Don't store multiple values in a single variable.Ludovic Courtès
Don't store multiple-value results in a single variable as it may behave in unspecified ways (see http://thread.gmane.org/gmane.lisp.guile.devel/8289). * src/guile/skribilo/reader/outline.scm (apply-any): New VALUE-COUNT argument. Properly handle multiple values, e.g., by not comparing multiple-value returns against `#f'. (make-line-processor, make-node-processor, make-document-processor): Safely assume `apply-any' always returns the right number of values.
2009-03-05Remove circular dependency between `engine' and `writer'.Ludovic Courtès
* src/guile/skribilo/engine.scm (engine-add-writer!): Remove. This way, `engine' no longer depends on `writer'. * src/guile/skribilo/writer.scm (engine-add-writer!): New.
2009-03-05Remove circular dependency between `writer' and `output'.Ludovic Courtès
* src/guile/skribilo/writer.scm (markup-writer): Don't explicitly depend on `output' since this creates a circular dependency.
2009-03-05Move `%procedure-arity' out of `lib.scm'.Ludovic Courtès
* src/guile/skribilo/lib.scm (%procedure-arity): Remove. * src/guile/skribilo/writer.scm (%using-vm?, %procedure-arity): New. This new version can handle VM "programs". This removes a dependency on `lib', which depends on almost all of Skribilo.
2009-03-05Use orthodox macrology for `new'.Ludovic Courtès
* src/guile/skribilo/lib.scm (new): Use `@' and `@@' to by leave only valid objects in the macro's result (i.e., no procedure or class). This makes it more amenable to compilation.
2009-03-02Slightly simplify `(skribilo prog)'.Ludovic Courtès
* src/guile/skribilo/prog.scm (extract-string-mark, extract-mark): Remove MARK argument, which was unused. Update callers.
2009-03-02web: Add links to AFT, Grutatxt.Ludovic Courtès
2009-01-12doc: Minor Info documentation improvements.Ludovic Courtès
* doc/user/infoe.skb: Minor improvements.
2009-01-07doc: Start customizing Info output.Ludovic Courtès
* doc/modules/skribilo/documentation/api.scm (doc-markup): New write for `info'. (punctuate): New optional argument PERIOD?. (doc-markup): Customize Info output. Rename `doc-markup.lout' to `doc-markup.generic'; use it.
2009-01-07info: Slightly improve the layout of keyed items (for `description').Ludovic Courtès
* src/guile/skribilo/engine/info.scm (item): Slightly improve the layout of keyed items.
2009-01-07Update `NEWS'.Ludovic Courtès
2009-01-07doc: Use `:info-node' to avoid name clashes; document it.Ludovic Courtès
* doc/user/eq.skb (Syntax): Add `:info-node' to avoid name clash. * doc/user/package.skb (Example): Likewise. * doc/user/pie.skb (Syntax): Likewise. * doc/user/skribilo-config.skb (Synopsis): Likewise. * doc/user/slide.skb (Example): Likewise. * doc/user/sectioning.skb: Document the `:info-node' option.
2009-01-07doc: Document the Info engine.Ludovic Courtès
* doc/modules/skribilo/documentation/env.scm (*api-engines*): Add `info'. * doc/user/Makefile.am (EXTRA_DIST): Add `infoe.skb'. * doc/user/engine.skb: Include `infoe.skb'.
2009-01-07info: New `:info-node' for `chapter', `section', etc.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (block-title): Use the `:info-node' option if available. (chapter, section, subsection, subsubsection): Mark `:info-node' as supported and `:html-file' as not supported. * src/guile/skribilo/package/base.scm (chapter, section, subsection, subsubsection): New `:info-node' option.
2009-01-07info: Warn about duplicate node titles.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (check-node-title-conflicts): New. (document): Use it. * po/POTFILES.in: Add `info.scm'.
2009-01-07Add AST unit tests.Ludovic Courtès
* tests/Makefile.am (TESTS): Add `ast.test'. (CLEANFILES): Add `ast.log'.
2009-01-07Fix SRFI-64 to allow the use of `test-assert'.Ludovic Courtès
2009-01-07Update `THANKS'.Ludovic Courtès
2009-01-07html: Fix footnote output for chapters that are not in a separate file.Ludovic Courtès
* src/guile/skribilo/engine/html.scm (section-in-separate-file?, section-in-current-file?): New. (&html-generic-document)[ftnotes]: Collect the footnotes not only of N but also those of all its sub-containers that are to be output in the same file. This fixes a bug where chapters that are not output in the same file don't get their footnotes printed. Reported by Klaus Schilling <schilling.klaus@web.de>. * NEWS: Update.
2009-01-05rss-2: Improve tests.Ludovic Courtès
* tests/readers/rss-2.test ("broken date format", "table"): New tests.
2009-01-05html: Produce hyperlinks back to the call site of footnotes.Ludovic Courtès
* src/guile/skribilo/engine/html.scm (&html-footnotes): Produce a hyperlink to `footenote-site-...'. (footnote): Produce an anchor named `footnote-site-...' for back references. Suggested by Klaus Schilling <schilling.klaus@web.de>. * NEWS: Update.
2008-12-23Install the user-specified locale.Ludovic Courtès
* src/guile/skribilo.scm (skribilo): Call `setlocale'.
2008-12-23rss-2: Clean up tests.Ludovic Courtès
2008-12-23Make `distcheck' happy.Ludovic Courtès
* doc/user/Makefile.am (CLEANFILES): Add `skribilo.info'.
2008-12-23Add test framework and `rss-2' unit tests.Ludovic Courtès
* Makefile.am (SUBDIRS): Add `tests'. * configure.ac: Produce `tests/Makefile'. * src/guile/Makefile.am (EXTRA_DIST): Add SRFI-64 files. * tests: New directory.
2008-12-23rss-2: Rename `generic-tag->skribe' to `shtml->skribe'.Ludovic Courtès
2008-12-23rss-2: Fix buglets.Ludovic Courtès
* src/guile/skribilo/reader/rss-2.scm (html-string->parse-tree): Remove. (generic-tag->skribe): Handle `*TOP*' here. This allows us to make sure we generate a valid tree, regardless of whether TAG is flat or not. (item->section): Parse the title as HTML, too. Don't `unquote-splice' the result of `generic-tag->skribe'. (feed->document): Likewise.
2008-12-23rss-2: Remove debugging statement.Ludovic Courtès
* src/guile/skribilo/reader/rss-2.scm (generic-tag->skribe): Remove `format' call.
2008-12-22Document dependency on SXML and HTMLPrag for the `rss-2' reader.Ludovic Courtès
* configure.ac: Check for `(sxml simple)' and `(htmlprag)'. * README: Mention dependency on Guile-Lib.
2008-12-22Update `.gitignore' for the M4 macros.Ludovic Courtès
2008-12-22Update `INSTALL' from Automake 1.10.2.Ludovic Courtès
2008-12-22Update `.gitignore'.Ludovic Courtès
2008-12-21PO update.Ludovic Courtès
2008-12-21Add `rss-2' reader, for RSS 2.0 feeds as an input syntax.Ludovic Courtès
* src/guile/skribilo/reader/rss-2.scm: New file. * src/guile/Makefile.am (readers): Add `rss-2.scm'. * po/POTFILES.in: Add `rss-2.scm'. * doc/user/syntax.skb (rss2-syntax): New section. * NEWS: Update.
2008-12-21lout: Issue a warning instead of an error for `(image :url ...)'.Ludovic Courtès
* src/guile/skribilo/engine/lout.scm (image): Produce a warning, not an error, if URL is provided. Use SRFI-35 conditions for invalid arguments. * po/POTFILES.in: Add. * NEWS: Update.
2008-12-21Add `--custom' option to `skribilo'.Ludovic Courtès
* src/guile/skribilo.scm (skribilo-show-help): Update. (%options)[#\c]: New option. (%default-options)[:customs]: New option. (skribilo): Handle it. * doc/user/compiler.skb (Skribilo Compiler)[Options]: Add. * NEWS: Update.
2008-12-13info: Handle references to marks.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (ref): Handle references to marks.
2008-12-13info: Add spacing around lists.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (itemize, enumerate, description): Add a new line before and after each list.
2008-12-13info: Add space markups and `tt'.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (~, breakable-space): New. (%ornaments): Add `tt'.
2008-12-13doc: Add "Writing New Readers".Ludovic Courtès
* doc/user/syntax.skb (syntax)[custom-syntax]: New section. Suggested by Klaus Schilling <schilling.klaus@web.de>. * doc/user/engine.skb (custom-engine): Link to `custom-syntax'.
2008-12-13doc: Describe use of a string as `:file' for sections.Ludovic Courtès
* doc/user/sectioning.skb: Document the use of a string argument for `:file'. Reported by Klaus Schilling <schilling.klaus@web.de>.
2008-12-07doc: Produce user manual in Info format.Ludovic Courtès
* doc/user/Makefile.am (skrinfodir, skrinfo_DATA): New. (skribilo.info): New target. * doc/user/user.skb: Don't produce a TOC nor an index when using the Info engine.
2008-12-07info: Fix ornaments.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (%ornaments): Remove LaTeXisms. Use `output-justified' when outputting ornaments.
2008-12-07info: Improve `url-ref' output.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (url-ref): Produce output that conforms to what Texinfo does.
2008-12-07info: Justify all strings that are output.Ludovic Courtès
* src/guile/skribilo/engine/info.scm (info-engine): Add a `:filter' closure. (block-title): Use `ast->string' when TITLE is not a string to avoid side effects with `justify'.
2008-12-07base engine: Pass location information appropriately.Ludovic Courtès
* src/guile/skribilo/engine/base.scm (&the-index): Pass LOC using `:&location'.
2008-11-25info: Add supported options for each markup writer.Ludovic Courtès
2008-11-25justify, text-table: Fix width rounding issues.Ludovic Courtès
* src/guile/skribilo/utils/justify.scm (make-justified-line): Make ONE-SPACES inexact. (make-centered-line): Round WIDTH to an exact integer. (make-justifier): Check the type and range of WIDTH. * src/guile/skribilo/utils/text-table.scm (table->ascii): Check whether WIDTH is a number. Round LCOLSWIDTH with `round-to-exact'. (table-row-format)[cell-width]: Round W with `round-to-exact'. (table-cell-vformat): Round NEW/2. (round-to-exact): New.
2008-11-24Delete the destination file upon failure.Ludovic Courtès
* src/guile/skribilo/condition.scm (abort): New. Delete `(*destination-file*)'. (%call-with-skribilo-error-catch): Use `abort' instead of `show-stack-trace' and `exit'. (with-exception-handler): New.