novelWriter 2.3.1__tar.gz → 2.4b1__tar.gz

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.
Files changed (408) hide show
  1. {novelWriter-2.3.1 → novelWriter-2.4b1}/CHANGELOG.md +57 -0
  2. {novelWriter-2.3.1 → novelWriter-2.4b1}/CREDITS.md +3 -1
  3. {novelWriter-2.3.1 → novelWriter-2.4b1}/PKG-INFO +1 -1
  4. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelWriter.egg-info/PKG-INFO +1 -1
  5. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelWriter.egg-info/SOURCES.txt +11 -0
  6. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/__init__.py +5 -5
  7. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/icons.conf +4 -0
  8. novelWriter-2.4b1/novelwriter/assets/icons/typicons_dark/nw_tb-mark.svg +7 -0
  9. novelWriter-2.4b1/novelwriter/assets/icons/typicons_dark/typ_arrow-down.svg +4 -0
  10. novelWriter-2.4b1/novelwriter/assets/icons/typicons_dark/typ_arrow-right.svg +4 -0
  11. novelWriter-2.4b1/novelwriter/assets/icons/typicons_dark/typ_refresh-flipped.svg +4 -0
  12. novelWriter-2.4b1/novelwriter/assets/icons/typicons_dark/typ_refresh.svg +4 -0
  13. novelWriter-2.4b1/novelwriter/assets/icons/typicons_dark/typ_search-grey.svg +4 -0
  14. novelWriter-2.4b1/novelwriter/assets/icons/typicons_dark/typ_times.svg +4 -0
  15. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/icons.conf +4 -0
  16. novelWriter-2.4b1/novelwriter/assets/icons/typicons_light/nw_tb-mark.svg +7 -0
  17. novelWriter-2.4b1/novelwriter/assets/icons/typicons_light/typ_arrow-down.svg +4 -0
  18. novelWriter-2.4b1/novelwriter/assets/icons/typicons_light/typ_arrow-right.svg +4 -0
  19. novelWriter-2.4b1/novelwriter/assets/icons/typicons_light/typ_refresh-flipped.svg +4 -0
  20. novelWriter-2.4b1/novelwriter/assets/icons/typicons_light/typ_refresh.svg +4 -0
  21. novelWriter-2.4b1/novelwriter/assets/icons/typicons_light/typ_search-grey.svg +4 -0
  22. novelWriter-2.4b1/novelwriter/assets/icons/typicons_light/typ_times.svg +4 -0
  23. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/manual.pdf +0 -0
  24. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/sample.zip +0 -0
  25. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/default_dark.conf +1 -0
  26. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/default_light.conf +1 -0
  27. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/grey_dark.conf +1 -0
  28. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/grey_light.conf +1 -0
  29. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/light_owl.conf +1 -0
  30. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/night_owl.conf +1 -0
  31. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/solarized_dark.conf +1 -0
  32. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/solarized_light.conf +1 -0
  33. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/tomorrow.conf +1 -0
  34. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/tomorrow_night.conf +1 -0
  35. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/tomorrow_night_blue.conf +1 -0
  36. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/tomorrow_night_bright.conf +1 -0
  37. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/tomorrow_night_eighties.conf +1 -0
  38. novelWriter-2.4b1/novelwriter/assets/text/credits_en.htm +81 -0
  39. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/common.py +1 -1
  40. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/config.py +35 -12
  41. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/constants.py +5 -6
  42. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/buildsettings.py +60 -40
  43. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/coretools.py +98 -13
  44. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/docbuild.py +74 -7
  45. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/document.py +24 -3
  46. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/index.py +31 -112
  47. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/project.py +10 -15
  48. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/sessions.py +2 -2
  49. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/status.py +4 -4
  50. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/storage.py +8 -2
  51. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/tohtml.py +22 -25
  52. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/tokenizer.py +416 -232
  53. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/tomd.py +17 -8
  54. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/toodt.py +65 -7
  55. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/tree.py +8 -8
  56. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/docsplit.py +7 -8
  57. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/preferences.py +3 -6
  58. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/enum.py +17 -14
  59. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/modified.py +20 -2
  60. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/versioninfo.py +1 -1
  61. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/doceditor.py +257 -279
  62. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/dochighlight.py +29 -25
  63. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/docviewer.py +139 -148
  64. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/docviewerpanel.py +4 -24
  65. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/editordocument.py +12 -1
  66. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/itemdetails.py +6 -6
  67. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/mainmenu.py +37 -16
  68. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/noveltree.py +11 -19
  69. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/outline.py +43 -20
  70. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/projtree.py +35 -43
  71. novelWriter-2.4b1/novelwriter/gui/search.py +316 -0
  72. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/sidebar.py +25 -30
  73. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/theme.py +59 -6
  74. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/guimain.py +176 -173
  75. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/shared.py +26 -1
  76. novelWriter-2.4b1/novelwriter/text/__init__.py +3 -0
  77. novelWriter-2.4b1/novelwriter/text/counting.py +137 -0
  78. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/manuscript.py +344 -55
  79. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/manussettings.py +213 -71
  80. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/welcome.py +1 -1
  81. novelWriter-2.3.1/novelwriter/assets/icons/typicons_dark/typ_refresh-flipped.svg +0 -4
  82. novelWriter-2.3.1/novelwriter/assets/icons/typicons_dark/typ_refresh.svg +0 -4
  83. novelWriter-2.3.1/novelwriter/assets/icons/typicons_dark/typ_times.svg +0 -4
  84. novelWriter-2.3.1/novelwriter/assets/icons/typicons_light/typ_refresh-flipped.svg +0 -4
  85. novelWriter-2.3.1/novelwriter/assets/icons/typicons_light/typ_refresh.svg +0 -4
  86. novelWriter-2.3.1/novelwriter/assets/icons/typicons_light/typ_times.svg +0 -4
  87. novelWriter-2.3.1/novelwriter/assets/text/credits_en.htm +0 -79
  88. {novelWriter-2.3.1 → novelWriter-2.4b1}/LICENSE.md +0 -0
  89. {novelWriter-2.3.1 → novelWriter-2.4b1}/MANIFEST.in +0 -0
  90. {novelWriter-2.3.1 → novelWriter-2.4b1}/README.md +0 -0
  91. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelWriter.egg-info/dependency_links.txt +0 -0
  92. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelWriter.egg-info/entry_points.txt +0 -0
  93. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelWriter.egg-info/not-zip-safe +0 -0
  94. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelWriter.egg-info/requires.txt +0 -0
  95. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelWriter.egg-info/top_level.txt +0 -0
  96. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_de_DE.qm +0 -0
  97. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_en_US.qm +0 -0
  98. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_es_419.qm +0 -0
  99. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_fr_FR.qm +0 -0
  100. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_it_IT.qm +0 -0
  101. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_ja_JP.qm +0 -0
  102. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_nb_NO.qm +0 -0
  103. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_nl_NL.qm +0 -0
  104. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_pt_BR.qm +0 -0
  105. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/nw_zh_CN.qm +0 -0
  106. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_de_DE.json +0 -0
  107. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_en_GB.json +0 -0
  108. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_en_US.json +0 -0
  109. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_es_419.json +0 -0
  110. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_fr_FR.json +0 -0
  111. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_it_IT.json +0 -0
  112. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_ja_JP.json +0 -0
  113. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_nb_NO.json +0 -0
  114. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_nl_NL.json +0 -0
  115. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_nn_NO.json +0 -0
  116. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_pt_BR.json +0 -0
  117. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_ru_RU.json +0 -0
  118. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/i18n/project_zh_CN.json +0 -0
  119. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/novelwriter.ico +0 -0
  120. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/novelwriter.svg +0 -0
  121. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/README.md +0 -0
  122. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_document-chapter.svg +0 -0
  123. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_document-new.svg +0 -0
  124. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_document-note.svg +0 -0
  125. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_document-scene.svg +0 -0
  126. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_document-section.svg +0 -0
  127. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_document-title.svg +0 -0
  128. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_edit.svg +0 -0
  129. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_import.svg +0 -0
  130. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_input-checked.svg +0 -0
  131. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_input-none.svg +0 -0
  132. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_input-unchecked.svg +0 -0
  133. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/mixed_search-replace.svg +0 -0
  134. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h0.svg +0 -0
  135. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h1.svg +0 -0
  136. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h2-narrow.svg +0 -0
  137. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h2.svg +0 -0
  138. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h3-narrow.svg +0 -0
  139. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h3.svg +0 -0
  140. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h4-narrow.svg +0 -0
  141. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-h4.svg +0 -0
  142. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-note.svg +0 -0
  143. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_deco-noveltree-more.svg +0 -0
  144. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_panel.svg +0 -0
  145. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_search-case.svg +0 -0
  146. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_search-preserve.svg +0 -0
  147. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_search-regex.svg +0 -0
  148. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_search-word.svg +0 -0
  149. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-bold-md.svg +0 -0
  150. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-bold.svg +0 -0
  151. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-italic-md.svg +0 -0
  152. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-italic.svg +0 -0
  153. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-strike-md.svg +0 -0
  154. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-strike.svg +0 -0
  155. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-subscript.svg +0 -0
  156. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-superscript.svg +0 -0
  157. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/nw_tb-underline.svg +0 -0
  158. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_arrow-down-thick-grey.svg +0 -0
  159. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_arrow-forward.svg +0 -0
  160. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_arrow-maximise.svg +0 -0
  161. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_arrow-minimise.svg +0 -0
  162. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_arrow-repeat-grey.svg +0 -0
  163. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_book-grey.svg +0 -0
  164. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_book.svg +0 -0
  165. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_bookmark.svg +0 -0
  166. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_calendar.svg +0 -0
  167. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_cancel-grey.svg +0 -0
  168. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_cancel.svg +0 -0
  169. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_chart-bar-grey.svg +0 -0
  170. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_chevron-down.svg +0 -0
  171. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_chevron-left.svg +0 -0
  172. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_chevron-right.svg +0 -0
  173. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_chevron-up.svg +0 -0
  174. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_cog.svg +0 -0
  175. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_delete-full.svg +0 -0
  176. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_delete.svg +0 -0
  177. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_directions-full.svg +0 -0
  178. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_document-add.svg +0 -0
  179. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_document-text.svg +0 -0
  180. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_document.svg +0 -0
  181. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_export-grey.svg +0 -0
  182. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_export.svg +0 -0
  183. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_eye.svg +0 -0
  184. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_flag.svg +0 -0
  185. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_folder-open.svg +0 -0
  186. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_folder.svg +0 -0
  187. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_globe-grey.svg +0 -0
  188. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_key.svg +0 -0
  189. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_lightbulb-full.svg +0 -0
  190. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_location.svg +0 -0
  191. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_media-pause-grey.svg +0 -0
  192. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_media-record-outline.svg +0 -0
  193. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_media-record.svg +0 -0
  194. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_minus.svg +0 -0
  195. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_pencil.svg +0 -0
  196. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_pin-outline.svg +0 -0
  197. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_pin.svg +0 -0
  198. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_plus.svg +0 -0
  199. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_puzzle-outline.svg +0 -0
  200. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_puzzle.svg +0 -0
  201. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_search.svg +0 -0
  202. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_star.svg +0 -0
  203. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_stopwatch-grey.svg +0 -0
  204. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_th-dot-menu.svg +0 -0
  205. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_th-dot-more.svg +0 -0
  206. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_th-list-grey.svg +0 -0
  207. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_th-list.svg +0 -0
  208. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_trash.svg +0 -0
  209. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_user.svg +0 -0
  210. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_dark/typ_warning-full.svg +0 -0
  211. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/README.md +0 -0
  212. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_document-chapter.svg +0 -0
  213. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_document-new.svg +0 -0
  214. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_document-note.svg +0 -0
  215. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_document-scene.svg +0 -0
  216. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_document-section.svg +0 -0
  217. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_document-title.svg +0 -0
  218. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_edit.svg +0 -0
  219. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_import.svg +0 -0
  220. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_input-checked.svg +0 -0
  221. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_input-none.svg +0 -0
  222. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_input-unchecked.svg +0 -0
  223. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/mixed_search-replace.svg +0 -0
  224. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h0.svg +0 -0
  225. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h1.svg +0 -0
  226. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h2-narrow.svg +0 -0
  227. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h2.svg +0 -0
  228. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h3-narrow.svg +0 -0
  229. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h3.svg +0 -0
  230. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h4-narrow.svg +0 -0
  231. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-h4.svg +0 -0
  232. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-note.svg +0 -0
  233. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_deco-noveltree-more.svg +0 -0
  234. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_panel.svg +0 -0
  235. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_search-case.svg +0 -0
  236. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_search-preserve.svg +0 -0
  237. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_search-regex.svg +0 -0
  238. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_search-word.svg +0 -0
  239. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-bold-md.svg +0 -0
  240. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-bold.svg +0 -0
  241. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-italic-md.svg +0 -0
  242. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-italic.svg +0 -0
  243. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-strike-md.svg +0 -0
  244. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-strike.svg +0 -0
  245. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-subscript.svg +0 -0
  246. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-superscript.svg +0 -0
  247. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/nw_tb-underline.svg +0 -0
  248. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_arrow-down-thick-grey.svg +0 -0
  249. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_arrow-forward.svg +0 -0
  250. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_arrow-maximise.svg +0 -0
  251. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_arrow-minimise.svg +0 -0
  252. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_arrow-repeat-grey.svg +0 -0
  253. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_book-grey.svg +0 -0
  254. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_book.svg +0 -0
  255. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_bookmark.svg +0 -0
  256. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_calendar.svg +0 -0
  257. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_cancel-grey.svg +0 -0
  258. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_cancel.svg +0 -0
  259. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_chart-bar-grey.svg +0 -0
  260. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_chevron-down.svg +0 -0
  261. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_chevron-left.svg +0 -0
  262. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_chevron-right.svg +0 -0
  263. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_chevron-up.svg +0 -0
  264. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_cog.svg +0 -0
  265. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_delete-full.svg +0 -0
  266. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_delete.svg +0 -0
  267. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_directions-full.svg +0 -0
  268. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_document-add.svg +0 -0
  269. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_document-text.svg +0 -0
  270. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_document.svg +0 -0
  271. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_export-grey.svg +0 -0
  272. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_export.svg +0 -0
  273. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_eye.svg +0 -0
  274. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_flag.svg +0 -0
  275. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_folder-open.svg +0 -0
  276. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_folder.svg +0 -0
  277. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_globe-grey.svg +0 -0
  278. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_key.svg +0 -0
  279. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_lightbulb-full.svg +0 -0
  280. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_location.svg +0 -0
  281. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_media-pause-grey.svg +0 -0
  282. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_media-record-outline.svg +0 -0
  283. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_media-record.svg +0 -0
  284. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_minus.svg +0 -0
  285. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_pencil.svg +0 -0
  286. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_pin-outline.svg +0 -0
  287. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_pin.svg +0 -0
  288. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_plus.svg +0 -0
  289. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_puzzle-outline.svg +0 -0
  290. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_puzzle.svg +0 -0
  291. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_search.svg +0 -0
  292. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_star.svg +0 -0
  293. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_stopwatch-grey.svg +0 -0
  294. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_th-dot-menu.svg +0 -0
  295. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_th-dot-more.svg +0 -0
  296. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_th-list-grey.svg +0 -0
  297. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_th-list.svg +0 -0
  298. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_trash.svg +0 -0
  299. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_user.svg +0 -0
  300. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/typicons_light/typ_warning-full.svg +0 -0
  301. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/x-novelwriter-project.ico +0 -0
  302. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/icons/x-novelwriter-project.svg +0 -0
  303. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/images/novelwriter-text-dark.svg +0 -0
  304. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/images/novelwriter-text-light.svg +0 -0
  305. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/images/welcome-dark.jpg +0 -0
  306. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/images/welcome-light.jpg +0 -0
  307. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/cyberpunk_night.conf +0 -0
  308. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/syntax/tango.conf +0 -0
  309. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/text/lipsum.txt +0 -0
  310. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/themes/cyberpunk_night.conf +0 -0
  311. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/themes/default.conf +0 -0
  312. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/themes/default_dark.conf +0 -0
  313. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/themes/default_light.conf +0 -0
  314. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/themes/solarized_dark.conf +0 -0
  315. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/assets/themes/solarized_light.conf +0 -0
  316. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/__init__.py +0 -0
  317. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/item.py +0 -0
  318. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/options.py +0 -0
  319. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/projectdata.py +0 -0
  320. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/projectxml.py +0 -0
  321. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/core/spellcheck.py +0 -0
  322. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/__init__.py +0 -0
  323. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/about.py +0 -0
  324. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/docmerge.py +0 -0
  325. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/editlabel.py +0 -0
  326. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/projectsettings.py +0 -0
  327. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/quotes.py +0 -0
  328. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/dialogs/wordlist.py +0 -0
  329. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/error.py +0 -0
  330. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/__init__.py +0 -0
  331. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/circularprogress.py +0 -0
  332. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/configlayout.py +0 -0
  333. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/eventfilters.py +0 -0
  334. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/novelselector.py +0 -0
  335. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/pagedsidebar.py +0 -0
  336. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/simpleprogress.py +0 -0
  337. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/statusled.py +0 -0
  338. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/switch.py +0 -0
  339. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/extensions/switchbox.py +0 -0
  340. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/__init__.py +0 -0
  341. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/gui/statusbar.py +0 -0
  342. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/__init__.py +0 -0
  343. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/dictionaries.py +0 -0
  344. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/lipsum.py +0 -0
  345. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/manusbuild.py +0 -0
  346. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/noveldetails.py +0 -0
  347. {novelWriter-2.3.1 → novelWriter-2.4b1}/novelwriter/tools/writingstats.py +0 -0
  348. {novelWriter-2.3.1 → novelWriter-2.4b1}/pkgutils.py +0 -0
  349. {novelWriter-2.3.1 → novelWriter-2.4b1}/pyproject.toml +0 -0
  350. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/appimage_launcher.sh +0 -0
  351. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/128x128/apps/novelwriter.png +0 -0
  352. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/128x128/mimetypes/application-x-novelwriter-project.png +0 -0
  353. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/16x16/apps/novelwriter.png +0 -0
  354. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/16x16/mimetypes/application-x-novelwriter-project.png +0 -0
  355. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/24x24/apps/novelwriter.png +0 -0
  356. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/24x24/mimetypes/application-x-novelwriter-project.png +0 -0
  357. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/256x256/apps/novelwriter.png +0 -0
  358. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/256x256/mimetypes/application-x-novelwriter-project.png +0 -0
  359. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/32x32/apps/novelwriter.png +0 -0
  360. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/32x32/mimetypes/application-x-novelwriter-project.png +0 -0
  361. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/48x48/apps/novelwriter.png +0 -0
  362. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/48x48/mimetypes/application-x-novelwriter-project.png +0 -0
  363. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/512x512/apps/novelwriter.png +0 -0
  364. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/512x512/mimetypes/application-x-novelwriter-project.png +0 -0
  365. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/64x64/apps/novelwriter.png +0 -0
  366. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/64x64/mimetypes/application-x-novelwriter-project.png +0 -0
  367. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/scalable/apps/novelwriter.svg +0 -0
  368. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/hicolor/scalable/mimetypes/application-x-novelwriter-project.svg +0 -0
  369. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/novelwriter.desktop +0 -0
  370. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/novelwriter.png +0 -0
  371. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/data/x-novelwriter-project.xml +0 -0
  372. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/debian/compat +0 -0
  373. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/debian/control +0 -0
  374. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/debian/copyright +0 -0
  375. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/debian/install +0 -0
  376. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/debian/py3dist-overrides +0 -0
  377. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/debian/rules +0 -0
  378. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/debian/source/format +0 -0
  379. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/description_pypi.md +0 -0
  380. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/description_short.txt +0 -0
  381. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/icons/novelwriter.ico +0 -0
  382. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/icons/novelwriter.svg +0 -0
  383. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/icons/x-novelwriter-project.ico +0 -0
  384. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/icons/x-novelwriter-project.svg +0 -0
  385. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/iss_license.txt +0 -0
  386. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/App.entitlements +0 -0
  387. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/Info.plist.template +0 -0
  388. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/build.sh +0 -0
  389. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_128x128.png +0 -0
  390. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_128x128@2x.png +0 -0
  391. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_16x16.png +0 -0
  392. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_16x16@2x.png +0 -0
  393. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_256x256.png +0 -0
  394. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_256x256@2x.png +0 -0
  395. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_32x32.png +0 -0
  396. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_32x32@2x.png +0 -0
  397. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_512x512.png +0 -0
  398. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/macos/novelwriter.iconset/icon_512x512@2x.png +0 -0
  399. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/make_clean.sh +0 -0
  400. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/make_pip.sh +0 -0
  401. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/make_release.sh +0 -0
  402. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/novelwriter.appdata.xml +0 -0
  403. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/novelwriter_readme.png +0 -0
  404. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/novelwriter_text.png +0 -0
  405. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/win_setup_embed.iss +0 -0
  406. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/windows_install.bat +0 -0
  407. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup/windows_uninstall.bat +0 -0
  408. {novelWriter-2.3.1 → novelWriter-2.4b1}/setup.cfg +0 -0
