aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorRalph Amissah <ralph@amissah.com>2011-12-08 21:32:36 -0500
committerRalph Amissah <ralph@amissah.com>2011-12-08 21:32:36 -0500
commit76a73915e1b03a8fb8a6ef483b2c50093c8f06a5 (patch)
tree92425fd570f9314abb0e1bd69a10099c2bd43bf6
parentdebian/changelog (3.1.6-1) (diff)
parentv3: documentation, manpage & html (man2html) (diff)
Merge commit 'sisu_3.1.7' into debian/sid
-rw-r--r--data/doc/sisu/CHANGELOG_v332
-rw-r--r--data/doc/sisu/html/sisu.1.html213
-rw-r--r--data/doc/sisu/markup-samples/sisu_manual/sisu_commands.sst7
-rw-r--r--data/doc/sisu/markup-samples/sisu_manual/sisu_content_directories.ssi138
-rw-r--r--data/doc/sisu/markup-samples/sisu_manual/sisu_markup.sst8
-rw-r--r--data/sisu/v3/v/version.yml6
-rw-r--r--lib/sisu/v3/dal_doc_str.rb3
-rw-r--r--lib/sisu/v3/dal_syntax.rb5
-rw-r--r--lib/sisu/v3/epub_format.rb1
-rw-r--r--lib/sisu/v3/sysenv.rb4
-rw-r--r--lib/sisu/v3/texpdf.rb196
-rw-r--r--lib/sisu/v3/texpdf_format.rb125
-rw-r--r--man/man1/sisu.1112
13 files changed, 611 insertions, 239 deletions
diff --git a/data/doc/sisu/CHANGELOG_v3 b/data/doc/sisu/CHANGELOG_v3
index 6153ae16..8f9c2cea 100644
--- a/data/doc/sisu/CHANGELOG_v3
+++ b/data/doc/sisu/CHANGELOG_v3
@@ -13,20 +13,44 @@ Reverse Chronological:
%% Development branch UNSTABLE
v3 branch once stable will supersede & replace current stable v2 branch
+%% 3.1.7.orig.tar.xz (2011-12-08:49/4)
+http://git.sisudoc.org/?p=code/sisu.git;a=log;h=refs/tags/sisu_3.1.7
+http://git.sisudoc.org/?p=code/sisu.git;a=log;h=refs/tags/debian/sisu_3.1.7-1
+http://www.jus.uio.no/sisu/pkg/src/sisu_3.1.7.orig.tar.xz
+ sisu_3.1.7.orig.tar.xz
+ sisu_3.1.7-1.dsc
+ sisu_3.1.7-1.debian.tar.gz
+
+ * dal, codeblocks
+ * internal document identifier tags removed, consider
+ * markup of greater than & less than, fix (but watch)
+
+ * epub, css, codeblock, grey box
+
+ * texpdf, use package listings for box around codeblocks (retain boites
+ option)
+
+ * sysenv, external images directory copied only if it exists
+
+ * documentation, add --configure & use ascii characters for dir tree
+ correction of a few typos
+ * manpage
+ * html
+
%% 3.1.6.orig.tar.xz (2011-12-02:48/5)
http://git.sisudoc.org/?p=code/sisu.git;a=log;h=refs/tags/sisu_3.1.6
http://git.sisudoc.org/?p=code/sisu.git;a=log;h=refs/tags/debian/sisu_3.1.6-1
http://www.jus.uio.no/sisu/pkg/src/sisu_3.1.6.orig.tar.xz
- sisu_3.1.6.orig.tar.xz
- sisu_3.1.6-1.dsc
- sisu_3.1.6-1.debian.tar.gz
+ c50fd6eda712ae090e9b16242d468aab8b8ecd6c1ee9b2798b317f9eb40b529c 1647512 sisu_3.1.6.orig.tar.xz
+ d5a165144d55d553e62c7fcee3b881d6525f238cc5184f284955307a955efb56 1382 sisu_3.1.6-1.dsc
+ 8e088fc702158a233d870e1b55928063d8e52b5931a51b5143b674052335793e 290179 sisu_3.1.6-1.debian.tar.gz
* dal, codeblocks, start flush left (no buffer spaces at start of line) to
allow cut & paste [requested by chals irc.oftc] (fixed issue, numbering of
(flush left) codeblocks; preliminary tests suggest this should be ok), need
distinguishing marks for plaintext (& fix grey background in xetex/pdfs)
- * texpdf, use boites for box round codeblocks, use and adapt 'boitecoloriee'
+ * texpdf, use boites for box around codeblocks, use and adapt 'boitecoloriee'
(found in boites_examples.sty)
* in boitebox as setup normal tex hardspaces at start of line are removed,
hack required to fix
diff --git a/data/doc/sisu/html/sisu.1.html b/data/doc/sisu/html/sisu.1.html
index e973641b..106502ee 100644
--- a/data/doc/sisu/html/sisu.1.html
+++ b/data/doc/sisu/html/sisu.1.html
@@ -200,6 +200,16 @@ colour default is set to &rsquo;false&rsquo; or is undefined screen output will
colour). Alias -c
<p> </dd>
+<dt><b>--configure</b> </dt>
+<dd>configure/initialise shared output directory
+files initialize shared output directory (config files such as css and
+dtd files are not updated if they already exist unless modifier is used).
+The equivalent of: -C --init-site configure/initialise site, more extensive
+than -C on its own, shared output directory files/force update, existing
+shared output config files such as css and dtd files are updated if -CC
+is used.
+<p> </dd>
+
<dt><b>--concordance [filename/wildcard]</b> </dt>
<dd>produces concordance (wordmap)
a rudimentary index of all the words in a document. (Concordance files are
@@ -207,10 +217,10 @@ not generated for documents of over 260,000 words unless this limit is
increased in the file sisurc.yml). Alias -w
<p> </dd>
-<dt><b>-C [--init-site]</b> </dt>
-<dd>configure/initialise
-shared output directory files initialize shared output directory (config
-files such as css and dtd files are not updated if they already exist unless
+<dt><b>-C</b> </dt>
+<dd>configure/initialise shared
+output directory files initialize shared output directory (config files
+such as css and dtd files are not updated if they already exist unless
modifier is used). -C --init-site configure/initialise site more extensive than
-C on its own, shared output directory files/force update, existing shared
output config files such as css and dtd files are updated if this modifier
@@ -218,82 +228,75 @@ is used.
<p> </dd>
<dt><b>-CC</b> </dt>
-<dd>configure/initialise shared output directory files initialize
-shared output directory (config files such as css and dtd files are not
-updated if they already exist unless modifier is used). The equivalent of:
--C --init-site configure/initialise site, more extensive than -C on its own,
-shared output directory files/force update, existing shared output config
-files such as css and dtd files are updated if -CC is used.
+<dd>see --configure
+<p> </dd>
+
+<dt><b>-c [filename/wildcard]</b> </dt>
+<dd>see --color-toggle
<p> </dd>
-<dt><b>-c [filename/wildcard]</b>
+<dt><b>--dal [filename/wildcard/url]</b>
</dt>
-<dd>
-<p>see --color-toggle
+<dd>assumed for most other flags, creates new intermediate files for processing
+(document abstraction) that is used in all subsequent processing of other
+output. This step is assumed for most processing flags. To skip it see -n.
+
+<p>Alias -m
<p> </dd>
-<dt><b>--dal [filename/wildcard/url]</b> </dt>
-<dd>assumed for most other flags,
-creates new intermediate files for processing (document abstraction) that
-is used in all subsequent processing of other output. This step is assumed
-for most processing flags. To skip it see -n. Alias -m
+<dt><b>--delete [filename/wildcard]</b> </dt>
+<dd>see --zap
<p> </dd>
-<dt><b>--delete [filename/wildcard]</b>
+<dt><b>-D [instruction] [filename]</b>
</dt>
<dd>
-<p>see --zap
+<p>see --pg
<p> </dd>
-<dt><b>-D [instruction] [filename]</b> </dt>
-<dd>see --pg
-<p> </dd>
-
-<dt><b>-d [--db-[database &nbsp;type &nbsp;(sqlite|pg)]]
---[instruction] [filename]</b> </dt>
+<dt><b>-d [--db-[database &nbsp;type &nbsp;(sqlite|pg)]] --[instruction] [filename]</b> </dt>
<dd>see --sqlite
+
<p> </dd>
<dt><b>--epub [filename/wildcard]</b> </dt>
-<dd>produces
-an epub document, [sisu &nbsp;version &nbsp;&gt;=2 &nbsp;] (filename.epub). Alias -e
+<dd>produces an epub document, [sisu &nbsp;version &nbsp;&gt;=2 &nbsp;]
+(filename.epub). Alias -e
<p> </dd>
-<dt><b>-e [filename/wildcard]</b>
-</dt>
-<dd>
-<p>see --epub
+<dt><b>-e [filename/wildcard]</b> </dt>
+<dd>see --epub
<p> </dd>
-<dt><b>--find [optional &nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b> </dt>
-<dd>without match string,
-glob all .sst .ssm files in directory (including language subdirectories).
-With match string, find files that match given string in directory (including
-language subdirectories). Alias -f, --glob, -G
+<dt><b>--find [optional
+&nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b> </dt>
+<dd>without match string, glob all .sst .ssm files in
+directory (including language subdirectories). With match string, find files
+that match given string in directory (including language subdirectories).
+Alias -f, --glob, -G
<p> </dd>
<dt><b>-F [--webserv=webrick]</b> </dt>
<dd>see --sample-search-form
-
<p> </dd>
-<dt><b>-f [optional &nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b> </dt>
+<dt><b>-f [optional
+&nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b> </dt>
<dd>see --find
<p> </dd>
-<dt><b>--git [filename/wildcard]</b>
-</dt>
-<dd>produces or updates markup source file structure in a git repo (experimental
-and subject to change). Alias -g
+<dt><b>--git [filename/wildcard]</b> </dt>
+<dd>produces or
+updates markup source file structure in a git repo (experimental and subject
+to change). Alias -g
<p> </dd>
-<dt><b>--glob [optional &nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b>
-</dt>
-<dd>
-<p>see --find
+<dt><b>--glob [optional &nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b> </dt>
+<dd>see --find
<p> </dd>
-<dt><b>-G [optional &nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b> </dt>
+<dt><b>-G
+[optional &nbsp;string &nbsp;part &nbsp;of &nbsp;filename]</b> </dt>
<dd>see --find
<p> </dd>
@@ -304,19 +307,19 @@ and subject to change). Alias -g
<p> </dd>
<dt><b>--harvest *.ss[tm]</b> </dt>
-<dd>makes two lists of sisu output based on the sisu
-markup documents in a directory: list of author and authors works (year
-and titles), and; list by topic with titles and author. Makes use of header
-metadata fields (author, title, date, topic_register). Can be used with
-maintenance (-M) and remote placement (-R) flags.
+<dd>makes two lists of sisu output based on the sisu markup
+documents in a directory: list of author and authors works (year and titles),
+and; list by topic with titles and author. Makes use of header metadata
+fields (author, title, date, topic_register). Can be used with maintenance
+(-M) and remote placement (-R) flags.
<p> </dd>
<dt><b>--help [topic]</b> </dt>
-<dd>provides help
-on the selected topic, where topics (keywords) include: list, (com)mands,
-short(cuts), (mod)ifiers, (env)ironment, markup, syntax, headers, headings,
-endnotes, tables, example, customise, skin, (dir)ectories, path, (lang)uage,
-db, install, setup, (conf)igure, convert, termsheet, search, sql, features,
+<dd>provides help on the selected
+topic, where topics (keywords) include: list, (com)mands, short(cuts),
+(mod)ifiers, (env)ironment, markup, syntax, headers, headings, endnotes,
+tables, example, customise, skin, (dir)ectories, path, (lang)uage, db,
+install, setup, (conf)igure, convert, termsheet, search, sql, features,
<p>license
<p> </dd>
@@ -676,7 +679,8 @@ deep document structure, in the nature of dom. Alias -X
<p> </dd>
<dt><b>-Y [filename/wildcard]</b> </dt>
-<dd>produces a short sitemap entry for the document, based on html output and the sisu_manifest.
+<dd>produces
+a short sitemap entry for the document, based on html output and the sisu_manifest.
--sitemaps generates/updates the sitemap index of existing sitemaps. (Experimental,
[g,y,m &nbsp;announcement &nbsp;this &nbsp;week])
<p> </dd>
@@ -1486,7 +1490,7 @@ normal text &lt;<a href='http://www.sisudoc.org/'>http://www.sisudoc.org/</a>
<b>markup example:</b>
<p> <br>
<pre> normal text _http://www.sisudoc.org/ continues
- deb http://www.jus.uio.no/sisu/archive unstable main non-free
+ deb _http://www.jus.uio.no/sisu/archive unstable main non-free
</pre>
<p> <br>
<b>resulting output:</b>
@@ -1555,6 +1559,13 @@ Debian and Ruby" }http://www.sisudoc.org/
{~^ ruby_logo.png "Ruby" }http://www.ruby-lang.org/en/
+markup example:
+ { tux.png 64x80 }image
+ % various url linked images
+ {tux.png 64x80 "a better way" }http://www.sisudoc.org/
+ {GnuDebianLinuxRubyBetterWay.png 100x101 "Way Better - with Gnu/Linux,
+Debian and Ruby" }http://www.sisudoc.org/
+ {~^ ruby_logo.png "Ruby" }http://www.ruby-lang.org/en/
</pre>
<p> <br>
<b>resulting output:</b>
@@ -1634,8 +1645,8 @@ Tables</a></h2>
320,000| 630,000
No. of articles, all languages | 25| 19,000| 138,000| 490,000|
862,000|1,600,000
- \* Contributed at least ten times; \** at least 5 times in last month;
-\*\** more than 100 times in last month.
+ * Contributed at least ten times; ** at least 5 times in last month;
+*** more than 100 times in last month.
</pre>
<p> <br>
<b>resulting output:</b>
@@ -2148,7 +2159,7 @@ If multiple sub-terms appear under one paragraph, they are separated under
the main term heading from each other by a pipe symbol.
<p> <br>
<pre> Paragraph containing main term, second term and sub-term.
- ={Main term:sub-term+1|second sub-term
+ ={Main term:sub-term+1|second sub-term}
A paragraph that continues discussion of the first sub-term
</pre>
<p> <br>
@@ -2773,6 +2784,7 @@ CSS file that is looked for in a skin.[^18]
structures of which there are 3 alternatives.
<p>
<h2><a name='sect66' href='#toc66'>17.1 Document Source Directory</a></h2>
+
<p>
<br>
The document source directory is the directory in which sisu processing
@@ -2860,6 +2872,34 @@ by filetype.
<p> <br>
output_dir_structure_by: language
<p> <br>
+<pre> |-- en
+ |-- epub
+ |-- hashes
+ |-- html
+ | |-- viral_spiral.david_bollier
+ | |-- manifest
+ | |-- qrcode
+ | |-- odt
+ | |-- pdf
+ | |-- sitemaps
+ | |-- txt
+ | |-- xhtml
+ | &lsquo;-- xml
+ |-- po4a
+ | &lsquo;-- live-manual
+ | |-- po
+ | |-- fr
+ | &lsquo;-- pot
+ &lsquo;-- _sisu
+ |-- css
+ |-- image
+ |-- image_sys -&gt; ../../_sisu/image_sys
+ &lsquo;-- xml
+ |-- rnc
+ |-- rng
+ &lsquo;-- xsd
+</pre>
+<p> <br>
#by: language subject_dir/en/manifest/filename.html
<p>
<h2><a name='sect72' href='#toc72'>17.2.4 by Filetype</a></h2>
@@ -2874,6 +2914,33 @@ given a language extension.
<p> <br>
output_dir_structure_by: filetype
<p> <br>
+<pre> |-- epub
+ |-- hashes
+ |-- html
+ |-- viral_spiral.david_bollier
+ |-- manifest
+ |-- qrcode
+ |-- odt
+ |-- pdf
+ |-- po4a
+ |-- live-manual
+ | |-- po
+ | |-- fr
+ | &lsquo;-- pot
+ |-- _sisu
+ | |-- css
+ | |-- image
+ | |-- image_sys -&gt; ../../_sisu/image_sys
+ | &lsquo;-- xml
+ | |-- rnc
+ | |-- rng
+ | &lsquo;-- xsd
+ |-- sitemaps
+ |-- txt
+ |-- xhtml
+ &lsquo;-- xml
+</pre>
+<p> <br>
#by: filetype subject_dir/html/filename/manifest.en.html
<p>
<h2><a name='sect73' href='#toc73'>17.2.5 by Filename</a></h2>
@@ -2888,6 +2955,26 @@ file (the different filetypes) in a common directory.
<p> <br>
output_dir_structure_by: filename
<p> <br>
+<pre> |-- epub
+ |-- po4a
+ |-- live-manual
+ | |-- po
+ | |-- fr
+ | &lsquo;-- pot
+ |-- _sisu
+ | |-- css
+ | |-- image
+ | |-- image_sys -&gt; ../../_sisu/image_sys
+ | &lsquo;-- xml
+ | |-- rnc
+ | |-- rng
+ | &lsquo;-- xsd
+ |-- sitemaps
+ |-- src
+ |-- pod
+ &lsquo;-- viral_spiral.david_bollier
+</pre>
+<p> <br>
#by: filename subject_dir/filename/manifest.en.html
<p>
<h2><a name='sect74' href='#toc74'>17.2.6 Remote Directories</a></h2>
diff --git a/data/doc/sisu/markup-samples/sisu_manual/sisu_commands.sst b/data/doc/sisu/markup-samples/sisu_manual/sisu_commands.sst
index b24abde7..201b927e 100644
--- a/data/doc/sisu/markup-samples/sisu_manual/sisu_commands.sst
+++ b/data/doc/sisu/markup-samples/sisu_manual/sisu_commands.sst
@@ -66,14 +66,17 @@ see --xhtml
!_ --color-toggle [filename/wildcard] \\
screen toggle ansi screen colour on or off depending on default set (unless -c flag is used: if sisurc colour default is set to 'true', output to screen will be with colour, if sisurc colour default is set to 'false' or is undefined screen output will be without colour). Alias -c
+!_ --configure \\
+configure/initialise shared output directory files initialize shared output directory (config files such as css and dtd files are not updated if they already exist unless modifier is used). The equivalent of: -C --init-site configure/initialise site, more extensive than -C on its own, shared output directory files/force update, existing shared output config files such as css and dtd files are updated if -CC is used.
+
!_ --concordance [filename/wildcard] \\
produces concordance (wordmap) a rudimentary index of all the words in a document. (Concordance files are not generated for documents of over 260,000 words unless this limit is increased in the file sisurc.yml). Alias -w
-!_ -C [--init-site] \\
+!_ -C \\
configure/initialise shared output directory files initialize shared output directory (config files such as css and dtd files are not updated if they already exist unless modifier is used). -C --init-site configure/initialise site more extensive than -C on its own, shared output directory files/force update, existing shared output config files such as css and dtd files are updated if this modifier is used.
!_ -CC \\
-configure/initialise shared output directory files initialize shared output directory (config files such as css and dtd files are not updated if they already exist unless modifier is used). The equivalent of: -C --init-site configure/initialise site, more extensive than -C on its own, shared output directory files/force update, existing shared output config files such as css and dtd files are updated if -CC is used.
+see --configure
!_ -c [filename/wildcard] \\
see --color-toggle
diff --git a/data/doc/sisu/markup-samples/sisu_manual/sisu_content_directories.ssi b/data/doc/sisu/markup-samples/sisu_manual/sisu_content_directories.ssi
index b7e09434..5784c03d 100644
--- a/data/doc/sisu/markup-samples/sisu_manual/sisu_content_directories.ssi
+++ b/data/doc/sisu/markup-samples/sisu_manual/sisu_content_directories.ssi
@@ -95,32 +95,32 @@ output_dir_structure_by: language
code{
- ├── en
- │   ├── epub
- │   ├── hashes
- │   ├── html
- │   │   └── viral_spiral.david_bollier
- │   ├── manifest
- │   │   └── qrcode
- │   ├── odt
- │   ├── pdf
- │   ├── sitemaps
- │   ├── txt
- │   ├── xhtml
- │   └── xml
- ├── po4a
- │   └── live-manual
- │   ├── po
- │   │   └── fr
- │   └── pot
- └── _sisu
- ├── css
- ├── image
- ├── image_sys -> ../../_sisu/image_sys
- └── xml
- ├── rnc
- ├── rng
- └── xsd
+ |-- en
+ |-- epub
+ |-- hashes
+ |-- html
+ | |-- viral_spiral.david_bollier
+ | |-- manifest
+ | |-- qrcode
+ | |-- odt
+ | |-- pdf
+ | |-- sitemaps
+ | |-- txt
+ | |-- xhtml
+ | `-- xml
+ |-- po4a
+ | `-- live-manual
+ | |-- po
+ | |-- fr
+ | `-- pot
+ `-- _sisu
+ |-- css
+ |-- image
+ |-- image_sys -> ../../_sisu/image_sys
+ `-- xml
+ |-- rnc
+ |-- rng
+ `-- xsd
}code
@@ -139,31 +139,31 @@ output_dir_structure_by: filetype
code{
- ├── epub
- ├── hashes
- ├── html
- │   └── viral_spiral.david_bollier
- ├── manifest
- │   └── qrcode
- ├── odt
- ├── pdf
- ├── po4a
- │   └── live-manual
- │   ├── po
- │   │   └── fr
- │   └── pot
- ├── _sisu
- │   ├── css
- │   ├── image
- │   ├── image_sys -> ../../_sisu/image_sys
- │   └── xml
- │   ├── rnc
- │   ├── rng
- │   └── xsd
- ├── sitemaps
- ├── txt
- ├── xhtml
- └── xml
+ |-- epub
+ |-- hashes
+ |-- html
+ |-- viral_spiral.david_bollier
+ |-- manifest
+ |-- qrcode
+ |-- odt
+ |-- pdf
+ |-- po4a
+ |-- live-manual
+ | |-- po
+ | |-- fr
+ | `-- pot
+ |-- _sisu
+ | |-- css
+ | |-- image
+ | |-- image_sys -> ../../_sisu/image_sys
+ | `-- xml
+ | |-- rnc
+ | |-- rng
+ | `-- xsd
+ |-- sitemaps
+ |-- txt
+ |-- xhtml
+ `-- xml
}code
@@ -182,24 +182,24 @@ output_dir_structure_by: filename
code{
- ├── epub
- ├── po4a
- │   └── live-manual
- │   ├── po
- │   │   └── fr
- │   └── pot
- ├── _sisu
- │   ├── css
- │   ├── image
- │   ├── image_sys -> ../../_sisu/image_sys
- │   └── xml
- │   ├── rnc
- │   ├── rng
- │   └── xsd
- ├── sitemaps
- ├── src
- │   └── pod
- └── viral_spiral.david_bollier
+ |-- epub
+ |-- po4a
+ |-- live-manual
+ | |-- po
+ | |-- fr
+ | `-- pot
+ |-- _sisu
+ | |-- css
+ | |-- image
+ | |-- image_sys -> ../../_sisu/image_sys
+ | `-- xml
+ | |-- rnc
+ | |-- rng
+ | `-- xsd
+ |-- sitemaps
+ |-- src
+ |-- pod
+ `-- viral_spiral.david_bollier
}code
diff --git a/data/doc/sisu/markup-samples/sisu_manual/sisu_markup.sst b/data/doc/sisu/markup-samples/sisu_manual/sisu_markup.sst
index 62cf013e..000d3e4c 100644
--- a/data/doc/sisu/markup-samples/sisu_manual/sisu_markup.sst
+++ b/data/doc/sisu/markup-samples/sisu_manual/sisu_markup.sst
@@ -567,7 +567,7 @@ code{
normal text _http://www.sisudoc.org/ continues
-deb http://www.jus.uio.no/sisu/archive unstable main non-free
+deb _http://www.jus.uio.no/sisu/archive unstable main non-free
}code
@@ -765,7 +765,7 @@ Very active contributors*** | 0| 31| 190| 692| 1,6
No. of English language articles| 25| 16,000| 101,000| 190,000| 320,000| 630,000
No. of articles, all languages | 25| 19,000| 138,000| 490,000| 862,000|1,600,000
-\* Contributed at least ten times; \** at least 5 times in last month; \*\** more than 100 times in last month.
+* Contributed at least ten times; ** at least 5 times in last month; *** more than 100 times in last month.
}code
@@ -782,7 +782,7 @@ Very active contributors*** | 0| 31| 190| 692| 1,6
No. of English language articles| 25| 16,000| 101,000| 190,000| 320,000| 630,000
No. of articles, all languages | 25| 19,000| 138,000| 490,000| 862,000|1,600,000
-\* Contributed at least ten times; \** at least 5 times in last month; \*\** more than 100 times in last month.
+* Contributed at least ten times; ** at least 5 times in last month; *** more than 100 times in last month.
% code{
@@ -1239,7 +1239,7 @@ If multiple sub-terms appear under one paragraph, they are separated under the m
code{
Paragraph containing main term, second term and sub-term.
- ={Main term:sub-term+1|second sub-term
+ ={Main term:sub-term+1|second sub-term}
A paragraph that continues discussion of the first sub-term
diff --git a/data/sisu/v3/v/version.yml b/data/sisu/v3/v/version.yml
index b4b0fb8c..c6f6a029 100644
--- a/data/sisu/v3/v/version.yml
+++ b/data/sisu/v3/v/version.yml
@@ -1,5 +1,5 @@
---
-:version: 3.1.6
-:date_stamp: 2011w48/5
-:date: "2011-12-02"
+:version: 3.1.7
+:date_stamp: 2011w49/4
+:date: "2011-12-08"
:project: SiSU
diff --git a/lib/sisu/v3/dal_doc_str.rb b/lib/sisu/v3/dal_doc_str.rb
index 2bf0305e..91110b44 100644
--- a/lib/sisu/v3/dal_doc_str.rb
+++ b/lib/sisu/v3/dal_doc_str.rb
@@ -376,7 +376,8 @@ module SiSU_document_structure_extract
if @@flag['code']
if t_o =~/^\}code/
@@flag['code']=false
- obj,tags=extract_tags(@tuned_code.join("\n"))
+ obj=@tuned_code.join("\n")
+ tags=[]
h={ obj: obj, tags: tags, number_: @codeblock_numbered }
t_o=SiSU_document_structure::Object_block_txt.new.code(h)
@tuned_code=[]
diff --git a/lib/sisu/v3/dal_syntax.rb b/lib/sisu/v3/dal_syntax.rb
index 6d56e4aa..b887904e 100644
--- a/lib/sisu/v3/dal_syntax.rb
+++ b/lib/sisu/v3/dal_syntax.rb
@@ -332,7 +332,7 @@ module SiSU_Syntax
and defined? @md.creator \
and @md.creator
if dob.is =='heading'
- dob.obj.gsub!(/^\s*@title\s*$/,@md.title.full) if dob.lv =~/1/ #
+ dob.obj.gsub!(/^\s*@title\s*$/,@md.title.full) if dob.lv =~/1/
if dob.lv =~/[23]/ \
and defined? @md.creator.author \
and @md.creator.author
@@ -432,9 +432,6 @@ module SiSU_Syntax
dob=fontface(dob)
elsif dob.is =='code'
dob.obj.gsub!(/#{Mx[:meta_o]}(\S+?)#{Mx[:meta_c]}\s*/,'@\1: ')
- dob.obj.gsub!(/([<>])/,'_\1')
- dob.obj.gsub!(/_<:(\S+?)_>/,'<:\1>') #convert <:\S+> back, clumsy
- dob.obj.gsub!(/_<(br(?: \/)?)_>/,'<\1>') #convert <br> <br /> back, clumsy
dob.obj.gsub!(/(^|#{Mx[:gl_c]}|\s)&lt;(br(?: \/)?)&gt;([\s,.]|$)/,'\1<\2>\3') #convert <br> <br /> back, clumsy
if dob.number_
codeline=[]
diff --git a/lib/sisu/v3/epub_format.rb b/lib/sisu/v3/epub_format.rb
index 42570dd0..9d55d1d9 100644
--- a/lib/sisu/v3/epub_format.rb
+++ b/lib/sisu/v3/epub_format.rb
@@ -674,6 +674,7 @@ module SiSU_EPUB_Format
font-family: inconsolata, andale mono, courier new, courier, monospace;
font-size: 90%;
text-align: left;
+ background-color: #eeeeee;
}
p.caption {
diff --git a/lib/sisu/v3/sysenv.rb b/lib/sisu/v3/sysenv.rb
index 0584d85f..953c8eec 100644
--- a/lib/sisu/v3/sysenv.rb
+++ b/lib/sisu/v3/sysenv.rb
@@ -5207,7 +5207,9 @@ WOK
def cp_external_images
src="#{@env.processing_path.processing}/external_document/image"
dest="#{@env.path.webserv}/#{@env.path.stub_pwd}/_sisu/image_external"
- cp_images(src,dest)
+ if FileTest.directory?(src)
+ cp_images(src,dest)
+ end
end
def cp_webserver_images
src=@env.path.image_source
diff --git a/lib/sisu/v3/texpdf.rb b/lib/sisu/v3/texpdf.rb
index d36344cd..2b9e1087 100644
--- a/lib/sisu/v3/texpdf.rb
+++ b/lib/sisu/v3/texpdf.rb
@@ -294,6 +294,7 @@ module SiSU_TeX
true
else false
end
+ @codeblock_box='listings' #alternative 'boites'
end
def songsheet
begin
@@ -352,7 +353,11 @@ module SiSU_TeX
dob.tmp=SiSU_TeX_Pdf::Format_text_object.new(@md,dob.tmp).url_str_internal(dob.tmp)
end
elsif dob.is =='code'
- dob.tmp=SiSU_TeX_Pdf::Special_characters.new(@md,dob.tmp).special_characters_code
+ dob.tmp=if @codeblock_box=='listings'
+ dob.tmp
+ else
+ SiSU_TeX_Pdf::Special_characters.new(@md,dob.tmp).special_characters_code
+ end
elsif dob.is =='break'
if dob.obj==Mx[:br_page]; dob.tmp='\newpage'
elsif dob.obj==Mx[:br_page_new]; dob.tmp='\clearpage'
@@ -408,6 +413,53 @@ module SiSU_TeX
def enclose(dob)
dob
end
+ def box_boites(dob,ocn)
+ sp_char=SiSU_TeX_Pdf::Special_characters.new(@md,dob.tmp,dob.is)
+ dob.tmp=sp_char.special_characters_safe
+ dob.tmp.gsub!(/(#{Mx[:nbsp]})/m,'{\color{mywhite}\1}')
+ #dob.tmp.gsub!(/#{Mx[:nbsp]}/m,'{~}') # dob.tmp.gsub!(/#{Mx[:nbsp]}\s*/m,'{~}')
+ dob.tmp.gsub!(/#{Mx[:vline]}/m,'\vline')
+ dob.tmp.gsub!(/ \\( |#{Mx[:br_nl]})/,' {\textbackslash}\1')
+ dob.tmp.gsub!(/#{Mx[:br_nl]}\s*\Z/m,'')
+ dob.tmp.gsub!(/#{Mx[:br_nl]}{2}/,'\newline \\\\\\ ')
+ dob.tmp.gsub!(/#{Mx[:br_nl]}/,' \\\\\\ ')
+ dob.tmp.gsub!(/\n\n\n/m," \\newline\n\n")
+ ocn=SiSU_TeX_Pdf::Format_text_object.new(@md).ocn_display(dob)
+ dob.tmp = ocn \
+ + @tex_ml.paraskip_small \
+ + '\begin{Codeblock}' \
+ + '\begin{codeblockboitebox} \hardspace \newline ' \
+ + dob.tmp \
+ + '\end{codeblockboitebox}' \
+ + '\end{Codeblock}' \
+ + "\n" \
+ + @tex_ml.paraskip_normal
+ dob
+ end
+ def box_listings(dob,ocn)
+ sp_char=SiSU_TeX_Pdf::Special_characters.new(@md,dob.tmp,dob.is)
+ dob.tmp=sp_char.characters_code_listings
+ dob.tmp.gsub!(/^\s+/m,'') #bug, fix earlier, should be made unecessary
+ dob.tmp.gsub!(/#{Mx[:nbsp]}/m,' ')
+ dob.tmp.gsub!(/#{Mx[:vline]}/m,'|')
+ dob.tmp.gsub!(/#{Mx[:br_nl]}(?:\s?\n)?/m,"\n")
+ dob.tmp.gsub!(/\n\n\n/m," \n\n")
+ ocn=SiSU_TeX_Pdf::Format_text_object.new(@md).ocn_display(dob)
+ dob.tmp = ocn \
+ + @tex_ml.paraskip_small \
+ + '\begin{Codeblock}' \
+ + "\n" \
+ + '\begin{lstlisting} ' \
+ + "\n" \
+ + dob.tmp \
+ + "\n" \
+ + '\end{lstlisting} ' \
+ + "\n" \
+ + '\end{Codeblock}' \
+ + "\n" \
+ + @tex_ml.paraskip_normal
+ dob
+ end
def markup_common(dob)
tex_f=nil
txt_obj={ dal: dob }
@@ -430,7 +482,7 @@ module SiSU_TeX
+ '\\end{footnotesize}' \
+ "\n" \
+ @tex_ml.paraskip_normal
- elsif dob.is=~/verse/
+ elsif dob.is=~/verse/
ocn \
+ @tex_ml.paraskip_tiny \
+ "\n" \
@@ -444,26 +496,13 @@ module SiSU_TeX
end
dob
when /code/
- sp_char=SiSU_TeX_Pdf::Special_characters.new(@md,dob.tmp,dob.is)
- dob.tmp=sp_char.special_characters_safe
- dob.tmp.gsub!(/(#{Mx[:nbsp]})/m,'{\color{mywhite}\1}')
- #dob.tmp.gsub!(/#{Mx[:nbsp]}/m,'{~}') # dob.tmp.gsub!(/#{Mx[:nbsp]}\s*/m,'{~}')
- dob.tmp.gsub!(/#{Mx[:vline]}/m,'\vline')
- dob.tmp.gsub!(/ \\( |#{Mx[:br_nl]})/,' {\textbackslash}\1')
- dob.tmp.gsub!(/#{Mx[:br_nl]}\s*\Z/m,'')
- dob.tmp.gsub!(/#{Mx[:br_nl]}{2}/,'\newline \\\\\\ ')
- dob.tmp.gsub!(/#{Mx[:br_nl]}/,' \\\\\\ ')
- dob.tmp.gsub!(/\n\n\n/m," \\newline\n\n")
- ocn=SiSU_TeX_Pdf::Format_text_object.new(@md).ocn_display(dob)
- dob.tmp = ocn \
- + @tex_ml.paraskip_small \
- + '\begin{Codeblock}' \
- + '\begin{codeblockboitebox} \hardspace \newline ' \
- + dob.tmp \
- + '\end{codeblockboitebox}' \
- + '\end{Codeblock}' \
- + "\n" \
- + @tex_ml.paraskip_normal
+ dob=if @codeblock_box == 'listings'
+ box_listings(dob,ocn)
+ elsif @codeblock_box == 'boites'
+ box_boites(dob,ocn)
+ else
+ box_boites(dob,ocn)
+ end
dob
else 'error' #should never occur
end
@@ -533,7 +572,7 @@ module SiSU_TeX
dob=enclose(dob) unless dob.tmp =~/^$/
end
else
- dob.tmp.strip!
+ dob.tmp.strip! unless dob.is=='code'
dob=enclose(dob) unless dob.tmp =~/^$/
end
if dob.class==String
@@ -543,22 +582,83 @@ module SiSU_TeX
dob
end
if dob.tmp =~/(?:#{Mx[:url_o]}\S+?#{Mx[:url_c]}|image\b)/m \
- and dob.is !='code'
+ && dob.is !='code'
dob=SiSU_TeX_Pdf::Bare_urls.new(@md,dob).bare_urls
tst=SiSU_TeX_Pdf::Format_text_object.new(@md,dob)
dob=tst.urls_txt_and_images
dob
elsif dob.tmp =~/https?:\/\/\S+\b/m \
- and dob.is =='code'
+ && dob.is =='code' \
+ && @codeblock_box !='listings'
dob=SiSU_TeX_Pdf::Bare_urls.new(@md,dob).bare_urls_in_code
dob
end
- if dob.class !=Hash and dob.tmp =~/#{Mx[:lnk_o]}.+?#{Mx[:lnk_c]}image\b/ \
- and dob.is !='code'
+ if dob.class !=Hash \
+ && dob.tmp =~/#{Mx[:lnk_o]}.+?#{Mx[:lnk_c]}image\b/ \
+ && dob.is !='code'
tst=SiSU_TeX_Pdf::Format_text_object.new(@md,dob)
end
dob
end
+ def tex_box_listings
+ <<WOK
+\\definecolor{listinggray}{gray}{0.9}
+\\definecolor{lbcolor}{rgb}{0.9,0.9,0.9}
+\\lstset{
+ backgroundcolor=\\color{lbcolor},
+ tabsize=4,
+ rulecolor=,
+ language=,
+ basicstyle=\\scriptsize,
+ upquote=true,
+ aboveskip={1.5\\baselineskip},
+ columns=fixed,
+ showstringspaces=false,
+ extendedchars=true,
+ breaklines=true,
+ prebreak = \\raisebox{0ex}[0ex][0ex]{\\ensuremath{\\hookleftarrow}},
+ frame=single,
+ showtabs=false,
+ showspaces=false,
+ showstringspaces=false,
+ identifierstyle=\\ttfamily,
+ keywordstyle=\\color[rgb]{0,0,1},
+ commentstyle=\\color[rgb]{0.133,0.545,0.133},
+ stringstyle=\\color[rgb]{0.627,0.126,0.941},
+}
+WOK
+ end
+ def tex_box_boites
+ <<WOK
+\\def\\codeblockboitebox{%
+ \\def\\bkvz@before@breakbox{\\ifhmode\\par\\fi\\vskip\\breakboxskip\\relax}%
+ \\def\\bkvz@set@linewidth{\\advance\\linewidth -2\\fboxrule
+ \\advance\\linewidth -2\\fboxsep} %
+ \\def\\bk@line{\\hbox to \\linewidth{%
+ \\ifbkcount\\smash{\\llap{\\the\\bk@lcnt\\ }}\\fi
+ \\psframebox*[framesep=0pt,linewidth=0pt]{%
+ \\vrule\\@width\\fboxrule \\hskip\\fboxsep
+ \\box\\bk@bxa
+ \\hskip\\fboxsep \\vrule\\@width\\fboxrule
+ }%
+ }}%
+ %\\def\\bkvz@top{\\hrule\\@height\\fboxrule}
+ \\def\\bkvz@top{\\hrule height .6pt}%
+ \\def\\bkvz@bottom{\\hrule\\@height\\fboxrule}%
+ \\breakbox}
+\\def\\endcodeblockboitebox{\\endbreakbox}
+WOK
+ end
+ def tex_codeblock
+ codeblock_box=if @codeblock_box=='listings'
+ tex_box_listings
+ elsif @codeblock_box=='boites'
+ tex_box_boites
+ else
+ tex_box_boites
+ end
+ codeblock_box
+ end
def markup(data)
@tex_file=[]
md={}
@@ -569,8 +669,8 @@ module SiSU_TeX
orient_portrait=SiSU_TeX_Pdf::Format_head.new(@md,txt_obj)
txt_obj={ txt: "#{home}: - #{title}", paper_size: ps, orientation: 'landscape' }
orient_landscape=SiSU_TeX_Pdf::Format_head.new(@md,txt_obj)
- @@tex_head[ps][:p]=orient_portrait.document_head_with_orientation
- @@tex_head[ps][:l]=orient_landscape.document_head_with_orientation
+ @@tex_head[ps][:p]=orient_portrait.document_head_with_orientation(@codeblock_box)
+ @@tex_head[ps][:l]=orient_landscape.document_head_with_orientation(@codeblock_box)
end
@tex_file <<<<WOK
#{@tex_ml.header}#{@tex_ml.footer}
@@ -598,24 +698,7 @@ module SiSU_TeX
\\newcommand{\\slash}{{/}}
\\newcommand{\\underscore}{\\_}
\\newcommand{\\exclaim}{\\Verbatim{!}}
-\\def\\codeblockboitebox{%
- \\def\\bkvz@before@breakbox{\\ifhmode\\par\\fi\\vskip\\breakboxskip\\relax}%
- \\def\\bkvz@set@linewidth{\\advance\\linewidth -2\\fboxrule
- \\advance\\linewidth -2\\fboxsep} %
- \\def\\bk@line{\\hbox to \\linewidth{%
- \\ifbkcount\\smash{\\llap{\\the\\bk@lcnt\\ }}\\fi
- \\psframebox*[framesep=0pt,linewidth=0pt]{%
- \\vrule\\@width\\fboxrule \\hskip\\fboxsep
- \\box\\bk@bxa
- \\hskip\\fboxsep \\vrule\\@width\\fboxrule
- }%
- }}%
- %\\def\\bkvz@top{\\hrule\\@height\\fboxrule}
- \\def\\bkvz@top{\\hrule height .6pt}%
- \\def\\bkvz@bottom{\\hrule\\@height\\fboxrule}%
- \\breakbox}
-\\def\\endcodeblockboitebox{\\endbreakbox}
-
+#{tex_codeblock}
% (tilde hash amp affected by http)
% \\sloppy
\\begin{document}
@@ -789,8 +872,10 @@ WOK
ps,h,fn=o[:ps],o[:h],o[:filename]
if h[ps] \
and (h[ps][:p] and h[ps][:l])
- h[ps][:p].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[ps][:p]
- h[ps][:l].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[ps][:l]
+ h[ps][:p].gsub!(/[ ]+$/m,'') if h[ps][:p]
+ h[ps][:l].gsub!(/[ ]+$/m,'') if h[ps][:l]
+ #h[ps][:p].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[ps][:p]
+ #h[ps][:l].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[ps][:l]
h[ps][:p].gsub!(/\n\n\n+/m,"\n\n") if h[ps][:p]
h[ps][:l].gsub!(/\n\n\n+/m,"\n\n") if h[ps][:l]
if h[ps][:p] !~/\A\s*\Z/
@@ -800,8 +885,10 @@ WOK
fn[:landscape].puts h[ps][:l],"\n"
end
elsif (h[:p] and h[:l])
- h[:p].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[:p]
- h[:l].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[:l]
+ h[:p].gsub!(/[ ]+$/m,'') if h[:p]
+ h[:l].gsub!(/[ ]+$/m,'') if h[:l]
+ #h[:p].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[:p]
+ #h[:l].gsub!(/(?:^[ ]+|[ ]+$)/m,'') if h[:l]
h[:p].gsub!(/\n\n\n+/m,"\n\n") if h[:p]
h[:l].gsub!(/\n\n\n+/m,"\n\n") if h[:l]
if h[:p] !~/\A\s*\Z/
@@ -827,7 +914,7 @@ WOK
file[:landscape] << @@tex_head[ps][:l]
array.each do |morph|
if morph.class==String
- morph.gsub!(/^\s+/,'')
+ #morph.gsub!(/^\s+/,'')
if morph !~/\A\s*\Z/
file[:portrait].puts morph,"\n"
file[:landscape].puts morph,"\n"
@@ -835,9 +922,10 @@ WOK
elsif morph.class.inspect =~ /SiSU_document_structure/ \
and morph.tmp \
and morph.tmp.class==String
- unless morph.of=='block'
+ if morph.is !='code' \
+ && morph.of !='block'
morph.tmp.gsub!(/^\s+/,'')
- else morph.tmp.gsub!(/^ +/,'')
+ else morph.tmp
end
if morph.tmp !~/\A\s*\Z/ \
or morph.is=='code'
diff --git a/lib/sisu/v3/texpdf_format.rb b/lib/sisu/v3/texpdf_format.rb
index e65f9729..2e69e3e3 100644
--- a/lib/sisu/v3/texpdf_format.rb
+++ b/lib/sisu/v3/texpdf_format.rb
@@ -179,7 +179,7 @@ module SiSU_TeX_Pdf
textwidth=tw.to_i - 20
colW=[]
colW << '{'
- @dob.widths.each do |x|
+ @dob.widths.each do |x|
x=(x.to_i * textwidth)/100 #x=(x.to_i/100.0 * 160)
col_w=x.to_s # x.gsub(/.+/,'l\|') #unless x.nil?
colW << "p{#{col_w}mm}" if col_w
@@ -555,7 +555,7 @@ module SiSU_TeX_Pdf
map_nametags[url][:ocn]
else nil
end
- ocn_lnk=(url=~/^\d+$/ ? url : ocn_lnk)
+ ocn_lnk=(url=~/^\d+$/ ? url : ocn_lnk)
if ocn_lnk and not ocn_lnk.empty?
idx \
? (str.sub!(rgx_url_internal,"\\hyperlink{#{ocn_lnk}}{#{link}}"))
@@ -767,6 +767,21 @@ module SiSU_TeX_Pdf
@tex2pdf=@@tex3pdf ||=SiSU_Env::System_call.new.tex2pdf_engine
@ps=@txt if @txt=~/(?:a4|letter|legal|book|a5|b5)/i
@lang ||=SiSU_i18n::Languages.new #.list[@md.opt.lng][:xlp]
+ @author=if defined? @md.creator.author \
+ and @md.creator.author=~/\S+/
+ SiSU_TeX_Pdf::Special_characters.new(@md,@md.creator.author).special_characters_safe
+ else ''
+ end
+ @subject=if defined? @md.classify.subject \
+ and @md.classify.subject=~/\S+/
+ SiSU_TeX_Pdf::Special_characters.new(@md,@md.classify.subject).special_characters_safe
+ else ''
+ end
+ @keywords=if defined? @md.classify.keywords \
+ and @md.classify.keywords=~/\S+/
+ SiSU_TeX_Pdf::Special_characters.new(@md,@md.classify.keywords).special_characters_safe
+ else ''
+ end
end
def tex_head_lang #babel 18n
lang_char_arr=@md.i18n
@@ -841,7 +856,7 @@ WOK
end
end
def tex_head_info
- generator="Generated by: #{@md.sisu_version[:project]} #{@md.sisu_version[:version]} of #{@md.sisu_version[:date_stamp]} (#{@md.sisu_version[:date]})" if @md.sisu_version[:version]
+ generator="Generated by: #{@md.sisu_version[:project]} #{@md.sisu_version[:version]} of #{@md.sisu_version[:date_stamp]} (#{@md.sisu_version[:date]})" if @md.sisu_version[:version]
lastdone="Last Generated on: #{Time.now}"
rubyv="Ruby version: #{@md.ruby_version}"
<<WOK
@@ -858,9 +873,9 @@ WOK
<<WOK
#{tex_head_info}
\\documentclass[#{d[:fontsize]},#{d[:papertype]},titlepage]{scrartcl} %with titlepage
-\\setlength{\\textheight}{#{d[:textheight]}mm} \\setlength{\\textwidth}{#{d[:textwidth]}mm}
-\\setlength{\\oddsidemargin}{#{d[:oddsidemargin]}} \\setlength{\\evensidemargin}{#{d[:evensidemargin]}}
-\\setlength{\\topmargin}{#{d[:topmargin]}} \\setlength{\\headheight}{#{d[:headheight]}}
+\\setlength{\\textheight}{#{d[:textheight]}mm} \\setlength{\\textwidth}{#{d[:textwidth]}mm}
+\\setlength{\\oddsidemargin}{#{d[:oddsidemargin]}} \\setlength{\\evensidemargin}{#{d[:evensidemargin]}}
+\\setlength{\\topmargin}{#{d[:topmargin]}} \\setlength{\\headheight}{#{d[:headheight]}}
\\setlength{\\headsep}{#{d[:headsep]}}
\\setlength{\\marginparsep}{#{d[:marginparsep]}}
\\setlength{\\marginparwidth}{#{d[:marginparwidth]}}
@@ -871,9 +886,9 @@ WOK
<<WOK
#{tex_head_info}
\\documentclass[#{d[:fontsize]},#{d[:papertype]},landscape,titlepage,twocolumn]{scrartcl} %with titlepage
-\\setlength{\\textheight}{#{d[:textheight]}mm} \\setlength{\\textwidth}{#{d[:textwidth]}mm}
-\\setlength{\\oddsidemargin}{#{d[:oddsidemargin]}} \\setlength{\\evensidemargin}{#{d[:evensidemargin]}}
-\\setlength{\\topmargin}{#{d[:topmargin]}} \\setlength{\\headheight}{#{d[:headheight]}}
+\\setlength{\\textheight}{#{d[:textheight]}mm} \\setlength{\\textwidth}{#{d[:textwidth]}mm}
+\\setlength{\\oddsidemargin}{#{d[:oddsidemargin]}} \\setlength{\\evensidemargin}{#{d[:evensidemargin]}}
+\\setlength{\\topmargin}{#{d[:topmargin]}} \\setlength{\\headheight}{#{d[:headheight]}}
\\setlength{\\headsep}{#{d[:headsep]}}
\\setlength{\\columnsep}{#{d[:columnsep]}}
\\setlength{\\marginparsep}{#{d[:marginparsep]}}
@@ -884,9 +899,9 @@ WOK
<<WOK
#{tex_head_info}
\\documentclass[#{d[:fontsize]},#{d[:papertype]},titlepage]{scrartcl} %with titlepage
-\\setlength{\\textheight}{#{d[:textheight]}mm} \\setlength{\\textwidth}{#{d[:textwidth]}mm}
-\\setlength{\\oddsidemargin}{#{d[:oddsidemargin]}} \\setlength{\\evensidemargin}{#{d[:evensidemargin]}}
-\\setlength{\\topmargin}{#{d[:topmargin]}} \\setlength{\\headheight}{#{d[:headheight]}}
+\\setlength{\\textheight}{#{d[:textheight]}mm} \\setlength{\\textwidth}{#{d[:textwidth]}mm}
+\\setlength{\\oddsidemargin}{#{d[:oddsidemargin]}} \\setlength{\\evensidemargin}{#{d[:evensidemargin]}}
+\\setlength{\\topmargin}{#{d[:topmargin]}} \\setlength{\\headheight}{#{d[:headheight]}}
\\setlength{\\headsep}{#{d[:headsep]}}
\\setlength{\\marginparsep}{#{d[:marginparsep]}}
\\setlength{\\marginparwidth}{#{d[:marginparwidth]}}
@@ -985,10 +1000,9 @@ WOK
\\usepackage[#{@tex2pdf},
#{color.strip}
pdftitle={#{@txt}},
-% pdftitle={Untitled},
- pdfauthor={LM-sisu-scribe},
- pdfsubject={law},
- pdfkeywords={law},
+ pdfauthor={#{@author}},
+ pdfsubject={#{@subject}},
+ pdfkeywords={#{@keywords}},
pageanchor=true,
plainpages=true,
pdfpagelabels=true,
@@ -1043,12 +1057,25 @@ WOK
WOK
end
end
+ def tex_head_codeblock(codeblock_box_type)
+ codeblock_box=if codeblock_box_type=='listings'
+ <<WOK
+\\usepackage{listings}
+\\usepackage{color}
+\\usepackage{textcomp}
+WOK
+ elsif codeblock_box_type=='boites'
+ "\\usepackage{boites}"
+ else
+ "\\usepackage{boites}"
+ end
+ codeblock_box
+ end
def tex_head_misc
<<WOK
\\usepackage{textcomp}
\\usepackage[parfill]{parskip}
\\usepackage[normalem]{ulem}
-\\usepackage{boites}
\\usepackage{soul}
\\usepackage{longtable}
\\usepackage{graphicx}
@@ -1059,7 +1086,7 @@ WOK
% amssymb used for backslash
WOK
end
- def document_head_with_orientation
+ def document_head_with_orientation(codeblock_box_type)
endnotes=("\\usepackage{endnotes}" if @txt =~/endnotes?/)||'' #not implemented see also def endnotes
@lang.list[@md.i18n[0]][:xlp]
<<WOK
@@ -1067,6 +1094,7 @@ WOK
#{tex_head_encode}
#{tex_head_pdftex_dvi}
#{tex_head_misc}
+#{tex_head_codeblock(codeblock_box_type)}
\\setcounter{secnumdepth}{2}
\\setcounter{tocdepth}{4}
\\makeatletter
@@ -1149,6 +1177,52 @@ WOK
@brace_url=SiSU_Viz::Skin.new.url_decoration
@tex2pdf=@@tex3pdf ||=SiSU_Env::System_call.new.tex2pdf_engine
end
+ def xetex_code_listings(str,is='') # ~ ^ $ & % _ { } #LaTeX special characters - KEEP list
+ word=str.scan(/\S+|\n/) #unless line =~/^(?:@\S|%+\s)/
+ para_array=[]
+ str=if word
+ word.each do |w| # _ - / # | : ! ^ ~
+ w.gsub!(/#{Mx[:gl_o]}#lt#{Mx[:gl_c]}/,'<'); w.gsub!(/#{Mx[:gl_o]}#gt#{Mx[:gl_c]}/,'>')
+ w.gsub!(/[\\]?~/,'~')
+ w.gsub!(/[#{Mx[:br_line]}#{Mx[:br_paragraph]}]/,"\n") #watch
+ w.gsub!(/#{Mx[:gl_o]}#(?:126|152)#{Mx[:gl_c]}/,'~') #126 usual
+ w.gsub!(/\\?\||#{Mx[:gl_o]}#124#{Mx[:gl_c]}/,'|') #unless is=='code' #unless w=~/<~\d+;(?:[ohmu]|[0-6]:)\d+;\w\d+>/ # | SiSU not really special sisu character but done, also LaTeX
+ para_array << w
+ end
+ str=para_array.join(' ')
+ str=str.strip unless is=='code'
+ str
+ else ''
+ end
+ str.gsub(/\s*#{Mx[:mk_o]}:name#\S+?#{Mx[:mk_c]}\s*/,' ')
+ str.gsub!(/.+?<-#>/,'')
+ str.gsub!(/#{Mx[:br_eof]}/,'')
+ str.gsub!(/#{Mx[:br_endnotes]}/,'')
+ #problem sequence ->
+ str.gsub!(/&(?:lt|#060);/,'<') # < SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#(?:gt|062)#{Mx[:gl_c]}/,'>') # > SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#123#{Mx[:gl_c]}/,'{') # { SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#125#{Mx[:gl_c]}/,'}') # } SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#(?:126|152)#{Mx[:gl_c]}/,'~') # ~ SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#035#{Mx[:gl_c]}/,'#') # # SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#033#{Mx[:gl_c]}/,'!') # ! SiSU not really special sisu character but done, also LaTeX
+ #str.gsub!(/(^|\s)\*\s/,'\1\asterisk ') # * should you wish to escape astrisk e.g. describing \*{bold}*
+ str.gsub!(/#{Mx[:gl_o]}#042#{Mx[:gl_c]}/,'*') # * should you wish to escape astrisk e.g. describing \*{bold}*
+ str.gsub!(/#{Mx[:gl_o]}#045#{Mx[:gl_c]}/,'-') # - SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#043#{Mx[:gl_c]}/,'+') # + SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#044#{Mx[:gl_c]}/,',') # + SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#038#{Mx[:gl_c]}/,'&') #unless @txt=~/<:code>/ # / SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#047#{Mx[:gl_c]}/,'/') # / SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#092#{Mx[:gl_c]}/,'\\') # \ SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#095#{Mx[:gl_c]}/,'_') # _ SiSU special character also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#124#{Mx[:gl_c]}/,'|') # | SiSU not really special sisu character but done, also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#058#{Mx[:gl_c]}/,':') # : SiSU not really special sisu character but done, also LaTeX
+ str.gsub!(/#{Mx[:gl_o]}#094#{Mx[:gl_c]}|\^/,'^') # ^ SiSU not really special sisu character but done, also LaTeX
+ ##watch placement, problem sequence ^
+ str.gsub!(/<sup><font face=symbol>&atild;<\/font><\/sup>/,' ')
+ str.gsub!(/\\copy(right|mark)?/,'<=copymark>') # ok problem with superscript
+ str
+ end
def xetex_special_characters_1(str,is='') # ~ ^ $ & % _ { } #LaTeX special characters - KEEP list
#str=Iconv.conv('ISO-8859-1', 'UTF-8', @txt) # `require': iconv will be deprecated in the future, use String#encode instead.
word=str.scan(/\S+|\n/) #unless line =~/^(?:@\S|%+\s)/
@@ -1326,6 +1400,11 @@ WOK
str=xetex_special_characters_2(str,is) unless str.nil? # remove this to start with, causes issues
@txt=str
end
+ def characters_code_listings #special characters - some substitutions are sequence sensitive, rearrange with care.
+ str,is=@txt,@is
+ str=xetex_code_listings(str,is) unless str.nil?
+ @txt=str
+ end
def special_characters_code
str=@txt
str.gsub!(/ \\\\([ #{Mx[:br_nl]}]+|$)/,' \textbackslash\textbackslash\hardspace\1')
@@ -1369,7 +1448,7 @@ WOK
end
def header
"\\lhead[ ]{ }\n" +
- "\\chead[ \\fancyplain{} \\bfseries \\footnotesize \\leftmark ]{ \\fancyplain{} \\bfseries \\footnotesize \\rightmark }\n" +
+ "\\chead[ \\fancyplain{} \\bfseries \\footnotesize \\leftmark ]{ \\fancyplain{} \\bfseries \\footnotesize \\rightmark }\n" +
"\\rhead[ ]{ }\n"
end
def footer
@@ -1500,13 +1579,13 @@ WOK
\"Support Open Standards and Software Libré for the Information Technology Infrastructure\" RA\\subsubsection*{Information on this document copy #{site}}
\\addcontentsline{toc}{subsection}{Information on this document copy}
{\\begin{footnotesize}
-\\\\ Generated by \\href{http://www.jus.uio.no/sisu/}{SiSU} found at \\href{http://www.jus.uio.no/sisu/}{www.jus.uio.no/sisu} \\begin{tiny}[ #{v[:project]} #{v[:version]} #{v[:date_stamp]} ]\\end{tiny} \\href{http://www.sisudoc.org}{www.sisudoc.org}. SiSU is software for document structuring, publishing and search (using SiSU: object citation numbering, markup, meta-markup, and system) Copyright #{@copymark} 1997, current #{@date.year_static} Ralph Amissah, All Rights Reserved.
+\\\\ Generated by \\href{http://www.jus.uio.no/sisu/}{SiSU} found at \\href{http://www.jus.uio.no/sisu/}{www.jus.uio.no/sisu} \\begin{tiny}[ #{v[:project]} #{v[:version]} #{v[:date_stamp]} ]\\end{tiny} \\href{http://www.sisudoc.org}{www.sisudoc.org}. SiSU is software for document structuring, publishing and search (using SiSU: object citation numbering, markup, meta-markup, and system) Copyright #{@copymark} 1997, current #{@date.year_static} Ralph Amissah, All Rights Reserved.
\\\\ SiSU is released under \\href{http://www.fsf.org/licenses/gpl.html}{GPL 3 } or later (\\href{http://www.fsf.org/licenses/gpl.html}{www.fsf.org/licenses/gpl.html}). {\\end{footnotesize}
{\\begin{small}
-\\\\ W3 since October 3 1993 \\href{http://www.jus.uio.no/sisu/}{#{sisu_ico}}SiSU 1997, current #{@date.year_static}. \\\\ #{sitename} presentations at \\begin{scriptsize}#{site}\\end{scriptsize} \\\\ \\\\ #{@md.title.full} \\textbf{pdf} versions can be found at: \\\\
+\\\\ W3 since October 3 1993 \\href{http://www.jus.uio.no/sisu/}{#{sisu_ico}}SiSU 1997, current #{@date.year_static}. \\\\ #{sitename} presentations at \\begin{scriptsize}#{site}\\end{scriptsize} \\\\ \\\\ #{@md.title.full} \\textbf{pdf} versions can be found at: \\\\
{\\end{small}
-\\\\ #{@brace_url.tex_open}\\begin{scriptsize}\\url{#{@vz.url_root_http}/#{url}/#{@md.fn[:pdf_p]}}\\end{scriptsize}#{@brace_url.tex_close} \\\\
-#{@brace_url.tex_open}\\begin{scriptsize}\\url{#{@vz.url_root_http}/#{url}/#{@md.fn[:pdf_l]}}\\end{scriptsize}#{@brace_url.tex_close} \\\\
+\\\\ #{@brace_url.tex_open}\\begin{scriptsize}\\url{#{@vz.url_root_http}/#{url}/#{@md.fn[:pdf_p]}}\\end{scriptsize}#{@brace_url.tex_close} \\\\
+#{@brace_url.tex_open}\\begin{scriptsize}\\url{#{@vz.url_root_http}/#{url}/#{@md.fn[:pdf_l]}}\\end{scriptsize}#{@brace_url.tex_close} \\\\
\\\\\n#{@md.title.full} \\textbf{html} versions may be found at: \\\\
#{@brace_url.tex_open}\\begin{scriptsize}\\url{#{@vz.url_root_http}/#{url}/#{@md.fn[:toc]}}\\end{scriptsize}#{@brace_url.tex_close} or \\\\
#{@brace_url.tex_open}\\begin{scriptsize}\\url{#{@vz.url_root_http}/#{url}/#{@md.fn[:doc]}}\\end{scriptsize}#{@brace_url.tex_close}
diff --git a/man/man1/sisu.1 b/man/man1/sisu.1
index 9a3e5535..1d4d280b 100644
--- a/man/man1/sisu.1
+++ b/man/man1/sisu.1
@@ -1,4 +1,4 @@
-.TH "sisu" "1" "2011-10-03" "3.1.0" "SiSU"
+.TH "sisu" "1" "2011-12-08" "3.1.7" "SiSU"
.br
.SH NAME
.br
@@ -221,13 +221,22 @@ be with colour, if sisurc colour default is set to 'false' or is undefined
screen output will be without colour). Alias \-c
.TP
+.B \-\-configure
+configure/initialise shared output directory files initialize shared output
+directory (config files such as css and dtd files are not updated if they
+already exist unless modifier is used). The equivalent of: \-C \-\-init\-site
+configure/initialise site, more extensive than \-C on its own, shared output
+directory files/force update, existing shared output config files such as css
+and dtd files are updated if \-CC is used.
+
+.TP
.B \-\-concordance [filename/wildcard]
produces concordance (wordmap) a rudimentary index of all the words in a
document. (Concordance files are not generated for documents of over 260,000
words unless this limit is increased in the file sisurc.yml). Alias \-w
.TP
-.B \-C [\-\-init\-site]
+.B \-C
configure/initialise shared output directory files initialize shared output
directory (config files such as css and dtd files are not updated if they
already exist unless modifier is used). \-C \-\-init\-site configure/initialise
@@ -237,12 +246,7 @@ updated if this modifier is used.
.TP
.B \-CC
-configure/initialise shared output directory files initialize shared output
-directory (config files such as css and dtd files are not updated if they
-already exist unless modifier is used). The equivalent of: \-C \-\-init\-site
-configure/initialise site, more extensive than \-C on its own, shared output
-directory files/force update, existing shared output config files such as css
-and dtd files are updated if \-CC is used.
+see \-\-configure
.TP
.B \-c [filename/wildcard]
@@ -1520,7 +1524,7 @@ An escaped url without decoration
.nf
normal text _http://www.sisudoc.org/ continues
- deb http://www.jus.uio.no/sisu/archive unstable main non\-free
+ deb _http://www.jus.uio.no/sisu/archive unstable main non\-free
.fi
.br
@@ -1597,6 +1601,14 @@ about SiSU <http://www.sisudoc.org/> [^14] markup
{~^ ruby_logo.png "Ruby" }http://www.ruby\-lang.org/en/
.br
.br
+.B markup example:
+
+.nf
+ { tux.png 64x80 }image
+ % various url linked images
+ {tux.png 64x80 "a better way" }http://www.sisudoc.org/
+ {GnuDebianLinuxRubyBetterWay.png 100x101 "Way Better \- with Gnu/Linux, Debian and Ruby" }http://www.sisudoc.org/
+ {~^ ruby_logo.png "Ruby" }http://www.ruby\-lang.org/en/
.fi
.br
@@ -1677,7 +1689,7 @@ information in each column
Very active contributors*** | 0| 31| 190| 692| 1,639| 3,016
No. of English language articles| 25| 16,000| 101,000| 190,000| 320,000| 630,000
No. of articles, all languages | 25| 19,000| 138,000| 490,000| 862,000|1,600,000
- \e* Contributed at least ten times; \e** at least 5 times in last month; \e*\e** more than 100 times in last month.
+ * Contributed at least ten times; ** at least 5 times in last month; *** more than 100 times in last month.
.fi
.br
@@ -2223,7 +2235,7 @@ main term heading from each other by a pipe symbol.
.nf
Paragraph containing main term, second term and sub\-term.
- ={Main term:sub\-term+1|second sub\-term
+ ={Main term:sub\-term+1|second sub\-term}
A paragraph that continues discussion of the first sub\-term
.fi
@@ -3076,6 +3088,35 @@ Its selection is configured in sisurc.yml
.br
output_dir_structure_by: language
+.nf
+ |\-\- en
+ |\-\- epub
+ |\-\- hashes
+ |\-\- html
+ | |\-\- viral_spiral.david_bollier
+ | |\-\- manifest
+ | |\-\- qrcode
+ | |\-\- odt
+ | |\-\- pdf
+ | |\-\- sitemaps
+ | |\-\- txt
+ | |\-\- xhtml
+ | `\-\- xml
+ |\-\- po4a
+ | `\-\- live\-manual
+ | |\-\- po
+ | |\-\- fr
+ | `\-\- pot
+ `\-\- _sisu
+ |\-\- css
+ |\-\- image
+ |\-\- image_sys \-> \../../_sisu/image_sys
+ `\-\- xml
+ |\-\- rnc
+ |\-\- rng
+ `\-\- xsd
+.fi
+
.br
#by: language subject_dir/en/manifest/filename.html
@@ -3092,6 +3133,34 @@ Its selection is configured in sisurc.yml
.br
output_dir_structure_by: filetype
+.nf
+ |\-\- epub
+ |\-\- hashes
+ |\-\- html
+ |\-\- viral_spiral.david_bollier
+ |\-\- manifest
+ |\-\- qrcode
+ |\-\- odt
+ |\-\- pdf
+ |\-\- po4a
+ |\-\- live\-manual
+ | |\-\- po
+ | |\-\- fr
+ | `\-\- pot
+ |\-\- _sisu
+ | |\-\- css
+ | |\-\- image
+ | |\-\- image_sys \-> \../../_sisu/image_sys
+ | `\-\- xml
+ | |\-\- rnc
+ | |\-\- rng
+ | `\-\- xsd
+ |\-\- sitemaps
+ |\-\- txt
+ |\-\- xhtml
+ `\-\- xml
+.fi
+
.br
#by: filetype subject_dir/html/filename/manifest.en.html
@@ -3107,6 +3176,27 @@ Its selection is configured in sisurc.yml
.br
output_dir_structure_by: filename
+.nf
+ |\-\- epub
+ |\-\- po4a
+ |\-\- live\-manual
+ | |\-\- po
+ | |\-\- fr
+ | `\-\- pot
+ |\-\- _sisu
+ | |\-\- css
+ | |\-\- image
+ | |\-\- image_sys \-> \../../_sisu/image_sys
+ | `\-\- xml
+ | |\-\- rnc
+ | |\-\- rng
+ | `\-\- xsd
+ |\-\- sitemaps
+ |\-\- src
+ |\-\- pod
+ `\-\- viral_spiral.david_bollier
+.fi
+
.br
#by: filename subject_dir/filename/manifest.en.html