diff --git a/.readthedocs.yml b/.readthedocs.yml index 4e534f30..448aca8b 100644 --- a/.readthedocs.yml +++ b/.readthedocs.yml @@ -1,24 +1,11 @@ # Read the Docs configuration file # See https://docs.readthedocs.io/en/stable/config-file/v2.html for details - -# Required version: 2 - -# Build documentation in the docs/ directory with Sphinx sphinx: configuration: docs/source/conf.py - -# Build documentation with MkDocs -#mkdocs: -# configuration: mkdocs.yml - -# Optionally build your docs in additional formats such as PDF formats: - htmlzip - - epub - pdf - -# Optionally set the version of Python and requirements required to build your docs python: install: - requirements: docs/source/requirements.txt diff --git a/README.md b/README.md index b143dded..7112b684 100644 --- a/README.md +++ b/README.md @@ -1,15 +1,11 @@ # novelWriter +[![release](https://img.shields.io/github/v/release/vkbo/novelwriter)](https://github.com/vkbo/novelWriter/releases) [![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) -[![docs](https://readthedocs.org/projects/novelwriter/badge/?version=latest)](https://novelwriter.readthedocs.io/en/latest/?badge=latest) -[![release](https://img.shields.io/github/v/release/vkbo/novelwriter)](https://github.com/vkbo/novelWriter/releases) -[![pypi](https://img.shields.io/pypi/v/novelwriter)](https://pypi.org/project/novelWriter) -[![python](https://img.shields.io/pypi/pyversions/novelwriter)](https://pypi.org/project/novelWriter) -[![Crowdin](https://badges.crowdin.net/novelwriter/localized.svg)](https://crowdin.com/project/novelwriter) @@ -23,43 +19,22 @@ synchronisation tools. All text is saved as plain text files with a meta data he project structure is stored in a single project XML file. Other meta data is primarily saved as JSON files. -The full documentation is available at -[novelwriter.readthedocs.io](https://novelwriter.readthedocs.io). +For more details, and how to install and use novelWriter, please see the main website and +documentation. -The full credits are listed in -[CREDITS.md](https://github.com/vkbo/novelWriter/blob/main/CREDITS.md). +**Project Links** -You can also follow novelWriter on Mastodon at [fosstodon.org/@novelwriter](https://fosstodon.org/@novelwriter). +* 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) ## Implementation -The application is written with Python 3 (3.7+) using Qt5 and PyQt5 (5.10+). It is developed on -Linux, but should in principle work fine on other operating systems as well as long as dependencies -are met. It is regularly tested on Debian and Ubuntu Linux, Windows, and macOS. - -## Installation - -### Linux Mint, Ubuntu and Debian - -The Releases page has a `.deb` package that should install on Mint, Ubuntu and Debian. - -You can also use the novelWriter [PPA](https://launchpad.net/~vkbo/+archive/ubuntu/novelwriter). -For more details, check the [Getting Started](https://novelwriter.readthedocs.io/en/latest/int_started.html) -section in the documentation. - -### Windows 10+ - -The Release page has a `setup.exe` file for Windows 10, that should also work on other Windows -versions. The installer includes Python 3.10 and the library dependencies. - -### Other Install Options - -You can also download and install one of the minimal zip files from the -[Releases](https://github.com/vkbo/novelWriter/releases) page or the -[novelwriter.io](https://novelwriter.io/) website. -The [Getting Started](https://novelwriter.readthedocs.io/en/latest/int_started.html) section of the -documentation has detailed install instructions for these packages, and for installation via the -Python Package Index. +novelWriter is written with Python 3 (3.7+) using Qt5 and PyQt5 (5.10+), and is released on Linux, +Windows and macOS. It can in principle run on any Operating System that also supports Qt, PyQt and +Python. ## Project Contributions @@ -73,6 +48,8 @@ also be appreciated, but please make an issue or a discussion topic first. Befor code, please also read the full [Contributing Guide](https://github.com/vkbo/novelWriter/blob/main/CONTRIBUTING.md). +Project credits are available in [CREDITS.md](https://github.com/vkbo/novelWriter/blob/main/CREDITS.md). + ### Translations New translations are always welcome. This project uses Crowdin to maintain translations, and you @@ -83,111 +60,10 @@ If you have any questions, feel free to post them to the 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). -## Key Features - -Some key features of novelWriter are listed below. The -[documentation](https://novelwriter.readthedocs.io) has a lot more information. - -### Formatting Codes - -Although novelWriter is a plain text editor, it uses a Markdown-like syntax to allow for a minimal -set of formatting that is useful for the specific task of writing novels. - -| Code | Usage | Description | -|------------|----------|-------------| -| `#` | Prefix | Headings level 1 to 4. | -| `_` | Wrapped | Emphasised (italicised) text. | -| `**` | Wrapped | Strongly emphasised (bold) text. | -| `~~` | Wrapped | Strikethrough text. | -| `%` | Prefix | A comment; does not count towards the word count.1 | -| `@` | Prefix | The following text is parsed as a keyword/value command for meta data. | -| `>` | Prefix | The paragraph is indented one tab width from the left. | -| `<` | Suffix | The paragraph is indented one tab width from the right. | -| `>>` | Prefix | The paragraph is right-aligned. | -| `<<` | Suffix | The paragraph is left-aligned. | -| `>>`, `<<` | Wrapped | The paragraph is centred. | - -1 If the first word of the comment is `synopsis:`, the comment is indexed and treated as -the synopsis for the section of text where it occurs. These synopsis comments can be used to build -an outline and exported to external documents. - -### Export Formats - -The core export formats of novelWriter are Open Document and HTML5. Open Document is an open -standard for office type documents that is supported by most office applications. See -[Open Document > Application Support](https://en.wikipedia.org/wiki/OpenDocument#Application_support) -for more details. - -You can also export the entire project as a single novelWriter-markup document. These can later be -imported again into novelWriter. In addition, printing and export to PDF is offered through the Qt -library, although with limitations to formatting. - -### Colour Themes - -The editor has syntax highlighting for the features it supports, and includes a set of different -syntax highlighting themes. Optional GUI themes are also available, including dark themes. - -### Easy Organising of Project Files - -The structure of the project is shown on the left hand side of the main window. Project files are -organised into root folders, indicating what class of file they are. The most important root folder -is the `Novel` folder, which contains all of the files that make up the novel itself. Each root -folder can have subfolders. Subfolders have no impact on the final project structure, they are -there for you to organise your files in whatever way you want. - -The editor supports four levels of headings, which determine what level the following text belongs -to. Headings of level one signify a book or partition title. Headings of level two signify the -start of a new chapter. Headings of level three signify the start of a new scene. Headings of level -four can be used internally in each scene to create separate sections. - -See the [documentation](https://novelwriter.readthedocs.io) for further details. - -### Project Notes - -Supporting notes can be added for the story plot, characters, locations, story timeline, etc. These -have their separate root folders and are optional to use. - -### Visualisation of Story Elements - -The different notes can be assigned tags, which other files can refer back to using `@`-prefixed -meta keywords. This information can be used to display an outline of the story, showing where each -scene connects to the plot, and which characters, etc. occur in them. In addition, the tags -themselves are clickable in the document view pane, and control-clickable in the editor. They make -it possible to quickly navigate between the documents while writing. - -## Installing or Running from Source - -If you want to run novelWriter directly from the source code, you must run the `novelWriter.py` -file from command line. - -Dependencies can generally be installed from PyPi with: -```bash -pip install -r requirements.txt -``` - -On Linux, the dependencies are generally available in the standard package repository. - -For more details on running or installing from source, see the -[documentation](https://novelwriter.readthedocs.io). - -## Debugging - -If you need to debug novelWriter, you can run it from the command line and increase terminal output -by adding the `--info` or `--debug` flags. By default, only warnings and errors are printed. - ## Licence This is Open Source software, and novelWriter is licenced 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) file. - -Bundled assets and their licences are listed in -[CREDITS](https://github.com/vkbo/novelWriter/blob/main/CREDITS.md). - -## Screenshots - -**novelWriter with default system theme:** -![Screenshot 1](https://raw.githubusercontent.com/vkbo/novelWriter/main/docs/source/images/screenshot_default.png) - -**novelWriter with dark theme:** -![Screenshot 2](https://raw.githubusercontent.com/vkbo/novelWriter/main/docs/source/images/screenshot_dark.png) +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. diff --git a/docs/source/_static/novelwriter-pdf.png b/docs/source/_static/novelwriter-pdf.png new file mode 100644 index 00000000..6261b1ee Binary files /dev/null and b/docs/source/_static/novelwriter-pdf.png differ diff --git a/docs/source/conf.py b/docs/source/conf.py index 03e1d9d7..20a8c2ab 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -83,37 +83,12 @@ latex_elements = { ), "figure_align": "htbp", } +latex_logo = "_static/novelwriter-pdf.png" # Grouping the document tree into LaTeX files. List of tuples # (source start file, target name, title, # author, documentclass [howto, manual, or own class]). latex_documents = [( - master_doc, "manual.tex", "novelWriter Documentation", + master_doc, "manual.tex", "User Guide", author, "manual" )] - -# -- Options for Man Page Output --------------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). -man_pages = [( - master_doc, "novelwriter", "novelWriter Documentation", [author], 1 -)] - -# -- Options for Texinfo Output ---------------------------------------------- - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) -texinfo_documents = [( - master_doc, "novelWriter", "novelWriter Documentation", author, - "novelWriter", "Markdown-like editor for novels.", "Miscellaneous" -)] - -# -- Options for EPub Output ------------------------------------------------- - -# Bibliographic Dublin Core info. -epub_title = project - -# A list of files that should not be packed into the epub file. -epub_exclude_files = ["search.html"] diff --git a/docs/source/images/novelwriter_logo.png b/docs/source/images/novelwriter_logo.png deleted file mode 100644 index c4161426..00000000 Binary files a/docs/source/images/novelwriter_logo.png and /dev/null differ diff --git a/docs/source/index.rst b/docs/source/index.rst index c9ba0aa9..c7c1180f 100644 --- a/docs/source/index.rst +++ b/docs/source/index.rst @@ -1,15 +1,9 @@ -############################# -Documentation for novelWriter -############################# +###################### +novelWriter User Guide +###################### -.. image:: images/novelwriter_logo.png - :class: dark-light - :align: right - :width: 64 - -| **For Release:** |release| -| **Last Updated:** |today| -| +| **Release Version:** |release| +| **Updated:** |today| novelWriter is an open source 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 @@ -40,7 +34,7 @@ the pip tool. See :ref:`a_started` for more details. **Useful Links** * Website: https://novelwriter.io -* Documentation: https://novelwriter.readthedocs.io +* Documentation: https://docs.novelwriter.io * Internationalisation: https://crowdin.com/project/novelwriter * Source Code: https://github.com/vkbo/novelWriter * Source Releases: https://github.com/vkbo/novelWriter/releases diff --git a/docs/source/tech_storage.rst b/docs/source/tech_storage.rst index 1affa04f..10eb9cc8 100644 --- a/docs/source/tech_storage.rst +++ b/docs/source/tech_storage.rst @@ -4,7 +4,7 @@ How Data is Stored ****************** -.. _documentation: https://novelwriter.readthedocs.io +.. _documentation: https://docs.novelwriter.io/ This section contains details of how novelWriter stores and handles the project data. diff --git a/docs/source/usage_projectformat.rst b/docs/source/usage_projectformat.rst index 22e43b69..6d357a69 100644 --- a/docs/source/usage_projectformat.rst +++ b/docs/source/usage_projectformat.rst @@ -5,7 +5,7 @@ Project Format Changes ********************** .. _File Format Spec 1.5: _static/fileformatspec15.pdf -.. _documentation: https://novelwriter.readthedocs.io +.. _documentation: https://docs.novelwriter.io/ Most of the changes to the file formats over the history of novelWriter have no impact on the user-side of things. The project files are generally updated automatically. However, some of the diff --git a/novelwriter/__init__.py b/novelwriter/__init__.py index 6ad9fca5..2860859a 100644 --- a/novelwriter/__init__.py +++ b/novelwriter/__init__.py @@ -65,11 +65,11 @@ __date__ = "2023-02-26" __status__ = "Stable" __domain__ = "novelwriter.io" __url__ = "https://novelwriter.io" +__docurl__ = "https://docs.novelwriter.io/" __sourceurl__ = "https://github.com/vkbo/novelWriter" __issuesurl__ = "https://github.com/vkbo/novelWriter/issues" __helpurl__ = "https://github.com/vkbo/novelWriter/discussions" __releaseurl__ = "https://github.com/vkbo/novelWriter/releases/latest" -__docurl__ = "https://novelwriter.readthedocs.io" logger = logging.getLogger(__name__) diff --git a/sample/nwProject.nwx b/sample/nwProject.nwx index 2df0e5fa..4fff84d8 100644 --- a/sample/nwProject.nwx +++ b/sample/nwProject.nwx @@ -1,6 +1,6 @@ - - + + Sample Project Sample Project Jane Smith diff --git a/setup.cfg b/setup.cfg index fc808a1e..fe0359e9 100644 --- a/setup.cfg +++ b/setup.cfg @@ -25,7 +25,7 @@ classifiers = Topic :: Text Editors project_urls = Bug Tracker = https://github.com/vkbo/novelWriter/issues - Documentation = https://novelwriter.readthedocs.io/en/stable + Documentation = https://docs.novelwriter.io Source Code = https://github.com/vkbo/novelWriter [options] diff --git a/setup/description_pypi.md b/setup/description_pypi.md index ed98ffda..2a70f678 100644 --- a/setup/description_pypi.md +++ b/setup/description_pypi.md @@ -17,5 +17,5 @@ are met. It is regularly tested on Debian and Ubuntu Linux, Windows, and macOS. novelWriter is developed and maintained by [Veronica Berglyd Olsen](https://github.com/vkbo). **Website:** https://novelwriter.io -**Documentation:** https://novelwriter.readthedocs.io +**Documentation:** https://docs.novelwriter.io/ **Source Code:** https://github.com/vkbo/novelWriter