@@ -1,5 +1,62 @@
1
1
  # novelWriter Changelog
2
2
 
3
+ ## Version 2.4 Beta 1 [2024-03-26]
4
+
5
+ ### Release Notes
6
+
7
+ This is a beta release of the next release version, and is intended for testing purposes. Please be
8
+ careful when using this version on live writing projects, and make sure you take frequent backups.
9
+
10
+ Please check the changelog for an overview of changes. The full release notes will be added to the
11
+ final release.
12
+
13
+ ### Detailed Changelog
14
+
15
+ **Major Features**
16
+
17
+ * A global search feature has been added to the main sidebar. The search panel replaces the project
18
+ and novel tree when activated. PR #1775. Issue #894.
19
+ * A new shortcode to highlight text has been added. PR #1715. Issue #705.
20
+ * A new heading format for hard scene breaks has been added. It uses `###!` heading markup. The
21
+ only affect this has in the GUI is that these headings can be independently formatted in the
22
+ Manuscript tool. PR #1753. Issue #1050.
23
+ * The document editor and viewer now have a dropdown menu in the header listing all headings of the
24
+ current document for quick navigation. The list is capped at 30 entries. PR #1764. issue #1059.
25
+
26
+ **Build Tool Improvements**
27
+
28
+ * The Manuscript Build Tool now has a word stats section below the preview that shows a number of
29
+ word and character counts for the previewed text. PR #1717. Issues #1114 and #1116.
30
+ * The Manuscript Build Tool now shows an outline of the previewed document as a tab next to the
31
+ build settings list. PR #1768. Issue #1765.
32
+ * Tabs handling in HTML output now has a separate setting from the other format. PR #1723.
33
+ * Hard line breaks can now be excluded from Markdown builds. PR #1723. Issue #944.
34
+ * It is now possible to control the centring and page breaks of partition, chapter and scene
35
+ headings. PR #1723. Issues #1117 and #1661.
36
+ * Special titles (`#!`) can now be used in notes as well. PR #1723.
37
+ * Meta data categories can be filtered out from the manuscript. PR #1723. issue #1132.
38
+ * Any heading in a novel document can now be hidden in the manuscript. PR #1759. Issue #1756.
39
+ * First line of a paragraph can now be indented in the manuscript. PR #1761. Issue #906.
40
+ * Each meta data entry in HTML builds have a new class assigned to it that matches the tag used in
41
+ the text. PR #1767. Issue #1134.
42
+
43
+ **Other Improvements**
44
+
45
+ * The percentage progress counter in the editor document footer now counts progress per character
46
+ instead of per line. This is only noticeable on short documents. PR #1725.
47
+ * Some improvements have been made to terms on the GUI and some strings have been simplified in
48
+ order to be easier to understand and to translate. PR #1727. Issue #1726.
49
+ * Dates are now formatted according to the selected locale, if such a locale is available. If not,
50
+ it falls back to the local system locale. PR #1755. Issue #1739.
51
+
52
+ **Code Improvements**
53
+
54
+ * The tokenization of the novelWriter markup format has been refactored and improved. PR #1724.
55
+ * A way to read project documents fast has been added. It is useful many places in the code where
56
+ only the text is needed, not the meta data. PR #1777.
57
+
58
+ ----
59
+
3
60
  ## Version 2.3.1 [2024-03-17]
