novelWriter 2.2rc1__py3-none-any.whl → 2.2.1__py3-none-any.whl
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.
- {novelWriter-2.2rc1.dist-info → novelWriter-2.2.1.dist-info}/METADATA +1 -1
- {novelWriter-2.2rc1.dist-info → novelWriter-2.2.1.dist-info}/RECORD +113 -111
- {novelWriter-2.2rc1.dist-info → novelWriter-2.2.1.dist-info}/WHEEL +1 -1
- novelwriter/__init__.py +10 -5
- novelwriter/assets/i18n/nw_de_DE.qm +0 -0
- novelwriter/assets/i18n/nw_en_US.qm +0 -0
- novelwriter/assets/i18n/nw_es_419.qm +0 -0
- novelwriter/assets/i18n/nw_fr_FR.qm +0 -0
- novelwriter/assets/i18n/nw_it_IT.qm +0 -0
- novelwriter/assets/i18n/nw_ja_JP.qm +0 -0
- novelwriter/assets/i18n/nw_nb_NO.qm +0 -0
- novelwriter/assets/i18n/nw_zh_CN.qm +0 -0
- novelwriter/assets/i18n/project_de_DE.json +1 -0
- novelwriter/assets/i18n/project_en_US.json +1 -0
- novelwriter/assets/i18n/project_es_419.json +11 -0
- novelwriter/assets/i18n/project_fr_FR.json +11 -0
- novelwriter/assets/i18n/project_it_IT.json +11 -0
- novelwriter/assets/i18n/project_ja_JP.json +2 -1
- novelwriter/assets/i18n/project_nb_NO.json +1 -0
- novelwriter/assets/i18n/project_zh_CN.json +11 -0
- novelwriter/assets/icons/typicons_dark/icons.conf +3 -2
- novelwriter/assets/icons/typicons_dark/nw_tb-bold-md.svg +4 -0
- novelwriter/assets/icons/typicons_dark/nw_tb-bold.svg +3 -1
- novelwriter/assets/icons/typicons_dark/nw_tb-italic-md.svg +4 -0
- novelwriter/assets/icons/typicons_dark/nw_tb-italic.svg +3 -1
- novelwriter/assets/icons/typicons_dark/nw_tb-strike-md.svg +4 -0
- novelwriter/assets/icons/typicons_dark/nw_tb-strike.svg +3 -1
- novelwriter/assets/icons/typicons_dark/nw_tb-subscript.svg +4 -2
- novelwriter/assets/icons/typicons_dark/nw_tb-superscript.svg +4 -2
- novelwriter/assets/icons/typicons_dark/nw_tb-underline.svg +4 -2
- novelwriter/assets/icons/typicons_light/icons.conf +3 -2
- novelwriter/assets/icons/typicons_light/nw_tb-bold-md.svg +4 -0
- novelwriter/assets/icons/typicons_light/nw_tb-bold.svg +3 -1
- novelwriter/assets/icons/typicons_light/nw_tb-italic-md.svg +4 -0
- novelwriter/assets/icons/typicons_light/nw_tb-italic.svg +3 -1
- novelwriter/assets/icons/typicons_light/nw_tb-strike-md.svg +4 -0
- novelwriter/assets/icons/typicons_light/nw_tb-strike.svg +3 -1
- novelwriter/assets/icons/typicons_light/nw_tb-subscript.svg +4 -2
- novelwriter/assets/icons/typicons_light/nw_tb-superscript.svg +4 -2
- novelwriter/assets/icons/typicons_light/nw_tb-underline.svg +4 -2
- novelwriter/assets/manual.pdf +0 -0
- novelwriter/assets/sample.zip +0 -0
- novelwriter/assets/text/release_notes.htm +50 -7
- novelwriter/common.py +16 -29
- novelwriter/config.py +3 -3
- novelwriter/constants.py +1 -1
- novelwriter/core/buildsettings.py +1 -1
- novelwriter/core/coretools.py +2 -1
- novelwriter/core/docbuild.py +1 -1
- novelwriter/core/document.py +1 -1
- novelwriter/core/index.py +2 -2
- novelwriter/core/item.py +2 -2
- novelwriter/core/options.py +3 -3
- novelwriter/core/project.py +3 -3
- novelwriter/core/projectdata.py +2 -2
- novelwriter/core/projectxml.py +1 -1
- novelwriter/core/sessions.py +2 -2
- novelwriter/core/spellcheck.py +4 -3
- novelwriter/core/status.py +3 -3
- novelwriter/core/storage.py +1 -1
- novelwriter/core/tohtml.py +2 -2
- novelwriter/core/tokenizer.py +1 -1
- novelwriter/core/tomd.py +2 -2
- novelwriter/core/toodt.py +1 -1
- novelwriter/core/tree.py +2 -2
- novelwriter/dialogs/about.py +30 -31
- novelwriter/dialogs/docmerge.py +24 -15
- novelwriter/dialogs/docsplit.py +27 -16
- novelwriter/dialogs/editlabel.py +19 -7
- novelwriter/dialogs/preferences.py +44 -57
- novelwriter/dialogs/projdetails.py +29 -36
- novelwriter/dialogs/projload.py +32 -36
- novelwriter/dialogs/projsettings.py +20 -15
- novelwriter/dialogs/quotes.py +32 -25
- novelwriter/dialogs/updates.py +4 -14
- novelwriter/dialogs/wordlist.py +34 -21
- novelwriter/enum.py +5 -4
- novelwriter/error.py +1 -1
- novelwriter/extensions/circularprogress.py +1 -1
- novelwriter/extensions/configlayout.py +3 -15
- novelwriter/extensions/{wheeleventfilter.py → eventfilters.py} +15 -5
- novelwriter/extensions/novelselector.py +1 -1
- novelwriter/extensions/pageddialog.py +1 -1
- novelwriter/extensions/pagedsidebar.py +2 -5
- novelwriter/extensions/simpleprogress.py +8 -9
- novelwriter/extensions/statusled.py +1 -1
- novelwriter/extensions/switch.py +4 -4
- novelwriter/extensions/switchbox.py +1 -6
- novelwriter/gui/doceditor.py +72 -64
- novelwriter/gui/dochighlight.py +3 -2
- novelwriter/gui/docviewer.py +22 -47
- novelwriter/gui/docviewerpanel.py +68 -23
- novelwriter/gui/editordocument.py +3 -3
- novelwriter/gui/itemdetails.py +2 -2
- novelwriter/gui/mainmenu.py +35 -30
- novelwriter/gui/noveltree.py +44 -53
- novelwriter/gui/outline.py +2 -1
- novelwriter/gui/projtree.py +5 -6
- novelwriter/gui/sidebar.py +6 -4
- novelwriter/gui/statusbar.py +47 -4
- novelwriter/gui/theme.py +5 -6
- novelwriter/guimain.py +139 -189
- novelwriter/shared.py +53 -29
- novelwriter/tools/dictionaries.py +2 -2
- novelwriter/tools/lipsum.py +34 -28
- novelwriter/tools/manusbuild.py +3 -4
- novelwriter/tools/manuscript.py +19 -26
- novelwriter/tools/manussettings.py +2 -4
- novelwriter/tools/projwizard.py +3 -3
- novelwriter/tools/writingstats.py +17 -4
- novelwriter/assets/icons/typicons_dark/nw_tb-markdown.svg +0 -8
- novelwriter/assets/icons/typicons_dark/nw_tb-shortcode.svg +0 -8
- novelwriter/assets/icons/typicons_light/nw_tb-markdown.svg +0 -8
- novelwriter/assets/icons/typicons_light/nw_tb-shortcode.svg +0 -8
- {novelWriter-2.2rc1.dist-info → novelWriter-2.2.1.dist-info}/LICENSE.md +0 -0
- {novelWriter-2.2rc1.dist-info → novelWriter-2.2.1.dist-info}/entry_points.txt +0 -0
- {novelWriter-2.2rc1.dist-info → novelWriter-2.2.1.dist-info}/top_level.txt +0 -0
@@ -1,5 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="m2.
|
4
|
-
<path d="
|
3
|
+
<path d="m2.2992 3.0475-0.13958 0.48548h1.0134l-0.13958-0.48548q-0.097092-0.31556-0.18812-0.64932-0.084958-0.33377-0.16992-0.66146h-0.024273q-0.084958 0.33377-0.16992 0.66752-0.084958 0.32769-0.18205 0.64325zm-1.329 2.1118 1.2926-3.9688h0.82531l1.2926 3.9688h-0.74035l-0.30949-1.0741h-1.3351l-0.30949 1.0741z" fill="#aeaeae" stroke-opacity=".78039" stroke-width=".45513"/>
|
4
|
+
<path d="m3.9467 5.1593v-1.9843h0.62795q0.15323 0 0.27942 0.027308 0.12919 0.024273 0.22233 0.081922 0.09615 0.054615 0.14722 0.14868 0.054082 0.094058 0.054082 0.23059 0 0.14261-0.072107 0.26397-0.072108 0.12137-0.2013 0.16688v0.012137q0.16224 0.036409 0.2674 0.15474 0.10816 0.1153 0.10816 0.31556 0 0.14868-0.057086 0.2579-0.057085 0.10922-0.15923 0.18205-0.099158 0.072819-0.23736 0.10922-0.13821 0.033375-0.30045 0.033375zm0.34852-1.1651h0.24938q0.20732 0 0.29744-0.075853 0.093142-0.075854 0.093142-0.20328 0-0.14564-0.09615-0.20632-0.09615-0.060682-0.28843-0.060682h-0.25538zm0 0.89208h0.29445q0.21632 0 0.3335-0.078888 0.11718-0.081923 0.11718-0.2488 0-0.15778-0.11418-0.22757-0.11418-0.07282-0.33651-0.07282h-0.29445z" fill="#fff" stroke-opacity=".78039" stroke-width=".22645"/>
|
5
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#69c" stroke-width="1.1186"/>
|
6
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#69c" stroke-width="1.1186"/>
|
5
7
|
</svg>
|
@@ -1,5 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="
|
4
|
-
<path d="
|
3
|
+
<path d="m3.9467 3.175v-1.9843h0.62793q0.15324 0 0.27942 0.027307 0.12919 0.024274 0.22233 0.081922 0.09615 0.054615 0.14722 0.14868 0.054082 0.094058 0.054082 0.23059 0 0.14261-0.072107 0.26397-0.072107 0.12137-0.2013 0.16688v0.012138q0.16224 0.03641 0.2674 0.15475 0.10816 0.1153 0.10816 0.31556 0 0.14868-0.057086 0.2579-0.057085 0.10922-0.15923 0.18204-0.099142 0.072818-0.23735 0.10922-0.13821 0.033375-0.30045 0.033375zm0.34853-1.1651h0.24937q0.20732 0 0.29744-0.075853 0.093141-0.075853 0.093141-0.20328 0-0.14564-0.09615-0.20632-0.09615-0.060682-0.28843-0.060682h-0.25538zm0 0.89208h0.29443q0.21632 0 0.3335-0.078888 0.11718-0.081923 0.11718-0.24879 0-0.15777-0.11418-0.22756-0.11418-0.07282-0.33651-0.07282h-0.29443z" fill="#fff" stroke-opacity=".78039" stroke-width=".25475"/>
|
4
|
+
<path d="m2.2992 3.0475-0.13958 0.48548h1.0134l-0.13958-0.48548q-0.097092-0.31556-0.18812-0.64932-0.084958-0.33377-0.16992-0.66146h-0.024273q-0.084958 0.33377-0.16992 0.66753-0.084958 0.32769-0.18205 0.64325zm-1.329 2.1118 1.2926-3.9688h0.82531l1.2926 3.9688h-0.74035l-0.30949-1.0741h-1.3351l-0.30949 1.0741z" fill="#aeaeae" stroke-opacity=".78039" stroke-width=".45513"/>
|
5
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#69c" stroke-width="1.1186"/>
|
6
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#69c" stroke-width="1.1186"/>
|
5
7
|
</svg>
|
@@ -1,5 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="m3.
|
4
|
-
<rect x="1.
|
3
|
+
<path d="m3.1778 4.846q-0.32417 0-0.58578-0.090994-0.25592-0.096685-0.4436-0.30143-0.18199-0.20474-0.28436-0.52323-0.096684-0.32417-0.096684-0.78483v-2.0872h0.65971v2.1383q0 0.30143 0.051184 0.51185 0.056872 0.20474 0.15355 0.32985 0.10237 0.12512 0.23887 0.18199 0.13649 0.051184 0.30711 0.051184 0.17061 0 0.3128-0.051184 0.14218-0.056873 0.24455-0.18199 0.10237-0.12512 0.15924-0.32985 0.056873-0.21043 0.056873-0.51185v-2.1383h0.63128v2.0872q0 0.46067-0.096685 0.78483-0.096684 0.31848-0.28436 0.52323-0.18199 0.20474-0.4436 0.30143-0.25592 0.090994-0.5801 0.090994z" fill="#aeaeae" stroke-opacity=".78039" stroke-width=".42654"/>
|
4
|
+
<rect x="1.5875" y="5.0271" width="3.175" height=".39688" fill="#aeaeae" stroke-width=".91291"/>
|
5
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#69c" stroke-width="1.1186"/>
|
6
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#69c" stroke-width="1.1186"/>
|
5
7
|
</svg>
|
@@ -47,10 +47,11 @@ down = typ_chevron-down.svg
|
|
47
47
|
edit = typ_pencil.svg
|
48
48
|
export = typ_export.svg
|
49
49
|
fmt_bold = nw_tb-bold.svg
|
50
|
+
fmt_bold-md = nw_tb-bold-md.svg
|
50
51
|
fmt_italic = nw_tb-italic.svg
|
51
|
-
|
52
|
-
fmt_mode-sc = nw_tb-shortcode.svg
|
52
|
+
fmt_italic-md = nw_tb-italic-md.svg
|
53
53
|
fmt_strike = nw_tb-strike.svg
|
54
|
+
fmt_strike-md = nw_tb-strike-md.svg
|
54
55
|
fmt_subscript = nw_tb-subscript.svg
|
55
56
|
fmt_superscript = nw_tb-superscript.svg
|
56
57
|
fmt_underline = nw_tb-underline.svg
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
+
<path d="m1.3672 5.5562v-4.7625h1.6289q0.37252 0 0.68662 0.058435 0.32139 0.051131 0.55513 0.18991 0.24104 0.13878 0.37252 0.36522 0.13878 0.22644 0.13878 0.56975 0 0.1607-0.043826 0.32139t-0.12417 0.29948q-0.080349 0.13878-0.19721 0.24835-0.10957 0.10957-0.25565 0.1607v0.029218q0.18261 0.043827 0.33601 0.13878 0.1534 0.087653 0.27027 0.22644 0.11687 0.13878 0.18261 0.3287 0.065739 0.18261 0.065739 0.42365 0 0.36522-0.14608 0.62818-0.13878 0.26295-0.39444 0.43826-0.24835 0.168-0.58435 0.25565-0.33601 0.080349-0.72313 0.080349zm1.0737-2.8561h0.50401q0.39444 0 0.56975-0.1534 0.18261-0.1534 0.18261-0.40905 0-0.27757-0.18261-0.39444t-0.56244-0.11687h-0.51131zm0 2.0233h0.60626q0.88383 0 0.88383-0.64279 0-0.31408-0.21914-0.44557-0.21914-0.13878-0.6647-0.13878h-0.60626z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".54782"/>
|
4
|
+
</svg>
|
@@ -1,4 +1,6 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="m1.
|
3
|
+
<path d="m1.568 5.2917v-4.2333h1.4479q0.33113 0 0.61033 0.051942 0.28568 0.04545 0.49345 0.16881 0.21426 0.12336 0.33113 0.32464 0.12336 0.20128 0.12336 0.50644 0 0.14284-0.038957 0.28568-0.038956 0.14284-0.11037 0.2662-0.071421 0.12336-0.1753 0.22076-0.097396 0.097396-0.22724 0.14284v0.025972q0.16232 0.038957 0.29868 0.12336 0.13636 0.077914 0.24024 0.20128 0.10388 0.12336 0.16232 0.29218 0.058435 0.16232 0.058435 0.37658 0 0.32464-0.12985 0.55838-0.12336 0.23373-0.35061 0.38956-0.22076 0.14933-0.51942 0.22724-0.29868 0.071422-0.64278 0.071422zm0.9544-2.5388h0.44801q0.35061 0 0.50644-0.13636 0.16232-0.13636 0.16232-0.3636 0-0.24673-0.16232-0.35061-0.16232-0.10388-0.49995-0.10388h-0.4545zm0 1.7985h0.5389q0.78563 0 0.78563-0.57137 0-0.27918-0.19479-0.39606-0.19479-0.12336-0.59084-0.12336h-0.5389z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".48695"/>
|
4
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#4271ae" stroke-width="1.1186"/>
|
5
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#4271ae" stroke-width="1.1186"/>
|
4
6
|
</svg>
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
+
<path d="m2.3084 5.5562 0.94666-4.7625h0.78646l-0.94666 4.7625z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".54615"/>
|
4
|
+
</svg>
|
@@ -1,4 +1,6 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="m2.
|
3
|
+
<path d="m2.417 5.2917 0.84148-4.2333h0.69908l-0.84148 4.2333z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".48547"/>
|
4
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#4271ae" stroke-width="1.1186"/>
|
5
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#4271ae" stroke-width="1.1186"/>
|
4
6
|
</svg>
|
@@ -0,0 +1,4 @@
|
|
1
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
2
|
+
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
+
<path d="m3.1785 5.5562q-0.46361 0-0.89912-0.17561-0.42848-0.17561-0.75863-0.49873l0.47766-0.55492q0.24585 0.2318 0.56195 0.37931 0.3161 0.14049 0.63219 0.14049 0.39336 0 0.59707-0.16156t0.20371-0.42848q0-0.14049-0.056194-0.23883-0.04917-0.098341-0.14751-0.16858-0.091316-0.077267-0.22478-0.14049-0.12644-0.063219-0.28097-0.12644l-0.63219-0.27395q-0.16858-0.070243-0.33717-0.17561-0.16156-0.10537-0.29502-0.25288t-0.21775-0.34419q-0.077268-0.19668-0.077268-0.44956 0-0.27395 0.11239-0.50575 0.11941-0.23883 0.32312-0.41444t0.48468-0.27395q0.288-0.098341 0.62517-0.098341 0.40039 0 0.77268 0.16156 0.37229 0.15454 0.63921 0.42146l-0.41444 0.5198q-0.22478-0.18263-0.46361-0.288t-0.53385-0.10537q-0.33014 0-0.52683 0.14751-0.19668 0.14049-0.19668 0.39336 0 0.13346 0.056194 0.2318 0.063219 0.091316 0.16156 0.16858 0.10537 0.070244 0.23883 0.13346 0.13346 0.056194 0.27395 0.11239l0.62516 0.2599q0.20371 0.084291 0.37229 0.19668 0.16858 0.11239 0.288 0.2599 0.12644 0.14751 0.19668 0.34419 0.070244 0.18966 0.070244 0.44253 0 0.28097-0.11239 0.52683-0.11239 0.24585-0.33015 0.43551-0.21073 0.18263-0.5198 0.29502-0.30205 0.10536-0.68838 0.10536zm-2.3848-2.6458h4.7625v0.52917h-4.7625z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".52683"/>
|
4
|
+
</svg>
|
@@ -1,4 +1,6 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="m3.
|
3
|
+
<path d="m3.1782 5.2917q-0.4121 0-0.79922-0.1561-0.38087-0.1561-0.67434-0.44331l0.42459-0.49326q0.21853 0.20604 0.49951 0.33716 0.28098 0.12488 0.56195 0.12488 0.34965 0 0.53073-0.14361 0.18108-0.14361 0.18108-0.38087 0-0.12488-0.04995-0.21229-0.043707-0.087414-0.13112-0.14985-0.08117-0.068682-0.1998-0.12488-0.11239-0.056194-0.24975-0.11239l-0.56195-0.24351q-0.14985-0.062438-0.29971-0.1561-0.14361-0.093662-0.26224-0.22478-0.11863-0.13112-0.19356-0.30595-0.068682-0.17483-0.068682-0.39961 0-0.24351 0.099902-0.44955 0.10614-0.21229 0.28722-0.36839 0.18108-0.1561 0.43083-0.24351 0.256-0.087414 0.55571-0.087414 0.3559 0 0.68683 0.14361 0.33092 0.13737 0.56819 0.37463l-0.36839 0.46204q-0.1998-0.16234-0.4121-0.256-0.21229-0.093662-0.47453-0.093662-0.29346 0-0.46829 0.13112-0.17483 0.12488-0.17483 0.34965 0 0.11863 0.04995 0.20604 0.056194 0.08117 0.14361 0.14985 0.093662 0.062439 0.21229 0.11863 0.11863 0.04995 0.24351 0.099902l0.5557 0.23102q0.18108 0.074925 0.33092 0.17483 0.14985 0.099902 0.256 0.23102 0.11239 0.13112 0.17483 0.30595 0.062439 0.16859 0.062439 0.39336 0 0.24975-0.099902 0.46829-0.099902 0.21853-0.29347 0.38712-0.18732 0.16234-0.46204 0.26224-0.26849 0.093653-0.61189 0.093653zm-2.1198-2.3518h4.2333v0.47037h-4.2333z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".46829"/>
|
4
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#4271ae" stroke-width="1.1186"/>
|
5
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#4271ae" stroke-width="1.1186"/>
|
4
6
|
</svg>
|
@@ -1,5 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="m2.
|
4
|
-
<path d="
|
3
|
+
<path d="m2.2992 3.0475-0.13958 0.48548h1.0134l-0.13958-0.48548q-0.097092-0.31556-0.18812-0.64932-0.084958-0.33377-0.16992-0.66146h-0.024273q-0.084958 0.33377-0.16992 0.66752-0.084958 0.32769-0.18205 0.64325zm-1.329 2.1118 1.2926-3.9688h0.82531l1.2926 3.9688h-0.74035l-0.30949-1.0741h-1.3351l-0.30949 1.0741z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".45513"/>
|
4
|
+
<path d="m3.9467 5.1593v-1.9843h0.62795q0.15323 0 0.27942 0.027308 0.12919 0.024273 0.22233 0.081922 0.09615 0.054615 0.14722 0.14868 0.054082 0.094058 0.054082 0.23059 0 0.14261-0.072107 0.26397-0.072108 0.12137-0.2013 0.16688v0.012137q0.16224 0.036409 0.2674 0.15474 0.10816 0.1153 0.10816 0.31556 0 0.14868-0.057086 0.2579-0.057085 0.10922-0.15923 0.18205-0.099158 0.072819-0.23736 0.10922-0.13821 0.033375-0.30045 0.033375zm0.34852-1.1651h0.24938q0.20732 0 0.29744-0.075853 0.093142-0.075854 0.093142-0.20328 0-0.14564-0.09615-0.20632-0.09615-0.060682-0.28843-0.060682h-0.25538zm0 0.89208h0.29445q0.21632 0 0.3335-0.078888 0.11718-0.081923 0.11718-0.2488 0-0.15778-0.11418-0.22757-0.11418-0.07282-0.33651-0.07282h-0.29445z" stroke-opacity=".78039" stroke-width=".22645"/>
|
5
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#4271ae" stroke-width="1.1186"/>
|
6
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#4271ae" stroke-width="1.1186"/>
|
5
7
|
</svg>
|
@@ -1,5 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="
|
4
|
-
<path d="
|
3
|
+
<path d="m3.9467 3.175v-1.9843h0.62793q0.15324 0 0.27942 0.027307 0.12919 0.024274 0.22233 0.081922 0.09615 0.054615 0.14722 0.14868 0.054082 0.094058 0.054082 0.23059 0 0.14261-0.072107 0.26397-0.072107 0.12137-0.2013 0.16688v0.012138q0.16224 0.03641 0.2674 0.15475 0.10816 0.1153 0.10816 0.31556 0 0.14868-0.057086 0.2579-0.057085 0.10922-0.15923 0.18204-0.099142 0.072818-0.23735 0.10922-0.13821 0.033375-0.30045 0.033375zm0.34853-1.1651h0.24937q0.20732 0 0.29744-0.075853 0.093141-0.075853 0.093141-0.20328 0-0.14564-0.09615-0.20632-0.09615-0.060682-0.28843-0.060682h-0.25538zm0 0.89208h0.29443q0.21632 0 0.3335-0.078888 0.11718-0.081923 0.11718-0.24879 0-0.15777-0.11418-0.22756-0.11418-0.07282-0.33651-0.07282h-0.29443z" stroke-opacity=".78039" stroke-width=".25475"/>
|
4
|
+
<path d="m2.2992 3.0475-0.13958 0.48548h1.0134l-0.13958-0.48548q-0.097092-0.31556-0.18812-0.64932-0.084958-0.33377-0.16992-0.66146h-0.024273q-0.084958 0.33377-0.16992 0.66753-0.084958 0.32769-0.18205 0.64325zm-1.329 2.1118 1.2926-3.9688h0.82531l1.2926 3.9688h-0.74035l-0.30949-1.0741h-1.3351l-0.30949 1.0741z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".45513"/>
|
5
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#4271ae" stroke-width="1.1186"/>
|
6
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#4271ae" stroke-width="1.1186"/>
|
5
7
|
</svg>
|
@@ -1,5 +1,7 @@
|
|
1
1
|
<?xml version="1.0" encoding="UTF-8"?>
|
2
2
|
<svg width="24" height="24" version="1.1" viewBox="0 0 6.35 6.35" xmlns="http://www.w3.org/2000/svg">
|
3
|
-
<path d="m3.
|
4
|
-
<rect x="1.
|
3
|
+
<path d="m3.1778 4.846q-0.32417 0-0.58578-0.090994-0.25592-0.096685-0.4436-0.30143-0.18199-0.20474-0.28436-0.52323-0.096684-0.32417-0.096684-0.78483v-2.0872h0.65971v2.1383q0 0.30143 0.051184 0.51185 0.056872 0.20474 0.15355 0.32985 0.10237 0.12512 0.23887 0.18199 0.13649 0.051184 0.30711 0.051184 0.17061 0 0.3128-0.051184 0.14218-0.056873 0.24455-0.18199 0.10237-0.12512 0.15924-0.32985 0.056873-0.21043 0.056873-0.51185v-2.1383h0.63128v2.0872q0 0.46067-0.096685 0.78483-0.096684 0.31848-0.28436 0.52323-0.18199 0.20474-0.4436 0.30143-0.25592 0.090994-0.5801 0.090994z" fill-opacity=".78039" stroke-opacity=".78039" stroke-width=".42654"/>
|
4
|
+
<rect x="1.5875" y="5.0271" width="3.175" height=".39688" fill-opacity=".78039" stroke-width=".91291"/>
|
5
|
+
<path d="m4.9555 5.5562v-0.43195h0.54619v-3.8986h-0.54619v-0.43195h1.1299v4.7624z" fill="#4271ae" stroke-width="1.1186"/>
|
6
|
+
<path d="m0.26458 5.5562v-4.7624h1.1299v0.43195h-0.54083v3.8986h0.54083v0.43195z" fill="#4271ae" stroke-width="1.1186"/>
|
5
7
|
</svg>
|
novelwriter/assets/manual.pdf
CHANGED
Binary file
|
novelwriter/assets/sample.zip
CHANGED
Binary file
|
@@ -2,16 +2,59 @@
|
|
2
2
|
<html>
|
3
3
|
<body>
|
4
4
|
|
5
|
-
<h2>Release Notes for 2.2
|
6
|
-
<p><i>Released on
|
5
|
+
<h2>Release Notes for 2.2</h2>
|
6
|
+
<p><i>Released on 17 December 2023</i></p>
|
7
7
|
|
8
|
-
<p>
|
9
|
-
|
10
|
-
|
11
|
-
<p>
|
12
|
-
the
|
8
|
+
<p>Scroll down for <a href="#patch">Patch Notes</a></p>
|
9
|
+
|
10
|
+
<p>This release comes with a number of new features. These are some highlights.</p>
|
11
|
+
<p>In addition to the common Markdown style formatting for bold, italic and strike through, a set
|
12
|
+
of new shortcodes have been added. The shortcodes are far more flexible than the Markdown style
|
13
|
+
syntax, and can be used for more complex formatting cases. Like when you need to add multiple,
|
14
|
+
overlapping formats, or add emphasis to just a part of a word. The shortcodes also allow for
|
15
|
+
underline, subscript and superscript, which the Markdown syntax does not. The new formats are
|
16
|
+
available in the "Format" menu, and in a new toolbar in the editor that can be enabled by clicking
|
17
|
+
the three dots in the top–left corner. The shortcode format was chosen because it can later be
|
18
|
+
extended to include other requested features as well. Please have a look at the documentation for
|
19
|
+
more details about the new shortcodes.</p>
|
20
|
+
<p>The Tags and References system has been improved. The tags themselves are no longer case
|
21
|
+
sensitive when you use them in references, but they are still displayed as you typed them in the
|
22
|
+
tag definition when they are displayed in the user interface. Starting to type the '@' symbol in
|
23
|
+
the text editor, on a new line, will now open an auto-completer menu which will display available
|
24
|
+
options. It may not display all of your tags if you have a lot of them, but starting to type more
|
25
|
+
characters will filter the list down further.</p>
|
26
|
+
<p>You can now automatically create a note file for a new tag that you have added to a reference
|
27
|
+
list in a document, but is not yet defined in a project note. So, for instance, if you come up with
|
28
|
+
a new character while writing, and add a new tag to your '@char' references, you can right-click
|
29
|
+
the new tag and create a new note for that entry directly. In addition, it is now also possible to
|
30
|
+
right-click a heading in an open document and set the item label in the project tree to match the
|
31
|
+
heading.</p>
|
32
|
+
<p>In addition to the changes in the editor, the "References" panel below the document viewer has
|
33
|
+
also been completely redesigned. It now shows all the references to the document you are viewing as
|
34
|
+
a list, with a lot more details than before. In addition, tabs in the panel will appear to show all
|
35
|
+
the tags you have defined in your notes, sorted as one tab per category. Like for instance
|
36
|
+
Characters, Locations, Objects, etc. You can also give each note a short description comment on the
|
37
|
+
same format as the summary comments for chapters and scenes. The short description comment can be
|
38
|
+
added from the "Insert" menu under "Special Comments".</p>
|
39
|
+
<p>The last major change in this release is the new multi-select feature in the project tree. You
|
40
|
+
can now select multiple documents and folders using the mouse while pressing 'Ctrl' or 'Shift'. By
|
41
|
+
right-clicking the selected items, you can perform a limited set of operations on all of them, like
|
42
|
+
changing active status, and the status or importance labels. You can also drag and drop multiple
|
43
|
+
items under the condition that all the selected items are in the same folder, at the same level.
|
44
|
+
This restriction is in place due to limitations in the framework novelWriter is based on. But this
|
45
|
+
should help in cases where multiple documents need to be moved in and out of folders or between
|
46
|
+
folders. Note that adding the multi-select feature meant that the undo feature of the project tree
|
47
|
+
had to be removed. It may be added back later.</p>
|
13
48
|
|
14
49
|
<p><i>See also the <a href="https://github.com/vkbo/novelWriter/releases">Releases</a> page.</i></p>
|
15
50
|
|
51
|
+
<a name="patch"></a><h2>Patch Notes</h2>
|
52
|
+
|
53
|
+
<h3>Patch 2.2.1 – 27 January 2024</h3>
|
54
|
+
|
55
|
+
<p>This is a patch release that fixes an issue where the Project View would sometimes switch to the
|
56
|
+
Novel View when a new item was created. This patch also includes updated translations for German
|
57
|
+
and Chinese.</p>
|
58
|
+
|
16
59
|
</body>
|
17
60
|
</html>
|
novelwriter/common.py
CHANGED
@@ -3,10 +3,10 @@ novelWriter – Common Functions
|
|
3
3
|
==============================
|
4
4
|
|
5
5
|
File History:
|
6
|
-
Created: 2019-05-12 [0.1]
|
6
|
+
Created: 2019-05-12 [0.1.0]
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
@@ -38,7 +38,6 @@ from urllib.request import pathname2url
|
|
38
38
|
|
39
39
|
from PyQt5.QtGui import QDesktopServices
|
40
40
|
from PyQt5.QtCore import QCoreApplication, QUrl
|
41
|
-
from PyQt5.QtWidgets import QWidget, qApp
|
42
41
|
|
43
42
|
from novelwriter.enum import nwItemClass, nwItemType, nwItemLayout
|
44
43
|
from novelwriter.error import logException
|
@@ -47,9 +46,9 @@ from novelwriter.constants import nwConst, nwUnicode
|
|
47
46
|
logger = logging.getLogger(__name__)
|
48
47
|
|
49
48
|
|
50
|
-
|
49
|
+
##
|
51
50
|
# Checker Functions
|
52
|
-
|
51
|
+
##
|
53
52
|
|
54
53
|
def checkStringNone(value: Any, default: str | None) -> str | None:
|
55
54
|
"""Check if a variable is a string or a None."""
|
@@ -132,9 +131,9 @@ def checkPath(value: Any, default: Path) -> Path:
|
|
132
131
|
return default
|
133
132
|
|
134
133
|
|
135
|
-
|
134
|
+
##
|
136
135
|
# Validator Functions
|
137
|
-
|
136
|
+
##
|
138
137
|
|
139
138
|
def isHandle(value: Any) -> bool:
|
140
139
|
"""Check if a string is a valid novelWriter handle.
|
@@ -205,9 +204,9 @@ def checkIntTuple(value: int, valid: tuple | list | set, default: int) -> int:
|
|
205
204
|
return default
|
206
205
|
|
207
206
|
|
208
|
-
|
207
|
+
##
|
209
208
|
# Formatting Functions
|
210
|
-
|
209
|
+
##
|
211
210
|
|
212
211
|
def formatInt(value: int) -> str:
|
213
212
|
"""Formats an integer with k, M, G etc."""
|
@@ -251,9 +250,9 @@ def formatTime(t: int) -> str:
|
|
251
250
|
return "ERROR"
|
252
251
|
|
253
252
|
|
254
|
-
|
253
|
+
##
|
255
254
|
# String Functions
|
256
|
-
|
255
|
+
##
|
257
256
|
|
258
257
|
def simplified(text: str) -> str:
|
259
258
|
"""Take a string and strip leading and trailing whitespaces, and
|
@@ -372,9 +371,9 @@ def numberToRoman(value: int, toLower: bool = False) -> str:
|
|
372
371
|
return roman.lower() if toLower else roman
|
373
372
|
|
374
373
|
|
375
|
-
|
374
|
+
##
|
376
375
|
# Encoder Functions
|
377
|
-
|
376
|
+
##
|
378
377
|
|
379
378
|
def jsonEncode(data: dict | list | tuple, n: int = 0, nmax: int = 0) -> str:
|
380
379
|
"""Encode a dictionary, list or tuple as a json object or array, and
|
@@ -464,9 +463,9 @@ def xmlIndent(tree: ET.Element | ET.ElementTree) -> None:
|
|
464
463
|
return
|
465
464
|
|
466
465
|
|
467
|
-
|
466
|
+
##
|
468
467
|
# File and File System Functions
|
469
|
-
|
468
|
+
##
|
470
469
|
|
471
470
|
def readTextFile(path: str | Path) -> str:
|
472
471
|
"""Read the content of a text file in a robust manner."""
|
@@ -508,21 +507,9 @@ def openExternalPath(path: Path) -> bool:
|
|
508
507
|
return False
|
509
508
|
|
510
509
|
|
511
|
-
|
512
|
-
# Other Functions
|
513
|
-
# =============================================================================================== #
|
514
|
-
|
515
|
-
def getGuiItem(objName: str) -> QWidget | None:
|
516
|
-
"""Returns a QtWidget based on its objectName."""
|
517
|
-
for qWidget in qApp.topLevelWidgets():
|
518
|
-
if qWidget.objectName() == objName:
|
519
|
-
return qWidget
|
520
|
-
return None
|
521
|
-
|
522
|
-
|
523
|
-
# =============================================================================================== #
|
510
|
+
##
|
524
511
|
# Classes
|
525
|
-
|
512
|
+
##
|
526
513
|
|
527
514
|
class NWConfigParser(ConfigParser):
|
528
515
|
"""Common: Adapted Config Parser
|
novelwriter/config.py
CHANGED
@@ -7,7 +7,7 @@ Created: 2018-09-22 [0.0.1] Config
|
|
7
7
|
Created: 2022-11-09 [2.0rc2] RecentProjects
|
8
8
|
|
9
9
|
This file is a part of novelWriter
|
10
|
-
Copyright 2018–
|
10
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
11
11
|
|
12
12
|
This program is free software: you can redistribute it and/or modify
|
13
13
|
it under the terms of the GNU General Public License as published by
|
@@ -225,7 +225,8 @@ class Config:
|
|
225
225
|
# Other System Info
|
226
226
|
self.hostName = QSysInfo.machineHostName()
|
227
227
|
self.kernelVer = QSysInfo.kernelVersion()
|
228
|
-
self.isDebug = False
|
228
|
+
self.isDebug = False # True if running in debug mode
|
229
|
+
self.memInfo = False # True if displaying mem info in status bar
|
229
230
|
|
230
231
|
# Packages
|
231
232
|
self.hasEnchant = False # The pyenchant package
|
@@ -485,7 +486,6 @@ class Config:
|
|
485
486
|
|
486
487
|
self._recentObj.loadCache()
|
487
488
|
self._checkOptionalPackages()
|
488
|
-
self.isDebug = logger.getEffectiveLevel() == logging.DEBUG
|
489
489
|
|
490
490
|
logger.debug("Config instance initialised")
|
491
491
|
|
novelwriter/constants.py
CHANGED
@@ -6,7 +6,7 @@ File History:
|
|
6
6
|
Created: 2019-04-28 [0.0.1]
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
@@ -7,7 +7,7 @@ Created: 2023-02-14 [2.1b1] BuildSettings
|
|
7
7
|
Created: 2023-05-22 [2.1b1] BuildCollection
|
8
8
|
|
9
9
|
This file is a part of novelWriter
|
10
|
-
Copyright 2018–
|
10
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
11
11
|
|
12
12
|
This program is free software: you can redistribute it and/or modify
|
13
13
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/coretools.py
CHANGED
@@ -6,9 +6,10 @@ File History:
|
|
6
6
|
Created: 2022-10-02 [2.0rc1] DocMerger
|
7
7
|
Created: 2022-10-11 [2.0rc1] DocSplitter
|
8
8
|
Created: 2022-11-03 [2.0rc2] ProjectBuilder
|
9
|
+
Created: 2023-07-20 [2.1b1] DocDuplicator
|
9
10
|
|
10
11
|
This file is a part of novelWriter
|
11
|
-
Copyright 2018–
|
12
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
12
13
|
|
13
14
|
This program is free software: you can redistribute it and/or modify
|
14
15
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/docbuild.py
CHANGED
@@ -6,7 +6,7 @@ File History:
|
|
6
6
|
Created: 2022-12-01 [2.1b1] NWBuildDocument
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/document.py
CHANGED
@@ -6,7 +6,7 @@ File History:
|
|
6
6
|
Created: 2018-09-29 [0.0.1]
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/index.py
CHANGED
@@ -11,7 +11,7 @@ Created: 2022-05-29 [2.0rc1] TagsIndex
|
|
11
11
|
Created: 2022-05-29 [2.0rc1] ItemIndex
|
12
12
|
|
13
13
|
This file is a part of novelWriter
|
14
|
-
Copyright 2018–
|
14
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
15
15
|
|
16
16
|
This program is free software: you can redistribute it and/or modify
|
17
17
|
it under the terms of the GNU General Public License as published by
|
@@ -551,7 +551,7 @@ class NWIndex:
|
|
551
551
|
return 0
|
552
552
|
|
553
553
|
def getTableOfContents(
|
554
|
-
self, rHandle: str, maxDepth: int, skipExcl: bool = True
|
554
|
+
self, rHandle: str | None, maxDepth: int, skipExcl: bool = True
|
555
555
|
) -> list[tuple[str, int, str, int]]:
|
556
556
|
"""Generate a table of contents up to a maximum depth."""
|
557
557
|
tOrder = []
|
novelwriter/core/item.py
CHANGED
@@ -3,10 +3,10 @@ novelWriter – Project Item Class
|
|
3
3
|
================================
|
4
4
|
|
5
5
|
File History:
|
6
|
-
Created: 2018-10-27 [0.0.1]
|
6
|
+
Created: 2018-10-27 [0.0.1] NWItem
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/options.py
CHANGED
@@ -3,11 +3,11 @@ novelWriter – Project Options Cache
|
|
3
3
|
===================================
|
4
4
|
|
5
5
|
File History:
|
6
|
-
Created: 2019-10-21 [0.3.1]
|
7
|
-
Rewritten: 2020-02-19 [0.4.5]
|
6
|
+
Created: 2019-10-21 [0.3.1] OptionState
|
7
|
+
Rewritten: 2020-02-19 [0.4.5] OptionState
|
8
8
|
|
9
9
|
This file is a part of novelWriter
|
10
|
-
Copyright 2018–
|
10
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
11
11
|
|
12
12
|
This program is free software: you can redistribute it and/or modify
|
13
13
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/project.py
CHANGED
@@ -3,10 +3,10 @@ novelWriter – Project Wrapper
|
|
3
3
|
=============================
|
4
4
|
|
5
5
|
File History:
|
6
|
-
Created: 2018-09-29 [0.0.1]
|
6
|
+
Created: 2018-09-29 [0.0.1] NWProject
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
@@ -80,7 +80,7 @@ class NWProject:
|
|
80
80
|
|
81
81
|
return
|
82
82
|
|
83
|
-
def __del__(self): # pragma: no cover
|
83
|
+
def __del__(self) -> None: # pragma: no cover
|
84
84
|
logger.debug("Delete: NWProject")
|
85
85
|
return
|
86
86
|
|
novelwriter/core/projectdata.py
CHANGED
@@ -3,10 +3,10 @@ novelWriter – Project Data Class
|
|
3
3
|
================================
|
4
4
|
|
5
5
|
File History:
|
6
|
-
Created: 2022-10-30 [2.0rc2]
|
6
|
+
Created: 2022-10-30 [2.0rc2] NWProjectData
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/projectxml.py
CHANGED
@@ -8,7 +8,7 @@ Created: 2022-09-28 [2.0rc2] ProjectXMLReader
|
|
8
8
|
Created: 2022-10-31 [2.0rc2] ProjectXMLWriter
|
9
9
|
|
10
10
|
This file is a part of novelWriter
|
11
|
-
Copyright 2018–
|
11
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
12
12
|
|
13
13
|
This program is free software: you can redistribute it and/or modify
|
14
14
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/sessions.py
CHANGED
@@ -3,10 +3,10 @@ novelWriter – Project Session Log Class
|
|
3
3
|
=======================================
|
4
4
|
|
5
5
|
File History:
|
6
|
-
Created:
|
6
|
+
Created: 2023-06-11 [2.1b1] NWSessionLog
|
7
7
|
|
8
8
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
9
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
10
|
|
11
11
|
This program is free software: you can redistribute it and/or modify
|
12
12
|
it under the terms of the GNU General Public License as published by
|
novelwriter/core/spellcheck.py
CHANGED
@@ -3,10 +3,11 @@ novelWriter – Spell Check Classes
|
|
3
3
|
=================================
|
4
4
|
|
5
5
|
File History:
|
6
|
-
Created: 2019-06-11 [0.1.5]
|
6
|
+
Created: 2019-06-11 [0.1.5] NWSpellEnchant
|
7
|
+
Created: 2023-06-13 [2.1b1] UserDictionary
|
7
8
|
|
8
9
|
This file is a part of novelWriter
|
9
|
-
Copyright 2018–
|
10
|
+
Copyright 2018–2024, Veronica Berglyd Olsen
|
10
11
|
|
11
12
|
This program is free software: you can redistribute it and/or modify
|
12
13
|
it under the terms of the GNU General Public License as published by
|
@@ -56,7 +57,7 @@ class NWSpellEnchant:
|
|
56
57
|
logger.debug("Ready: NWSpellEnchant")
|
57
58
|
return
|
58
59
|
|
59
|
-
def __del__(self): # pragma: no cover
|
60
|
+
def __del__(self) -> None: # pragma: no cover
|
60
61
|
logger.debug("Delete: NWSpellEnchant")
|
61
62
|
return
|
62
63
|
|