about summary refs log tree commit diff
path: root/src/guile
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
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')
-rw-r--r--src/guile/skribilo/engine/info.scm10
-rw-r--r--src/guile/skribilo/package/base.scm7
2 files changed, 14 insertions, 3 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)
diff --git a/src/guile/skribilo/package/base.scm b/src/guile/skribilo/package/base.scm
index c28027b..cfc59d3 100644
--- a/src/guile/skribilo/package/base.scm
+++ b/src/guile/skribilo/package/base.scm
@@ -1,7 +1,6 @@
 ;;; base.scm -- The base markup package of Skribe/Skribilo.
-;;; -*- coding: iso-8859-1 -*-
 ;;;
-;;; Copyright 2005, 2006, 2007, 2008, 2009, 2013, 2015, 2016, 2018 Ludovic Court�s <ludo@gnu.org>
+;;; Copyright 2005, 2006, 2007, 2008, 2009, 2013, 2015, 2016, 2018, 2020 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright 2003, 2004  Manuel Serrano
 ;;;
 ;;;
@@ -81,7 +80,9 @@
 			 :key
 			 (ident #f) (class "document")
 			 (title #f) (html-title #f) (author #f)
-			 (ending #f) (keywords '()) (env '()))
+			 (ending #f) (keywords '()) (env '())
+                         (info-dir-category #f)
+                         (info-dir-entry ""))
    (new document
       (markup 'document)
       (ident (or ident