rdoc 7.1.0 → 8.0.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.
- checksums.yaml +4 -4
- data/CONTRIBUTING.md +3 -4
- data/LICENSE.rdoc +4 -0
- data/README.md +43 -2
- data/doc/markup_reference/markdown.md +104 -3
- data/lib/rdoc/code_object/alias.rb +2 -8
- data/lib/rdoc/code_object/any_method.rb +11 -6
- data/lib/rdoc/code_object/attr.rb +12 -6
- data/lib/rdoc/code_object/class_module.rb +62 -32
- data/lib/rdoc/code_object/constant.rb +29 -3
- data/lib/rdoc/code_object/context/section.rb +30 -43
- data/lib/rdoc/code_object/context.rb +53 -37
- data/lib/rdoc/code_object/method_attr.rb +9 -15
- data/lib/rdoc/code_object/mixin.rb +3 -0
- data/lib/rdoc/code_object/top_level.rb +11 -3
- data/lib/rdoc/code_object.rb +2 -4
- data/lib/rdoc/comment.rb +1 -66
- data/lib/rdoc/cross_reference.rb +8 -30
- data/lib/rdoc/encoding.rb +3 -3
- data/lib/rdoc/generator/aliki.rb +17 -0
- data/lib/rdoc/generator/darkfish.rb +12 -6
- data/lib/rdoc/generator/json_index.rb +2 -2
- data/lib/rdoc/generator/markup.rb +56 -31
- data/lib/rdoc/generator/template/aliki/DESIGN.md +536 -0
- data/lib/rdoc/generator/template/aliki/_aside_toc.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/_head.rhtml +6 -1
- data/lib/rdoc/generator/template/aliki/_sidebar_extends.rhtml +8 -6
- data/lib/rdoc/generator/template/aliki/_sidebar_includes.rhtml +8 -6
- data/lib/rdoc/generator/template/aliki/_sidebar_installed.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/_sidebar_pages.rhtml +2 -2
- data/lib/rdoc/generator/template/aliki/_sidebar_sections.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/_sidebar_toggle.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/class.rhtml +61 -51
- data/lib/rdoc/generator/template/aliki/css/rdoc.css +365 -147
- data/lib/rdoc/generator/template/aliki/index.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/js/aliki.js +28 -20
- data/lib/rdoc/generator/template/aliki/js/bash_highlighter.js +167 -0
- data/lib/rdoc/generator/template/aliki/js/search_controller.js +1 -1
- data/lib/rdoc/generator/template/aliki/page.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/servlet_not_found.rhtml +1 -1
- data/lib/rdoc/generator/template/aliki/servlet_root.rhtml +2 -2
- data/lib/rdoc/generator/template/darkfish/_sidebar_extends.rhtml +8 -6
- data/lib/rdoc/generator/template/darkfish/_sidebar_includes.rhtml +8 -6
- data/lib/rdoc/generator/template/darkfish/_sidebar_installed.rhtml +1 -1
- data/lib/rdoc/generator/template/darkfish/_sidebar_pages.rhtml +1 -1
- data/lib/rdoc/generator/template/darkfish/_sidebar_sections.rhtml +1 -1
- data/lib/rdoc/generator/template/darkfish/_sidebar_table_of_contents.rhtml +5 -5
- data/lib/rdoc/generator/template/darkfish/class.rhtml +18 -21
- data/lib/rdoc/generator/template/darkfish/css/rdoc.css +0 -1
- data/lib/rdoc/generator/template/darkfish/table_of_contents.rhtml +3 -3
- data/lib/rdoc/i18n/text.rb +3 -3
- data/lib/rdoc/markdown.kpeg +36 -17
- data/lib/rdoc/markdown.rb +324 -125
- data/lib/rdoc/markup/document.rb +2 -2
- data/lib/rdoc/markup/formatter.rb +128 -115
- data/lib/rdoc/markup/heading.rb +3 -6
- data/lib/rdoc/markup/indented_paragraph.rb +1 -1
- data/lib/rdoc/markup/inline_parser.rb +312 -0
- data/lib/rdoc/markup/list.rb +2 -2
- data/lib/rdoc/markup/list_item.rb +2 -2
- data/lib/rdoc/markup/parser.rb +1 -1
- data/lib/rdoc/markup/pre_process.rb +0 -25
- data/lib/rdoc/markup/to_ansi.rb +52 -5
- data/lib/rdoc/markup/to_bs.rb +23 -43
- data/lib/rdoc/markup/to_html.rb +279 -226
- data/lib/rdoc/markup/to_html_crossref.rb +122 -136
- data/lib/rdoc/markup/to_html_snippet.rb +65 -65
- data/lib/rdoc/markup/to_joined_paragraph.rb +0 -5
- data/lib/rdoc/markup/to_label.rb +22 -23
- data/lib/rdoc/markup/to_markdown.rb +62 -38
- data/lib/rdoc/markup/to_rdoc.rb +88 -28
- data/lib/rdoc/markup/to_table_of_contents.rb +1 -1
- data/lib/rdoc/markup/to_test.rb +9 -1
- data/lib/rdoc/markup/to_tt_only.rb +10 -23
- data/lib/rdoc/markup/verbatim.rb +1 -1
- data/lib/rdoc/markup.rb +8 -30
- data/lib/rdoc/options.rb +36 -51
- data/lib/rdoc/parser/c.rb +7 -6
- data/lib/rdoc/parser/changelog.rb +21 -0
- data/lib/rdoc/parser/rbs.rb +275 -0
- data/lib/rdoc/parser/ruby.rb +955 -2067
- data/lib/rdoc/parser/ruby_colorizer.rb +253 -0
- data/lib/rdoc/parser.rb +3 -2
- data/lib/rdoc/rbs_helper.rb +186 -0
- data/lib/rdoc/rdoc.rb +196 -24
- data/lib/rdoc/ri/driver.rb +8 -2
- data/lib/rdoc/ri/paths.rb +1 -1
- data/lib/rdoc/{servlet.rb → ri/servlet.rb} +5 -5
- data/lib/rdoc/ri.rb +4 -3
- data/lib/rdoc/rubygems_hook.rb +11 -11
- data/lib/rdoc/server.rb +460 -0
- data/lib/rdoc/stats.rb +147 -124
- data/lib/rdoc/store.rb +212 -4
- data/lib/rdoc/task.rb +16 -15
- data/lib/rdoc/text.rb +24 -117
- data/lib/rdoc/token_stream.rb +11 -33
- data/lib/rdoc/version.rb +1 -1
- data/lib/rdoc.rb +35 -7
- data/lib/rubygems_plugin.rb +2 -11
- data/rdoc-logo.svg +43 -0
- data/rdoc.gemspec +6 -4
- metadata +37 -23
- data/lib/rdoc/code_object/anon_class.rb +0 -10
- data/lib/rdoc/code_object/ghost_method.rb +0 -6
- data/lib/rdoc/code_object/meta_method.rb +0 -6
- data/lib/rdoc/markup/attr_changer.rb +0 -22
- data/lib/rdoc/markup/attr_span.rb +0 -35
- data/lib/rdoc/markup/attribute_manager.rb +0 -432
- data/lib/rdoc/markup/attributes.rb +0 -70
- data/lib/rdoc/markup/regexp_handling.rb +0 -40
- data/lib/rdoc/parser/prism_ruby.rb +0 -1100
- data/lib/rdoc/parser/ripper_state_lex.rb +0 -302
- data/lib/rdoc/parser/ruby_tools.rb +0 -163
data/lib/rdoc/markdown.rb
CHANGED
|
@@ -688,6 +688,20 @@ class RDoc::Markdown
|
|
|
688
688
|
end
|
|
689
689
|
end
|
|
690
690
|
|
|
691
|
+
# Escape character that has special meaning in RDoc format.
|
|
692
|
+
# To allow rdoc-styled link used in markdown format for now, bracket and brace are not escaped.
|
|
693
|
+
|
|
694
|
+
def rdoc_escape(text)
|
|
695
|
+
text.gsub(/[*+<\\_]/) {|s| "\\#{s}" }
|
|
696
|
+
end
|
|
697
|
+
|
|
698
|
+
# Escape link url that contains brackets.
|
|
699
|
+
# Brackets needs escape because link url will be surrounded by `[]` in RDoc format.
|
|
700
|
+
|
|
701
|
+
def rdoc_link_url_escape(text)
|
|
702
|
+
text.gsub(/[\[\]\\]/) {|s| "\\#{s}" }
|
|
703
|
+
end
|
|
704
|
+
|
|
691
705
|
##
|
|
692
706
|
# :category: Extensions
|
|
693
707
|
#
|
|
@@ -774,6 +788,8 @@ class RDoc::Markdown
|
|
|
774
788
|
# the note order list for proper display at the end of the document.
|
|
775
789
|
|
|
776
790
|
def note_for ref
|
|
791
|
+
return unless @note_order
|
|
792
|
+
|
|
777
793
|
@note_order << ref
|
|
778
794
|
|
|
779
795
|
label = @note_order.length
|
|
@@ -1642,7 +1658,7 @@ class RDoc::Markdown
|
|
|
1642
1658
|
return _tmp
|
|
1643
1659
|
end
|
|
1644
1660
|
|
|
1645
|
-
# BlockQuoteRaw = @StartList:a (">" " "? Line:l { a << l } (!">" !@BlankLine Line:c { a << c })* (@BlankLine:n { a << n })*)+ { inner_parse a.join }
|
|
1661
|
+
# BlockQuoteRaw = @StartList:a (">" " "? Line:l { a << l } (!">" !@BlankLine !(AtxStart @Spacechar) !Bullet !Enumerator !(&{ github? } Ticks3) Line:c { a << c })* (">" @BlankLine:n { a << n })*)+ { inner_parse a.join }
|
|
1646
1662
|
def _BlockQuoteRaw
|
|
1647
1663
|
|
|
1648
1664
|
_save = self.pos
|
|
@@ -1704,6 +1720,68 @@ class RDoc::Markdown
|
|
|
1704
1720
|
self.pos = _save5
|
|
1705
1721
|
break
|
|
1706
1722
|
end
|
|
1723
|
+
_save8 = self.pos
|
|
1724
|
+
|
|
1725
|
+
_save9 = self.pos
|
|
1726
|
+
while true # sequence
|
|
1727
|
+
_tmp = apply(:_AtxStart)
|
|
1728
|
+
unless _tmp
|
|
1729
|
+
self.pos = _save9
|
|
1730
|
+
break
|
|
1731
|
+
end
|
|
1732
|
+
_tmp = _Spacechar()
|
|
1733
|
+
unless _tmp
|
|
1734
|
+
self.pos = _save9
|
|
1735
|
+
end
|
|
1736
|
+
break
|
|
1737
|
+
end # end sequence
|
|
1738
|
+
|
|
1739
|
+
_tmp = _tmp ? nil : true
|
|
1740
|
+
self.pos = _save8
|
|
1741
|
+
unless _tmp
|
|
1742
|
+
self.pos = _save5
|
|
1743
|
+
break
|
|
1744
|
+
end
|
|
1745
|
+
_save10 = self.pos
|
|
1746
|
+
_tmp = apply(:_Bullet)
|
|
1747
|
+
_tmp = _tmp ? nil : true
|
|
1748
|
+
self.pos = _save10
|
|
1749
|
+
unless _tmp
|
|
1750
|
+
self.pos = _save5
|
|
1751
|
+
break
|
|
1752
|
+
end
|
|
1753
|
+
_save11 = self.pos
|
|
1754
|
+
_tmp = apply(:_Enumerator)
|
|
1755
|
+
_tmp = _tmp ? nil : true
|
|
1756
|
+
self.pos = _save11
|
|
1757
|
+
unless _tmp
|
|
1758
|
+
self.pos = _save5
|
|
1759
|
+
break
|
|
1760
|
+
end
|
|
1761
|
+
_save12 = self.pos
|
|
1762
|
+
|
|
1763
|
+
_save13 = self.pos
|
|
1764
|
+
while true # sequence
|
|
1765
|
+
_save14 = self.pos
|
|
1766
|
+
_tmp = begin; github? ; end
|
|
1767
|
+
self.pos = _save14
|
|
1768
|
+
unless _tmp
|
|
1769
|
+
self.pos = _save13
|
|
1770
|
+
break
|
|
1771
|
+
end
|
|
1772
|
+
_tmp = apply(:_Ticks3)
|
|
1773
|
+
unless _tmp
|
|
1774
|
+
self.pos = _save13
|
|
1775
|
+
end
|
|
1776
|
+
break
|
|
1777
|
+
end # end sequence
|
|
1778
|
+
|
|
1779
|
+
_tmp = _tmp ? nil : true
|
|
1780
|
+
self.pos = _save12
|
|
1781
|
+
unless _tmp
|
|
1782
|
+
self.pos = _save5
|
|
1783
|
+
break
|
|
1784
|
+
end
|
|
1707
1785
|
_tmp = apply(:_Line)
|
|
1708
1786
|
c = @result
|
|
1709
1787
|
unless _tmp
|
|
@@ -1727,18 +1805,23 @@ class RDoc::Markdown
|
|
|
1727
1805
|
end
|
|
1728
1806
|
while true
|
|
1729
1807
|
|
|
1730
|
-
|
|
1808
|
+
_save16 = self.pos
|
|
1731
1809
|
while true # sequence
|
|
1810
|
+
_tmp = match_string(">")
|
|
1811
|
+
unless _tmp
|
|
1812
|
+
self.pos = _save16
|
|
1813
|
+
break
|
|
1814
|
+
end
|
|
1732
1815
|
_tmp = _BlankLine()
|
|
1733
1816
|
n = @result
|
|
1734
1817
|
unless _tmp
|
|
1735
|
-
self.pos =
|
|
1818
|
+
self.pos = _save16
|
|
1736
1819
|
break
|
|
1737
1820
|
end
|
|
1738
1821
|
@result = begin; a << n ; end
|
|
1739
1822
|
_tmp = true
|
|
1740
1823
|
unless _tmp
|
|
1741
|
-
self.pos =
|
|
1824
|
+
self.pos = _save16
|
|
1742
1825
|
end
|
|
1743
1826
|
break
|
|
1744
1827
|
end # end sequence
|
|
@@ -1755,65 +1838,127 @@ class RDoc::Markdown
|
|
|
1755
1838
|
if _tmp
|
|
1756
1839
|
while true
|
|
1757
1840
|
|
|
1758
|
-
|
|
1841
|
+
_save17 = self.pos
|
|
1759
1842
|
while true # sequence
|
|
1760
1843
|
_tmp = match_string(">")
|
|
1761
1844
|
unless _tmp
|
|
1762
|
-
self.pos =
|
|
1845
|
+
self.pos = _save17
|
|
1763
1846
|
break
|
|
1764
1847
|
end
|
|
1765
|
-
|
|
1848
|
+
_save18 = self.pos
|
|
1766
1849
|
_tmp = match_string(" ")
|
|
1767
1850
|
unless _tmp
|
|
1768
1851
|
_tmp = true
|
|
1769
|
-
self.pos =
|
|
1852
|
+
self.pos = _save18
|
|
1770
1853
|
end
|
|
1771
1854
|
unless _tmp
|
|
1772
|
-
self.pos =
|
|
1855
|
+
self.pos = _save17
|
|
1773
1856
|
break
|
|
1774
1857
|
end
|
|
1775
1858
|
_tmp = apply(:_Line)
|
|
1776
1859
|
l = @result
|
|
1777
1860
|
unless _tmp
|
|
1778
|
-
self.pos =
|
|
1861
|
+
self.pos = _save17
|
|
1779
1862
|
break
|
|
1780
1863
|
end
|
|
1781
1864
|
@result = begin; a << l ; end
|
|
1782
1865
|
_tmp = true
|
|
1783
1866
|
unless _tmp
|
|
1784
|
-
self.pos =
|
|
1867
|
+
self.pos = _save17
|
|
1785
1868
|
break
|
|
1786
1869
|
end
|
|
1787
1870
|
while true
|
|
1788
1871
|
|
|
1789
|
-
|
|
1872
|
+
_save20 = self.pos
|
|
1790
1873
|
while true # sequence
|
|
1791
|
-
|
|
1874
|
+
_save21 = self.pos
|
|
1792
1875
|
_tmp = match_string(">")
|
|
1793
1876
|
_tmp = _tmp ? nil : true
|
|
1794
|
-
self.pos =
|
|
1877
|
+
self.pos = _save21
|
|
1795
1878
|
unless _tmp
|
|
1796
|
-
self.pos =
|
|
1879
|
+
self.pos = _save20
|
|
1797
1880
|
break
|
|
1798
1881
|
end
|
|
1799
|
-
|
|
1882
|
+
_save22 = self.pos
|
|
1800
1883
|
_tmp = _BlankLine()
|
|
1801
1884
|
_tmp = _tmp ? nil : true
|
|
1802
|
-
self.pos =
|
|
1885
|
+
self.pos = _save22
|
|
1886
|
+
unless _tmp
|
|
1887
|
+
self.pos = _save20
|
|
1888
|
+
break
|
|
1889
|
+
end
|
|
1890
|
+
_save23 = self.pos
|
|
1891
|
+
|
|
1892
|
+
_save24 = self.pos
|
|
1893
|
+
while true # sequence
|
|
1894
|
+
_tmp = apply(:_AtxStart)
|
|
1895
|
+
unless _tmp
|
|
1896
|
+
self.pos = _save24
|
|
1897
|
+
break
|
|
1898
|
+
end
|
|
1899
|
+
_tmp = _Spacechar()
|
|
1900
|
+
unless _tmp
|
|
1901
|
+
self.pos = _save24
|
|
1902
|
+
end
|
|
1903
|
+
break
|
|
1904
|
+
end # end sequence
|
|
1905
|
+
|
|
1906
|
+
_tmp = _tmp ? nil : true
|
|
1907
|
+
self.pos = _save23
|
|
1908
|
+
unless _tmp
|
|
1909
|
+
self.pos = _save20
|
|
1910
|
+
break
|
|
1911
|
+
end
|
|
1912
|
+
_save25 = self.pos
|
|
1913
|
+
_tmp = apply(:_Bullet)
|
|
1914
|
+
_tmp = _tmp ? nil : true
|
|
1915
|
+
self.pos = _save25
|
|
1916
|
+
unless _tmp
|
|
1917
|
+
self.pos = _save20
|
|
1918
|
+
break
|
|
1919
|
+
end
|
|
1920
|
+
_save26 = self.pos
|
|
1921
|
+
_tmp = apply(:_Enumerator)
|
|
1922
|
+
_tmp = _tmp ? nil : true
|
|
1923
|
+
self.pos = _save26
|
|
1924
|
+
unless _tmp
|
|
1925
|
+
self.pos = _save20
|
|
1926
|
+
break
|
|
1927
|
+
end
|
|
1928
|
+
_save27 = self.pos
|
|
1929
|
+
|
|
1930
|
+
_save28 = self.pos
|
|
1931
|
+
while true # sequence
|
|
1932
|
+
_save29 = self.pos
|
|
1933
|
+
_tmp = begin; github? ; end
|
|
1934
|
+
self.pos = _save29
|
|
1935
|
+
unless _tmp
|
|
1936
|
+
self.pos = _save28
|
|
1937
|
+
break
|
|
1938
|
+
end
|
|
1939
|
+
_tmp = apply(:_Ticks3)
|
|
1940
|
+
unless _tmp
|
|
1941
|
+
self.pos = _save28
|
|
1942
|
+
end
|
|
1943
|
+
break
|
|
1944
|
+
end # end sequence
|
|
1945
|
+
|
|
1946
|
+
_tmp = _tmp ? nil : true
|
|
1947
|
+
self.pos = _save27
|
|
1803
1948
|
unless _tmp
|
|
1804
|
-
self.pos =
|
|
1949
|
+
self.pos = _save20
|
|
1805
1950
|
break
|
|
1806
1951
|
end
|
|
1807
1952
|
_tmp = apply(:_Line)
|
|
1808
1953
|
c = @result
|
|
1809
1954
|
unless _tmp
|
|
1810
|
-
self.pos =
|
|
1955
|
+
self.pos = _save20
|
|
1811
1956
|
break
|
|
1812
1957
|
end
|
|
1813
1958
|
@result = begin; a << c ; end
|
|
1814
1959
|
_tmp = true
|
|
1815
1960
|
unless _tmp
|
|
1816
|
-
self.pos =
|
|
1961
|
+
self.pos = _save20
|
|
1817
1962
|
end
|
|
1818
1963
|
break
|
|
1819
1964
|
end # end sequence
|
|
@@ -1822,23 +1967,28 @@ class RDoc::Markdown
|
|
|
1822
1967
|
end
|
|
1823
1968
|
_tmp = true
|
|
1824
1969
|
unless _tmp
|
|
1825
|
-
self.pos =
|
|
1970
|
+
self.pos = _save17
|
|
1826
1971
|
break
|
|
1827
1972
|
end
|
|
1828
1973
|
while true
|
|
1829
1974
|
|
|
1830
|
-
|
|
1975
|
+
_save31 = self.pos
|
|
1831
1976
|
while true # sequence
|
|
1977
|
+
_tmp = match_string(">")
|
|
1978
|
+
unless _tmp
|
|
1979
|
+
self.pos = _save31
|
|
1980
|
+
break
|
|
1981
|
+
end
|
|
1832
1982
|
_tmp = _BlankLine()
|
|
1833
1983
|
n = @result
|
|
1834
1984
|
unless _tmp
|
|
1835
|
-
self.pos =
|
|
1985
|
+
self.pos = _save31
|
|
1836
1986
|
break
|
|
1837
1987
|
end
|
|
1838
1988
|
@result = begin; a << n ; end
|
|
1839
1989
|
_tmp = true
|
|
1840
1990
|
unless _tmp
|
|
1841
|
-
self.pos =
|
|
1991
|
+
self.pos = _save31
|
|
1842
1992
|
end
|
|
1843
1993
|
break
|
|
1844
1994
|
end # end sequence
|
|
@@ -1847,7 +1997,7 @@ class RDoc::Markdown
|
|
|
1847
1997
|
end
|
|
1848
1998
|
_tmp = true
|
|
1849
1999
|
unless _tmp
|
|
1850
|
-
self.pos =
|
|
2000
|
+
self.pos = _save17
|
|
1851
2001
|
end
|
|
1852
2002
|
break
|
|
1853
2003
|
end # end sequence
|
|
@@ -9639,7 +9789,7 @@ class RDoc::Markdown
|
|
|
9639
9789
|
return _tmp
|
|
9640
9790
|
end
|
|
9641
9791
|
|
|
9642
|
-
# Inline = (Str | @Endline | UlOrStarLine | @Space | Strong | Emph | Strike | Image | Link | NoteReference | InlineNote | Code | RawHtml | Entity | EscapedChar | Symbol)
|
|
9792
|
+
# Inline = (Str | @Endline | UlOrStarLine | @Space | Strong | Emph | Strike | Image | Link | NoteReference | InlineNote | Code | RawHtml | StrippedComment | Entity | EscapedChar | Symbol)
|
|
9643
9793
|
def _Inline
|
|
9644
9794
|
|
|
9645
9795
|
_save = self.pos
|
|
@@ -9683,6 +9833,9 @@ class RDoc::Markdown
|
|
|
9683
9833
|
_tmp = apply(:_RawHtml)
|
|
9684
9834
|
break if _tmp
|
|
9685
9835
|
self.pos = _save
|
|
9836
|
+
_tmp = apply(:_StrippedComment)
|
|
9837
|
+
break if _tmp
|
|
9838
|
+
self.pos = _save
|
|
9686
9839
|
_tmp = apply(:_Entity)
|
|
9687
9840
|
break if _tmp
|
|
9688
9841
|
self.pos = _save
|
|
@@ -9731,7 +9884,7 @@ class RDoc::Markdown
|
|
|
9731
9884
|
return _tmp
|
|
9732
9885
|
end
|
|
9733
9886
|
|
|
9734
|
-
# Str = @StartList:a < @NormalChar+ > { a = text } (StrChunk:c { a << c })* { a }
|
|
9887
|
+
# Str = @StartList:a < @NormalChar+ > { a = text } (StrChunk:c { a << c })* { rdoc_escape(a) }
|
|
9735
9888
|
def _Str
|
|
9736
9889
|
|
|
9737
9890
|
_save = self.pos
|
|
@@ -9792,7 +9945,7 @@ class RDoc::Markdown
|
|
|
9792
9945
|
self.pos = _save
|
|
9793
9946
|
break
|
|
9794
9947
|
end
|
|
9795
|
-
@result = begin; a ; end
|
|
9948
|
+
@result = begin; rdoc_escape(a) ; end
|
|
9796
9949
|
_tmp = true
|
|
9797
9950
|
unless _tmp
|
|
9798
9951
|
self.pos = _save
|
|
@@ -9894,7 +10047,7 @@ class RDoc::Markdown
|
|
|
9894
10047
|
return _tmp
|
|
9895
10048
|
end
|
|
9896
10049
|
|
|
9897
|
-
# EscapedChar = "\\" !@Newline < /[:\\`|*_{}\[\]()#+.!><-]/ > { text }
|
|
10050
|
+
# EscapedChar = "\\" !@Newline < /[:\\`|*_{}\[\]()#+.!><-]/ > { rdoc_escape(text) }
|
|
9898
10051
|
def _EscapedChar
|
|
9899
10052
|
|
|
9900
10053
|
_save = self.pos
|
|
@@ -9921,7 +10074,7 @@ class RDoc::Markdown
|
|
|
9921
10074
|
self.pos = _save
|
|
9922
10075
|
break
|
|
9923
10076
|
end
|
|
9924
|
-
@result = begin; text ; end
|
|
10077
|
+
@result = begin; rdoc_escape(text) ; end
|
|
9925
10078
|
_tmp = true
|
|
9926
10079
|
unless _tmp
|
|
9927
10080
|
self.pos = _save
|
|
@@ -10122,7 +10275,7 @@ class RDoc::Markdown
|
|
|
10122
10275
|
return _tmp
|
|
10123
10276
|
end
|
|
10124
10277
|
|
|
10125
|
-
# Symbol = < @SpecialChar > { text }
|
|
10278
|
+
# Symbol = < @SpecialChar > { rdoc_escape(text) }
|
|
10126
10279
|
def _Symbol
|
|
10127
10280
|
|
|
10128
10281
|
_save = self.pos
|
|
@@ -10136,7 +10289,7 @@ class RDoc::Markdown
|
|
|
10136
10289
|
self.pos = _save
|
|
10137
10290
|
break
|
|
10138
10291
|
end
|
|
10139
|
-
@result = begin; text ; end
|
|
10292
|
+
@result = begin; rdoc_escape(text) ; end
|
|
10140
10293
|
_tmp = true
|
|
10141
10294
|
unless _tmp
|
|
10142
10295
|
self.pos = _save
|
|
@@ -11189,7 +11342,7 @@ class RDoc::Markdown
|
|
|
11189
11342
|
return _tmp
|
|
11190
11343
|
end
|
|
11191
11344
|
|
|
11192
|
-
# ExplicitLink = ExplicitLinkWithLabel:a { "{#{a[:label]}}[#{a[:link]}]" }
|
|
11345
|
+
# ExplicitLink = ExplicitLinkWithLabel:a { "{#{a[:label]}}[#{rdoc_link_url_escape(a[:link])}]" }
|
|
11193
11346
|
def _ExplicitLink
|
|
11194
11347
|
|
|
11195
11348
|
_save = self.pos
|
|
@@ -11200,7 +11353,7 @@ class RDoc::Markdown
|
|
|
11200
11353
|
self.pos = _save
|
|
11201
11354
|
break
|
|
11202
11355
|
end
|
|
11203
|
-
@result = begin; "{#{a[:label]}}[#{a[:link]}]" ; end
|
|
11356
|
+
@result = begin; "{#{a[:label]}}[#{rdoc_link_url_escape(a[:link])}]" ; end
|
|
11204
11357
|
_tmp = true
|
|
11205
11358
|
unless _tmp
|
|
11206
11359
|
self.pos = _save
|
|
@@ -13983,7 +14136,7 @@ class RDoc::Markdown
|
|
|
13983
14136
|
return _tmp
|
|
13984
14137
|
end
|
|
13985
14138
|
|
|
13986
|
-
# RawHtml = < (
|
|
14139
|
+
# RawHtml = < (HtmlBlockScript | HtmlTag) > { html? ? text : '' }
|
|
13987
14140
|
def _RawHtml
|
|
13988
14141
|
|
|
13989
14142
|
_save = self.pos
|
|
@@ -13992,9 +14145,6 @@ class RDoc::Markdown
|
|
|
13992
14145
|
|
|
13993
14146
|
_save1 = self.pos
|
|
13994
14147
|
while true # choice
|
|
13995
|
-
_tmp = apply(:_HtmlComment)
|
|
13996
|
-
break if _tmp
|
|
13997
|
-
self.pos = _save1
|
|
13998
14148
|
_tmp = apply(:_HtmlBlockScript)
|
|
13999
14149
|
break if _tmp
|
|
14000
14150
|
self.pos = _save1
|
|
@@ -14011,7 +14161,7 @@ class RDoc::Markdown
|
|
|
14011
14161
|
self.pos = _save
|
|
14012
14162
|
break
|
|
14013
14163
|
end
|
|
14014
|
-
@result = begin;
|
|
14164
|
+
@result = begin; html? ? text : '' ; end
|
|
14015
14165
|
_tmp = true
|
|
14016
14166
|
unless _tmp
|
|
14017
14167
|
self.pos = _save
|
|
@@ -14023,6 +14173,28 @@ class RDoc::Markdown
|
|
|
14023
14173
|
return _tmp
|
|
14024
14174
|
end
|
|
14025
14175
|
|
|
14176
|
+
# StrippedComment = HtmlComment { '' }
|
|
14177
|
+
def _StrippedComment
|
|
14178
|
+
|
|
14179
|
+
_save = self.pos
|
|
14180
|
+
while true # sequence
|
|
14181
|
+
_tmp = apply(:_HtmlComment)
|
|
14182
|
+
unless _tmp
|
|
14183
|
+
self.pos = _save
|
|
14184
|
+
break
|
|
14185
|
+
end
|
|
14186
|
+
@result = begin; '' ; end
|
|
14187
|
+
_tmp = true
|
|
14188
|
+
unless _tmp
|
|
14189
|
+
self.pos = _save
|
|
14190
|
+
end
|
|
14191
|
+
break
|
|
14192
|
+
end # end sequence
|
|
14193
|
+
|
|
14194
|
+
set_failed_rule :_StrippedComment unless _tmp
|
|
14195
|
+
return _tmp
|
|
14196
|
+
end
|
|
14197
|
+
|
|
14026
14198
|
# BlankLine = @Sp @Newline { "\n" }
|
|
14027
14199
|
def _BlankLine
|
|
14028
14200
|
|
|
@@ -14615,7 +14787,7 @@ class RDoc::Markdown
|
|
|
14615
14787
|
return _tmp
|
|
14616
14788
|
end
|
|
14617
14789
|
|
|
14618
|
-
# HexEntity = /&#x/i < /[0-9a-fA-F]+/ > ";" { [text.to_i(16)].pack
|
|
14790
|
+
# HexEntity = /&#x/i < /[0-9a-fA-F]+/ > ";" { rdoc_escape([text.to_i(16)].pack('U')) }
|
|
14619
14791
|
def _HexEntity
|
|
14620
14792
|
|
|
14621
14793
|
_save = self.pos
|
|
@@ -14639,7 +14811,7 @@ class RDoc::Markdown
|
|
|
14639
14811
|
self.pos = _save
|
|
14640
14812
|
break
|
|
14641
14813
|
end
|
|
14642
|
-
@result = begin; [text.to_i(16)].pack
|
|
14814
|
+
@result = begin; rdoc_escape([text.to_i(16)].pack('U')) ; end
|
|
14643
14815
|
_tmp = true
|
|
14644
14816
|
unless _tmp
|
|
14645
14817
|
self.pos = _save
|
|
@@ -14651,7 +14823,7 @@ class RDoc::Markdown
|
|
|
14651
14823
|
return _tmp
|
|
14652
14824
|
end
|
|
14653
14825
|
|
|
14654
|
-
# DecEntity = "&#" < /[0-9]+/ > ";" { [text.to_i].pack
|
|
14826
|
+
# DecEntity = "&#" < /[0-9]+/ > ";" { rdoc_escape([text.to_i].pack('U')) }
|
|
14655
14827
|
def _DecEntity
|
|
14656
14828
|
|
|
14657
14829
|
_save = self.pos
|
|
@@ -14675,7 +14847,7 @@ class RDoc::Markdown
|
|
|
14675
14847
|
self.pos = _save
|
|
14676
14848
|
break
|
|
14677
14849
|
end
|
|
14678
|
-
@result = begin; [text.to_i].pack
|
|
14850
|
+
@result = begin; rdoc_escape([text.to_i].pack('U')) ; end
|
|
14679
14851
|
_tmp = true
|
|
14680
14852
|
unless _tmp
|
|
14681
14853
|
self.pos = _save
|
|
@@ -14687,7 +14859,7 @@ class RDoc::Markdown
|
|
|
14687
14859
|
return _tmp
|
|
14688
14860
|
end
|
|
14689
14861
|
|
|
14690
|
-
# CharEntity = "&" < /[A-Za-z0-9]+/ > ";" { if entity = HTML_ENTITIES[text] then entity.pack
|
|
14862
|
+
# CharEntity = "&" < /[A-Za-z0-9]+/ > ";" { if entity = HTML_ENTITIES[text] then rdoc_escape(entity.pack('U*')) else "&#{text};" end }
|
|
14691
14863
|
def _CharEntity
|
|
14692
14864
|
|
|
14693
14865
|
_save = self.pos
|
|
@@ -14712,7 +14884,7 @@ class RDoc::Markdown
|
|
|
14712
14884
|
break
|
|
14713
14885
|
end
|
|
14714
14886
|
@result = begin; if entity = HTML_ENTITIES[text] then
|
|
14715
|
-
entity.pack
|
|
14887
|
+
rdoc_escape(entity.pack('U*'))
|
|
14716
14888
|
else
|
|
14717
14889
|
"&#{text};"
|
|
14718
14890
|
end
|
|
@@ -15306,7 +15478,7 @@ class RDoc::Markdown
|
|
|
15306
15478
|
return _tmp
|
|
15307
15479
|
end
|
|
15308
15480
|
|
|
15309
|
-
# InlineNote = &{ notes? } "^[" @StartList:a (!"]" Inline:l { a << l })+ "]" { ref = [:inline, @note_order.length]
|
|
15481
|
+
# InlineNote = &{ notes? } "^[" @StartList:a (!"]" Inline:l { a << l })+ "]" { if @note_order ref = [:inline, @note_order.length] @footnotes[ref] = paragraph a note_for ref end }
|
|
15310
15482
|
def _InlineNote
|
|
15311
15483
|
|
|
15312
15484
|
_save = self.pos
|
|
@@ -15397,10 +15569,12 @@ class RDoc::Markdown
|
|
|
15397
15569
|
self.pos = _save
|
|
15398
15570
|
break
|
|
15399
15571
|
end
|
|
15400
|
-
@result = begin;
|
|
15401
|
-
|
|
15572
|
+
@result = begin; if @note_order
|
|
15573
|
+
ref = [:inline, @note_order.length]
|
|
15574
|
+
@footnotes[ref] = paragraph a
|
|
15402
15575
|
|
|
15403
|
-
|
|
15576
|
+
note_for ref
|
|
15577
|
+
end
|
|
15404
15578
|
; end
|
|
15405
15579
|
_tmp = true
|
|
15406
15580
|
unless _tmp
|
|
@@ -15556,7 +15730,7 @@ class RDoc::Markdown
|
|
|
15556
15730
|
return _tmp
|
|
15557
15731
|
end
|
|
15558
15732
|
|
|
15559
|
-
# CodeFence = &{ github? } Ticks3 (@Sp StrChunk:format)?
|
|
15733
|
+
# CodeFence = &{ github? } Ticks3 (@Sp StrChunk:format)? @Sp @Newline? < ((!"`" Nonspacechar)+ | !Ticks3 /`+/ | Spacechar | @Newline)+ > Ticks3 @Sp @Newline* { verbatim = RDoc::Markup::Verbatim.new text verbatim.format = format.intern if format.instance_of?(String) verbatim }
|
|
15560
15734
|
def _CodeFence
|
|
15561
15735
|
|
|
15562
15736
|
_save = self.pos
|
|
@@ -15598,31 +15772,41 @@ class RDoc::Markdown
|
|
|
15598
15772
|
self.pos = _save
|
|
15599
15773
|
break
|
|
15600
15774
|
end
|
|
15601
|
-
_tmp =
|
|
15775
|
+
_tmp = _Sp()
|
|
15602
15776
|
unless _tmp
|
|
15603
15777
|
self.pos = _save
|
|
15604
15778
|
break
|
|
15605
15779
|
end
|
|
15606
|
-
_text_start = self.pos
|
|
15607
15780
|
_save4 = self.pos
|
|
15608
|
-
|
|
15781
|
+
_tmp = _Newline()
|
|
15782
|
+
unless _tmp
|
|
15783
|
+
_tmp = true
|
|
15784
|
+
self.pos = _save4
|
|
15785
|
+
end
|
|
15786
|
+
unless _tmp
|
|
15787
|
+
self.pos = _save
|
|
15788
|
+
break
|
|
15789
|
+
end
|
|
15790
|
+
_text_start = self.pos
|
|
15609
15791
|
_save5 = self.pos
|
|
15610
|
-
while true # choice
|
|
15611
|
-
_save6 = self.pos
|
|
15612
15792
|
|
|
15793
|
+
_save6 = self.pos
|
|
15794
|
+
while true # choice
|
|
15613
15795
|
_save7 = self.pos
|
|
15796
|
+
|
|
15797
|
+
_save8 = self.pos
|
|
15614
15798
|
while true # sequence
|
|
15615
|
-
|
|
15799
|
+
_save9 = self.pos
|
|
15616
15800
|
_tmp = match_string("`")
|
|
15617
15801
|
_tmp = _tmp ? nil : true
|
|
15618
|
-
self.pos =
|
|
15802
|
+
self.pos = _save9
|
|
15619
15803
|
unless _tmp
|
|
15620
|
-
self.pos =
|
|
15804
|
+
self.pos = _save8
|
|
15621
15805
|
break
|
|
15622
15806
|
end
|
|
15623
15807
|
_tmp = apply(:_Nonspacechar)
|
|
15624
15808
|
unless _tmp
|
|
15625
|
-
self.pos =
|
|
15809
|
+
self.pos = _save8
|
|
15626
15810
|
end
|
|
15627
15811
|
break
|
|
15628
15812
|
end # end sequence
|
|
@@ -15630,19 +15814,19 @@ class RDoc::Markdown
|
|
|
15630
15814
|
if _tmp
|
|
15631
15815
|
while true
|
|
15632
15816
|
|
|
15633
|
-
|
|
15817
|
+
_save10 = self.pos
|
|
15634
15818
|
while true # sequence
|
|
15635
|
-
|
|
15819
|
+
_save11 = self.pos
|
|
15636
15820
|
_tmp = match_string("`")
|
|
15637
15821
|
_tmp = _tmp ? nil : true
|
|
15638
|
-
self.pos =
|
|
15822
|
+
self.pos = _save11
|
|
15639
15823
|
unless _tmp
|
|
15640
|
-
self.pos =
|
|
15824
|
+
self.pos = _save10
|
|
15641
15825
|
break
|
|
15642
15826
|
end
|
|
15643
15827
|
_tmp = apply(:_Nonspacechar)
|
|
15644
15828
|
unless _tmp
|
|
15645
|
-
self.pos =
|
|
15829
|
+
self.pos = _save10
|
|
15646
15830
|
end
|
|
15647
15831
|
break
|
|
15648
15832
|
end # end sequence
|
|
@@ -15651,59 +15835,59 @@ class RDoc::Markdown
|
|
|
15651
15835
|
end
|
|
15652
15836
|
_tmp = true
|
|
15653
15837
|
else
|
|
15654
|
-
self.pos =
|
|
15838
|
+
self.pos = _save7
|
|
15655
15839
|
end
|
|
15656
15840
|
break if _tmp
|
|
15657
|
-
self.pos =
|
|
15841
|
+
self.pos = _save6
|
|
15658
15842
|
|
|
15659
|
-
|
|
15843
|
+
_save12 = self.pos
|
|
15660
15844
|
while true # sequence
|
|
15661
|
-
|
|
15845
|
+
_save13 = self.pos
|
|
15662
15846
|
_tmp = apply(:_Ticks3)
|
|
15663
15847
|
_tmp = _tmp ? nil : true
|
|
15664
|
-
self.pos =
|
|
15848
|
+
self.pos = _save13
|
|
15665
15849
|
unless _tmp
|
|
15666
|
-
self.pos =
|
|
15850
|
+
self.pos = _save12
|
|
15667
15851
|
break
|
|
15668
15852
|
end
|
|
15669
15853
|
_tmp = scan(/\G(?-mix:`+)/)
|
|
15670
15854
|
unless _tmp
|
|
15671
|
-
self.pos =
|
|
15855
|
+
self.pos = _save12
|
|
15672
15856
|
end
|
|
15673
15857
|
break
|
|
15674
15858
|
end # end sequence
|
|
15675
15859
|
|
|
15676
15860
|
break if _tmp
|
|
15677
|
-
self.pos =
|
|
15861
|
+
self.pos = _save6
|
|
15678
15862
|
_tmp = apply(:_Spacechar)
|
|
15679
15863
|
break if _tmp
|
|
15680
|
-
self.pos =
|
|
15864
|
+
self.pos = _save6
|
|
15681
15865
|
_tmp = _Newline()
|
|
15682
15866
|
break if _tmp
|
|
15683
|
-
self.pos =
|
|
15867
|
+
self.pos = _save6
|
|
15684
15868
|
break
|
|
15685
15869
|
end # end choice
|
|
15686
15870
|
|
|
15687
15871
|
if _tmp
|
|
15688
15872
|
while true
|
|
15689
15873
|
|
|
15690
|
-
|
|
15874
|
+
_save14 = self.pos
|
|
15691
15875
|
while true # choice
|
|
15692
|
-
_save14 = self.pos
|
|
15693
|
-
|
|
15694
15876
|
_save15 = self.pos
|
|
15877
|
+
|
|
15878
|
+
_save16 = self.pos
|
|
15695
15879
|
while true # sequence
|
|
15696
|
-
|
|
15880
|
+
_save17 = self.pos
|
|
15697
15881
|
_tmp = match_string("`")
|
|
15698
15882
|
_tmp = _tmp ? nil : true
|
|
15699
|
-
self.pos =
|
|
15883
|
+
self.pos = _save17
|
|
15700
15884
|
unless _tmp
|
|
15701
|
-
self.pos =
|
|
15885
|
+
self.pos = _save16
|
|
15702
15886
|
break
|
|
15703
15887
|
end
|
|
15704
15888
|
_tmp = apply(:_Nonspacechar)
|
|
15705
15889
|
unless _tmp
|
|
15706
|
-
self.pos =
|
|
15890
|
+
self.pos = _save16
|
|
15707
15891
|
end
|
|
15708
15892
|
break
|
|
15709
15893
|
end # end sequence
|
|
@@ -15711,19 +15895,19 @@ class RDoc::Markdown
|
|
|
15711
15895
|
if _tmp
|
|
15712
15896
|
while true
|
|
15713
15897
|
|
|
15714
|
-
|
|
15898
|
+
_save18 = self.pos
|
|
15715
15899
|
while true # sequence
|
|
15716
|
-
|
|
15900
|
+
_save19 = self.pos
|
|
15717
15901
|
_tmp = match_string("`")
|
|
15718
15902
|
_tmp = _tmp ? nil : true
|
|
15719
|
-
self.pos =
|
|
15903
|
+
self.pos = _save19
|
|
15720
15904
|
unless _tmp
|
|
15721
|
-
self.pos =
|
|
15905
|
+
self.pos = _save18
|
|
15722
15906
|
break
|
|
15723
15907
|
end
|
|
15724
15908
|
_tmp = apply(:_Nonspacechar)
|
|
15725
15909
|
unless _tmp
|
|
15726
|
-
self.pos =
|
|
15910
|
+
self.pos = _save18
|
|
15727
15911
|
end
|
|
15728
15912
|
break
|
|
15729
15913
|
end # end sequence
|
|
@@ -15732,36 +15916,36 @@ class RDoc::Markdown
|
|
|
15732
15916
|
end
|
|
15733
15917
|
_tmp = true
|
|
15734
15918
|
else
|
|
15735
|
-
self.pos =
|
|
15919
|
+
self.pos = _save15
|
|
15736
15920
|
end
|
|
15737
15921
|
break if _tmp
|
|
15738
|
-
self.pos =
|
|
15922
|
+
self.pos = _save14
|
|
15739
15923
|
|
|
15740
|
-
|
|
15924
|
+
_save20 = self.pos
|
|
15741
15925
|
while true # sequence
|
|
15742
|
-
|
|
15926
|
+
_save21 = self.pos
|
|
15743
15927
|
_tmp = apply(:_Ticks3)
|
|
15744
15928
|
_tmp = _tmp ? nil : true
|
|
15745
|
-
self.pos =
|
|
15929
|
+
self.pos = _save21
|
|
15746
15930
|
unless _tmp
|
|
15747
|
-
self.pos =
|
|
15931
|
+
self.pos = _save20
|
|
15748
15932
|
break
|
|
15749
15933
|
end
|
|
15750
15934
|
_tmp = scan(/\G(?-mix:`+)/)
|
|
15751
15935
|
unless _tmp
|
|
15752
|
-
self.pos =
|
|
15936
|
+
self.pos = _save20
|
|
15753
15937
|
end
|
|
15754
15938
|
break
|
|
15755
15939
|
end # end sequence
|
|
15756
15940
|
|
|
15757
15941
|
break if _tmp
|
|
15758
|
-
self.pos =
|
|
15942
|
+
self.pos = _save14
|
|
15759
15943
|
_tmp = apply(:_Spacechar)
|
|
15760
15944
|
break if _tmp
|
|
15761
|
-
self.pos =
|
|
15945
|
+
self.pos = _save14
|
|
15762
15946
|
_tmp = _Newline()
|
|
15763
15947
|
break if _tmp
|
|
15764
|
-
self.pos =
|
|
15948
|
+
self.pos = _save14
|
|
15765
15949
|
break
|
|
15766
15950
|
end # end choice
|
|
15767
15951
|
|
|
@@ -15769,7 +15953,7 @@ class RDoc::Markdown
|
|
|
15769
15953
|
end
|
|
15770
15954
|
_tmp = true
|
|
15771
15955
|
else
|
|
15772
|
-
self.pos =
|
|
15956
|
+
self.pos = _save5
|
|
15773
15957
|
end
|
|
15774
15958
|
if _tmp
|
|
15775
15959
|
text = get_text(_text_start)
|
|
@@ -15923,7 +16107,7 @@ class RDoc::Markdown
|
|
|
15923
16107
|
return _tmp
|
|
15924
16108
|
end
|
|
15925
16109
|
|
|
15926
|
-
# TableRow = ((TableItem:item1 TableItem2
|
|
16110
|
+
# TableRow = ((TableItem:item1 TableItem2+:items { [item1, *items] }):row | TableItem2+:row) "|"? @Newline { row }
|
|
15927
16111
|
def _TableRow
|
|
15928
16112
|
|
|
15929
16113
|
_save = self.pos
|
|
@@ -15940,14 +16124,21 @@ class RDoc::Markdown
|
|
|
15940
16124
|
self.pos = _save2
|
|
15941
16125
|
break
|
|
15942
16126
|
end
|
|
16127
|
+
_save3 = self.pos
|
|
15943
16128
|
_ary = []
|
|
15944
|
-
|
|
15945
|
-
|
|
15946
|
-
_ary << @result
|
|
15947
|
-
|
|
16129
|
+
_tmp = apply(:_TableItem2)
|
|
16130
|
+
if _tmp
|
|
16131
|
+
_ary << @result
|
|
16132
|
+
while true
|
|
16133
|
+
_tmp = apply(:_TableItem2)
|
|
16134
|
+
_ary << @result if _tmp
|
|
16135
|
+
break unless _tmp
|
|
16136
|
+
end
|
|
16137
|
+
_tmp = true
|
|
16138
|
+
@result = _ary
|
|
16139
|
+
else
|
|
16140
|
+
self.pos = _save3
|
|
15948
16141
|
end
|
|
15949
|
-
_tmp = true
|
|
15950
|
-
@result = _ary
|
|
15951
16142
|
items = @result
|
|
15952
16143
|
unless _tmp
|
|
15953
16144
|
self.pos = _save2
|
|
@@ -16063,7 +16254,7 @@ class RDoc::Markdown
|
|
|
16063
16254
|
return _tmp
|
|
16064
16255
|
end
|
|
16065
16256
|
|
|
16066
|
-
# TableLine = ((TableAlign:align1 TableAlign2
|
|
16257
|
+
# TableLine = ((TableAlign:align1 TableAlign2+:aligns {[align1, *aligns] }):line | TableAlign2+:line) "|"? @Newline { line }
|
|
16067
16258
|
def _TableLine
|
|
16068
16259
|
|
|
16069
16260
|
_save = self.pos
|
|
@@ -16080,14 +16271,21 @@ class RDoc::Markdown
|
|
|
16080
16271
|
self.pos = _save2
|
|
16081
16272
|
break
|
|
16082
16273
|
end
|
|
16274
|
+
_save3 = self.pos
|
|
16083
16275
|
_ary = []
|
|
16084
|
-
|
|
16085
|
-
|
|
16086
|
-
_ary << @result
|
|
16087
|
-
|
|
16276
|
+
_tmp = apply(:_TableAlign2)
|
|
16277
|
+
if _tmp
|
|
16278
|
+
_ary << @result
|
|
16279
|
+
while true
|
|
16280
|
+
_tmp = apply(:_TableAlign2)
|
|
16281
|
+
_ary << @result if _tmp
|
|
16282
|
+
break unless _tmp
|
|
16283
|
+
end
|
|
16284
|
+
_tmp = true
|
|
16285
|
+
@result = _ary
|
|
16286
|
+
else
|
|
16287
|
+
self.pos = _save3
|
|
16088
16288
|
end
|
|
16089
|
-
_tmp = true
|
|
16090
|
-
@result = _ary
|
|
16091
16289
|
aligns = @result
|
|
16092
16290
|
unless _tmp
|
|
16093
16291
|
self.pos = _save2
|
|
@@ -16429,7 +16627,7 @@ class RDoc::Markdown
|
|
|
16429
16627
|
Rules[:_SetextHeading2] = rule_info("SetextHeading2", "&(@RawLine SetextBottom2) @StartList:a (!@Endline Inline:b { a << b })+ @Sp @Newline SetextBottom2 { RDoc::Markup::Heading.new(2, a.join) }")
|
|
16430
16628
|
Rules[:_Heading] = rule_info("Heading", "(SetextHeading | AtxHeading)")
|
|
16431
16629
|
Rules[:_BlockQuote] = rule_info("BlockQuote", "BlockQuoteRaw:a { RDoc::Markup::BlockQuote.new(*a) }")
|
|
16432
|
-
Rules[:_BlockQuoteRaw] = rule_info("BlockQuoteRaw", "@StartList:a (\">\" \" \"? Line:l { a << l } (!\">\" !@BlankLine Line:c { a << c })* (@BlankLine:n { a << n })*)+ { inner_parse a.join }")
|
|
16630
|
+
Rules[:_BlockQuoteRaw] = rule_info("BlockQuoteRaw", "@StartList:a (\">\" \" \"? Line:l { a << l } (!\">\" !@BlankLine !(AtxStart @Spacechar) !Bullet !Enumerator !(&{ github? } Ticks3) Line:c { a << c })* (\">\" @BlankLine:n { a << n })*)+ { inner_parse a.join }")
|
|
16433
16631
|
Rules[:_NonblankIndentedLine] = rule_info("NonblankIndentedLine", "!@BlankLine IndentedLine")
|
|
16434
16632
|
Rules[:_VerbatimChunk] = rule_info("VerbatimChunk", "@BlankLine*:a NonblankIndentedLine+:b { a.concat b }")
|
|
16435
16633
|
Rules[:_Verbatim] = rule_info("Verbatim", "VerbatimChunk+:a { RDoc::Markup::Verbatim.new(*a.flatten) }")
|
|
@@ -16561,17 +16759,17 @@ class RDoc::Markdown
|
|
|
16561
16759
|
Rules[:_InStyleTags] = rule_info("InStyleTags", "StyleOpen (!StyleClose .)* StyleClose")
|
|
16562
16760
|
Rules[:_StyleBlock] = rule_info("StyleBlock", "< InStyleTags > @BlankLine* { if css? then RDoc::Markup::Raw.new text end }")
|
|
16563
16761
|
Rules[:_Inlines] = rule_info("Inlines", "(!@Endline Inline:i { i } | @Endline:c !(&{ github? } Ticks3 /[^`\\n]*$/) &Inline { c })+:chunks @Endline? { chunks }")
|
|
16564
|
-
Rules[:_Inline] = rule_info("Inline", "(Str | @Endline | UlOrStarLine | @Space | Strong | Emph | Strike | Image | Link | NoteReference | InlineNote | Code | RawHtml | Entity | EscapedChar | Symbol)")
|
|
16762
|
+
Rules[:_Inline] = rule_info("Inline", "(Str | @Endline | UlOrStarLine | @Space | Strong | Emph | Strike | Image | Link | NoteReference | InlineNote | Code | RawHtml | StrippedComment | Entity | EscapedChar | Symbol)")
|
|
16565
16763
|
Rules[:_Space] = rule_info("Space", "@Spacechar+ { \" \" }")
|
|
16566
|
-
Rules[:_Str] = rule_info("Str", "@StartList:a < @NormalChar+ > { a = text } (StrChunk:c { a << c })* { a }")
|
|
16764
|
+
Rules[:_Str] = rule_info("Str", "@StartList:a < @NormalChar+ > { a = text } (StrChunk:c { a << c })* { rdoc_escape(a) }")
|
|
16567
16765
|
Rules[:_StrChunk] = rule_info("StrChunk", "< (@NormalChar | /_+/ &Alphanumeric)+ > { text }")
|
|
16568
|
-
Rules[:_EscapedChar] = rule_info("EscapedChar", "\"\\\\\" !@Newline < /[:\\\\`|*_{}\\[\\]()\#+.!><-]/ > { text }")
|
|
16766
|
+
Rules[:_EscapedChar] = rule_info("EscapedChar", "\"\\\\\" !@Newline < /[:\\\\`|*_{}\\[\\]()\#+.!><-]/ > { rdoc_escape(text) }")
|
|
16569
16767
|
Rules[:_Entity] = rule_info("Entity", "(HexEntity | DecEntity | CharEntity):a { a }")
|
|
16570
16768
|
Rules[:_Endline] = rule_info("Endline", "(@LineBreak | @TerminalEndline | @NormalEndline)")
|
|
16571
16769
|
Rules[:_NormalEndline] = rule_info("NormalEndline", "@Sp @Newline !@BlankLine !\">\" !AtxStart !(Line /={1,}|-{1,}/ @Newline) { \"\\n\" }")
|
|
16572
16770
|
Rules[:_TerminalEndline] = rule_info("TerminalEndline", "@Sp @Newline @Eof")
|
|
16573
16771
|
Rules[:_LineBreak] = rule_info("LineBreak", "\" \" @NormalEndline { RDoc::Markup::HardBreak.new }")
|
|
16574
|
-
Rules[:_Symbol] = rule_info("Symbol", "< @SpecialChar > { text }")
|
|
16772
|
+
Rules[:_Symbol] = rule_info("Symbol", "< @SpecialChar > { rdoc_escape(text) }")
|
|
16575
16773
|
Rules[:_UlOrStarLine] = rule_info("UlOrStarLine", "(UlLine | StarLine):a { a }")
|
|
16576
16774
|
Rules[:_StarLine] = rule_info("StarLine", "(< /\\*{4,}/ > { text } | < @Spacechar /\\*+/ &@Spacechar > { text })")
|
|
16577
16775
|
Rules[:_UlLine] = rule_info("UlLine", "(< /_{4,}/ > { text } | < @Spacechar /_+/ &@Spacechar > { text })")
|
|
@@ -16588,7 +16786,7 @@ class RDoc::Markdown
|
|
|
16588
16786
|
Rules[:_ReferenceLink] = rule_info("ReferenceLink", "(ReferenceLinkDouble | ReferenceLinkSingle)")
|
|
16589
16787
|
Rules[:_ReferenceLinkDouble] = rule_info("ReferenceLinkDouble", "Label:content < Spnl > !\"[]\" Label:label { link_to content, label, text }")
|
|
16590
16788
|
Rules[:_ReferenceLinkSingle] = rule_info("ReferenceLinkSingle", "Label:content < (Spnl \"[]\")? > { link_to content, content, text }")
|
|
16591
|
-
Rules[:_ExplicitLink] = rule_info("ExplicitLink", "ExplicitLinkWithLabel:a { \"{\#{a[:label]}}[\#{a[:link]}]\" }")
|
|
16789
|
+
Rules[:_ExplicitLink] = rule_info("ExplicitLink", "ExplicitLinkWithLabel:a { \"{\#{a[:label]}}[\#{rdoc_link_url_escape(a[:link])}]\" }")
|
|
16592
16790
|
Rules[:_ExplicitLinkWithLabel] = rule_info("ExplicitLinkWithLabel", "Label:label \"(\" @Sp Source:link Spnl Title @Sp \")\" { { label: label, link: link } }")
|
|
16593
16791
|
Rules[:_Source] = rule_info("Source", "(\"<\" < SourceContents > \">\" | < SourceContents >) { text }")
|
|
16594
16792
|
Rules[:_SourceContents] = rule_info("SourceContents", "((!\"(\" !\")\" !\">\" Nonspacechar)+ | \"(\" SourceContents \")\")*")
|
|
@@ -16613,7 +16811,8 @@ class RDoc::Markdown
|
|
|
16613
16811
|
Rules[:_Ticks4] = rule_info("Ticks4", "\"````\" !\"`\"")
|
|
16614
16812
|
Rules[:_Ticks5] = rule_info("Ticks5", "\"`````\" !\"`\"")
|
|
16615
16813
|
Rules[:_Code] = rule_info("Code", "(Ticks1 < ((!\"`\" Nonspacechar)+ | !Ticks1 /`+/ | !Ticks1 (@Spacechar | @Newline !@BlankLine))+ > Ticks1 | Ticks2 < ((!\"`\" Nonspacechar)+ | !Ticks2 /`+/ | !Ticks2 (@Spacechar | @Newline !@BlankLine))+ > Ticks2 | Ticks3 < ((!\"`\" Nonspacechar)+ | !Ticks3 /`+/ | !Ticks3 (@Spacechar | @Newline !@BlankLine))+ > Ticks3 | Ticks4 < ((!\"`\" Nonspacechar)+ | !Ticks4 /`+/ | !Ticks4 (@Spacechar | @Newline !@BlankLine))+ > Ticks4 | Ticks5 < ((!\"`\" Nonspacechar)+ | !Ticks5 /`+/ | !Ticks5 (@Spacechar | @Newline !@BlankLine))+ > Ticks5) { code text }")
|
|
16616
|
-
Rules[:_RawHtml] = rule_info("RawHtml", "< (
|
|
16814
|
+
Rules[:_RawHtml] = rule_info("RawHtml", "< (HtmlBlockScript | HtmlTag) > { html? ? text : '' }")
|
|
16815
|
+
Rules[:_StrippedComment] = rule_info("StrippedComment", "HtmlComment { '' }")
|
|
16617
16816
|
Rules[:_BlankLine] = rule_info("BlankLine", "@Sp @Newline { \"\\n\" }")
|
|
16618
16817
|
Rules[:_Quoted] = rule_info("Quoted", "(\"\\\"\" (!\"\\\"\" .)* \"\\\"\" | \"'\" (!\"'\" .)* \"'\")")
|
|
16619
16818
|
Rules[:_HtmlAttribute] = rule_info("HtmlAttribute", "(AlphanumericAscii | \"-\")+ Spnl (\"=\" Spnl (Quoted | (!\">\" Nonspacechar)+))? Spnl")
|
|
@@ -16631,9 +16830,9 @@ class RDoc::Markdown
|
|
|
16631
16830
|
Rules[:_BOM] = rule_info("BOM", "%literals.BOM")
|
|
16632
16831
|
Rules[:_Newline] = rule_info("Newline", "%literals.Newline")
|
|
16633
16832
|
Rules[:_Spacechar] = rule_info("Spacechar", "%literals.Spacechar")
|
|
16634
|
-
Rules[:_HexEntity] = rule_info("HexEntity", "/&\#x/i < /[0-9a-fA-F]+/ > \";\" { [text.to_i(16)].pack
|
|
16635
|
-
Rules[:_DecEntity] = rule_info("DecEntity", "\"&\#\" < /[0-9]+/ > \";\" { [text.to_i].pack
|
|
16636
|
-
Rules[:_CharEntity] = rule_info("CharEntity", "\"&\" < /[A-Za-z0-9]+/ > \";\" { if entity = HTML_ENTITIES[text] then entity.pack
|
|
16833
|
+
Rules[:_HexEntity] = rule_info("HexEntity", "/&\#x/i < /[0-9a-fA-F]+/ > \";\" { rdoc_escape([text.to_i(16)].pack('U')) }")
|
|
16834
|
+
Rules[:_DecEntity] = rule_info("DecEntity", "\"&\#\" < /[0-9]+/ > \";\" { rdoc_escape([text.to_i].pack('U')) }")
|
|
16835
|
+
Rules[:_CharEntity] = rule_info("CharEntity", "\"&\" < /[A-Za-z0-9]+/ > \";\" { if entity = HTML_ENTITIES[text] then rdoc_escape(entity.pack('U*')) else \"&\#{text};\" end }")
|
|
16637
16836
|
Rules[:_NonindentSpace] = rule_info("NonindentSpace", "/ {0,3}/")
|
|
16638
16837
|
Rules[:_Indent] = rule_info("Indent", "/\\t| /")
|
|
16639
16838
|
Rules[:_IndentedLine] = rule_info("IndentedLine", "Indent Line")
|
|
@@ -16646,16 +16845,16 @@ class RDoc::Markdown
|
|
|
16646
16845
|
Rules[:_NoteReference] = rule_info("NoteReference", "&{ notes? } RawNoteReference:ref { note_for ref }")
|
|
16647
16846
|
Rules[:_RawNoteReference] = rule_info("RawNoteReference", "\"[^\" < (!@Newline !\"]\" .)+ > \"]\" { text }")
|
|
16648
16847
|
Rules[:_Note] = rule_info("Note", "&{ notes? } @NonindentSpace RawNoteReference:ref \":\" @Sp @StartList:a RawNoteBlock:i { a.concat i } (&Indent RawNoteBlock:i { a.concat i })* { @footnotes[ref] = paragraph a nil }")
|
|
16649
|
-
Rules[:_InlineNote] = rule_info("InlineNote", "&{ notes? } \"^[\" @StartList:a (!\"]\" Inline:l { a << l })+ \"]\" { ref = [:inline, @note_order.length]
|
|
16848
|
+
Rules[:_InlineNote] = rule_info("InlineNote", "&{ notes? } \"^[\" @StartList:a (!\"]\" Inline:l { a << l })+ \"]\" { if @note_order ref = [:inline, @note_order.length] @footnotes[ref] = paragraph a note_for ref end }")
|
|
16650
16849
|
Rules[:_Notes] = rule_info("Notes", "(Note | SkipBlock)*")
|
|
16651
16850
|
Rules[:_RawNoteBlock] = rule_info("RawNoteBlock", "@StartList:a (!@BlankLine !RawNoteReference OptionallyIndentedLine:l { a << l })+ < @BlankLine* > { a << text } { a }")
|
|
16652
|
-
Rules[:_CodeFence] = rule_info("CodeFence", "&{ github? } Ticks3 (@Sp StrChunk:format)?
|
|
16851
|
+
Rules[:_CodeFence] = rule_info("CodeFence", "&{ github? } Ticks3 (@Sp StrChunk:format)? @Sp @Newline? < ((!\"`\" Nonspacechar)+ | !Ticks3 /`+/ | Spacechar | @Newline)+ > Ticks3 @Sp @Newline* { verbatim = RDoc::Markup::Verbatim.new text verbatim.format = format.intern if format.instance_of?(String) verbatim }")
|
|
16653
16852
|
Rules[:_Table] = rule_info("Table", "&{ github? } TableHead:header TableLine:line TableRow+:body { table = RDoc::Markup::Table.new(header, line, body) parse_table_cells(table) }")
|
|
16654
16853
|
Rules[:_TableHead] = rule_info("TableHead", "TableItem2+:items \"|\"? @Newline { items }")
|
|
16655
|
-
Rules[:_TableRow] = rule_info("TableRow", "((TableItem:item1 TableItem2
|
|
16854
|
+
Rules[:_TableRow] = rule_info("TableRow", "((TableItem:item1 TableItem2+:items { [item1, *items] }):row | TableItem2+:row) \"|\"? @Newline { row }")
|
|
16656
16855
|
Rules[:_TableItem2] = rule_info("TableItem2", "\"|\" TableItem")
|
|
16657
16856
|
Rules[:_TableItem] = rule_info("TableItem", "< /(?:\\\\.|[^|\\n])+/ > { text.strip.gsub(/\\\\([|])/, '\\1') }")
|
|
16658
|
-
Rules[:_TableLine] = rule_info("TableLine", "((TableAlign:align1 TableAlign2
|
|
16857
|
+
Rules[:_TableLine] = rule_info("TableLine", "((TableAlign:align1 TableAlign2+:aligns {[align1, *aligns] }):line | TableAlign2+:line) \"|\"? @Newline { line }")
|
|
16659
16858
|
Rules[:_TableAlign2] = rule_info("TableAlign2", "\"|\" @Sp TableAlign")
|
|
16660
16859
|
Rules[:_TableAlign] = rule_info("TableAlign", "< /:?-+:?/ > @Sp { text.start_with?(\":\") ? (text.end_with?(\":\") ? :center : :left) : (text.end_with?(\":\") ? :right : nil) }")
|
|
16661
16860
|
Rules[:_DefinitionList] = rule_info("DefinitionList", "&{ definition_lists? } DefinitionListItem+:list { RDoc::Markup::List.new :NOTE, *list.flatten }")
|