Add 4-th level headings

This commit is contained in:
RunasSudo 2019-09-15 00:31:53 +10:00
parent 04a7e52f2e
commit c4481addf3
Signed by: RunasSudo
GPG Key ID: 7234E476BF21C61A
4 changed files with 17 additions and 2 deletions

View File

@ -24,6 +24,8 @@ This is the *blah blah*.
Cross reference to `rule 1`_ Cross reference to `rule 1`_
#### Fourth-level heading
(2) DEF (2) DEF
### 3 Table example ### 3 Table example

View File

@ -1 +1 @@
{\rtf1\deff0{\fonttbl{\f0 TeX Gyre Heros{\*\falt FreeSans}{\*\falt Liberation Sans}{\*\falt Arial};}}\paperw11905\paperh16837\margl1133\margr1133\margt1133\margb1133{\header\f0\fs16\tqr\tx9637 Example Legal Document\tab }{\footer\f0\fs16\tqr\tx9637 \tab\chpgn}\sa198\fs1\~\fs24 {\fs20\li566{\b Note:} This is a note.\par}{\sb566\keepn\b\fs26\qc\caps Part 1\u8212?Preliminary\par}{\keepn\b\fi-566\li566 1\tab Short title\par}{\li566 This is the {\i blah blah}.\par}{\keepn\b\fi-566\li566 2\tab Another heading\par}{\fi-566\li1133 (1)\tab ABC\par}{\li1133 Continued\par}{\fi-566\li1700 (a)\tab asdf\par}{\fi-566\li1700 (b)\tab abcdefg\par}{\li1700 hijkl\par}{\li1133 Cross reference to rule\u160?1\par}{\fi-566\li1133 (2)\tab DEF\par}{\keepn\b\fi-566\li566 3\tab Table example\par}{\sa0\trowd\trgaph120\trleft566\clbrdrt\brdrs\clbrdrb\brdrs\cellx2380\clbrdrt\brdrs\clbrdrb\brdrs\cellx9636 {\b Column 1\intbl\cell}{\b Column 2\intbl\cell}\row{\b This is a long column header that will overflow onto multiple lines\intbl\cell}{\b Second column\intbl\cell}\row {1. First row\intbl\cell}{Foo bar\intbl\cell}\row {2. Second row\intbl\cell}{Baz qux\intbl\cell}\row }} {\rtf1\deff0{\fonttbl{\f0 TeX Gyre Heros{\*\falt FreeSans}{\*\falt Liberation Sans}{\*\falt Arial};}}\paperw11905\paperh16837\margl1133\margr1133\margt1133\margb1133{\header\f0\fs16\tqr\tx9637 Example Legal Document\tab }{\footer\f0\fs16\tqr\tx9637 \tab\chpgn}\fs1\~\par\sa198\fs24 {\fs20\li566{\b Note:} This is a note.\par}{\sb566\keepn\b\fs26\qc\caps Part 1\u8212?Preliminary\par}{\keepn\b\fi-566\li566 1\tab Short title\par}{\li566 This is the {\i blah blah}.\par}{\keepn\b\fi-566\li566 2\tab Another heading\par}{\fi-566\li1133 (1)\tab ABC\par}{\li1133 Continued\par}{\fi-566\li1700 (a)\tab asdf\par}{\fi-566\li1700 (b)\tab abcdefg\par}{\li1700 hijkl\par}{\li1133 Cross reference to rule\u160?1\par}{\keepn\i\li566 Fourth-level heading\par}{\fi-566\li1133 (2)\tab DEF\par}{\keepn\b\fi-566\li566 3\tab Table example\par}{\sa0\trowd\trgaph120\trleft566\clbrdrt\brdrs\clbrdrb\brdrs\cellx2380\clbrdrt\brdrs\clbrdrb\brdrs\cellx9636 {\b Column 1\intbl\cell}{\b Column 2\intbl\cell}\row{\b This is a long column header that will overflow onto multiple lines\intbl\cell}{\b Second column\intbl\cell}\row {1. First row\intbl\cell}{Foo bar\intbl\cell}\row {2. Second row\intbl\cell}{Baz qux\intbl\cell}\row }}

View File

@ -82,7 +82,13 @@ class LaTeXRenderer(mistletoe.latex_renderer.LaTeXRenderer):
if token.level == 3: if token.level == 3:
heading_last, self.heading_last = self.heading_last, False heading_last, self.heading_last = self.heading_last, False
return format(r'{\par\bfseries\makebox[<lmarg>][l]{~}<content>\phantomsection\addcontentsline{toc}{subsubsection}{<content>}\nopagebreak\par}', return format(r'{\par\leftskip=<lmarg>\bfseries <content>\phantomsection\addcontentsline{toc}{subsubsection}{<content>}\nopagebreak\par}',
content=self.render_inner(token)
)
if token.level == 4:
heading_last, self.heading_last = self.heading_last, False
return format(r'{\par\leftskip=<lmarg>\itshape <content>\nopagebreak\par}',
content=self.render_inner(token) content=self.render_inner(token)
) )

View File

@ -106,6 +106,13 @@ class RTFRenderer(mistletoe.base_renderer.BaseRenderer):
hangindent=cm_to_twip(LMARG)+self.quotemargin, hangindent=cm_to_twip(LMARG)+self.quotemargin,
content=self.render_inner(token) content=self.render_inner(token)
) )
if token.level == 4:
heading_last, self.heading_last = self.heading_last, False
return format(r'{\keepn\i\li<hangindent> <content>\par}',
hangindent=cm_to_twip(LMARG)+self.quotemargin,
content=self.render_inner(token)
)
def render_numbered_heading(self, token): def render_numbered_heading(self, token):
if token.level == 1: if token.level == 1: