Compare commits

..

2994 Commits
v2.5.3 ... main

Author SHA1 Message Date
B.D. Murphy
f2cf2c4396 fix: rename all novelwriter icons/assets to umbraedit
Some checks are pending
Syntax / Linting and Type Checking (push) Waiting to run
Tests / Linux Python 3.11 (push) Waiting to run
Tests / Linux Python 3.12 (push) Waiting to run
Tests / Linux Python 3.13 (push) Waiting to run
Tests / Linux Python 3.14 (push) Waiting to run
Tests / Linux Python 3.15 (push) Waiting to run
Tests / MacOS Python 3.14 (push) Waiting to run
Tests / Windows Python 3.14 (push) Waiting to run
Tests / PR Coverage Report (push) Blocked by required conditions
Tests / Action Coverage Report (push) Blocked by required conditions
Tests / Ubuntu 24.04 & Sys Packages (push) Waiting to run
Tests / Fedora 44 & Sys Packages (push) Waiting to run
- Rename novelwriter.iconset to umbraedit.iconset with all icon sizes
- Rename setup/icons/novelwriter.* to umbraedit.*
- Rename setup/data/hicolor/ novelwriter icons to umbraedit
- Rename setup/data/novelwriter.* to umbraedit.*
- Rename docs/source/_static/novelwriter-* to umbraedit-*
- Rename setup/flatpak/io.novelwriter.novelwriter.yml to io.umbraedit.umbraedit.yml
- Rename setup/data/novelwriter.desktop to umbraedit.desktop
- Update setup/macos/build.sh to reference umbraedit.iconset
- Rebuild macOS DMG with correct UmbraEdit icon
2026-11-07 04:07:09 -08:00
B.D. Murphy
79a9ab995d fix: rename novelwriter.iconset to umbraedit.iconset, rebuild macOS DMG with correct icon
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
2026-11-07 03:58:14 -08:00
B.D. Murphy
f6aabb7c5d fix: handle apt-get update failure gracefully
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- If apt-get update fails, show clear error message telling user
  to fix their package repositories first
- Exit with error instead of silently continuing with broken deps
- Only fail on critical apt-get update failure, not individual
  package install failures (those are warnings)
2026-11-06 17:57:57 -08:00
B.D. Murphy
b2782daece fix: make build-linux.sh resilient to apt-get update failures
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
2026-11-06 17:07:08 -08:00
B.D. Murphy
e7fdf05b00 feat: add build-linux.sh for Linux AMD64 packaging
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Add build-linux.sh script for end-to-end Linux builds
- Add build-linux.sh to MANIFEST.in for source distribution inclusion
- Fix all build scripts to handle sys.path when run directly
2026-11-06 16:23:26 -08:00
B.D. Murphy
02c532234c fix: add sys.path fix to build scripts for direct execution
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
2026-11-06 12:25:43 -08:00
B.D. Murphy
6eb6241044 fix: fix macOS build - icon path, version parsing, i18n imports
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Fix setup/macos/build.sh: icon path uses ./novelwriter.iconset relative path
- Fix umbraedit/__init__.py: __version__ now clean without inline comments
- Fix utils/assets.py: datetime.UTC -> datetime.timezone as UTC for py3.9 compat
- Fix utils/common.py: tomllib fallback to tomli for py3.9 compat
- Fix utils/docs.py: tomllib fallback to tomli for py3.9 compat
2026-11-06 08:39:54 -08:00
B.D. Murphy
af205b4877 resolve: fix README.md merge conflict
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
2026-11-06 08:29:14 -08:00
B.D. Murphy
a04eaaa779 house: add multi-platform build infrastructure
- Add MANIFEST.in to include utils/ and setup/ in source distributions
- Add utils/build_all.py - unified multi-platform build orchestrator
  (Linux amd64/arm64, macOS amd64/arm64, Windows amd64/arm64)
- Add BUILD_LINUX.md - Linux build guide with .deb and AppImage options
- Add RELEASE.md - complete release process with versioning (YYYY/MM.####),
  platform support matrix, and release workflow
- Fix .gitignore to exclude UmbraEdit_Projects/, Inner_Demon_1.2a.docm,
  UmbraEdit_deb_Build_Script.txt, requirements.txt, .DS_Store
- All source distributions now include build scripts for Linux packages
2026-11-06 08:03:35 -08:00
B.D. Murphy
d09e04e483 house: add Linux AMD64 build guide
- Add BUILD_LINUX.md with instructions for building .deb and AppImage
  packages on Linux AMD64 from the source distribution
- Document prerequisites, build steps, and usage for each package type
- Include source distribution (sdist) and pure Python wheel in dist/
2026-11-06 07:46:57 -08:00
B.D. Murphy
f421136f75 house: update website URLs to umbratools.com/umbraedit
- Update all website references from umbraedit.io to umbratools.com/umbraedit
- Update documentation URLs from docs.umbraedit.io to umbratools.com/umbraedit/docs
- Update release URLs from releases.umbraedit.io to umbratools.com/umbraedit/releases
- Update __domain__ to umbratools.com for Qt organization domain
- Update README first image to reference UmbraEdit icon SVG
- Update README link text from umbraedit.io to UmbraEdit
- Update test versioninfo expected text
2026-11-06 07:26:55 -08:00
f78f76a679 Update README.md
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
Aligning to umbratools, more changes will be made.
2026-11-06 14:41:26 +00:00
B.D. Murphy
cd3bf1b97a feat: add Save Project As (Ctrl+Alt+S) to Project menu
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Add Save Project As menu item under Project menu with Ctrl+Alt+S shortcut
- SaveProjectAs dialog prompts for destination folder and new project name
- Copies all document files, metadata, and project XML to new location
- New location added to recent projects as a separate entry
- Original project location remains in recent projects unchanged
- Generate new UUID for the copied project
2026-11-05 11:40:38 -08:00
B.D. Murphy
e4ac46eb19 feat: establish YYYY/MM versioning and add NovelWriter attribution
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Update version to 2026.11.0001 (YYYY/MM.#### development format)
- Add NovelWriter attribution: UmbraEdit is based on novelWrite 2026.02
  by Veronica Berglyd Olsen (novelWriter.io), GPL v3.0
- Update CHANGELOG.md with new version format and development entry
- Add B.D. Murphy to CREDITS.md and credits_en.htm
- Update all copyright headers to use 'novelWriter contributors' format
- Add B.D. Murphy copyright to new files (fromdocx.py, SVGs, docs)
- Tag release 2026.11 and development 2026.11.0001
2026-11-05 10:58:28 -08:00
B.D. Murphy
0d825f5c72 fix: import chapter text content into scene documents
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Fix _addScene to write chapter text content as scene documents inside
  chapter folders instead of just creating placeholder notes
- Split chapter text at >>> section breaks into separate scene documents
- All chapter content now appears in UmbraEdit documents instead of
  being lost
2026-11-05 09:40:48 -08:00
B.D. Murphy
84e87cc2cd fix: add image notes to DOCX/DOCM import
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Add image notes for all images found in the Word document
- Images are stored with their binary data and MIME type in the notes
2026-11-05 09:26:09 -08:00
B.D. Murphy
096cb08e98 feat: add Word DOCX/DOCM import capability
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Add umbraedit/formats/fromdocx.py: Parses Word .docm/.docx files,
  extracts text content with styles, detects non-translatable items
  (images, headers, footers, comments, footnotes) and captures them
  as notes.
- Add DocxImporter class to umbraedit/core/coretools.py: Creates a new
  UmbraEdit project from parsed Word document data, organizing content
  into chapter folders and scene documents, with non-translatable items
  stored as notes in an Import Notes folder.
- Add B.D. Murphy 2026 copyright and change comments to all modified files.
2026-11-05 09:25:26 -08:00
B.D. Murphy
1728fc31ed docs: add B.D. Murphy 2026 copyright and change comments to modified files
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Confirm original copyright (Veronica Berglyd Olsen) preserved in all modified files
- Add Additional Copyright (C) 2026 B.D. Murphy to:
  - umbraedit/__init__.py (version/date/hexversion changes)
  - umbraedit/splash.py (SPLASH_IMG path change)
  - umbraedit/guimain.py (app icon change to UmbraEdit.jpg)
  - umbraedit/gui/theme.py (icon resolution change)
  - umbraedit/assets/images/umbraedit-text-light.svg (replaced novelWriter text)
  - umbraedit/assets/images/umbraedit-text-dark.svg (replaced novelWriter text)
  - CHANGELOG.md (1.0.0 release entry)
  - .gitignore (exclude accidentally committed files)
  - UMBRAEDIT.md, UMBRAEDIT_UPDATE_PLAN.md, UmbraEdit.command (new files)
- Add inline change comments describing each modification
2026-11-05 09:07:29 -08:00
B.D. Murphy
162428d8cb chore: replace novelWriter branding with UmbraEdit
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Replace novelWriter text logo SVGs with UmbraEdit text (light/dark themes)
- Use UmbraEdit.jpg as app icon (window/dock/tray/welcome screen)
- Copy UmbraEdit.jpg to assets/icons/ for icon system resolution
- All branding now shows UmbraEdit instead of novelWriter
2026-11-05 09:01:22 -08:00
B.D. Murphy
24408b9440 chore: splash screen source and UmbraEdit.jpg icon
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Copy splash screen to NW_Splash.png in root for separate modification
- Update splash.py to reference NW_Splash.png in project root
- Use UmbraEdit.jpg as-is for application window/dock icon
- UmbraEdit.jpg left unmodified
2026-11-05 07:57:20 -08:00
B.D. Murphy
641a402daa chore: Umbra brand transition - splash, icon, version, changelog
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Update version to 1.0.0, date to 2026-11-05, hexversion to 0x01000000
- Create new Umbra-branded splash screen (book + audio wave motif)
- Create new Umbra-branded app icon (umbraedit.png)
- Update guimain.py to load umbraedit.png icon with svg fallback
- Update CHANGELOG.md with UmbraEdit 1.0.0 release notes
- All code compiles, no remaining novelWriter references in Python
2026-11-05 07:45:51 -08:00
B.D. Murphy
026f486b3e chore: fix test fixtures and asset names for UmbraEdit rename
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
- Rename test fixture files: config_novelwriter.toml -> config_umbraedit.toml
- Rename test fixture files: old_novelwriter.conf -> old_umbraedit.conf
- Rename test fixture files: nw_en_GB.qm -> ue_en_GB.qm
- Rename asset files: novelwriter-text-*.svg -> umbraedit-text-*.svg
- Rename asset files: novelwriter.svg/ico -> umbraedit.svg/ico
- Rename asset files: x-novelwriter-project.* -> x-umbraedit-project.*
- Fix test references to _nwLangPath -> _ueLangPath
- Bump version to 1.0.0 (first UmbraEdit release)
- All 735 tests pass, 2 skipped
2026-11-05 07:36:45 -08:00
B.D. Murphy
7bb3fc581b docs: add toolchain & dependency update plan
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
2026-11-05 07:24:54 -08:00
B.D. Murphy
88618b4c29 docs: add UMBRAEDIT.md project scan and structure guide
Some checks failed
Syntax / Linting and Type Checking (push) Has been cancelled
Tests / Linux Python 3.11 (push) Has been cancelled
Tests / Linux Python 3.12 (push) Has been cancelled
Tests / Linux Python 3.13 (push) Has been cancelled
Tests / Linux Python 3.14 (push) Has been cancelled
Tests / Linux Python 3.15 (push) Has been cancelled
Tests / MacOS Python 3.14 (push) Has been cancelled
Tests / Windows Python 3.14 (push) Has been cancelled
Tests / PR Coverage Report (push) Has been cancelled
Tests / Action Coverage Report (push) Has been cancelled
Tests / Ubuntu 24.04 & Sys Packages (push) Has been cancelled
Tests / Fedora 44 & Sys Packages (push) Has been cancelled
2026-11-05 07:09:03 -08:00
B.D. Murphy
70d74e675f chore: rename project from novelWriter to UmbraEdit
- Rename project name and package: novelWriter -> UmbraEdit, novelwriter -> umbraedit
- Rename entry script novelWriter.py -> UmbraEdit.py
- Rename package directory novelwriter/ -> umbraedit/
- Rename i18n translation sources nw_*.ts -> ue_*.ts
- Rename packaging files (appdata, project xml template)
- Update all imports, references, docs, workflows, tests and build config
- Update pyproject.toml project name, GUI script and URLs
- Preserve full upstream git history; origin repointed below
2026-11-05 07:08:12 -08:00
Veronica Berglyd Olsen
b80b4b2534 Update vim mode (#3133) 2026-11-04 15:53:00 +01:00
Veronica Berglyd Olsen
de8b7c1ac0 Make Ctrl+R work as redo shortcut 2026-11-03 22:32:06 +01:00
Veronica Berglyd Olsen
ed69456064 Update docs 2026-11-03 21:16:33 +01:00
Veronica Berglyd Olsen
370843c296 Merge branch 'main' into update-vim-mode 2026-11-03 21:12:51 +01:00
Veronica Berglyd Olsen
02edf04117 Update license header (#3134) 2026-11-03 21:10:10 +01:00
Veronica Berglyd Olsen
6b4a495b87 Update license header convention in contributing guide 2026-11-03 21:07:09 +01:00
Veronica Berglyd Olsen
3738f7fd51 Correct license years for moved code 2026-11-03 20:56:49 +01:00
Veronica Berglyd Olsen
e28e5cb052 Add Python 3.15 to classifiers 2026-11-03 20:48:32 +01:00
Veronica Berglyd Olsen
762831931b Reformat the license headers 2026-11-03 20:46:35 +01:00
Veronica Berglyd Olsen
29b7e4da37 Update credits 2026-11-03 20:34:29 +01:00
Veronica Berglyd Olsen
037f1bee08 Fix various behaviour inconsistencies 2026-11-03 20:13:10 +01:00
Veronica Berglyd Olsen
b5c8a014b7 Fix some smaller bugs in the vim mode implementation 2026-11-03 19:52:07 +01:00
Veronica Berglyd Olsen
f6fa696eb4 Remove redundant code in the vim mode class 2026-11-03 19:37:42 +01:00
Veronica Berglyd Olsen
558ac0ae0c Update tests 2026-11-03 19:28:22 +01:00
Veronica Berglyd Olsen
3355b5edbe Complete the connection between editor and vim handler 2026-11-03 19:15:56 +01:00
Veronica Berglyd Olsen
b8f14bfb5d Move vim mode into a separate class 2026-11-03 18:51:15 +01:00
Veronica Berglyd Olsen
34caa41963 Various minor updates to editing and manuscript (#3131) 2026-11-02 23:15:27 +01:00
Veronica Berglyd Olsen
12bfc634c3 Don't switch to problem tab automatically in Manuscript build 2026-11-02 23:06:11 +01:00
Veronica Berglyd Olsen
6b162eb3f2 Rename text.addNoteHeadings label (#2735) 2026-11-02 23:01:49 +01:00
Veronica Berglyd Olsen
767d6c5a1d Add insert menu entries for en and em space (#2535) 2026-11-02 23:00:34 +01:00
Veronica Berglyd Olsen
5ae0292e0b Add nested Epub nav table (#3130) 2026-11-02 21:36:26 +01:00
Veronica Berglyd Olsen
fd4333c0e4 Move the setNestedToC setting to the Epub class 2026-11-02 21:31:48 +01:00
Veronica Berglyd Olsen
9843084b03 Add test coverage 2026-11-02 21:27:06 +01:00
Veronica Berglyd Olsen
824a175ec7 Generate a nested nav if parts exist and the nested flag is on 2026-11-02 21:26:54 +01:00
Veronica Berglyd Olsen
6d931dc89b Add a setting for nested ToC in Epub files 2026-11-02 21:25:54 +01:00
Veronica Berglyd Olsen
8a89fb604b Rewrite the auto-replace feature (#3128) 2026-11-01 20:04:16 +01:00
Veronica Berglyd Olsen
e677e99b02 Ignore auto-replace on hidden headings 2026-11-01 20:00:37 +01:00
Veronica Berglyd Olsen
76da76f3bf Update tests 2026-11-01 19:43:11 +01:00
Veronica Berglyd Olsen
41ce067d43 Add a problems tab to the manuscript tool 2026-11-01 19:43:00 +01:00
Veronica Berglyd Olsen
eddb12c5fb Rewrite the auto-replace feature in the tokenizer 2026-11-01 18:32:46 +01:00
Veronica Berglyd Olsen
c124bcb7c6 Allow case insensitive keys in the highlighter 2026-11-01 18:12:07 +01:00
Veronica Berglyd Olsen
0120f09bb7 Update tests 2026-11-01 18:03:31 +01:00
Veronica Berglyd Olsen
8430ac1e6c Add an ignoreCase setting for autoReplace 2026-11-01 18:03:19 +01:00
Veronica Berglyd Olsen
f5ca209c2b Only highlight replace keys that are defined 2026-11-01 17:36:04 +01:00
Veronica Berglyd Olsen
b529a8f40e Add list margin settings for mansucripts (#3127) 2026-11-01 17:16:51 +01:00
Veronica Berglyd Olsen
62201a0169 Update tests 2026-11-01 17:08:38 +01:00
Veronica Berglyd Olsen
1d5011e186 Fix first line indent handling after lists and inserted notes headings 2026-11-01 17:03:14 +01:00
Veronica Berglyd Olsen
6ddb8e3c37 Apply list margins to output formats 2026-11-01 16:57:17 +01:00
Veronica Berglyd Olsen
50c0d44477 Add list margin settings 2026-11-01 16:47:05 +01:00
Veronica Berglyd Olsen
b731a0cd48 Fix zoom and indent features (#3126) 2026-11-01 16:35:43 +01:00
Veronica Berglyd Olsen
7e8fbb27a3 Rename the text size constants 2026-11-01 16:32:02 +01:00
Veronica Berglyd Olsen
3bfdc1d154 Change indent and tab size ranges 2026-11-01 16:20:50 +01:00
Veronica Berglyd Olsen
1136b9ecda Change default first line indent in manuscripts to 2.0 em 2026-11-01 16:15:33 +01:00
Veronica Berglyd Olsen
24acf5c827 Only apply viewer first line indent to novel documents 2026-11-01 16:12:30 +01:00
Veronica Berglyd Olsen
734828918b Update tests 2026-11-01 15:58:17 +01:00
Veronica Berglyd Olsen
471ba7d4e1 Add tab size setting for manuscript tools too 2026-11-01 15:57:29 +01:00
Veronica Berglyd Olsen
01fc02be9a Update tests 2026-11-01 15:49:00 +01:00
Veronica Berglyd Olsen
1b33496d42 Switch tabWidth setting in px with tabSize in em units 2026-11-01 15:47:02 +01:00
Veronica Berglyd Olsen
0963a6475d Improve zoom handling in the viewer, and cap text font size at 6 to 72 pt 2026-11-01 15:25:14 +01:00
Veronica Berglyd Olsen
47be9d5d02 Fix missing colour updates on theme switch (#3125) 2026-10-31 22:19:42 +01:00
Veronica Berglyd Olsen
8c3fc3f412 Fix missing colour updates on theme switch (#3123) 2026-10-31 20:02:22 +01:00
Veronica Berglyd Olsen
28c59e902c Fix multi-notes in outline view (#3121) 2026-10-26 23:04:38 +01:00
Veronica Berglyd Olsen
bd027e590e Add timeouts to package installs in tests 2026-10-26 23:01:03 +01:00
Veronica Berglyd Olsen
af8d6dbc7c Bump uv lockfile 2026-10-26 22:42:05 +01:00
Veronica Berglyd Olsen
9dd6d7c55f Update tests 2026-10-26 22:36:58 +01:00
Veronica Berglyd Olsen
1b1e723bdf Add outline setting to join similar comments 2026-10-26 22:36:03 +01:00
Veronica Berglyd Olsen
1f81dabef4 Bump certifi from 2026.7.22 to 2026.10.19 (#3120) 2026-10-26 06:14:23 +01:00
dependabot[bot]
67fbd16be6 Bump certifi from 2026.7.22 to 2026.10.19
Bumps [certifi](https://github.com/certifi/python-certifi) from 2026.7.22 to 2026.10.19.
- [Commits](https://github.com/certifi/python-certifi/compare/2026.07.22...2026.10.19)

---
updated-dependencies:
- dependency-name: certifi
  dependency-version: 2026.10.19
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-26 04:10:27 +00:00
Veronica Berglyd Olsen
a25880462f Make a unified document footer (#3117) 2026-10-25 19:48:07 +01:00
Veronica Berglyd Olsen
fe6737d546 Add a 4px right margin for balance 2026-10-25 19:29:39 +01:00
Veronica Berglyd Olsen
2ccbd6952e Move the "show tabs and space" and "show line endings" settings to the editor footer menu 2026-10-25 19:23:43 +01:00
Veronica Berglyd Olsen
68cafd991b Add reset zoom feature and update spacing 2026-10-25 19:08:32 +01:00
Veronica Berglyd Olsen
8c6a24dc81 Add zoom in/out controls to the document footer 2026-10-25 18:54:35 +01:00
Veronica Berglyd Olsen
d13e88e134 Add zoom in and out icons 2026-10-25 18:42:27 +01:00
Veronica Berglyd Olsen
7a365be88a Move the document footer vim flag to the base class 2026-10-25 18:36:56 +01:00
Veronica Berglyd Olsen
bce48181e0 Remove the lines icon 2026-10-25 18:30:33 +01:00
Veronica Berglyd Olsen
5a856a00c5 Remove the line number counter in the document footer 2026-10-25 18:30:12 +01:00
Veronica Berglyd Olsen
f610d41661 Improve handling of document footer height 2026-10-25 18:23:08 +01:00
Veronica Berglyd Olsen
c69bfcb8bf Allow showing writing goal in focus mode (#3116) 2026-10-25 18:10:45 +01:00
Veronica Berglyd Olsen
db4c1c730c Add setting to show writing goal in focus mode 2026-10-25 18:04:33 +01:00
Veronica Berglyd Olsen
a4a896eae2 Rename a shortened setting and update tests 2026-10-25 17:43:45 +01:00
Veronica Berglyd Olsen
523c760594 Move Preferences settings around a little, and also move configs 2026-10-25 17:37:06 +01:00
Veronica Berglyd Olsen
aa3e42735f Improvements and refactor of document header and footer (#3115) 2026-10-25 17:07:56 +01:00
Veronica Berglyd Olsen
a85e8fd11e Drop the Focus Mode section in Preferences again 2026-10-25 17:00:00 +01:00
Veronica Berglyd Olsen
3e4f7b40eb Improve test coverage 2026-10-25 16:53:40 +01:00
Veronica Berglyd Olsen
c21f5c28a8 Add a first line indent toggle for the viewer (#3095) 2026-10-25 16:46:35 +01:00
Veronica Berglyd Olsen
b48d880933 Move viewer settings into a pop-up menu 2026-10-25 16:29:14 +01:00
Veronica Berglyd Olsen
5c8310da64 Add word count to both footers 2026-10-25 16:11:08 +01:00
Veronica Berglyd Olsen
e599b99223 Merge common features of doc footer into a base class 2026-10-25 16:00:32 +01:00
Veronica Berglyd Olsen
105b8c461c Merge common features of doc headers into a base class 2026-10-25 15:50:59 +01:00
Veronica Berglyd Olsen
f890672849 Add test coverage 2026-10-25 15:40:26 +01:00
Veronica Berglyd Olsen
cd93cae133 Improve how header/footer size is handled 2026-10-25 15:37:03 +01:00
Veronica Berglyd Olsen
36ab573966 Add a setting to trim the editor header in focus mode 2026-10-25 15:31:14 +01:00
Veronica Berglyd Olsen
96f8809bd8 Release 26.3 Beta 1 (#3112) 2026-10-20 21:26:17 +02:00
Veronica Berglyd Olsen
deb04a8e82 Bump version and update changelog 2026-10-20 21:01:25 +02:00
Veronica Berglyd Olsen
784793f0f5 Fix flaky test and broken backup (#3111) 2026-10-20 20:41:35 +02:00
Veronica Berglyd Olsen
521dc36895 Don't leave a broken backup behind 2026-10-20 20:36:35 +02:00
Veronica Berglyd Olsen
97922263b7 Add Urdu project export file, fix English UK (#3110) 2026-10-20 20:31:36 +02:00
Veronica Berglyd Olsen
ebd168071b Update the project export i18n test 2026-10-20 20:23:30 +02:00
Veronica Berglyd Olsen
c0a0fa5e2c Add Urdu project export file, fix English UK file, and add a test 2026-10-20 20:12:21 +02:00
Veronica Berglyd Olsen
21672a8cfb Merge fix #3108 into main (#3109) 2026-10-19 20:59:29 +02:00
Veronica Berglyd Olsen
f20c31f4dd Merge branch 'main' into merge-fix-3108-into-main 2026-10-19 20:50:56 +02:00
Veronica Berglyd Olsen
a1426b0e35 Fix search selection bug in the editor (#3108) 2026-10-19 20:46:46 +02:00
Veronica Berglyd Olsen
2f327fb711 Fix editor search highlight bug (#3105) 2026-10-19 20:42:06 +02:00
Veronica Berglyd Olsen
c875c9abb5 Update gitignore 2026-10-19 20:41:46 +02:00
Veronica Berglyd Olsen
0f96ae6e8c Fix typo in improvement issue template (#3107) 2026-10-19 18:58:50 +02:00
Veronica Berglyd Olsen
6404af1b2a Fix typo in improvement issue template 2026-10-19 18:45:33 +02:00
Veronica Berglyd Olsen
a38bfa1449 Remove screenshot section from issue templates (#3106) 2026-10-19 08:33:14 +02:00
Veronica Berglyd Olsen
52187c02ac Remove screenshot section from issue templates 2026-10-19 08:28:24 +02:00
Veronica Berglyd Olsen
cd6c22d461 Add a manuscript status label to headings (#3104) 2026-10-19 00:20:58 +02:00
Veronica Berglyd Olsen
ee590e964b Update tests 2026-10-19 00:12:09 +02:00
Veronica Berglyd Olsen
abdaf9b2c8 Fix some minor gaps in status label handling 2026-10-19 00:11:58 +02:00
Veronica Berglyd Olsen
5f54211928 Drop status label on main titles 2026-10-19 00:04:03 +02:00
Veronica Berglyd Olsen
9c9a294ba4 Add a manuscript toggle to show status labels below novel headings 2026-10-18 23:51:37 +02:00
Veronica Berglyd Olsen
eca6ea64c1 Improvements to outline and RTL support (#3103) 2026-10-18 19:31:51 +02:00
Veronica Berglyd Olsen
f51e59c2e5 Make Ctrl+Shift+T cycle through story view tabs 2026-10-18 19:24:42 +02:00
Veronica Berglyd Olsen
ff35e42a35 Allow opening outline items via keyboard as well 2026-10-18 19:21:50 +02:00
Veronica Berglyd Olsen
b77d2a217f Connect outline middle and double click to document pane 2026-10-18 19:10:32 +02:00
Veronica Berglyd Olsen
5e0886bb85 Improve RTL settings labels and move around a bit 2026-10-18 18:59:57 +02:00
Veronica Berglyd Olsen
539b84f491 Add odd page breaks for manuscript ODT and DocX output (#3102) 2026-10-18 01:03:41 +02:00
Veronica Berglyd Olsen
535fcdbb8e Create a new widget for groups of radio buttons 2026-10-18 01:00:11 +02:00
Veronica Berglyd Olsen
688a216ad0 Add odd/even header and double page breaks to DocX format 2026-10-18 00:31:23 +02:00
Veronica Berglyd Olsen
97a43ff02e Remove the break before to break after logic for DocX 2026-10-18 00:25:06 +02:00
Veronica Berglyd Olsen
e13241d6a8 Use separate header format on even pages 2026-10-18 00:18:13 +02:00
Veronica Berglyd Olsen
4c3db8bb6c Add page break settings and apply to ODT 2026-10-17 23:36:08 +02:00
Veronica Berglyd Olsen
dd40e6d916 Enable page break on odd pages for ODT 2026-10-17 22:40:05 +02:00
Veronica Berglyd Olsen
e9d858a815 Rename the mirror page setting to a general double-sided pages setting 2026-10-17 22:21:10 +02:00
Veronica Berglyd Olsen
784967f0d1 Extend pasting formatted text into editor (#3101) 2026-10-17 22:07:30 +02:00
Veronica Berglyd Olsen
6a07d224b8 Improve handling of pasted RTL text 2026-10-17 22:02:31 +02:00
Veronica Berglyd Olsen
0c9f711afc Add support for pasting lists into the editor (#3099) 2026-10-17 21:55:38 +02:00
Veronica Berglyd Olsen
4e7f7f61ab Add basic RTL support (#3098) 2026-10-17 17:48:21 +02:00
Veronica Berglyd Olsen
b876f253d3 Fix horizontal line calculation 2026-10-17 17:36:33 +02:00
Veronica Berglyd Olsen
b9df42d1fb Fix gutter handling for RTL, and rtl info for HTML JSON 2026-10-17 17:20:27 +02:00
Veronica Berglyd Olsen
6b323ecdae Add RTL support to ODT and DocX 2026-10-17 16:59:54 +02:00
Veronica Berglyd Olsen
6649c0c06d Add RTL support to HTML and EPUB output 2026-10-17 16:44:51 +02:00
Veronica Berglyd Olsen
4c11f2618c Fix hover card positioning 2026-10-17 16:37:12 +02:00
Veronica Berglyd Olsen
4f792d7d5f Add a force RTL setting to the app 2026-10-17 16:35:25 +02:00
Veronica Berglyd Olsen
bf3366f272 Update custom search and outline painters to support RTL 2026-10-17 16:22:06 +02:00
Veronica Berglyd Olsen
2ad12d281d Fix various minor layout details 2026-10-17 16:15:45 +02:00
Veronica Berglyd Olsen
960eb4e867 Handle RTL ordered list icons and flip fold/unfold and other flippable icons 2026-10-17 15:56:49 +02:00
Veronica Berglyd Olsen
b95b27f0d6 Fix placement of editor toolbar and search box in RTL mode 2026-10-17 15:42:11 +02:00
Veronica Berglyd Olsen
9531dc37d1 Keep text direction for the actual text in the viewer 2026-10-17 15:30:51 +02:00
Veronica Berglyd Olsen
6706113188 Add RTL marker for shortcodes 2026-10-17 15:26:55 +02:00
Veronica Berglyd Olsen
4587b9b093 Add basic RTL support in the viewer 2026-10-17 13:35:23 +02:00
Veronica Berglyd Olsen
14e9ec64f1 Update tests with the new rtl flag 2026-10-17 12:48:33 +02:00
Veronica Berglyd Olsen
ca86464716 Add flags for RTL support for the app and for projects 2026-10-17 12:47:58 +02:00
Veronica Berglyd Olsen
fd162b694b Fix minor coverage and typing issues (#3094) 2026-10-15 22:53:40 +02:00
Veronica Berglyd Olsen
6be0340161 Add a none-format to the tokenizer 2026-10-15 22:46:58 +02:00
Veronica Berglyd Olsen
b9e7a0ff95 Fix typing gaps in the code 2026-10-15 22:42:41 +02:00
Veronica Berglyd Olsen
693c33e83a Make sure the garbage collector is called during tests 2026-10-15 22:21:13 +02:00
Veronica Berglyd Olsen
703d449b0b Ignore the uv pinned python file 2026-10-15 22:20:48 +02:00
Veronica Berglyd Olsen
b4369f4068 Stop a rehighlight on each tag of an index rebuild (#3093) 2026-10-15 20:55:34 +02:00
Veronica Berglyd Olsen
0ae1716a3c Stop a rehighlight on each tag of an index rebuild (#3092) 2026-10-15 20:49:37 +02:00
Veronica Berglyd Olsen
30943280a8 Show tag usage count (#3091) 2026-10-15 20:10:01 +02:00
Veronica Berglyd Olsen
227515d750 Show tag usage count in the viewer panel 2026-10-15 20:01:57 +02:00
Veronica Berglyd Olsen
ebc6ee4247 Count tag usage in index 2026-10-15 19:56:22 +02:00
Veronica Berglyd Olsen
905b87bd57 Add Unix line endings setting (#3090) 2026-10-15 19:37:34 +02:00
Veronica Berglyd Olsen
0ccc819452 Update tests 2026-10-15 19:33:02 +02:00
Veronica Berglyd Olsen
99003ce148 Add a setting for enforcing Unix line endings (#3055) 2026-10-15 19:31:38 +02:00
Veronica Berglyd Olsen
fd929f7c67 Accessibility improvements (#3089) 2026-10-15 18:48:12 +02:00
Veronica Berglyd Olsen
f4e9a62600 Fix remaining easy to solve accessibility label issues 2026-10-15 18:43:18 +02:00
Veronica Berglyd Olsen
7e21b8ae67 Use tooltip as accessible text in standard buttons 2026-10-15 18:35:38 +02:00
Veronica Berglyd Olsen
de5a453ba2 Fix accessibility gaps in the novel view and project search 2026-10-15 18:28:56 +02:00
Veronica Berglyd Olsen
e1acc7d6b0 Add accessible text to outline view 2026-10-15 18:23:49 +02:00
Veronica Berglyd Olsen
d955f5745d Outline improvements (#3088) 2026-10-15 18:19:54 +02:00
Veronica Berglyd Olsen
a39fcb708c Include the sub-heading counts also for the novel view (#962) 2026-10-15 18:06:31 +02:00
Veronica Berglyd Olsen
ac84d75e37 Allow aggregating word counts for sub sections in outline 2026-10-15 17:55:43 +02:00
Veronica Berglyd Olsen
380e29c389 Allow showing inactive partitions 2026-10-15 17:33:05 +02:00
Veronica Berglyd Olsen
beee6a5e6a Add tests 2026-10-15 17:28:49 +02:00
Veronica Berglyd Olsen
a319b6774b Show status label on outline 2026-10-15 17:27:23 +02:00
Veronica Berglyd Olsen
7443433cf5 Use the words/character i18n units for the outline 2026-10-15 17:17:54 +02:00
Veronica Berglyd Olsen
1d2f3edf28 Don't mention internal project id in user dialogs (#3086) 2026-10-14 20:30:01 +02:00
Veronica Berglyd Olsen
fc7d58f426 Don't mention internal project id in user dialogs 2026-10-14 20:22:04 +02:00
Veronica Berglyd Olsen
bff4d12865 Improve duplicate project handling and restore from backup (#3085) 2026-10-13 21:35:59 +02:00
Veronica Berglyd Olsen
e55b5064b0 Remove unnecessary bool returns 2026-10-13 21:24:28 +02:00
Veronica Berglyd Olsen
b08f82c941 Use the manifest file when restoring a backup 2026-10-13 21:23:22 +02:00
Veronica Berglyd Olsen
9a7204565e Add a project manifest file 2026-10-13 21:15:01 +02:00
Veronica Berglyd Olsen
e72c4739c5 Ask of new ID when duplicate project is detected (#3047) 2026-10-13 20:17:01 +02:00
Veronica Berglyd Olsen
6b595c9443 Add type annotations to tests (#3083) 2026-10-12 01:25:42 +02:00
Veronica Berglyd Olsen
9ce4fd42fa Add test dependencies to syntax job so test packages can resolve 2026-10-12 01:21:15 +02:00
Veronica Berglyd Olsen
65adc01085 Add missing docstrings in tests 2026-10-12 01:16:25 +02:00
Veronica Berglyd Olsen
2f0e5e2579 Merge branch 'main' into test-annotations 2026-10-12 01:13:21 +02:00
Veronica Berglyd Olsen
4a229ba08d Enable annotation linting rules for tests and utils 2026-10-12 01:12:53 +02:00
Veronica Berglyd Olsen
6cc2a3f484 Move editor and viewer into their own wrapper class (#3082) 2026-10-12 01:11:12 +02:00
Veronica Berglyd Olsen
bb22a59188 Add annotations to core tests 2026-10-12 01:00:29 +02:00
Veronica Berglyd Olsen
0cff3bc752 Add annotations to format tests 2026-10-12 00:59:48 +02:00
Veronica Berglyd Olsen
3be7f829c1 Add annotations to dialog tests 2026-10-12 00:58:59 +02:00
Veronica Berglyd Olsen
1fdc329fbc Add annotations to extensions tests 2026-10-12 00:58:19 +02:00
Veronica Berglyd Olsen
49d3118018 Add annotations to top level tests 2026-10-12 00:57:56 +02:00
Veronica Berglyd Olsen
fa0eca6723 Add annotations to test folders only missing a few 2026-10-12 00:56:17 +02:00
Veronica Berglyd Olsen
c375aab44e Update annotations on editor and gui tests 2026-10-12 00:47:07 +02:00
Veronica Berglyd Olsen
c0e6dc17e8 Run some cleanup and improvements 2026-10-12 00:42:03 +02:00
Veronica Berglyd Olsen
53241eba0a Move action handlers to the doc panes class 2026-10-12 00:11:19 +02:00
Veronica Berglyd Olsen
78acbff013 Move various other editor/viewer methods to the doc panes class 2026-10-12 00:05:56 +02:00
Veronica Berglyd Olsen
48a0b115f2 Move shared signals to doc panes class 2026-10-11 23:56:47 +02:00
Veronica Berglyd Olsen
ababebbe3d Move signals between elements in the doc panes to that class 2026-10-11 23:41:24 +02:00
Veronica Berglyd Olsen
9fe60b7249 Move document functions to doc panes class 2026-10-11 23:36:47 +02:00
Veronica Berglyd Olsen
8aa6cb2c91 Move the editor and viewer into their own parent class 2026-10-11 23:01:01 +02:00
Veronica Berglyd Olsen
9e5c0534aa Merge 26.2.2 into main (#3080) 2026-10-11 19:34:16 +02:00
Veronica Berglyd Olsen
b329123426 Merge branch 'main' into merge-26.2.2 2026-10-11 19:30:07 +02:00
Veronica Berglyd Olsen
1c6787bdc3 Relese 26.2.2 (#3077) 2026-10-11 18:49:15 +02:00
Veronica Berglyd Olsen
1b4695771c Merge branch 'release' into release-26.2.2 2026-10-11 01:23:56 +02:00
Veronica Berglyd Olsen
29090455de Replace literal line breaks in the Manuscript outline (#3078) 2026-10-11 01:23:41 +02:00
Veronica Berglyd Olsen
bffb01401f Update changelog 2026-10-11 01:21:38 +02:00
Veronica Berglyd Olsen
c99584fc41 Replace literal line breaks in the Manuscript outline 2026-10-11 01:16:38 +02:00
Veronica Berglyd Olsen
3697c190e5 Bump version to 26.2.2 and update changelog 2026-10-11 00:58:39 +02:00
Veronica Berglyd Olsen
8197edf722 Update French translation 2026-10-11 00:54:14 +02:00
Veronica Berglyd Olsen
d23795ef6c Fix first line indent after horizontal ruler (#3076) 2026-10-10 21:56:48 +02:00
Veronica Berglyd Olsen
bb400cde9f A horizontal ruler in the manuscript should reset the first line indent for the next paragraph (#3074) 2026-10-10 21:50:40 +02:00
Veronica Berglyd Olsen
b871981c8d Add basic Markdown list support (#3075) 2026-10-10 21:42:01 +02:00
Veronica Berglyd Olsen
ec99fba2fc Fix toggle format for blocks, and preserve selection on multi-block 2026-10-10 21:35:37 +02:00
Veronica Berglyd Olsen
7f977b9f4d Added list and alignment buttons 2026-10-10 21:20:12 +02:00
Veronica Berglyd Olsen
7c4f1a8d02 Add block format icons 2026-10-10 21:14:53 +02:00
Veronica Berglyd Olsen
a0df20e97d Update the docs 2026-10-10 20:21:51 +02:00
Veronica Berglyd Olsen
3ceacc3b32 Fix link encoding in the edit link dialog 2026-10-10 20:21:42 +02:00
Veronica Berglyd Olsen
dda1b3b118 Add list continuation support in the editor 2026-10-10 19:54:57 +02:00
Veronica Berglyd Olsen
ff379da2dd Add test coverage 2026-10-10 19:45:44 +02:00
Veronica Berglyd Olsen
655253d0d7 Add numbered list formats 2026-10-10 19:43:41 +02:00
Veronica Berglyd Olsen
690afc7cfb Complete parsing and highlighting of numbered lists 2026-10-10 19:37:21 +02:00
Veronica Berglyd Olsen
62c530a4d0 Add a block format for numbered lists 2026-10-10 19:21:57 +02:00
Veronica Berglyd Olsen
f5cd9ce15c Add list support for DocX 2026-10-10 19:15:37 +02:00
Veronica Berglyd Olsen
ef0faf698e Add list support for ODT 2026-10-10 19:01:07 +02:00
Veronica Berglyd Olsen
2fadf1f9c3 Update tests for the format classes 2026-10-10 18:37:50 +02:00
Veronica Berglyd Olsen
b44b34b982 Extend the simple manuscript formats to support lists 2026-10-10 18:35:40 +02:00
Veronica Berglyd Olsen
93cfff70ba Blank lines now end a list 2026-10-10 17:55:15 +02:00
Veronica Berglyd Olsen
97bc544bf9 Add test coverage of highlighter and tokenizer 2026-10-10 17:32:48 +02:00
Veronica Berglyd Olsen
ee62544c54 Add highlighting and parsing of list items 2026-10-10 17:30:12 +02:00
Veronica Berglyd Olsen
a9848f47fc Add hide tree pane toggle feature (#3072) 2026-10-08 23:40:43 +02:00
Veronica Berglyd Olsen
9107e8b335 Bump lockfile 2026-10-08 23:29:12 +02:00
Veronica Berglyd Olsen
583c806cea Add a keyboard shortcut for toggling the pane as well 2026-10-08 23:27:13 +02:00
Veronica Berglyd Olsen
cd4a14f5c3 Fix test and add extra test coverage 2026-10-08 23:08:25 +02:00
Veronica Berglyd Olsen
6fa8e110bc Allow toggling the visibility state of the tree pane 2026-10-08 23:03:28 +02:00
Veronica Berglyd Olsen
3ea0240bcc Add Fluent UI icons and remvove FontAwesome icons (#3071) 2026-10-08 00:47:14 +02:00
Veronica Berglyd Olsen
216c259770 Remove Font Awesome 2026-10-08 00:36:49 +02:00
Veronica Berglyd Olsen
820bfdb062 Update credits and licenses 2026-10-08 00:32:09 +02:00
Veronica Berglyd Olsen
b74176b685 Add Fluent UI icon themes 2026-10-08 00:27:15 +02:00
Veronica Berglyd Olsen
510e7dc0b4 Add page gutter to ODT and DocX manuscripts (#3068) 2026-10-07 20:32:12 +02:00
Veronica Berglyd Olsen
562539afe5 Remove left over code 2026-10-07 00:22:11 +02:00
Veronica Berglyd Olsen
1875336e75 Update tests 2026-10-07 00:13:59 +02:00
Veronica Berglyd Olsen
6755047587 Apply gutter settings to DocX 2026-10-07 00:02:38 +02:00
Veronica Berglyd Olsen
170dfda478 Switch to just a gutter spin box and mirroring toggle 2026-10-06 23:53:00 +02:00
Veronica Berglyd Olsen
6f2432b5b8 Add icons for inner and outer margins 2026-10-06 23:52:22 +02:00
Veronica Berglyd Olsen
63ee310f34 Implement gutter setting for ODT 2026-10-06 22:12:21 +02:00
Veronica Berglyd Olsen
1215ba1be6 Add manuscript settings for gutter 2026-10-06 22:11:35 +02:00
Veronica Berglyd Olsen
1230478701 Fix PR checklist point under the wrong heading (#3066) 2026-10-06 07:53:27 +02:00
Veronica Berglyd Olsen
97c97ba702 Add helper hidden comment 2026-10-06 07:50:15 +02:00
Veronica Berglyd Olsen
5e3ffaa9e0 Shorten policy text 2026-10-06 07:38:12 +02:00
Veronica Berglyd Olsen
724a8b4220 Fix PR checklist point under the wrong heading 2026-10-06 07:35:13 +02:00
Veronica Berglyd Olsen
b1789baa36 Improve icon caching (#3063) 2026-10-06 00:05:13 +02:00
Veronica Berglyd Olsen
9d248c1494 Simplify a few things, and update tests 2026-10-05 23:50:48 +02:00
Veronica Berglyd Olsen
8f31927d01 Drop icon width and height settings 2026-10-05 23:42:05 +02:00
Veronica Berglyd Olsen
1febb9c10d Remove size from the icon cache 2026-10-05 23:31:55 +02:00
Veronica Berglyd Olsen
6d54677ef4 Key handling, outline icons, and icon padding (#3062) 2026-10-05 23:30:59 +02:00
Veronica Berglyd Olsen
535e9b605a Update tests 2026-10-05 22:57:03 +02:00
Veronica Berglyd Olsen
79482c6dde Allow using icons in outline view 2026-10-05 22:55:31 +02:00
Veronica Berglyd Olsen
5c71649be5 Pad FontAwesome and Lucide icons to match Material icons 2026-10-05 22:35:33 +02:00
Veronica Berglyd Olsen
23113d8053 Add icons for PoV and Focus keys, and modify Mentions 2026-10-05 22:32:27 +02:00
Veronica Berglyd Olsen
260b45afbe Use the same generator for outline column keys 2026-10-05 21:58:48 +02:00
Veronica Berglyd Olsen
20f2d8519f Use the index cache for footnote keys 2026-10-05 20:49:00 +02:00
Veronica Berglyd Olsen
7be695a2f6 Add verbosity levels for tests 2026-10-05 20:11:24 +02:00
Veronica Berglyd Olsen
671def88af Merge release bugfix into main (#3060) 2026-10-05 19:45:17 +02:00
Veronica Berglyd Olsen
b63241658e Merge branch 'main' into merge-into-main 2026-10-05 19:38:13 +02:00
Veronica Berglyd Olsen
4a3e01d2cb Remove Remix Icons (#3059) 2026-10-04 19:14:06 +02:00
Veronica Berglyd Olsen
7203eebde7 Clean up missed bits and remaining references 2026-10-04 19:06:34 +02:00
Veronica Berglyd Olsen
3662b61406 Clean up icon builds 2026-10-04 19:01:21 +02:00
Veronica Berglyd Olsen
89b11bd248 Track FontAwesome and Lucide icon themes in the repo 2026-10-04 18:51:16 +02:00
Veronica Berglyd Olsen
f6a90db92a Remove Remix icons from the code base 2026-10-04 18:50:11 +02:00
Veronica Berglyd Olsen
00632be1fb Outline improvements (#3058) 2026-10-04 18:45:11 +02:00
Veronica Berglyd Olsen
e208af2939 Fix issues and bugs in these changes, and update tests 2026-10-04 18:40:29 +02:00
Veronica Berglyd Olsen
9987f226bf Fix coverage for index 2026-10-04 18:34:11 +02:00
Veronica Berglyd Olsen
e296d74ee0 Skip novel title entry in outline even if partitions are enabled 2026-10-04 18:31:38 +02:00
Veronica Berglyd Olsen
90c9653e01 Add index field for modified heading flag 2026-10-04 18:09:13 +02:00
Veronica Berglyd Olsen
f239d2a0e3 Add central unit labels 2026-10-04 17:22:46 +02:00
Veronica Berglyd Olsen
ba3a8cae6a Add central standard labels 2026-10-04 17:15:13 +02:00
Veronica Berglyd Olsen
daee5c8727 Use a dedicated policy workflow (#3057) 2026-10-04 16:14:06 +02:00
Veronica Berglyd Olsen
d5fc3f5432 Add a commit policy check (#3056) 2026-10-04 16:12:32 +02:00
Veronica Berglyd Olsen
6f5995abdb Use a dedicated policy workflow 2026-10-04 16:10:27 +02:00
Veronica Berglyd Olsen
6fad351a7a Rename policy workflows 2026-10-04 16:09:11 +02:00
Veronica Berglyd Olsen
f0d1971977 Add a commit policy check 2026-10-04 16:05:23 +02:00
Veronica Berglyd Olsen
29cb152be2 Add an AI policy to the code, and update various docs (#3050) 2026-10-04 15:48:28 +02:00
Veronica Berglyd Olsen
e8849e8682 Run a policy check on PRs 2026-10-04 15:44:39 +02:00
Veronica Berglyd Olsen
449ca153a2 Downgrade Remix Icons to 4.8 for license reasons (#3054) 2026-10-04 14:51:51 +02:00
Veronica Berglyd Olsen
961c09100c Add Python 3.15 test coverage 2026-10-04 14:48:55 +02:00
Veronica Berglyd Olsen
7aeadf74ce Downgrade Remix Icons to 4.8 for license reasons (#3052) 2026-10-04 14:46:25 +02:00
Veronica Berglyd Olsen
47af31d856 Refactor pkgutils (#3053) 2026-10-04 00:47:42 +02:00
Veronica Berglyd Olsen
8759b2332d Bump dev dependencies 2026-10-04 00:44:35 +02:00
Veronica Berglyd Olsen
291d85f81a Clean up icon tool formatting 2026-10-04 00:16:24 +02:00
Veronica Berglyd Olsen
110f571475 Move command line parsing for pkgutils to a main file 2026-10-04 00:07:15 +02:00
Veronica Berglyd Olsen
06644352dc Use full link to policy document 2026-10-03 23:55:46 +02:00
Veronica Berglyd Olsen
8975d1c727 Clean up the grammar and clarify the text 2026-10-03 23:47:41 +02:00
Veronica Berglyd Olsen
bbc89f7403 Reword parts of the policy 2026-10-03 17:07:50 +02:00
Veronica Berglyd Olsen
5e19c09d88 Link policy in Contributing and Readme and add to PR template 2026-10-03 16:57:40 +02:00
Veronica Berglyd Olsen
77b76d91ed Add an AI policy document 2026-10-03 16:57:09 +02:00
Veronica Berglyd Olsen
2c84a6df5a Update issue templates and main readme (#3048) 2026-10-02 18:18:37 +02:00
Veronica Berglyd Olsen
b43d3f903a Update the readme 2026-10-02 18:06:25 +02:00
Veronica Berglyd Olsen
3a2ceeadda Add better prefixes 2026-10-02 18:01:38 +02:00
Veronica Berglyd Olsen
c14136b32a Tweak issue templates a little 2026-10-02 17:17:08 +02:00
Veronica Berglyd Olsen
26e73056c2 Icons update (#3045) 2026-10-02 00:15:17 +02:00
Veronica Berglyd Olsen
a2bc170a12 Update to latest Lucide icons 2026-10-02 00:10:10 +02:00
Veronica Berglyd Olsen
2beca51c5a Add icons cache dir path to developer env file 2026-10-02 00:09:56 +02:00
Veronica Berglyd Olsen
54505d3102 Drop Novel Details tool (#3044) 2026-10-01 00:39:44 +02:00
Veronica Berglyd Olsen
dfe2fabc69 Remove icon 2026-10-01 00:33:42 +02:00
Veronica Berglyd Olsen
0e101ecc8a Update docs 2026-10-01 00:33:17 +02:00
Veronica Berglyd Olsen
9dad8b9e09 Clean up tests 2026-10-01 00:32:56 +02:00
Veronica Berglyd Olsen
ca469c8c7d Remove the Novel Details tool 2026-10-01 00:32:14 +02:00
Veronica Berglyd Olsen
7a7180ad79 Redesign the story outline (#2961) 2026-10-01 00:22:54 +02:00
Veronica Berglyd Olsen
09e8f79519 Clean up the code a little 2026-10-01 00:17:55 +02:00
Veronica Berglyd Olsen
87f242e363 Show the custom columns page in the same order as the table view 2026-10-01 00:07:42 +02:00
Veronica Berglyd Olsen
504ddb532d Clean up no longer needed fallback code 2026-09-30 23:48:52 +02:00
Veronica Berglyd Olsen
8ef76514e2 Add more icons 2026-09-30 23:40:24 +02:00
Veronica Berglyd Olsen
9bd2a53f69 Update tests 2026-09-30 22:59:39 +02:00
Veronica Berglyd Olsen
d8c218addd Make all columns customisable 2026-09-30 22:55:25 +02:00
Veronica Berglyd Olsen
e6f4b071af Allow the user to define custom comment columns 2026-09-30 22:32:33 +02:00
Veronica Berglyd Olsen
7c5deeacdd Make outline row height adjustable 2026-09-30 21:43:31 +02:00
Veronica Berglyd Olsen
b07c388fc0 Allow hiding synopsis, and add a toggle for using syntax colours in outline 2026-09-30 21:29:28 +02:00
Veronica Berglyd Olsen
35ebd43fd7 Allow turning on and off chapters 2026-09-30 21:07:44 +02:00
Veronica Berglyd Olsen
b1eb74225d Fix wrapping on cells with multiple reference classes 2026-09-30 21:01:04 +02:00
Veronica Berglyd Olsen
04d469e884 Fix mouse wheel scrolling, remember ref highlight setting, and fix ref search 2026-09-30 20:44:07 +02:00
Veronica Berglyd Olsen
45291c8832 Add highlight reference feature 2026-09-30 20:27:50 +02:00
Veronica Berglyd Olsen
a6f74184b2 Add progress counting to the outline view 2026-09-30 19:55:25 +02:00
Veronica Berglyd Olsen
56551bc84e Redesign the table and remove some information 2026-09-30 00:31:42 +02:00
Veronica Berglyd Olsen
34dcae52f2 Fix flaky test 2026-09-30 00:04:24 +02:00
Veronica Berglyd Olsen
99b7396f23 Save outline panel state 2026-09-29 23:55:11 +02:00
Veronica Berglyd Olsen
64ce8bac74 Add support for references in the outline, and add test coverage 2026-09-29 23:46:20 +02:00
Veronica Berglyd Olsen
d41f3c6d76 Flatten the outline view to a list 2026-09-29 22:57:47 +02:00
Veronica Berglyd Olsen
1b4c1583b2 Make a few minor improvements 2026-09-29 22:34:48 +02:00
Veronica Berglyd Olsen
010a496f46 Change how settings dialogs are handled 2026-09-29 22:28:03 +02:00
Veronica Berglyd Olsen
ff20a467c6 Fix issues with opening and closing projects 2026-09-29 22:21:06 +02:00
Veronica Berglyd Olsen
0ecfd70af9 Fix bugs, minor issues, and missing wiring between components 2026-09-29 22:06:23 +02:00
Veronica Berglyd Olsen
51a5e19936 Wire up a settings dialog for story views 2026-09-29 21:30:25 +02:00
Veronica Berglyd Olsen
8c992955cb Update stale index checking in the story view 2026-09-28 23:42:37 +02:00
Veronica Berglyd Olsen
a23c05cc31 Rename the story settings file and fix lazy loading issues 2026-09-28 23:34:22 +02:00
Veronica Berglyd Olsen
1984f89fad Add a base class for the story views 2026-09-28 23:28:46 +02:00
Veronica Berglyd Olsen
ce88a96620 Make the story view tabs draggable 2026-09-28 23:11:55 +02:00
Veronica Berglyd Olsen
3c860c34f1 Hook the view settings into the view panel 2026-09-28 23:11:08 +02:00
Veronica Berglyd Olsen
514ad9aa7a Fix gaps and issues in the story view settings classes, and add tests 2026-09-28 22:36:03 +02:00
Veronica Berglyd Olsen
d5973740f2 Add a settings file for story view and add buttons to create them 2026-09-28 21:51:33 +02:00
Veronica Berglyd Olsen
b9db4d3a0c Fix tests and fix reload of novel selector setting 2026-09-27 23:52:11 +02:00
Veronica Berglyd Olsen
adb799780e Convert outline view to a tab widget instead of a side panel and stack 2026-09-27 23:46:28 +02:00
Veronica Berglyd Olsen
e4194105ed Merge branch 'main' into outline-table 2026-09-27 23:01:25 +02:00
Veronica Berglyd Olsen
789337c9ed Update contributing guide (#3041) 2026-09-27 16:35:18 +02:00
Veronica Berglyd Olsen
a8cb1eb2a1 Fix broken links and update text 2026-09-27 16:30:23 +02:00
Veronica Berglyd Olsen
68e1ec0578 Fix control chars in docs issue (#3039) 2026-09-27 12:35:38 +02:00
Veronica Berglyd Olsen
3b48d79db3 Add test coverage 2026-09-27 12:32:58 +02:00
Veronica Berglyd Olsen
8a607d7e05 Block unsafe characters in text entry boundaries (#3038) 2026-09-27 12:25:54 +02:00
Veronica Berglyd Olsen
1bfac93a81 Make stripUnsafe a public function and use translate map 2026-09-27 12:12:24 +02:00
Veronica Berglyd Olsen
d84100cef1 Clean up packaging tools (#3037) 2026-09-27 01:27:04 +02:00
Veronica Berglyd Olsen
4d3f7158de Clean up launchpad support in pkgutils 2026-09-27 01:17:56 +02:00
Veronica Berglyd Olsen
78901cd620 Add workflow to build and publish to PyPI 2026-09-27 01:08:20 +02:00
Veronica Berglyd Olsen
fed15e5059 Update local build tooling 2026-09-27 01:07:24 +02:00
Veronica Berglyd Olsen
a083d258fa Merge release 26.2.1 back to main (#3036) 2026-09-26 20:52:46 +02:00
Veronica Berglyd Olsen
b72a1cd126 Remove redundant code 2026-09-26 20:49:00 +02:00
Veronica Berglyd Olsen
a7045e4621 Merge branch 'main' into merge-release-26.2.1 2026-09-26 20:44:04 +02:00
Veronica Berglyd Olsen
75eaaf6ff0 Post-release build fixes (#3035) 2026-09-26 20:40:45 +02:00
Veronica Berglyd Olsen
4e3ed839c7 Revert the colour prompt checker as it doesn't work on Window 2026-09-26 20:14:55 +02:00
Veronica Berglyd Olsen
956f586d60 Fix the build meta file test 2026-09-26 19:45:32 +02:00
Veronica Berglyd Olsen
327336dcde Rename the launchpad release script 2026-09-26 19:40:53 +02:00
Veronica Berglyd Olsen
dffc46c083 Fix windows build 2026-09-26 19:29:09 +02:00
Veronica Berglyd Olsen
cb87b9eeb6 Fix pip script 2026-09-26 19:28:58 +02:00
Veronica Berglyd Olsen
99b0f48d92 Release 26.2.1 (#3033) 2026-09-26 19:17:08 +02:00
Veronica Berglyd Olsen
406f3835b1 Bump version and update changelog 2026-09-26 19:13:30 +02:00
Veronica Berglyd Olsen
420f123697 Update translations (#3032) 2026-09-26 18:24:01 +02:00
Veronica Berglyd Olsen
7a10ff55a9 Update latest translation work 2026-09-26 18:19:21 +02:00
Veronica Berglyd Olsen
b40ca7446e Generate a credits report when updating language files 2026-09-26 18:00:28 +02:00
Veronica Berglyd Olsen
d1c1ae22b0 Add a developer env file 2026-09-26 17:59:30 +02:00
Veronica Berglyd Olsen
8d8ff08e3a Improve pkgutils (#3031) 2026-09-26 16:37:28 +02:00
Veronica Berglyd Olsen
ce5d1db1d2 Improve colour detection in main app too 2026-09-26 16:32:20 +02:00
Veronica Berglyd Olsen
2ea513c4d6 Add colouring to all pkgutils 2026-09-26 16:31:20 +02:00
Veronica Berglyd Olsen
a9bde454c1 Add validation of translation files and add colour output 2026-09-26 16:13:01 +02:00
Veronica Berglyd Olsen
3e6d7ea615 Fix hovercard icons (#3030) 2026-09-26 15:15:54 +02:00
Veronica Berglyd Olsen
c78a0faf69 Allow optional icon theme files to not pass the tests since the icons files are not checked in 2026-09-26 15:07:34 +02:00
Veronica Berglyd Olsen
be29d2a97c Fix hovercard icons not updating on theme change (#3024) 2026-09-26 14:57:32 +02:00
Veronica Berglyd Olsen
a98b445de8 Add markdown link format and support for file links (#3028) 2026-09-26 14:51:32 +02:00
Veronica Berglyd Olsen
cedcd48b13 Split double assignment 2026-09-24 08:16:29 +02:00
Veronica Berglyd Olsen
acb338bc64 Allow file links in the viewer 2026-09-24 01:25:29 +02:00
Veronica Berglyd Olsen
69f8925199 Add button and format dialog for links 2026-09-24 01:24:24 +02:00
Veronica Berglyd Olsen
98e64c0abc Add link icon 2026-09-24 00:36:10 +02:00
Veronica Berglyd Olsen
a70084e671 Add parsing and highlighting for markdown style links 2026-09-24 00:26:44 +02:00
Veronica Berglyd Olsen
9fe4ee1fcb Allow drag and drop files into the editor 2026-09-23 23:55:46 +02:00
Veronica Berglyd Olsen
12ed469007 Highlight file links in the text 2026-09-23 23:48:58 +02:00
Veronica Berglyd Olsen
fe78582e65 Update workflows (#3027) 2026-09-22 22:12:46 +02:00
Veronica Berglyd Olsen
16c349548e Add Python 3.15 2026-09-22 22:08:14 +02:00
Veronica Berglyd Olsen
d1867ee15a Bump uv action 2026-09-22 22:07:57 +02:00
Veronica Berglyd Olsen
4e8a904477 Set permissions on the auto-approve job 2026-09-22 22:06:58 +02:00
Veronica Berglyd Olsen
779dd2ddc5 Minor tweaks (#3026) 2026-09-20 22:16:34 +02:00
Veronica Berglyd Olsen
6a0244cf20 Fix count in index warning log message 2026-09-20 18:08:45 +02:00
Veronica Berglyd Olsen
f093486734 Update lockfile 2026-09-20 18:08:22 +02:00
Veronica Berglyd Olsen
aa99cfd5dd Remove newlines and title brackets (#3020) 2026-09-13 19:09:20 +02:00
Veronica Berglyd Olsen
921c5885bf Remove newlines and title brackets 2026-09-13 19:06:20 +02:00
Veronica Berglyd Olsen
996f25d1fd Templates updates (#3019) 2026-09-13 18:39:24 +02:00
Veronica Berglyd Olsen
d0c694b46e Add issue forms 2026-09-13 18:36:10 +02:00
Veronica Berglyd Olsen
66d6704a08 Remove local code of conduct since it is inherited from the organisation 2026-09-13 11:47:18 +02:00
Veronica Berglyd Olsen
360ce67af8 Drop the lock threads job on release (#3015) 2026-09-09 20:53:51 +02:00
Veronica Berglyd Olsen
7fed72810c Drop the lock threads job (#3014) 2026-09-09 20:47:51 +02:00
Veronica Berglyd Olsen
a1a5e75143 Drop the lock threads job on release 2026-09-09 20:44:12 +02:00
Veronica Berglyd Olsen
c8d9276926 Drop the lock threads job 2026-09-09 20:43:42 +02:00
Veronica Berglyd Olsen
5eff4ef959 Update the lock threads job (#3011) 2026-09-06 17:59:45 +02:00
Veronica Berglyd Olsen
7bb292f439 Update the lock threads job 2026-09-06 17:56:11 +02:00
Veronica Berglyd Olsen
f744d860b3 Add build meta data to main and update workflows (#3010) 2026-09-05 20:31:56 +02:00
Veronica Berglyd Olsen
0bfb8b4eed Fix underline length 2026-09-05 20:29:13 +02:00
Veronica Berglyd Olsen
ccf09cca75 Merge branch 'main' into meta-data-to-main 2026-09-05 20:25:08 +02:00
Veronica Berglyd Olsen
8d594ab62d Build meta (#3009) 2026-09-05 20:24:12 +02:00
Veronica Berglyd Olsen
334cb94c08 Fix tzdata on Windows 2026-09-05 20:21:02 +02:00
Veronica Berglyd Olsen
485a0ea202 Fix tests, and add a migration notice for Launcpad users 2026-09-05 20:12:27 +02:00
Veronica Berglyd Olsen
367d28c909 Record build info during builds 2026-09-05 20:04:47 +02:00
Veronica Berglyd Olsen
b9d9436a94 Parse the meta.toml file in Config and add to error report 2026-09-05 19:54:24 +02:00
Veronica Berglyd Olsen
ae0f629fa7 Add a build meta data file 2026-09-05 19:30:43 +02:00
Veronica Berglyd Olsen
c6669df375 Workflows (#3008) 2026-09-05 19:08:06 +02:00
Veronica Berglyd Olsen
1f2584e093 Rename workflows 2026-09-05 19:05:19 +02:00
Veronica Berglyd Olsen
eddb935907 Bump coverage version 2026-09-05 19:01:58 +02:00
Veronica Berglyd Olsen
fb123d2080 Switch lock threads to use the saga soft bot 2026-09-05 18:12:42 +02:00
Veronica Berglyd Olsen
b55097eeca Merge release 26.2 into main (#3007) 2026-09-05 17:58:29 +02:00
Veronica Berglyd Olsen
82a947201b Merge branch 'main' into merge-release-26.2 2026-09-05 17:54:48 +02:00
Veronica Berglyd Olsen
c8421b7870 Post release updates (#3006) 2026-09-05 17:53:46 +02:00
Veronica Berglyd Olsen
dd907871c5 Add code owners 2026-09-05 17:50:08 +02:00
Veronica Berglyd Olsen
07a72c3eae Update to use a bot account 2026-09-05 17:43:36 +02:00
Veronica Berglyd Olsen
1ab517f8a0 Reformat workflow 2026-09-05 17:03:26 +02:00
Veronica Berglyd Olsen
8b4fcd14d8 Add auto-approve for owner's PRs 2026-09-05 17:00:23 +02:00
Veronica Berglyd Olsen
ec77153a75 Reword the attribution in the readme 2026-09-05 16:25:11 +02:00
Veronica Berglyd Olsen
2a34485411 Remove local debian build 2026-09-05 14:44:22 +02:00
Veronica Berglyd Olsen
eae88d1cee Release 2026.2 (#3004) 2026-09-05 14:19:48 +02:00
Veronica Berglyd Olsen
4b40f3af0d Rename coverage report jobs 2026-09-05 13:57:52 +02:00
Veronica Berglyd Olsen
34011b5d01 Add missing note in changelog 2026-09-05 13:51:19 +02:00
Veronica Berglyd Olsen
575c226a98 Update changelog 2026-09-05 13:47:48 +02:00
Veronica Berglyd Olsen
6b52d32ac1 Bump version number to 26.2 2026-09-05 13:34:37 +02:00
Veronica Berglyd Olsen
b268277d9b Update i18n (#2968) 2026-09-05 13:17:02 +02:00
Veronica Berglyd Olsen
65ebdcdd8a Update translations 2026-09-05 13:13:29 +02:00
Veronica Berglyd Olsen
93122e6032 Fix theme colors (#3003) 2026-09-05 12:15:51 +02:00
HeyMyian
25616ee8ce Fix theme colors 2026-09-05 01:25:48 +02:00
Veronica Berglyd Olsen
c5596ba0ad Merge branch 'release' into update-i18n 2026-09-04 22:54:29 +02:00
Veronica Berglyd Olsen
348e6347c1 Merge release to main (#3002) 2026-09-04 22:48:33 +02:00
Veronica Berglyd Olsen
866cf8c704 Remove duplicate coverage report 2026-09-04 22:44:57 +02:00
Veronica Berglyd Olsen
823fdf3177 Merge branch 'main' into merge-release-to-main 2026-09-04 22:43:26 +02:00
Veronica Berglyd Olsen
9af579f9fd Revert coverage report changes (#3001) 2026-09-04 22:42:31 +02:00
Veronica Berglyd Olsen
a7c4f92e9a Add a coverage summary on the workflow for fork PRs 2026-09-04 22:37:55 +02:00
Veronica Berglyd Olsen
0de9223c4f Move the coverage report back 2026-09-04 22:34:55 +02:00
Veronica Berglyd Olsen
0d1c73d1df Change default font (#2998) 2026-09-04 22:29:25 +02:00
Veronica Berglyd Olsen
f626cf0837 Remove outdated info from the PR template 2026-09-04 22:20:49 +02:00
Veronica Berglyd Olsen
197903f611 Fix trigger in coverage report (#3000) 2026-09-04 22:15:40 +02:00
Veronica Berglyd Olsen
d7b5cba088 Update PR template 2026-09-04 22:12:09 +02:00
Veronica Berglyd Olsen
6b711cebe9 Fix trigger in coverage report 2026-09-04 22:11:04 +02:00
Veronica Berglyd Olsen
b244b611b3 Update PR template 2026-09-04 22:03:48 +02:00
Veronica Berglyd Olsen
6bc7db501d Add coverage report workflow (#2999) 2026-09-04 21:57:52 +02:00
Veronica Berglyd Olsen
cfedf5cd44 Add coverage report workflow 2026-09-04 21:50:41 +02:00
Veronica Berglyd Olsen
25f416b1fa Fix the coverage reporting for forks 2026-09-04 21:42:47 +02:00
Veronica Berglyd Olsen
67518be5ca Fix tests 2026-09-04 21:28:30 +02:00
Veronica Berglyd Olsen
1e91472b12 Fix windows workflow not failing on test failure 2026-09-04 21:18:05 +02:00
HeyMyian
176a54d5be Update comment 2026-09-04 19:38:35 +02:00
HeyMyian
004a059504 Line height default to 1.15 2026-09-04 00:32:52 +02:00
HeyMyian
90c5062fc7 Windows default from Arial to Segoe UI 2026-09-04 00:32:37 +02:00
Veronica Berglyd Olsen
1167c7883e Merge workflow changes into main (#2996) 2026-08-31 19:59:45 +02:00
Veronica Berglyd Olsen
8e80cb0afc Merge branch 'main' into merge-workflow-changes-into-main 2026-08-31 19:56:02 +02:00
Veronica Berglyd Olsen
fbba6c320b Update workflows (#2995) 2026-08-31 19:52:50 +02:00
Veronica Berglyd Olsen
bba37676ad Consistent test job names 2026-08-31 19:49:10 +02:00
Veronica Berglyd Olsen
ef8c8d83b0 Update badge, fix test, update action versions 2026-08-31 19:42:50 +02:00
Veronica Berglyd Olsen
7c348b899a Use shorter names for build jobs 2026-08-31 19:29:54 +02:00
Veronica Berglyd Olsen
4687e8ba9d Combine to one test workflow 2026-08-31 19:29:06 +02:00
Veronica Berglyd Olsen
3eca53d1dc Add coverage report 2026-08-31 19:12:18 +02:00
Veronica Berglyd Olsen
b142cd7fd4 Remove codecov 2026-08-31 18:56:26 +02:00
Veronica Berglyd Olsen
f4d7795f1c Update readme with Cloudsmith attribution 2026-08-31 18:29:28 +02:00
Veronica Berglyd Olsen
386796a413 Update license-files, build dependencies, and lockfile 2026-08-31 17:49:08 +02:00
Veronica Berglyd Olsen
ed840c0c16 Inject license into DEBIAN/control 2026-08-31 17:15:27 +02:00
Veronica Berglyd Olsen
4aa23a9603 Update all references to old repo path (#2994) 2026-08-31 01:01:16 +02:00
Veronica Berglyd Olsen
00ba707114 Update all references to old repo path 2026-08-31 00:57:53 +02:00
Veronica Berglyd Olsen
a672bbf04f Merge final workflows into main (#2993) 2026-08-31 00:16:32 +02:00
Veronica Berglyd Olsen
eff118d1db Merge branch 'main' into merge-final-workflows-into-main 2026-08-31 00:12:44 +02:00
Veronica Berglyd Olsen
2e5cb614a1 Add id token permission (#2992) 2026-08-31 00:11:23 +02:00
Veronica Berglyd Olsen
acc0912509 Remove the at symbol from account slug again 2026-08-30 23:42:21 +02:00
Veronica Berglyd Olsen
4d68042c07 Test on latest fedora instead of buggy rawhide 2026-08-30 23:36:14 +02:00
Veronica Berglyd Olsen
8b99e9fd89 Use string not number 2026-08-30 23:34:19 +02:00
Veronica Berglyd Olsen
45c4aa03fb Add verify-auth flag 2026-08-30 23:27:41 +02:00
Veronica Berglyd Olsen
54173d51ff Make the build number an actual number 2026-08-30 20:58:44 +02:00
Veronica Berglyd Olsen
82f56e95e4 Add id token permission 2026-08-30 20:51:01 +02:00
Veronica Berglyd Olsen
f7747f2865 Merge workflows to main (#2991) 2026-08-30 20:49:00 +02:00
Veronica Berglyd Olsen
549c827a4b Merge branch 'main' into merge-workflows-to-main 2026-08-30 20:45:21 +02:00
Veronica Berglyd Olsen
367d58a632 Refactor debian build (#2990) 2026-08-30 20:44:47 +02:00
Veronica Berglyd Olsen
915f72a753 Use OIDC for publishing packages 2026-08-30 20:42:02 +02:00
Veronica Berglyd Olsen
7d707b7471 Relabel some build jobs 2026-08-30 20:14:26 +02:00
Veronica Berglyd Olsen
faaf56c93b Fix Mint build flag 2026-08-30 20:02:28 +02:00
Veronica Berglyd Olsen
37e6cd12ff Add Linux Mint 22 2026-08-30 19:54:09 +02:00
Veronica Berglyd Olsen
648e687c9f Use manual select rather than matrix build 2026-08-30 19:50:16 +02:00
Veronica Berglyd Olsen
4bdd69b35e Add build for Mint 22 2026-08-30 19:49:50 +02:00
Veronica Berglyd Olsen
6ce041ba33 Merge finished release workflows into main (#2989) 2026-08-29 21:42:18 +02:00
Veronica Berglyd Olsen
1094072e9a Merge branch 'main' into finished-release-workflows 2026-08-29 21:38:49 +02:00
Veronica Berglyd Olsen
3f22fcabc8 Complete Debian packaging tooling (#2988) 2026-08-29 21:37:29 +02:00
Veronica Berglyd Olsen
cfed3acd66 Fail on EOL build 2026-08-29 21:33:52 +02:00
Veronica Berglyd Olsen
e2cff94a62 Update target repositories 2026-08-29 20:52:04 +02:00
Veronica Berglyd Olsen
82d0661e37 Add suffix to packages 2026-08-29 20:40:52 +02:00
Veronica Berglyd Olsen
5504d40c8f Fix publish step package install failure 2026-08-29 19:52:56 +02:00
Veronica Berglyd Olsen
60fd1aa17b Shorten the checkbox message 2026-08-29 19:28:54 +02:00
Veronica Berglyd Olsen
4d6ff675d0 Update publish workflow 2026-08-29 19:27:49 +02:00
Veronica Berglyd Olsen
014ae4eb03 Let pkgutils determine what dependencies to install on build 2026-08-29 19:26:03 +02:00
Veronica Berglyd Olsen
72c395c25b Make it possible to run the builds without publishing 2026-08-29 19:20:36 +02:00
Veronica Berglyd Olsen
abd85d2b53 Drop the prebuilt wheel approach 2026-08-29 19:14:32 +02:00
Veronica Berglyd Olsen
66bbb8c4f8 Merge release branch to main (#2987) 2026-08-29 18:49:28 +02:00
Veronica Berglyd Olsen
4343425ce2 Merge branch 'main' into release-to-main 2026-08-29 18:45:12 +02:00
Veronica Berglyd Olsen
39fe6b59a1 Update Debian packaging (#2986) 2026-08-29 18:43:35 +02:00
Veronica Berglyd Olsen
d11e07c812 Fix the package versions for deb packages 2026-08-29 18:39:23 +02:00
Veronica Berglyd Olsen
e6e57c8062 Add workflows 2026-08-29 18:18:03 +02:00
Veronica Berglyd Olsen
4f47ba19d6 Update deb package build commands 2026-08-29 18:00:29 +02:00
Veronica Berglyd Olsen
e035e85018 Bump project version (#2984) 2026-08-29 14:21:13 +02:00
Veronica Berglyd Olsen
42e8b2dd0c Update tests 2026-08-29 14:12:03 +02:00
Veronica Berglyd Olsen
b60789c85e Bump the project format version 2026-08-29 13:56:47 +02:00
Veronica Berglyd Olsen
cb21f5acbf Fix repeated shortcodes in pasted rich text (#2980) 2026-08-23 22:39:15 +02:00
Veronica Berglyd Olsen
566e84bf25 Add shortcut for past as plain text 2026-08-23 22:34:30 +02:00
Veronica Berglyd Olsen
ae487b925e Add test coverage 2026-08-23 22:17:55 +02:00
Veronica Berglyd Olsen
d9631099cf Fix split formatting when paste from rich text (#2978) 2026-08-23 22:16:22 +02:00
Veronica Berglyd Olsen
48b58b1f30 Fix native font picker on macOS does not change the selected font (#2970) 2026-08-15 20:57:43 +02:00
Konstantin Kostov
77b7b28403 feat: allow the native font picker on macOS to change the selected font 2026-08-15 18:08:17 +02:00
Veronica Berglyd Olsen
9640a57dc8 Fix tab widget border (#2971) 2026-08-15 15:17:36 +02:00
Veronica Berglyd Olsen
9b49734e53 Fix uncovered line 2026-08-15 15:09:56 +02:00
Veronica Berglyd Olsen
739146e0fb Fix border issue for the tab widgets 2026-08-15 15:08:08 +02:00
Veronica Berglyd Olsen
34451a62e8 Merge branch 'release' into update-i18n 2026-08-09 20:37:41 +02:00
Veronica Berglyd Olsen
89be8c9d9c Reformat translation files (#2969) 2026-08-09 20:33:57 +02:00
Veronica Berglyd Olsen
e6dcf2ef82 Update other translation files with additional translations and remove unverified strings 2026-08-09 20:26:16 +02:00
Veronica Berglyd Olsen
a16581f608 Update complete Norwegian, US English and Japanese 2026-08-09 20:25:47 +02:00
Veronica Berglyd Olsen
f9e6df8f92 Update all translation file meta data 2026-08-09 20:19:28 +02:00
Veronica Berglyd Olsen
416078506b Merge 26.2 RC 1 into main (#2967) 2026-08-09 17:07:02 +02:00
Veronica Berglyd Olsen
d5be1e328c Merge branch 'main' into merge-26.2rc1 2026-08-09 16:45:44 +02:00
Veronica Berglyd Olsen
4beb064fe9 Fix pre-release version number for flatpak (#2965) 2026-08-09 15:34:12 +02:00
Veronica Berglyd Olsen
2d6dce6351 Fix pre-release version number for flatpak 2026-08-09 15:29:50 +02:00
Veronica Berglyd Olsen
d5e0ba8013 Fix version number format (#2963) 2026-08-09 14:56:57 +02:00
Veronica Berglyd Olsen
320ce4a62d Fix version number format 2026-08-09 14:53:31 +02:00
Veronica Berglyd Olsen
0edba02ead Release 2026.2 RC 1 (#2962) 2026-08-09 14:44:34 +02:00
Veronica Berglyd Olsen
0a19bcbd06 Update changelog 2026-08-09 14:41:10 +02:00
Veronica Berglyd Olsen
38cdcc5379 Update translations file 2026-08-09 14:30:47 +02:00
Veronica Berglyd Olsen
1ea593b2a3 Bump version to 26.2 RC 1 2026-08-09 14:29:27 +02:00
Veronica Berglyd Olsen
0c2bc8ad38 Add expand outline toggle 2026-08-09 13:11:46 +02:00
Veronica Berglyd Olsen
ba90793830 Update tests 2026-08-08 18:09:40 +02:00
Veronica Berglyd Olsen
2fc97006d9 Fix line wrapping and add connection to update on root folder change 2026-08-08 17:52:12 +02:00
Veronica Berglyd Olsen
103186d088 Restore the novel selector functionality 2026-08-08 17:38:55 +02:00
Veronica Berglyd Olsen
fce340fd33 Restore the export button 2026-08-08 17:28:53 +02:00
Veronica Berglyd Olsen
b97313914f Add partition entries 2026-08-08 17:09:22 +02:00
Veronica Berglyd Olsen
5635c67251 Draw structure level boxes around the items 2026-08-08 16:55:16 +02:00
Veronica Berglyd Olsen
2971a8473b Make the outline columns user-resizable 2026-08-08 16:00:23 +02:00
Veronica Berglyd Olsen
fb59410818 Add a basic outline model, tree view, and delegate 2026-08-08 15:05:03 +02:00
Veronica Berglyd Olsen
eebe58ca2e Add foldable panels 2026-08-05 23:33:39 +02:00
Veronica Berglyd Olsen
397b177462 Add component for new outline panel 2026-08-05 23:13:29 +02:00
Veronica Berglyd Olsen
79d0e80b1c Rip out the old outline panel and add an empty story view widget 2026-08-05 22:40:16 +02:00
Veronica Berglyd Olsen
6b7bcd0314 Merge fixes into main (#2957) 2026-08-05 21:21:10 +02:00
Veronica Berglyd Olsen
2b811911d3 Merge branch 'main' into merge-fixes 2026-08-05 21:17:23 +02:00
Veronica Berglyd Olsen
e218943c42 Improve single quote dialogue regex (#2956) 2026-08-05 21:03:51 +02:00
Veronica Berglyd Olsen
9d97c93ece Keep the most complex tests and make them run for double too 2026-08-05 18:14:37 +02:00
Veronica Berglyd Olsen
c5c6897ee3 Update tests 2026-08-05 18:05:32 +02:00
Veronica Berglyd Olsen
2fc9a59695 Try a different pattern for single quoted dialogue 2026-08-05 18:05:06 +02:00
Veronica Berglyd Olsen
9a9a05cd7e Fix drag and drop and new project index (#2954) 2026-08-04 18:04:19 +02:00
Veronica Berglyd Olsen
dba2f9485d Update tests 2026-08-04 17:52:10 +02:00
Veronica Berglyd Olsen
9ce3662681 Build the index when creating a fresh project (#2952) 2026-08-04 17:48:45 +02:00
Veronica Berglyd Olsen
a35258a133 Remove redundant feature in novel model 2026-08-04 17:48:19 +02:00
Veronica Berglyd Olsen
ae47aaeacd Fix drag and drop onto another item in the project tree (#2953) 2026-08-04 17:29:51 +02:00
Veronica Berglyd Olsen
dc4e96ebf2 Remove broken link in dictionary docs (#2951) 2026-08-03 19:33:17 +02:00
Veronica Berglyd Olsen
392c3ea07c Remove broken link in dictionary docs 2026-08-03 19:28:41 +02:00
Veronica Berglyd Olsen
e4b5cbd0bf Merge 26.2b2 release into main (#2950) 2026-08-02 16:28:40 +02:00
Veronica Berglyd Olsen
faa097ac37 Merge branch 'main' into merge-26.2b2 2026-08-02 16:17:01 +02:00
Veronica Berglyd Olsen
5e5cf93699 Release 26.2 Beta 2 (#2947) 2026-08-02 15:37:58 +02:00
Veronica Berglyd Olsen
796148f410 Update the changelog 2026-08-02 15:20:06 +02:00
Veronica Berglyd Olsen
990c5f497c Bump the breaking change version for the project folder structure 2026-08-02 02:10:56 +02:00
Veronica Berglyd Olsen
ee739884e4 Bump version to 26.2 beta 2 2026-08-02 02:06:42 +02:00
Veronica Berglyd Olsen
31d97bb939 Fix minor theme issues (#2946) 2026-08-02 00:36:03 +02:00
Veronica Berglyd Olsen
4a7c06e6f0 Fix incorrect theme colours for active/inactive icons in project tree context menu (#2941) 2026-08-02 00:28:26 +02:00
Veronica Berglyd Olsen
84a79686d4 Remove placeholder text for Manuscript preview (#2942) 2026-08-02 00:27:00 +02:00
Veronica Berglyd Olsen
9b3bb24cda Document format update (#2945) 2026-08-02 00:23:12 +02:00
Veronica Berglyd Olsen
1cfe00697a Add better sanitation of control characters in user entered strings 2026-08-02 00:13:22 +02:00
Veronica Berglyd Olsen
a57910bda7 Convert the sample project 2026-08-01 23:15:38 +02:00
Veronica Berglyd Olsen
bd04109f55 Harden the document converter against possible failure scenarios 2026-08-01 23:14:20 +02:00
Veronica Berglyd Olsen
11906bab53 Ask the user before upgrading documents 2026-08-01 22:59:03 +02:00
Veronica Berglyd Olsen
e51bb95fa6 Update outdated test 2026-08-01 22:03:29 +02:00
Veronica Berglyd Olsen
f63e429c2a Update other tests 2026-08-01 21:55:45 +02:00
Veronica Berglyd Olsen
2b0da9beb6 Update storage class and tests 2026-08-01 21:37:55 +02:00
Veronica Berglyd Olsen
8e7b8ae078 Fix minor issues in the document class and update tests 2026-08-01 21:29:27 +02:00
Veronica Berglyd Olsen
bc568a69fd Rewrite the document class to expect markdown-like files with toml headers 2026-08-01 20:12:47 +02:00
Veronica Berglyd Olsen
163e8a75dc Refactor project autosave (#2944) 2026-08-01 19:25:29 +02:00
Veronica Berglyd Olsen
50ec9b42ed Extend the toml parser to allow one level data from/to string 2026-08-01 18:53:08 +02:00
Veronica Berglyd Olsen
98b9aaab28 Move config and toml format parsers to their own formats modules 2026-08-01 18:08:40 +02:00
Veronica Berglyd Olsen
f8cd1d0d92 Theme updates (#2943) 2026-08-01 18:03:52 +02:00
Veronica Berglyd Olsen
ee4555b3c6 Skip the full file hash on document save if it isn't necessary (#2929) 2026-08-01 17:35:30 +02:00
HeyMyian
e37801fe6d Forgot activeBase 2026-08-01 17:33:04 +02:00
HeyMyian
5ba6a02113 Update credits 2026-08-01 17:32:53 +02:00
Veronica Berglyd Olsen
7e0428112a Remove the double replace in editor getText and use translate instead 2026-08-01 17:02:40 +02:00
Veronica Berglyd Olsen
058d51e80e Drop the word count step in editor saveText (#2928) 2026-08-01 16:52:48 +02:00
Veronica Berglyd Olsen
87fdf9acca Move upgrade check back before error handling 2026-08-01 16:30:42 +02:00
HeyMyian
4d3fa458eb New themes 2026-08-01 16:23:58 +02:00
HeyMyian
9aa6f2d36b Update new theme colours 2026-08-01 16:23:46 +02:00
Veronica Berglyd Olsen
46eeeb107e Fix the revision counter logic and update tests 2026-08-01 16:09:23 +02:00
Veronica Berglyd Olsen
a1a63d474c Update tests 2026-08-01 15:43:52 +02:00
Veronica Berglyd Olsen
af15669fa6 Add index revision instead of an index broken flag and no longer auto save the index 2026-08-01 15:34:59 +02:00
Veronica Berglyd Olsen
67cebd9ca6 Run the Python GC on a timer (#2940) 2026-08-01 13:18:32 +02:00
Veronica Berglyd Olsen
4a20de77f9 Allow passing an argument to the crash hunt script 2026-08-01 12:58:21 +02:00
Veronica Berglyd Olsen
fee724f2d9 Add debug info to the --meminfo flag 2026-08-01 00:52:15 +02:00
Veronica Berglyd Olsen
0044a2f731 Run the Python GC on a timer 2026-08-01 00:51:58 +02:00
Veronica Berglyd Olsen
e700176924 Fix document block search (#2939) 2026-07-31 23:29:37 +02:00
Veronica Berglyd Olsen
b2820e908f Fix test coverage 2026-07-31 23:19:27 +02:00
Veronica Berglyd Olsen
d3fc1a6582 Remove binary search findBlockByNumber in _skipToParagraph 2026-07-31 23:04:17 +02:00
Veronica Berglyd Olsen
68a376f3ae Remove binary search findBlockByNumber in the loop in _dispatchTextCheck 2026-07-31 23:01:06 +02:00
Veronica Berglyd Olsen
74b1640214 Remove binary search findBlock and findBlockByNumber in _selectedBlocks 2026-07-31 22:32:26 +02:00
Veronica Berglyd Olsen
62b80c229b Remove binary search findBlockByNumber in rehighlightByType 2026-07-31 22:28:53 +02:00
Veronica Berglyd Olsen
eb4dc9e66c Remove binary search findBlockByNumber in iterBlockByType 2026-07-31 22:23:23 +02:00
Veronica Berglyd Olsen
0926d6fa37 Fix various concurrency issues (#2938) 2026-07-31 18:51:16 +02:00
Veronica Berglyd Olsen
62901ae91b Fix API retriever bug in the version info widget (#2926) 2026-07-31 18:43:52 +02:00
Veronica Berglyd Olsen
e78c894fb8 Fix test coverage for NTabBar that was now missed 2026-07-31 18:41:55 +02:00
Veronica Berglyd Olsen
f6e2051355 Post info on the status bar when the theme changes (#2886) 2026-07-31 18:22:57 +02:00
Veronica Berglyd Olsen
24ca9a3a04 Remove the processEvents call from the status message on the status bar 2026-07-31 18:15:23 +02:00
Veronica Berglyd Olsen
f54ae5ce15 Fix project search reentrancy (#2937) 2026-07-31 18:03:48 +02:00
Veronica Berglyd Olsen
a6903612e4 Skip flaky uncovered branch 2026-07-31 18:00:35 +02:00
Veronica Berglyd Olsen
3df616ef02 Less comments 2026-07-31 17:56:10 +02:00
Veronica Berglyd Olsen
11f45a465c Add regression test 2026-07-31 17:53:25 +02:00
Veronica Berglyd Olsen
8db7b1561d Fix project search re-entrancy issue (#2924) 2026-07-31 17:48:51 +02:00
Veronica Berglyd Olsen
5d6285e260 Merge fixes from release branch (#2922) 2026-07-30 23:02:37 +02:00
Veronica Berglyd Olsen
ec2d73bc4c Merge branch 'main' into merge-fixes 2026-07-30 22:59:01 +02:00
Veronica Berglyd Olsen
797485272c Ignore branch that is missed in CI 2026-07-30 22:58:39 +02:00
Veronica Berglyd Olsen
fc5c079118 Update linting (#2921) 2026-07-30 22:55:12 +02:00
Veronica Berglyd Olsen
712c660aee Update linting 2026-07-30 22:52:04 +02:00
Veronica Berglyd Olsen
b0b61b5ca7 Bump to 26.3 alpha 0 (#2920) 2026-07-30 22:51:25 +02:00
Veronica Berglyd Olsen
b96d86ac82 Turn preview back on for the formatter 2026-07-30 22:47:56 +02:00
Veronica Berglyd Olsen
bac5fdf824 Bump main to 26.3 alpha 0 2026-07-30 22:28:38 +02:00
Veronica Berglyd Olsen
07a9cb6256 Update ruff 2026-07-30 22:27:56 +02:00
Veronica Berglyd Olsen
b01f5d473a Writing goals with character count (#2919) 2026-07-30 22:12:58 +02:00
Veronica Berglyd Olsen
7eb105c5ed Update tests 2026-07-30 22:01:56 +02:00
Veronica Berglyd Olsen
0d7d172aae Add some missing plumbing 2026-07-30 22:01:36 +02:00
Veronica Berglyd Olsen
233ef00989 Connect the toggle switch for character project goal 2026-07-30 21:36:07 +02:00
Veronica Berglyd Olsen
10ffb371dc Rename the project target variables 2026-07-30 21:14:48 +02:00
Veronica Berglyd Olsen
d37cbf4545 Theme followup (#2916) 2026-07-30 21:08:23 +02:00
Veronica Berglyd Olsen
9153388c06 Fix re-entrancy bug (#2918) 2026-07-30 20:58:30 +02:00
Veronica Berglyd Olsen
7a89dc7fef Remove other redundant processEvents calls 2026-07-30 20:52:23 +02:00
Veronica Berglyd Olsen
2391fce076 Add re-entrancy guard in manuscript 2026-07-30 20:08:17 +02:00
Veronica Berglyd Olsen
3a67535206 Fix the drag and drop crash 2026-07-30 19:50:00 +02:00
Veronica Berglyd Olsen
2f94e63381 Adjust theme colours 2026-07-30 01:09:58 +02:00
Veronica Berglyd Olsen
bf2217e0b0 Update docs 2026-07-30 00:24:40 +02:00
Veronica Berglyd Olsen
c31f3defaa Tab widget colour and tool buttons (#2915) 2026-07-30 00:15:20 +02:00
Veronica Berglyd Olsen
f3fc6ae757 Update test coverage 2026-07-30 00:06:16 +02:00
Veronica Berglyd Olsen
daaeba1bbb Clean up flat icon buttons and toggle 2026-07-30 00:01:03 +02:00
Veronica Berglyd Olsen
bd27f55d32 Tweak the icon buttons 2026-07-29 22:43:40 +02:00
Veronica Berglyd Olsen
c1913ffde2 Update colour usage in the code 2026-07-29 20:52:58 +02:00
Veronica Berglyd Olsen
060ee9679a Update the GUI theme keys in all themes 2026-07-29 20:43:58 +02:00
Veronica Berglyd Olsen
3115070aea Missed accent text (#2912) 2026-07-27 00:23:15 +02:00
Veronica Berglyd Olsen
aea9eba50b Fix test 2026-07-27 00:18:56 +02:00
Veronica Berglyd Olsen
1da0265a7c Missed an accent text candidate in the search panel 2026-07-27 00:17:33 +02:00
Veronica Berglyd Olsen
186cb5e81b Add an accent text colour (#2911) 2026-07-27 00:02:54 +02:00
Veronica Berglyd Olsen
20e42186fb Add accentText to reset theme function 2026-07-26 23:59:50 +02:00
Veronica Berglyd Olsen
02f785dd97 Update docs 2026-07-26 23:56:05 +02:00
Veronica Berglyd Olsen
7e6b98cb73 Adjust some theme accentText colours to better shades 2026-07-26 23:52:53 +02:00
Veronica Berglyd Olsen
de5a9d18ba Call the new colour accentText instead 2026-07-26 23:38:18 +02:00
Veronica Berglyd Olsen
d9ea86441d Rename to accentText instead 2026-07-26 23:37:26 +02:00
Veronica Berglyd Olsen
0a037aaef6 Connect the new theme colour to the custom tab bar 2026-07-26 23:03:58 +02:00
Veronica Berglyd Olsen
c760eafd86 Add a selectedText theme colour under the GUI section 2026-07-26 23:03:30 +02:00
Veronica Berglyd Olsen
9f0c7ecb24 Pre release updates (#2909) 2026-07-26 19:50:01 +02:00
Veronica Berglyd Olsen
1fb952c8dc Update base translations file for 26.2 2026-07-26 19:45:24 +02:00
Veronica Berglyd Olsen
86b4bd65b8 Merge branch 'main' into pre-release 2026-07-26 19:44:25 +02:00
Veronica Berglyd Olsen
5270379632 Flatpak build follow-up (#2908) 2026-07-26 19:41:42 +02:00
Veronica Berglyd Olsen
380ccacddf The clean build command should also clear flatpak files 2026-07-26 19:19:30 +02:00
Veronica Berglyd Olsen
9e78e0f046 Cleanup of various non-code files (#2907) 2026-07-26 19:08:41 +02:00
Veronica Berglyd Olsen
8db4bd1e5f Clean up gitignore 2026-07-26 19:00:32 +02:00
Veronica Berglyd Olsen
ba64945d2d Clarify AI policy and scope 2026-07-26 18:45:21 +02:00
Veronica Berglyd Olsen
5fd4ce231f Drop the agents file since I don't plan to use Copilot review after all 2026-07-26 18:45:03 +02:00
Veronica Berglyd Olsen
654ba50e49 Add Flatpak (#2906) 2026-07-26 18:02:21 +02:00
Veronica Berglyd Olsen
dc074a07e4 Fix build version 2026-07-26 17:56:31 +02:00
Veronica Berglyd Olsen
38eb05efb7 Fix privilege issue in workflow 2026-07-26 17:49:37 +02:00
Veronica Berglyd Olsen
1eba971031 Remove the runtime and pin the flatpak-pip-generator script 2026-07-26 17:42:11 +02:00
Veronica Berglyd Olsen
5fa696c18a Remove apt pyyaml from flatpak build 2026-07-26 17:27:24 +02:00
Veronica Berglyd Olsen
7b9a2d4b2e Fix flatpak build workflow 2026-07-26 17:23:26 +02:00
Veronica Berglyd Olsen
bad6766532 Fix non-free icons build 2026-07-26 17:12:50 +02:00
Veronica Berglyd Olsen
3a42cd73cb Make pyyaml an on-demand import 2026-07-26 17:03:00 +02:00
Veronica Berglyd Olsen
36e19acf88 Add command to generate flathub files 2026-07-26 16:55:12 +02:00
Veronica Berglyd Olsen
c458dcc620 Make the welcome dialog request folder rather than file 2026-07-26 16:31:06 +02:00
Veronica Berglyd Olsen
c24bd47163 Set flatpak versions in the pyproject file instead 2026-07-26 16:03:34 +02:00
Veronica Berglyd Olsen
9e1b4ba1f4 Don't pin dependencies 2026-07-26 15:53:48 +02:00
Veronica Berglyd Olsen
bce93a0856 Update license handling and app access 2026-07-26 15:30:59 +02:00
Veronica Berglyd Olsen
ed6666e65a Add flags for free/non-free icon packs for build workflows 2026-07-26 15:19:06 +02:00
Veronica Berglyd Olsen
e3b9f7cf24 Use one canonical appdata.xml 2026-07-26 15:01:56 +02:00
Veronica Berglyd Olsen
b0b32b43d8 Update build files 2026-07-26 14:46:55 +02:00
Veronica Berglyd Olsen
347d7f2593 Update workflows and python formatting 2026-07-26 14:12:48 +02:00
Veronica Berglyd Olsen
e673f36288 Add flatpak build 2026-07-26 13:52:46 +02:00
Veronica Berglyd Olsen
933c53c87b Merge branch 'main' into flatpak 2026-07-26 13:46:04 +02:00
Veronica Berglyd Olsen
c99686d727 Release 26.2b1 (#2902) 2026-07-26 11:06:55 +02:00
Veronica Berglyd Olsen
a1410302ce Merge main into release (#2904) 2026-07-26 02:15:13 +02:00
Veronica Berglyd Olsen
8941488682 Remove staging branch (#2903) 2026-07-26 01:20:20 +02:00
Veronica Berglyd Olsen
ec8e0a7feb Revert "Add staging branch" 2026-07-26 00:17:16 +01:00
Veronica Berglyd Olsen
cb0d2e59b8 Update changelog 2026-07-25 22:02:11 +02:00
Veronica Berglyd Olsen
2166fa0396 Bump version to 26.2b1 2026-07-25 22:01:58 +02:00
Veronica Berglyd Olsen
bb8146e9c3 Add staging branch (#2901) 2026-07-25 20:25:41 +02:00
Veronica Berglyd Olsen
8698bf1d45 Merge 26.1.2 into main (#2900) 2026-07-25 20:20:57 +02:00
Veronica Berglyd Olsen
33f0fb9413 Update readme and contributing guide 2026-07-25 20:20:21 +02:00
Veronica Berglyd Olsen
f05e726ca4 Add support for a staging branch in the workflow files 2026-07-25 20:20:05 +02:00
Veronica Berglyd Olsen
8791ca5800 Fix issues after the merge 2026-07-25 19:42:59 +02:00
Veronica Berglyd Olsen
8d6c8d9f61 Merge branch 'main' into merge-26.1.2 2026-07-25 19:37:11 +02:00
Veronica Berglyd Olsen
6b0f73d41a Fix typo in changelog 2026-07-25 19:34:29 +02:00
Veronica Berglyd Olsen
bc7befd4a8 Release 26.1.2 (#2898) 2026-07-25 19:22:31 +02:00
Veronica Berglyd Olsen
fc865fd5bc Debian build improvements and 26.2 Alpha 2 (#2896) 2026-07-25 19:15:40 +02:00
Veronica Berglyd Olsen
e4a9446e2b Update changelog 2026-07-25 19:15:15 +02:00
Veronica Berglyd Olsen
8abcd226e5 Bump version 2026-07-25 19:08:53 +02:00
Veronica Berglyd Olsen
cd26a19c1a Update Japanese and Russian translations (#2897) 2026-07-25 19:07:13 +02:00
Veronica Berglyd Olsen
2cda8efec0 Update Japanese and Russian translations 2026-07-25 19:00:20 +02:00
Veronica Berglyd Olsen
72e0250317 Make sure tests can run reliably on bare sandboxes 2026-07-25 18:24:09 +02:00
Veronica Berglyd Olsen
42c66426e6 Bump version to 26.2 alpha 2 2026-07-25 18:23:43 +02:00
Veronica Berglyd Olsen
e77f32d2f6 Make sure tests can run from source build 2026-07-25 17:59:29 +02:00
Veronica Berglyd Olsen
80f398c39e Include tests in debian source build 2026-07-25 17:45:33 +02:00
Veronica Berglyd Olsen
5570ede2a3 Bump the uv lock file (#2895) 2026-07-25 03:28:25 +02:00
Veronica Berglyd Olsen
06122aa295 Bump the uv lock file 2026-07-25 03:24:17 +02:00
Veronica Berglyd Olsen
e7123b4af3 Maybe the entire pyobjc is not necessary (#2894) 2026-07-25 03:10:46 +02:00
Konstantin Kostov
a7be4266bc feat: maybe the entire pyobjc is not necessary 2026-07-25 00:34:40 +02:00
Veronica Berglyd Olsen
d62adc4a97 Remove the redundant last project count read (#2892) 2026-07-24 03:05:49 +02:00
Veronica Berglyd Olsen
4b4db26721 The project target last count in the xml is no longer needed, so the read was removed, but write remains as useful meta data 2026-07-24 03:00:35 +02:00
Veronica Berglyd Olsen
ca752d6edb Change daily progress accounting (#2891) 2026-07-24 02:41:50 +02:00
Veronica Berglyd Olsen
8a6a224fda Fix refresh of writing goal when documents change status 2026-07-24 02:31:21 +02:00
Veronica Berglyd Olsen
be639522fe Make the session word count exact regardless of what documents are included or not based on items internal counts 2026-07-24 01:54:43 +02:00
Veronica Berglyd Olsen
184654c67f Customise tabwidget tabs (#2890) 2026-07-24 01:00:13 +02:00
Veronica Berglyd Olsen
3dabf07a60 Remove unnecessary tab order logic 2026-07-24 00:45:41 +02:00
Veronica Berglyd Olsen
8ec867c2d2 Add custom drawn tabs to the NTabWidget 2026-07-24 00:37:02 +02:00
Veronica Berglyd Olsen
75a8983c97 Allow excluding root folders from writing goals (#2889) 2026-07-23 18:35:32 +02:00
Veronica Berglyd Olsen
dac075f570 Update tests 2026-07-23 17:20:03 +02:00
Veronica Berglyd Olsen
0152590bda Add a reset button for daily progress 2026-07-23 17:11:28 +02:00
Veronica Berglyd Olsen
8e06ebbda0 Add more test coverage 2026-07-23 16:56:05 +02:00
Veronica Berglyd Olsen
ee85a19b53 Fix the current xml test 2026-07-23 16:34:42 +02:00
Veronica Berglyd Olsen
6a22bdf206 Update tests 2026-07-23 16:28:55 +02:00
Veronica Berglyd Olsen
7e0d0e91d6 Fix accounting of project target changes at runtime 2026-07-23 16:04:26 +02:00
Veronica Berglyd Olsen
0c71605e1b Try to solve keeping the word count progress correct on changes 2026-07-23 15:46:41 +02:00
Veronica Berglyd Olsen
5a5a0e3521 Add a list setting to select root folders to skip for writing goals 2026-07-23 15:04:29 +02:00
Veronica Berglyd Olsen
6fb18b5674 Move non-palette theme colours (#2888) 2026-07-22 21:43:28 +02:00
Veronica Berglyd Olsen
3188b9ed69 Update code, tests and docs 2026-07-22 21:38:55 +02:00
Veronica Berglyd Olsen
98591f74dd Move the new theme colours to the correct section 2026-07-22 21:38:41 +02:00
Veronica Berglyd Olsen
168a8fea72 Various theme fixes (#2887) 2026-07-22 21:04:10 +02:00
Veronica Berglyd Olsen
74c9aa5a2b Update test coverage 2026-07-22 21:01:04 +02:00
Veronica Berglyd Olsen
6c010665c1 Drop camelCasing entirely for icon colours 2026-07-22 20:51:01 +02:00
Veronica Berglyd Olsen
d69c497824 Always use base colour for text on top of the writing goal progress bar (#2884) 2026-07-22 20:42:28 +02:00
Veronica Berglyd Olsen
f6707a2488 Simplify the internal icon colour names 2026-07-22 20:35:26 +02:00
Veronica Berglyd Olsen
44cef5ec83 Fix camelCasing of colour name 2026-07-22 20:15:22 +02:00
Veronica Berglyd Olsen
1390f13600 Fix extra selection colours on theme change (#2886) 2026-07-22 20:14:35 +02:00
Veronica Berglyd Olsen
95b6b47802 Convert theme files to toml (#2885) 2026-07-22 19:03:13 +02:00
Veronica Berglyd Olsen
aab3531a42 Update theme reset and also harden against weird theme values 2026-07-22 19:00:14 +02:00
Veronica Berglyd Olsen
442264b3ab List the renamed keys in theme files 2026-07-22 18:44:04 +02:00
Veronica Berglyd Olsen
7fcc68e567 Update docs 2026-07-22 18:37:35 +02:00
Veronica Berglyd Olsen
09f7fdb8df Make some of the theme keys camelCase 2026-07-22 18:31:24 +02:00
Veronica Berglyd Olsen
71dd9410d8 Update tests 2026-07-22 18:20:51 +02:00
Veronica Berglyd Olsen
09af70d338 Update the theme class to parse toml instead of conf files 2026-07-22 18:18:15 +02:00
Veronica Berglyd Olsen
60444de60e Convert all theme files to toml format 2026-07-22 17:56:23 +02:00
Veronica Berglyd Olsen
c5d4d61108 Convert the config file to toml format (#2883) 2026-07-22 17:49:16 +02:00
Veronica Berglyd Olsen
3b60f6b063 Fix formatting 2026-07-22 17:42:13 +02:00
Veronica Berglyd Olsen
f9780f08c8 Clean up more docstrings 2026-07-22 17:40:55 +02:00
Veronica Berglyd Olsen
d2e58deec5 Update docstrings 2026-07-22 17:39:16 +02:00
Veronica Berglyd Olsen
4e61c3cba6 Update tests 2026-07-22 17:33:40 +02:00
Veronica Berglyd Olsen
aa26e2b2c8 Updates theme colors for toggle and searchmatch (#2882) 2026-07-22 17:30:41 +02:00
HeyMyian
56c7db6e87 Updates theme colors for toggle and searchmatch 2026-07-22 17:23:36 +02:00
Veronica Berglyd Olsen
50675b87a8 Move the config file code to the config source file 2026-07-22 17:11:33 +02:00
Veronica Berglyd Olsen
d5ee36b65e Refactor the toml parser 2026-07-22 17:08:24 +02:00
Veronica Berglyd Olsen
f53cee3ca4 Generalise reading and writing of config files 2026-07-22 17:01:20 +02:00
Veronica Berglyd Olsen
9a4048574c Rename the config getters 2026-07-22 16:39:25 +02:00
Veronica Berglyd Olsen
b9d427af3e Always write toml format now 2026-07-22 16:24:30 +02:00
Veronica Berglyd Olsen
3a70cfa8de Use camelCase for config keys 2026-07-22 16:17:30 +02:00
Veronica Berglyd Olsen
f761a5a6ba Add a toml file config wrapper 2026-07-22 15:52:28 +02:00
Veronica Berglyd Olsen
16c8ccb9da Force the tooltip palette (#2881) 2026-07-22 15:36:16 +02:00
Veronica Berglyd Olsen
f540f010c0 Add a comment for future reference 2026-07-22 15:33:24 +02:00
Veronica Berglyd Olsen
9b15f7269c Try forcing the tooltip palette 2026-07-22 15:26:26 +02:00
Veronica Berglyd Olsen
759b30adc5 Merge viewer folder into editor (#2880) 2026-07-22 15:24:18 +02:00
Veronica Berglyd Olsen
67a58e654f Also move tests 2026-07-22 15:17:40 +02:00
Veronica Berglyd Olsen
64dd79e8c2 Move all viewer files into the editor folder, and merge footer and header files 2026-07-22 15:17:30 +02:00
Veronica Berglyd Olsen
74c1686418 Source unicode cleanup (#2879) 2026-07-22 02:08:16 +02:00
Veronica Berglyd Olsen
c53ad98c0f Enable the ambiguous-unicode-character-string rule 2026-07-22 02:01:53 +02:00
Veronica Berglyd Olsen
c6b28e4385 Replace unicode values in text 2026-07-22 02:01:20 +02:00
Veronica Berglyd Olsen
9409c60613 Remove the endash from file headers 2026-07-22 01:40:54 +02:00
Veronica Berglyd Olsen
6b2223c697 Bug fixes: Daily progress, plain text copy, and paste with whitespace (#2878) 2026-07-22 01:37:23 +02:00
Veronica Berglyd Olsen
f6e4d27272 Fix leading whitespace stripped on paste 2026-07-22 01:32:03 +02:00
Veronica Berglyd Olsen
6d180adca9 Make sure text is coped as plain text from the editor 2026-07-22 01:23:15 +02:00
Veronica Berglyd Olsen
9356a2a5dc Reset daily writing progress when the previous progress was from another day 2026-07-22 01:14:24 +02:00
Veronica Berglyd Olsen
a2bdbf6d85 Fix styles issues (#2877) 2026-07-22 00:59:37 +02:00
Veronica Berglyd Olsen
d88be00fd3 Hard code the Fusion style 2026-07-22 00:50:52 +02:00
Veronica Berglyd Olsen
c294af97a8 Make a less customised tab widget with no stylesheet override 2026-07-22 00:49:22 +02:00
Veronica Berglyd Olsen
f7ad47e359 Move the search tool stylesheet so it doesn't affect other components 2026-07-22 00:05:47 +02:00
Veronica Berglyd Olsen
865919a3af Don't update the editor footer line count on every cursor move 2026-07-22 00:05:22 +02:00
Veronica Berglyd Olsen
9388b42001 Make the same fix to the About dialog 2026-07-21 23:43:52 +02:00
Veronica Berglyd Olsen
98d0ee0dc7 Fix the stylesheet issue on the Welcome dialog (#2871) 2026-07-21 23:38:28 +02:00
Veronica Berglyd Olsen
f09603f2bf Paste html into editor (#2876) 2026-07-21 23:01:58 +02:00
Veronica Berglyd Olsen
af131abe91 Fix markdown nesting order and tests 2026-07-21 22:53:25 +02:00
Veronica Berglyd Olsen
74ef69cee1 Fix test coverage 2026-07-21 22:25:36 +02:00
Veronica Berglyd Olsen
47c064046e Also process markdown mime 2026-07-21 04:20:20 +02:00
Veronica Berglyd Olsen
bcdc03dd72 Simplify this to run directly in the editor 2026-07-21 04:07:50 +02:00
Veronica Berglyd Olsen
b8e1f9c2ee Clean up the converter and add alignment support 2026-07-21 03:42:32 +02:00
Veronica Berglyd Olsen
2587956fcf Add highlighting and correct font to the paste dialog 2026-07-21 03:27:42 +02:00
Veronica Berglyd Olsen
55c7872ed8 Improve the paste dialog 2026-07-21 03:12:31 +02:00
Veronica Berglyd Olsen
283a5537de Add a converter class from QTextDocument to novelWriter format 2026-07-21 02:52:22 +02:00
Veronica Berglyd Olsen
d688e2dd0d Add a basic paste dialog that converts html to markdown for insertion into the editor 2026-07-21 02:24:12 +02:00
Veronica Berglyd Olsen
a5eee6b37b Apply line height on paste (#2875) 2026-07-21 01:56:05 +02:00
Veronica Berglyd Olsen
b6ade82dd0 Fix formatting 2026-07-21 01:52:42 +02:00
Veronica Berglyd Olsen
4a39a1e408 Add regression test 2026-07-21 01:27:01 +02:00
Veronica Berglyd Olsen
270932e40b Apply line height on paste (#2874) 2026-07-21 01:26:41 +02:00
Veronica Berglyd Olsen
caa6dcd053 Add project writing goals (#2870) 2026-07-20 22:40:33 +02:00
Veronica Berglyd Olsen
8fb67541c1 Fix update of colour progress bars when theme changes 2026-07-20 22:29:49 +02:00
Veronica Berglyd Olsen
7745a0738a Fix status bar goals on project close and open 2026-07-20 22:16:20 +02:00
Veronica Berglyd Olsen
3baa4dc1df Fix minor issues and improve the settings page 2026-07-20 22:04:05 +02:00
Veronica Berglyd Olsen
032fef1092 Add remaining test coverage 2026-07-20 21:36:37 +02:00
Veronica Berglyd Olsen
df3e51629b Add coverage ov new progress bar 2026-07-20 21:31:48 +02:00
Veronica Berglyd Olsen
fecf6233d9 Fix a bug in ProjectData and add test coverage 2026-07-20 21:23:00 +02:00
Veronica Berglyd Olsen
fe64931f67 The writing goal should never include notes 2026-07-20 21:00:50 +02:00
Veronica Berglyd Olsen
699a1f32f4 Clean up project settings and fix automatic daily goal calculation 2026-07-20 20:46:33 +02:00
Veronica Berglyd Olsen
a551c89f3f Update progress bar colouring 2026-07-20 19:57:18 +02:00
Veronica Berglyd Olsen
ff9948768a Update existing tests 2026-07-20 18:21:52 +02:00
Veronica Berglyd Olsen
baf34452fa Update handling of goals in the status bar 2026-07-20 17:30:27 +02:00
Veronica Berglyd Olsen
9219209032 Restructure project goal settings 2026-07-20 17:29:56 +02:00
Veronica Berglyd Olsen
4251069718 Merge branch 'main' into project-goals 2026-07-20 15:30:32 +02:00
Veronica Berglyd Olsen
f034557f17 Extend auto replace, post pr fix 2 (#2868) 2026-07-20 02:39:50 +02:00
Veronica Berglyd Olsen
f67d73de3e Find a better icon for the auto-replace toggle button 2026-07-20 02:36:00 +02:00
Veronica Berglyd Olsen
080dc05e16 Fix missing theme refresh on auto-replace toggles for search 2026-07-20 02:35:34 +02:00
Veronica Berglyd Olsen
0c66ba28ee Extend auto replace, post pr fixes (#2867) 2026-07-20 02:27:10 +02:00
Veronica Berglyd Olsen
f90370d01a Add checks in icon tool buttons for undefined icons 2026-07-20 02:22:39 +02:00
Veronica Berglyd Olsen
6c22acf0e5 Search auto-replace buttons should be disabled when auto-replace is off in Preferences 2026-07-20 01:46:06 +02:00
Veronica Berglyd Olsen
26a4af2a10 Extend auto replace usage (#2866) 2026-07-20 01:24:14 +02:00
Veronica Berglyd Olsen
32a441cda9 Update docs 2026-07-20 01:17:24 +02:00
Veronica Berglyd Olsen
70f2d8f3b4 Add auto-replace to the header format editor in manuscript settings 2026-07-20 01:15:21 +02:00
Veronica Berglyd Olsen
7530eea63a Add tests and fix a bug 2026-07-20 01:04:24 +02:00
Veronica Berglyd Olsen
d50bd6e777 Add a auto-replace class for line edits and connect to search panel and search widget 2026-07-20 00:42:25 +02:00
Veronica Berglyd Olsen
64c3c71e08 Add config settings for search auto-replace 2026-07-20 00:37:41 +02:00
Veronica Berglyd Olsen
6ed031238b Add an icon for search auto-replace 2026-07-20 00:34:37 +02:00
Veronica Berglyd Olsen
0ff2ebfd2a Move the auto-replace class to the text subfolder 2026-07-19 23:36:47 +02:00
Veronica Berglyd Olsen
41055f2292 Update linting and lockfile (#2865) 2026-07-19 18:16:55 +02:00
Veronica Berglyd Olsen
bbc30d6cb9 Ignore 2 new preview ruff rules 2026-07-19 18:09:46 +02:00
Veronica Berglyd Olsen
d138e59110 Bump ruff to 0.15.22 2026-07-19 17:59:49 +02:00
Veronica Berglyd Olsen
eae404e3e7 Editor performance, concurrency, and big document handling (#2861) 2026-07-19 12:45:42 +02:00
Veronica Berglyd Olsen
bb2a2869f1 Clean up mac CI file 2026-07-19 12:29:23 +02:00
Veronica Berglyd Olsen
abbc413671 Move the checker cache back into the editor 2026-07-19 12:27:09 +02:00
Veronica Berglyd Olsen
691f0492eb Temporary changes to MacOS tests 2026-07-19 01:22:49 +02:00
Veronica Berglyd Olsen
df8efe60de Various stability fixes and test improvements 2026-07-19 01:19:27 +02:00
Veronica Berglyd Olsen
10304adf34 Clean up selection model in novel view 2026-07-18 21:49:22 +02:00
Veronica Berglyd Olsen
588c69102a Disconnect project model before delete 2026-07-18 21:44:52 +02:00
Veronica Berglyd Olsen
ac3cef77ac Clean up some comments 2026-07-18 21:25:54 +02:00
Veronica Berglyd Olsen
d6c5b875d3 Make sure the global signal is disconnected properly also in tests 2026-07-18 21:01:19 +02:00
Veronica Berglyd Olsen
a43a0bf527 Update tests 2026-07-18 20:49:22 +02:00
Veronica Berglyd Olsen
4fdafdd86a Make sure the theme update also works in older Qt versions 2026-07-18 20:26:57 +02:00
Veronica Berglyd Olsen
171631c025 Update tests after rebasing to main 2026-07-18 20:01:33 +02:00
Veronica Berglyd Olsen
34b2f6dde3 Add disconnect for the styleHints signal 2026-07-18 19:49:32 +02:00
Veronica Berglyd Olsen
0f20459b69 Add tests 2026-07-18 19:49:31 +02:00
Veronica Berglyd Olsen
0c51e1c409 Update desktop theme handling 2026-07-18 19:49:31 +02:00
Veronica Berglyd Olsen
be85bf5fa3 Reintroduce big document handling for the editor 2026-07-18 19:49:30 +02:00
Veronica Berglyd Olsen
acd3bc97a0 Flaky test hardening and lambdas patching (#2864) 2026-07-18 19:48:59 +02:00
Veronica Berglyd Olsen
a65aa4d828 Update test coverage 2026-07-18 19:45:43 +02:00
Veronica Berglyd Olsen
9861ea7ddd Patch up all other potentially problematic lambdas 2026-07-18 18:09:08 +02:00
Veronica Berglyd Olsen
3c58988c34 Make the crash hunt script take a count as an argument 2026-07-18 17:55:47 +02:00
Veronica Berglyd Olsen
140a8da62d Add more usage of qtWeakLambda to stabilise the tests (and probably also at runtime) 2026-07-18 16:57:59 +02:00
Veronica Berglyd Olsen
102a4d7af6 Add a segfault stress test script for future use 2026-07-18 16:56:12 +02:00
Veronica Berglyd Olsen
ce4047261c Fix branch coverage 2026-07-18 15:53:43 +02:00
Veronica Berglyd Olsen
818106b0eb Merge branch 'main' into flaky-test-hardening 2026-07-18 15:45:56 +02:00
Veronica Berglyd Olsen
ddf5a0639b Move GUI operations out of buildTestProject 2026-07-18 15:45:25 +02:00
Veronica Berglyd Olsen
a2272fd4ed Fix word counter concurrency (#2863) 2026-07-18 15:21:46 +02:00
Veronica Berglyd Olsen
f834ccc653 Prune runnable docstrings 2026-07-18 14:52:05 +02:00
Veronica Berglyd Olsen
b7e8f8a052 Also add a dispatcher to the text checker 2026-07-18 14:47:01 +02:00
Veronica Berglyd Olsen
7d4f8a6f9f Add a dispatcher class for word counting 2026-07-18 14:39:59 +02:00
Veronica Berglyd Olsen
cc8badfee4 Allow the thread pool to finish after running a test 2026-07-18 14:15:57 +02:00
Veronica Berglyd Olsen
7406381094 Only run selection counter of anything is actually selected 2026-07-18 14:09:32 +02:00
Veronica Berglyd Olsen
85de937667 Make the background word counter single shot 2026-07-18 13:57:21 +02:00
Veronica Berglyd Olsen
1a8301380c Merge branch 'main' into fix-word-counter-concurrency 2026-07-18 13:35:52 +02:00
Veronica Berglyd Olsen
eea2c89a16 Add a spell check cache (#2862) 2026-07-18 13:35:00 +02:00
Veronica Berglyd Olsen
24c05e4d8f Fix concurrency issue in the background word counter 2026-07-17 22:38:58 +02:00
Veronica Berglyd Olsen
2f221b972c Reuse spell and format error values that haven't moved, when editing a text block 2026-07-17 21:51:48 +02:00
Veronica Berglyd Olsen
16b89699a0 Add some air in the checker function 2026-07-17 20:23:22 +02:00
Veronica Berglyd Olsen
424572375f Improve text check performance by caching selections (3-6x speed-up) 2026-07-17 20:12:22 +02:00
Veronica Berglyd Olsen
fb77d69128 Don't run the editor text checker when there are no checks enabled 2026-07-17 19:43:24 +02:00
Veronica Berglyd Olsen
794207f6e7 Fix Preferences refresh issues (#2860) 2026-07-17 16:39:20 +02:00
Veronica Berglyd Olsen
f11ff0726c Fix formatting 2026-07-17 16:36:28 +02:00
Veronica Berglyd Olsen
aeed9be8db Minimal fix for theme change in the outline 2026-07-17 16:36:00 +02:00
Veronica Berglyd Olsen
946897527e Update tests 2026-07-17 16:20:09 +02:00
Veronica Berglyd Olsen
21e924273d Bypass a couple more settings from editor re-init 2026-07-17 16:11:05 +02:00
Veronica Berglyd Olsen
532b863674 Separate viewport updates from editor and viewer init 2026-07-17 15:53:59 +02:00
Veronica Berglyd Olsen
133d945758 Make the autoreplace class callable, and update tests 2026-07-17 15:24:06 +02:00
Veronica Berglyd Olsen
92446d1b3c Make the autoreplace preferences dynamic so that a refresh is not needed 2026-07-17 15:16:04 +02:00
Veronica Berglyd Olsen
7643de9ce1 Add missing value that needs editor refresh 2026-07-17 15:05:49 +02:00
Veronica Berglyd Olsen
1dedae4f8f Add more missing calls for refresh on preferences change 2026-07-17 14:58:36 +02:00
Veronica Berglyd Olsen
050b9afd44 Add tag hover cards (#2859) 2026-07-17 02:02:49 +02:00
Veronica Berglyd Olsen
607098ffd7 Clean up some comments and unused new code 2026-07-17 01:59:48 +02:00
Veronica Berglyd Olsen
5f07c1ee48 Update tests 2026-07-17 01:45:50 +02:00
Veronica Berglyd Olsen
934ad9f298 Prune stale hover card cache entries 2026-07-17 01:38:32 +02:00
Veronica Berglyd Olsen
7244367cf7 Cap the hover card sizes 2026-07-17 01:19:37 +02:00
Veronica Berglyd Olsen
2801724f1c Clip very long texts 2026-07-17 01:14:42 +02:00
Veronica Berglyd Olsen
fe1c79e80d Fix wrong icon request on the sidebar 2026-07-17 00:58:53 +02:00
Veronica Berglyd Olsen
7b151e046f Handle multi-paragraph synopsis in the hover card 2026-07-17 00:25:59 +02:00
Veronica Berglyd Olsen
8c6e8be2e8 Add and update tests 2026-07-17 00:21:23 +02:00
Veronica Berglyd Olsen
e6dbb9dd7c Add hover card to viewer 2026-07-16 23:58:36 +02:00
Veronica Berglyd Olsen
81bcd8179d Fix theme not updating for the hover card 2026-07-16 23:48:22 +02:00
Veronica Berglyd Olsen
41a4922088 Clean up the code a bit 2026-07-16 23:41:00 +02:00
Veronica Berglyd Olsen
42d701730c Add edit and view buttons to the hover card 2026-07-16 23:38:15 +02:00
Veronica Berglyd Olsen
e39151c9d6 Clean up the working and look of the hover card 2026-07-16 23:11:21 +02:00
Veronica Berglyd Olsen
378c483748 Connect the hover card to the editor 2026-07-16 22:46:00 +02:00
Veronica Berglyd Olsen
ac04a61562 Add a hover card class 2026-07-16 22:45:45 +02:00
Veronica Berglyd Olsen
1abbc80c70 Populate the meta data info in the highlighter 2026-07-16 22:05:07 +02:00
Veronica Berglyd Olsen
c456ae2e4a Allow passing additional meta data to TextBlockData 2026-07-16 21:47:49 +02:00
Veronica Berglyd Olsen
78407ceb87 Cleanup of main GUI return key handling (#2858) 2026-07-16 21:37:49 +02:00
Veronica Berglyd Olsen
81f6062a44 Update tests 2026-07-16 20:00:10 +02:00
Veronica Berglyd Olsen
2ea7a49321 Simplify openSelectedItem in GuiMain 2026-07-16 19:49:33 +02:00
Veronica Berglyd Olsen
45e09c7dd3 Move the return key handling into the various tree view classes 2026-07-16 19:36:21 +02:00
Veronica Berglyd Olsen
668f6fe2f6 Editor completer rewrite (#2856) 2026-07-16 17:17:00 +02:00
Veronica Berglyd Olsen
0b1b3ad244 Fix tab focus change and completer popup issue 2026-07-16 17:13:59 +02:00
Veronica Berglyd Olsen
cef491f96c Fix MacOS issue 2026-07-16 17:05:10 +02:00
Veronica Berglyd Olsen
9bca71468f Update test coverage 2026-07-16 16:29:36 +02:00
Veronica Berglyd Olsen
c3ee1efb56 Give the completer menu the correct colours 2026-07-16 16:21:18 +02:00
Veronica Berglyd Olsen
7f28b16eae Move the completer key press handler into the completer itself 2026-07-16 16:06:55 +02:00
Veronica Berglyd Olsen
f5db958f53 Add tags cache to the TagsIndex class 2026-07-16 15:59:26 +02:00
Veronica Berglyd Olsen
cad40cd369 Remove the manual filters in the completer and instead use the QCompleter's native features 2026-07-16 15:31:28 +02:00
Veronica Berglyd Olsen
952d92df18 Simplify the key press event handler in the editor 2026-07-16 15:09:29 +02:00
Veronica Berglyd Olsen
4cb9c58ae6 Move the escape key handling into the editor 2026-07-16 14:50:36 +02:00
Veronica Berglyd Olsen
9e80c77050 Convert the editor completer menu to a QCompleter 2026-07-16 14:35:13 +02:00
Veronica Berglyd Olsen
837d9bec90 Utils updates (#2853) 2026-07-15 22:04:58 +02:00
Veronica Berglyd Olsen
ddc064e86b Make the docs build reject outdated versions of the docs 2026-07-15 21:35:01 +02:00
Veronica Berglyd Olsen
49f62494d6 Update optional icon theme releases 2026-07-15 21:02:21 +02:00
Veronica Berglyd Olsen
4ff55ca4a7 Remove html report as default for the run_tests script 2026-07-15 21:02:02 +02:00
Veronica Berglyd Olsen
9ebee3d917 Change how icons are handled (#2852) 2026-07-15 20:37:04 +02:00
Veronica Berglyd Olsen
d246071348 Update tests 2026-07-15 18:34:26 +02:00
Veronica Berglyd Olsen
a4b6b42b56 Merge switch records in switcbox 2026-07-15 18:22:01 +02:00
Veronica Berglyd Olsen
888f22ffde Update the modified buttons 2026-07-15 18:14:42 +02:00
Veronica Berglyd Olsen
05c35149a5 Merge icon name and label 2026-07-15 17:42:51 +02:00
Veronica Berglyd Olsen
85b2e2db18 Minor UI fixes (#2850) 2026-07-15 11:29:05 +02:00
Veronica Berglyd Olsen
22803752d1 Fix branch coverage 2026-07-15 02:01:19 +02:00
Veronica Berglyd Olsen
1fc8fb84a8 Fix memory leak in project tree templates menu, and add regression tests and additional test coverage 2026-07-15 01:59:09 +02:00
Veronica Berglyd Olsen
e4b669e8c1 Fix switchbox memory leak 2026-07-15 01:26:37 +02:00
Veronica Berglyd Olsen
a1c99ae713 Change the buildable menus in project tree to use a common menu signal 2026-07-15 01:13:36 +02:00
Veronica Berglyd Olsen
caf51ea53d Elide user labels in dropdown menus 2026-07-15 01:05:42 +02:00
Veronica Berglyd Olsen
eead5afa67 Switch box labels need to clip if they are long 2026-07-15 00:53:22 +02:00
Veronica Berglyd Olsen
903d886aee Fix font loading on older Qt versions (#2849)
Fix font loading on older Qt versions
2026-07-15 00:34:35 +02:00
Veronica Berglyd Olsen
c7ae38df7e Fix font loading on older Qt versions 2026-07-15 00:29:31 +02:00
Veronica Berglyd Olsen
9175a3c553 Fix search box not updating on root folder change (#2848) 2026-07-14 22:58:34 +02:00
Veronica Berglyd Olsen
2bff7f974b Make a few adjustments to the search filter class 2026-07-14 22:55:57 +02:00
Veronica Berglyd Olsen
e99a9d3325 Add dedicated tests for the switchbox 2026-07-14 22:51:55 +02:00
Veronica Berglyd Olsen
7228e2872c Fix update of search filters when root folders change 2026-07-14 22:51:06 +02:00
Veronica Berglyd Olsen
e02a7d5ab5 Add project search filters (#2847) 2026-07-14 22:22:02 +02:00
Veronica Berglyd Olsen
c8e729bbe4 Make the init tests go faster 2026-07-14 22:16:51 +02:00
Veronica Berglyd Olsen
475a9dd45d Update tests 2026-07-14 22:05:22 +02:00
Veronica Berglyd Olsen
38639932d9 Update the split handle disabled behaviour 2026-07-14 21:50:54 +02:00
Veronica Berglyd Olsen
1c8661f8c4 Use a better splitter handle 2026-07-14 21:39:45 +02:00
Veronica Berglyd Olsen
fb9ab8a346 Update styles 2026-07-14 21:32:22 +02:00
Veronica Berglyd Olsen
cc9b7ae58b Put the search filters in a splitter 2026-07-14 20:46:04 +02:00
Veronica Berglyd Olsen
92a9c7476b Clean up a few things 2026-07-14 20:26:32 +02:00
Veronica Berglyd Olsen
e34676ae57 Add updateTheme support for switchbox 2026-07-14 20:06:24 +02:00
Veronica Berglyd Olsen
4bc9aae1aa Fix type issue 2026-07-14 19:21:02 +02:00
Veronica Berglyd Olsen
98b4248a3c Add a sanity check in ProjectItem and improve a list comprehension in GuiProjectSearch 2026-07-14 19:08:15 +02:00
Veronica Berglyd Olsen
37cea519e0 Add and update tests 2026-07-14 18:56:41 +02:00
Veronica Berglyd Olsen
0587524c6c Fix broken test 2026-07-14 18:31:26 +02:00
Veronica Berglyd Olsen
c28e1a0ba4 Move DocSearch out of core tools and rename to ProjectSearch 2026-07-14 18:27:32 +02:00
Veronica Berglyd Olsen
5e46735bb2 Connect the text content search filters 2026-07-14 18:21:52 +02:00
Veronica Berglyd Olsen
d9f70bdbac Connect search root folder filter 2026-07-14 17:58:37 +02:00
Veronica Berglyd Olsen
2dddd1c2ad Add a search result type 2026-07-14 17:53:45 +02:00
Veronica Berglyd Olsen
8775416064 Implement document type filters on project search 2026-07-14 17:48:49 +02:00
Veronica Berglyd Olsen
ae8d790b55 Preserve filter settings between sessions 2026-07-14 17:11:37 +02:00
Veronica Berglyd Olsen
a067c4d932 Expose search filter settings in the search widget 2026-07-14 16:47:15 +02:00
Veronica Berglyd Olsen
5668a56e2d Move the filter labels in manuscript settings to constants 2026-07-14 16:37:28 +02:00
Veronica Berglyd Olsen
713b8252fe Fix layout warning in item details 2026-07-14 16:36:49 +02:00
Veronica Berglyd Olsen
10e1b9d4d9 Search improvements, follow-up (#2846) 2026-07-14 13:47:06 +02:00
Veronica Berglyd Olsen
51ea95e79d Don't centre on search selection, just make sure it's visible 2026-07-14 13:43:33 +02:00
Veronica Berglyd Olsen
41622806c2 Centre selection on search double click 2026-07-14 13:37:33 +02:00
Veronica Berglyd Olsen
b0d083bd2f Make a few improvements in the editor and search code 2026-07-14 13:32:25 +02:00
Veronica Berglyd Olsen
2a4d44ff78 Make the search highlight narrower and apply same colour in editor searches 2026-07-14 13:19:45 +02:00
Veronica Berglyd Olsen
c34e525fb2 Fix some bugs in the search result handler 2026-07-14 13:08:29 +02:00
Veronica Berglyd Olsen
3da463382d Project search improvements (#2844) 2026-07-14 03:00:13 +02:00
Veronica Berglyd Olsen
50d65e2d7d Update docs 2026-07-14 02:50:58 +02:00
Veronica Berglyd Olsen
93c1de8a3d Update themes with new colour 2026-07-14 02:47:36 +02:00
Veronica Berglyd Olsen
6d56020110 Update tests and make a few improvements 2026-07-14 02:23:10 +02:00
Veronica Berglyd Olsen
2448f2cd38 Update search result icons on theme change 2026-07-14 02:08:40 +02:00
Veronica Berglyd Olsen
cc27826a48 Simplify context calculation in search 2026-07-14 02:03:22 +02:00
Veronica Berglyd Olsen
ad11b458f5 Center the match in the search delegate 2026-07-14 01:53:20 +02:00
Veronica Berglyd Olsen
8c53a67e06 Use a highlight for search results instead, and add a searchmatch theme colour 2026-07-14 00:55:51 +02:00
Veronica Berglyd Olsen
db1841bbf3 Simplify the search result delegate 2026-07-14 00:27:18 +02:00
Veronica Berglyd Olsen
ff9afd0485 Add a search item delegate to paint the word in the search result 2026-07-13 23:40:46 +02:00
Veronica Berglyd Olsen
33470486ea Make it possible to hide the item details panel below the project tree (#2843) 2026-07-13 21:20:34 +02:00
Veronica Berglyd Olsen
6e6113b887 Add a delayed refresh of the items panel, and add tests 2026-07-13 21:16:12 +02:00
Veronica Berglyd Olsen
fd4bdd04e9 Emit a signal when the panel state changes 2026-07-13 20:58:04 +02:00
Veronica Berglyd Olsen
2296fe166b Add test coverage 2026-07-13 20:48:59 +02:00
Veronica Berglyd Olsen
c7f2248eaf Make it possible to hide the item details panel 2026-07-13 20:45:05 +02:00
Veronica Berglyd Olsen
833f92dded Add an expandable panel widget 2026-07-13 20:44:41 +02:00
Veronica Berglyd Olsen
89478c8dd3 Rewrite project search to model/view (#2842) 2026-07-13 20:29:13 +02:00
Veronica Berglyd Olsen
ba4cd217c0 Move the novel model to the models folder 2026-07-13 20:25:21 +02:00
Veronica Berglyd Olsen
409ce4f2e9 Move the item model to the models folder 2026-07-13 20:24:56 +02:00
Veronica Berglyd Olsen
a8690808c2 Fix test coverage 2026-07-13 20:20:01 +02:00
Veronica Berglyd Olsen
a9f4cab48b Update main search tests 2026-07-13 20:09:03 +02:00
Veronica Berglyd Olsen
3a8a3680c5 Update the search model and add tests 2026-07-13 19:56:57 +02:00
Veronica Berglyd Olsen
0956b528cb Switch the search panel to model/view 2026-07-13 19:47:04 +02:00
Veronica Berglyd Olsen
3944a8c9a2 Add manuscript dialogue statistics (#2841) 2026-07-13 19:12:15 +02:00
Veronica Berglyd Olsen
8c75e36115 Use the new percentage formatter in other places too 2026-07-13 19:08:41 +02:00
Veronica Berglyd Olsen
e7fabab051 Fix dialogue overlap 2026-07-13 18:49:35 +02:00
Veronica Berglyd Olsen
77f112fcb9 Fix syntax preferences refresh in the editor and viewer 2026-07-13 18:36:11 +02:00
Veronica Berglyd Olsen
bc41619497 Fix issues and update tests 2026-07-13 18:33:03 +02:00
Veronica Berglyd Olsen
104c8b0d01 Replace the old stats widget with a simple label 2026-07-13 18:06:53 +02:00
Veronica Berglyd Olsen
6e7e5f7840 Add a side panel widget for manuscript statistics 2026-07-13 17:25:44 +02:00
Veronica Berglyd Olsen
f558f53a95 Collect statistics on dialogue 2026-07-13 16:03:56 +02:00
Veronica Berglyd Olsen
a13bafa2c0 Stability improvements (#2840) 2026-07-12 16:09:02 +02:00
Veronica Berglyd Olsen
187f53b837 Add a reentrancy test 2026-07-12 16:04:00 +02:00
Veronica Berglyd Olsen
5391edebc1 Remove the remaining deleteLater call 2026-07-12 15:56:30 +02:00
Veronica Berglyd Olsen
5d2f70a45d Make sure openDocument completes before another call is made 2026-07-12 15:55:27 +02:00
Veronica Berglyd Olsen
f28e3d1225 Manuscript print kerning fix (#2838) 2026-07-12 01:43:18 +02:00
Veronica Berglyd Olsen
16c0592523 Make the manuscript new page line a dashed line 2026-07-12 01:38:12 +02:00
Veronica Berglyd Olsen
2e03a29de9 Disable font hinting on manuscript print (#2640) 2026-07-12 00:47:32 +02:00
Veronica Berglyd Olsen
70cc564582 Fix some minor mistakes and omissions on the contributing guide (#2837) 2026-07-11 13:00:00 +02:00
Veronica Berglyd Olsen
55f8b58c9a Fix some minor mistakes and omissions on the contributing guide 2026-07-11 12:56:45 +02:00
Veronica Berglyd Olsen
4c75bacca0 Update the contributing guide (#2836) 2026-07-11 12:53:35 +02:00
Veronica Berglyd Olsen
2bb5b677ef Update the contributing guide 2026-07-11 12:50:01 +02:00
Veronica Berglyd Olsen
64bfe5a935 Fix weekly backup name format (#2835) 2026-07-11 12:11:06 +02:00
Veronica Berglyd Olsen
41f3dcd0fc Update tests 2026-07-11 12:06:48 +02:00
Veronica Berglyd Olsen
8243e07448 Fix the formatting of weekly project backups 2026-07-11 12:06:38 +02:00
Veronica Berglyd Olsen
31cf39aa91 Add backup interval setting (#2834) 2026-07-11 01:01:02 +02:00
Veronica Berglyd Olsen
8cedbc7469 Fix line wrapping 2026-07-11 00:58:03 +02:00
Veronica Berglyd Olsen
f967b812cb Update packages 2026-07-11 00:57:16 +02:00
Veronica Berglyd Olsen
21d2b5b133 Fix docstring 2026-07-11 00:57:10 +02:00
Veronica Berglyd Olsen
fbdefac538 Update tests 2026-07-11 00:49:42 +02:00
Veronica Berglyd Olsen
8deb2ff7ed Complete the backup interval implementation 2026-07-11 00:48:56 +02:00
Veronica Berglyd Olsen
bf5ce29d04 Add backup interval setting 2026-07-11 00:06:46 +02:00
Veronica Berglyd Olsen
0bc2d95f15 Improve toggle button colours (#2833) 2026-07-10 22:46:52 +02:00
Veronica Berglyd Olsen
54e23f38cd Update docs 2026-07-10 22:43:19 +02:00
Veronica Berglyd Olsen
1fd23ae721 Update tests 2026-07-10 22:36:08 +02:00
Veronica Berglyd Olsen
e966ffad6d Tweak the toggle colour on some themes 2026-07-10 22:14:30 +02:00
Veronica Berglyd Olsen
4bd1a6f11b Update tests 2026-07-10 22:14:10 +02:00
Veronica Berglyd Olsen
b2502ce0e8 Update themes 2026-07-10 21:36:23 +02:00
Veronica Berglyd Olsen
ad649ad4f7 Switch the search tool buttons to checkable NIconToolButton instances and add a new toggle colour 2026-07-10 20:59:24 +02:00
Veronica Berglyd Olsen
6e23fa7efd Menus cleanup (#2832) 2026-07-10 12:51:29 +02:00
Veronica Berglyd Olsen
074357a238 Update slot name in project settings 2026-07-10 12:48:15 +02:00
Veronica Berglyd Olsen
d01b1c868f Use the icon attribute for other cases where qtAddAction is used 2026-07-10 12:42:28 +02:00
Veronica Berglyd Olsen
466d310c25 Update tests 2026-07-10 12:28:19 +02:00
Veronica Berglyd Olsen
33343f64ef Update writing stats and manuscript settings to new pattern 2026-07-10 12:13:40 +02:00
Veronica Berglyd Olsen
40daa9596f Update header navigation in editor and viewer 2026-07-10 12:06:47 +02:00
Veronica Berglyd Olsen
12d1b2a112 Also add support for icons in qtAddAction and apply in Project Settings 2026-07-10 11:59:34 +02:00
Veronica Berglyd Olsen
0b93d7e6c6 Let qtAddAction take a data value and use in Preferences 2026-07-10 11:53:26 +02:00
Veronica Berglyd Olsen
6d8f4f79b1 Rename things (#2831) 2026-07-10 00:49:24 +02:00
Veronica Berglyd Olsen
ad9d04a24e Rename NWStatus 2026-07-10 00:42:12 +02:00
Veronica Berglyd Olsen
f1c6e44c5c Rename NWItem 2026-07-10 00:37:50 +02:00
Veronica Berglyd Olsen
87245f09ad Rename NWStorage 2026-07-10 00:31:42 +02:00
Veronica Berglyd Olsen
f6e5202a99 Rename NWDocument 2026-07-10 00:28:06 +02:00
Veronica Berglyd Olsen
a0bfd9d83f Rename NWTree 2026-07-10 00:24:39 +02:00
Veronica Berglyd Olsen
2b5ad3e4c4 Rename NWProjectData 2026-07-10 00:21:44 +02:00
Veronica Berglyd Olsen
0899b4f6b1 Fix missing improts 2026-07-10 00:19:57 +02:00
Veronica Berglyd Olsen
960f62d94b Rename NWBuildDocument 2026-07-10 00:14:39 +02:00
Veronica Berglyd Olsen
1dfa425889 Rename some rarely used classes 2026-07-10 00:13:41 +02:00
Veronica Berglyd Olsen
7a347afb40 Update class docstrings and rename NWSpellEnchant to SpellEnchant 2026-07-10 00:07:21 +02:00
Veronica Berglyd Olsen
230e91b60d Make test module docstrings consistent 2026-07-10 00:01:17 +02:00
Veronica Berglyd Olsen
3092278d63 Rename NWSessionLog to SessionLog 2026-07-09 23:47:32 +02:00
Veronica Berglyd Olsen
e83873bbea Memory leak regression tests (#2830) 2026-07-09 21:58:00 +02:00
Veronica Berglyd Olsen
2bec8e4aff Add regression tests for the memory leak fixes 2026-07-09 21:53:47 +02:00
Veronica Berglyd Olsen
42ead5886d Add memory leak test helpers 2026-07-09 21:53:01 +02:00
Veronica Berglyd Olsen
3d85401ab1 Memory leak cleanup (#2829) 2026-07-09 00:52:28 +02:00
Veronica Berglyd Olsen
ddef31ae21 Fix switch animation memory leak 2026-07-09 00:39:38 +02:00
Veronica Berglyd Olsen
3c630657b1 Fix font dialog memory leak 2026-07-09 00:37:59 +02:00
Veronica Berglyd Olsen
61a95e781a Fix project tree context menu memory leak 2026-07-09 00:34:42 +02:00
Veronica Berglyd Olsen
49b363494a Remove the lambda from save action in writing stats to allow the actions to be freed on close 2026-07-09 00:12:37 +02:00
Veronica Berglyd Olsen
e234e2340d Remove the lambda from dialogue line setting in Preferences to allow the actions to be freed on close 2026-07-09 00:04:15 +02:00
Veronica Berglyd Olsen
c7f8008355 Code cleanup (#2826) 2026-07-08 20:21:43 +02:00
Veronica Berglyd Olsen
caad6871ca Make test names more consistent 2026-07-08 20:15:28 +02:00
Veronica Berglyd Olsen
9aadd42471 Rename a few variables 2026-07-08 19:18:45 +02:00
Veronica Berglyd Olsen
df5e135834 Improve type annotations on spell and format checkers 2026-07-08 18:57:32 +02:00
Veronica Berglyd Olsen
84fd163ca8 Improve test helpers (#2825) 2026-07-07 12:57:35 +02:00
Veronica Berglyd Olsen
187190b229 Further improvements to file compare helper 2026-07-07 12:52:59 +02:00
Veronica Berglyd Olsen
92e02634e8 Clean up test helpers 2026-07-07 12:38:55 +02:00
Veronica Berglyd Olsen
134b72f219 Improve the cmpFiles helper for tests 2026-07-07 12:27:17 +02:00
Veronica Berglyd Olsen
970b962208 Clarify text language 2026-07-07 12:15:55 +02:00
Veronica Berglyd Olsen
7da4e4de59 Backport launcher fixes from main (#2824) 2026-07-07 01:34:50 +02:00
Veronica Berglyd Olsen
0f72d9504a Backport launcher fixes from main 2026-07-07 01:30:53 +02:00
Veronica Berglyd Olsen
9103a95315 Update Windows app launcher and app id (#2823) 2026-07-07 01:27:22 +02:00
Veronica Berglyd Olsen
ffc5bd1654 Update the signed windows launcher executable 2026-07-07 01:24:05 +02:00
Veronica Berglyd Olsen
ef916607d8 Bump windows launcher version 2026-07-07 01:19:37 +02:00
Veronica Berglyd Olsen
2b4f8f8d38 Fix open in background issue with the windows launcher 2026-07-07 01:18:10 +02:00
Veronica Berglyd Olsen
f3d0538207 Bump windows launcher version 2026-07-07 01:09:05 +02:00
Veronica Berglyd Olsen
b9d63340b8 Keep the wrapper exe alive while the main app is running 2026-07-07 01:01:31 +02:00
Veronica Berglyd Olsen
ec99e41614 Use a fixed app id on Windows 2026-07-07 00:57:11 +02:00
Veronica Berglyd Olsen
8101f59fc5 Add text zoom in editor and viewer (#2822) 2026-07-06 22:31:02 +02:00
Veronica Berglyd Olsen
93c3ea2d9f Fix formatting 2026-07-06 22:27:32 +02:00
Veronica Berglyd Olsen
3dcbecf04a Update shortcuts in docs 2026-07-06 22:21:17 +02:00
Veronica Berglyd Olsen
a0e2e03616 Update tests 2026-07-06 22:19:54 +02:00
Veronica Berglyd Olsen
aad07535fb Map zoom through docAction and also apply to viewer 2026-07-06 22:03:20 +02:00
Veronica Berglyd Olsen
1334aad4f6 Enable zoom in the editor 2026-07-06 21:51:52 +02:00
Veronica Berglyd Olsen
af4239b957 Switch editor heading sizes to Qt fixed values 2026-07-06 21:22:02 +02:00
Veronica Berglyd Olsen
8267af24c7 Add a text format check framework (#2821) 2026-07-06 21:02:04 +02:00
Veronica Berglyd Olsen
06e4eb5f79 Move the chunk constant to the constants file 2026-07-06 20:58:09 +02:00
Veronica Berglyd Olsen
5010e54b53 Make the word counter also single shot like the spell checker 2026-07-06 20:47:13 +02:00
Veronica Berglyd Olsen
e53d17495e Rename the spell check timer 2026-07-06 20:34:20 +02:00
Veronica Berglyd Olsen
729ec29b37 Don't highlight trailing spaces behind the cursor 2026-07-06 20:30:29 +02:00
Veronica Berglyd Olsen
26c3d53e55 Unify the format errors format 2026-07-06 20:16:09 +02:00
Veronica Berglyd Olsen
b88132620d Fix undo glitch 2026-07-06 20:06:48 +02:00
Veronica Berglyd Olsen
cd10bb3092 Generalise the space checker to format checker 2026-07-06 19:56:15 +02:00
Veronica Berglyd Olsen
40f73dc4ef Move the multi and trailing space check to the same infrastructure as spell checking 2026-07-06 19:50:14 +02:00
Veronica Berglyd Olsen
a73cf4f787 Editor search improvements (#2820) 2026-07-06 19:12:06 +02:00
Veronica Berglyd Olsen
b17afcf40c Only expand search box count when more than 99 hits (#2798) 2026-07-06 19:00:43 +02:00
Veronica Berglyd Olsen
05875b94b7 Add a QtWidgetShortcut type 2026-07-06 18:52:04 +02:00
Veronica Berglyd Olsen
f7bf92885e Show search selections 2026-07-06 18:45:31 +02:00
Veronica Berglyd Olsen
c5f26f3e94 Add missing slot attributes 2026-07-06 18:32:16 +02:00
Veronica Berglyd Olsen
f6b060c0f9 Core code restructure (#2819) 2026-07-06 18:25:13 +02:00
Veronica Berglyd Olsen
4741ff1289 Fix ruff error 2026-07-06 18:21:44 +02:00
Veronica Berglyd Olsen
1337fe9816 Remove outdated info from agents.md 2026-07-06 18:19:21 +02:00
Veronica Berglyd Olsen
e19308cba4 Update test names 2026-07-06 18:13:58 +02:00
Veronica Berglyd Olsen
a5acdfa3da Move manuscript code to own folder 2026-07-06 18:10:21 +02:00
Veronica Berglyd Olsen
f57a6b512a Split into editor and viewer folders 2026-07-06 18:03:58 +02:00
Veronica Berglyd Olsen
5afcbfe8c6 Split editor and viewer source files 2026-07-06 17:52:50 +02:00
Veronica Berglyd Olsen
507f1e7a92 Move the base tests to the root tests folder 2026-07-06 17:29:48 +02:00
Veronica Berglyd Olsen
fa5653ce16 Rename the remaining gui folder to gui_side 2026-07-06 17:28:37 +02:00
Veronica Berglyd Olsen
1283a0f4b2 Move the document editor and viewer files to a separate folder 2026-07-06 17:27:16 +02:00
Veronica Berglyd Olsen
a27aeb6613 Restructure tests folders (#2818) 2026-07-06 17:07:00 +02:00
Veronica Berglyd Olsen
0e4fed94b1 Remove test prefix for all test folders 2026-07-06 17:00:58 +02:00
Veronica Berglyd Olsen
df2e255129 Move test reference files into underscored folders 2026-07-06 16:55:14 +02:00
Veronica Berglyd Olsen
b1fde3ff37 Add line height setting for editor and viewer (#2817) 2026-07-06 16:46:04 +02:00
Veronica Berglyd Olsen
3d83f9a452 Scope down init of editor and viewer on Preferences change 2026-07-06 16:38:39 +02:00
Veronica Berglyd Olsen
ccdf963847 Create types for commonly used keypress enums 2026-07-06 16:09:18 +02:00
Veronica Berglyd Olsen
8405411263 Move the keypress overload 2026-07-06 16:08:58 +02:00
Veronica Berglyd Olsen
a343778b64 Fix issue maintaining line height while typing 2026-07-06 15:46:18 +02:00
Veronica Berglyd Olsen
6db22271d9 Expose the line height setting in Preferences 2026-07-06 15:14:53 +02:00
Veronica Berglyd Olsen
f0f017aa0d Add test coverage 2026-07-06 15:02:09 +02:00
Veronica Berglyd Olsen
0afec0b94d Implement the line height setting and handling 2026-07-06 15:01:11 +02:00
Veronica Berglyd Olsen
f3cb4d05e1 Switch editor back to QTextEdit (#2816) 2026-07-06 13:28:22 +02:00
Veronica Berglyd Olsen
8dd2778119 Cleanup pass and fix a minor issue 2026-07-06 13:13:49 +02:00
Veronica Berglyd Olsen
970f432739 Restore old per-pixel typewriter scrolling 2026-07-06 12:55:11 +02:00
Veronica Berglyd Olsen
92377fdc1d Reimplement the centre ang cursor visibility features 2026-07-06 12:37:29 +02:00
Veronica Berglyd Olsen
e6dde015a6 Switch to QTextEdit without changing anything else 2026-07-06 12:12:13 +02:00
Veronica Berglyd Olsen
5993ca4193 Move spell checking out of the syntax highlighter (#2812) 2026-07-05 22:52:11 +02:00
Veronica Berglyd Olsen
168ad781dc Fix issues with tests 2026-07-05 22:48:02 +02:00
Veronica Berglyd Olsen
a0f36ea4ea Clean up a few minor bits 2026-07-05 22:35:01 +02:00
Veronica Berglyd Olsen
7340da7c07 Move the text bloc data class to a separate file 2026-07-05 22:21:54 +02:00
Veronica Berglyd Olsen
d9c7423b34 Update tests 2026-07-05 22:14:18 +02:00
Veronica Berglyd Olsen
fe42c529ca Move the spell checker off the main thread 2026-07-05 22:08:35 +02:00
Veronica Berglyd Olsen
815026976b Fix test on MacOS 2026-07-05 21:54:10 +02:00
Veronica Berglyd Olsen
fc6e9d8213 Run spell check in chunks to not block the document 2026-07-05 19:11:31 +02:00
Veronica Berglyd Olsen
e0f53d86d3 Move spell checking out of the highlighter and on a timer in the editor 2026-07-05 19:04:22 +02:00
Veronica Berglyd Olsen
6611b495d0 Move spell error rendering out of the syntax highlighter 2026-07-05 18:44:40 +02:00
Veronica Berglyd Olsen
9741d083ae Make the text block data object UTF-16 aware 2026-07-05 18:25:56 +02:00
Veronica Berglyd Olsen
083abbc73b Forward search race condition fix (#2810) 2026-07-05 18:10:08 +02:00
Veronica Berglyd Olsen
ab9be4efd4 Fix test coverage 2026-07-05 18:07:01 +02:00
Veronica Berglyd Olsen
9a8b89afa7 Fix doc search race across document boundaries (#2811) 2026-07-05 18:06:37 +02:00
Veronica Berglyd Olsen
e20b82f802 Fix test coverage 2026-07-05 18:00:20 +02:00
Veronica Berglyd Olsen
1218b25127 Spell check word caching (#2808) 2026-07-05 17:55:28 +02:00
Veronica Berglyd Olsen
d58bc8373e Fix doc search race across document boundaries, backported from main 2026-07-05 17:52:42 +02:00
Veronica Berglyd Olsen
b6e7c9444e Remove reliance on actual spell check dictionary 2026-07-05 17:43:21 +02:00
Veronica Berglyd Olsen
32e004e11a Update tests 2026-07-05 17:39:50 +02:00
Veronica Berglyd Olsen
81babd8a07 Split the findNext function in the editor to handle race conditions when the user holds down the search next key 2026-07-05 17:39:38 +02:00
Veronica Berglyd Olsen
9d7c0c3a29 Add test coverage 2026-07-05 17:32:11 +02:00
Veronica Berglyd Olsen
dabcf769fb Add a spell check cache to avoid calling enchant so often 2026-07-05 17:31:59 +02:00
Veronica Berglyd Olsen
0a4269a405 Improve branch coverage (#2807) 2026-07-05 13:44:17 +02:00
Veronica Berglyd Olsen
9fad61bca1 Minor fixes 2026-07-05 13:41:14 +02:00
Veronica Berglyd Olsen
10ff56bba7 Fix branch misses on tools modules 2026-07-05 13:22:05 +02:00
Veronica Berglyd Olsen
36a0b024b1 Fix branch misses on guimain, shared and error 2026-07-05 12:43:05 +02:00
Veronica Berglyd Olsen
7f0e5cce08 Revert redundant CONFIG safeguards 2026-07-05 12:08:45 +02:00
Veronica Berglyd Olsen
1b9ac40e38 Fix branch misses on gui modules, part 3 2026-07-05 12:01:09 +02:00
Veronica Berglyd Olsen
7b078103a2 Fix branch misses on gui modules, part 2 2026-07-05 01:58:21 +02:00
Veronica Berglyd Olsen
ff89d27a93 Fix branch misses on gui modules, part 1 2026-07-05 01:11:24 +02:00
Veronica Berglyd Olsen
9c672ffd7b Fix MacOS test failure 2026-07-05 00:30:25 +02:00
Veronica Berglyd Olsen
097015228b Fix branch misses on format modules 2026-07-05 00:25:35 +02:00
Veronica Berglyd Olsen
b7d87a24cc Fix CI issues 2026-07-04 23:36:26 +02:00
Veronica Berglyd Olsen
628d012c82 Fix branch misses on extension modules 2026-07-04 23:33:16 +02:00
Veronica Berglyd Olsen
67c151e23e Fix branch misses on dialog modules 2026-07-04 23:06:16 +02:00
Veronica Berglyd Olsen
64fb934096 Fix branch misses on core modules 2026-07-04 21:23:53 +02:00
Veronica Berglyd Olsen
b9e9709f18 Fix branch misses on base modules 2026-07-04 19:07:41 +02:00
Veronica Berglyd Olsen
490527abdf Fix small branch misses 2026-07-04 18:47:37 +02:00
Veronica Berglyd Olsen
a78213052a Enable branch coverage 2026-07-04 18:43:29 +02:00
Veronica Berglyd Olsen
de5553647d Remove custom codeql file on release (#2806) 2026-07-04 16:04:48 +02:00
Veronica Berglyd Olsen
755b63bbf6 Update code of conduct 2026-07-04 16:02:09 +02:00
Veronica Berglyd Olsen
7666dcae2b Remove custom codeql file on release 2026-07-04 16:00:34 +02:00
Veronica Berglyd Olsen
db210b1da7 Remove custom codeql (#2805) 2026-07-04 15:52:31 +02:00
Veronica Berglyd Olsen
dd0c71c9d6 Remove custom codeql 2026-07-04 15:49:52 +02:00
Veronica Berglyd Olsen
e47dee1fac Shorten the code of conduct (#2803) 2026-07-04 15:25:08 +02:00
Veronica Berglyd Olsen
5eb45cc3ec Trim the code of conduct file and scope it down to the current repo 2026-07-04 15:21:35 +02:00
Veronica Berglyd Olsen
259cc7f00c Remove Ubuntu 25.10 and add 26.10 (#2802) 2026-07-02 20:41:30 +02:00
Veronica Berglyd Olsen
eb1ede7747 Remove Ubuntu 25.10 and add 26.10 2026-07-02 20:38:06 +02:00
Veronica Berglyd Olsen
b3147b125c Pre-Release 26.2a1 (#2801) 2026-07-02 20:25:36 +02:00
Veronica Berglyd Olsen
58fefe3182 Bump main to 26.2a2 2026-07-02 20:19:35 +02:00
Veronica Berglyd Olsen
3397319b9f Add EPUB format (#2283) 2026-07-02 20:15:55 +02:00
Veronica Berglyd Olsen
3bdb5ed594 Update docs 2026-07-02 20:13:00 +02:00
Veronica Berglyd Olsen
05c5915f2b Disable anchors in epub 2026-07-02 20:11:13 +02:00
Veronica Berglyd Olsen
07572a1e94 Treat notes as chapters, but with the notes filename in epub 2026-07-02 20:10:14 +02:00
Veronica Berglyd Olsen
cd9244f0dd Allow ignoring OS-specific tests in run_tests script 2026-07-02 19:16:52 +02:00
Veronica Berglyd Olsen
4347021572 Add epub save test and fix insertion of counts 2026-07-02 01:26:33 +02:00
Veronica Berglyd Olsen
98520c1816 Refactor css builder and add epub tests 2026-07-02 00:50:39 +02:00
Veronica Berglyd Olsen
8df5f519d2 Fix footnotes implementation for epub 2026-07-01 23:53:54 +02:00
Veronica Berglyd Olsen
5e5d18fc64 Clean up some unused formats code and sort inheritance between epub and html 2026-07-01 23:53:37 +02:00
Veronica Berglyd Olsen
86b436be98 Add slots to all formatting classes 2026-07-01 22:52:45 +02:00
Veronica Berglyd Olsen
15e73a1d43 Make ToEPub class inherit ToHtml and share formatting functions 2026-07-01 22:52:26 +02:00
Veronica Berglyd Olsen
8eb5442037 Some minor refactoring 2026-07-01 00:14:27 +02:00
Veronica Berglyd Olsen
56053686fb Fix validation issues in EPub format 2026-07-01 00:05:36 +02:00
Veronica Berglyd Olsen
65cb006f33 Add a css builder for HTML and EPub 2026-07-01 00:05:24 +02:00
Veronica Berglyd Olsen
d942373528 Merge branch 'main' into epub_format 2026-06-30 22:18:37 +02:00
Veronica Berglyd Olsen
d87b1beff5 Clarify icon and image format checks in tests (#2797) 2026-06-29 20:48:34 +02:00
Veronica Berglyd Olsen
ce4a86b077 When icon and image tests fail, give a detailed reason 2026-06-29 20:43:26 +02:00
Veronica Berglyd Olsen
0eb33394b9 Merge 26.1.1 release into main (#2796) 2026-06-28 18:45:28 +02:00
Veronica Berglyd Olsen
11a01eed96 Re-run ruff format 2026-06-28 18:40:55 +02:00
Veronica Berglyd Olsen
347e7913b4 Fix pyproject.toml 2026-06-28 18:35:45 +02:00
Veronica Berglyd Olsen
5d9f159a58 Merge branch 'main' into merge-26.1.1 2026-06-28 18:31:36 +02:00
Veronica Berglyd Olsen
5a7f129822 Release 26.1.1 (#2794) 2026-06-28 18:12:45 +02:00
Veronica Berglyd Olsen
329274876f Update credits for Catalan translations 2026-06-28 18:09:36 +02:00
Veronica Berglyd Olsen
a073665fe6 Update changelog and bump version 2026-06-28 18:09:23 +02:00
Veronica Berglyd Olsen
3d646474be Update translations (#2793) 2026-06-28 17:38:03 +02:00
Veronica Berglyd Olsen
ebca4f9c85 Fix i18n pipeline 2026-06-28 17:34:32 +02:00
Veronica Berglyd Olsen
678b80ea27 Clean up other translation files 2026-06-28 17:27:13 +02:00
Veronica Berglyd Olsen
a71a409426 Add Catalan 2026-06-28 17:26:59 +02:00
Veronica Berglyd Olsen
bee617afaf Updated existing translations 2026-06-28 17:26:42 +02:00
Veronica Berglyd Olsen
fbf603bc58 Simplify ts files (#2792) 2026-06-28 17:19:31 +02:00
Veronica Berglyd Olsen
c037b575cb Remove line numbers from .ts files 2026-06-28 17:13:14 +02:00
Veronica Berglyd Olsen
0cf81d02e7 Test on Fedora linux (#2463) 2026-06-28 15:07:08 +02:00
Veronica Berglyd Olsen
b0b9eba129 Merge Fedora tests into linux workflow 2026-06-28 15:03:37 +02:00
Veronica Berglyd Olsen
a845e9d76a Revert the build workflow changes 2026-06-28 15:00:38 +02:00
Veronica Berglyd Olsen
8475a29441 Fix dependencies 2026-06-28 14:56:25 +02:00
Veronica Berglyd Olsen
cc2620434b Rewrite the fedora test step to mirror the equivalent for ubuntu 2026-06-28 14:34:55 +02:00
Veronica Berglyd Olsen
0b3b73f47d Merge branch 'main' into pr/bkmgit/2463 2026-06-28 14:29:00 +02:00
Veronica Berglyd Olsen
e4d07783e7 Add smoke test to Appimage build (#2791) 2026-06-28 14:00:26 +02:00
Veronica Berglyd Olsen
0a3b4c33ec Fix dependencies 2026-06-28 13:54:44 +02:00
Veronica Berglyd Olsen
c124a19d82 Fix smoke test libGL error 2026-06-28 13:14:18 +02:00
Veronica Berglyd Olsen
435abd693a Merge branch 'release' into appimage-updates 2026-06-28 13:05:52 +02:00
Veronica Berglyd Olsen
fd29539b92 Fix QDBusError on Linux (#2790) 2026-06-28 13:05:27 +02:00
Veronica Berglyd Olsen
31cffb153b Just use if/elif logic 2026-06-28 13:02:34 +02:00
Veronica Berglyd Olsen
e31cd291a7 Group the identity part with the other implementations for windows and macos 2026-06-28 12:59:54 +02:00
Veronica Berglyd Olsen
198cbae6b4 Add a step to test the appimage on various distros 2026-06-28 12:54:37 +02:00
Veronica Berglyd Olsen
76d7faf5ba Fix QDBusError 2026-06-28 12:34:12 +02:00
Veronica Berglyd Olsen
6bf950df84 Update Code of Conduct (#2788) 2026-06-28 01:14:38 +02:00
Veronica Berglyd Olsen
0a4521fa27 Update violation response details 2026-06-28 00:12:16 +01:00
Veronica Berglyd Olsen
e74b232489 Clarify reporting instructions in Code of Conduct 2026-06-28 00:08:45 +01:00
Veronica Berglyd Olsen
41828edb63 Update code of conduct to v3.0 (#2787) 2026-06-28 01:07:26 +02:00
Veronica Berglyd Olsen
5e9e9c6ead Update code of conduct to v3.0 2026-06-28 01:04:07 +02:00
Veronica Berglyd Olsen
7669dea354 Update default Python to 3.14 (#2786) 2026-06-28 00:19:33 +02:00
Veronica Berglyd Olsen
4992fa73cf Fix i18n workflow trigger 2026-06-28 00:10:33 +02:00
Veronica Berglyd Olsen
496da77057 Use Python 3.14 as default 2026-06-28 00:08:04 +02:00
Veronica Berglyd Olsen
1c48f6352b Show active project spell check language in menu (#2785) 2026-06-27 23:36:50 +02:00
Veronica Berglyd Olsen
85f8583061 Sort lines 2026-06-27 23:33:16 +02:00
Veronica Berglyd Olsen
950bf4b111 Re-run spell checker when language changes 2026-06-27 23:31:13 +02:00
Veronica Berglyd Olsen
e44fa78354 Show what project language is set in the menu 2026-06-27 23:09:20 +02:00
Veronica Berglyd Olsen
fda6831075 Recursively set active inactive documents in project tree (#2784) 2026-06-27 22:23:42 +02:00
Veronica Berglyd Olsen
6166bab780 Update tests 2026-06-27 22:15:05 +02:00
Veronica Berglyd Olsen
66023ecf65 Allow setting active/inactive to all children (#2188) 2026-06-27 22:07:13 +02:00
Veronica Berglyd Olsen
c0bee55d82 Auto-refresh reference list on changes (#2782) 2026-06-27 01:39:47 +02:00
Veronica Berglyd Olsen
3d715d17dc Add test coverage 2026-06-27 01:35:34 +02:00
Veronica Berglyd Olsen
00a6a39eb3 Add signal path to notify back reference panel about index changes (#2124) 2026-06-27 01:33:48 +02:00
Veronica Berglyd Olsen
84864c68ec Improve item models (#2781) 2026-06-27 00:51:16 +02:00
Veronica Berglyd Olsen
da04fe3d83 Improve performance in notifying refresh from the data model to the model/view layer 2026-06-27 00:34:04 +02:00
Veronica Berglyd Olsen
b75bbaafa1 Fix issues in parent/child/descendant relationships 2026-06-27 00:19:24 +02:00
Veronica Berglyd Olsen
6f12fb3c5a Harden root folder handling when loading from file 2026-06-26 23:47:42 +02:00
Veronica Berglyd Olsen
1d37707628 Fix edge cases in the handling of the trash folder 2026-06-26 23:36:15 +02:00
Veronica Berglyd Olsen
207648b7ee Add consistency checks in tree tests 2026-06-26 23:26:05 +02:00
Veronica Berglyd Olsen
0e7859ea89 Add consistency guards in project tree 2026-06-26 23:25:36 +02:00
Veronica Berglyd Olsen
f23c067ccd Improve project tree drag and drop 2026-06-26 22:56:09 +02:00
Veronica Berglyd Olsen
0d160f4beb Fix race condition when creating new items in the project tree 2026-06-26 22:44:30 +02:00
Veronica Berglyd Olsen
c17cd2d1d3 Harden the model/view for the project tree 2026-06-26 22:44:09 +02:00
Veronica Berglyd Olsen
e14bb09139 Make improvements to the novel model 2026-06-26 22:27:20 +02:00
Veronica Berglyd Olsen
68d8002ea5 Add the isort rule to preserve formatting (#2780) 2026-06-25 23:21:37 +02:00
Veronica Berglyd Olsen
08bed0c597 Add the isort rule to preserve formatting 2026-06-25 23:17:39 +02:00
Veronica Berglyd Olsen
16fff7431c Update isort rules and add more ruff rules (#2779) 2026-06-25 23:15:50 +02:00
Veronica Berglyd Olsen
1f0d6a123d Add TID rule 2026-06-25 23:07:44 +02:00
Veronica Berglyd Olsen
255368cc47 Add SIM rule 2026-06-25 22:57:31 +02:00
Veronica Berglyd Olsen
64ce1c026a Add PT rule 2026-06-25 22:39:37 +02:00
Veronica Berglyd Olsen
f053510cd5 Add PIE rule 2026-06-25 22:28:24 +02:00
Veronica Berglyd Olsen
8cf0bebe29 Add G, ISC and LOG rules 2026-06-25 22:26:16 +02:00
Veronica Berglyd Olsen
223bc6b12d Add CPY rule 2026-06-25 22:18:33 +02:00
Veronica Berglyd Olsen
7ede82c57d Add C4 rules 2026-06-25 22:17:40 +02:00
Veronica Berglyd Olsen
d8a71615f9 Add ruff isort settings 2026-06-25 22:13:28 +02:00
Veronica Berglyd Olsen
b7df56759c Add the epub class 2026-06-25 21:59:35 +02:00
Veronica Berglyd Olsen
89103b7562 Add helper code for epub from old implementation 2026-06-25 21:38:57 +02:00
Veronica Berglyd Olsen
574d98da28 Resolve formatting differences between release and main (#2777) 2026-06-24 22:21:34 +02:00
Veronica Berglyd Olsen
84d51b3cb7 Merge branch 'release' into merge-release 2026-06-24 22:17:47 +02:00
Veronica Berglyd Olsen
f36cdaeeed Run ruff format (#2776) 2026-06-24 21:57:09 +02:00
Veronica Berglyd Olsen
64d5713041 Code cleanup (#2775) 2026-06-24 21:53:43 +02:00
Veronica Berglyd Olsen
1a0b127407 Run ruff format 2026-06-24 21:53:24 +02:00
Veronica Berglyd Olsen
4f3dbcae88 Allow ruff format 2026-06-24 21:47:27 +02:00
Veronica Berglyd Olsen
e6d25d2204 Enable a check for main code 2026-06-24 21:04:11 +02:00
Veronica Berglyd Olsen
dffd248343 Document magic methods 2026-06-24 20:46:54 +02:00
Veronica Berglyd Olsen
44be221621 Remove file history again 2026-06-24 20:36:13 +02:00
Veronica Berglyd Olsen
836b5a16ca Merge branch 'release' into merge-cleanup 2026-06-24 20:33:02 +02:00
Veronica Berglyd Olsen
4e7813aeb6 Code cleanup (#2774) 2026-06-24 20:30:43 +02:00
Veronica Berglyd Olsen
ddd9918881 Remove codecov.yml 2026-06-24 20:23:19 +02:00
Veronica Berglyd Olsen
095a18798c Drop the manifest file 2026-06-24 20:17:47 +02:00
Veronica Berglyd Olsen
7ddeed9955 Unpin ruff 2026-06-24 20:00:52 +02:00
Veronica Berglyd Olsen
6034133565 Remove file history comments 2026-06-24 19:57:36 +02:00
Veronica Berglyd Olsen
fd8324a1f4 Rename test modules 2026-06-24 19:53:34 +02:00
Veronica Berglyd Olsen
e0c9ae7598 Fix docs typos, ported from main branch (#2773) 2026-06-21 20:57:29 +02:00
Veronica Berglyd Olsen
879d51dff7 Update Manuscript tool docs (#2772) 2026-06-21 20:53:46 +02:00
Veronica Berglyd Olsen
24987a63a8 Fix docs typos, ported from main branch 2026-06-21 20:53:27 +02:00
Veronica Berglyd Olsen
3caa699d1a Include docs changes from current release branch 2026-06-21 20:43:32 +02:00
Veronica Berglyd Olsen
24f950e3b3 Fix some typos in the docs 2026-06-21 20:41:35 +02:00
Veronica Berglyd Olsen
4dff137c26 Extend the manuscript build docs 2026-06-21 20:28:05 +02:00
Veronica Berglyd Olsen
fcd5d04a40 Split the manuscript document into general and formatting 2026-06-21 19:39:19 +02:00
Veronica Berglyd Olsen
c487e88a0b Add horizontal rule format for manuscripts (#2771) 2026-06-20 19:28:23 +02:00
Veronica Berglyd Olsen
602adc2309 Add test coverage 2026-06-20 19:14:15 +02:00
Veronica Berglyd Olsen
d42b37c29c Simplify the horizontal rule use case 2026-06-20 18:26:08 +02:00
Veronica Berglyd Olsen
63fdd3699f First implementation of horizontal rule with tests 2026-06-20 17:52:01 +02:00
Veronica Berglyd Olsen
bde20ec991 Add horizontal lines to all export formats 2026-06-20 17:40:03 +02:00
Veronica Berglyd Olsen
84eaad0775 Add a horizontal rule format 2026-06-20 14:11:52 +02:00
Veronica Berglyd Olsen
3204959c80 Add missing commit from the justify on line break PR (#2770) 2026-06-20 00:51:16 +02:00
Veronica Berglyd Olsen
0cb677664e Add the justify setting on DocX as well, also missing in last PR 2026-06-20 00:47:15 +02:00
Veronica Berglyd Olsen
08563ade44 Add missing commit from the justify on line break PR 2026-06-20 00:43:50 +02:00
Veronica Berglyd Olsen
14f815d0ba Justify lines on soft break setting and ODT support (#2769) 2026-06-20 00:34:38 +02:00
Veronica Berglyd Olsen
d8489ba0fc Fix tests 2026-06-20 00:00:28 +02:00
Veronica Berglyd Olsen
d633f0ad04 Expose setting for controlling justify on break 2026-06-20 00:00:17 +02:00
Veronica Berglyd Olsen
3f89bfb273 Add settings.xml to ODT writer 2026-06-19 23:22:16 +02:00
Veronica Berglyd Olsen
550fc02ef8 Build tool improvements (#2768) 2026-06-19 19:57:22 +02:00
Veronica Berglyd Olsen
60277fc11a Update the translation file 2026-06-19 19:40:06 +02:00
Veronica Berglyd Olsen
f459025f39 Update the manuscript build dialogs and the screenshots in docs 2026-06-19 19:36:33 +02:00
Veronica Berglyd Olsen
3fa8c16164 Make manuscript build references consistent and up to date 2026-06-19 19:13:32 +02:00
Veronica Berglyd Olsen
f0aca3a965 Merge release branch into main (#2767) 2026-06-19 18:47:43 +02:00
Veronica Berglyd Olsen
47afb69acc Merge branch 'main' into merge-release 2026-06-19 18:38:31 +02:00
Veronica Berglyd Olsen
217f1a9786 Repo maintenance and UV tooling (#2766) 2026-06-19 18:37:57 +02:00
Veronica Berglyd Olsen
c0813f037b Disable new ruff rules 2026-06-19 18:23:35 +02:00
Veronica Berglyd Olsen
da3688bf2e Update actions 2026-06-19 18:06:44 +02:00
Veronica Berglyd Olsen
5ba3b4ea9d Add lock file 2026-06-19 18:02:27 +02:00
Veronica Berglyd Olsen
3e6ec4a75b Replace pdm with uv 2026-06-19 18:00:26 +02:00
Veronica Berglyd Olsen
c9dbb1e240 Add agents and update guide 2026-06-19 17:53:07 +02:00
Veronica Berglyd Olsen
5a66c19033 Improve key press processing in editor completer menu (#2743) 2026-05-03 13:35:27 +02:00
Veronica Berglyd Olsen
e256208eb4 Update docstrings 2026-05-03 13:17:25 +02:00
Veronica Berglyd Olsen
c72b2d5bba Improve handling of completer selection 2026-05-03 13:14:25 +02:00
Veronica Berglyd Olsen
d1194a37cd Add completer processing of left, right and tab keys (#2742) 2026-05-03 13:13:59 +02:00
Veronica Berglyd Olsen
d4cfd6ef4f Merge 26.1 release into 26.2 (#2741) 2026-04-26 18:08:52 +02:00
Veronica Berglyd Olsen
b27b3ad3f8 Merge branch 'main' into merge-26.1 2026-04-26 18:01:55 +02:00
Veronica Berglyd Olsen
83b1c6969a Post-release fixes (#2740) 2026-04-26 18:00:06 +02:00
Veronica Berglyd Olsen
865c556da3 Add missing items in changelog 2026-04-26 17:55:33 +02:00
Veronica Berglyd Olsen
4efd68446e Release 26.1 (#2738) 2026-04-26 15:50:57 +02:00
Veronica Berglyd Olsen
115218c8aa Bump version and update changelog 2026-04-26 15:44:29 +02:00
Veronica Berglyd Olsen
0f58788e26 Update translations 2026-04-26 15:33:41 +02:00
Veronica Berglyd Olsen
c72bb8c196 Update credits 2026-04-19 20:56:56 +02:00
Veronica Berglyd Olsen
10c8a186e5 Merge release fixes into 26.2 Alpha 0 (#2733) 2026-04-14 21:45:10 +02:00
Veronica Berglyd Olsen
f125908e1e Merge branch 'release' into merge-release-fixes 2026-04-14 17:53:50 +02:00
Veronica Berglyd Olsen
89c46e989d Don't expand justified text on short lines for DocX (#2732) 2026-04-14 17:48:59 +02:00
Veronica Berglyd Olsen
b3803ec424 Add missing translation string for mentions (#2731) 2026-04-14 17:44:31 +02:00
Veronica Berglyd Olsen
1eea25c87b Update tests 2026-04-14 17:42:29 +02:00
Veronica Berglyd Olsen
880b24a929 Add the setting to DocX exports to not expand on Shift+Enter for justified text (#2690) 2026-04-14 17:41:24 +02:00
Veronica Berglyd Olsen
20ecbbafaa Add missing translation string for mentions (#2730) 2026-04-14 17:35:45 +02:00
Veronica Berglyd Olsen
f6f7cc9cd1 Update manuscript build settings label (#2729) 2026-04-14 17:27:22 +02:00
Veronica Berglyd Olsen
36e4f34780 Clarify note title label for manuscript settings (#2727) 2026-04-14 17:02:00 +02:00
Veronica Berglyd Olsen
ed232b2199 Bump main to 26.2 Alpha 0 (#2726) 2026-04-13 22:38:55 +02:00
Veronica Berglyd Olsen
571e3467fc Move main to 26.2 Alpha 0 2026-04-13 22:31:52 +02:00
Veronica Berglyd Olsen
b8508b7cd8 Merge 26.1 branch into release (#2725) 2026-04-13 22:29:21 +02:00
Veronica Berglyd Olsen
9725b2334c Fix redundant line in changelog 2026-04-13 21:55:06 +02:00
Veronica Berglyd Olsen
eab54ef98f Release 2026.1 RC 1 (#2723) 2026-04-13 21:41:41 +02:00
Veronica Berglyd Olsen
afaf12e4b0 Bump version to 26.1 RC 1 and update changelog 2026-04-13 21:31:38 +02:00
Veronica Berglyd Olsen
0e5cd73ef0 Update i18n for 26.1 RC 1 (#2722) 2026-04-13 21:30:33 +02:00
Veronica Berglyd Olsen
9c972b19e1 Add missing two strings for en-US and nb-NO 2026-04-13 21:18:28 +02:00
Veronica Berglyd Olsen
c6487f4837 Update completed translations 2026-04-13 21:09:42 +02:00
Veronica Berglyd Olsen
0182107bc0 Fix typo in debug log 2026-04-13 21:06:56 +02:00
Veronica Berglyd Olsen
7497fc12fc Add setting for single-asterisk bold (#2719) 2026-04-13 08:59:06 +02:00
Veronica Berglyd Olsen
3ce8d08439 Merge branch 'main' 2026-04-12 22:12:39 +02:00
Veronica Berglyd Olsen
111db6e2d1 Update translation sources (#2721) 2026-04-12 20:57:57 +02:00
Veronica Berglyd Olsen
a990429daa Update completed en-US and nb-NO translations 2026-04-12 20:32:36 +02:00
Veronica Berglyd Olsen
b618697998 Update translation files with existing translations and new strings 2026-04-12 19:01:39 +02:00
Veronica Berglyd Olsen
6f96ca4a62 Update i18n workflow and add a string to preferences 2026-04-12 18:42:44 +02:00
Veronica Berglyd Olsen
9626917362 Extend pattern tests 2026-04-11 17:27:45 +02:00
Veronica Berglyd Olsen
d4705fe5be Extend test coverage for tokenizer 2026-04-11 17:09:31 +02:00
Veronica Berglyd Olsen
0a6cb656c8 Update the docs 2026-04-11 16:24:02 +02:00
Veronica Berglyd Olsen
72097a0fbb Update tests 2026-04-11 16:11:45 +02:00
Veronica Berglyd Olsen
47a2a15b59 Add formatting and highlighting for single asterisk bold 2026-04-11 16:11:34 +02:00
Veronica Berglyd Olsen
08082cf7e2 Add a setting for using single asterisk for bold 2026-04-11 16:08:02 +02:00
Veronica Berglyd Olsen
6f1a656a9a Fix path label focus colour change (#2717) 2026-04-11 14:06:15 +02:00
Veronica Berglyd Olsen
8fb4b02ef9 Remove the PDM badge 2026-04-11 13:59:41 +02:00
Veronica Berglyd Olsen
9ec26d4e87 Fix typo in colour label internal method 2026-04-11 13:55:42 +02:00
Veronica Berglyd Olsen
12c0e9d452 Fix colour label bug for document headers (#2716) 2026-04-11 13:54:32 +02:00
Veronica Berglyd Olsen
338cfa3cef Fix welcome dialog tooltip and accessibility (#2715) 2026-04-09 21:31:19 +02:00
Veronica Berglyd Olsen
7f82bcdaf6 Improve the accessibility of the list model on the welcome dialog and remove the tooltip 2026-04-09 21:17:18 +02:00
Veronica Berglyd Olsen
30672945d5 Cache all item data role enum values 2026-04-09 20:10:33 +02:00
Veronica Berglyd Olsen
dabb6f0b74 Update changelog (#2713) 2026-04-08 10:13:45 +02:00
Veronica Berglyd Olsen
8bf8950274 Update pr and issue reference in changelog 2026-04-08 10:08:33 +02:00
Veronica Berglyd Olsen
e4d9582a98 Update chgangelog 2026-04-08 10:03:22 +02:00
Veronica Berglyd Olsen
0a0e4fcd06 Adjusting the [Icon] colors (#2712) 2026-04-08 07:50:26 +02:00
HeyMyian
75bac0f6ea Adjusting the [Icon] colors 2026-04-07 14:48:32 +02:00
Veronica Berglyd Olsen
a670d0238f Add spin box fixed size settings (#2711) 2026-04-05 18:49:36 +02:00
Veronica Berglyd Olsen
861e2a9439 Update spinbox settings 2026-04-05 18:41:11 +02:00
Veronica Berglyd Olsen
c81f402ae2 Allow setting spin box size bu number of visible digits 2026-04-05 18:40:51 +02:00
Veronica Berglyd Olsen
cc3e2e2e40 Improve font handling for Qt 6.11 (#2710) 2026-04-05 17:20:22 +02:00
Veronica Berglyd Olsen
808d7db163 Use theme fonts in the UI instead of bold tags an local formatting 2026-04-05 17:12:31 +02:00
Veronica Berglyd Olsen
95c7b64de4 Switch to semi bold for the GUI 2026-04-05 16:15:23 +02:00
Veronica Berglyd Olsen
5265d67b7f Centralise how GUI font emphasis is handled 2026-04-05 15:36:55 +02:00
Veronica Berglyd Olsen
5d2df118de Release 26.1 Beta 2 (#2707) 2026-04-04 21:06:54 +02:00
Veronica Berglyd Olsen
13641575c2 Bump version and update changelog 2026-04-04 21:02:20 +02:00
Veronica Berglyd Olsen
c71dd3f3a4 Fix Qt 6.9 dependency issue (#2704) 2026-04-04 20:47:06 +02:00
Veronica Berglyd Olsen
7fad383060 Add test for debian package and update workflow names 2026-04-04 20:41:21 +02:00
Veronica Berglyd Olsen
1bab57de01 Update how Qt version is checked 2026-04-04 20:40:53 +02:00
Veronica Berglyd Olsen
db4c50a848 Post release fixes (#2702) 2026-04-02 19:50:16 +02:00
Veronica Berglyd Olsen
743bd8db5f Update actions in workflows 2026-04-02 19:04:15 +02:00
Veronica Berglyd Olsen
cffe75a6a8 Fix typo in changelog 2026-04-02 19:04:03 +02:00
Veronica Berglyd Olsen
ccd0d5c235 Release 26.1b1 (#2700) 2026-04-02 18:46:33 +02:00
Veronica Berglyd Olsen
1fd48b08cd Remove MacOS from the default build workflow 2026-04-02 18:42:09 +02:00
Veronica Berglyd Olsen
cfdfd25320 Add Mac release note 2026-04-02 18:36:56 +02:00
Veronica Berglyd Olsen
7952bd1c18 Bump version and update changelog 2026-04-02 18:34:28 +02:00
Veronica Berglyd Olsen
ab68cc8ecd Update lockfile 2026-04-02 17:53:49 +02:00
Veronica Berglyd Olsen
f65cb6fc6e Update translation files (#2699) 2026-04-02 17:47:56 +02:00
Veronica Berglyd Olsen
25b741f04e Update translation files 2026-04-02 17:33:37 +02:00
Veronica Berglyd Olsen
3563144a8e Improve screen reader support (#2698) 2026-04-02 17:27:12 +02:00
Veronica Berglyd Olsen
3e11bea0d4 Minor fixes 2026-04-02 17:08:03 +02:00
Veronica Berglyd Olsen
d23269fb7e Add count unit to project tree and novel view 2026-04-02 16:55:02 +02:00
Veronica Berglyd Olsen
4568e1cdb9 Add tooltips to all icon buttons 2026-04-02 16:07:21 +02:00
Veronica Berglyd Olsen
bc011b2230 Make the config layout understandable to the screen reader 2026-04-02 15:10:22 +02:00
Veronica Berglyd Olsen
770bad5e10 Improve opening documents from search and editor (#2697) 2026-03-29 17:49:45 +02:00
Veronica Berglyd Olsen
e079831f04 Allow Shift+Enter to open documents from project search in the viewer 2026-03-29 17:35:46 +02:00
Veronica Berglyd Olsen
7c1ed99de2 Allow editing tag source from editor tag 2026-03-29 17:14:54 +02:00
Veronica Berglyd Olsen
7d07929b16 Allow backwards search also to loop through documents (#2696) 2026-03-29 16:36:41 +02:00
Veronica Berglyd Olsen
dcf6bad34e Update docstring 2026-03-29 16:26:30 +02:00
Veronica Berglyd Olsen
2a3dc8a522 Update tests 2026-03-29 16:21:46 +02:00
Veronica Berglyd Olsen
b0690a7e42 Add support for looping through documents backwards when searching 2026-03-29 16:04:24 +02:00
Veronica Berglyd Olsen
3432974340 Add exclamation point to URL regex and update themes credits (#2695) 2026-03-28 19:58:15 +01:00
Veronica Berglyd Olsen
228983dfaf Add new themes to credits 2026-03-28 19:50:44 +01:00
Veronica Berglyd Olsen
0ead2f10ce Allow exclamation points in URLs (#2693) 2026-03-28 19:47:28 +01:00
Veronica Berglyd Olsen
4797daca72 Add colourblindness themes (#2694) 2026-03-28 19:39:11 +01:00
Veronica Berglyd Olsen
e801867d28 Merge branch 'main' into colourblindness_themes 2026-03-28 19:33:54 +01:00
Veronica Berglyd Olsen
13e55d8ff2 Add light themes for deuteranopia and tritanopia 2026-03-28 19:33:18 +01:00
Veronica Berglyd Olsen
c2d8884656 Add option for dotted underline for formatting tags and modifiers (#2692) 2026-03-28 18:34:41 +01:00
Veronica Berglyd Olsen
c9b1eeb740 Rename the variable in the highlighter 2026-03-28 17:13:50 +01:00
Veronica Berglyd Olsen
b436961875 Add setting for dotted underline on modifiers and codes 2026-03-28 17:07:58 +01:00
Veronica Berglyd Olsen
99e11e20b5 Add split document by cursor feature (#2688) 2026-03-22 15:00:41 +01:00
Veronica Berglyd Olsen
2a8b0efb66 Cache context menu translations 2026-03-22 14:54:39 +01:00
Veronica Berglyd Olsen
83a40c238c Add move text entry to main menu 2026-03-22 14:39:04 +01:00
Veronica Berglyd Olsen
60b7040241 Add test coverage 2026-03-22 14:13:56 +01:00
Veronica Berglyd Olsen
577773793c Use existing heading for new document if it exists at start of selection 2026-03-22 13:33:37 +01:00
Veronica Berglyd Olsen
7045b54e8f Move heading split function to text module 2026-03-22 13:12:36 +01:00
Veronica Berglyd Olsen
65c5cb599e Add a move text feature in the editor 2026-03-22 13:04:14 +01:00
Veronica Berglyd Olsen
c6859d2ead Replace UV with PDM (#2687) 2026-03-21 18:14:16 +01:00
Veronica Berglyd Olsen
57bea6b5b6 Fix pdm install command 2026-03-21 18:09:19 +01:00
Veronica Berglyd Olsen
551efc940d Update workflows 2026-03-21 18:05:28 +01:00
Veronica Berglyd Olsen
0590e4b13e Update scripts 2026-03-21 18:05:15 +01:00
Veronica Berglyd Olsen
14ca5688b5 Update docs with PDM info 2026-03-21 17:52:52 +01:00
Veronica Berglyd Olsen
f6698f5916 Remove uv lockfile and add pdm 2026-03-21 17:52:36 +01:00
Veronica Berglyd Olsen
4196031cdc Update readme (#2686) 2026-03-20 17:13:44 +01:00
Veronica Berglyd Olsen
c4627ca108 Merge branch 'main' into update_readme 2026-03-20 17:07:14 +01:00
Veronica Berglyd Olsen
3080270067 Add AI note 2026-03-20 17:06:31 +01:00
Veronica Berglyd Olsen
ad0cace563 Update the error window titles (#2684) 2026-03-18 19:52:53 +01:00
Veronica Berglyd Olsen
208098bfaa Add Anoia error 2026-03-18 18:10:37 +01:00
Veronica Berglyd Olsen
7c2050b374 Update the error window title choices 2026-03-18 18:01:25 +01:00
Veronica Berglyd Olsen
6068d00942 Improve error handling and reporting (#2683) 2026-03-17 18:57:57 +01:00
Veronica Berglyd Olsen
9196f327f6 Update tests 2026-03-17 18:50:35 +01:00
Veronica Berglyd Olsen
d90ebfc880 Cac he and report error messages when saving 2026-03-17 18:46:33 +01:00
Veronica Berglyd Olsen
38f48c0101 Add error cache to SharedData 2026-03-17 18:45:49 +01:00
Veronica Berglyd Olsen
c3bf5d97eb Set a minimum width for message boxes 2026-03-17 18:09:53 +01:00
Veronica Berglyd Olsen
fbc962102d Bump to 26.1 Alpha 2 (#2680) 2026-03-07 18:18:09 +01:00
Veronica Berglyd Olsen
6a82bf40fc Add formatting to the version number 2026-03-07 18:13:16 +01:00
Veronica Berglyd Olsen
726104ddbd Bump to 26.1 Alpha 2 2026-03-07 17:53:33 +01:00
Veronica Berglyd Olsen
1e288c98e3 Add shortcuts to move between paragraphs (#2679) 2026-03-07 17:25:05 +01:00
Veronica Berglyd Olsen
2303bc1048 Update docs 2026-03-07 17:20:38 +01:00
Veronica Berglyd Olsen
778664a294 Add test coverage 2026-03-07 17:17:27 +01:00
Veronica Berglyd Olsen
0bb1f9c657 Add editor shortcuts to skip between paragraphs (#2635) 2026-03-07 17:08:57 +01:00
Veronica Berglyd Olsen
1e68708a05 Add document header breadcrumbs (#2677) 2026-03-07 16:23:22 +01:00
Veronica Berglyd Olsen
255fe95fe7 Revert unintended change 2026-03-07 16:20:09 +01:00
Veronica Berglyd Olsen
a9dc27eaa6 Move the path label feature into a subclass 2026-03-07 16:17:43 +01:00
Veronica Berglyd Olsen
52dbe040a8 Make some minor improvements when clearing document headers 2026-03-07 16:12:17 +01:00
Veronica Berglyd Olsen
1f143bee9b Tweak icon and text alignment in document headers 2026-03-07 16:00:02 +01:00
Veronica Berglyd Olsen
ebcfaa73d7 Update tests 2026-03-07 15:10:45 +01:00
Veronica Berglyd Olsen
4de4bb777e Make each part of the document header path clickable (#2664) 2026-03-07 15:10:33 +01:00
Veronica Berglyd Olsen
9fb7d3373b Merge branch 'main' into doc_headers 2026-03-07 13:24:51 +01:00
Veronica Berglyd Olsen
66da3ac4ad Packaging updates (#2678) 2026-03-07 13:24:32 +01:00
Veronica Berglyd Olsen
b28620e929 Update workflows 2026-03-07 13:14:13 +01:00
Veronica Berglyd Olsen
fbc3115415 Add uv lock file 2026-03-07 13:14:05 +01:00
Veronica Berglyd Olsen
f3b3122cff Add room for font descent in document headers (#2674) 2026-03-07 12:51:28 +01:00
Veronica Berglyd Olsen
3d196d17e9 Harden I/O handling to account for PermissionError from pathlib (#2675) 2026-03-03 19:58:20 +01:00
Veronica Berglyd Olsen
0ff003890f Add test coverage 2026-03-03 19:34:01 +01:00
Veronica Berglyd Olsen
b050cdec42 Fix linting 2026-03-03 18:55:23 +01:00
Veronica Berglyd Olsen
3788a3ebb3 Add file system safe I/O wrapper functions 2026-03-02 23:06:35 +01:00
Veronica Berglyd Olsen
dd4e32c90e Add icon to status message 2026-03-02 22:58:54 +01:00
Veronica Berglyd Olsen
10685a2a20 Don't display full HTTP error in version info widget 2026-03-02 21:15:30 +01:00
Veronica Berglyd Olsen
44ba48e00d Add heading size setting for editor (#2670) 2026-02-18 15:33:48 +01:00
Veronica Berglyd Olsen
89bd79217b Update tests 2026-02-18 15:28:23 +01:00
Veronica Berglyd Olsen
de186645e0 Add a setting to disable editor header scaling 2026-02-18 15:28:11 +01:00
Veronica Berglyd Olsen
72cfda5b16 Switch to year-based versioning and update version info widget (#2669) 2026-02-15 14:36:38 +01:00
Veronica Berglyd Olsen
475d22e7bf Update about dialog 2026-02-15 14:24:38 +01:00
Veronica Berglyd Olsen
be5e9558b9 Update version info widget 2026-02-15 14:22:28 +01:00
Veronica Berglyd Olsen
9bb3620747 Add calendar and link icons 2026-02-15 14:21:57 +01:00
Veronica Berglyd Olsen
733ee6e17d Use year-based version numbers 2026-02-15 13:48:02 +01:00
Veronica Berglyd Olsen
7dd3a1c62f Improve Welcome dialog (#2668) 2026-02-14 17:49:29 +01:00
Veronica Berglyd Olsen
713667b606 Update tests and add test coverage 2026-02-14 17:28:50 +01:00
Veronica Berglyd Olsen
7135a1fd77 Allow selecting project to open with arrow keys without changing focus 2026-02-14 17:28:34 +01:00
Veronica Berglyd Olsen
f0a03fc658 Improve version info display 2026-02-14 16:05:36 +01:00
Veronica Berglyd Olsen
6252526985 Merge changes from release 2.8.2 (#2658) 2026-01-25 15:33:19 +01:00
Veronica Berglyd Olsen
baf2e617eb Merge release 2.8.2 into main 2026-01-25 15:28:47 +01:00
Veronica Berglyd Olsen
1bf096d93e Post release updates (#2657) 2026-01-25 15:27:22 +01:00
Veronica Berglyd Olsen
84187b9239 Backport icon theme updates from 2.9 dev branch 2026-01-25 15:16:01 +01:00
Veronica Berglyd Olsen
4c4a21085e Drop Ubuntu 25.04 build 2026-01-25 15:11:59 +01:00
Veronica Berglyd Olsen
dafccd5b38 Release 2.8.2 (#2655) 2026-01-25 14:52:10 +01:00
Veronica Berglyd Olsen
016073c6a9 Bump version and update changelog 2026-01-25 14:44:04 +01:00
Veronica Berglyd Olsen
7e85c70646 Alert when the loading of a spellcheck dictionary fails (#2654) 2026-01-25 14:27:23 +01:00
Veronica Berglyd Olsen
5934bc7c02 Open a dialog when the loading of spell checking fails (#2631) 2026-01-25 14:20:34 +01:00
Veronica Berglyd Olsen
97f84eca42 Add header promotion info to docs and update handling for HTML (#2653) 2026-01-25 14:00:27 +01:00
Veronica Berglyd Olsen
c1c29012c2 Update documentation on heading promotion 2026-01-25 13:52:40 +01:00
Veronica Berglyd Olsen
d1aaee951b Fix tests 2026-01-25 13:44:36 +01:00
Veronica Berglyd Olsen
cafd33a187 Add a marker for testing optional assets 2026-01-25 13:44:27 +01:00
Veronica Berglyd Olsen
d9d0d400c7 Use p tag for titles in HTML output 2026-01-25 13:43:33 +01:00
Veronica Berglyd Olsen
41807e1e3f Allow setting sizes of manuscript headings (#2650) 2026-01-20 20:24:13 +01:00
Veronica Berglyd Olsen
c97e4dc96e Fix and improve tests 2026-01-20 20:20:36 +01:00
Veronica Berglyd Olsen
baa4dd9a2f Make label capitalisation more consistent 2026-01-20 20:11:54 +01:00
Veronica Berglyd Olsen
e110cb8633 Sort the size and margin settings 2026-01-20 18:01:03 +01:00
Veronica Berglyd Olsen
3b7cad254b Add reset buttons to sizes and margins 2026-01-20 17:53:22 +01:00
Veronica Berglyd Olsen
6f9be00428 Remove old scale headings setting 2026-01-20 17:14:55 +01:00
Veronica Berglyd Olsen
6b019edaa7 Add font size settings for manuscript headings 2026-01-20 17:07:59 +01:00
Veronica Berglyd Olsen
9b5a7f96f6 Add a font size icon 2026-01-20 17:02:01 +01:00
Veronica Berglyd Olsen
d952b38a0f Allow using empty lines as margins in manuscript (#2649) 2026-01-20 16:46:53 +01:00
Veronica Berglyd Olsen
634d513e59 Add test coverage 2026-01-20 16:41:35 +01:00
Veronica Berglyd Olsen
5d63dfec67 Add blank line before headings 2026-01-19 21:50:36 +01:00
Veronica Berglyd Olsen
08d7328051 Add settings to insert empty lines instead of using margins 2026-01-19 21:50:17 +01:00
Veronica Berglyd Olsen
f53af56b57 Build settings update (#2647) 2026-01-19 21:32:47 +01:00
Veronica Berglyd Olsen
b61ec6820b Fix linting 2026-01-19 20:19:34 +01:00
Veronica Berglyd Olsen
0181c1209c Optimise loading of build settings icons 2026-01-19 19:52:07 +01:00
Veronica Berglyd Olsen
9d5c460696 Add setting for manuscript upper case headings 2026-01-19 19:28:42 +01:00
Veronica Berglyd Olsen
b176f60290 Move text margin labels around 2026-01-19 19:06:46 +01:00
Veronica Berglyd Olsen
a4e60f7d90 Fix icons for text margins 2026-01-19 19:03:12 +01:00
Veronica Berglyd Olsen
96f289a081 Move heading build settings to a new section 2026-01-19 18:54:44 +01:00
Veronica Berglyd Olsen
e6d186b6c3 Fix Windows launch file path handling (#2645) 2026-01-11 16:23:58 +01:00
Veronica Berglyd Olsen
5b104d47a8 Fix Ruff linting for 0.14.11 2026-01-11 16:13:37 +01:00
Veronica Berglyd Olsen
a93888f0c4 Update signed Windows launcher exe 2026-01-11 16:06:39 +01:00
Veronica Berglyd Olsen
eb38f77c47 Bump Windows launcher version number 2026-01-11 16:02:21 +01:00
Veronica Berglyd Olsen
fb4e4e8370 Fix launching project files with space in the path on Windows (#2643) 2026-01-11 16:01:11 +01:00
Veronica Berglyd Olsen
776e4dbb6c Further improve PDF build (#2639) 2026-01-06 16:33:49 +01:00
Veronica Berglyd Olsen
5762dd333e Move setDefaultFont call in PDF build 2026-01-05 23:01:10 +01:00
Veronica Berglyd Olsen
9ea9a72d1f Move the printer init code around a bit for clarity 2026-01-05 21:05:39 +01:00
Veronica Berglyd Olsen
ff5c046544 Mix the two solutions 2026-01-05 21:00:11 +01:00
Veronica Berglyd Olsen
69ac66f00e Change cursor while building, for long documents 2026-01-05 20:22:14 +01:00
Veronica Berglyd Olsen
80f9c69194 Remove PDF build paint device override and set no hinting instead (#2637) 2026-01-05 20:21:47 +01:00
Veronica Berglyd Olsen
f882acb7cf Increase PDF page limit (#2638) 2026-01-05 09:02:00 +01:00
Veronica Berglyd Olsen
d01ca0e515 Simply use 300 DPI for text instead 2026-01-05 01:22:17 +01:00
Veronica Berglyd Olsen
faae153671 Revert build PDF paint device override (#2637) 2026-01-04 22:45:41 +01:00
Veronica Berglyd Olsen
60d7bd301b Add Lucide icon theme (#2632) 2025-12-29 16:07:49 +01:00
Veronica Berglyd Olsen
266618dfd3 Bump Remix icons to 4.8 2025-12-29 15:41:12 +01:00
Veronica Berglyd Olsen
1ed4604cb4 Add credits and license information 2025-12-29 15:31:32 +01:00
Veronica Berglyd Olsen
e49336dffb Add Lucide icon theme as an optional theme 2025-12-29 15:21:34 +01:00
Veronica Berglyd Olsen
391f9bcedb Merge 2.8.1 into main (#2629) 2025-12-28 15:36:20 +01:00
Veronica Berglyd Olsen
a636bd88ce Merge 2.8.1 into main 2025-12-28 15:32:28 +01:00
Veronica Berglyd Olsen
e8dd93189a Post release fixes (#2628) 2025-12-28 15:31:15 +01:00
Veronica Berglyd Olsen
5d1bef6903 Fix debian alternative package names 2025-12-28 15:23:08 +01:00
Veronica Berglyd Olsen
a4ee79e285 Release 2.8.1 (#2626) 2025-12-28 14:12:32 +01:00
Veronica Berglyd Olsen
8c798099ef Bump version to 2.8.1 and update changelog 2025-12-28 14:01:44 +01:00
Veronica Berglyd Olsen
5104f99684 Fix theme docs and add docs version pinning (#2625) 2025-12-28 13:47:17 +01:00
Veronica Berglyd Olsen
b1a3d40d05 Add version pinning to localised docs 2025-12-28 13:41:41 +01:00
Veronica Berglyd Olsen
1d9fdb7367 Update docs on colour themes (#2619) 2025-12-28 12:55:51 +01:00
Veronica Berglyd Olsen
5cb154ce8b Fix input method query bug (#2623) 2025-12-28 10:43:28 +01:00
Veronica Berglyd Olsen
8a802aca90 Update test coverage 2025-12-26 15:06:34 +01:00
Veronica Berglyd Olsen
85e1d0966f Disable QVariant conversion for inputMethodQuery (#2622) 2025-12-26 15:06:23 +01:00
Veronica Berglyd Olsen
c04764d2cb Add CodeQL to release branch (#2621) 2025-12-22 12:07:05 +01:00
Veronica Berglyd Olsen
e55abe7089 Add CodeQl to release branch 2025-12-22 09:53:04 +01:00
Veronica Berglyd Olsen
3d475a2e9d Create CodeQL workflow (#2620) 2025-12-22 09:51:52 +01:00
Veronica Berglyd Olsen
aa83b5f29f Update CodeQL 2025-12-22 09:44:02 +01:00
Veronica Berglyd Olsen
d210c48d21 Create CodeQL workflow 2025-12-22 09:33:55 +01:00
Veronica Berglyd Olsen
9b934c3476 Post release fixes for 2.8 (#2613) 2025-12-14 23:06:23 +01:00
Veronica Berglyd Olsen
8883a293a1 Merge branch 'main' into post_build_fixes 2025-12-14 23:01:27 +01:00
Veronica Berglyd Olsen
911db66cf9 Generate Debian control file dynamically (#2612) 2025-12-14 23:00:49 +01:00
Veronica Berglyd Olsen
ced132b282 Generate Debian control file dynamically 2025-12-14 22:46:41 +01:00
Veronica Berglyd Olsen
04b49fd886 Merge 2.8 into main (#2611) 2025-12-14 20:29:55 +01:00
Veronica Berglyd Olsen
7064d61ae5 Undo project XML line wrapping 2025-12-14 20:26:23 +01:00
Veronica Berglyd Olsen
6d6bc05f6a Merge branch 'main' into merge_2.8 2025-12-14 20:23:11 +01:00
Veronica Berglyd Olsen
28962fa665 Fixes for Release 2.8 (#2610) 2025-12-14 20:21:00 +01:00
Veronica Berglyd Olsen
1509b34a31 Fix MacOS build script 2025-12-14 19:50:34 +01:00
Veronica Berglyd Olsen
2b2bd5e2ff Fix changelog 2025-12-14 19:47:42 +01:00
Veronica Berglyd Olsen
d02f1dc283 Release 2.8 (#2608) 2025-12-14 19:36:55 +01:00
Veronica Berglyd Olsen
275ce2a823 Bump version and update changelog 2025-12-14 19:33:01 +01:00
Veronica Berglyd Olsen
d06341cf12 Update translation files 2025-12-14 19:25:18 +01:00
Veronica Berglyd Olsen
8a234329d6 Add Qt6 SVG plugins as a direct dependency for Debian (#2607) 2025-12-14 19:17:10 +01:00
Veronica Berglyd Olsen
326caa5877 Add qt6-svg-plugins to .deb dependencies (#2604) 2025-12-14 18:39:29 +01:00
Veronica Berglyd Olsen
bfe42710e7 Overload editor mimedata insert (#2602) 2025-12-07 22:29:36 +01:00
Veronica Berglyd Olsen
a5e2531d2c Fix debug log message 2025-12-07 22:25:33 +01:00
Veronica Berglyd Olsen
13e23593ba Only insert text in editor if there actually is anything to insert (#2598) 2025-12-07 22:22:13 +01:00
Veronica Berglyd Olsen
9a58f2677c Bump to 2.9 Alpha 0 (#2597) 2025-11-30 14:40:55 +01:00
Veronica Berglyd Olsen
29f49660f6 Bump main branch to 2.9 Alpha 0 2025-11-30 14:30:28 +01:00
Veronica Berglyd Olsen
c2e6cb1f44 Merge 2.8 RC 1 into Release (#2596) 2025-11-30 14:28:04 +01:00
Veronica Berglyd Olsen
625be3ad11 Fix docs (#2595) 2025-11-30 14:08:06 +01:00
Veronica Berglyd Olsen
609eed9068 Fix broken link in docs 2025-11-30 14:04:46 +01:00
Veronica Berglyd Olsen
ddceabee6a Release 2.8 RC 1 (#2589) 2025-11-30 13:33:36 +01:00
Veronica Berglyd Olsen
8f01bdef78 Update changelog 2025-11-30 13:30:28 +01:00
Veronica Berglyd Olsen
924d3d324d Update base translation files for remaining languages 2025-11-30 13:25:35 +01:00
Veronica Berglyd Olsen
b31120b271 Update US English, Italian, Japanese and Norwegian 2025-11-30 13:25:15 +01:00
Veronica Berglyd Olsen
200a77bf45 Update docs 2025-11-29 20:25:46 +01:00
Veronica Berglyd Olsen
6223bf212f Update changelog and add new translation string 2025-11-29 20:25:37 +01:00
Veronica Berglyd Olsen
b1f64114dd Merge branch 'main' into release_2.8rc1 2025-11-29 20:02:34 +01:00
Veronica Berglyd Olsen
b2148e5440 Allow overriding language for manuscripts (#2593) 2025-11-29 20:02:12 +01:00
Veronica Berglyd Olsen
8b86f901dc Add a shared function to translate language names 2025-11-29 19:58:54 +01:00
Veronica Berglyd Olsen
830a2d9c40 Add language meta data to HTML export 2025-11-29 19:50:53 +01:00
Veronica Berglyd Olsen
2045927e95 Add a language override setting to manuscript build settings (#2328) 2025-11-29 19:50:28 +01:00
Veronica Berglyd Olsen
1b871fc645 Update US English, Norwegian and Japanese 2025-11-29 15:02:49 +01:00
Veronica Berglyd Olsen
b66f00846d Update changelog and translation files 2025-11-29 13:52:20 +01:00
Veronica Berglyd Olsen
cf795c8f26 Merge branch 'main' into release_2.8rc1 2025-11-29 13:49:50 +01:00
Veronica Berglyd Olsen
d894375d35 Improve example project creation (#2592) 2025-11-29 13:49:10 +01:00
Veronica Berglyd Olsen
d05ed6fe3d Improve test coverage 2025-11-29 13:45:12 +01:00
Veronica Berglyd Olsen
471f841218 Handle cases where the user cancels the example project creation (#2590) 2025-11-29 13:45:00 +01:00
Veronica Berglyd Olsen
72880efafb Fix typo in GUI label 2025-11-28 16:54:32 +01:00
Veronica Berglyd Olsen
9ecac4679d Update translation file 2025-11-28 09:26:50 +01:00
Veronica Berglyd Olsen
896269228e Bump version and update changelog 2025-11-28 09:24:44 +01:00
Veronica Berglyd Olsen
c0a67341f8 Refactor Vim mode (#2588) 2025-11-27 19:46:57 +01:00
Veronica Berglyd Olsen
5efca5e542 Rephrase text in credits 2025-11-27 19:43:47 +01:00
Veronica Berglyd Olsen
0f4370657a Reshuffle the escape key processing again 2025-11-27 19:41:21 +01:00
Veronica Berglyd Olsen
e492643cc7 Simplify the Vim mode checker function 2025-11-27 15:20:18 +01:00
Veronica Berglyd Olsen
c49cfdcece Make sure global escape still works in Vim mode 2025-11-27 15:17:32 +01:00
Veronica Berglyd Olsen
2cea001340 Update credit for Vim mode 2025-11-27 15:02:19 +01:00
Veronica Berglyd Olsen
e7e80a9c3b Update credits 2025-11-26 13:26:56 +01:00
Veronica Berglyd Olsen
e0081130af Add some more detail to the Vim mode docs 2025-11-26 13:19:29 +01:00
Veronica Berglyd Olsen
5ff9911cc0 Re-format markdown to rst 2025-11-26 13:11:46 +01:00
Veronica Berglyd Olsen
bde1de5630 Rename vim mode docs to rst 2025-11-26 12:50:06 +01:00
Veronica Berglyd Olsen
eb3e3e5094 Move Vim mode setting to its own section and add confirmation box 2025-11-26 12:17:13 +01:00
Veronica Berglyd Olsen
1033a3b3b3 Update GUI questions 2025-11-26 12:16:37 +01:00
Veronica Berglyd Olsen
498116b66e Update tests 2025-11-26 12:02:41 +01:00
Veronica Berglyd Olsen
5f68db7ab7 Change how multi-line error messages are handled 2025-11-26 11:57:22 +01:00
Veronica Berglyd Olsen
a487d6ac02 Add Vim mode setting to Preferences and fix editor reinit 2025-11-14 19:40:10 +01:00
Veronica Berglyd Olsen
2f92da9753 Move processing of Vim commands to keyPressEvent handler 2025-11-14 19:19:14 +01:00
Veronica Berglyd Olsen
e4d08cc117 Merge branch 'main' into refactor_vim_mode 2025-11-14 19:02:24 +01:00
Veronica Berglyd Olsen
746ebb7974 Add Vim mode (#2499) 2025-11-14 18:53:55 +01:00
Veronica Berglyd Olsen
2d0cf16029 Merge branch 'main' into vim-mode 2025-11-13 19:27:58 +01:00
idealemu
c3b15d7a8b Merge branch 'vim-mode' of github.com:idealemu/novelWriter into vim-mode 2025-11-13 18:40:16 +01:00
idealemu
9754a9e2e5 Fixed coverage for de command and added docs 2025-11-13 18:39:55 +01:00
Veronica Berglyd Olsen
466ade8d72 Fix inserting line break when auto-padding is enabled (#2587) 2025-11-13 17:21:39 +01:00
Veronica Berglyd Olsen
ea9b4a9952 Add coverage of bug #2586 2025-11-13 17:07:12 +01:00
Veronica Berglyd Olsen
12cee5f791 Make sure we don't insert padding if there are no characters (#2586) 2025-11-13 17:06:18 +01:00
Veronica Berglyd Olsen
8c2ede040f Fix linting errors 2025-11-09 22:14:30 +01:00
Veronica Berglyd Olsen
4864aa6c8e Merge branch 'main' into pr/idealemu/2499 2025-11-09 22:11:44 +01:00
idealemu
f448881423 Added d$ motion, test coverage, and docs 2025-11-09 15:47:22 +01:00
idealemu
5dc0e3889e Added de and db commands and tests 2025-11-09 15:09:42 +01:00
Veronica Berglyd Olsen
ea7101d92b Fix dialog closing not keeping settings (#2585) 2025-11-08 20:36:20 +01:00
Veronica Berglyd Olsen
5e28f6f70f Fix broken test 2025-11-08 20:32:20 +01:00
Veronica Berglyd Olsen
b0f6f340d6 Update how writing stats dialog is closed 2025-11-08 20:27:06 +01:00
Veronica Berglyd Olsen
fd8f300518 Fix the reject overload in NDialog class 2025-11-08 20:26:49 +01:00
Veronica Berglyd Olsen
16653615f2 Customise the font select dialog (#2584) 2025-11-08 17:25:42 +01:00
Veronica Berglyd Olsen
2b5c53640d Use a safer way to replace the font dialog buttons 2025-11-08 17:21:48 +01:00
Veronica Berglyd Olsen
c0f85022cf Rename some variables in tests 2025-11-08 16:56:41 +01:00
Veronica Berglyd Olsen
7adbb9c559 Update module docstring 2025-11-08 16:56:06 +01:00
Veronica Berglyd Olsen
d9d269d601 Update function return type 2025-11-08 16:46:13 +01:00
Veronica Berglyd Olsen
06101cc31e Add test coverage of custom font dialog 2025-11-08 16:42:05 +01:00
Veronica Berglyd Olsen
ffc3953f91 Use geometry for window sizes in config 2025-11-08 16:31:58 +01:00
Veronica Berglyd Olsen
af57b9af20 Update tests 2025-11-08 16:28:33 +01:00
Veronica Berglyd Olsen
48e8772813 Add a customised font dialog 2025-11-08 16:28:21 +01:00
idealemu
bae385ccb0 Temporary docs for vim-mode in markdown 2025-11-08 12:30:36 +01:00
Veronica Berglyd Olsen
1d28fa52f9 Increase spacing on push buttons (#2582) 2025-11-05 20:04:07 +01:00
Veronica Berglyd Olsen
69ddd35cad Add more space between icon and text on push buttons 2025-11-05 19:59:15 +01:00
Veronica Berglyd Olsen
61cbbc1b55 Fix centre on screen/app issues (#2581) 2025-11-03 18:32:49 +01:00
Veronica Berglyd Olsen
1d4b57b5c6 Fix a couple of issues with PR #2580 2025-11-03 18:28:27 +01:00
Veronica Berglyd Olsen
30f62a80f3 Centre windows at startup (#2580) 2025-11-03 18:08:47 +01:00
Veronica Berglyd Olsen
a11dd760db Fix tests 2025-11-03 17:55:59 +01:00
Veronica Berglyd Olsen
8d896e8be8 Also centre Welcome dialog and message boxes 2025-11-03 17:55:50 +01:00
Veronica Berglyd Olsen
be9270a0f7 Centre app window on the screen if it is auto-resized or always if a config option is set 2025-11-03 17:54:54 +01:00
Veronica Berglyd Olsen
b7ceb1776c Block formatting on meta data and headings (#2575) 2025-11-02 18:07:39 +01:00
Veronica Berglyd Olsen
eb0d29c780 Improve error handling and test coverage 2025-11-02 17:36:27 +01:00
Veronica Berglyd Olsen
006c0c88ce Flash editor header red when the user tries to format text that cannot be formatted 2025-11-02 17:25:13 +01:00
Veronica Berglyd Olsen
00439369a8 Block formatting on keyword and heading lines 2025-11-02 16:49:38 +01:00
Veronica Berglyd Olsen
d2944d5d10 Reduce samples (#2574) 2025-11-02 16:10:50 +01:00
Veronica Berglyd Olsen
f069b4e85e Reduce samples to just Alice in Wonderland and fix some formatting 2025-11-02 16:04:29 +01:00
Veronica Berglyd Olsen
e6d2b0c9b3 Improve sample project creation and usage (#2572) 2025-11-01 22:17:18 +01:00
Veronica Berglyd Olsen
2a5da2c155 Add Alice in Wonderland example text 2025-11-01 22:09:02 +01:00
Veronica Berglyd Olsen
f9e297922d Update tests 2025-11-01 22:08:50 +01:00
Veronica Berglyd Olsen
cffa7c6dd8 Fix some syntax highlighting issues 2025-11-01 22:08:33 +01:00
Veronica Berglyd Olsen
cd7c2baf8e Remove the special comments and revert back to previous behaviour 2025-11-01 20:53:10 +01:00
Veronica Berglyd Olsen
f960cd9589 Fix pyright issue and tests 2025-11-01 17:17:26 +01:00
Veronica Berglyd Olsen
939c58f441 Make a few improvements 2025-11-01 17:06:43 +01:00
Veronica Berglyd Olsen
1775614fe2 Extend sample project 2025-11-01 16:58:38 +01:00
Veronica Berglyd Olsen
8c24b80950 Improve reset project behaviour when copying a project 2025-11-01 16:58:22 +01:00
Veronica Berglyd Olsen
1a62ad2608 Fix typo in run_tests script 2025-11-01 15:26:00 +01:00
Veronica Berglyd Olsen
a8138ca579 Populate empty project list by an entry that creates a sample project 2025-11-01 15:24:07 +01:00
Veronica Berglyd Olsen
863d888717 Upgrade Font Awesome icons to version 7.1 2025-11-01 15:13:26 +01:00
Veronica Berglyd Olsen
0bf72def78 Rename assets build workflow (#2568) 2025-10-29 21:30:56 +01:00
Veronica Berglyd Olsen
b4e4cd9e9a Rename assets build workflow 2025-10-29 18:50:41 +01:00
Veronica Berglyd Olsen
df7fd37214 Split up build workflows (#2567) 2025-10-29 18:47:05 +01:00
Veronica Berglyd Olsen
cb36ee03eb Split up build workflows 2025-10-29 17:45:07 +01:00
Veronica Berglyd Olsen
396b874a42 Release 2.8b1 (#2565) 2025-10-29 16:52:37 +01:00
Veronica Berglyd Olsen
16c9ce995f Add missing entries in changelog 2025-10-29 16:24:34 +01:00
Veronica Berglyd Olsen
35a1fdddf1 Fix typos and improve clarity in CHANGELOG.md 2025-10-29 07:57:21 +01:00
Veronica Berglyd Olsen
703c9ade71 Minor fixes to the changelog 2025-10-29 00:02:56 +01:00
Veronica Berglyd Olsen
81ac5a4231 Update changelog 2025-10-28 23:45:52 +01:00
Veronica Berglyd Olsen
9982cc042f Bump version to 2.8 Beta 1 2025-10-28 22:10:23 +01:00
Veronica Berglyd Olsen
09f1793d63 Update tips & tricks in docs (#2564) 2025-10-28 22:09:11 +01:00
Veronica Berglyd Olsen
d8961c4093 Add a tip about line height in the docs (#2559) 2025-10-28 22:02:54 +01:00
Veronica Berglyd Olsen
d830315cfc Update button and icon scales (#2563) 2025-10-28 21:50:59 +01:00
Veronica Berglyd Olsen
ac7e31bdd9 Fix tests 2025-10-28 21:46:33 +01:00
Veronica Berglyd Olsen
72e274a4c3 Adjust the size of alert icon and the colours of the status bar LEDs 2025-10-28 21:18:36 +01:00
Veronica Berglyd Olsen
1fdabe3a26 Fix size of various icons and buttons (#2561) 2025-10-28 21:12:49 +01:00
Veronica Berglyd Olsen
df2840bf9f Dynamically update spell check dictionaries in the menu (#2562) 2025-10-28 20:15:02 +01:00
Veronica Berglyd Olsen
2b00831465 Fix linting error and move spell check update slot to the correct location 2025-10-28 20:09:38 +01:00
Reproog
ad34d45d0b Update novelwriter/guimain.py
Co-authored-by: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com>
2025-10-28 16:14:30 +01:00
Reproog
df77fb67c6 Update novelwriter/gui/mainmenu.py
added above def updateSpellCheckLanguages(self) -> None:
    @pyqtSlot()

Co-authored-by: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com>
2025-10-28 16:14:17 +01:00
Christian Zeitner
e3168163c2 Put loading functions in a separate Method and called it, when Add Dictionaries Window is closed. 2025-10-28 13:50:20 +01:00
Veronica Berglyd Olsen
2f7b04534d Fix button colour bug (#2557) 2025-10-27 22:57:42 +01:00
Veronica Berglyd Olsen
9628712810 Update documentation 2025-10-27 22:53:37 +01:00
Veronica Berglyd Olsen
e7ee41fe4e Fix editor toolbar button colours 2025-10-27 22:48:01 +01:00
Veronica Berglyd Olsen
8dc21fbb66 Issue a warning if a requested colour does not exist, and allow reset of icon colours 2025-10-27 22:47:34 +01:00
Veronica Berglyd Olsen
81a95aba28 Fix dimmed novel selector (#2556) 2025-10-27 22:17:11 +01:00
Veronica Berglyd Olsen
0544599303 Fix brush for disabled novel selector (#2482) 2025-10-27 22:12:04 +01:00
Veronica Berglyd Olsen
7381a4433c Merge branch 'main' into vim-mode 2025-10-27 21:40:00 +01:00
Veronica Berglyd Olsen
b60cbdf5f1 Fix missing workflow permissions (#2555) 2025-10-27 21:38:29 +01:00
Veronica Berglyd Olsen
4e61c6c4dd Merge branch 'main' into update_workflows 2025-10-27 21:33:25 +01:00
Veronica Berglyd Olsen
d2582b0118 Add permissions to dependency assets job 2025-10-27 21:30:57 +01:00
Veronica Berglyd Olsen
dc89935b7f Add permissions to workflows (#2554) 2025-10-27 21:28:08 +01:00
Veronica Berglyd Olsen
23b2ca9af4 Add read permission to all build jobs 2025-10-27 21:22:32 +01:00
Veronica Berglyd Olsen
7bbd2042ae Add permissions to test and linting jobs 2025-10-27 21:18:26 +01:00
Veronica Berglyd Olsen
2d191c87a0 Update buttons and manuscript build (#2553) 2025-10-27 21:12:59 +01:00
Veronica Berglyd Olsen
d9d8e54ed3 Add am auto-update button to manuscript build settings 2025-10-27 21:02:50 +01:00
Veronica Berglyd Olsen
d3b0a48779 Make manuscript tool copy button an action button 2025-10-27 21:01:21 +01:00
Veronica Berglyd Olsen
a8a6d199d1 Always use scrollable combo box and manually update the style sheet in build settings instead 2025-10-27 20:01:25 +01:00
Veronica Berglyd Olsen
cd8cc81b5f Themes and fixes (#2506) 2025-10-27 19:46:55 +01:00
HeyMyian
27771f3565 Adding [Icon] block where missing 2025-10-27 19:42:29 +01:00
HeyMyian
bae59c07db Jewel Case whitespace was missing 2025-10-27 18:51:25 +01:00
HeyMyian
cc72d1018b New theme pair: Jewel Case 2025-10-27 18:40:03 +01:00
HeyMyian
7996108e62 Color adjustments 2025-10-27 18:37:14 +01:00
Myian
53522ca5b4 Merge branch 'main' into theme_fixes 2025-10-27 16:51:54 +01:00
Veronica Berglyd Olsen
55df8a5adf Merge branch 'main' into pr/idealemu/2499 2025-10-26 21:02:53 +01:00
Veronica Berglyd Olsen
b31eb524c3 Update readme (#2550) 2025-10-26 20:59:31 +01:00
Veronica Berglyd Olsen
31437f3d3e Tune the readme a little 2025-10-26 20:25:03 +01:00
Veronica Berglyd Olsen
34ecfba230 Remove the source section of the readme as it's also in teh contributing guide 2025-10-26 20:18:36 +01:00
Veronica Berglyd Olsen
75859ec106 Make icon colours themable (#2549) 2025-10-26 14:27:59 +01:00
Veronica Berglyd Olsen
d6911ed39b Fix tests 2025-10-26 14:24:00 +01:00
Veronica Berglyd Olsen
073838af6e Update theme files 2025-10-26 14:16:20 +01:00
Veronica Berglyd Olsen
4a94ab86c9 Add sidebar icon colour setting and rename format icon settings 2025-10-26 14:16:05 +01:00
Veronica Berglyd Olsen
f74b151c53 Add default icon colours to all themes 2025-10-26 14:02:55 +01:00
Veronica Berglyd Olsen
6db67e909d Add icon colour settings to themes and enforce them on all GUI icons 2025-10-26 14:02:18 +01:00
Veronica Berglyd Olsen
2c1c46b98d Add syntax colour for whitespace (#2548) 2025-10-26 12:52:08 +01:00
Veronica Berglyd Olsen
ba01a2a219 Update documentation 2025-10-26 12:46:01 +01:00
Veronica Berglyd Olsen
0a5261a68c Update all themes 2025-10-26 12:44:23 +01:00
Veronica Berglyd Olsen
61d591e86e Add theme field for white space 2025-10-26 12:38:32 +01:00
Veronica Berglyd Olsen
e032ef5aa5 Minor fixes (#2546) 2025-10-26 12:35:09 +01:00
Veronica Berglyd Olsen
c4e9774ffa Update readmes 2025-10-26 12:06:56 +01:00
Veronica Berglyd Olsen
5a4930f860 Fix role for close buttons 2025-10-26 12:06:45 +01:00
Veronica Berglyd Olsen
66f445c341 Manuscript theme update fix (#2545) 2025-10-26 03:20:40 +01:00
Veronica Berglyd Olsen
f2c2833985 Update test coverage 2025-10-26 03:16:22 +01:00
Veronica Berglyd Olsen
a703e0bb7d Update tests and add more debug output 2025-10-26 02:40:50 +01:00
Veronica Berglyd Olsen
e0bd7d82fb Flip the boolean for scrollable combo boxes 2025-10-26 02:07:55 +01:00
Veronica Berglyd Olsen
8b02c95f51 Add theme update handling to manuscript build settings 2025-10-26 02:04:03 +01:00
Veronica Berglyd Olsen
e492c6575d Add theme update handling to manuscript build tool 2025-10-26 02:00:04 +01:00
Veronica Berglyd Olsen
9339c9ff62 Standardise push buttons (#2544) 2025-10-26 00:16:33 +02:00
Veronica Berglyd Olsen
a02254f5d5 Make minor improvements to the code and fix test on MacOS 2025-10-26 00:12:37 +02:00
Veronica Berglyd Olsen
af36a3b1bf Remove extra qtbase translations for buttons 2025-10-25 23:55:29 +02:00
Veronica Berglyd Olsen
5f34e924d1 Fix broken tests 2025-10-25 23:53:18 +02:00
Veronica Berglyd Olsen
ce939a4053 Clean up button types 2025-10-25 23:52:56 +02:00
Veronica Berglyd Olsen
c9c2b35455 Update dialog buttons on all dialogs and tools 2025-10-25 23:38:19 +02:00
Veronica Berglyd Olsen
1b0c339845 Add more icons 2025-10-25 23:31:47 +02:00
Veronica Berglyd Olsen
2d67cb7dcc Update tests and test coverage 2025-10-25 22:37:19 +02:00
Veronica Berglyd Olsen
1938969a63 Update icon themes 2025-10-25 21:42:39 +02:00
Veronica Berglyd Olsen
bb1d90213b Update standard dialog boxes 2025-10-25 21:38:30 +02:00
Veronica Berglyd Olsen
096686457d Add a standard button generator 2025-10-25 20:47:32 +02:00
Veronica Berglyd Olsen
ba5b2af394 Allow repeated named comments (#2543) 2025-10-22 23:19:11 +02:00
Veronica Berglyd Olsen
f23ce71620 Add stepwise and rerun commands to test runner script 2025-10-22 23:12:27 +02:00
Veronica Berglyd Olsen
10f0f6440b Extend tests 2025-10-22 23:12:11 +02:00
Veronica Berglyd Olsen
20e1126a62 Allow named comments to be repeated (#2483) 2025-10-22 23:11:56 +02:00
Veronica Berglyd Olsen
31b512e3c9 Fix typos in docs (#2542) 2025-10-22 22:47:13 +02:00
Veronica Berglyd Olsen
979d65e444 Merge branch 'main' into fix_docs 2025-10-22 22:43:06 +02:00
Veronica Berglyd Olsen
59035ae96b Clean up pkgutils.py (#2541) 2025-10-22 22:39:05 +02:00
Veronica Berglyd Olsen
ede6a94665 Drop the pip command from pkgutils.py 2025-10-22 22:32:45 +02:00
Veronica Berglyd Olsen
3dd86a77e2 Switch to UV tooling (#2540) 2025-10-22 22:20:15 +02:00
Veronica Berglyd Olsen
3ceaadd0c0 Fix outdated docstring 2025-10-22 22:07:50 +02:00
Veronica Berglyd Olsen
9640d95cef Fix docs a little 2025-10-22 22:02:40 +02:00
Veronica Berglyd Olsen
b3c18001e2 Add build for Ubuntu 26.04 2025-10-22 21:57:20 +02:00
Veronica Berglyd Olsen
df2766d80e Update linting 2025-10-22 21:26:38 +02:00
Veronica Berglyd Olsen
e676bdc322 Drop support for Python 3.10 2025-10-22 21:23:57 +02:00
Veronica Berglyd Olsen
2d7a42d918 Remove requirements files 2025-10-22 21:17:18 +02:00
Veronica Berglyd Olsen
06cb128876 Remove dependencies on requirements files and generate when needed 2025-10-22 21:11:20 +02:00
Veronica Berglyd Olsen
0b79bcd4b4 Fix assets build job 2025-10-22 19:35:35 +02:00
Veronica Berglyd Olsen
687bcc2779 Update MacOS build 2025-10-22 19:30:36 +02:00
Veronica Berglyd Olsen
41c58a52e3 Update Debian build 2025-10-19 00:19:47 +02:00
Veronica Berglyd Olsen
e21d944461 Fix mac workflow and update linting job 2025-10-18 23:23:46 +02:00
Veronica Berglyd Olsen
359d5f36b5 Remove debug settings from workflows 2025-10-18 23:17:53 +02:00
Veronica Berglyd Olsen
e66f19914e Fix case conflict on MacOS and Windows 2025-10-18 23:14:33 +02:00
Veronica Berglyd Olsen
a6e29f0ded Add more debug output 2025-10-18 19:11:01 +02:00
Veronica Berglyd Olsen
40363068e3 Update Windows workflow and try to fix MacOS 2025-10-18 18:51:55 +02:00
Veronica Berglyd Olsen
af86448385 Add setuptools to MacOS workflow 2025-10-18 18:30:58 +02:00
Veronica Berglyd Olsen
177d39c2a3 Move checkout source further up 2025-10-18 18:25:01 +02:00
Veronica Berglyd Olsen
7a9464c592 Update MacOS and Linux workflows 2025-10-18 18:20:13 +02:00
Veronica Berglyd Olsen
4aef01ef32 Make sure only novelwriter source files are included in coverage 2025-10-18 18:08:40 +02:00
Veronica Berglyd Olsen
b4c9d7c76c Fix coverage reporting 2025-10-18 17:58:59 +02:00
Veronica Berglyd Olsen
08d37dd9e8 Fix bug in Linux test workflow 2025-10-18 17:53:01 +02:00
Veronica Berglyd Olsen
10193520a4 Update Linux test workflows 2025-10-18 17:46:47 +02:00
Veronica Berglyd Olsen
c1968ba4e3 Add dependency groups to pyproject and drop pytest-cov dependency 2025-10-18 17:41:25 +02:00
Veronica Berglyd Olsen
47ecf2e886 Fix typos 2025-10-15 09:03:51 +02:00
Veronica Berglyd Olsen
8642086d34 Update CI/CD (#2538) 2025-10-13 19:37:56 +02:00
Veronica Berglyd Olsen
b04dadaa45 Add Python 3.14 to classifiers 2025-10-13 19:33:26 +02:00
Veronica Berglyd Olsen
a5513cc504 Add Python 3.14 and update actions 2025-10-13 19:23:56 +02:00
Veronica Berglyd Olsen
fc622c76a4 Stop showing index rebuild dialog on upgrades (#2537) 2025-10-05 17:52:40 +02:00
Veronica Berglyd Olsen
050e3b09ad Fix test coverage 2025-10-05 17:39:48 +02:00
Veronica Berglyd Olsen
850976335c Don't show index rebuild dialog when just upgrading index 2025-10-05 17:18:42 +02:00
Veronica Berglyd Olsen
0344701f1b Add helper function to combine JSON strings as larger JSON file 2025-10-05 17:13:40 +02:00
Veronica Berglyd Olsen
04198f3ede Remove quiet flag from index rebuild 2025-10-05 17:13:08 +02:00
Veronica Berglyd Olsen
1b671abc05 Add colour to vim mode label 2025-10-04 20:04:35 +02:00
Veronica Berglyd Olsen
0b973d5135 Fix i18n of vim mode 2025-10-04 19:26:07 +02:00
Veronica Berglyd Olsen
b2324a8689 Add the last selection type enum value 2025-10-04 19:05:20 +02:00
Veronica Berglyd Olsen
8be0c3c9b0 Merge branch 'main' into pr/idealemu/2499 2025-10-04 19:04:16 +02:00
Veronica Berglyd Olsen
2bd104705a Minor refactoring and linting (#2536) 2025-10-04 18:53:04 +02:00
Veronica Berglyd Olsen
3d55b49ee6 Update MacOS tests to run on latest 2025-10-04 18:48:51 +02:00
Veronica Berglyd Olsen
42352e9500 Add some more type constants 2025-10-04 18:42:20 +02:00
Veronica Berglyd Olsen
100aad1256 Update linting due to new Ruff rules 2025-10-04 18:36:44 +02:00
Veronica Berglyd Olsen
703d37c3e2 Fix a few more cursor enums and remove unused variable 2025-10-04 18:29:43 +02:00
Veronica Berglyd Olsen
160d15b9b7 Refactor vim mode handling 2025-10-04 18:23:24 +02:00
Veronica Berglyd Olsen
b3a8fc92d0 Update comments in tests 2025-10-04 17:48:57 +02:00
Veronica Berglyd Olsen
fbee69a418 Clean up some minor details 2025-10-04 17:34:02 +02:00
Veronica Berglyd Olsen
31d139aecf Fix new linting issues 2025-10-04 17:22:51 +02:00
Veronica Berglyd Olsen
8be040a9b4 Move vim mode functions 2025-10-04 17:16:02 +02:00
Veronica Berglyd Olsen
5cb47ac5b3 Add more cursor enum constants 2025-10-04 17:14:38 +02:00
Veronica Berglyd Olsen
b7c54779ac Add the vimMode setting to the config file 2025-10-04 16:59:51 +02:00
Veronica Berglyd Olsen
49d23c06a4 Reformat the Vim mode code 2025-10-04 16:57:39 +02:00
idealemu
d0efe8d8d9 Refactor handleVim 2025-09-16 17:58:55 +02:00
idealemu
84c6faa419 Refactor vim tests 2025-09-16 17:39:57 +02:00
idealemu
b23ffd3c19 Refactor vim tests 2025-09-16 17:28:50 +02:00
idealemu
eeefa85e69 Add b and e commands and their tests 2025-09-16 16:58:54 +02:00
Veronica Berglyd Olsen
cbf055bebc Fix imports 2025-09-15 19:44:22 +02:00
idealemu
eee0cc5394 Fix syntax 2025-09-15 19:31:43 +02:00
idealemu
a858c8b43c Fix, new commands, and bump test coverage 2025-09-15 19:31:16 +02:00
idealemu
b7497fd669 Merge branch 'main' into vim-mode 2025-09-15 17:47:02 +02:00
Veronica Berglyd Olsen
98cdd4eedf Merge 2.7.5 (#2524) 2025-09-14 19:48:18 +02:00
Veronica Berglyd Olsen
4d398f170d Add back attribute lost when merging 2025-09-14 19:42:36 +02:00
Veronica Berglyd Olsen
f4c56a1948 Merge release 2.7.5 2025-09-14 19:37:15 +02:00
Veronica Berglyd Olsen
e72bfe1114 Post release fixes (#2523) 2025-09-14 19:28:31 +02:00
Veronica Berglyd Olsen
f019a3cd0c Move the Apache license file back to setup 2025-09-14 19:24:32 +02:00
Veronica Berglyd Olsen
a37482aaad Pin windows build to 2022 image 2025-09-14 18:54:42 +02:00
Veronica Berglyd Olsen
bb01d0e5ae Fix debian build 2025-09-14 18:37:23 +02:00
Veronica Berglyd Olsen
b61aec9212 Release 2.7.5 (#2521) 2025-09-14 17:43:05 +02:00
Veronica Berglyd Olsen
c1d1330350 Bump version and update changelog 2025-09-14 17:37:58 +02:00
HeyMyian
25a1ecc99b Catppuccin tooltips 2025-09-13 23:25:43 +02:00
Veronica Berglyd Olsen
6ed29cfde9 Adjust windows for IME conversion suggestions to not cover text (#2518) 2025-09-13 18:47:29 +02:00
Veronica Berglyd Olsen
da6b9b0980 Add more comments 2025-09-13 15:48:33 +02:00
Veronica Berglyd Olsen
410d8bfe13 Add test coverage 2025-09-13 15:27:38 +02:00
Veronica Berglyd Olsen
42f0d71ecf Clean up types 2025-09-12 22:01:17 +02:00
Amber Flina
8a01ffa832 Other two linters 2025-09-11 16:32:10 -03:00
Amber Flina
bad03c45a0 Linting 2025-09-11 16:26:42 -03:00
Amber Flina
bb876b55fc Handle IMEs 2025-09-11 16:26:42 -03:00
HeyMyian
a1da73adaa New theme pair: Rosé Pine 2025-09-04 21:21:34 +02:00
HeyMyian
37516dda0e Rename Catppuccin files and change some colours 2025-09-04 21:20:26 +02:00
HeyMyian
edd31bee8e Merge branch 'theme_fixes' of https://github.com/HeyMyian/novelWriter into theme_fixes 2025-09-02 21:06:19 +02:00
HeyMyian
5806b9f276 Credits 2025-09-02 21:06:11 +02:00
Veronica Berglyd Olsen
96841bd7b1 Merge branch 'main' into theme_fixes 2025-09-02 21:05:10 +02:00
HeyMyian
67bd25145d Merge branch 'theme_fixes' of https://github.com/HeyMyian/novelWriter into theme_fixes 2025-09-02 21:02:40 +02:00
HeyMyian
635145ea70 Whitespace... 2025-09-02 20:59:52 +02:00
HeyMyian
85c079db70 Change Floral Midnight to be distinct from Catppuccin 2025-09-02 20:58:59 +02:00
HeyMyian
5944984efb Add two Catppuccin flavors 2025-09-02 20:58:28 +02:00
idealemu
4c319bd068 Remove redundant check 2025-08-31 15:58:57 +02:00
idealemu
db80a2e0f6 mend 2025-08-31 15:48:34 +02:00
idealemu
c2fbb5cf22 Test coverage of motions 2025-08-31 15:47:41 +02:00
Veronica Berglyd Olsen
3be8eb4f87 Fix auto complete crash (#2511) 2025-08-31 15:35:57 +02:00
Veronica Berglyd Olsen
08d2a5fa95 Fix linting errors from updated Ruff version 2025-08-31 15:27:55 +02:00
Veronica Berglyd Olsen
d69d2234c4 Rename completer signal 2025-08-31 15:23:33 +02:00
Veronica Berglyd Olsen
33b3a71ecd Make a minor performance improvement in the editor completer 2025-08-31 15:11:51 +02:00
Veronica Berglyd Olsen
b093446020 Fix Qt side crash when forwarding editor auto-complete keypresses (#2510) 2025-08-31 15:08:42 +02:00
idealemu
4db1cdd8e4 VLINE test and fix 2025-08-30 17:16:47 +02:00
idealemu
36a5710863 More test coverage for vim normal mode 2025-08-30 12:09:37 +02:00
idealemu
bd51ccd26a Visual mode tests and correct yy in visual 2025-08-30 12:04:49 +02:00
idealemu
d60a109ecb Move config check outside of handleVim 2025-08-30 10:04:44 +02:00
idealemu
a293da1360 Removed config caching 2025-08-28 09:36:11 +02:00
idealemu
745cfeb9e6 Update docstrings for new ruff rules 2025-08-28 09:26:19 +02:00
Veronica Berglyd Olsen
a7a08fe28d Merge branch 'main' into vim-mode 2025-08-27 21:38:50 +02:00
Veronica Berglyd Olsen
aa83c5c1bc Add more Ruff rules (#2509) 2025-08-27 21:36:46 +02:00
Veronica Berglyd Olsen
5dcc989535 Fix test coverage 2025-08-27 21:30:17 +02:00
Veronica Berglyd Olsen
2afbe95a9c Fix typo 2025-08-27 21:22:57 +02:00
Veronica Berglyd Olsen
5bdbd7c195 Update linting for tests 2025-08-27 21:04:32 +02:00
Veronica Berglyd Olsen
44d117c91d Update linting for utils 2025-08-27 21:01:11 +02:00
Veronica Berglyd Olsen
c174f8f931 Update linting for main code 2025-08-27 21:00:09 +02:00
Veronica Berglyd Olsen
84ff1f4640 Update Ruff settings in project config 2025-08-27 20:47:40 +02:00
Veronica Berglyd Olsen
26e7e70c3f Merge branch 'main' into vim-mode 2025-08-27 18:42:59 +02:00
idealemu
b2ad021230 Made vim tests keystroke delay robust 2025-08-27 11:27:08 +02:00
idealemu
151f047cff Vim mode dd, x, yy, p, P test 2025-08-27 11:18:11 +02:00
idealemu
04bb8f1d1a Vim mode insert O and o tests 2025-08-27 11:02:09 +02:00
idealemu
38c0d33767 Vim mode insert mode tests 2025-08-27 10:59:30 +02:00
idealemu
493947c830 Basic vim mode enabled test 2025-08-27 10:49:34 +02:00
idealemu
beb1ade0b5 Reorder config 2025-08-27 09:37:40 +02:00
idealemu
3885500e7c Vim mode only set when enabled 2025-08-26 18:12:15 +02:00
idealemu
9e132d5ca8 Visual and Vline modes and a few additional commands 2025-08-26 17:57:17 +02:00
idealemu
de21d4755b Added vim status mode bar in the GUI footer 2025-08-25 16:43:16 +02:00
idealemu
d50e164e68 Vim mode internal clipboard and more vim actions 2025-08-24 16:13:52 +02:00
Myian
8380a2fa53 Merge branch 'main' into theme_fixes 2025-08-24 16:10:51 +02:00
Veronica Berglyd Olsen
23a0df61cd Fix font matching style bug (#2503) 2025-08-24 15:51:32 +02:00
Veronica Berglyd Olsen
b484dd6f71 Test the fontMatcher style name reset 2025-08-24 15:47:28 +02:00
Veronica Berglyd Olsen
c986b311fd Merge branch 'main' into font_matching 2025-08-24 15:42:17 +02:00
Veronica Berglyd Olsen
d1c3584651 Drop highlighting trailing spaces (#2505) 2025-08-24 15:42:08 +02:00
Veronica Berglyd Olsen
a9069389db Set the show multiple spaces setting to off by default 2025-08-24 15:31:50 +02:00
Veronica Berglyd Olsen
2bf8ca8ab6 Change the wording for the multiple spaces setting in Preferences 2025-08-24 15:24:05 +02:00
Veronica Berglyd Olsen
b095b0ae12 Drop syntax highlighting for redundant trailing spaces 2025-08-24 15:22:11 +02:00
Myian
d5a6a05fc4 Merge branch 'vkbo:main' into theme_fixes 2025-08-23 23:37:51 +02:00
HeyMyian
c84f6b63ff Spelling of GitHub, Inc. 2025-08-23 22:54:15 +02:00
HeyMyian
92062d4829 Adjust Paragon theme colours 2025-08-23 22:47:59 +02:00
HeyMyian
f742e8ac11 Fix: missing letter in credits 2025-08-23 22:46:02 +02:00
Veronica Berglyd Olsen
65d2a3b313 Reset font style name after loading fonts 2025-08-21 22:41:58 +02:00
Veronica Berglyd Olsen
3c7510d74f Update package files (#2500) 2025-08-18 20:47:27 +02:00
Veronica Berglyd Olsen
be8ec6b4ae Update package files 2025-08-18 20:42:36 +02:00
idealemu
e06cd5eba6 More vim commands 2025-08-16 20:37:43 +02:00
idealemu
13775fcb68 Refactor for camelCase 2025-08-16 12:02:21 +02:00
Veronica Berglyd Olsen
5641fbd83c Fix tests on HighDPI screens (#2496) 2025-08-16 10:46:31 +02:00
Veronica Berglyd Olsen
3bdb108fdb Merge branch 'main' into test_gui_scale 2025-08-16 10:40:44 +02:00
Veronica Berglyd Olsen
19aadd93a0 Add comment to test 2025-08-16 10:38:31 +02:00
Veronica Berglyd Olsen
ce9be475b5 Add scale factor flag to run_tests script 2025-08-16 10:34:50 +02:00
idealemu
b40cd351c3 Disable vim mode by default 2025-08-16 10:11:29 +02:00
idealemu
3b6ad7b851 HJKL, DD motions added 2025-08-16 09:51:39 +02:00
idealemu
d8ac23e398 Moving vim state into doceditor, centralizing vim to doceditor 2025-08-14 17:19:05 +02:00
Veronica Berglyd Olsen
a627eab6f1 Add new themes (#2495) 2025-08-14 10:13:41 +02:00
HeyMyian
88ddb97d43 Update credits 2025-08-14 09:26:36 +02:00
HeyMyian
071654fa06 Fix: missing headertext 2025-08-13 18:39:35 +02:00
HeyMyian
ea602b5f9c Add new themes 2025-08-13 18:18:16 +02:00
Veronica Berglyd Olsen
b39b990eda Update themes (#2494) 2025-08-13 18:00:05 +02:00
HeyMyian
5d7e005f7d Update themes 2025-08-13 11:06:18 +02:00
idealemu
c2627654b9 Initial vim mode prototype proof of concept 2025-08-12 21:15:48 +02:00
Veronica Berglyd Olsen
21ce030463 Improve auto-replace quotes with markup (#2489) 2025-07-27 13:46:01 +02:00
Veronica Berglyd Olsen
c203dcbbb6 Generalise space character detection in quote auto-replace 2025-07-27 13:36:39 +02:00
Veronica Berglyd Olsen
435a72c76b Add test coverage 2025-07-27 13:19:58 +02:00
Veronica Berglyd Olsen
d4fc440725 Tweak the editor auto-replace logic to allow markup for dialogue (#2488) 2025-07-27 12:25:09 +02:00
Veronica Berglyd Olsen
e9407e0152 Update themes (#2481) 2025-07-21 13:45:19 +02:00
HeyMyian
033d515784 Fix Aura theme credits 2025-07-21 12:10:11 +02:00
HeyMyian
4b4825582f Fix Aura theme credits 2025-07-21 10:52:50 +02:00
HeyMyian
9d7e8959e8 Adjust theme colours 2025-07-21 10:47:00 +02:00
Veronica Berglyd Olsen
9aac9301b0 Add a tests run script and more requirement files (#2480) 2025-07-19 17:04:34 +02:00
Veronica Berglyd Olsen
df6cf331ac Change required setuptools to 77.0.3 2025-07-19 16:56:41 +02:00
Veronica Berglyd Olsen
3e66f47c13 Echo the command used in the run tests script 2025-07-19 16:53:05 +02:00
Veronica Berglyd Olsen
bca87429a6 Update setuptools requirements 2025-07-19 16:50:36 +02:00
Veronica Berglyd Olsen
9870fe448b Add more requirements files 2025-07-19 16:46:50 +02:00
Veronica Berglyd Olsen
379ae8ccfb Add helper script to run tests 2025-07-19 16:41:07 +02:00
Veronica Berglyd Olsen
c77b67fdf8 Expose tree and outline shortcuts in Focus Mode (#2479) 2025-07-17 21:41:20 +02:00
Veronica Berglyd Olsen
a0cbb30874 Allow switching to tree, novel or outline by keyboard shortcut from Focus Mode (#1294) 2025-07-17 21:35:32 +02:00
Veronica Berglyd Olsen
aa46be08cf Add progress bar for bulky tasks (#2478) 2025-07-17 19:51:36 +02:00
Veronica Berglyd Olsen
f7366cb2ff Fix linting errors for new rules 2025-07-17 19:47:46 +02:00
Veronica Berglyd Olsen
4bc4c1e204 Add progress bar to global search 2025-07-17 19:42:35 +02:00
Veronica Berglyd Olsen
e77b71bbbc Connect main progress bar to potential bulky operations in the project tree 2025-07-17 18:06:02 +02:00
Veronica Berglyd Olsen
1223e6da84 Fix tests and add GUI refresh 2025-07-17 17:30:07 +02:00
Veronica Berglyd Olsen
d027f218f8 Add progress bar functions in shared class and use it for index rebuild 2025-07-17 16:56:28 +02:00
Veronica Berglyd Olsen
eb659a64bb Add a progress bar over the status bar 2025-07-17 16:55:53 +02:00
Veronica Berglyd Olsen
300edc036f Use label for template title (#2477) 2025-07-17 15:47:45 +02:00
Veronica Berglyd Olsen
ee370ec8bf Fix wrong meta data in sample files 2025-07-17 15:44:06 +02:00
Veronica Berglyd Olsen
ebdd0dbdc0 Update docs 2025-07-17 15:37:42 +02:00
Veronica Berglyd Olsen
c816b24437 Update tests 2025-07-17 15:31:13 +02:00
Veronica Berglyd Olsen
20709145c8 Update template title when creating file from template 2025-07-17 15:31:03 +02:00
Veronica Berglyd Olsen
133d3c7151 Pre Release 2.8 Alpha 2 (#2476) 2025-07-16 16:41:57 +02:00
Veronica Berglyd Olsen
25a577e32e Bump version to 2.8a2 2025-07-16 16:36:04 +02:00
Veronica Berglyd Olsen
3c01584615 Update default themes (#2475) 2025-07-16 16:28:30 +02:00
Veronica Berglyd Olsen
bea80e7f71 Clean up sample project 2025-07-16 12:15:23 +02:00
Veronica Berglyd Olsen
d7a6c14fe7 Update highlighter tests 2025-07-16 12:15:13 +02:00
Veronica Berglyd Olsen
30008bafe7 Tweak default themes a little 2025-07-16 12:14:59 +02:00
Veronica Berglyd Olsen
4f5d1847e0 Update icon credits info (#2474) 2025-07-15 20:44:44 +02:00
Veronica Berglyd Olsen
e7e7d7d2c0 Update icon credits 2025-07-15 20:39:50 +02:00
Veronica Berglyd Olsen
5114f0ac24 Merge release 2.7.4 into main (#2473) 2025-07-15 19:10:26 +02:00
Veronica Berglyd Olsen
832bf158da Fix icon theme completeness test 2025-07-15 19:02:51 +02:00
Veronica Berglyd Olsen
af83cc58cb Add missing icons to material sharp icon themes 2025-07-15 18:56:54 +02:00
Veronica Berglyd Olsen
1318a3844e Merge main and 2.7.4 2025-07-15 18:53:10 +02:00
Veronica Berglyd Olsen
ae8d7ef99f Post release updates (#2472) 2025-07-15 17:48:13 +02:00
Veronica Berglyd Olsen
0503b02d17 Remove Ubuntu Oracular release 2025-07-15 17:33:32 +02:00
Veronica Berglyd Olsen
9a158d76b4 Release 2.7.4 (#2470) 2025-07-15 17:15:10 +02:00
Veronica Berglyd Olsen
2017525b77 Bump version number and update changelog 2025-07-15 17:00:07 +02:00
Veronica Berglyd Olsen
d0b09bce20 Update i18n (#2469) 2025-07-15 16:52:58 +02:00
Veronica Berglyd Olsen
cfd9b63190 Update Czech and French translations 2025-07-15 16:45:22 +02:00
Veronica Berglyd Olsen
05e865e649 Update existing translation files 2025-07-15 16:43:29 +02:00
Veronica Berglyd Olsen
f25124fd8a Clean up icon themes build (#2467) 2025-07-15 16:21:15 +02:00
Veronica Berglyd Olsen
b92157c292 Fix test 2025-07-15 16:12:29 +02:00
Veronica Berglyd Olsen
c2dcb6a075 Update ignore and build scripts 2025-07-15 16:00:45 +02:00
Veronica Berglyd Olsen
00f0c6ea3c Remove optional icon themes and add new themes 2025-07-15 16:00:20 +02:00
Veronica Berglyd Olsen
e92cf6c761 Update icon builds 2025-07-15 15:56:00 +02:00
Veronica Berglyd Olsen
d0092d5a5e Remove theme description field (#2466) 2025-07-14 19:38:01 +02:00
Veronica Berglyd Olsen
4a0ed710a3 Update credits and documentation 2025-07-14 19:33:35 +02:00
Veronica Berglyd Olsen
df89f183e0 Clean up theme files 2025-07-14 19:33:23 +02:00
Veronica Berglyd Olsen
06b6adbcde Remove description field from theme parsing and testing 2025-07-14 19:33:01 +02:00
Veronica Berglyd Olsen
f2b94095c3 Fix 4 byte Unicode support in editor (#2451) 2025-07-13 19:02:58 +02:00
Veronica Berglyd Olsen
cd474f3152 Add full test coverage of syntax highlighter 2025-07-13 18:59:13 +02:00
Veronica Berglyd Olsen
c40507addb Fix Unicode bug in syntax highlighter 2025-07-13 18:58:52 +02:00
Benson Muite
989d655c1f Add git as a Fedora dependency for codecov 2025-07-09 18:41:14 +03:00
Benson Muite
094353f64e Fix container image name 2025-07-09 18:07:20 +03:00
Veronica Berglyd Olsen
e795b345c5 Merge remote-tracking branch 'origin/unicode_fix' into unicode_fix 2025-07-09 12:50:04 +02:00
Veronica Berglyd Olsen
4a04c24b62 Merge branch 'main' into unicode_fix 2025-07-09 12:49:08 +02:00
Veronica Berglyd Olsen
36ec721b1e Remove sed and fix bug in fedora yaml 2025-07-09 12:37:55 +02:00
Benson Muite
f1dae3e62e Test on Fedora linux 2025-07-09 10:59:20 +03:00
Veronica Berglyd Olsen
90860dbbf1 Fix colour reset bug for status labels (#2461) 2025-07-08 15:46:01 +02:00
Veronica Berglyd Olsen
7d2be7da77 Update file format comment 2025-07-08 15:41:01 +02:00
Veronica Berglyd Olsen
551a7609f8 Preserve status icon custom colour when switching theme (#2452) 2025-07-08 15:19:33 +02:00
Veronica Berglyd Olsen
791da75ae9 Merge 2.7.3 release into 2.8 branch (#2460) 2025-07-07 19:00:47 +02:00
Veronica Berglyd Olsen
aa1fd82f3a Merge 2.7.3 release into current main 2025-07-07 18:41:36 +02:00
Veronica Berglyd Olsen
2e8ee9dadf Release 2.7.3 (#2458) 2025-07-07 17:25:26 +02:00
Veronica Berglyd Olsen
0b8d613044 Update changelog notes 2025-07-07 17:16:11 +02:00
Veronica Berglyd Olsen
64b0896eaf Bump version and update changelog 2025-07-07 17:14:51 +02:00
Veronica Berglyd Olsen
cd5151be94 Update license info 2025-07-07 17:04:53 +02:00
Veronica Berglyd Olsen
367bb2e5ed Improve dialogue highlighting settings (#2457) 2025-07-06 18:27:26 +02:00
Veronica Berglyd Olsen
a748a69de3 Remove redundant string compact implementation 2025-07-06 18:24:05 +02:00
Veronica Berglyd Olsen
ec9e478399 Improve dialogue line symbol setting box (#2453) 2025-07-06 18:20:13 +02:00
Veronica Berglyd Olsen
dadc7edbd9 Move the open ended dialogue setting in Preferences (#2454) 2025-07-06 18:14:33 +02:00
Veronica Berglyd Olsen
e41f6a5fb3 Fix ConfigParser interpolation (#2456) 2025-07-06 17:35:18 +02:00
Veronica Berglyd Olsen
3149e7ec0d Disable config parser interpolation with % (#2455) 2025-07-06 17:29:19 +02:00
Veronica Berglyd Olsen
d8d60faa6b Add test document to repo for now 2025-07-06 17:09:21 +02:00
Veronica Berglyd Olsen
58eda950f8 Add test coverage for spell checker with 4 byte Unicode 2025-07-05 17:52:19 +02:00
Veronica Berglyd Olsen
ad3760762f Fix spell checking when 4 byte are in use 2025-07-05 17:19:02 +02:00
Veronica Berglyd Olsen
3c8a0ace60 Add test for utf16CharMap 2025-07-05 17:18:04 +02:00
Veronica Berglyd Olsen
7a90ef8bc4 Merge branch 'main' into unicode_fix 2025-07-05 16:00:06 +02:00
Veronica Berglyd Olsen
c12a864e8a Revert Qt regex and use UTF-16 to UCS-4 index map for all highlighting 2025-07-05 15:53:34 +02:00
Veronica Berglyd Olsen
5aef93245b Add more themes (#2450) 2025-07-05 15:39:32 +02:00
Myian
3352a24750 fix: rename the Auras 2025-07-05 15:33:42 +02:00
Myian
590f13203a fix: Classic-O Light url 2025-07-05 14:23:24 +02:00
Myian
c832b2d860 fix: Primer Light headertag 2025-07-05 14:17:50 +02:00
Veronica Berglyd Olsen
8067acdc1c Merge branch 'main' into unicode_fix 2025-07-05 14:17:16 +02:00
Myian
b3ea6af2fd Merge branch 'vkbo:main' into add_themes 2025-07-05 14:03:29 +02:00
Myian
30530b1b8b add more themes 2025-07-05 14:02:56 +02:00
Veronica Berglyd Olsen
57bed18ccf Make dialog parser and keyword lines work with 4 byte unicode 2025-07-05 01:50:47 +02:00
Veronica Berglyd Olsen
f8a333c4ea Make editor auto-replace work with 4 byte Unicode 2025-07-05 01:50:03 +02:00
Veronica Berglyd Olsen
680fc32786 Fix highlighting of markup and spell checking for 4 byte Unicode 2025-07-04 23:24:23 +02:00
Veronica Berglyd Olsen
9af498d69a Drop redundant re.UNICODE flag 2025-07-04 20:20:48 +02:00
Veronica Berglyd Olsen
7e2b95d390 Add all used licenses (#2446) 2025-07-02 18:26:16 +02:00
Veronica Berglyd Olsen
168bb0be88 Update license fields in project file to latest format 2025-07-02 17:55:06 +02:00
Veronica Berglyd Olsen
849f6c7d05 Update credits files 2025-07-02 17:42:57 +02:00
Veronica Berglyd Olsen
d1c3643cff Add all used licenses to package meta 2025-07-02 17:41:41 +02:00
Veronica Berglyd Olsen
5ee362dcf4 Revert license field (#2435) 2025-06-25 10:28:05 +02:00
Veronica Berglyd Olsen
453502e1c7 Revert the format of the license field in the pyrproject file (#2434) 2025-06-25 10:23:00 +02:00
Veronica Berglyd Olsen
0b6e2bc260 Merge 2.7.2 into main (#2432) 2025-06-24 17:21:53 +02:00
Veronica Berglyd Olsen
5b24d8e61a Fix merge issue 2025-06-24 17:16:39 +02:00
Veronica Berglyd Olsen
23ff933d38 Merge 2.7.2 into main 2025-06-24 17:12:43 +02:00
Veronica Berglyd Olsen
da3383a67c Release 2.7.2 (#2430) 2025-06-24 16:43:34 +02:00
Veronica Berglyd Olsen
4dd2d63d9b Update changelog 2025-06-24 16:40:25 +02:00
Veronica Berglyd Olsen
b16783143f Bump version to 2.7.2 and update changelog 2025-06-24 16:37:50 +02:00
Veronica Berglyd Olsen
590c66d1eb Fix missing tag display in outline (#2429) 2025-06-24 16:23:15 +02:00
Veronica Berglyd Olsen
b4db960e68 Add scene tag to sample main scene 2025-06-24 16:16:15 +02:00
Veronica Berglyd Olsen
aaf4ede04d Update test coverage 2025-06-24 16:15:49 +02:00
Veronica Berglyd Olsen
5ae385ec02 Add tag to reference by keyword lookup 2025-06-24 16:15:35 +02:00
Veronica Berglyd Olsen
ad2288e2fc Add tag value for novel docs in Outline and Novel View (#2428) 2025-06-24 16:05:59 +02:00
Veronica Berglyd Olsen
4b5f3c8af8 Clarify text alignment and break behaviour (#2427) 2025-06-24 09:07:40 +02:00
Veronica Berglyd Olsen
c1dd2ebb92 Fix typos and inconsistencies 2025-06-24 00:22:35 +02:00
Veronica Berglyd Olsen
a210a665fb Update documentation 2025-06-24 00:08:08 +02:00
Veronica Berglyd Olsen
979a55d24a Add alignment precedence test to HTML tests 2025-06-24 00:07:55 +02:00
Veronica Berglyd Olsen
3c474987b2 Check indent and justify after lines are combined in tokenizer, not before (#2426) 2025-06-23 23:24:20 +02:00
Veronica Berglyd Olsen
91e83305e6 Add Espresso and Noctis themes (#2422) 2025-06-23 13:52:22 +02:00
Veronica Berglyd Olsen
cf3f6caca8 Fix Noctis button text colour 2025-06-20 17:12:00 +02:00
Veronica Berglyd Olsen
ab1d55611f Add Noctis theme 2025-06-20 17:06:50 +02:00
Veronica Berglyd Olsen
aff634a970 Add Noctis Lux theme 2025-06-20 16:54:14 +02:00
Veronica Berglyd Olsen
6ed572772f Add theme description 2025-06-20 16:47:11 +02:00
Veronica Berglyd Olsen
cc206d5542 Merge remote-tracking branch 'origin/espresso_theme' into espresso_theme 2025-06-20 16:45:22 +02:00
Veronica Berglyd Olsen
8001b914b1 Merge branch 'main' into espresso_theme 2025-06-20 16:43:06 +02:00
Veronica Berglyd Olsen
afc3e862b0 Change theme meta settings (#2423) 2025-06-20 16:42:55 +02:00
Veronica Berglyd Olsen
8ea6cc8bac Merge branch 'main' into theme_settings 2025-06-20 16:38:10 +02:00
Veronica Berglyd Olsen
cdc05320d9 Update existing theme files 2025-06-20 16:36:39 +02:00
Veronica Berglyd Olsen
b64c2f3597 Refactor the theme setting meta fields and requirements 2025-06-20 16:35:58 +02:00
Veronica Berglyd Olsen
e1b082d189 Improve tooltip and highlight 2025-06-20 12:03:20 +02:00
Veronica Berglyd Olsen
7fdf175329 Merge branch 'main' into espresso_theme 2025-06-20 00:17:12 +02:00
Veronica Berglyd Olsen
e6580d4676 Make some minor changes to themes (#2418) 2025-06-20 00:16:00 +02:00
Veronica Berglyd Olsen
b6de4fe823 First iteration of the espresso theme 2025-06-20 00:13:15 +02:00
Veronica Berglyd Olsen
51da6fe1a8 Merge branch 'main' into theme_tweaks 2025-06-19 22:11:24 +02:00
Veronica Berglyd Olsen
aba179d2de Improve story comment handling (#2421) 2025-06-19 22:02:17 +02:00
Veronica Berglyd Olsen
80cabea362 Merge branch 'main' into story_comments_handling 2025-06-19 21:57:46 +02:00
Veronica Berglyd Olsen
fad4210c9c Update Primer themes (#2419) 2025-06-19 21:57:33 +02:00
Veronica Berglyd Olsen
32091ffd94 Add test for story comment tokenizer 2025-06-19 21:49:33 +02:00
Veronica Berglyd Olsen
8d2551e0b6 Add notes toggle test coverage 2025-06-19 21:35:39 +02:00
Veronica Berglyd Olsen
0d94a84724 Fix tests 2025-06-19 21:32:11 +02:00
Veronica Berglyd Olsen
efa82e1761 Add more new features to the Lipsum test project 2025-06-19 21:31:57 +02:00
Veronica Berglyd Olsen
c4cd151f2c Compact repeated blocks in both meta and note types 2025-06-19 21:05:44 +02:00
Myian
4874c02c44 fix highlight? 2025-06-19 21:04:42 +02:00
Veronica Berglyd Olsen
ba4fdd1f92 Split up block types of comments in build formats 2025-06-19 20:47:34 +02:00
Veronica Berglyd Olsen
c598fdd009 Add separate toggle for notes in viewer 2025-06-19 20:30:54 +02:00
Veronica Berglyd Olsen
0bbe29bc2e Fix comments visibility (#2420) 2025-06-19 20:27:36 +02:00
Veronica Berglyd Olsen
e690243fc3 Show notes and story structure comments in the viewer 2025-06-19 20:21:19 +02:00
Veronica Berglyd Olsen
4eaac8dbe8 Fix issues with the Solarized themes 2025-06-19 20:06:30 +02:00
Veronica Berglyd Olsen
dbf0b5d3f7 Modify the style to show a scroll bar for combo boxes 2025-06-19 19:29:14 +02:00
Myian
17e2c30f6e Merge branch 'primer' of https://github.com/HeyMyian/novelWriter into primer 2025-06-19 17:31:26 +02:00
Myian
36b757c224 better contrast for some elements 2025-06-19 17:31:24 +02:00
Veronica Berglyd Olsen
1ae77b145b Merge branch 'main' into primer 2025-06-19 15:42:04 +02:00
Myian
87f2f0eb24 fix tooltip 2025-06-19 13:24:35 +02:00
Myian
b2d31022af adjusting colors and change name 2025-06-19 13:16:23 +02:00
Veronica Berglyd Olsen
110d8b8e59 Swap value and modifier colours in default themes 2025-06-18 20:50:33 +02:00
Veronica Berglyd Olsen
5a177e500e Update the help text for theme selections in Preferences 2025-06-18 20:50:12 +02:00
Veronica Berglyd Olsen
03dcb63cf6 Merge 2.7.2 bugfixes into main (#2417) 2025-06-18 20:30:41 +02:00
Veronica Berglyd Olsen
45a41b6109 Merge 2.7.2 bugfixes into main 2025-06-18 20:26:56 +02:00
Veronica Berglyd Olsen
74862969e1 Fix page breaks in PDFs (#2416) 2025-06-18 20:21:09 +02:00
Veronica Berglyd Olsen
92ef020342 Display headings with a line break on a single line 2025-06-18 19:26:41 +02:00
Veronica Berglyd Olsen
2176dd2020 Only add page break before first line of a heading in PDF and preview (#2415) 2025-06-18 19:25:39 +02:00
Veronica Berglyd Olsen
bc624dc079 Add markdown-style highlight (#2412) 2025-06-16 22:13:48 +02:00
Veronica Berglyd Olsen
0b13d40516 Add text pattern test 2025-06-16 21:46:27 +02:00
Veronica Berglyd Olsen
e82c161b11 Merge branch 'main' into markdown_highlight 2025-06-16 21:41:41 +02:00
Veronica Berglyd Olsen
307cd0966b Merge branch 'release' 2025-06-16 21:40:45 +02:00
Veronica Berglyd Olsen
2ec943d118 Fix escape characters in document formats (#2411) 2025-06-16 19:00:51 +02:00
Veronica Berglyd Olsen
01733bdbaa Use dict comprehension in auto replace processing 2025-06-16 18:58:07 +02:00
Veronica Berglyd Olsen
5bc39d29eb Process escapes in docx and qdoc classes (#2410) 2025-06-16 18:50:21 +02:00
Veronica Berglyd Olsen
c0da955fc6 Add button and menu entry for markdown highlight 2025-06-16 18:47:16 +02:00
Veronica Berglyd Olsen
148fc68590 Add markdown highlight format 2025-06-16 18:46:37 +02:00
Veronica Berglyd Olsen
1c150e0011 Add current line highlight (#2405) 2025-06-14 17:36:39 +02:00
Veronica Berglyd Olsen
cbc79d7082 Merge line highlight with existing signal handler for cursor move 2025-06-14 17:30:30 +02:00
Veronica Berglyd Olsen
6d04c88d83 Keep the ExtraSelection object around to prevent garbage collector race and segfault 2025-06-14 17:20:34 +02:00
Veronica Berglyd Olsen
d5dc66a33c Add to preferences test 2025-06-14 17:13:35 +02:00
Veronica Berglyd Olsen
2947721727 Improve test coverage 2025-06-14 17:08:06 +02:00
Veronica Berglyd Olsen
f6408e74d2 Update themes and docs 2025-06-14 17:06:02 +02:00
Veronica Berglyd Olsen
7a95980d2f Add theme setting for current line 2025-06-14 17:04:53 +02:00
Veronica Berglyd Olsen
2589c43214 Expose line highlight setting in Preferences 2025-06-14 16:45:06 +02:00
Veronica Berglyd Olsen
5032ffdfd4 Add current line highlight 2025-06-14 16:44:51 +02:00
Veronica Berglyd Olsen
1b977e866b Make HTML output more consistent (#2404) 2025-06-14 15:34:49 +02:00
Veronica Berglyd Olsen
307e80bac9 Update tests 2025-06-14 15:29:11 +02:00
Veronica Berglyd Olsen
af6b35cc43 Improve handling of CSS styles, and add viewport meta tag (#2358) 2025-06-14 15:28:51 +02:00
Veronica Berglyd Olsen
bae654f260 Clean up log messages from dialogs (#2402) 2025-06-14 14:26:28 +02:00
Veronica Berglyd Olsen
ff36d38f43 Improve formatting of log messages made from message box content 2025-06-14 14:22:14 +02:00
Veronica Berglyd Olsen
88a195b4e2 Update deb build and release 2.8 Alpha 1 for Launchpad (#2401) 2025-06-13 22:37:18 +02:00
Veronica Berglyd Olsen
2bd298e673 Bump version to 2.8 Alpha 1 2025-06-13 22:31:34 +02:00
Veronica Berglyd Olsen
ad89a043c9 Update build files for 2.8 2025-06-13 22:31:17 +02:00
Veronica Berglyd Olsen
03506c97b0 Allow theme colours for status and importance labels (#2400) 2025-06-13 22:02:54 +02:00
Veronica Berglyd Olsen
9384b8a6b9 Update test coverage 2025-06-13 21:37:31 +02:00
Veronica Berglyd Olsen
e3eea2628a Fix current tests 2025-06-12 19:22:11 +02:00
Veronica Berglyd Olsen
ff85c6688f Add methods to refresh status icons on theme change 2025-06-12 17:59:38 +02:00
Veronica Berglyd Olsen
2e0ee9b75f Update project settings for for status and importance colours 2025-06-12 16:55:28 +02:00
Veronica Berglyd Olsen
fe46a82e63 Change how colours are stored for status labels to use theme colour or hex format 2025-06-12 16:55:12 +02:00
Veronica Berglyd Olsen
67d49a8f2b Remove theme key from theme colours list 2025-06-12 16:52:24 +02:00
Veronica Berglyd Olsen
885b669c30 Add LCARS theme (#2399) 2025-06-12 11:46:50 +02:00
Veronica Berglyd Olsen
5ab3736f05 Tweak colours 2025-06-12 11:42:52 +02:00
Veronica Berglyd Olsen
968bdbf12a Add LCARS theme 2025-06-11 21:57:15 +02:00
Veronica Berglyd Olsen
1608f34677 Make some minor tweaks to themes and update docs (#2396) 2025-06-11 20:27:18 +02:00
Veronica Berglyd Olsen
98d9853c7e Tweak the opacity of paged sidebar buttons and welcome dialog list 2025-06-11 00:14:46 +02:00
Veronica Berglyd Olsen
aeac9840f1 Tweaks some theme colours 2025-06-11 00:09:06 +02:00
Veronica Berglyd Olsen
6a9e268eb7 Update theme customisation documentation 2025-06-11 00:08:17 +02:00
Veronica Berglyd Olsen
186062926a Change some defaults and fix index of new projects (#2395) 2025-06-10 23:41:52 +02:00
Veronica Berglyd Olsen
f7691f6909 Make sure manual files exist for testing 2025-06-10 23:29:17 +02:00
Veronica Berglyd Olsen
4e02c8a63a Change a few defaults in config 2025-06-10 23:28:58 +02:00
Veronica Berglyd Olsen
bd3e23da33 Build index on new project creation 2025-06-10 23:16:10 +02:00
Veronica Berglyd Olsen
045b2619b2 Merge release 2.7.1 into 2.8a0 2025-06-10 00:10:20 +02:00
Veronica Berglyd Olsen
8c38bece3a Update license setting in pyproject.toml 2025-06-10 00:09:04 +02:00
Veronica Berglyd Olsen
d61329a4f3 Improve build code 2025-06-10 00:08:48 +02:00
Veronica Berglyd Olsen
635493f1c1 Post release updates and AppImage fix 2025-06-09 23:42:34 +02:00
Veronica Berglyd Olsen
364b7bcf99 Release 2.7.1 (#2393) 2025-06-09 23:11:23 +02:00
Veronica Berglyd Olsen
7d53c4a06b Extend changelog and fix release date 2025-06-09 23:08:09 +02:00
Veronica Berglyd Olsen
e3981aad60 Update changelog 2025-06-09 23:06:14 +02:00
Veronica Berglyd Olsen
f08078bd08 Update Czech translation 2025-06-09 23:00:41 +02:00
Veronica Berglyd Olsen
5d1e781d20 Bump version to 2.7.1 2025-06-09 22:57:33 +02:00
Veronica Berglyd Olsen
d1d5116536 Update the AppImage build scripts (#2392) 2025-06-09 22:52:17 +02:00
Veronica Berglyd Olsen
6379f031c2 Prune the AppImage a little, and prune Windows installer less 2025-06-09 22:49:00 +02:00
Veronica Berglyd Olsen
d153d80595 Use lower case for release names 2025-06-09 22:01:22 +02:00
Veronica Berglyd Olsen
28c45719e2 Move libxcb-cursor 2025-06-09 19:36:39 +02:00
Veronica Berglyd Olsen
e6befda146 Use env var for appimagetool 2025-06-09 19:08:19 +02:00
Veronica Berglyd Olsen
910723bbcd Add symlink 2025-06-09 19:02:53 +02:00
Veronica Berglyd Olsen
a534e30467 Add the appimagetool exec 2025-06-09 18:51:49 +02:00
Veronica Berglyd Olsen
dd7c8162ac Update appimage build 2025-06-09 18:38:53 +02:00
Veronica Berglyd Olsen
2bffa83d62 Update app description 2025-06-09 15:46:17 +02:00
Veronica Berglyd Olsen
01514a94e1 Fix tag and auto-complete bugs (#2389) 2025-06-06 19:23:49 +02:00
Veronica Berglyd Olsen
53355dbcc6 Don't remove tags for the tag keyword (#2386) 2025-06-06 19:16:59 +02:00
Veronica Berglyd Olsen
bf1067a346 Make sure project items in inactive classes are removed from the index (#2387) 2025-06-06 19:07:32 +02:00
Veronica Berglyd Olsen
53784b310e Close instead of hide auto-complete menu when inactive (#2386) 2025-06-06 18:39:21 +02:00
Veronica Berglyd Olsen
e816cbc51b Add "Blue Streak" themes (#2388) 2025-06-06 18:30:15 +02:00
Veronica Berglyd Olsen
0a37981251 Add Blue Streak Light, and update dark theme 2025-06-06 18:25:45 +02:00
Veronica Berglyd Olsen
d280cb510d Update blue streak dark theme with new settings 2025-06-05 22:10:33 +02:00
Veronica Berglyd Olsen
c08771dc56 Add blue streak initial theme 2025-06-05 22:05:14 +02:00
Veronica Berglyd Olsen
1e58c47286 Add more theme fields (#2384) 2025-06-05 22:03:57 +02:00
Veronica Berglyd Olsen
8c0f3b037a Update themes 2025-06-05 21:55:08 +02:00
Veronica Berglyd Olsen
550cba2f43 Add theme settings for active icons, a base colour, and accent palette colour (#2382) 2025-06-05 18:15:31 +02:00
Veronica Berglyd Olsen
33f4efc5b1 Improve welcome dialog and add more theme colour options (#2380) 2025-06-04 22:27:07 +02:00
Veronica Berglyd Olsen
a92f9d7a6f Update docs 2025-06-04 22:23:26 +02:00
Veronica Berglyd Olsen
57b6b92e04 Update themes 2025-06-04 22:01:12 +02:00
Veronica Berglyd Olsen
0ab33e1843 Allow adjusting lighter and darker as well in theme files 2025-06-04 21:09:35 +02:00
Veronica Berglyd Olsen
8ce6c678aa Use a transparent image for the welcome dialog 2025-06-04 20:37:30 +02:00
Veronica Berglyd Olsen
c63336ade4 Add Primer themes (#2377) 2025-06-04 15:14:18 +02:00
Veronica Berglyd Olsen
e276a5d825 Merge branch 'main' into Add-Primer-Dark-theme 2025-06-04 15:10:46 +02:00
Veronica Berglyd Olsen
d06731ff19 Improve theme testing and format of theme files (#2378) 2025-06-04 15:10:34 +02:00
Veronica Berglyd Olsen
320578a61c Clean up theme files a little 2025-06-04 15:05:35 +02:00
Veronica Berglyd Olsen
92f68dfd58 Add tests for the theme and icons files 2025-06-04 15:05:22 +02:00
Myian
d850d901e9 Add Primer Light theme
Adds the Primer Light theme based on the GitHub/Primer colors.
2025-06-04 11:28:05 +02:00
Myian
492294163c Add Primer Dark theme
Adds the Primer Dark theme based on the GitHub/Primer colors.
2025-06-03 23:23:09 +02:00
Veronica Berglyd Olsen
cd38e6a6ae Add light/dark theme switching and merge syntax and GUI theme (#2373) 2025-06-03 22:54:52 +02:00
Veronica Berglyd Olsen
334f946870 Add remaining missing coverage and revert loadTheme return type 2025-06-03 22:47:17 +02:00
Veronica Berglyd Olsen
bd2353f7bc Add tests for sidebar and themes 2025-06-03 22:36:53 +02:00
Veronica Berglyd Olsen
f6214ae36d Build AppImage with Python 3.11 again 2025-06-03 19:53:00 +02:00
Veronica Berglyd Olsen
5fee3ecdb8 Fix broken tests 2025-06-03 17:39:21 +02:00
Veronica Berglyd Olsen
638f93499b Scan themes on startup instead 2025-06-03 17:31:52 +02:00
Veronica Berglyd Olsen
df7a721626 Update documentation on colour themes 2025-06-03 17:30:59 +02:00
Veronica Berglyd Olsen
60b5f660e8 Rename colour aqua to cyan in themes 2025-06-03 17:30:13 +02:00
Veronica Berglyd Olsen
82188d156b Change the name and alpha format of colour themes 2025-06-03 12:02:38 +02:00
Veronica Berglyd Olsen
b0ea1781e7 Fix test 2025-06-02 23:28:28 +02:00
Veronica Berglyd Olsen
44528b6173 Fix icon theme reload 2025-06-02 23:20:51 +02:00
Veronica Berglyd Olsen
059085a21a Add theme icons 2025-06-02 23:13:30 +02:00
Veronica Berglyd Olsen
89a7c3e5cb Add dark/light toggle button to sidebar 2025-06-02 23:08:01 +02:00
Veronica Berglyd Olsen
10475f32fb Remove references to syntax themes 2025-06-02 20:21:35 +02:00
Veronica Berglyd Olsen
55e601cf9d Merge and update the grey themes 2025-06-02 20:18:19 +02:00
Veronica Berglyd Olsen
d0f11a2595 Fix a few inconsistencies 2025-06-02 20:05:52 +02:00
Veronica Berglyd Olsen
eed5cd1877 Merge and update the owl and tango themes 2025-06-02 20:02:00 +02:00
Veronica Berglyd Olsen
3258b8806f Merge and update the tomorrow themes 2025-06-02 19:15:33 +02:00
Veronica Berglyd Olsen
072d0f0acd Merge and update the default themes 2025-06-02 18:40:58 +02:00
Veronica Berglyd Olsen
04526385d1 Update existing matched GUI and syntax themes 2025-06-02 17:43:27 +02:00
Veronica Berglyd Olsen
857327e9ef Update theme colour processing and fix current tests 2025-06-02 17:06:28 +02:00
Veronica Berglyd Olsen
1fafa0dae7 Remove syntax theme parsing and add light and dark theme user settings 2025-06-02 16:28:06 +02:00
Veronica Berglyd Olsen
e67ae4f3bf Block main GUI from resizing to larger than the screen (#2369) 2025-06-01 19:24:15 +02:00
Veronica Berglyd Olsen
d12113b94c Limit main GUI size to available screen size of the current screen (#2354) 2025-06-01 18:41:13 +02:00
Veronica Berglyd Olsen
682804f703 Bump main branch to 2.8 Alpha 0 2025-06-01 15:00:44 +02:00
Veronica Berglyd Olsen
7aea5eb5af Add setuptools to appimage build 2025-06-01 12:42:02 +02:00
Veronica Berglyd Olsen
007934e538 Release 2.7 (#2364) 2025-06-01 12:27:51 +02:00
Veronica Berglyd Olsen
9cec3bf4ca Update credits 2025-05-31 23:43:24 +02:00
Veronica Berglyd Olsen
41b9219d66 Correct note copied from previous release 2025-05-31 23:37:33 +02:00
Veronica Berglyd Olsen
18180b87b9 Update changelog 2025-05-31 23:33:43 +02:00
Veronica Berglyd Olsen
f1580928eb Bump version number for 2.7 release 2025-05-31 23:24:00 +02:00
Veronica Berglyd Olsen
b4a844ea0b Update i18n for 2.7 (#2353) 2025-05-31 23:19:03 +02:00
Veronica Berglyd Olsen
5489f39c0f Update project translation for Nynorsk 2025-05-31 23:15:52 +02:00
Veronica Berglyd Olsen
391b72e04b Update German, Italian, Polish and Brazilian Portuguese 2025-05-31 23:12:14 +02:00
Veronica Berglyd Olsen
15934049db Merge branch 'release' into update_i18n 2025-05-31 23:08:18 +02:00
Veronica Berglyd Olsen
0bde8b0b3c Update contributing guide 2025-05-31 00:10:02 +02:00
Veronica Berglyd Olsen
a83376d810 Update the French documentation to reflect the new structure (#2361) 2025-05-29 16:25:18 +02:00
jim on linux
f405e13521 fr Documentation updated to reflect the new structure. 2025-05-29 14:43:40 +02:00
Veronica Berglyd Olsen
b8143154c8 Merge branch 'main' into update_i18n 2025-05-26 23:56:39 +02:00
Veronica Berglyd Olsen
480d633b13 Restructure and simplify documentation (#2355) 2025-05-26 23:49:41 +02:00
Veronica Berglyd Olsen
e6f47b1908 Clean up the remaining sections 2025-05-26 23:46:49 +02:00
Veronica Berglyd Olsen
caa1a7653d Clean up the "User Interface" section 2025-05-26 22:39:03 +02:00
Veronica Berglyd Olsen
acfef7b4cb Clean up the "Getting Started" section 2025-05-25 18:56:11 +02:00
Veronica Berglyd Olsen
77eb377cf3 Improve documentation for dialogue highlighting and story comments 2025-05-25 17:25:14 +02:00
Veronica Berglyd Olsen
b8b0879ef2 Update main menu 2025-05-25 16:04:27 +02:00
Veronica Berglyd Olsen
bc6b89f399 Remove redundant images 2025-05-25 16:03:00 +02:00
Veronica Berglyd Olsen
77662f9505 Merge the remaining old documents into the new structure 2025-05-25 16:01:25 +02:00
Veronica Berglyd Olsen
d3fa06dccc Update usage documentation and incorporate last usage file from old doc 2025-05-25 15:08:55 +02:00
Veronica Berglyd Olsen
b7a8664cf9 Move more docs into new structure 2025-05-24 21:00:14 +02:00
Veronica Berglyd Olsen
d4b9cfd0cb Move manuscript docs into new structure 2025-05-24 20:25:25 +02:00
Veronica Berglyd Olsen
0c2d392166 Move documentation files to keep into new structure 2025-05-24 20:17:14 +02:00
Veronica Berglyd Olsen
b2f30565b1 Merge branch 'main' into restructure_docs 2025-05-24 19:37:34 +02:00
Veronica Berglyd Olsen
d0c838450d Complete the usage section 2025-05-24 19:35:58 +02:00
Veronica Berglyd Olsen
60973954ef Move and expand text into usage section 2025-05-24 18:09:34 +02:00
Veronica Berglyd Olsen
8018edb183 Add usage section 2025-05-21 23:41:22 +02:00
Veronica Berglyd Olsen
ff5d8c2ba0 Update US English, Japanese, Norwegian and Chinese, and German project file, for 2.7 2025-05-21 09:41:54 +02:00
Veronica Berglyd Olsen
1496fdb482 Update all i18n files with new strings 2025-05-21 09:39:33 +02:00
Veronica Berglyd Olsen
c0521833d9 Update unpublished i18n files from 2.6.3 branch 2025-05-21 09:38:39 +02:00
Veronica Berglyd Olsen
b59b6e1dad Change behaviour of build settings dialog (#2351) 2025-05-20 21:43:02 +02:00
Veronica Berglyd Olsen
7fa7fdee3f Make a small optimisation to build settings dialog 2025-05-20 21:39:16 +02:00
Veronica Berglyd Olsen
f177f82417 Update tests 2025-05-20 21:32:58 +02:00
Veronica Berglyd Olsen
6b4aac0235 Use a copy of the build settings for the build settings dialog (#2350) 2025-05-20 21:16:34 +02:00
Veronica Berglyd Olsen
e7e0d6bf2b Post release updates (#2349) 2025-05-19 21:48:27 +02:00
Veronica Berglyd Olsen
84e5ef2dcf Update base translation file 2025-05-19 21:42:59 +02:00
Veronica Berglyd Olsen
cdb8536e8d Update project settings and scripts after release 2025-05-19 21:42:47 +02:00
Veronica Berglyd Olsen
197c5ad2d0 Release 2.7 RC 1 (#2347) 2025-05-19 19:56:13 +02:00
Veronica Berglyd Olsen
d033a3b23e Bump version and update changelog 2025-05-19 17:50:38 +02:00
Veronica Berglyd Olsen
e901c19b5b Add story notes and comment auto-complete (#2346) 2025-05-18 22:54:34 +02:00
Veronica Berglyd Olsen
5fb45f7647 Rename notes to manuscript notes 2025-05-18 22:51:17 +02:00
Veronica Berglyd Olsen
70ae2bd595 Update tests 2025-05-18 22:47:01 +02:00
Veronica Berglyd Olsen
47814e35cb Add support for including notes in manuscript 2025-05-18 22:46:54 +02:00
Veronica Berglyd Olsen
ceadd52d1a Update tests 2025-05-18 22:37:15 +02:00
Veronica Berglyd Olsen
f22f80dafd Add support for indexing and auto-completing story notes 2025-05-18 22:36:25 +02:00
Veronica Berglyd Olsen
f2f2e6cb46 Extend completer for editor to also support comments 2025-05-18 21:56:58 +02:00
Veronica Berglyd Olsen
779026408e Fix auto-complete bug and outline export bug (#2343) 2025-05-18 17:16:40 +02:00
Veronica Berglyd Olsen
bbcd11531a Fix order of story structure columns in CSV export (#2313) 2025-05-18 17:10:32 +02:00
Veronica Berglyd Olsen
c2059a8701 Notify the index when an item's class changes (#2330) 2025-05-18 16:58:39 +02:00
Veronica Berglyd Olsen
ab328d0764 Add a setting for using character count as main count (#2323) 2025-05-18 16:32:20 +02:00
Veronica Berglyd Olsen
28c70dfc2e Update tests 2025-05-18 16:28:27 +02:00
Veronica Berglyd Olsen
916039b420 Allow display of character count in editor footer and status bar 2025-05-18 16:27:30 +02:00
Veronica Berglyd Olsen
51c7fb2614 Merge branch 'main' into primary_count 2025-05-18 15:30:32 +02:00
Veronica Berglyd Olsen
4c16e17d44 Change lock threads schedule to run only every 3 days 2025-05-15 12:42:55 +02:00
Veronica Berglyd Olsen
a1aba9bed4 Run on a hourly schedule for now 2025-05-15 00:36:38 +02:00
Veronica Berglyd Olsen
ca17263640 Disable lock thread comment to reduce notification spam 2025-05-15 00:33:05 +02:00
Veronica Berglyd Olsen
6c20847cc9 Change schedule to lock old threads once a day 2025-05-14 23:32:09 +02:00
Veronica Berglyd Olsen
c0ac50a501 Fix lock threads job issues 2025-05-14 22:56:25 +02:00
Veronica Berglyd Olsen
44e901ab08 Enable log output 2025-05-14 22:50:01 +02:00
Veronica Berglyd Olsen
6818fdd00a Add lock threads cron job 2025-05-14 22:48:30 +02:00
Veronica Berglyd Olsen
705eee2739 Update Debian install instructions 2025-05-14 22:35:54 +02:00
Veronica Berglyd Olsen
d58a883ca5 Merge branch 'main' into primary_count 2025-05-12 19:41:33 +02:00
Veronica Berglyd Olsen
be4151c979 Update accessibility for switches, settings and trees (#2337) 2025-05-11 19:07:37 +02:00
Veronica Berglyd Olsen
da698b946b Improve accessibility of settings forms and dialogs 2025-05-11 19:03:59 +02:00
Veronica Berglyd Olsen
9b0890c9b7 Improve accessibility labels for novel and project trees 2025-05-11 18:32:10 +02:00
Veronica Berglyd Olsen
4417e275fd Add highlight to switch when it has focus 2025-05-11 18:12:58 +02:00
Veronica Berglyd Olsen
4e98914a8b Link switches and their labels 2025-05-11 18:08:33 +02:00
Veronica Berglyd Olsen
e200e6b900 Change how the switch is animated 2025-05-11 17:33:04 +02:00
Veronica Berglyd Olsen
746c6f79d2 Make the Snazzy Light syntax theme easier to read (#2336) 2025-05-11 16:53:33 +02:00
Veronica Berglyd Olsen
c0d9f00adb Improve the Snazzy Light syntax theme a little 2025-05-11 16:48:48 +02:00
Veronica Berglyd Olsen
26e67c5f18 Add a Snazzy Light GUI theme (#2334) 2025-05-11 15:43:59 +02:00
Veronica Berglyd Olsen
6fdc6cfaa3 Add a Snazzy Light GUI theme 2025-05-11 15:28:49 +02:00
Veronica Berglyd Olsen
5ba6dfd538 Fix minor issues and make improvements for 2.7 RC 1 (#2333) 2025-05-11 13:45:01 +02:00
Veronica Berglyd Olsen
08dda5d58b Apply title and author also to sample projects 2025-05-11 13:42:05 +02:00
Veronica Berglyd Olsen
c909297504 Remember last used author name 2025-05-11 13:32:32 +02:00
Veronica Berglyd Olsen
699c27e3dc Improve new project creation, and generate new id for sample projects 2025-05-11 13:07:55 +02:00
Veronica Berglyd Olsen
39c072050b Add shapes to default status labels (#2332) 2025-05-11 12:50:00 +02:00
Veronica Berglyd Olsen
c6e50d8b25 Add tests using the Qt model tester (#2331) 2025-05-08 21:20:07 +02:00
Veronica Berglyd Olsen
307965a464 Add tests using the Qt model tester 2025-05-08 21:15:55 +02:00
Veronica Berglyd Olsen
7c15b76c8c Restrict dialogue symbols (#2327) 2025-05-04 22:22:15 +02:00
Veronica Berglyd Olsen
607001f2dd Restrict dialogue line symbols 2025-05-04 22:17:13 +02:00
Veronica Berglyd Olsen
6f38867972 Limit narrator symbols to dashes (#2324) 2025-05-04 21:53:49 +02:00
Veronica Berglyd Olsen
68cc38e443 Fix datetime truncation bug (#2326) 2025-05-04 17:28:29 +02:00
Veronica Berglyd Olsen
ae5e90be02 Lock the date and time format in the config test, and make it time zone ignorant 2025-05-04 17:24:35 +02:00
Veronica Berglyd Olsen
d6fcc89da3 Explicitly convert date and datetime to QDate and QDateTime (#2325) 2025-05-04 17:03:39 +02:00
Veronica Berglyd Olsen
6d2e9d8a04 Refresh novel view on count method change 2025-04-29 23:45:05 +02:00
Veronica Berglyd Olsen
53e60c7b59 Add character counts to session log 2025-04-29 23:31:25 +02:00
Veronica Berglyd Olsen
67d0b486e9 Update tests 2025-04-29 22:49:22 +02:00
Veronica Berglyd Olsen
bd4a658bd9 Add project variables for character counts 2025-04-29 22:00:53 +02:00
Veronica Berglyd Olsen
8de6fd25e2 Add character count setting to Preferences 2025-04-29 21:36:04 +02:00
Veronica Berglyd Olsen
ba7fdb314b Add a main count setting and use it for the project tree 2025-04-29 21:26:13 +02:00
Veronica Berglyd Olsen
da84d40cd5 Fix missing icon (#2317) 2025-04-27 16:28:32 +02:00
Veronica Berglyd Olsen
ea4fb4e7ff Add missing project copy icon for Remix icons (#2314) 2025-04-27 16:22:22 +02:00
Veronica Berglyd Olsen
047cc75051 Updates to app launch (#2316) 2025-04-25 19:00:39 +02:00
Veronica Berglyd Olsen
1ec8754456 Delete the splash screen when done 2025-04-25 18:55:50 +02:00
Veronica Berglyd Olsen
9c8030e588 Connect the splash screen and add messages to track progress 2025-04-25 18:41:28 +02:00
Veronica Berglyd Olsen
dc6259133f Add a splash screen 2025-04-25 18:40:04 +02:00
Veronica Berglyd Olsen
40441c8451 Fix bug in theme test 2025-04-24 23:27:54 +02:00
Veronica Berglyd Olsen
d319051942 Add a small delay before opening welcome dialog 2025-04-24 23:27:43 +02:00
Veronica Berglyd Olsen
045808b69f Fix wrong issue referenced in changelog 2025-04-24 11:12:08 +02:00
Veronica Berglyd Olsen
99918cdc17 Update git ignore file 2025-04-24 10:52:19 +02:00
Veronica Berglyd Olsen
892c1b6aa8 Fix minor issues after release (#2310) 2025-04-20 23:12:07 +02:00
Veronica Berglyd Olsen
a4bb049eac Fix pip package build script 2025-04-20 23:07:40 +02:00
Veronica Berglyd Olsen
0bb7017cf8 Fix incorrect info in changelog 2025-04-20 23:07:25 +02:00
Veronica Berglyd Olsen
9a79173a46 Release 2.7 Beta 1 (#2308) 2025-04-20 20:57:50 +02:00
Veronica Berglyd Olsen
f92a1e5995 Bump version to 2.7 Beta 1 and update changelog 2025-04-20 19:02:03 +02:00
Veronica Berglyd Olsen
f1b3e0b8ce Update package utils and docs (#2307) 2025-04-20 18:01:24 +02:00
Veronica Berglyd Olsen
529b93f154 Change the output folder structure for HTML docs 2025-04-20 17:21:42 +02:00
Veronica Berglyd Olsen
f15ed32101 Update build scripts for docs 2025-04-20 17:18:07 +02:00
Veronica Berglyd Olsen
c5915664f0 Add compression to sample.zip for assets, see #907 2025-04-20 16:02:58 +02:00
Veronica Berglyd Olsen
d12961a9ed Fix more documents link in documentation 2025-04-20 16:02:16 +02:00
Veronica Berglyd Olsen
88ab5ae502 Update builds and CI/CD (#2306) 2025-04-20 15:08:45 +02:00
Veronica Berglyd Olsen
f458d1f9d1 Upgrade everything to run on Python 3.13 2025-04-20 15:01:06 +02:00
Veronica Berglyd Olsen
6fa33b9187 Fix AppImage build script 2025-04-20 14:58:00 +02:00
Veronica Berglyd Olsen
f64c3bfeb2 Remove project format spec docs (#2305) 2025-04-20 13:40:16 +02:00
Veronica Berglyd Olsen
17b3793b3b Rephrase the file format spec reference 2025-04-20 13:33:51 +02:00
Veronica Berglyd Olsen
f3fe7c8d11 Add a "More Documents" link to the main website 2025-04-20 13:32:29 +02:00
Veronica Berglyd Olsen
bced0ad474 Remove the file format specs file from the docs 2025-04-20 13:13:28 +02:00
Veronica Berglyd Olsen
d0ee4cfbeb Fix typo in docs 2025-04-19 23:19:41 +02:00
Veronica Berglyd Olsen
047470d3b7 Improve placement of new documents (#2302) 2025-04-19 15:05:38 +02:00
Veronica Berglyd Olsen
fcb9b60046 Tweak the rules for selecting a new items parent 2025-04-18 23:27:02 +02:00
Veronica Berglyd Olsen
b75ec3677c Fix tests and update coverage 2025-04-18 19:20:56 +02:00
Veronica Berglyd Olsen
b60ce68fcd Also record keyboard selections as a selection change 2025-04-18 18:20:13 +02:00
Veronica Berglyd Olsen
bec414a405 Move the decision logic of where to put new items to the NWTree class and improve (#2260) 2025-04-18 17:38:55 +02:00
Veronica Berglyd Olsen
1522b6b682 Update MacOS build for Qt6 (#2301) 2025-04-18 11:34:37 +02:00
Veronica Berglyd Olsen
1b93ad7b3f Update build assets dependencies 2025-04-18 10:52:27 +02:00
Rachel Powers
e78a3e63fc Patched MacOS build 2025-04-18 10:41:32 +02:00
Veronica Berglyd Olsen
8c46463204 Improve single quote dialogue highlighting (#2300) 2025-04-17 18:14:31 +02:00
Veronica Berglyd Olsen
da6cc88cd8 Replace alternative apostrophes before spell checking 2025-04-17 17:32:23 +02:00
Veronica Berglyd Olsen
f72e96662a Fix apostrophe and single quote ambiguity in dialogue (#2271) 2025-04-17 17:25:33 +02:00
Veronica Berglyd Olsen
ba9adfb7f8 Fix dialogue highlighting inconsistency (#2299) 2025-04-17 16:49:51 +02:00
Veronica Berglyd Olsen
857856ccd3 Turn off dialogue syntax highlighting in notes (#2297) 2025-04-17 16:45:01 +02:00
Veronica Berglyd Olsen
ca90926e02 Add story structure to build settings (#2298) 2025-04-17 16:39:45 +02:00
Veronica Berglyd Olsen
484c1958d6 Add build setting for story story structure comments 2025-04-17 16:33:15 +02:00
Veronica Berglyd Olsen
312ad2a21b Use a set to track comment styles to include in build 2025-04-17 16:27:06 +02:00
Veronica Berglyd Olsen
21431058be Create story structure docs (#2295) 2025-04-17 15:59:32 +02:00
Veronica Berglyd Olsen
f8bc8d4f28 Update index and overview 2025-04-17 15:58:55 +02:00
Veronica Berglyd Olsen
e30b69cf77 Remove link to external commercial source 2025-04-17 15:58:05 +02:00
Veronica Berglyd Olsen
281ed74ffa Rename file and add screenshot 2025-04-17 15:56:46 +02:00
Veronica Berglyd Olsen
5174bb0d13 Reformat the story structure document 2025-04-17 15:33:57 +02:00
Alan Langford
9257a462d5 Create project_story.rst 2025-04-12 08:44:29 -04:00
Veronica Berglyd Olsen
81b7d6fda2 Export story structure (#2293) 2025-04-10 22:06:21 +02:00
Veronica Berglyd Olsen
0728f43d96 Update test 2025-04-10 22:01:25 +02:00
Veronica Berglyd Olsen
6dcdd34fe1 Export the entire novel structure from the Outline view 2025-04-10 21:59:36 +02:00
Veronica Berglyd Olsen
0a9c530f06 Add story structure comment parsing (#2284) 2025-04-09 21:25:23 +02:00
Veronica Berglyd Olsen
7d4ae2328c Improve test coverage 2025-04-09 21:08:43 +02:00
Veronica Berglyd Olsen
c107978173 Add processing of story structure comments in the build tool 2025-04-08 20:12:48 +02:00
Veronica Berglyd Olsen
04be98fd59 Merge branch 'main' into parse_story_structure 2025-04-08 12:27:41 +02:00
Veronica Berglyd Olsen
f3dd4bd8ee Add more linting rules (#2287) 2025-04-07 17:35:20 +02:00
Veronica Berglyd Olsen
72652fecaa Fix linting errors in the utils 2025-04-07 17:21:01 +02:00
Veronica Berglyd Olsen
9b93736985 Fix linting errors in the tests 2025-04-07 17:20:31 +02:00
Veronica Berglyd Olsen
8ed3bd889d Fix linting errors in the main code 2025-04-07 17:18:43 +02:00
Veronica Berglyd Olsen
dab48d43a5 Update linting rules and workflow 2025-04-07 16:52:02 +02:00
Veronica Berglyd Olsen
a760b22341 Update readme 2025-04-07 16:47:22 +02:00
Veronica Berglyd Olsen
e2293e7c1e Add support for reading and caching story keys 2025-04-06 20:00:46 +02:00
Veronica Berglyd Olsen
edc19187f0 Generalise heading comments 2025-04-06 19:13:37 +02:00
Veronica Berglyd Olsen
c5afeda726 Update linting settings (#2282) 2025-04-05 15:32:54 +02:00
Veronica Berglyd Olsen
2975cc7f8f Enable Ruff preview flag 2025-04-05 15:24:23 +02:00
Veronica Berglyd Olsen
4a94a36a1d Update readme 2025-04-04 16:46:33 +02:00
Veronica Berglyd Olsen
cbaa86dc86 Update linting tools and configs (#2281) 2025-04-04 16:42:45 +02:00
Veronica Berglyd Olsen
6a66e06544 Add a couple more rules 2025-04-03 01:27:55 +02:00
Veronica Berglyd Olsen
53a2d0e691 Use Ruff for linting and fix a ton of issues 2025-04-03 01:15:52 +02:00
Veronica Berglyd Olsen
d2796d27c3 Move pytest settings to pyproject.toml 2025-04-02 23:44:58 +02:00
Veronica Berglyd Olsen
89b3529554 Fix Windows launch script for manual usage (#2280) 2025-03-31 20:28:48 +02:00
Veronica Berglyd Olsen
ed22432e82 Remove shebang from Windows launch script (#1284) 2025-03-31 20:23:27 +02:00
Veronica Berglyd Olsen
717887ff7d Add Pyright to syntax workflow and fix errors (#2279) 2025-03-30 23:57:41 +02:00
Veronica Berglyd Olsen
19d01662e5 Update PR template 2025-03-30 23:53:02 +02:00
Veronica Berglyd Olsen
fd802d1a1e Delete commented out test 2025-03-30 23:51:53 +02:00
Veronica Berglyd Olsen
9715955618 Drop aspell dictionary from Linux workflow 2025-03-30 23:49:48 +02:00
Veronica Berglyd Olsen
d0c8227d15 Move spell check testing to the editor 2025-03-30 23:49:19 +02:00
Veronica Berglyd Olsen
01275876c1 Add main requirements for type checking 2025-03-30 23:20:16 +02:00
Veronica Berglyd Olsen
15de0c8dd7 Fix typing errors 2025-03-30 23:17:25 +02:00
Veronica Berglyd Olsen
e8c4f2db25 Add pyright check to workflow 2025-03-30 23:16:47 +02:00
Veronica Berglyd Olsen
b4b19667f4 Add pyright config to project config 2025-03-30 23:15:20 +02:00
Veronica Berglyd Olsen
5934700cea Re-implement Novel View as an item model (#2272) 2025-03-30 23:04:42 +02:00
Veronica Berglyd Olsen
8ef99c4cfa Add test coverage of new modified widget 2025-03-30 22:59:51 +02:00
Veronica Berglyd Olsen
bf4a923b08 Fix type error due to type change in novel selector 2025-03-30 22:45:52 +02:00
Veronica Berglyd Olsen
d1aa576bfd Remove unused nonlocals in tests 2025-03-30 22:37:32 +02:00
Veronica Berglyd Olsen
799b8e24ec Merge branch 'main' into novel_model 2025-03-30 22:37:07 +02:00
Veronica Berglyd Olsen
95bef4c6c2 Add novel view test coverage 2025-03-30 22:28:37 +02:00
Veronica Berglyd Olsen
43c934c9cd Fix typo 2025-03-25 10:37:47 +01:00
Benson Muite
83d1072e6e Grammar improvement 2025-03-25 12:14:26 +03:00
Veronica Berglyd Olsen
1090a160de Add novel model test coverage 2025-03-24 22:17:34 +01:00
Veronica Berglyd Olsen
34a3a6e85c Fix existing tests 2025-03-23 22:37:16 +01:00
Veronica Berglyd Olsen
762efedb96 Merge branch 'main' into novel_model 2025-03-23 17:16:25 +01:00
Veronica Berglyd Olsen
f4999df457 Fix linting and novel view clear 2025-03-23 17:15:49 +01:00
Veronica Berglyd Olsen
4d9c87b019 Improve novel extra data column 2025-03-23 17:01:48 +01:00
Veronica Berglyd Olsen
95d8e3ac98 Add back extra column content 2025-03-23 16:41:40 +01:00
Veronica Berglyd Olsen
9d63a018e8 Add back extra column GUI handling 2025-03-23 00:42:35 +01:00
Veronica Berglyd Olsen
04c6847590 Add some error checking and handling 2025-03-22 22:52:36 +01:00
Veronica Berglyd Olsen
848027856d Allow refreshing a novel model node 2025-03-22 22:37:03 +01:00
Veronica Berglyd Olsen
ef652355bf Refresh model when document heading count changes 2025-03-22 21:10:01 +01:00
Veronica Berglyd Olsen
9990ebf193 Handle novel model refresh scenarios 2025-03-22 20:25:34 +01:00
Veronica Berglyd Olsen
edf765f91f Allow novel model refresh 2025-03-22 16:51:10 +01:00
Veronica Berglyd Olsen
cf42eeeae3 Fix typos 2025-03-22 16:32:52 +01:00
Veronica Berglyd Olsen
e1cd848a77 Fix type and redundant parentheses 2025-03-15 17:26:37 +01:00
Veronica Berglyd Olsen
9831fdbe0f Add required info to bug report template 2025-03-15 17:01:12 +01:00
Veronica Berglyd Olsen
4da120633e Save handle and title key with other data in novel model 2025-02-23 22:34:53 +01:00
Veronica Berglyd Olsen
43e420ab0b Restore novel heading details tooltip and active row colouring 2025-02-22 23:13:57 +01:00
Veronica Berglyd Olsen
71ad7c3229 Re-implement basic novel view functionality 2025-02-22 21:54:24 +01:00
Blayney Walshe
58bbb2be38 removed local config files 2025-02-22 15:22:05 -05:00
Blayney Walshe
02cb9e9090 Update novelwriter/dialogs/projectsettings.py
Co-authored-by: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com>
2025-02-22 15:17:36 -05:00
Blayney Walshe
dc3e801fd2 Merge branch 'main' into project-goals 2025-02-22 14:13:59 -05:00
Blayney Walshe
cfc587569a converted QDate to datetime.date
Added NProgressGoal class to handle goal progress bars.
2025-02-22 14:12:52 -05:00
Veronica Berglyd Olsen
9a63a84fc1 Add a basic model for the novel view 2025-02-22 20:12:50 +01:00
Veronica Berglyd Olsen
bc26d2250e Update index data model (#2255) 2025-02-22 16:07:15 +01:00
Veronica Berglyd Olsen
4e6a26e787 Fix docstring and rename NWIndex to just Index 2025-02-22 15:59:19 +01:00
Veronica Berglyd Olsen
71675ee4a1 Update test coverage 2025-02-22 15:52:47 +01:00
Veronica Berglyd Olsen
3a2440fb92 Add test coverage 2025-02-22 15:07:15 +01:00
Veronica Berglyd Olsen
1fa7e08b17 Move index data classes to a new file 2025-02-22 14:40:48 +01:00
Veronica Berglyd Olsen
655c9d9439 Restructure index, and add support for story structure comments 2025-02-20 23:28:50 +01:00
Blayney Walshe
7e56174b2a added session and project goal with progress bars for each in the status bar 2025-02-20 08:29:26 -05:00
Veronica Berglyd Olsen
05feaf7d2d Move comment processing to a separate file 2025-02-18 15:18:46 +01:00
Veronica Berglyd Olsen
9bae8f762f Merge changes from 2.6.2 and 2.6.3 (#2252) 2025-02-16 21:58:36 +01:00
Veronica Berglyd Olsen
c377e2a26a Fix issues from merge from 2.6.3 2025-02-16 21:54:25 +01:00
Veronica Berglyd Olsen
1f14c55ce0 Merge branch 'release' into from_2.6.3 2025-02-16 21:47:13 +01:00
Veronica Berglyd Olsen
02fda08dab Release 2.6.3 (#2250) 2025-02-16 20:57:13 +01:00
Veronica Berglyd Olsen
bbf18709b3 Clarify changelog 2025-02-16 20:54:10 +01:00
Veronica Berglyd Olsen
76b6759c63 Bump version to 2.6.3 and update changelog 2025-02-16 20:51:05 +01:00
Veronica Berglyd Olsen
c5e0258792 Change context of shape translation strings (#2249) 2025-02-16 20:44:09 +01:00
Veronica Berglyd Olsen
c0bb0fa54a Reduce to only two constant types 2025-02-16 20:40:56 +01:00
Veronica Berglyd Olsen
8b238f3767 Update translation files 2025-02-16 20:23:10 +01:00
Veronica Berglyd Olsen
e9a73ee785 Revert back to using constant as context for shapes 2025-02-16 19:50:02 +01:00
Veronica Berglyd Olsen
3ff4cc462f Fix i18n bug for certain constants (#2247) 2025-02-16 19:25:10 +01:00
Veronica Berglyd Olsen
a6be3f9081 Allow specifying context to trConst i18n function (#2246) 2025-02-16 19:08:00 +01:00
Veronica Berglyd Olsen
cd1c7a3b0b Make a minor change to windows build 2025-02-16 17:21:47 +01:00
Veronica Berglyd Olsen
c13c90488d Release 2.6.2 (#2244) 2025-02-16 17:18:54 +01:00
Veronica Berglyd Olsen
c9d44ccec0 Fix typo in changelog 2025-02-16 17:14:40 +01:00
Veronica Berglyd Olsen
96b3656176 Bump version, update changelog, and update credits 2025-02-16 17:12:58 +01:00
Veronica Berglyd Olsen
d72c84a3d1 Update Italian, Polish and Brazilian Portuguese 2025-02-16 16:58:56 +01:00
Veronica Berglyd Olsen
a0a8ea85c9 Add Czech translation 2025-02-16 16:58:21 +01:00
Veronica Berglyd Olsen
733fba09cb Fix various bugs (#2242) 2025-02-16 16:47:24 +01:00
Veronica Berglyd Olsen
6d9b1f7b36 Make the model parent call a little more robust 2025-02-16 16:44:08 +01:00
Veronica Berglyd Olsen
1431944c49 Add test coverage of root item drop 2025-02-16 16:38:41 +01:00
Veronica Berglyd Olsen
2157dc8a35 Block dropping items on invisible root 2025-02-16 16:33:19 +01:00
Veronica Berglyd Olsen
32feba3d17 Fix typos in changelog 2025-02-16 15:19:39 +01:00
Veronica Berglyd Olsen
ed1b11a932 Restore empty trash from menu (#2239) 2025-02-16 14:20:33 +01:00
Veronica Berglyd Olsen
40a41dbc6b Centre screenshot in readme 2025-02-11 12:58:04 +01:00
Veronica Berglyd Olsen
a8416542c1 Add screenshot to readme 2025-02-11 12:55:55 +01:00
Veronica Berglyd Olsen
0c2c952637 Merge bug fix from release 2025-02-09 15:22:20 +01:00
Veronica Berglyd Olsen
c6991b36b8 Fix bug in splitting on alt scene headings (#2234) 2025-02-09 15:19:09 +01:00
Veronica Berglyd Olsen
ec8a6b9925 Clean up variables 2025-02-09 15:14:28 +01:00
Veronica Berglyd Olsen
d4d258e170 Fix document splitter not recognising alt scene format (#2233) 2025-02-09 15:11:07 +01:00
Veronica Berglyd Olsen
bf8f6f0dd8 Fix cursor width text in preferences 2025-02-06 22:16:16 +01:00
Veronica Berglyd Olsen
585f2e567b Reorganise preferences and add cursor width setting (#2230) 2025-02-06 21:55:41 +01:00
Veronica Berglyd Olsen
598667826f Add a setting for cursor width (#2219) 2025-02-06 17:24:57 +01:00
Veronica Berglyd Olsen
aa84d998a0 Move project tree preferences to their own section 2025-02-06 17:24:31 +01:00
Veronica Berglyd Olsen
6d82d10883 Add build job 2025-02-05 16:43:37 +01:00
Veronica Berglyd Olsen
c1598bccf9 Remove old appdata.xml template 2025-02-05 16:37:52 +01:00
Veronica Berglyd Olsen
43d0e0a5fd Merge branch 'main' into flatpak 2025-02-05 16:33:51 +01:00
Veronica Berglyd Olsen
589bc7c313 Update Appdata XML and add screenshot (#2229) 2025-02-05 15:31:56 +00:00
Veronica Berglyd Olsen
08c4aea1b2 Move build to utils folder 2025-02-05 14:46:22 +01:00
Veronica Berglyd Olsen
535012f8b0 Merge remote-tracking branch 'ryex/add-flatpak' into flatpak 2025-02-05 14:11:04 +01:00
Veronica Berglyd Olsen
85b953bbec Add support for log colour env variables (#2228) 2025-02-04 20:50:23 +01:00
Veronica Berglyd Olsen
f1fc95d82d Simplify log colour handling 2025-02-04 20:45:18 +01:00
Veronica Berglyd Olsen
706c61c550 Add more single character switches 2025-02-04 20:16:47 +01:00
Veronica Berglyd Olsen
a931fe5cfd Add support for NO_COLOR and FORCE_COLOR 2025-02-04 20:14:13 +01:00
Veronica Berglyd Olsen
67a2f634c1 Update build scripts for i18n docs (#2227) 2025-02-04 16:43:06 +01:00
Veronica Berglyd Olsen
ceec883d93 Bump version to 2.7 Alpha 3 2025-02-04 16:36:28 +01:00
Veronica Berglyd Olsen
e8d548b24e Fix build scripts and add i18n docs 2025-02-04 16:36:12 +01:00
Veronica Berglyd Olsen
99db1a1c3a Add French translation files for the docs (#2226) 2025-02-03 23:42:33 +01:00
jim on linux
9f9438f20b First commit for french .po files.
Change french translator author.
2025-02-03 22:37:53 +01:00
Veronica Berglyd Olsen
52f1c3156b Add internationalisation support for docs (#2224) 2025-02-03 20:05:19 +01:00
Veronica Berglyd Olsen
dd61836a35 Use full language code for manual file 2025-02-03 01:03:17 +01:00
Veronica Berglyd Olsen
18f7280cf2 Only build specified docs languages 2025-02-03 00:27:11 +01:00
Veronica Berglyd Olsen
85af7d7f03 Add docs i18n build script 2025-02-03 00:24:27 +01:00
Veronica Berglyd Olsen
b0169067be Add utils entry to generate docs i18n source files 2025-02-02 23:34:04 +01:00
Veronica Berglyd Olsen
92cd4e0169 Add i18n settings to docs config and change the documentation title to pull it from the main index file 2025-02-02 23:10:40 +01:00
Veronica Berglyd Olsen
4cbbe5f2e3 Move docs requirements to docs root folder 2025-02-02 21:34:43 +01:00
Veronica Berglyd Olsen
a87e8289f7 Merge 2.6.1 release into main 2025-02-02 18:54:08 +01:00
Veronica Berglyd Olsen
2401fc2531 Relase 2.6.1 (#2221) 2025-02-02 18:12:19 +01:00
Veronica Berglyd Olsen
d0ea15c03b Bump version to 2.6.1 and update changelog 2025-02-02 18:05:11 +01:00
Veronica Berglyd Olsen
7adf0251e0 Update i18n for 2.6.1 (#2214) 2025-02-02 17:45:12 +01:00
Veronica Berglyd Olsen
2e3beaf8ed Merge branch 'release' into update_i18n 2025-02-02 17:42:37 +01:00
Veronica Berglyd Olsen
df6e57760f Add French PDF manual (#2220) 2025-02-02 17:34:09 +01:00
Veronica Berglyd Olsen
868af2d5f3 Fix tests 2025-02-02 17:27:08 +01:00
Veronica Berglyd Olsen
1c6625ec2b Add French manual and add local manual detection in Config 2025-02-02 17:26:57 +01:00
Veronica Berglyd Olsen
9e40676c16 Update JP 2025-02-01 16:03:08 +01:00
Veronica Berglyd Olsen
6e821910b7 Update DE and ES-419 2025-01-31 00:04:55 +01:00
Veronica Berglyd Olsen
d5b025cf41 Update FR, ES-419, NB-NO and EN-US 2025-01-31 00:04:54 +01:00
Veronica Berglyd Olsen
7adc36eecb Track recent projects via UUID (#2218) 2025-01-31 00:03:19 +01:00
Veronica Berglyd Olsen
247702babe Don't break recent projects file compatibility 2025-01-30 23:59:02 +01:00
Veronica Berglyd Olsen
dcc25dac31 Update tests 2025-01-30 23:11:21 +01:00
Veronica Berglyd Olsen
f686ec6a5a Save recent projects by their ID instead of path (#2217) 2025-01-30 23:11:10 +01:00
Veronica Berglyd Olsen
f10328803c Fix issue with "create note from tag" (#2215) 2025-01-30 17:40:36 +01:00
Veronica Berglyd Olsen
8da56e56c1 Remove unused flags and debug print 2025-01-30 17:33:43 +01:00
Veronica Berglyd Olsen
f83e9d8c87 Drop the trinary enum 2025-01-30 17:28:39 +01:00
Veronica Berglyd Olsen
9532be585b Don't show create note for tag option for story and mention keywords (#2212) 2025-01-30 17:28:18 +01:00
Veronica Berglyd Olsen
3509374f25 Allow to disable ask on exit (#2213) 2025-01-29 18:29:25 +01:00
Veronica Berglyd Olsen
1a96441bbd Add help text to ask before exit setting 2025-01-29 18:24:38 +01:00
Veronica Berglyd Olsen
fd4fa68553 Add ask before exit setting in Preferences 2025-01-29 18:17:50 +01:00
Veronica Berglyd Olsen
36d8ad4d8c Add a flag to disable asking before exit 2025-01-29 18:17:32 +01:00
Veronica Berglyd Olsen
c1b35b6672 Merge release 2.6 into main 2025-01-26 20:50:58 +01:00
Veronica Berglyd Olsen
448057edf6 Release 2.6 (#2208) 2025-01-26 20:05:33 +01:00
Veronica Berglyd Olsen
9d993b2992 Fix typo in changelog 2025-01-26 20:05:03 +01:00
Veronica Berglyd Olsen
8ca13f6e08 Update changelog with last changes 2025-01-26 20:01:34 +01:00
Veronica Berglyd Olsen
80fc4c9538 Merge branch 'release' into release_2.6 2025-01-26 19:56:51 +01:00
Veronica Berglyd Olsen
9f8867c1b4 Update i18n for 2.6 final (#2207) 2025-01-26 19:56:32 +01:00
Veronica Berglyd Olsen
481ce883ab Update Italian translation 2025-01-26 18:36:25 +01:00
Veronica Berglyd Olsen
63f184dd60 Update Codecov action to v5 2025-01-26 18:34:44 +01:00
Veronica Berglyd Olsen
3d4d9ed111 Merge branch 'release' into i18n 2025-01-26 18:31:21 +01:00
Veronica Berglyd Olsen
b2ba932735 Update docs for 2.6 (#2210) 2025-01-26 18:31:00 +01:00
Veronica Berglyd Olsen
8c1070b318 Disable flaky test on Windows 2025-01-26 18:26:45 +01:00
Veronica Berglyd Olsen
6c4d8f3ede Update tests with change of default config 2025-01-26 18:19:12 +01:00
Veronica Berglyd Olsen
f2c118776a Update the project sections of the docs to 2.6 2025-01-26 18:15:36 +01:00
Veronica Berglyd Olsen
87890dd249 Update the Introduction section of the docs to 2.6 2025-01-26 16:17:56 +01:00
Veronica Berglyd Olsen
15301c9121 Bump version and update changelog 2025-01-25 22:00:14 +01:00
Veronica Berglyd Olsen
8dc4b661d8 Update final translations for de, en, ja, nb and pl 2025-01-25 21:43:41 +01:00
Veronica Berglyd Olsen
d47ec4157d Update completed translations before #2206 2025-01-25 21:41:44 +01:00
Veronica Berglyd Olsen
9d64a59b70 Update project translations 2025-01-25 21:38:59 +01:00
Veronica Berglyd Olsen
234fc20048 Change chapter heading level to H1 (#2206) 2025-01-25 21:36:13 +01:00
Veronica Berglyd Olsen
8432dfdd1f Extend ODT and DocX tests 2025-01-25 21:18:30 +01:00
Veronica Berglyd Olsen
5fddfd395e Update HTML output 2025-01-25 21:06:20 +01:00
Veronica Berglyd Olsen
11d0e4220f Use alternative level 1 format for titles and partitions for markdown 2025-01-25 20:51:24 +01:00
Veronica Berglyd Olsen
6d4e066810 Update other tests 2025-01-25 16:17:31 +01:00
Veronica Berglyd Olsen
9f1274f953 Update ODT and DocX to work with new chapter headers 2025-01-25 16:17:19 +01:00
Veronica Berglyd Olsen
9ac1692e2a Drop separate types for chapters, scenes and sections as they seem to not be needed 2025-01-25 16:11:57 +01:00
Veronica Berglyd Olsen
6f88357977 Update QTextDocument to work with new chapter headers 2025-01-25 15:35:02 +01:00
Veronica Berglyd Olsen
19bdbf9aca Update build settings margin labels 2025-01-25 15:26:25 +01:00
Veronica Berglyd Olsen
5a25d34ba3 Update HTML to work with new chapter headers 2025-01-25 15:05:11 +01:00
Veronica Berglyd Olsen
13e6199af2 Separate ordinary headers and novel headers in the Tokenizer 2025-01-25 14:58:06 +01:00
Veronica Berglyd Olsen
9e2310fdf3 Qt6 theming changes and editor search issue fixes (#2204) 2025-01-22 22:52:59 +01:00
Veronica Berglyd Olsen
47ffc83c73 Use error text colour instead for editor search box 2025-01-22 22:43:38 +01:00
Veronica Berglyd Olsen
7c3eb16800 Be even more specific on what widget to return focus to after searching next document 2025-01-22 22:30:02 +01:00
Veronica Berglyd Olsen
a8116a0fd9 Fix focus after search goes to next document 2025-01-22 22:20:46 +01:00
Veronica Berglyd Olsen
34645be975 Remove redundant cssCol helper 2025-01-22 21:52:50 +01:00
Veronica Berglyd Olsen
eb34a32760 Clean up background colours in editor and sidebar 2025-01-22 21:52:26 +01:00
Veronica Berglyd Olsen
5dee5ecefe Make trees/search consistent again using background role setter 2025-01-22 21:27:09 +01:00
Veronica Berglyd Olsen
f6edda3f97 Fix theme update for search widget 2025-01-22 21:16:46 +01:00
Veronica Berglyd Olsen
0f0b667fb8 Theme updates (#2203) 2025-01-22 20:01:26 +01:00
Veronica Berglyd Olsen
2735f30eab Fix side panel header margins 2025-01-22 17:01:20 +01:00
Veronica Berglyd Olsen
033bccf242 Update icons themes 2025-01-22 16:41:07 +01:00
Veronica Berglyd Olsen
93104d6a65 Separate sidebar icons from other icons 2025-01-22 16:40:54 +01:00
Veronica Berglyd Olsen
7e7bff9d06 Merge branch 'release' 2025-01-22 11:22:55 +01:00
Veronica Berglyd Olsen
5be1e2c954 Make some minor code and GUI fixes (#2202) 2025-01-22 01:05:28 +01:00
Veronica Berglyd Olsen
306bd245fc Block tree context menu in blank area 2025-01-22 00:58:55 +01:00
Veronica Berglyd Olsen
7e42d04e36 Drop deleteLater for context menus 2025-01-22 00:53:18 +01:00
Veronica Berglyd Olsen
53dfdb3a2e Fix potential undefined variable in editor 2025-01-22 00:48:59 +01:00
Veronica Berglyd Olsen
eb113a8928 Make sure status label in item details panel can wrap 2025-01-22 00:48:03 +01:00
Veronica Berglyd Olsen
ca046d8016 Editor code cleanup, and a few other places (#2201) 2025-01-22 00:46:51 +01:00
Veronica Berglyd Olsen
23398f2f8a Use Color and Colour consistently in the code 2025-01-22 00:42:45 +01:00
Veronica Berglyd Olsen
41a32b4fe9 Make sure status labels can wrap in item details panel 2025-01-22 00:36:06 +01:00
Veronica Berglyd Olsen
49e3403d69 Remove deleteLater calls that can be replaced by setParent(None) 2025-01-22 00:35:53 +01:00
Veronica Berglyd Olsen
5b840ada83 Make some improvements to the doc editor code 2025-01-22 00:35:01 +01:00
Veronica Berglyd Olsen
3672ae8be6 Windows launcher, attempt 2 (#2199) 2025-01-21 00:02:32 +01:00
Veronica Berglyd Olsen
d39d33c6cc Update signed windows launcher 2025-01-20 23:48:52 +01:00
Veronica Berglyd Olsen
d9424d0362 Bump launcher version 2025-01-20 23:46:36 +01:00
Veronica Berglyd Olsen
bcd7f8350b Add C redistributable to root of novelwriter install 2025-01-20 23:43:31 +01:00
Veronica Berglyd Olsen
4ec276642a Rewrite Windows launcher as a GUI exe 2025-01-20 23:33:46 +01:00
Veronica Berglyd Olsen
15cbc8d4fe Release 2.7 Alpha 2 (#2198) 2025-01-20 22:22:07 +01:00
Veronica Berglyd Olsen
b4672759f8 Make some minor improvements to the main init file 2025-01-20 22:19:24 +01:00
Veronica Berglyd Olsen
8e4127fbb1 Update release date and make some minor changes to Windows launcher 2025-01-20 22:18:54 +01:00
Veronica Berglyd Olsen
2621e0cf1b Update windows launcher exe 2025-01-18 15:21:30 +01:00
Veronica Berglyd Olsen
ce0f05a53a Bump launcher version 2025-01-18 15:19:27 +01:00
Veronica Berglyd Olsen
fe0d316ff6 Bump version to 2.7 Alpha 2 2025-01-18 15:16:56 +01:00
Veronica Berglyd Olsen
30be5a3746 Fix minor issue in Windows launcher 2025-01-18 15:16:11 +01:00
Veronica Berglyd Olsen
b64bd382ce Add a Windows exe launcher (#2197) 2025-01-18 15:04:22 +01:00
Veronica Berglyd Olsen
707427cde4 Remove Unicode character 2025-01-18 15:00:23 +01:00
Veronica Berglyd Olsen
7a52d32af9 Fix bug in windows installer build script 2025-01-18 14:56:40 +01:00
Veronica Berglyd Olsen
d2e208ef26 Split launcher and installer build, and add launcher exe 2025-01-18 14:29:42 +01:00
Veronica Berglyd Olsen
b6778128da Update installer build definitions 2025-01-18 14:21:38 +01:00
Veronica Berglyd Olsen
4e86693a97 Fix launcher path 2025-01-18 13:49:09 +01:00
Veronica Berglyd Olsen
567d61a8ea Add make script and update build job 2025-01-18 13:44:08 +01:00
Veronica Berglyd Olsen
d97b985d1c Move windows launcher source to the setup folder 2025-01-18 12:56:38 +01:00
Veronica Berglyd Olsen
6905653bdd Add file info to windows launcher resource file 2025-01-18 12:46:20 +01:00
Veronica Berglyd Olsen
a89058ab6c Add license header 2025-01-18 02:06:18 +01:00
Veronica Berglyd Olsen
296b18ba5f Add a minimal launcher for novelWriter on Windows 2025-01-18 01:19:47 +01:00
Veronica Berglyd Olsen
f548df2e64 Clean up pkgutils and update Windows installer (#2196) 2025-01-16 22:23:32 +01:00
Veronica Berglyd Olsen
d7730e9b04 Clean up function names a little 2025-01-16 22:19:58 +01:00
Veronica Berglyd Olsen
aabc21d611 Clean up some more files for Windows build 2025-01-16 22:10:22 +01:00
Veronica Berglyd Olsen
9c04899df5 Fix failing test due to config init change 2025-01-16 21:46:22 +01:00
Veronica Berglyd Olsen
0380a7fe72 Make sure the pkgutils script has no third party dependencies by default 2025-01-16 21:40:20 +01:00
Veronica Berglyd Olsen
0306701e6f Move asset builder functions 2025-01-16 21:32:56 +01:00
Veronica Berglyd Olsen
3ef790fbe3 Move AppImage builder functions 2025-01-16 21:27:39 +01:00
Veronica Berglyd Olsen
c8410e8527 Rename build utils 2025-01-16 21:22:07 +01:00
Veronica Berglyd Olsen
4bc17d42e3 Drop XDG functions 2025-01-16 21:20:38 +01:00
Veronica Berglyd Olsen
9332bd882c Move debian builder functions 2025-01-16 21:20:10 +01:00
Veronica Berglyd Olsen
ca70da2c28 Move common functions 2025-01-16 21:13:28 +01:00
Veronica Berglyd Olsen
767c22f348 Move and update Windows build for Qt6 2025-01-16 21:03:00 +01:00
Veronica Berglyd Olsen
931863d4ee Build binary on linux 2025-01-16 19:55:50 +01:00
Veronica Berglyd Olsen
b9602da177 Restructure icon theme builder 2025-01-16 19:26:04 +01:00
Veronica Berglyd Olsen
eb419fc4e0 Update Debian and Ubuntu builds (#2191) 2025-01-16 11:12:29 +01:00
Veronica Berglyd Olsen
cd8da61977 Update various Qt 5 references and links 2025-01-16 00:38:10 +01:00
Veronica Berglyd Olsen
9388ea12f9 Update Launchpad build 2025-01-16 00:23:14 +01:00
Veronica Berglyd Olsen
4b30ce0f39 Set package requirements to Qt 6.4 2025-01-15 23:51:27 +01:00
Veronica Berglyd Olsen
c760a22cfa Bump version to 2.7 Alpha 1 2025-01-15 23:38:34 +01:00
Veronica Berglyd Olsen
9de55ca286 Merge branch 'release' 2025-01-15 23:23:24 +01:00
Veronica Berglyd Olsen
a20508b83d Fix a few minor issues with the new icon themes, and Qt6 theme support (#2190) 2025-01-15 23:20:16 +01:00
Veronica Berglyd Olsen
167a4baa46 Improve painter on custom switch 2025-01-15 23:16:06 +01:00
Veronica Berglyd Olsen
ef8a54c49c Tune the other themes a little and remove no longer used colours 2025-01-15 23:12:12 +01:00
Veronica Berglyd Olsen
5274344237 Correct wrong colours in solarized themes 2025-01-15 23:07:37 +01:00
Veronica Berglyd Olsen
f3f7133961 Remove status led colours in theme and use icon colours instead 2025-01-15 23:06:36 +01:00
Veronica Berglyd Olsen
c369ef450f Fix add dicitonary tool (#2189) 2025-01-15 20:56:08 +01:00
Veronica Berglyd Olsen
6674cf99a6 Update spell check dictionary download links 2025-01-15 20:28:53 +01:00
Veronica Berglyd Olsen
785322e577 Add handling of user icon themes and account for missing theme 2025-01-15 20:24:01 +01:00
Veronica Berglyd Olsen
d44a5e57b2 Make sure theme shades are not all black 2025-01-15 20:23:21 +01:00
Veronica Berglyd Olsen
58a0799c8e Clean up after switching to Qt6 (#2187) 2025-01-14 22:51:52 +01:00
Veronica Berglyd Olsen
0b7c31b6a9 Fix warnings in tests 2025-01-13 19:43:04 +01:00
Veronica Berglyd Olsen
72ed5d84f6 Fix minor issues 2025-01-13 19:42:48 +01:00
Veronica Berglyd Olsen
7e280b2371 Clean up warnings and deprecations in gui tools 2025-01-13 02:53:55 +01:00
Veronica Berglyd Olsen
5027b8df19 Clean up warnings and deprecations in gui components 2025-01-13 02:21:56 +01:00
Veronica Berglyd Olsen
a60e0b3c87 Clean up warnings and deprecations in extensions and formats 2025-01-13 00:38:50 +01:00
Veronica Berglyd Olsen
ca2943775d Clean up warnings and deprecations in base and dialogs 2025-01-12 23:59:09 +01:00
Veronica Berglyd Olsen
717ade24e3 Remove scaling and add slots to main config class 2025-01-12 23:30:27 +01:00
Veronica Berglyd Olsen
0728b35735 Drop the custom data class decorator for now, since it is not performance relevant 2025-01-12 22:23:20 +01:00
Veronica Berglyd Olsen
e7a0803ca4 Switch to Qt6 (#2184) 2025-01-12 19:40:34 +01:00
Veronica Berglyd Olsen
b83d7ca2cc Fix theme test 2025-01-12 19:36:47 +01:00
Veronica Berglyd Olsen
1878adf78c Use data classes for theme values 2025-01-12 19:31:30 +01:00
Veronica Berglyd Olsen
4c2185fa1e Add custom data class decorator that uses slots 2025-01-12 19:30:11 +01:00
Veronica Berglyd Olsen
fe064c9d99 Move handling of theme meta data 2025-01-12 17:31:11 +01:00
Veronica Berglyd Olsen
029ac58a75 Complete GUI theme colour handling to match Qt's own 2025-01-12 17:30:46 +01:00
Veronica Berglyd Olsen
60130f067b Remove computed GUI scaling 2025-01-12 15:39:10 +01:00
Veronica Berglyd Olsen
a1d94d63a3 Remove main app testmode flag 2025-01-12 03:16:52 +01:00
Veronica Berglyd Olsen
27a0a47aaa Fix custom theme handling for Qt6 2025-01-11 23:55:08 +01:00
Veronica Berglyd Olsen
ff7446a2ef Update references to Qt5 and PyQt5 2025-01-11 21:55:26 +01:00
Veronica Berglyd Olsen
1307fccc59 Fix some minor GUI issues 2025-01-11 21:42:37 +01:00
Veronica Berglyd Olsen
86f210cfbf Fix duplicate tests issue 2025-01-11 20:55:09 +01:00
Veronica Berglyd Olsen
da036efdcf Switch test code to PyQt6 2025-01-11 20:36:42 +01:00
Veronica Berglyd Olsen
40c4e74d48 Switch app code to PyQt6 2025-01-11 20:15:32 +01:00
Veronica Berglyd Olsen
3ec210df9b Drop Python 3.9 (#2182) 2025-01-11 19:02:08 +01:00
Veronica Berglyd Olsen
cfb93924b0 Fix one more import blocker 2025-01-11 18:58:58 +01:00
Veronica Berglyd Olsen
98db7db2b1 Remove code excluded due to Python 3.9 2025-01-11 18:53:51 +01:00
Veronica Berglyd Olsen
31c58c29d5 Remove references to Python 3.9 2025-01-11 18:53:28 +01:00
Veronica Berglyd Olsen
859211fb6d Merge fixes from release branch 2025-01-11 18:45:05 +01:00
Veronica Berglyd Olsen
70cca405f5 Make sure selection model exists before accessing (#2181) 2025-01-11 18:43:47 +01:00
Veronica Berglyd Olsen
d7d211baf2 Fix empty selection model bug (#2173) 2025-01-11 18:39:23 +01:00
Veronica Berglyd Olsen
30429fac58 Fix bug in theme update in outline view (#2178) 2025-01-11 18:38:38 +01:00
Veronica Berglyd Olsen
d5a35fa86f Fix novel selector bug (#2179) 2025-01-11 18:37:06 +01:00
Veronica Berglyd Olsen
dc265e57f3 Store previous selection before clear in novel selector widget 2025-01-11 18:30:53 +01:00
Veronica Berglyd Olsen
bff341db60 Fix theme update in outline view 2025-01-11 18:23:14 +01:00
Veronica Berglyd Olsen
92b6ed2e9e Improve icon colouring after feedback (#2177) 2025-01-11 17:58:31 +01:00
Veronica Berglyd Olsen
84b0553797 Fix a couple of mistakes in theme files 2025-01-11 02:18:20 +01:00
Veronica Berglyd Olsen
d9a9f39556 Change some of the Remix icons 2025-01-11 02:14:49 +01:00
Veronica Berglyd Olsen
66c6fa5590 Tone down the default icon colour a little from the text colour 2025-01-11 02:11:53 +01:00
Veronica Berglyd Olsen
31ea53135f Make the faded colour available as an override colour 2025-01-11 01:01:09 +01:00
Veronica Berglyd Olsen
fce18689b7 Add a faded icon colour 2025-01-11 00:56:16 +01:00
Veronica Berglyd Olsen
5bf113de23 Add a setting to keep theme colours on documents when using override 2025-01-11 00:48:09 +01:00
Veronica Berglyd Olsen
c3c24d5533 Remove colour from the non-checkable icon for active/inactive 2025-01-11 00:30:50 +01:00
Veronica Berglyd Olsen
a54a5b3d55 Add Remix Icon and Font Awesome themes (#2174) 2025-01-10 19:09:44 +01:00
Veronica Berglyd Olsen
1e8b33a74f Add credits and license info 2025-01-10 19:04:40 +01:00
Veronica Berglyd Olsen
22fe8f1d12 Update other themes with renamed icon keys 2025-01-10 18:50:19 +01:00
Veronica Berglyd Olsen
fbcf185c13 Add Remix Icon themes 2025-01-10 18:49:23 +01:00
Veronica Berglyd Olsen
586370188b Add Font Awesome icons 2025-01-10 17:40:16 +01:00
Veronica Berglyd Olsen
723cba5b56 Separate out icons for sidebar 2025-01-10 17:40:02 +01:00
Veronica Berglyd Olsen
ec1047207c Restructure how icon themes are generated 2025-01-10 17:39:20 +01:00
Veronica Berglyd Olsen
daa916a0c4 Replace icons with Material Symbols (#2171) 2025-01-10 12:43:58 +01:00
Veronica Berglyd Olsen
591a17eb19 Update license info 2025-01-10 12:30:28 +01:00
Veronica Berglyd Olsen
acca753a77 Fix view panel theme update 2025-01-10 12:22:05 +01:00
Veronica Berglyd Olsen
9e9c24d8c0 Drop lxml, it's not needed 2025-01-10 03:01:25 +01:00
Veronica Berglyd Olsen
c3fc1d4e5a Update tests 2025-01-10 02:24:24 +01:00
Veronica Berglyd Olsen
894c48b5b0 Merge branch 'main' into material_icons 2025-01-10 01:59:49 +01:00
Veronica Berglyd Olsen
5503db376a Move main to 2.7 Alpha 0 2025-01-10 01:58:50 +01:00
Veronica Berglyd Olsen
4b79b2bd57 Fix i18n sources (#2169) 2025-01-10 01:06:24 +01:00
Veronica Berglyd Olsen
80c9e54a9a Update translation files 2025-01-10 01:00:16 +01:00
Veronica Berglyd Olsen
eba0b607a4 Fix translation issues 2025-01-10 00:59:53 +01:00
Veronica Berglyd Olsen
04464a2798 Separate some constants due to duplicate words 2025-01-09 23:51:29 +01:00
Veronica Berglyd Olsen
202b5192ed Release 2.6 RC 1 (#2168) 2025-01-09 23:07:24 +01:00
Veronica Berglyd Olsen
62397225f9 Update translations 2025-01-09 22:58:28 +01:00
Veronica Berglyd Olsen
b220fffd6f Bump version to 2.6 RC 1 and update changelog 2025-01-09 22:54:19 +01:00
Veronica Berglyd Olsen
e14f7881a3 Fix search panel theme update bug (#2167) 2025-01-09 22:42:47 +01:00
Veronica Berglyd Olsen
2085fbe107 Drop the wrapper widget for the search tool header (#2162) 2025-01-09 22:36:11 +01:00
Veronica Berglyd Olsen
31a75f044e Fix minor issues with some constants (#2166) 2025-01-09 22:27:08 +01:00
Veronica Berglyd Olsen
5b74125fcd Merge branch 'main' into minor_fixes 2025-01-09 22:22:39 +01:00
Veronica Berglyd Olsen
1cf3cfcf77 Fix typo in constant 2025-01-09 22:15:33 +01:00
Veronica Berglyd Olsen
defaf6c1ee Fix constant in error handler 2025-01-09 22:15:20 +01:00
Veronica Berglyd Olsen
a6fde426a7 Add override settings for project tree icon colours 2025-01-08 22:22:53 +01:00
Veronica Berglyd Olsen
a0fea3c025 Separate project tree icons from the rest 2025-01-08 22:22:09 +01:00
Veronica Berglyd Olsen
5650792be8 Add icon theme selector to Preferences 2025-01-08 02:09:22 +01:00
Veronica Berglyd Olsen
24eb99cdaa Change the material icons a little 2025-01-08 02:09:04 +01:00
Veronica Berglyd Olsen
c571d701ac Remove old icon themes 2025-01-08 01:17:47 +01:00
Veronica Berglyd Olsen
f4bdf3be71 Fix a few remaining issues with icon refresh 2025-01-08 01:16:31 +01:00
Veronica Berglyd Olsen
553958b952 Fix decoration loading 2025-01-08 00:57:01 +01:00
Veronica Berglyd Olsen
fa046897dc Fix a few icons and add icon theme setting 2025-01-08 00:21:08 +01:00
Veronica Berglyd Olsen
5cc29a7605 Update icons files 2025-01-08 00:20:31 +01:00
Veronica Berglyd Olsen
b97844512a Update icons in the GUI 2025-01-07 19:19:11 +01:00
Veronica Berglyd Olsen
8a671dee59 Add some icon themes 2025-01-07 19:16:56 +01:00
Veronica Berglyd Olsen
486b6a19d2 Add script to generate theme icon files 2025-01-07 17:57:02 +01:00
Veronica Berglyd Olsen
fafd088751 Set theme icon colours 2025-01-07 17:56:41 +01:00
Veronica Berglyd Olsen
e66288b4de Add basic support for loading icons from a single file 2025-01-07 17:55:49 +01:00
Veronica Berglyd Olsen
e0f467fa10 Fix minor bug from in editor counter (#2157) 2025-01-04 01:42:21 +01:00
Veronica Berglyd Olsen
362da679b6 Fix minor issue introduced by selection counter update 2025-01-04 01:38:06 +01:00
Veronica Berglyd Olsen
0b35bcfc3b Fix minor issue with editor word counter (#2156) 2025-01-03 23:47:24 +01:00
Veronica Berglyd Olsen
fad162c6c1 Give selection counter priority in editor footer (#2155) 2025-01-03 23:42:41 +01:00
Veronica Berglyd Olsen
97fc64fcae Update copyright (#2154) 2025-01-03 12:02:48 +00:00
Veronica Berglyd Olsen
5224234637 Make sure imported status labels are saved (#2153) 2024-12-31 01:05:38 +01:00
Veronica Berglyd Olsen
b4f1d0ec77 Fix bug in status label import 2024-12-31 00:59:25 +01:00
Veronica Berglyd Olsen
5911c43b5b Add Import/export of status labels (#2152) 2024-12-31 00:40:52 +01:00
Veronica Berglyd Olsen
4f137466c5 Fix test for Windows 2024-12-31 00:38:02 +01:00
Veronica Berglyd Olsen
3836a2a56c Fix column stretch setting 2024-12-31 00:35:52 +01:00
Veronica Berglyd Olsen
49e59d74cc Update tests 2024-12-31 00:28:42 +01:00
Veronica Berglyd Olsen
9461eea03a Add import/export for status labels 2024-12-31 00:14:47 +01:00
Veronica Berglyd Olsen
136939d391 Make some general import/export functionality improvements 2024-12-31 00:14:25 +01:00
Veronica Berglyd Olsen
33aea82e6e Remove "Apply" buttons in Project Settings (#2151) 2024-12-30 17:00:18 +01:00
Veronica Berglyd Olsen
4a6511b39f Add some minor code cleanup 2024-12-30 16:55:54 +01:00
Veronica Berglyd Olsen
6448f05557 Also remove apply button from auto-replace settings 2024-12-30 16:50:34 +01:00
Veronica Berglyd Olsen
c08eca7c3b Update test 2024-12-30 16:39:44 +01:00
Veronica Berglyd Olsen
df6ca2e17b Drop the status/importance Apply button (#2150) 2024-12-30 16:34:54 +01:00
Veronica Berglyd Olsen
c39a5f9708 Hide session timer (#2149) 2024-12-29 18:02:17 +01:00
Veronica Berglyd Olsen
46d69c31d1 Update docs 2024-12-29 17:43:54 +01:00
Veronica Berglyd Olsen
e924d121bf Update tests 2024-12-29 17:38:21 +01:00
Veronica Berglyd Olsen
2fa1dcccac Use correct signal naming 2024-12-29 17:38:03 +01:00
Veronica Berglyd Olsen
dc9413fa7e Show or hide the status bar timer when it is clicked 2024-12-29 17:30:03 +01:00
Veronica Berglyd Olsen
1b34bc30c7 Add a modified label widget that emits a click signal 2024-12-29 17:29:07 +01:00
Veronica Berglyd Olsen
4d33f087df Fix project tree status/importance for folders (#2147) 2024-12-29 16:33:38 +01:00
Veronica Berglyd Olsen
81a4d5fadb Fix wrong check type for single item status label chang (#2145) 2024-12-29 16:15:56 +01:00
Veronica Berglyd Olsen
7682ae0425 Update MacOS DMG build (#2141) 2024-12-23 15:57:46 +01:00
Veronica Berglyd Olsen
677274adb3 Try a different MacOS image 2024-12-23 15:37:28 +01:00
Veronica Berglyd Olsen
83fca9fd94 Release 2.6 Beta 2 (#2139) 2024-12-23 15:06:51 +01:00
Veronica Berglyd Olsen
4150a9740b Bump version and update changelog 2024-12-23 15:00:01 +01:00
Veronica Berglyd Olsen
f7021559d0 Refactor quoted dialogue detection (#2138) 2024-12-23 14:23:53 +01:00
Veronica Berglyd Olsen
00d4c550f1 Update tests 2024-12-23 14:20:02 +01:00
Veronica Berglyd Olsen
97903993c8 Restructure dialogue detection from quotes 2024-12-23 14:19:47 +01:00
Veronica Berglyd Olsen
3d858ed9ab Remove boundary condition in quote dialogue highlighting in most cases (#2131) 2024-12-09 00:23:48 +01:00
Veronica Berglyd Olsen
cc5cd50065 Improve editor auto-replace (#2132) 2024-12-05 23:41:22 +01:00
Veronica Berglyd Olsen
0c0d909dcb Remove debug code 2024-12-05 23:34:12 +01:00
Veronica Berglyd Olsen
8dafaa13c0 Use slots for some of the often called attributes in the editor 2024-12-05 23:01:17 +01:00
Veronica Berglyd Olsen
05385ba73b Improve the text auto-replace class 2024-12-05 22:57:43 +01:00
Veronica Berglyd Olsen
924a2c3381 Move editor auto-replace to a separate class 2024-12-05 22:40:15 +01:00
Veronica Berglyd Olsen
6502c424e2 Align headers to bottom of page margin for ODT and DocX (#2128) 2024-11-29 12:52:50 +01:00
Veronica Berglyd Olsen
243124a4ba Update tests 2024-11-29 00:41:15 +01:00
Veronica Berglyd Olsen
4a2a14bc05 Make header margins similar in ODT and DocX files (#2120) 2024-11-29 00:40:45 +01:00
Veronica Berglyd Olsen
976328c9dc Fix font style and PDF issues (#2122) 2024-11-27 22:59:20 +01:00
Veronica Berglyd Olsen
3b0086e75e Use a frame for page break marker in manuscript preview 2024-11-26 23:56:31 +01:00
Veronica Berglyd Olsen
7c38a748b6 Merge branch 'main' into font_styles 2024-11-26 22:58:32 +01:00
Veronica Berglyd Olsen
4d98689304 Merge release 2.5.3 2024-11-26 22:57:51 +01:00
Veronica Berglyd Olsen
bcac05ca20 Only use 1200 DPI for scalable fonts 2024-11-26 21:42:54 +01:00
Veronica Berglyd Olsen
07c61450c7 Try forcing resolution for PDF printer 2024-11-26 18:57:07 +01:00
Veronica Berglyd Olsen
43d95462e0 Optimise a few details and add some tests 2024-11-26 17:07:02 +01:00
Veronica Berglyd Olsen
c091e0b9bb Apply the font matcher closer to config read 2024-11-26 17:06:34 +01:00
Veronica Berglyd Olsen
18c70ffe3e Allow setting resolution for ToQTextDocument converter 2024-11-26 02:22:36 +01:00
Veronica Berglyd Olsen
ff470028be Add a font matcher for text fonts (#2118) 2024-11-26 02:03:09 +01:00
Veronica Berglyd Olsen
8463188336 Fix default font in editor 2024-11-26 01:06:47 +01:00
Veronica Berglyd Olsen
2808c36753 Rename tokenizer setFont to setTextFont 2024-11-26 00:40:09 +01:00
Veronica Berglyd Olsen
05b1fdd7f2 Drop relative font weights in ODT output 2024-11-25 23:43:38 +01:00
Veronica Berglyd Olsen
00017e8065 Reset to default font style after emphasis in QTextDocuments (#2121) 2024-11-25 23:36:35 +01:00
Veronica Berglyd Olsen
ff34112532 Rewrite project tree as a model/view set (#2119) 2024-11-25 00:11:53 +01:00
Veronica Berglyd Olsen
4cadd1597e Add coverage to remaining missed lines 2024-11-25 00:07:32 +01:00
Veronica Berglyd Olsen
e30d2cbbf1 Always use forward slash for ToC file 2024-11-24 19:25:46 +01:00
Veronica Berglyd Olsen
0449cf824d Add test coverage of the gui project tree 2024-11-24 18:39:23 +01:00
Veronica Berglyd Olsen
32d899dbfb Fix windows path 2024-11-24 02:53:54 +01:00
Veronica Berglyd Olsen
9ec9c55c3f Add test coverage of the project tree 2024-11-24 02:48:17 +01:00
Veronica Berglyd Olsen
01b2b53fd5 Add test coverage of the item model 2024-11-24 00:43:01 +01:00
Veronica Berglyd Olsen
be6888f8c8 Fix Python 3.9 incompatible type 2024-11-23 20:29:02 +01:00
Veronica Berglyd Olsen
c1ed0647fe Refactor project signal proxies 2024-11-23 19:56:24 +01:00
Veronica Berglyd Olsen
1bf42ceb55 Update tests other than tree-related 2024-11-23 19:30:29 +01:00
Veronica Berglyd Olsen
ca8bd8d271 Disable project tree tests in core and gui 2024-11-22 17:04:53 +01:00
Veronica Berglyd Olsen
bf23a4920f Merge branch 'main' into project_model 2024-11-22 16:46:50 +01:00
Veronica Berglyd Olsen
cfb048ec19 Update log formatting again (#2117) 2024-11-22 16:46:28 +01:00
Veronica Berglyd Olsen
5284bea0f0 Rewrite log colouring 2024-11-22 16:41:11 +01:00
Veronica Berglyd Olsen
1244a4058c Merge branch 'main' into project_model 2024-11-22 02:22:47 +01:00
Veronica Berglyd Olsen
8c51363651 Colourise log output (#2114) 2024-11-22 02:22:10 +01:00
Veronica Berglyd Olsen
893f18c7ad Add test coverage 2024-11-22 02:18:31 +01:00
Veronica Berglyd Olsen
909c97feda Add ANSI colours to log output 2024-11-22 01:47:21 +01:00
Veronica Berglyd Olsen
fea989c1f8 Update comments 2024-11-22 00:56:33 +01:00
Veronica Berglyd Olsen
a64ed405f3 Add some clear data functions 2024-11-22 00:44:14 +01:00
Veronica Berglyd Olsen
ffe6cd0a65 Update item change signals 2024-11-22 00:15:12 +01:00
Veronica Berglyd Olsen
e0b27317f3 Make sure deleted documents are closed if open 2024-11-21 22:24:34 +01:00
Veronica Berglyd Olsen
7ed619cf2e Restore project item emphasis 2024-11-21 01:33:09 +01:00
Veronica Berglyd Olsen
d55f53be0a Clean up item notification and item main icon 2024-11-21 01:18:28 +01:00
Veronica Berglyd Olsen
55eed706fb Re-implement word counters 2024-11-21 00:14:54 +01:00
Veronica Berglyd Olsen
2f71ec68d8 Re-implement row highlight, empty trash, and fix recursive permanent delete 2024-11-20 23:07:40 +01:00
Veronica Berglyd Olsen
a45ab2f017 Remove tooltip for non-checkable items 2024-11-20 22:36:44 +01:00
Veronica Berglyd Olsen
26b4da9eb4 Fix most tests with minor issues 2024-11-20 19:58:34 +01:00
Veronica Berglyd Olsen
4897f6ad69 Update tests 2024-11-20 18:48:54 +01:00
Veronica Berglyd Olsen
bbe8683d59 Re-implement project item duplication 2024-11-20 18:48:14 +01:00
Veronica Berglyd Olsen
072be78991 Re-enable project tree context menu and clean up split and merge 2024-11-20 16:42:08 +01:00
Veronica Berglyd Olsen
3f41e62e21 Move some variables around 2024-11-20 16:41:26 +01:00
Veronica Berglyd Olsen
ec01336c21 Fix active status icon and tooltip 2024-11-20 13:06:49 +01:00
Veronica Berglyd Olsen
5dcfe5c874 Allow drag and drop to open documents 2024-11-20 02:12:28 +01:00
Veronica Berglyd Olsen
72f1bc2d77 Add model support for drag and drop 2024-11-20 01:31:56 +01:00
Veronica Berglyd Olsen
54685c8184 Reimplement item deletion 2024-11-19 23:26:01 +01:00
Veronica Berglyd Olsen
3532306833 Add move to trash functionality 2024-11-19 17:48:01 +01:00
Veronica Berglyd Olsen
442b065834 Handle item consistency in the nodes tree 2024-11-19 17:47:21 +01:00
Veronica Berglyd Olsen
53e70c118c Add back create new project item functionality 2024-11-19 00:22:59 +01:00
Veronica Berglyd Olsen
a5575992d6 Re-enable project tree move item and navigation 2024-11-18 18:04:25 +01:00
Veronica Berglyd Olsen
df0244095f Rewrite how project items are refreshed on the GUI 2024-11-18 17:51:05 +01:00
Veronica Berglyd Olsen
337f05f60e Re-enable item rename 2024-11-18 00:01:40 +01:00
Veronica Berglyd Olsen
4f8e898440 Switch data tree to new model structure 2024-11-17 23:24:49 +01:00
Veronica Berglyd Olsen
7991b9b27c Re-enable item selection 2024-11-17 22:41:45 +01:00
Veronica Berglyd Olsen
ef42e1956c Merge new and old project tree 2024-11-17 22:07:37 +01:00
Veronica Berglyd Olsen
27b3dde6f6 Complete build initial tree and save tree logic 2024-11-17 21:24:55 +01:00
Veronica Berglyd Olsen
cbe557507f Add a basic project tree model 2024-11-17 19:25:55 +01:00
Veronica Berglyd Olsen
7a9da5f219 Merge branch 'release' 2024-11-16 20:58:09 +01:00
Veronica Berglyd Olsen
49bb7f3a34 Fix default button issue on Build dialog (#2105) 2024-11-15 21:51:25 +01:00
Veronica Berglyd Olsen
021827ff2d Force the Build button to be default on the build dialog (#2101) 2024-11-15 20:49:45 +01:00
Veronica Berglyd Olsen
97312aecf5 Fix PDF formatting (#2104) 2024-11-15 20:25:29 +01:00
Veronica Berglyd Olsen
f3c9a77989 Revert to QPrinter, but update paint device 2024-11-15 19:31:55 +01:00
Veronica Berglyd Olsen
2c031bc093 Skip anchors when generating PDF 2024-11-15 01:34:02 +01:00
Veronica Berglyd Olsen
69147c2480 Correct pixel units 2024-11-15 01:27:49 +01:00
Veronica Berglyd Olsen
22ca0045bc Correct font scaling on PDF output 2024-11-15 00:40:58 +01:00
Veronica Berglyd Olsen
af431a4766 Merge branch 'main' into pdf_format_fixes 2024-11-14 23:20:12 +01:00
Veronica Berglyd Olsen
5a8045131b Update editor toolbar icon (#2103) 2024-11-14 23:18:43 +01:00
Veronica Berglyd Olsen
7c0a6f1d02 Use correct em calculation in qdoc class 2024-11-14 23:18:22 +01:00
Veronica Berglyd Olsen
4fc69ef7c6 Replace printer with Qt's PDF writer 2024-11-14 23:17:54 +01:00
Veronica Berglyd Olsen
91e502deb6 Add a new icon for the editor toolbar 2024-11-14 21:10:33 +01:00
Veronica Berglyd Olsen
1ee191220f Refactor manuscript format text scaling and text margin settings (#2102) 2024-11-13 23:22:28 +01:00
Veronica Berglyd Olsen
a96ccf8422 Add icons for text margins 2024-11-13 23:16:54 +01:00
Veronica Berglyd Olsen
57641ecd7d Make page number work with Office 365 2024-11-13 20:50:47 +01:00
Veronica Berglyd Olsen
ed431aa30f Update tests 2024-11-13 20:40:44 +01:00
Veronica Berglyd Olsen
7a111bb173 Update default margins 2024-11-13 20:24:10 +01:00
Veronica Berglyd Olsen
220be06631 Make HTML margins scale to em units 2024-11-13 20:05:03 +01:00
Veronica Berglyd Olsen
d8c14f6712 Make ODT margins scale to em units 2024-11-13 20:04:52 +01:00
Veronica Berglyd Olsen
e514b1be4f Fix DocX line height setting 2024-11-13 19:51:36 +01:00
Veronica Berglyd Olsen
5e7ef1d25a Minor improvements for 2.6 beta release (#2095) 2024-11-13 18:43:11 +01:00
Veronica Berglyd Olsen
c2b3eb4ac2 Fix issue of alternative unicode symbols being replaced too early 2024-11-13 00:03:38 +01:00
Veronica Berglyd Olsen
1bd8370864 Update dialogue highlighting settings text in Preferences 2024-11-12 23:10:57 +01:00
Veronica Berglyd Olsen
8c952953e3 Release 2.6 Beta 1 (#2092) 2024-11-12 17:42:59 +01:00
Veronica Berglyd Olsen
c065c9b30f Fix a couple of mistakes in the changelog 2024-11-12 17:35:59 +01:00
Veronica Berglyd Olsen
a18eb1158e Bump version to 2.6b1 and update changelog 2024-11-12 00:38:49 +01:00
Veronica Berglyd Olsen
08ef352288 GUI improvements and fixes (#2089) 2024-11-08 22:02:35 +01:00
Veronica Berglyd Olsen
25297b8b0b Add some coverage settings to the main project file 2024-11-08 17:34:06 +01:00
Veronica Berglyd Olsen
ea591fe707 Fix bug in outline view preserving details panel split position 2024-11-08 17:31:23 +01:00
Veronica Berglyd Olsen
b0bcf8605c Fix closing app with no project bug 2024-11-08 17:30:54 +01:00
Veronica Berglyd Olsen
b28921d6c2 Add an edit button to the viewer (#1963) 2024-11-08 17:30:10 +01:00
Veronica Berglyd Olsen
87ae7585e8 Add status column to project outline (#2088) 2024-11-08 00:37:57 +01:00
Veronica Berglyd Olsen
b39b37fb2f Add timing to outline build 2024-11-08 00:34:21 +01:00
Veronica Berglyd Olsen
cd9e0de9dd Update test 2024-11-07 23:59:52 +01:00
Veronica Berglyd Olsen
5107849909 Add status column to outline 2024-11-07 23:55:59 +01:00
Veronica Berglyd Olsen
5c988960f5 Revert a mistake in page break cleanup 2024-11-07 19:05:49 +01:00
Veronica Berglyd Olsen
44792778aa Simplify collection of raw text (#2087) 2024-11-07 19:03:34 +01:00
Veronica Berglyd Olsen
0a7bd68258 Simplify collection of raw text 2024-11-07 18:56:16 +01:00
Veronica Berglyd Olsen
30118eceaa Make page breaks visible in manuscript preview (#2086) 2024-11-07 18:39:10 +01:00
Veronica Berglyd Olsen
87512eb13b Rename variable 2024-11-07 18:33:53 +01:00
Veronica Berglyd Olsen
9919e1a49e Add new features to new project title page 2024-11-07 18:31:08 +01:00
Veronica Berglyd Olsen
d04a21b70f Improve page break handling in the tokenizer 2024-11-07 17:53:19 +01:00
Veronica Berglyd Olsen
fc6e0a577f Add a switch to enable/disable showing page breaks in the manuscript tool 2024-11-07 17:52:56 +01:00
Veronica Berglyd Olsen
0c659422b7 Add page break markers to the QTextDocument format class 2024-11-07 17:52:01 +01:00
Veronica Berglyd Olsen
2018023dc7 Remove redundant if-checks 2024-11-07 14:34:35 +01:00
Veronica Berglyd Olsen
04645cab71 Merge bugfix for #2080 from 2.5 release branch 2024-11-05 18:46:12 +01:00
Veronica Berglyd Olsen
ae261381aa Add build copy feature (#2084) 2024-11-05 18:38:32 +01:00
Veronica Berglyd Olsen
b088b79ee8 Add test coverage 2024-11-05 18:32:02 +01:00
Veronica Berglyd Olsen
0b59ee8634 Add duplicate build feature 2024-11-05 18:17:43 +01:00
Veronica Berglyd Olsen
f62b755903 Add copy button icon 2024-11-05 18:17:21 +01:00
Veronica Berglyd Olsen
04036ef35c Improve dialogue highlighting after feedback (#2082) 2024-11-05 17:34:04 +01:00
Veronica Berglyd Olsen
e4a2ca2d19 Add horizontal bar to em dash conversion in tokenizer 2024-11-04 17:32:22 +01:00
Veronica Berglyd Olsen
89f452f3fc Restructure and improve dialogue highlighting 2024-11-04 17:28:21 +01:00
Veronica Berglyd Olsen
843f8e0d39 Add missing line in dialogue highlighting check 2024-11-04 00:21:25 +01:00
Veronica Berglyd Olsen
8618306230 Update dialogue handling again (#2081) 2024-11-03 22:40:17 +01:00
Veronica Berglyd Olsen
34a3e17326 Fix quotes regex issue and update tests 2024-11-03 22:09:16 +01:00
Veronica Berglyd Olsen
5af49dfc6f Add a separate setting for alternating dialogue/narration 2024-11-03 21:45:00 +01:00
Veronica Berglyd Olsen
837d3060b8 Separate single and double quoted dialogue 2024-11-03 21:14:36 +01:00
Veronica Berglyd Olsen
2754f78083 Merge Spanish and Portuguese narrator break logic 2024-11-03 21:14:11 +01:00
Veronica Berglyd Olsen
1b509ad60b Add a dialogue parser, and horizontal bar auto-complete (#2079) 2024-11-01 22:23:16 +01:00
Veronica Berglyd Olsen
82e923b181 Remove debug code 2024-11-01 22:11:35 +01:00
Veronica Berglyd Olsen
e92b8400c7 Add dialogue parser test coverage 2024-11-01 22:07:47 +01:00
Veronica Berglyd Olsen
1ad6a80682 Update auto-replace in editor, and update tests 2024-11-01 21:17:46 +01:00
Veronica Berglyd Olsen
f355b82bba Add auto-replace for horizontal bar 2024-11-01 20:49:16 +01:00
Veronica Berglyd Olsen
66567b6d6f Allow up to 4 dialogue line symbols 2024-11-01 20:07:35 +01:00
Veronica Berglyd Olsen
d9582436d4 Update tests 2024-11-01 19:55:56 +01:00
Veronica Berglyd Olsen
31c75ea0b1 Add a dialog parser class 2024-11-01 19:55:35 +01:00
Veronica Berglyd Olsen
057fc10565 Refactor and clean up GUI code (#2078) 2024-10-31 18:42:32 +01:00
Veronica Berglyd Olsen
bbb07c9963 Make some minor GUI tweaks 2024-10-31 18:35:28 +01:00
Veronica Berglyd Olsen
dd09d3af2f Refactor outline details panel code 2024-10-31 18:28:58 +01:00
Veronica Berglyd Olsen
ccb5f8418b Remove redundant function in project tree 2024-10-31 18:28:35 +01:00
Veronica Berglyd Olsen
55d2605222 Use the new qtLambda wrapper where appropriate 2024-10-31 17:31:58 +01:00
Veronica Berglyd Olsen
7f49979bc9 Clean up project tree class 2024-10-31 17:30:49 +01:00
Veronica Berglyd Olsen
b529d5b125 Improve document editing and test coverage (#2077) 2024-10-31 00:21:19 +01:00
Veronica Berglyd Olsen
f2e36d9974 Cover missing lines in error module 2024-10-31 00:18:16 +01:00
Veronica Berglyd Olsen
ca2b509d54 Make the test a little safer 2024-10-31 00:11:32 +01:00
Veronica Berglyd Olsen
0ba0674b9e Some code flow improvements and main GUI test coverage 2024-10-31 00:07:48 +01:00
Veronica Berglyd Olsen
a2b09fdfec Update various features in the doc editor using new helper code 2024-10-30 19:13:13 +01:00
Veronica Berglyd Olsen
fa0bef5500 Extend and refactor current open document highlighting 2024-10-30 19:12:09 +01:00
Veronica Berglyd Olsen
92d148b03d Allow inserting stats in documents (#2073) 2024-10-30 00:14:48 +01:00
Veronica Berglyd Olsen
3d935e29eb Update test coverage 2024-10-30 00:08:31 +01:00
Veronica Berglyd Olsen
3749c9f21d Fix variable formatting for DocX and ODT 2024-10-29 17:50:51 +01:00
Veronica Berglyd Olsen
2a3d3e46c2 Pin tests to set locale to en_GB 2024-10-29 17:50:51 +01:00
Veronica Berglyd Olsen
9bc1561e01 Change to use document locale for integers 2024-10-29 17:50:51 +01:00
Veronica Berglyd Olsen
d987246062 Use Qt for int locale 2024-10-29 17:50:50 +01:00
Veronica Berglyd Olsen
c6a22e2d96 Add stats variables to Lipsum test project 2024-10-29 17:50:50 +01:00
Veronica Berglyd Olsen
42f904f1ea Add field value insertion to all formats 2024-10-29 17:50:49 +01:00
Veronica Berglyd Olsen
f92521c93a Process field values in QTextDocuments 2024-10-29 17:50:49 +01:00
Veronica Berglyd Olsen
041183f914 Add processing of fields in the Tokenizer 2024-10-29 17:50:49 +01:00
Veronica Berglyd Olsen
857b6ddc55 Update main menu 2024-10-29 17:50:48 +01:00
Veronica Berglyd Olsen
f2d2b4c4f2 Generalise the manuscript stats count values 2024-10-29 17:47:32 +01:00
Veronica Berglyd Olsen
8725edaf7e Refactor main menu (#2075) 2024-10-29 17:46:16 +01:00
Veronica Berglyd Olsen
4eace705e3 Add a function wrapper that makes the linter happy when used for Qt slots 2024-10-29 17:37:50 +01:00
Veronica Berglyd Olsen
b2d71acd93 Connect menu actions to main GUI in the menu class 2024-10-29 17:36:54 +01:00
Veronica Berglyd Olsen
e424fcfe53 Add support for referencing tags in novel documents (#2072) 2024-10-28 00:18:46 +01:00
Veronica Berglyd Olsen
eefb40cb1f Update tests 2024-10-28 00:12:06 +01:00
Veronica Berglyd Olsen
785cd3aea9 Add support for story reference, and update mention reference in outline details 2024-10-28 00:08:28 +01:00
Veronica Berglyd Olsen
07c700f666 Rewrite narrator break for dialogue highlighting (#2068) 2024-10-27 13:15:57 +01:00
Veronica Berglyd Olsen
8db0928724 Re-order preferences settings and ensure dialog/narrator symbols are single characters 2024-10-27 13:11:50 +01:00
Veronica Berglyd Olsen
b25ba9de27 Add test coverage of the highlighter 2024-10-27 13:05:24 +01:00
Veronica Berglyd Olsen
bf478a6706 Update tests 2024-10-27 02:22:39 +02:00
Veronica Berglyd Olsen
a1a58f51b1 Add new logic for dialogue narrator break to tokenizer 2024-10-27 02:15:06 +02:00
Veronica Berglyd Olsen
8850161641 Add new logic for dialogue narrator break 2024-10-27 01:55:19 +02:00
Veronica Berglyd Olsen
f931148594 Bump version to 2.6 Alpha 3 2024-10-27 00:35:57 +02:00
Veronica Berglyd Olsen
c31b0bcf17 Add Url recognition and formatting (#2067) 2024-10-27 00:17:11 +02:00
Veronica Berglyd Olsen
ba260ac608 Add test coverage of new features, and some other places 2024-10-27 00:13:18 +02:00
Veronica Berglyd Olsen
f2fc19b168 Add test coverage of new features 2024-10-26 23:28:34 +02:00
Veronica Berglyd Olsen
ceabc666c3 Add font table, fix core.xml bug, clean up code, update tests, for DocX 2024-10-26 17:09:50 +02:00
Veronica Berglyd Olsen
6c217c2450 Fix spell checker issue 2024-10-25 23:53:38 +02:00
Veronica Berglyd Olsen
7ff8921420 Add links to DocX 2024-10-25 23:19:23 +02:00
Veronica Berglyd Olsen
fe56c88309 Separate spell checking and link scanning, and add ODT support for links 2024-10-25 23:19:23 +02:00
Veronica Berglyd Olsen
b13b91c8e8 Add url to Lipsum test project 2024-10-25 23:19:22 +02:00
Veronica Berglyd Olsen
d71435df53 Distinguish between anchor ref and href in tokenizer 2024-10-25 23:19:22 +02:00
Veronica Berglyd Olsen
058758122c Add url support in tokenizer and qdoc preview 2024-10-25 23:18:27 +02:00
Veronica Berglyd Olsen
759cfd77e9 Add url handling in editor and viewer 2024-10-25 23:18:27 +02:00
Veronica Berglyd Olsen
37268b873a Add URL regex pattern 2024-10-25 23:18:22 +02:00
Veronica Berglyd Olsen
439a04c603 Add support for mentions references (#2064) 2024-10-25 23:17:36 +02:00
Veronica Berglyd Olsen
9f642d501a Update documentation 2024-10-25 00:20:17 +02:00
Veronica Berglyd Olsen
7f8e2c66a6 Update tests 2024-10-25 00:13:09 +02:00
Veronica Berglyd Olsen
9962fd4a55 Add menu entry and shortcut 2024-10-25 00:13:03 +02:00
Veronica Berglyd Olsen
c27343534f Add mentions to sample project 2024-10-24 23:58:37 +02:00
Veronica Berglyd Olsen
46ecb2cf70 Add mentions to outline 2024-10-24 23:57:39 +02:00
Veronica Berglyd Olsen
88aa3f38c2 Add autocomplete for mentions 2024-10-24 23:57:10 +02:00
Veronica Berglyd Olsen
9214da3756 Add mention keyword 2024-10-24 23:53:48 +02:00
Veronica Berglyd Olsen
41e5152771 Add forced line breaks feature (#2063) 2024-10-24 17:55:56 +02:00
Veronica Berglyd Olsen
6b01bd7ffe Fix title page break issue and add test coverage 2024-10-24 17:47:14 +02:00
Veronica Berglyd Olsen
76a9f8e3df Fix a minor issue, and add test 2024-10-24 14:32:54 +02:00
Veronica Berglyd Olsen
e15941520f Add working forced line break implementation 2024-10-24 01:25:32 +02:00
Veronica Berglyd Olsen
ff7404d01d Add line break shortcode support 2024-10-24 01:07:03 +02:00
Veronica Berglyd Olsen
560540618c Process heading line breaks in the Tokenizer 2024-10-24 00:02:39 +02:00
Veronica Berglyd Olsen
bfa82f6bb3 Add test coverage of title line breaks, and don't break markdown titles 2024-10-24 00:02:39 +02:00
Veronica Berglyd Olsen
f77cd1c752 Fix counting error (#2062) 2024-10-24 00:01:39 +02:00
Veronica Berglyd Olsen
8461b0c15d Fix wrong character count when there is a footnote 2024-10-23 23:57:42 +02:00
Veronica Berglyd Olsen
2938a0f122 Remove version dependency in DocX tests 2024-10-23 17:44:55 +02:00
Veronica Berglyd Olsen
beccd1a7d1 Bump version to 2.6 Alpha 2 2024-10-23 17:41:28 +02:00
Veronica Berglyd Olsen
c6883908f1 Improve text document formatting (#2061) 2024-10-23 17:39:13 +02:00
Veronica Berglyd Olsen
36d8547f78 Correct misspelled variable 2024-10-23 17:36:12 +02:00
Veronica Berglyd Olsen
b01c91c0a3 Remove more redundant code 2024-10-23 17:20:07 +02:00
Veronica Berglyd Olsen
3712b2e93f Combine the different ways of storing generated text data in formats 2024-10-23 17:12:13 +02:00
Veronica Berglyd Olsen
0ddc1131dc Replace heading field with a general meta data field in the text block tuple 2024-10-23 16:20:50 +02:00
Veronica Berglyd Olsen
f4a941cd93 Fix format tag order for HTML validation 2024-10-23 11:01:06 +02:00
Veronica Berglyd Olsen
db72f2a722 Remove redundant code 2024-10-23 10:31:27 +02:00
Veronica Berglyd Olsen
16023676ea Simplify CSS in HTML format 2024-10-23 01:27:36 +02:00
Veronica Berglyd Olsen
52e85835df Flip if statement in Tokenizer 2024-10-23 01:26:48 +02:00
Veronica Berglyd Olsen
fe63770d21 Refactor and standardise text format modules (#2060) 2024-10-22 21:51:19 +02:00
Veronica Berglyd Olsen
bd5442c9e5 Process tags and references in Tokenizer 2024-10-22 21:37:18 +02:00
Veronica Berglyd Olsen
c7554f2b8d Process keyword flag in Tokenizer 2024-10-22 19:33:05 +02:00
Veronica Berglyd Olsen
63f9cd0bac Tokenize dialogue with colour tag 2024-10-22 18:41:34 +02:00
Veronica Berglyd Olsen
c537d0f396 Process comments in the Tokenizer 2024-10-22 17:37:00 +02:00
Veronica Berglyd Olsen
e759aa8d1b Move colour theme to Tokenizer class 2024-10-22 17:07:57 +02:00
Veronica Berglyd Olsen
2d8664b3ce Clean up wrapped code, and rename test variable 2024-10-22 00:40:54 +02:00
Veronica Berglyd Olsen
16076ebfb6 Move shared formats code to separate file, and rename some variables 2024-10-22 00:25:35 +02:00
Veronica Berglyd Olsen
38ca447c8a Convert format codes to enums 2024-10-21 23:37:27 +02:00
Veronica Berglyd Olsen
f91006631d Rename ODT test files 2024-10-21 18:56:37 +02:00
Veronica Berglyd Olsen
3cc5e4cc7a Handle text justify in Tokenizer instead 2024-10-21 18:54:19 +02:00
Veronica Berglyd Olsen
75178b7874 Merge branch 'release' 2024-10-21 17:14:32 +02:00
Veronica Berglyd Olsen
ce3f6dae20 Add DocX support (#2056) 2024-10-21 17:13:42 +02:00
Veronica Berglyd Olsen
ec7781fb9f Generalise ODT variables to DOC 2024-10-21 17:00:44 +02:00
Veronica Berglyd Olsen
787e1a46d1 Add DocX test coverage 2024-10-21 16:59:43 +02:00
Veronica Berglyd Olsen
148d46fcbc Add settings to DocX and compression to ODT and DocX 2024-10-20 23:08:14 +02:00
Veronica Berglyd Olsen
7e1a676e0a Add footnote support to DocX 2024-10-20 22:01:13 +02:00
Veronica Berglyd Olsen
e9220c5e77 Add DocX page settings and header support 2024-10-20 21:02:53 +02:00
Veronica Berglyd Olsen
72d41d4883 Refactor XML generation for DocX 2024-10-20 17:07:33 +02:00
Veronica Berglyd Olsen
de6c3e9b45 Fix issue with global justify, and add indentation to DocX 2024-10-19 20:14:01 +02:00
Veronica Berglyd Olsen
a0ab507ed1 Fix DocX tabs in text, and page break before issues 2024-10-19 19:04:16 +02:00
Veronica Berglyd Olsen
3c76d0e7e3 Fix issue with line spacing in DocX 2024-10-19 17:08:24 +02:00
Veronica Berglyd Olsen
34127d78bf Move custom XML sub element function to common 2024-10-19 17:08:08 +02:00
Veronica Berglyd Olsen
ca33f488f1 Get rid of the DocXRun class 2024-10-19 14:43:06 +02:00
Veronica Berglyd Olsen
717aac9dc8 Add remaining code blocks, and add colours 2024-10-18 21:18:59 +02:00
Veronica Berglyd Olsen
4b07dbadb2 Basic DocX text formatting works 2024-10-18 20:31:21 +02:00
Veronica Berglyd Olsen
9bbebd2085 Add DocX text styles 2024-10-18 18:35:56 +02:00
Veronica Berglyd Olsen
d60b29e0a2 make some improvements to the ODT writer 2024-10-18 16:37:42 +02:00
Veronica Berglyd Olsen
80d2dfd9a4 Add structure for DocX documents 2024-10-18 16:37:04 +02:00
Veronica Berglyd Olsen
464454e7a6 Expose text margin settings in Manuscript Build (#2051) 2024-10-17 22:41:42 +02:00
Veronica Berglyd Olsen
d145b65237 Standardise text sizes and margins 2024-10-17 22:34:46 +02:00
Veronica Berglyd Olsen
912198cc40 Add text margin settings 2024-10-17 21:57:04 +02:00
Veronica Berglyd Olsen
bffab79ba7 Merge build settings page layout options 2024-10-17 21:56:35 +02:00
Veronica Berglyd Olsen
c82f7fd9ca Bump version to 2.6 Alpha 1 2024-10-16 17:42:50 +02:00
Veronica Berglyd Olsen
53afe528e8 Add PDF output for manuscripts (#2048) 2024-10-16 17:41:31 +02:00
Veronica Berglyd Olsen
225befe57e Add test coverage 2024-10-16 17:33:32 +02:00
Veronica Berglyd Olsen
40817e73b4 Apply page layout settings to PDF format 2024-10-16 17:26:10 +02:00
Veronica Berglyd Olsen
17c93c2172 Add PDF format 2024-10-16 17:25:46 +02:00
Veronica Berglyd Olsen
c8d7ccadb7 Refactor document builder (#2047) 2024-10-16 00:26:32 +02:00
Veronica Berglyd Olsen
7bb292404a Update Tokenizer tests 2024-10-16 00:23:18 +02:00
Veronica Berglyd Olsen
d2ac0ed53f Pass the Markdown style to the constructor 2024-10-16 00:15:56 +02:00
Veronica Berglyd Olsen
c633a56bfb Simplify JSON and raw text writing 2024-10-15 23:59:25 +02:00
Veronica Berglyd Olsen
34696ba3a8 Merge doc build functions 2024-10-15 23:29:11 +02:00
Veronica Berglyd Olsen
93c105fe86 Extend heading styling options (#2045) 2024-10-15 21:40:21 +02:00
Veronica Berglyd Olsen
29eac0b4e5 Remove type alias for Python 3.9 2024-10-15 21:36:15 +02:00
Veronica Berglyd Olsen
fc27078954 Standardise the save document call for all document classes 2024-10-15 21:25:36 +02:00
Veronica Berglyd Olsen
759a8e84f0 Fix QTextDocument header formatting 2024-10-15 20:59:10 +02:00
Veronica Berglyd Olsen
b2c7da319e Generalise ODT build settings 2024-10-15 20:34:41 +02:00
Veronica Berglyd Olsen
b56095224a Move document format classes to new folder 2024-10-15 19:29:56 +02:00
Veronica Berglyd Olsen
2f12a8cc93 Add settings to style ODT headers 2024-10-15 19:22:08 +02:00
Veronica Berglyd Olsen
140f85f214 Merge branch 'main' into heading_styling 2024-10-14 00:26:55 +02:00
Veronica Berglyd Olsen
7405c7e20f Add Python 3.13 (#2044) 2024-10-14 00:25:07 +02:00
Veronica Berglyd Olsen
f29b13679a List and check support for Python 3.13 (#2040) 2024-10-14 00:21:22 +02:00
Veronica Berglyd Olsen
9b9ed53cf9 Don't use "match" as a variable (#2043) 2024-10-14 00:18:24 +02:00
Veronica Berglyd Olsen
2447ae5cff Replace usage of "match" as a variable name 2024-10-14 00:14:08 +02:00
Veronica Berglyd Olsen
7379b8b521 Remove plain heading style setting again 2024-10-14 00:10:23 +02:00
Veronica Berglyd Olsen
22473823c9 Improve build settings 2024-10-01 14:01:36 +02:00
Veronica Berglyd Olsen
d8bb9950d3 Add plain style setting for headings 2024-10-01 14:00:57 +02:00
Veronica Berglyd Olsen
279fe2ae18 Add title setting 2024-10-01 12:54:38 +02:00
Veronica Berglyd Olsen
1e812f3f06 Update tests 2024-10-01 12:15:42 +02:00
Veronica Berglyd Olsen
0f1401eb71 Rename title format settings to partition 2024-10-01 12:14:39 +02:00
Veronica Berglyd Olsen
57e739c3ef Add word counts to ODT output (#2035) 2024-10-01 12:00:04 +02:00
Veronica Berglyd Olsen
1b457585d9 Update tests 2024-09-30 22:52:39 +02:00
Veronica Berglyd Olsen
c9eab0b01e Add word counts to the ODT file as user fields (#2033) 2024-09-30 22:52:28 +02:00
Veronica Berglyd Olsen
3da5074d14 Refactor build settings (#2031) 2024-09-28 11:58:58 +02:00
Veronica Berglyd Olsen
e97a476c7f Update tests 2024-09-28 11:55:47 +02:00
Veronica Berglyd Olsen
a716f31b17 Fix some minor issues with spell checking 2024-09-28 11:41:26 +02:00
Veronica Berglyd Olsen
b2e760a284 Merge build settings formatting into a single form 2024-09-28 11:36:01 +02:00
Veronica Berglyd Olsen
7cc48aeb7f Improve spell checking (#2030) 2024-09-28 11:31:49 +02:00
Veronica Berglyd Olsen
a6494b4226 Allow words to be ignored by the spell checker (session only) 2024-09-28 11:21:04 +02:00
Veronica Berglyd Olsen
5ed03e29f3 Change regexes to use the pattern object directly 2024-09-28 11:20:09 +02:00
Veronica Berglyd Olsen
5c07148eb2 Replace Qt RegEx with Python RegEx (#2028) 2024-09-22 18:02:17 +02:00
Veronica Berglyd Olsen
17b4a7be4d Use regex end instead of length in tokenizer format processing function 2024-09-22 17:57:13 +02:00
Veronica Berglyd Olsen
9b08ebbbd5 Use Python regex for document search tool 2024-09-22 17:47:49 +02:00
Veronica Berglyd Olsen
37c469dbc7 Move word split to regex pattern class 2024-09-22 17:37:12 +02:00
Veronica Berglyd Olsen
c08033d153 Use stdlib re for dialogue matching 2024-09-22 17:34:04 +02:00
Veronica Berglyd Olsen
9c63f621a8 Use stdlib re for Shortcode matching 2024-09-22 17:06:57 +02:00
Veronica Berglyd Olsen
c3cb12e5e2 Use stdlib re for Markdown matching 2024-09-22 16:56:21 +02:00
Veronica Berglyd Olsen
d3799bc30a Update plain regex patterns to std lib re 2024-09-22 16:37:45 +02:00
Veronica Berglyd Olsen
cb8933b493 Use Python regex for spell checking 2024-09-22 16:23:35 +02:00
Veronica Berglyd Olsen
1aa58c047f Clean up Qt enums (#2025) 2024-09-18 22:18:15 +02:00
Veronica Berglyd Olsen
52b3084bee Fix type annotation 2024-09-18 22:12:39 +02:00
Veronica Berglyd Olsen
70b05c9e07 Use strings for shortcut keys 2024-09-18 22:11:32 +02:00
Veronica Berglyd Olsen
cafa440aee Update menu role enums 2024-09-18 22:06:23 +02:00
Veronica Berglyd Olsen
681cb7226a Fix bug in test 2024-09-18 22:04:06 +02:00
Veronica Berglyd Olsen
b36e49e43f Update scrollbar enums 2024-09-18 22:02:50 +02:00
Veronica Berglyd Olsen
90a6c2d98d Update keyboard and mouse enums 2024-09-18 21:55:59 +02:00
Veronica Berglyd Olsen
21d21846ca Update cursor and messagebox enums 2024-09-18 21:51:23 +02:00
Veronica Berglyd Olsen
cc8d7d9912 Fix ActionEvent enums 2024-09-18 21:46:44 +02:00
Veronica Berglyd Olsen
10527afbda Remove borders 2024-09-18 15:00:55 +02:00
Veronica Berglyd Olsen
d16ece2a81 Use html table instead 2024-09-18 14:59:38 +02:00
Veronica Berglyd Olsen
e7f7dc8d60 Increase sponsor logo size 2024-09-18 14:55:47 +02:00
Veronica Berglyd Olsen
2f2943452f Use px for logo size 2024-09-18 14:55:06 +02:00
Veronica Berglyd Olsen
08ae2b5351 Merge actions updates from 'release' 2024-09-18 14:52:46 +02:00
Veronica Berglyd Olsen
8e3ad6d874 Merge release 2.5.2 2024-09-17 16:51:06 +02:00
Veronica Berglyd Olsen
09b0f34199 Merge branch 'release' 2024-09-01 17:47:36 +02:00
Veronica Berglyd Olsen
ce979b6c84 Merge branch 'release' 2024-07-28 14:10:36 +02:00
Veronica Berglyd Olsen
c146c311c1 Merge branch 'release' 2024-07-28 13:46:53 +02:00
Veronica Berglyd Olsen
7fe3a8520d Merge branch 'release' 2024-07-26 00:19:25 +02:00
Veronica Berglyd Olsen
f532857345 Merge branch 'release' 2024-07-21 19:54:43 +02:00
Veronica Berglyd Olsen
b7da56ac42 Merge branch 'release' 2024-07-14 16:43:43 +02:00
Veronica Berglyd Olsen
81dd98e83b Bump main branch to 2.6 alpha 0 2024-07-10 17:30:14 +02:00
Veronica Berglyd Olsen
89423208bb Merge branch 'main' into add-flatpak 2023-04-04 17:52:00 +02:00
Rachel Powers
b82bead486 fix: properly sort versions in appdate.xml
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 20:32:07 -07:00
Rachel Powers
7233137ad3 feat: add a gen-appdata command to setup .py
regenerates novelwriter.appdata.xml using git tags to list versions and pulling the latest version from the source

Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 20:00:15 -07:00
Rachel Powers
14ca0deb00 fix : use sudo to build flatpak
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 18:02:31 -07:00
Rachel Powers
575a046cac fix: use sudo for flatpak remote-add
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 17:51:05 -07:00
Rachel Powers
77246aad17 fix: ensure flathub repo is added during build
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 17:47:16 -07:00
Rachel Powers
3303eb3043 add new releases to appdata.xml
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 17:41:30 -07:00
Rachel Powers
04f82e5151 fix: install flatpak-builder in flatpak workflow
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 17:37:39 -07:00
Rachel Powers
de9ebbf99d feat: add flatpak build to workflow
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-02-12 17:14:09 -07:00
Rachel Powers
d6506b6430 Merge branch 'patch' of https://github.com/vkbo/novelWriter into add-flatpak 2023-02-12 16:52:12 -07:00
Rachel Powers
ea7c72a509 feat(flatpak): add a build-flatpak setup command
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-09 02:35:05 -07:00
Rachel Powers
a9314cc6d5 refactor: moce flatpak into setup folder
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-08 21:28:06 -07:00
Rachel Powers
3da0510a8d fix: redundant word in metadata add period
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-08 21:24:47 -07:00
Rachel Powers
20adf39d8b fix: link to flatpak-pip-generator in comment
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-08 21:24:47 -07:00
Rachel Powers
02f474504b fix: only use one screenshot as defualt
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-08 21:24:47 -07:00
Rachel Powers
427abafe43 feat: add flatpak manifest
Signed-off-by: Rachel Powers <508861+Ryex@users.noreply.github.com>
2023-01-08 21:24:47 -07:00
1063 changed files with 187095 additions and 99185 deletions

9
.env.example Normal file
View File

@@ -0,0 +1,9 @@
# Copy to .env and fill in for dev tooling
# Crowdin Personal Access Token scoped to at least `project.report` (Read only)
# Needed for `qtlimport --credits-since`
CROWDIN_REPORT_READ_TOKEN=
# Path for long-term cached files, like downloaded icon packs
# Used by `icons` unless `--work-dir` is set
CACHE_DIR=

1
.github/CODEOWNERS vendored Normal file
View File

@@ -0,0 +1 @@
* @vkbo @saga-soft-bot

View File

@@ -0,0 +1,63 @@
name: Bug Report
description: Report a bug or issue.
title: "[Bug] "
labels: ["bug", "triage"]
type: bug
body:
- type: markdown
attributes:
value: >
Thank you for taking the time to fill out this bug report.
Note that issues without a description will not be considered.
Please also check if an issue already exists on this problem.
- type: textarea
id: description
attributes:
label: Bug Description
description: >
Provide a clear and concise description of what happened.
Include screenshots where relevant.
placeholder: Tell us what you see.
validations:
required: true
- type: textarea
id: reproduce
attributes:
label: Steps to Reproduce
description: >
Explain what to do to reproduce the issue.
Include screenshots where relevant.
placeholder: Tell us what to do.
validations:
required: true
- type: input
id: version
attributes:
label: Version
description: What version of UmbraEdit are you running?
placeholder: "e.g. 26.2"
validations:
required: true
- type: input
id: os
attributes:
label: Operating System
description: What operating system are you running?
placeholder: "e.g. Windows 11, macOS 26, Ubuntu 26.04"
validations:
required: true
- type: textarea
id: logs
attributes:
label: Log or Error Output
description: >
If the error dialog popped up, copy/paste the content here.
Or provide relevant log output from the console.
render: shell
validations:
required: false

View File

@@ -0,0 +1,34 @@
name: Suggest Improvement
description: Suggest something that can be improved.
title: "[Improve] "
labels: ["enhancement", "triage"]
type: feature
body:
- type: markdown
attributes:
value: >
Thank you for taking the time to fill out this feature request.
Note that feature requests without a description will not be considered.
Please also check if a request already exists for this feature.
- type: textarea
id: problem
attributes:
label: The Problem
description: >
Explain the problem you're facing.
Include screenshots where relevant.
placeholder: Tell us about the issue.
validations:
required: true
- type: textarea
id: description
attributes:
label: Your Suggestion
description: >
Provide a clear and concise description of what you'd like to see.
Include screenshots where relevant.
placeholder: Tell us what you need.
validations:
required: true

23
.github/ISSUE_TEMPLATE/03-feature.yml vendored Normal file
View File

@@ -0,0 +1,23 @@
name: Feature Request
description: Suggest a new feature you'd like added.
title: "[Feat] "
labels: ["enhancement", "triage"]
type: feature
body:
- type: markdown
attributes:
value: >
Thank you for taking the time to fill out this feature request.
Note that feature requests without a description will not be considered.
Please also check if a request already exists for this feature.
- type: textarea
id: description
attributes:
label: Your Suggestion
description: >
Provide a clear and concise description of what you'd like to see.
Include screenshots where relevant.
placeholder: Tell us what you need.
validations:
required: true

View File

@@ -1,16 +0,0 @@
---
name: Bug Report
about: Create a report to help us improve
title: ""
labels: bug
---
**Note**: Issues without a description will not be considered.
Please also check if an issue already exists on this problem.
Please provide a description covering the following points, if applicable:
* A clear and concise description of what the bug is.
* Steps to reproduce the behaviour
* A clear and concise description of what you expected to happen.
* If applicable, add screenshots to help explain your problem.
* If the error dialog popped up, copy/paste the content here.

5
.github/ISSUE_TEMPLATE/config.yml vendored Normal file
View File

@@ -0,0 +1,5 @@
blank_issues_enabled: true
contact_links:
- name: GitHub Community Support
url: https://github.com/saga-soft/UmbraEdit/discussions
about: Please ask and answer questions here.

View File

@@ -1,15 +0,0 @@
---
name: Feature Request
about: Suggest an idea for this project
title: ""
labels: enhancement
---
**Note**: Feature requests without a description will not be considered.
Please also check if an issue already exists on this feature.
Please provide a description covering the following points, if applicable:
* A clear and concise description of what the problem is. Ex. I'm always frustrated when ...
* A clear and concise description of what you want to happen.
* A clear and concise description of any alternative solutions or features you've considered.
* If applicable, add screenshots to help explain your request.

View File

@@ -1,24 +1,19 @@
<!--
Please check the following before you make a pull request:
### Summary
* The branch you are making the pull request from (in your own fork) has a unique and descriptive
name. Do not make a pull request directly from your copy of `main`.
* If you are submitting translation files, only submit the files that you have added translations
to, not the other .ts files that may have been updated in the process.
* Make sure your contribution follows the style guide and other requirements mentioned in the
CONTRIBUTING.md file in the repository.
* Fill in the Summary section below, and if relevant, mention the issue numbers related to the PR.
-->
### Related Issue(s)
**Summary:**
<!-- i.e. Closes #1234 -->
**Related Issue(s):**
### Submitter's Checklist
**Reviewer's Checklist:**
* [ ] I am familiar with, and have followed, the [Contributing Guide](https://github.com/saga-soft/UmbraEdit/blob/main/CONTRIBUTING.md)
* [ ] I am familiar with, and have followed, the [AI Policy](https://github.com/saga-soft/UmbraEdit/blob/main/AI_POLICY.md)
### Reviewer's Checklist
* [ ] The header of all files contain a reference to the repository license
* [ ] The overall test coverage is increased or remains the same as before
* [ ] All tests are passing
* [ ] All flake8 checks are passing and the style guide is followed
* [ ] All linting checks are passing and the style guide is followed
* [ ] Documentation (as docstrings) is complete and understandable
* [ ] Only files that have been actively changed are committed

26
.github/workflows/auto_approve.yml vendored Normal file
View File

@@ -0,0 +1,26 @@
name: Auto-Approve
on:
pull_request:
types:
- opened
- reopened
- synchronize
- ready_for_review
concurrency:
group: auto-approve-${{ github.event.pull_request.number }}
permissions: {}
jobs:
approve:
name: Approve Owner PRs
runs-on: ubuntu-latest
if: github.event.pull_request.draft == false && github.event.pull_request.user.login == 'vkbo'
steps:
- name: Approve Pull Request
env:
GH_TOKEN: ${{ secrets.SAGA_SOFT_BOT_TOKEN }}
PR_URL: ${{ github.event.pull_request.html_url }}
run: gh pr review "$PR_URL" --approve

30
.github/workflows/build_all.yml vendored Normal file
View File

@@ -0,0 +1,30 @@
name: Build All
on: workflow_dispatch
jobs:
buildAssets:
uses: ./.github/workflows/part_assets.yml
permissions:
contents: read
buildLinux-AppImage:
needs: buildAssets
uses: ./.github/workflows/part_appimage.yml
secrets: inherit
permissions:
contents: read
buildLinux-Flatpak:
needs: buildAssets
uses: ./.github/workflows/part_flatpak.yml
secrets: inherit
permissions:
contents: read
buildWin-X64:
needs: buildAssets
uses: ./.github/workflows/part_win_x64.yml
secrets: inherit
permissions:
contents: read

View File

@@ -1,39 +0,0 @@
name: BuildAssets
on: workflow_call
jobs:
buildAssets:
runs-on: ubuntu-latest
steps:
- name: Python Setup
uses: actions/setup-python@v5
with:
python-version: "3.12"
architecture: x64
- name: Install Packages (apt)
run: |
sudo apt update
sudo apt install qttools5-dev-tools latexmk texlive texlive-latex-extra
- name: Checkout Source
uses: actions/checkout@v4
- name: Install Packages (pip)
run: pip install -r docs/source/requirements.txt
- name: Build Assets
run: |
python pkgutils.py build-assets
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: nw-assets
path: |
novelwriter/assets/manual.pdf
novelwriter/assets/sample.zip
novelwriter/assets/i18n/*.qm
if-no-files-found: error
retention-days: 14

View File

@@ -1,46 +0,0 @@
name: BuildLinux
on: workflow_dispatch
jobs:
buildAssets:
uses: ./.github/workflows/build_assets.yml
buildLinux-AppImage:
needs: buildAssets
runs-on: ubuntu-latest
env:
PYTHON_VERSION: "3.12"
LINUX_TAG: "manylinux_2_28_x86_64"
steps:
- name: Python Setup
uses: actions/setup-python@v5
with:
python-version: "3.11"
architecture: x64
- name: Install Packages (pip)
run: pip install python-appimage
- name: Checkout Source
uses: actions/checkout@v4
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
name: nw-assets
path: novelwriter/assets
- name: Build AppImage
id: build
run: |
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
python pkgutils.py build-appimage --linux-tag $LINUX_TAG --python-version $PYTHON_VERSION
- name: Upload Artifacts
uses: actions/upload-artifact@v4
with:
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-Linux-AppImage
path: dist_appimage/*.AppImage*
if-no-files-found: error
retention-days: 14

View File

@@ -0,0 +1,23 @@
name: Build Linux Images
on: workflow_dispatch
jobs:
buildAssets:
uses: ./.github/workflows/part_assets.yml
permissions:
contents: read
buildLinux-AppImage:
needs: buildAssets
uses: ./.github/workflows/part_appimage.yml
secrets: inherit
permissions:
contents: read
buildLinux-Flatpak:
needs: buildAssets
uses: ./.github/workflows/part_flatpak.yml
secrets: inherit
permissions:
contents: read

147
.github/workflows/build_linux_native.yml vendored Normal file
View File

@@ -0,0 +1,147 @@
name: Build Linux Native
on:
workflow_dispatch:
inputs:
publish:
required: false
description: "Publish to Cloudsmith?"
type: boolean
default: false
build_number:
required: false
description: "Build Number"
type: string
default: "0"
debian12:
required: false
description: "Debian 12 (Bookworm)"
type: boolean
default: true
debian13:
required: false
description: "Debian 13 (Trixie)"
type: boolean
default: true
ubuntu2404:
required: false
description: "Ubuntu 24.04 (Noble)"
type: boolean
default: true
ubuntu2604:
required: false
description: "Ubuntu 26.04 (Resolute)"
type: boolean
default: true
ubuntu2610:
required: false
description: "Ubuntu 26.10 (Stonking)"
type: boolean
default: true
mint22:
required: false
description: "Linux Mint 22 (Wilma)"
type: boolean
default: true
jobs:
buildAssets:
uses: ./.github/workflows/part_assets.yml
permissions:
contents: read
buildAndPublish-Debian12:
name: Debian 12 (Bookworm)
needs: buildAssets
uses: ./.github/workflows/part_debian.yml
with:
publish: ${{ inputs.publish }}
build_number: ${{ inputs.build_number }}
codename: bookworm
family: debian
image: debian:12
secrets: inherit
if: ${{ inputs.debian12 }}
permissions:
id-token: write
contents: read
buildAndPublish-Debian13:
name: Debian 13 (Trixie)
needs: buildAssets
uses: ./.github/workflows/part_debian.yml
with:
publish: ${{ inputs.publish }}
build_number: ${{ inputs.build_number }}
codename: trixie
family: debian
image: debian:13
secrets: inherit
if: ${{ inputs.debian13 }}
permissions:
id-token: write
contents: read
buildAndPublish-Ubuntu2404:
name: Ubuntu 24.04 (Noble)
needs: buildAssets
uses: ./.github/workflows/part_debian.yml
with:
publish: ${{ inputs.publish }}
build_number: ${{ inputs.build_number }}
codename: noble
family: ubuntu
image: ubuntu:24.04
secrets: inherit
if: ${{ inputs.ubuntu2404 }}
permissions:
id-token: write
contents: read
buildAndPublish-Ubuntu2604:
name: Ubuntu 26.04 (Resolute)
needs: buildAssets
uses: ./.github/workflows/part_debian.yml
with:
publish: ${{ inputs.publish }}
build_number: ${{ inputs.build_number }}
codename: resolute
family: ubuntu
image: ubuntu:26.04
secrets: inherit
if: ${{ inputs.ubuntu2604 }}
permissions:
id-token: write
contents: read
buildAndPublish-Ubuntu2610:
name: Ubuntu 26.10 (Stonking)
needs: buildAssets
uses: ./.github/workflows/part_debian.yml
with:
publish: ${{ inputs.publish }}
build_number: ${{ inputs.build_number }}
codename: stonking
family: ubuntu
image: ubuntu:26.10
secrets: inherit
if: ${{ inputs.ubuntu2610 }}
permissions:
id-token: write
contents: read
buildAndPublish-Mint22:
name: Linux Mint 22 (Wilma)
needs: buildAssets
uses: ./.github/workflows/part_debian.yml
with:
publish: ${{ inputs.publish }}
build_number: ${{ inputs.build_number }}
codename: wilma
family: linuxmint
image: linuxmintd/mint22-amd64
secrets: inherit
if: ${{ inputs.mint22 }}
permissions:
id-token: write
contents: read

View File

@@ -1,70 +1,23 @@
name: BuildMacOS
name: Build MacOS
on: workflow_dispatch
jobs:
buildAssets:
uses: ./.github/workflows/build_assets.yml
uses: ./.github/workflows/part_assets.yml
permissions:
contents: read
buildMac-AMD64:
needs: buildAssets
# Stay on macos-12 due to https://github.com/create-dmg/create-dmg/issues/143
runs-on: macos-12
env:
PYTHON_VERSION: "3.12"
PACKAGE_ARCH: x86_64
MINICONDA_ARCH: x86_64
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
name: nw-assets
path: novelwriter/assets
- name: Build App Bundle
id: build
run: |
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
./setup/macos/build.sh $PYTHON_VERSION $PACKAGE_ARCH $MINICONDA_ARCH
- name: Upload DMG
uses: actions/upload-artifact@v4
with:
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-MacOS-AMD64-DMG
path: dist_macos/*.dmg*
if-no-files-found: error
retention-days: 14
uses: ./.github/workflows/part_macos_amd64.yml
secrets: inherit
permissions:
contents: read
buildMac-M1:
needs: buildAssets
runs-on: macos-14
env:
PYTHON_VERSION: "3.12"
PACKAGE_ARCH: aarch64
MINICONDA_ARCH: arm64
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
name: nw-assets
path: novelwriter/assets
- name: Build App Bundle
id: build
run: |
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
./setup/macos/build.sh $PYTHON_VERSION $PACKAGE_ARCH $MINICONDA_ARCH
- name: Upload DMG
uses: actions/upload-artifact@v4
with:
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-MacOS-M1-DMG
path: dist_macos/*.dmg*
if-no-files-found: error
retention-days: 14
uses: ./.github/workflows/part_macos_m1.yml
secrets: inherit
permissions:
contents: read

26
.github/workflows/build_pypi.yml vendored Normal file
View File

@@ -0,0 +1,26 @@
name: Build PyPI
on:
workflow_dispatch:
inputs:
publish:
required: false
description: "Publish to PyPI?"
type: boolean
default: false
jobs:
buildAssets:
uses: ./.github/workflows/part_assets.yml
permissions:
contents: read
buildAndPublish-PyPI:
name: PyPI Package
needs: buildAssets
uses: ./.github/workflows/part_pypi.yml
with:
publish: ${{ inputs.publish }}
permissions:
id-token: write
contents: read

View File

@@ -1,62 +1,16 @@
name: BuildWindows
name: Build Windows
on: workflow_dispatch
jobs:
buildAssets:
uses: ./.github/workflows/build_assets.yml
uses: ./.github/workflows/part_assets.yml
permissions:
contents: read
buildWin64:
buildWin-X64:
needs: buildAssets
runs-on: windows-latest
steps:
- name: Python Setup
uses: actions/setup-python@v5
with:
python-version: "3.12"
architecture: x64
- name: Checkout Source
uses: actions/checkout@v4
- name: Download Artifacts
uses: actions/download-artifact@v4
with:
name: nw-assets
path: novelwriter/assets
- name: Build Setup Installer
id: build
run: |
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $Env:GITHUB_OUTPUT
python pkgutils.py build-win-exe
- name: Upload Unsigned Artifacts
id: upload-unsigned-artifact
uses: actions/upload-artifact@v4
with:
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-Win-Setup
path: dist/*.exe
if-no-files-found: error
retention-days: 14
- name: Submit Signing Request
uses: signpath/github-action-submit-signing-request@v1
with:
api-token: "${{ secrets.SIGNPATH_API_TOKEN }}"
organization-id: "0471e52c-66fa-4e9a-bfb9-36167095ca3f"
project-slug: "novelWriter"
signing-policy-slug: "release-signing "
github-artifact-id: "${{ steps.upload-unsigned-artifact.outputs.artifact-id }}"
wait-for-completion: true
output-artifact-directory: "dist/"
parameters: |
version: "${{ steps.build.outputs.BUILD_VERSION }}"
- name: Upload Signed Artifacts
uses: actions/upload-artifact@v4
with:
name: novelWriter-${{ steps.build.outputs.BUILD_VERSION }}-Win-Setup-Signed
path: dist/*.exe
if-no-files-found: error
retention-days: 14
uses: ./.github/workflows/part_win_x64.yml
secrets: inherit
permissions:
contents: read

View File

@@ -0,0 +1,47 @@
name: Build Windows Launcher
on: workflow_dispatch
jobs:
buildLauncherWin64:
runs-on: windows-latest
permissions:
contents: read
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Build Launcher
id: build
run: |
Set-Location setup\windows
.\make.ps1
- name: Upload Unsigned Artifacts
id: upload-unsigned-artifact
uses: actions/upload-artifact@v7
with:
name: launcher
path: setup/windows/UmbraEdit.exe
if-no-files-found: error
retention-days: 14
- name: Submit Signing Request
uses: signpath/github-action-submit-signing-request@v2
with:
api-token: "${{ secrets.SIGNPATH_API_TOKEN }}"
organization-id: "0471e52c-66fa-4e9a-bfb9-36167095ca3f"
project-slug: "UmbraEdit"
signing-policy-slug: "release-signing"
artifact-configuration-slug: "launcher"
github-artifact-id: "${{ steps.upload-unsigned-artifact.outputs.artifact-id }}"
wait-for-completion: true
output-artifact-directory: "."
- name: Upload Signed Artifacts
uses: actions/upload-artifact@v7
with:
name: launcher-signed
path: UmbraEdit.exe
if-no-files-found: error
retention-days: 14

View File

@@ -1,32 +1,41 @@
name: i18n
on:
push:
pull_request:
branches:
- i18n/*
- main
- release
paths:
- i18n/*.ts
jobs:
buildI18n:
name: Build i18n
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Python Setup
uses: actions/setup-python@v5
uses: actions/setup-python@v6
with:
python-version: "3.11"
python-version: "3.14"
architecture: x64
- name: Install Packages (apt)
- name: Checkout Source
uses: actions/checkout@v7
- name: Install System Packages
run: |
sudo apt update
sudo apt install qttools5-dev-tools
- name: Checkout Source
uses: actions/checkout@v4
- name: Build Assets
run: python pkgutils.py qtlrelease
- name: Upload Artifacts
uses: actions/upload-artifact@v4
uses: actions/upload-artifact@v7
with:
name: nw-i18n
path: |
novelwriter/assets/i18n/*.qm
path: umbraedit/assets/i18n/*.qm
if-no-files-found: error
retention-days: 7

141
.github/workflows/part_appimage.yml vendored Normal file
View File

@@ -0,0 +1,141 @@
name: Part AppImage
on: workflow_call
jobs:
buildLinux-AppImage:
# Needs to stay on 22.04 as long as we're using manylinux_2_28
# as libxcb-cursor0 in 22.04 supports glibc >= 2.17
name: Build AppImage
runs-on: ubuntu-22.04
permissions:
contents: read
env:
PYTHON_VERSION: "3.14"
LINUX_TAG: "manylinux_2_28"
LINUX_ARCH: "x86_64"
steps:
- name: Python Setup
uses: actions/setup-python@v6
with:
python-version: "3.14"
architecture: x64
- name: Install Packages (apt)
run: |
sudo apt update
sudo apt install libxcb-cursor0
- name: Install Packages (pip)
run: pip install python-appimage setuptools
- name: Checkout Source
uses: actions/checkout@v7
- name: Download Artifacts
uses: actions/download-artifact@v8
with:
name: nw-assets
path: umbraedit/assets
- name: Build AppImage
id: build
run: |
wget https://github.com/AppImage/appimagetool/releases/download/continuous/appimagetool-$LINUX_ARCH.AppImage
chmod +x appimagetool-$LINUX_ARCH.AppImage
export APPIMAGE_TOOL_EXEC="$(pwd)/appimagetool-$LINUX_ARCH.AppImage"
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
python pkgutils.py build-appimage $LINUX_TAG $LINUX_ARCH $PYTHON_VERSION
- name: Upload Artifacts
uses: actions/upload-artifact@v7
with:
name: UmbraEdit-${{ steps.build.outputs.BUILD_VERSION }}-Linux-AppImage
path: dist_appimage/*.AppImage*
if-no-files-found: error
retention-days: 14
smokeTest:
name: Smoke Test AppImage (${{ matrix.distro }})
needs: buildLinux-AppImage
runs-on: ubuntu-22.04
permissions:
contents: read
strategy:
fail-fast: false
matrix:
include:
- distro: Ubuntu 22.04
image: ubuntu:22.04
- distro: Debian 12
image: debian:12
- distro: Fedora 40
image: fedora:40
- distro: Arch Linux
image: archlinux:latest
- distro: Manjaro
image: manjarolinux/base:latest
container:
image: ${{ matrix.image }}
steps:
- name: Install Runtime Dependencies
run: |
if command -v apt-get >/dev/null 2>&1; then
apt-get update
apt-get install -y ca-certificates libgl1 libxkbcommon0 libegl1 libfontconfig1 libglib2.0-0 libdbus-1-3
elif command -v dnf >/dev/null 2>&1; then
dnf install -y ca-certificates coreutils mesa-libGL mesa-libEGL libxkbcommon fontconfig glib2 dbus-libs
elif command -v pacman >/dev/null 2>&1; then
pacman -Syu --noconfirm --needed ca-certificates coreutils mesa libxkbcommon fontconfig glib2 dbus
fi
- name: Download AppImage Artifact
uses: actions/download-artifact@v8
with:
pattern: UmbraEdit-*-Linux-AppImage
merge-multiple: true
path: appimage-dist
- name: Run AppImage Smoke Test
run: |
set -eu
APPIMAGE_FILE="$(find appimage-dist -maxdepth 1 -name '*.AppImage' | head -n1)"
if [ -z "$APPIMAGE_FILE" ]; then
echo "No AppImage artifact found"
exit 1
fi
chmod +x "$APPIMAGE_FILE"
export QT_QPA_PLATFORM=offscreen
export QT_NO_XDG_DESKTOP_PORTAL=1
export APPIMAGE_EXTRACT_AND_RUN=1
set +e
timeout 25s "$APPIMAGE_FILE" > smoke.log 2>&1
EXIT_CODE=$?
set -e
if [ "$EXIT_CODE" -eq 139 ]; then
echo "AppImage crashed with segmentation fault"
exit 1
fi
if grep -Eiq 'segmentation fault|core dumped' smoke.log; then
echo "Crash signature found in smoke log"
exit 1
fi
if [ "$EXIT_CODE" -ne 0 ] && [ "$EXIT_CODE" -ne 124 ]; then
echo "Unexpected exit code: $EXIT_CODE"
cat smoke.log
exit 1
fi
- name: Upload Smoke Logs
if: always()
uses: actions/upload-artifact@v7
with:
name: appimage-smoke-log-${{ matrix.distro }}
path: smoke.log
if-no-files-found: ignore
retention-days: 14

44
.github/workflows/part_assets.yml vendored Normal file
View File

@@ -0,0 +1,44 @@
name: Part Assets
on:
workflow_call:
jobs:
buildAssets:
name: Build Assets
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Install System Packages
run: |
sudo apt-get update
sudo apt-get install -y qttools5-dev-tools latexmk texlive texlive-latex-extra
- name: Install UV and Python
uses: astral-sh/setup-uv@v10.2.0
with:
python-version: "3.14"
enable-cache: true
- name: Install Dependencies
run: |
uv sync --no-dev --group docs
- name: Build Assets
run: |
uv run --no-sync pkgutils.py build-assets
- name: Upload Artifacts
uses: actions/upload-artifact@v7
with:
name: nw-assets
path: |
umbraedit/assets/manual*.pdf
umbraedit/assets/sample.zip
umbraedit/assets/i18n/*.qm
if-no-files-found: error
retention-days: 14

82
.github/workflows/part_debian.yml vendored Normal file
View File

@@ -0,0 +1,82 @@
name: Part Debian
on:
workflow_call:
inputs:
publish:
required: false
type: boolean
default: false
build_number:
required: false
type: string
default: "0"
codename:
required: true
type: string
family:
required: true
type: string
image:
required: true
type: string
secrets:
CLOUDSMITH_API_KEY:
required: false
jobs:
buildPackage:
name: Build Debian Package
runs-on: ubuntu-latest
permissions:
id-token: write
contents: read
container:
image: ${{ inputs.image }}
steps:
- name: Install Checkout Prerequisites
run: |
apt-get update
apt-get install -y git ca-certificates python3
- name: Checkout Source
uses: actions/checkout@v7
- name: Download Assets Artifact
uses: actions/download-artifact@v8
with:
name: nw-assets
path: umbraedit/assets
- name: Install Native Packages
run: apt-get install -y $(python3 pkgutils.py build-deb-depends ${{ inputs.codename }})
- name: Build Package
run: python3 pkgutils.py build-deb ${{ inputs.codename }} --build ${{ inputs.build_number }} --install-source Cloudsmith
- name: Upload Artifacts
uses: actions/upload-artifact@v7
with:
name: nw-deb-${{ inputs.codename }}
path: dist_upload/*
if-no-files-found: error
retention-days: 14
- name: Set up Cloudsmith CLI with OIDC
if: ${{ inputs.publish }}
uses: cloudsmith-io/cloudsmith-cli-action@v3
with:
oidc-namespace: "saga-soft"
oidc-service-slug: "github-actions-lcpr"
verify-auth: true
- name: Publish to Cloudsmith
if: ${{ inputs.publish }}
run: |
CHANNEL="$(python3 pkgutils.py channel)"
REPO="stable"
if [ "$CHANNEL" = "pre" ]; then
REPO="testing"
fi
DEB_FILE="$(find dist_upload -name '*.deb')"
cloudsmith push deb "saga-soft/$REPO/${{ inputs.family }}/${{ inputs.codename }}" "$DEB_FILE" --republish

46
.github/workflows/part_flatpak.yml vendored Normal file
View File

@@ -0,0 +1,46 @@
name: Part Flatpak
on: workflow_call
jobs:
buildLinux-Flatpak:
runs-on: ubuntu-latest
steps:
- name: Install Packages
run: |
sudo apt-get update
sudo apt-get install -y flatpak flatpak-builder
flatpak remote-add --if-not-exists --user flathub https://flathub.org/repo/flathub.flatpakrepo
- name: Checkout Source
uses: actions/checkout@v7
- name: Install UV and Python
uses: astral-sh/setup-uv@v10.2.0
with:
python-version: "3.14"
enable-cache: true
- name: Install Dependencies
run: |
uv sync --no-dev --group build
- name: Download Artifacts
uses: actions/download-artifact@v8
with:
name: nw-assets
path: umbraedit/assets
- name: Build Flatpak
id: build
run: |
echo "BUILD_VERSION=$(uv run pkgutils.py version)" >> $GITHUB_OUTPUT
uv run --no-sync pkgutils.py build-flatpak
- name: Upload Artifacts
uses: actions/upload-artifact@v7
with:
name: UmbraEdit-${{ steps.build.outputs.BUILD_VERSION }}-Linux-Flatpak
path: dist_flatpak/*.flatpak*
if-no-files-found: error
retention-days: 14

37
.github/workflows/part_macos_amd64.yml vendored Normal file
View File

@@ -0,0 +1,37 @@
name: Part MacOS AMD64
on: workflow_call
jobs:
buildMac-AMD64:
name: Build on MACOS AMD64
runs-on: macos-latest
permissions:
contents: read
env:
PYTHON_VERSION: "3.13"
PACKAGE_ARCH: x86_64
MINICONDA_ARCH: x86_64
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Download Artifacts
uses: actions/download-artifact@v8
with:
name: nw-assets
path: umbraedit/assets
- name: Build App Bundle
id: build
run: |
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
./setup/macos/build.sh $PYTHON_VERSION $PACKAGE_ARCH $MINICONDA_ARCH
- name: Upload DMG
uses: actions/upload-artifact@v7
with:
name: UmbraEdit-${{ steps.build.outputs.BUILD_VERSION }}-MacOS-AMD64-DMG
path: dist_macos/*.dmg*
if-no-files-found: error
retention-days: 14

37
.github/workflows/part_macos_m1.yml vendored Normal file
View File

@@ -0,0 +1,37 @@
name: Part MacOS M1
on: workflow_call
jobs:
buildMac-M1:
name: Build on MacOS AARCH64
runs-on: macos-latest
permissions:
contents: read
env:
PYTHON_VERSION: "3.13"
PACKAGE_ARCH: aarch64
MINICONDA_ARCH: arm64
steps:
- name: Checkout
uses: actions/checkout@v7
- name: Download Artifacts
uses: actions/download-artifact@v8
with:
name: nw-assets
path: umbraedit/assets
- name: Build App Bundle
id: build
run: |
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $GITHUB_OUTPUT
./setup/macos/build.sh $PYTHON_VERSION $PACKAGE_ARCH $MINICONDA_ARCH
- name: Upload DMG
uses: actions/upload-artifact@v7
with:
name: UmbraEdit-${{ steps.build.outputs.BUILD_VERSION }}-MacOS-M1-DMG
path: dist_macos/*.dmg*
if-no-files-found: error
retention-days: 14

66
.github/workflows/part_pypi.yml vendored Normal file
View File

@@ -0,0 +1,66 @@
name: Part PyPI
on:
workflow_call:
inputs:
publish:
required: false
type: boolean
default: false
jobs:
buildPackage:
name: Build PyPI Package
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Download Assets Artifact
uses: actions/download-artifact@v8
with:
name: nw-assets
path: umbraedit/assets
- name: Install UV and Python
uses: astral-sh/setup-uv@v10.2.0
with:
python-version: "3.14"
enable-cache: true
- name: Build Package
run: uv run pkgutils.py build-pypi
- name: Upload Artifacts
uses: actions/upload-artifact@v7
with:
name: nw-pypi
path: |
dist_pypi/*.whl
dist_pypi/*.tar.gz
if-no-files-found: error
retention-days: 14
publishPackage:
name: Publish to PyPI
needs: buildPackage
if: ${{ inputs.publish }}
runs-on: ubuntu-latest
environment: pypi
permissions:
id-token: write
contents: read
steps:
- name: Download Package Artifact
uses: actions/download-artifact@v8
with:
name: nw-pypi
path: dist_pypi
- name: Install UV
uses: astral-sh/setup-uv@v10.2.0
- name: Publish Package
run: uv publish dist_pypi/*

64
.github/workflows/part_win_x64.yml vendored Normal file
View File

@@ -0,0 +1,64 @@
name: Part Windows X64
on: workflow_call
jobs:
buildWin-X64:
name: Build on Windows
runs-on: windows-2022
permissions:
contents: read
steps:
- name: Python Setup
uses: actions/setup-python@v6
with:
python-version: "3.14"
architecture: x64
- name: Install Packages (pip)
run: pip install tzdata
- name: Checkout Source
uses: actions/checkout@v7
- name: Download Assets
uses: actions/download-artifact@v8
with:
name: nw-assets
path: umbraedit/assets
- name: Build Setup Installer
id: build
run: |
echo "BUILD_VERSION=$(python pkgutils.py version)" >> $Env:GITHUB_OUTPUT
python pkgutils.py build-win-exe
- name: Upload Unsigned Artifacts
id: upload-unsigned-artifact
uses: actions/upload-artifact@v7
with:
name: UmbraEdit-${{ steps.build.outputs.BUILD_VERSION }}-Win-Setup
path: dist/*.exe
if-no-files-found: error
retention-days: 14
- name: Submit Signing Request
uses: signpath/github-action-submit-signing-request@v1
with:
api-token: "${{ secrets.SIGNPATH_API_TOKEN }}"
organization-id: "0471e52c-66fa-4e9a-bfb9-36167095ca3f"
project-slug: "UmbraEdit"
signing-policy-slug: "release-signing "
github-artifact-id: "${{ steps.upload-unsigned-artifact.outputs.artifact-id }}"
wait-for-completion: true
output-artifact-directory: "dist/"
parameters: |
version: "${{ steps.build.outputs.BUILD_VERSION }}"
- name: Upload Signed Artifacts
uses: actions/upload-artifact@v7
with:
name: UmbraEdit-${{ steps.build.outputs.BUILD_VERSION }}-Win-Setup-Signed
path: dist/*.exe
if-no-files-found: error
retention-days: 14

17
.github/workflows/policy.yml vendored Normal file
View File

@@ -0,0 +1,17 @@
name: Policy Checks
on:
pull_request:
branches:
- main
- release
jobs:
commitPolicy:
name: Commit Policy
uses: saga-soft/automation/.github/workflows/saga-soft-policy.yml@main
permissions:
contents: read
pull-requests: read
with:
policy-url: https://github.com/saga-soft/UmbraEdit/blob/main/AI_POLICY.md

View File

@@ -1,4 +1,4 @@
name: Flake8
name: Syntax
on:
push:
@@ -12,19 +12,30 @@ on:
jobs:
checkSyntax:
name: Linting and Type Checking
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Python Setup
uses: actions/setup-python@v5
with:
python-version: 3
architecture: x64
- name: Checkout Source
uses: actions/checkout@v4
- name: Install flake8
run: pip install -r requirements-dev.txt
- name: Syntax Check
uses: actions/checkout@v7
- name: Install UV and Python
uses: astral-sh/setup-uv@v10.2.0
with:
enable-cache: true
- name: Install Dependencies
run: |
flake8 --version
flake8 novelwriter --count --show-source --statistics
flake8 tests --count --show-source --statistics --extend-ignore ANN
uv sync --no-dev --group lint --group test
- name: Ruff Check
run: |
uv run --no-sync ruff --version
uv run --no-sync ruff format --check
uv run --no-sync ruff check --output-format github
- name: Pyright Check
run: |
uv run --no-sync pyright --version
uv run --no-sync pyright

View File

@@ -1,46 +0,0 @@
name: Linux
on:
push:
branches:
- main
- release
pull_request:
branches:
- main
- release
jobs:
testLinux:
strategy:
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
fail-fast: false
runs-on: ubuntu-latest
steps:
- name: Python Setup
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
architecture: x64
- name: Install Packages (apt)
run: |
sudo apt update
sudo apt install libenchant-2-dev qttools5-dev-tools aspell-en
- name: Checkout Source
uses: actions/checkout@v4
- name: Install Dependencies (pip)
run: |
pip install -U -r requirements.txt -r tests/requirements.txt
- name: Run Build Commands
run: |
python pkgutils.py qtlrelease
python pkgutils.py sample
- name: Run Tests
run: |
export QT_QPA_PLATFORM=offscreen
python -m pytest -v --cov=novelwriter --timeout=60
- name: Upload to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

View File

@@ -1,37 +0,0 @@
name: MacOS
on:
push:
branches:
- main
- release
pull_request:
branches:
- main
- release
jobs:
testMac:
runs-on: macos-13
steps:
- name: Python Setup
uses: actions/setup-python@v5
with:
python-version: "3.12"
architecture: x64
- name: Install Packages (brew)
run: |
brew install enchant
- name: Checkout Source
uses: actions/checkout@v4
- name: Install Dependencies (pip)
run: |
pip install -U pyobjc -r requirements.txt -r tests/requirements.txt
- name: Run Tests
run: |
export QT_QPA_PLATFORM=offscreen
python -m pytest -v --cov=novelwriter --timeout=60
- name: Upload to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

View File

@@ -1,33 +0,0 @@
name: Windows
on:
push:
branches:
- main
- release
pull_request:
branches:
- main
- release
jobs:
testWin:
runs-on: windows-latest
steps:
- name: Python Setup
uses: actions/setup-python@v5
with:
python-version: "3.12"
architecture: x64
- name: Checkout Source
uses: actions/checkout@v4
- name: Install Dependencies (pip)
run: |
pip install -U -r requirements.txt -r tests/requirements.txt
- name: Run Tests
run: |
python -m pytest -v --cov=novelwriter --timeout=60
- name: Upload to Codecov
uses: codecov/codecov-action@v4
env:
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}

308
.github/workflows/tests.yml vendored Normal file
View File

@@ -0,0 +1,308 @@
name: Tests
on:
push:
branches:
- main
- release
pull_request:
branches:
- main
- release
jobs:
testLinux:
runs-on: ubuntu-latest
strategy:
matrix:
python-version:
- "3.11"
- "3.12"
- "3.13"
- "3.14"
- "3.15"
fail-fast: false
name: Linux Python ${{ matrix.python-version }}
permissions:
contents: read
env:
COVERAGE_FILE: .coverage.py${{ matrix.python-version }}
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Install System Packages
timeout-minutes: 5
run: |
sudo apt update
sudo apt install qttools5-dev-tools
- name: Install UV and Python
uses: astral-sh/setup-uv@v10.2.0
with:
python-version: ${{ matrix.python-version }}
enable-cache: true
- name: Install Dependencies
run: |
uv sync --no-dev --group test
- name: Build Assets
run: |
uv run --no-sync pkgutils.py qtlrelease
uv run --no-sync pkgutils.py sample
- name: Run Tests
run: |
export QT_QPA_PLATFORM=offscreen
uv run --no-sync coverage run -m pytest -v --timeout=60
uv run --no-sync coverage report --skip-covered --show-missing
- name: Upload Coverage Data
uses: actions/upload-artifact@v7
with:
name: coverage-data-py${{ matrix.python-version }}
path: ${{ env.COVERAGE_FILE }}
include-hidden-files: true
retention-days: 1
testMac:
runs-on: macos-latest
name: MacOS Python 3.14
permissions:
contents: read
env:
COVERAGE_FILE: .coverage.mac
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Install System Packages
run: |
brew install enchant
- name: Install UV and Python
uses: astral-sh/setup-uv@v10.2.0
with:
python-version: "3.14"
enable-cache: true
- name: Install Dependencies
run: |
uv sync --no-dev --group test
- name: Build Assets
run: |
uv run --no-sync pkgutils.py sample
- name: Run Tests
run: |
export QT_QPA_PLATFORM=offscreen
uv run --no-sync coverage run -m pytest -v --timeout=60
uv run --no-sync coverage report --skip-covered --show-missing
- name: Upload Coverage Data
uses: actions/upload-artifact@v7
with:
name: coverage-data-mac
path: ${{ env.COVERAGE_FILE }}
include-hidden-files: true
retention-days: 1
testWin:
runs-on: windows-latest
name: Windows Python 3.14
permissions:
contents: read
env:
COVERAGE_FILE: .coverage.win
defaults:
run:
shell: bash
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Install UV and Python
uses: astral-sh/setup-uv@v10.2.0
with:
python-version: "3.14"
enable-cache: true
- name: Install Dependencies
run: |
uv sync --no-dev --group test
- name: Build Assets
run: |
uv run --no-sync pkgutils.py sample
- name: Run Tests
run: |
uv run --no-sync coverage run -m pytest -v --timeout=60
uv run --no-sync coverage report --skip-covered --show-missing
- name: Upload Coverage Data
uses: actions/upload-artifact@v7
with:
name: coverage-data-win
path: ${{ env.COVERAGE_FILE }}
include-hidden-files: true
retention-days: 1
coverageReport:
name: PR Coverage Report
needs:
- testLinux
- testMac
- testWin
if: github.event_name == 'pull_request' && github.event.pull_request.head.repo.full_name == github.repository
runs-on: ubuntu-latest
permissions:
contents: read
pull-requests: write
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Download Coverage Data
uses: actions/download-artifact@v8
with:
pattern: coverage-data-*
merge-multiple: true
- name: Install UV
uses: astral-sh/setup-uv@v10.2.0
- name: Combine Coverage Data
run: |
uvx coverage combine
uvx coverage report --skip-covered
- name: Build Comment Body
run: |
{
echo '<!-- coverage-report -->'
echo '### Coverage Report (Linux, macOS, Windows)'
echo
uvx coverage report --skip-covered --show-missing --format=markdown --precision=3
echo
echo "**Total: $(uvx coverage report --format=total --precision=3)%**"
} > coverage-comment.md
- name: Post PR Comment
env:
GH_TOKEN: ${{ github.token }}
PR_NUMBER: ${{ github.event.pull_request.number }}
REPO: ${{ github.repository }}
run: |
comment_id=$(gh api "repos/$REPO/issues/$PR_NUMBER/comments" --paginate --jq '.[] | select(.body | startswith("<!-- coverage-report -->")) | .id' | head -n1)
if [ -n "$comment_id" ]; then
gh api --method PATCH "repos/$REPO/issues/comments/$comment_id" -F body=@coverage-comment.md
else
gh pr comment "$PR_NUMBER" --body-file coverage-comment.md
fi
coverageSummary:
name: Action Coverage Report
needs:
- testLinux
- testMac
- testWin
if: github.event_name == 'pull_request'
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Download Coverage Data
uses: actions/download-artifact@v8
with:
pattern: coverage-data-*
merge-multiple: true
- name: Install UV
uses: astral-sh/setup-uv@v10.2.0
- name: Combine Coverage Data
run: |
uvx coverage combine
uvx coverage report --skip-covered
- name: Write Coverage Summary
run: |
{
echo '### Coverage Report (Linux, macOS, Windows)'
echo
uvx coverage report --skip-covered --show-missing --format=markdown --precision=3
echo
echo "**Total: $(uvx coverage report --format=total --precision=3)%**"
} >> "$GITHUB_STEP_SUMMARY"
testUbuntu24:
name: Ubuntu 24.04 & Sys Packages
runs-on: ubuntu-24.04
permissions:
contents: read
steps:
- name: Checkout Source
uses: actions/checkout@v7
- name: Install System Packages
timeout-minutes: 5
run: |
sudo apt update
sudo apt install \
python3-pyqt6 \
python3-pyqt6.qtsvg \
python3-pytest \
python3-pytestqt \
python3-enchant \
python3-pytest-timeout \
qt6-image-formats-plugins
- name: Build Assets
run: |
python3 pkgutils.py sample
- name: Run Tests
run: |
export QT_QPA_PLATFORM=offscreen
python3 -m pytest -v --timeout=60
testFedoraLatest:
name: Fedora 44 & Sys Packages
runs-on: ubuntu-latest
container:
image: fedora:44
permissions:
contents: read
steps:
- name: Install System Packages
timeout-minutes: 5
run: |
dnf -y update
dnf -y install \
git \
python3-enchant \
python3-pyqt6 \
python3-pytest \
python3-pytest-qt \
python3-pytest-timeout \
qt6-linguist \
qt6-qtimageformats
- name: Checkout Source
uses: actions/checkout@v7
- name: Run Build Commands
run: |
python pkgutils.py qtlrelease
python pkgutils.py sample
- name: Run Tests
run: |
export QT_QPA_PLATFORM=offscreen
python3 -m pytest -v --timeout=60

64
.gitignore vendored
View File

@@ -1,55 +1,87 @@
# Setup/Install
/MANIFEST
/build/
/build_*/
/deploy/
/dist/
/dist_*/
*.spec
*.egg-info
setup.iss
/novelwriter.desktop
/novelWriter.pyw
/umbraedit.desktop
/UmbraEdit.pyw
/setup/macos/Info.plist
/setup/windows/build
.flatpak-builder
.venv
.env
# Translations
/novelwriter/assets/i18n/*.qm
/umbraedit/assets/i18n/*.qm
.qmake.stash
i18n/*.qm
i18n/*.qph
# Documentation
/docs/build/
/novelwriter/assets/help/
/novelwriter/assets/manual.pdf
*.qch
*.qhc
/docs/source/locales/**/*.mo
/umbraedit/assets/manual*.pdf
.~lock.*
# Python Temp
# Python
/.python-version
__pycache__
*.pyc
# Sample Project
/novelwriter/assets/sample.zip
/sample/cache
/umbraedit/assets/sample.zip
/sample/meta
*.bak
*.lock
ToC.txt
/sample/**/*.bak
/sample/*.lock
/sample/ToC.txt
/sample/manifest.json
# PyTest
/prof/
/htmlcov/
/tests/temp
/tests/lipsum/cache
/tests/lipsum/meta
/tests/_temp
/.pytest_cache
/pytestdebug.log
# Coverage
/.coverage
/.coveragerc
/coverage.*
# Other
/test.py
.config
.local
*.patch
# IDE
.vscode
.ruff_cache
.nvimlog
# No AI files
AGENTS.md
CLAUSE.md
GEMINI.md
.claude/
.cursor*
.codex/
.gemini/
# Debug
/debug/
# Clean up accidentally committed files
# Added by B.D. Murphy 2026: exclude files accidentally committed during branding transition
Splh.jpeg
Oldwelcome.webp
.DS_Store
UmbraEdit_Projects/
Inner_Demon_1.2a.docm
requirements.txt
UmbraEdit_deb_Build_Script.txt

59
AI_POLICY.md Normal file
View File

@@ -0,0 +1,59 @@
# AI Policy
This is the AI policy of UmbraEdit and associated projects.
### Code Contributions
We consider code to be creative work, and we have a strong preference for feature contributions designed by actual
humans over the average and mediocre output of agentic and generative AI.
While we do not have a strict No-AI policy, we want to limit its use in this project. In general, we expect any
contributed code to hold up to maintainability and stability standards so that our users can rely on the software for
their creative work. This implies careful review, thorough test coverage, and beta testing of all features before they
reach live users. The requirements on code that isn't shipped to the user are less strict. This includes unit tests and
build tooling.
We recognise that AI tools can be useful in a developer's toolbox, alongside other tools that can edit or add code. In
addition to read-only operations, it is generally fine to use them for boilerplate, fixes, and otherwise editing and
extending existing code. However, you must not contribute fully or predominantly AI-generated features or other
bulk-generated code. This applies especially to core functionality.
In general, so-called vibe coding does not meet our code quality requirements, so this project is not suitable for such
contributions in any case. The licensing implications around generated code are also unclear, as AI models are trained
on material without consent or concern for original licensing.
No AI automation or agentic tools are used anywhere in this project on GitHub. Do not use your AI agents on your
contributions on GitHub either. Commits listed in any way as authored by, signed off by, or assisted by, AI tools are
explicitly not allowed. Pull requests containing such commits will be rejected. You should also not commit AI-specific
files into the code repository. Most of the common ones are in the git ignore file.
### Design Work
No design work generated by AI for UmbraEdit will be accepted. We do not control how third-party work like icon
libraries are created, but any artwork added to the app must be made by actual people.
### Translation Work
This project uses Crowdin to host the translation files for the user interface. Crowdin has a lot of AI integration and
tooling, which we do not use. The Crowdin translation interface provides AI translated suggestions, which the
translators may choose to use. All translations are proofread and approved by speakers of the respective languages.
### Application Features
We do not believe creative writing and generative AI go together. Therefore, there will not be any tooling or features
added to this project that will generate text for you. Language models have a real use case in text analysis that
predates generative AI, and such supportive tools **may** be in scope depending on how intrusive they are.
### Discussions and Comments
Please refrain from using AI to generate or respond to discussions, issues, and pull requests. Especially do not use AI
tools to generate long and verbose issue reports. It is OK to use AI for translations of comments or for accessibility
reasons. All text in the code or posted to this project must be in English.
*Last updated on 2026-10-03.*

146
BUILD_LINUX.md Normal file
View File

@@ -0,0 +1,146 @@
# UmbraEdit - Linux AMD64 Build Guide
UmbraEdit is developed on macOS but builds natively on Linux AMD64 and ARM64.
This guide covers building Linux install packages from source.
## Source Distribution
The source tarball (`umbraedit-2026.11.1.tar.gz`) includes everything needed to
build Linux packages:
```
umbraedit-2026.11.1/
├── pyproject.toml # Project metadata & dependencies
├── UmbraEdit.py # Application entry point
├── pkgutils.py # Packaging utility
├── run_tests.py # Test runner
├── setup/ # Packaging assets
│ ├── data/ # .desktop file, MIME type XML
│ ├── macos/ # macOS-specific packaging
│ └── windows/ # Windows-specific packaging
├── utils/ # Build scripts
│ ├── build_debian.py # .deb package builder
│ ├── build_appimage.py # AppImage builder
│ ├── build_all.py # Multi-platform build orchestrator
│ └── ...
├── umbraedit/ # Application source code
└── tests/ # Test suite
```
## Prerequisites on Linux
### Debian/Ubuntu
```bash
sudo apt-get update
sudo apt-get install \
python3 python3-pip \
python3-pyqt6 python3-pyqt6.qtsvg \
python3-enchant \
qt6-image-formats-plugins qt6-svg-plugins \
dh-python debhelper python3-build python3-setuptools \
python3-pytest python3-pytestqt python3-pytest-timeout \
appimagetool
```
### Fedora/RHEL
```bash
sudo dnf install \
python3 python3-pip \
python3-pyqt6 python3-enchant \
qt6-qtimageformats qt6-qtsvg \
python3-build python3-setuptools \
dpkg rpm-build appimagetool
```
### Arch Linux
```bash
sudo pacman -S \
python python-pip \
python-pyqt6 python-enchant \
qt6-imageformats qt6-svg \
python-build python-setuptools \
dpkg appimagetool
```
## Build Options
### Option 1: Install via Wheel (Simplest)
The pure Python wheel requires no compilation:
```bash
pip install umbraedit-2026.11.1-py3-none-any.whl
umbraedit
```
### Option 2: Install from Source Tarball
```bash
tar xzf umbraedit-2026.11.1.tar.gz
cd umbraedit-2026.11.1
pip install .
umbraedit
```
### Option 3: Build .deb Package
```bash
tar xzf umbraedit-2026.11.1.tar.gz
cd umbraedit-2026.11.1
# Build for Ubuntu Noble (24.04)
python3 utils/build_debian.py --distro noble --build 1
# The .deb will be in dist_deb/
sudo dpkg -i dist_deb/umbraedit_*_amd64.deb
```
Available distro targets: `bookworm`, `trixie`, `noble`, `resolute`, `stonking`, `wilma`
### Option 4: Build AppImage
```bash
pip install python-appimage
sudo apt-get install appimagetool
tar xzf umbraedit-2026.11.1.tar.gz
cd umbraedit-2026.11.1
python3 utils/build_appimage.py --linux ubuntu --arch amd64 --python 3.12
chmod +x dist_appimage/umbraedit-2026.11-amd64.AppImage
./dist_appimage/umbraedit-2026.11-amd64.AppImage
```
### Option 5: Build All Linux Packages
```bash
tar xzf umbraedit-2026.11.1.tar.gz
cd umbraedit-2026.11.1
python3 utils/build_all.py --platform linux --arch amd64
```
## Project Storage
UmbraEdit projects are stored in plain folders with an `nwProject.nwx` file.
The sample project included in the distribution can be used for testing:
```bash
umbraedit # Opens the welcome dialog
# Select "Sample Project" from the list, or browse to your .nwx file
```
## Version
Current development version: **2026.11.0004**
## License
GPL-3.0-or-later AND Apache-2.0 AND ISC AND MIT
UmbraEdit is based on novelWrite 2026.02 by Veronica Berglyd Olsen
(novelWriter.io), licenced under the same GPL v3.0 license.

File diff suppressed because it is too large Load Diff

View File

@@ -1,132 +0,0 @@
# Contributor Covenant Code of Conduct
## Our Pledge
We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, caste, color, religion, or sexual
identity and orientation.
We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.
## Our Standards
Examples of behavior that contributes to a positive environment for our
community include:
* Demonstrating empathy and kindness toward other people
* Being respectful of differing opinions, viewpoints, and experiences
* Giving and gracefully accepting constructive feedback
* Accepting responsibility and apologizing to those affected by our mistakes,
and learning from the experience
* Focusing on what is best not just for us as individuals, but for the overall
community
Examples of unacceptable behavior include:
* The use of sexualized language or imagery, and sexual attention or advances of
any kind
* Trolling, insulting or derogatory comments, and personal or political attacks
* Public or private harassment
* Publishing others' private information, such as a physical or email address,
without their explicit permission
* Other conduct which could reasonably be considered inappropriate in a
professional setting
## Enforcement Responsibilities
Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.
Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.
## Scope
This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at issues (at)
novelwriter.io. All complaints will be reviewed and investigated promptly and
fairly.
All community leaders are obligated to respect the privacy and security of the
reporter of any incident.
## Enforcement Guidelines
Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:
### 1. Correction
**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.
**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.
### 2. Warning
**Community Impact**: A violation through a single incident or series of
actions.
**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or permanent
ban.
### 3. Temporary Ban
**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.
**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.
### 4. Permanent Ban
**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.
**Consequence**: A permanent ban from any sort of public interaction within the
community.
## Attribution
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.1, available at
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].
Community Impact Guidelines were inspired by
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].
For answers to common questions about this code of conduct, see the FAQ at
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
[https://www.contributor-covenant.org/translations][translations].
[homepage]: https://www.contributor-covenant.org
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
[Mozilla CoC]: https://github.com/mozilla/diversity
[FAQ]: https://www.contributor-covenant.org/faq
[translations]: https://www.contributor-covenant.org/translations

View File

@@ -1,131 +1,179 @@
# Contributing Guide
See also our [Code of Conduct](https://github.com/saga-soft/UmbraEdit?tab=coc-ov-file#code-of-conduct)
and our [AI Policy](https://github.com/saga-soft/UmbraEdit/blob/main/AI_POLICY.md).
When contributing to this repository, please first discuss the change you wish to make with the
owner. Either via the issue tracker or on the discussions page. Especially if it is regarding new
features. If you just want to make a minor correction, like fix a typo or similar, feel free to
just make a pull request directly.
maintainers. For new and complex ideas, it is better to open a discussion before adding a new
feature request. If you just want to make a minor correction, like fix a typo or similar, feel free
to just make a pull request directly.
**The following contributions are welcome:**
* Bugfixes for new or existing bugs. Please also report new bugs in the issue tracker even if you
also provide a fix. It makes it easier to keep track of what has been fixed and when.
* Translations made via the [Crowdin project page](https://crowdin.com/project/novelwriter).
also provide a fix. It makes it easier to keep track of what has been fixed and when and to
populate our changelog.
* Translations made via the [Crowdin project page](https://crowdin.com/project/umbraedit).
* Translations of the documentation. These need to use Sphinx i18n tooling. Please start a
discussion before beginning such work as it requires some coordination.
* Improvements to the documentation. Particularly if the documentation is unclear. Please don't
make any larger changes to the documentation without discussing if with the maintainer first.
make any larger changes to the documentation without discussing them with a maintainer first.
* Adaptations, installation or packaging features targeting specific operating systems.
* Using AI as a coding assistant is fine as long as the code is of good quality and the scope of
change is small, but do not generate large chunks of code. Generated code is not only hard to
maintain, but also poses licensing issues.
**Please do not:**
* Make a pull request that restructures or reformats existing code. If you think some part of the
code could be improved, please make an issue thread or start a discussion. The same applies to
any text document in the repository.
* Make pull requests with AI generated code. This is not a project suitable for vibe coding.
Outright slop will result in the account being blocked.
## Running from Source
This project uses [uv](https://docs.astral.sh/uv/) to maintain dependencies. In order to run
UmbraEdit directly from checked out source, simply call from the root folder with:
```bash
uv run umbraedit
```
To set up a development environment with all needed dependencies, run:
```bash
uv sync
```
Many tasks, like building assets from source, are handled by the `pkgutils.py` helper tool.
This tool requires no dependencies for most commands, so you can either run it directly with
Python, or using `uv run`.
```bash
python pkgutils.py --help
```
The translation files needed at runtime can be built with:
```bash
python pkgutils.py qtlrelease
```
Default icon themes can be updated with:
```bash
python pkgutils.py icons default
```
### Running Tests
* New code must not break any existing tests.
* New code must come with tests that cover the code in full. This includes branch coverage. If the
code has branches that only runs on some OSes, they only need to be covered when test are run on
that OS. The test suite runs on Linux, Windows and MacOS.
* It is ok to use `pragma` comments with `no cover` and `no branch` if the code is not expected to
touch those areas or branches at runtime.
A helper script is provided for running tests. It simplifies coverage reporting and a few other
things. Run the following to see all details:
```bash
uv run run_tests.py --help
```
For instance, this command will run all tests off screen (`-o`), generate a coverage XML report for
your code editor (`-r`), and produce a terminal report with all missing lines and branches (`-l`).
```bash
uv run run_tests.py -orl
```
## Picking the Correct Branch for a Pull Request
The `main` branch is the default branch. For general changes, please make a new branch in your own
fork from the current `main` branch. Do not make pull requests from your copy of the `main` branch.
Pre-releases are generally made from the `main` branch, and full releases are always made from the
`release` branch. If you are submitting a fix to a current release you must do so from the
`release` branch. If you make such a fix on the `main` branch, **it cannot be included in a patch
release**. This also applies to the documentation for the latest release published on the main
website.
As of April 2024, releases are made from the `release` branch. If you are submitting a fix to a
current release you must do so from the `release` branch. If you make such a fix on the `main`
branch, **it cannot be included in a patch release**. This also applies to the documentation for
the latest release published on the main website.
New features are only added in full releases, so a feature pull request must be made to the `main`
branch. However, if the `main` branch is very close to a new full release, pull requests may not be
merged until the release is completed.
**Also check the following:**
This project uses GitHub milestones to plan releases, and only pull requests included in the
current release cycle will be merged to `main`. Milestone tickets are not set in stone and are
often moved to the next milestones.
* Make sure your code passes all tests and conforms to the style guide. You can check that the
code generally conforms by running the Python linting tool `flake8` from the root of the project
folder, although it doesn't check everything. The same check is also run on pull requests.
### Pull Request Check List
Make sure the pull request follows these rules:
* The `main` branch is the default branch. For general changes, please make a new branch in your
own fork from the current `main` branch. Do not make pull requests from your copy of the `main`
branch. The same applies to the `release` branch.
* Please provide a description of the changes in the pull request under the summary section of the
pull request template, and reference any related issues by providing the issue number.
* Do not change the version number.
* Do not submit files that were not actively changed but have otherwise been modified. This is
mostly an issue with translation files. The language tool may update all files in the `i18n`
folder.
pull request template, and reference any related issues by providing the issue number. Do not
post links to issue numbers as that breaks the integration. Stating the issue number on the form
`Closes #1234` is enough.
* Do not change the version number. This is done during the release process.
* Make sure the formatting and linting tools have been run locally before the pull request is made.
## Code of Conduct
There is a code of conduct. Please follow it in all your interactions with the project.
## Code Style
### Our Pledge
This code base uses camelCase convention for function and variable names. This differs from the
common convention of snake_case in Python. The reason for this is that UmbraEdit is built on the
Qt framework, where everything is camelCase.
In the interest of fostering an open and welcoming environment, we as contributors and maintainers
pledge to making participation in our project and our community a harassment-free experience for
everyone, regardless of age, body size, disability, ethnicity, gender identity and expression,
level of experience, nationality, personal appearance, race, religion, or sexual identity and
orientation.
Pretty much everything else regarding formatting is handled by the linter and formatter. This
project uses [ruff](https://docs.astral.sh/ruff/) for linting and formatting and
[pyright](https://github.com/microsoft/pyright) for type checking. The settings for these tools
are defined in `pyproject.toml`, and any submitted code must pass the following three commands:
Please see the [CODE_OF_CONDUCT](CODE_OF_CONDUCT.md) file for the full text.
## Code Style Guide
The source code of novelWriter broadly follows the [PEP8](https://www.python.org/dev/peps/pep-0008)
style guide, but with a few exceptions. Some key points are listed below.
**Line Length:**
* Source code lines can extend to the upper limit of 99 characters allowed by PEP8. 79 characters
is the recommended line length in PEP8, but this is often too restrictive. 99 characters are
acceptable when that is more practical. Readability has priority. Generally, if a code statement
requires multiple lines, the lines should wrap at 79 characters if possible. If wrapping can be
avoided by going to 99, then that is generally preferable.
* For text files, the text should be wrapped at 99 character. The exception is markdown image tags
and urls which can run past that limit.
**Variable and Function Names**
* PEP8 allows for camelCase for consistency with existing code. The Qt library uses camelCase, so
the novelWriter source code does too.
* The exception to the above is for constants. They should always be in upper snake case, like PEP8
states.
**Spaces, Indentation and Alignment**
* Only indentation by multiples of 4 spaces is allowed.
* No trailing spaces should occur on any line in the source code, including empty lines.
* All common line wrapping methods are allowed in the code, but avoid deep indentations.
* Aligning operators and attributes in columns with multiple spaces is not allowed by PEP8. The
rule is relaxed a bit here. Alignment is allowed when populating large dictionaries or setting
many class attributes. It does improve readability in such cases, but should not be overused.
**Type Annotation**
* All functions must be properly type annotated, and a return type stated in all cases.
* Do not use `List`, `Dict`, `Tuple`, etc, annotations that were deprecated in Python 3.9. You can
install the `flake8-pep585` extension to make sure you don't forget. This is also checked by the
syntax action run on pull requests.
* If annotations require a more recent Python version than the minimum version stated in the
project's `pyproject.toml`, hide it under an `if TYPE_CHECKING` condition so that the code can
still run on older versions. It's OK to require a more recent version for development.
### Linting with `flake8`
A good tool for checking Python code for errors and code style is `flake8`. The documentation is
available [here](https://flake8.pycqa.org/en/latest/).
The `.flake8` file in the root of this project has the following settings for that matches the
required code style:
```conf
[flake8]
ignore = E133,E221,E226,E228,E241,W503
max-line-length = 99
exclude = docs/*
```
The command line equivalent, with reporting, is:
```bash
flake8 . --count --ignore E133,E221,E226,E228,E241,W503 --max-line-length=99 --show-source --statistics
uv run ruff check
uv run ruff format
uv run pyright
```
Passing this check is required before contributions are merged. This is checked automatically when
you make a pull request. You can run the `flake8` command locally to check beforehand. The full
command will give you a detailed description of the code lines that do not conform to the standard.
### Line Length
Two of the ignored errors are due to the relaxed restriction on column alignment, these are the
E221 and E241 error codes.
* The line length of the source code is enforced by the formatter, and is set to 120 characters.
Docstrings should be wrapped manually at 79 characters for better readability.
* For text files, the text should be wrapped 120 character or less. The exception is Markdown image
tags and URLs which can run past that limit.
The code E226 is ignored because it doesn't actually follow the
[PEP8 recommendation](https://www.python.org/dev/peps/pep-0008/#other-recommendations)
of grouping longer equations by operator precedence like `2*a + 3*b` instead of `a * a + 3 * b`.
Generally, don't use spaces around `*`, `/` and `**`, but _do_ use spaces around `+` and `-`.
The same applies to the modulo operator `%`, hence E228 is also ignored.
### Internationalisation
* All comments and docstrings in the code must be in English.
* All text presented to the user must be wrapped in calls to Qt's translation framework, and the
spelling of this text **must** be British English. US English spelling **is not allowed** for
these strings. A US English translation is provided via the translation framework.
* Commit descriptions and pull requests must also be in English.
### License Headers and Credits
All code should add the license header on the exact format as used in other files. Update the title
as needed, and the copyright line. The year should be the year the code module was first created.
The default is:
```
Copyright (C) <YEAR> <Original Author Name> and UmbraEdit contributors.
```
For major changes to an existing file, don't touch the year, but you can append your name. By major
contributions is meant new code, like added new classes or larger functions, not modifications. Use
common sense since "UmbraEdit contributors" includes most modifications and changes.
```
Copyright (C) <YEAR> <Original Author Name>, <Your Name> and UmbraEdit contributors.
```
Make sure the `CREDITS.md` and `credits_en.htm` files are updated too if appropriate.

View File

@@ -1,26 +1,37 @@
# Credits
## Main Developer
## Main Developer novelWriter
* Veronica Berglyd Olsen
## Main Product Manager / Developer
* B.D. Murphy
## Contributors
Larger contributions were made by:
* Early Concept: Marian Lückhof
* Internationalisation: Bruno Meneguello
* Setup and Packaging: Rachel Powers
* Vim Mode: Alexis Dumelie
* UmbraEdit Rebranding and Word DOCX/DOCM Import: B.D. Murphy
For other contributions, see the project's [Contributors](https://github.com/vkbo/novelWriter/graphs/contributors) page.
For other contributions, see the project's [Contributors](https://github.com/saga-soft/UmbraEdit/graphs/contributors) page.
## Artwork
The artwork on the Welcome dialog was created by Louis Durrant.
The artwork on the Welcome dialog was generated with AI by B.D. Murphy. Reading print options through time.
UmbraEdit icon by B.D. Murphy using AI.
## Translations
The default language is English (UK) with English (US) as an option. These are the original
translators for the languages currently available:
* **Catalan:** Jaume Planas (jaumeplanas)
* **Czech:** Tomáš Zmek (perteus)
* **Dutch:** Martijn van der Kleijn (mvdkleijn)
* **French:** Jan Lüdke (jyhelle)
* **German:** Myian (HeyMyian)
@@ -35,40 +46,89 @@ translators for the languages currently available:
Additional larger translation contributions:
* **Dutch:** Lise Blok (risingphoenix73)
* **French:** Albert Aribaud (aaribaud)
* **Portuguese:** Oli Maia (olimaia)
Translations are managed on [Crowdin](https://crowdin.com/project/novelwriter), and more
contributions are listed on the project's Members page.
Translations of the documentation:
* **French:** Jean-Michel Heras (Karduin)
After the fork to UmbraEdit translations of text in the program are done via AI.
## Libraries
The following libraries are dependencies of novelWriter:
The following libraries are dependencies of UmbraEdit:
* **Qt5** by Qt Company
* **PyQt5** by Riverbank Computing
* **Qt6** by Qt Company
* **PyQt6** by Riverbank Computing
* **Enchant** by Dom Lachowicz
* **PyEnchant** by Dimitri Merejkowsky
## Assets
## Icon Themes
Some of the assets bundled with novelWriter were adapted from the following sources:
The default icon themes are subsets of icons from:
* **Typicons** icons by Stephen Hutchings (CC BY-SA 4.0)
* **Tomorrow** syntax themes by Chris Kempson (MIT License)
* **Owl** syntax themes by Sarah Drasner (MIT License)
* **Solarized** themes by Ethan Schoonover (MIT License)
* **Cyberpunk Night** theme by Anders Lemvigh (CC BY-SA 4.0)
* **Dracula** theme by Zeno Rocha (MIT License)
* **Snazzy Light** theme by Florian Reuschel (MIT License)
* **Fluent UI** by Microsoft (MIT License)
* **Lucide** by Cole Bemis and Lucide Contributors (ISC License)
* **Material Symbols** by Google Inc (Apache 2.0)
## Colour Themes
Colour themes included with UmbraEdit were adapted from the following sources:
* **Aura** themes by Dalton Menezes
* **B2T** themes by Bram de Haan
* **B4T** themes by Bram de Haan
* **Catppuccin** themes by Catppuccin Org
* **Dracula** theme by Zeno Rocha
* **Espresso** theme by Sainnhe Park and Antoine Cotten
* **Everforest** themes by Sainnhe Park
* **Horizon** themes by Jonathan Olaleye
* **New Moon** theme by Tania Rascia
* **Noctis** themes by Liviu Schera and contributors
* **Nord** theme by Sven Greb
* **Owl** themes by Sarah Drasner
* **Primer** themes by GitHub, Inc. and Myian
* **Rosé Pine** themes by Rosé Pine
* **Snazzy Light** theme by Florian Reuschel
* **Solarized** themes by Ethan Schoonover
* **Tango** themes by the Tango Desktop Project
* **Tomorrow** themes by Chris Kempson
Other themes were created for UmbraEdit:
* **Aura Bright** theme by Myian
* **Blue Streak** themes by Veronica Berglyd Olsen
* **Castle** themes by Myian
* **Chalky Soil** theme by Myian
* **Chernozem** theme by Myian
* **Cyberpunk Night** theme by Anders Lemvigh
* **Dark Arts** theme by Myian
* **Floral** themes by Myian
* **Friendly** themes by Myian
* **Full Moon** theme by Myian
* **Jewel Case** themes by Myian
* **LCARS** theme by Veronica Berglyd Olsen
* **Nordlicht** theme by Myian
* **Otium** themes by Myian
* **Paragon** theme by Myian
* **Ruby** themes by Myian
* **Selenium** themes by Myian
* **Sepia** themes by Myian
* **Sultana** themes by Myian
* **Today** themes by Veronica Berglyd Olsen
* **Vivid** themes by Myian
* **Warpgate** theme by Myian
* **Waterlily** themes by Myian
## Fonts
The font used for the main novelWriter logo, mimetype and text banners is Pridi. Other fonts are
used on buttons and icons.
The font used for the main UmbraEdit logo, mimetype and text banners is Pridi.
* **Pridi** by Cadson Demak (Open Font License, Version 1.1)
* **Source Sans Pro** by Paul D. Hunt (SIL Open Font License)
--> Caladea <--
## Special Mentions

View File

@@ -1,6 +1,28 @@
include pkgutils.py
include README.md
include LICENSE.md
include CONTRIBUTING.md
include CREDITS.md
include CHANGELOG.md
recursive-include novelwriter/assets *
recursive-include setup *
include AI_POLICY.md
include pyproject.toml
include UmbraEdit.py
include pkgutils.py
include run_tests.py
include build-linux.sh
include setup/macos/*
include setup/windows/*
include setup/linux/*
include setup/flatpak/*
include setup/data/*
include setup/appimage_launcher.sh
include utils/*.py
include utils/build_*.py
recursive-include docs *
recursive-include i18n *
recursive-exclude *.pyc
recursive-exclude __pycache__
global-exclude .DS_Store
global-exclude .gitkeep

BIN
NW_Splash.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -1,79 +1,73 @@
# novelWriter
# UmbraEdit
[![Linux](https://github.com/vkbo/novelWriter/actions/workflows/test_linux.yml/badge.svg?branch=main)](https://github.com/vkbo/novelWriter/actions/workflows/test_linux.yml)
[![Windows](https://github.com/vkbo/novelWriter/actions/workflows/test_win.yml/badge.svg?branch=main)](https://github.com/vkbo/novelWriter/actions/workflows/test_win.yml)
[![MacOS](https://github.com/vkbo/novelWriter/actions/workflows/test_mac.yml/badge.svg?branch=main)](https://github.com/vkbo/novelWriter/actions/workflows/test_mac.yml)
[![Flake8](https://github.com/vkbo/novelWriter/workflows/flake8/badge.svg)](https://github.com/vkbo/novelWriter/actions)
[![CodeCov](https://codecov.io/gh/vkbo/novelWriter/branch/main/graph/badge.svg)](https://codecov.io/gh/vkbo/novelWriter)
<img align="left" style="margin: 0 0 4px 0;" src="https://git.umbratools.com/umbragit/UmbraEdit/raw/main/umbraedit/assets/icons/umbraedit.svg">
<img align="left" style="margin: 0 0 4px 0;" src="https://raw.githubusercontent.com/vkbo/novelWriter/main/setup/novelwriter_readme.png">
novelWriter is a plain text editor designed for writing novels assembled from many smaller text
UmbraEdit is a plain text editor designed for writing novels assembled from many smaller text
documents. It uses a minimal formatting syntax inspired by Markdown, and adds a meta data syntax
for comments, synopsis, and cross-referencing. It's designed to be a simple text editor that allows
for easy organisation of text and notes, using human readable text files as storage for robustness.
The project format is well suited both for version control software and file synchronisation tools.
The project storage is suitable for version control software, and also well suited for file
synchronisation tools. All text is saved as plain text files with a meta data header. The core
project structure is stored in a single project XML file. Other meta data is primarily saved as
JSON files.
UmbraEdit is based on novelWrite 2026.02 by Veronica Berglyd Olsen (novelWriter.io) and is
licensed under the same GPL v3.0 license.
For more details, and how to install and use novelWriter, please see the main website and
documentation.
B.D. Murphy is modifying the original using AI to make it part of his Umbratools publishing system.
The ideas:
1) Write the novel. Make it simple while writing. Formatting is later.
2) Have the entire project together. Not the novel text here and metadata you need somewhere else. All together. 2.a) ePub, paperback (print pdf), audio all start with the same story text, but each needs something different. Put everything into one project ISBN, book blurb, search terms, genere/categories BISAC codes, cover, etc
3) With everything together publishing is simpler
4) The goal is to write (human written) a novel, then use AI to help with everything else. At the end of the process there will be ePub, Paperback/Hard cover, audio versions in 10 languages.
For more details, and how to install and use UmbraEdit, please see the main website and documentation.
This project is a fork of novelWrite. Taking the great start and extending it. I use AI to help.
**Project Links**
* Website: [novelwriter.io](https://novelwriter.io)
* Documentation: [docs.novelwriter.io](https://docs.novelwriter.io)
* Internationalisation: [crowdin.com/project/novelwriter](https://crowdin.com/project/novelwriter)
* PyPi Project: [pypi.org/project/novelWriter](https://pypi.org/project/novelWriter)
* Social Media: [fosstodon.org/@novelwriter](https://fosstodon.org/@novelwriter)
* Website: [UmbraEdit](https://umbratools.com/umbraedit)
* Documentation: [UmbraEdit Docs](https://umbratools.com/umbraedit/docs)
## Sponsors
<img align="left" style="height: 1.5em; margin: 0 0.5em 0 0;" src="https://raw.githubusercontent.com/vkbo/novelWriter/main/setup/signpath_logo.png">
Free code signing on Windows provided by [SignPath.io](https://about.signpath.io/),
certificate by [SignPath Foundation](https://signpath.org/).
This project is a fork of novelWrite. Taking the great start and extending it. I use AI to help._
## Implementation
novelWriter is written with Python 3 (3.9+) using Qt5 and PyQt5 (5.15 only), and is released on
Linux, Windows and macOS. It can in principle run on any Operating System that also supports Qt,
PyQt and Python.
UmbraEdit is written in Python and uses Qt6 with PyQt6 Python binding as the UI framework. It
runs on Linux, Windows and MacOS. It can in principle run on any Operating System that also
supports Qt, PyQt and Python.
<p align="center">
<img width="80%" src="https://raw.githubusercontent.com/saga-soft/UmbraEdit/main/setup/screenshot.png">
</p>
## Project Contributions
Please don't make feature pull requests without first having discussed them with the maintainer.
You can make a feature request in the issue tracker, or if the idea isn't fully formed, start a
discussion on the discussion page. Please also don't make pull requests to reformat or rewrite
existing code unless there is a very good reason for doing so.
You can make a feature request in the [issues tracker](https://github.com/saga-soft/UmbraEdit/issues),
or if the idea isn't fully formed, start a [discussion](https://github.com/saga-soft/UmbraEdit/discussions).
Please also don't make pull requests to reformat or rewrite existing code unless there is a very
good reason for doing so. Please do not submit AI generated content.
See our [AI Policy](https://github.com/saga-soft/UmbraEdit/blob/main/AI_POLICY.md) for details.
Fixes and patches are welcome. Contributions related to packaging and installing novelWriter will
also be appreciated, but please make an issue or a discussion topic first. Before contributing any
code, please also read the full
[Contributing Guide](https://github.com/vkbo/novelWriter/blob/main/CONTRIBUTING.md).
Fixes and patches are welcome. Contributions related to packaging and installing UmbraEdit will
also be appreciated. Before contributing any code, please read the full
[Contributing Guide](https://github.com/saga-soft/UmbraEdit/blob/main/CONTRIBUTING.md).
Project credits are available in [CREDITS.md](https://github.com/vkbo/novelWriter/blob/main/CREDITS.md).
## Original Credits
**Note:** As of April 2024 only pre-releases are made from the `main` branch. Full releases are
made from the `release` branch. So if you're submitting a fix to a current release, **including
changes to documentation**, they must be made to the `release` branch.
Project credits are available in [CREDITS.md](https://github.com/saga-soft/novelwriter/blob/main/CREDITS.md).
### Translations
**Note:** New features and most pre-releases are made on the `main` branch. Full releases are made
from the `release` branch. So if you're submitting a fix to a current release, **including changes
to documentation**, they must be made to the `release` branch.
New translations are always welcome. This project uses Crowdin to maintain translations, and you
can contribute translations at the [Crowdin project page](https://crowdin.com/project/novelwriter).
If you have any questions, feel free to post them to the
[Translations of novelWriter](https://github.com/vkbo/novelWriter/issues/93) issue thread.
For more details, and how to use Qt Linguist for translations, see the
[i18n instructions](https://github.com/vkbo/novelWriter/blob/main/i18n/README.md).
## Licence
This is Open Source software, and novelWriter is licenced under GPLv3. See the
This is Open Source software, and UmbraEdit is licensed under GPLv3. See the
[GNU General Public License website](https://www.gnu.org/licenses/gpl-3.0.en.html) for more
details, or consult the [License](https://github.com/vkbo/novelWriter/blob/main/LICENSE.md)
document. Bundled assets and their licences are listed in the
[Credits](https://github.com/vkbo/novelWriter/blob/main/CREDITS.md) document.
details, or consult the [License](https://github.com/saga-soft/UmbraEdit/blob/main/LICENSE.md)
document. Bundled assets and their licenses are listed in the
[Credits](https://github.com/saga-soft/UmbraEdit/blob/main/CREDITS.md) document.

157
RELEASE.md Normal file
View File

@@ -0,0 +1,157 @@
# UmbraEdit - Release Process
This document describes the release process for UmbraEdit, including versioning,
platform support, build workflows, and publishing.
## Versioning
UmbraEdit uses a **YYYY/MM.P####** versioning scheme:
| Component | Meaning |
|-----------|---------|
| `YYYY` | Release year (e.g., 2026) |
| `MM` | Release month (e.g., 11) |
| `####` | Patch/build sequence (e.g., 0001) |
Examples:
- `2026.11` - Major monthly release (November 2026)
- `2026.11.0001` - First development build of November 2026
- `2026.11.0002` - Second development build (e.g., new feature)
Git tags follow the format: `v2026.11`, `v2026.11.0001`, etc.
## Supported Platforms
| Platform | Architecture | Package Format | Build Host |
|----------|-------------|----------------|------------|
| Linux | amd64 | .deb, .rpm, AppImage | Linux |
| Linux | arm64 | .deb, .rpm, AppImage | Linux (ARM64) |
| macOS | arm64 | .dmg, .app | macOS (Apple Silicon) |
| macOS | amd64 | .dmg, .app | macOS (Intel) |
| Windows | amd64 | .msi, .exe | Windows |
| Windows | arm64 | .msi, .exe | Windows (ARM64) |
| iOS/iPadOS | arm64 | **NOT SUPPORTED** | N/A |
### iOS/iPadOS Support
UmbraEdit is **not available for iOS/iPadOS**. PyQt6 does not support iOS,
and UmbraEdit requires a full desktop Qt environment with keyboard, mouse,
and file system access. Porting to iOS would require a complete rewrite
using SwiftUI or a different cross-platform framework.
Users on iPad should use UmbraEdit via a VNC/remote desktop connection to a
desktop machine running UmbraEdit, or use a compatible web-based alternative.
## Release Workflow
### 1. Prepare Release
```bash
# Ensure working tree is clean
git status
# Update version in umbraedit/__init__.py
# __version__ = "2026.12.0001"
# Update CHANGELOG.md with new release entry
# Commit and tag
git add -A
git commit -m "release: prepare v2026.12"
git tag -a v2026.12 -m "Release v2026.12"
git push origin main --tags
```
### 2. Build All Platforms
On each target platform, run:
```bash
# Clone the tagged release
git clone https://git.umbratools.com/umbragit/UmbraEdit.git
cd UmbraEdit
git checkout v2026.12
# Build all packages for this platform
python utils/build_all.py --platform <platform> --arch <arch>
```
Available platforms: `linux`, `macos`, `windows`
Available architectures: `amd64`, `arm64`
### 3. Publish
Upload all build artifacts to the release server:
```bash
# Example: upload to Gitea releases
# Files to upload:
# Linux: dist_deb/umbraedit_*.deb, dist_appimage/*.AppImage
# macOS: dist_macos/umbraedit-*.dmg
# Windows: dist_win/umbraedit-*.exe, dist_win/umbraedit-*.msi
# Source: dist/umbraedit-*.tar.gz, dist/umbraedit-*.whl
```
Create a release on Gitea/GitHub and attach all artifacts.
## Build Artifacts
Each platform produces the following artifacts:
### Linux (.deb + AppImage)
| File | Location | Description |
|------|----------|-------------|
| `umbraedit_<version>_amd64.deb` | `dist_deb/` | Debian package |
| `umbraedit-<version>-amd64.AppImage` | `dist_appimage/` | Portable AppImage |
### macOS (.dmg + .app)
| File | Location | Description |
|------|----------|-------------|
| `umbraedit-<version>-arm64.dmg` | `dist_macos/` | macOS disk image |
| `UmbraEdit.app` | inside .dmg | macOS application bundle |
### Windows (.exe + .msi)
| File | Location | Description |
|------|----------|-------------|
| `umbraedit-<version>-amd64.exe` | `dist_win/` | Windows installer |
| `umbraedit-<version>-amd64.msi` | `dist_win/` | Windows MSI installer |
### Source
| File | Location | Description |
|------|----------|-------------|
| `umbraedit-<version>.tar.gz` | `dist/` | Source tarball |
| `umbraedit-<version>-py3-none-any.whl` | `dist/` | Pure Python wheel |
## Build Scripts
| Script | Purpose |
|--------|---------|
| `utils/build_all.py` | Unified build orchestrator for all platforms |
| `utils/build_debian.py` | Debian/Ubuntu .deb package builder |
| `utils/build_appimage.py` | AppImage builder |
| `utils/build_windows.py` | Windows installer builder |
| `setup/macos/build.sh` | macOS .dmg builder |
## Release Checklist
- [ ] Update version in `umbraedit/__init__.py`
- [ ] Update `CHANGELOG.md` with release notes
- [ ] Tag release: `git tag -a vYYYY.MM -m "Release vYYYY.MM"`
- [ ] Push tag: `git push origin vYYYY.MM`
- [ ] Build packages for all platforms
- [ ] Test installation on each platform
- [ ] Create release on Gitea/GitHub
- [ ] Attach all build artifacts
- [ ] Publish release notes
- [ ] Announce release
## Credits
UmbraEdit is based on novelWrite 2026.02 by Veronica Berglyd Olsen
(novelWriter.io), licenced under the same GPL v3.0 license.
Current development lead: B.D. Murphy

213
UMBRAEDIT.md Normal file
View File

@@ -0,0 +1,213 @@
# UmbraEdit — Project Scan & Structure
Copyright (C) 2026 B.D. Murphy and novelWriter contributors.
Documentation for the UmbraEdit project (renamed from novelWriter).
This document is a structural scan of the **UmbraEdit** codebase. It is intended for developers who want to modify or extend the project.
> UmbraEdit was created by cloning **novelWriter** (vkbo/saga-soft) into this folder and renaming the project to `UmbraEdit`. The full upstream git history is preserved (see §6).
---
## 1. Overview
| Property | Value |
|---|---|
| **Project name** | UmbraEdit |
| **Origin** | Renamed/rebased from [novelWriter](https://github.com/vkbo/novelWriter) (vkbo / saga-soft) |
| **Inherited version** | 26.3b1 (novelWriter v26 series; see `umbraedit/__init__.py`) |
| **Base version** | Based on novelWrite 2026.02 by Veronica Berglyd Olsen (novelWriter.io), GPL v3.0 |
| **Language** | Python 3.11+ |
| **UI framework** | Qt6 via PyQt6 |
| **Platforms** | Linux, Windows, macOS |
| **Storage model** | Plain-text project files (one document per scene + a project XML), well suited to Git and file-sync tools |
| **Formatting** | Minimal Markdown-like syntax plus a metadata syntax for comments, synopsis, and cross-references |
| **License** | `GPL-3.0-or-later AND Apache-2.0 AND ISC AND MIT` (see `pyproject.toml`, `LICENSE.md`) |
| **Entry point** | `UmbraEdit.py` → `umbraedit:main()` |
**Core idea:** a novel is built from many small plain-text documents organised in a binder/tree, with a composing editor and a compile/export step (DOCX, EPUB, HTML, ODT, Markdown, raw text, QDoc).
---
## 2. Repository layout (top level)
```
UmbraEdit/ <- this folder (was novelWriter2)
├── UmbraEdit.py <- application start script (imports umbraedit, calls main)
├── pyproject.toml <- project metadata, dependencies, ruff/pytest config
├── uv.lock <- dependency lockfile (regenerate if deps change)
├── run_tests.py <- pytest runner wrapper
├── pkgutils.py <- packaging / i18n utility script
├── README.md <- user-facing project page (mechanically renamed to UmbraEdit)
├── LICENSE.md
├── CHANGELOG.md <- historical novelWriter changelog (retains original attribution)
├── CONTRIBUTING.md
├── CREDITS.md
├── AI_POLICY.md
├── .gitignore
├── .env.example
├── docs/ <- Sphinx documentation source
├── i18n/ <- Qt translation sources (ue_XX.ts) — compiled .qm are gitignored
├── sample/ <- sample novel project (.nwx + content)
├── setup/ <- packaging: deb, windows, flatpak, macOS, appimage, icons
├── tests/ <- pytest suite (core, editor, gui, manuscript, models, story, text, tools, …)
├── umbraedit/ <- main Python package (was novelwriter/)
└── utils/ <- build scripts (appimage, debian, flatpak, pypi, windows, assets, docs)
```
**Note:** `AGENTS.md` is gitignored by this project (`.gitignore` line 68). This scan lives in `UMBRAEDIT.md` instead.
---
## 3. Package layout — `umbraedit/`
| Module / package | Responsibility |
|---|---|
| `__init__.py` | Application bootstrap, `__version__`, `main()` entry |
| `config.py` | Runtime configuration, paths, locale/i18n loading (`_ueLangPath`) |
| `constants.py` | Application-wide constants |
| `shared.py` | Shared data / singleton state |
| `enum.py`, `types.py`, `error.py` | Enums, shared types, error handling |
| `splash.py` | Splash screen |
| `guimain.py` | Main window / GUI assembly |
| `core/` | Project model: project, projectdata, projectxml, tree, item, document, storage, sessions, index, indexdata, projectsearch, spellcheck, status, options, coretools |
| `editor/` | The composing editor: editor, editordocument, highlighter, history, hovercard, header/footer, toolbars, viewer, search, completion, vim mode |
| `gui/` | Widgets/views: main menu, novel tree, project tree, sidebar, status bar, item details, search, theme |
| `manuscript/` | Compile/export: manuscript build, document build, settings |
| `models/` | Qt item models: item, novel, outline, search |
| `story/` | Outline/story view, story settings |
| `text/` | Text processing: counting, patterns, formats, autoreplace |
| `tools/` | Dictionaries, lorem ipsum, welcome, writing stats |
| `formats/` | Import/export filters: to/from DOCX, EPUB, HTML, ODT, Markdown, QDoc, raw text, TOML, QDoc |
| `dialogs/` | Preferences, project settings, about, split/merge, labels, links, quotes, word list |
| `extensions/` | Custom widgets: tab widget, switch, progress bars, event filters, etc. |
| `assets/` | Icons, images, themes (`.toml`), i18n project JSON, manual, credits |
---
## 4. How to build and run
### Requirements
- Python ≥ 3.11 (system Python 3.9.6 is **too old** — `match`/`case` syntax requires 3.10+)
- `pyqt6>=6.4`, `pyenchant>=3.3.0`
- macOS only: `pyobjc-framework-Cocoa`
### Run the application
```bash
cd /Volumes/1TB_APL_Storage/UmbraEdit
python3 UmbraEdit.py
# or, with the package on PYTHONPATH:
python3 -c "import umbraedit; umbraedit.main()"
```
### Syntax check (Python 3.11+)
```bash
/Volumes/Dock/worstauthor/.local/bin/python3.11 -m py_compile umbraedit/*.py umbraedit/**/*.py
```
### Tests
```bash
python3 run_tests.py # full pytest suite
python3 run_tests.py -m core # run a test marker group
```
Test configuration lives in `pyproject.toml` (`[tool.pytest.ini_options]`, testpaths=`tests`).
### Linting
The project uses **ruff** (see `[tool.ruff]` in `pyproject.toml`) and **pyright**.
### Packaging
See `setup/` and `utils/`:
- `utils/build_debian.py`, `build_windows.py`, `build_flatpak.py`, `build_appimage.py`, `build_pypi.py`
- `setup/windows/`, `setup/macos/`, `setup/debian/`, `setup/flatpak/`
---
## 5. i18n (translations)
- Translation sources: `i18n/ue_XX.ts` (renamed from `nw_XX.ts`)
- Compiled `.qm` files are **gitignored** (`i18n/*.qm`, `/umbraedit/assets/i18n/*.qm`) and generated at build time
- `umbraedit/config.py` loads `ue_<locale>.qm` from `_ueLangPath` (`umbraedit/assets/i18n`)
- Add a new language: create `i18n/ue_XX.ts` and regenerate the `.qm` with Qt Linguist / `lrelease`
---
## 6. Git system & Gitea publishing
### Current remote state
```
upstream https://github.com/vkbo/novelWriter.git (original novelWriter, preserved as reference)
```
There is **no `origin`** yet.
### What was done in this session
1. Cloned `https://github.com/vkbo/novelWriter.git` into this folder (`novelWriter2`).
2. Renamed the project `novelWriter` → `UmbraEdit` (package `novelwriter` → `umbraedit`, entry `novelWriter.py` → `UmbraEdit.py`, i18n `nw_*.ts` → `ue_*.ts`, packaging files, all imports/docs/tests/workflows).
3. Committed the rename:
- `70d74e675 chore: rename project from novelWriter to UmbraEdit` (474 files, all renames detected by git)
4. Archived the previous UmbraEdit (Rust/Tauri, pre-implementation spec project) preserving its git history:
- `/Volumes/1TB_APL_Storage/Archive/UmbraEdit_archived_20261105/`
5. Working tree is clean; branch is `main`.
### To publish as UmbraEdit on your Gitea server
A Gitea credential is **not** configured in this environment, and the Gitea server URL is not known yet, so `origin` was intentionally left unset. When ready:
```bash
# 1. Create the "UmbraEdit" repository on your Gitea server first
# 2. Add it as origin
git remote add origin <GITEA_URL>/UmbraEdit.git
# 3. Push
git push -u origin main
# 4. (Optional) keep pulling upstream novelWriter improvements
git fetch upstream
git merge upstream/main # or cherry-pick as desired
```
### Project URLs to update
`README.md` and `pyproject.toml` currently carry mechanically-renamed GitHub URLs
(`https://github.com/saga-soft/UmbraEdit`, etc.). Before publishing, replace these
with your Gitee instance URLs, e.g.:
- Repository → `https://<gitea>/<owner>/UmbraEdit`
- Issues → `https://<gitea>/<owner>/UmbraEdit/issues`
- Homepage / Documentation → your UmbraEdit docs site
---
## 7. Extension guidance (adding features)
The codebase is organised by concern, which makes it straightforward to extend:
| To add… | Touch… |
|---|---|
| New editor feature / syntax highlighting | `umbraedit/editor/` (editor, highlighter, history) |
| New project-tree / binder operation | `umbraedit/core/` (tree, project, projectdata, projectxml) |
| New import/export format | `umbraedit/formats/` (add a `toXxx` / `fromXxx` module) |
| New settings / preferences UI | `umbraedit/dialogs/preferences.py`, `umbraedit/config.py` |
| New view / dock panel | `umbraedit/gui/`, `umbraedit/guimain.py` |
| New data model / Qt model | `umbraedit/models/`, `umbraedit/core/item.py` |
| New compile/export target | `umbraedit/manuscript/` + a format module |
| New theme | `umbraedit/assets/themes/*.toml` |
| New translation | `i18n/ue_XX.ts` (§5) |
### Recommended workflow for new features
1. Create a feature branch off `main`: `git checkout -b feature/<name>`
2. Implement + add tests under `tests/` mirroring the source layout
3. Run `python3 run_tests.py` and `ruff` lint
4. Commit on the feature branch, then merge to `main`
5. Never let a week of work sit uncommitted (per project convention)
---
## 8. Files intentionally left as-is
| File | Reason |
|---|---|
| `uv.lock` | Dependency lockfile; still references `novelwriter` — regenerate (`uv lock`) if dependencies change |
| `setup/windows/novelWriter.exe` | Binary executable |
| `umbraedit/assets/images/welcome.webp` | Binary image (may still render "novelWriter" text) |
| `CHANGELOG.md`, `CREDITS.md` | Historical records retaining original novelWriter attribution |
---
*Generated as part of the UmbraEdit project setup. Scan date: 2026-11-05.*

245
UMBRAEDIT_UPDATE_PLAN.md Normal file
View File

@@ -0,0 +1,245 @@
# UmbraEdit — Toolchain & Dependency Update Plan
Copyright (C) 2026 B.D. Murphy and novelWriter contributors.
Plan for upgrading UmbraEdit (Python/PyQt6) toolchain and dependencies.
**Goal:** Bring UmbraEdit (Python/PyQt6) up to the latest stable versions of its tools and dependencies, starting from the current baseline.
**Baseline (as of 2026-11-05):**
- System Python: 3.9.6 (`/usr/bin/python3`) — **below** the project's `requires-python >=3.11`
- Available runtimes: Python 3.11.15, 3.12.13 (via `uv` in `~/.local/bin`)
- `uv`: 0.11.7 (2026-04-15) — outdated
- PyQt6: not yet installed in the 3.11 environment
- `pyproject.toml` deps: `pyqt6>=6.4`, `pyenchant>=3.3.0`, `pyobjc-framework-Cocoa` (darwin)
- Lockfile: `uv.lock` (references `novelwriter` package name — will need regen)
---
## 1. Target Versions
| Tool | Current | Target | Source |
|---|---|---|---|
| Python runtime | 3.9.6 (system) | 3.12.x (latest 3.12) or 3.13.x | `uv` / python.org |
| PyQt6 | not installed | latest 6.x | PyPI |
| pyenchant | >=3.3.0 | latest 3.x | PyPI |
| pyobjc-framework-Cocoa | pinned by pyproject | latest (macOS only) | PyPI |
| uv | 0.11.7 | latest | github.com/astral-sh/uv |
| ruff | (in `uv.lock`) | latest | PyPI |
| pyright | (in `uv.lock`) | latest | npm/PyPI |
| pytest | (in `uv.lock`) | latest 8.x | PyPI |
| pytest-qt | (in `uv.lock`) | latest | PyPI |
| coverage | (in `uv.lock`) | latest | PyPI |
| Sphinx + theme | (in `uv.lock`) | latest | PyPI |
| setuptools | 82.0.1 | latest | PyPI |
| pip | 26.0.1 | latest | ensure via `uv` |
> Prefer Python **3.12** as the primary target (mature, PyQt6 wheels widely available). Keep **3.11** as a secondary CI matrix entry since `requires-python` is `>=3.11`.
---
## 2. Phased Execution
### Phase 0 — Preparation & Safety
1. Ensure working tree is clean and all changes committed on `main` (already done).
2. Tag the current state as a rollback point:
```bash
git tag umbraedit/pre-toolchain-update
git push origin umbraedit/pre-toolchain-update
```
3. Record current working commands (`python3 UmbraEdit.py`, test runner) so you can compare before/after.
4. Back up `uv.lock` and `pyproject.toml`.
### Phase 1 — Upgrade `uv` and Python runtimes
1. Upgrade `uv` itself:
```bash
uv self upgrade
# or: curl -LsSf https://astral.sh/uv/install.sh | sh
```
2. Install the target Python(s) via `uv` (so they are isolated and reproducible):
```bash
uv python install 3.12
uv python install 3.11 # keep for CI matrix
uv python list
uv python pin 3.12 # sets default for this project (writes .python-version)
```
3. Verify:
```bash
uv run python --version # should report 3.12.x
```
### Phase 2 — Upgrade core runtime dependencies
Create a fresh virtual environment with the target Python and install the project's runtime deps at their latest compatible versions:
```bash
cd /Volumes/1TB_APL_Storage/UmbraEdit
uv venv --python 3.12
uv pip install "pyqt6>=6.4" "pyenchant>=3.3.0"
# macOS only:
uv pip install "pyobjc-framework-Cocoa"
```
Then:
1. Run the app to confirm it starts:
```bash
uv run python UmbraEdit.py
# or, after venv activation:
python UmbraEdit.py
```
2. If `pyqt6` wheels fail on the target Python, fall back to 3.11 or file an issue.
### Phase 3 — Upgrade build / lint / test tooling
Update the dependency groups in `pyproject.toml` (`build`, `docs`, `test`, `lint`) to latest, then sync:
```toml
[dependency-groups]
dev = [
{ include-group = "build" },
{ include-group = "docs" },
{ include-group = "test" },
{ include-group = "lint" },
]
build = ["pyyaml", "tzdata; sys_platform == 'win32'"]
docs = [
"docutils>=0.17.1",
"pygments>=2.7",
"sphinx-book-theme",
"sphinx-copybutton",
"sphinx-design",
"sphinx-favicon",
"sphinx-intl",
"sphinx>=5.0",
]
test = [
"coverage>=7.16.0",
"pytest-qt",
"pytest-timeout",
"pytest>=6.0.0",
"tzdata; sys_platform == 'win32'",
]
lint = ["pyright", "ruff"]
```
Suggested edits:
- Bump `pytest>=6.0.0` → `pytest>=8.0` (check PyPI for latest 8.x)
- Bump `coverage>=7.16.0` → latest
- Bump `sphinx>=5.0` → latest 7.x/8.x
- Keep `ruff` and `pyright` unpinned or with generous lower bounds so `uv lock` resolves latest
Then sync:
```bash
uv lock --upgrade # resolve all groups to latest
uv sync --all-groups # create .venv with everything
```
### Phase 4 — Regenerate `uv.lock`
`uv.lock` currently references the old `novelwriter` package name and is stale.
```bash
uv lock --upgrade
git diff uv.lock # review before committing
```
Commit the regenerated lockfile with the toolchain update.
### Phase 5 — Update `requires-python` and classifiers (optional)
If you want to drop 3.11 and standardize on 3.12+:
```toml
requires-python = ">=3.12"
```
And update classifiers accordingly. Otherwise keep `>=3.11` and test both 3.11 and 3.12 in CI.
### Phase 6 — Update Gitea CI workflows
The `.github/workflows/*.yml` files reference Python setup steps. Update them to:
- Use `actions/setup-python` with `python-version: ["3.11", "3.12"]` (or your Gitea Actions equivalent)
- Install via `uv sync --all-groups` instead of `pip install -e .`
- Run `uv run ruff check`, `uv run pyright`, `uv run pytest`
If your Gitea instance uses Gitea Actions, mirror the same matrix. If not, update the workflows to call `uv` explicitly.
### Phase 7 — Packaging scripts review
The `utils/` build scripts (`build_appimage.py`, `build_debian.py`, `build_flatpak.py`, `build_pypi.py`, `build_windows.py`) and `setup/` packaging may pin Python/Qt versions. Check each for:
- Hardcoded `python3` → should target the new runtime
- `qt_version = "6.11"` in `[tool.novelwriter.build] flatpak` → verify against latest Qt6
- `pyqt6>=6.4` lower bound → keep or raise
### Phase 8 — Validation
1. **Syntax/compile:** `uv run python -m py_compile umbraedit/ tests/ utils/`
2. **Import smoke:** `uv run python -c "import umbraedit; umbraedit.main(['--help'])"`
3. **Lint:** `uv run ruff check .` and `uv run pyright`
4. **Tests:** `uv run pytest` (or `uv run python run_tests.py`)
5. **App launch:** `uv run python UmbraEdit.py` — confirm main window opens
6. **Export formats:** exercise DOCX/EPUB/HTML/ODT export paths if sample data exists
### Phase 9 — Commit & publish
```bash
git add -A
git commit -m "chore: upgrade toolchain to Python 3.12 and latest deps
- Upgrade uv and pin Python 3.12 via .python-version
- Refresh pyproject.toml dependency groups to latest compatible versions
- Regenerate uv.lock
- Update Gitea CI workflows for uv + Python 3.11/3.12 matrix
- Review packaging scripts for hardcoded python/qt versions"
git push origin main
```
---
## 3. Rollback Plan
If anything breaks after the update:
```bash
# Restore previous state
git checkout umbraedit/pre-toolchain-update .
# or reset hard to the tag
git reset --hard umbraedit/pre-toolchain-update
git push origin main --force # only if already pushed and you need to undo
```
Also keep the old system Python 3.9.6 available (do not remove `/usr/bin/python3`), and keep the `upstream` remote pointing at the original novelWriter for reference.
---
## 4. Recommended Command Sequence (copy-paste ready)
```bash
cd /Volumes/1TB_APL_Storage/UmbraEdit
# 0. Tag rollback point
git tag umbraedit/pre-toolchain-update
git push origin umbraedit/pre-toolchain-update
# 1. Upgrade uv and pin Python 3.12
uv self upgrade
uv python install 3.12
uv python pin 3.12
uv run python --version
# 2. Create venv and install runtime deps at latest
uv venv --python 3.12
uv pip install "pyqt6>=6.4" "pyenchant>=3.3.0"
# 3. Smoke-test the app
uv run python UmbraEdit.py
# 4. Sync dev toolchains (lint/test/docs)
uv sync --all-groups
# 5. Regenerate lockfile
uv lock --upgrade
git diff uv.lock | head -100
# 6. Validate
uv run python -m py_compile umbraedit/ tests/ utils/
uv run ruff check .
uv run pytest
```
---
## 5. Notes & Risks
- **PyQt6 on Python 3.13:** Wheels may lag; if 3.13 is required, verify PyQt6 availability first. 3.12 is the safer target.
- **`pyobjc-framework-Cocoa`:** macOS-only; only install/test on darwin.
- **`uv.lock` diff:** Expect a large diff since the lockfile is stale; review that no unexpected major-version jumps occur (especially PyQt6 6.x → 7.x, which would be breaking).
- **CI:** Gitea Actions runners must have `uv` installed, or the workflows must install it as a step.
- **Application still runs on Python 3.9.6?** No — `match`/`case` syntax requires 3.10+, and `requires-python` is `>=3.11`. The system 3.9.6 must not be used to run UmbraEdit.

12
UmbraEdit.command Executable file
View File

@@ -0,0 +1,12 @@
#!/bin/zsh
# UmbraEdit Launcher for macOS
# Double-click to launch, or run: ./UmbraEdit.command
#
# Copyright (C) 2026 B.D. Murphy and novelWriter contributors.
# Created: macOS launcher script for UmbraEdit (renamed from novelWriter).
cd "$(dirname "$0")"
# Use the project's uv-managed Python 3.12 virtual environment
export UV_PYTHON_PREFERENCE="only-managed"
exec uv run python UmbraEdit.py "$@"

BIN
UmbraEdit.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 736 KiB

15
UmbraEdit.py Executable file
View File

@@ -0,0 +1,15 @@
#!/usr/bin/env python3
"""
UmbraEdit - Start Script
==========================
""" # noqa
import os
import sys
os.curdir = os.path.abspath(os.path.dirname(__file__))
if __name__ == "__main__":
import umbraedit
umbraedit.main(sys.argv[1:])

221
build-linux.sh Executable file
View File

@@ -0,0 +1,221 @@
#!/usr/bin/env bash
#=============================================================================
# UmbraEdit Linux Build Script
# ============================================================================
# Downloads the UmbraEdit source tarball and builds a .deb package and/or
# AppImage for Linux AMD64/ARM64.
#
# Usage:
# chmod +x build-linux.sh
# ./build-linux.sh [--arch amd64|arm64] [--distro ubuntu|debian] [--no-deb]
#
# No git clone required. Downloads the source tarball automatically.
#=============================================================================
set -euo pipefail
#-----------------------------------------------------------------------------
# Configuration
#-----------------------------------------------------------------------------
VERSION="2026.11.5"
RELEASE_VERSION="2026.11.0007"
GITEA_URL="http://192.168.123.18:2222/umbragit/UmbraEdit"
TARBALL_URL="${GITEA_URL}/-/archive/v${RELEASE_VERSION}/umbraedit-${RELEASE_VERSION}.tar.gz"
TARBALL="umbraedit-${RELEASE_VERSION}.tar.gz"
EXTRACTED_DIR="umbraedit-${RELEASE_VERSION}"
ARCH="${1:-amd64}"
DISTRO="${2:-ubuntu}"
BUILD_DEB="${3:-yes}"
echo "============================================================"
echo " UmbraEdit Linux Build Script"
echo "============================================================"
echo ""
echo " Version: ${RELEASE_VERSION}"
echo " Architecture: ${ARCH}"
echo " Distro: ${DISTRO}"
echo " Build .deb: ${BUILD_DEB}"
echo ""
#--------------------------------------------------------------
# Step 1: Check prerequisites
#--------------------------------------------------------------
echo "[1/5] Checking prerequisites..."
MISSING=0
for cmd in curl tar python3; do
if ! command -v "$cmd" &> /dev/null; then
echo " MISSING: $cmd"
MISSING=1
fi
done
if command -v apt-get &> /dev/null; then
PKG_MGR="apt-get"
elif command -v dnf &> /dev/null; then
PKG_MGR="dnf"
elif command -v pacman &> /dev/null; then
PKG_MGR="pacman"
else
PKG_MGR=""
fi
if [ "$PKG_MGR" = "" ]; then
echo ""
echo "ERROR: No supported package manager found (apt-get, dnf, or pacman)"
echo "Please install: python3, python3-pip, python3-pyqt6, python3-enchant,"
echo " dh-python, debhelper, python3-build, appimagetool"
exit 1
fi
echo " Package manager: $PKG_MGR"
echo " Prerequisites OK"
#--------------------------------------------------------------
# Step 2: Install system dependencies
#--------------------------------------------------------------
echo ""
echo "[2/5] Installing system dependencies..."
INSTALL_FAILED=0
if [ "$PKG_MGR" = "apt-get" ]; then
echo " Updating package lists..."
if ! sudo apt-get update 2>&1 | tail -5; then
echo ""
echo "============================================================"
echo " ERROR: apt-get update failed!"
echo "============================================================"
echo ""
echo " One of your package repositories is broken (likely a PPA or"
echo " third-party repo like NVIDIA's)."
echo ""
echo " To fix:"
echo " 1. Check /etc/apt/sources.list and /etc/apt/sources.list.d/"
echo " 2. Remove or disable any repositories that no longer exist"
echo " 3. Run: sudo apt-get update"
echo " 4. Then re-run this script: ./build-linux.sh"
echo ""
exit 1
fi
fi
echo ""
echo "Installing packages..."
install_pkg() {
if [ "$PKG_MGR" = "apt-get" ]; then
sudo apt-get install -y "$@" 2>&1 | tail -3
elif [ "$PKG_MGR" = "dnf" ]; then
sudo dnf install -y "$@" 2>&1 | tail -3
elif [ "$PKG_MGR" = "pacman" ]; then
sudo pacman -Sy --noconfirm "$@" 2>&1 | tail -3
fi
}
echo " Installing: python3 python3-pip python3-pyqt6 python3-enchant"
install_pkg python3 python3-pip python3-pyqt6 python3-enchant 2>&1 | tail -3 || {
echo ""
echo "============================================================"
echo " ERROR: Failed to install core dependencies"
echo "============================================================"
echo ""
echo " Please install manually and re-run:"
echo " sudo apt-get install python3 python3-pip python3-pyqt6 python3-enchant"
echo ""
exit 1
}
echo ""
echo " Installing: dh-python debhelper python3-build appimagetool"
install_pkg dh-python debhelper python3-build appimagetool 2>&1 | tail -3 || {
echo ""
echo "============================================================"
echo " WARNING: Some build tools failed to install"
echo "============================================================"
echo ""
echo " You may need to install these manually:"
echo " sudo apt-get install dh-python debhelper python3-build appimagetool"
echo ""
echo " Continuing anyway..."
}
echo " System dependencies installed"
#--------------------------------------------------------------
# Step 3: Download source tarball
#--------------------------------------------------------------
echo ""
echo "[3/5] Downloading source tarball..."
echo " URL: ${TARBALL_URL}"
if [ -f "$TARBALL" ]; then
echo " Archive already exists, skipping download"
else
curl -L -o "$TARBALL" "$TARBALL_URL"
echo " Downloaded: $(ls -lh "$TARBALL" | awk '{print $5}')"
fi
#--------------------------------------------------------------
# Step 4: Extract source
#--------------------------------------------------------------
echo ""
echo "[4/5] Extracting source..."
rm -rf "$EXTRACTED_DIR"
tar xzf "$TARBALL"
cd "$EXTRACTED_DIR"
echo " Extracted to: $(pwd)"
#--------------------------------------------------------------
# Step 5: Install Python dependencies
#--------------------------------------------------------------
echo ""
echo "[5/5] Installing Python dependencies..."
python3 -m pip install --user --upgrade pip setuptools wheel 2>&1 | tail -1
python3 -m pip install --user pyqt6 pyenchant 2>&1 | tail -1
echo " Python dependencies installed"
#--------------------------------------------------------------
# Step 6: Build packages
#--------------------------------------------------------------
echo ""
echo "[6/6] Building packages..."
# Build .deb (Debian/Ubuntu only)
if [ "$BUILD_DEB" = "yes" ] && [ "$PKG_MGR" = "apt-get" ]; then
echo ""
echo "Building .deb package..."
python3 utils/build_debian.py --distro "$DISTRO" --build 1
echo ""
echo " .deb package: dist_deb/umbraedit_*_${ARCH}.deb"
fi
# Build AppImage
echo ""
echo "Building AppImage..."
python3 utils/build_appimage.py --linux manylinux_2_28 --arch "$ARCH" --python 3.12
echo ""
echo " AppImage: dist_appimage/umbraedit-${RELEASE_VERSION}-${ARCH}.AppImage"
#--------------------------------------------------------------
# Done
#--------------------------------------------------------------
echo ""
echo "============================================================"
echo " Build Complete!"
echo "============================================================"
echo ""
echo "Artifacts:"
ls -la dist_deb/ 2>/dev/null || true
ls -la dist_appimage/ 2>/dev/null || true
echo ""
echo "To run UmbraEdit:"
echo " From AppImage: chmod +x dist_appimage/umbraedit-${RELEASE_VERSION}-${ARCH}.AppImage"
echo " ./dist_appimage/umbraedit-${RELEASE_VERSION}-${ARCH}.AppImage"
echo " From .deb: sudo dpkg -i dist_deb/umbraedit_*_${ARCH}.deb && umbraedit"
echo ""
echo "Source directory: $(pwd)"

View File

@@ -1,22 +0,0 @@
codecov:
require_ci_to_pass: yes
coverage:
precision: 2
round: nearest
range: "70...95"
status:
project:
default:
threshold: 1%
patch: no
changes: no
parsers:
gcov:
branch_detection:
conditional: yes
loop: yes
method: no
macro: no

File diff suppressed because it is too large Load Diff

View File

Before

Width:  |  Height:  |  Size: 27 KiB

After

Width:  |  Height:  |  Size: 27 KiB

View File

Before

Width:  |  Height:  |  Size: 26 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

Before

Width:  |  Height:  |  Size: 30 KiB

After

Width:  |  Height:  |  Size: 30 KiB

View File

@@ -1,31 +1,35 @@
"""
Configuration file for the Sphinx documentation builder.
Documentation: http://www.sphinx-doc.org/en/master/config
"""
""" # noqa
# -- Imports -----------------------------------------------------------------
import datetime
import os
import time
import datetime
# -- Project Information -----------------------------------------------------
project = "novelWriter"
copyright = f"{datetime.date.today().year}"
author = "Veronica Berglyd Olsen"
project = "UmbraEdit"
copyright = f"{datetime.date.today().year}" # noqa: A001
initFile = os.path.join(
os.path.dirname(__file__), os.pardir, os.pardir,
"novelwriter", "__init__.py"
)
with open(initFile) as inFile:
for aLine in inFile:
if aLine.startswith("__version__"):
release = aLine.split('"')[1].strip()
break
else:
release = "unknown"
if override_authors := os.environ.get("SPHINX_I18N_AUTHORS"):
author = override_authors
else:
author = "Veronica Berglyd Olsen"
if override_version := os.environ.get("SPHINX_I18N_VERSION"):
release = override_version
else:
initFile = os.path.join(os.path.dirname(__file__), os.pardir, os.pardir, "umbraedit", "__init__.py")
with open(initFile, encoding="utf-8") as inFile:
for aLine in inFile:
if aLine.startswith("__version__"):
release = "20" + aLine.split('"')[1].strip()
break
else:
release = "unknown"
version = release.partition("-")[0]
@@ -35,12 +39,14 @@ os.environ["TZ"] = "Europe/Oslo"
time.tzset()
needs_sphinx = "5.0"
extensions = ["sphinx_design"]
extensions = ["sphinx_design", "sphinx_copybutton"]
templates_path = ["_templates"]
source_suffix = ".rst"
source_suffix = {".rst": "restructuredtext"}
master_doc = "index"
today_fmt = "%A, %d %B %Y at %H:%M"
language = "en"
locale_dirs = ["locales/"]
gettext_compact = False
exclude_patterns = []
# -- Options for HTML Output -------------------------------------------------
@@ -51,17 +57,17 @@ html_static_path = ["_static"]
html_css_files = ["custom.css"]
html_theme_options = {
"logo": {
"image_light": "_static/novelwriter-light.png",
"image_dark": "_static/novelwriter-dark.png",
"image_light": "_static/umbraedit-light.png",
"image_dark": "_static/umbraedit-dark.png",
},
"show_toc_level": 2,
"show_navbar_depth": 1,
"repository_url": "https://github.com/vkbo/novelwriter",
"repository_url": "https://github.com/saga-soft/umbraedit",
"navigation_with_keys": True,
"use_repository_button": True,
"use_issues_button": True,
"pygment_light_style": "tango",
"pygment_dark_style": "dracula",
"pygments_light_style": "tango",
"pygments_dark_style": "dracula",
}
html_sidebars = {
"**": ["navbar-logo", "sidebar-title", "sbt-sidebar-nav"],
@@ -72,13 +78,8 @@ html_sidebars = {
latex_elements = {
"papersize": "a4paper",
"pointsize": "11pt",
"preamble": (
"\\usepackage[utf8]{inputenc}\n"
"\\DeclareUnicodeCharacter{2212}{\\textendash}\n"
),
"preamble": ("\\usepackage[utf8]{inputenc}\n\\DeclareUnicodeCharacter{2212}{\\textendash}\n"),
"figure_align": "htbp",
}
latex_logo = "_static/novelwriter-pdf.png"
latex_documents = [(
master_doc, "manual.tex", "User Guide", author, "manual"
)]
latex_logo = "_static/umbraedit-pdf.png"
latex_documents = [(master_doc, "manual.tex", None, author, "manual")]

View File

@@ -0,0 +1,92 @@
.. _docs_features_dialogue:
*********************
Dialogue Highlighting
*********************
Dialogue recognition and colour highlighting is available both while you're writing and in
generated manuscript documents.
The default language settings in UmbraEdit are for English. That includes the dialogue
highlighting settings. But many dialogue styles are supported. You can tune a number of settings
to fit your language and style preferences in the "Text Highlighting" section in **Preferences**.
You can mix and match these settings.
.. figure:: images/fig_dialogue_highlighting.png
The **Text Highlighting** section of **Preferences**.
Quoted Dialogue
===============
By default, dialogue highlighting is enabled for the double quote symbols you have defined in the
**Quotation Style** section of **Preferences**.
.. figure:: images/fig_dialogue_quote_styles.png
The **Quotation Style** section of **Preferences**.
You can change which quote symbols are highlighted by selecting one of "None", "Single", "Double",
or "Both" from the "Highlight dialogue" setting under **Text Highlighting**.
You can also enable or disable the "Allow open-ended dialogue" setting to allow for the style where
multi-paragraph dialogue is not closed until the last paragraph.
.. admonition:: Limitations
Dialogue highlighting for single quotes is difficult to process when the same single quote
symbol is also used for apostrophes. There isn't a good solution to this. Your best option in
the cases where the highlighting is wrong is to insert an alternative apostrophe symbol instead.
See :ref:`docs_more_typographical_symbols_apostrophe` for more details.
Alternative Dialogue
====================
You can use the "Alternative dialogue symbols" setting for custom dialogue wrapper symbols. These
are highlighted in a different colour than regular dialogue.
The intended use case here is if you use an alternative style to distinguish a different style of
communication. The feature idea came from a science fiction series where mind-to-mind communication
used a different quotation style.
Dialogue Line Symbols
=====================
In some languages, a single symbol at the start of a paragraph can indicate that the whole
paragraph is dialogue. For instance, this symbol can be a short dash (en dash).
.. figure:: images/fig_dialogue_line.png
An example of dialogue starting with a short dash.
You can enable this feature by adding the symbols to the "Dialogue line symbols" setting. Multiple
symbols are allowed.
Dialogue with Narrator Break
============================
The dialogue symbol setting will not detect if the dialogue ends in the paragraph. In some styles
there is no way to actually indicate the switch from dialogue to narration; in others there are.
These a narrator break symbols are usually dashes. You can select one of the supported dash symbols
for narrator breaks. These can be used with any of the above dialogue recognition settings.
.. figure:: images/fig_dialogue_narrator_break.png
An example of dialogue starting with a short dash and a long dash narrator break.
Alternating Dialogue and Narration
==================================
The alternating dialogue and narration style is supported with the "Alternating dialogue/narration
symbol" setting. It can be set to one of the supported dashes. This style will switch into dialogue
mode when it first encounters the selected dash in a paragraph, and switch back out when it sees
the next one, and so forth.
.. figure:: images/fig_dialogue_alternating.png
An example of alternating dialogue and narration using a long dash.

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 45 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 81 KiB

View File

@@ -1,17 +1,21 @@
.. _a_kb:
.. _docs_features_shortcuts:
******************
Keyboard Shortcuts
******************
Most features in novelWriter are available as keyboard shortcuts. This is a reference list of those
Most features in UmbraEdit are available as keyboard shortcuts. This is a reference list of those
shortcuts. Most of them are also listed in the application's user interface.
.. note::
On MacOS, replace :kbd:`Ctrl` with :kbd:`Cmd`.
.. note::
Shortcuts marked with (*) are remapped when Vim Mode is enabled and no longer work as listed in
the tables below. See :ref:`docs_features_vim_mode` for more details.
.. _a_kb_main:
Main Window Shortcuts
=====================
@@ -20,7 +24,7 @@ Main Window Shortcuts
:header: "Shortcut", "Description"
":kbd:`F1`", "Open the online user manual"
":kbd:`F5`", "Open the **Build Manuscript** tool"
":kbd:`F5`", "Open the **Manuscript Build** tool"
":kbd:`F6`", "Open the **Writing Statistics** tool"
":kbd:`F8`", "Toggle **Focus Mode**"
":kbd:`F9`", "Re-build the project's index"
@@ -28,18 +32,16 @@ Main Window Shortcuts
":kbd:`Ctrl+,`", "Open the **Preferences** dialog"
":kbd:`Ctrl+E`", "Switch or toggle focus for the editor or viewer"
":kbd:`Ctrl+T`", "Switch or toggle focus for the project tree or novel view"
":kbd:`Ctrl+Q`", "Exit novelWriter"
":kbd:`Ctrl+Q`", "Exit UmbraEdit"
":kbd:`Ctrl+Shift+,`", "Open the **Project Settings** dialog"
":kbd:`Ctrl+Shift+O`", "Open the Welcome dialog to open or create a project"
":kbd:`Ctrl+Shift+S`", "Save the current project"
":kbd:`Ctrl+Shift+T`", "Switch focus to the outline view"
":kbd:`Ctrl+Shift+W`", "Close the current project"
":kbd:`Shift+F1`", "Open the local user manual (PDF) if it is available"
":kbd:`Shift+F6`", "Open the **Project Details** dialog"
":kbd:`Shift+F8`", "Toggle tree pane visibility"
.. _a_kb_tree:
Project Tree Shortcuts
======================
@@ -56,14 +58,12 @@ Project Tree Shortcuts
":kbd:`Ctrl+L`", "Open the **Quick Links** menu"
":kbd:`Ctrl+N`", "Open the **Create New Item** menu"
":kbd:`Ctrl+O`", "Open the selected document in the editor"
":kbd:`Ctrl+R`", "Open the selected document in the viewer"
":kbd:`Ctrl+R`", "Open the selected document in the viewer (*)"
":kbd:`Ctrl+Up`", "Move selected item one step up in the tree"
":kbd:`Ctrl+Down`", "Move selected item one step down in the tree"
":kbd:`Ctrl+Shift+Del`", "Move the selected item to Trash"
.. _a_kb_editor:
Document Editor Shortcuts
=========================
@@ -93,7 +93,6 @@ Text Formatting Shortcuts
":kbd:`Ctrl+'`", "Wrap selected text, or word under cursor, in single quotes"
":kbd:`Ctrl+""`", "Wrap selected text, or word under cursor, in double quotes"
":kbd:`Ctrl+/`", "Toggle comment format for block or selected text"
":kbd:`Ctrl+0`", "Remove format for block or selected text"
":kbd:`Ctrl+1`", "Change block format to heading level 1"
":kbd:`Ctrl+2`", "Change block format to heading level 2"
":kbd:`Ctrl+3`", "Change block format to heading level 3"
@@ -106,6 +105,7 @@ Text Formatting Shortcuts
":kbd:`Ctrl+B`", "Format selected text, or word under cursor, with bold"
":kbd:`Ctrl+D`", "Format selected text, or word under cursor, with strike through"
":kbd:`Ctrl+I`", "Format selected text, or word under cursor, with italic"
":kbd:`Ctrl+M`", "Highlight selected text, or word under cursor"
":kbd:`Ctrl+Shift+/`", "Remove format for block or selected text"
":kbd:`Ctrl+Shift+D`", "Toggle ignored text format for block or selected text"
@@ -116,26 +116,37 @@ Other Editor Shortcuts
.. csv-table::
:header: "Shortcut", "Description"
":kbd:`F7`", "Re-run the spell checker on the document"
":kbd:`Ctrl+.`", "Open the context menu at the current cursor location"
":kbd:`Ctrl+A`", "Select all text in the document"
":kbd:`Ctrl+C`", "Copy selected text to clipboard"
":kbd:`Ctrl+K`", "Activate the insert commands (see list in :ref:`a_kb_ins`)"
":kbd:`Ctrl+R`", "Open or reload the current document in the viewer"
":kbd:`Ctrl+S`", "Save the current document"
":kbd:`Ctrl+V`", "Paste text from clipboard to cursor position"
":kbd:`Ctrl+W`", "Close the current document"
":kbd:`Ctrl+X`", "Cut selected text to clipboard"
":kbd:`Ctrl+Y`", "Redo latest undo"
":kbd:`Ctrl+Z`", "Undo latest changes"
":kbd:`Ctrl+Backspace`", "Delete the word before the cursor"
":kbd:`Ctrl+Del`", "Delete the word after the cursor"
":kbd:`Ctrl+F7`", "Toggle spell checking"
":kbd:`Ctrl+Return`", "Open the tag or reference under the cursor in the viewer"
":kbd:`Ctrl+Shift+A`", "Select all text in the current paragraph"
":kbd:`F7`", "Re-run the spell checker on the document"
":kbd:`Ctrl+.`", "Open the context menu at the current cursor location"
":kbd:`Ctrl+A`", "Select all text in the document"
":kbd:`Ctrl+C`", "Copy selected text to clipboard"
":kbd:`Ctrl+K`", "Activate the insert commands (see list in :ref:`docs_features_shortcuts_insert`)"
":kbd:`Ctrl+R`", "Open or reload the current document in the viewer (*)"
":kbd:`Ctrl+S`", "Save the current document"
":kbd:`Ctrl+V`", "Paste text from clipboard to cursor position"
":kbd:`Ctrl+W`", "Close the current document"
":kbd:`Ctrl+X`", "Cut selected text to clipboard"
":kbd:`Ctrl+Y`", "Redo latest undo"
":kbd:`Ctrl+Z`", "Undo latest changes"
":kbd:`Ctrl+0`", "Reset zoom"
":kbd:`Ctrl++`", "Zoom in"
":kbd:`Ctrl+=`", "Zoom in"
":kbd:`Ctrl+-`", "Zoom out"
":kbd:`Ctrl+_`", "Zoom out"
":kbd:`Ctrl+Backspace`", "Delete the word before the cursor"
":kbd:`Ctrl+Del`", "Delete the word after the cursor"
":kbd:`Ctrl+F7`", "Toggle spell checking"
":kbd:`Ctrl+Return`", "Open the tag or reference under the cursor in the viewer"
":kbd:`Ctrl+Shift+Return`", "Open the tag or reference under the cursor in the editor"
":kbd:`Ctrl+Shift+A`", "Select all text in the current paragraph"
":kbd:`Ctrl+Shift+V`", "Paste text as plain text from clipboard to cursor position"
":kbd:`Ctrl+Left`", "Move to previous word."
":kbd:`Ctrl+Right`", "Move to next word."
":kbd:`Ctrl+Up`", "Move to previous paragraph."
":kbd:`Ctrl+Down`", "Move to next paragraph."
.. _a_kb_ins:
.. _docs_features_shortcuts_insert:
Insert Shortcuts
----------------
@@ -151,7 +162,7 @@ a key or key combination for the inserted content.
":kbd:`Ctrl+K`, :kbd:`_`", "Insert a long dash (em dash)"
":kbd:`Ctrl+K`, :kbd:`.`", "Insert an ellipsis"
":kbd:`Ctrl+K`, :kbd:`'`", "Insert a modifier apostrophe"
":kbd:`Ctrl+K`, :kbd:`*`", "Insert a list bullet"
":kbd:`Ctrl+K`, :kbd:`*`", "Insert a bullet symbol"
":kbd:`Ctrl+K`, :kbd:`%`", "Insert a per mille symbol"
":kbd:`Ctrl+K`, :kbd:`~`", "Insert a figure dash (same width as a number)"
":kbd:`Ctrl+K`, :kbd:`−`", "Insert a short dash (en dash)"
@@ -165,6 +176,7 @@ a key or key combination for the inserted content.
":kbd:`Ctrl+K`, :kbd:`G`", "Insert a ``@tag`` keyword"
":kbd:`Ctrl+K`, :kbd:`H`", "Insert a short description comment"
":kbd:`Ctrl+K`, :kbd:`L`", "Insert a ``@location`` keyword"
":kbd:`Ctrl+K`, :kbd:`M`", "Insert a ``@mention`` keyword"
":kbd:`Ctrl+K`, :kbd:`O`", "Insert an ``@object`` keyword"
":kbd:`Ctrl+K`, :kbd:`P`", "Insert a ``@plot`` keyword"
":kbd:`Ctrl+K`, :kbd:`S`", "Insert a synopsis comment"
@@ -183,8 +195,6 @@ a key or key combination for the inserted content.
":kbd:`Ctrl+K`, :kbd:`Shift+Space`", "Insert a thin space"
.. _a_kb_viewer:
Document Viewer Shortcuts
=========================
@@ -194,5 +204,10 @@ Document Viewer Shortcuts
":kbd:`Alt+Left`", "Move backward in the view history"
":kbd:`Alt+Right`", "Move forward in the view history"
":kbd:`Ctrl+C`", "Copy selected text to clipboard"
":kbd:`Ctrl+0`", "Reset zoom"
":kbd:`Ctrl++`", "Zoom in"
":kbd:`Ctrl+=`", "Zoom in"
":kbd:`Ctrl+-`", "Zoom out"
":kbd:`Ctrl+_`", "Zoom out"
":kbd:`Ctrl+Shift+A`", "Select all text in the current paragraph"
":kbd:`Ctrl+Shift+R`", "Close the document viewer"
":kbd:`Ctrl+Shift+R`", "Close the document viewer (*)"

View File

@@ -0,0 +1,110 @@
.. _docs_features_story:
**************
Story Comments
**************
A special set of comment styles allow for annotating your text with structure information. There
are two styles of comments available. They are an extension to regular comments as described in
:ref:`docs_usage_comments`.
.. versionadded:: 2.7
Story Structure Comments
========================
You can annotate story structure by using the ``%Story`` style of comment. To use the feature,
make the first word of a comment ``Story``, followed by a period, a structure term, a colon, a
space and the text for that term.
Usage
-----
The story term can be anything that you want to track in the manuscript. This construct is intended
to make it easier to extract metadata from a work to perform a structural analysis of the story.
There are probably as many ways to examine story structure as there are authors and editors
combined. For this reason the story tag is flexible. You can use any terms you want and track any
aspect of the story that serves your purposes.
An example method has been advanced by Shawn Coyne in *The Story Grid*. This method asserts that a
story is composed of "beats", and that each beat has an inciting incident, a complication, a
crisis, and a resolution. One might capture these elements of a beat where a character overcomes
their fear of giving a speech as:
:bdg-info:`Example`
.. code-block:: md
### Scene
%Synopsis: Carol overcomes her fear of giving a speech.
%Story.incite: Carol is pleased to be invited to a conference to see her boss deliver a keynote.
%Story.complication: Carol's boss calls in sick and asks her to deliver a big speech.
%Story.crisis: Carol has a fear of appearing on stage.
%Story.resolution: Carol engages the help of a coach who helps her overcome her fears and delivers a great speech.
Other analytical models propose tracking a scene's pace, how it affects the mood of the story, or
which element(s) of the story's genre are being satisfied. An author can use this mechanism to
track any element of a scene. Some examples include time of day, how much time passes in the scene,
or even the physical form of a shape-shifting character. If a story involves magic, one could track
which wand a main character has in hand. It's up to the author.
When the story and other scene metadata is extracted into a tabular form, it is possible to get a
comprehensive overview of the story and to identify possible issues. For example, so many
fast-paced scenes without a break that readers might become fatigued or over-stimulated.
Output
------
The story structure comments can be included in the manuscript, and are formatted similarly to
the synopsis comments:
.. figure:: images/fig_story_structure_manuscript.png
A set of story structure comments as shown in the Manuscript tool.
When you export your project data from the Outline View, all story structure terms are added as
columns to the exported file, which can then be opened in the spread sheet software of your choice.
Story Notes
===========
Story notes are similar to story structure comments, but have no predefined meaning. Essentially
they are a generalisation of the story structure comment, and the only point of having this
additional format is to allow you do filter them in and out of your manuscript independently.
You can annotate story notes by using the ``%Note`` style of comment. To use the feature,
make the first word of a comment ``Note``, followed by a period, a term, a colon, a space and the
text for the note.
Usage
-----
These notes are free form, but one intended use case is to add consistency annotations to your text
to remind yourself where you have described something that must be checked against other parts of
your text later on.
:bdg-info:`Example`
.. code-block:: md
### Scene
%Synopsis: Carol overcomes her fear of giving a speech.
%Note.consistency: This is the first time in the story Carol gives a speech.
Output
------
Story notes are included in the manuscript in exactly the same way story structure comments are,
but has a separate inclusion setting in the build settings. They are also included in CSV exports
from the **Outline View**.

View File

@@ -0,0 +1,126 @@
.. _docs_features_vim_mode:
********
Vim Mode
********
.. _Vim: https://www.vim.org/
Vim_ is a keyboard-centric text editor. "Vim mode" refers to another editor implementing the
ability to perform a subset of vim motions. This will allow you to write, select, edit, copy,
paste, navigate, etc, efficiently by using keyboard commands.
Vim is modal. Three such modes have been implemented in UmbraEdit:
- **Normal** mode is the default mode used to navigate text.
- **Insert** mode is where you can write text like in a 'normal' text editor.
- **Visual** mode is for selecting text, with:
- **Visual** mode for per character selection.
- **V-Line** mode for per-line selection.
The vim mode setting is found in the **Features** section of the **Preferences**.
.. note::
Vim mode is an advanced feature. When you enable it, the text editor will behave very
differently than a standard text editor. A label in the footer of the editor will show which of
the vim modes it is in.
Mode Switching
==============
To switch between the various vim modes, these keystrokes implemented:
.. csv-table::
:header: "From Mode", "To Mode", "Keystrokes"
"Normal", "Insert", ":kbd:`i`, :kbd:`I`, :kbd:`a`, :kbd:`A`, :kbd:`o`, :kbd:`O`"
"Insert", "Normal", ":kbd:`Esc`"
"Normal", "Visual", ":kbd:`v`, :kbd:`V`"
"Visual", "V-Line", ":kbd:`V`"
"V-Line", "Visual", ":kbd:`v`"
"Visual", "Normal", ":kbd:`Esc`, :kbd:`v`"
"V-Line", "Normal", ":kbd:`Esc`, :kbd:`V`"
You can exit visual mode back to normal mode by pressing :kbd:`Esc`, but all visual mode commands
that logically "terminate" the visual mode usage will return you to normal mode.
For instance, press :kbd:`V` to enter V-Line mode, extend the selection to the next line with
:kbd:`j`, and press :kbd:`y` to yank (copy). You are now automatically put back in normal mode as
you have completed selecting your text.
Implemented Keystrokes (Vim Motions)
====================================
The table below shows the vim motions currently implemented in UmbraEdit.
.. csv-table::
:header: "Motion", "Mode(s)", "Description"
":kbd:`i`", "Normal → Insert", "Enter insert mode"
":kbd:`I`", "Normal → Insert", "Jump to start of line and enter insert"
":kbd:`v`", "Normal → Visual", "Enter character-wise visual mode"
":kbd:`V`", "Normal → V-Line", "Enter line-wise visual mode"
":kbd:`dd`", "Normal", "Delete (cut) current line"
":kbd:`x`", "Normal", "Delete character under cursor"
":kbd:`w`", "Normal / Visual", "Move to next word start"
":kbd:`b`", "Normal / Visual", "Move to previous word start"
":kbd:`e`", "Normal / Visual", "Move to next word end"
":kbd:`dw`", "Normal", "Delete from cursor to next word start"
":kbd:`de`", "Normal", "Delete from cursor to next word end"
":kbd:`db`", "Normal", "Delete from cursor to previous word start"
":kbd:`d$`", "Normal", "Delete from cursor to end of line"
":kbd:`yw`", "Normal", "Yank (copy) from cursor to next word start"
":kbd:`gg`", "Normal / Visual", "Jump to first line"
":kbd:`G`", "Normal / Visual", "Jump to last line"
":kbd:`yy`", "Normal", "Yank current line"
":kbd:`p`", "Normal", "Paste after current line or cursor"
":kbd:`P`", "Normal", "Paste before current line or at cursor"
":kbd:`o`", "Normal → Insert", "Open new line below and enter insert"
":kbd:`O`", "Normal → Insert", "Open new line above and enter insert"
":kbd:`$`", "Normal / Visual", "Move to end of line"
":kbd:`0`", "Normal / Visual", "Move to start of line"
":kbd:`a`", "Normal → Insert", "Enter insert after cursor"
":kbd:`A`", "Normal → Insert", "Enter insert at end of line"
":kbd:`u`", "Normal", "Undo last change"
":kbd:`Ctrl+R`", "Normal", "Redo last undone change (*)"
":kbd:`zz`", "Normal", "Centre cursor vertically"
":kbd:`h`", "Normal / Visual", "Move left"
":kbd:`j`", "Normal / Visual", "Move down"
":kbd:`k`", "Normal / Visual", "Move up"
":kbd:`l`", "Normal / Visual", "Move right"
":kbd:`d`", "Visual / V-Line", "Delete selection"
":kbd:`x`", "Visual / V-Line", "Delete selection"
":kbd:`y`", "Visual / V-Line", "Yank selection"
.. note::
Shortcuts marked with (*) are remapped when Vim Mode is enabled. These are shortcuts that
usually do other things when Vim Mode is off.
Known Issues
============
* Differing behaviour from vim: :kbd:`j` and :kbd:`k` move by displayed line when a line is
wrapped, like :kbd:`gj` and :kbd:`gk` in vim. All other line commands act on the full line.
* :kbd:`Esc` in normal mode will leave Focus Mode if there is no pending command to cancel.
* Differing behaviour from vim: the :kbd:`e` command behaves a bit differently with regards to the
last character of a word. The behaviour is inconsistent with vim but functional and still logical
to use. The cursor is placed at the end of the word after the last character rather than on the
last character.
.. code-block::
test
^ Cursor placed here in vim
test
^ Cursor placed here in UmbraEdit vim mode
You will only really ever notice this behaviour if you try to combine the :kbd:`e` command with
another. For instance, :kbd:`de` will not delete the last character but delete forward as it
starts one character after the word boundary.

Binary file not shown.

Binary file not shown.

Before

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 72 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 87 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 103 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 151 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 185 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 530 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 540 KiB

View File

@@ -1,11 +1,11 @@
######################
novelWriter User Guide
######################
##########
User Guide
##########
| **Release Version:** |release|
| **Updated:** |today|
novelWriter is an open source plain text editor designed for writing novels assembled from
UmbraEdit is an open source plain text editor designed for writing novels assembled from
individual text documents. It uses a minimal formatting syntax inspired by Markdown, and adds a
meta data syntax for comments, synopsis, and cross-referencing. It is designed to be a simple text
editor that allows for easy organisation of text and notes, using human readable text files as
@@ -16,80 +16,77 @@ storage for robustness.
:align: center
:width: 500
The project storage is suitable for version control software, and also well suited for file
synchronisation tools. All text is saved as plain text files, and your project data as standard
data formats in XML and JSON. See :ref:`a_storage` for more details.
Any operating system that has Python 3 and the Qt 5 libraries should be able to run novelWriter.
It runs fine on Linux, Windows and MacOS, and users have tested it on other platforms as well.
See :ref:`a_started` for more details.
**Useful Links**
* Website: https://novelwriter.io
* Documentation: https://docs.novelwriter.io
* Public Releases: https://releases.novelwriter.io
* Internationalisation: https://crowdin.com/project/novelwriter
* Source Code: https://github.com/vkbo/novelWriter
* Source Releases: https://github.com/vkbo/novelWriter/releases
* Issue Tracker: https://github.com/vkbo/novelWriter/issues
* Feature Discussions: https://github.com/vkbo/novelWriter/discussions
* PyPi Project: https://pypi.org/project/novelWriter
* Social Media: https://fosstodon.org/@novelwriter
* Website: https://umbraedit.io
* Documentation: https://docs.umbraedit.io
* Public Releases: https://releases.umbraedit.io
* Internationalisation: https://crowdin.com/project/umbraedit
* Source Code: https://github.com/saga-soft/UmbraEdit
* Source Releases: https://github.com/saga-soft/UmbraEdit/releases
* Issue Tracker: https://github.com/saga-soft/UmbraEdit/issues
* Feature Discussions: https://github.com/saga-soft/UmbraEdit/discussions
* PyPi Project: https://pypi.org/project/UmbraEdit
* Social Media: https://fosstodon.org/@umbraedit
.. toctree::
:hidden:
Main Page <self>
self
More Documents <https://umbraedit.io/more/>
.. toctree::
:maxdepth: 1
:caption: Introduction
:caption: Getting Started
:hidden:
int_introduction
int_overview
int_started
int_howto
int_glossary
usage/introduction
usage/organising_project
usage/chapters_and_scenes
usage/basic_formatting
usage/comments
usage/tags_and_references
usage/alignment_and_indent
usage/advanced_formatting
usage/front_back_matter
usage/howto
.. toctree::
:maxdepth: 1
:caption: Using novelWriter
:caption: The User Interface
:hidden:
usage_breakdown
usage_project
usage_writing
usage_format
usage_shortcuts
usage_typography
user_interface/main_window
user_interface/projects
user_interface/editor_viewer
user_interface/split_and_merge
user_interface/manuscript
user_interface/formatting
user_interface/statistics
.. toctree::
:maxdepth: 1
:caption: Organising Your Project
:caption: Other Features
:hidden:
project_overview
project_structure
project_references
project_manuscript
features/dialogue
features/story_comments
features/shortcuts
features/vim_mode
.. toctree::
:maxdepth: 1
:caption: Additional Details
:caption: In-Depth Topics
:hidden:
more_customise
more_projectformat
more_counting
more/counting
more/typography
more/dictionaries
more/customise
more/handling_errors
more/project_format
.. toctree::
:maxdepth: 1
:caption: Technical Topics
:hidden:
tech_locations
tech_storage
tech_source
tech_tests
technical/locations
technical/storage
technical/source
technical/tests

View File

@@ -1,64 +0,0 @@
.. _a_glossary:
********
Glossary
********
.. glossary::
:sorted:
Root Folder
A "Root Folder" is a top level folder of the project tree in novelWriter. Each type of root
folder has a specific icon to identify it. For an overview of available root folder types,
see :ref:`a_proj_roots`.
Novel Documents
These are documents that are created under a "Novel" :term:`root folder`. They behave
differently than :term:`Project Notes`, and have some more restrictions. For instance, they
can not exist in folders intended only for project notes. See the :ref:`a_struct` chapter for
more details.
Project Notes
Project Notes are unrestricted documents that can be placed anywhere in your project. You
should not use these documents for story elements, only for notes. Project notes are the
source files used by the Tags and References system. See the :ref:`a_references` chapter for
more details on how to use them.
Tag
A tag is a user defined value assigned as a tag to a section of your :term:`Project Notes`.
It is optional, and can be defined once per heading. It is set using the :term:`keyword`
syntax ``@tag: value``, where ``value`` is the user defined part. Each tag can be referenced
in another file using one of the :term:`reference` keywords. See :ref:`a_references` chapter
for more details.
Reference
A reference is one of a set of :term:`keywords<keyword>` that can be used to link to a
:term:`tag` in another document. The reference keywords are specific to the different
:term:`root folder` types. A full overview is available in the :ref:`a_references` chapter.
Project Index
The project index is a record of all headings in a project, with all their meta data like
synopsis comments, :term:`tags<tag>` and :term:`references<reference>`. The project index is
kept up to date automatically, but can also be regenerated manually from the
:guilabel:`Tools` menu or by pressing :kbd:`F9`.
Context Menu
A context menu is a menu that pops up when you right click something in the user interface.
In novelWriter, you can often also open a context menu by pressing the keyboard shortcut
:kbd:`Ctrl+.`.
Headings
Each level of headings in :term:`Novel Documents` have a specific meaning in terms of the
structure of the story. That is, they determine what novelWriter considers a partition, a
chapter, a scene or a text section. For :term:`Project Notes`, the heading levels don't
matter. For more details on headings in novel documents, see :ref:`a_struct_heads`.
Keyword
A keyword in novelWriter is a special command you put in the text of your documents. They are
not standard Markdown, but are used in novelWriter to add information that is interpreted by
the application. For instance, keywords are used for :term:`tags<tag>` and
:term:`references<reference>`.
Keywords must always be on their own line, and the first character of the line must always be
the ``@`` character. The keyword must also always be followed by a ``:`` character, and the
values passed to the command are added after this, separated by commas.

View File

@@ -1,119 +0,0 @@
.. _a_howto:
*************
Tips & Tricks
*************
.. _Discussions Page: https://github.com/vkbo/novelWriter/discussions
This is a list of hopefully helpful little tips on how to get the most out of novelWriter.
.. note::
This section will be expanded over time. If you would like to have something added, feel free to
contribute, or start a discussion on the project's `Discussions Page`_.
Managing the Project
====================
.. dropdown:: Create a Project from a Template
:animate: fade-in-slide-down
On the Welcome dialog's **Create New Project** form, you can select to "Prefill Project" from
the content of a different project. This feature is most useful if you copy a project you have
dedicated to be a template project. If you have a structure and settings you want to use for
every new project, this is the best solution.
.. dropdown:: Merge Multiple Documents Into One
:animate: fade-in-slide-down
If you need to merge a selection of documents in your project into a single document, you can
achieve this by first making a new folder for just that purpose, and drag all the documents you
want merged into this folder. Then you can right click the folder, select :guilabel:`Transform`
and :guilabel:`Merge Documents in Folder`.
In the dialog that pops up, the documents will be in the same order as in the folder, but you
can rearrange them here of you wish. See :ref:`a_ui_tree_split_merge` for more details.
Layout Tricks
=============
.. dropdown:: Align Paragraphs with Line Breaks
:animate: fade-in-slide-down
If you have line breaks in you paragraphs, and also want to apply additional text alignment or
indentation, you must apply the alignment tags to the first line.
For example, this will centre the two lines.
.. code-block:: md
>> Line one is centred. <<
Line two is also centred.
This text is not centred, because it is a new paragraph.
See :ref:`a_fmt_align` for more details.
.. dropdown:: Create a Simple Table
:animate: fade-in-slide-down
The formatting tools available in novelWriter don't allow for complex structures like tables.
However, the editor does render tabs in a similar way that regular word processors do. You can
set the width of a tab in **Preferences**.
The tab key should have the same distance in the editor as in the viewer, so you can align text
in columns using the tab key, and it should look the same when viewed next to the editor.
This is most suitable for your notes, as the result in exported documents cannot be guaranteed
to match. Especially if you don't use the same font in your manuscript as in the editor.
.. dropdown:: Turn Off First Line Indent for a Paragraph
:animate: fade-in-slide-down
If you have first line indent enabled, but have a specific paragraph that you don't want
indented, you can disable the indentation by explicitly add text alignment. Aligned paragraphs
are not indented. For instance by adding ``<<`` to the end to left-align it,
See :ref:`a_fmt_align` for more details.
Organising Your Text
====================
.. dropdown:: Add Introductory Text to Chapters
:animate: fade-in-slide-down
Sometimes chapters have a short preface, like a brief piece of text or a quote to set the stage
before the first scene begins.
If you add separate files for chapters and scenes, the chapter file is the perfect place to add
such text. Separating chapter and scene files also allows you to make scene files child
documents of the chapter.
.. dropdown:: Distinguishing Soft and Hard Scene Breaks
:animate: fade-in-slide-down
Depending on your writing style, you may need to separate between soft and hard scene breaks
within chapters. Like for instance if you switch point-of-view character often.
In such cases you may want to use different scene headings for hard and soft scene breaks. The
**Build Manuscript** tool will let you define a different format for scenes using the ``###``
and ``###!`` heading codes when you generate your manuscript. You can for instance add the
common "``* * *``" for hard breaks and select to soft scene breaks, which will just insert an
empty paragraph in their place. See :ref:`a_manuscript_settings` for more details.
.. versionadded:: 2.4
Other Tools
===========
.. dropdown:: Convert Project to/from yWriter Format
:animate: fade-in-slide-down
There is a tool available that lets you convert a `yWriter <http://spacejock.com/yWriter7.html>`_
project to a novelWriter project, and vice versa.
The tool is available at `peter88213.github.io/yw2nw <https://peter88213.github.io/yw2nw/>`__

View File

@@ -1,128 +0,0 @@
.. _a_intro:
********
Overview
********
.. _Snowflake: https://www.advancedfictionwriting.com/articles/snowflake-method/
.. _Markdown: https://en.wikipedia.org/wiki/Markdown
At its core, novelWriter is a multi-document plain text editor. The idea is to let you edit your
text without having to deal with formatting until you generate a draft document or manuscript.
Instead, you can focus on the writing right from the start.
Of course, you probably need *some* formatting for your text. At the very least you need emphasis.
Most people are familiar with adding emphasis using ``_underscores_`` and ``**asterisks**``. This
formatting standard comes from Markdown_ and is supported by novelWriter. It also uses Markdown
formatting for defining document headings. If you need more specialised formatting, additional
formatting options are available using a shortcode format. See :ref:`a_fmt_shortcodes` for more
details.
.. admonition:: Limitations
novelWriter is designed for writing fiction, so the formatting features available are limited to
those relevant for this purpose. It is *not* suitable for technical writing, and it is *not* a
full-featured Markdown editor.
It is also not intended as a tool for organising research for writing, and therefore lacks
formatting features you may need for this purpose. The notes feature in novelWriter is mainly
intended for character profiles and plot outlines.
Your novel project in novelWriter is organised as a collection of separate plain text documents
instead of a single, large document. The idea is to make it easier to reorganise your project
structure without having to cut and paste text between chapters and scenes.
There are two kinds of documents in your project: :term:`Novel Documents` are documents that are
part of your story. The other kind of documents are :term:`Project Notes`, which are intended for
your notes about your characters, your world building, and so on.
You can at any point split the individual documents by their headings up into multiple documents,
or merge multiple documents into a single document. This makes it easier to use variations of the
Snowflake_ method for writing. You can start by writing larger structure-focused documents, like
for instance one document per act, and later effortlessly split these up into chapters or scenes.
.. _a_intro_features:
Key Features
============
Below are some key features of novelWriter.
**Focus on writing**
The aim of the user interface is to let you focus on writing instead of spending time formatting
text. Formatting is therefore limited to a small set of formatting tags for simple things like
text emphasis and paragraph alignment. Additional shortcodes are available for special
formatting cases.
When you really want to focus on just writing, you can switch the editor into **Focus Mode**
where only the text editor panel itself is visible, and the project structure view is hidden
away.
**Keep an eye on your notes**
The main window can optionally show a document viewer to the right of the editor. The viewer
is intended for displaying another scene document, your character notes, plot notes, or any
other document you may need to reference while writing. It is not intended as a preview panel
for the document you're editing, but if you wish, you can also use it for this purpose.
**Organise your documents how you like**
You can split your novel project up into as many individual documents as you want to. When you
build the project into a manuscript, they are all glued together in the top-to-bottom order in
which they appear in the project tree. You can use as few text documents as you like, but
splitting the project up into chapters and scenes means you can easily reorder them using the
drag-and-drop feature of the project tree. You can also start out with fewer documents and then
later split them into multiple documents based on chapter and scene headings.
**Multi-novel project support**
The main parts of your project is split up into top level special folders called "Root" folders.
Your main story text lives in the "Novel" root folder. You can have multiple such folders in a
project, and rename them to whatever you want. This allows you to keep a series of individual
novels with the same characters and world building in the same project, and create manuscripts
for them individually.
**Keep track of your story elements**
All notes in your project can be assigned a :term:`tag` that you can then :term:`reference` from
any other document or note. In fact, you can add a new tag under each heading of a note if you
need to be able to reference specific sections of it, or you want to keep several topics in the
same note.
**Get an overview of your story**
It is not the documents themselves that define the chapters and scenes of your story, but the
headings that separate them. In the **Outline View** on the main window you can see an outline
of all the chapter and scene headings of each novel root folder in your project. If they have
any references in them, like which character is in what chapter and scene, these are listed in
additional columns.
You can also add a synopsis to each chapter or scene, which can be listed here as well. You have
the option to add or remove columns of information from this outline. A subset of the outline
information is also available in the **Novel View** as an alternative view to the project tree.
**Get an overview of your story elements**
Under the document viewer panel you will find a series of tabs that show the different story
elements you have created tags for. The tabs are sorted into **Characters**, **Plots**, etc,
depending on which categories you are using in your story. This panel can be hidden to free up
space when you don't need it.
**Assembling your manuscript**
Whether you want to assemble a manuscript, or export all your notes, or generate an outline of
your chapters and scenes with a synopsis included, you can use the **Build Manuscript** tool to
do so. The tool lets you select what information you want to include in the generated document,
and how it is formatted. You can send the result to a printer or PDF, or generate an Open
Document file that can be opened by most office type word processors. You can also generate the
result as HTML, or Markdown, both suitable for further conversion to other formats.
.. _a_intro_screenshots:
Screenshots
===========
.. figure:: images/screenshot_light.png
:class: dark-light
novelWriter with light colour theme
.. figure:: images/screenshot_dark.png
:class: dark-light
novelWriter with dark colour theme

View File

@@ -1,88 +0,0 @@
.. _a_reading:
******************
What to Read First
******************
The documentation of novelWriter is quite extensive. There are a lot of features to get used to,
but you don't need all of them to get started.
The chapters below labelled "Essential Information" are the ones you need to know to use the
application correctly. By "correctly", it is meant: in a way so novelWriter understands the basic
structure of your text. It collects a lot of information from your text and uses it to display the
structure of it in various ways to help you get an overview of your writing.
The chapters labelled "Recommended Reading" includes additional information on how the different
parts if the application work and what the features do.
The "Optional" and "Lookup" chapters contain additional information or lookup tables that are not
essential for using the application.
Using novelWriter
=================
In order to use novelWriter effectively, you need to know the basics of how it works. The following
chapters will explain the main principles. It starts with the basics, and gets more detailed as you
read on.
:ref:`a_breakdown` – Essential Information
This chapter explains the basics of how the application works and what it can and cannot do.
:ref:`a_ui_project` – Recommended Reading
This chapter will give you a more detailed explanation of how you can use the user interface
components to organise and view your project work.
:ref:`a_ui_writing` – Recommended Reading
This chapter will give you a more detailed explanation of how the text editor and viewer work.
:ref:`a_fmt` – Essential Information
This chapter covers how you should format your text. The editor is plain text, so text
formatting requires some basic markup. The structure of your novel is also inferred from how you
use headings. Tags and references are implemented by special keywords.
:ref:`a_kb` – Optional / Lookup
This chapter lists all the keyboard shortcuts in novelWriter and what they do. Most of the
shortcuts are also listed next to their menu entries inside the app, or in tool tips. This
chapter is mostly for reference.
:ref:`a_typ` – Optional
This chapter gives you an overview of the special typographical symbols available in
novelWriter. The auto-replace feature can handle the insertion of standard quote symbols for
your language, and other special characters. If you use any symbols aside from these, their
intended use is explained here.
Organising Your Projects
========================
In addition to managing a collection of plain text files, novelWriter can interpret and map the
structure of your novel and show you additional information about its flow and content. In order
to take advantage of these features, you must structure your text in a specific way and add some
meta data for it to extract.
:ref:`a_proj` – Essential Information
This chapter explains how you organise the content of your project, and how to set up automated
backups of your work.
:ref:`a_struct` – Essential Information
This chapter covers the way your novel's structure is encoded into the text documents. It
explains how the different levels of headings are used, and some special formatting for
different kinds of headings.
:ref:`a_references` - Recommended Reading
This chapter explains how you organise your notes, and how the Tags and References system works.
This system lets you cross-link your documents in your project, and display these references in
the application interface.
:ref:`a_manuscript` - Recommended Reading
This chapter explains how the **Manuscript Build** tool works, how you can control the way
chapter titles are formatted, and how scene and section breaks are handled.
Additional Details & Technical Topics
=====================================
The Additional Details and the Technical Topics sections contain more in-depth information about
how various bits of novelWriter works. This information is not essential to getting started using
novelWriter.

View File

@@ -1,180 +0,0 @@
.. _a_started:
**********************
Setup and Installation
**********************
.. _Enchant: https://abiword.github.io/enchant/
.. _GitHub: https://github.com/vkbo/novelWriter
.. _Downloads page: https://download.novelwriter.io
.. _PPA: https://launchpad.net/~vkbo/+archive/ubuntu/novelwriter
.. _Pre-Release PPA: https://launchpad.net/~vkbo/+archive/ubuntu/novelwriter-pre
.. _PyPi: https://pypi.org/project/novelWriter/
.. _python.org: https://www.python.org/downloads/
.. _Releases: https://github.com/vkbo/novelWriter/releases
.. _AppImage: https://appimage.org/
Ready-made packages and installers for novelWriter are available for all major platforms, including
Linux, Windows and MacOS, from the `Downloads page`_. See below for install additional instructions
for each platform.
You can also install novelWriter from the Python Package Index (PyPi_). See :ref:`a_started_pip`.
Installing from PyPi does not set up icon launchers, so you will either have to do this yourself,
or start novelWriter from the command line.
Spell checking in novelWriter is provided by a third party library called Enchant_. Generally, it
should pull dictionaries from your operating system automatically. However, on Windows they must be
installed manually. See :ref:`a_custom_dict` for more details.
.. _a_started_windows:
Installing on Windows
=====================
You can install novelWriter with both Python and library dependencies embedded using the Windows
Installer (setup.exe) file from the `Downloads page`_, or from the Releases_ page on GitHub_.
Installing it should be straightforward.
If you have any issues, try uninstalling the previous version and making a fresh install. If you
already had a version installed via a different method, you should uninstall that first as having
multiple installations has been known to cause problems.
.. note::
The novelWriter installer is not signed because Microsoft doesn't currently provide a way for
non-profit open source projects to properly sign their installers. The novelWriter project
doesn't have the funding to pay for commercial software signing certificates. You will therefore
see an additional warning about this when you download and run the installer.
.. _a_started_linux:
Installing on Linux
===================
A Debian package can be downloaded from the `Downloads page`_, or from the Releases_ page on
GitHub_. This package should work on both Debian, Ubuntu and Linux Mint, at least.
If you prefer, you can also add the novelWriter repository on Launchpad to your package manager.
The Launchpad packages `are signed by the author <https://launchpad.net/~vkbo>`__.
Ubuntu
------
You can add the Ubuntu PPA_ and install novelWriter with the following commands.
.. code-block:: bash
sudo add-apt-repository ppa:vkbo/novelwriter
sudo apt update
sudo apt install novelwriter
If you want the `Pre-Release PPA`_ instead, add the ``ppa:vkbo/novelwriter-pre`` repository.
Debian and Mint
---------------
Since this is a pure Python package, the Launchpad PPA can in principle also be used on Debian or
Mint. However, the above command will fail to add the signing key, as it is Ubuntu-specific.
Instead, run the following commands to add the repository and key:
.. code-block:: bash
sudo gpg --no-default-keyring --keyring /usr/share/keyrings/novelwriter-ppa-keyring.gpg --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys F19F1FCE50043114
echo "deb [signed-by=/usr/share/keyrings/novelwriter-ppa-keyring.gpg] http://ppa.launchpad.net/vkbo/novelwriter/ubuntu noble main" | sudo tee /etc/apt/sources.list.d/novelwriter.list
Then run the update and install commands as for Ubuntu:
.. code-block:: bash
sudo apt update
sudo apt install novelwriter
.. note::
You may need to use the Ubuntu 20.04 (focal) packages for Debian 11 or earlier. The newer Ubuntu
packages use a different compression algorithm that may not be supported.
.. tip::
If you get an error message like ``gpg: failed to create temporary file`` when importing the key
from the Ubuntu keyserver, try creating the folder it fails on, and import the key again:
.. code-block:: bash
sudo mkdir /root/.gnupg/
AppImage Releases
-----------------
For other Linux distros than the ones mentioned above, the primary option is AppImage_. These are
completely standalone images for the app that include the necessary environment to run novelWriter.
They can of course be run on any Linux distro, if you prefer this to native packages.
.. note::
novelWriter generally doesn't support Python versions that have reached end of life. If your
Linux distro still uses older Python versions and novelWriter won't run, you may want to try the
AppImage instead.
.. _a_started_macos:
Installing on MacOS
===================
You can install novelWriter with both its Python and library dependencies embedded using the DMG
application image file from the `Downloads page`_, or from the Releases_ page on GitHub_.
Installing it should be straightforward.
* Download the DMG file and open it. Then drag the novelWriter icon to the :guilabel:`Applications`
folder on the right. This will install it into your :guilabel:`Applications`.
* The first time you try to launch it, it will say that the bundle cannot be verified, simply press
the :guilabel:`Open` button to add an exception.
* If you are not presented with an :guilabel:`Open` button in the dialog, launch the application
again by right clicking on the application in Finder and selecting :guilabel:`Open` from the
context menu.
The context menu can also be accessed by option-clicking if you have a one button mouse. This is
done by holding down the option key on your keyboard and clicking on the application in Finder.
.. note::
The novelWriter DMG is not signed because Apple doesn't currently provide a way for non-profit
open source projects to properly sign their installers. The novelWriter project doesn't have the
funding to pay for commercial software signing certificates.
.. _a_started_pip:
Installing from PyPi
====================
novelWriter is also available on the Python Package Index, or PyPi_. This install method works on
all supported operating systems with a suitable Python environment.
To install from PyPi you must first have the ``python`` and ``pip`` commands available on your
system. You can download Python from `python.org`_. It is recommended that you install the latest
version. If you are on Windows, also make sure to select the "Add Python to PATH" option during
installation.
To install novelWriter from PyPi, use the following command:
.. code-block:: bash
pip install novelwriter
To upgrade an existing installation, use:
.. code-block:: bash
pip install --upgrade novelwriter
When installing via pip, novelWriter can be launched from command line with:
.. code-block:: bash
novelwriter
Make sure the install location for pip is in your PATH variable. This is not always the case by
default, and then you may get a "Not Found" error when running the ``novelwriter`` command.

View File

@@ -0,0 +1,3 @@
[fr]
version = "2.7"
authors = ["Jean-Michel Heras", "Veronica Berglyd Olsen"]

View File

@@ -0,0 +1,223 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-28 22:09+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/features/dialogue.rst:5
msgid "Dialogue Highlighting"
msgstr "Mise en évidence du dialogue"
#: ../../source/features/dialogue.rst:7
msgid ""
"Dialogue recognition and colour highlighting is available both while "
"you're writing and in generated manuscript documents."
msgstr ""
"La reconnaissance des dialogues et le surlignage des couleurs sont "
"disponibles à la fois pendant que vous écrivez et dans les documents "
"manuscrits générés."
#: ../../source/features/dialogue.rst:10
msgid ""
"The default language settings in UmbraEdit are for English. That "
"includes the dialogue highlighting settings. But many dialogue styles "
"are supported. You can tune a number of settings to fit your language "
"and style preferences in the \"Text Highlighting\" section in "
"**Preferences**. You can mix and match these settings."
msgstr ""
"Les paramètres linguistiques par défaut de UmbraEdit sont ceux de "
"l'anglais. Cela inclut les paramètres de mise en évidence des dialogues. "
"Mais de nombreux styles de dialogue sont pris en charge. Vous pouvez "
"ajuster un certain nombre de paramètres en fonction de vos préférences "
"linguistiques et stylistiques dans la section « Surlignage du texte » "
"des **Préférences**. Vous pouvez combiner ces paramètres.\n"
"\n"
"Traduit avec DeepL.com (version gratuite)"
#: ../../source/features/dialogue.rst:17
msgid "The **Text Highlighting** section of **Preferences**."
msgstr "La section **Mise en évidence du texte** des **Préférences**."
#: ../../source/features/dialogue.rst:21
msgid "Quoted Dialogue"
msgstr "Dialogue entre guillemets"
#: ../../source/features/dialogue.rst:23
msgid ""
"By default, dialogue highlighting is enabled for the double quote "
"symbols you have defined in the **Quotation Style** section of "
"**Preferences**."
msgstr ""
"Par défaut, la mise en évidence du dialogue est activée pour les "
"symboles de guillemets doubles que vous avez définis dans la section "
"**Style de guillemets** des **Préférences**."
#: ../../source/features/dialogue.rst:28
msgid "The **Quotation Style** section of **Preferences**."
msgstr "La section **Style de guillemets** des **Préférences**."
#: ../../source/features/dialogue.rst:30
msgid ""
"You can change which quote symbols are highlighted by selecting one of "
"\"None\", \"Single\", \"Double\", or \"Both\" from the \"Highlight "
"dialogue\" setting under **Text Highlighting**."
msgstr ""
"Vous pouvez modifier les symboles de guillemets mis en évidence en "
"sélectionnant « Aucun », « Simple », « Double » ou « Les deux » dans le "
"paramètre « Mettre les dialogues en évidence » sous **Surlignage du "
"texte**."
#: ../../source/features/dialogue.rst:33
msgid ""
"You can also enable or disable the \"Allow open-ended dialogue\" setting "
"to allow for the style where multi-paragraph dialogue is not closed "
"until the last paragraph."
msgstr ""
"Vous pouvez également activer ou désactiver le paramètre « Autoriser les "
"dialogues ouverts » pour autoriser le style dans lequel les dialogues à "
"plusieurs paragraphes ne sont pas clos avant le dernier paragraphe."
#: ../../source/features/dialogue.rst:36
msgid "Limitations"
msgstr "Restrictions"
#: ../../source/features/dialogue.rst:38
msgid ""
"Dialogue highlighting for single quotes is difficult to process when the "
"same single quote symbol is also used for apostrophes. There isn't a "
"good solution to this. Your best option in the cases where the "
"highlighting is wrong is to insert an alternative apostrophe symbol "
"instead. See :ref:`docs_more_typographical_symbols_apostrophe` for more "
"details."
msgstr ""
"La mise en évidence du dialogue pour les guillemets simples est "
"difficile à traiter lorsque le même symbole de guillemet simple est "
"également utilisé pour les apostrophes. Il n'existe pas de bonne "
"solution à ce problème. Votre meilleure option dans les cas où la mise "
"en évidence est erronée est d'insérer un symbole d'apostrophe alternatif "
"à la place. Voir :ref:`docs_more_typographical_symbols_apostrophe` pour "
"plus de détails."
#: ../../source/features/dialogue.rst:45
msgid "Alternative Dialogue"
msgstr "Dialogue alternatif"
#: ../../source/features/dialogue.rst:47
msgid ""
"You can use the \"Alternative dialogue symbols\" setting for custom "
"dialogue wrapper symbols. These are highlighted in a different colour "
"than regular dialogue."
msgstr ""
"Vous pouvez utiliser le paramètre « Symboles de dialogue alternatifs » "
"pour les symboles de dialogue personnalisés. Ceux-ci sont mis en "
"évidence dans une couleur différente de celle des dialogues normaux."
#: ../../source/features/dialogue.rst:50
msgid ""
"The intended use case here is if you use an alternative style to "
"distinguish a different style of communication. The feature idea came "
"from a science fiction series where mind-to-mind communication used a "
"different quotation style."
msgstr ""
"Le cas d'utilisation prévu ici est celui où vous utilisez un style "
"alternatif pour distinguer un style de communication différent. L'idée "
"est venue d'une série de science-fiction dans laquelle la communication "
"d'esprit à esprit utilisait un style de citation différent."
#: ../../source/features/dialogue.rst:56
msgid "Dialogue Line Symbols"
msgstr "Symboles des lignes de dialogue"
#: ../../source/features/dialogue.rst:58
msgid ""
"In some languages, a single symbol at the start of a paragraph can "
"indicate that the whole paragraph is dialogue. For instance, this symbol "
"can be a short dash (en dash)."
msgstr ""
"Dans certaines langues, un seul symbole au début d'un paragraphe peut "
"indiquer que tout le paragraphe est un dialogue. Par exemple, ce symbole "
"peut être un tiret demi-cadratin."
#: ../../source/features/dialogue.rst:63
msgid "An example of dialogue starting with a short dash."
msgstr "Exemple de dialogue commençant par un tiret demi-cadratin."
#: ../../source/features/dialogue.rst:65
msgid ""
"You can enable this feature by adding the symbols to the \"Dialogue line "
"symbols\" setting. Multiple symbols are allowed."
msgstr ""
"Vous pouvez activer cette fonction en ajoutant les symboles au paramètre "
"« Symboles de la ligne de dialogue ». Plusieurs symboles sont autorisés."
#: ../../source/features/dialogue.rst:70
msgid "Dialogue with Narrator Break"
msgstr "Dialogue avec incise"
#: ../../source/features/dialogue.rst:72
msgid ""
"The dialogue symbol setting will not detect if the dialogue ends in the "
"paragraph. In some styles there is no way to actually indicate the "
"switch from dialogue to narration; in others there are. These a narrator "
"break symbols are usually dashes. You can select one of the supported "
"dash symbols for narrator breaks. These can be used with any of the "
"above dialogue recognition settings."
msgstr ""
"Le réglage du symbole de dialogue ne détecte pas si le dialogue se "
"termine dans le paragraphe. Dans certains styles, il n'y a aucun moyen "
"d'indiquer le passage du dialogue à la narration ; dans d'autres, il y "
"en a un. Ces symboles de rupture avec le narrateur sont généralement des "
"tirets. Vous pouvez sélectionner l'un des symboles de tirets pris en "
"charge pour les ruptures de narration. Ces symboles peuvent être "
"utilisés avec n'importe lequel des paramètres de reconnaissance de "
"dialogue ci-dessus."
#: ../../source/features/dialogue.rst:79
msgid ""
"An example of dialogue starting with a short dash and a long dash "
"narrator break."
msgstr ""
"Exemple de dialogue commençant par un tiret demi-cadratin, une incise "
"par un tiret cadratin."
#: ../../source/features/dialogue.rst:83
msgid "Alternating Dialogue and Narration"
msgstr "Dialogue et narration alternés"
#: ../../source/features/dialogue.rst:85
msgid ""
"The alternating dialogue and narration style is supported with the "
"\"Alternating dialogue/narration symbol\" setting. It can be set to one "
"of the supported dashes. This style will switch into dialogue mode when "
"it first encounters the selected dash in a paragraph, and switch back "
"out when it sees the next one, and so forth."
msgstr ""
"Le style de dialogue et de narration alternés est pris en charge par le "
"paramètre « Symbole de dialogue/narration alternés ». Il peut être "
"défini sur l'un des tirets pris en charge. Ce style passe en mode "
"dialogue lorsqu'il rencontre pour la première fois le tiret sélectionné "
"dans un paragraphe, et revient en mode dialogue lorsqu'il rencontre le "
"tiret suivant, et ainsi de suite."
#: ../../source/features/dialogue.rst:92
msgid "An example of alternating dialogue and narration using a long dash."
msgstr ""
"Exemple d'alternance de dialogue et de narration à l'aide d'un tiret "
"cadratin."

View File

@@ -0,0 +1,978 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-28 22:50+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/features/shortcuts.rst:5
msgid "Keyboard Shortcuts"
msgstr "Raccourcis clavier"
#: ../../source/features/shortcuts.rst:7
msgid ""
"Most features in UmbraEdit are available as keyboard shortcuts. This "
"is a reference list of those shortcuts. Most of them are also listed in "
"the application's user interface."
msgstr ""
"La plupart des fonctionnalités de UmbraEdit sont disponibles sous "
"forme de raccourcis clavier. Il s'agit d'une liste de référence de ces "
"raccourcis. La plupart d'entre eux sont également listés dans "
"l'interface utilisateur de l'application."
#: ../../source/features/shortcuts.rst:12
msgid "On MacOS, replace :kbd:`Ctrl` with :kbd:`Cmd`."
msgstr "Sous MacOS, remplacez :kbd:`Ctrl` par :kbd:`Cmd`."
#: ../../source/features/shortcuts.rst:16
msgid "Main Window Shortcuts"
msgstr "Raccourcis de la fenêtre principale"
#: ../../source/features/shortcuts.rst:1
msgid "Shortcut"
msgstr "Raccourci"
#: ../../source/features/shortcuts.rst:1
msgid "Description"
msgstr "Description"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F1`"
msgstr ":kbd:`F1`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the online user manual"
msgstr "Ouvrir le manuel d'utilisation en ligne"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F5`"
msgstr ":kbd:`F5`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the **Build Manuscript** tool"
msgstr "Ouvrir l'outil **Compiler le manuscrit**"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F6`"
msgstr ":kbd:`F6`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the **Writing Statistics** tool"
msgstr "Ouvrir l'outil **Statistiques d'écriture**"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F8`"
msgstr ":kbd:`F8`"
#: ../../source/features/shortcuts.rst:1
msgid "Toggle **Focus Mode**"
msgstr "Basculer **Mode sans distraction**"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F9`"
msgstr ":kbd:`F9`"
#: ../../source/features/shortcuts.rst:1
msgid "Re-build the project's index"
msgstr "Reconstruire l'index du projet"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F11`"
msgstr ":kbd:`F11`"
#: ../../source/features/shortcuts.rst:1
msgid "Toggle full screen mode"
msgstr "Basculer en mode plein écran"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+,`"
msgstr ":kbd:`Ctrl+,`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the **Preferences** dialog"
msgstr "Ouvrir la boîte de dialogue **Préférences**"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+E`"
msgstr ":kbd:`Ctrl+E`"
#: ../../source/features/shortcuts.rst:1
msgid "Switch or toggle focus for the editor or viewer"
msgstr ""
"Changement ou basculement du focus de l'éditeur ou du visualisateur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+T`"
msgstr ":kbd:`Ctrl+T`"
#: ../../source/features/shortcuts.rst:1
msgid "Switch or toggle focus for the project tree or novel view"
msgstr ""
"Changement de focalisation de l'arborescence du projet ou de la vue du "
"roman"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Q`"
msgstr ":kbd:`Ctrl+Q`"
#: ../../source/features/shortcuts.rst:1
msgid "Exit UmbraEdit"
msgstr "Quitter UmbraEdit"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+,`"
msgstr ":kbd:`Ctrl+Maj+,`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the **Project Settings** dialog"
msgstr "Ouvrir la boîte de dialogue **Paramètres du projet**"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+O`"
msgstr ":kbd:`Ctrl+Maj+O`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the Welcome dialog to open or create a project"
msgstr ""
"Ouvrir la boîte de dialogue de bienvenue pour ouvrir ou créer un projet"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+S`"
msgstr ":kbd:`Ctrl+Maj+S`"
#: ../../source/features/shortcuts.rst:1
msgid "Save the current project"
msgstr "Enregistrer le projet en cours"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+T`"
msgstr ":kbd:`Ctrl+Maj+T`"
#: ../../source/features/shortcuts.rst:1
msgid "Switch focus to the outline view"
msgstr "Basculer vers la vue d'ensemble"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+W`"
msgstr ":kbd:`Ctrl+Maj+W`"
#: ../../source/features/shortcuts.rst:1
msgid "Close the current project"
msgstr "Fermer le projet en cours"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Shift+F1`"
msgstr ":kbd:`Maj+F1`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the local user manual (PDF) if it is available"
msgstr "Ouvrir le manuel d'utilisation local (PDF) s'il est disponible"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Shift+F6`"
msgstr ":kbd:`Maj+F6`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the **Project Details** dialog"
msgstr "Ouvrir la boîte de dialogue **Détails du projet**"
#: ../../source/features/shortcuts.rst:41
msgid "Project Tree Shortcuts"
msgstr "Raccourcis de l'arborescence du projet"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F2`"
msgstr ":kbd:`F2`"
#: ../../source/features/shortcuts.rst:1
msgid "Edit the label of the selected item"
msgstr "Modifier le libellé de l'élément sélectionné"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Return`"
msgstr ":kbd:`Retour`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the selected document in the editor"
msgstr "Ouvrir le document sélectionné dans l'éditeur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Alt+Up`"
msgstr ":kbd:`Alt+Haut`"
#: ../../source/features/shortcuts.rst:1
msgid "Jump or go to the previous item at same level in the tree"
msgstr ""
"Sauter ou aller à l'élément précédent au même niveau dans 'l'arborescence"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Alt+Down`"
msgstr ":kbd:`Alt+Bas`"
#: ../../source/features/shortcuts.rst:1
msgid "Jump or go to the next item at same level in the tree"
msgstr ""
"Sauter ou aller à l'élément suivant au même niveau dans l'arborescence"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Alt+Left`"
msgstr ":kbd:`Alt+Gauche`"
#: ../../source/features/shortcuts.rst:1
msgid "Jump to the parent item in the tree"
msgstr "Sauter à l'élément parent dans l'arborescence"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Alt+Right`"
msgstr ":kbd:`Alt+Droite`"
#: ../../source/features/shortcuts.rst:1
msgid "Jump to the first child item in the project tree"
msgstr "Sauter au premier élément enfant dans l'arborescence du projet"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+.`"
msgstr ":kbd:`Ctrl+.`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the context menu on the selected item"
msgstr "Ouvrir le menu contextuel de l'élément sélectionné"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+L`"
msgstr ":kbd:`Ctrl+L`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the **Quick Links** menu"
msgstr "Ouvrir le menu **Liens rapides**"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+N`"
msgstr ":kbd:`Ctrl+N`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the **Create New Item** menu"
msgstr "Ouvrir le menu **Créer un nouvel élément**"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+O`"
msgstr ":kbd:`Ctrl+O`"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+R`"
msgstr ":kbd:`Ctrl+R`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the selected document in the viewer"
msgstr "Ouvrir le document sélectionné dans le visualisateur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Up`"
msgstr ":kbd:`Ctrl+Haut`"
#: ../../source/features/shortcuts.rst:1
msgid "Move selected item one step up in the tree"
msgstr "Déplacer l'élément sélectionné d'un cran dans l'arborescence"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Down`"
msgstr ":kbd:`Ctrl+Bas`"
#: ../../source/features/shortcuts.rst:1
msgid "Move selected item one step down in the tree"
msgstr "Déplacer l'élément sélectionné d'un cran dans l'arborescence"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+Del`"
msgstr ":kbd:`Ctrl+Maj+Suppr`"
#: ../../source/features/shortcuts.rst:1
msgid "Move the selected item to Trash"
msgstr "Déplacer l'élément sélectionné vers la corbeille"
#: ../../source/features/shortcuts.rst:63
msgid "Document Editor Shortcuts"
msgstr "Raccourcis de l'éditeur de documents"
#: ../../source/features/shortcuts.rst:67
msgid "Text Search Shortcuts"
msgstr "Raccourcis de recherche de texte"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F3`"
msgstr ":kbd:`F3`"
#: ../../source/features/shortcuts.rst:1
msgid "Find the next occurrence of the search word"
msgstr "Trouver la prochaine occurrence du mot recherché"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+F`"
msgstr ":kbd:`Ctrl+F`"
#: ../../source/features/shortcuts.rst:1
msgid "Open search and look for the selected word"
msgstr "Ouvrir la recherche et rechercher le mot sélectionné"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+G`"
msgstr ":kbd:`Ctrl+G`"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+H`"
msgstr ":kbd:`Ctrl+H`"
#: ../../source/features/shortcuts.rst:1
msgid "Open replace and look for the selected word (Mac :kbd:`Cmd+=`)"
msgstr ""
"Ouvrir remplacer et rechercher le mot sélectionné (Mac :kbd:`Cmd+=`)"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+1`"
msgstr ":kbd:`Ctrl+Maj+1`"
#: ../../source/features/shortcuts.rst:1
msgid "Replace selected occurrence, and move to the next"
msgstr "Remplacer l'occurrence sélectionnée et passer à la suivante"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+G`"
msgstr ":kbd:`Ctrl+Maj+G`"
#: ../../source/features/shortcuts.rst:1
msgid "Find the previous occurrence of the search word"
msgstr "Trouver l'occurrence précédente du mot recherché"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+F`"
msgstr ":kbd:`Ctrl+Maj+F`"
#: ../../source/features/shortcuts.rst:1
msgid "Open project search and look for the selected word"
msgstr "Ouvrir la recherche de projet et recherchez le mot sélectionné"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Shift+F3`"
msgstr ":kbd:`Maj+F3`"
#: ../../source/features/shortcuts.rst:83
msgid "Text Formatting Shortcuts"
msgstr "Raccourcis de mise en forme du texte"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+'`"
msgstr ":kbd:`Ctrl+'`"
#: ../../source/features/shortcuts.rst:1
msgid "Wrap selected text, or word under cursor, in single quotes"
msgstr ""
"Mettre le texte sélectionné, ou le mot sous le curseur, entre guillemets "
"simples"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+\"`"
msgstr ":kbd:`Ctrl+\"`"
#: ../../source/features/shortcuts.rst:1
msgid "Wrap selected text, or word under cursor, in double quotes"
msgstr ""
"Mettre le texte sélectionné, ou le mot sous le curseur, entre guillemets"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+/`"
msgstr ":kbd:`Ctrl+/`"
#: ../../source/features/shortcuts.rst:1
msgid "Toggle comment format for block or selected text"
msgstr ""
"Modifier le format des commentaires pour le bloc ou le texte sélectionné"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+0`"
msgstr ":kbd:`Ctrl+0`"
#: ../../source/features/shortcuts.rst:1
msgid "Remove format for block or selected text"
msgstr "Supprimer le format d'un bloc ou d'un texte sélectionné"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+1`"
msgstr ":kbd:`Ctrl+1`"
#: ../../source/features/shortcuts.rst:1
msgid "Change block format to heading level 1"
msgstr "Modifier le format du bloc au niveau de titre 1"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+2`"
msgstr ":kbd:`Ctrl+2`"
#: ../../source/features/shortcuts.rst:1
msgid "Change block format to heading level 2"
msgstr "Modifier le format du bloc en titre de niveau 2"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+3`"
msgstr ":kbd:`Ctrl+3`"
#: ../../source/features/shortcuts.rst:1
msgid "Change block format to heading level 3"
msgstr "Modifier le format du bloc en titre de niveau 3"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+4`"
msgstr ":kbd:`Ctrl+4`"
#: ../../source/features/shortcuts.rst:1
msgid "Change block format to heading level 4"
msgstr "Modifier le format du bloc en titre de niveau 4"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+5`"
msgstr ":kbd:`Ctrl+5`"
#: ../../source/features/shortcuts.rst:1
msgid "Change block alignment to left-aligned"
msgstr "Aligner le bloc à gauche"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+6`"
msgstr ":kbd:`Ctrl+6`"
#: ../../source/features/shortcuts.rst:1
msgid "Change block alignment to centred"
msgstr "Aligner le bloc au centre"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+7`"
msgstr ":kbd:`Ctrl+7`"
#: ../../source/features/shortcuts.rst:1
msgid "Change block alignment to right-aligned"
msgstr "Aligner le bloc à droite"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+8`"
msgstr ":kbd:`Ctrl+8`"
#: ../../source/features/shortcuts.rst:1
msgid "Add a left margin to the block"
msgstr "Ajouter une marge gauche au bloc"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+9`"
msgstr ":kbd:`Ctrl+9`"
#: ../../source/features/shortcuts.rst:1
msgid "Add a right margin to the block"
msgstr "Ajouter une marge droite au bloc"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+B`"
msgstr ":kbd:`Ctrl+B`"
#: ../../source/features/shortcuts.rst:1
msgid "Format selected text, or word under cursor, with bold"
msgstr "Formater le texte sélectionné, ou le mot sous le curseur, en gras"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+D`"
msgstr ":kbd:`Ctrl+D`"
#: ../../source/features/shortcuts.rst:1
msgid "Format selected text, or word under cursor, with strike through"
msgstr ""
"Formater le texte sélectionné, ou le mot sous le curseur, en le barrant"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+I`"
msgstr ":kbd:`Ctrl+I`"
#: ../../source/features/shortcuts.rst:1
msgid "Format selected text, or word under cursor, with italic"
msgstr ""
"Formater le texte sélectionné, ou le mot sous le curseur, avec de "
"l'italique"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+/`"
msgstr ":kbd:`Ctrl+Maj+/`"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+D`"
msgstr ":kbd:`Ctrl+Maj+D`"
#: ../../source/features/shortcuts.rst:1
msgid "Toggle ignored text format for block or selected text"
msgstr ""
"Basculer le format de texte ignoré pour le bloc ou le texte sélectionné"
#: ../../source/features/shortcuts.rst:109
msgid "Other Editor Shortcuts"
msgstr "Autres raccourcis de l'éditeur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`F7`"
msgstr ":kbd:`F7`"
#: ../../source/features/shortcuts.rst:1
msgid "Re-run the spell checker on the document"
msgstr "Ré-exécuter le correcteur orthographique sur le document"
#: ../../source/features/shortcuts.rst:1
msgid "Open the context menu at the current cursor location"
msgstr "Ouvrir le menu contextuel à l'emplacement actuel du curseur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+A`"
msgstr ":kbd:`Ctrl+A`"
#: ../../source/features/shortcuts.rst:1
msgid "Select all text in the document"
msgstr "Sélectionner tout le texte dans le document"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+C`"
msgstr ":kbd:`Ctrl+C`"
#: ../../source/features/shortcuts.rst:1
msgid "Copy selected text to clipboard"
msgstr "Copier le texte sélectionné dans le presse-papiers"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`"
msgstr ":kbd:`Ctrl+K`"
#: ../../source/features/shortcuts.rst:1
msgid ""
"Activate the insert commands (see list in :ref:"
"`docs_features_shortcuts_insert`)"
msgstr ""
"Activer les commandes d'insertion (voir la liste dans :ref:"
"`docs_features_shortcuts_insert`)"
#: ../../source/features/shortcuts.rst:1
msgid "Open or reload the current document in the viewer"
msgstr "Ouvrir ou recharger le document en cours dans le visualisateur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+S`"
msgstr ":kbd:`Ctrl+S`"
#: ../../source/features/shortcuts.rst:1
msgid "Save the current document"
msgstr "Enregistrer le document en cours"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+V`"
msgstr ":kbd:`Ctrl+V`"
#: ../../source/features/shortcuts.rst:1
msgid "Paste text from clipboard to cursor position"
msgstr "Coller le texte du presse-papiers à la position du curseur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+W`"
msgstr ":kbd:`Ctrl+W`"
#: ../../source/features/shortcuts.rst:1
msgid "Close the current document"
msgstr "Fermer le document en cours"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+X`"
msgstr ":kbd:`Ctrl+X`"
#: ../../source/features/shortcuts.rst:1
msgid "Cut selected text to clipboard"
msgstr "Couper le texte sélectionné dans le presse-papiers"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Y`"
msgstr ":kbd:`Ctrl+Y`"
#: ../../source/features/shortcuts.rst:1
msgid "Redo latest undo"
msgstr "Rétablir la dernière annulation"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Z`"
msgstr ":kbd:`Ctrl+Z`"
#: ../../source/features/shortcuts.rst:1
msgid "Undo latest changes"
msgstr "Annuler les dernières modifications"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Backspace`"
msgstr ":kbd:`Ctrl+Retour arrière`"
#: ../../source/features/shortcuts.rst:1
msgid "Delete the word before the cursor"
msgstr "Supprimer le mot précédant le curseur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Del`"
msgstr ":kbd:`Ctrl+Suppr`"
#: ../../source/features/shortcuts.rst:1
msgid "Delete the word after the cursor"
msgstr "Supprimer le mot après le curseur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+F7`"
msgstr ":kbd:`Ctrl+F7`"
#: ../../source/features/shortcuts.rst:1
msgid "Toggle spell checking"
msgstr "Vérifier l'orthographe"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Return`"
msgstr ":kbd:`Ctrl+Retour`"
#: ../../source/features/shortcuts.rst:1
msgid "Open the tag or reference under the cursor in the viewer"
msgstr ""
"Ouvrir la balise ou la référence sous le curseur dans le visualiseur"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+A`"
msgstr ":kbd:`Ctrl+Maj+A`"
#: ../../source/features/shortcuts.rst:1
msgid "Select all text in the current paragraph"
msgstr "Sélectionner tout le texte du paragraphe en cours"
#: ../../source/features/shortcuts.rst:136
msgid "Insert Shortcuts"
msgstr "Raccourcis d'insertion"
#: ../../source/features/shortcuts.rst:138
msgid ""
"A set of insert features are also available through shortcuts, but they "
"require a double combination of key sequences. The insert feature is "
"activated with :kbd:`Ctrl+K`, followed by a key or key combination for "
"the inserted content."
msgstr ""
"Un ensemble de fonctions d'insertion sont également disponibles par le "
"biais de raccourcis, mais elles nécessitent une double combinaison de "
"séquences de touches. La fonction d'insertion est activée avec :kbd:"
"`Ctrl+K`, suivi d'une touche ou d'une combinaison de touches pour le "
"contenu inséré."
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Space`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Espace`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a non-breaking space"
msgstr "Insérer un espace insécable"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`_`"
msgstr ":kbd:`Ctrl+K`, :kbd:`_`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a long dash (em dash)"
msgstr "Insérer un tiret long"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`.`"
msgstr ":kbd:`Ctrl+K`, :kbd:`.`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert an ellipsis"
msgstr "Insérer un point de suspension"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`'`"
msgstr ":kbd:`Ctrl+K`, :kbd:`'`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a modifier apostrophe"
msgstr "Insérer une apostrophe"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`*`"
msgstr ":kbd:`Ctrl+K`, :kbd:`*`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a list bullet"
msgstr "Insérer une puce de liste"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`%`"
msgstr ":kbd:`Ctrl+K`, :kbd:`%`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a per mille symbol"
msgstr "Insérer un symbole pour mille"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`~`"
msgstr ":kbd:`Ctrl+K`, :kbd:`~`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a figure dash (same width as a number)"
msgstr "Insérer un tiret (de la même largeur qu'un chiffre)"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`−`"
msgstr ":kbd:`Ctrl+K`, :kbd:`−`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a short dash (en dash)"
msgstr "Insérer un tiret court"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`1`"
msgstr ":kbd:`Ctrl+K`, :kbd:`1`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a left single quote"
msgstr "Insérer un guillemet simple gauche"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`2`"
msgstr ":kbd:`Ctrl+K`, :kbd:`2`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a right single quote"
msgstr "Insérer un guillemet simple à droite"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`3`"
msgstr ":kbd:`Ctrl+K`, :kbd:`3`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a left double quote"
msgstr "Insérer un double guillemet gauche"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`4`"
msgstr ":kbd:`Ctrl+K`, :kbd:`4`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a right double quote"
msgstr "Insérer un double guillemet droit"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`C`"
msgstr ":kbd:`Ctrl+K`, :kbd:`C`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@char`` keyword"
msgstr "Insérer un mot-clé ``@char``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`E`"
msgstr ":kbd:`Ctrl+K`, :kbd:`E`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert an ``@entity`` keyword"
msgstr "Insérer un mot-clé ``@entity``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`F`"
msgstr ":kbd:`Ctrl+K`, :kbd:`F`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@focus`` keyword"
msgstr "Insérer un mot-clé ``@focus``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`G`"
msgstr ":kbd:`Ctrl+K`, :kbd:`G`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@tag`` keyword"
msgstr "Insérer un mot-clé ``@tag``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`H`"
msgstr ":kbd:`Ctrl+K`, :kbd:`H`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a short description comment"
msgstr "Insérer un bref commentaire de description"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`L`"
msgstr ":kbd:`Ctrl+K`, :kbd:`L`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@location`` keyword"
msgstr "Insérer un mot-clé ``@location``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`M`"
msgstr ":kbd:`Ctrl+K`, :kbd:`M`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@mention`` keyword"
msgstr "Insérer un mot-clé ``@mention``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`O`"
msgstr ":kbd:`Ctrl+K`, :kbd:`O`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert an ``@object`` keyword"
msgstr "Insérer un mot-clé ``@object``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`P`"
msgstr ":kbd:`Ctrl+K`, :kbd:`P`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@plot`` keyword"
msgstr "Insérer un mot-clé `@plot``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`S`"
msgstr ":kbd:`Ctrl+K`, :kbd:`S`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a synopsis comment"
msgstr "Insérer un commentaire de synopsis"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`T`"
msgstr ":kbd:`Ctrl+K`, :kbd:`T`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@time`` keyword"
msgstr "Insérer un mot-clé ``@time``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`V`"
msgstr ":kbd:`Ctrl+K`, :kbd:`V`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@pov`` keyword"
msgstr "Insérer un mot-clé ``@pov``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`X`"
msgstr ":kbd:`Ctrl+K`, :kbd:`X`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a ``@custom`` keyword"
msgstr "Insérer un mot-clé ``@custom``"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+Space`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+Espace`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a thin non-breaking space"
msgstr "Insérer un espace fin insécable"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+_`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+_`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a horizontal bar (quotation dash)"
msgstr "Insérer une barre horizontale"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+'`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+'`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a prime"
msgstr "Insérer une prime"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+\"`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+\"`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a double prime"
msgstr "Insérer une double prime"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+*`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+*`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a flower mark (alternative bullet)"
msgstr "Insérer une fleur (puce alternative)"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+−`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+−`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a hyphen bullet (alternative bullet)"
msgstr "Insérer une puce à tiret (puce alternative)"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+D`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+D`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a division sign"
msgstr "Insérer un signe de division"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+O`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+O`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a degree symbol"
msgstr "Insérer un symbole de degré"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Ctrl+X`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Ctrl+X`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a times sign"
msgstr "Insert a times sign"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+K`, :kbd:`Shift+Space`"
msgstr ":kbd:`Ctrl+K`, :kbd:`Maj+Espace`"
#: ../../source/features/shortcuts.rst:1
msgid "Insert a thin space"
msgstr "Insérer un espace fin"
#: ../../source/features/shortcuts.rst:183
msgid "Document Viewer Shortcuts"
msgstr "Raccourcis de la fenêtre de visualisation des documents"
#: ../../source/features/shortcuts.rst:1
msgid "Move backward in the view history"
msgstr "Reculer dans l'historique des vues"
#: ../../source/features/shortcuts.rst:1
msgid "Move forward in the view history"
msgstr "Avancer dans l'historique des vues"
#: ../../source/features/shortcuts.rst:1
msgid ":kbd:`Ctrl+Shift+R`"
msgstr ":kbd:`Ctrl+Maj+R`"
#: ../../source/features/shortcuts.rst:1
msgid "Close the document viewer"
msgstr "Fermer l'afficheur de documents"

View File

@@ -0,0 +1,221 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-28 22:28+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/features/story_comments.rst:5
msgid "Story Comments"
msgstr "Commentaires sur l'histoire"
#: ../../source/features/story_comments.rst:7
msgid ""
"A special set of comment styles allow for annotating your text with "
"structure information. There are two styles of comments available. They "
"are an extension to regular comments as described in :ref:"
"`docs_usage_comments`."
msgstr ""
"Un ensemble spécial de styles de commentaires permet d'annoter votre "
"texte avec des informations sur la structure. Deux styles de "
"commentaires sont disponibles. Ils sont une extension des commentaires "
"normaux tels que décrits dans :ref:`docs_usage_comments`."
#: ../../source/features/story_comments.rst:15
msgid "Story Structure Comments"
msgstr "Commentaires sur la structure de l'histoire"
#: ../../source/features/story_comments.rst:17
msgid ""
"You can annotate story structure by using the ``%Story`` style of "
"comment. To use the feature, make the first word of a comment ``Story``, "
"followed by a period, a structure term, a colon, a space and the text "
"for that term."
msgstr ""
"Vous pouvez annoter la structure de l'histoire en utilisant le style de "
"commentaire ``%Story``. Pour utiliser cette fonctionnalité, le premier "
"mot du commentaire doit être ``Story``, suivi d'un point, d'un terme de "
"structure, de deux points, d'un espace et du texte correspondant à ce "
"terme."
#: ../../source/features/story_comments.rst:23
#: ../../source/features/story_comments.rst:88
msgid "Usage"
msgstr "Utilisation"
#: ../../source/features/story_comments.rst:25
msgid ""
"The story term can be anything that you want to track in the manuscript. "
"This construct is intended to make it easier to extract metadata from a "
"work to perform a structural analysis of the story."
msgstr ""
"Le terme de l'histoire peut être n'importe quoi que vous voulez suivre "
"dans le manuscrit. Cette construction est destinée à faciliter "
"l'extraction des métadonnées d'une œuvre afin d'effectuer une analyse "
"structurelle de l'histoire."
#: ../../source/features/story_comments.rst:28
msgid ""
"There are probably as many ways to examine story structure as there are "
"authors and editors combined. For this reason the story tag is flexible. "
"You can use any terms you want and track any aspect of the story that "
"serves your purposes."
msgstr ""
"Il y a probablement autant de façons d'examiner la structure d'une "
"histoire qu'il y a d'auteurs et d'éditeurs réunis. C'est la raison pour "
"laquelle l'étiquette « histoire » est flexible. Vous pouvez utiliser les "
"termes de votre choix et suivre tous les aspects de l'histoire qui vous "
"intéressent."
#: ../../source/features/story_comments.rst:32
msgid ""
"An example method has been advanced by Shawn Coyne in *The Story Grid*. "
"This method asserts that a story is composed of \"beats\", and that each "
"beat has an inciting incident, a complication, a crisis, and a "
"resolution. One might capture these elements of a beat where a character "
"overcomes their fear of giving a speech as:"
msgstr ""
"Un exemple de méthode a été proposé par Shawn Coyne dans *The Story "
"Grid*. Cette méthode affirme qu'une histoire est composée de « temps » "
"et que chaque temps comporte un incident déclencheur, une complication, "
"une crise et une résolution. On pourrait saisir les éléments d'un temps "
"où un personnage surmonte sa peur de faire un discours comme suit :"
#: ../../source/features/story_comments.rst:37
#: ../../source/features/story_comments.rst:94
msgid ":bdg-info:`Example`"
msgstr ":bdg-info:`Exemple`"
#: ../../source/features/story_comments.rst:50
msgid ""
"Other analytical models propose tracking a scene's pace, how it affects "
"the mood of the story, or which element(s) of the story's genre are "
"being satisfied. An author can use this mechanism to track any element "
"of a scene. Some examples include time of day, how much time passes in "
"the scene, or even the physical form of a shape-shifting character. If a "
"story involves magic, one could track which wand a main character has in "
"hand. It's up to tha author."
msgstr ""
"D'autres modèles analytiques proposent de suivre le rythme d'une scène, "
"la façon dont il affecte l'ambiance de l'histoire ou les éléments du "
"genre de l'histoire qui sont satisfaits. Un auteur peut utiliser ce "
"mécanisme pour suivre n'importe quel élément d'une scène. Il peut "
"s'agir, par exemple, de l'heure, du temps qui s'écoule dans la scène ou "
"même de la forme physique d'un personnage qui change de forme. Si "
"l'histoire fait appel à la magie, il est possible de savoir quelle "
"baguette le personnage principal tient en main. C'est à l'auteur de "
"décider."
#: ../../source/features/story_comments.rst:56
msgid ""
"When the story and other scene metadata is extracted into a tabular "
"form, it is possible to get a comprehensive overview of the story and to "
"identify possible issues. For example, so many fast-paced scenes without "
"a break that readers might become fatigued or over-stimulated."
msgstr ""
"Lorsque les métadonnées de l'histoire et d'autres scènes sont extraites "
"sous forme de tableau, il est possible d'obtenir une vue d'ensemble de "
"l'histoire et d'identifier les problèmes éventuels. Par exemple, un si "
"grand nombre de scènes au rythme rapide, sans pause, que les lecteurs "
"risquent de se fatiguer ou d'être trop stimulés."
#: ../../source/features/story_comments.rst:62
#: ../../source/features/story_comments.rst:106
msgid "Output"
msgstr "Production"
#: ../../source/features/story_comments.rst:64
msgid ""
"The story structure comments can be included in the manuscript, and are "
"formatted similarly to the synopsis comments:"
msgstr ""
"Les commentaires sur la structure de l'histoire peuvent être inclus dans "
"le manuscrit et sont formatés de la même manière que les commentaires "
"sur le synopsis :"
#: ../../source/features/story_comments.rst:69
msgid "A set of story structure comments as shown in the Manuscript tool."
msgstr ""
"Une série de commentaires sur la structure de l'histoire, tels qu'ils "
"apparaissent dans l'outil Manuscrit."
#: ../../source/features/story_comments.rst:71
msgid ""
"When you export your project data from the Outline View, all story "
"structure terms are added as columns to the exported file, which can "
"then be opened in the spread sheet software of your choice."
msgstr ""
"Lorsque vous exportez les données de votre projet à partir de la vue en "
"plan, tous les termes de la structure du récit sont ajoutés en tant que "
"colonnes au fichier exporté, qui peut ensuite être ouvert dans le "
"logiciel de feuille de calcul de votre choix."
#: ../../source/features/story_comments.rst:76
msgid "Story Notes"
msgstr "Notes sur l'histoire"
#: ../../source/features/story_comments.rst:78
msgid ""
"Story notes are similar to story structure comments, but have no "
"predefined meaning. Essentially they are a generalisation of the story "
"structure comment, and the only point of having this additional format "
"is to allow you do filter them in and out of your manuscript "
"independently."
msgstr ""
"Les notes de récit sont similaires aux commentaires de structure de "
"récit, mais n'ont pas de signification prédéfinie. Il s'agit "
"essentiellement d'une généralisation du commentaire de structure, et le "
"seul intérêt de ce format supplémentaire est de vous permettre de les "
"filtrer dans et hors de votre manuscrit de manière indépendante."
#: ../../source/features/story_comments.rst:82
msgid ""
"You can annotate story notes by using the ``%Note`` style of comment. To "
"use the feature, make the first word of a comment ``Note``, followed by "
"a period, a term, a colon, a space and the text for the note."
msgstr ""
"Vous pouvez annoter les notes d'articles en utilisant le style de "
"commentaire ``%Note``. Pour utiliser cette fonctionnalité, le premier "
"mot du commentaire doit être « Note », suivi d'un point, d'un terme, de "
"deux points, d'un espace et du texte de la note."
#: ../../source/features/story_comments.rst:90
msgid ""
"These notes are free form, but one intended use case is to add "
"consistency annotations to your text to remind yourself where you have "
"described something that must be checked against other parts of your "
"text later on."
msgstr ""
"Ces notes sont libres, mais l'une des utilisations prévues est d'ajouter "
"des annotations de cohérence à votre texte pour vous rappeler où vous "
"avez décrit quelque chose qui doit être vérifié ultérieurement par "
"rapport à d'autres parties de votre texte."
#: ../../source/features/story_comments.rst:108
msgid ""
"Story notes are included in the manuscript in exactly the same way story "
"structure comments are, but has a separate inclusion setting in the "
"build settings. They are also included in CSV exports from the **Outline "
"View**."
msgstr ""
"Les notes de récit sont incluses dans le manuscrit de la même manière "
"que les commentaires sur la structure du récit, mais elles ont un "
"paramètre d'inclusion distinct dans les paramètres de construction. "
"Elles sont également incluses dans les exportations CSV à partir de la "
"**Vue d'ensemble**."

View File

@@ -0,0 +1,120 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-27 20:56+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/index.rst:32
msgid "More Documents"
msgstr "Plus d'informations"
#: ../../source/index.rst:38
msgid "Getting Started"
msgstr "Pour commencer"
#: ../../source/index.rst:53
msgid "The User Interface"
msgstr "Interface utilisateur"
#: ../../source/index.rst:64
msgid "Other Features"
msgstr "Autres fonctionnalités"
#: ../../source/index.rst:72
msgid "In-Depth Topics"
msgstr "En détail"
#: ../../source/index.rst:82
msgid "Technical Topics"
msgstr "Rubriques techniques"
#: ../../source/index.rst:3
msgid "User Guide"
msgstr "Guide d'utilisation"
#: ../../source/index.rst:5
msgid "**Release Version:** |release|"
msgstr "**Version :** |release|"
#: ../../source/index.rst:6
msgid "**Updated:** |today|"
msgstr "**Mise à jour :** |today|"
#: ../../source/index.rst:8
msgid ""
"UmbraEdit is an open source plain text editor designed for writing "
"novels assembled from individual text documents. It uses a minimal "
"formatting syntax inspired by Markdown, and adds a meta data syntax for "
"comments, synopsis, and cross-referencing. It is designed to be a simple "
"text editor that allows for easy organisation of text and notes, using "
"human readable text files as storage for robustness."
msgstr ""
"UmbraEdit est un éditeur de texte brut open source conçu pour écrire "
"des romans assemblés à partir de documents texte individuels. Il utilise "
"une syntaxe de formatage minimale inspirée de Markdown, et ajoute une "
"syntaxe de métadonnées pour les commentaires, les synopsis et les "
"références croisées. Il est conçu pour être un éditeur de texte simple "
"qui permet d'organiser facilement le texte et les notes, en utilisant des "
"fichiers texte lisibles par l'homme comme stockage pour plus de "
"robustesse."
#: ../../source/index.rst:19
msgid "**Useful Links**"
msgstr "**Liens utiles**"
#: ../../source/index.rst:21
msgid "Website: https://umbraedit.io"
msgstr "Site web : https://umbraedit.io"
#: ../../source/index.rst:22
msgid "Documentation: https://docs.umbraedit.io"
msgstr "Documentation: https://docs.umbraedit.io"
#: ../../source/index.rst:23
msgid "Public Releases: https://releases.umbraedit.io"
msgstr "Public Releases: https://releases.umbraedit.io"
#: ../../source/index.rst:24
msgid "Internationalisation: https://crowdin.com/project/umbraedit"
msgstr "Internationalisation: https://crowdin.com/project/umbraedit"
#: ../../source/index.rst:25
msgid "Source Code: https://github.com/saga-soft/UmbraEdit"
msgstr "Code source : https://github.com/saga-soft/UmbraEdit"
#: ../../source/index.rst:26
msgid "Source Releases: https://github.com/saga-soft/UmbraEdit/releases"
msgstr "Source Releases: https://github.com/saga-soft/UmbraEdit/releases"
#: ../../source/index.rst:27
msgid "Issue Tracker: https://github.com/saga-soft/UmbraEdit/issues"
msgstr "Issue Tracker: https://github.com/saga-soft/UmbraEdit/issues"
#: ../../source/index.rst:28
msgid "Feature Discussions: https://github.com/saga-soft/UmbraEdit/discussions"
msgstr "Feature Discussions: https://github.com/saga-soft/UmbraEdit/discussions"
#: ../../source/index.rst:29
msgid "PyPi Project: https://pypi.org/project/UmbraEdit"
msgstr "PyPi Project: https://pypi.org/project/UmbraEdit"
#: ../../source/index.rst:30
msgid "Social Media: https://fosstodon.org/@umbraedit"
msgstr "Social Media: https://fosstodon.org/@umbraedit"

View File

@@ -0,0 +1,321 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-28 23:00+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/more/counting.rst:5
msgid "Word and Text Counts"
msgstr "Décompte des mots et des textes"
#: ../../source/more/counting.rst:7
msgid ""
"This is an overview of how words and other counts of your text are performed. "
"The counting rules should be relatively standard, and are comparable to Libre "
"Office Writer rules."
msgstr ""
"Il s'agit d'une vue d'ensemble de la manière dont les mots et autres comptages "
"de votre texte sont effectués. Les règles de comptage devraient être "
"relativement standard, et sont comparables aux règles de Libre Office Writer."
#: ../../source/more/counting.rst:10
msgid ""
"The counts provided in the app on the raw text are meant to be approximate. For "
"more accurate counts, you need to build your manuscript in the **Manuscript "
"Tool** and check the counts on the generated preview."
msgstr ""
"Les décomptes fournis dans l'application sur le texte brut sont approximatifs. "
"Pour des décomptes plus précis, vous devez compiler votre manuscrit avec "
"**Compiler le manuscrit** et vérifier les décomptes sur l'aperçu généré."
#: ../../source/more/counting.rst:16
msgid "Text Word Counts and Stats"
msgstr "Décompte des mots du texte et statistiques"
#: ../../source/more/counting.rst:18
msgid ""
"These are the rules for the main counts available for for each document in a "
"project."
msgstr ""
"Il s'agit des règles relatives aux principaux décomptes disponibles pour chaque "
"document d'un projet."
#: ../../source/more/counting.rst:20
msgid "For all counts, the following rules apply."
msgstr "Pour tous les décomptes, les règles suivantes s'appliquent."
#: ../../source/more/counting.rst:22 ../../source/more/counting.rst:56
msgid "Short (–) and long (—) dashes are considered word separators."
msgstr ""
"Les tirets demi-cadratin (–) et cadratin (—) sont considérés comme des "
"séparateurs de mots."
#: ../../source/more/counting.rst:23
msgid "Any line starting with ``%`` or ``@`` is ignored."
msgstr "Toute ligne commençant par ``%`` ou ``@`` est ignorée."
#: ../../source/more/counting.rst:24
msgid "Trailing white spaces are ignored, including line breaks."
msgstr ""
"Les espaces blancs de fin de ligne sont ignorés, y compris les sauts de ligne."
#: ../../source/more/counting.rst:25
msgid "Leading ``>`` and trailing ``<`` are ignored with any spaces next to them."
msgstr ""
"Les ``>`` de début et les ``<`` de fin sont ignorés, de même que les espaces "
"qui les accompagnent."
#: ../../source/more/counting.rst:26
msgid ""
"Valid shortcodes and other commands wrapped in brackets ``[]`` are ignored."
msgstr ""
"Les shortcodes valides et les autres commandes entre crochets ``[]`` sont "
"ignorés."
#: ../../source/more/counting.rst:27
msgid "In-line Markdown syntax in text paragraphs is treated as part of the text."
msgstr ""
"La syntaxe Markdown en ligne dans les paragraphes de texte est traitée comme "
"faisant partie du texte."
#: ../../source/more/counting.rst:29
msgid ""
"After the above preparation of the text, the following counts are available."
msgstr "Après la préparation du texte, les chiffres suivants sont disponibles."
#: ../../source/more/counting.rst:31
msgid "**Character Count**"
msgstr "**Décompte des caractères**"
#: ../../source/more/counting.rst:32
msgid ""
"The character count is the sum of characters per line, including leading and in-"
"text white space characters, but excluding trailing white space characters. "
"Shortcodes in the text are not included, but Markdown codes are. Only headings "
"and text are counted."
msgstr ""
"Le nombre de caractères est la somme des caractères par ligne, y compris les "
"caractères d'en-tête et les caractères d'espacement dans le texte, mais pas les "
"caractères d'espacement de fin. Les Shortcodes dans le texte ne sont pas "
"inclus, mais les codes Markdown le sont. Seuls les en-têtes et le texte sont "
"pris en compte."
#: ../../source/more/counting.rst:36
msgid "**Word Count**"
msgstr "**Décompte des mots**"
#: ../../source/more/counting.rst:37
msgid ""
"The words count is the sum of blocks of continuous character per line separated "
"by any number of white space characters or dashes. Only headings and text are "
"counted."
msgstr ""
"Le nombre de mots est la somme des blocs de caractères continus par ligne, "
"séparés par un nombre quelconque de caractères d'espacement ou de tirets. Seuls "
"les titres et le texte sont comptés."
#: ../../source/more/counting.rst:40
msgid "**Paragraph Count**"
msgstr "**Décompte des paragraphes**"
#: ../../source/more/counting.rst:41
msgid ""
"The paragraph count is the number of text blocks separated by one or more empty "
"line. A line consisting only of white spaces is considered empty."
msgstr ""
"Le nombre de paragraphes est le nombre de blocs de texte séparés par une ou "
"plusieurs lignes vides. Une ligne constituée uniquement d'espaces blancs est "
"considérée comme vide."
#: ../../source/more/counting.rst:46
msgid "Manuscript Counts"
msgstr "Décompte du manuscrit"
#: ../../source/more/counting.rst:48
msgid ""
"These are the rules for the counts available for a manuscript in the "
"**Manuscript Tool**. The rules have been tuned to agree with LibreOffice "
"Writer, but will vary slightly depending on the content of your text. "
"LibreOffice Writer also counts the text in the page header, which the "
"**Manuscript Tool** does not."
msgstr ""
"Voici les règles pour les décomptes disponibles pour un manuscrit dans l'outil "
"**Outil Manuscrit**. Les règles ont été ajustées pour correspondre à "
"LibreOffice Writer, mais varieront légèrement en fonction du contenu de votre "
"texte. LibreOffice Writer compte également le texte dans l'en-tête de la page, "
"ce que ne fait pas l'outil **Outil Manuscrit**."
#: ../../source/more/counting.rst:53
msgid ""
"The content of each line is counted after all formatting has been processed, so "
"the result will be more accurate than the counts for text documents elsewhere "
"in the app. The following rules apply:"
msgstr ""
"Le contenu de chaque ligne est compté après le traitement de toutes les mises "
"en forme, de sorte que le résultat sera plus précis que les décomptes pour les "
"documents textuels dans d'autres parties de l'application. Les règles suivantes "
"s'appliquent :"
#: ../../source/more/counting.rst:57
msgid ""
"Leading and trailing white spaces are generally included, but paragraph breaks "
"are not."
msgstr ""
"Les espaces blancs de début et de fin sont généralement inclus, mais les sauts "
"de paragraphe ne le sont pas."
#: ../../source/more/counting.rst:58
msgid "Hard line breaks within paragraph are considered white space characters."
msgstr ""
"Les retours à la ligne dans un paragraphe sont considérés comme des caractères "
"d'espacement."
#: ../../source/more/counting.rst:59
msgid ""
"All formatting codes are ignored, including shortcodes, commands and Markdown."
msgstr ""
"Tous les codes de formatage sont ignorés, y compris les shortcodes, les "
"commandes et Markdown."
#: ../../source/more/counting.rst:60
msgid "Scene and section separators are counted."
msgstr "Les séparateurs de scène et de section sont pris en compte."
#: ../../source/more/counting.rst:61
msgid "Comments and meta data lines are counted after they are formatted."
msgstr ""
"Les lignes de commentaires et de métadonnées sont comptées après leur mise en "
"forme."
#: ../../source/more/counting.rst:62
msgid "Headers are counted after they are formatted with custom formats."
msgstr ""
"Les en-têtes sont comptés après avoir été formatés avec des formats "
"personnalisés."
#: ../../source/more/counting.rst:64
msgid "The following counts are available:"
msgstr "Les décomptes suivants sont disponibles :"
#: ../../source/more/counting.rst:66
msgid "**Headings**"
msgstr "**En-têtes**"
#: ../../source/more/counting.rst:67
msgid "The number of headings in the manuscript."
msgstr "Le nombre d'entêtes dans le manuscrit."
#: ../../source/more/counting.rst:69
msgid "**Paragraphs**"
msgstr "**Paragraphes**"
#: ../../source/more/counting.rst:70
msgid "The number of body text paragraphs in the manuscript."
msgstr "Le nombre de paragraphes dans le manuscrit."
#: ../../source/more/counting.rst:72
msgid "**Words**"
msgstr "**Mots**"
#: ../../source/more/counting.rst:73
msgid ""
"The number of words in the manuscript, including any comments and meta data "
"text."
msgstr ""
"Le nombre de mots du manuscrit, y compris les commentaires et les métadonnées."
#: ../../source/more/counting.rst:75
msgid "**Words in Text**"
msgstr "**Mots dans le texte**"
#: ../../source/more/counting.rst:76
msgid "The number of words in body text paragraphs, excluding all other text."
msgstr "Nombre de mots dans les paragraphes, à l'exclusion de tout autre texte."
#: ../../source/more/counting.rst:78
msgid "**Words in Headings**"
msgstr "**Mots dans les entêtes**"
#: ../../source/more/counting.rst:79
msgid ""
"The number of words in headings, including inserted formatting like chapter "
"numbers, etc."
msgstr ""
"Le nombre de mots dans les entêtes, y compris le formatage inséré comme les "
"numéros de chapitre, etc."
#: ../../source/more/counting.rst:81
msgid "**Characters**"
msgstr "**Caractères**"
#: ../../source/more/counting.rst:82
msgid ""
"The number of characters in all lines, including any comments and meta data "
"text. Paragraph breaks are not counted, but in-paragraph hard line breaks are."
msgstr ""
"Le nombre de caractères de toutes les lignes, y compris les commentaires et le "
"texte des métadonnées. Les sauts de paragraphe ne sont pas comptés, mais les "
"sauts de ligne dans les paragraphes le sont."
#: ../../source/more/counting.rst:85
msgid "**Character in Text**"
msgstr "**Caractères dans le texte**"
#: ../../source/more/counting.rst:86
msgid ""
"The number of characters in body text paragraphs. Paragraph breaks are not "
"counted, but in-paragraph hard line breaks are."
msgstr ""
"Nombre de caractères dans les paragraphes. Les sauts de paragraphe ne sont pas "
"comptés, mais les sauts de ligne dans les paragraphes le sont."
#: ../../source/more/counting.rst:89
msgid "**Characters in Headings**"
msgstr "**Caractères dans les entêtes**"
#: ../../source/more/counting.rst:90
msgid "The number of characters in headings."
msgstr "Le nombre de caractères dans les en-têtes."
#: ../../source/more/counting.rst:92
msgid "**Character in Text, No Spaces**"
msgstr "**Caractères dans le texte, sans les espaces**"
#: ../../source/more/counting.rst:93
msgid ""
"The number of characters in body text paragraphs considered part of a word or "
"punctuation. That is, white space characters are not counted."
msgstr ""
"Le nombre de caractères dans les paragraphes considérés comme faisant partie "
"d'un mot ou d'une ponctuation. En d'autres termes, les caractères d'espacement "
"ne sont pas pris en compte."
#: ../../source/more/counting.rst:96
msgid "**Character in Headings, No Spaces**"
msgstr "**Caractères dans les en-têtes, sans les espaces**"
#: ../../source/more/counting.rst:97
msgid ""
"The number of characters in headings considered part of a word or punctuation. "
"That is, white space characters are not counted."
msgstr ""
"Le nombre de caractères dans les en-têtes considérés comme faisant partie d'un "
"mot ou de la ponctuation. En d'autres termes, les caractères d'espacement ne "
"sont pas pris en compte."

View File

@@ -0,0 +1,359 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-29 11:05+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/more/customise.rst:5
msgid "Customisations"
msgstr "Personnalisations"
#: ../../source/more/customise.rst:10
msgid ""
"There are a few ways you can customise UmbraEdit yourself. Currently, "
"you can add new GUI themes, your own syntax themes, and install additional "
"dictionaries."
msgstr ""
"Vous pouvez personnaliser UmbraEdit de plusieurs façons. Actuellement, "
"vous pouvez ajouter de nouveaux thèmes d'interface graphique, vos propres "
"thèmes de syntaxe et installer des dictionnaires supplémentaires."
#: ../../source/more/customise.rst:17
msgid "Spell Check Dictionaries"
msgstr "Dictionnaires de vérification orthographique"
#: ../../source/more/customise.rst:19
msgid ""
"UmbraEdit uses Enchant_ as the spell checking tool. Depending on your "
"operating system, it may or may not load all installed spell check "
"dictionaries automatically."
msgstr ""
"UmbraEdit utilise Enchant_ comme outil de vérification orthographique. "
"Selon votre système d'exploitation, il peut ou non charger automatiquement "
"tous les dictionnaires de vérification orthographique installés."
#: ../../source/more/customise.rst:24
msgid "Linux and MacOS"
msgstr "Linux et MacOS"
#: ../../source/more/customise.rst:26
msgid ""
"On Linux and MacOS, you generally only have to install hunspell, aspell or "
"myspell dictionaries on your system like you do for other applications. "
"See your distro or OS documentation for how to do this. These dictionaries "
"should show up as available spell check languages in UmbraEdit."
msgstr ""
"Sous Linux et MacOS, il vous suffit généralement d'installer les "
"dictionnaires hunspell, aspell ou myspell sur votre système, comme vous le "
"faites pour d'autres applications. Consultez la documentation de votre "
"distro ou de votre système d'exploitation pour savoir comment procéder. "
"Ces dictionnaires devraient apparaître comme des langues de vérification "
"orthographique disponibles dans UmbraEdit."
#: ../../source/more/customise.rst:32
msgid "Windows"
msgstr "Windows"
#: ../../source/more/customise.rst:34
msgid ""
"For Windows, English is included with the installation. For other "
"languages you have to download and add dictionaries yourself."
msgstr ""
"Pour Windows, l'anglais est inclus dans l'installation. Pour les autres "
"langues, vous devez télécharger et ajouter les dictionnaires vous-même."
#: ../../source/more/customise.rst:37
msgid "**Install Tool**"
msgstr "**Outil d'installation**"
#: ../../source/more/customise.rst:39
msgid ""
"A small tool to assist with this can be found under **Tools > Add "
"Dictionaries**. It will import spell checking dictionaries from Free "
"Office or Libre Office extensions. The dictionaries are then installed in "
"the install location for the Enchant library and should thus work for any "
"application that uses Enchant for spell checking."
msgstr ""
"Un petit outil pour vous aider se trouve sous **Outils > Ajouter des "
"dictionnaires**. Il importera des dictionnaires de vérification "
"orthographique à partir des extensions Free Office ou Libre Office. Les "
"dictionnaires sont alors installés dans l'emplacement d'installation de la "
"bibliothèque Enchant et devraient donc fonctionner pour toute application "
"qui utilise Enchant pour la vérification orthographique."
#: ../../source/more/customise.rst:44
msgid "**Manual Install**"
msgstr "**Installation manuelle**"
#: ../../source/more/customise.rst:46
msgid ""
"If you prefer to do this manually or want to use a different source than "
"the ones mentioned above, You need to get compatible dictionary files for "
"your language. You need two files files ending with ``.aff`` and ``.dic``. "
"These files must then be copied to the following location:"
msgstr ""
"Si vous préférez le faire manuellement ou si vous voulez utiliser une "
"source différente de celles mentionnées ci-dessus, vous devez obtenir des "
"fichiers de dictionnaires compatibles avec votre langue. Vous avez besoin "
"de deux fichiers se terminant par ``.aff`` et ``.dic``. Ces fichiers "
"doivent ensuite être copiés à l'emplacement suivant :"
#: ../../source/more/customise.rst:50
msgid "``C:\\Users\\<USER>\\AppData\\Local\\enchant\\hunspell``"
msgstr "``C:\\Users\\<USER>\\AppData\\Local\\enchant\\hunspell``"
#: ../../source/more/customise.rst:52
msgid ""
"This assumes your user profile is stored at ``C:\\Users\\<USER>``. The "
"last one or two folders may not exist, so you may need to create them."
msgstr ""
"Cela suppose que votre profil d'utilisateur est stocké dans ``C:"
"\\Users\\<USER>``. Le dernier ou les deux derniers dossiers peuvent ne pas "
"exister, vous devrez donc les créer."
#: ../../source/more/customise.rst:55
msgid "You can find the various dictionaries on the `Free Desktop`_ website."
msgstr ""
"Vous pouvez trouver les différents dictionnaires sur le site web `Free "
"Desktop`_."
#: ../../source/more/customise.rst:58
msgid ""
"The Free Desktop link points to a repository, and what may look like file "
"links inside the dictionary folder are actually links to web pages. If you "
"right-click and download those, you get HTML files, not dictionaries!"
msgstr ""
"Le lien Free Desktop pointe vers un référentiel, et ce qui peut ressembler "
"à des liens de fichiers à l'intérieur du dossier du dictionnaire sont en "
"fait des liens vers des pages web. Si vous cliquez avec le bouton droit de "
"la souris et que vous les téléchargez, vous obtiendrez des fichiers HTML, "
"pas des dictionnaires !"
#: ../../source/more/customise.rst:62
msgid ""
"In order to download the actual dictionary files, right-click the "
"\"plain\" label at the end of each line and download that."
msgstr ""
"Pour télécharger les fichiers du dictionnaire, cliquez avec le bouton "
"droit de la souris sur l'étiquette « plain » à la fin de chaque ligne et "
"téléchargez-la."
#: ../../source/more/customise.rst:69
msgid "Syntax and GUI Themes"
msgstr "Syntaxe et thèmes de l'interface graphique"
#: ../../source/more/customise.rst:71
msgid ""
"Adding your own GUI and syntax themes is relatively easy, although it "
"requires that you manually edit config files with colour values. The "
"themes are defined by simple plain text config files with meta data and "
"colour settings."
msgstr ""
"L'ajout de vos propres thèmes d'interface graphique et de syntaxe est "
"relativement facile, bien qu'il soit nécessaire d'éditer manuellement les "
"fichiers de configuration avec les valeurs de couleur. Les thèmes sont "
"définis par de simples fichiers de configuration en texte brut contenant "
"des métadonnées et des paramètres de couleur."
#: ../../source/more/customise.rst:75
msgid ""
"In order to make your own versions, first copy one of the existing files "
"to your local computer and modify it as you like."
msgstr ""
"Pour créer vos propres versions, copiez d'abord l'un des fichiers "
"existants sur votre ordinateur local et modifiez-le à votre guise."
#: ../../source/more/customise.rst:78
msgid ""
"The existing syntax themes are stored in `umbraedit/assets/syntax "
"<https://github.com/saga-soft/UmbraEdit/tree/main/umbraedit/assets/"
"syntax>`_."
msgstr ""
"Les thèmes syntaxiques existants sont stockés dans `umbraedit/assets/"
"syntax <https://github.com/saga-soft/UmbraEdit/tree/main/umbraedit/assets/"
"syntax>`_."
#: ../../source/more/customise.rst:80
msgid ""
"The existing GUI themes are stored in `umbraedit/assets/themes <https://"
"github.com/saga-soft/UmbraEdit/tree/main/umbraedit/assets/themes>`_."
msgstr ""
"Les thèmes GUI existants sont stockés dans `umbraedit/assets/themes "
"<https://github.com/saga-soft/UmbraEdit/tree/main/umbraedit/assets/"
"themes>`_."
#: ../../source/more/customise.rst:82
msgid ""
"The existing icon themes are stored in `umbraedit/assets/icons <https://"
"github.com/saga-soft/UmbraEdit/tree/main/umbraedit/assets/icons>`_."
msgstr ""
"Les thèmes d'icônes existants sont stockés dans `umbraedit/assets/icons "
"<https://github.com/saga-soft/UmbraEdit/tree/main/umbraedit/assets/icons>`_."
#: ../../source/more/customise.rst:85
msgid ""
"Remember to also change the name of your theme by modifying the ``name`` "
"setting at the top of the file, otherwise you may not be able to "
"distinguish them in **Preferences**."
msgstr ""
"N'oubliez pas de changer également le nom de votre thème en modifiant le "
"paramètre ``name`` en haut du fichier, sinon vous ne pourrez pas les "
"distinguer dans les **Préférences**."
#: ../../source/more/customise.rst:88
msgid ""
"For UmbraEdit to be able to locate the custom theme files, you must copy "
"them to the :ref:`docs_technical_locations_data` location in your home or "
"user area. There should be a folder there named ``syntax`` for syntax "
"themes, just ``themes`` for GUI themes, and ``icons`` for icon themes. "
"These folders are created the first time you start UmbraEdit."
msgstr ""
"Pour que UmbraEdit puisse localiser les fichiers de thèmes "
"personnalisés, vous devez les copier dans l'emplacement :ref:"
"`docs_technical_locations_data` dans votre espace personnel ou "
"utilisateur. Il devrait y avoir un dossier nommé ``syntax`` pour les "
"thèmes de syntaxe, juste ``themes`` pour les thèmes GUI, et ``icons`` pour "
"les thèmes d'icônes. Ces dossiers sont créés la première fois que vous "
"démarrez UmbraEdit.\n"
"\n"
"Traduit avec DeepL.com (version gratuite)"
#: ../../source/more/customise.rst:93
msgid ""
"Once the files are copied there, they should show up in **Preferences** "
"with the label you set as ``name`` inside the file."
msgstr ""
"Une fois les fichiers copiés, ils devraient apparaître dans les "
"**Préférences** avec le nom que vous avez défini dans le fichier."
#: ../../source/more/customise.rst:98
msgid ""
"The theme file formats change regularly in new releases. It is up to you "
"to keep custom theme files up to date."
msgstr ""
"Les formats des fichiers de thème changent régulièrement dans les "
"nouvelles versions. C'est à vous qu'il incombe de mettre à jour les "
"fichiers des thèmes personnalisés."
#: ../../source/more/customise.rst:103
msgid "Custom GUI and Icons Theme"
msgstr "Thème d'interface graphique et d'icônes personnalisé"
#: ../../source/more/customise.rst:105
msgid "A GUI theme ``.conf`` file consists of the following settings:"
msgstr ""
"Le fichier ``.conf`` d'un thème GUI est constitué des paramètres suivants :"
#: ../../source/more/customise.rst:159
msgid "In the Main section you must at least define the ``name`` settings."
msgstr ""
"Dans la section Main, vous devez au moins définir les paramètres ``name``."
#: ../../source/more/customise.rst:161
msgid ""
"The Palette values correspond to the Qt enum values for ``QPalette::"
"ColorRole``, see the `Qt documentation <https://doc.qt.io/qt-6/qpalette."
"html#ColorRole-enum>`_ for more details. The colour values are RGB numbers "
"on the format ``r, g, b`` where each is an integer from ``0`` to ``255``. "
"Omitted values are not loaded and will use default values. If the "
"``helptext`` colour is not defined, it is computed as a colour between the "
"``window`` and ``windowtext`` colour. Additional shades of some of the "
"colours are also computed. These are mainly used for 3D effects."
msgstr ""
"Les valeurs de la palette correspondent aux valeurs de l'enum Qt pour "
"``QPalette::ColorRole``, voir la documentation Qt <https://doc.qt.io/qt-6/"
"qpalette.html#ColorRole-enum>`_ pour plus de détails. Les valeurs de "
"couleur sont des nombres RVB au format ``r, g, b`` où chacun est un entier "
"de ``0`` à ``255``. Les valeurs omises ne sont pas chargées et utilisent "
"les valeurs par défaut. Si la couleur ``helptext`` n'est pas définie, elle "
"est calculée comme une couleur comprise entre les couleurs ``window`` et "
"``windowtext``. Des nuances supplémentaires de certaines couleurs sont "
"également calculées. Elles sont principalement utilisées pour les effets "
"3D."
#: ../../source/more/customise.rst:168
msgid "The ``fadedtext`` and ``errortext`` theme colour entries were added."
msgstr ""
"Les entrées de couleur des thèmes ``fadedtext`` et ``errortext`` ont été "
"ajoutées."
#: ../../source/more/customise.rst:171
msgid ""
"The ``icontheme`` setting was dropped as the icon theme is now its own "
"setting. The ``[Icons]`` and ``[Project]`` sections were added, and the "
"``status*`` settings removed."
msgstr ""
"Le paramètre ``icontheme`` a été supprimé car le thème des icônes a "
"maintenant son propre paramètre. Les sections ``[Icons]`` et ``[Project]`` "
"ont été ajoutées, et le paramètre ``status*`` a été supprimé."
#: ../../source/more/customise.rst:177
msgid "Custom Syntax Theme"
msgstr "Syntaxe des thèmes personnalisés"
#: ../../source/more/customise.rst:179
msgid "A syntax theme ``.conf`` file consists of the following settings:"
msgstr ""
"Un fichier ``.conf`` de thème est constitué des paramètres suivants :"
#: ../../source/more/customise.rst:213
msgid ""
"In the Main section, you must define at least the ``name`` setting. The "
"Syntax colour values are RGB(A) numbers of the format ``r, g, b, a`` where "
"each is an integer from ``0`` to ``255``. The fourth value is the alpha "
"channel, which can be omitted."
msgstr ""
"Dans la section Main, vous devez définir au moins le paramètre ``name``. "
"Les valeurs de couleur de la syntaxe sont des nombres RVB(A) du format "
"``r, g, b, a`` où chacun est un entier de ``0`` à ``255``. La quatrième "
"valeur est le canal alpha, qui peut être omis."
#: ../../source/more/customise.rst:217
msgid ""
"Omitted syntax colours default to black, except ``background`` which "
"defaults to white, and ``texthighlight`` which defaults to white with half "
"transparency."
msgstr ""
"Les couleurs omises dans la syntaxe prennent par défaut la couleur noire, "
"à l'exception de ``background`` qui prend par défaut la couleur blanche, "
"et de ``texthighlight`` qui prend par défaut la couleur blanche avec une "
"demi-transparence."
#: ../../source/more/customise.rst:220
msgid "The ``shortcode`` syntax colour entry was added."
msgstr "Le paramètre de couleur ``shortcode`` a été ajouté."
#: ../../source/more/customise.rst:223
msgid "The ``optional`` syntax colour entry was added."
msgstr "Le paramètre de couleur ``optional`` a été ajouté."
#: ../../source/more/customise.rst:226
msgid "The ``texthighlight`` syntax colour entry was added."
msgstr "Le paramètre de couleur ``texthighlight`` a été ajouté."
#: ../../source/more/customise.rst:229
msgid ""
"The ``dialog``, ``altdialog``, ``note`` and ``tag`` syntax colour entries "
"were added. ``straightquotes``, ``doublequotes`` and ``singlequotes`` were "
"removed."
msgstr ""
"Les paramètres de couleur ``dialog``, ``altdialog``, ``note`` et ``tag`` "
"ont été ajoutés. Les paramètres ``guillemets droits``, ``guillemets "
"doubles`` et ``guillemets simples`` ont été supprimés."

View File

@@ -0,0 +1,159 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-29 11:11+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/more/handling_errors.rst:5
msgid "Handling Errors"
msgstr "Traitement des erreurs"
#: ../../source/more/handling_errors.rst:7
msgid ""
"In case something goes wrong, UmbraEdit has a few built-in features to "
"reduce the chance your work is lost. In case of a crash, it will also "
"try to save whatever changes you have made before exiting, if this is at "
"all possible."
msgstr ""
"En cas de problème, UmbraEdit dispose de quelques fonctions intégrées "
"pour réduire le risque de perte de votre travail. En cas de panne, il "
"essaiera également d'enregistrer les modifications que vous avez "
"apportées avant de quitter, si cela est possible."
#: ../../source/more/handling_errors.rst:11
msgid ""
"The storage solution is designed to save each text document "
"independently, so only the document you're working on is actually at a "
"risk of losing data in the event of a crash."
msgstr ""
"La solution de stockage est conçue pour sauvegarder chaque document "
"texte indépendamment, de sorte que seul le document sur lequel vous "
"travaillez risque de perdre des données en cas de panne."
#: ../../source/more/handling_errors.rst:18
msgid "Recovered Documents"
msgstr "Documents récupérés"
#: ../../source/more/handling_errors.rst:20
msgid ""
"If UmbraEdit crashes or otherwise exits without saving the project "
"state, or if you're using a file synchronisation tool that runs out of "
"sync, there may be files in the project storage folder that aren't "
"tracked in the core project file. These files, when discovered, are "
"recovered and added back into the project when a project is opened."
msgstr ""
"Si UmbraEdit se plante ou se termine sans sauvegarder l'état du "
"projet, ou si vous utilisez un outil de synchronisation de fichiers qui "
"se désynchronise, il peut y avoir des fichiers dans le dossier de "
"stockage du projet qui ne sont pas suivis dans le fichier de base du "
"projet. Ces fichiers, lorsqu'ils sont découverts, sont récupérés et "
"ajoutés au projet lorsqu'un projet est ouvert."
#: ../../source/more/handling_errors.rst:25
msgid ""
"The discovered files are scanned for metadata that give clues as to "
"where the document may previously have been located in the project. The "
"project loading routine will try to put them back as close as possible "
"to this location, if it still exists. Generally, it will be appended to "
"the end of the folder where it previously was located. If that folder "
"doesn't exist, it will try to add it to the correct root folder type. If "
"it cannot figure out which root folder is correct, the document will be "
"added to the **Novel** root folder. Finally, if a **Novel** does not "
"exist, one will be created."
msgstr ""
"Les fichiers découverts sont analysés à la recherche de métadonnées qui "
"donnent des indices sur l'emplacement antérieur du document dans le "
"projet. La routine de chargement du projet essaiera de les replacer "
"aussi près que possible de cet emplacement, s'il existe toujours. En "
"général, le document sera ajouté à la fin du dossier où il se trouvait "
"auparavant. Si ce dossier n'existe pas, il essaiera de l'ajouter au type "
"de dossier racine correct. S'il ne parvient pas à déterminer quel est le "
"bon dossier racine, le document sera ajouté au dossier racine "
"**Nouveau**. Enfin, si un **Nouveau** n'existe pas, il en sera créé un."
#: ../../source/more/handling_errors.rst:33
msgid ""
"If the title of the document can be recovered, the word \"Recovered:\" "
"will be added as a prefix to indicate that it may need further "
"attention. If the title cannot be determined, the document will be named "
"after its internal key, which is a string of characters and numbers."
msgstr ""
"Si le titre du document peut être récupéré, le mot « Récupéré : » sera "
"ajouté comme préfixe pour indiquer qu'il peut nécessiter une attention "
"supplémentaire. Si le titre ne peut être déterminé, le document sera "
"nommé d'après sa clé interne, qui est une chaîne de caractères et de "
"chiffres."
#: ../../source/more/handling_errors.rst:41
msgid "Project Lockfile"
msgstr "Fichier de verrouillage du projet"
#: ../../source/more/handling_errors.rst:43
msgid ""
"To prevent data loss caused by file conflicts when UmbraEdit projects "
"are synchronised via file synchronisation tools, a project lockfile is "
"written to the project storage folder when a project is open. If you try "
"to open a project that already has such a file present, you will be "
"presented with a warning, and some information about where else "
"UmbraEdit thinks the project is also open. You will be given the "
"option to ignore this warning, and continue opening the project at your "
"own risk."
msgstr ""
"Pour éviter la perte de données causée par des conflits de fichiers "
"lorsque les projets UmbraEdit sont synchronisés via des outils de "
"synchronisation de fichiers, un fichier de verrouillage de projet est "
"écrit dans le dossier de stockage du projet lorsqu'un projet est ouvert. "
"Si vous essayez d'ouvrir un projet dans lequel un tel fichier est déjà "
"présent, vous recevrez un avertissement et des informations sur "
"l'endroit où UmbraEdit pense que le projet est également ouvert. Vous "
"aurez la possibilité d'ignorer cet avertissement et de continuer à "
"ouvrir le projet à vos risques et périls."
#: ../../source/more/handling_errors.rst:52
msgid ""
"If, for some reason, UmbraEdit or your computer crashes, the lock file "
"may remain even if there are no other instances keeping the project "
"open. In such a case it is safe to ignore the lock file warning when re-"
"opening the project."
msgstr ""
"Si, pour une raison quelconque, UmbraEdit ou votre ordinateur tombe en "
"panne, le fichier de verrouillage peut subsister même si aucune autre "
"instance ne maintient le projet ouvert. Dans ce cas, il est prudent "
"d'ignorer l'avertissement relatif au fichier de verrouillage lors de la "
"réouverture du projet."
#: ../../source/more/handling_errors.rst:58
msgid ""
"If you choose to ignore the warning and continue opening the project, "
"and multiple instances of the project are in fact open, you are likely "
"to cause inconsistencies and create diverging project files, potentially "
"resulting in loss of data and orphaned files. You are not likely to lose "
"any actual text unless both instances have the same document open in the "
"editor, and UmbraEdit will try to resolve project inconsistencies the "
"next time you open the project."
msgstr ""
"Si vous choisissez d'ignorer l'avertissement et de continuer à ouvrir le "
"projet, et que plusieurs instances du projet sont en fait ouvertes, vous "
"risquez de provoquer des incohérences et de créer des fichiers de projet "
"divergents, ce qui peut entraîner une perte de données et des fichiers "
"orphelins. Il est peu probable que vous perdiez du texte à moins que les "
"deux instances aient le même document ouvert dans l'éditeur, et "
"UmbraEdit essaiera de résoudre les incohérences du projet la prochaine "
"fois que vous l'ouvrirez."

View File

@@ -0,0 +1,298 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-29 11:21+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/more/project_format.rst:5
msgid "Project Format Changes"
msgstr "Modifications du format des projets"
#: ../../source/more/project_format.rst:7
msgid ""
"Most of the changes to the file formats over the history of UmbraEdit "
"have no impact on the user side of things. The project files are "
"generally updated automatically. However, some of the changes require "
"minor actions from the user."
msgstr ""
"La plupart des modifications apportées aux formats de fichiers au cours "
"de l'histoire de UmbraEdit n'ont pas d'impact sur l'utilisateur. Les "
"fichiers de projet sont généralement mis à jour automatiquement. "
"Cependant, certains changements nécessitent des actions mineures de la "
"part de l'utilisateur."
#: ../../source/more/project_format.rst:11
msgid ""
"The key changes in the formats are listed in this chapter, as well as "
"the user actions required, where applicable."
msgstr ""
"Les principales modifications apportées aux formats sont énumérées dans "
"ce chapitre, ainsi que les actions requises de la part de l'utilisateur, "
"le cas échéant."
#: ../../source/more/project_format.rst:14
msgid ""
"A full project file format specification is available under \"More "
"Documents\"."
msgstr ""
"Une spécification complète du format de fichier du projet est disponible "
"sous « Plus d'informations »."
#: ../../source/more/project_format.rst:18
msgid ""
"When you update a project from one format version to the next, the "
"project can no longer be opened by a version of UmbraEdit prior to the "
"version where the new file format was introduced. You will get a "
"notification about any updates to your project file format and will have "
"the option to decline the upgrade."
msgstr ""
"Lorsque vous mettez à jour un projet d'une version de format à la "
"suivante, le projet ne peut plus être ouvert par une version de "
"UmbraEdit antérieure à la version où le nouveau format de fichier a "
"été introduit. Vous recevrez une notification concernant toute mise à "
"jour du format de fichier de votre projet et vous aurez la possibilité "
"de refuser la mise à jour."
#: ../../source/more/project_format.rst:27
msgid "Format 1.5 Changes"
msgstr "Format 1.5 Modifications"
#: ../../source/more/project_format.rst:29
msgid "This project format was introduced in UmbraEdit version 2.0 RC 2."
msgstr ""
"Ce format de projet a été introduit dans la version 2.0 RC 2 de "
"UmbraEdit."
#: ../../source/more/project_format.rst:31
msgid ""
"This is a modification of the 1.4 format. It makes the XML more "
"consistent in that meta data have been moved to their respective section "
"nodes as attributes, and key/value settings now have a consistent "
"format. Logical flags are saved as yes/no instead of Python True/False, "
"and the main heading of the document is now saved to the item rather "
"than in the index. The conversion is done automatically the first time a "
"project is loaded. No user action is required."
msgstr ""
"Il s'agit d'une modification du format 1.4. Il rend le XML plus cohérent "
"en ce sens que les métadonnées ont été déplacées vers leurs nœuds de "
"section respectifs en tant qu'attributs, et que les paramètres clé/"
"valeur ont désormais un format cohérent. Les indicateurs logiques sont "
"sauvegardés sous forme de oui/non au lieu de True/False de Python, et le "
"titre principal du document est désormais sauvegardé dans l'article "
"plutôt que dans l'index. La conversion est effectuée automatiquement "
"lors du premier chargement d'un projet. Aucune action de l'utilisateur "
"n'est nécessaire."
#: ../../source/more/project_format.rst:41
msgid "Format 1.4 Changes"
msgstr "Format 1.4 Modifications"
#: ../../source/more/project_format.rst:43
msgid ""
"This project format was introduced in UmbraEdit version 2.0 RC 1. "
"Since this was a release candidate, it is unlikely that your project "
"uses it, but it may be the case if you've installed a pre-release."
msgstr ""
"Ce format de projet a été introduit dans la version 2.0 RC 1 de "
"UmbraEdit. Comme il s'agissait d'une version candidate, il est peu "
"probable que votre projet l'utilise, mais c'est peut-être le cas si vous "
"avez installé une préversion."
#: ../../source/more/project_format.rst:47
msgid ""
"This format changes the way project items (folders, documents and notes) "
"are stored. It is a more compact format that is simpler and faster to "
"parse, and easier to extend. The conversion is done automatically the "
"first time a project is loaded. No user action is required."
msgstr ""
"Ce format modifie la manière dont les éléments du projet (dossiers, "
"documents et notes) sont stockés. Il s'agit d'un format plus compact, "
"plus simple et plus rapide à analyser, et plus facile à étendre. La "
"conversion se fait automatiquement lors du premier chargement d'un "
"projet. Aucune action de l'utilisateur n'est nécessaire."
#: ../../source/more/project_format.rst:55
msgid "Format 1.3 Changes"
msgstr "Format 1.3 Modifications"
#: ../../source/more/project_format.rst:57
msgid "This project format was introduced in UmbraEdit version 1.5."
msgstr ""
"Ce format de projet a été introduit dans la version 1.5 de UmbraEdit."
#: ../../source/more/project_format.rst:59
msgid ""
"With this format, the number of document layouts was reduced from eight "
"to two. The conversion of document layouts is performed automatically "
"when the project is opened."
msgstr ""
"Avec ce format, le nombre de présentations de documents a été réduit de "
"huit à deux. La conversion des présentations de documents s'effectue "
"automatiquement lors de l'ouverture du projet."
#: ../../source/more/project_format.rst:62
msgid ""
"Due to the reduction of layouts, some features that were previously "
"controlled by these layouts will be lost. These features are instead now "
"controlled by syntax codes, so to recover these features, some minor "
"modification must be made to select documents by the user."
msgstr ""
"En raison de la réduction des présentations, certaines caractéristiques "
"qui étaient auparavant contrôlées par ces présentations seront perdues. "
"Ces fonctionnalités sont désormais contrôlées par des codes syntaxiques. "
"Pour les récupérer, l'utilisateur doit donc apporter quelques "
"modifications mineures aux documents sélectionnés."
#: ../../source/more/project_format.rst:66
msgid ""
"The manual changes the user must make should be very few as they apply "
"to document layouts that should be used only a few places in any given "
"project. These are as follows:"
msgstr ""
"Les modifications manuelles que l'utilisateur doit apporter sont très "
"peu nombreuses car elles s'appliquent à des mises en page de documents "
"qui ne doivent être utilisées qu'à quelques endroits dans un projet "
"donné. Ces modifications sont les suivantes :"
#: ../../source/more/project_format.rst:69
msgid "**Title Pages**"
msgstr "**Pages de titres**"
#: ../../source/more/project_format.rst:71
msgid ""
"The formatting of the level one title on the title page must be changed "
"from ``# Title Text`` to ``#! Title Text`` in order to retain the "
"previous functionality. See :ref:`docs_usage_headings_levels`."
msgstr ""
"Le formatage du titre de niveau 1 sur la page de titre doit être modifié "
"de ``# Title Text`` à ``# ! Title Text`` afin de conserver la "
"fonctionnalité précédente. Voir :ref:`docs_usage_headings_levels`."
#: ../../source/more/project_format.rst:74
msgid ""
"Any text that was previously centred on the page must be manually "
"centred using the text alignment feature. See :ref:"
"`docs_usage_align_indent`."
msgstr ""
"Tout texte qui était précédemment centré sur la page doit être centré "
"manuellement en utilisant la fonction d'alignement du texte. Voir :ref:"
"`docs_usage_align_indent`."
#: ../../source/more/project_format.rst:77
msgid "**Unnumbered Chapters**"
msgstr "**Chapitres non numérotés**"
#: ../../source/more/project_format.rst:79
msgid ""
"Since the specific layout for unnumbered chapters has been dropped, such "
"chapters must all use the ``##! Chapter Name`` formatting code instead "
"of ``## Chapter Name``. This also includes chapters marked by an "
"asterisk: ``## *Chapter Name``, as this feature has also been dropped. "
"See :ref:`docs_usage_headings_levels`."
msgstr ""
"La mise en page spécifique pour les chapitres non numérotés ayant été "
"abandonnée, ces chapitres doivent tous utiliser le code de formatage "
"``# ! Nom du chapitre`` au lieu de `## Nom du chapitre``. Cela inclut "
"également les chapitres marqués d'un astérisque : `## *Nom de "
"chapitre``, car cette fonctionnalité a également été abandonnée. Voir :"
"ref:`docs_usage_headings_levels`."
#: ../../source/more/project_format.rst:84
msgid "**Plain Pages**"
msgstr "**Pages vierges**"
#: ../../source/more/project_format.rst:86
msgid ""
"The layout named \"Plain Page\" has also been removed. The only feature "
"of this layout was that it ensured that the content always started on a "
"fresh page. In the new format, fresh pages can be set anywhere in the "
"text with the ``[new page]`` code. See :ref:"
"`docs_usage_formatting_breaks`."
msgstr ""
"La mise en page appelée « page simple » a également été supprimée. La "
"seule caractéristique de cette mise en page était qu'elle garantissait "
"que le contenu commençait toujours sur une nouvelle page. Dans le "
"nouveau format, les nouvelles pages peuvent être placées n'importe où "
"dans le texte avec le code ``[new page]``. Voir :ref:"
"`docs_usage_formatting_breaks`."
#: ../../source/more/project_format.rst:94
msgid "Format 1.2 Changes"
msgstr "Format 1.2 Modifications"
#: ../../source/more/project_format.rst:96
msgid "This project format was introduced in UmbraEdit version 0.10."
msgstr ""
"Ce format de projet a été introduit dans la version 0.10 de UmbraEdit."
#: ../../source/more/project_format.rst:98
msgid ""
"With this format, the way auto-replace entries were stored in the main "
"project XML file changed. Conversion from this format is done "
"automatically."
msgstr ""
"Avec ce format, la façon dont les entrées de remplacement automatique "
"étaient stockées dans le fichier XML du projet principal a changé. La "
"conversion de ce format se fait automatiquement."
#: ../../source/more/project_format.rst:105
msgid "Format 1.1 Changes"
msgstr "Format 1.1 Modifications"
#: ../../source/more/project_format.rst:107
msgid "This project format was introduced in UmbraEdit version 0.7."
msgstr ""
"Ce format de projet a été introduit dans la version 0.7 de UmbraEdit."
#: ../../source/more/project_format.rst:109
msgid ""
"With this format, the ``content`` folder was introduced in the project "
"storage. Previously, all UmbraEdit documents were saved in a series of "
"folders numbered from ``data_0`` to ``data_f``."
msgstr ""
"Avec ce format, le dossier ``content`` a été introduit dans le stockage "
"du projet. Auparavant, tous les documents de UmbraEdit étaient "
"sauvegardés dans une série de dossiers numérotés de ``data_0`` à "
"``data_f``."
#: ../../source/more/project_format.rst:112
msgid ""
"It also reduces the number of meta data and cache files. These files are "
"automatically deleted if an old project is opened. This was also when "
"the Table of Contents file was introduced. Conversion from this format "
"is done automatically."
msgstr ""
"Il réduit également le nombre de métadonnées et de fichiers de cache. "
"Ces fichiers sont automatiquement supprimés lorsqu'un ancien projet est "
"ouvert. C'est également à cette époque que le fichier de table des "
"matières a été introduit. La conversion de ce format se fait "
"automatiquement."
#: ../../source/more/project_format.rst:120
msgid "Format 1.0 Changes"
msgstr "Format 1.0 Modifications"
#: ../../source/more/project_format.rst:122
msgid ""
"This is the original file format and project structure. It was in use up "
"to version 0.6.3."
msgstr ""
"Il s'agit du format de fichier et de la structure de projet d'origine. "
"Il a été utilisé jusqu'à la version 0.6.3."

View File

@@ -0,0 +1,267 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-28 23:17+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/more/typography.rst:5
msgid "Typographical Notes"
msgstr "Notes typographiques"
#: ../../source/more/typography.rst:12
msgid ""
"UmbraEdit has some support for typographical symbols that are not usually "
"easily available in many text editors. This includes for instance the "
"proper unicode quotation marks, dashes, ellipsis, thin spaces, etc. All "
"these symbols are available from the **Insert** menu, and via keyboard "
"shortcuts. See :ref:`docs_features_shortcuts_insert`."
msgstr ""
"UmbraEdit prend en charge certains symboles typographiques qui ne sont "
"généralement pas disponibles dans de nombreux éditeurs de texte. Cela "
"inclut par exemple les guillemets unicode, les tirets, les ellipses, les "
"espaces fins, etc. Tous ces symboles sont disponibles dans le menu "
"**Insérer**, et via des raccourcis clavier. Voir :ref:"
"`docs_features_shortcuts_insert`."
#: ../../source/more/typography.rst:17
msgid ""
"This chapter provides some additional information on how UmbraEdit "
"handles these symbols."
msgstr ""
"Ce chapitre fournit des informations supplémentaires sur la manière dont "
"UmbraEdit gère ces symboles."
#: ../../source/more/typography.rst:21
msgid "Dashes and Ellipsis"
msgstr "Tirets et points de suspension"
#: ../../source/more/typography.rst:23
msgid ""
"With the auto-replace feature enabled (see :ref:`docs_ui_edit_view_auto`), "
"two and three hyphens are converted automatically to short and long dashes, "
"four hyphens to a horizontal bar, and three dots to ellipsis."
msgstr ""
"Lorsque la fonction de remplacement automatique est activée (voir :ref:"
"`docs_ui_edit_view_auto`), les deux et trois traits d'union sont "
"automatiquement convertis en tirets demi-cadratin et cadratin, les quatre "
"traits d'union en barre horizontale et les trois points en points de "
"suspension."
#: ../../source/more/typography.rst:29
msgid ""
"The last auto-replace can always be reverted with the undo command :kbd:"
"`Ctrl+Z`, reverting the text to what you typed before the automatic "
"replacement occurred."
msgstr ""
"Le dernier remplacement automatique peut toujours être annulé avec la "
"commande d'annulation :kbd:`Ctrl+Z`, rétablissant le texte tel qu'il était "
"avant le remplacement automatique."
#: ../../source/more/typography.rst:32
msgid ""
"In addition, \"Figure Dash\" is available. The Figure Dash is a dash that "
"has the same width as the numbers of the same font, for most fonts. It "
"helps to align numbers nicely in columns when you need to use a dash in "
"them."
msgstr ""
"En outre, le « tiret chiffré » est disponible. Il s'agit d'un tiret de la "
"même largeur que les chiffres de la même police, pour la plupart des "
"polices. Il permet de bien aligner les chiffres dans les colonnes lorsque "
"vous devez utiliser un tiret."
#: ../../source/more/typography.rst:38
msgid "Single and Double Quotes"
msgstr "Guillemets simples et doubles"
#: ../../source/more/typography.rst:40
msgid ""
"All the different quotation marks listed on the `Quotation Mark`_ Wikipedia "
"page are available, and can be selected as auto-replaced symbols for "
"straight single and double quote key strokes. The settings can be found in "
"**Preferences**."
msgstr ""
"Tous les différents guillemets listés sur la page Wikipedia `Quotation "
"Mark`_ sont disponibles, et peuvent être sélectionnés comme symboles auto-"
"remplacés pour les touches de guillemets simples et doubles. Les réglages "
"se trouvent dans les **Préférences**."
#: ../../source/more/typography.rst:44
msgid ""
"If your text contains straight single and double quotes, there are two "
"convenience functions in the **Format** menu that can be used to re-format "
"a selected section of text with the correct quote symbols."
msgstr ""
"Si votre texte contient des guillemets simples et doubles, deux fonctions "
"pratiques du menu **Format** permettent de reformater une section de texte "
"sélectionnée avec les symboles de guillemets corrects."
#: ../../source/more/typography.rst:48
msgid ""
"You can enable dialogue recognition and colour highlighting for novel "
"documents. See :ref:`docs_features_dialogue` for more details."
msgstr ""
"Vous pouvez activer la reconnaissance du dialogue et la mise en évidence "
"des couleurs pour les nouveaux documents. Voir :ref:"
"`docs_features_dialogue` pour plus de détails."
#: ../../source/more/typography.rst:53
msgid "Single and Double Prime"
msgstr "Simple et double prime"
#: ../../source/more/typography.rst:55
msgid ""
"Both single and double prime symbols are available in the **Insert** menu. "
"These symbols are the correct symbols to use for unit symbols for feet, "
"inches, minutes, and seconds. The usage of these is described in more "
"detail on the Wikipedia Prime_ page. They look very similar to single and "
"double straight quotes, and may be rendered similarly by the font, but they "
"have different codes. Using these correctly will also prevent the auto-"
"replace and dialogue highlighting features misunderstanding their meaning "
"in the text."
msgstr ""
"Les symboles de prime simple et double sont disponibles dans le menu "
"**Insérer**. Ces symboles sont les symboles corrects à utiliser pour les "
"symboles d'unités pour les pieds, les pouces, les minutes et les secondes. "
"L'utilisation de ces symboles est décrite plus en détail sur la page Prime_ "
"de Wikipedia. Ils ressemblent beaucoup aux guillemets simples et doubles et "
"peuvent être rendus de la même manière par la police, mais ils ont des "
"codes différents. En les utilisant correctement, vous éviterez que les "
"fonctions de remplacement automatique et de mise en évidence des dialogues "
"ne se méprennent sur leur signification dans le texte."
#: ../../source/more/typography.rst:66
msgid "Modifier Letter Apostrophe"
msgstr "Modificateur Lettre Apostrophe"
#: ../../source/more/typography.rst:68
msgid ""
"The auto-replace feature will consider any right-facing single straight "
"quote as a quote symbol, even if it is intended as an apostrophe. This also "
"includes the syntax highlighter, which may assume the first following "
"apostrophe is the closing symbol of a single quoted region of text."
msgstr ""
"La fonction de remplacement automatique considère tout guillemet droit "
"simple orienté vers la droite comme un symbole de guillemet, même s'il "
"s'agit d'une apostrophe. Cela s'applique également à l'outil de mise en "
"évidence de la syntaxe, qui peut supposer que la première apostrophe qui "
"suit est le symbole de fermeture d'une région de texte entre guillemets."
#: ../../source/more/typography.rst:72
msgid ""
"To get around this, an alternative apostrophe is available. It is a special "
"Unicode character that is not categorised as punctuation, but as a "
"modifier. It is usually rendered the same way as the right single quotation "
"marks, depending on the font. There is a Wikipedia article for the "
"`Modifier letter apostrophe`_ with more details."
msgstr ""
"Pour contourner ce problème, il existe une apostrophe alternative. Il "
"s'agit d'un caractère Unicode spécial qui n'est pas considéré comme une "
"ponctuation, mais comme un modificateur. Il est généralement rendu de la "
"même manière que les guillemets simples de droite, en fonction de la police "
"de caractères. Il existe un article de Wikipédia sur la `lettre "
"modificatrice apostrophe`_ avec plus de détails."
#: ../../source/more/typography.rst:79
msgid ""
"On export with the **Build Manuscript** tool, these apostrophes will be "
"replaced automatically with the corresponding right hand single quote "
"symbol as is generally recommended. Therefore it doesn't really matter if "
"you only use them to correct syntax highlighting in some places, and not "
"others."
msgstr ""
"Lors de l'exportation à l'aide de l'outil **Compiler le manuscrit**, ces "
"apostrophes seront automatiquement remplacées par le symbole de guillemet "
"simple de droite correspondant, comme cela est généralement recommandé. Par "
"conséquent, il importe peu que vous les utilisiez uniquement pour corriger "
"la coloration syntaxique à certains endroits, et pas à d'autres."
#: ../../source/more/typography.rst:86
msgid "White Space Symbols"
msgstr "Symboles de l'espace"
#: ../../source/more/typography.rst:88
msgid ""
"A few variations of the regular space character is supported. The correct "
"typographical way to separate a number from its unit is with a `thin "
"space`_. It is usually 2/3 the width of a regular space. For numbers and "
"units, this should in addition be a non-breaking space, that is, the text "
"wrapping should not add a line break on this particular space."
msgstr ""
"Quelques variations du caractère espace régulier sont prises en charge. La "
"manière typographique correcte de séparer un nombre de son unité est "
"d'utiliser une `espace fine`_. Sa largeur est généralement égale aux deux "
"tiers de celle d'une espace normale. Pour les nombres et les unités, il "
"doit en outre s'agir d'un espace insécable, c'est-à-dire que l'habillage du "
"texte ne doit pas ajouter de saut de ligne sur cet espace particulier."
#: ../../source/more/typography.rst:93
msgid "A regular space can also be made into a non-breaking space if needed."
msgstr ""
"Un espace régulier peut également être transformé en espace insécable si "
"nécessaire."
#: ../../source/more/typography.rst:95
msgid ""
"All non-breaking spaces are highlighted with a differently coloured "
"background to make it easier to spot them in the text. The colour will "
"depend on the selected colour theme."
msgstr ""
"Tous les espaces insécables sont mis en évidence par un arrière-plan de "
"couleur différente pour faciliter leur repérage dans le texte. La couleur "
"dépend du thème de couleur sélectionné."
#: ../../source/more/typography.rst:98
msgid ""
"You can insert these spaces in your text using the following keyboard "
"combinations:"
msgstr ""
"Vous pouvez insérer ces espaces dans votre texte en utilisant les "
"combinaisons de clavier suivantes :"
#: ../../source/more/typography.rst:100
msgid "A non-breaking space can be inserted with :kbd:`Ctrl+K`, :kbd:`Space`."
msgstr ""
"Un espace insécable peut être inséré avec :kbd:`Ctrl+K`, :kbd:`Espace`."
#: ../../source/more/typography.rst:101
msgid ""
"Thin spaces are also supported, and can be inserted with :kbd:`Ctrl+K`, :"
"kbd:`Shift+Space`."
msgstr ""
"Les espaces courtes sont également supportés, et peuvent être insérés avec :"
"kbd:`Ctrl+K`, :kbd:`Maj+Espace`."
#: ../../source/more/typography.rst:102
msgid ""
"Non-breaking thin space can be inserted with :kbd:`Ctrl+K`, :kbd:"
"`Ctrl+Space`."
msgstr ""
"Une espace courte insécable peut être insérée avec :kbd:`Ctrl+K`, :kbd:"
"`Ctrl+Espace`."
#: ../../source/more/typography.rst:104
msgid ""
"These are all insert features, and the **Insert** menu has more. The "
"keyboard shortcuts for them are also listed in :ref:"
"`docs_features_shortcuts`."
msgstr ""
"Ce sont toutes des fonctions d'insertion, et le menu **Insérer** en propose "
"d'autres. Les raccourcis clavier sont également listés dans :ref:"
"`docs_features_shortcuts`."

View File

@@ -0,0 +1,158 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-29 11:25+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/technical/locations.rst:5
msgid "File Locations"
msgstr "Emplacement des fichiers"
#: ../../source/technical/locations.rst:9
msgid ""
"UmbraEdit will create a few files on your system outside of the "
"application folder itself. These file locations are described in this "
"chapter."
msgstr ""
"UmbraEdit créera quelques fichiers sur votre système en dehors du "
"dossier de l'application elle-même. L'emplacement de ces fichiers est "
"décrit dans ce chapitre."
#: ../../source/technical/locations.rst:16
msgid "Configuration"
msgstr "Configuration"
#: ../../source/technical/locations.rst:18
msgid ""
"The general configuration of UmbraEdit, including everything that is "
"in **Preferences**, is saved in one central configuration file. The "
"location of this file depends on your operating system. The system paths "
"are provided by the Qt QStandardPaths_ class and its ``ConfigLocation`` "
"value."
msgstr ""
"La configuration générale de UmbraEdit, y compris tout ce qui se "
"trouve dans les **Préférences**, est enregistrée dans un fichier de "
"configuration central. L'emplacement de ce fichier dépend de votre "
"système d'exploitation. Les chemins d'accès au système sont fournis par "
"la classe Qt QStandardPaths_ et sa valeur ``ConfigLocation``."
#: ../../source/technical/locations.rst:22
#: ../../source/technical/locations.rst:45
msgid "The standard paths are:"
msgstr "Les chemins standard sont les suivants :"
#: ../../source/technical/locations.rst:24
msgid "Linux: ``~/.config/umbraedit/umbraedit.conf``"
msgstr "Linux : ``~/.config/umbraedit/umbraedit.conf``"
#: ../../source/technical/locations.rst:25
msgid "MacOS: ``~/Library/Preferences/umbraedit/umbraedit.conf``"
msgstr "MacOS: ``~/Library/Preferences/umbraedit/umbraedit.conf``"
#: ../../source/technical/locations.rst:26
msgid ""
"Windows: ``C:\\Users\\<USER>\\AppData\\Local\\umbraedit\\umbraedit."
"conf``"
msgstr ""
"Windows: ``C:\\Users\\<USER>\\AppData\\Local\\umbraedit\\umbraedit."
"conf``"
#: ../../source/technical/locations.rst:28
#: ../../source/technical/locations.rst:51
msgid ""
"Here, ``~`` corresponds to the user's home directory on Linux and MacOS, "
"and ``<USER>`` is the user's username on Windows."
msgstr ""
"Ici, ``~`` correspond au répertoire personnel de l'utilisateur sous "
"Linux et MacOS, et ``<USER>`` est le nom d'utilisateur de l'utilisateur "
"sous Windows."
#: ../../source/technical/locations.rst:32
#: ../../source/technical/locations.rst:55
msgid ""
"These are the standard operating system defined locations. If your "
"system has been set up in a different way, these locations may also be "
"different."
msgstr ""
"Il s'agit des emplacements standard définis par le système "
"d'exploitation. Si votre système a été configuré différemment, ces "
"emplacements peuvent également être différents."
#: ../../source/technical/locations.rst:39
msgid "Application Data"
msgstr "Données d'application"
#: ../../source/technical/locations.rst:41
msgid ""
"UmbraEdit also stores a bit of data that is generated by the user's "
"actions. This includes the list of recent projects form the **Welcome** "
"dialog. Custom themes should also be saved here. The system paths are "
"provided by the Qt QStandardPaths_ class and its ``AppDataLocation`` "
"value."
msgstr ""
"UmbraEdit stocke également un certain nombre de données générées par "
"les actions de l'utilisateur. Cela inclut la liste des projets récents "
"de la boîte de dialogue **Bienvenue**. Les thèmes personnalisés "
"devraient également être sauvegardés ici. Les chemins d'accès au système "
"sont fournis par la classe Qt QStandardPaths_ et sa valeur "
"``AppDataLocation``."
#: ../../source/technical/locations.rst:47
msgid "Linux: ``~/.local/share/umbraedit/``"
msgstr "Linux: ``~/.local/share/umbraedit/``"
#: ../../source/technical/locations.rst:48
msgid "MacOS: ``~/Library/Application Support/umbraedit/``"
msgstr "MacOS: ``~/Library/Application Support/umbraedit/``"
#: ../../source/technical/locations.rst:49
msgid "Windows: ``C:\\Users\\<USER>\\AppData\\Roaming\\umbraedit\\``"
msgstr "Windows: ``C:\\Users\\<USER>\\AppData\\Roaming\\umbraedit\\``"
#: ../../source/technical/locations.rst:58
msgid "The Application Data location also holds several folders:"
msgstr ""
"L'emplacement des données d'application contient également plusieurs "
"dossiers :"
#: ../../source/technical/locations.rst:60
msgid "``cache``"
msgstr "``cache``"
#: ../../source/technical/locations.rst:61
msgid ""
"This folder is used to save the preview data for the **Manuscript "
"Build** tool."
msgstr ""
"Ce dossier est utilisé pour enregistrer les données de prévisualisation "
"pour l'outil **Compilation de manuscrit**."
#: ../../source/technical/locations.rst:63
msgid "``icons``, ``syntax`` and ``themes``"
msgstr "``icons``, ``syntax`` and ``themes``"
#: ../../source/technical/locations.rst:64
msgid ""
"These folders are empty by default, but this is where the user can store "
"custom theme files. See :ref:`docs_more_custom` for more details."
msgstr ""
"Ces dossiers sont vides par défaut, mais c'est là que l'utilisateur peut "
"stocker des fichiers de thèmes personnalisés. Voir :ref:"
"`docs_more_custom` pour plus de détails."

View File

@@ -0,0 +1,283 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-29 11:39+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/technical/source.rst:5
msgid "Running from Source"
msgstr "Exécuter depuis la source"
#: ../../source/technical/source.rst:11
msgid ""
"This chapter describes various ways of running UmbraEdit directly from "
"the source code, and how to build the various components like the "
"translation files and documentation."
msgstr ""
"Ce chapitre décrit les différentes façons d'exécuter UmbraEdit "
"directement à partir du code source, et comment construire les "
"différents composants tels que les fichiers de traduction et la "
"documentation."
#: ../../source/technical/source.rst:16
msgid ""
"The text below assumes the command ``python`` corresponds to a Python 3 "
"executable. Python 2 is now deprecated, but on many systems the command "
"``python3`` may be needed instead. Likewise, ``pip`` may need to be "
"replaced with ``pip3``."
msgstr ""
"Le texte ci-dessous suppose que la commande ``python`` correspond à un "
"exécutable Python 3. Python 2 est maintenant déprécié, mais sur de "
"nombreux systèmes, la commande ``python3`` peut être utilisée à la "
"place. De même, ``pip`` peut être remplacé par ``pip3``."
#: ../../source/technical/source.rst:20
msgid ""
"Most of the custom commands for building packages of UmbraEdit, or "
"building assets, are contained in the ``pkgutils.py`` script in the root "
"of the source code. You can list the available commands by running:"
msgstr ""
"La plupart des commandes personnalisées pour construire des paquets de "
"UmbraEdit, ou pour construire des actifs, sont contenues dans le "
"script ``pkgutils.py`` à la racine du code source. Vous pouvez lister "
"les commandes disponibles en lançant :"
#: ../../source/technical/source.rst:32
msgid "Dependencies"
msgstr "Dépendances"
#: ../../source/technical/source.rst:34
msgid ""
"UmbraEdit has been designed to rely on as few dependencies as "
"possible. Only the Python wrapper for the Qt GUI libraries is required. "
"The package for spell checking is optional, but recommended. Everything "
"else is handled with standard Python libraries."
msgstr ""
"UmbraEdit a été conçu pour s'appuyer sur le moins de dépendances "
"possible. Seul le wrapper Python pour les bibliothèques Qt GUI est "
"nécessaire. Le paquetage pour la vérification orthographique est "
"optionnel, mais recommandé. Tout le reste est géré par les bibliothèques "
"Python standard."
#: ../../source/technical/source.rst:38
msgid ""
"The following Python packages are needed to run all features of "
"UmbraEdit:"
msgstr ""
"Les paquets Python suivants sont nécessaires pour exécuter toutes les "
"fonctionnalités de UmbraEdit :"
#: ../../source/technical/source.rst:40
msgid "``PyQt6`` – needed for connecting with the Qt6 libraries."
msgstr "``PyQt6`` - nécessaire pour se connecter aux bibliothèques Qt6."
#: ../../source/technical/source.rst:41
msgid "``PyEnchant`` – needed for spell checking (optional)."
msgstr ""
"``PyEnchant`` - nécessaire pour la vérification orthographique "
"(optionnel)."
#: ../../source/technical/source.rst:43
msgid ""
"If you want spell checking, you must install the ``PyEnchant`` package. "
"The spell check library must be at least 3.0 to work with Windows. On "
"Linux, 2.0 also works fine."
msgstr ""
"Si vous voulez un correcteur orthographique, vous devez installer le "
"paquet ``PyEnchant``. La bibliothèque de vérification orthographique "
"doit être au moins en version 3.0 pour fonctionner sous Windows. Sous "
"Linux, la version 2.0 fonctionne également très bien."
#: ../../source/technical/source.rst:46
msgid ""
"If you install from PyPi, these dependencies should be installed "
"automatically. If you install from source, dependencies can still be "
"installed from PyPi with:"
msgstr ""
"Si vous installez à partir de PyPi, ces dépendances devraient être "
"installées automatiquement. Si vous installez à partir des sources, les "
"dépendances peuvent toujours être installées à partir de PyPi avec :"
#: ../../source/technical/source.rst:55
msgid ""
"On Linux distros, the Qt library is usually split up into multiple "
"packages. In some cases, secondary dependencies may not be installed "
"automatically. For UmbraEdit, the library files for rendering the SVG "
"icons may be left out and needs to be installed manually. This is the "
"case on for instance Arch Linux."
msgstr ""
"Sur les distributions Linux, la bibliothèque Qt est généralement divisée "
"en plusieurs paquets. Dans certains cas, des dépendances secondaires "
"peuvent ne pas être installées automatiquement. Pour UmbraEdit, les "
"fichiers de la bibliothèque pour le rendu des icônes SVG peuvent être "
"omis et doivent être installés manuellement. C'est le cas, par exemple, "
"sous Arch Linux."
#: ../../source/technical/source.rst:64
msgid "Build and Install from Source"
msgstr "Compiler et installer à partir des sources"
#: ../../source/technical/source.rst:66
msgid ""
"If you want to install UmbraEdit directly from the source available on "
"GitHub_, you must first build the package using the Python Packaging "
"Authority's build tool. It can be installed with:"
msgstr ""
"Si vous souhaitez installer UmbraEdit directement à partir des sources "
"disponibles sur GitHub_, vous devez d'abord construire le paquet à "
"l'aide de l'outil de construction de la Python Packaging Authority. Il "
"peut être installé avec :"
#: ../../source/technical/source.rst:73
msgid "On Debian-based systems the tool can also be installed with:"
msgstr ""
"Sur les systèmes basés sur Debian, l'outil peut également être installé "
"avec :"
#: ../../source/technical/source.rst:79
msgid ""
"With the tool installed, run the following command from the root of the "
"UmbraEdit source code:"
msgstr ""
"Une fois l'outil installé, exécutez la commande suivante à partir de la "
"racine du code source de UmbraEdit :"
#: ../../source/technical/source.rst:85
msgid ""
"This should generate a ``.whl`` file in the ``dist/`` folder at your "
"current location. The wheel file can then be installed on your system. "
"Here with example version number 2.0.7, but yours may be different:"
msgstr ""
"Cela devrait générer un fichier ``.whl`` dans le dossier ``dist/`` de "
"votre emplacement actuel. Le fichier wheel peut alors être installé sur "
"votre système. Ici avec l'exemple de la version numéro 2.0.7, mais la "
"vôtre peut être différente :"
#: ../../source/technical/source.rst:97
msgid "Building the Translation Files"
msgstr "Création des fichiers de traduction"
#: ../../source/technical/source.rst:99
msgid ""
"If you installed UmbraEdit from a package, the translation files "
"should be pre-built and included. If you're running UmbraEdit from the "
"source code, you will need to generate the files yourself. The files you "
"need will be written to the ``umbraedit/assets/i18n`` folder, and will "
"have the ``.qm`` file extension."
msgstr ""
"Si vous avez installé UmbraEdit à partir d'un paquetage, les fichiers "
"de traduction devraient être préconstruits et inclus. Si vous exécutez "
"UmbraEdit à partir du code source, vous devrez générer les fichiers "
"vous-même. Les fichiers dont vous avez besoin seront écrits dans le "
"dossier ``umbraedit/assets/i18n``, et auront l'extension ``.qm``."
#: ../../source/technical/source.rst:104
msgid "You can build the ``.qm`` files with:"
msgstr "Vous pouvez construire les fichiers ``.qm`` avec :"
#: ../../source/technical/source.rst:110
msgid ""
"This requires that the Qt Linguist tool is installed on your system. On "
"Ubuntu and Debian, the needed package is called ``qttools5-dev-tools``."
msgstr ""
"Cela nécessite que l'outil Qt Linguist soit installé sur votre système. "
"Sur Ubuntu et Debian, le paquet nécessaire s'appelle ``qttools5-dev-"
"tools``."
#: ../../source/technical/source.rst:115
msgid ""
"If you want to improve UmbraEdit with translation files for another "
"language, or update an existing translation, instructions for how to "
"contribute can be found in the ``README.md`` file in the ``i18n`` folder "
"of the source code."
msgstr ""
"Si vous voulez améliorer UmbraEdit avec des fichiers de traduction "
"pour une autre langue, ou mettre à jour une traduction existante, les "
"instructions pour contribuer peuvent être trouvées dans le fichier "
"``README.md`` dans le dossier ``i18n`` du code source."
#: ../../source/technical/source.rst:123
msgid "Building the Example Project"
msgstr "Construction du projet d'exemple"
#: ../../source/technical/source.rst:125
msgid ""
"In order to be able to create new projects from example files, you need "
"a ``sample.zip`` file in the ``assets`` folder of the source. This file "
"can be built from the ``pkgutils.py`` script by running:"
msgstr ""
"Afin de pouvoir créer de nouveaux projets à partir des fichiers "
"d'exemple, vous avez besoin d'un fichier ``sample.zip`` dans le dossier "
"``assets`` de la source. Ce fichier peut être construit à partir du "
"script ``pkgutils.py`` en exécutant :"
#: ../../source/technical/source.rst:137
msgid "Building the Documentation"
msgstr "Élaboration de la documentation"
#: ../../source/technical/source.rst:139
msgid ""
"A local copy of this documentation can be generated as HTML. This "
"requires installing some Python packages from PyPi:"
msgstr ""
"Une copie locale de cette documentation peut être générée au format "
"HTML. Cela nécessite l'installation de certains paquets Python à partir "
"de PyPi :"
#: ../../source/technical/source.rst:146
msgid ""
"The documentation can then be built from the root folder in the source "
"code by running:"
msgstr ""
"La documentation peut ensuite être créée à partir du dossier racine du "
"code source en lançant le programme :"
#: ../../source/technical/source.rst:152
msgid ""
"If successful, the documentation should be available in the ``docs/build/"
"html`` folder and you can open the ``index.html`` file in your browser."
msgstr ""
"En cas de succès, la documentation devrait être disponible dans le "
"dossier `docs/build/html` et vous pouvez ouvrir le fichier `index.html` "
"dans votre navigateur."
#: ../../source/technical/source.rst:155
msgid ""
"You can also build a PDF manual from the documentation using the "
"``pkgutils.py`` script:"
msgstr ""
"Vous pouvez également créer un manuel PDF à partir de la documentation "
"en utilisant le script ``pkgutils.py`` :"
#: ../../source/technical/source.rst:161
msgid ""
"This will build the English documentation as a PDF using LaTeX. The file "
"will then be copied into the assets folder and made available in the "
"**Help** menu in UmbraEdit. Replace ``en`` with ``all`` to build for "
"all languages. The Sphinx build system has a few extra dependencies when "
"building the PDF. Please check the `Sphinx Docs`_ for more details."
msgstr ""
"Cela permettra de créer la documentation anglaise au format PDF en "
"utilisant LaTeX. Le fichier sera ensuite copié dans le dossier assets et "
"rendu disponible dans le menu **Aide** de UmbraEdit. Remplacez ``en`` "
"par ``all`` pour construire pour toutes les langues. Le système de "
"construction Sphinx a quelques dépendances supplémentaires lors de la "
"construction du PDF. Veuillez consulter la `Docs Sphinx`_ pour plus de "
"détails."

View File

@@ -0,0 +1,501 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-29 11:33+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/technical/storage.rst:5
msgid "How Data is Stored"
msgstr "Comment les données sont stockées"
#: ../../source/technical/storage.rst:9
msgid ""
"This chapter contains details of how UmbraEdit stores and handles the "
"project data."
msgstr ""
"Ce chapitre contient des détails sur la manière dont UmbraEdit stocke "
"et gère les données du projet."
#: ../../source/technical/storage.rst:13
msgid "Overview"
msgstr "Présentation générale"
#: ../../source/technical/storage.rst:15
msgid ""
"The files of a UmbraEdit project are stored in a dedicated project "
"folder. The project structure is kept in a file at the root of this "
"folder called ``nwProject.nwx``. All the document files and associated "
"meta data are stored in other folders below the project folder."
msgstr ""
"Les fichiers d'un projet UmbraEdit sont stockés dans un dossier dédié "
"au projet. La structure du projet est conservée dans un fichier à la "
"racine de ce dossier appelé ``nwProject.nwx``. Tous les fichiers de "
"documents et les métadonnées associées sont stockés dans d'autres "
"dossiers sous le dossier du projet."
#: ../../source/technical/storage.rst:19
msgid "This way of storing data was chosen for several reasons."
msgstr ""
"Ce mode de stockage des données a été choisi pour plusieurs raisons."
#: ../../source/technical/storage.rst:21
msgid ""
"Firstly, all the text you add to your project is saved directly to your "
"project folder in separate files. Only the project structure and the "
"text you are currently editing is stored in memory at any given time, "
"which means there is a smaller risk of losing data if the application or "
"your computer crashes."
msgstr ""
"Tout d'abord, tout le texte que vous ajoutez à votre projet est "
"enregistré directement dans le dossier de votre projet, dans des "
"fichiers séparés. Seule la structure du projet et le texte que vous êtes "
"en train d'éditer sont stockés en mémoire à un moment donné, ce qui "
"signifie qu'il y a moins de risque de perdre des données si "
"l'application ou votre ordinateur tombe en panne."
#: ../../source/technical/storage.rst:26
msgid ""
"Secondly, having multiple small files means it is very easy to "
"synchronise them between computers with standard file synchronisation "
"tools."
msgstr ""
"Deuxièmement, le fait d'avoir plusieurs petits fichiers signifie qu'il "
"est très facile de les synchroniser entre ordinateurs à l'aide d'outils "
"de synchronisation de fichiers standard."
#: ../../source/technical/storage.rst:29
msgid ""
"Thirdly, if you use `version control`_ software to track the changes to "
"your project, the file formats used for the files are well suited. All "
"the JSON documents have line breaks and indents as well, which makes it "
"easier to track them with version control software."
msgstr ""
"Troisièmement, si vous utilisez un logiciel de `contrôle de version`_ "
"pour suivre les modifications apportées à votre projet, les formats "
"utilisés pour les fichiers sont bien adaptés. Tous les documents JSON "
"comportent des sauts de ligne et des retraits, ce qui facilite leur "
"suivi avec un logiciel de contrôle de version."
#: ../../source/technical/storage.rst:35
msgid ""
"Since UmbraEdit has to keep track of a bunch of files and folders when "
"a project is open, it may not run well on some virtual file systems. A "
"file or folder must be accessible with exactly the path it was saved or "
"created with. An example where this is not the case is the way Google "
"Drive is mapped on Linux Gnome desktops using gvfs/gio."
msgstr ""
"Comme UmbraEdit doit garder la trace d'un grand nombre de fichiers et "
"de dossiers lorsqu'un projet est ouvert, il peut ne pas fonctionner "
"correctement sur certains systèmes de fichiers virtuels. Un fichier ou "
"un dossier doit être accessible avec exactement le chemin avec lequel il "
"a été sauvegardé ou créé. Un exemple où ce n'est pas le cas est la façon "
"dont Google Drive est mappé sur les bureaux Linux Gnome en utilisant "
"gvfs/gio."
#: ../../source/technical/storage.rst:42
msgid ""
"You should not add additional files to the project folder yourself. Nor "
"should you, as a rule, manually edit files within it. If you really must "
"manually edit the text files, e.g. with some automated task you want to "
"perform, you need to rebuild the Project Index when you open the project "
"again."
msgstr ""
"Vous ne devez pas ajouter vous-même des fichiers supplémentaires au "
"dossier du projet. En règle générale, vous ne devez pas non plus "
"modifier manuellement les fichiers qui s'y trouvent. Si vous devez "
"vraiment modifier manuellement les fichiers texte, par exemple dans le "
"cadre d'une tâche automatisée, vous devez reconstruire l'index du projet "
"lorsque vous ouvrez à nouveau le projet."
#: ../../source/technical/storage.rst:47
msgid ""
"Editing text files in the ``content`` folder is less risky as these are "
"just plain text. Editing the main project XML file, however, may make "
"the project file unreadable and you may crash UmbraEdit and lose "
"project structure information and project settings."
msgstr ""
"L'édition de fichiers texte dans le dossier ``content`` est moins "
"risquée car il s'agit de texte simple. Cependant, éditer le fichier XML "
"du projet principal peut rendre le fichier du projet illisible et vous "
"risquez de planter UmbraEdit et de perdre les informations sur la "
"structure et les paramètres du projet."
#: ../../source/technical/storage.rst:53
msgid "Project Structure"
msgstr "Structure du projet"
#: ../../source/technical/storage.rst:55
msgid ""
"All UmbraEdit files are written with utf-8 encoding. Since Python "
"automatically converts Unix line endings to Windows line endings on "
"Windows systems, UmbraEdit does not make any adaptations to the "
"formatting on Windows systems. This is handled entirely by the Python "
"standard library. Python also handles this when working on the same "
"files on both Windows and Unix-based operating systems."
msgstr ""
"Tous les fichiers UmbraEdit sont écrits avec l'encodage utf-8. Comme "
"Python convertit automatiquement les fins de ligne Unix en fins de ligne "
"Windows sur les systèmes Windows, UmbraEdit ne fait aucune adaptation "
"au formatage sur les systèmes Windows. Ceci est entièrement géré par la "
"bibliothèque standard de Python. Python s'en occupe également lorsqu'il "
"travaille sur les mêmes fichiers sur les systèmes d'exploitation Windows "
"et Unix."
#: ../../source/technical/storage.rst:63
msgid "Main Project File"
msgstr "Fichier principal du projet"
#: ../../source/technical/storage.rst:65
msgid ""
"The project itself requires a dedicated folder for storing its files, "
"where UmbraEdit will create its own \"file system\" where the "
"project's folder and file hierarchy is described in a project XML file. "
"This is the main project file in the project's root folder with the name "
"``nwProject.nwx``. This file also contains all the meta data required "
"for the project (except the index data), and a number of related project "
"settings."
msgstr ""
"Le projet lui-même nécessite un dossier dédié pour stocker ses fichiers, "
"où UmbraEdit créera son propre « système de fichiers » où la "
"hiérarchie des dossiers et des fichiers du projet est décrite dans un "
"fichier XML du projet. C'est le fichier principal du projet dans le "
"dossier racine du projet avec le nom ``nwProject.nwx``. Ce fichier "
"contient également toutes les métadonnées requises pour le projet (à "
"l'exception des données d'index), ainsi qu'un certain nombre de "
"paramètres liés au projet."
#: ../../source/technical/storage.rst:71
msgid ""
"If this file is lost or corrupted, the structure of the project is lost, "
"although not the text itself. It is important to keep this file backed "
"up, either through the built-in backup tool, or your own backup solution."
msgstr ""
"Si ce fichier est perdu ou corrompu, la structure du projet est perdue, "
"mais pas le texte lui-même. Il est important de sauvegarder ce fichier, "
"soit à l'aide de l'outil de sauvegarde intégré, soit à l'aide de votre "
"propre solution de sauvegarde."
#: ../../source/technical/storage.rst:75
msgid ""
"The project XML file is indent-formatted, and is suitable for diff tools "
"and version control since most of the file will stay static, although a "
"timestamp is set in the meta section on line 2, and various meta data "
"entries incremented, on each save."
msgstr ""
"Le fichier XML du projet est formaté en indentation et convient aux "
"outils de comparaison et de contrôle de version, car la majeure partie "
"du fichier reste statique, bien qu'un horodatage soit défini dans la "
"section méta à la ligne 2 et que diverses entrées de données méta soient "
"incrémentées à chaque enregistrement."
#: ../../source/technical/storage.rst:79
msgid ""
"A full project file format specification is available under \"More "
"Documents\"."
msgstr ""
"Une spécification complète du format de fichier du projet est disponible "
"sous « Plus d'informations »."
#: ../../source/technical/storage.rst:83
msgid "Project Documents"
msgstr "Documents de projet"
#: ../../source/technical/storage.rst:85
msgid ""
"All the project documents are saved in a subfolder of the main project "
"folder named ``content``. Each document has a file handle based on a 52 "
"bit random number, represented as a hexadecimal string. The documents "
"are saved with a filename assembled from this handle and the file "
"extension ``.nwd``."
msgstr ""
"Tous les documents du projet sont enregistrés dans un sous-dossier du "
"dossier principal du projet nommé ``content``. Chaque document possède "
"un identifiant de fichier basé sur un nombre aléatoire de 52 bits, "
"représenté sous la forme d'une chaîne hexadécimale. Les documents sont "
"enregistrés avec un nom de fichier assemblé à partir de cet identifiant "
"et de l'extension ``.nwd``."
#: ../../source/technical/storage.rst:90
msgid ""
"If you wish to find the file system location of a document in the "
"project, you can either look it up in the project XML file, select "
"**Show File Details** from the **Document** menu when having the "
"document open in the editor, or look in the ``ToC.txt`` file in the root "
"of the project folder. The ``ToC.txt`` file has a list of all documents "
"in the project, referenced by their label, and where they are saved."
msgstr ""
"Si vous souhaitez trouver l'emplacement du système de fichiers d'un "
"document dans le projet, vous pouvez soit le rechercher dans le fichier "
"XML du projet, soit sélectionner **Afficher les détails du fichier** "
"dans le menu **Document** lorsque le document est ouvert dans l'éditeur, "
"soit rechercher dans le fichier ``ToC.txt`` à la racine du dossier du "
"projet. Le fichier ``ToC.txt`` contient une liste de tous les documents "
"du projet, référencés par leur étiquette, et l'endroit où ils sont "
"sauvegardés."
#: ../../source/technical/storage.rst:96
msgid ""
"The reason for this cryptic file naming is to avoid issues with file "
"naming conventions and restrictions on different operating systems, and "
"also to have a file name that does not depend on what you name the "
"document within the project, or changes it to. This is particularly "
"useful when using a versioning system."
msgstr ""
"La raison de ce nom de fichier cryptique est d'éviter les problèmes liés "
"aux conventions de dénomination des fichiers et aux restrictions sur les "
"différents systèmes d'exploitation, et aussi d'avoir un nom de fichier "
"qui ne dépend pas du nom que vous donnez au document dans le projet, ou "
"des modifications que vous lui apportez. Ceci est particulièrement utile "
"lors de l'utilisation d'un système de gestion des versions."
#: ../../source/technical/storage.rst:101
msgid ""
"Each document file contains a plain text version of the text from the "
"editor. The file can in principle be edited in any text editor, and is "
"suitable for diffing and version control if so desired. Just make sure "
"the file remains in utf-8 encoding, otherwise unicode characters may "
"become mangled when the file is opened in UmbraEdit again."
msgstr ""
"Chaque fichier de document contient une version en texte brut du texte "
"de l'éditeur. Le fichier peut en principe être édité dans n'importe quel "
"éditeur de texte, et convient pour le diffing et le contrôle de version "
"si on le souhaite. Assurez-vous simplement que le fichier reste en "
"encodage utf-8, sinon les caractères unicode risquent d'être altérés "
"lorsque le fichier est ouvert dans UmbraEdit."
#: ../../source/technical/storage.rst:106
msgid ""
"Editing these files is generally not recommended. The reason for this is "
"that the index will not be automatically updated when doing so, which "
"means UmbraEdit doesn't know you've altered the file. If you *do* edit "
"a file in this manner, you should rebuild the index when you next open "
"the project in UmbraEdit."
msgstr ""
"Il est généralement déconseillé de modifier ces fichiers. La raison en "
"est que l'index ne sera pas automatiquement mis à jour, ce qui signifie "
"que UmbraEdit ne sait pas que vous avez modifié le fichier. Si vous "
"modifiez un fichier de cette manière, vous devez reconstruire l'index "
"lorsque vous ouvrez le projet dans UmbraEdit."
#: ../../source/technical/storage.rst:111
#, python-format
msgid ""
"The first lines of the file may contain some meta data starting with the "
"characters ``%%~``. These lines are mainly there to restore some "
"information if the file is lost from the main project file, and the "
"information may be helpful if you do open the file in an external editor "
"as it contains the document label and the document class and layout. The "
"lines can be deleted without any consequences to the rest of the content "
"of the file, and will be added back the next time the document is saved "
"in UmbraEdit."
msgstr ""
"Les premières lignes du fichier peuvent contenir des métadonnées "
"commençant par les caractères ``%%~``. Ces lignes sont principalement là "
"pour restaurer certaines informations si le fichier est perdu dans le "
"fichier principal du projet, et ces informations peuvent être utiles si "
"vous ouvrez le fichier dans un éditeur externe car elles contiennent "
"l'étiquette du document ainsi que la classe et la mise en page du "
"document. Les lignes peuvent être supprimées sans conséquences pour le "
"reste du contenu du fichier, et seront ajoutées la prochaine fois que le "
"document sera sauvegardé dans UmbraEdit."
#: ../../source/technical/storage.rst:120
msgid "The File Saving Process"
msgstr "Le processus d'enregistrement des fichiers"
#: ../../source/technical/storage.rst:122
msgid ""
"When saving the project file, or any of the documents, the data is first "
"saved to a temporary file. If successful, the old data file is then "
"removed, and the temporary file replaces it. This ensures that the "
"previously saved data is only replaced when the new data has been "
"successfully saved to the storage medium."
msgstr ""
"Lors de l'enregistrement du fichier de projet ou de l'un des documents, "
"les données sont d'abord enregistrées dans un fichier temporaire. En cas "
"de succès, l'ancien fichier de données est alors supprimé et remplacé "
"par le fichier temporaire. Cela garantit que les données précédemment "
"enregistrées ne sont remplacées que lorsque les nouvelles données ont "
"été enregistrées avec succès sur le support de stockage."
#: ../../source/technical/storage.rst:129
msgid "Project Meta Data"
msgstr "Métadonnées du projet"
#: ../../source/technical/storage.rst:131
msgid ""
"The project folder contains a subfolder named ``meta``, containing a "
"number of files. The meta folder contains semi-important files. That is, "
"they can be lost with only minor impact to the project. All files in "
"this folder are JSON or JSON Lines files, although some other files may "
"remain from earlier versions of UmbraEdit as they haven't all been "
"JSON files in the past."
msgstr ""
"Le dossier du projet contient un sous-dossier nommé ``meta``, contenant "
"un certain nombre de fichiers. Le dossier meta contient des fichiers "
"semi-importants. C'est-à-dire qu'ils peuvent être perdus avec un impact "
"mineur sur le projet. Tous les fichiers de ce dossier sont des fichiers "
"JSON ou JSON Lines, bien que certains autres fichiers puissent provenir "
"de versions antérieures de UmbraEdit, car ils n'ont pas tous été des "
"fichiers JSON dans le passé."
#: ../../source/technical/storage.rst:136
msgid ""
"If you use version control software on your project, you can exclude "
"this folder, although you may want to track the session log file and the "
"custom words list."
msgstr ""
"Si vous utilisez un logiciel de contrôle de version pour votre projet, "
"vous pouvez exclure ce dossier, même si vous souhaitez suivre le fichier "
"journal de la session et la liste des mots personnalisés."
#: ../../source/technical/storage.rst:141
msgid "The Project Index"
msgstr "L'index des projets"
#: ../../source/technical/storage.rst:143
msgid ""
"Between writing sessions, the project index is saved in a JSON file in "
"``meta/index.json``. This file is not critical. If it is lost, it can be "
"completely rebuilt from within UmbraEdit from the **Tools** menu."
msgstr ""
"Entre les sessions d'écriture, l'index du projet est sauvegardé dans un "
"fichier JSON dans ``meta/index.json``. Ce fichier n'est pas critique. "
"S'il est perdu, il peut être complètement reconstruit à partir de "
"UmbraEdit dans le menu **Outils**."
#: ../../source/technical/storage.rst:147
msgid ""
"The index is maintained and updated whenever a document or note is saved "
"in the editor. It contains all references and tags in documents and "
"notes, as well as the location of all headers in the project, and the "
"word counts within each header section."
msgstr ""
"L'index est maintenu et mis à jour chaque fois qu'un document ou une "
"note est enregistré dans l'éditeur. Il contient toutes les références et "
"les balises des documents et des notes, ainsi que l'emplacement de tous "
"les en-têtes dans le projet et le nombre de mots dans chaque section de "
"l'en-tête."
#: ../../source/technical/storage.rst:151
msgid ""
"The integrity of the index is checked when the file is loaded. It is "
"possible to corrupt the index if the file is manually edited and "
"manipulated, so the check is important to avoid sudden crashes of "
"UmbraEdit. If the file contains errors, UmbraEdit will automatically "
"build it anew. If the check somehow fails and UmbraEdit keeps "
"crashing, you can delete the file manually and rebuild the index. If "
"this too fails, you have likely encountered a bug."
msgstr ""
"L'intégrité de l'index est vérifiée lorsque le fichier est chargé. Il "
"est possible de corrompre l'index si le fichier est édité et manipulé "
"manuellement, c'est pourquoi cette vérification est importante pour "
"éviter les plantages soudains de UmbraEdit. Si le fichier contient des "
"erreurs, UmbraEdit le reconstruira automatiquement. Si la vérification "
"échoue d'une manière ou d'une autre et que UmbraEdit continue à se "
"bloquer, vous pouvez supprimer le fichier manuellement et reconstruire "
"l'index. Si cela échoue également, vous avez probablement rencontré un "
"bogue."
#: ../../source/technical/storage.rst:159
msgid "Build Definitions"
msgstr "Définitions des compilations"
#: ../../source/technical/storage.rst:161
msgid ""
"The build definitions from the **Manuscript Build** tool are kept in the "
"``meta/builds.json`` file. If this file is lost, all custom build "
"definitions are lost too."
msgstr ""
"Les définitions de construction de l'outil **Compilation du manuscrit** "
"sont conservées dans le fichier ``meta/builds.json``. Si ce fichier est "
"perdu, toutes les définitions de construction personnalisées sont "
"également perdues."
#: ../../source/technical/storage.rst:166
msgid "Cached GUI Options"
msgstr "Options de l'interface graphique mises en cache"
#: ../../source/technical/storage.rst:168
msgid ""
"A file named ``meta/options.json`` contains the latest state of various "
"GUI buttons, switches, dialog window sizes, column sizes, etc, from the "
"GUI. These are the GUI settings that are specific to the project. Global "
"GUI settings are stored in the main config file."
msgstr ""
"Un fichier nommé ``meta/options.json`` contient le dernier état des "
"différents boutons de l'interface graphique, des commutateurs, de la "
"taille des fenêtres de dialogue, de la taille des colonnes, etc, de "
"l'interface graphique. Ce sont les paramètres de l'interface graphique "
"qui sont spécifiques au projet. Les paramètres globaux de l'interface "
"graphique sont stockés dans le fichier de configuration principal."
#: ../../source/technical/storage.rst:172
msgid ""
"The file is not critical, but if it is lost, all such GUI options will "
"revert back to their default settings."
msgstr ""
"Le fichier n'est pas critique, mais s'il est perdu, toutes les options "
"de l'interface graphique reviendront à leurs paramètres par défaut."
#: ../../source/technical/storage.rst:177
msgid "Custom Word List"
msgstr "Liste des mots personnalisés"
#: ../../source/technical/storage.rst:179
msgid ""
"A file named ``meta/userdict.json`` contains all the custom words you've "
"added to the project for spell checking purposes. The content of the "
"file can be edited from the **Tools** menu. If you lose this file, all "
"your custom spell check words will be lost too."
msgstr ""
"Un fichier nommé ``meta/userdict.json`` contient tous les mots "
"personnalisés que vous avez ajoutés au projet à des fins de vérification "
"orthographique. Le contenu de ce fichier peut être édité à partir du "
"menu **Outils**. Si vous perdez ce fichier, tous vos mots personnalisés "
"pour la vérification orthographique seront également perdus."
#: ../../source/technical/storage.rst:185
msgid "Session Stats"
msgstr "Statistiques de la session"
#: ../../source/technical/storage.rst:187
msgid ""
"The writing progress is saved in the ``meta/sessions.jsonl`` file. This "
"file records the length and word counts of each writing session on the "
"given project. The file is used by the **Writing Statistics** tool. If "
"this file is lost, the history it contains is also lost, but it has "
"otherwise no impact on the project."
msgstr ""
"La progression de l'écriture est sauvegardée dans le fichier ``meta/"
"sessions.jsonl``. Ce fichier enregistre la durée et le nombre de mots de "
"chaque session d'écriture sur le projet donné. Ce fichier est utilisé "
"par l'outil **Statistiques d'écriture**. Si ce fichier est perdu, "
"l'historique qu'il contient est également perdu, mais cela n'a par "
"ailleurs aucun impact sur le projet."
#: ../../source/technical/storage.rst:192
msgid ""
"Each session is recorded as a JSON object on a single line of the file. "
"Each session record is appended tot he file."
msgstr ""
"Chaque session est enregistrée sous la forme d'un objet JSON sur une "
"seule ligne du fichier. Chaque enregistrement de session est ajouté au "
"fichier."

View File

@@ -0,0 +1,160 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-29 11:41+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/technical/tests.rst:5
msgid "Running Tests"
msgstr "Exécution des tests"
#: ../../source/technical/tests.rst:7
msgid ""
"The UmbraEdit source code is well covered by tests. The test framework used "
"for the development is ``pytest`` with the use of an extension for Qt."
msgstr ""
"Le code source de UmbraEdit est bien couvert par des tests. Le cadre de test "
"utilisé pour le développement est ``pytest`` avec l'utilisation d'une extension "
"pour Qt."
#: ../../source/technical/tests.rst:12
msgid "Dependencies"
msgstr "Dépendances"
#: ../../source/technical/tests.rst:14
msgid "The dependencies for running the tests can be installed with:"
msgstr ""
"Les dépendances nécessaires à l'exécution des tests peuvent être installées "
"avec :"
#: ../../source/technical/tests.rst:20
msgid ""
"This will install a couple of extra packages for coverage and test management. "
"The minimum requirement is ``pytest`` and ``pytest-qt``."
msgstr ""
"Cela installera quelques paquets supplémentaires pour la couverture et la "
"gestion des tests. Le minimum requis est ``pytest`` et ``pytest-qt``."
#: ../../source/technical/tests.rst:25
msgid "Simple Test Run"
msgstr "Test simple"
#: ../../source/technical/tests.rst:27
msgid ""
"To run the tests, you simply need to execute the following from the root of the "
"source folder:"
msgstr ""
"Pour exécuter les tests, il suffit d'exécuter ce qui suit à partir de la racine "
"du dossier source :"
#: ../../source/technical/tests.rst:33
msgid ""
"Since several of the tests involve opening up the UmbraEdit GUI, you may want "
"to disable the GUI for the duration of the test run. Moving your mouse while "
"the tests are running may otherwise interfere with the execution of some tests."
msgstr ""
"Puisque plusieurs des tests impliquent l'ouverture de l'interface graphique de "
"UmbraEdit, vous pouvez désactiver l'interface graphique pour la durée de "
"l'exécution du test. Si vous déplacez votre souris pendant que les tests sont "
"en cours d'exécution, vous risquez d'interférer avec l'exécution de certains "
"tests."
#: ../../source/technical/tests.rst:37
msgid ""
"You can disable the renderring of the GUI by setting the flag "
"``QT_QPA_PLATFORM=offscreen``:"
msgstr ""
"Vous pouvez désactiver le rendu de l'interface graphique en définissant le "
"drapeau ``QT_QPA_PLATFORM=offscreen`` :"
#: ../../source/technical/tests.rst:45
msgid "Advanced Options"
msgstr "Options avancées"
#: ../../source/technical/tests.rst:47
msgid ""
"Adding the flag ``-v`` to the ``pytest`` command will increase verbosity of the "
"test execution."
msgstr ""
"L'ajout du drapeau ``-v`` à la commande ``pytest`` augmente la verbosité de "
"l'exécution du test."
#: ../../source/technical/tests.rst:49
msgid "You can also add coverage report generation. For instance to HTML:"
msgstr ""
"Vous pouvez également ajouter la génération de rapports de couverture. Par "
"exemple en HTML :"
#: ../../source/technical/tests.rst:55
msgid "Other useful report formats are ``xml``, and ``term`` for terminal output."
msgstr ""
"D'autres formats de rapport utiles sont ``xml``, et ``term`` pour la sortie "
"terminal."
#: ../../source/technical/tests.rst:57
msgid ""
"You can also run tests per subpackage of UmbraEdit with the ``-m`` command. "
"The available subpackage groups are ``base``, ``core``, and ``gui``. Consider "
"for instance:"
msgstr ""
"Vous pouvez aussi lancer des tests par sous-paquet de UmbraEdit avec la "
"commande ``-m``. Les groupes de sous-paquetages disponibles sont ``base``, "
"``core``, et ``gui``. Prenons un exemple :"
#: ../../source/technical/tests.rst:64
msgid ""
"This will only run the tests of the \"core\" package, that is, all the classes "
"that deal with the project data of a UmbraEdit project. The \"gui\" tests, "
"likewise, will run the tests for the GUI components, and the \"base\" tests "
"cover the bits in-between."
msgstr ""
"Ceci n'exécutera que les tests du paquet « core », c'est-à-dire toutes les "
"classes qui traitent les données d'un projet UmbraEdit. Les tests « gui », de "
"même, exécuteront les tests des composants de l'interface graphique, et les "
"tests « base » couvriront les éléments intermédiaires."
#: ../../source/technical/tests.rst:68
msgid ""
"You can also filter the tests with the ``-k`` switch. The following will do the "
"same as ``-m core``:"
msgstr ""
"Vous pouvez également filtrer les tests avec le commutateur ``-k``. Ce qui suit "
"fera la même chose que ``-m core`` :"
#: ../../source/technical/tests.rst:75
msgid ""
"All tests are named in such a way that you can filter them by adding more bits "
"of the test names. They all start with the word \"test\". Then comes the group: "
"\"Core\", \"Base\", \"Dlg\", \"Tool\", or \"Gui\". Finally comes the name of "
"the class or module, which generally corresponds to a single source code file. "
"For instance, running the following will run all tests for the document editor:"
msgstr ""
"Tous les tests sont nommés de manière à ce que vous puissiez les filtrer en "
"ajoutant d'autres éléments aux noms des tests. Ils commencent tous par le mot « "
"test ». Vient ensuite le groupe : « Core », “Base”, “Dlg”, “Tool” ou “Gui”. "
"Enfin, vient le nom de la classe ou du module, qui correspond généralement à un "
"seul fichier de code source. Par exemple, l'exécution de ce qui suit lancera "
"tous les tests pour l'éditeur de documents :"
#: ../../source/technical/tests.rst:84
msgid "To run a single test, simply add the full test name to the ``-k`` switch."
msgstr ""
"Pour lancer un seul test, il suffit d'ajouter le nom complet du test au "
"commutateur ``-k``."

View File

@@ -0,0 +1,392 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-28 16:04+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/usage/advanced_formatting.rst:5
msgid "Advanced Formatting"
msgstr "Mise en forme avancée"
#: ../../source/usage/advanced_formatting.rst:7
msgid ""
"Standard Markdown formatting is somewhat limited, so UmbraEdit has some "
"additional formatting codes for special use cases. These codes are all based "
"on brackets, and some allow an additional value to be set after a colon."
msgstr ""
"Le formatage Markdown standard est quelque peu limité, c'est pourquoi "
"UmbraEdit dispose de quelques codes de formatage supplémentaires pour des "
"cas d'utilisation particuliers. Ces codes sont tous basés sur les crochets, et "
"certains permettent de définir une valeur supplémentaire après les deux points."
#: ../../source/usage/advanced_formatting.rst:11
msgid "This section covers all these formatting codes."
msgstr "Cette section couvre tous ces codes de formatage."
#: ../../source/usage/advanced_formatting.rst:17
msgid "Formatting with Shortcodes"
msgstr "Mise en forme avec les shortcodes"
#: ../../source/usage/advanced_formatting.rst:19
msgid ""
"For basic formatting, like emphasis, you should use the standard Markdown "
"style formatting tags descried in :ref:`docs_usage_basics_emphasis` whenever "
"possible."
msgstr ""
"Pour le formatage de base, comme la mise en valeur, vous devriez utiliser les "
"balises de formatage standard du style Markdown décrites dans :ref:"
"`docs_usage_basics_emphasis` chaque fois que possible."
#: ../../source/usage/advanced_formatting.rst:22
msgid ""
"For additional formatting options, you can use shortcodes. Shortcodes is a "
"form of in-line codes that wrap the section of text to be formatted. "
"Shortcodes can be nested to apply multiple formats to the same piece of text."
msgstr ""
"Pour des options de formatage supplémentaires, vous pouvez utiliser des "
"shortcodes. Les shortcodes sont une forme de codes en ligne qui enveloppent la "
"section de texte à mettre en forme. Les shortcodes peuvent être imbriqués pour "
"appliquer plusieurs formats à la même partie de texte."
#: ../../source/usage/advanced_formatting.rst:26
msgid ""
"These shortcodes are intended for special formatting cases, or more complex "
"cases that cannot be solved with simple Markdown-like formatting codes. "
"Available shortcodes are listed below."
msgstr ""
"Ces shortcodes sont destinés à des cas de formatage spéciaux ou à des cas plus "
"complexes qui ne peuvent pas être résolus avec de simples codes de formatage "
"de type Markdown. Les shortcodes disponibles sont énumérés ci-dessous."
#: ../../source/usage/advanced_formatting.rst:29
msgid "Shortcodes Formats"
msgstr "Formats des shortcodes"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Syntax"
msgstr "Syntaxe"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Description"
msgstr "Description"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[b]text[/b]``"
msgstr "``[b]texte[/b]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Text is displayed as bold text."
msgstr "Le texte est affiché en gras."
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[i]text[/i]``"
msgstr "``[i]texte[/i]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Text is displayed as italicised text."
msgstr "Le texte est affiché en italique."
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[s]text[/s]``"
msgstr "``[s]texte[/s]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Text is displayed as strike through text."
msgstr "Le texte est affiché sous forme de texte barré."
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[u]text[/u]``"
msgstr "``[u]texte[/u]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Text is displayed as underlined text."
msgstr "Le texte est affiché sous forme de texte souligné."
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[m]text[/m]``"
msgstr "``[m]texte[/m]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Text is displayed as highlighted text."
msgstr "Le texte est affiché en surbrillance."
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[sup]text[/sup]``"
msgstr "``[sup]texte[/sup]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Text is displayed as superscript text."
msgstr "Le texte est affiché en exposant."
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[sub]text[/sub]``"
msgstr "``[sub]texte[/sub]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Text is displayed as subscript text."
msgstr "Le texte est affiché en indice."
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[footnote:key]``"
msgstr "``[footnote:clé]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "A reference to a :ref:`footnote comment <docs_usage_comments_footnotes>`."
msgstr ""
"Une référence à un :ref:`commentaire de note de bas de page "
"<docs_usage_comments_footnotes>`."
#: ../../source/usage/advanced_formatting.rst:43
msgid ""
"Unlike Markdown style codes, these can be used anywhere within a paragraph. "
"Even in the middle of a word if you need to. You can also freely combine them "
"to form more complex formatting."
msgstr ""
"Contrairement aux codes de style Markdown, ces codes peuvent être utilisés "
"n'importe où dans un paragraphe. Même au milieu d'un mot si nécessaire. Vous "
"pouvez également les combiner librement pour obtenir une mise en forme plus "
"complexe."
#: ../../source/usage/advanced_formatting.rst:46
msgid ""
"The shortcodes are available from the **Format** menu and in the editor "
"toolbar, which can be activated by clicking the left-most icon button in the "
"editor header."
msgstr ""
"Les shortcodes sont disponibles dans le menu **Format** et dans la barre "
"d'outils de l'éditeur, qui peut être activée en cliquant sur l'icône la plus à "
"gauche dans l'en-tête de l'éditeur."
#: ../../source/usage/advanced_formatting.rst:51
msgid ""
"Shortcodes are not processed until you generate a preview or generate a "
"manuscript document. So there is no highlighting of the text between the "
"formatting markers. There is also no check that your markers make sense. You "
"must ensure that you have both the opening and closing formatting markers "
"where you want them."
msgstr ""
"Les shortcodes ne sont pas traités tant que vous n'avez pas généré un aperçu "
"ou un document manuscrit. Il n'y a donc pas de mise en évidence du texte entre "
"les marqueurs de formatage. Il n'y a pas non plus de vérification de la "
"logique de vos marqueurs. Vous devez vous assurer que les marqueurs de "
"formatage d'ouverture et de fermeture se trouvent à l'endroit voulu."
#: ../../source/usage/advanced_formatting.rst:62
msgid "Vertical Space and Page Breaks"
msgstr "Espace vertical et sauts de page"
#: ../../source/usage/advanced_formatting.rst:64
msgid ""
"You can apply page breaks to partition, chapter and scene headings for novel "
"documents from the **Manuscript Build** tool. If you need to add a page break "
"or additional vertical spacing in other places, there are special codes "
"available for this purpose."
msgstr ""
"Vous pouvez appliquer des sauts de page aux en-têtes de partition, de chapitre "
"et de scène pour les documents de roman à partir de l'outil **Compiler le "
"manuscrit**. Si vous avez besoin d'ajouter un saut de page ou un espacement "
"vertical supplémentaire à d'autres endroits, il existe des codes spéciaux à "
"cet effet."
#: ../../source/usage/advanced_formatting.rst:68
msgid ""
"Adding more than one line break between paragraphs will **not** increase the "
"space between those paragraphs when generating a manuscript document. To add "
"additional space between paragraphs, add the text ``[vspace]`` on a line of "
"its own, and the **Manuscript Build** tool will insert a blank paragraph in "
"its place."
msgstr ""
"L'ajout de plus d'un saut de ligne entre les paragraphes n'augmentera **pas** "
"l'espace entre ces paragraphes lors de la génération d'un document manuscrit. "
"Pour ajouter de l'espace entre les paragraphes, ajoutez le texte ``[vspace]`` "
"sur une ligne distincte, et l'outil **Compilation du manuscrit** insérera un "
"paragraphe vide à sa place."
#: ../../source/usage/advanced_formatting.rst:73
msgid ""
"If you need multiple blank paragraphs just add a colon and a number to the "
"above code. For instance, writing ``[vspace:3]`` will insert three blank "
"paragraphs."
msgstr ""
"Si vous avez besoin de plusieurs paragraphes vides, il suffit d'ajouter deux "
"points et un chiffre au code ci-dessus. Par exemple, en écrivant "
"``[vspace:3]``, vous insérerez trois paragraphes vides."
#: ../../source/usage/advanced_formatting.rst:76
msgid ""
"If you need to add a page break somewhere, put the text ``[new page]`` on a "
"line by itself before the text you wish to start on a new page."
msgstr ""
"Si vous devez ajouter un saut de page quelque part, placez le texte ``[ new "
"page]`` sur une ligne isolée avant le texte que vous souhaitez faire commencer "
"sur une nouvelle page."
#: ../../source/usage/advanced_formatting.rst:81
msgid ""
"The page break code is applied to the text that follows it. It adds a \"page "
"break before\" mark to the text when exporting to HTML or Open Document. This "
"means that a ``[new page]`` code which has no text following it will not "
"result in a page break."
msgstr ""
"Le code de saut de page est appliqué au texte qui le suit. Il ajoute une "
"marque de « saut de page avant » au texte lors de l'exportation vers HTML ou "
"Open Document. Cela signifie qu'un code ``[ new page]`` qui n'est suivi "
"d'aucun texte n'entraînera pas de saut de page."
#: ../../source/usage/advanced_formatting.rst:85
#: ../../source/usage/advanced_formatting.rst:132
msgid ":bdg-info:`Example`"
msgstr ":bdg-info:`Exemple`"
#: ../../source/usage/advanced_formatting.rst:104
msgid "Inserting Word Counts in the Text"
msgstr "Insérer le nombre de mots dans le texte"
#: ../../source/usage/advanced_formatting.rst:106
msgid ""
"The cover page of a manuscript normally has the word count stated on it. Any "
"statistics value collected by UmbraEdit can be inserted into any document "
"using a special shortcode. You can insert the code for any of the available "
"statistics values from the **Insert** menu under **Word/Character Count**."
msgstr ""
"La page de couverture d'un manuscrit indique normalement le nombre de mots. "
"Toute valeur statistique collectée par UmbraEdit peut être insérée dans "
"n'importe quel document à l'aide d'un shortcode spécial. Vous pouvez insérer "
"le code pour n'importe quelle valeur statistique disponible dans le menu "
"**Insérer** sous **Nombre de mots/caractères**."
#: ../../source/usage/advanced_formatting.rst:111
msgid ""
"The value inserted is the actual count for your entire manuscript, so it is "
"not populated until you run the **Manuscript Build** tool. Until then they "
"will show up as \"0\" in the viewer panel."
msgstr ""
"La valeur insérée est le nombre réel pour l'ensemble de votre manuscrit, elle "
"n'est donc pas renseignée tant que vous n'avez pas exécuté l'outil "
"**Compilation du manuscrit**. Jusqu'à ce moment-là, ils apparaîtront sous la "
"forme d'un « 0 » dans le panneau de visualisation."
#: ../../source/usage/advanced_formatting.rst:114
msgid "The available codes are:"
msgstr "Les codes disponibles sont les suivants :"
#: ../../source/usage/advanced_formatting.rst:116
msgid "Stats Shortcodes"
msgstr "Shortcodes de statistiques"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Code"
msgstr "Code"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:allChars]``"
msgstr "``[field:allChars]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Characters"
msgstr "Personnages"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:textChars]``"
msgstr "``[field:textChars]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Characters in Text"
msgstr "Caractères dans un texte"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:titleChars]``"
msgstr "``[field:titleChars]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Characters in Headings"
msgstr "Caractères dans les titres"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:paragraphCount]``"
msgstr "``[field:paragraphCount]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Paragraphs"
msgstr "Paragraphes"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:titleCount]``"
msgstr "``[field:titleCount]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Headings"
msgstr "En-têtes"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:allWordChars]``"
msgstr "``[field:allWordChars]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Characters, No Spaces"
msgstr "Caractères, sans les espaces"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:textWordChars]``"
msgstr "``[field:textWordChars]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Characters in Text, No Spaces"
msgstr "Caractères dans le texte, sans les espaces"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:titleWordChars]``"
msgstr "``[field:titleWordChars]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Characters in Headings, No Spaces"
msgstr "Caractères dans les titres, sans les espaces"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:allWords]``"
msgstr "``[field:allWords]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Words"
msgstr "Mots"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:textWords]``"
msgstr "``[field:textWords]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Words in Text"
msgstr "Mots dans le texte"
#: ../../source/usage/advanced_formatting.rst:1
msgid "``[field:titleWords]``"
msgstr "``[field:titleWords]``"
#: ../../source/usage/advanced_formatting.rst:1
msgid "Words in Headings"
msgstr "Mots dans les entêtes"
#: ../../source/usage/advanced_formatting.rst:134
msgid ""
"This is an example cover page. A similar page is automatically generated when "
"you create a new project."
msgstr ""
"Il s'agit d'un exemple de page de couverture. Une page similaire est "
"automatiquement générée lorsque vous créez un nouveau projet."

View File

@@ -0,0 +1,185 @@
# SOME DESCRIPTIVE TITLE.
# Copyright (C) 2025
# This file is distributed under the same license as the UmbraEdit
# package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2025.
#
#, fuzzy
msgid ""
msgstr ""
"Project-Id-Version: UmbraEdit 2.7rc1\n"
"Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2025-05-27 19:59+0200\n"
"PO-Revision-Date: 2025-05-28 14:45+0200\n"
"Last-Translator: \n"
"Language-Team: fr <LL@li.org>\n"
"Language: fr\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
"Generated-By: Babel 2.16.0\n"
"X-Generator: Poedit 3.4.2\n"
#: ../../source/usage/alignment_and_indent.rst:5
msgid "Alignment and Indentation"
msgstr "Alignement et indentation"
#: ../../source/usage/alignment_and_indent.rst:7
msgid ""
"The Markdown standard doesn't have commands for aligning text, so "
"UmbraEdit adds its own syntax for this. It also has syntax for "
"indentation, which is similar to Markdown block quotes."
msgstr ""
"Le standard Markdown n'a pas de commandes pour aligner le texte, donc "
"UmbraEdit ajoute sa propre syntaxe pour cela. Il dispose également "
"d'une syntaxe pour l'indentation, qui est similaire aux guillemets de "
"bloc de Markdown."
#: ../../source/usage/alignment_and_indent.rst:12
msgid "Paragraph Alignment and Indentation"
msgstr "Alignement et indentation des paragraphes"
#: ../../source/usage/alignment_and_indent.rst:14
msgid ""
"All documents have the text by default aligned to the left or justified, "
"depending on your setting in **Preferences**."
msgstr ""
"Le texte de tous les documents est par défaut aligné à gauche ou "
"justifié, selon les paramètres définis dans les **Préférences**."
#: ../../source/usage/alignment_and_indent.rst:17
msgid ""
"You can override the default text alignment on individual paragraphs by "
"specifying alignment tags. These tags are double angle brackets. Either "
"``>>`` or ``<<``. You put them either before or after the paragraph, and "
"they will \"push\" the text towards the edge the brackets point towards. "
"This should be fairly intuitive."
msgstr ""
"Vous pouvez remplacer l'alignement par défaut du texte sur des "
"paragraphes individuels en spécifiant des balises d'alignement. Ces "
"balises sont des doubles chevrons. Il peut s'agir de ``>>`` ou de "
"``<<``. Vous les placez avant ou après le paragraphe, et elles « "
"pousseront » le texte vers le bord vers lequel les crochets pointent. "
"Cela devrait être assez intuitif."
#: ../../source/usage/alignment_and_indent.rst:22
msgid ""
"Indentation uses a similar syntax. But here you use a single ``>`` or "
"``<`` to \"push\" the text away from the edge."
msgstr ""
"L'indentation utilise une syntaxe similaire. Mais ici, vous utilisez un "
"seul ``>`` ou ``<`` pour éloigner le texte du bord."
#: ../../source/usage/alignment_and_indent.rst:25
#: ../../source/usage/alignment_and_indent.rst:52
#: ../../source/usage/alignment_and_indent.rst:69
msgid ":bdg-info:`Example`"
msgstr ":bdg-info:`Exemple`"
#: ../../source/usage/alignment_and_indent.rst:27
msgid "Text Alignment and Indentation"
msgstr "Alignement et indentation du texte"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "Syntax"
msgstr "Syntaxe"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "Description"
msgstr "Description"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "``>> Right aligned text``"
msgstr "``>> Texte aligné à droite``"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "The text paragraph is right-aligned."
msgstr "Le paragraphe est aligné à droite."
#: ../../source/usage/alignment_and_indent.rst:1
msgid "``Left aligned text <<``"
msgstr "``Texte aligné à gauche <<``"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "The text paragraph is left-aligned."
msgstr "Le paragraphe est aligné à gauche."
#: ../../source/usage/alignment_and_indent.rst:1
msgid "``>> Centred text <<``"
msgstr "``>> Texte centré <<``"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "The text paragraph is centred."
msgstr "Le paragraphe est centré."
#: ../../source/usage/alignment_and_indent.rst:1
msgid "``> Left indented text``"
msgstr "``> Texte en retrait à gauche``"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "The text has an increased left margin."
msgstr "Le texte a une marge gauche plus importante."
#: ../../source/usage/alignment_and_indent.rst:1
msgid "``Right indented text <``"
msgstr "``Texte en retrait à droite <``"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "The text has an increased right margin."
msgstr "Le texte a une marge droite plus importante."
#: ../../source/usage/alignment_and_indent.rst:1
msgid "``> Left/right indented text <``"
msgstr "``> Texte indenté gauche/droite <```"
#: ../../source/usage/alignment_and_indent.rst:1
msgid "The text has both margins increased."
msgstr "Les deux marges du texte ont été augmentées."
#: ../../source/usage/alignment_and_indent.rst:41
msgid ""
"The text editor will not show the alignment and indentation live. But "
"the viewer will show them when you open the document there. It will of "
"course also be reflected in the document generated from the **Manuscript "
"Build** tool as long as the format supports paragraph alignment."
msgstr ""
"L'éditeur de texte n'affiche pas l'alignement et l'indentation en "
"direct. Mais l'afficheur les affichera lorsque vous y ouvrirez le "
"document. Ils seront bien sûr également reflétés dans le document généré "
"par l'outil de compilation de manuscrits, à condition que le format "
"prenne en charge l'alignement des paragraphes."
#: ../../source/usage/alignment_and_indent.rst:47
msgid "Alignment with Line Breaks"
msgstr "Alignement avec les sauts de ligne"
#: ../../source/usage/alignment_and_indent.rst:49
msgid ""
"If you have line breaks in the paragraph, the markers for all the lines "
"are combined and used for the entire paragraph. For the following text, "
"all lines will be centred:"
msgstr ""
"Si le paragraphe comporte des retours à la ligne, les marqueurs de "
"toutes les lignes sont combinés et utilisés pour l'ensemble du "
"paragraphe. Pour le texte suivant, toutes les lignes seront centrées :"
#: ../../source/usage/alignment_and_indent.rst:63
msgid "Alignment with First Line Indent"
msgstr "Alignement sur le retrait de la première ligne"
#: ../../source/usage/alignment_and_indent.rst:65
msgid ""
"If you have first line indent enabled in your manuscript build settings, "
"you probably want to disable it for text in verses. Adding any alignment "
"tags will cause the first line indent to be switched off for that "
"paragraph."
msgstr ""
"Si vous avez activé le retrait de première ligne dans les paramètres de "
"compilation de votre Manuscrit, vous voudrez probablement le désactiver "
"pour le texte en vers. L'ajout de balises d'alignement entraînera la "
"désactivation du retrait de première ligne pour ce paragraphe."
#: ../../source/usage/alignment_and_indent.rst:71
msgid "The following text will always be aligned against the left margin:"
msgstr "Le texte suivant sera toujours aligné sur la marge de gauche :"

Some files were not shown because too many files have changed in this diff Show More