4
61
 
5
62
  ### Release Notes
@@ -58,9 +58,11 @@ Some of the assets bundled with novelWriter were adapted from the following sour
58
58
 
59
59
  ## Fonts
60
60
 
61
- The font used for the main novelWriter logo, mimetype and text banners is:
61
+ The font used for the main novelWriter logo, mimetype and text banners is Pridi. Other fonts are
62
+ used on buttons and icons.
62
63
 
63
64
  * Pridi by Cadson Demak (Open Font License, Version 1.1)
65
+ * Source Sans Pro by Paul D. Hunt (SIL Open Font License)
64
66
 
65
67
  ## Special Mentions
66
68
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: novelWriter
3
- Version: 2.3.1
3
+ Version: 2.4b1
4
4
  Summary: A markdown-like text editor for planning and writing novels
5
5
  Home-page: https://novelwriter.io
6
6
  Author: Veronica Berglyd Olsen
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: novelWriter
3
- Version: 2.3.1
3
+ Version: 2.4b1
4
4
  Summary: A markdown-like text editor for planning and writing novels
5
5
  Home-page: https://novelwriter.io
6
6
  Author: Veronica Berglyd Olsen
@@ -83,16 +83,19 @@ novelwriter/assets/icons/typicons_dark/nw_tb-bold-md.svg
83
83
  novelwriter/assets/icons/typicons_dark/nw_tb-bold.svg
84
84
  novelwriter/assets/icons/typicons_dark/nw_tb-italic-md.svg
85
85
  novelwriter/assets/icons/typicons_dark/nw_tb-italic.svg
86
+ novelwriter/assets/icons/typicons_dark/nw_tb-mark.svg
86
87
  novelwriter/assets/icons/typicons_dark/nw_tb-strike-md.svg
87
88
  novelwriter/assets/icons/typicons_dark/nw_tb-strike.svg
88
89
  novelwriter/assets/icons/typicons_dark/nw_tb-subscript.svg
89
90
  novelwriter/assets/icons/typicons_dark/nw_tb-superscript.svg
90
91
  novelwriter/assets/icons/typicons_dark/nw_tb-underline.svg
91
92
  novelwriter/assets/icons/typicons_dark/typ_arrow-down-thick-grey.svg
93
+ novelwriter/assets/icons/typicons_dark/typ_arrow-down.svg
92
94
  novelwriter/assets/icons/typicons_dark/typ_arrow-forward.svg
93
95
  novelwriter/assets/icons/typicons_dark/typ_arrow-maximise.svg
94
96
  novelwriter/assets/icons/typicons_dark/typ_arrow-minimise.svg
95
97
  novelwriter/assets/icons/typicons_dark/typ_arrow-repeat-grey.svg
98
+ novelwriter/assets/icons/typicons_dark/typ_arrow-right.svg
96
99
  novelwriter/assets/icons/typicons_dark/typ_book-grey.svg
97
100
  novelwriter/assets/icons/typicons_dark/typ_book.svg
98
101
  novelwriter/assets/icons/typicons_dark/typ_bookmark.svg
@@ -133,6 +136,7 @@ novelwriter/assets/icons/typicons_dark/typ_puzzle-outline.svg
133
136
  novelwriter/assets/icons/typicons_dark/typ_puzzle.svg
134
137
  novelwriter/assets/icons/typicons_dark/typ_refresh-flipped.svg
135
138
  novelwriter/assets/icons/typicons_dark/typ_refresh.svg
139
+ novelwriter/assets/icons/typicons_dark/typ_search-grey.svg
136
140
  novelwriter/assets/icons/typicons_dark/typ_search.svg
137
141
  novelwriter/assets/icons/typicons_dark/typ_star.svg
138
142
  novelwriter/assets/icons/typicons_dark/typ_stopwatch-grey.svg
@@ -177,16 +181,19 @@ novelwriter/assets/icons/typicons_light/nw_tb-bold-md.svg
177
181
  novelwriter/assets/icons/typicons_light/nw_tb-bold.svg
178
182
  novelwriter/assets/icons/typicons_light/nw_tb-italic-md.svg
179
183
  novelwriter/assets/icons/typicons_light/nw_tb-italic.svg
184
+ novelwriter/assets/icons/typicons_light/nw_tb-mark.svg
180
185
  novelwriter/assets/icons/typicons_light/nw_tb-strike-md.svg
181
186
  novelwriter/assets/icons/typicons_light/nw_tb-strike.svg
182
187
  novelwriter/assets/icons/typicons_light/nw_tb-subscript.svg
183
188
  novelwriter/assets/icons/typicons_light/nw_tb-superscript.svg
184
189
  novelwriter/assets/icons/typicons_light/nw_tb-underline.svg
185
190
  novelwriter/assets/icons/typicons_light/typ_arrow-down-thick-grey.svg
191
+ novelwriter/assets/icons/typicons_light/typ_arrow-down.svg
186
192
  novelwriter/assets/icons/typicons_light/typ_arrow-forward.svg
187
193
  novelwriter/assets/icons/typicons_light/typ_arrow-maximise.svg
188
194
  novelwriter/assets/icons/typicons_light/typ_arrow-minimise.svg
189
195
  novelwriter/assets/icons/typicons_light/typ_arrow-repeat-grey.svg
196
+ novelwriter/assets/icons/typicons_light/typ_arrow-right.svg
190
197
  novelwriter/assets/icons/typicons_light/typ_book-grey.svg
