mirror of
https://github.com/olivierkes/manuskript.git
synced 2024-05-14 01:42:28 +12:00
Merge branch 'develop' into translations
Signed-off-by: TheJackiMonster <thejackimonster@gmail.com>
This commit is contained in:
commit
9e10e9323f
44
CHANGELOG.md
44
CHANGELOG.md
|
@ -1,8 +1,48 @@
|
|||
# Changelog
|
||||
|
||||
## [0.13.1](https://github.com/olivierkes/manuskript/tree/HEAD)
|
||||
## [0.14.0](https://github.com/olivierkes/manuskript/tree/0.14.0) (2022-06-08)
|
||||
|
||||
[Full Changelog](https://github.com/olivierkes/manuskript/compare/0.12.0...HEAD)
|
||||
[Full Changelog](https://github.com/olivierkes/manuskript/compare/0.13.1...0.14.0)
|
||||
|
||||
**Implemented enhancements:**
|
||||
|
||||
- \[Feature Request\] Full Compile Export [\#1034](https://github.com/olivierkes/manuskript/issues/1034)
|
||||
- Cleaning up the flatpak [\#1029](https://github.com/olivierkes/manuskript/issues/1029)
|
||||
|
||||
**Fixed bugs:**
|
||||
|
||||
- Crashing when I'm trying to create the 1st project [\#1035](https://github.com/olivierkes/manuskript/issues/1035)
|
||||
- crash on the "Outline" section [\#1032](https://github.com/olivierkes/manuskript/issues/1032)
|
||||
- Manuskript crashing while booting [\#1021](https://github.com/olivierkes/manuskript/issues/1021)
|
||||
- \[Bug\] double click causes crash in outline or plots view [\#1014](https://github.com/olivierkes/manuskript/issues/1014)
|
||||
- Re-ordering items in the outline causes data loss/text overwritting [\#1001](https://github.com/olivierkes/manuskript/issues/1001)
|
||||
- An unhandled exception has occurred! on cheatsheet [\#994](https://github.com/olivierkes/manuskript/issues/994)
|
||||
- Crash when changing index card style [\#992](https://github.com/olivierkes/manuskript/issues/992)
|
||||
- Regex search causes crash [\#989](https://github.com/olivierkes/manuskript/issues/989)
|
||||
- Crash when project file is open in another application [\#950](https://github.com/olivierkes/manuskript/issues/950)
|
||||
- outliner folder gets renamed and contents replaced when dragged over other folder, only in upward direction [\#719](https://github.com/olivierkes/manuskript/issues/719)
|
||||
|
||||
**Closed issues:**
|
||||
|
||||
- Creating empty language file hr-HR [\#1023](https://github.com/olivierkes/manuskript/issues/1023)
|
||||
- Creating project from template dialog has fixed size [\#996](https://github.com/olivierkes/manuskript/issues/996)
|
||||
- Russian translation [\#990](https://github.com/olivierkes/manuskript/issues/990)
|
||||
- \[Windows Version\] Two program windows pop up [\#327](https://github.com/olivierkes/manuskript/issues/327)
|
||||
|
||||
**Merged pull requests:**
|
||||
|
||||
- catch AttributeError in plotTreeView double click event \(fixes \#1014\) [\#1015](https://github.com/olivierkes/manuskript/pull/1015) ([amconners](https://github.com/amconners))
|
||||
- Change welcome page spacer size policy to allow welcome to expand to fill most of screen \(fixes olivierkes\#996\) [\#1007](https://github.com/olivierkes/manuskript/pull/1007) ([jdanielp](https://github.com/jdanielp))
|
||||
- Fix crash when files are locked for writing \(Fixes olivierkes\#950\) [\#1004](https://github.com/olivierkes/manuskript/pull/1004) ([jdanielp](https://github.com/jdanielp))
|
||||
- Fix crash when regex is not valid \(Fixes olivierkes\#989\) [\#1003](https://github.com/olivierkes/manuskript/pull/1003) ([jdanielp](https://github.com/jdanielp))
|
||||
- Potential fix for \#719, \#1001: data loss when reordering items in upward direction [\#1002](https://github.com/olivierkes/manuskript/pull/1002) ([olivierkes](https://github.com/olivierkes))
|
||||
- hard\_line\_breaks support [\#1000](https://github.com/olivierkes/manuskript/pull/1000) ([Mte90](https://github.com/Mte90))
|
||||
- Fix for \#992 and \#998 [\#999](https://github.com/olivierkes/manuskript/pull/999) ([amconners](https://github.com/amconners))
|
||||
- Write a test for ParseMMDFile function. [\#831](https://github.com/olivierkes/manuskript/pull/831) ([zeth](https://github.com/zeth))
|
||||
|
||||
## [0.13.1](https://github.com/olivierkes/manuskript/tree/0.13.1) (2021-12-13)
|
||||
|
||||
[Full Changelog](https://github.com/olivierkes/manuskript/compare/0.12.0...0.13.1)
|
||||
|
||||
**Implemented enhancements:**
|
||||
|
||||
|
|
22
README.md
22
README.md
|
@ -1,13 +1,13 @@
|
|||
# Manuskript
|
||||
|
||||
[Manuskript](http://www.theologeek.ch/manuskript) is an open-source
|
||||
[Manuskript](https://www.theologeek.ch/manuskript) is an open-source
|
||||
tool for writers.
|
||||
|
||||
[![manuskript](https://snapcraft.io/manuskript/badge.svg)](https://snapcraft.io/manuskript)
|
||||
|
||||
Manuskript runs on GNU/Linux, Mac OS X, and Windows.
|
||||
|
||||
![Main view](http://www.theologeek.ch/manuskript/wp-content/uploads/2017/11/manuskript-0.5.0-main-view.jpg)
|
||||
![Main view](https://www.theologeek.ch/manuskript/wp-content/uploads/2017/11/manuskript-0.5.0-main-view.jpg)
|
||||
|
||||
## Features
|
||||
|
||||
|
@ -20,34 +20,34 @@ With Manuskript you can:
|
|||
* Create characters
|
||||
* Conceive plots
|
||||
* Construct outlines
|
||||
([Outline mode](http://www.theologeek.ch/manuskript/2016/02/05/outliner/)
|
||||
([Outline mode](https://www.theologeek.ch/manuskript/2016/02/05/outliner/)
|
||||
and/or
|
||||
[Index cards](http://www.theologeek.ch/manuskript/2016/02/05/index-cards/))
|
||||
[Index cards](https://www.theologeek.ch/manuskript/2016/02/05/index-cards/))
|
||||
* Write with focus
|
||||
([Distraction free mode](https://github.com/olivierkes/manuskript/wiki/Full-screen-mode))
|
||||
* Build worlds
|
||||
* [Track items](https://github.com/olivierkes/manuskript/wiki/How-to-keep-track-of-important-items)
|
||||
* Edit and re-organize chapters and scenes
|
||||
* View [Story line](http://www.theologeek.ch/manuskript/2016/02/28/story-line/)
|
||||
* View [Story line](https://www.theologeek.ch/manuskript/2016/02/28/story-line/)
|
||||
* Compose with
|
||||
[fiction or non-fiction templates and writing modes](http://www.theologeek.ch/manuskript/2016/03/31/writing-modes-simple-fiction/)
|
||||
[fiction or non-fiction templates and writing modes](https://www.theologeek.ch/manuskript/2016/03/31/writing-modes-simple-fiction/)
|
||||
* Import and export document formats such as HTML, ePub, OpenDocument, DocX, and
|
||||
[more](https://github.com/olivierkes/manuskript/wiki/Import-and-Export-capabilities)
|
||||
|
||||
|
||||
Additionally Manuskript can help in many more ways with a spell
|
||||
checker, markdown highlighter,
|
||||
[frequency analyzer](http://www.theologeek.ch/manuskript/2016/02/08/frequency-analyzer/),
|
||||
[frequency analyzer](https://www.theologeek.ch/manuskript/2016/02/08/frequency-analyzer/),
|
||||
and automatic save in
|
||||
[open and plain text file format](http://www.theologeek.ch/manuskript/2016/03/31/open-plain-text-file-format/).
|
||||
[open and plain text file format](https://www.theologeek.ch/manuskript/2016/03/31/open-plain-text-file-format/).
|
||||
|
||||
## Download
|
||||
|
||||
[Download](http://www.theologeek.ch/manuskript/download) and install Manuskript today.
|
||||
[Download](https://www.theologeek.ch/manuskript/download) and install Manuskript today.
|
||||
|
||||
## HowTo's
|
||||
|
||||
See the [Wiki](http://github.com/olivierkes/manuskript/wiki) for more
|
||||
See the [Wiki](https://github.com/olivierkes/manuskript/wiki) for more
|
||||
detailed instructions on how to install and use Manuskript.
|
||||
|
||||
## Contribute
|
||||
|
@ -58,7 +58,7 @@ You can help improve Manuskript by reporting
|
|||
and
|
||||
[translating to other languages](https://github.com/olivierkes/manuskript/wiki/Translate-Manuskript).
|
||||
See also
|
||||
[Manuskript Contribute page](http://www.theologeek.ch/manuskript/contribute/).
|
||||
[Manuskript Contribute page](https://www.theologeek.ch/manuskript/contribute/).
|
||||
|
||||
Manuskript is written in Python3 and PyQt5.
|
||||
|
||||
|
|
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
Binary file not shown.
File diff suppressed because it is too large
Load diff
|
@ -10,6 +10,7 @@ from manuskript.searchLabels import CharacterSearchLabels
|
|||
from manuskript.models.searchableModel import searchableModel
|
||||
from manuskript.models.searchableItem import searchableItem
|
||||
|
||||
|
||||
class characterModel(QAbstractItemModel, searchableModel):
|
||||
|
||||
def __init__(self, parent):
|
||||
|
@ -168,17 +169,17 @@ class characterModel(QAbstractItemModel, searchableModel):
|
|||
# ADDING / REMOVING
|
||||
###############################################################################
|
||||
|
||||
def addCharacter(self, importance = 0, name="New character"):
|
||||
def addCharacter(self, importance=0, name=None):
|
||||
"""
|
||||
Creates a new character
|
||||
@param importance: the importance level of the character
|
||||
@return: the character
|
||||
"""
|
||||
if not name:
|
||||
name="New Character"
|
||||
c = Character(model=self, name=self.tr(name), importance = importance)
|
||||
self.beginInsertRows(QModelIndex(), len(
|
||||
self.characters), len(self.characters))
|
||||
name = self.tr("New character")
|
||||
|
||||
c = Character(model=self, name=self.tr(name), importance=importance)
|
||||
self.beginInsertRows(QModelIndex(), len(self.characters), len(self.characters))
|
||||
self.characters.append(c)
|
||||
self.endInsertRows()
|
||||
return c
|
||||
|
@ -212,7 +213,10 @@ class characterModel(QAbstractItemModel, searchableModel):
|
|||
c = self.getCharacterByID(ID)
|
||||
self.beginInsertRows(c.index(), len(c.infos), len(c.infos))
|
||||
c.infos.append(CharacterInfo(
|
||||
c, description="Description", value="Value"))
|
||||
c,
|
||||
description=self.tr("Description"),
|
||||
value=self.tr("Value")
|
||||
))
|
||||
self.endInsertRows()
|
||||
|
||||
mainWindow().updatePersoInfoView()
|
||||
|
@ -239,13 +243,17 @@ class characterModel(QAbstractItemModel, searchableModel):
|
|||
# CHARACTER
|
||||
###############################################################################
|
||||
|
||||
|
||||
class Character(searchableItem):
|
||||
def __init__(self, model, name="No name", importance = 0):
|
||||
|
||||
def __init__(self, model, name=None, importance=0):
|
||||
self._model = model
|
||||
self.lastPath = ""
|
||||
|
||||
self._data = {}
|
||||
self._data[C.name.value] = name
|
||||
if not name:
|
||||
name = self.translate("Unknown")
|
||||
|
||||
self._data = {C.name.value: name}
|
||||
self.assignUniqueID()
|
||||
self.assignRandomColor()
|
||||
self._data[C.importance.value] = str(importance)
|
||||
|
|
|
@ -105,9 +105,10 @@ class plotModel(QStandardItemModel, searchableModel):
|
|||
# ADDING / REMOVING
|
||||
###############################################################################
|
||||
|
||||
def addPlot(self, name="New plot"):
|
||||
def addPlot(self, name=None):
|
||||
if not name:
|
||||
name="New Plot"
|
||||
name = self.tr("New plot")
|
||||
|
||||
p = QStandardItem(self.tr(name))
|
||||
_id = QStandardItem(self.getUniqueID())
|
||||
importance = QStandardItem(str(0))
|
||||
|
|
|
@ -6,7 +6,9 @@ from manuskript.models.searchResultModel import searchResultModel
|
|||
from manuskript.functions import search
|
||||
from PyQt5.QtCore import QCoreApplication
|
||||
|
||||
class searchableItem():
|
||||
|
||||
class searchableItem:
|
||||
|
||||
def __init__(self, searchColumnLabels):
|
||||
self._searchColumnLabels = searchColumnLabels
|
||||
|
||||
|
|
|
@ -108,7 +108,7 @@ frequencyAnalyzer = {
|
|||
}
|
||||
|
||||
viewMode = "fiction" # simple, fiction
|
||||
saveToZip = True
|
||||
saveToZip = False
|
||||
dontShowDeleteWarning = False
|
||||
|
||||
def initDefaultValues():
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
# Single source the package version
|
||||
# https://packaging.python.org/guides/single-sourcing-package-version/
|
||||
|
||||
__version__ = "0.13.1"
|
||||
__version__ = "0.14.0"
|
||||
|
||||
def getVersion():
|
||||
return __version__
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!-- Copyright 2021 Tobias Frisch -->
|
||||
<!-- Copyright 2021-2022 Tobias Frisch -->
|
||||
<component type="desktop">
|
||||
<id>ch.theologeek.Manuskript</id>
|
||||
<metadata_license>CC0-1.0</metadata_license>
|
||||
|
@ -38,6 +38,7 @@
|
|||
|
||||
<launchable type="desktop-id">ch.theologeek.Manuskript.desktop</launchable>
|
||||
<releases>
|
||||
<release version="0.14.0" date="2022-06-08" />
|
||||
<release version="0.13.1" date="2021-12-13" />
|
||||
<release version="0.12.0" date="2021-04-30" />
|
||||
</releases>
|
||||
|
|
Loading…
Reference in a new issue