# SETUPFILE for manuals

# XXX: We cannot use TODO keyword as a node starts with "TODO".
#+todo: REVIEW FIXME | DONE
#+property: header-args :eval no
#+startup: overview nologdone

# Use proper quote and backtick for code sections in PDF output
# Cf. Texinfo manual 14.2
#+texinfo_header: @set txicodequoteundirected
#+texinfo_header: @set txicodequotebacktick

# Contact Info
#+texinfo_header: @set MAINTAINERSITE @uref{https://orgmode.org,maintainers webpage}
#+texinfo_header: @set MAINTAINER Carsten Dominik
#+texinfo_header: @set MAINTAINEREMAIL @email{carsten at orgmode dot org}
#+texinfo_header: @set MAINTAINERCONTACT @uref{mailto:carsten at orgmode dot org,contact the maintainer}

#+options: H:4 num:t toc:t author:t \n:nil ::t |:t ^:nil -:t f:t *:t <:t e:t ':t
#+options: d:nil todo:nil pri:nil tags:not-in-toc stat:nil broken-links:mark
#+select_tags: export
#+exclude_tags: noexport

#+macro: cite @@texinfo:@cite{@@$1@@texinfo:}@@
#+macro: var @@texinfo:@var{@@$1@@texinfo:}@@

# The "version" macro extracts "Version" keyword from "org.el".  It
# returns major.minor version number.  This is sufficient since bugfix
# releases are not expected to add features and therefore imply manual
# modifications.
#+macro: version (eval (with-current-buffer (find-file-noselect "../lisp/org.el") (org-with-point-at 1 (if (re-search-forward "Version: +\\([0-9.]+\\)" nil t) (mapconcat #'identity (cl-subseq (split-string (match-string-no-properties 1) "\\.") 0 2) ".") (error "Missing \"Version\" keyword in \"org.el\"")))))

# The "kbd" macro turns KBD into @kbd{KBD}.  Additionally, it
# encloses case-sensitive special keys (SPC, RET...) within @key{...}.
#+macro: kbd (eval (let ((case-fold-search nil) (regexp (regexp-opt '("SPC" "RET" "LFD" "TAB" "BS" "ESC" "DELETE" "SHIFT" "Ctrl" "Meta" "Alt" "Cmd" "Super" "UP" "LEFT" "RIGHT" "DOWN") 'words))) (format "@@texinfo:@kbd{@@%s@@texinfo:}@@" (replace-regexp-in-string regexp "@@texinfo:@key{@@\\&@@texinfo:}@@" $1 t))))

