Commit 652ed49
committed
Fix blockquote parsing to match GFM behavior
Two changes to the BlockQuoteRaw rule in the PEG grammar:
1. Stop lazy continuation from consuming block-level elements by adding
negative lookaheads for headings, list markers, and code fences.
2. End blockquotes at unquoted blank lines. Previously, all blank lines
were consumed and the parser continued matching subsequent > lines as
part of the same blockquote. Now only blank lines prefixed with >
continue the blockquote, matching GFM where an unquoted blank line
separates two distinct blockquotes.1 parent 393c0e8 commit 652ed49
File tree
3 files changed
+168
-29
lines changed- lib/rdoc
- test/rdoc
3 files changed
+168
-29
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
617 | 617 | | |
618 | 618 | | |
619 | 619 | | |
620 | | - | |
621 | | - | |
| 620 | + | |
| 621 | + | |
622 | 622 | | |
623 | 623 | | |
624 | 624 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1656 | 1656 | | |
1657 | 1657 | | |
1658 | 1658 | | |
1659 | | - | |
| 1659 | + | |
1660 | 1660 | | |
1661 | 1661 | | |
1662 | 1662 | | |
| |||
1718 | 1718 | | |
1719 | 1719 | | |
1720 | 1720 | | |
| 1721 | + | |
| 1722 | + | |
| 1723 | + | |
| 1724 | + | |
| 1725 | + | |
| 1726 | + | |
| 1727 | + | |
| 1728 | + | |
| 1729 | + | |
| 1730 | + | |
| 1731 | + | |
| 1732 | + | |
| 1733 | + | |
| 1734 | + | |
| 1735 | + | |
| 1736 | + | |
| 1737 | + | |
| 1738 | + | |
| 1739 | + | |
| 1740 | + | |
| 1741 | + | |
| 1742 | + | |
| 1743 | + | |
| 1744 | + | |
| 1745 | + | |
| 1746 | + | |
| 1747 | + | |
| 1748 | + | |
| 1749 | + | |
| 1750 | + | |
| 1751 | + | |
| 1752 | + | |
1721 | 1753 | | |
1722 | 1754 | | |
1723 | 1755 | | |
| |||
1741 | 1773 | | |
1742 | 1774 | | |
1743 | 1775 | | |
1744 | | - | |
| 1776 | + | |
1745 | 1777 | | |
| 1778 | + | |
| 1779 | + | |
| 1780 | + | |
| 1781 | + | |
| 1782 | + | |
1746 | 1783 | | |
1747 | 1784 | | |
1748 | 1785 | | |
1749 | | - | |
| 1786 | + | |
1750 | 1787 | | |
1751 | 1788 | | |
1752 | 1789 | | |
1753 | 1790 | | |
1754 | 1791 | | |
1755 | | - | |
| 1792 | + | |
1756 | 1793 | | |
1757 | 1794 | | |
1758 | 1795 | | |
| |||
1769 | 1806 | | |
1770 | 1807 | | |
1771 | 1808 | | |
1772 | | - | |
| 1809 | + | |
1773 | 1810 | | |
1774 | 1811 | | |
1775 | 1812 | | |
1776 | | - | |
| 1813 | + | |
1777 | 1814 | | |
1778 | 1815 | | |
1779 | | - | |
| 1816 | + | |
1780 | 1817 | | |
1781 | 1818 | | |
1782 | 1819 | | |
1783 | | - | |
| 1820 | + | |
1784 | 1821 | | |
1785 | 1822 | | |
1786 | | - | |
| 1823 | + | |
1787 | 1824 | | |
1788 | 1825 | | |
1789 | 1826 | | |
1790 | 1827 | | |
1791 | 1828 | | |
1792 | | - | |
| 1829 | + | |
1793 | 1830 | | |
1794 | 1831 | | |
1795 | 1832 | | |
1796 | 1833 | | |
1797 | 1834 | | |
1798 | | - | |
| 1835 | + | |
1799 | 1836 | | |
1800 | 1837 | | |
1801 | 1838 | | |
1802 | 1839 | | |
1803 | | - | |
| 1840 | + | |
1804 | 1841 | | |
1805 | | - | |
| 1842 | + | |
1806 | 1843 | | |
1807 | 1844 | | |
1808 | | - | |
| 1845 | + | |
1809 | 1846 | | |
1810 | | - | |
| 1847 | + | |
1811 | 1848 | | |
1812 | 1849 | | |
1813 | | - | |
| 1850 | + | |
1814 | 1851 | | |
1815 | 1852 | | |
1816 | | - | |
| 1853 | + | |
| 1854 | + | |
| 1855 | + | |
| 1856 | + | |
| 1857 | + | |
| 1858 | + | |
| 1859 | + | |
| 1860 | + | |
| 1861 | + | |
| 1862 | + | |
| 1863 | + | |
| 1864 | + | |
| 1865 | + | |
| 1866 | + | |
| 1867 | + | |
| 1868 | + | |
| 1869 | + | |
| 1870 | + | |
| 1871 | + | |
| 1872 | + | |
| 1873 | + | |
| 1874 | + | |
| 1875 | + | |
| 1876 | + | |
| 1877 | + | |
| 1878 | + | |
| 1879 | + | |
| 1880 | + | |
| 1881 | + | |
| 1882 | + | |
| 1883 | + | |
| 1884 | + | |
| 1885 | + | |
1817 | 1886 | | |
1818 | | - | |
| 1887 | + | |
1819 | 1888 | | |
1820 | 1889 | | |
1821 | 1890 | | |
1822 | 1891 | | |
1823 | 1892 | | |
1824 | | - | |
| 1893 | + | |
1825 | 1894 | | |
1826 | 1895 | | |
1827 | 1896 | | |
1828 | 1897 | | |
1829 | 1898 | | |
1830 | | - | |
| 1899 | + | |
1831 | 1900 | | |
1832 | 1901 | | |
1833 | 1902 | | |
| |||
1836 | 1905 | | |
1837 | 1906 | | |
1838 | 1907 | | |
1839 | | - | |
| 1908 | + | |
1840 | 1909 | | |
1841 | 1910 | | |
1842 | 1911 | | |
1843 | 1912 | | |
1844 | | - | |
| 1913 | + | |
1845 | 1914 | | |
| 1915 | + | |
| 1916 | + | |
| 1917 | + | |
| 1918 | + | |
| 1919 | + | |
1846 | 1920 | | |
1847 | 1921 | | |
1848 | 1922 | | |
1849 | | - | |
| 1923 | + | |
1850 | 1924 | | |
1851 | 1925 | | |
1852 | 1926 | | |
1853 | 1927 | | |
1854 | 1928 | | |
1855 | | - | |
| 1929 | + | |
1856 | 1930 | | |
1857 | 1931 | | |
1858 | 1932 | | |
| |||
1861 | 1935 | | |
1862 | 1936 | | |
1863 | 1937 | | |
1864 | | - | |
| 1938 | + | |
1865 | 1939 | | |
1866 | 1940 | | |
1867 | 1941 | | |
| |||
16457 | 16531 | | |
16458 | 16532 | | |
16459 | 16533 | | |
16460 | | - | |
| 16534 | + | |
16461 | 16535 | | |
16462 | 16536 | | |
16463 | 16537 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
120 | 120 | | |
121 | 121 | | |
122 | 122 | | |
123 | | - | |
| 123 | + | |
| 124 | + | |
124 | 125 | | |
125 | 126 | | |
126 | 127 | | |
127 | 128 | | |
128 | 129 | | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
129 | 194 | | |
130 | 195 | | |
131 | 196 | | |
| |||
0 commit comments