191
198
  novelwriter/assets/icons/typicons_light/typ_book.svg
192
199
  novelwriter/assets/icons/typicons_light/typ_bookmark.svg
@@ -227,6 +234,7 @@ novelwriter/assets/icons/typicons_light/typ_puzzle-outline.svg
227
234
  novelwriter/assets/icons/typicons_light/typ_puzzle.svg
228
235
  novelwriter/assets/icons/typicons_light/typ_refresh-flipped.svg
229
236
  novelwriter/assets/icons/typicons_light/typ_refresh.svg
237
+ novelwriter/assets/icons/typicons_light/typ_search-grey.svg
230
238
  novelwriter/assets/icons/typicons_light/typ_search.svg
231
239
  novelwriter/assets/icons/typicons_light/typ_star.svg
232
240
  novelwriter/assets/icons/typicons_light/typ_stopwatch-grey.svg
@@ -317,9 +325,12 @@ novelwriter/gui/mainmenu.py
317
325
  novelwriter/gui/noveltree.py
318
326
  novelwriter/gui/outline.py
319
327
  novelwriter/gui/projtree.py
328
+ novelwriter/gui/search.py
320
329
  novelwriter/gui/sidebar.py
321
330
  novelwriter/gui/statusbar.py
322
331
  novelwriter/gui/theme.py
332
+ novelwriter/text/__init__.py
333
+ novelwriter/text/counting.py
323
334
  novelwriter/tools/__init__.py
324
335
  novelwriter/tools/dictionaries.py
325
336
  novelwriter/tools/lipsum.py
@@ -42,9 +42,9 @@ __license__ = "GPLv3"
42
42
  __author__ = "Veronica Berglyd Olsen"
43
43
  __maintainer__ = "Veronica Berglyd Olsen"
44
44
  __email__ = "code@vkbo.net"
45
- __version__ = "2.3.1"
46
- __hexversion__ = "0x020301f0"
47
- __date__ = "2024-03-17"
45
+ __version__ = "2.4b1"
46
+ __hexversion__ = "0x020400b1"
47
+ __date__ = "2024-03-26"
48
48
  __status__ = "Stable"
49
49
  __domain__ = "novelwriter.io"
50
50
 
@@ -195,7 +195,7 @@ def main(sysArgs: list | None = None):
195
195
 
196
196
  if CONFIG.osDarwin:
197
197
  try:
198
- from Foundation import NSBundle
198
+ from Foundation import NSBundle # type: ignore
199
199
  bundle = NSBundle.mainBundle()
200
200
  info = bundle.localizedInfoDictionary() or bundle.infoDictionary()
201
201
  info["CFBundleName"] = "novelWriter"
@@ -207,7 +207,7 @@ def main(sysArgs: list | None = None):
207
207
  try:
208
208
  import ctypes
209
209
  appID = f"io.novelwriter.{__version__}"
210
- ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(appID)
210
+ ctypes.windll.shell32.SetCurrentProcessExplicitAppUserModelID(appID) # type: ignore
211
211
  except Exception:
212
212
  logger.error("Failed to set application name")
213
213
  logException()
@@ -53,6 +53,7 @@ fmt_bold = nw_tb-bold.svg
53
53
  fmt_bold-md = nw_tb-bold-md.svg
54
54
  fmt_italic = nw_tb-italic.svg
55
55
  fmt_italic-md = nw_tb-italic-md.svg
56
+ fmt_mark = nw_tb-mark.svg
56
57
  fmt_strike = nw_tb-strike.svg
57
58
  fmt_strike-md = nw_tb-strike-md.svg
58
59
  fmt_subscript = nw_tb-subscript.svg
@@ -99,12 +100,15 @@ status_time = typ_stopwatch-grey.svg
99
100
  sticky-off = typ_pin-outline.svg
100
101
  sticky-on = typ_pin.svg
101
102
  unchecked = mixed_input-unchecked.svg
103
+ unfold-hide = typ_arrow-right.svg
104
+ unfold-show = typ_arrow-down.svg
102
105
  up = typ_chevron-up.svg
103
106
  view = typ_eye.svg
104
107
  view_build = typ_export-grey.svg
105
108
  view_editor = mixed_edit.svg
106
109
  view_novel = typ_book-grey.svg
107
110
  view_outline = typ_puzzle-outline.svg
111
+ view_search = typ_search-grey.svg
108
112
 
109
113
  deco_doc_h0 = nw_deco-h0.svg
110
114
  deco_doc_h0_n = nw_deco-h0.svg
