From 88029687c9ad611c1f2c70f789347605dc2041c3 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Fri, 30 Apr 2010 19:52:57 -0400 Subject: emphasis display and plaintext line wrap configurable in document or sis * markup for *{emphasis}* configurable as being displayed either bold or italics, the default is that emphasis output is in bold so there is no at present unless configured, either in sisurc.yml (default: emphasis: 'italics'), or the markup source document header @make: :emphasis: 'it [requested] * plaintext, wrap width configurable between 20 to 200 characters, the default width being 78, configuration eithe rin sisurc.yml (default: t 78), or the markup source document header (@make: :plaintext_wrap: 78) --- lib/sisu/v2/param.rb | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'lib/sisu/v2/param.rb') diff --git a/lib/sisu/v2/param.rb b/lib/sisu/v2/param.rb index a59ac8ff..fc24501a 100644 --- a/lib/sisu/v2/param.rb +++ b/lib/sisu/v2/param.rb @@ -657,6 +657,19 @@ module SiSU_Param y=((x =~/i/) ? (/#{rgx}/i) : (/#{rgx}/)) { :str =>'\b(?:' + m + ')\b', :regx => y } end + def emphasis + (@h['emphasis'] =~/italics?/) \ + ? 'italics' \ + : 'bold' + end + def plaintext_wrap + if @h['plaintext_wrap'].to_s =~/\d\d+/ \ + and @h['plaintext_wrap'].to_i > 19 \ + and @h['plaintext_wrap'].to_i < 201 + @h['plaintext_wrap'].to_i + else nil + end + end def skin @h['skin'] end -- cgit v1.2.3 From 90c65af1050b7ef8027884fe24ce23c9511468c1 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Fri, 30 Apr 2010 23:16:28 -0400 Subject: param_identify_markup, identify version 2 markup --- lib/sisu/v2/param.rb | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) (limited to 'lib/sisu/v2/param.rb') diff --git a/lib/sisu/v2/param.rb b/lib/sisu/v2/param.rb index fc24501a..c2ee0737 100644 --- a/lib/sisu/v2/param.rb +++ b/lib/sisu/v2/param.rb @@ -870,16 +870,16 @@ module SiSU_Param fns_array=@data.dup skip unless fns_array # consider @markup_version=SiSU_Markup_type::Markup_identify.new(fns_array,@opt).markup_version? #% determine markup version - if fns_array[0] =~ /^(?:% )?(?:SiSU\s+(?:master\s+)?[\d.]*|sisu-[\d.]+)$/ #check markup and markup version - if fns_array[0] =~ /^(?:% )?(?:SiSU\s+(?:master\s+)?|sisu-)[\d.]+$/ #check markup and markup version - @markup_version_declared=fns_array[0].match(/^(?:% )?(?:SiSU\s+(?:master\s+)?|sisu-)([\d.]+)$/)[1] - sm_a,sm_b,sm_c=fns_array[0].match(/^(?:% )?(?:SiSU\s+(?:master\s+)?|sisu-)([0-9]+)?(?:\.([0-9]+))?(?:\.([0-9]+))?$/)[1..3] + if fns_array[0] =~ /^(?:%\s+)?(?:SiSU\s+(?:master\s+)?[\d.]*|sisu-[\d.]+)$/ #check markup and markup version + if fns_array[0] =~ /^(?:%\s+)?(?:SiSU\s+(?:master\s+)?|sisu-)[\d.]+$/ #check markup and markup version + @markup_version_declared=fns_array[0].match(/^(?:%\s+)?(?:SiSU\s+(?:master\s+)?|sisu-)([\d.]+)$/)[1] + sm_a,sm_b,sm_c=fns_array[0].match(/^(?:%\s+)?(?:SiSU\s+(?:master\s+)?|sisu-)([0-9]+)?(?:\.([0-9]+))?(?:\.([0-9]+))?$/)[1..3] sm_c ||=0 sv=(@cmd =~/[VMv]/) ? ("SiSU version (#{@sisu_version[:version]})") : '' s_a,s_b,s_c=@sisu_version[:version].match(/^([0-9]+)?(?:\.([0-9]+))?(?:\.([0-9]+))?(?:\-\S+)?$/)[1..3] - tell=(@markup_version_declared.to_f==@markup_version.to_f) \ - ? SiSU_Screen::Ansi.new(@cmd,"Markup version (#{@markup_version})",sv) \ - : SiSU_Screen::Ansi.new(@cmd,"Markup version declared (#{@markup_version_declared}), determined (#{@markup_version})",sv) + tell=(@markup_version_declared.to_f==@markup_version.determined) \ + ? SiSU_Screen::Ansi.new(@cmd,"Markup version (#{@markup_version.series} version #{@markup_version.determined})",sv) \ + : SiSU_Screen::Ansi.new(@cmd,"Markup version declared (#{@markup_version_declared}), determined (#{@markup_version.series} version #{@markup_version.determined})",sv) ok=if s_a.to_i > sm_a.to_i true elsif s_a.to_i == sm_a.to_i \ @@ -894,7 +894,7 @@ module SiSU_Param if ok tell.txt_green if @cmd =~/[vVM]/ else - tell=SiSU_Screen::Ansi.new(@cmd,"Warning: markup version determined (#{@markup_version}) or markup version declared (#{@markup_version_declared}) is newer than SiSU version (#{@sisu_version[:version]})") + tell=SiSU_Screen::Ansi.new(@cmd,"Warning: markup version determined (#{@markup_version.determined}) or markup version declared (#{@markup_version_declared}) is newer than SiSU version (#{@sisu_version[:version]})") tell.warn unless @cmd =~/q/ end else @@ -902,7 +902,12 @@ module SiSU_Param tell.warn if @cmd =~/[VM]/ end else - tell=SiSU_Screen::Ansi.new(@cmd,'SiSU filetype indicator not provided') + mv=if defined? @markup_version.determined and not @markup_version.determined.nil? + x=@markup_version.determined + "markup version determined #{x}" + else '' + end + tell=SiSU_Screen::Ansi.new(@cmd,'SiSU filetype indicator not provided',mv) tell.warn unless @cmd =~/q/ end @code_flag=false @@ -1017,12 +1022,12 @@ module SiSU_Param if para=~/^:?A~/ if @markup.nil? \ or @markup.empty? - @markup=@markup_version.to_s - elsif @markup !~/0\.38/; @markup=@markup.strip + "; #{@markup_version}" + @markup=@markup_version.determined.to_s + elsif @markup !~/0\.38/; @markup=@markup.strip + "; #{@markup_version.determined}" end end - if (para=~/^:?A~/ and @markup_version >= 0.38) \ - or (para=~/^1~/ and @markup_version < 0.38) + if (para=~/^:?A~/ and @markup_version.determined >= 0.38) \ + or (para=~/^1~/ and @markup_version.determined < 0.38) if @title.nil? @title=para[/^:?[A1]~\S*(.+)$/m,1] @html_title=@title.gsub(/(

