maruku 0.5.9 → 0.6.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/bin/maruku +6 -1
- data/bin/marutest +25 -18
- data/lib/maruku.rb +3 -0
- data/lib/maruku/ext/div.rb +39 -6
- data/lib/maruku/ext/math/latex_fix.rb +1 -0
- data/lib/maruku/ext/math/mathml_engines/blahtex.rb +9 -8
- data/lib/maruku/ext/math/parsing.rb +15 -1
- data/lib/maruku/ext/math/to_html.rb +34 -17
- data/lib/maruku/ext/math/to_latex.rb +4 -0
- data/lib/maruku/helpers.rb +3 -3
- data/lib/maruku/input/charsource.rb +1 -1
- data/lib/maruku/input/parse_block.rb +1 -0
- data/lib/maruku/input/parse_doc.rb +12 -5
- data/lib/maruku/input/parse_span_better.rb +24 -10
- data/lib/maruku/output/s5/to_s5.rb +14 -1
- data/lib/maruku/output/to_html.rb +20 -1
- data/lib/maruku/output/to_latex.rb +27 -0
- data/lib/maruku/output/to_latex_entities.rb +2 -2
- data/lib/maruku/output/to_s.rb +5 -2
- data/lib/maruku/string_utils.rb +2 -2
- data/lib/maruku/structures.rb +2 -0
- data/lib/maruku/tests/new_parser.rb +5 -2
- data/lib/maruku/version.rb +1 -1
- data/tests/bugs/code_in_links.md +85 -0
- data/tests/bugs/complex_escaping.md +34 -0
- data/tests/unittest/abbreviations.md +2 -10
- data/tests/unittest/alt.md +2 -3
- data/tests/unittest/attributes/att2.md +2 -4
- data/tests/unittest/attributes/att3.md +2 -7
- data/tests/unittest/attributes/attributes.md +2 -15
- data/tests/unittest/attributes/circular.md +2 -7
- data/tests/unittest/attributes/default.md +2 -6
- data/tests/unittest/blank.md +2 -5
- data/tests/unittest/blanks_in_code.md +2 -21
- data/tests/unittest/bug_def.md +2 -3
- data/tests/unittest/bug_table.md +2 -11
- data/tests/unittest/code.md +2 -9
- data/tests/unittest/code2.md +2 -8
- data/tests/unittest/code3.md +2 -21
- data/tests/unittest/data_loss.md +2 -7
- data/tests/unittest/divs/div1.md +32 -57
- data/tests/unittest/divs/div2.md +6 -7
- data/tests/unittest/divs/div3_nest.md +8 -13
- data/tests/unittest/easy.md +2 -3
- data/tests/unittest/email.md +2 -3
- data/tests/unittest/encoding/iso-8859-1.md +2 -5
- data/tests/unittest/encoding/utf-8.md +2 -5
- data/tests/unittest/entities.md +2 -20
- data/tests/unittest/escaping.md +2 -12
- data/tests/unittest/extra_dl.md +2 -10
- data/tests/unittest/extra_header_id.md +2 -13
- data/tests/unittest/extra_table1.md +2 -8
- data/tests/unittest/footnotes.md +2 -19
- data/tests/{bugs/html.md → unittest/hang.md} +9 -9
- data/tests/unittest/headers.md +2 -7
- data/tests/unittest/hex_entities.md +2 -3
- data/tests/unittest/hrule.md +2 -11
- data/tests/unittest/html2.md +2 -6
- data/tests/unittest/html3.md +2 -6
- data/tests/unittest/html4.md +2 -7
- data/tests/unittest/html5.md +2 -5
- data/tests/unittest/ie.md +2 -23
- data/tests/unittest/images.md +2 -14
- data/tests/unittest/images2.md +2 -5
- data/tests/unittest/inline_html.md +6 -102
- data/tests/unittest/inline_html2.md +2 -5
- data/tests/unittest/links.md +17 -50
- data/tests/unittest/links2.md +2 -3
- data/tests/unittest/list1.md +2 -10
- data/tests/unittest/list12.md +2 -5
- data/tests/unittest/list2.md +2 -10
- data/tests/unittest/list3.md +2 -14
- data/tests/unittest/list4.md +2 -17
- data/tests/unittest/lists.md +2 -39
- data/tests/unittest/lists10.md +2 -7
- data/tests/unittest/lists11.md +2 -5
- data/tests/unittest/lists6.md +2 -3
- data/tests/unittest/lists9.md +2 -11
- data/tests/unittest/lists_after_paragraph.md +3 -51
- data/tests/unittest/lists_ol.md +2 -52
- data/tests/unittest/loss.md +2 -3
- data/tests/unittest/math/equations.md +54 -37
- data/tests/unittest/math/inline.md +4 -12
- data/tests/unittest/math/math2.md +4 -57
- data/tests/unittest/math/notmath.md +2 -5
- data/tests/unittest/math/table.md +5 -11
- data/tests/unittest/math/table2.md +2 -8
- data/tests/unittest/misc_sw.md +2 -80
- data/tests/unittest/notyet/escape.md +2 -5
- data/tests/unittest/notyet/header_after_par.md +2 -13
- data/tests/unittest/notyet/ticks.md +2 -3
- data/tests/unittest/notyet/triggering.md +2 -39
- data/tests/unittest/olist.md +2 -9
- data/tests/unittest/one.md +2 -3
- data/tests/unittest/paragraph.md +2 -3
- data/tests/unittest/paragraph_rules/dont_merge_ref.md +2 -5
- data/tests/unittest/paragraph_rules/tab_is_blank.md +2 -5
- data/tests/unittest/paragraphs.md +2 -10
- data/tests/unittest/pending/amps.md +2 -4
- data/tests/unittest/pending/empty_cells.md +2 -6
- data/tests/unittest/pending/link.md +2 -21
- data/tests/unittest/pending/ref.md +2 -3
- data/tests/unittest/recover/recover_links.md +7 -8
- data/tests/{bugs → unittest/red_tests}/abbrev.md +12 -103
- data/tests/unittest/{lists7.md → red_tests/lists7.md} +2 -13
- data/tests/unittest/{lists7b.md → red_tests/lists7b.md} +2 -10
- data/tests/unittest/{lists8.md → red_tests/lists8.md} +2 -9
- data/tests/unittest/red_tests/xml.md +70 -0
- data/tests/unittest/references/long_example.md +2 -7
- data/tests/unittest/references/spaces_and_numbers.md +2 -3
- data/tests/unittest/smartypants.md +2 -47
- data/tests/unittest/syntax_hl.md +2 -18
- data/tests/unittest/table_attributes.md +2 -8
- data/tests/unittest/test.md +2 -3
- data/tests/unittest/underscore_in_words.md +27 -0
- data/tests/unittest/wrapping.md +2 -11
- data/tests/unittest/xml2.md +2 -5
- data/tests/unittest/xml3.md +2 -8
- data/tests/unittest/xml_instruction.md +2 -10
- data/unit_test_span.sh +2 -1
- metadata +242 -241
- data/docs/changelog.html +0 -490
- data/docs/entity_test.html +0 -258
- data/docs/exd.html +0 -307
- data/docs/index.html +0 -332
- data/docs/markdown_syntax.html +0 -690
- data/docs/maruku.html +0 -332
- data/docs/proposal.html +0 -326
- data/docs/tmp.md +0 -2
- data/lib/sort_prof.rb +0 -22
- data/tests/bugs/links.md +0 -47
- data/tests/diagrams/diagrams.md +0 -302
- data/tests/s5/a.md +0 -13
- data/tests/s5/instiki+s5.md +0 -105
- data/tests/unittest/xml.md +0 -54
| @@ -1,5 +1,13 @@ | |
| 1 1 | 
             
            # This module groups all functions related to HTML export.
         | 
