summaryrefslogtreecommitdiff
path: root/dviware/dvisvgm/doc
diff options
context:
space:
mode:
authorNorbert Preining <norbert@preining.info>2019-10-29 03:00:39 +0000
committerNorbert Preining <norbert@preining.info>2019-10-29 03:00:39 +0000
commit97f5151099967e6c823d640a90d87bca92c44035 (patch)
tree685caa49488599f87d0caa4e972833b2263d8567 /dviware/dvisvgm/doc
parent25a647b97ef526aefcc75269dd19c46dbe3ae4c1 (diff)
CTAN sync 201910290300
Diffstat (limited to 'dviware/dvisvgm/doc')
-rw-r--r--dviware/dvisvgm/doc/Makefile.am22
-rw-r--r--dviware/dvisvgm/doc/Makefile.in23
-rw-r--r--dviware/dvisvgm/doc/dvisvgm.126
-rw-r--r--dviware/dvisvgm/doc/dvisvgm.sty14
-rw-r--r--dviware/dvisvgm/doc/dvisvgm.txt.in17
-rw-r--r--dviware/dvisvgm/doc/generate-dvisvgm-sty.xsl19
-rw-r--r--dviware/dvisvgm/doc/tweak-db-refentry.xsl36
7 files changed, 109 insertions, 48 deletions
diff --git a/dviware/dvisvgm/doc/Makefile.am b/dviware/dvisvgm/doc/Makefile.am
index 3aa938d870..a2bc63bd2e 100644
--- a/dviware/dvisvgm/doc/Makefile.am
+++ b/dviware/dvisvgm/doc/Makefile.am
@@ -10,20 +10,27 @@ if BUILD_MANPAGE
man_MANS = dvisvgm.1
endif
-EXTRA_DIST = $(man_MANS) conf-dblatex-man.xsl conf-dblatex-pdf.xsl dvisvgm.sty dvisvgm.txt.in tweak-dblatex-pdf.xsl tweak-db-refentry.xsl
+EXTRA_DIST = $(man_MANS) \
+ conf-dblatex-man.xsl \
+ conf-dblatex-pdf.xsl \
+ dvisvgm.txt.in \
+ generate-dvisvgm-sty.xsl \
+ tweak-dblatex-pdf.xsl \
+ tweak-db-refentry.xsl
CONF_DBLATEX_MAN = $(dvisvgm_srcdir)/doc/conf-dblatex-man.xsl
CONF_DBLATEX_PDF = $(dvisvgm_srcdir)/doc/conf-dblatex-pdf.xsl
TWEAK_DBLATEX_PDF = $(dvisvgm_srcdir)/doc/tweak-dblatex-pdf.xsl
TWEAK_DB_ARTICLE = $(dvisvgm_srcdir)/doc/tweak-db-article.xsl
TWEAK_DB_REFENTRY = $(dvisvgm_srcdir)/doc/tweak-db-refentry.xsl
+GEN_DBLATEX_STY = $(dvisvgm_srcdir)/doc/generate-dvisvgm-sty.xsl
DB_VARS = man.endnotes.list.enabled=0 man.endnotes.are.numbered=0 man.authors.section.enabled=0
dvisvgm.1: dvisvgm-man.xml $(CONF_DBLATEX_MAN)
xmlto -m $(CONF_DBLATEX_MAN) $(addprefix --stringparam , $(DB_VARS)) man $<
-dvisvgm.pdf: dvisvgm-man.xml $(CONF_DBLATEX_PDF) $(TWEAK_DBLATEX_PDF)
+dvisvgm.pdf: dvisvgm-man.xml dvisvgm.sty $(CONF_DBLATEX_PDF) $(TWEAK_DBLATEX_PDF)
mv $< $<.tmp
xsltproc -o $< $(TWEAK_DBLATEX_PDF) $<.tmp
dblatex -bxetex --texstyle=./dvisvgm.sty -p $(CONF_DBLATEX_PDF) $<
@@ -44,19 +51,22 @@ dvisvgm.epub: dvisvgm-article.xml
a2x -darticle -fepub -L --icons --icons-dir=. $<
mv $(basename $<).epub $@
-.SECONDARY: dvisvgm-article.xml dvisvgm-man.xml
+.SECONDARY: dvisvgm-article.xml dvisvgm-man.xml dvisvgm.sty
dvisvgm-man.xml: dvisvgm.txt $(TWEAK_DB_REFENTRY)
asciidoc -a icons -a 'iconsdir=.' -a badges -a 'revnumber=@VERSION@' --unsafe -bdocbook -dmanpage -o $@.tmp $<
xsltproc -o $@ $(TWEAK_DB_REFENTRY) $@.tmp
rm $@.tmp
-dvisvgm-article.xml: dvisvgm.txt
+dvisvgm-article.xml: dvisvgm.txt $(TWEAK_DB_ARTICLE)
asciidoc -a icons -a 'iconsdir=.' -a badges -a 'revnumber=@VERSION@' --unsafe -bdocbook -darticle -o $@.tmp $<
xsltproc -o $@ $(TWEAK_DB_ARTICLE) $@.tmp
rm $@.tmp
sed -i "s/{VERSION}/@VERSION@/" $@
+dvisvgm.sty: dvisvgm-man.xml $(GEN_DBLATEX_STY)
+ xsltproc -o dvisvgm.sty $(GEN_DBLATEX_STY) $<
+
dvisvgm.txt: dvisvgm.txt.in ../configure.ac
sed -e 's/@VERSION[@]/@VERSION@/g' -e 's/@PACKAGE_BUGREPORT[@]/@PACKAGE_BUGREPORT@/g' $< >$@
if [ $< -nt ../configure.ac ]; \
@@ -70,10 +80,10 @@ man: dvisvgm.1
pdf: dvisvgm.pdf
clean:
- rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.dvi dvisvgm.epub
+ rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.sty dvisvgm.dvi dvisvgm.epub
distclean-local:
- rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.dvi dvisvgm.epub dvisvgm.1
+ rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.sty dvisvgm.dvi dvisvgm.epub dvisvgm.1
# Ensure that distribution tarballs always contain a recent manpage, i.e.
# let "make dist" and "make distcheck" fail if dvisvgm.1 can't be built.
diff --git a/dviware/dvisvgm/doc/Makefile.in b/dviware/dvisvgm/doc/Makefile.in
index b819b8e00a..b5bf93ce6b 100644
--- a/dviware/dvisvgm/doc/Makefile.in
+++ b/dviware/dvisvgm/doc/Makefile.in
@@ -319,12 +319,20 @@ top_srcdir = @top_srcdir@
# However, the distribution tarball should always contain a recent manpage. We ensure
# this by adding a dist-hook rule below.
@BUILD_MANPAGE_TRUE@man_MANS = dvisvgm.1
-EXTRA_DIST = $(man_MANS) conf-dblatex-man.xsl conf-dblatex-pdf.xsl dvisvgm.sty dvisvgm.txt.in tweak-dblatex-pdf.xsl tweak-db-refentry.xsl
+EXTRA_DIST = $(man_MANS) \
+ conf-dblatex-man.xsl \
+ conf-dblatex-pdf.xsl \
+ dvisvgm.txt.in \
+ generate-dvisvgm-sty.xsl \
+ tweak-dblatex-pdf.xsl \
+ tweak-db-refentry.xsl
+
CONF_DBLATEX_MAN = $(dvisvgm_srcdir)/doc/conf-dblatex-man.xsl
CONF_DBLATEX_PDF = $(dvisvgm_srcdir)/doc/conf-dblatex-pdf.xsl
TWEAK_DBLATEX_PDF = $(dvisvgm_srcdir)/doc/tweak-dblatex-pdf.xsl
TWEAK_DB_ARTICLE = $(dvisvgm_srcdir)/doc/tweak-db-article.xsl
TWEAK_DB_REFENTRY = $(dvisvgm_srcdir)/doc/tweak-db-refentry.xsl
+GEN_DBLATEX_STY = $(dvisvgm_srcdir)/doc/generate-dvisvgm-sty.xsl
DB_VARS = man.endnotes.list.enabled=0 man.endnotes.are.numbered=0 man.authors.section.enabled=0
all: all-am
@@ -570,7 +578,7 @@ uninstall-man: uninstall-man1
dvisvgm.1: dvisvgm-man.xml $(CONF_DBLATEX_MAN)
xmlto -m $(CONF_DBLATEX_MAN) $(addprefix --stringparam , $(DB_VARS)) man $<
-dvisvgm.pdf: dvisvgm-man.xml $(CONF_DBLATEX_PDF) $(TWEAK_DBLATEX_PDF)
+dvisvgm.pdf: dvisvgm-man.xml dvisvgm.sty $(CONF_DBLATEX_PDF) $(TWEAK_DBLATEX_PDF)
mv $< $<.tmp
xsltproc -o $< $(TWEAK_DBLATEX_PDF) $<.tmp
dblatex -bxetex --texstyle=./dvisvgm.sty -p $(CONF_DBLATEX_PDF) $<
@@ -591,19 +599,22 @@ dvisvgm.epub: dvisvgm-article.xml
a2x -darticle -fepub -L --icons --icons-dir=. $<
mv $(basename $<).epub $@
-.SECONDARY: dvisvgm-article.xml dvisvgm-man.xml
+.SECONDARY: dvisvgm-article.xml dvisvgm-man.xml dvisvgm.sty
dvisvgm-man.xml: dvisvgm.txt $(TWEAK_DB_REFENTRY)
asciidoc -a icons -a 'iconsdir=.' -a badges -a 'revnumber=@VERSION@' --unsafe -bdocbook -dmanpage -o $@.tmp $<
xsltproc -o $@ $(TWEAK_DB_REFENTRY) $@.tmp
rm $@.tmp
-dvisvgm-article.xml: dvisvgm.txt
+dvisvgm-article.xml: dvisvgm.txt $(TWEAK_DB_ARTICLE)
asciidoc -a icons -a 'iconsdir=.' -a badges -a 'revnumber=@VERSION@' --unsafe -bdocbook -darticle -o $@.tmp $<
xsltproc -o $@ $(TWEAK_DB_ARTICLE) $@.tmp
rm $@.tmp
sed -i "s/{VERSION}/@VERSION@/" $@
+dvisvgm.sty: dvisvgm-man.xml $(GEN_DBLATEX_STY)
+ xsltproc -o dvisvgm.sty $(GEN_DBLATEX_STY) $<
+
dvisvgm.txt: dvisvgm.txt.in ../configure.ac
sed -e 's/@VERSION[@]/@VERSION@/g' -e 's/@PACKAGE_BUGREPORT[@]/@PACKAGE_BUGREPORT@/g' $< >$@
if [ $< -nt ../configure.ac ]; \
@@ -617,10 +628,10 @@ man: dvisvgm.1
pdf: dvisvgm.pdf
clean:
- rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.dvi dvisvgm.epub
+ rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.sty dvisvgm.dvi dvisvgm.epub
distclean-local:
- rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.dvi dvisvgm.epub dvisvgm.1
+ rm -f dvisvgm.pdf dvisvgm.html dvisvgm-man.xml dvisvgm-article.xml dvisvgm.txt dvisvgm.sty dvisvgm.dvi dvisvgm.epub dvisvgm.1
# Ensure that distribution tarballs always contain a recent manpage, i.e.
# let "make dist" and "make distcheck" fail if dvisvgm.1 can't be built.
diff --git a/dviware/dvisvgm/doc/dvisvgm.1 b/dviware/dvisvgm/doc/dvisvgm.1
index b10cb4ef84..27efd0582d 100644
--- a/dviware/dvisvgm/doc/dvisvgm.1
+++ b/dviware/dvisvgm/doc/dvisvgm.1
@@ -2,12 +2,12 @@
.\" Title: dvisvgm
.\" Author: Martin Gieseking <martin.gieseking@uos.de>
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
-.\" Date: 04/13/2019
+.\" Date: 2019-08-25
.\" Manual: dvisvgm Manual
-.\" Source: dvisvgm 2.7
+.\" Source: dvisvgm 2.8
.\" Language: English
.\"
-.TH "DVISVGM" "1" "04/13/2019" "dvisvgm 2\&.7" "dvisvgm Manual"
+.TH "DVISVGM" "1" "2019\-08\-25" "dvisvgm 2\&.8" "dvisvgm Manual"
.\" -----------------------------------------------------------------
.\" * Define some portability stuff
.\" -----------------------------------------------------------------
@@ -164,7 +164,12 @@ only affects the bounding box and does not transform the page content\&. Hence,
\fB\-C, \-\-cache\fR[=\fIdir\fR]
.RS 4
To speed up the conversion process of bitmap fonts, dvisvgm saves intermediate conversion information in cache files\&. By default, these files are stored in
-\fB$HOME/\&.dvisvgm/cache\fR\&. If you prefer a different location, use option
+\fB$XDG_CACHE_HOME/dvisvgm/\fR
+or
+\fB$HOME/\&.cache/dvisvgm\fR
+if
+\fBXDG_CACHE_HOME\fR
+is not set\&. If you prefer a different location, use option
\fB\-\-cache\fR
to overwrite the default\&. Furthermore, it is also possible to disable the font caching mechanism completely with option
\fB\-\-cache=none\fR\&. If argument
@@ -669,7 +674,10 @@ of option
\fBMD5\fR,
\fBXXH32\fR, and
\fBXXH64\fR, where the names can be given in lower case too, like
-\fB\-\-page\-hashes=md5\fR\&.
+\fB\-\-page\-hashes=md5\fR\&. Since version 0\&.7\&.1, xxHash provides an experimental 128\-bit hash function, whose algorithm may still change with the next versions of the library\&. If the corresponding API is available, dvisvgm supports the new hash function and option
+\fB\-\-page\-hashes\fR
+additionally accepts the algorithm specifier
+\fBXXH128\fR\&.
.sp
Finally, option
\fB\-\-page\-hashes\fR
@@ -1219,11 +1227,11 @@ The following TeX snippet adds two raw SVG elements to the output and updates th
.\}
.nf
\especial{dvisvgm:raw <circle cx=\*(Aq{?x}\*(Aq cy=\*(Aq{?y}\*(Aq r=\*(Aq10\*(Aq stroke=\*(Aqblack\*(Aq fill=\*(Aqred\*(Aq/>}%
-\especial{dvisvgm:bbox 10bp 10bp 10bp}%
-\especial{dvisvgm:bbox \-10bp 10bp 10bp}
+\especial{dvisvgm:bbox 10bp 10bp 10bp transform}%
+\especial{dvisvgm:bbox \-10bp 10bp 10bp transform}
-\especial{dvisvgm:raw <path d=\*(AqM50 200 L10 250 H100 Z\*(Aq stroke=\*(Aqblack\*(Aq fill=\*(Aqblue\*(Aq/>}
-\especial{dvisvgm:bbox abs 10bp 200bp 100bp 250bp}
+\especial{dvisvgm:raw <path d=\*(AqM50 200 L10 250 H100 Z\*(Aq stroke=\*(Aqblack\*(Aq fill=\*(Aqblue\*(Aq/>}%
+\especial{dvisvgm:bbox abs 10bp 200bp 100bp 250bp transform}
.fi
.if n \{\
.RE
diff --git a/dviware/dvisvgm/doc/dvisvgm.sty b/dviware/dvisvgm/doc/dvisvgm.sty
deleted file mode 100644
index 26140e47ac..0000000000
--- a/dviware/dvisvgm/doc/dvisvgm.sty
+++ /dev/null
@@ -1,14 +0,0 @@
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{dvisvgm}[2015/02/04 dvisvgm DocBook style]
-\RequirePackageWithOptions{docbook}
-\RequirePackage[english]{babel}
-\RequirePackage[yyyymmdd]{datetime}
-\AtBeginDocument{%
- \thispagestyle{empty}
- \lhead[]{\refmiscinfomanual}
- \rhead[]{\thepage}
- \lfoot[]{\refmiscinfosource{} \refmiscinfoversion}
- \rfoot[]{\today}
- \def\tableofcontents{\stdtoc} % keep TOC on current page
-}
-
diff --git a/dviware/dvisvgm/doc/dvisvgm.txt.in b/dviware/dvisvgm/doc/dvisvgm.txt.in
index 7a80f3e05b..02f3618a10 100644
--- a/dviware/dvisvgm/doc/dvisvgm.txt.in
+++ b/dviware/dvisvgm/doc/dvisvgm.txt.in
@@ -22,6 +22,7 @@ Martin Gieseking <@PACKAGE_BUGREPORT@>
:man source: dvisvgm
:man version: @VERSION@
:man manual: dvisvgm Manual
+:revdate: 2019-08-25 20:14 +0200
Name
----
@@ -129,7 +130,8 @@ Hence, if you choose a landscape format, the page won't be rotated.
//
*-C, --cache*[='dir']::
To speed up the conversion process of bitmap fonts, dvisvgm saves intermediate conversion
-information in cache files. By default, these files are stored in +$HOME/.dvisvgm/cache+.
+information in cache files. By default, these files are stored in +$XDG_CACHE_HOME/dvisvgm/+
+or +$HOME/.cache/dvisvgm+ if +XDG_CACHE_HOME+ is not set.
If you prefer a different location, use option *--cache* to overwrite the default. Furthermore,
it is also possible to disable the font caching mechanism completely with option *--cache=none*.
If argument 'dir' is omitted, dvisvgm prints the path of the default cache directory together
@@ -465,7 +467,10 @@ By default, dvisvgm uses the XXH64 hash algorithm to compute the values provided
+%hc+. It's extremely fast, and a 64-bit hash should be sufficient for most documents with an average
size of pages. Alternatively, XXH32 and MD5 can be used as well. The desired algorithm is specified
by argument 'params' of option *--page-hashes*. It takes one of the strings +MD5+, +XXH32+, and +XXH64+,
-where the names can be given in lower case too, like +--page-hashes=md5+.
+where the names can be given in lower case too, like +--page-hashes=md5+. Since version 0.7.1,
+xxHash provides an experimental 128-bit hash function, whose algorithm may still change with the next
+versions of the library. If the corresponding API is available, dvisvgm supports the new hash function
+and option *--page-hashes* additionally accepts the algorithm specifier +XXH128+.
+
Finally, option *--page-hashes* can take a second argument that must be separated by a comma.
Currently, only the two parameters 'list' and 'replace' are evaluated, e.g. +--page-hashes=md5,list+
@@ -750,11 +755,11 @@ The following TeX snippet adds two raw SVG elements to the output and updates th
[source,tex]
-------------------------------------------------------------------------------------
\special{dvisvgm:raw <circle cx='{?x}' cy='{?y}' r='10' stroke='black' fill='red'/>}%
-\special{dvisvgm:bbox 10bp 10bp 10bp}%
-\special{dvisvgm:bbox -10bp 10bp 10bp}
+\special{dvisvgm:bbox 10bp 10bp 10bp transform}%
+\special{dvisvgm:bbox -10bp 10bp 10bp transform}
-\special{dvisvgm:raw <path d='M50 200 L10 250 H100 Z' stroke='black' fill='blue'/>}
-\special{dvisvgm:bbox abs 10bp 200bp 100bp 250bp}
+\special{dvisvgm:raw <path d='M50 200 L10 250 H100 Z' stroke='black' fill='blue'/>}%
+\special{dvisvgm:bbox abs 10bp 200bp 100bp 250bp transform}
-------------------------------------------------------------------------------------
+
diff --git a/dviware/dvisvgm/doc/generate-dvisvgm-sty.xsl b/dviware/dvisvgm/doc/generate-dvisvgm-sty.xsl
new file mode 100644
index 0000000000..9ce456d1b3
--- /dev/null
+++ b/dviware/dvisvgm/doc/generate-dvisvgm-sty.xsl
@@ -0,0 +1,19 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+ <xsl:output method="text"/>
+
+ <xsl:template match="/">% This is a generated file -- don't modify it manually.
+\NeedsTeXFormat{LaTeX2e}
+\ProvidesPackage{dvisvgm}[2015/02/04 dvisvgm DocBook style]
+\RequirePackageWithOptions{docbook}
+\RequirePackage[english]{babel}
+\AtBeginDocument{%
+ \thispagestyle{empty}
+ \lhead[]{\refmiscinfomanual}
+ \rhead[]{\thepage}
+ \lfoot[]{\refmiscinfosource{} \refmiscinfoversion}
+ \rfoot[]{<xsl:value-of select="refentry/refentryinfo/date"/>} % revision date given in dvisvgm.txt.in
+ \def\tableofcontents{\stdtoc} % keep TOC on current page
+}
+ </xsl:template>
+</xsl:stylesheet> \ No newline at end of file
diff --git a/dviware/dvisvgm/doc/tweak-db-refentry.xsl b/dviware/dvisvgm/doc/tweak-db-refentry.xsl
index ef1752142e..088e2ce434 100644
--- a/dviware/dvisvgm/doc/tweak-db-refentry.xsl
+++ b/dviware/dvisvgm/doc/tweak-db-refentry.xsl
@@ -4,23 +4,45 @@
<xsl:stylesheet version="1.0"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:date="http://exslt.org/dates-and-times"
- extension-element-prefixes="date">
+ xmlns:func="http://exslt.org/functions"
+ xmlns:my="my-namespace"
+ exclude-result-prefixes="my"
+ extension-element-prefixes="date func">
<xsl:output doctype-public="-//OASIS//DTD DocBook XML V4.5//EN" doctype-system="http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd"/>
+ <!-- adapt ISO date created by keyword expansion -->
+ <xsl:template match="refentryinfo/date | revision[1]/date">
+ <date>
+ <xsl:value-of select="my:extract-date(.)"/>
+ </date>
+ </xsl:template>
+
<!-- add date to refmeta element -->
<xsl:template match="refmeta">
<xsl:copy>
<xsl:copy-of select="*"/>
- <xsl:variable name="date" select="date:date()"/>
- <xsl:if test="$date">
- <refmiscinfo class="date">
- <xsl:value-of select="substring($date, 1, 10)"/>
- </refmiscinfo>
- </xsl:if>
+ <refmiscinfo class="date">
+ <xsl:value-of select="my:extract-date(../refentryinfo/date)"/>
+ </refmiscinfo>
</xsl:copy>
</xsl:template>
+ <func:function name="my:extract-date">
+ <xsl:param name="isodate"/>
+ <xsl:variable name="shortdate" select="substring($isodate, 1, 10)"/>
+ <xsl:choose>
+ <xsl:when test="translate($shortdate, '0123456789', '##########') = '####-##-##'">
+ <!-- use date part of expanded keyword -->
+ <func:result select="$shortdate"/>
+ </xsl:when>
+ <xsl:otherwise>
+ <!-- use current date as fallback -->
+ <func:result select="substring(date:date(), 1, 10)"/>
+ </xsl:otherwise>
+ </xsl:choose>
+ </func:function>
+
<!-- copy everything else unchanged -->
<xsl:template match="@*|node()">
<xsl:copy>