Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change chapter heading level to H1 #2206

Merged
merged 10 commits into from
Jan 25, 2025
121 changes: 78 additions & 43 deletions i18n/nw_base.ts
Original file line number Diff line number Diff line change
Expand Up @@ -178,68 +178,103 @@
<source>Text Margins</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="162" />
<source>Title and Partition</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="163" />
<source>Page Layout</source>
<source>Heading 1 and Chapter</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="164" />
<source>Unit</source>
<source>Heading 2 and Scene</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="165" />
<source>Page Size</source>
<source>Heading 3 and Section</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="166" />
<source>Page Margins</source>
<source>Heading 4</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="167" />
<source>Text Paragraph</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="168" />
<source>Scene Separator</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="170" />
<source>Page Layout</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="171" />
<source>Unit</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="172" />
<source>Page Size</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="173" />
<source>Page Margins</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="175" />
<source>Document Style</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="169" />
<location filename="../novelwriter/core/buildsettings.py" line="176" />
<source>Page Header</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="170" />
<location filename="../novelwriter/core/buildsettings.py" line="177" />
<source>Page Counter Offset</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="171" />
<location filename="../novelwriter/core/buildsettings.py" line="178" />
<source>Add Colours to Headings</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="172" />
<location filename="../novelwriter/core/buildsettings.py" line="179" />
<source>Increase Size of Headings</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="173" />
<location filename="../novelwriter/core/buildsettings.py" line="180" />
<source>Bold Headings</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="175" />
<location filename="../novelwriter/core/buildsettings.py" line="182" />
<source>HTML Options</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="176" />
<location filename="../novelwriter/core/buildsettings.py" line="183" />
<source>Add CSS Styles</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/core/buildsettings.py" line="177" />
<location filename="../novelwriter/core/buildsettings.py" line="184" />
<source>Preserve Tab Characters</source>
<translation type="unfinished" />
</message>
Expand Down Expand Up @@ -1363,12 +1398,12 @@
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/itemdetails.py" line="98" />
<location filename="../novelwriter/gui/itemdetails.py" line="99" />
<source>Class</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/itemdetails.py" line="110" />
<location filename="../novelwriter/gui/itemdetails.py" line="111" />
<source>Usage</source>
<translation type="unfinished" />
</message>
Expand Down Expand Up @@ -3739,7 +3774,7 @@
<context>
<name>NovelSelector</name>
<message>
<location filename="../novelwriter/extensions/novelselector.py" line="111" />
<location filename="../novelwriter/extensions/novelselector.py" line="112" />
<source>All Novel Folders</source>
<translation type="unfinished" />
</message>
Expand Down Expand Up @@ -4896,129 +4931,129 @@
<context>
<name>_TreeContextMenu</name>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1136" />
<location filename="../novelwriter/gui/projtree.py" line="1133" />
<source>Empty Trash</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1157" />
<location filename="../novelwriter/gui/projtree.py" line="1154" />
<source>Rename</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1172" />
<location filename="../novelwriter/gui/projtree.py" line="1169" />
<source>Duplicate</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1192" />
<location filename="../novelwriter/gui/projtree.py" line="1189" />
<source>Open Document</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1197" />
<location filename="../novelwriter/gui/projtree.py" line="1194" />
<source>View Document</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1206" />
<location filename="../novelwriter/gui/projtree.py" line="1203" />
<source>Create New ...</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1218" />
<location filename="../novelwriter/gui/projtree.py" line="1215" />
<source>Rename to Heading</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1227" />
<location filename="../novelwriter/gui/projtree.py" line="1224" />
<source>Set Active to ...</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1233" />
<location filename="../novelwriter/gui/projtree.py" line="1230" />
<source>Toggle Active</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1240" />
<location filename="../novelwriter/gui/projtree.py" line="1237" />
<source>Set Status to ...</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1270" />
<location filename="../novelwriter/gui/projtree.py" line="1252" />
<location filename="../novelwriter/gui/projtree.py" line="1267" />
<location filename="../novelwriter/gui/projtree.py" line="1249" />
<source>Manage Labels ...</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1258" />
<location filename="../novelwriter/gui/projtree.py" line="1255" />
<source>Set Importance to ...</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1279" />
<location filename="../novelwriter/gui/projtree.py" line="1276" />
<source>Transform ...</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1301" />
<location filename="../novelwriter/gui/projtree.py" line="1297" />
<location filename="../novelwriter/gui/projtree.py" line="1293" />
<location filename="../novelwriter/gui/projtree.py" line="1289" />
<location filename="../novelwriter/gui/projtree.py" line="1298" />
<location filename="../novelwriter/gui/projtree.py" line="1294" />
<location filename="../novelwriter/gui/projtree.py" line="1290" />
<location filename="../novelwriter/gui/projtree.py" line="1286" />
<source>Convert to {0}</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1305" />
<location filename="../novelwriter/gui/projtree.py" line="1302" />
<source>Merge Child Items into Self</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1307" />
<location filename="../novelwriter/gui/projtree.py" line="1304" />
<source>Merge Child Items into New</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1311" />
<location filename="../novelwriter/gui/projtree.py" line="1308" />
<source>Merge Documents in Folder</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1315" />
<location filename="../novelwriter/gui/projtree.py" line="1312" />
<source>Split Document by Headings</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1322" />
<location filename="../novelwriter/gui/projtree.py" line="1319" />
<source>Expand All</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1324" />
<location filename="../novelwriter/gui/projtree.py" line="1321" />
<source>Collapse All</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1334" />
<location filename="../novelwriter/gui/projtree.py" line="1331" />
<source>Delete Permanently</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1336" />
<location filename="../novelwriter/gui/projtree.py" line="1333" />
<source>Move to Trash</source>
<translation type="unfinished" />
</message>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1412" />
<location filename="../novelwriter/gui/projtree.py" line="1409" />
<source>Do you want to convert the folder to a {0}? This action cannot be reversed.</source>
<translation type="unfinished" />
</message>
</context>
<context>
<name>_UpdatableMenu</name>
<message>
<location filename="../novelwriter/gui/projtree.py" line="1050" />
<location filename="../novelwriter/gui/projtree.py" line="1047" />
<source>From Template</source>
<translation type="unfinished" />
</message>
Expand Down
7 changes: 7 additions & 0 deletions novelwriter/core/buildsettings.py
Original file line number Diff line number Diff line change
Expand Up @@ -159,6 +159,13 @@
"format.indentFirstPar": QT_TRANSLATE_NOOP("Builds", "Indent First Paragraph"),

