#+PRIORITIES: A F E (emacs:evil mode gifts a "vim" of "alternative" powers! ;) * Markup :sisu:markup: ** sisu #% structure - headings, levels * headings (A-D, 1-3) * inline 'A~ ' NOTE title level 'B~ ' NOTE optional 'C~ ' NOTE optional 'D~ ' NOTE optional '1~ ' NOTE chapter level '2~ ' NOTE optional '3~ ' NOTE optional '4~ ' NOTE optional :consider: * node * parent * children #% font face NOTE open & close marks, inline within paragraph * emphasize '*{ ... }*' NOTE configure whether bold italics or underscore, default bold * bold '!{ ... }!' * italics '/{ ... }/' * underscore '_{ ... }_' * superscript '^{ ... }^' * subscript ',{ ... },' * strike '-{ ... }-' * add '+{ ... }+' * monospace '#{ ... }#' #% para NOTE paragraph controls are at the start of a paragraph * a para is a block of text separated from others by an empty line * indent * default, all '_1 ' up to '_9 ' * first line hang '_1_0 ' * first line indent further '_0_1 ' * bullet [levels 1-6] '_* ' '_1* ' '_2* ' * numbered list [levels 1-3] '# ' #% blocks NOTE text blocks that are not to be treated in the way that ordinary paragraphs would be * code * [type of markup if any] * poem * group * alt * tables #% boxes NOTE grouped text with code block type color & possibly default image, warning, tip, red, blue etc. decide [NB N/A not implemented] #% notes NOTE inline within paragraph at the location where the note reference is to occur * footnotes '~{ ... }~' * [bibliography] [NB N/A not implemented] #% links, linking * links - external, web, url * links - internal #% images [multimedia?] * images * [base64 inline] [N/A not implemented] #% object numbers * ocn (object numbers) automatically attributed to substantive objects, paragraphs, tables, blocks, verse (unless exclude marker provided) #% contents * toc (table of contents) autogenerated from structure/headings information * index (book index) built from hints in newline text following a paragraph and starting with ={} has identifying rules for main and subsidiary text #% breaks * line break ' \\ ' inline * page break, column break ' -\\- ' start of line, breaks a column, starts a new column, if using columns, else breaks the page, starts a new page. * page break, page new ' =\\= ' start of line, breaks the page, starts a new page. * horizontal '-..-' start of line, rule page (break) line across page (dividing paragraphs) #% book type index #% comment * comment #% misc * term & definition ** proposals/additions *** TODO [#B] markup syntax code block, indicate syntax of code :feature: ``` code:ruby *** TODO [#C] colored boxes round text :feature:ponder: ``` box:red (select color of box) ``` box:warn ``` box:tip (some default boxes? decide) ``` box:red:"Warn" (select color and lead text of box, else instead select color box & use regular single line bold markup ^!_ Warn$) *** TODO [#D] bibliography :feature:ponder: *** TODO speaker, as e.g. play (irc?) :feature:ponder: ``` Ophelia: ::Ophelia *** TODO [#F] time stamp (e.g. for irc, video text?):feature:ponder: ``` 04:03 ``` 04:03 ... 07:12 ``` 04:03 + 03:09 ``` 12:04:03 ``` 12:04:03 ... 12:07:12 ``` 12:04:03 + 03:09 probably not worth the effort, as time stamp is an alternative identifying number (to ocn, and ∴ sisu objects not ideal) *** TODO book index, alternative based on search within text ** syntax hilighting *** vim data/sisu/conf/editor-syntax-etc/vim/ data/sisu/conf/editor-syntax-etc/vim/syntax/sisu.vim *** emacs data/sisu/conf/editor-syntax-etc/emacs/ data/sisu/conf/editor-syntax-etc/emacs/sisu-mode.el * Document Abstraction :sisu:doc_abstr: ** TODO [#D] XML middle layer? *** XMLda sisu consder alternative sisu layer in XML *** TODO [#D] RelaxNG sisu * Output :sisu:output: ** New outputs *** XML :xml: %% xml, docbook.txt fictionbook.txt xldl.txt lml.txt tei.txt emacs.txt xml editor vim emacs nXML plugin emacs.txt evil.txt To validate a book.xml file using xmllint, run the following command: $ xmllint --postvalid --xinclude --noout book.xml The default location where xmllint will look for the catalog file is /etc/xml/catalog. Alternatively, you can set the environment variable XML_CATALOG_FILES to define another default location for catalog files. Once you’ve got the DTD and catalog set up locally, you can validate as before: $ xmllint --postvalid --xinclude --noout book.xml %% Docbook docbook.txt %% Fictionbook fictionbook.txt %% XLDL xldl.txt %% Literature Markup Language lml.txt %% Text Encoding Initiative tei.txt **** TODO [#B] docbook :feature: ***** urls #% docbook book xml.txt ***** rb file lib/sisu/v6/xml_docbook5.rb ***** transformations :transform:markup_docbook: #% structure - headings, levels [] sisu (A-C, 1-3) [] collapsed (1-6) (decoration) [] node (child, parent ...) #% font face [] bold [] italics [] underscore [] superscript [] subscript [] strike [] add #% para [] default [] indent [] default, all [] first line hang or indent further [] bullet #% blocks [] code [] [type of markup if any] [] poem [] group [] alt [] tables #% notes [] footnotes [] [bibliography?] #% links, linking [] links - external, web, url [] links - internal #% images [multimedia?] [] images [] [base 64] #% object numbers [] ocn (object numbers) #% contents [] toc (table of contents) [] index (book index) #% misc **** TODO [#D] fictionbook :feature: ***** urls #% fictionbook xml.txt ***** rb file lib/sisu/v6/xml_fictionbook2.rb ***** transformations :transformations:markup_fictionbok: #% #% structure - headings, levels [] sisu (A-C, 1-3) [] collapsed (1-6) (decoration) [] node (child, parent ...) #% font face [] bold [] italics [] underscore [] superscript [] subscript [] strike [] add [] monospace #% para [] default [] indent [] default, all [] first line hang or indent further [] bullet #% blocks [] code [] [type of markup if any] [] poem [] group [] alt [] tables #% notes [] footnotes [] [bibliography?] #% links, linking [] links - external, web, url [] links - internal #% images [multimedia?] [] images [] [base 64] #% object numbers [] ocn (object numbers) #% contents [] toc (table of contents) [] index (book index) #% breaks [] line break [] horizontal rule [] column break [] page break #% comment [] comment #% misc **** TODO [#D] XLDL :feature: ***** urls %% xml.txt xldl - novels, stories, poems Name: XLDL - an XML doctype for novels, stories, poems, playsName: XLDL - an XML doctype for novels, stories, poems, plays **** TODO [#E] Literature Markup Language - :feature: ***** urls %% Literature Markup Language - "It is assumed, that there are three quite different techniques to provide text, respectively three types of text, this is prose and poetry and code (for example source code of computer programs or from markup languages)." Suggestions and Ideas for Literature Markup Language - 1.1 **** TODO [#E] TEI Lite (Text Encoding Initiative) :feature: ***** urls %% TEI Lite (Text Encoding Initiative) *** Text :txt: sisu_markup.txt asciidoc.txt markdown.txt textile.txt rst.txt **** TODO [#D] asciidoc :feature: ***** urls #% asciidoc cheatsheets ***** rb file lib/sisu/v6/txt_asaciidoc.rb ***** transformations :transformations:markup_asciidoc: #% #% structure - headings, levels [] sisu (A-C, 1-3) [] collapsed (1-4) (decoration) [] inline '== ' '=== ' '==== ' '===== ' '' '' [] underscore '-' '~' '^' '+' '' ['.' proposed] '' ['.' proposed] [] node (child, parent ...) #% font face [open & close marks] [] bold '*' [] italics '_' [] underscore '' [] superscript '^' [] subscript '~' [] strike '-' [] add [] monospace '+' '`' pass markup through unchanged, monospace code #% para [] default [] indent [] default, all [] first line hang or indent further [] bullet [levels 1-6] '*' '**' '***' '****' '*****' '*******' [] numbered list [levels 1-3] '. ' number '.. ' lower alpha '... ' lower roman '.... ' upper alpha '..... ' upper roman #% blocks [] code [source,perl] ---- code here ---- [] [type of markup if any] [] poem [] group ---- grouped text here, actually a listing block ---- [] alt [] tables #% notes [] footnotes [] [bibliography?] #% links, linking [] links - external, web, url http://google.com[Google Search] [] links - internal #% images [multimedia?] [] images [] [base 64] #% object numbers [] ocn (object numbers) #% contents [] toc (table of contents) [] index (book index) #% breaks [] line break "+\n" forced + line break [] horizontal rule [] column break [] page break #% comment [] comment // #% misc [] term & definition Term 1:: Definition 1 Term 2:: Definition 2 [horizontal] Term 2.1;; Definition 2.1 Term 2.2;; Definition 2.2 **** TODO [#E] markdown :feature: ***** urls #% markdown Markdown supports two styles of headers, Setext and atx Setext atx #% pandoc markdown #% multimarkdown #% markdown pandoc v multimarkdown #% rST v markdown ***** rb file lib/sisu/v6/txt_markdown.rb ***** transformations :transformations:markup_markdown: #% #% structure - headings, levels [] sisu (A-C, 1-3) [] collapsed (1-6) (decoration) [inline 1-5] '#' '##' '###' '####' '#####' '######' [underscore 1-5] '=' '-' #'~' #'^' #'+' [] node (child, parent ...) #% font face [open & close marks] [] bold '**' [] italics '*' [] underscore '' [] superscript '' [] subscript '' [] strike '' [] add [] monospace '`' #% para [] default [] indent [] default, all [] first line hang or indent further [] bullet '*' [] numbered list '0.' #% blocks [] code ' ' #indent at least 4 spaces [] [type of markup if any] [] poem [] group [] alt [] tables #% notes [] footnotes [] [bibliography?] #% links, linking [] links - external, web, url [] links - internal #% images [multimedia?] [] images [] [base 64] #% object numbers [] ocn (object numbers) #% contents [] toc (table of contents) [] index (book index) #% breaks [] line break [] horizontal rule (three or more asterisks hypens or underscores) * * * *** ***** - - - ___ [] column break [] page break #% misc **** TODO [#F] rst :feature: ***** urls #% rST #% rST v markdown ***** rb file lib/sisu/v6/txt_rst.rb ***** transformations :transformations:markup_rst: #% #% structure - headings, levels [] sisu (A-C, 1-3) [] collapsed (1-6) (decoration) [inline] N/A [underscore] Titles are underlined (or over- and underlined) with a printing nonalphanumeric 7-bit ASCII character. Recommended choices are "= - ` : ' " ~ ^ _ * + # < >". The underline/overline must be at least as long as the title text. '=' '-' '`' ':' "'" '"' [] node (child, parent ...) #% font face [] bold '**' [] italics '*' [] underscore '+' [] superscript '^' [] subscript [] strike '-' [] add [] monospace '``' #% para [] default [] indent [] default, all [] first line hang or indent further [] bullet "-", "*" or "+" '-' [] numbered list '#.' #% blocks [] code [] [type of markup if any] [] poem [] group [] alt [] tables #% notes [] footnotes [binary] Footnote references, like [5]_. Note that footnotes may get rearranged, e.g., to the bottom of the "page". .. [5] A numerical footnote. -- Autonumbered footnotes are possible, like using [#]_ and [#]_. .. [#] This is the first one. .. [#] This is the second one. [] [bibliography?] #% links, linking [] links - external, web, url Typical result External hyperlinks, like Python_. .. _Python: or External hyperlinks, like `Python `_. [] links - internal Internal crossreferences, like example_. .. _example: This is an example crossreference target. -- Titles are targets, too ======================= Implict references, like `Titles are targets, too`_. #% images [multimedia?] [] images [] [base 64] #% object numbers [] ocn (object numbers) #% contents [] toc (table of contents) [] index (book index) #% breaks [] line break [] horizontal rule [] column break [] page break #% misc **** TODO [#F] textile :feature: ***** urls #% textile v2.4 v2 ***** rb file lib/sisu/v6/txt_textile.rb ***** transformations :transformations:markup_textile: #% #% structure - headings, levels [] sisu (A-C, 1-3) [] collapsed (1-6) (decoration) [inline] h1(#id). An HTML first-level heading h2. An HTML second-level heading h3. An HTML third-level heading h4. An HTML fourth-level heading h5. An HTML fifth-level heading h6. An HTML sixth-level heading [underscore] N/A [] node (child, parent ...) #% font face [] bold *bold text* [] italics _italic text_ [] underscore +underlined text+ [] superscript ^TM^ [] subscript ~subscript~ [] strike -strikethrough text- [] add #% para [] default [] indent [] default, all [] first line hang or indent further [] bullet * bulleted list ** 2-level #% blocks [] code [] [type of markup if any] [] poem [] group [] alt [] tables |Table | with two columns | |and two | rows | #% notes [] footnotes Text with a link to some reference[1] fn1. Footnote explanation [] [bibliography?] #% links, linking [] links - external, web, url "(classname)link text(title tooltip)":link_address "Link to Wikipedia":http://www.wikipedia.org [] links - internal #% images [multimedia?] [] images !http://commons.wikimedia.org/wiki/Special:Filepath/Wikipedia-logo-en.png! !imageurl(alt text)! [] [base 64] #% object numbers [] ocn (object numbers) #% contents [] toc (table of contents) [] index (book index) #% breaks [] line break [] horizontal rule [] column break [] page break #% misc [] *_bold italic text_* [] *-bold strikethrough text-* [] *_-bold italic strikethrough text-_* [] *+bold underlined text+* [] *_+italic underlined text+_ [] *_+bold italic underlined text+_ [] *_-+bold italic strikethrough underlined text+-_* %{font-size:18pt}font size% %{color:red}text in red% # Chapter 1 #% notes heading inline only footnotes uses marker and endnote, check ** Improvements *** HTML *** XML *** --strict mode (html w3c compliant ocn etc.) * Code (ruby) :sisu:code: ** code enhancements :enhance: *** TODO [#D] directory & path, use ruby directory tools *** TODO [#D] document url shortcut, allow addition of alternative dir stub (e.g. viral Spiral) ** code refactoring :refactor: *** ruby 2.1 **** DONE make sure sisu works *** TODO [#C] refactor ruby :ongoing: