diff options
Diffstat (limited to 'doc')
-rw-r--r-- | doc/haunt.texi | 128 |
1 files changed, 64 insertions, 64 deletions
diff --git a/doc/haunt.texi b/doc/haunt.texi index 68229fc..d1d7044 100644 --- a/doc/haunt.texi +++ b/doc/haunt.texi @@ -429,7 +429,7 @@ site name, domain name, where blog posts are found, what post formats are understood, which procedures are used to build the site, where the output files are written to, etc. -@deffn {Scheme Procedure} site [#:title "This Place is Haunted"] @ +@deffn {Procedure} site [#:title "This Place is Haunted"] @ [#:domain "example.com"] [#:posts-directory "posts"] @ [#:file-filter @code{default-file-filter}] @ [#:build-directory "site"] [#:default-metadata '()] @ @@ -473,43 +473,43 @@ A list of publisher objects for upload site contents to a remote location @end deffn -@deffn {Scheme Procedure} site? @var{obj} +@deffn {Procedure} site? @var{obj} Return @code{#t} if @var{obj} is a site object. @end deffn -@deffn {Scheme Procedure} site-title @var{site} +@deffn {Procedure} site-title @var{site} Return the title of @var{site}. @end deffn -@deffn {Scheme Procedure} site-domain @var{site} +@deffn {Procedure} site-domain @var{site} Return the domain of @var{site}. @end deffn -@deffn {Scheme Procedure} site-posts-directory @var{site} +@deffn {Procedure} site-posts-directory @var{site} Return the posts directory for @var{site}. @end deffn -@deffn {Scheme Procedure} site-file-filter @var{site} +@deffn {Procedure} site-file-filter @var{site} Return the file filter procedure for @var{site}. @end deffn -@deffn {Scheme Procedure} site-build-directory @var{site} +@deffn {Procedure} site-build-directory @var{site} Return the build directory of @var{site}. @end deffn -@deffn {Scheme Procedure} site-make-slug @var{site} +@deffn {Procedure} site-make-slug @var{site} Return the slug constructor for @var{site}. @end deffn -@deffn {Scheme Procedure} site-readers @var{site} +@deffn {Procedure} site-readers @var{site} Return the list of reader procedures for @var{site}. @end deffn -@deffn {Scheme Procedure} site-builders @var{site} +@deffn {Procedure} site-builders @var{site} Return the list of builder procedures for @var{site}. @end deffn -@deffn {Scheme Procedure} site-publishers @var{site} +@deffn {Procedure} site-publishers @var{site} Return the list of publisher objects for upload @var{site} contents to a remote location. @end deffn @@ -525,7 +525,7 @@ Posts represent the articles that are kept in a site's post directory and written in a markup format that Haunt can understand. @xref{Readers} for how files on disk can be transformed into posts. -@deffn {Scheme Procedure} make-post @var{file-name} @var{metadata} @var{sxml} +@deffn {Procedure} make-post @var{file-name} @var{metadata} @var{sxml} Create a new post object that represents the contents of the file @var{file-name}. The body of the post, @var{sxml}, is represented as an SXML tree (@pxref{SXML, SXML,, guile, GNU Guile Reference Manual}) @@ -534,62 +534,62 @@ Association Lists,, guile, GNU Guile Reference Manual}) of arbitrary key/value pairs. @end deffn -@deffn {Scheme Procedure} post? @var{object} +@deffn {Procedure} post? @var{object} Return @code{#t} if @var{object} is a post. @end deffn -@deffn {Scheme Procedure} post-file-name @var{post} +@deffn {Procedure} post-file-name @var{post} Return the file name for @var{post}. @end deffn -@deffn {Scheme Procedure} post-metadata @var{post} +@deffn {Procedure} post-metadata @var{post} Return the metadata association list for @var{post}. @end deffn -@deffn {Scheme Procedure} post-sxml @var{post} +@deffn {Procedure} post-sxml @var{post} Return the SXML tree for @var{post}. @end deffn -@deffn {Scheme Procedure} post-ref @var{post} @var{key} +@deffn {Procedure} post-ref @var{post} @var{key} Return the metadata value corresponding to @var{key} within @var{post}. @end deffn -@deffn {Scheme Procedure} post-slug @var{post} +@deffn {Procedure} post-slug @var{post} Transform the title of @var{post} into a URL slug suitable for the file name of a web page. @end deffn -@defvr {Scheme Variable} %default-date +@defvr {Variable} %default-date The default date of a post when no other date is specified in the metadata association list. @end defvr -@deffn {Scheme Procedure} post-date @var{post} +@deffn {Procedure} post-date @var{post} Return the date for @var{post}, or @code{%default-date} if no date is specified. @end deffn -@deffn {Scheme Procedure} posts/reverse-chronological @var{posts} +@deffn {Procedure} posts/reverse-chronological @var{posts} Sort @var{posts}, a list of posts, in reverse chronological order. @end deffn -@deffn {Scheme Procedure} post-author @var{post} +@deffn {Procedure} post-author @var{post} Return the author of @var{post}, or @code{#f} if no author is specified. @end deffn -@deffn {Scheme Procedure} post-tags @var{post} +@deffn {Procedure} post-tags @var{post} Return list of tags for @var{post}, or the empty list if no tags are specified. @end deffn -@deffn {Scheme Procedure} post-title @var{post} +@deffn {Procedure} post-title @var{post} Return the title of @var{post}, or @code{#f} if no title is specified. @end deffn -@deffn {Scheme Procedure} posts/group-by-tag @var{posts} +@deffn {Procedure} posts/group-by-tag @var{posts} Create an association list of tags mapped to the posts in the list @var{posts} that used them. @end deffn @@ -614,7 +614,7 @@ The purpose of a reader is to translate the markup within a post file into an SXML tree representing the HTML structure and associate some metadata with it. -@deffn {Scheme Procedure} make-reader @var{matcher} @var{proc} +@deffn {Procedure} make-reader @var{matcher} @var{proc} Create a new reader. The reader is to be activated when @var{matcher}, a procedure that accepts a file name as its only argument, returns @code{#t}. When a post file matches, the procedure @@ -622,41 +622,41 @@ argument, returns @code{#t}. When a post file matches, the procedure the contents and returns a post object (@pxref{Posts}). @end deffn -@deffn {Scheme Procedure} reader? @var{object} +@deffn {Procedure} reader? @var{object} Return @code{#t} if @var{object} is a reader. @end deffn -@deffn {Scheme Procedure} reader-matcher @var{reader} +@deffn {Procedure} reader-matcher @var{reader} Return the match procedure for @var{reader}. @end deffn -@deffn {Scheme Procedure} reader-proc @var{reader} +@deffn {Procedure} reader-proc @var{reader} Return the read procedure for @var{reader}. @end deffn -@deffn {Scheme Procedure} reader-match? @var{reader} @var{file-name} +@deffn {Procedure} reader-match? @var{reader} @var{file-name} Return @code{#t} if @var{file-name} is a file supported by @var{reader}. @end deffn -@deffn {Scheme Procedure} read-post @var{reader} @var{file-name} [@var{default-metadata}] +@deffn {Procedure} read-post @var{reader} @var{file-name} [@var{default-metadata}] Read a post object from @var{file-name} using @var{reader}, merging its metadata with @var{default-metadata}, or the empty list if not specified. @end deffn -@deffn {Scheme Procedure} read-posts @var{directory} @var{keep?} @var{readers} [@var{default-metadata}] +@deffn {Procedure} read-posts @var{directory} @var{keep?} @var{readers} [@var{default-metadata}] Read all of the files in @var{directory} that match @var{keep?} as post objects. The @var{readers} list must contain a matching reader for every post. @end deffn -@deffn {Scheme Procedure} make-file-extension-matcher @var{ext} +@deffn {Procedure} make-file-extension-matcher @var{ext} Create a procedure that returns @code{#t} when a file name ends with ``.ext''. @end deffn -@defvr {Scheme Procedure} sxml-reader +@defvr {Procedure} sxml-reader A basic reader for posts written as Scheme code that evaluates to an an association list. The special key @code{content} contains the post body as an SXML tree. @@ -677,7 +677,7 @@ Example: @end defvr -@defvr {Scheme Procedure} html-reader +@defvr {Procedure} html-reader A basic reader for posts written in plain ol' HTML. Metadata is encoded as the @code{key: value} pairs, one per line, at the beginning of the file. A line with the @code{---} sentinel marks the end of the @@ -704,7 +704,7 @@ tags: bar (use-modules (haunt reader texinfo)) @end example -@defvr {Scheme Procedure} texinfo-reader +@defvr {Procedure} texinfo-reader A reader for posts written in texinfo, the official documentation format of the GNU project. Metadata is encoded as @code{key: value} pairs, one per line, at the beginning of the file. A line with the @code{---} @@ -734,7 +734,7 @@ used by many non-GNU projects as well. (use-modules (haunt reader skribe)) @end example -@defvr {Scheme Procedure} skribe-reader +@defvr {Procedure} skribe-reader A reader for posts written in Skribe, a markup language with the full power of Scheme. Skribe posts are created with the @code{post} expression with metadata encoded as @code{:key expression} pairs at the beginning of the @@ -767,7 +767,7 @@ Example: (use-modules (haunt reader commonmark)) @end example -@defvr {Scheme Procedure} commonmark-reader +@defvr {Procedure} commonmark-reader A reader for posts written in CommonMark, a fully specified variant of Markdown. Metadata is encoded as @code{key: value} pairs, one per line, at the beginning of the file. A line with the @code{---} sentinel marks @@ -802,29 +802,29 @@ Their contents may be any arbitrary object that their writer procedure knows how to serialize. In practice, pages are almost always written to disk as HTML or XML. -@deffn {Scheme Procedure} make-page @var{file-name} @var{contents} @var{writer} +@deffn {Procedure} make-page @var{file-name} @var{contents} @var{writer} Create a new page object. The string @var{file-name} specifies where the page should be written to in the file system. The procedure @var{writer} is responsible for serializing @var{contents}. @end deffn -@deffn {Scheme Procedure} page? @var{object} +@deffn {Procedure} page? @var{object} Return @code{#t} if @var{object} is a page object. @end deffn -@deffn {Scheme Procedure} page-file-name @var{page} +@deffn {Procedure} page-file-name @var{page} Return the file name string for @var{page}. @end deffn -@deffn {Scheme Procedure} page-contents @var{page} +@deffn {Procedure} page-contents @var{page} Return the contents of @var{page}. @end deffn -@deffn {Scheme Procedure} page-writer @var{page} +@deffn {Procedure} page-writer @var{page} Return the writer procedure @var{page}. @end deffn -@deffn {Scheme Procedure} write-page @var{page} @var{output-directory} +@deffn {Procedure} write-page @var{page} @var{output-directory} Write @var{page} to @var{output-directory}. @end deffn @@ -839,30 +839,30 @@ Assets represent files on disk that should be copied verbatim to a site's output directory. Common types of assets include CSS, JavaScript, images, and fonts. -@deffn {Scheme Procedure} make-asset @var{source} @var{target} +@deffn {Procedure} make-asset @var{source} @var{target} Create a new asset object. The @var{source} and @var{target} arguments are file names that are relative to a site source and target directory, respectively (@pxref{Sites}). @end deffn -@deffn {Scheme Procedure} asset? @var{object} +@deffn {Procedure} asset? @var{object} Return @code{#t} if @var{object} is an asset object. @end deffn -@deffn {Scheme Procedure} asset-source @var{asset} +@deffn {Procedure} asset-source @var{asset} Return the source file name for @var{asset}. @end deffn -@deffn {Scheme Procedure} asset-target @var{asset} +@deffn {Procedure} asset-target @var{asset} Return the target file name for @var{asset}. @end deffn -@deffn {Scheme Procedure} install-asset @var{asset} @var{prefix} +@deffn {Procedure} install-asset @var{asset} @var{prefix} Install the source file of @var{asset} into the target directory within @var{prefix}. @end deffn -@deffn {Scheme Procedure} directory-assets @var{directory} @var{keep?} @var{dest} +@deffn {Procedure} directory-assets @var{directory} @var{keep?} @var{dest} Create a list of asset objects to be stored within @var{dest} for all files in @var{directory} that match @var{keep?}, recursively. @end deffn @@ -890,7 +890,7 @@ create a simple blog with an Atom feed. (use-modules (haunt builder assets)) @end example -@deffn {Scheme Procedure} static-directory @var{directory} [@var{dest}] +@deffn {Procedure} static-directory @var{directory} [@var{dest}] Create a builder procedure that recursively copies all of the files in @var{directory}, a file name relative to a site's source directory, @@ -905,7 +905,7 @@ output directory. By default, @var{dest} is @var{directory}. (use-modules (haunt builder blog)) @end example -@deffn {Scheme Procedure} theme [#:name #:layout #:post-template #:collection-template @ +@deffn {Procedure} theme [#:name #:layout #:post-template #:collection-template @ #:pagination-template] Create a new theme named @var{name}. @@ -930,11 +930,11 @@ tree into a larger document that incorporates previous/next page links. @end deffn -@deffn {Scheme Procedure} theme? @var{object} +@deffn {Procedure} theme? @var{object} Return @code{#t} if @var{object} is a theme object. @end deffn -@deffn {Scheme Procedure} blog [#:theme #:prefix #:collections #:posts-per-page] +@deffn {Procedure} blog [#:theme #:prefix #:collections #:posts-per-page] Create a builder procedure that transforms a list of posts into pages decorated by @var{theme}, a theme object, whose URLs start with @var{prefix}. @@ -979,7 +979,7 @@ The default theme is intended only for testing purposes. (use-modules (haunt builder atom)) @end example -@deffn {Scheme Procedure} atom-feed [#:file-name #:subtitle #:filter #:max-entries #:blog-prefix] +@deffn {Procedure} atom-feed [#:file-name #:subtitle #:filter #:max-entries #:blog-prefix] Return a builder procedure that renders a site's posts as an Atom feed. All arguments are optional: @@ -1002,7 +1002,7 @@ The maximum number of posts to render in the feed. The default is 20. @end deffn -@deffn {Scheme Procedure} atom-feeds-by-tag [#:prefix #:filter #:max-entries #:blog-prefix] +@deffn {Procedure} atom-feeds-by-tag [#:prefix #:filter #:max-entries #:blog-prefix] Return a builder procedure that renders an atom feed for every tag used in a post. All arguments are optional: @@ -1036,27 +1036,27 @@ The purpose of a publisher is to deploy a built site. Haunt comes with some built-in publishers, but custom publishers can be created with the following interface. -@deffn {Scheme Procedure} make-publisher @var{name} @var{proc} +@deffn {Procedure} make-publisher @var{name} @var{proc} Create a new publisher. @end deffn -@deffn {Scheme Procedure} publisher? @var{object} +@deffn {Procedure} publisher? @var{object} Return @code{#t} if @var{object} is a publisher. @end deffn -@deffn {Scheme Procedure} publisher-name @var{publisher} +@deffn {Procedure} publisher-name @var{publisher} Return the publisher name. @end deffn -@deffn {Scheme Procedure} publisher-proc @var{reader} +@deffn {Procedure} publisher-proc @var{reader} Return the publisher procedure for @var{publisher}. @end deffn -@deffn {Scheme Procedure} publish @var{publisher} @var{site} +@deffn {Procedure} publish @var{publisher} @var{site} Publish @var{site} with @var{publisher}. @end deffn -@deffn {Scheme Procedure} run-command @var{program} @var{args} +@deffn {Procedure} run-command @var{program} @var{args} Run command @var{program} with @var{args} arguments. @end deffn @@ -1069,7 +1069,7 @@ Haunt comes with the following built-in publishers: (use-modules (haunt publisher rsync)) @end example -@deffn {Scheme Procedure} rsync-publisher [#:name 'production] [#:destination] @@ +@deffn {Procedure} rsync-publisher [#:name 'production] [#:destination] @@ [#:user] [#:host] [#:name] [#:rsync] @@ [#:flags '("--compress" "--delete" "--progress" "--recursive" "--verbose")] @@ -1086,7 +1086,7 @@ overrides the set of command line flags used. (use-modules (haunt publisher sourcehut)) @end example -@deffn {Scheme Procedure} sourcehut-publisher [#:name 'production] [#:hut] [#:tar] +@deffn {Procedure} sourcehut-publisher [#:name 'production] [#:hut] [#:tar] Return a new publisher named @var{name} that publishes a site to Sourcehut pages using the site's configured domain. Passing @var{hut} and/or @var{tar} overrides the default @command{hut} and @command{tar} |