about summary refs log tree commit diff
path: root/src/guile/skribilo/engine
diff options
context:
space:
mode:
authorLudovic Courtès2020-11-01 14:47:23 +0100
committerLudovic Courtès2020-11-01 14:50:03 +0100
commit3e68da0a38250825f9d28b8ff6f448b4bdc72c77 (patch)
tree8ceac6be710b0ec23e835f39fd0d4c73a80610f9 /src/guile/skribilo/engine
parent47fd87d615102e20ec9b6ea648401caf91828711 (diff)
downloadskribilo-3e68da0a38250825f9d28b8ff6f448b4bdc72c77.tar.gz
skribilo-3e68da0a38250825f9d28b8ff6f448b4bdc72c77.tar.lz
skribilo-3e68da0a38250825f9d28b8ff6f448b4bdc72c77.zip
info: Emit dir-category and dir-entry.
Reported by nly <nly@disroot.org>.

* src/guile/skribilo/package/base.scm (document): Add
:info-dir-category and :info-dir-entry.
* doc/user/document.skb: Document them.
* doc/user/user.skb: Pass :info-dir-category.
* src/guile/skribilo/engine/info.scm (scribe-document->info): Create
INFO-DIR-CATEGORY and START-INFO-DIR-ENTRY.
Diffstat (limited to 'src/guile/skribilo/engine')
-rw-r--r--src/guile/skribilo/engine/info.scm10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/guile/skribilo/engine/info.scm b/src/guile/skribilo/engine/info.scm
index a66acde..4379cf8 100644
--- a/src/guile/skribilo/engine/info.scm
+++ b/src/guile/skribilo/engine/info.scm
@@ -291,6 +291,16 @@
 	  (output-newline)
 	  (output-flush *margin*))))
 
+   (let ((category (markup-option obj :info-dir-category))
+         (entry    (markup-option obj :info-dir-entry))
+         (name     (basename (info-dest) ".info")))
+     (when category
+       (format #t "INFO-DIR-SECTION ~a~%" category)
+       (format #t "START-INFO-DIR-ENTRY~%")
+       (format #t "* ~a: (~a).      ~a~%"
+               name name (or entry ""))
+       (format #t "END-INFO-DIR-ENTRY~%")))
+
    ;; the main node
    (receive (next prev top)
       (node-next+prev+up obj e)