Browse Source

Merge branch 'ma/asciidoctor-refmiscinfo'

Update support for Asciidoctor documentation toolchain.

* ma/asciidoctor-refmiscinfo:
  doc-diff: replace --cut-header-footer with --cut-footer
  asciidoctor-extensions: provide `<refmiscinfo/>`
  Doc/Makefile: give mansource/-version/-manual attributes
maint
Junio C Hamano 5 years ago
parent
commit
70c1cbf515
  1. 3
      Documentation/Makefile
  2. 6
      Documentation/asciidoc.conf
  3. 17
      Documentation/asciidoctor-extensions.rb
  4. 17
      Documentation/doc-diff

3
Documentation/Makefile

@ -123,7 +123,8 @@ ASCIIDOC_HTML = xhtml11 @@ -123,7 +123,8 @@ ASCIIDOC_HTML = xhtml11
ASCIIDOC_DOCBOOK = docbook
ASCIIDOC_CONF = -f asciidoc.conf
ASCIIDOC_COMMON = $(ASCIIDOC) $(ASCIIDOC_EXTRA) $(ASCIIDOC_CONF) \
-agit_version=$(GIT_VERSION)
-amanversion=$(GIT_VERSION) \
-amanmanual='Git Manual' -amansource='Git'
TXT_TO_HTML = $(ASCIIDOC_COMMON) -b $(ASCIIDOC_HTML)
TXT_TO_XML = $(ASCIIDOC_COMMON) -b $(ASCIIDOC_DOCBOOK)
MANPAGE_XSL = manpage-normal.xsl

6
Documentation/asciidoc.conf

@ -78,9 +78,9 @@ template::[header-declarations] @@ -78,9 +78,9 @@ template::[header-declarations]
<refmeta>
<refentrytitle>{mantitle}</refentrytitle>
<manvolnum>{manvolnum}</manvolnum>
<refmiscinfo class="source">Git</refmiscinfo>
<refmiscinfo class="version">{git_version}</refmiscinfo>
<refmiscinfo class="manual">Git Manual</refmiscinfo>
<refmiscinfo class="source">{mansource}</refmiscinfo>
<refmiscinfo class="version">{manversion}</refmiscinfo>
<refmiscinfo class="manual">{manmanual}</refmiscinfo>
</refmeta>
<refnamediv>
<refname>{manname}</refname>

17
Documentation/asciidoctor-extensions.rb

@ -20,9 +20,26 @@ module Git @@ -20,9 +20,26 @@ module Git
end
end
end

class DocumentPostProcessor < Asciidoctor::Extensions::Postprocessor
def process document, output
if document.basebackend? 'docbook'
mansource = document.attributes['mansource']
manversion = document.attributes['manversion']
manmanual = document.attributes['manmanual']
new_tags = "" \
"<refmiscinfo class=\"source\">#{mansource}</refmiscinfo>\n" \
"<refmiscinfo class=\"version\">#{manversion}</refmiscinfo>\n" \
"<refmiscinfo class=\"manual\">#{manmanual}</refmiscinfo>\n"
output = output.sub(/<\/refmeta>/, new_tags + "</refmeta>")
end
output
end
end
end
end

Asciidoctor::Extensions.register do
inline_macro Git::Documentation::LinkGitProcessor, :linkgit
postprocessor Git::Documentation::DocumentPostProcessor
end

17
Documentation/doc-diff

@ -21,7 +21,7 @@ asciidoc use asciidoc with both commits @@ -21,7 +21,7 @@ asciidoc use asciidoc with both commits
to-asciidoc use asciidoc with the 'to'-commit
to-asciidoctor use asciidoctor with the 'to'-commit
asciidoctor use asciidoctor with both commits
cut-header-footer cut away header and footer
cut-footer cut away footer
"
SUBDIRECTORY_OK=1
. "$(git --exec-path)/git-sh-setup"
@ -31,7 +31,7 @@ force= @@ -31,7 +31,7 @@ force=
clean=
from_program=
to_program=
cut_header_footer=
cut_footer=
while test $# -gt 0
do
case "$1" in
@ -55,8 +55,8 @@ do @@ -55,8 +55,8 @@ do
--asciidoc)
from_program=-asciidoc
to_program=-asciidoc ;;
--cut-header-footer)
cut_header_footer=-cut-header-footer ;;
--cut-footer)
cut_footer=-cut-footer ;;
--)
shift; break ;;
*)
@ -118,8 +118,8 @@ construct_makemanflags () { @@ -118,8 +118,8 @@ construct_makemanflags () {
from_makemanflags=$(construct_makemanflags "$from_program") &&
to_makemanflags=$(construct_makemanflags "$to_program") &&

from_dir=$from_oid$from_program$cut_header_footer &&
to_dir=$to_oid$to_program$cut_header_footer &&
from_dir=$from_oid$from_program$cut_footer &&
to_dir=$to_oid$to_program$cut_footer &&

# generate_render_makefile <srcdir> <dstdir>
generate_render_makefile () {
@ -169,12 +169,11 @@ render_tree () { @@ -169,12 +169,11 @@ render_tree () {
make -j$parallel -f - &&
mv "$tmp/rendered/$dname+" "$tmp/rendered/$dname"

if test "$cut_header_footer" = "-cut-header-footer"
if test "$cut_footer" = "-cut-footer"
then
for f in $(find "$tmp/rendered/$dname" -type f)
do
tail -n +3 "$f" | head -n -2 |
sed -e '1{/^$/d}' -e '${/^$/d}' >"$f+" &&
head -n -2 "$f" | sed -e '${/^$/d}' >"$f+" &&
mv "$f+" "$f" ||
return 1
done

Loading…
Cancel
Save