From: wking@tremily.us
To: Catalyst <gentoo-catalyst@lists.gentoo.org>
Cc: "W. Trevor King" <wking@tremily.us>
Subject: [gentoo-catalyst] [PATCH] Makefile: Use asciidoc and Pandoc to generate MediaWiki doc versions
Date: Wed, 29 Jan 2014 16:56:57 -0800 [thread overview]
Message-ID: <b7bfcf4c2e33c446fd7033fe4dc4f418585477d9.1391043085.git.wking@tremily.us> (raw)
We need this because hosting content under:
https://www.gentoo.org/proj/
is deprecated, with per-project documentation migrating to the wiki [1]
* `--attribute 'toc!'` disables AsciiDoc's table of contents [2],
which Pandoc doesn't like.
* The Pandoc invocation is about as basic as it gets [3].
[1]: https://wiki.gentoo.org/wiki/Gentoo_Wiki:Developer_Central/Project_pages#Migration_from_www.gentoo.org.2Fproj.2F
[2]: http://asciidoc.org/userguide.html#X91
[3]: http://johnmacfarlane.net/pandoc/README.html#using-pandoc
---
[1] also mentions that the per-project pages are already hosted in
converted form. For example:
http://dev.gentoo.org/~swift/tmp/proj2wiki/releng/catalyst/
if folks want to copy-paste into the wiki. I don't think I have
permission (as a non releng/Catalyst member) to create or edit stuff
in the Project:releng namespace on the wiki, but I suggest folks
dropping the MediaWiki version of the HOWTO in should reference the
source Git commit in their MediaWiki commit:
auto-generated from ee08256 (doc/HOWTO.txt: Fix stage descriptions,
and add extra context, 2013-12-19).
Cheers,
Trevor
Makefile | 13 +++++++++++++
1 file changed, 13 insertions(+)
diff --git a/Makefile b/Makefile
index 98accbe..0c23cf1 100644
--- a/Makefile
+++ b/Makefile
@@ -8,6 +8,7 @@ MAN_PAGE_INCLUDES = doc/subarches.generated.txt doc/targets.generated.txt
DOC_SOURCES = $(filter-out $(MAN_PAGE_SOURCES) $(MAN_PAGE_INCLUDES),$(wildcard doc/*.txt))
DOCS = $(patsubst doc/%.txt,files/%.html,$(DOC_SOURCES))
DOC_SIDE_EFFECTS = files/docbook-xsl.css
+MEDIAWIKI_DOCS = $(patsubst files/%.html, wiki/%.mw, $(DOCS))
EXTRA_DIST = $(MAN_PAGES) $(DOCS) $(DOC_SIDE_EFFECTS)
GENERATED_FILES = $(MAN_PAGES) $(MAN_PAGE_INCLUDES) $(DOCS) $(DOC_SIDE_EFFECTS)
@@ -16,6 +17,8 @@ distdir = catalyst-$(PACKAGE_VERSION)
all: $(EXTRA_DIST)
+mediawiki: $(MEDIAWIKI_DOCS)
+
$(MAN_PAGES): files/%: doc/%.txt doc/asciidoc.conf Makefile catalyst
a2x --conf-file=doc/asciidoc.conf --attribute="catalystversion=$(PACKAGE_VERSION)" \
--format=manpage -D files "$<"
@@ -34,6 +37,16 @@ $(DOCS): files/%.html: doc/%.txt doc/asciidoc.conf Makefile
a2x --conf-file=doc/asciidoc.conf --attribute="catalystversion=$(PACKAGE_VERSION)" \
--format=xhtml -D files "$<"
+wiki/%.html: doc/%.txt doc/asciidoc.conf Makefile | wiki
+ a2x --conf-file=doc/asciidoc.conf --attribute="catalystversion=$(PACKAGE_VERSION)" \
+ --format=xhtml --attribute 'toc!' -D wiki "$<"
+
+wiki/%.mw: wiki/%.html
+ pandoc -f html -t mediawiki -o "$@" "$<"
+
+wiki:
+ mkdir -p wiki
+
$(DOC_SIDE_EFFECTS): $(firstword $(DOCS))
clean:
--
1.8.4
next reply other threads:[~2014-01-30 0:54 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-01-30 0:56 wking [this message]
2014-01-30 2:52 ` [gentoo-catalyst] Re: [PATCH] Makefile: Use asciidoc and Pandoc to generate MediaWiki doc versions W. Trevor King
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=b7bfcf4c2e33c446fd7033fe4dc4f418585477d9.1391043085.git.wking@tremily.us \
--to=wking@tremily.us \
--cc=gentoo-catalyst@lists.gentoo.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox