Made a new pass of all the previously updated documentation files
This commit is contained in:
@@ -70,6 +70,7 @@ pygments_style = None
|
||||
# -- Options for HTML output -------------------------------------------------
|
||||
|
||||
html_theme = "sphinx_rtd_theme"
|
||||
html_logo = "images/novelwriter.png"
|
||||
html_theme_options = {
|
||||
# Toc options
|
||||
"collapse_navigation": True,
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
.. _a_export:
|
||||
|
||||
##################
|
||||
Exporting Projects
|
||||
##################
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 5.4 KiB |
+53
-6
@@ -1,10 +1,55 @@
|
||||
########################################
|
||||
Welcome to the novelWriter Documentation
|
||||
########################################
|
||||
#######################################
|
||||
Documentation for novelWriter |release|
|
||||
#######################################
|
||||
|
||||
This is the documentation for novelWriter |release|.
|
||||
.. image:: https://travis-ci.com/vkbo/novelWriter.svg?branch=master
|
||||
:target: https://travis-ci.com/vkbo/novelWriter
|
||||
:alt: Build Status
|
||||
|
||||
**Contents**
|
||||
.. image:: https://codecov.io/gh/vkbo/novelWriter/branch/master/graph/badge.svg
|
||||
:target: https://codecov.io/gh/vkbo/novelWriter
|
||||
:alt: Code Coverage
|
||||
|
||||
.. image:: https://readthedocs.org/projects/novelwriter/badge/?version=latest
|
||||
:target: https://novelwriter.readthedocs.io/en/latest/?badge=latest
|
||||
:alt: Documentation
|
||||
|
||||
.. image:: https://img.shields.io/github/v/release/vkbo/novelwriter
|
||||
:target: https://github.com/vkbo/novelWriter/releases
|
||||
:alt: GitHub Release
|
||||
|
||||
.. image:: https://img.shields.io/pypi/v/novelwriter
|
||||
:target: https://pypi.org/project/novelWriter/
|
||||
:alt: PyPI
|
||||
|
||||
.. image:: https://img.shields.io/pypi/pyversions/novelwriter
|
||||
:target: https://pypi.org/project/novelWriter/
|
||||
:alt: Python Version
|
||||
|
||||
novelWriter is a markdown-like text editor designed for writing novels and larger projects of many
|
||||
smaller plain text documents. It uses its own flavour of markdown that supports a meta data syntax
|
||||
for comments, synopsis and cross-referencing between files. The idea is to have a simple text editor
|
||||
which allows for easy organisation of text files and notes, built on a plain text file project
|
||||
repository for robustness.
|
||||
|
||||
The plain text storage is suitable for version control software, and also well suited for file
|
||||
synchronisation tools. The core project structure is stored in a project XML file. Other meta data
|
||||
is primarily saved in JSON files.
|
||||
|
||||
|
||||
Useful Links
|
||||
============
|
||||
|
||||
* Website: https://novelwriter.io
|
||||
* Documentation: https://novelwriter.readthedocs.io
|
||||
* Source Code: https://github.com/vkbo/novelWriter
|
||||
* Source Releases: https://github.com/vkbo/novelWriter/releases
|
||||
* Issue Tracker: https://github.com/vkbo/novelWriter/issues
|
||||
* PyPi Project: https://pypi.org/project/novelWriter
|
||||
|
||||
|
||||
Contents
|
||||
========
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
@@ -18,7 +63,9 @@ This is the documentation for novelWriter |release|.
|
||||
export
|
||||
technical
|
||||
|
||||
**Indices and Tables**
|
||||
|
||||
Indices and Tables
|
||||
==================
|
||||
|
||||
* :ref:`genindex`
|
||||
* :ref:`modindex`
|
||||
|
||||
+85
-81
@@ -11,24 +11,24 @@ The user interface is kept as simple as possible to avoid distractions when writ
|
||||
The Project Tree
|
||||
================
|
||||
|
||||
The main window contains a Project Tree in the left-most panel. It shows the entire structure of the
|
||||
The main window contains a project tree in the left-most panel. It shows the entire structure of the
|
||||
project. It has four columns:
|
||||
|
||||
Label
|
||||
:guilabel:`Label`
|
||||
The first column shows the item icon and its label. The labels can be edited from the menu, or by
|
||||
pressing :kbd:`F2` or :kbd:`Ctrl`:kbd:`E`.
|
||||
|
||||
Words
|
||||
:guilabel:`Words`
|
||||
The second column shows the word count of the file, or the sum of words in the child items if it
|
||||
is a folder. If the counts seem incorrect, they can be updated by rebuilding the Project Index
|
||||
is a folder. If the counts seem incorrect, they can be updated by rebuilding the project index
|
||||
from the menu, or by pressing :kbd:`F9`.
|
||||
|
||||
Inc
|
||||
:guilabel:`Inc`
|
||||
The third column indicates whether the file is included in the final project build or not. You
|
||||
may want to filter out files that you no longer want to keep in the final manuscript, but want to
|
||||
keep in the project for reference.
|
||||
|
||||
Flags
|
||||
:guilabel:`Flags`
|
||||
The fourth column shows various meta data flags for the item. The first is an icon indicating the
|
||||
importance or status of the file. These are colour coded status levels that you control and
|
||||
define. They can be changed in Project Settings. The first character after the icon indicates the
|
||||
@@ -36,7 +36,7 @@ Flags
|
||||
:ref:`a_struct_tags`. The second character indicates the file layout type (see
|
||||
:ref:`a_proj_roots`).
|
||||
|
||||
Below the Project Tree is a small details panel showing the full information of the currently
|
||||
Below the project tree is a small details panel showing the full information of the currently
|
||||
selected item. This panel also includes the latest paragraph and character counts.
|
||||
|
||||
|
||||
@@ -45,37 +45,38 @@ selected item. This panel also includes the latest paragraph and character count
|
||||
Editing and Viewing Documents
|
||||
=============================
|
||||
|
||||
To edit a document, double-click the file in the tree view, or press the :kbd:`Return` key while
|
||||
having it selected. This will open the document in the Editor. The Editor uses a simplified markdown
|
||||
format. The format is described in the :ref:`a_ui_md` section below. The Editor has a maximise
|
||||
button (activates Focus Mode) and a close button in the top-right corner.
|
||||
To edit a document, double-click the file in the project tree, or press the :kbd:`Return` key while
|
||||
having it selected. This will open the document in the document editor. The editor uses a simplified
|
||||
markdown format. The format is described in the :ref:`a_ui_md` section below. The editor has a
|
||||
maximise button (activates :guilabel:`Focus Mode`) and a close button in the top-right corner.
|
||||
|
||||
Any document in the Project Tree can also be viewed in parallel in a right hand side view panel or
|
||||
the Viewer. To view a document, press :kbd:`Ctrl`:kbd:`R`, or select :menuselection:`View Document`
|
||||
in the menu. The document viewed does not have to be the same document currently being edited. If
|
||||
you *are* viewing the same document though, pressing :kbd:`Ctrl`:kbd:`R` again will update the
|
||||
document with your latest changes. You can also press the little reload button in the top-right
|
||||
corner of the view panel next to the close button.
|
||||
Any document in the project tree can also be viewed in parallel in a right hand side document viewer
|
||||
To view a document, press :kbd:`Ctrl`:kbd:`R`, or select :guilabel:`View Document` in the menu. The
|
||||
document viewed does not have to be the same document currently being edited. If you *are* viewing
|
||||
the same document though, pressing :kbd:`Ctrl`:kbd:`R` again will update the document with your
|
||||
latest changes. You can also press the little reload button in the top-right corner of the view
|
||||
panel next to the close button.
|
||||
|
||||
Both the Editor and the Viewer will show the label of the document in the document header at the
|
||||
top of the edit or view panel. Optionally, the full project path to the file can be shown. This can
|
||||
be set in Preferences dialog. Clicking on the document title bar will select and reveal the file
|
||||
in the Project Tree, making it easier to find the project location of the file in a large project.
|
||||
Both the document editor and viewer will show the label of the document in the header at the top of
|
||||
the edit or view panel. Optionally, the full project path to the file can be shown. This can be set
|
||||
in the :guilabel:`Preferences` dialog from the :guilabel:`Tools` menu. Clicking on the document
|
||||
title bar will select and reveal the file in the project tree, making it easier to find the project
|
||||
location of the file in a large project.
|
||||
|
||||
Any reference to a tag in the Editor can be opened in the Viewer by moving the cursor to the label
|
||||
and pressing :kbd:`Ctrl`:kbd:`Return`. In the Viewer, the references become clickable links.
|
||||
Clicking them will replace the content of the Viewer with the content of the document the reference
|
||||
Any reference to a tag in the editor can be opened in the viewer by moving the cursor to the label
|
||||
and pressing :kbd:`Ctrl`:kbd:`Return`. In the viewer, the references become clickable links.
|
||||
Clicking them will replace the content of the viewer with the content of the document the reference
|
||||
points to.
|
||||
|
||||
At the bottom of the Viewer's panel there is a References panel (click the icon if it is hidden)
|
||||
that will show links to all documents referring back to it. The Sticky button will freeze the
|
||||
content of the panel to the current document, even if you navigate to another document. This is
|
||||
convenient if you want to quickly look through all documents in the list.
|
||||
At the bottom of the viewer's panel there is a :guilabel:`References` panel (click the icon if it is
|
||||
hidden) that will show links to all documents referring back to it. The :guilabel:`Sticky` button
|
||||
will freeze the content of the panel to the current document, even if you navigate to another
|
||||
document. This is convenient if you want to quickly look through all documents in the list.
|
||||
|
||||
.. note::
|
||||
The References panel relies on an up-to-date index of the project. If anything is missing, or
|
||||
seems wrong, the index can always be rebuilt from :menuselection:`Tools --> Rebuild Index` or by
|
||||
pressing :kbd:`F9`.
|
||||
The :guilabel:`References` panel relies on an up-to-date index of the project. If anything is
|
||||
missing, or seems wrong, the index can always be rebuilt from :guilabel:`Tools` >
|
||||
:guilabel:`Rebuild Index` or by pressing :kbd:`F9`.
|
||||
|
||||
|
||||
.. _a_ui_md:
|
||||
@@ -83,8 +84,9 @@ convenient if you want to quickly look through all documents in the list.
|
||||
Markdown Format
|
||||
===============
|
||||
|
||||
The Editor uses a simplified markdown format. That is, it supports basic formatting like emphasis
|
||||
(italic), strong emphasis (bold) and strikethrough text, as well as four levels of headings.
|
||||
The document editor uses a simplified markdown format. That is, it supports basic formatting like
|
||||
emphasis (italic), strong emphasis (bold) and strikethrough text, as well as four levels of
|
||||
headings.
|
||||
|
||||
Some non-standard markdown features have been added. For instance, novelWriter allows for comments,
|
||||
a synopsis tag, and a set of keyword/value sets used for tags and references.
|
||||
@@ -125,7 +127,7 @@ In markdown it is often recommended to differentiate between strong emphasis and
|
||||
``**`` for strong emphasis and ``_`` for emphasis, although markdown generally supports also ``__``
|
||||
for strong emphasis and ``*`` fdr emphasis. However, since the differentiation makes the
|
||||
highlighting and conversion significantly simpler and faster, in novelWriter this is a rule, not
|
||||
just a recommendation.
|
||||
just a recommendation. The following is therefore the only supported formatting syntax:
|
||||
|
||||
``_text_``
|
||||
The text is rendered as emphasised text (italicised).
|
||||
@@ -152,8 +154,8 @@ There are also some additional rules:
|
||||
Comments and Synopsis
|
||||
---------------------
|
||||
|
||||
In addition to these standard markdown features, the novelWriter also allows for comments in the
|
||||
text files. The text of the comment is ignored by the word counter and not exported or, optionally,
|
||||
In addition to these standard markdown features, novelWriter also allows for comments in the text
|
||||
files. The text of the comment is ignored by the word counter and not exported or, optionally,
|
||||
hidden when viewing the document. If the first word of a comment is ``Synopsis:`` (with the colon),
|
||||
the comment is treated specially, and will show up in the :ref:`a_ui_outline`.
|
||||
|
||||
@@ -173,7 +175,9 @@ the comment is treated specially, and will show up in the :ref:`a_ui_outline`.
|
||||
Tags and References
|
||||
-------------------
|
||||
|
||||
The Editor also has a minimal set of keywords used for setting tags and references between files.
|
||||
The document editor supports a minimal set of keywords used for setting tags and references between
|
||||
files. The tags and references can be set once per section defined by a heading. Using them multiple
|
||||
times under the same heading will just override the previous setting.
|
||||
|
||||
``@keyword: value``
|
||||
A keyword argument followed by a value, or a comma separated list of values.
|
||||
@@ -195,7 +199,7 @@ spaces if running with Qt 5.9 or higher.
|
||||
* Thin spaces are also supported, and can be inserted with :kbd:`Ctrl`:kbd:`K`, :kbd:`Shift`:kbd:`Space`.
|
||||
* Non-breaking thin space can be inserted with :kbd:`Ctrl`:kbd:`K`, :kbd:`Ctrl`:kbd:`Space`.
|
||||
|
||||
These are all insert features, and the :menuselection:`Insert` menu has more. They are also listed
|
||||
These are all insert features, and the :guilabel:`Insert` menu has more. They are also listed
|
||||
in :ref:`a_ui_shortcuts_ins`.
|
||||
|
||||
Both hard line breaks and non-breaking spaces are highlighted by the syntax highlighter as an
|
||||
@@ -207,29 +211,29 @@ alternate coloured background, depending on the selected theme.
|
||||
Project Outline View
|
||||
====================
|
||||
|
||||
The Project Outline View is available as the second tab on the right hand side of the main window
|
||||
labelled "Outline". The Outline View provides an overview of the novel structure, displaying a tree
|
||||
hierarchy of the elements of the novel, that is, the level 1 to 4 headings.
|
||||
The project's Outline view is available as the second tab on the right hand side of the main window
|
||||
labelled :guilabel:`Outline`. The outline provides an overview of the novel structure, displaying a
|
||||
tree hierarchy of the elements of the novel, that is, the level 1 to 4 headings.
|
||||
|
||||
.. note::
|
||||
Since the internal structure of the novel does not depend on the file structure of the Project
|
||||
Tree, these will not necessarily look the same. See the :ref:`a_struct` page for more details.
|
||||
Since the internal structure of the novel does not depend on the file structure of the project
|
||||
tree, these will not necessarily look the same. See the :ref:`a_struct` page for more details.
|
||||
|
||||
Various meta data and information extracted from tags can be displayed in columns in the Outline
|
||||
View. A default set is visible, but you can turn on or off more columns by right clicking the header
|
||||
and selecting the columns you want to show. The order of the columns can also be rearranged by
|
||||
dragging them to a different position.
|
||||
Various meta data and information extracted from tags can be displayed in columns in the outline.
|
||||
A default set of such columns is visible, but you can turn on or off more columns by right clicking
|
||||
the header and selecting the columns you want to show. The order of the columns can also be
|
||||
rearranged by dragging them to a different position.
|
||||
|
||||
.. note::
|
||||
The Title column cannot be disabled or moved.
|
||||
The :guilabel:`Title` column cannot be disabled or moved.
|
||||
|
||||
The information viewed in the Outline View is based on the Project Index. While novelWriter does its
|
||||
best to keep the index up to date when content changes, you can always rebuild it manually by
|
||||
The information viewed in the outline is based on the project's main index. While novelWriter does
|
||||
its best to keep the index up to date when content changes, you can always rebuild it manually by
|
||||
pressing :kbd:`F9` if something isn't right.
|
||||
|
||||
The Outline View itself can be regenerated by pressing :kbd:`F10`. You can also enable automatic
|
||||
updating in the :menuselection:`Tools` menu, which will trigger an update whenever the index is
|
||||
updated and the Outline tab is activated. You may want to disable this feature if your project is
|
||||
The outline view itself can be regenerated by pressing :kbd:`F10`. You can also enable automatic
|
||||
updating in the :guilabel:`Tools` menu, which will trigger an update whenever the index is updated
|
||||
and the :guilabel:`Outline` tab is active. You may want to disable this feature if your project is
|
||||
very large,
|
||||
|
||||
|
||||
@@ -238,15 +242,15 @@ very large,
|
||||
Synopsis Column
|
||||
---------------
|
||||
|
||||
The "Synopsis" column of the Outline View takes its information from a specially formatted comment.
|
||||
See :ref:`a_ui_md_comm`. In order to flag a comment as a synopsis, add the word ``Synopsis:`` as the
|
||||
first word of the comment. The ``:`` is required, and the word ``synopsis`` is not case sensitive.
|
||||
If it is correctly formatted, the syntax highlighter will indicate this by altering the colour of
|
||||
the word.
|
||||
The :guilabel:`Synopsis` column of the outline view takes its information from a specially formatted
|
||||
comment. See :ref:`a_ui_md_comm`. In order to flag a comment as a synopsis, add the word
|
||||
``Synopsis:`` as the first word of the comment. The ``:`` is required, and the word ``synopsis`` is
|
||||
not case sensitive. If it is correctly formatted, the syntax highlighter will indicate this by
|
||||
altering the colour of the word.
|
||||
|
||||
.. note::
|
||||
Only one comment can be flagged as a synopsis comment for each heading. If multiple comments are
|
||||
flagged as a synopsis, the last one will be used.
|
||||
flagged as a synopsis comment, the last one will be used.
|
||||
|
||||
|
||||
.. _a_ui_shortcuts:
|
||||
@@ -261,11 +265,11 @@ Most features are available as keyboard shortcuts. These are as following:
|
||||
:widths: 30, 70
|
||||
:class: "tight-table"
|
||||
|
||||
":kbd:`Alt`:kbd:`1`", "Switch focus to the Project Tree."
|
||||
":kbd:`Alt`:kbd:`2`", "Switch focus to Editor."
|
||||
":kbd:`Alt`:kbd:`3`", "Switch focus to Viewer."
|
||||
":kbd:`Alt`:kbd:`1`", "Switch focus to the project tree."
|
||||
":kbd:`Alt`:kbd:`2`", "Switch focus to document editor."
|
||||
":kbd:`Alt`:kbd:`3`", "Switch focus to document viewer."
|
||||
":kbd:`Ctrl`:kbd:`.`", "Open menu to correct word under cursor."
|
||||
":kbd:`Ctrl`:kbd:`,`", "Open the Preferences dialog."
|
||||
":kbd:`Ctrl`:kbd:`,`", "Open the :guilabel:`Preferences` dialog."
|
||||
":kbd:`Ctrl`:kbd:`/`", "Change block format to comment."
|
||||
":kbd:`Ctrl`:kbd:`-`", "Strikethrough selected text, or word under cursor."
|
||||
":kbd:`Ctrl`:kbd:`0`", "Remove block formatting for block under cursor."
|
||||
@@ -277,7 +281,7 @@ Most features are available as keyboard shortcuts. These are as following:
|
||||
":kbd:`Ctrl`:kbd:`B`", "Format selected text, or word under cursor, with strong emphasis (bold)."
|
||||
":kbd:`Ctrl`:kbd:`C`", "Copy selected text to clipboard."
|
||||
":kbd:`Ctrl`:kbd:`D`", "Wrap selected text, or word under cursor, in double quotes."
|
||||
":kbd:`Ctrl`:kbd:`E`", "If in the Project Tree, edit a document or folder settings. (Same as :kbd:`F2`)"
|
||||
":kbd:`Ctrl`:kbd:`E`", "If in the project tree, edit a document or folder settings. (Same as :kbd:`F2`)"
|
||||
":kbd:`Ctrl`:kbd:`F`", "Open the search bar and search for the selected word, if any is selected."
|
||||
":kbd:`Ctrl`:kbd:`G`", "Find next occurrence of search word in current document. (Same as :kbd:`F3`)"
|
||||
":kbd:`Ctrl`:kbd:`H`", "Open the search and replace bar and search for the selected word, if any is selected. (On Mac, this is :kbd:`Cmd`:kbd:`=`)"
|
||||
@@ -285,18 +289,18 @@ Most features are available as keyboard shortcuts. These are as following:
|
||||
":kbd:`Ctrl`:kbd:`N`", "Create new document."
|
||||
":kbd:`Ctrl`:kbd:`O`", "Open selected document."
|
||||
":kbd:`Ctrl`:kbd:`Q`", "Exit novelWriter."
|
||||
":kbd:`Ctrl`:kbd:`R`", "If in the Project Tree, open a document for viewing. If the Editor has focus, open current document for viewing."
|
||||
":kbd:`Ctrl`:kbd:`S`", "Save the current document in the Editor."
|
||||
":kbd:`Ctrl`:kbd:`R`", "If in the project tree, open a document for viewing. If the editor has focus, open current document for viewing."
|
||||
":kbd:`Ctrl`:kbd:`S`", "Save the current document in the document editor."
|
||||
":kbd:`Ctrl`:kbd:`V`", "Paste text from clipboard to cursor position."
|
||||
":kbd:`Ctrl`:kbd:`W`", "Close the current document in the Editor."
|
||||
":kbd:`Ctrl`:kbd:`W`", "Close the current document in the document editor."
|
||||
":kbd:`Ctrl`:kbd:`X`", "Cut selected text to clipboard."
|
||||
":kbd:`Ctrl`:kbd:`Y`", "Redo latest undo."
|
||||
":kbd:`Ctrl`:kbd:`Z`", "Undo latest changes."
|
||||
":kbd:`Ctrl`:kbd:`F7`", "Toggle spell checking."
|
||||
":kbd:`Ctrl`:kbd:`F10`", "Toggle automatic updating of Project Outline."
|
||||
":kbd:`Ctrl`:kbd:`Del`", "If in the Project Tree, move a document to trash, or delete a folder."
|
||||
":kbd:`Ctrl`:kbd:`F10`", "Toggle automatic updating of project outline."
|
||||
":kbd:`Ctrl`:kbd:`Del`", "If in the project tree, move a document to trash, or delete a folder."
|
||||
":kbd:`Ctrl`:kbd:`Enter`", "Open the tag or reference under the cursor in the Viewer."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`,`", "Open the Project Settings dialog."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`,`", "Open the :guilabel:`Project Settings` dialog."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`/`", "Remove block formatting for block under cursor."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`1`", "Replace occurrence of search word in current document, and search for next occurrence."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`A`", "Select all text in current paragraph."
|
||||
@@ -305,23 +309,23 @@ Most features are available as keyboard shortcuts. These are as following:
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`I`", "Import text to the current document from a text file."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`N`", "Create new folder."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`O`", "Open a project."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`R`", "Close the document Viewer."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`R`", "Close the document viewer."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`S`", "Save the current project."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`W`", "Close the current project."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`Up`", "Move item one step up in the Project Tree."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`Down`", "Move item one step down in the Project Tree."
|
||||
":kbd:`F1`", "Open the documentation. This just tries to send the documentation URL to your browser."
|
||||
":kbd:`F2`", "If in the Project Tree, edit a document or folder settings. (Same as :kbd:`Ctrl`:kbd:`E`)"
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`Up`", "Move item one step up in the project tree."
|
||||
":kbd:`Ctrl`:kbd:`Shift`:kbd:`Down`", "Move item one step down in the project tree."
|
||||
":kbd:`F1`", "Open the documentation. This will either open the Qt Assistant, if available, or send you to the documentation website."
|
||||
":kbd:`F2`", "If in the project tree, edit a document or folder settings. (Same as :kbd:`Ctrl`:kbd:`E`)"
|
||||
":kbd:`F3`", "Find next occurrence of search word in current document. (Same as :kbd:`Ctrl`:kbd:`G`)"
|
||||
":kbd:`F5`", "Open the Build Novel Project dialog."
|
||||
":kbd:`F6`", "Open the Writing Statistics dialog."
|
||||
":kbd:`F5`", "Open the :guilabel:`Build Novel Project` dialog."
|
||||
":kbd:`F6`", "Open the :guilabel:`Writing Statistics` dialog."
|
||||
":kbd:`F7`", "Re-run spell checker."
|
||||
":kbd:`F8`", "Activate Focus Mode, hiding Project Tree and view panel."
|
||||
":kbd:`F9`", "Re-build Project Index."
|
||||
":kbd:`F10`", "Re-build Project Outline."
|
||||
":kbd:`F8`", "Activate :guilabel:`Focus Mode`, hiding the project tree and document viewer."
|
||||
":kbd:`F9`", "Re-build the project index."
|
||||
":kbd:`F10`", "Re-build the project outline."
|
||||
":kbd:`F11`", "Activate full screen mode."
|
||||
":kbd:`Shift`:kbd:`F3`", "Find previous occurrence of search word in current document. (Same as :kbd:`Ctrl`:kbd:`Shift`:kbd:`G`)"
|
||||
":kbd:`Enter`", "If in the Project Tree, open a document for editing."
|
||||
":kbd:`Enter`", "If in the project tree, open a document for editing."
|
||||
|
||||
.. note::
|
||||
On macOS, replace :kbd:`Ctrl` with :kbd:`Cmd`.
|
||||
|
||||
@@ -6,17 +6,19 @@ Introduction
|
||||
|
||||
novelWriter is a simple, multi-document plain text editor using a modified markdown syntax to apply
|
||||
simple formatting. It is designed for writing novels, and allow for the component documents to be
|
||||
ordered freely to create the desired structure of the novel project.
|
||||
ordered freely to create the desired structure of the novel project. This is covered on the
|
||||
:ref:`a_struct` page.
|
||||
|
||||
In addition, the project can contain notes on the various plot elements, characters, locations, etc,
|
||||
that make up the story. These notes are organised in a set of category-specific folders, and each
|
||||
entry can be tagged and cross referenced from within the novel files and other notes. These tags
|
||||
make it possible to inter-link documents, and generate an overview of the entire novel project and
|
||||
how the various files and plot elements are interconnected.
|
||||
how the various files and plot elements are interconnected. This is covered on the :ref:`a_proj` and
|
||||
:ref:`a_notes` pages.
|
||||
|
||||
These additional features are not standard in markdown, but are available through special meta
|
||||
keywords. Syntax highlighting is provided to make it easier to verify that the markdown tags are
|
||||
used correctly.
|
||||
used correctly. This is covered on the :ref:`a_ui` page.
|
||||
|
||||
|
||||
.. _a_intro_design:
|
||||
@@ -32,22 +34,27 @@ at the same time provide a complete set of features needed for writing a novel.
|
||||
links, tables, and its formatting is limited to headers, and bold, italicised and strikethrough
|
||||
text.
|
||||
|
||||
The main window does not have a tool bar like most other applications do. This reduces clutter, and
|
||||
since the documents are formatted with markdown tags, more or less redundant. However, all
|
||||
The main window does not have a toolbar like most other applications do. This reduces clutter, and
|
||||
since the documents are formatted with markdown tags, is more or less redundant. However, all
|
||||
formatting features supported are available through convenient keyboard shortcuts. They are also
|
||||
available in the main menu.
|
||||
available in the main menu. A full list of shortcuts can be found in the :ref:`a_ui_shortcuts`
|
||||
section.
|
||||
|
||||
The colour scheme of the user interface defaults to that of the host operating system. In addition,
|
||||
a dark theme is provided, and can be enabled in Preferences. A number of syntax highlighting themes
|
||||
are also available in Preferences. Coloured and grayscale icon themes are also available.
|
||||
a dark theme is provided, and can be enabled in :guilabel:`Preferences` from the :guilabel:`Tools`
|
||||
menu. A number of syntax highlighting themes are also available in :guilabel:`Preferences`. A set of
|
||||
icon themes in colour and greyscale is also offered. The icons are based on the Typicon_ icon set by
|
||||
Stephen Hutchings.
|
||||
|
||||
The main window is split in two, or optionally three, panels. The left-most contains the project
|
||||
tree and all the files in your project. The second panel is the document editor, and the optional
|
||||
third panel is a document viewer which can view any document in your project.
|
||||
|
||||
A second tab is also available on the main window. This is the Outline tab where the entire novel
|
||||
structure can be displayed, with all the tags and references listed. Depending on how you structure
|
||||
your novel project files, this outline can be quite different than your project tree.
|
||||
A second tab is also available on the main window. This is the :guilabel:`Outline` tab where the
|
||||
entire novel structure can be displayed, with all the tags and references listed. Depending on how
|
||||
you structure your novel project files, this outline can be quite different than your project tree.
|
||||
|
||||
.. _Typicon: https://github.com/stephenhutchings/typicons.font
|
||||
|
||||
|
||||
.. _a_intro_project:
|
||||
@@ -56,18 +63,19 @@ Project Layout
|
||||
==============
|
||||
|
||||
You are free to structure your project files as you wish in subfolders and split between files. All
|
||||
that matters to novelWriter is the linear order they appear in the project tree (top to bottom) and
|
||||
the chapters, scenes and sections of the novel is determined by the headings within those files.
|
||||
that matters to novelWriter is the linear order they appear in the project tree (top to bottom). The
|
||||
chapters, scenes and sections of the novel are determined by the headings within those files.
|
||||
|
||||
The four heading levels (H1 to H4) are treated as follows:
|
||||
The four heading levels (**H1** to **H4**) are treated as follows:
|
||||
|
||||
* H1 is used for the book title, and for partitions.
|
||||
* H2 is used for chapter tiles.
|
||||
* H3 is reserved for scene titles.
|
||||
* H4 is for section titles within scenes, if such granularity is needed.
|
||||
* **H1** is used for the book title, and for partitions.
|
||||
* **H2** is used for chapter tiles.
|
||||
* **H3** is reserved for scene titles.
|
||||
* **H4** is for section titles within scenes, if such granularity is needed.
|
||||
|
||||
This structure is only considered on novel files. For the files designated as project notes, the
|
||||
usage of headers imply no structural meaning, and the user is free to do whatever they want.
|
||||
This header level structure is only considered on novel files. For the files designated as project
|
||||
notes, the usage of headers imply no structural meaning, and the user is free to do whatever they
|
||||
want. See the :ref:`a_struct` page for more details.
|
||||
|
||||
|
||||
.. _a_intro_export:
|
||||
@@ -84,8 +92,8 @@ HTML, which can be imported or converted by a number of other tools like Pandoc,
|
||||
into Libre Office and similar.
|
||||
|
||||
It is also possible to export the content of the project to a JSON file. This is useful if you want
|
||||
to write your own processing script in for instance Python, as the entire novel can be read into a
|
||||
Python dictionary with a couple of lines of code.
|
||||
to write your own processing script in for instance Python as the entire novel can be read into a
|
||||
Python dictionary with a couple of lines of code. See the :ref:`a_export` page for more details.
|
||||
|
||||
|
||||
.. _a_intro_screenshots:
|
||||
|
||||
@@ -1,3 +1,5 @@
|
||||
.. _a_notes:
|
||||
|
||||
************************
|
||||
Supporting Files (Notes)
|
||||
************************
|
||||
|
||||
+69
-66
@@ -7,13 +7,12 @@ Novel Projects
|
||||
A novelWriter project requires a dedicated folder for storing its files on the local file system.
|
||||
See the :ref:`a_tech` page for further details.
|
||||
|
||||
A new project can be created from the :menuselection:`Project` menu by selecting
|
||||
:menuselection:`New Project`. A list of recently opened projects is maintained, and displayed in the
|
||||
Open Project dialog. A project can be removed from this list by selecting it and pressing the
|
||||
:kbd:`Del` key.
|
||||
A new project can be created from the :guilabel:`Project` menu by selecting :guilabel:`New Project`.
|
||||
A list of recently opened projects is maintained, and displayed in the :guilabel:`Open Project`
|
||||
dialog. A project can be removed from this list by selecting it and pressing the :kbd:`Del` key.
|
||||
|
||||
The project specific settings are available in :menuselection:`Project --> Project Settings`. See
|
||||
further details below in the :ref:`a_proj_settings` section.
|
||||
The project specific settings are available in :guilabel:`Project Settings` in the
|
||||
:guilabel:`Project` menu. See further details below in the :ref:`a_proj_settings` section.
|
||||
|
||||
|
||||
.. _a_proj_roots:
|
||||
@@ -22,23 +21,26 @@ Project Roots
|
||||
=============
|
||||
|
||||
Projects are structured into a set of top level folders called *root folders*. They are visible in
|
||||
the Project Tree.
|
||||
the project tree at the left side of the main window.
|
||||
|
||||
The core novel files go into a root folder of type "Novel". Other supporting files go into the other
|
||||
root folders. These other root folder types are intended for your notes on the various elements of
|
||||
your story. Using these is of course entirely optional. A new project will not have all of the root
|
||||
folders present, but you can add the ones you want from :menuselection:`Project --> Create Root Folder`.
|
||||
your story. Using these is of course entirely optional.
|
||||
|
||||
A new project will not have all of the root folders present, but you can add the ones you want from
|
||||
:guilabel:`Create Root Folder` in the :guilabel:`Project` menu.
|
||||
|
||||
The root folders are intended for the following use, but aside from the Novel folder, no
|
||||
restrictions are enforced by the application. You can use them however you want.
|
||||
|
||||
.. note::
|
||||
The root folders correspond to the categories of tags that can be used.
|
||||
See the "Project Structure" section for further details.
|
||||
See the :ref:`a_struct` page for further details.
|
||||
|
||||
Novel
|
||||
The root folder of all text that goes into the final novel. This class of files have other rules
|
||||
and features than other files in the project. See the :ref:`a_struct` page for more details.
|
||||
This is the root folder of all text that goes into the final novel. This class of files have
|
||||
other rules and features than other files in the project. See the :ref:`a_struct` page for more
|
||||
details.
|
||||
|
||||
Plot
|
||||
This is the root folder where main plots can be outlined. It is optional, but adding at least
|
||||
@@ -76,8 +78,9 @@ Custom
|
||||
For more information about the tags listed, see :ref:`a_struct_tags`.
|
||||
|
||||
.. note::
|
||||
Deleted files will be moved into a special "Trash" root folder. Files in the Trash folder can
|
||||
then be deleted permanently, either individually, or by emptying the trash from the menu.
|
||||
Deleted files will be moved into a special :guilabel`Trash` root folder. Files in the trash
|
||||
folder can then be deleted permanently, either individually, or by emptying the trash from the
|
||||
menu.
|
||||
|
||||
|
||||
.. _a_proj_roots_orph:
|
||||
@@ -86,14 +89,15 @@ Orphaned Documents
|
||||
------------------
|
||||
|
||||
If novelWriter crashes or otherwise exits without saving the project state, or if you're using a
|
||||
file synchronisation tool, there may be files in the project folder that isn't tracked in the core
|
||||
project file. These files, when discovered, are handled by the Orphaned Documents routine.
|
||||
file synchronisation tool that runs out of sync, there may be files in the project folder that isn't
|
||||
tracked in the core project file. These files, when discovered, are handled by the Orphaned
|
||||
Documents routine.
|
||||
|
||||
Files that are discovered will be re-added to the project tree in a special "Orphaned Items" root
|
||||
folder next time the application is started. These orphaned files will not have most of the meta
|
||||
data preserved, although novelWriter will try to restore the file label it had in the Project Tree.
|
||||
Other information will have to be set again, and the files moved back to the correct location in
|
||||
the project.
|
||||
Files that are discovered in the project folder, but not in the project, will be re-added to the
|
||||
project tree in a special :guilabel:`Orphaned Items` root folder next time the application is
|
||||
started. These orphaned files will not have most of the meta data preserved, although novelWriter
|
||||
will try to restore the file label it had in the project tree. Other information will have to be set
|
||||
again, and the files moved back to the correct location in the project.
|
||||
|
||||
|
||||
.. _a_proj_roots_lock:
|
||||
@@ -108,7 +112,7 @@ where else novelWriter thinks the project is also open.
|
||||
|
||||
You will be give the option to ignore this warning, and continue opening the project. However, if
|
||||
multiple instances are in fact editing the same project, you are likely to cause inconsistencies and
|
||||
create diverging project files, potentially resulting in loss of data.
|
||||
create diverging project files, potentially resulting in loss of data and orphaned files.
|
||||
|
||||
.. note::
|
||||
If, for some reason, novelWriter crashes, the lock file may remain even if there are no other
|
||||
@@ -122,47 +126,53 @@ Using Folders in the Project Tree
|
||||
---------------------------------
|
||||
|
||||
Folders, aside from root folders, have no structural significance to the project. When novelWriter
|
||||
is processing the files in the novel, like for instance during export, the folders are ignored. Only
|
||||
the order of the text files themselves matter.
|
||||
is processing the files in the novel, like for instance during export, these folders are ignored.
|
||||
Only the order of the text files themselves matter.
|
||||
|
||||
The folders are there purely as a way for the user to organise the files in meaningful sections and
|
||||
to be able to close them in the Project Tree when you're not working on those files, and thus reduce
|
||||
clutter.
|
||||
|
||||
.. tip::
|
||||
You can use folders to sort your scene files into chapters. You will then need to add a chapter
|
||||
file as the first file of your folder, and the scene files as the following files.
|
||||
|
||||
|
||||
.. _a_proj_files:
|
||||
|
||||
Project Files
|
||||
=============
|
||||
|
||||
New document files can be created from the :menuselection:`Document` menu, or by pressing
|
||||
:kbd:`Ctrl`:kbd:`N` while in the Project Tree. This will create a new, empty file, and open the Item
|
||||
Settings dialog where the filename and various other settings can be changed. This dialog can also
|
||||
be opened again later from either the menu, :menuselection:`Project -> Edit Item`, or by pressing
|
||||
:kbd:`Ctrl`:kbd:`E` or :kbd:`F2` with the item selected.
|
||||
New document files can be created from the :guilabel:`Document` menu, or by pressing
|
||||
:kbd:`Ctrl`:kbd:`N` while in the Project Tree. This will create a new, empty file, and open the
|
||||
:guilabel:`:Item Settings` dialog where the filename and various other settings can be changed.
|
||||
This dialog can also be opened again later from either the :guilabel:`Project` menu, selecting
|
||||
:guilabel:`Edit Item`, or by pressing :kbd:`Ctrl`:kbd:`E` or :kbd:`F2` with the item selected.
|
||||
|
||||
The layout of the file is also defined here. For Novel files, the full list of layout options are
|
||||
available. For non-Novel files, only "Note" is available. See :ref:`a_struct_layout` for more
|
||||
details.
|
||||
|
||||
You can also select whether the file is by default included when building the project. This setting
|
||||
can be overridden in the Build Novel Project tool if you wish to include them anyway.
|
||||
can be overridden in the :guilabel:`Build Novel Project` tool if you wish to include them anyway.
|
||||
|
||||
|
||||
.. _a_proj_files_counts:
|
||||
|
||||
Word Counts
|
||||
-----------
|
||||
|
||||
A character, word and paragraph count is maintained for each file, as well as dor each section of a
|
||||
file defined by a header. The word count, and change of words in the current session, is displayed
|
||||
in the footer of any document open in the Editor, and all stats are shown in the details panel below
|
||||
the Project Tree for any file selected.
|
||||
in the footer of any document open in the editor, and all stats are shown in the details panel below
|
||||
the project tree for any file selected.
|
||||
|
||||
The word counts are not updated real time, but runs in the background every five seconds.
|
||||
The word counts are not updated in real time, but runs in the background every five seconds.
|
||||
|
||||
A total project word count is displayed in the status bar. The total count depends on the sum of the
|
||||
values in the Project Tree, which again depend on an up to date index. If the counts seem wrong, a
|
||||
full project word recount can be initiated by rebuilding the Project Index. Either form the
|
||||
:menuselection:`Tools` menu, or by pressing :kbd:`F9`.
|
||||
values in the project tree, which again depend on an up to date index. If the counts seem wrong, a
|
||||
full project word recount can be initiated by rebuilding the project's index. Either form the
|
||||
:guilabel:`Tools` menu, or by pressing :kbd:`F9`.
|
||||
|
||||
|
||||
.. _a_proj_settings:
|
||||
@@ -170,9 +180,8 @@ full project word recount can be initiated by rebuilding the Project Index. Eith
|
||||
Project Settings
|
||||
================
|
||||
|
||||
The project settings can be accessed from the :menuselection:`Project --> Project Settings` menu
|
||||
entry, or by pressing :kbd:`Ctrl`:kbd:`Shift`:kbd:`,`. This will open a dialog box, with a set of
|
||||
tabs.
|
||||
The :guilabel:`Project Settings` can be accessed from the :guilabel:`Project` menu, or by pressing
|
||||
:kbd:`Ctrl`:kbd:`Shift`:kbd:`,`. This will open a dialog box, with a set of tabs.
|
||||
|
||||
|
||||
Settings Tab
|
||||
@@ -198,36 +207,29 @@ project is saved, how may times it has been saved, how many folders and files it
|
||||
many words exist in the entire project.
|
||||
|
||||
|
||||
Status Tab
|
||||
----------
|
||||
Status and Importance Tabs
|
||||
---------------------------
|
||||
|
||||
Each file of type "Novel" can be given a status level, signified by a coloured icon. These are
|
||||
purely there for the user's convenience, and you are not required to use them for any other feature
|
||||
to work. The intention is to use this list to set what stage of writing you are on, although you can
|
||||
in principle make them whatever you want.
|
||||
Each file of type "Novel" can be given a status level, signified by a coloured icon and each file of
|
||||
the remaining types can be given an importance level. These are colour coded icons and labels that
|
||||
can be applied to each file.
|
||||
|
||||
These are purely there for the user's convenience, and you are not required to use them for any
|
||||
other feature to work. No other part of novelWriter accesses this information. The intention is to
|
||||
use these to indicate at what stage of completeion each novel file is, or how important the content
|
||||
of a note file is to the plot. You don't have to use them this way, that's just what they were
|
||||
intended for, but you can make them whatever you want.
|
||||
|
||||
.. note::
|
||||
The status levels currently in use by one or more files cannot be deleted.
|
||||
|
||||
|
||||
Importance Tab
|
||||
--------------
|
||||
|
||||
Each file of types "Plot", "Character", "World", "Timeline", "Object", "Entity", or "Custom", can be
|
||||
given an importance level, signified by a coloured icon like for status level. These are also purely
|
||||
there for the user's convenience, and you are not required to use them for any other feature to
|
||||
work. The intention is to use this list to set how important the character, plot element, or
|
||||
otherwise, is for the story. Again, these can in principle be used for whatever you want.
|
||||
|
||||
.. note::
|
||||
The importance levels currently in use by one or more files cannot be deleted.
|
||||
The status or importance level currently in use by one or more files cannot be deleted, but they
|
||||
can be edited.
|
||||
|
||||
|
||||
Auto-Replace Tab
|
||||
----------------
|
||||
|
||||
A set of automatically replaced keywords can be added in this tab. The keywords in the left column
|
||||
will be replaced by the text in the right column when documents are opened in the Viewer. They will
|
||||
will be replaced by the text in the right column when documents are opened in the viewer. They will
|
||||
also be applied to exports.
|
||||
|
||||
.. note::
|
||||
@@ -246,12 +248,13 @@ backup files are to be stored must to be provided in Preferences.
|
||||
|
||||
Backups can be run automatically when a project is closed, which also implies it is run when the
|
||||
application is closed. Backups are date stamped zip files of the entire project folder, and are
|
||||
stored in a subfolder of the backup path with the same name as the project Working Title set in
|
||||
:ref:`a_proj_settings`.
|
||||
stored in a subfolder of the backup path with the same name as the project :guilabel:`Working Title`
|
||||
set in :ref:`a_proj_settings`.
|
||||
|
||||
The backup feature, when configured, can also be run manually from the :menuselection:`Tools` menu.
|
||||
It is also possible to dissable automated backup for a given project in Project Settings.
|
||||
The backup feature, when configured, can also be run manually from the :guilabel:`Tools` menu.
|
||||
It is also possible to dissable automated backup for a given project in :guilabel:`Project Settings`.
|
||||
|
||||
.. note::
|
||||
For the backup to be able to run, the Working Title must be set in Project Settings. This value
|
||||
is used to generate the folder name for the zip files. Without it, the backup will not run.
|
||||
For the backup to be able to run, the :guilabel:`Working Title` must be set in :guilabel:`Project
|
||||
Settings`. This value is used to generate the folder name for the zip files. Without it, the
|
||||
backup will not run at all, but produce a warning message.
|
||||
|
||||
+18
-7
@@ -34,10 +34,10 @@ needed to communicate with the Qt GUI libraries, only one package is required fo
|
||||
format of the main project file. Everything else is handled with standard Python libraries.
|
||||
|
||||
Optionally, a package can be installed to interface with the Enchant spell checking libaries, but
|
||||
this isn't required. If no external spell checking library is available, novelWriter falls back to
|
||||
using the internal ``difflib`` of Python to check spelling. This is a much slower approach, and it
|
||||
is less sophisticated than full spell checking libaries, but if you only work with small files, the
|
||||
performance loss is not noticeable.
|
||||
this isn't strictly required. If no external spell checking library is available, novelWriter falls
|
||||
back to using the internal ``difflib`` of Python to check spelling. This is a much slower approach,
|
||||
and it is less sophisticated than full spell checking libaries, but if you only work with small
|
||||
files, the performance loss is not noticeable.
|
||||
|
||||
|
||||
.. _a_started_depend_packages:
|
||||
@@ -53,7 +53,7 @@ the following command:
|
||||
|
||||
pip install -r requirements.txt
|
||||
|
||||
On some operating systems you need to use ``python3`` instead of ``python``.
|
||||
This will install all the dependencies and recommended packages.
|
||||
|
||||
The following Python packages are required to run novelWriter:
|
||||
|
||||
@@ -69,7 +69,7 @@ Exporting to standard Markdown, for instance, requires PyQt/Qt 5.14. Searching u
|
||||
expressions requires 5.3, and for full Unicode support, 5.13.
|
||||
|
||||
There are no known minimum for package ``lxml``, but the code was originally written with 4.2,
|
||||
which is therefore set as the minimum.
|
||||
which is therefore set as the minimum. It may work on lower versions. You have to test it.
|
||||
|
||||
The spell checking extension is optional, but recommended:
|
||||
|
||||
@@ -78,6 +78,7 @@ The spell checking extension is optional, but recommended:
|
||||
The optional spell check library must be at least 3.0.0 to work with Windows. On Linux, 2.0.0 also
|
||||
works fine.
|
||||
|
||||
|
||||
.. _a_started_depend_docs:
|
||||
|
||||
Building Documentation
|
||||
@@ -104,6 +105,16 @@ To build the help packages from the documentation source, run
|
||||
|
||||
from the root source folder.
|
||||
|
||||
The setup script will copy the generated files into the ``nw/assets/help`` folder, and novelWriter
|
||||
will detect the presence of the files and redirect the menu help entry to open help locally instead
|
||||
of send the user to the website.
|
||||
|
||||
.. note::
|
||||
In order for the local version of help to work, the Qt Assistant must be installed on the local
|
||||
computer. If it isn't available, or novelWriter cannot find it, the help feature will fall back
|
||||
to redirecting to the website.
|
||||
|
||||
|
||||
.. _a_started_running:
|
||||
|
||||
Running novelWriter
|
||||
@@ -135,7 +146,7 @@ there's one script for Debian and one for Ubuntu.
|
||||
Building a Standalone Executable
|
||||
================================
|
||||
|
||||
A standalone executable can be built with pyinstaller, using the provided python script
|
||||
A standalone executable can be built with ``pyinstaller``, using the provided python script
|
||||
``install.py`` in the source folder. This script will automatically try to install all dependencies
|
||||
and build the standalone executable of novelWriter. You can run the script by typing the following
|
||||
into your command prompt:
|
||||
|
||||
Reference in New Issue
Block a user