#+OPTIONS: ^:nil _:nil Developer Notes, Dependencies * description ** short summary: 80 chars smart text parser for document structuring, multiple format publishing & search ** longer SiSU is a lightweight markup based, command line oriented, document structuring, publishing and search framework for document collections. . With minimal preparation of a plain-text (UTF-8) file, using sisu markup syntax in a text editor of your choice, SiSU can generate various document formats (most of which share a common object numbering system for locating content), including plain text, HTML, XHTML, XML, EPUB, OpenDocument text (ODF:ODT), LaTeX, PDF files, and populate an SQL database with objects (roughly paragraph-sized chunks) so searches may be performed and matches returned with that degree of granularity. Think being able to finely match text in documents, using object numbers, across different output formats (and across languages if you have translations of the same document). Search results can be an index of documents and object numbers within them, your criteria is met by these documents at these locations within each document (equally relevant across different output formats and languages). To be clear (if obvious) page numbers provide none of this functionality. Object numbering is particularly suitable for "published" works (finalized texts as opposed to works that are frequently changed or updated) for which it provides a fixed means of reference of content. Document outputs can also share provided semantic meta-data. . SiSU also provides concordance files, document content certificates and manifests of generated output. SiSU provides the means to make book indexes that make use of its object numbering. . A vim syntax highlighting file and an ftplugin with folds for sisu markup is provided. Vim 7 includes syntax highlighting for SiSU. Some syntax hilighting is also available for Emacs and a few other editors. . Dependencies for various features are taken care of in sisu related packages. The package sisu-complete installs the whole of SiSU. . Additional document markup samples are provided in the package sisu-markup-samples which is found in the non-free archive. The licenses for the substantive content of the marked up documents provided is that provided by the author or original publisher. . SiSU uses utf-8 & parses left to right. Currently supported languages: am bg bn br ca cs cy da de el en eo es et eu fi fr ga gl he hi hr hy ia is it ja ko la lo lt lv ml mr nl nn no oc pl pt pt_BR ro ru sa se sk sl sq sr sv ta te th tk tr uk ur us vi zh (see XeTeX polyglossia & cjk) . SiSU works well under po4a translation management, for which an administrative sample Rakefile is provided with sisu_manual under markup-samples. * Generic Dependencies ** source git clone --depth 1 git://git.sisudoc.org/git/code/sisu.git --branch upstream *** full source git clone git://git.sisudoc.org/git/code/sisu.git --branch upstream ** an install method $ qi setup --bin --lib --share --dryrun $ sudo ./qi setup --bin --lib --share $ qi setup --bin --lib --share --conf --data --dryrun $ sudo ./qi setup --bin --lib --share --conf --data $ qi setup --all --dryrun $ sudo ./qi setup --all dryrun ** minimal needed for ---------------------- ruby all, provides outputs text, html xz sisupod zip unzip epub & odt *** images imagemagick | graphicsmagick ruby-rmagick ? ** special requirements *** pdf texlive texlive-cjk texlive-fonts ? texlive-latex ? .sty (texpdf_format.rb) alltt.sty amssymb.sty babel.sty boites.sty color.sty endnotes.sty fancyhdr.sty fontspec.sty footmisc.sty graphicx.sty inputenc.sty listings.sty longtable.sty manyfoot.sty multicol.sty parskip.sty polyglossia.sty soul.sty textcomp.sty thumbpdf.sty titlepic.sty ucs.sty ulem.sty url.sty xetex.sty xltxtra.sty xunicode.sty *** sql db **** sqlite3 sqlite3 ruby-sqlite3 ruby-fcgi (fast-cgi) httpd **** postgresql postgresql ruby-pg ruby-fcgi (fast-cgi) httpd *** qr codes qrencode *** maintenance/installation ruby-thor | rake ruby-thor rake * Debian Dependencies ** source git clone --depth 1 git://git.sisudoc.org/git/code/sisu.git --branch debian/sid ** debian/control (extract) Package: sisu Depends: ${misc:Depends}, ruby | ruby-interpreter, rsync, unzip, zip, xz-utils Recommends: sisu-pdf, sisu-sqlite, sisu-postgresql, imagemagick | graphicsmagick, keychain, openssh-client | lsh-client, openssl, po4a, qrencode, rake, ruby-rmagick, ruby-thor, tidy, tree, vim-addon-manager Suggests: sisu-markup-samples, lv, calibre, pinfo, poedit, texinfo, trang Package: sisu-complete Depends: ${misc:Depends}, sisu (= ${source:Version}), sisu-pdf (= ${source:Version}), sisu-postgresql (= ${source:Version}), sisu-sqlite (= ${source:Version}), imagemagick | graphicsmagick, openssl, qrencode, ruby-thor, tree Suggests: sisu-markup-samples Package: sisu-pdf Depends: ${misc:Depends}, sisu (= ${source:Version}), texlive-latex-base, texlive-fonts-recommended, texlive-generic-recommended, texlive-latex-recommended, texlive-latex-extra, texlive-math-extra, texlive-xetex, fonts-liberation, lmodern, latex-cjk-all, texlive-lang-cjk Suggests: evince | pdf-viewer Package: sisu-postgresql Depends: ${misc:Depends}, sisu (= ${source:Version}), postgresql, ruby-pg, ruby-fcgi | libfcgi-ruby Suggests: fcgiwrap, httpd, postgresql-contrib Package: sisu-sqlite Depends: ${misc:Depends}, sisu (= ${source:Version}), sqlite3, ruby-sqlite3, ruby-fcgi | libfcgi-ruby Suggests: fcgiwrap, httpd * Arch Linux Dependencies ** source sisu-git full clone is more than is needed, so is limiting the branch git clone --branch upstream git://git.sisudoc.org/git/code/sisu.git try get a shallow clone that contains the last tag for git describe source version info git clone --depth 1 --branch upstream git://git.sisudoc.org/git/code/sisu.git git clone --depth 1 --branch archlinux git://git.sisudoc.org/git/code/sisu.git git clone --depth 1 --no-single-branch --branch upstream \ git://git.sisudoc.org/git/code/sisu.git *** git describe, source version git describe --long --tags | sed 's/^sisu_//;s/\([^-]*-g\)/r\1/;s/-/./g' git describe --long --tags | sed 's/^[a-z_-]\+//;s/\([^-]*-g\)/r\1/;s/-/./g' git describe --long --tags | \ sed 's/^[a-z_-]\+\([0-9.]\+\)/\1/;s/\([^-]*-g\)/r\1/;s/-/./g' needs more than a shallow clone of depth 1 ** pacman install sudo pacman -S ruby \ zip unzip xy sudo pacman -S ruby \ texlive-core texlive-latexextra texlive-fontsextra texlive-langcjk sudo pacman -S ruby \ sqlite postgresql # issue with ruby-pg ruby-sqlite ruby-fcgi ** interpreter ruby ** compression tools (epub, odf:odt, sisupod) zip unzip xy ** texlive (pdf) sudo pacman -S texlive-core texlive-latexextra sudo pacman -S texlive-core texlive-latexextra texlive-fontsextra texlive-langcjk texlive-core extra/texlive-core texlive-fontsextra extra/texlive-fontsextra texlive-langcjk extra/texlive-langcjk *** .sty (called from texpdf_format.rb) alltt.sty extra/texlive-core amssymb.sty extra/texlive-core babel.sty extra/texlive-core boites.sty extra/texlive-latexextra color.sty extra/texlive-core endnotes.sty extra/texlive-latexextra fancyhdr.sty extra/texlive-core fontspec.sty extra/texlive-core footmisc.sty extra/texlive-latexextra graphicx.sty extra/texlive-core inputenc.sty extra/texlive-core listings.sty extra/texlive-core longtable.sty extra/texlive-core manyfoot.sty extra/texlive-latexextra multicol.sty extra/texlive-core parskip.sty extra/texlive-core polyglossia.sty extra/texlive-core soul.sty extra/texlive-latexextra textcomp.sty extra/texlive-core thumbpdf.sty extra/texlive-core titlepic.sty extra/texlive-latexextra ucs.sty extra/texlive-latexextra ulem.sty extra/texlive-core url.sty extra/texlive-core xetex.sty ?? xltxtra.sty extra/texlive-core xunicode.sty extra/texlive-core