novelWriter 2.6rc1__tar.gz → 2.6.1__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 (428) hide show
  1. {novelwriter-2.6rc1 → novelwriter-2.6.1}/CHANGELOG.md +89 -0
  2. {novelwriter-2.6rc1 → novelwriter-2.6.1}/PKG-INFO +1 -1
  3. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/PKG-INFO +1 -1
  4. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/SOURCES.txt +1 -0
  5. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/__init__.py +3 -3
  6. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_de_DE.qm +0 -0
  7. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_en_US.qm +0 -0
  8. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_es_419.qm +0 -0
  9. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_fr_FR.qm +0 -0
  10. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_it_IT.qm +0 -0
  11. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_ja_JP.qm +0 -0
  12. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_nb_NO.qm +0 -0
  13. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_nl_NL.qm +0 -0
  14. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_pl_PL.qm +0 -0
  15. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_pt_BR.qm +0 -0
  16. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_ru_RU.qm +0 -0
  17. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_zh_CN.qm +0 -0
  18. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_de_DE.json +2 -0
  19. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_en_US.json +2 -0
  20. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_es_419.json +2 -0
  21. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_fr_FR.json +3 -1
  22. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_it_IT.json +2 -0
  23. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_ja_JP.json +2 -0
  24. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_nb_NO.json +2 -0
  25. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_nl_NL.json +2 -0
  26. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_pl_PL.json +2 -0
  27. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_pt_BR.json +2 -0
  28. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_zh_CN.json +2 -0
  29. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/manual.pdf +0 -0
  30. novelwriter-2.6.1/novelwriter/assets/manual_fr_FR.pdf +0 -0
  31. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/sample.zip +0 -0
  32. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/config.py +41 -19
  33. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/constants.py +4 -0
  34. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/buildsettings.py +7 -0
  35. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/project.py +2 -6
  36. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/preferences.py +14 -5
  37. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/enum.py +0 -7
  38. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/novelselector.py +3 -2
  39. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/statusled.py +5 -6
  40. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/shared.py +12 -11
  41. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/todocx.py +1 -1
  42. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/tohtml.py +30 -27
  43. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/tokenizer.py +14 -8
  44. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/tomarkdown.py +3 -2
  45. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/toodt.py +1 -1
  46. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/toqdoc.py +2 -0
  47. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/doceditor.py +35 -19
  48. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/docviewer.py +1 -1
  49. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/itemdetails.py +1 -0
  50. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/projtree.py +15 -18
  51. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/statusbar.py +6 -7
  52. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/guimain.py +1 -1
  53. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/dictionaries.py +2 -2
  54. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/manussettings.py +8 -8
  55. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/welcome.py +1 -1
  56. {novelwriter-2.6rc1 → novelwriter-2.6.1}/CREDITS.md +0 -0
  57. {novelwriter-2.6rc1 → novelwriter-2.6.1}/LICENSE.md +0 -0
  58. {novelwriter-2.6rc1 → novelwriter-2.6.1}/MANIFEST.in +0 -0
  59. {novelwriter-2.6rc1 → novelwriter-2.6.1}/README.md +0 -0
  60. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/dependency_links.txt +0 -0
  61. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/entry_points.txt +0 -0
  62. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/requires.txt +0 -0
  63. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/top_level.txt +0 -0
  64. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_en_GB.json +0 -0
  65. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_nn_NO.json +0 -0
  66. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_ru_RU.json +0 -0
  67. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/none.svg +0 -0
  68. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/novelwriter.ico +0 -0
  69. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/novelwriter.svg +0 -0
  70. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/README.md +0 -0
  71. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/icons.conf +0 -0
  72. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_copy.svg +0 -0
  73. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-chapter.svg +0 -0
  74. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-new.svg +0 -0
  75. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-note.svg +0 -0
  76. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-scene.svg +0 -0
  77. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-section.svg +0 -0
  78. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-title.svg +0 -0
  79. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_edit.svg +0 -0
  80. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_import.svg +0 -0
  81. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_input-checked.svg +0 -0
  82. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_input-none.svg +0 -0
  83. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_input-unchecked.svg +0 -0
  84. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-bottom.svg +0 -0
  85. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-left.svg +0 -0
  86. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-right.svg +0 -0
  87. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-top.svg +0 -0
  88. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_search-replace.svg +0 -0
  89. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_size-height.svg +0 -0
  90. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_size-width.svg +0 -0
  91. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h0.svg +0 -0
  92. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h1.svg +0 -0
  93. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h2-narrow.svg +0 -0
  94. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h2.svg +0 -0
  95. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h3-narrow.svg +0 -0
  96. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h3.svg +0 -0
  97. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h4-narrow.svg +0 -0
  98. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h4.svg +0 -0
  99. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-note.svg +0 -0
  100. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-noveltree-more.svg +0 -0
  101. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_font.svg +0 -0
  102. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_panel.svg +0 -0
  103. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_quote.svg +0 -0
  104. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-case.svg +0 -0
  105. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-preserve.svg +0 -0
  106. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-regex.svg +0 -0
  107. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-word.svg +0 -0
  108. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-bold-md.svg +0 -0
  109. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-bold.svg +0 -0
  110. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-italic-md.svg +0 -0
  111. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-italic.svg +0 -0
  112. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-mark.svg +0 -0
  113. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-strike-md.svg +0 -0
  114. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-strike.svg +0 -0
  115. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-subscript.svg +0 -0
  116. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-superscript.svg +0 -0
  117. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-underline.svg +0 -0
  118. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_toolbar.svg +0 -0
  119. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-down-thick-grey.svg +0 -0
  120. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-forward.svg +0 -0
  121. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-maximise.svg +0 -0
  122. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-minimise.svg +0 -0
  123. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-repeat-grey.svg +0 -0
  124. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_book-grey.svg +0 -0
  125. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_book.svg +0 -0
  126. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_bookmark.svg +0 -0
  127. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_calendar.svg +0 -0
  128. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_cancel-grey.svg +0 -0
  129. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_cancel.svg +0 -0
  130. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chart-bar-grey.svg +0 -0
  131. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-down.svg +0 -0
  132. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-left.svg +0 -0
  133. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-right.svg +0 -0
  134. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-up.svg +0 -0
  135. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_cog.svg +0 -0
  136. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_delete-full.svg +0 -0
  137. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_delete.svg +0 -0
  138. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_directions-full.svg +0 -0
  139. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_document-add.svg +0 -0
  140. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_document-text.svg +0 -0
  141. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_document.svg +0 -0
  142. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_export-grey.svg +0 -0
  143. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_export.svg +0 -0
  144. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_eye.svg +0 -0
  145. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_flag.svg +0 -0
  146. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_folder-open.svg +0 -0
  147. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_folder.svg +0 -0
  148. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_globe-grey.svg +0 -0
  149. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_key.svg +0 -0
  150. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_lightbulb-full.svg +0 -0
  151. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_location.svg +0 -0
  152. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_media-pause-grey.svg +0 -0
  153. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_media-record-outline.svg +0 -0
  154. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_media-record.svg +0 -0
  155. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_minus.svg +0 -0
  156. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_pencil.svg +0 -0
  157. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_pin-outline.svg +0 -0
  158. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_pin.svg +0 -0
  159. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_plus.svg +0 -0
  160. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_puzzle-outline.svg +0 -0
  161. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_puzzle.svg +0 -0
  162. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_refresh-flipped.svg +0 -0
  163. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_refresh.svg +0 -0
  164. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_search-grey.svg +0 -0
  165. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_search.svg +0 -0
  166. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_star.svg +0 -0
  167. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_stopwatch-grey.svg +0 -0
  168. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-dot-menu.svg +0 -0
  169. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-dot-more.svg +0 -0
  170. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-list-grey.svg +0 -0
  171. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-list.svg +0 -0
  172. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_times.svg +0 -0
  173. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_trash.svg +0 -0
  174. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_unfold-hidden.svg +0 -0
  175. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_unfold-visible.svg +0 -0
  176. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_user.svg +0 -0
  177. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_warning-full.svg +0 -0
  178. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/README.md +0 -0
  179. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/icons.conf +0 -0
  180. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_copy.svg +0 -0
  181. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-chapter.svg +0 -0
  182. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-new.svg +0 -0
  183. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-note.svg +0 -0
  184. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-scene.svg +0 -0
  185. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-section.svg +0 -0
  186. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-title.svg +0 -0
  187. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_edit.svg +0 -0
  188. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_import.svg +0 -0
  189. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_input-checked.svg +0 -0
  190. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_input-none.svg +0 -0
  191. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_input-unchecked.svg +0 -0
  192. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-bottom.svg +0 -0
  193. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-left.svg +0 -0
  194. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-right.svg +0 -0
  195. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-top.svg +0 -0
  196. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_search-replace.svg +0 -0
  197. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_size-height.svg +0 -0
  198. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_size-width.svg +0 -0
  199. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h0.svg +0 -0
  200. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h1.svg +0 -0
  201. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h2-narrow.svg +0 -0
  202. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h2.svg +0 -0
  203. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h3-narrow.svg +0 -0
  204. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h3.svg +0 -0
  205. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h4-narrow.svg +0 -0
  206. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h4.svg +0 -0
  207. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-note.svg +0 -0
  208. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-noveltree-more.svg +0 -0
  209. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_font.svg +0 -0
  210. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_panel.svg +0 -0
  211. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_quote.svg +0 -0
  212. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-case.svg +0 -0
  213. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-preserve.svg +0 -0
  214. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-regex.svg +0 -0
  215. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-word.svg +0 -0
  216. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-bold-md.svg +0 -0
  217. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-bold.svg +0 -0
  218. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-italic-md.svg +0 -0
  219. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-italic.svg +0 -0
  220. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-mark.svg +0 -0
  221. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-strike-md.svg +0 -0
  222. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-strike.svg +0 -0
  223. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-subscript.svg +0 -0
  224. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-superscript.svg +0 -0
  225. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-underline.svg +0 -0
  226. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_toolbar.svg +0 -0
  227. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-down-thick-grey.svg +0 -0
  228. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-forward.svg +0 -0
  229. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-maximise.svg +0 -0
  230. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-minimise.svg +0 -0
  231. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-repeat-grey.svg +0 -0
  232. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_book-grey.svg +0 -0
  233. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_book.svg +0 -0
  234. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_bookmark.svg +0 -0
  235. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_calendar.svg +0 -0
  236. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_cancel-grey.svg +0 -0
  237. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_cancel.svg +0 -0
  238. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chart-bar-grey.svg +0 -0
  239. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-down.svg +0 -0
  240. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-left.svg +0 -0
  241. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-right.svg +0 -0
  242. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-up.svg +0 -0
  243. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_cog.svg +0 -0
  244. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_delete-full.svg +0 -0
  245. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_delete.svg +0 -0
  246. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_directions-full.svg +0 -0
  247. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_document-add.svg +0 -0
  248. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_document-text.svg +0 -0
  249. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_document.svg +0 -0
  250. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_export-grey.svg +0 -0
  251. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_export.svg +0 -0
  252. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_eye.svg +0 -0
  253. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_flag.svg +0 -0
  254. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_folder-open.svg +0 -0
  255. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_folder.svg +0 -0
  256. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_globe-grey.svg +0 -0
  257. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_key.svg +0 -0
  258. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_lightbulb-full.svg +0 -0
  259. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_location.svg +0 -0
  260. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_media-pause-grey.svg +0 -0
  261. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_media-record-outline.svg +0 -0
  262. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_media-record.svg +0 -0
  263. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_minus.svg +0 -0
  264. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_pencil.svg +0 -0
  265. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_pin-outline.svg +0 -0
  266. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_pin.svg +0 -0
  267. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_plus.svg +0 -0
  268. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_puzzle-outline.svg +0 -0
  269. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_puzzle.svg +0 -0
  270. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_refresh-flipped.svg +0 -0
  271. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_refresh.svg +0 -0
  272. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_search-grey.svg +0 -0
  273. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_search.svg +0 -0
  274. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_star.svg +0 -0
  275. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_stopwatch-grey.svg +0 -0
  276. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-dot-menu.svg +0 -0
  277. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-dot-more.svg +0 -0
  278. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-list-grey.svg +0 -0
  279. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-list.svg +0 -0
  280. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_times.svg +0 -0
  281. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_trash.svg +0 -0
  282. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_unfold-hidden.svg +0 -0
  283. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_unfold-visible.svg +0 -0
  284. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_user.svg +0 -0
  285. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_warning-full.svg +0 -0
  286. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/x-novelwriter-project.ico +0 -0
  287. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/x-novelwriter-project.svg +0 -0
  288. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/novelwriter-text-dark.svg +0 -0
  289. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/novelwriter-text-light.svg +0 -0
  290. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/welcome-dark.jpg +0 -0
  291. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/welcome-light.jpg +0 -0
  292. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/cyberpunk_night.conf +0 -0
  293. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/default_dark.conf +0 -0
  294. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/default_light.conf +0 -0
  295. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/dracula.conf +0 -0
  296. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/grey_dark.conf +0 -0
  297. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/grey_light.conf +0 -0
  298. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/light_owl.conf +0 -0
  299. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/night_owl.conf +0 -0
  300. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/snazzy.conf +0 -0
  301. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/solarized_dark.conf +0 -0
  302. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/solarized_light.conf +0 -0
  303. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tango.conf +0 -0
  304. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow.conf +0 -0
  305. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night.conf +0 -0
  306. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night_blue.conf +0 -0
  307. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night_bright.conf +0 -0
  308. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night_eighties.conf +0 -0
  309. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/text/credits_en.htm +0 -0
  310. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/text/lipsum.txt +0 -0
  311. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/cyberpunk_night.conf +0 -0
  312. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/default.conf +0 -0
  313. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/default_dark.conf +0 -0
  314. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/default_light.conf +0 -0
  315. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/dracula.conf +0 -0
  316. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/solarized_dark.conf +0 -0
  317. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/solarized_light.conf +0 -0
  318. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/common.py +0 -0
  319. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/coretools.py +0 -0
  320. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/docbuild.py +0 -0
  321. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/document.py +0 -0
  322. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/index.py +0 -0
  323. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/item.py +0 -0
  324. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/itemmodel.py +0 -0
  325. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/options.py +0 -0
  326. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/projectdata.py +0 -0
  327. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/projectxml.py +0 -0
  328. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/sessions.py +0 -0
  329. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/spellcheck.py +0 -0
  330. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/status.py +0 -0
  331. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/storage.py +0 -0
  332. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/tree.py +0 -0
  333. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/about.py +0 -0
  334. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/docmerge.py +0 -0
  335. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/docsplit.py +0 -0
  336. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/editlabel.py +0 -0
  337. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/projectsettings.py +0 -0
  338. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/quotes.py +0 -0
  339. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/wordlist.py +0 -0
  340. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/error.py +0 -0
  341. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/configlayout.py +0 -0
  342. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/eventfilters.py +0 -0
  343. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/modified.py +0 -0
  344. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/pagedsidebar.py +0 -0
  345. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/progressbars.py +0 -0
  346. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/switch.py +0 -0
  347. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/switchbox.py +0 -0
  348. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/versioninfo.py +0 -0
  349. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/toraw.py +0 -0
  350. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/dochighlight.py +0 -0
  351. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/docviewerpanel.py +0 -0
  352. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/editordocument.py +0 -0
  353. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/mainmenu.py +0 -0
  354. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/noveltree.py +0 -0
  355. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/outline.py +0 -0
  356. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/search.py +0 -0
  357. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/sidebar.py +0 -0
  358. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/theme.py +0 -0
  359. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/shared.py +0 -0
  360. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/text/counting.py +0 -0
  361. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/text/patterns.py +0 -0
  362. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/lipsum.py +0 -0
  363. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/manusbuild.py +0 -0
  364. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/manuscript.py +0 -0
  365. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/noveldetails.py +0 -0
  366. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/writingstats.py +0 -0
  367. {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/types.py +0 -0
  368. {novelwriter-2.6rc1 → novelwriter-2.6.1}/pkgutils.py +0 -0
  369. {novelwriter-2.6rc1 → novelwriter-2.6.1}/pyproject.toml +0 -0
  370. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/appimage_launcher.sh +0 -0
  371. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/128x128/apps/novelwriter.png +0 -0
  372. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/128x128/mimetypes/application-x-novelwriter-project.png +0 -0
  373. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/16x16/apps/novelwriter.png +0 -0
  374. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/16x16/mimetypes/application-x-novelwriter-project.png +0 -0
  375. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/24x24/apps/novelwriter.png +0 -0
  376. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/24x24/mimetypes/application-x-novelwriter-project.png +0 -0
  377. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/256x256/apps/novelwriter.png +0 -0
  378. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/256x256/mimetypes/application-x-novelwriter-project.png +0 -0
  379. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/32x32/apps/novelwriter.png +0 -0
  380. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/32x32/mimetypes/application-x-novelwriter-project.png +0 -0
  381. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/48x48/apps/novelwriter.png +0 -0
  382. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/48x48/mimetypes/application-x-novelwriter-project.png +0 -0
  383. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/512x512/apps/novelwriter.png +0 -0
  384. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/512x512/mimetypes/application-x-novelwriter-project.png +0 -0
  385. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/64x64/apps/novelwriter.png +0 -0
  386. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/64x64/mimetypes/application-x-novelwriter-project.png +0 -0
  387. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/scalable/apps/novelwriter.svg +0 -0
  388. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/scalable/mimetypes/application-x-novelwriter-project.svg +0 -0
  389. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/novelwriter.desktop +0 -0
  390. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/novelwriter.png +0 -0
  391. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/x-novelwriter-project.xml +0 -0
  392. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/compat +0 -0
  393. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/control +0 -0
  394. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/copyright +0 -0
  395. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/install +0 -0
  396. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/py3dist-overrides +0 -0
  397. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/rules +0 -0
  398. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/source/format +0 -0
  399. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/description_pypi.md +0 -0
  400. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/description_short.txt +0 -0
  401. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/novelwriter.ico +0 -0
  402. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/novelwriter.svg +0 -0
  403. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/x-novelwriter-project.ico +0 -0
  404. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/x-novelwriter-project.svg +0 -0
  405. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/iss_license.txt +0 -0
  406. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/launchpad_setup.cfg +0 -0
  407. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/App.entitlements +0 -0
  408. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/Info.plist.template +0 -0
  409. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/build.sh +0 -0
  410. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_128x128.png +0 -0
  411. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_128x128@2x.png +0 -0
  412. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_16x16.png +0 -0
  413. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_16x16@2x.png +0 -0
  414. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_256x256.png +0 -0
  415. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_256x256@2x.png +0 -0
  416. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_32x32.png +0 -0
  417. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_32x32@2x.png +0 -0
  418. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_512x512.png +0 -0
  419. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_512x512@2x.png +0 -0
  420. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/make_clean.sh +0 -0
  421. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/make_pip.sh +0 -0
  422. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/make_release.sh +0 -0
  423. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/novelwriter.appdata.xml +0 -0
  424. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/novelwriter_readme.png +0 -0
  425. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/novelwriter_text.png +0 -0
  426. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/signpath_logo.png +0 -0
  427. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/win_setup_embed.iss +0 -0
  428. {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup.cfg +0 -0
@@ -1,5 +1,94 @@
1
1
  # novelWriter Changelog
2
2
 
3
+ ## Version 2.6.1 [2025-02-02]
4
+
5
+ ### Release Notes
6
+
7
+ This is a patch release that fixes an issue with creating new notes from the editor context menu,
8
+ adds an option to turn off the confirmation box that pops up when closing novelWriter, and improves
9
+ the recent project list on the Welcome dialog.
10
+
11
+ A French version of the user guide is now also available when the localisation is set to French,
12
+ and the French, Latin American Spanish, Norwegian, US English, German and Japanese translations of
13
+ the application have been updated.
14
+
15
+ ### Detailed Changelog
16
+
17
+ **Bugfixes**
18
+
19
+ * Fixed an issue where the "Create Note from Tag" would also show up for `@story` references. These
20
+ should not create new novel documents. The same menu entry was also removed for `@mention`
21
+ references, as it is not known what category the would belong to. Issue #2212. PR #2215.
22
+
23
+ **Improvements**
24
+
25
+ * A setting was added to Preferences to disable the dialog box when exiting novelWriter. It is
26
+ available under the "Behaviour" section. Issue #2209. PR#2213.
27
+ * Recent projects on the Welcome dialog box are now tracked using their unique ID as well as their
28
+ path. This means that if a project is moved, it should not show up twice in the list, but the
29
+ path should be updated. Issue #2217. PR #2218.
30
+
31
+ **Documentation**
32
+
33
+ * A French version of the user guide is nov available from the Help menu if the GUi language is set
34
+ to French. The French translation was contributed by @Karduin. It is currently directly added to
35
+ the source, but from 2.7 it will be generated automatically in the same way the English user
36
+ guide is. Discussion #1834. PR #2220.
37
+
38
+ **Internationalisation**
39
+
40
+ * French translations are available up to the 2.6 release. That is, the new exit dialog setting is
41
+ not translated yet. PR #2214.
42
+ * Latin American Spanish, Norwegian, US English, German and Japanese translations are fully
43
+ updated. PR #2214.
44
+
45
+ See the [translation activity stream](https://crowdin.com/project/novelwriter/activity-stream) for
46
+ more details.
47
+
48
+ ----
49
+
50
+ ## Version 2.6 [2025-01-26]
51
+
52
+ ### Release Notes
53
+
54
+ The 2.6 release fixes a few minor issues from the RC 1 pre-release, and updates most translations.
55
+
56
+ See the website for complete [Release Notes](https://novelwriter.io/releases/release_2_6.html).
57
+
58
+ ### Detailed Changelog
59
+
60
+ **Bugfixes**
61
+
62
+ * Fixed a bug in the novel selector dropdown used a few places that would clear the selection if
63
+ the novel list was refreshed. PR #2179.
64
+ * Fixed a bug that would crash the app if the project tree was clicked without any project having
65
+ been loaded. The selection model does not exist prior to a project load. Issue #2173. PR #2181.
66
+ * Replaced a broken link on the dictionary install tool available on Windows. PR #2189.
67
+ * Backported a few code fixes from 2.7 related to freeing memory from closed dialogs and one
68
+ instance of a potentially uninitialised variable. PR #2202.
69
+ * Fixed word wrapping in the item details panel for status and importance labels with very long
70
+ names. PR #2202.
71
+ * Fixed the project tree context menu so that it is not opened when right-clicking on an empty area
72
+ of the tree widget. PR #2202.
73
+
74
+ **Improvements**
75
+
76
+ * Chapter headings are now level 1 headings in all manuscript output formats, not just HTML like
77
+ before. Most applications that post-processes output will assume chapters are level 1.
78
+ Correspondingly, scenes are now level 2 and sections are level 3. Notes headings remain
79
+ unchanged. Issue #2205. PR #2206.
80
+
81
+ **Internationalisation**
82
+
83
+ * German, US English, Italian, Japanese, Norwegian and Polish have been updated in full. Brazilian
84
+ Portuguese and Chinese have been partially updated. PR #2207.
85
+
86
+ **Documentation**
87
+
88
+ * Documentation has been updated with 2.6 features. PR #2210.
89
+
90
+ ----
91
+
3
92
  ## Version 2.6 RC 1 [2025-01-09]
4
93
 
5
94
  ### Release Notes
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: novelWriter
3
- Version: 2.6rc1
3
+ Version: 2.6.1
4
4
  Summary: A markdown-like text editor for planning and writing novels
5
5
  Author-email: Veronica Berglyd Olsen <code@vkbo.net>
6
6
  License: GNU General Public License v3
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: novelWriter
3
- Version: 2.6rc1
3
+ Version: 2.6.1
4
4
  Summary: A markdown-like text editor for planning and writing novels
5
5
  Author-email: Veronica Berglyd Olsen <code@vkbo.net>
6
6
  License: GNU General Public License v3
@@ -21,6 +21,7 @@ novelwriter/guimain.py
21
21
  novelwriter/shared.py
22
22
  novelwriter/types.py
23
23
  novelwriter/assets/manual.pdf
24
+ novelwriter/assets/manual_fr_FR.pdf
24
25
  novelwriter/assets/sample.zip
25
26
  novelwriter/assets/i18n/nw_de_DE.qm
26
27
  novelwriter/assets/i18n/nw_en_US.qm
@@ -47,9 +47,9 @@ __license__ = "GPLv3"
47
47
  __author__ = "Veronica Berglyd Olsen"
48
48
  __maintainer__ = "Veronica Berglyd Olsen"
49
49
  __email__ = "code@vkbo.net"
50
- __version__ = "2.6rc1"
51
- __hexversion__ = "0x020600c1"
52
- __date__ = "2025-01-09"
50
+ __version__ = "2.6.1"
51
+ __hexversion__ = "0x020601f0"
52
+ __date__ = "2025-02-02"
53
53
  __status__ = "Stable"
54
54
  __domain__ = "novelwriter.io"
55
55
 
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Synopsis",
3
3
  "Short Description": "Kurzbeschreibung",
4
+ "Footnotes": "Fußnoten",
4
5
  "Comment": "Kommentar",
5
6
  "Notes": "Notizen",
6
7
  "Tag": "Schlagwort",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Objekte",
14
15
  "Entities": "Organisationen",
15
16
  "Custom": "Benutzerdefiniert",
17
+ "New Page": "Neue Seite",
16
18
  "0": "Null",
17
19
  "1": "Eins",
18
20
  "2": "Zwei",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Synopsis",
3
3
  "Short Description": "Short Description",
4
+ "Footnotes": "Footnotes",
4
5
  "Comment": "Comment",
5
6
  "Notes": "Notes",
6
7
  "Tag": "Tag",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Objects",
14
15
  "Entities": "Entities",
15
16
  "Custom": "Custom",
17
+ "New Page": "New Page",
16
18
  "0": "Zero",
17
19
  "1": "One",
18
20
  "2": "Two",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Sinopsis",
3
3
  "Short Description": "Breve Descripción",
4
+ "Footnotes": "Notas al pie",
4
5
  "Comment": "Comentario",
5
6
  "Notes": "Notas",
6
7
  "Tag": "Etiqueta",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Objetos",
14
15
  "Entities": "Entidades",
15
16
  "Custom": "Otros",
17
+ "New Page": "Nueva Página",
16
18
  "0": "Cero",
17
19
  "1": "Uno",
18
20
  "2": "Dos",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Synopsis",
3
3
  "Short Description": "Description sommaire",
4
+ "Footnotes": "Notes de bas de page",
4
5
  "Comment": "Commentaire",
5
6
  "Notes": "Notes",
6
7
  "Tag": "Étiquette",
@@ -13,7 +14,8 @@
13
14
  "Objects": "Objets",
14
15
  "Entities": "Entités",
15
16
  "Custom": "Personnalisé",
16
- "0": "Zero",
17
+ "New Page": "Nouvelle page",
18
+ "0": "Zéro",
17
19
  "1": "Un",
18
20
  "2": "Deux",
19
21
  "3": "Trois",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Sinossi",
3
3
  "Short Description": "Breve descrizione",
4
+ "Footnotes": "Note a piè pagina",
4
5
  "Comment": "Commento",
5
6
  "Notes": "Note",
6
7
  "Tag": "Etichetta",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Oggetti",
14
15
  "Entities": "Enti",
15
16
  "Custom": "Personalizzato",
17
+ "New Page": "Nuova pagina",
16
18
  "0": "Zero",
17
19
  "1": "Uno",
18
20
  "2": "Due",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "あらすじ",
3
3
  "Short Description": "短い説明",
4
+ "Footnotes": "脚注",
4
5
  "Comment": "コメント ",
5
6
  "Notes": "ノート",
6
7
  "Tag": "タグ",
@@ -13,6 +14,7 @@
13
14
  "Objects": "オブジェクト",
14
15
  "Entities": "エンティティ",
15
16
  "Custom": "カスタム",
17
+ "New Page": "新規ページ",
16
18
  "0": "零",
17
19
  "1": "一",
18
20
  "2": "二",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Sammendrag",
3
3
  "Short Description": "Kort beskrivelse",
4
+ "Footnotes": "Fotnoter",
4
5
  "Comment": "Kommentar",
5
6
  "Notes": "Notat",
6
7
  "Tag": "Knagg",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Objekter",
14
15
  "Entities": "Enheter",
15
16
  "Custom": "Annet",
17
+ "New Page": "Ny side",
16
18
  "0": "null",
17
19
  "1": "én",
18
20
  "2": "to",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Synopsis",
3
3
  "Short Description": "Korte beschrijving",
4
+ "Footnotes": "Voetnoten",
4
5
  "Comment": "Opmerking",
5
6
  "Notes": "Notities",
6
7
  "Tag": "Label",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Objecten",
14
15
  "Entities": "Entiteiten",
15
16
  "Custom": "Aangepast",
17
+ "New Page": "Nieuwe pagina",
16
18
  "0": "nul",
17
19
  "1": "één",
18
20
  "2": "twee",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Streszczenie",
3
3
  "Short Description": "Krótki opis",
4
+ "Footnotes": "Przypisy",
4
5
  "Comment": "Komentarz",
5
6
  "Notes": "Notatki",
6
7
  "Tag": "Znacznik",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Obiekty",
14
15
  "Entities": "Podmioty",
15
16
  "Custom": "Różne",
17
+ "New Page": "Nowa strona",
16
18
  "0": "zero",
17
19
  "1": "pierwszy",
18
20
  "2": "drugi",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "Sinopse",
3
3
  "Short Description": "Descrição breve",
4
+ "Footnotes": "Notas de rodapé",
4
5
  "Comment": "Comentário",
5
6
  "Notes": "Notas",
6
7
  "Tag": "Etiqueta",
@@ -13,6 +14,7 @@
13
14
  "Objects": "Objetos",
14
15
  "Entities": "Entidades",
15
16
  "Custom": "Outros",
17
+ "New Page": "Nova página",
16
18
  "0": "Zero",
17
19
  "1": "Um",
18
20
  "2": "Dois",
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "Synopsis": "概要",
3
3
  "Short Description": "简短描述",
4
+ "Footnotes": "注释",
4
5
  "Comment": "注释",
5
6
  "Notes": "笔记",
6
7
  "Tag": "标签",
@@ -13,6 +14,7 @@
13
14
  "Objects": "物品",
14
15
  "Entities": "条目",
15
16
  "Custom": "自定义",
17
+ "New Page": "新建页面",
16
18
  "0": "零",
17
19
  "1": "一",
18
20
  "2": "二",
@@ -32,6 +32,7 @@ import sys
32
32
  from datetime import datetime
33
33
  from pathlib import Path
34
34
  from time import time
35
+ from typing import TYPE_CHECKING
35
36
 
36
37
  from PyQt5.QtCore import (
37
38
  PYQT_VERSION, PYQT_VERSION_STR, QT_VERSION, QT_VERSION_STR, QLibraryInfo,
@@ -47,6 +48,9 @@ from novelwriter.common import (
47
48
  from novelwriter.constants import nwFiles, nwUnicode
48
49
  from novelwriter.error import formatException, logException
49
50
 
51
+ if TYPE_CHECKING: # pragma: no cover
52
+ from novelwriter.core.projectdata import NWProjectData
53
+
50
54
  logger = logging.getLogger(__name__)
51
55
 
52
56
 
@@ -101,8 +105,11 @@ class Config:
101
105
  self._qtTrans = {}
102
106
 
103
107
  # PDF Manual
104
- pdfDocs = self._appPath / "assets" / "manual.pdf"
105
- self.pdfDocs = pdfDocs if pdfDocs.is_file() else None
108
+ self._manuals: dict[str, Path] = {}
109
+ if (assets := self._appPath / "assets").is_dir():
110
+ for item in assets.iterdir():
111
+ if item.is_file() and item.stem.startswith("manual") and item.suffix == ".pdf":
112
+ self._manuals[item.stem] = item
106
113
 
107
114
  # User Settings
108
115
  # =============
@@ -112,7 +119,7 @@ class Config:
112
119
 
113
120
  # General GUI Settings
114
121
  self.guiLocale = self._qLocale.name()
115
- self.guiTheme = "default" # GUI theme
122
+ self.guiTheme = "default_light" # GUI theme
116
123
  self.guiSyntax = "default_light" # Syntax theme
117
124
  self.guiFont = QFont() # Main GUI font
118
125
  self.guiScale = 1.0 # Set automatically by Theme class
@@ -135,6 +142,7 @@ class Config:
135
142
  self.emphLabels = True # Add emphasis to H1 and H2 item labels
136
143
  self.backupOnClose = False # Flag for running automatic backups
137
144
  self.askBeforeBackup = True # Flag for asking before running automatic backup
145
+ self.askBeforeExit = True # Flag for asking before exiting the app
138
146
 
139
147
  # Text Editor Settings
140
148
  self.textFont = QFont() # Editor font
@@ -257,6 +265,10 @@ class Config:
257
265
  def hasError(self) -> bool:
258
266
  return self._hasError
259
267
 
268
+ @property
269
+ def pdfDocs(self) -> Path | None:
270
+ return self._manuals.get(f"manual_{self.locale.name()}", self._manuals.get("manual"))
271
+
260
272
  @property
261
273
  def locale(self) -> QLocale:
262
274
  return self._dLocale
@@ -628,6 +640,7 @@ class Config:
628
640
  self._backupPath = conf.rdPath(sec, "backuppath", self._backupPath)
629
641
  self.backupOnClose = conf.rdBool(sec, "backuponclose", self.backupOnClose)
630
642
  self.askBeforeBackup = conf.rdBool(sec, "askbeforebackup", self.askBeforeBackup)
643
+ self.askBeforeExit = conf.rdBool(sec, "askbeforeexit", self.askBeforeExit)
631
644
 
632
645
  # Editor
633
646
  sec = "Editor"
@@ -739,6 +752,7 @@ class Config:
739
752
  "backuppath": str(self._backupPath),
740
753
  "backuponclose": str(self.backupOnClose),
741
754
  "askbeforebackup": str(self.askBeforeBackup),
755
+ "askbeforeexit": str(self.askBeforeExit),
742
756
  }
743
757
 
744
758
  conf["Editor"] = {
@@ -842,29 +856,30 @@ class RecentProjects:
842
856
 
843
857
  def __init__(self, config: Config) -> None:
844
858
  self._conf = config
845
- self._data = {}
859
+ self._data: dict[str, dict[str, str | int]] = {}
860
+ self._map: dict[str, str] = {}
846
861
  return
847
862
 
848
863
  def loadCache(self) -> bool:
849
864
  """Load the cache file for recent projects."""
850
865
  self._data = {}
851
-
866
+ self._map = {}
852
867
  cacheFile = self._conf.dataPath(nwFiles.RECENT_FILE)
853
868
  if cacheFile.is_file():
854
869
  try:
855
870
  with open(cacheFile, mode="r", encoding="utf-8") as inFile:
856
871
  data = json.load(inFile)
857
872
  for path, entry in data.items():
858
- self._data[path] = {
859
- "title": entry.get("title", ""),
860
- "words": entry.get("words", 0),
861
- "time": entry.get("time", 0),
862
- }
873
+ puuid = str(entry.get("uuid", ""))
874
+ title = str(entry.get("title", ""))
875
+ words = checkInt(entry.get("words", 0), 0)
876
+ saved = checkInt(entry.get("time", 0), 0)
877
+ if path and title:
878
+ self._setEntry(puuid, path, title, words, saved)
863
879
  except Exception:
864
880
  logger.error("Could not load recent project cache")
865
881
  logException()
866
882
  return False
867
-
868
883
  return True
869
884
 
870
885
  def saveCache(self) -> bool:
@@ -879,7 +894,6 @@ class RecentProjects:
879
894
  logger.error("Could not save recent project cache")
880
895
  logException()
881
896
  return False
882
-
883
897
  return True
884
898
 
885
899
  def listEntries(self) -> list[tuple[str, str, int, int]]:
@@ -889,14 +903,15 @@ class RecentProjects:
889
903
  for k, e in self._data.items()
890
904
  ]
891
905
 
892
- def update(self, path: str | Path, title: str, words: int, saved: float | int) -> None:
906
+ def update(self, path: str | Path, data: NWProjectData, saved: float | int) -> None:
893
907
  """Add or update recent cache information on a given project."""
894
- self._data[str(path)] = {
895
- "title": title,
896
- "words": int(words),
897
- "time": int(saved),
898
- }
899
- self.saveCache()
908
+ try:
909
+ if (remove := self._map.get(data.uuid)) and (remove != str(path)):
910
+ self.remove(remove)
911
+ self._setEntry(data.uuid, str(path), data.name, sum(data.currCounts), int(saved))
912
+ self.saveCache()
913
+ except Exception:
914
+ pass
900
915
  return
901
916
 
902
917
  def remove(self, path: str | Path) -> None:
@@ -906,6 +921,13 @@ class RecentProjects:
906
921
  self.saveCache()
907
922
  return
908
923
 
924
+ def _setEntry(self, puuid: str, path: str, title: str, words: int, saved: int) -> None:
925
+ """Set an entry in the recent projects record."""
926
+ self._data[path] = {"uuid": puuid, "title": title, "words": words, "time": saved}
927
+ if puuid:
928
+ self._map[puuid] = path
929
+ return
930
+
909
931
 
910
932
  class RecentPaths:
911
933
 
@@ -173,6 +173,10 @@ class nwKeyWords:
173
173
  TAG_KEY, POV_KEY, FOCUS_KEY, CHAR_KEY, PLOT_KEY, TIME_KEY, WORLD_KEY,
174
174
  OBJECT_KEY, ENTITY_KEY, CUSTOM_KEY, STORY_KEY, MENTION_KEY,
175
175
  ]
176
+ CAN_CREATE = [
177
+ POV_KEY, FOCUS_KEY, CHAR_KEY, PLOT_KEY, TIME_KEY, WORLD_KEY,
178
+ OBJECT_KEY, ENTITY_KEY, CUSTOM_KEY,
179
+ ]
176
180
 
177
181
  # Set of Valid Keys
178
182
  VALID_KEYS = set(ALL_KEYS)
@@ -159,6 +159,13 @@ SETTINGS_LABELS = {
159
159
  "format.indentFirstPar": QT_TRANSLATE_NOOP("Builds", "Indent First Paragraph"),
160
160
 
161
161
  "format.grpMargins": QT_TRANSLATE_NOOP("Builds", "Text Margins"),
162
+ "format.titleMargin": QT_TRANSLATE_NOOP("Builds", "Title and Partition"),
163
+ "format.h1Margin": QT_TRANSLATE_NOOP("Builds", "Heading 1 and Chapter"),
164
+ "format.h2Margin": QT_TRANSLATE_NOOP("Builds", "Heading 2 and Scene"),
165
+ "format.h3Margin": QT_TRANSLATE_NOOP("Builds", "Heading 3 and Section"),
166
+ "format.h4Margin": QT_TRANSLATE_NOOP("Builds", "Heading 4"),
167
+ "format.textMargin": QT_TRANSLATE_NOOP("Builds", "Text Paragraph"),
168
+ "format.sepMargin": QT_TRANSLATE_NOOP("Builds", "Scene Separator"),
162
169
 
163
170
  "format.grpPage": QT_TRANSLATE_NOOP("Builds", "Page Layout"),
164
171
  "format.pageUnit": QT_TRANSLATE_NOOP("Builds", "Unit"),
@@ -353,9 +353,7 @@ class NWProject:
353
353
 
354
354
  # Update recent projects
355
355
  if storePath := self._storage.storagePath:
356
- CONFIG.recentProjects.update(
357
- storePath, self._data.name, sum(self._data.initCounts), time()
358
- )
356
+ CONFIG.recentProjects.update(storePath, self._data, time())
359
357
 
360
358
  # Check the project tree consistency
361
359
  # This also handles any orphaned files found
@@ -421,9 +419,7 @@ class NWProject:
421
419
 
422
420
  # Update recent projects
423
421
  if storagePath := self._storage.storagePath:
424
- CONFIG.recentProjects.update(
425
- storagePath, self._data.name, sum(self._data.currCounts), saveTime
426
- )
422
+ CONFIG.recentProjects.update(storagePath, self._data, saveTime)
427
423
 
428
424
  SHARED.newStatusMessage(self.tr("Saved Project: {0}").format(self._data.name))
429
425
  self.setProjectChanged(False)
@@ -271,10 +271,10 @@ class GuiPreferences(NDialog):
271
271
  self.tr("Include project notes in status bar word count"), self.incNotesWCount
272
272
  )
273
273
 
274
- # Auto Save
274
+ # Behaviour
275
275
  # =========
276
276
 
277
- title = self.tr("Auto Save")
277
+ title = self.tr("Behaviour")
278
278
  section += 1
279
279
  self.sidebar.addButton(title, section)
280
280
  self.mainForm.addGroupLabel(title, section)
@@ -301,6 +301,14 @@ class GuiPreferences(NDialog):
301
301
  self.tr("How often the project is automatically saved."), unit=self.tr("seconds")
302
302
  )
303
303
 
304
+ # Ask before exiting novelWriter
305
+ self.askBeforeExit = NSwitch(self)
306
+ self.askBeforeExit.setChecked(CONFIG.askBeforeExit)
307
+ self.mainForm.addRow(
308
+ self.tr("Ask before exiting novelWriter"), self.askBeforeExit,
309
+ self.tr("Only applies when a project is open.")
310
+ )
311
+
304
312
  # Project Backup
305
313
  # ==============
306
314
 
@@ -927,9 +935,10 @@ class GuiPreferences(NDialog):
927
935
  CONFIG.incNotesWCount = self.incNotesWCount.isChecked()
928
936
  CONFIG.setTextFont(self._textFont)
929
937
 
930
- # Auto Save
931
- CONFIG.autoSaveDoc = self.autoSaveDoc.value()
932
- CONFIG.autoSaveProj = self.autoSaveProj.value()
938
+ # Behaviour
939
+ CONFIG.autoSaveDoc = self.autoSaveDoc.value()
940
+ CONFIG.autoSaveProj = self.autoSaveProj.value()
941
+ CONFIG.askBeforeExit = self.askBeforeExit.isChecked()
933
942
 
934
943
  # Project Backup
935
944
  CONFIG.setBackupPath(self.backupPath)
@@ -68,13 +68,6 @@ class nwComment(Enum):
68
68
  STORY = 7
69
69
 
70
70
 
71
- class nwTrinary(Enum):
72
-
73
- NEGATIVE = -1
74
- NEUTRAL = 0
75
- POSITIVE = 1
76
-
77
-
78
71
  class nwChange(Enum):
79
72
 
80
73
  CREATE = 0
@@ -90,12 +90,13 @@ class NovelSelector(QComboBox):
90
90
  @pyqtSlot()
91
91
  def refreshNovelList(self) -> None:
92
92
  """Rebuild the list of novel items."""
93
+ cHandle = self.currentData()
94
+
93
95
  self._blockSignal = True
94
96
  self._firstHandle = None
95
97
  self.clear()
96
98
 
97
99
  icon = SHARED.theme.getIcon(nwLabels.CLASS_ICON[nwItemClass.NOVEL])
98
- handle = self.currentData()
99
100
  for tHandle, nwItem in SHARED.project.tree.iterRoots(nwItemClass.NOVEL):
100
101
  if self._listFormat:
101
102
  name = self._listFormat.format(nwItem.itemName)
@@ -110,7 +111,7 @@ class NovelSelector(QComboBox):
110
111
  self.insertSeparator(self.count())
111
112
  self.addItem(icon, self.tr("All Novel Folders"), "")
112
113
 
113
- self.setHandle(handle)
114
+ self.setHandle(cHandle)
114
115
  self.setEnabled(self.count() > 1)
115
116
  self._blockSignal = False
116
117