|

|
|
)/,'') @@ -1130,7 +1135,7 @@ module SiSU_Param end @topic_register_array.sort! end - if @markup_version.to_f >= 0.38 #convert values in headers to internal representation + if @markup_version.determined >= 0.38 #convert values in headers to internal representation translated=[] translate_list=[@pagenew,@pagebreak,@num_top,@toc_lev_limit] translate_list.each do |t| -- cgit v1.2.3 From 2708d32e438edcddabdc6d62fc6898cbbe07f2a9 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Sat, 1 May 2010 08:58:49 -0400 Subject: *{emphasis}* display configurable as being bold, italics or underscore * markup for *{emphasis}* configurable as being displayed as bold, italics or underscore, the default is that emphasis output is in bold so there is no change unless configured, either in sisurc.yml (default: emphasis: 'bold'), or the markup source document header @make: :emphasis: 'bold' --- lib/sisu/v2/param.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'lib/sisu/v2/param.rb') diff --git a/lib/sisu/v2/param.rb b/lib/sisu/v2/param.rb index c2ee0737..5df8271e 100644 --- a/lib/sisu/v2/param.rb +++ b/lib/sisu/v2/param.rb @@ -658,9 +658,11 @@ module SiSU_Param { :str =>'\b(?:' + m + ')\b', :regx => y } end def emphasis - (@h['emphasis'] =~/italics?/) \ - ? 'italics' \ - : 'bold' + if @h['emphasis'] =~/bold/; 'bold' + elsif @h['emphasis'] =~/italics?/; 'italics' + elsif @h['emphasis'] =~/under(?:line|score)/; 'underscore' + else nil + end end def plaintext_wrap if @h['plaintext_wrap'].to_s =~/\d\d+/ \ -- cgit v1.2.3 From 67e49a2b278b1512fb39a33a779f68a1389f9849 Mon Sep 17 00:00:00 2001 From: Ralph Amissah Date: Mon, 3 May 2010 19:09:54 -0400 Subject: ansi, screen info related, arranging --- lib/sisu/v2/param.rb | 45 +++++++++++++++------------------------------ 1 file changed, 15 insertions(+), 30 deletions(-) (limited to 'lib/sisu/v2/param.rb') diff --git a/lib/sisu/v2/param.rb b/lib/sisu/v2/param.rb index 5df8271e..3db97340 100644 --- a/lib/sisu/v2/param.rb +++ b/lib/sisu/v2/param.rb @@ -106,8 +106,7 @@ module SiSU_Param @md end if defined? @md.title.main # on removal check problems with -U - tell=SiSU_Screen::Ansi.new(@cmd,param_msg,@md.title.main) - tell.txt_grey if @cmd =~/[MVv]/ + SiSU_Screen::Ansi.new(@cmd,param_msg,@md.title.main).txt_grey if @cmd =~/[MVv]/ end @@md=@md else @@md @@ -162,8 +161,7 @@ module SiSU_Param puts "#{n} is #{s.class}: programming error, String expected #{__FILE__}:#{__LINE__}" s else - tell=SiSU_Screen::Ansi.new('v',"#{n} length #{s.length} exceeds set db field length #{l}, metadata dropped",@opt.fns) - tell.warn unless @opt.cmd =~/q/ + SiSU_Screen::Ansi.new('v',"#{n} length #{s.length} exceeds set db field length #{l}, metadata dropped",@opt.fns).warn unless @opt.cmd =~/q/ nil end end @@ -391,8 +389,7 @@ module SiSU_Param elsif @h['main'] @h['main'] else - tell=SiSU_Screen::Ansi.new(@cmd,'WARNING Document Copyright missing; provide @rights: :copyright:') - tell.warn unless @opt.cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,'WARNING Document Copyright missing; provide @rights: :copyright:').warn unless @opt.cmd =~/q/ '' end l,n=Db[:col_info_note],'rights.copyright.text' @@ -459,8 +456,7 @@ module SiSU_Param s +=' License: ' + copyright.license end if s.empty? - tell=SiSU_Screen::Ansi.new(@cmd,'WARNING Document Rights information missing; provide @rights: :copyright:') - tell.warn unless @opt.cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,'WARNING Document Rights information missing; provide @rights: :copyright:').warn unless @opt.cmd =~/q/ else l,n=Db[:col_info_note],'rights.all' validate_length(s,l,n) @@ -896,12 +892,10 @@ module SiSU_Param if ok tell.txt_green if @cmd =~/[vVM]/ else - tell=SiSU_Screen::Ansi.new(@cmd,"Warning: markup version determined (#{@markup_version.determined}) or markup version declared (#{@markup_version_declared}) is newer than SiSU version (#{@sisu_version[:version]})") - tell.warn unless @cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,"Warning: markup version determined (#{@markup_version.determined}) or markup version declared (#{@markup_version_declared}) is newer than SiSU version (#{@sisu_version[:version]})").warn unless @cmd =~/q/ end else - tell=SiSU_Screen::Ansi.new(@cmd,'No SiSU markup version provided') - tell.warn if @cmd =~/[VM]/ + SiSU_Screen::Ansi.new(@cmd,'No SiSU markup version provided').warn if @cmd =~/[VM]/ end else mv=if defined? @markup_version.determined and not @markup_version.determined.nil? @@ -909,8 +903,7 @@ module SiSU_Param "markup version determined #{x}" else '' end - tell=SiSU_Screen::Ansi.new(@cmd,'SiSU filetype indicator not provided',mv) - tell.warn unless @cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,'SiSU filetype indicator not provided',mv).warn unless @cmd =~/q/ end @code_flag=false fns_array.each do |para| #% Scan document @@ -1035,8 +1028,7 @@ module SiSU_Param @html_title=@title.gsub(/(