@@ -0,0 +1,7 @@
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
+ <rect x=".26458" y=".79375" width="5.8208" height="4.7625" fill="#ffff84" fill-opacity=".8" stroke-linecap="round" stroke-width=".1354"/>
4
+ <path d="m1.3229 5.2917v-4.2333h0.98087l0.6397 1.8829q0.060924 0.18829 0.11576 0.38957 0.054831 0.19479 0.11576 0.38957h0.024369q0.060924-0.19479 0.10966-0.38957 0.054831-0.20128 0.11576-0.38957l0.62752-1.8829h0.97478v4.2333h-0.81638v-1.5518q0-0.15583 0.012185-0.34412 0.012185-0.18829 0.030462-0.37658 0.018277-0.19479 0.036554-0.37658 0.018277-0.18829 0.036554-0.34412h-0.02437l-0.3229 1.0064-0.56659 1.6167h-0.49348l-0.56659-1.6167-0.3168-1.0064h-0.024369q0.018277 0.15583 0.036554 0.34412 0.018277 0.1818 0.036554 0.37658 0.018277 0.18829 0.030462 0.37658 0.012185 0.18829 0.012185 0.34412v1.5518z" fill="#808080" stroke-linecap="round" stroke-width=".11793"/>
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"/>
7
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m1.5077 8.1077 10.492 10.662 10.492-10.662c0.33846-0.33846 0.50769-0.84615 0.50769-1.1846 0-0.33846-0.16923-0.84615-0.50769-1.1846-0.33846-0.33846-0.67692-0.50769-1.1846-0.50769h-18.615c-0.50769 0-0.84615 0.16923-1.1846 0.50769-0.33846 0.33846-0.50769 0.84615-0.50769 1.1846 0 0.33846 0.16923 0.84615 0.50769 1.1846z" fill="#aeaeae" stroke-width="1.6923"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m8.1077 22.492 10.662-10.492-10.662-10.492c-0.33846-0.33846-0.84615-0.50769-1.1846-0.50769-0.33846 0-0.84615 0.16923-1.1846 0.50769-0.33846 0.33846-0.50769 0.67692-0.50769 1.1846v18.615c0 0.50769 0.16923 0.84615 0.50769 1.1846 0.33846 0.33846 0.84615 0.50769 1.1846 0.50769 0.33846 0 0.84615-0.16923 1.1846-0.50769z" fill="#aeaeae" stroke-width="1.6923"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m10.692 12.288h-7.692v-7.689c0.012-1.7022 1.0065-2.1116 2.2095-0.90734l1.731 1.7367c1.5225-1.1923 3.3855-1.8447 5.349-1.8447 2.325 0 4.5135 0.90583 6.156 2.5511 1.6485 1.6377 2.5545 3.8288 2.5545 6.1533 0 2.3291-0.906 4.5172-2.5515 6.1594-1.6455 1.6452-3.8325 2.5525-6.159 2.5525-2.325 0-4.5135-0.90734-6.159-2.554-0.444-0.44542-0.837-0.93132-1.17-1.4472-0.5205-0.81135-0.285-1.8897 0.525-2.4071 0.8085-0.51891 1.887-0.28344 2.406 0.5249 0.1995 0.31044 0.438 0.59988 0.702 0.86984 0.9885 0.98682 2.301 1.5297 3.696 1.5297 1.395 0 2.7075-0.5414 3.696-1.5297 0.9855-0.98682 1.53-2.2991 1.53-3.6969 0-1.3948-0.543-2.707-1.53-3.6908-0.9885-0.98682-2.301-1.5312-3.696-1.5312-1.032 0-2.019 0.30144-2.8635 0.85784l2.172 2.1761c1.2045 1.2027 0.795 2.1866-0.906 2.1866z" fill="#9c9" stroke-width="1.3332"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m13.308 12.288h7.692v-7.689c-0.012-1.7022-1.0065-2.1116-2.2095-0.90734l-1.731 1.7367c-1.5225-1.1923-3.3855-1.8447-5.349-1.8447-2.325 0-4.5135 0.90583-6.156 2.5511-1.6485 1.6377-2.5545 3.8288-2.5545 6.1533 0 2.3291 0.906 4.5172 2.5515 6.1594 1.6455 1.6452 3.8325 2.5525 6.159 2.5525 2.325 0 4.5135-0.90734 6.159-2.554 0.444-0.44542 0.837-0.93132 1.17-1.4472 0.5205-0.81135 0.285-1.8897-0.525-2.4071-0.8085-0.51891-1.887-0.28344-2.406 0.5249-0.1995 0.31044-0.438 0.59988-0.702 0.86984-0.9885 0.98682-2.301 1.5297-3.696 1.5297-1.395 0-2.7075-0.5414-3.696-1.5297-0.9855-0.98682-1.53-2.2991-1.53-3.6969 0-1.3948 0.543-2.707 1.53-3.6908 0.9885-0.98682 2.301-1.5312 3.696-1.5312 1.032 0 2.019 0.30144 2.8635 0.85784l-2.172 2.1761c-1.2045 1.2027-0.795 2.1866 0.906 2.1866z" fill="#9c9" stroke-width="1.3332"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m20.547 14.707-0.7017-0.703-0.98054-0.98185c0.29717-0.90068 0.46343-1.859 0.46343-2.8578 0-5.0519-4.112-9.1639-9.1639-9.1639s-9.1639 4.112-9.1639 9.1639c0 5.0519 4.112 9.1639 9.1639 9.1639 0.99887 0 1.9585-0.16626 2.8591-0.46343l0.98185 0.98054 1.9794 1.9768 0.07986 0.07986 0.08378 0.072c0.78679 0.66242 1.7647 1.0264 2.7544 1.0264 2.2596 0 4.0976-1.838 4.0976-4.0989 0-1.0997-0.4294-2.1313-1.2096-2.9037zm-16.93-4.5427c0-3.6093 2.9364-6.5457 6.5457-6.5457s6.5457 2.9364 6.5457 6.5457-2.9364 6.5457-6.5457 6.5457-6.5457-2.9364-6.5457-6.5457z" fill="#aeaeae" stroke-width="1.3091"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m20.121 3.8786c-1.17-1.1715-3.072-1.1715-4.2421 0l-3.879 3.8791-3.879-3.8791c-1.17-1.1715-3.072-1.1715-4.2421 0-1.1715 1.1715-1.1715 3.0705 0 4.2421l3.8776 3.879-3.8776 3.879c-1.1715 1.1715-1.1715 3.0705 0 4.2421 0.58502 0.58652 1.353 0.87902 2.1211 0.87902 0.76801 0 1.5361-0.29251 2.1211-0.87902l3.879-3.879 3.879 3.879c0.58502 0.58652 1.353 0.87902 2.1211 0.87902 0.76801 0 1.5361-0.29251 2.1211-0.87902 1.1715-1.1715 1.1715-3.0705 0-4.2421l-3.8776-3.879 3.8776-3.879c1.1715-1.1715 1.1715-3.0705 0-4.2421z" fill="#d64848" stroke-width="1.5001"/>
4
+ </svg>
@@ -53,6 +53,7 @@ fmt_bold = nw_tb-bold.svg
53
53
  fmt_bold-md = nw_tb-bold-md.svg
54
54
  fmt_italic = nw_tb-italic.svg
55
55
  fmt_italic-md = nw_tb-italic-md.svg
56
+ fmt_mark = nw_tb-mark.svg
56
57
  fmt_strike = nw_tb-strike.svg
57
58
  fmt_strike-md = nw_tb-strike-md.svg
58
59
  fmt_subscript = nw_tb-subscript.svg
@@ -99,12 +100,15 @@ status_time = typ_stopwatch-grey.svg
99
100
  sticky-off = typ_pin-outline.svg
100
101
  sticky-on = typ_pin.svg
101
102
  unchecked = mixed_input-unchecked.svg
103
+ unfold-hide = typ_arrow-right.svg
104
+ unfold-show = typ_arrow-down.svg
102
105
  up = typ_chevron-up.svg
103
106
  view = typ_eye.svg
104
107
  view_build = typ_export-grey.svg
105
108
  view_editor = mixed_edit.svg
106
109
  view_novel = typ_book-grey.svg
107
110
  view_outline = typ_puzzle-outline.svg
111
+ view_search = typ_search-grey.svg
108
112
 
109
113
  deco_doc_h0 = nw_deco-h0.svg
110
114
  deco_doc_h0_n = nw_deco-h0.svg
