From 236a63e8a17f944cb2a9edbbd99f4e959308d903 Mon Sep 17 00:00:00 2001
From: Ralph Amissah <ralph@amissah.com>
Date: Tue, 1 Jun 2010 18:30:23 -0400
Subject: texpdf, start using polyglossia (xelatex) (instead of babel)

---
 data/doc/sisu/v2/on_sisu_markup/sisu_markup.txt | 570 ------------------------
 data/doc/sisu/v2/sisu_user_txt/sisu_markup.txt  | 570 ++++++++++++++++++++++++
 lib/sisu/v2/texpdf_format.rb                    |  15 +-
 3 files changed, 578 insertions(+), 577 deletions(-)
 delete mode 100644 data/doc/sisu/v2/on_sisu_markup/sisu_markup.txt
 create mode 100644 data/doc/sisu/v2/sisu_user_txt/sisu_markup.txt

diff --git a/data/doc/sisu/v2/on_sisu_markup/sisu_markup.txt b/data/doc/sisu/v2/on_sisu_markup/sisu_markup.txt
deleted file mode 100644
index 0af080c5..00000000
--- a/data/doc/sisu/v2/on_sisu_markup/sisu_markup.txt
+++ /dev/null
@@ -1,570 +0,0 @@
-%% Summary ---------------------------------------------------------------------
-
-sisu takes an ASCII (UTF-8) document and abstracts the document into its
-structure and smaller constituent parts, objects. This abstraction is then used
-in subsequent processing to reconstitute the document into disparate document
-representations, many quite different from one another, e.g. HTML, ODF, LaTeX
-and to populate SQL
-
-SiSU identifies the document structure (headings and their levels) and pulls
-the document apart in to its constituent parts, objects (paragraphs, headings,
-tables, images etc.) to which it assigns an object number if substantive
-content.
-
-From the marked up document SiSU need to be able to determine a documents
-structure, and the objects that a document contains
-
-The first line of a SiSU marked up document can identify itself with
-
-%% Identify SiSU Document ------------------------------------------------------
-
-% SiSU
-
-%% The Basic SiSU Markup Document ----------------------------------------------
-
-SiSU documents are divided into two parts:
-
-(i) the document header, which contains (a)  metadata and (b) processing
-instructions if any document headers take the form of a tag and the related
-related information
-
-(ii) the substantive content
-
-%% Minimum (SiSU) Markup Requirements ------------------------------------------
-
-minimum requirements for a SiSU document
-
-(i)(a) document header metadata, should contain at least:
-
-@title:
-
-@creator:
-  :author:
-
-(i)(b) processing instructions (grouped under @make:) are not required as there
-are defaults that will be used
-
-(ii) the substantive document structure must be defined, here structure equates
-to the headings and their relative levels, this can be done either by explicit
-markup where each heading occurs, or in the header @make: section of the, or
-both
-
-(iii) the basic document objects are headings and paragraphs. Paragraphs are
-identified automatically, and headings must be defined, so sisu is able to
-determine the basic objects without anything further
-
-sample_1.sst
-
-%% Document Structure ----------------------------------------------------------
-
-Document structure (heading levels) are determined from information provided in
-the markup of the document. There are two ways to identify document structure:
-(i) manual markup of headings with their level; (ii) in the sisu header, under
-@make: :heading: provide a regex, in the manner understood by sisu, that
-identifies what to look for in headings of various levels.
-
-Document structure is the different headings in a document, and their relative
-levels.
-
-There are two sets of docment level markers :A~ and an optional :B~ & :C~ and
-beneath that 1~, 2~, 3~.
-
-For the first set of document level markers the document Title being the top
-level in the hierarchy; beneath that book titles if the document contains more
-than one book followed by sections
-
-%% Document Objects ------------------------------------------------------------
-
-Document objects are units of text that are identified, stored and processed as
-a block. The most usual document objects would be paragraphs and headings. A
-more complete list of objects includes: paragraphs; headings; tables; code
-blocks; verse (the poem is identified, but each verse is an object); grouped
-text... 
-
-%% The Gory Details ------------------------------------------------------------
-
-
-%% comments --------------------------------------------------------------------
-
-Comments in sisu are a percentage sign at the start of a line followed by a
-space and then the comment
-
-% this would be a comment
-
-%% headings --------------------------------------------------------------------
-
-There are two sets of docment heading markers :A~ and an optional :B~ & :C~ and
-beneath that 1~, 2~, 3~. These markers are placed at the start of the
-line/paragraph, and followed by the heading
-
-There is usually one :A~ top level heading, which is the document title,
-sometimes including the author. This is such a common occurrence that there is
-a shortcut where metadata headers are provided for @title: and @creator
-:author:, instead of rewriting the title and author's name, you may write :A~
-@title @author
-
-If you have a document/manuscript that has subsections above the level of
-chapter, such as multiple books, parts, section, two additional top level
-headings are available :B~ and :C~
-
-At the main division level, usually chapter heading level 1~ begins, followed
-by 2~ and 3~ if the chapter has subheadings. Because the html and epub
-segmented output breaks level 1~ into separate files it is possible to provide
-the filename, e.g. 1~prologue Prologue
-
-Where names are provided following the heading tilde, these become tagged
-points within the document which can where the output format permits be
-(hyper-)linked to.
-
-%% font effect, modified font including emphasis -------------------------------
-
-Whithin normal text it is possible to modify the font effect of a word or
-phrase using the following markers:
-
-!{ bold }!
-
-/{ italics }/
-
-_{ underscore }_
-
-*{ emphasis }* (how emphasis is represented in output text can be defined in
-the header @make: section of a document or in the sisurc.yml config file, and
-this may be as bold, italics or underscore, the default being bold)
-
-^{ superscript }^
-
-,{ subscript },
-
-+{ inserted text }+
-
-_{ strikethrough }_
-
-An exclamation mark followed by an underscore at the start of a line will bold
-that line until the first line-break
-
-!_ this line would be bold
-
-It is also possible to define in the header section under the @make: section
-which words or patterns should automatically be made bold or italics.
-
-@make:
- :bold: /Gnu|Linux|Debian|Fedora|Ruby|SiSU/
- :italics: /inter alia/
-
-%% indent ----------------------------------------------------------------------
-
-_1 a paragraph that is indented one level
-
-_2 a paragraph that is indented two steps
-
-%% bullet ----------------------------------------------------------------------
-
-_* bulleted text
-
-_1* bulleted indented text
-
-%% auto-numbering  -------------------------------------------------------------
-
-Some auto-numbering occurs in the building of sisu documents, either by default
-or when requested through configuration options
-
-%% auto-numbering document objects ---------------------------------------------
-
-Document objects are automatically given sequential object numbers, object
-citation numbers (ocn). If there is text that for some reason should not be
-regarded as substantive objects, it is possible to prevent a document number
-being given by adding ~# to the end of the object (paragraph/heading, etc.) ~#
-
-A variation used for headings that are added to provide document structure that
-should where possible not be included in output is -# a heading that is marked
-with -# is un-numbered and may be excluded from document outputs.
-
-%% auto-numbering headings -----------------------------------------------------
-
-Note auto-numbering of headings may be specified in the header @make: :num_top:
-by providing the heading level from which numbering is to start, this is
-usually at the chapter level (1~).
-
-@make:
- :num_top: 1
-
-numbering continues three levels down, level 1 being numbered 1, 2, 3 ...
-level 2: 1.1, 1.2, 1.3 and so on
-level 3: 1.1.1, 1.1.2, 1.1.3
-
-It is also possible to make an auto-numbered list
-
-# numbered list                numbered list 1., 2., 3, etc.
-
-_# indented lettered list sub-level of previous list number a., b., c., d., etc.
-
-%% line breaks -----------------------------------------------------------------
-
-<:br> line break
-
-In paper/ page oriented outputs, such as LaTeX/pdf the following are avaiable
-
-<:pb> page or column break
-
-<:pn> new page
-
-in the header section under @make: :breaks: new and break set a page break or
-new page at the levels indicated, e.g.
-
-@make:
- :breaks: new=C; break=1
-
-%% footnotes / endnotes --------------------------------------------------------
-
-This paragraph contains a footnote~{ a footnote or endnote }~ which would be
-automatically numbered
-
-Footnotes and endnotes are marked up at the location where they would be
-indicated within a text. They are automatically numbered. The output type
-determines whether footnotes or endnotes will be produced
-
-In addition to regular footnotes/endnotes there are astrisk and plus sign
-numbered and unnumbered footnotes.
-
-normal text ~[* editors notes, numbered asterisk footnote/endnote series ]~ continues
-
-normal text ~[+ editors notes, numbered asterisk footnote/endnote series ]~ continues
-
-normal text ~{* unnumbered asterisk footnote/endnote, insert multiple asterisks if required }~ continues
-
-%% tag points ------------------------------------------------------------------
-
-Tag points are markers within the document which may be used within the
-document for (internal document) linking where the output format permits. Tag
-names should use alphanumeric characters and underscores [a-z0-9_]+.
-
-There are different types of tag point, some automatically provided by sisu,
-such as each ocn (object citation number)
-
-Manual tags may be provided either:
-
-(a) with headings where a name is added to the heading level after the tilde:
-
-1~prefix [heading]
-
-(b) a tag marker can be added to a paragraph using an asterisk tilde and the
-name *~tag_marker
-
-%% links and urls --------------------------------------------------------------
-
-Urls found within text are marked up automatically, and where the output type
-permits is autmatically hyperlinked to inself and decorated with angled braces
-(unless contained in a code block, or escaped by a preceeding underscore).
-
-To link text or an image to a url the markup is as follows
-
-{ this is the linked section of text}http://url.org
-
-Where it is wished to include the url for the linked text in a footnote, the
-long form of markup would be:
-{ SiSU }http://www.jus.uio.no/sisu/ ~{ http://www.jus.uio.no/sisu/ }~
-
-A short form is provided for achieving the same:
- {~^ SiSU }http://www.jus.uio.no/sisu/
-
-%% images ----------------------------------------------------------------------
-
-Images are placed in the directory beneath the location of the document to be
-processed _sisu/image
-
-The following are examples of links to images
-
-{ tux.png 64x80 }image
-
-{tux.png 64x80 "Gnu/Linux - a better way" }http://www.jus.uio.no/sisu/
-
-{GnuDebianLinuxRubyBetterWay.png 100x101 "Way Better - with Gnu/Linux, Debian and Ruby" }http://www.jus.uio.no/sisu/
-
-The 64x80 in the first example is the image dimension, (width x height). This
-may be omitted if imagemagick or graphicsmagick are installed, as they will
-determine the image dimensions
-
-As with other linked text, the following markup
-
-{~^ ruby_logo.png "Ruby" }http://www.ruby-lang.org/en/
-
-maps to
-
-{ ruby_logo.png "Ruby" }http://www.ruby-lang.org/en/ ~{ http://www.ruby-lang.org/en/ }~
-
-%% grouped text ----------------------------------------------------------------
-
-%% group -----------------------------------------------------------------------
-
-The start and end of text that is grouped are tagged. Grouped text retains its
-line breaks, and is treated as a unit, getting a single ocn
-
-group{
-
-License: GPL 3 or later:
-
-SiSU, a framework for document structuring, publishing and search
-
-Copyright (C) Ralph Amissah
-
-This program is free software: you can redistribute it and/or modify it under
-the terms of the GNU General Public License as published by the Free Software
-Foundation, either version 3 of the License, or (at your option) any later
-version.
-
-This program is distributed in the hope that it will be useful, but WITHOUT ANY
-WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-PARTICULAR PURPOSE. See the GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License along with
-this program. If not, see <http://www.gnu.org/licenses/>.
-
-If you have Internet connection, the latest version of the GPL should be
-available at these locations:
-<http://www.fsf.org/licensing/licenses/gpl.html>
-<http://www.gnu.org/licenses/gpl.html>
-
-}group
-
-%% poem ------------------------------------------------------------------------
-
-The start and end of a poem are tagged. Each verse in a poem is given an object
-number. Verses retain their line breaks.
-
-poem{
-
-verse here
-declare
-
-another verse
-here
-
-}poem
-
-%% table -----------------------------------------------------------------------
-
-{table~h 24; 12; 12; 12; 12; 12; 12;}
-                                |Jan. 2001|Jan. 2002|Jan. 2003|Jan. 2004|July 2004|June 2006
-Contributors*                   |       10|      472|    2,188|    9,653|   25,011|   48,721
-Active contributors**           |        9|      212|      846|    3,228|    8,442|   16,945
-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
-
-
-table{ c3; 40; 30; 30;
-
-This is a table
-this would become column two of row one
-column three of row one is here
-
-And here begins another row
-column two of row two
-column three of row two, and so on
-
-}table
-
-a second form may be easier to work with in cases where there is not much information in each column
-
-%% code ------------------------------------------------------------------------
-
-code{
-
-code lines here
-
-and so on
-
-}code
-
-%% headers ---------------------------------------------------------------------
-
-%% header metadata -------------------------------------------------------------
-
-@title: SiSU
- :subtitle: Markup
-
-@creator:
- :author: Amissah, Ralph
-
-@rights:
- :copyright: Copyright (C) Ralph Amissah 2007, part of SiSU documentation
- :license: GPL 3 or later
-
-@classify:
- :type: information
- :topic_register: electronic documents:SiSU:document:markup;SiSU:document:markup;SiSU:document:markup;SiSU:manual:markup;electronic documents:SiSU:manual:markup
- :subject: ebook, epublishing, electronic book, electronic publishing, electronic document, electronic citation, data structure, citation systems, search
-
-@date:
- :created: 2002-08-28
- :issued: 2002-08-28
- :available: 2002-08-28
- :published: 2008-05-22
- :modified: 2010-05-25
-
-@links:
- { SiSU Manual }http://www.jus.uio.no/sisu/sisu_manual/
- { Book Samples and Markup Examples }http://www.jus.uio.no/SiSU/examples.html
- { SiSU @ Wikipedia }http://en.wikipedia.org/wiki/SiSU
- { SiSU Download }http://www.jus.uio.no/sisu/SiSU/download.html
- { SiSU Changelog }http://www.jus.uio.no/sisu/SiSU/changelog.html
-
-%% header processing instructions, @make: --------------------------------------
-
-Some document processing parameters can be set in the @make: section of the header
-
-@make:
- :num_top: 1
- :breaks: new=C; break=1
- :skin: skin_sisu_manual
- :bold: /Gnu|Debian|Ruby|SiSU/
-
-%% config, sisurc.yml ----------------------------------------------------------
-
-There are default configuration settings within the program many of which can
-be modified in sisurc.yml
-
-sisurc.yml can be located in one of the following locations:
-/etc/sisu/sisurc.yml    ~/.sisu/sisurc.yml    and ./_sisu/sisurc.yml
-
-if sisu versions 1 and 2 are both in use, the v2 sisurc.yml can be placed a the
-following locations:
-/etc/sisu/v2/sisurc.yml ~/.sisu/v2/sisurc.yml and ./_sisu/v2/sisurc.yml
-
-# Name: SiSU - Simple information Structuring Universe
-# Author: Ralph@Amissah.com
-# Description: Site wide envionment defaults set here
-# system environment info / resource configuration file, for sisu
-# License: GPL v3 or later
-#   site environment configuration file
-#   this file should be configured and live in
-#      /etc/sisu     #per environment settings, overridden by:
-#      ~/.sisu       #per user settings, overridden by:
-#     ./_sisu        #per local markup directory settings
-#% #image source directory, main path and subdirectories
-#image:
-#  path:         'sisu_working'
-#  public:       '_sisu/image'
-#% presentation/web directory, main path and subdirectories (most subdirectories are created automatically based on markup directory name)
-#webserv:
-#  url_root:     'http://www.your.url' #without dir stub
-#  path:         '/var/www' #either (i) / [full path from root] or (ii) ~/ [home] or (iii) ./ [pwd] or (iv) will be made from home
-#  images:       '_sisu/image'
-#  man:          'man'
-#  cgi:          '/usr/lib/cgi-bin'
-#  feed:         'feed'
-#  sqlite:       'sisu/sqlite'
-#  webrick_url:  true
-#show_output_on: 'filesystem' #for -v and -u url information, alternatives: 'filesystem','webserver','remote_webserver','local:8111','localhost','localhost:8080','webrick','path'
-#show_output_on: 'local:8111'
-#webserv_cgi:
-#  host:         localhost
-#  base_path:    ~
-#  port:         '8081'
-#  user:         ~
-show_output_on: 'filesystem_url'
-#texinfo display output
-#texinfo:
-#  stub:         'texinfo'
-##% processing directories, main path and subdirectories (appended to $HOME), using defaults set in sysenv
-#processing:
-#  path:         '~'
-#  dir:         '.sisu_processing~'
-#  metaverse:    'metaverse'
-#  tune:         'tune'
-#  latex:        'tex'
-#  texinfo:      'texinfo'
-#  concord_max:  400000
-#% flag - set (non-default) processing flag shortcuts -1, -2 etc. (here adding colour and verbosity as default)
-flag:
-  color:        true                        # making colour default -c is toggle, and will now toggle colour off
-  default:      '-NhwepoabxXyYv'            # -m run by default; includes verbose
-  i:            '-hwpoay'                   # -m run by default
-  ii:           '-NhwepoabxXy'              # -m run by default
-  iii:          '-NhwepoabxXyY'             # -m run by default
-  iv:           '-NhwepoabxXYDy --update'   # -m run by default
-  v:            '-NhwepoabxXYDyv --update'  # -m run by default; includes verbose
-#% papersize, (LaTeX/pdf) available values: A4, US_letter, book_b5, book_a5, US_legal
-default:
-  papersize:    'A4,letter'
-  #text_wrap:    78
-  #emphasis:     'bold' #make *{emphasis}* 'bold', 'italics' or 'underscore', default if not configured is 'bold'
-  #digest:       'sha' #sha is sha256, default is md5
-  #multilingual:  false
-  #language_file: 2
-  #language:     'English'
-#% markup, make *{emphasis}* 'bold' or 'italics', default if not configured is 'bold'
-#% settings used by ssh scp
-#remote:
-#  -
-#    user:         '[usrname]'
-#    host:         '[remote.hostname]'
-#    path:         '.' #no trailing slash eg 'sisu/www'
-#  -
-#    user:         '[usrname]'
-#    host:         '[remote.hostname]'
-#    path:         '.' #no trailing slash eg 'sisu/www'
-#% webrick information
-#webrick:
-#  port:         '8081'
-#% sql database info, postgresql and sqlite
-#db:
-#  share_source: false # boolean, default is false
-#  postgresql:
-#    port:       # '[port (default is 5432)]'
-#    host:       # '[if not localhost, provide host tcp/ip address or domain name]''
-#    user:       # '[(if different from user) provide username]'
-#    password:   # '[password if required]'
-#  sqlite:
-#    path:       ~ # './sisu_sqlite.db'
-#    port:       "**"
-#% possible values ~, true, false, or command instruction e.g. editor: 'gvim -c :R -c :S'.
-#will only ignore if value set to false, absence or nil will not remove program as should operate without rc file
-#ie in case of ~ will ignore and use hard coded defaults within program), true, false, or command instruction e.g. editor: 'gvim -c :R -c :S'
-#on value true system defaults used, to change, e.g. editor specify
-permission_set:
-  zap:          false
-  css_modify:   false
-#  remote_base_site:  true
-program_set:
-  rmagick:       false
-#  wc:           true
-#  editor:       true
-#  postgresql:   true
-#  sqlite:       true
-#  tidy:         true
-#  rexml:        true
-#  pdflatex:     true
-#program_select:
-#  editor:       'gvim -c :R -c :S'
-#  pdf_viewer:   'evince'
-#  web_browser:  'firefox' #'iceweasel' #'epiphany' #'galeon' #'konqueror' #'kazehakase'
-#  console_www_browser:  'links2' #'elinks'
-#  odf_viewer:   'oowriter' #'abiword'
-#  xml_viewer:   'xml-viewer'
-#  man:          'nroff -man' #'groff -man -Tascii' # 'nroff -man'
-#promo:              sisu_icon, sisu, sisu_search_libre, open_society, fsf, ruby
-#search:
-#  sisu:
-#    flag:              true
-##    action:            http://localhost:8081/cgi-bin/sisu_pgsql.cgi
-#    action:            http://search.sisudoc.org
-#    db:                sisu
-#    title:             sample search form
-#  hyperestraier:
-#    flag:              true
-#    action:            http://search.sisudoc.org/cgi-bin/estseek.cgi?
-
-
-%% skin ------------------------------------------------------------------------
-
-skins can be used to modify the appearance of output
-
-[provide information]
-
-%% css ------------------------------------------------------------------------
-
-the default css may be replaced for the site or particular processing
-directories
-
-[provide information]
diff --git a/data/doc/sisu/v2/sisu_user_txt/sisu_markup.txt b/data/doc/sisu/v2/sisu_user_txt/sisu_markup.txt
new file mode 100644
index 00000000..0af080c5
--- /dev/null
+++ b/data/doc/sisu/v2/sisu_user_txt/sisu_markup.txt
@@ -0,0 +1,570 @@
+%% Summary ---------------------------------------------------------------------
+
+sisu takes an ASCII (UTF-8) document and abstracts the document into its
+structure and smaller constituent parts, objects. This abstraction is then used
+in subsequent processing to reconstitute the document into disparate document
+representations, many quite different from one another, e.g. HTML, ODF, LaTeX
+and to populate SQL
+
+SiSU identifies the document structure (headings and their levels) and pulls
+the document apart in to its constituent parts, objects (paragraphs, headings,
+tables, images etc.) to which it assigns an object number if substantive
+content.
+
+From the marked up document SiSU need to be able to determine a documents
+structure, and the objects that a document contains
+
+The first line of a SiSU marked up document can identify itself with
+
+%% Identify SiSU Document ------------------------------------------------------
+
+% SiSU
+
+%% The Basic SiSU Markup Document ----------------------------------------------
+
+SiSU documents are divided into two parts:
+
+(i) the document header, which contains (a)  metadata and (b) processing
+instructions if any document headers take the form of a tag and the related
+related information
+
+(ii) the substantive content
+
+%% Minimum (SiSU) Markup Requirements ------------------------------------------
+
+minimum requirements for a SiSU document
+
+(i)(a) document header metadata, should contain at least:
+
+@title:
+
+@creator:
+  :author:
+
+(i)(b) processing instructions (grouped under @make:) are not required as there
+are defaults that will be used
+
+(ii) the substantive document structure must be defined, here structure equates
+to the headings and their relative levels, this can be done either by explicit
+markup where each heading occurs, or in the header @make: section of the, or
+both
+
+(iii) the basic document objects are headings and paragraphs. Paragraphs are
+identified automatically, and headings must be defined, so sisu is able to
+determine the basic objects without anything further
+
+sample_1.sst
+
+%% Document Structure ----------------------------------------------------------
+
+Document structure (heading levels) are determined from information provided in
+the markup of the document. There are two ways to identify document structure:
+(i) manual markup of headings with their level; (ii) in the sisu header, under
+@make: :heading: provide a regex, in the manner understood by sisu, that
+identifies what to look for in headings of various levels.
+
+Document structure is the different headings in a document, and their relative
+levels.
+
+There are two sets of docment level markers :A~ and an optional :B~ & :C~ and
+beneath that 1~, 2~, 3~.
+
+For the first set of document level markers the document Title being the top
+level in the hierarchy; beneath that book titles if the document contains more
+than one book followed by sections
+
+%% Document Objects ------------------------------------------------------------
+
+Document objects are units of text that are identified, stored and processed as
+a block. The most usual document objects would be paragraphs and headings. A
+more complete list of objects includes: paragraphs; headings; tables; code
+blocks; verse (the poem is identified, but each verse is an object); grouped
+text... 
+
+%% The Gory Details ------------------------------------------------------------
+
+
+%% comments --------------------------------------------------------------------
+
+Comments in sisu are a percentage sign at the start of a line followed by a
+space and then the comment
+
+% this would be a comment
+
+%% headings --------------------------------------------------------------------
+
+There are two sets of docment heading markers :A~ and an optional :B~ & :C~ and
+beneath that 1~, 2~, 3~. These markers are placed at the start of the
+line/paragraph, and followed by the heading
+
+There is usually one :A~ top level heading, which is the document title,
+sometimes including the author. This is such a common occurrence that there is
+a shortcut where metadata headers are provided for @title: and @creator
+:author:, instead of rewriting the title and author's name, you may write :A~
+@title @author
+
+If you have a document/manuscript that has subsections above the level of
+chapter, such as multiple books, parts, section, two additional top level
+headings are available :B~ and :C~
+
+At the main division level, usually chapter heading level 1~ begins, followed
+by 2~ and 3~ if the chapter has subheadings. Because the html and epub
+segmented output breaks level 1~ into separate files it is possible to provide
+the filename, e.g. 1~prologue Prologue
+
+Where names are provided following the heading tilde, these become tagged
+points within the document which can where the output format permits be
+(hyper-)linked to.
+
+%% font effect, modified font including emphasis -------------------------------
+
+Whithin normal text it is possible to modify the font effect of a word or
+phrase using the following markers:
+
+!{ bold }!
+
+/{ italics }/
+
+_{ underscore }_
+
+*{ emphasis }* (how emphasis is represented in output text can be defined in
+the header @make: section of a document or in the sisurc.yml config file, and
+this may be as bold, italics or underscore, the default being bold)
+
+^{ superscript }^
+
+,{ subscript },
+
++{ inserted text }+
+
+_{ strikethrough }_
+
+An exclamation mark followed by an underscore at the start of a line will bold
+that line until the first line-break
+
+!_ this line would be bold
+
+It is also possible to define in the header section under the @make: section
+which words or patterns should automatically be made bold or italics.
+
+@make:
+ :bold: /Gnu|Linux|Debian|Fedora|Ruby|SiSU/
+ :italics: /inter alia/
+
+%% indent ----------------------------------------------------------------------
+
+_1 a paragraph that is indented one level
+
+_2 a paragraph that is indented two steps
+
+%% bullet ----------------------------------------------------------------------
+
+_* bulleted text
+
+_1* bulleted indented text
+
+%% auto-numbering  -------------------------------------------------------------
+
+Some auto-numbering occurs in the building of sisu documents, either by default
+or when requested through configuration options
+
+%% auto-numbering document objects ---------------------------------------------
+
+Document objects are automatically given sequential object numbers, object
+citation numbers (ocn). If there is text that for some reason should not be
+regarded as substantive objects, it is possible to prevent a document number
+being given by adding ~# to the end of the object (paragraph/heading, etc.) ~#
+
+A variation used for headings that are added to provide document structure that
+should where possible not be included in output is -# a heading that is marked
+with -# is un-numbered and may be excluded from document outputs.
+
+%% auto-numbering headings -----------------------------------------------------
+
+Note auto-numbering of headings may be specified in the header @make: :num_top:
+by providing the heading level from which numbering is to start, this is
+usually at the chapter level (1~).
+
+@make:
+ :num_top: 1
+
+numbering continues three levels down, level 1 being numbered 1, 2, 3 ...
+level 2: 1.1, 1.2, 1.3 and so on
+level 3: 1.1.1, 1.1.2, 1.1.3
+
+It is also possible to make an auto-numbered list
+
+# numbered list                numbered list 1., 2., 3, etc.
+
+_# indented lettered list sub-level of previous list number a., b., c., d., etc.
+
+%% line breaks -----------------------------------------------------------------
+
+<:br> line break
+
+In paper/ page oriented outputs, such as LaTeX/pdf the following are avaiable
+
+<:pb> page or column break
+
+<:pn> new page
+
+in the header section under @make: :breaks: new and break set a page break or
+new page at the levels indicated, e.g.
+
+@make:
+ :breaks: new=C; break=1
+
+%% footnotes / endnotes --------------------------------------------------------
+
+This paragraph contains a footnote~{ a footnote or endnote }~ which would be
+automatically numbered
+
+Footnotes and endnotes are marked up at the location where they would be
+indicated within a text. They are automatically numbered. The output type
+determines whether footnotes or endnotes will be produced
+
+In addition to regular footnotes/endnotes there are astrisk and plus sign
+numbered and unnumbered footnotes.
+
+normal text ~[* editors notes, numbered asterisk footnote/endnote series ]~ continues
+
+normal text ~[+ editors notes, numbered asterisk footnote/endnote series ]~ continues
+
+normal text ~{* unnumbered asterisk footnote/endnote, insert multiple asterisks if required }~ continues
+
+%% tag points ------------------------------------------------------------------
+
+Tag points are markers within the document which may be used within the
+document for (internal document) linking where the output format permits. Tag
+names should use alphanumeric characters and underscores [a-z0-9_]+.
+
+There are different types of tag point, some automatically provided by sisu,
+such as each ocn (object citation number)
+
+Manual tags may be provided either:
+
+(a) with headings where a name is added to the heading level after the tilde:
+
+1~prefix [heading]
+
+(b) a tag marker can be added to a paragraph using an asterisk tilde and the
+name *~tag_marker
+
+%% links and urls --------------------------------------------------------------
+
+Urls found within text are marked up automatically, and where the output type
+permits is autmatically hyperlinked to inself and decorated with angled braces
+(unless contained in a code block, or escaped by a preceeding underscore).
+
+To link text or an image to a url the markup is as follows
+
+{ this is the linked section of text}http://url.org
+
+Where it is wished to include the url for the linked text in a footnote, the
+long form of markup would be:
+{ SiSU }http://www.jus.uio.no/sisu/ ~{ http://www.jus.uio.no/sisu/ }~
+
+A short form is provided for achieving the same:
+ {~^ SiSU }http://www.jus.uio.no/sisu/
+
+%% images ----------------------------------------------------------------------
+
+Images are placed in the directory beneath the location of the document to be
+processed _sisu/image
+
+The following are examples of links to images
+
+{ tux.png 64x80 }image
+
+{tux.png 64x80 "Gnu/Linux - a better way" }http://www.jus.uio.no/sisu/
+
+{GnuDebianLinuxRubyBetterWay.png 100x101 "Way Better - with Gnu/Linux, Debian and Ruby" }http://www.jus.uio.no/sisu/
+
+The 64x80 in the first example is the image dimension, (width x height). This
+may be omitted if imagemagick or graphicsmagick are installed, as they will
+determine the image dimensions
+
+As with other linked text, the following markup
+
+{~^ ruby_logo.png "Ruby" }http://www.ruby-lang.org/en/
+
+maps to
+
+{ ruby_logo.png "Ruby" }http://www.ruby-lang.org/en/ ~{ http://www.ruby-lang.org/en/ }~
+
+%% grouped text ----------------------------------------------------------------
+
+%% group -----------------------------------------------------------------------
+
+The start and end of text that is grouped are tagged. Grouped text retains its
+line breaks, and is treated as a unit, getting a single ocn
+
+group{
+
+License: GPL 3 or later:
+
+SiSU, a framework for document structuring, publishing and search
+
+Copyright (C) Ralph Amissah
+
+This program is free software: you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free Software
+Foundation, either version 3 of the License, or (at your option) any later
+version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License along with
+this program. If not, see <http://www.gnu.org/licenses/>.
+
+If you have Internet connection, the latest version of the GPL should be
+available at these locations:
+<http://www.fsf.org/licensing/licenses/gpl.html>
+<http://www.gnu.org/licenses/gpl.html>
+
+}group
+
+%% poem ------------------------------------------------------------------------
+
+The start and end of a poem are tagged. Each verse in a poem is given an object
+number. Verses retain their line breaks.
+
+poem{
+
+verse here
+declare
+
+another verse
+here
+
+}poem
+
+%% table -----------------------------------------------------------------------
+
+{table~h 24; 12; 12; 12; 12; 12; 12;}
+                                |Jan. 2001|Jan. 2002|Jan. 2003|Jan. 2004|July 2004|June 2006
+Contributors*                   |       10|      472|    2,188|    9,653|   25,011|   48,721
+Active contributors**           |        9|      212|      846|    3,228|    8,442|   16,945
+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
+
+
+table{ c3; 40; 30; 30;
+
+This is a table
+this would become column two of row one
+column three of row one is here
+
+And here begins another row
+column two of row two
+column three of row two, and so on
+
+}table
+
+a second form may be easier to work with in cases where there is not much information in each column
+
+%% code ------------------------------------------------------------------------
+
+code{
+
+code lines here
+
+and so on
+
+}code
+
+%% headers ---------------------------------------------------------------------
+
+%% header metadata -------------------------------------------------------------
+
+@title: SiSU
+ :subtitle: Markup
+
+@creator:
+ :author: Amissah, Ralph
+
+@rights:
+ :copyright: Copyright (C) Ralph Amissah 2007, part of SiSU documentation
+ :license: GPL 3 or later
+
+@classify:
+ :type: information
+ :topic_register: electronic documents:SiSU:document:markup;SiSU:document:markup;SiSU:document:markup;SiSU:manual:markup;electronic documents:SiSU:manual:markup
+ :subject: ebook, epublishing, electronic book, electronic publishing, electronic document, electronic citation, data structure, citation systems, search
+
+@date:
+ :created: 2002-08-28
+ :issued: 2002-08-28
+ :available: 2002-08-28
+ :published: 2008-05-22
+ :modified: 2010-05-25
+
+@links:
+ { SiSU Manual }http://www.jus.uio.no/sisu/sisu_manual/
+ { Book Samples and Markup Examples }http://www.jus.uio.no/SiSU/examples.html
+ { SiSU @ Wikipedia }http://en.wikipedia.org/wiki/SiSU
+ { SiSU Download }http://www.jus.uio.no/sisu/SiSU/download.html
+ { SiSU Changelog }http://www.jus.uio.no/sisu/SiSU/changelog.html
+
+%% header processing instructions, @make: --------------------------------------
+
+Some document processing parameters can be set in the @make: section of the header
+
+@make:
+ :num_top: 1
+ :breaks: new=C; break=1
+ :skin: skin_sisu_manual
+ :bold: /Gnu|Debian|Ruby|SiSU/
+
+%% config, sisurc.yml ----------------------------------------------------------
+
+There are default configuration settings within the program many of which can
+be modified in sisurc.yml
+
+sisurc.yml can be located in one of the following locations:
+/etc/sisu/sisurc.yml    ~/.sisu/sisurc.yml    and ./_sisu/sisurc.yml
+
+if sisu versions 1 and 2 are both in use, the v2 sisurc.yml can be placed a the
+following locations:
+/etc/sisu/v2/sisurc.yml ~/.sisu/v2/sisurc.yml and ./_sisu/v2/sisurc.yml
+
+# Name: SiSU - Simple information Structuring Universe
+# Author: Ralph@Amissah.com
+# Description: Site wide envionment defaults set here
+# system environment info / resource configuration file, for sisu
+# License: GPL v3 or later
+#   site environment configuration file
+#   this file should be configured and live in
+#      /etc/sisu     #per environment settings, overridden by:
+#      ~/.sisu       #per user settings, overridden by:
+#     ./_sisu        #per local markup directory settings
+#% #image source directory, main path and subdirectories
+#image:
+#  path:         'sisu_working'
+#  public:       '_sisu/image'
+#% presentation/web directory, main path and subdirectories (most subdirectories are created automatically based on markup directory name)
+#webserv:
+#  url_root:     'http://www.your.url' #without dir stub
+#  path:         '/var/www' #either (i) / [full path from root] or (ii) ~/ [home] or (iii) ./ [pwd] or (iv) will be made from home
+#  images:       '_sisu/image'
+#  man:          'man'
+#  cgi:          '/usr/lib/cgi-bin'
+#  feed:         'feed'
+#  sqlite:       'sisu/sqlite'
+#  webrick_url:  true
+#show_output_on: 'filesystem' #for -v and -u url information, alternatives: 'filesystem','webserver','remote_webserver','local:8111','localhost','localhost:8080','webrick','path'
+#show_output_on: 'local:8111'
+#webserv_cgi:
+#  host:         localhost
+#  base_path:    ~
+#  port:         '8081'
+#  user:         ~
+show_output_on: 'filesystem_url'
+#texinfo display output
+#texinfo:
+#  stub:         'texinfo'
+##% processing directories, main path and subdirectories (appended to $HOME), using defaults set in sysenv
+#processing:
+#  path:         '~'
+#  dir:         '.sisu_processing~'
+#  metaverse:    'metaverse'
+#  tune:         'tune'
+#  latex:        'tex'
+#  texinfo:      'texinfo'
+#  concord_max:  400000
+#% flag - set (non-default) processing flag shortcuts -1, -2 etc. (here adding colour and verbosity as default)
+flag:
+  color:        true                        # making colour default -c is toggle, and will now toggle colour off
+  default:      '-NhwepoabxXyYv'            # -m run by default; includes verbose
+  i:            '-hwpoay'                   # -m run by default
+  ii:           '-NhwepoabxXy'              # -m run by default
+  iii:          '-NhwepoabxXyY'             # -m run by default
+  iv:           '-NhwepoabxXYDy --update'   # -m run by default
+  v:            '-NhwepoabxXYDyv --update'  # -m run by default; includes verbose
+#% papersize, (LaTeX/pdf) available values: A4, US_letter, book_b5, book_a5, US_legal
+default:
+  papersize:    'A4,letter'
+  #text_wrap:    78
+  #emphasis:     'bold' #make *{emphasis}* 'bold', 'italics' or 'underscore', default if not configured is 'bold'
+  #digest:       'sha' #sha is sha256, default is md5
+  #multilingual:  false
+  #language_file: 2
+  #language:     'English'
+#% markup, make *{emphasis}* 'bold' or 'italics', default if not configured is 'bold'
+#% settings used by ssh scp
+#remote:
+#  -
+#    user:         '[usrname]'
+#    host:         '[remote.hostname]'
+#    path:         '.' #no trailing slash eg 'sisu/www'
+#  -
+#    user:         '[usrname]'
+#    host:         '[remote.hostname]'
+#    path:         '.' #no trailing slash eg 'sisu/www'
+#% webrick information
+#webrick:
+#  port:         '8081'
+#% sql database info, postgresql and sqlite
+#db:
+#  share_source: false # boolean, default is false
+#  postgresql:
+#    port:       # '[port (default is 5432)]'
+#    host:       # '[if not localhost, provide host tcp/ip address or domain name]''
+#    user:       # '[(if different from user) provide username]'
+#    password:   # '[password if required]'
+#  sqlite:
+#    path:       ~ # './sisu_sqlite.db'
+#    port:       "**"
+#% possible values ~, true, false, or command instruction e.g. editor: 'gvim -c :R -c :S'.
+#will only ignore if value set to false, absence or nil will not remove program as should operate without rc file
+#ie in case of ~ will ignore and use hard coded defaults within program), true, false, or command instruction e.g. editor: 'gvim -c :R -c :S'
+#on value true system defaults used, to change, e.g. editor specify
+permission_set:
+  zap:          false
+  css_modify:   false
+#  remote_base_site:  true
+program_set:
+  rmagick:       false
+#  wc:           true
+#  editor:       true
+#  postgresql:   true
+#  sqlite:       true
+#  tidy:         true
+#  rexml:        true
+#  pdflatex:     true
+#program_select:
+#  editor:       'gvim -c :R -c :S'
+#  pdf_viewer:   'evince'
+#  web_browser:  'firefox' #'iceweasel' #'epiphany' #'galeon' #'konqueror' #'kazehakase'
+#  console_www_browser:  'links2' #'elinks'
+#  odf_viewer:   'oowriter' #'abiword'
+#  xml_viewer:   'xml-viewer'
+#  man:          'nroff -man' #'groff -man -Tascii' # 'nroff -man'
+#promo:              sisu_icon, sisu, sisu_search_libre, open_society, fsf, ruby
+#search:
+#  sisu:
+#    flag:              true
+##    action:            http://localhost:8081/cgi-bin/sisu_pgsql.cgi
+#    action:            http://search.sisudoc.org
+#    db:                sisu
+#    title:             sample search form
+#  hyperestraier:
+#    flag:              true
+#    action:            http://search.sisudoc.org/cgi-bin/estseek.cgi?
+
+
+%% skin ------------------------------------------------------------------------
+
+skins can be used to modify the appearance of output
+
+[provide information]
+
+%% css ------------------------------------------------------------------------
+
+the default css may be replaced for the site or particular processing
+directories
+
+[provide information]
diff --git a/lib/sisu/v2/texpdf_format.rb b/lib/sisu/v2/texpdf_format.rb
index 32ac7aa5..b53864ec 100644
--- a/lib/sisu/v2/texpdf_format.rb
+++ b/lib/sisu/v2/texpdf_format.rb
@@ -632,10 +632,9 @@ module SiSU_TeX_Pdf
       case @tex2pdf
       when /xe/
         <<WOK
-\\usepackage{babel}
-\\usepackage{ucs}
-\\usepackage{fontspec}
-\\usepackage{xunicode}
+\\usepackage{polyglossia, ucs, fontspec, xltxtra, xunicode}
+\\setmainlanguage{#{tex_head_lang}}
+\\setotherlanguage{english}
 WOK
       when /pdf/
         if @md.file_encoding =~ /iso-?8859/i                                   #% iso8859
@@ -669,7 +668,7 @@ WOK
       multicol=(@md.book_idx ? '\usepackage{multicol}' : '')
       <<WOK
 #{tex_head_info}
-\\documentclass[#{d[:fontsize]},#{d[:papertype]},#{tex_head_lang},titlepage]{scrartcl}        %with titlepage
+\\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]}}
@@ -682,7 +681,7 @@ WOK
     def tex_head_paper_landscape(d)
       <<WOK
 #{tex_head_info}
-\\documentclass[#{d[:fontsize]},#{d[:papertype]},#{tex_head_lang},landscape,titlepage,twocolumn]{scrartcl}        %with titlepage
+\\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]}}
@@ -695,7 +694,7 @@ WOK
     def tex_head_paper_portrait_dvi(d)
       <<WOK
 #{tex_head_info}
-\\documentclass[#{d[:fontsize]},#{d[:papertype]},#{tex_head_lang},titlepage]{scrartcl}      %with titlepage
+\\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]}}
@@ -1279,6 +1278,7 @@ WOK
       end
       url=@md.fnb.gsub(/(?:\\)*([$&~%_#}{^])/,'\\\\\1')
 <<WOK
+\\begin{english}[variant=british]
 \\subsection*{Information on this document copy and an unofficial List of Some web related information and sources}
 \\addcontentsline{toc}{section}{Information on this document copy and an unofficial List of Some web related information and sources}
 \\\\
@@ -1303,6 +1303,7 @@ WOK
 \\\\
  #{sitename} found at: \\begin{scriptsize}#{site}\\end{scriptsize}\\subsubsection*{Links that may be of interest at #{@vz.txt_home} and elsewhere:}
 \\addcontentsline{toc}{subsection}{Links that may be of interest}
+\\end{english}
 WOK
     end
     def mail_tail #not retested, the old mail_tail is commented out and appended to this program
-- 
cgit v1.2.3