diff options
author | Ralph Amissah <ralph@amissah.com> | 2013-07-30 21:30:36 -0400 |
---|---|---|
committer | Ralph Amissah <ralph@amissah.com> | 2013-07-30 21:30:39 -0400 |
commit | 3e58296fa7761edaa59f807d4f8e87987ea8e921 (patch) | |
tree | d93286de4e7cba8462a71fa013d223cf84413e88 /lib/sisu/v5/html.rb | |
parent | v5: output structure by, add monolingual alt for :filetype & :filename, step 1 (diff) |
v5: output structure by, monolingual alternative for :filetype or :filename
* filename without language code, if document is in default language
* set a default language, 'en' or as specified
* set in rc file or from command line instruction
* command line e.g.
sisu -hv --monolingual --by-filename sisu_markup.sst
sisu -3v --monolingual --by-filetype sisu_manual.ssm
* sisurc.yml lingual: 'mono' | 'multi'
lingual: 'mono'
* note: output by :filetype is roughly equivalent to what monolingual output
by :language would be
* allow command line setting of default language using language code
--default-language='en' --default-lang-en if used together with
--monolingual and --by-filetype or --by-filename the selected default
language document will not have a language code in the output filename
Diffstat (limited to 'lib/sisu/v5/html.rb')
-rw-r--r-- | lib/sisu/v5/html.rb | 31 |
1 files changed, 25 insertions, 6 deletions
diff --git a/lib/sisu/v5/html.rb b/lib/sisu/v5/html.rb index ff4d149d..f7e2b813 100644 --- a/lib/sisu/v5/html.rb +++ b/lib/sisu/v5/html.rb @@ -418,14 +418,23 @@ WOK linkname,ocn=dob.obj.strip,dob.ocn p_num=SiSU_HTML_Format::ParagraphNumber.new(@md,ocn) if ocn if dob.ln ==4 - seg_link=%{ <a href="#{dob.name}#{@md.lang_code_insert}#{Sfx[:html]}" target="_top"> + fnh={ + fn: dob.name, + lng: @md.lang_code_insert + } + f=@md.file.base_filename.html_seg(fnh) + seg_link=%{ <a href="#{f}" target="_top"> #{dob.obj} </a> } @@seg_url=dob.name elsif dob.obj =~/\d+.\d+.\d+.\d+|\d+.\d+.\d+|\d+.\d+|\d+/ - seg_link=dob.obj.gsub(/^(\d+.\d+.\d+.\d+|\d+.\d+.\d+|\d+.\d+|\d+)(.*)/, - %{<a href="\\1#{@md.lang_code_insert}#{Sfx[:html]}" } + - %{target="_top">\\1 \\2</a> }) + fn,hd=/^(\d+.\d+.\d+.\d+|\d+.\d+.\d+|\d+.\d+|\d+)(.*)/.match(dob.obj)[1,2] + fnh={ + fn: fn, + lng: @md.lang_code_insert + } + f=@md.file.base_filename.html_seg(fnh) + seg_link=%{<a href="#{f}" target="_top">#{fn} #{hd}</a> } end p_num=SiSU_HTML_Format::ParagraphNumber.new(@md,ocn) if ocn @file=SiSU_Env::FileOp.new(@md) if @md @@ -459,8 +468,13 @@ WOK toc={} if ocn \ and ocn !~/#/ + fnh={ + fn: @@seg_url, + lng: @md.lang_code_insert + } + f=@md.file.base_filename.html_seg(fnh) p_num=SiSU_HTML_Format::ParagraphNumber.new(@md,ocn) - lnk_n_txt=%{ <a href="#{@@seg_url}#{@md.lang_code_insert}#{Sfx[:html]}##{ocn}"> + lnk_n_txt=%{ <a href="#{f}##{ocn}"> #{linkname} </a>} txt_obj={ txt: lnk_n_txt } @@ -480,8 +494,13 @@ WOK toc={} if ocn \ and ocn !~/#/ + fnh={ + fn: @@seg_url, + lng: @md.lang_code_insert + } + f=@md.file.base_filename.html_seg(fnh) p_num=SiSU_HTML_Format::ParagraphNumber.new(@md,ocn) - lnk_n_txt=%{ <a href="#{@@seg_url}#{@md.lang_code_insert}#{Sfx[:html]}##{ocn}"> + lnk_n_txt=%{ <a href="#{f}##{ocn}"> #{linkname} </a>} txt_obj={ txt: lnk_n_txt } |