org: batch-generate userdoc/ and distribute it

* doc/org/init.el.in, doc/org/syntax.css: New files.
* configure.ac: Generate init.el from init.el.in, and check for
emacs.
* doc/Makefile.am: Build userdoc/ from org/ and distribute userdoc/.
* README: Mention org/ and userdoc/.
This commit is contained in:
Alexandre Duret-Lutz 2013-03-20 16:39:37 +01:00
parent c24270bbf5
commit e23203b819
6 changed files with 941 additions and 3 deletions

2
README
View file

@ -181,7 +181,9 @@ src/ Sources for libspot.
man/ Man pages for the above tools. man/ Man pages for the above tools.
sanity/ Sanity tests for the whole project. sanity/ Sanity tests for the whole project.
doc/ Documentation for libspot. doc/ Documentation for libspot.
org/ Source of userdoc/ as org-mode files.
tl/ Documentation of the Temporal Logic operators. tl/ Documentation of the Temporal Logic operators.
userdoc/ HTML documentation about the command-line tools.
spot.html/ HTML reference manual for the library. spot.html/ HTML reference manual for the library.
bench/ Benchmarks for ... bench/ Benchmarks for ...
emptchk/ ... emptiness-check algorithms, emptchk/ ... emptiness-check algorithms,

View file