@@ -0,0 +1,7 @@
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
+ <rect x=".26458" y=".79375" width="5.8208" height="4.7625" fill="#ad8700" fill-opacity=".8" stroke-linecap="round" stroke-width=".1354"/>
4
+ <path d="m1.3229 5.2917v-4.2333h0.98087l0.6397 1.8829q0.060924 0.18829 0.11576 0.38957 0.054831 0.19479 0.11576 0.38957h0.024369q0.060924-0.19479 0.10966-0.38957 0.054831-0.20128 0.11576-0.38957l0.62752-1.8829h0.97478v4.2333h-0.81638v-1.5518q0-0.15583 0.012185-0.34412 0.012185-0.18829 0.030462-0.37658 0.018277-0.19479 0.036554-0.37658 0.018277-0.18829 0.036554-0.34412h-0.02437l-0.3229 1.0064-0.56659 1.6167h-0.49348l-0.56659-1.6167-0.3168-1.0064h-0.024369q0.018277 0.15583 0.036554 0.34412 0.018277 0.1818 0.036554 0.37658 0.018277 0.18829 0.030462 0.37658 0.012185 0.18829 0.012185 0.34412v1.5518z" fill-opacity=".78039" stroke-linecap="round" stroke-width=".11793"/>
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"/>
7
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m1.5077 8.1077 10.492 10.662 10.492-10.662c0.33846-0.33846 0.50769-0.84615 0.50769-1.1846 0-0.33846-0.16923-0.84615-0.50769-1.1846-0.33846-0.33846-0.67692-0.50769-1.1846-0.50769h-18.615c-0.50769 0-0.84615 0.16923-1.1846 0.50769-0.33846 0.33846-0.50769 0.84615-0.50769 1.1846 0 0.33846 0.16923 0.84615 0.50769 1.1846z" fill-opacity=".78039" stroke-width="1.6923"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m8.1077 22.492 10.662-10.492-10.662-10.492c-0.33846-0.33846-0.84615-0.50769-1.1846-0.50769-0.33846 0-0.84615 0.16923-1.1846 0.50769-0.33846 0.33846-0.50769 0.67692-0.50769 1.1846v18.615c0 0.50769 0.16923 0.84615 0.50769 1.1846 0.33846 0.33846 0.84615 0.50769 1.1846 0.50769 0.33846 0 0.84615-0.16923 1.1846-0.50769z" fill-opacity=".78039" stroke-width="1.6923"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m10.692 12.288h-7.692v-7.689c0.012-1.7022 1.0065-2.1116 2.2095-0.90734l1.731 1.7367c1.5225-1.1923 3.3855-1.8447 5.349-1.8447 2.325 0 4.5135 0.90583 6.156 2.5511 1.6485 1.6377 2.5545 3.8288 2.5545 6.1533 0 2.3291-0.906 4.5172-2.5515 6.1594-1.6455 1.6452-3.8325 2.5525-6.159 2.5525-2.325 0-4.5135-0.90734-6.159-2.554-0.444-0.44542-0.837-0.93132-1.17-1.4472-0.5205-0.81135-0.285-1.8897 0.525-2.4071 0.8085-0.51891 1.887-0.28344 2.406 0.5249 0.1995 0.31044 0.438 0.59988 0.702 0.86984 0.9885 0.98682 2.301 1.5297 3.696 1.5297 1.395 0 2.7075-0.5414 3.696-1.5297 0.9855-0.98682 1.53-2.2991 1.53-3.6969 0-1.3948-0.543-2.707-1.53-3.6908-0.9885-0.98682-2.301-1.5312-3.696-1.5312-1.032 0-2.019 0.30144-2.8635 0.85784l2.172 2.1761c1.2045 1.2027 0.795 2.1866-0.906 2.1866z" fill="#718c00" stroke-width="1.4998"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m13.308 12.288h7.692v-7.689c-0.012001-1.7022-1.0065-2.1116-2.2095-0.90734l-1.731 1.7367c-1.5225-1.1923-3.3855-1.8447-5.349-1.8447-2.325 0-4.5135 0.90583-6.156 2.5511-1.6485 1.6377-2.5545 3.8288-2.5545 6.1533 0 2.3291 0.906 4.5172 2.5515 6.1594 1.6455 1.6452 3.8325 2.5525 6.159 2.5525 2.325 0 4.5135-0.90734 6.159-2.554 0.444-0.44542 0.837-0.93132 1.17-1.4472 0.5205-0.81135 0.285-1.8897-0.525-2.4071-0.8085-0.51891-1.887-0.28344-2.406 0.5249-0.1995 0.31044-0.438 0.59988-0.702 0.86984-0.9885 0.98682-2.301 1.5297-3.696 1.5297-1.395 0-2.7075-0.5414-3.696-1.5297-0.9855-0.98682-1.53-2.2991-1.53-3.6969 0-1.3948 0.543-2.707 1.53-3.6908 0.9885-0.98682 2.301-1.5312 3.696-1.5312 1.032 0 2.019 0.30144 2.8635 0.85784l-2.172 2.1761c-1.2045 1.2027-0.795 2.1866 0.906 2.1866z" fill="#718c00" stroke-width="1.4998"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m20.547 14.707-0.7017-0.703-0.98054-0.98185c0.29717-0.90068 0.46343-1.859 0.46343-2.8578 0-5.0519-4.112-9.1639-9.1639-9.1639s-9.1639 4.112-9.1639 9.1639c0 5.0519 4.112 9.1639 9.1639 9.1639 0.99887 0 1.9585-0.16626 2.8591-0.46343l0.98185 0.98054 1.9794 1.9768 0.07986 0.07986 0.08378 0.072c0.78679 0.66242 1.7647 1.0264 2.7544 1.0264 2.2596 0 4.0976-1.838 4.0976-4.0989 0-1.0997-0.4294-2.1313-1.2096-2.9037zm-16.93-4.5427c0-3.6093 2.9364-6.5457 6.5457-6.5457s6.5457 2.9364 6.5457 6.5457-2.9364 6.5457-6.5457 6.5457-6.5457-2.9364-6.5457-6.5457z" fill-opacity=".78039" stroke-width="1.3091"/>
4
+ </svg>
@@ -0,0 +1,4 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg width="24" height="24" version="1.2" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">
3
+ <path d="m20.121 3.8786c-1.17-1.1715-3.072-1.1715-4.2421 0l-3.879 3.8791-3.879-3.8791c-1.17-1.1715-3.072-1.1715-4.2421 0-1.1715 1.1715-1.1715 3.0705 0 4.2421l3.8776 3.879-3.8776 3.879c-1.1715 1.1715-1.1715 3.0705 0 4.2421 0.58502 0.58652 1.353 0.87902 2.1211 0.87902 0.76801 0 1.5361-0.29251 2.1211-0.87902l3.879-3.879 3.879 3.879c0.58502 0.58652 1.353 0.87902 2.1211 0.87902 0.76801 0 1.5361-0.29251 2.1211-0.87902 1.1715-1.1715 1.1715-3.0705 0-4.2421l-3.8776-3.879 3.8776-3.879c1.1715-1.1715 1.1715-3.0705 0-4.2421z" fill="#c82829" stroke-width="1.5001"/>
4
+ </svg>
@@ -25,3 +25,4 @@ spellcheckline = 200, 46, 0
25
25
  errorline = 46, 200, 0
26
26
  replacetag = 0, 184, 46
27
27
  modifier = 200, 120, 0
28
+ texthighlight = 136, 200, 0, 96
@@ -25,3 +25,4 @@ spellcheckline = 200, 0, 0
25
25
  errorline = 0, 150, 0
26
26
  replacetag = 0, 150, 0
27
27
  modifier = 150, 110, 30
28
+ texthighlight = 150, 150, 0, 96
@@ -25,3 +25,4 @@ spellcheckline = 200, 46, 0
25
25
  errorline = 46, 200, 0
26
26
  replacetag = 225, 225, 225
27
27
  modifier = 225, 225, 225
28
+ texthighlight = 255, 255, 255, 64
@@ -25,3 +25,4 @@ spellcheckline = 200, 0, 0
25
25
  errorline = 0, 150, 0
26
26
  replacetag = 0, 0, 0
27
27
  modifier = 0, 0, 0
28
+ texthighlight = 0, 0, 0, 64
@@ -45,3 +45,4 @@ spellcheckline = 222, 61, 58
45
45
  errorline = 8, 145, 106
46
46
  replacetag = 42, 162, 152
47
47
  modifier = 224, 175, 5
48
+ texthighlight = 218, 170, 1, 96
@@ -45,3 +45,4 @@ spellcheckline = 247, 140, 108
45
45
  errorline = 173, 219, 103
46
46
  replacetag = 127, 219, 202
47
47
  modifier = 236, 196, 141
48
+ texthighlight = 255, 235, 149, 96
@@ -25,3 +25,4 @@ spellcheckline = 203, 75, 22
25
25
  errorline = 220, 50, 47
26
26
  replacetag = 133, 153, 0
27
27
  modifier = 181, 137, 0
28
+ texthighlight = 181, 137, 0, 96
@@ -25,3 +25,4 @@ spellcheckline = 203, 75, 22
25
25
  errorline = 220, 50, 47
26
26
  replacetag = 133, 153, 0
27
27
  modifier = 181, 137, 0
28
+ texthighlight = 181, 137, 0, 96
@@ -45,3 +45,4 @@ spellcheckline = 240, 40, 41
45
45
  errorline = 113, 140, 0
46
46
  replacetag = 62, 153, 159
47
47
  modifier = 245, 135, 31
48
+ texthighlight = 234, 183, 0, 96
@@ -45,3 +45,4 @@ spellcheckline = 204, 102, 102
45
45
  errorline = 181, 189, 104
