github vkbo/novelWriter v1.0b1
Version 1.0 Beta 1

latest releases: v2.0rc2, v1.6.6, v2.0rc1...
3 years ago

Changes

Bugfixes

  • Not technically a bug, but the clearing of the document editor footer bar, both during start-up and when a document was closed, would print two ERROR messages to the terminal window. These were benign, but are now prevented from occurring by a slight change in the logic. Issue #418, PR #420.
  • Fixed spell check highlighting for words separated by a forward slash, which was treated as a single word. Issue #427, PR #428.

New Features

  • A new root folder has been added. It is named "Outtakes" by default, and functions as an archive folder for any file that the user wants to take out of the main project tree. The file retains its meta data, is editable, and is always excluded from builds. It is not possible to create files in this folder, but you can create subfolders for organising them. PRs #415, #416 and #419.
  • Support an alternative apostrophe. There is a unicode character defined for this, but the regular right hand single quote symbol is the recommended character. However, sometimes this confuses the syntax highlighter. The alternative character bypasses this, and may also be useful for languages that don't use the same type of symbol for these. PRs #429 and #430.

Feature Improvements

  • The way the enter and tab keys work in the document editor have been improved. If the search or replace text box has focus, the tab key switches between them, and the enter key always triggers the button that is to the right of the box with focus. If the editor has focus, the tab and enter keys work as expected for a text editor. PRs #412 and #413.
  • The keyboard sequence Ctrl+Shift+Z is now again an alternative to Ctrl+Y for the redo functionality. PR #413.
  • It is now possible to drag and drop files into the Trash folder. PR #415.
  • Files moved to Outtakes or Trash are now cleared from the index, except their word counts. All tags and references are thus out of the project. They are automatically put back in when the file is dragged into the main project tree again. PR #416.
  • Tabs and tab stops are now rendered properly in the document viewer. Since the setHtml function of the Qt widget used here strips tabs, they were previously just converted to eight spaces. This prevented the tabs from aligning vertically like they do in the editor. The stripping of tabs is now bypassed by replacing them with a placeholder text, and reverting the replacement after the document content has been set. This change also applies to the preview in the Build Novel Project tool, and therefore also the print and print to PDF functions. PR #419.
  • The syntax highlighter is now better at detecting what is a single quoted string and what is an apostrophe in a word. PR #430.

Other Changes

  • A hard maximum project tree folder depth of 30 has been added. Level 28 is the last level where a folder can be created, to allow for one more level of files. There is no particular reason for the number 30, it was mostly a matter of picking a number. 30 is assumed to be excessive. It is hard to navigate a project tree with that many folders. The value was set because many places in the code there was a soft limit of 200. If you created more, various parts of the code would stop working. PRs #416 and #421.
  • The dialog for reporting unhandled errors has been changed and a new custom Qt subclass written. It does essentially the same thing as the standard QErrorMessage box did, but adds the feature of a clickable link to the issues tracker on GitHub, and a monospace formatted traceback for the issues ticket. In addition, a crash that pops this dialog will now trigger an attempted controlled shutdown of novelWriter. Before, it would try to keep running, but often leave novelWriter in a half defunct state. PR #417.

Test Suite

  • Added better test coverage of the Project Load dialog and the Project Outline tool. PR #423.
  • Switched from Travis-CI to GitHub actions for running Python tests. PRs #424, #425 and #426.
  • All tests can now be run independently of other tests on a function level. Before, this was only possible on a test file level. Issue #431, PR #432.

Don't miss a new novelWriter release

NewReleases is sending notifications on new releases.