| 2 2 | 
             
            module MaRuKu
         | 
| 3 | 
            +
             | 
| 4 | 
            +
            begin
         | 
| 5 | 
            +
                    require 'rexml/formatters/pretty'
         | 
| 6 | 
            +
                    require 'rexml/formatters/default'
         | 
| 7 | 
            +
                    $rexml_new_version = true
         | 
| 8 | 
            +
            rescue LoadError
         | 
| 9 | 
            +
                    $rexml_new_version = false      
         | 
| 10 | 
            +
            end
         | 
| 3 11 |  | 
| 4 12 | 
             
            	class MDDocument
         | 
| 5 13 |  | 
| @@ -105,7 +113,12 @@ module MaRuKu | |
| 105 113 |  | 
| 106 114 | 
             
            		xml  = "" 
         | 
| 107 115 | 
             
            		if (content_only)
         | 
| 108 | 
            -
            		    | 
| 116 | 
            +
            		   if $rexml_new_version
         | 
| 117 | 
            +
            		     formatter = REXML::Formatters::Default.new(ie_hack)
         | 
| 118 | 
            +
                                 formatter.write(body, xml)
         | 
| 119 | 
            +
            		   else
         | 
| 120 | 
            +
            		     body.write(xml,indent,transitive=true,ie_hack);
         | 
| 121 | 
            +
            		  end
         | 
| 109 122 | 
             
            		else
         | 
| 110 123 | 
             
            		  doc2 = Document.new("<div>"+S5_external+"</div>",{:respect_whitespace =>:all})
         | 
| 111 124 | 
             
            		  doc2.root.children.each{ |child| head << child }
         | 
| @@ -188,6 +188,7 @@ Example: | |
| 188 188 |  | 
| 189 189 | 
             
            =end
         | 
| 190 190 |  | 
| 191 | 
            +
            	METAS = %w{description keywords author revised}
         | 
| 191 192 |  | 
| 192 193 | 
             
            	# Render to a complete HTML document (returns a REXML document tree)
         | 
| 193 194 | 
             
            	def to_html_document_tree
         | 
| @@ -209,7 +210,25 @@ Example: | |
| 209 210 | 
             
            #			me.attributes['content'] = 'text/html;charset=utf-8'	
         | 
| 210 211 | 
             
            			me.attributes['content'] = 'application/xhtml+xml;charset=utf-8'	
         | 
| 211 212 |  | 
| 213 | 
            +
            			METAS.each do |m|
         | 
| 214 | 
            +
            				if value = self.attributes[m.to_sym]
         | 
| 215 | 
            +
            					meta = Element.new 'meta', head
         | 
| 216 | 
            +
            					meta.attributes['name'] = m
         | 
| 217 | 
            +
            					meta.attributes['content'] = value.to_s
         | 
| 218 | 
            +
            				end
         | 
| 219 | 
            +
            			end
         | 
| 220 | 
            +
            			
         | 
| 221 | 
            +
            			
         | 
| 222 | 
            +
            			self.attributes.each do |k,v|
         | 
| 223 | 
            +
            				if k.to_s =~ /\Ameta-(.*)\Z/
         | 
| 224 | 
            +
            					meta = Element.new 'meta', head
         | 
| 225 | 
            +
            					meta.attributes['name'] = $1
         | 
| 226 | 
            +
            					meta.attributes['content'] = v.to_s
         | 
| 227 | 
            +
            				end
         | 
| 228 | 
            +
            			end
         | 
| 229 | 
            +
            			
         | 
| 212 230 |  | 
| 231 | 
            +
            			
         | 
| 213 232 | 
             
            			# Create title element
         | 
| 214 233 | 
             
            			doc_title = self.attributes[:title] || self.attributes[:subject] || ""
         | 
| 215 234 | 
             
            			title = Element.new 'title', head
         | 
| @@ -810,7 +829,7 @@ If true, raw HTML is discarded from the output. | |
| 810 829 | 
             
            			pre = Element.new('pre')
         | 
| 811 830 | 
             
            			pre.attributes['style'] = 'border: solid 3px red; background-color: pink'
         | 
| 812 831 | 
             
            			pre.attributes['class'] = 'markdown-html-error'
         | 
