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.
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/CHANGELOG.md +89 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/PKG-INFO +1 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/PKG-INFO +1 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/SOURCES.txt +1 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/__init__.py +3 -3
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_de_DE.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_en_US.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_es_419.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_fr_FR.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_it_IT.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_ja_JP.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_nb_NO.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_nl_NL.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_pl_PL.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_pt_BR.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_ru_RU.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/nw_zh_CN.qm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_de_DE.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_en_US.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_es_419.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_fr_FR.json +3 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_it_IT.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_ja_JP.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_nb_NO.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_nl_NL.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_pl_PL.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_pt_BR.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_zh_CN.json +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/manual.pdf +0 -0
- novelwriter-2.6.1/novelwriter/assets/manual_fr_FR.pdf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/sample.zip +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/config.py +41 -19
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/constants.py +4 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/buildsettings.py +7 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/project.py +2 -6
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/preferences.py +14 -5
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/enum.py +0 -7
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/novelselector.py +3 -2
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/statusled.py +5 -6
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/shared.py +12 -11
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/todocx.py +1 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/tohtml.py +30 -27
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/tokenizer.py +14 -8
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/tomarkdown.py +3 -2
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/toodt.py +1 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/toqdoc.py +2 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/doceditor.py +35 -19
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/docviewer.py +1 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/itemdetails.py +1 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/projtree.py +15 -18
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/statusbar.py +6 -7
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/guimain.py +1 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/dictionaries.py +2 -2
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/manussettings.py +8 -8
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/welcome.py +1 -1
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/CREDITS.md +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/LICENSE.md +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/MANIFEST.in +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/README.md +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/dependency_links.txt +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/entry_points.txt +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/requires.txt +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelWriter.egg-info/top_level.txt +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_en_GB.json +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_nn_NO.json +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/i18n/project_ru_RU.json +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/none.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/novelwriter.ico +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/novelwriter.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/README.md +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/icons.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_copy.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-chapter.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-new.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-note.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-scene.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-section.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_document-title.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_edit.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_import.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_input-checked.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_input-none.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_input-unchecked.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-bottom.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-left.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-right.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_margin-top.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_search-replace.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_size-height.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/mixed_size-width.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h0.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h1.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h2-narrow.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h2.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h3-narrow.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h3.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h4-narrow.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-h4.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-note.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_deco-noveltree-more.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_font.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_panel.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_quote.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-case.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-preserve.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-regex.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_search-word.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-bold-md.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-bold.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-italic-md.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-italic.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-mark.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-strike-md.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-strike.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-subscript.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-superscript.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_tb-underline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/nw_toolbar.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-down-thick-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-forward.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-maximise.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-minimise.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_arrow-repeat-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_book-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_book.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_bookmark.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_calendar.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_cancel-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_cancel.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chart-bar-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-down.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-left.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-right.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_chevron-up.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_cog.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_delete-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_delete.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_directions-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_document-add.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_document-text.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_document.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_export-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_export.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_eye.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_flag.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_folder-open.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_folder.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_globe-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_key.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_lightbulb-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_location.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_media-pause-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_media-record-outline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_media-record.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_minus.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_pencil.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_pin-outline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_pin.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_plus.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_puzzle-outline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_puzzle.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_refresh-flipped.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_refresh.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_search-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_search.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_star.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_stopwatch-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-dot-menu.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-dot-more.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-list-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_th-list.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_times.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_trash.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_unfold-hidden.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_unfold-visible.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_user.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_dark/typ_warning-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/README.md +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/icons.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_copy.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-chapter.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-new.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-note.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-scene.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-section.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_document-title.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_edit.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_import.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_input-checked.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_input-none.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_input-unchecked.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-bottom.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-left.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-right.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_margin-top.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_search-replace.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_size-height.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/mixed_size-width.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h0.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h1.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h2-narrow.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h2.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h3-narrow.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h3.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h4-narrow.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-h4.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-note.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_deco-noveltree-more.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_font.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_panel.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_quote.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-case.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-preserve.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-regex.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_search-word.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-bold-md.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-bold.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-italic-md.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-italic.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-mark.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-strike-md.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-strike.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-subscript.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-superscript.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_tb-underline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/nw_toolbar.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-down-thick-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-forward.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-maximise.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-minimise.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_arrow-repeat-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_book-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_book.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_bookmark.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_calendar.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_cancel-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_cancel.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chart-bar-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-down.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-left.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-right.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_chevron-up.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_cog.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_delete-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_delete.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_directions-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_document-add.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_document-text.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_document.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_export-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_export.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_eye.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_flag.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_folder-open.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_folder.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_globe-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_key.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_lightbulb-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_location.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_media-pause-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_media-record-outline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_media-record.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_minus.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_pencil.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_pin-outline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_pin.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_plus.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_puzzle-outline.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_puzzle.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_refresh-flipped.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_refresh.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_search-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_search.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_star.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_stopwatch-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-dot-menu.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-dot-more.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-list-grey.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_th-list.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_times.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_trash.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_unfold-hidden.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_unfold-visible.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_user.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/typicons_light/typ_warning-full.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/x-novelwriter-project.ico +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/icons/x-novelwriter-project.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/novelwriter-text-dark.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/novelwriter-text-light.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/welcome-dark.jpg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/images/welcome-light.jpg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/cyberpunk_night.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/default_dark.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/default_light.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/dracula.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/grey_dark.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/grey_light.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/light_owl.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/night_owl.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/snazzy.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/solarized_dark.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/solarized_light.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tango.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night_blue.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night_bright.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/syntax/tomorrow_night_eighties.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/text/credits_en.htm +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/text/lipsum.txt +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/cyberpunk_night.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/default.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/default_dark.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/default_light.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/dracula.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/solarized_dark.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/assets/themes/solarized_light.conf +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/common.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/coretools.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/docbuild.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/document.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/index.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/item.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/itemmodel.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/options.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/projectdata.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/projectxml.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/sessions.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/spellcheck.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/status.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/storage.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/core/tree.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/about.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/docmerge.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/docsplit.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/editlabel.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/projectsettings.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/quotes.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/dialogs/wordlist.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/error.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/configlayout.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/eventfilters.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/modified.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/pagedsidebar.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/progressbars.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/switch.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/switchbox.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/extensions/versioninfo.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/formats/toraw.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/dochighlight.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/docviewerpanel.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/editordocument.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/mainmenu.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/noveltree.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/outline.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/search.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/sidebar.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/gui/theme.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/shared.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/text/counting.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/text/patterns.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/lipsum.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/manusbuild.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/manuscript.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/noveldetails.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/tools/writingstats.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/novelwriter/types.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/pkgutils.py +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/pyproject.toml +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/appimage_launcher.sh +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/128x128/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/128x128/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/16x16/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/16x16/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/24x24/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/24x24/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/256x256/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/256x256/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/32x32/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/32x32/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/48x48/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/48x48/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/512x512/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/512x512/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/64x64/apps/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/64x64/mimetypes/application-x-novelwriter-project.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/scalable/apps/novelwriter.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/hicolor/scalable/mimetypes/application-x-novelwriter-project.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/novelwriter.desktop +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/novelwriter.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/data/x-novelwriter-project.xml +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/compat +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/control +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/copyright +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/install +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/py3dist-overrides +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/rules +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/debian/source/format +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/description_pypi.md +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/description_short.txt +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/novelwriter.ico +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/novelwriter.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/x-novelwriter-project.ico +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/icons/x-novelwriter-project.svg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/iss_license.txt +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/launchpad_setup.cfg +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/App.entitlements +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/Info.plist.template +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/build.sh +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_128x128.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_128x128@2x.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_16x16.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_16x16@2x.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_256x256.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_256x256@2x.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_32x32.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_32x32@2x.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_512x512.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/macos/novelwriter.iconset/icon_512x512@2x.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/make_clean.sh +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/make_pip.sh +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/make_release.sh +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/novelwriter.appdata.xml +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/novelwriter_readme.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/novelwriter_text.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/signpath_logo.png +0 -0
- {novelwriter-2.6rc1 → novelwriter-2.6.1}/setup/win_setup_embed.iss +0 -0
- {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
|
@@ -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.
|
51
|
-
__hexversion__ = "
|
52
|
-
__date__ = "2025-
|
50
|
+
__version__ = "2.6.1"
|
51
|
+
__hexversion__ = "0x020601f0"
|
52
|
+
__date__ = "2025-02-02"
|
53
53
|
__status__ = "Stable"
|
54
54
|
__domain__ = "novelwriter.io"
|
55
55
|
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
@@ -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
|
-
"
|
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": "二",
|
Binary file
|
Binary file
|
Binary file
|
@@ -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
|
-
|
105
|
-
self.
|
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 = "
|
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
|
-
|
859
|
-
|
860
|
-
|
861
|
-
|
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,
|
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
|
-
|
895
|
-
|
896
|
-
|
897
|
-
|
898
|
-
|
899
|
-
|
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
|
-
#
|
274
|
+
# Behaviour
|
275
275
|
# =========
|
276
276
|
|
277
|
-
title = self.tr("
|
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
|
-
#
|
931
|
-
CONFIG.autoSaveDoc
|
932
|
-
CONFIG.autoSaveProj
|
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)
|
@@ -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(
|
114
|
+
self.setHandle(cHandle)
|
114
115
|
self.setEnabled(self.count() > 1)
|
115
116
|
self._blockSignal = False
|
116
117
|
|