"format.grpMargins": QT_TRANSLATE_NOOP("Builds", "Text Margins"),
"format.titleMargin": QT_TRANSLATE_NOOP("Builds", "Title and Partition"),
"format.h1Margin": QT_TRANSLATE_NOOP("Builds", "Heading 1 and Chapter"),
"format.h2Margin": QT_TRANSLATE_NOOP("Builds", "Heading 2 and Scene"),
"format.h3Margin": QT_TRANSLATE_NOOP("Builds", "Heading 3 and Section"),
"format.h4Margin": QT_TRANSLATE_NOOP("Builds", "Heading 4"),
"format.textMargin": QT_TRANSLATE_NOOP("Builds", "Text Paragraph"),
"format.sepMargin": QT_TRANSLATE_NOOP("Builds", "Scene Separator"),

"format.grpPage": QT_TRANSLATE_NOOP("Builds", "Page Layout"),
"format.pageUnit": QT_TRANSLATE_NOOP("Builds", "Unit"),
Expand Down
23 changes: 12 additions & 11 deletions novelwriter/formats/shared.py
Original file line number Diff line number Diff line change
Expand Up @@ -104,17 +104,18 @@ class BlockTyp(IntEnum):

EMPTY = 1 # Empty line (new paragraph)
TITLE = 2 # Title
HEAD1 = 3 # Heading 1
HEAD2 = 4 # Heading 2
HEAD3 = 5 # Heading 3
HEAD4 = 6 # Heading 4
TEXT = 7 # Text line
SEP = 8 # Scene separator
SKIP = 9 # Paragraph break
SUMMARY = 10 # Synopsis/short comment
NOTE = 11 # Note
COMMENT = 12 # Comment
KEYWORD = 13 # Tag/reference keywords
PART = 3 # Partition
HEAD1 = 4 # Heading 1 or Chapter
HEAD2 = 5 # Heading 2 or Scene
HEAD3 = 6 # Heading 3 or Section
HEAD4 = 7 # Heading 4
TEXT = 8 # Text line
SEP = 9 # Scene separator
SKIP = 10 # Paragraph break
SUMMARY = 11 # Synopsis/short comment
NOTE = 12 # Note
COMMENT = 13 # Comment
KEYWORD = 14 # Tag/reference keywords


class BlockFmt(Flag):
Expand Down
2 changes: 1 addition & 1 deletion novelwriter/formats/todocx.py
Original file line number Diff line number Diff line change
Expand Up @@ -271,7 +271,7 @@ def doConvert(self) -> None:
if tType == BlockTyp.TEXT:
self._processFragments(par, S_NORM, tText, tFormat)

elif tType == BlockTyp.TITLE:
elif tType in (BlockTyp.TITLE, BlockTyp.PART):
self._processFragments(par, S_TITLE, tText, tFormat)

elif tType == BlockTyp.HEAD1:
Expand Down
Loading
Loading