46
46
  replacetag = 138, 190, 183
47
47
  modifier = 222, 147, 95
48
+ texthighlight = 240, 198, 116, 96
@@ -45,3 +45,4 @@ spellcheckline = 255, 157, 164
45
45
  errorline = 209, 241, 169
46
46
  replacetag = 153, 255, 255
47
47
  modifier = 255, 197, 143
48
+ texthighlight = 255, 238, 173, 96
@@ -45,3 +45,4 @@ spellcheckline = 213, 78, 83
45
45
  errorline = 185, 202, 74
46
46
  replacetag = 112, 192, 177
47
47
  modifier = 231, 140, 69
48
+ texthighlight = 231, 197, 71, 128
@@ -45,3 +45,4 @@ spellcheckline = 242, 119, 122
45
45
  errorline = 153, 204, 153
46
46
  replacetag = 102, 204, 204
47
47
  modifier = 249, 145, 57
48
+ texthighlight = 255, 204, 102, 96
@@ -0,0 +1,81 @@
1
+ <!DOCTYPE html public "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
2
+ <html>
3
+ <body>
4
+
5
+ <h3>Main Developer</h3>
6
+ <p>Veronica Berglyd Olsen (<a href="https://github.com/vkbo">@vkbo</a>)</p>
7
+
8
+ <h3>Contributors</h3>
9
+
10
+ <p>
11
+ &nbsp;&bull;&nbsp;<b>Concept:</b> Marian Lückhof (<a href="https://github.com/Number042">@Number042</a>)<br>
12
+ &nbsp;&bull;&nbsp;<b>Internationalisation:</b> Bruno Meneguello (<a href="https://github.com/bkmeneguello">@bkmeneguello</a>)<br>
13
+ &nbsp;&bull;&nbsp;<b>Setup and Packaging:</b> Rachel Powers (<a href="https://github.com/Ryex">@Ryex</a>)
14
+ </p>
15
+ <p>For other contributions, see the project's
16
+ <a href="https://github.com/vkbo/novelWriter/graphs/contributors">Contributors</a> page.</p>
17
+
18
+ <h3>Artwork</h3>
19
+
20
+ <p>The artwork on the Welcome dialog was created by <a href="https://louisdurrant.art">Louis Durrant</a>.</p>
21
+
22
+ <h3>Translations</h3>
23
+
24
+ <p>The default language is English (UK) with English (US) as an option. These are the original
25
+ translators for the languages currently available:</p>
26
+ <p>
27
+ &nbsp;&bull;&nbsp;<b>Dutch:</b> Martijn van der Kleijn (<a href="https://github.com/mvdkleijn">@mvdkleijn</a>)<br>
28
+ &nbsp;&bull;&nbsp;<b>French:</b> Jan Lüdke (<a href="https://github.com/jyhelle">@jyhelle</a>)<br>
29
+ &nbsp;&bull;&nbsp;<b>German:</b> Myian (<a href="https://github.com/heymyian">@heymyian</a>)<br>
30
+ &nbsp;&bull;&nbsp;<b>Italian:</b> Riccardo Mangili<br>
31
+ &nbsp;&bull;&nbsp;<b>Japanese:</b> hebekeg (<a href="https://github.com/hebekeg">@hebekeg</a>)<br>
32
+ &nbsp;&bull;&nbsp;<b>Latin American Spanish:</b> Tommy Marplatt (<a href="https://github.com/tmarplatt">@tmarplatt</a>)<br>
33
+ &nbsp;&bull;&nbsp;<b>Norwegian:</b> Veronica Berglyd Olsen (<a href="https://github.com/vkbo">@vkbo</a>)<br>
34
+ &nbsp;&bull;&nbsp;<b>Portuguese:</b> Bruno Meneguello (<a href="https://github.com/bkmeneguello">@bkmeneguello</a>)<br>
35
+ &nbsp;&bull;&nbsp;<b>Simplified Chinese:</b> Qianzhi Long (<a href="https://github.com/longqzh">@longqzh</a>)
36
+ </p>
37
+
38
+ <p>Additional larger translation contributions:</p>
39
+ <p>
40
+ &nbsp;&bull;&nbsp;<b>French:</b> Albert Aribaud (<a href="https://github.com/aaribaud">@aaribaud</a>)
41
+ </p>
42
+
43
+ <p>Translations are managed on <a href="https://crowdin.com/project/novelwriter">Crowdin</a>, and
44
+ more contributions are listed on the project's <a href="https://crowdin.com/project/novelwriter/members">Members</a> page.</p>
45
+
46
+ <h3>Libraries</h3>
47
+
48
+ <p>The following libraries are dependencies of novelWriter:</p>
49
+ <p>
50
+ &nbsp;&bull;&nbsp;<a href="https://www.qt.io">Qt5</a> by Qt Company<br>
51
+ &nbsp;&bull;&nbsp;<a href="https://www.riverbankcomputing.com/software/pyqt">PyQt5</a> by Riverbank Computing<br>
52
+ &nbsp;&bull;&nbsp;<a href="https://abiword.github.io/enchant">Enchant</a> by Dom Lachowicz<br>
53
+ &nbsp;&bull;&nbsp;<a href="https://pyenchant.github.io/pyenchant">PyEnchant</a> by Dimitri Merejkowsky
54
+ </p>
55
+
56
+ <h3>Assets</h3>
57
+
58
+ <p>Some of the assets bundled with novelWriter were adapted from the following sources:</p>
59
+ <p>
60
+ &nbsp;&bull;&nbsp;<a href="https://github.com/stephenhutchings/typicons.font">Typicons</a> icons by Stephen Hutchings (CC BY-SA 4.0)<br>
61
+ &nbsp;&bull;&nbsp;<a href="https://github.com/chriskempson/base16">Tomorrow</a> syntax themes by Chris Kempson (MIT License)<br>
62
+ &nbsp;&bull;&nbsp;<a href="https://github.com/sdras/night-owl-vscode-theme">Owl</a> syntax themes by Sarah Drasner (MIT License)<br>
63
+ &nbsp;&bull;&nbsp;<a href="https://github.com/altercation/solarized">Solarized</a> themes by Ethan Schoonover (MIT License)
64
+ </p>
65
+
66
+ <h3>Fonts</h3>
67
+
68
+ <p>The font used for the main novelWriter logo, mimetype and text banners is Pridi. Other fonts are
69
+ used on buttons and icons.</p>
70
+ <p>
71
+ &nbsp;&bull;&nbsp;Pridi by Cadson Demak (Open Font License, Version 1.1)<br>
72
+ &nbsp;&bull;&nbsp;Source Sans Pro by Paul D. Hunt (SIL Open Font License)
73
+ </p>
74
+
75
+ <h3>Special Mentions</h3>
76
+
77
+ <p>Additional thanks to <a href="https://github.com/johnblommers">@johnblommers</a> who was an early user and who has provided a lot
78
+ of very useful feedback over the years.</p>
79
+
80
+ </body>
81
+ </html>
@@ -255,7 +255,7 @@ def formatFileFilter(extensions: list[str | tuple[str, str]]) -> str:
255
255
  result = []
256
256
  for ext in extensions:
257
257
  if isinstance(ext, str):
258
- result.append(f"{trConst(nwLabels.FILE_FILTERS.get(ext))} ({ext})")
258
+ result.append(f"{trConst(nwLabels.FILE_FILTERS.get(ext, 'ERR'))} ({ext})")
259
259
  elif isinstance(ext, tuple) and len(ext) == 2:
260
260
  result.append(f"{ext[0]} ({ext[1]})")
261
261
  return ";;".join(result)