@ -91,7 +91,7 @@ if test x$enable_warnings = xyes; then
fi fi
AM_CONDITIONAL([NEVER], [false]) AM_CONDITIONAL([NEVER], [false])
# We need the absolute path for dot in the "doc/dot" script. Other place # We need the absolute path for dot in the "doc/dot" script. Other places
# only require a relative path. # only require a relative path.
AC_PATH_PROG([DOT], [dot]) AC_PATH_PROG([DOT], [dot])
AC_CHECK_PROG([LBT], [lbt], [lbt]) AC_CHECK_PROG([LBT], [lbt], [lbt])
@ -102,6 +102,7 @@ AC_CHECK_PROG([LTL2NBA], [script4lbtt.py], [script4lbtt.py])
AC_CHECK_PROG([PERL], [perl], [perl]) AC_CHECK_PROG([PERL], [perl], [perl])
AC_CHECK_PROG([SPIN], [spin], [spin]) AC_CHECK_PROG([SPIN], [spin], [spin])
AC_CHECK_PROG([LBTT], [lbtt], [lbtt]) AC_CHECK_PROG([LBTT], [lbtt], [lbtt])
AC_CHECK_PROG([EMACS], [emacs], [emacs])
AC_CHECK_PROG([LBTT_TRANSLATE], [lbtt-translate], [lbtt-translate]) AC_CHECK_PROG([LBTT_TRANSLATE], [lbtt-translate], [lbtt-translate])
AX_CHECK_VALGRIND AX_CHECK_VALGRIND
AC_CHECK_PROG([WRING2LBTT], [wring2lbtt], [wring2lbtt]) AC_CHECK_PROG([WRING2LBTT], [wring2lbtt], [wring2lbtt])
@ -126,6 +127,7 @@ AC_CONFIG_FILES([
doc/Doxyfile doc/Doxyfile
doc/Makefile doc/Makefile
doc/tl/Makefile doc/tl/Makefile
doc/org/init.el
iface/dve2/defs iface/dve2/defs
iface/dve2/Makefile iface/dve2/Makefile
iface/gspn/defs iface/gspn/defs

View file

@ -26,7 +26,7 @@ SUBDIRS = tl
.PHONY: doc fast-doc .PHONY: doc fast-doc
all-local: $(srcdir)/stamp all-local: $(srcdir)/stamp $(srcdir)/org-stamp
doc: doc:
-rm -f $(srcdir)/stamp -rm -f $(srcdir)/stamp
@ -49,9 +49,34 @@ $(srcdir)/spot.html $(srcdir)/spot.tag: $(srcdir)/stamp
# Spot documentation. # Spot documentation.
dist_pkgdata_DATA = $(srcdir)/spot.tag dist_pkgdata_DATA = $(srcdir)/spot.tag
.PHONY: org
org:
cd $(top_srcdir) && make doc/org/init.el
rm -rf $(srcdir)/userdoc; mkdir -p tmp; cd tmp; \
$(EMACS) --batch -Q -l $(abs_srcdir)/org/init.el
rm -rf tmp
ORG_FILES = \
org/.dir-locals.el \
org/init.el \
org/syntax.css \
org/genltl.org \
org/ioltl.org \
org/ltl2tgba.org \
org/ltl2tgta.org \
org/ltlcross.org \
org/ltlfilt.org \
org/randltl.org \
org/tools.org
$(srcdir)/org-stamp: $(ORG_FILES) $(configure_ac)
make org && touch $@
EXTRA_DIST = \ EXTRA_DIST = \
footer.html \ footer.html \
mainpage.dox \ mainpage.dox \
$(srcdir)/stamp \ $(srcdir)/stamp \
$(srcdir)/spot.html \ $(srcdir)/spot.html \
org/.dir-locals.el $(ORG_FILES) \
$(srcdir)/org-stamp \
userdoc

1
doc/org/.gitignore vendored
View file

@ -5,3 +5,4 @@ err
*.json *.json
scheck.ltl scheck.ltl
sum.py sum.py
init.el

33
doc/org/init.el.in Normal file
View file

@ -0,0 +1,33 @@
(require 'org-publish)
(require 'org-install)
(print (concat "Org " (org-version)))
(setq org-export-htmlize-output-type 'css)
(setq org-babel-python-command "/usr/bin/python3")
(org-babel-do-load-languages
'org-babel-load-languages
'((sh . t)
(dot . t)
(python . t)))
(setq org-confirm-babel-evaluate nil)
(setq org-publish-project-alist
'(("spot-html"
:base-directory "@abs_top_srcdir@/doc/org/"
:base-extension "org"
:publishing-directory "@abs_top_srcdir@/doc/userdoc/"
:recursive t
:publishing-function org-publish-org-to-html
:style "\n<link rel=\"stylesheet\" type=\"text/css\" href=\"syntax.css\" />\n<link rel=\"stylesheet\" type=\"text/css\" href=\"http://spot.lip6.fr/css/spot-zenburn.css\" />"
:auto-preamble t)
("spot-static"
:base-directory "@abs_top_srcdir@/doc/org/"
:base-extension "css\\|js\\|png\\|jpg\\|gif\\|pdf"
:publishing-directory "@abs_top_srcdir@/doc/userdoc/"
:recursive t
:publishing-function org-publish-attachment)
("spot-all" :components ("spot-html" "spot-static"))))
(org-publish-all t)

875
doc/org/syntax.css Normal file
View file

@ -0,0 +1,875 @@
<style type="text/css">
<!--
body {
color: #f5deb3;
background-color: #2f4f4f;
}
.org-bold {
/* bold */
font-weight: bold;
}
.org-bold-italic {
/* bold-italic */
font-weight: bold;
font-style: italic;
}
.org-border {
}
.org-buffer-menu-buffer {
/* buffer-menu-buffer */
font-weight: bold;
}
.org-builtin {
/* font-lock-builtin-face */
color: #b0c4de;
}
.org-button {
/* button */
color: #00ffff;
text-decoration: underline;
}
.org-calendar-today {
/* calendar-today */
text-decoration: underline;
}
.org-change-log-acknowledgement {
/* change-log-acknowledgement */
color: #ff7f24;
}
.org-change-log-conditionals {
/* change-log-conditionals */
color: #eedd82;
}
.org-change-log-date {
/* change-log-date */
color: #ffa07a;
}
.org-change-log-email {
/* change-log-email */
color: #eedd82;
}
.org-change-log-file {
/* change-log-file */
color: #87cefa;
}
.org-change-log-function {
/* change-log-function */
color: #eedd82;
}
.org-change-log-list {
/* change-log-list */
color: #00ffff;
}
.org-change-log-name {
/* change-log-name */
color: #7fffd4;
}
.org-comint-highlight-input {
/* comint-highlight-input */
font-weight: bold;
}
.org-comint-highlight-prompt {
/* comint-highlight-prompt */
color: #00ffff;
}
.org-comment {
/* font-lock-comment-face */
color: #ff7f24;
}
.org-comment-delimiter {
/* font-lock-comment-delimiter-face */
color: #ff7f24;
}
.org-completions-annotations {
/* completions-annotations */
text-decoration: underline;
}
.org-completions-common-part {
/* completions-common-part */
color: #f5deb3;
background-color: #2f4f4f;
}
.org-completions-first-difference {
/* completions-first-difference */
font-weight: bold;
}
.org-constant {
/* font-lock-constant-face */
color: #7fffd4;
}
.org-cursor {
/* cursor */
background-color: #da70d6;
}
.org-diary {
/* diary */
color: #ffff00;
}
.org-doc {
/* font-lock-doc-face */
color: #ffa07a;
}
.org-error {
/* error */
color: #ffc0cb;
font-weight: bold;
}
.org-escape-glyph {
/* escape-glyph */
color: #00ffff;
}
.org-file-name-shadow {
/* file-name-shadow */
color: #b3b3b3;
}
.org-fixed-pitch {
}
.org-flyspell-duplicate {
/* flyspell-duplicate */
color: #cdad00;
font-weight: bold;
text-decoration: underline;
}
.org-flyspell-incorrect {
/* flyspell-incorrect */
color: #ff4500;
font-weight: bold;
text-decoration: underline;
}
.org-fringe {
/* fringe */
background-color: #1a1a1a;
}
.org-function-name {
/* font-lock-function-name-face */
color: #87cefa;
}
.org-git-header {
/* git-header-face */
color: #0000ff;
}
.org-git-ignored {
/* git-ignored-face */
color: #666666;
}
.org-git-mark {
/* git-mark-face */
color: #ff6347;
font-weight: bold;
}
.org-git-permission {
/* git-permission-face */
color: #00ff00;
font-weight: bold;
}
.org-git-separator {
/* git-separator-face */
color: #a52a2a;
}
.org-git-status {
/* git-status-face */
color: #fa8072;
}
.org-git-unknown {
/* git-unknown-face */
color: #daa520;
font-weight: bold;
}
.org-git-unmerged {
/* git-unmerged-face */
color: #ff0000;
font-weight: bold;
}
.org-git-uptodate {
/* git-uptodate-face */
color: #666666;
}
.org-glyphless-char {
/* glyphless-char */
font-size: 60%;
}
.org-header-line {
/* header-line */
color: #e5e5e5;
background-color: #333333;
}
.org-help-argument-name {
}
.org-highlight {
/* highlight */
background-color: #556b2f;
}
.org-holiday {
/* holiday */
background-color: #8b4513;
}
.org-ido-first-match {
/* ido-first-match */
font-weight: bold;
}
.org-ido-incomplete-regexp {
/* ido-incomplete-regexp */
color: #ffc0cb;
font-weight: bold;
}
.org-ido-indicator {
/* ido-indicator */
color: #ffff00;
background-color: #ff0000;
}
.org-ido-only-match {
/* ido-only-match */
color: #228b22;
}
.org-ido-subdir {
/* ido-subdir */
color: #ff0000;
}
.org-ido-virtual {
/* ido-virtual */
color: #b0c4de;
}
.org-info-header-node {
/* info-header-node */
color: #ffffff;
font-weight: bold;
font-style: italic;
}
.org-info-header-xref {
/* info-header-xref */
color: #00ffff;
text-decoration: underline;
}
.org-info-menu-header {
/* info-menu-header */
font-weight: bold;
}
.org-info-menu-star {
/* info-menu-star */
color: #ff0000;
}
.org-info-node {
/* info-node */
color: #ffffff;
font-weight: bold;
font-style: italic;
}
.org-info-title-1 {
/* info-title-1 */
font-size: 172%;
font-weight: bold;
}
.org-info-title-2 {
/* info-title-2 */
font-size: 144%;
font-weight: bold;
}
.org-info-title-3 {
/* info-title-3 */
font-size: 120%;
font-weight: bold;
}
.org-info-title-4 {
/* info-title-4 */
font-weight: bold;
}
.org-info-xref {
/* info-xref */
color: #00ffff;
text-decoration: underline;
}
.org-isearch {
/* isearch */
color: #8b2323;
background-color: #ee799f;
}
.org-isearch-fail {
/* isearch-fail */
background-color: #8b0000;
}
.org-italic {
/* italic */
text-decoration: underline;
}
.org-keyword {
/* font-lock-keyword-face */
color: #00ffff;
}
.org-lazy-highlight {
/* lazy-highlight */
background-color: #668b8b;
}
.org-link {
/* link */
color: #00ffff;
text-decoration: underline;
}
.org-link-visited {
/* link-visited */
color: #ee82ee;
text-decoration: underline;
}
.org-log-edit-header {
/* log-edit-header */
color: #00ffff;
}
.org-log-edit-summary {
/* log-edit-summary */
color: #87cefa;
}
.org-log-edit-unknown-header {
/* log-edit-unknown-header */
color: #ff7f24;
}
.org-match {
/* match */
background-color: #3a5fcd;
}
.org-menu {
}
.org-minibuffer-prompt {
/* minibuffer-prompt */
color: #00ffff;
}
.org-mmm-cleanup-submode {
/* mmm-cleanup-submode-face */
background-color: #cd853f;
}
.org-mmm-code-submode {
/* mmm-code-submode-face */
background-color: #293b3b;
}
.org-mmm-comment-submode {
/* mmm-comment-submode-face */
background-color: #4682b4;
}
.org-mmm-declaration-submode {
/* mmm-declaration-submode-face */
background-color: #00ced1;
}
.org-mmm-default-submode {
/* mmm-default-submode-face */
background-color: #333333;
}
.org-mmm-delimiter {
}
.org-mmm-init-submode {
/* mmm-init-submode-face */
background-color: #ba55d3;
}
.org-mmm-output-submode {
/* mmm-output-submode-face */
background-color: #c71585;
}
.org-mmm-special-submode {
/* mmm-special-submode-face */
background-color: #228b22;
}
.org-mode-line {
/* mode-line */
color: #000000;
background-color: #bfbfbf;
}
.org-mode-line-buffer-id {
/* mode-line-buffer-id */
font-weight: bold;
}
.org-mode-line-emphasis {
/* mode-line-emphasis */
font-weight: bold;
}
.org-mode-line-highlight {
}
.org-mode-line-inactive {
/* mode-line-inactive */
color: #cccccc;
background-color: #4d4d4d;
}
.org-mouse {
}
.org-negation-char {
}
.org-next-error {
/* next-error */
background-color: #737373;
}
.org-nobreak-space {
/* nobreak-space */
color: #00ffff;
text-decoration: underline;
}
.org-org-agenda-calendar-event {
/* org-agenda-calendar-event */
color: #f5deb3;
background-color: #2f4f4f;
}
.org-org-agenda-calendar-sexp {
/* org-agenda-calendar-sexp */
color: #f5deb3;
background-color: #2f4f4f;
}
.org-org-agenda-clocking {
/* org-agenda-clocking */
background-color: #4a708b;
}
.org-org-agenda-column-dateline {
/* org-agenda-column-dateline */
background-color: #4d4d4d;
}
.org-org-agenda-current-time {
/* org-agenda-current-time */
color: #eedd82;
}
.org-org-agenda-date {
/* org-agenda-date */
color: #87cefa;
}
.org-org-agenda-date-today {
/* org-agenda-date-today */
color: #87cefa;
font-weight: bold;
font-style: italic;
}
.org-org-agenda-date-weekend {
/* org-agenda-date-weekend */
color: #87cefa;
font-weight: bold;
}
.org-org-agenda-diary {
/* org-agenda-diary */
color: #f5deb3;
background-color: #2f4f4f;
}
.org-org-agenda-dimmed-todo {
/* org-agenda-dimmed-todo-face */
color: #7f7f7f;
}
.org-org-agenda-done {
/* org-agenda-done */
color: #98fb98;
}
.org-org-agenda-filter-category {
/* org-agenda-filter-category */
color: #000000;
background-color: #bfbfbf;
}
.org-org-agenda-filter-tags {
/* org-agenda-filter-tags */
color: #000000;
background-color: #bfbfbf;
}
.org-org-agenda-restriction-lock {
/* org-agenda-restriction-lock */
background-color: #4a708b;
}
.org-org-agenda-structure {
/* org-agenda-structure */
color: #87cefa;
}
.org-org-archived {
/* org-archived */
color: #b3b3b3;
}
.org-org-block {
/* org-block */
color: #b3b3b3;
}
.org-org-block-background {
}
.org-org-block-begin-line {
/* org-block-begin-line */
color: #ff7f24;
}
.org-org-block-end-line {
/* org-block-end-line */
color: #ff7f24;
}
.org-org-checkbox {
/* org-checkbox */
font-weight: bold;
}
.org-org-checkbox-statistics-done {
/* org-checkbox-statistics-done */
color: #98fb98;
font-weight: bold;
}
.org-org-checkbox-statistics-todo {
/* org-checkbox-statistics-todo */
color: #ffc0cb;
font-weight: bold;
}
.org-org-clock-overlay {
/* org-clock-overlay */
background-color: #4a708b;
}
.org-org-code {
/* org-code */
color: #b3b3b3;
}
.org-org-column {
/* org-column */
background-color: #4d4d4d;
}
.org-org-column-title {
/* org-column-title */
background-color: #4d4d4d;
font-weight: bold;
text-decoration: underline;
}
.org-org-date {
/* org-date */
color: #00ffff;
text-decoration: underline;
}
.org-org-date-selected {
/* org-date-selected */
color: #ffc0cb;
}
.org-org-default {
/* org-default */
color: #f5deb3;
background-color: #2f4f4f;
}
.org-org-document-info {
/* org-document-info */
color: #afeeee;
}
.org-org-document-info-keyword {
/* org-document-info-keyword */
color: #b3b3b3;
}
.org-org-document-title {
/* org-document-title */
color: #afeeee;
font-weight: bold;
}
.org-org-done {
/* org-done */
color: #98fb98;
font-weight: bold;
}
.org-org-drawer {
/* org-drawer */
color: #87cefa;
}
.org-org-ellipsis {
/* org-ellipsis */
color: #eedd82;
text-decoration: underline;
}
.org-org-footnote {
/* org-footnote */
color: #00ffff;
text-decoration: underline;
}
.org-org-formula {
/* org-formula */
color: #ff7f24;
}
.org-org-headline-done {
/* org-headline-done */
color: #ffa07a;
}
.org-org-hide {
/* org-hide */
color: #2f4f4f;
}
.org-org-latex-and-export-specials {
/* org-latex-and-export-specials */
color: #deb887;
}
.org-org-level-1 {
/* org-level-1 */
color: #87cefa;
}
.org-org-level-2 {
/* org-level-2 */
color: #eedd82;
}
.org-org-level-3 {
/* org-level-3 */
color: #00ffff;
}
.org-org-level-4 {
/* org-level-4 */
color: #ff7f24;
}
.org-org-level-5 {
/* org-level-5 */
color: #98fb98;
}
.org-org-level-6 {
/* org-level-6 */
color: #7fffd4;
}
.org-org-level-7 {
/* org-level-7 */
color: #b0c4de;
}
.org-org-level-8 {
/* org-level-8 */
color: #ffa07a;
}
.org-org-link {
/* org-link */
color: #00ffff;
text-decoration: underline;
}
.org-org-list-dt {
/* org-list-dt */
font-weight: bold;
}
.org-org-meta-line {
/* org-meta-line */
color: #ff7f24;
}
.org-org-mode-line-clock {
/* org-mode-line-clock */
color: #000000;
background-color: #bfbfbf;
}
.org-org-mode-line-clock-overrun {
/* org-mode-line-clock-overrun */
color: #000000;
background-color: #ff0000;
}
.org-org-property-value {
}
.org-org-quote {
/* org-quote */
color: #b3b3b3;
}
.org-org-scheduled {
/* org-scheduled */
color: #98fb98;
}
.org-org-scheduled-previously {
/* org-scheduled-previously */
color: #ff7f24;
}
.org-org-scheduled-today {
/* org-scheduled-today */
color: #98fb98;
}
.org-org-sexp-date {
/* org-sexp-date */
color: #00ffff;
}
.org-org-special-keyword {
/* org-special-keyword */
color: #00ffff;
}
.org-org-table {
/* org-table */
color: #87cefa;
}
.org-org-tag {
/* org-tag */
font-weight: bold;
}
.org-org-target {
/* org-target */
text-decoration: underline;
}
.org-org-time-grid {
/* org-time-grid */
color: #eedd82;
}
.org-org-todo {
/* org-todo */
color: #ffc0cb;
font-weight: bold;
}
.org-org-upcoming-deadline {
/* org-upcoming-deadline */
color: #ff7f24;
}
.org-org-verbatim {
/* org-verbatim */
color: #b3b3b3;
}
.org-org-verse {
/* org-verse */
color: #b3b3b3;
}
.org-org-warning {
/* org-warning */
color: #ffc0cb;
font-weight: bold;
}
.org-outline-1 {
/* outline-1 */
color: #87cefa;
}
.org-outline-2 {
/* outline-2 */
color: #eedd82;
}
.org-outline-3 {
/* outline-3 */
color: #00ffff;
}
.org-outline-4 {
/* outline-4 */
color: #ff7f24;
}
.org-outline-5 {
/* outline-5 */
color: #98fb98;
}
.org-outline-6 {
/* outline-6 */
color: #7fffd4;
}
.org-outline-7 {
/* outline-7 */
color: #b0c4de;
}
.org-outline-8 {
/* outline-8 */
color: #ffa07a;
}
.org-ppXl-highlight {
}
.org-preprocessor {
/* font-lock-preprocessor-face */
color: #b0c4de;
}
.org-query-replace {
/* query-replace */
color: #8b2323;
background-color: #ee799f;
}
.org-regexp-grouping-backslash {
/* font-lock-regexp-grouping-backslash */
font-weight: bold;
}
.org-regexp-grouping-construct {
/* font-lock-regexp-grouping-construct */
font-weight: bold;
}
.org-region {
/* region */
background-color: #737373;
}
.org-scroll-bar {
}
.org-secondary-selection {
/* secondary-selection */
background-color: #4a708b;
}
.org-shadow {
/* shadow */
color: #b3b3b3;
}
.org-string {
/* font-lock-string-face */
color: #ffa07a;
}
.org-success {
/* success */
color: #00ff00;
font-weight: bold;
}
.org-tool-bar {
/* tool-bar */
color: #000000;
background-color: #bfbfbf;
}
.org-tooltip {
/* tooltip */
color: #000000;
background-color: #ffffe0;
}
.org-trailing-whitespace {
/* trailing-whitespace */
background-color: #ff0000;
}
.org-type {
/* font-lock-type-face */
color: #98fb98;
}
.org-underline {
/* underline */
text-decoration: underline;
}
.org-variable-name {
/* font-lock-variable-name-face */
color: #eedd82;
}
.org-variable-pitch {
}
.org-vertical-border {
}
.org-warning {
/* warning */
color: #ff8c00;
font-weight: bold;
}
.org-warning-1 {
/* font-lock-warning-face */
color: #ffc0cb;
font-weight: bold;
}
.org-whitespace-empty {
/* whitespace-empty */
color: #b22222;
background-color: #ffff00;
}
.org-whitespace-hspace {
/* whitespace-hspace */
color: #a9a9a9;
background-color: #3d3d3d;
}
.org-whitespace-indentation {
/* whitespace-indentation */
color: #b22222;
background-color: #ffff00;
}
.org-whitespace-line {
/* whitespace-line */
color: #ee82ee;
background-color: #333333;
}
.org-whitespace-newline {
/* whitespace-newline */
color: #a9a9a9;
}
.org-whitespace-space {
/* whitespace-space */
color: #a9a9a9;
background-color: #333333;
}
.org-whitespace-space-after-tab {
/* whitespace-space-after-tab */
color: #b22222;
background-color: #ffff00;
}
.org-whitespace-space-before-tab {
/* whitespace-space-before-tab */
color: #b22222;
background-color: #ff8c00;
}
.org-whitespace-tab {
/* whitespace-tab */
color: #a9a9a9;
background-color: #383838;
}
.org-whitespace-trailing {
/* whitespace-trailing */
color: #ffff00;
background-color: #ff0000;
font-weight: bold;
}
a {
color: inherit;
background-color: inherit;
font: inherit;
text-decoration: inherit;
}
a:hover {
text-decoration: underline;
}
-->
</style>