summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2006-01-16More SRFI-3[45] enhancements; first stab at the user documentation.Ludovic Courtes
* src/guile/skribilo/biblio.scm (skribe-open-bib-file): Raise a `&file-search-error' when needed. * src/guile/skribilo/runtime.scm (convert-image): Likewise. * src/guile/skribilo/source.scm (source-read-lines): Likewise. (source-read-definition): Likewise. * src/guile/skribilo/utils/compat.scm (skribe-load): Only look up `%skribe-known-files' when `load-document' failed. (find-file/path): Use `search-path'. (find-runtime-type): Implemented. * doc/skr/api.skr: Use `(ice-9 match)'. Use `match' instead of `match-case'. (api-search-definition): Search in `%load-path' and `(skribe-path)'. (define-markup?): First stab at getting the `match' syntax right. * doc/user/src/start[3-5].skb: Small fixes. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-25
2006-01-15Introduced SRFI-3[45] conditions; cleaned up `evaluator.scm'.Ludovic Courtes
* src/guile/skribilo/condition.scm: New. * src/guile/skribilo/Makefile.am (dist_guilemodule_DATA): Added `condition.scm'. * src/guile/skribilo/evaluator.scm (skribe-eval): Renamed to `evaluate-document'. (skribe-eval-port): Renamed to `evaluate-document-from-port'. (skribe-load-options): Renamed to `*load-options*', a fluid. (skribe-load): Renamed to `load-document'. Use SRFI-34 `raise' when a file is not found. (skribe-include): Renamed to `include-document'. Use `raise'. * src/guile/skribilo/utils/compat.scm (%skribe-known-files): New. (skribe-load): New. (skribe-include): New. (skribe-load-options): New. (skribe-eval): New. (skribe-eval-port): New. * src/skribilo.in: Invoke `call-with-skribilo-error-catch'. Added a copyright notice. * src/guile/skribilo.scm (doskribe): Use `evaluate-document-from-port', not `skribe-eval-port'. * configure.ac: Look for `(srfi srfi-35)'. * AUTHORS: Mention that most of the code comes from the STkLos implementation. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-24
2006-01-15Cleaned up the Arch inventory and removed old useless makefiles.Ludovic Courtes
Cleaned up the Arch inventory and removed old useless makefiles. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-23
2006-01-11Made compatible with the new `current-reader' as a fluid.Ludovic Court`es
* *.scm: Use `fluid-set! current-reader %skribilo-module-reader' instead of `set-current-reader'. * src/guile/skribilo/utils/syntax.scm: Use `(system reader compat)'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-24
2006-01-10Syntax highlighting and `image'-related fixes.Ludovic Courtes
* src/guile/skribilo/coloring/lisp.scm: Use `(skribilo reader)'. (lisp-family-fontifier): Take a READ argument. (skribe-fontifier): Pass `(make-reader 'skribe)' as the reader. * src/guile/skribilo/module.scm (%skribilo-user-autoloads): Added `(skribilo prog)'. * src/guile/skribilo/parameters.scm (*ref-base*): New. * src/guile/skribilo/prog.scm: Guilified. * src/guile/skribilo/reader/skribe.scm: Nothing changed. * src/guile/skribilo/runtime.scm (suffix): New. (string-ref-base): Don't use `file-separator'. Use `string-contains' instead of Bigloo/STkLos' `substring=?'. (convert-image): Use `*image-path*' instead of `skribe-image-path'. Don't use `make-path'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-20
2006-01-08Cleaning the compatibility module and other annoyances.Ludovic Courtes
* src/skribilo.in: Catch exceptions and call `(exit 1)' when caught. * doc/user/Makefile.am (skribilo): Fixed. * src/guile/skribilo.scm: Updated copyright year. * src/guile/skribilo/compat.scm: Moved to `utils'. * src/guile/skribilo/Makefile.am (dist_guilemodule_DATA): Removed `compat.scm'. * src/guile/skribilo/Makefile.am (dist_guilemodule_DATA): Added `compat.scm'. * src/guile/skribilo/coloring/lisp.scm: Use `(skribilo utils syntax)'. * src/guile/skribilo/module.scm (%skribilo-user-imports): Import `(skribilo utils compat)' instead of `(skribilo compat)'. Added more triggering procedures for `(skribilo source)'. * src/guile/skribilo/skribe/api.scm: Moved the definition of a Skribe-compatible `gensym' to `compat.scm'. * src/guile/skribilo/source.scm: Use `*source-path*' instead of `skribe-source-path'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-19
2006-01-03Cleaned up the use of a Skribe-compatible `gensym'.Ludovic Courtes
* src/guile/skribilo.scm (gensym): Removed. * src/guile/skribilo/lib.scm (define-simple-markup): Comply with Guile's version of `gensym'. (define-simple-container): Likewise. * src/guile/skribilo/skribe/api.scm (gensym): Improved. Exported via `#:replace'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-18
2005-12-06Fixed the handling of `footnote''s `:label' by the Lout/HTML engines.Ludovic Courtes
* src/guile/skribilo/engine/lout.scm (footnote): Take the `:label' option into account. * src/guile/skribilo/engine/html.scm (footnote): Likewise. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-17
2005-12-04Added the `~' markup. Added SRFI-62 and SRFI-30 support to the Skribe reader.Ludovic Courtes
* NEWS: Added actual news. * src/guile/skribilo/skribe/api.scm (~): New markup. * src/guile/skribilo/engine/html.scm: Added a writer for `~'. * src/guile/skribilo/engine/latex.scm: Likewise. * src/guile/skribilo/engine/lout.scm: Likewise. * src/guile/skribilo/evaluator.scm (skribe-include): Added a `:reader' argument. * src/guile/skribilo/reader/skribe.scm (*skribe-reader*): Renamed to `%skribe-reader'. (%make-skribe-reader): Moved the sharp reader code to... (&sharp-reader): ... here. Added support for SRFI-62 and SRFI-30 (Bigloo supports both). git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-16
2005-12-03Fixed the resolution mechanism and converted it to SRFI-39.Ludovic Courtes
* src/guile/skribilo/output.scm: Cosmetic changes. * src/guile/skribilo/resolve.scm: Use SRFI-39. (*unresolved*): Became an SRFI-39 parameter object. (resolve!): Use `parameterize' over `*unresolved*'. (do-resolve!): For `<container>', resolve the body of NODE even if PARENT is not unspecified. A similar fix had gone into the Bigloo implementation of Skribe (the patch was never actually integrated as it seems). This makes it possible to use `numref'. For `<unresolved>', to not invoke `do-resolve!' on the result of PROC's invocation. Similarly, this had gone into Skribe. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-15
2005-12-02Fixed Lout-related thingies.Ludovic Court`es
* src/guile/skribilo/engine/lout.scm: Auto-load `(ice-9 rdelim)' (used by `lout-illustration'). (lout-structure-number-string): Define as public. (footnote): Support `:label' instead of `:number'. (lout-illustration): Define as public. * src/guile/skribilo/module.scm (%skribilo-user-autoloads): Added `(skribilo engine lout)'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-16
2005-11-29Fixed `ref' and bibliography-related things.Ludovic Court`es
* src/guile/skribilo.scm (main): Handle `--warning'. * src/guile/skribilo/biblio.scm: Export `skribe-open-bib-file' and `parse-bib'. (parse-bib): Use `%default-reader'. * src/guile/skribilo/evaluator.scm (%evaluate): Cleaned up. (skribe-eval-port): Likewise. * src/guile/skribilo/module.scm (load-file-with-read): Removed. (load-skribilo-file): Removed. (load-skribilo-modules): Removed. * src/guile/skribilo/package/slide.scm (ref): Temporarily commented out. * src/guile/skribilo/skribe/bib.scm: Use `(skribilo biblio)'. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-15
2005-11-28More `%skribilo-module-reader' fixes.Ludovic Court`es
* src/guile/skribilo.scm: Removed the executable bit. * configure.ac: Produce `src/guile/skribilo/utils/Makefile'. * src/guile/skribilo.scm: Call `set-current-reader' after the `use-modules' clause. (process-option-specs): Use `:kw'-style keywords. (*skribilo-output-port*): New. (doskribe): Use the above fluid. (main): Honor the `-o' option. * src/guile/skribilo/debug.scm: Use `(skribilo utils syntax)' and `%skribilo-module-reader'. * src/guile/skribilo/module.scm: Likewise. * src/guile/skribilo/output.scm: Likewise. * src/guile/skribilo/resolve.scm: Likewise. * src/guile/skribilo/verify.scm: Likewise. * src/guile/skribilo/parameters.scm (make-expect): New. (define-number-parameter): New. (define-list-parameter): New. * src/guile/skribilo/utils/Makefile.am (guilemoduledir): Fixed. * src/guile/skribilo/evaluator.scm (%evaluate): Commented out debugging statement. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-14
2005-11-28Created a canonical module for Skribilo syntactic sugar.Ludovic Court`es
* src/guile/skribilo/utils/syntax.scm: New. Export `unless', `when', formerly defined in `lib.scm'. * src/guile/skribilo.scm: Use `(skribilo utils syntax)' and `%skribilo-module-reader'. Fixed parameterization of `*verbose*'. * src/guile/skribilo/ast.scm: Use `(skribilo utils syntax)' and `%skribilo-module-reader'. * src/guile/skribilo/biblio.scm: Likewise. * src/guile/skribilo/engine.scm: Likewise. * src/guile/skribilo/writer.scm: Likewise. * src/guile/skribilo/location.scm: Likewise. * src/guile/skribilo/lib.scm: Likewise. * src/guile/skribilo/source.scm: Likewise. * src/guile/skribilo/evaluator.scm: Likewise. Use `*document-path*' instead of `skribe-path'. * src/guile/skribilo/module.scm: Use `(system reader confinement)'. (%skribilo-user-imports): Moved some modules to... (%skribilo-user-autoloads): New. (define-skribe-module): Auto-load the modules specified in `%skribilo-user-autoloads'. Use `set-current-reader' instead of the `#:reader' option of `define-module'. * src/guile/skribilo/engine/lout.scm: Commented out a piece of text. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-13
2005-11-28Fixed and updated the installation process.Ludovic Court`es
* src/skribilo.in: New file. * configure.ac: Produce `src/skribilo'. * src/Makefile.am (bin_SCRIPTS): New. (EXTRA_DIST): New. * src/guile/Makefile.am (bin_SCRIPTS): Removed. (guilemoduledir): New. (dist_guilemodule_DATA): New. * src/guile/skribilo/Makefile.am (dist_guilemodule_DATA): Updated. * src/guile/skribilo/Makefile.in: Removed. * src/guile/skribilo/coloring/Makefile.am (guilemoduledir): Fixed. * src/guile/skribilo/engine/lout.scm: Fixed a typo. * src/guile/skribilo/skribe/Makefile.am (guilemoduledir): Fixed. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-12
2005-11-25Overhaul: emphasized logical separation of the modules.Ludovic Court`es
* src/guile/skribilo/types.scm: Removed. Moved the class and method definitions in the relevant files. * src/guile/skribilo/ast.scm: New. * src/guile/skribilo/location.scm: New. * src/guile/skribilo/parameters.scm: Same as part of the former `vars.scm' except that it uses fluids instead of globals. * src/guile/skribilo/vars.scm: Renamed to `compat.scm'. * doc/Makefile: Removed (generated by `configure'). git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-11
2005-11-01Changes related to source-highlighting and to the manual.Ludovic Courtes
* src/guile/skribilo/engine/lout.scm (lout-make-doc-cover-sheet): Fixed the definition of MULTI-COLUMN? (fixes a bug when producing multi-column documents). (lout-definitions): `@SkribeLeaders' renamed to `@SkribiloLeaders'. * doc/skr/api.skr (api-search-definition): Fixed calls to `format'. * doc/skr/manual.skr (keyword): Use `write' instead of `keyword->string'. * doc/user/start.skb: Cosmetic changes. * src/guile/skribilo/coloring/lisp.scm: First stab at its adaptation. * src/guile/skribilo/coloring/xml.scm: Rewritten "by hand". * src/guile/skribilo/evaluator.scm (skribe-include): Removed debugging statements. * src/guile/skribilo/lib.scm (new): Added a trick such that users of this macro don't have to use `(oop goops)' and `(skribilo types)'. (date): New procedure. * src/guile/skribilo/module.scm (*skribe-core-modules*): Renamed to `%skribe-core-modules'. (%skribe-core-modules): Removed `(oop goops)'. Added `(skribilo source)', `(skribilo coloring lisp)' and `(skribilo coloring xml)'. * src/guile/skribilo/skribe/api.scm (footnote): Fixed. * src/guile/skribilo/source.scm: Cosmetic changes. * src/guile/skribilo/types.scm: Export `language-extractor' and `language-fontifier'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-11
2005-10-31Installed Autoconf/Automake machinery. Fixed a few things.Ludovic Courtes
* src/guile/skribilo/evaluator.scm (skribe-load): Search through `%load-path' and try with a `.scm' extension (rather than the `.skr' one provided by the user). (skribe-include): Added a few debugging statements. * src/guile/skribilo/lib.scm (fix-rest-arg): Handle the dot notation for rest arguments. * src/guile/skribilo/reader/skribe.scm (%make-skribe-reader): Use SQUARE-BRACKET-FREE-SYMBOL-MISC-CHARS. * src/guile/skribilo/skribe/index.scm: Use `define-public' instead of `define'. * src/guile/skribilo/packages/*.scm: Moved to `skribilo/package'. * LICENSE: Removed. * COPYING: New. * AUTHORS: New. * NEWS: New. * ChangeLog: New. * configure.ac: New. * Makefile.am: New. In various directories. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-10
2005-10-31Moved the STkLos and Bigloo code to `legacy'.Ludovic Courtes
Moved the STkLos and Bigloo code from `src' to `legacy'. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-9
2005-10-31Removed useless files, integrated packages.Ludovic Courtes
* src/guile/skribilo/packages: New directory and files. * bin: Removed. * skr: Removed (files moved to `src/guile/skribilo/packages'). * skribe: Removed. * doc/skr/env.skr (*courtes-mail*): New. * doc/user/user.skb: Removed postal addresses, added my name. * src/guile/skribilo/engine/lout.scm: Uncommented the slide-related markup writers. * src/guile/skribilo/evaluator.scm (%evaluate): Try weird things with source properties. * src/guile/skribilo/reader/skribe.scm: Comply with the new guile-reader API. * src/guile/skribilo/types.scm: Removed the special `initialize' method for ASTs which was supposed to set their location. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-7
2005-07-02Cosmetic changes.Ludovic Courtes
* src/guile/skribilo/resolve.scm: Minor cosmetic changes. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-6
2005-07-02Minor fixes for file/line error reporting.Ludovic Courtes
* src/guile/skribilo/lib.scm (skribe-line-error): Removed. (skribe-ast-error): Fixed. Use `location-line' instead of `location-pos'. (skribe-error): Fixed. (%skribe-warn): Use the file and line number of CURRENT-INPUT-PORT by default. * src/guile/skribilo/types.scm: Export `location-file', `location-line' and `location-pos'. (initialize): New method for `<ast>' objects, initialize slot `loc' with information from CURRENT-INPUT-PORT. (ast-location): Fixed. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-5
2005-07-02First real document produced!Ludovic Courtes
Lots of things, including: * src/guile/skribilo/engine/lout.scm: New file. First real document produced! git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-4
2005-07-02Started relying on the per-module reader; first doc produced ever!Ludovic Courtes
First document compiled by Skribilo to HTML! * src/guile/skribilo/module.scm (define-skribe-module): Use the `#:reader' option of `define-module' (not yet integrated in Guile 1.7). Plus lots of other things... git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-3
2005-07-01Lots of changes, again.Ludovic Courtes
Lots of changes, notably the following: * skr/*.skr: Moved engines to `src/guile/skribilo/engine'. * src/guile/skribilo/engine.scm (lookup-engine): Rewritten. Don't use the auto-load alist. * src/guile/skribilo/evaluator.scm: New name of the `eval' module. `eval' couldn't be used as the module base-name because of Guile's recursive module name space. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-2
2005-07-01Lots of changes.Ludovic Courtes
Too many changes to describe here, among which, moving the `(skribe)' module namespace to `(skribilo)'. This is work in progress. git-archimport-id: lcourtes@laas.fr--2005-mobile/skribilo--devel--1.2--patch-1
2005-06-16One step further with the Guile port.Ludovic Court`es
* src/guile/skribilo.scm: Use `getopt-long'; include all the necessary modules that user-visible macros depend on. Use `read-hash-extend' to allow for DSSSL-style keywords, as needed by Skribe modules. * src/guile/skribe/debug.scm: Export `with-debug' and `%with-debug'. * src/guile/skribe/lib.scm (new): Fixed. (define-markup): Fixed (more the `rest' argument to the end). git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-5
2005-06-15Started a port of Skribe to Guile.Ludovic Court`es
* src/guile: New directory. Contains the beginning of a Guile implementation that borrows most of its code to the STkLos implementation of Skribe. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-4
2005-06-15Various bugfixes; added `:label' to `footnote'.Ludovic Court`es
* src/common/api.scm: For chapters, sections, subsections and subsubsections, make the default value of `ident' a random name produced by `gensym'. This allows to avoid name clashes. (footnote): Renamed `:number' to `:label'. Allow users to pass either a boolean, a string, or a number. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-3
2005-06-15Fix the resolution mechanism so that there can be dependencies among ↵Ludovic Court`es
`unresolved' objects. * src/bigloo/resolve.scm (do-resolve! node::%unresolved): Don't recurse after calling `proc'. (do-resolve! node::%container): Resolve its body even if its parent is not unspecified (see message <20050120091114.GB337@laas.fr>, dated Jan. 20th, 2005, to the Skribe mailing list). git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-2
2005-06-15Various bugfixes; new `file-name-proc' custom for the HTML engine.Ludovic Court`es
* tools/skribebibtex/bigloo/skribebibtex.scm (skribebibtex): Don't enclose `ident' in double quotes. * doc/user/user.skb: Made "Introduction" a chapter rather than a section; likewise for its subsections. * skr/html.skr (itemize): Produce an anchor if `ident' is not false. (enumerate): Likewise. (html-file-default): New procedure. (file-name-proc): New custom. * src/bigloo/color.scm (*color-parser*): Fixed the "black" and "white" colors (were inverted). git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--patch-1
2005-06-15Initial import of Skribe 1.2d.Ludovic Court`es
Initial import of Skribe 1.2d. git-archimport-id: lcourtes@laas.fr--2004-libre/skribilo--devel--1.2--base-0