|

|
|
)/,'') @title.chomp!("\n") @html_title.chomp!("\n") - tell=SiSU_Screen::Ansi.new(@cmd,'Parameters',@html_title) - tell.txt_grey if @cmd =~/v/ + SiSU_Screen::Ansi.new(@cmd,'Parameters',@html_title).txt_grey if @cmd =~/v/ end end end @@ -1213,8 +1205,7 @@ module SiSU_Param if @en[:note] > 0 \ and @en[:sum] > 0 if @en[:sum] > 0 - else tell=SiSU_Screen::Ansi.new(@cmd,'both endnote styles used',"~{ #{@en[:sum]} }~ and ^~ #{@en[:mark]}") - tell.warn if @cmd !~/q/ + else SiSU_Screen::Ansi.new(@cmd,'both endnote styles used',"~{ #{@en[:sum]} }~ and ^~ #{@en[:mark]}").warn if @cmd !~/q/ end end if @en[:mark] != @en[:note] \ @@ -1225,12 +1216,10 @@ module SiSU_Param footnote_conversion_errors << "#{@fns}:\n\tendnotes: #{@en[:note]} != endnote reference marks: #{@en[:mark]} (difference = #{@en[:mismatch]})\n" end if @title.main !~/[\S]/ - tell=SiSU_Screen::Ansi.new(@cmd,'WARNING Document Title missing','please provide @title:') - tell.warn unless @cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,'WARNING Document Title missing','please provide @title:').warn unless @cmd =~/q/ end if @author !~/[\S]/ - tell=SiSU_Screen::Ansi.new(@cmd,'Warning Document Author missing','please provide @creator: :author:') - tell.warn unless @cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,'Warning Document Author missing','please provide @creator: :author:').warn unless @cmd =~/q/ end # Elementary Document Structure Analysis - adds complexity may remove - need to develop - appears to work, proof of concept if @title.nil? @@ -1244,10 +1233,8 @@ module SiSU_Param @title.chomp!("\n") @html_title.chomp!("\n") title_trigger=1 - tell=SiSU_Screen::Ansi.new(@cmd,@html_title) - tell.txt_cyan unless @cmd =~/q/ - tell=SiSU_Screen::Ansi.new(@cmd,'Parameters') - tell.txt_grey unless @cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,@html_title).txt_cyan unless @cmd =~/q/ + SiSU_Screen::Ansi.new(@cmd,'Parameters').txt_grey unless @cmd =~/q/ end end end @@ -1315,8 +1302,7 @@ module SiSU_Param @lv5 ||=/^5~/ @lv6 ||=/^6~/ if @doc_skin - tell=SiSU_Screen::Ansi.new(@cmd,"doc_skin <- #{@doc_skin}") - tell.txt_grey if @cmd =~/v/ + SiSU_Screen::Ansi.new(@cmd,"doc_skin <- #{@doc_skin}").txt_grey if @cmd =~/v/ end @data=nil #else whole file's contents are stored in md pstore & is not required to be... big waste actually Store.new(self,@env).store #% pstore @@ -1330,8 +1316,7 @@ module SiSU_Param end def store File.unlink(@pstorefile) if FileTest.file?(@pstorefile) - tell=SiSU_Screen::Ansi.new(@md.cmd,"PStore -> #{@pstorefile}") - tell.txt_grey if @md.cmd =~/[MV]/ + SiSU_Screen::Ansi.new(@md.cmd,"PStore -> #{@pstorefile}").txt_grey if @md.cmd =~/[MV]/ store=PStore.new(@pstorefile) store.transaction do store['md']=@md -- cgit v1.2.3