summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog23
-rw-r--r--doc/modules/skribilo/documentation/api.scm14
-rw-r--r--src/guile/skribilo/package/base.scm4
3 files changed, 38 insertions, 3 deletions
diff --git a/ChangeLog b/ChangeLog
index af87905..26ed052 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -2,6 +2,29 @@
# arch-tag: automatic-ChangeLog--skribilo@sv.gnu.org--2006/skribilo--devo--1.2
#
+2007-06-11 15:57:17 GMT Ludovic Court`es <ludovic.courtes@laas.fr> patch-110
+
+ Summary:
+ Added a `:&location' argument to `table'.
+ Revision:
+ skribilo--devo--1.2--patch-110
+
+ * doc/modules/skribilo/documentation/api.scm (%undocumented-options):
+ New.
+ (doc-check-arguments): Use it to allow `:&location' to not be
+ documented.
+
+ * src/guile/skribilo/package/base.scm (table): Added a `&location'
+ argument.
+
+ modified files:
+ ChangeLog doc/modules/skribilo/documentation/api.scm
+ src/guile/skribilo/package/base.scm
+
+ new patches:
+ lcourtes@laas.fr--2006-libre/skribilo--devo--1.2--patch-69
+
+
2007-06-08 15:08:50 GMT Ludovic Court`es <ludovic.courtes@laas.fr> patch-109
Summary:
diff --git a/doc/modules/skribilo/documentation/api.scm b/doc/modules/skribilo/documentation/api.scm
index 84108c9..052b5fa 100644
--- a/doc/modules/skribilo/documentation/api.scm
+++ b/doc/modules/skribilo/documentation/api.scm
@@ -269,12 +269,24 @@
;*---------------------------------------------------------------------*/
;* doc-check-arguments ... */
;*---------------------------------------------------------------------*/
+(define %undocumented-options
+ ;; Special markup options that don't need to be documented.
+ (list (symbol->keyword '&location)
+ (string->symbol ":&location")
+ '&location))
+
(define (doc-check-arguments id args dargs)
(if (not args)
(skribe-error 'doc-check-arguments id args))
(if (not dargs)
(skribe-error 'doc-check-arguments id dargs))
- (let* ((s1 (map (lambda (x) (if (pair? x) (car x) x)) args))
+ (let* ((s1 (reverse! (fold (lambda (x res)
+ (let ((x (if (pair? x) (car x) x)))
+ (if (memq x %undocumented-options)
+ res
+ (cons x res))))
+ '()
+ args)))
(s2 (map (lambda (x)
(let ((i (car x)))
(if (keyword? i)
diff --git a/src/guile/skribilo/package/base.scm b/src/guile/skribilo/package/base.scm
index a32f3f4..29eb2df 100644
--- a/src/guile/skribilo/package/base.scm
+++ b/src/guile/skribilo/package/base.scm
@@ -693,7 +693,7 @@
(define-markup (table :rest
opts
:key
- (ident #f) (class #f)
+ (ident #f) (class #f) (&location #f)
(border #f) (width #f)
(frame 'none) (rules 'none)
(cellstyle 'collapse) (cellpadding #f) (cellspacing #f))
@@ -734,7 +734,7 @@
(markup 'table)
(ident (or ident (symbol->string (gensym "table"))))
(class class)
- (loc &invocation-location)
+ (loc (or &location &invocation-location))
(required-options '(:width :frame :rules))
(options `((:frame ,frame)
(:rules ,rules)