| 813 | 
            -
            			pre << Text.new(" | 
| 832 | 
            +
            			pre << Text.new("REXML could not parse this XML/HTML: \n#{raw_html}", true)
         | 
| 814 833 | 
             
            			return pre
         | 
| 815 834 | 
             
            		end
         | 
| 816 835 | 
             
            	end
         | 
| @@ -518,6 +518,33 @@ Otherwise, a standard `verbatim` environment is used. | |
| 518 518 |  | 
| 519 519 | 
             
            	end
         | 
| 520 520 |  | 
| 521 | 
            +
            	def to_latex_div
         | 
| 522 | 
            +
            		type = self.attributes[:class]
         | 
| 523 | 
            +
            		id = self.attributes[:id]
         | 
| 524 | 
            +
            		case type
         | 
| 525 | 
            +
            		  when /^un_(\w*)/
         | 
| 526 | 
            +
                            	s = "\\begin{u#{$1}}"
         | 
| 527 | 
            +
            #			s += "[#{@children[0].send('children_to_latex')}]"
         | 
| 528 | 
            +
            			@children.delete_at(0)
         | 
| 529 | 
            +
                            	s += "\n" + children_to_latex
         | 
| 530 | 
            +
                            	s += "\\end{u#{$1}}\n"
         | 
| 531 | 
            +
            		  when /^num_(\w*)/
         | 
| 532 | 
            +
                                    s = "\\begin{#{$1}}"
         | 
| 533 | 
            +
            #			s += "[#{@children[0].send('children_to_latex')}]"
         | 
| 534 | 
            +
            			@children.delete_at(0)
         | 
| 535 | 
            +
            			s += "\n\\label{#{id}}\\hypertarget{#{id}}{}\n"
         | 
| 536 | 
            +
                                    s += children_to_latex
         | 
| 537 | 
            +
                                    s += "\\end{#{$1}}\n"
         | 
| 538 | 
            +
                              when /^proof/
         | 
| 539 | 
            +
                                    s = "\\begin{proof}"
         | 
| 540 | 
            +
                                    @children.delete_at(0)
         | 
| 541 | 
            +
                                    s += "\n" + children_to_latex
         | 
| 542 | 
            +
                                    s += "\\end{proof}\n"
         | 
| 543 | 
            +
            		  else
         | 
| 544 | 
            +
            			s = children_to_latex
         | 
| 545 | 
            +
            		end
         | 
| 546 | 
            +
                            s
         | 
| 547 | 
            +
            	end
         | 
| 521 548 |  | 
| 522 549 | 
             
            	# Convert each child to html
         | 
| 523 550 | 
             
            	def children_to_latex
         | 
| @@ -215,7 +215,7 @@ module MaRuKu; module Out; module Latex | |
| 215 215 | 
             
            	  <char num='8835' name='sup' convertTo='$\\supset$' />
         | 
| 216 216 | 
             
            <!--	  <char num='8838' name='sube' convertTo='$\\subseteq$' />-->
         | 
| 217 217 | 
             
            	  <char num='8839' name='supe' convertTo='$\\supseteq$' />
         | 
| 218 | 
            -
            <!--	  <char num='8836' name='nsub' convertTo='$\\nsubset$'  />  | 
| 218 | 
            +
            <!--	  <char num='8836' name='nsub' convertTo='$\\nsubset$'  /> --><!-- only AMS -->
         | 
| 219 219 |  | 
| 220 220 | 
             
            	  <char num='8853' name='oplus' convertTo='$\\oplus$' />
         | 
| 221 221 | 
             
            	  <char num='8855' name='otimes' convertTo='$\\otimes$' />
         | 
| @@ -276,7 +276,7 @@ module MaRuKu; module Out; module Latex | |
| 276 276 | 
             
            	  <char num='174' name='reg' convertTo='\\textregistered' />
         | 
| 277 277 | 
             
            	  <char num='170' name='ordf' convertTo='\\textordfeminine' />
         | 
| 278 278 | 
             
            	  <char num='172' name='not' convertTo='$\\neg$' />
         | 
| 279 | 
            -
            	<!--  <char num='176' name='deg' convertTo='$\\degree$' />  | 
| 279 | 
            +
            	<!--  <char num='176' name='deg' convertTo='$\\degree$' /> --><!-- mathabx -->
         | 
| 280 280 | 
             
            	  <char num='176' name='deg' convertTo='\\textdegree' package='textcomp'/>
         | 
| 281 281 |  | 
| 282 282 | 
             
            	  <char num='177' name='plusmn' convertTo='$\\pm$' />
         | 
    
        data/lib/maruku/output/to_s.rb
    CHANGED
    
    | @@ -34,6 +34,7 @@ class MDElement | |
| 34 34 |  | 
| 35 35 | 
             
            	# Generate an id for headers. Assumes @children is set.
         | 
| 36 36 | 
             
            	def generate_id
         | 
| 37 | 
            +
            		
         | 
| 37 38 | 
             
            		title = children_to_s
         | 
| 38 39 | 
             
            		title.gsub!(/ /,'_')
         | 
| 39 40 | 
             
            		title.downcase!
         | 
| @@ -45,9 +46,11 @@ class MDElement | |
| 45 46 | 
             
            			$uid += 1
         | 
| 46 47 | 
             
            			title = "id#{$uid}"
         | 
| 47 48 | 
             
            		end
         | 
| 48 | 
            -
             | 
| 49 | 
            +
             | 
| 50 | 
            +
            		# random is a very bad idea
         | 
| 51 | 
            +
            #		title << "_" + rand(10000).to_s
         | 
| 49 52 | 
             
            		title
         | 
| 50 53 | 
             
            	end
         | 
| 51 54 | 
             
            end
         | 
| 52 55 |  | 
| 53 | 
            -
            end
         | 
| 56 | 
            +
            end
         | 
    
        data/lib/maruku/string_utils.rb
    CHANGED
    
    | @@ -46,7 +46,7 @@ module MaRuKu; module Strings | |
| 46 46 | 
             
            	#
         | 
| 47 47 | 
             
            	def parse_email_headers(s)
         | 
| 48 48 | 
             
            		keys={}
         | 
| 49 | 
            -
            		match = (s =~  | 
| 49 | 
            +
            		match = (s =~ /\A((\w[\w\s\_\-]+: .*\n)+)\s*\n/)
         | 
| 50 50 | 
             
            		if match != 0
         | 
| 51 51 | 
             
            			keys[:data] = s
         | 
| 52 52 | 
             
            		else
         | 
| @@ -150,7 +150,7 @@ module MaRuKu; module Strings | |
| 150 150 |  | 
| 151 151 | 
             
            	# change space to "_" and remove any non-word character
         | 
| 152 152 | 
             
            	def sanitize_ref_id(x)
         | 
| 153 | 
            -
            		x.downcase.gsub(' ','_').gsub(/[^\w]/,'')
         | 
| 153 | 
            +
            		x.strip.downcase.gsub(' ','_').gsub(/[^\w]/,'')
         | 
| 154 154 | 
             
            	end
         | 
| 155 155 |  | 
| 156 156 |  | 
    
        data/lib/maruku/structures.rb
    CHANGED
    
    
| @@ -106,6 +106,8 @@ module MaRuKu; module Tests | |
| 106 106 | 
             
            		["_b_", [md_em('b')], 'Emphasis 7'],
         | 
| 107 107 | 
             
            		["_b_ _c_", [md_em('b'),' ',md_em('c')], 'Emphasis 8'],
         | 
| 108 108 | 
             
            		["_b__c_", [md_em('b'),md_em('c')], 'Emphasis 9'],
         | 
| 109 | 
            +
            		# underscores in word
         | 
| 110 | 
            +
            		["mod_ruby", ['mod_ruby'], 'Word with underscore'],
         | 
| 109 111 | 
             
            		# strong
         | 
| 110 112 | 
             
            		["**a*", :throw, 'Unclosed double ** 2'],
         | 
| 111 113 | 
             
            		["\\**a*", ['*', md_em('a')], 'Escaping of *'],
         | 
| @@ -116,7 +118,8 @@ module MaRuKu; module Tests | |
| 116 118 | 
             
            		["**b****c**", [md_strong('b'),md_strong('c')], 'Emphasis 9'],
         | 
| 117 119 | 
             
            		# strong (with underscore)
         | 
| 118 120 | 
             
            		["__a_", :throw, 'Unclosed double __ 2'],
         | 
| 119 | 
            -
             | 
| 121 | 
            +
            	
         | 
| 122 | 
            +
            	#	["\\__a_", ['_', md_em('a')], 'Escaping of _'],
         | 
| 120 123 | 
             
            		["a __b__ ", ['a ', md_strong('b')], 'Emphasis 1'],
         | 
| 121 124 | 
             
            		["a __b__", ['a ', md_strong('b')], 'Emphasis 2'],
         | 
| 122 125 | 
             
            		["a __ b", ['a __ b'], 'Emphasis 3'],
         | 
| @@ -133,7 +136,7 @@ module MaRuKu; module Tests | |
| 133 136 | 
             
            		["a *** b***", :throw, 'Unclosed emphasis'],
         | 
| 134 137 | 
             
            		# same with underscores
         | 
| 135 138 | 
             
            		["___a__", :throw, 'Unclosed triple *** '],
         | 
| 136 | 
            -
            		["\\___a__", ['_', md_strong('a')], 'Escaping of  | 
| 139 | 
            +
            #		["\\___a__", ['_', md_strong('a')], 'Escaping of _'],
         | 
| 137 140 | 
             
            		["a ___b___ ", ['a ', md_emstrong('b')], 'Strong elements'],
         | 
| 138 141 | 
             
            		["a ___b___", ['a ', md_emstrong('b')]],
         | 
| 139 142 | 
             
            		["a ___ b", ['a ___ b']],
         | 
    
        data/lib/maruku/version.rb
    CHANGED
    
    
    
        data/tests/bugs/code_in_links.md
    CHANGED
    
    | @@ -1,3 +1,7 @@ | |
| 1 | 
            +
            Write a comment here
         | 
| 2 | 
            +
            *** Parameters: ***
         | 
| 3 | 
            +
            {} # params 
         | 
| 4 | 
            +
            *** Markdown input: ***
         | 
| 1 5 | 
             
            **This bug is now solved**
         | 
| 2 6 |  | 
| 3 7 | 
             
            Previously, a bug would not let you use `code` inside links text.
         | 
| @@ -14,3 +18,84 @@ produces: | |
| 14 18 |  | 
| 15 19 | 
             
            [syntax]: http://gogole.com
         | 
| 16 20 |  | 
| 21 | 
            +
             | 
| 22 | 
            +
            *** Output of inspect ***
         | 
| 23 | 
            +
            md_el(:document,[
         | 
| 24 | 
            +
            	md_par([md_strong(["This bug is now solved"])]),
         | 
| 25 | 
            +
            	md_par([
         | 
| 26 | 
            +
            		"Previously, a bug would not let you use ",
         | 
| 27 | 
            +
            		md_code("code"),
         | 
| 28 | 
            +
            		" inside links text."
         | 
| 29 | 
            +
            	]),
         | 
| 30 | 
            +
            	md_par([
         | 
| 31 | 
            +
            		"So this: Use the ",
         | 
| 32 | 
            +
            		md_link([md_code("syntax")],"syntax"),
         | 
| 33 | 
            +
            		" produces:"
         | 
| 34 | 
            +
            	]),
         | 
| 35 | 
            +
            	md_el(:quote,[md_par(["Use the ", md_link([md_code("syntax")],"syntax")])],{},[]),
         | 
| 36 | 
            +
            	md_par(["And this: Use the ", md_code("[syntax][syntax]"), " produces:"]),
         | 
| 37 | 
            +
            	md_el(:quote,[md_par(["Use the ", md_code("[syntax][syntax]")])],{},[]),
         | 
| 38 | 
            +
            	md_ref_def("syntax", "http://gogole.com", {:title=>nil})
         | 
| 39 | 
            +
            ],{},[])
         | 
| 40 | 
            +
            *** Output of to_html ***
         | 
| 41 | 
            +
            <p><strong>This bug is now solved</strong></p>
         | 
| 42 | 
            +
             | 
| 43 | 
            +
            <p>Previously, a bug would not let you use <code>code</code> inside links text.</p>
         | 
| 44 | 
            +
             | 
| 45 | 
            +
            <p>So this: Use the <a href='http://gogole.com'><code>syntax</code></a> produces:</p>
         | 
| 46 | 
            +
             | 
| 47 | 
            +
            <blockquote>
         | 
| 48 | 
            +
            <p>Use the <a href='http://gogole.com'><code>syntax</code></a></p>
         | 
| 49 | 
            +
            </blockquote>
         | 
| 50 | 
            +
             | 
| 51 | 
            +
            <p>And this: Use the <code>[syntax][syntax]</code> produces:</p>
         | 
| 52 | 
            +
             | 
| 53 | 
            +
            <blockquote>
         | 
| 54 | 
            +
            <p>Use the <code>[syntax][syntax]</code></p>
         | 
| 55 | 
            +
            </blockquote>
         | 
| 56 | 
            +
            *** Output of to_latex ***
         | 
| 57 | 
            +
            \textbf{This bug is now solved}
         | 
| 58 | 
            +
             | 
| 59 | 
            +
            Previously, a bug would not let you use {\colorbox[rgb]{1.00,0.93,1.00}{\tt code}} inside links text.
         | 
| 60 | 
            +
             | 
| 61 | 
            +
            So this: Use the \href{http://gogole.com}{{\colorbox[rgb]{1.00,0.93,1.00}{\tt syntax}}} produces:
         | 
| 62 | 
            +
             | 
| 63 | 
            +
            \begin{quote}%
         | 
| 64 | 
            +
            Use the \href{http://gogole.com}{{\colorbox[rgb]{1.00,0.93,1.00}{\tt syntax}}}
         | 
| 65 | 
            +
             | 
| 66 | 
            +
             | 
| 67 | 
            +
            \end{quote}
         | 
| 68 | 
            +
            And this: Use the {\colorbox[rgb]{1.00,0.93,1.00}{\tt \char91syntax\char93\char91syntax\char93}} produces:
         | 
| 69 | 
            +
             | 
| 70 | 
            +
            \begin{quote}%
         | 
| 71 | 
            +
            Use the {\colorbox[rgb]{1.00,0.93,1.00}{\tt \char91syntax\char93\char91syntax\char93}}
         | 
| 72 | 
            +
             | 
| 73 | 
            +
             | 
| 74 | 
            +
            \end{quote}
         | 
| 75 | 
            +
            *** Output of to_md ***
         | 
| 76 | 
            +
            This bug is now solved
         | 
| 77 | 
            +
             | 
| 78 | 
            +
            Previously, a bug would not let you use
         | 
| 79 | 
            +
            inside links text.
         | 
| 80 | 
            +
             | 
| 81 | 
            +
            So this: Use the produces:
         | 
| 82 | 
            +
             | 
| 83 | 
            +
            Use the
         | 
| 84 | 
            +
             | 
| 85 | 
            +
            And this: Use the produces:
         | 
| 86 | 
            +
             | 
| 87 | 
            +
            Use the
         | 
| 88 | 
            +
            *** Output of to_s ***
         | 
| 89 | 
            +
            This bug is now solvedPreviously, a bug would not let you use  inside links text.So this: Use the  produces:Use the And this: Use the  produces:Use the
         | 
| 90 | 
            +
            *** EOF ***
         | 
| 91 | 
            +
             | 
| 92 | 
            +
             | 
| 93 | 
            +
             | 
| 94 | 
            +
            	OK!
         | 
| 95 | 
            +
             | 
| 96 | 
            +
             | 
| 97 | 
            +
             | 
| 98 | 
            +
            *** Output of Markdown.pl ***
         | 
| 99 | 
            +
            (not used anymore)
         | 
| 100 | 
            +
            *** Output of Markdown.pl (parsed) ***
         | 
| 101 | 
            +
            (not used anymore)
         | 
| @@ -1,4 +1,38 @@ | |
| 1 | 
            +
            Write a comment here
         | 
| 2 | 
            +
            *** Parameters: ***
         | 
| 3 | 
            +
            {} # params 
         | 
| 4 | 
            +
            *** Markdown input: ***
         | 
| 1 5 |  | 
| 2 6 |  | 
| 3 7 | 
             
            What do you see here? `\\` it should be two backslashes.
         | 
| 4 8 |  | 
| 9 | 
            +
             | 
| 10 | 
            +
            *** Output of inspect ***
         | 
| 11 | 
            +
            md_el(:document,[
         | 
| 12 | 
            +
            	md_par([
         | 
| 13 | 
            +
            		"What do you see here? ",
         | 
| 14 | 
            +
            		md_code("\\\\"),
         | 
| 15 | 
            +
            		" it should be two backslashes."
         | 
| 16 | 
            +
            	])
         | 
| 17 | 
            +
            ],{},[])
         | 
| 18 | 
            +
            *** Output of to_html ***
         | 
| 19 | 
            +
            <p>What do you see here? <code>\\</code> it should be two backslashes.</p>
         | 
| 20 | 
            +
            *** Output of to_latex ***
         | 
| 21 | 
            +
            What do you see here? {\colorbox[rgb]{1.00,0.93,1.00}{\tt \char92\char92}} it should be two backslashes.
         | 
| 22 | 
            +
            *** Output of to_md ***
         | 
| 23 | 
            +
            What do you see here? it should be two
         | 
| 24 | 
            +
            backslashes.
         | 
| 25 | 
            +
            *** Output of to_s ***
         | 
| 26 | 
            +
            What do you see here?  it should be two backslashes.
         | 
| 27 | 
            +
            *** EOF ***
         | 
| 28 | 
            +
             | 
| 29 | 
            +
             | 
| 30 | 
            +
             | 
| 31 | 
            +
            	OK!
         | 
| 32 | 
            +
             | 
| 33 | 
            +
             | 
| 34 | 
            +
             | 
| 35 | 
            +
            *** Output of Markdown.pl ***
         | 
| 36 | 
            +
            (not used anymore)
         | 
| 37 | 
            +
            *** Output of Markdown.pl (parsed) ***
         | 
| 38 | 
            +
            (not used anymore)
         | 
| @@ -59,14 +59,6 @@ The HTML specification is maintained by the W3C.Operation Tigra Genesis is going | |
| 59 59 |  | 
| 60 60 |  | 
| 61 61 | 
             
            *** Output of Markdown.pl ***
         | 
| 62 | 
            -
             | 
| 63 | 
            -
             | 
| 64 | 
            -
            <p>*[HTML]: Hyper Text Markup Language
         | 
| 65 | 
            -
            *[W3C]:  World Wide Web Consortium</p>
         | 
| 66 | 
            -
             | 
| 67 | 
            -
            <p>Operation Tigra Genesis is going well.</p>
         | 
| 68 | 
            -
             | 
| 69 | 
            -
            <p>*[Tigra Genesis]:</p>
         | 
| 70 | 
            -
             | 
| 62 | 
            +
            (not used anymore)
         | 
| 71 63 | 
             
            *** Output of Markdown.pl (parsed) ***
         | 
| 72 | 
            -
             | 
| 64 | 
            +
            (not used anymore)
         | 
    
        data/tests/unittest/alt.md
    CHANGED
    
    | @@ -24,7 +24,6 @@ bar | |
| 24 24 |  | 
| 25 25 |  | 
| 26 26 | 
             
            *** Output of Markdown.pl ***
         | 
| 27 | 
            -
             | 
| 28 | 
            -
             | 
| 27 | 
            +
            (not used anymore)
         | 
| 29 28 | 
             
            *** Output of Markdown.pl (parsed) ***
         | 
| 30 | 
            -
             | 
| 29 | 
            +
            (not used anymore)
         | 
| @@ -27,8 +27,6 @@ md_el(:document,[ | |
| 27 27 |  | 
| 28 28 |  | 
| 29 29 | 
             
            *** Output of Markdown.pl ***
         | 
| 30 | 
            -
             | 
| 31 | 
            -
            {:b: a}</p>
         | 
| 32 | 
            -
             | 
| 30 | 
            +
            (not used anymore)
         | 
| 33 31 | 
             
            *** Output of Markdown.pl (parsed) ***
         | 
| 34 | 
            -
             | 
| 32 | 
            +
            (not used anymore)
         | 
| @@ -35,11 +35,6 @@ Paragraph1Paragraph2 | |
| 35 35 |  | 
| 36 36 |  | 
| 37 37 | 
             
            *** Output of Markdown.pl ***
         | 
| 38 | 
            -
             | 
| 39 | 
            -
            {:#par1}</p>
         | 
| 40 | 
            -
             | 
| 41 | 
            -
            <p>{:#par2}
         | 
| 42 | 
            -
            Paragraph2</p>
         | 
| 43 | 
            -
             | 
| 38 | 
            +
            (not used anymore)
         | 
| 44 39 | 
             
            *** Output of Markdown.pl (parsed) ***
         | 
| 45 | 
            -
             | 
| 40 | 
            +
            (not used anymore)
         | 
| @@ -64,19 +64,6 @@ Header with attributesHeader with attributesHeader no attributesParagraph with a | |
| 64 64 |  | 
| 65 65 |  | 
| 66 66 | 
             
            *** Output of Markdown.pl ***
         | 
| 67 | 
            -
             | 
| 68 | 
            -
             | 
| 69 | 
            -
            <h3>Header with attributes ###  {#header2}</h3>
         | 
| 70 | 
            -
             | 
| 71 | 
            -
            <h3>Header no attributes</h3>
         | 
| 72 | 
            -
             | 
| 73 | 
            -
            <p>{:warn2}Paragraph with a.
         | 
| 74 | 
            -
            {#par1}</p>
         | 
| 75 | 
            -
             | 
| 76 | 
            -
            <p>Paragraph with <em>emphasis</em>{:hello notfound}
         | 
| 77 | 
            -
               {#par2}</p>
         | 
| 78 | 
            -
             | 
| 79 | 
            -
            <p>{:hello: .chello}</p>
         | 
| 80 | 
            -
             | 
| 67 | 
            +
            (not used anymore)
         | 
| 81 68 | 
             
            *** Output of Markdown.pl (parsed) ***
         | 
| 82 | 
            -
             | 
| 69 | 
            +
            (not used anymore)
         | 
| @@ -33,11 +33,6 @@ Paragraph | |
| 33 33 |  | 
| 34 34 |  | 
| 35 35 | 
             
            *** Output of Markdown.pl ***
         | 
| 36 | 
            -
             | 
| 37 | 
            -
            {:a}</p>
         | 
| 38 | 
            -
             | 
| 39 | 
            -
            <p>{:a: b}
         | 
| 40 | 
            -
            {:b: a}</p>
         | 
| 41 | 
            -
             | 
| 36 | 
            +
            (not used anymore)
         | 
| 42 37 | 
             
            *** Output of Markdown.pl (parsed) ***
         | 
| 43 | 
            -
             | 
| 38 | 
            +
            (not used anymore)
         | 
| @@ -29,10 +29,6 @@ Paragraph2 | |
| 29 29 |  | 
| 30 30 |  | 
| 31 31 | 
             
            *** Output of Markdown.pl ***
         | 
| 32 | 
            -
             | 
| 33 | 
            -
            {#2}</p>
         | 
| 34 | 
            -
             | 
| 35 | 
            -
            <p>{paragraph}: .maruku-par</p>
         | 
| 36 | 
            -
             | 
| 32 | 
            +
            (not used anymore)
         | 
| 37 33 | 
             
            *** Output of Markdown.pl (parsed) ***
         | 
| 38 | 
            -
             | 
| 34 | 
            +
            (not used anymore)
         |