Merge branch 'dev' into projsettings_update

This commit is contained in:
Veronica K. B. Olsen
2021-02-27 17:02:23 +01:00
17 changed files with 5282 additions and 418 deletions
+1 -1
View File
@@ -137,7 +137,7 @@ def main(sysArgs=None):
"This program is distributed in the hope that it will be useful,\n"
"but WITHOUT ANY WARRANTY; without even the implied warranty of\n"
"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n"
"GNU General Public License for more details.\n"
"GNU General Public Licence for more details.\n"
"\n"
"Usage:\n"
" -h, --help Print this message.\n"
+14 -28
View File
@@ -318,8 +318,7 @@ class NWIndex():
nTitle = nLine
elif aLine.startswith("@"):
self._indexNoteRef(tHandle, aLine, nLine, nTitle)
self._indexTag(tHandle, aLine, nLine, nTitle, itemClass)
self._indexKeyword(tHandle, aLine, nLine, nTitle, itemClass)
elif aLine.startswith("%"):
if nTitle > 0:
@@ -460,41 +459,28 @@ class NWIndex():
self._noteIndex[tHandle][sTitle]["updated"] = round(time())
return
def _indexNoteRef(self, tHandle, aLine, nLine, nTitle):
def _indexKeyword(self, tHandle, aLine, nLine, nTitle, itemClass):
"""Validate and save the information about a reference to a tag
in another file.
"""
isValid, theBits, _ = self.scanThis(aLine)
if not isValid or len(theBits) == 0:
return False
sTitle = "T%06d" % nTitle
if sTitle not in self._refIndex[tHandle]:
return False
if theBits[0] == nwKeyWords.TAG_KEY:
return False
if not isValid or len(theBits) < 2:
logger.warning("Skipping keyword with %d value(s) in %s" % (len(theBits), tHandle))
return
if theBits[0] not in nwKeyWords.VALID_KEYS:
return False
for aVal in theBits[1:]:
self._refIndex[tHandle][sTitle]["tags"].append([nLine, theBits[0], aVal])
return True
def _indexTag(self, tHandle, aLine, nLine, nTitle, itemClass):
"""Validate and save the information from a tag.
"""
isValid, theBits, thePos = self.scanThis(aLine)
if not isValid or len(theBits) != 2:
return False
logger.warning("Skipping invalid keyword '%s' in %s" % (theBits[0], tHandle))
return
sTitle = "T%06d" % nTitle
if theBits[0] == nwKeyWords.TAG_KEY:
sTitle = "T%06d" % nTitle
self._tagIndex[theBits[1]] = [nLine, tHandle, itemClass.name, sTitle]
return True
elif sTitle in self._refIndex[tHandle]:
for aVal in theBits[1:]:
self._refIndex[tHandle][sTitle]["tags"].append([nLine, theBits[0], aVal])
return
##
# Check @ Lines
@@ -714,7 +700,7 @@ class NWIndex():
for refTitle in self._refIndex[tHandle]:
for aTag in self._refIndex[tHandle][refTitle].get("tags", []):
if len(aTag) == 3 and (sTitle is None or sTitle == refTitle):
if aTag[1] in theRefs: # Future-compatible. Check can be removed in 1.2.
if aTag[1] in theRefs:
theRefs[aTag[1]].append(aTag[2])
return theRefs
+2 -2
View File
@@ -988,7 +988,7 @@ class NWProject():
if not os.path.isdir(self.mainConf.backupPath):
self.theParent.makeAlert(
self.tr(
"You must set a valid backup path in preferences to use "
"You must set a valid backup path in Preferences to use "
"the automatic project backup feature."
), nwAlert.WARN
)
@@ -997,7 +997,7 @@ class NWProject():
if self.projName == "":
self.theParent.makeAlert(
self.tr(
"You must set a valid project name in project settings to "
"You must set a valid project name in Project Settings to "
"use the automatic project backup feature."
), nwAlert.WARN
)
+7 -7
View File
@@ -92,7 +92,7 @@ class GuiAbout(QDialog):
self.tabBox = QTabWidget()
self.tabBox.addTab(self.pageAbout, self.tr("About"))
self.tabBox.addTab(self.pageNotes, self.tr("Release"))
self.tabBox.addTab(self.pageLicense, self.tr("License"))
self.tabBox.addTab(self.pageLicense, self.tr("Licence"))
self.innerBox.addWidget(self.tabBox)
# OK Button
@@ -165,7 +165,7 @@ class GuiAbout(QDialog):
"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
),
license3 = self.tr(
"See the License tab for the full license text, or visit the "
"See the Licence tab for the full licence text, or visit the "
"GNU website at {0} for more details."
).format(
"<a href='https://www.gnu.org/licenses/gpl-3.0.html'>GPL v3.0</a>"
@@ -179,7 +179,7 @@ class GuiAbout(QDialog):
self.tr("Theme: {0}").format(theTheme.themeName),
self.tr("Author: {0}").format(theTheme.themeAuthor),
self.tr("Credit: {0}").format(theTheme.themeCredit),
self.tr("License: {0}").format(
self.tr("Licence: {0}").format(
f"<a href='{theTheme.themeLicenseUrl}'>{theTheme.themeLicense}</a>"
)
)
@@ -189,7 +189,7 @@ class GuiAbout(QDialog):
self.tr("Icons: {0}").format(theIcons.themeName),
self.tr("Author: {0}").format(theIcons.themeAuthor),
self.tr("Credit: {0}").format(theIcons.themeCredit),
self.tr("License: {0}").format(
self.tr("Licence: {0}").format(
f"<a href='{theIcons.themeLicenseUrl}'>{theIcons.themeLicense}</a>"
)
)
@@ -199,7 +199,7 @@ class GuiAbout(QDialog):
self.tr("Syntax: {0}").format(theTheme.syntaxName),
self.tr("Author: {0}").format(theTheme.syntaxAuthor),
self.tr("Credit: {0}").format(theTheme.syntaxCredit),
self.tr("License: {0}").format(
self.tr("Licence: {0}").format(
f"<a href='{theTheme.syntaxLicenseUrl}'>{theTheme.syntaxLicense}</a>"
)
)
@@ -221,7 +221,7 @@ class GuiAbout(QDialog):
return
def _fillLicensePage(self):
"""Load the content for the License page.
"""Load the content for the Licence page.
"""
docPath = os.path.join(self.mainConf.assetPath, "text", "gplv3_en.htm")
if os.path.isfile(docPath):
@@ -229,7 +229,7 @@ class GuiAbout(QDialog):
helpText = inFile.read()
self.pageLicense.setHtml(helpText)
else:
self.pageLicense.setHtml("Error loading license text ...")
self.pageLicense.setHtml("Error loading licence text ...")
return
def _setStyleSheet(self):
+1 -1
View File
@@ -468,7 +468,7 @@ class GuiBuildNovel(QDialog):
self.saveJsonH.triggered.connect(lambda: self._saveDocument(self.FMT_JSON_H))
self.saveMenu.addAction(self.saveJsonH)
self.saveJsonM = QAction(self.tr("JSON + novelWriters Markdown (.json)"), self)
self.saveJsonM = QAction(self.tr("JSON + novelWriter Markdown (.json)"), self)
self.saveJsonM.triggered.connect(lambda: self._saveDocument(self.FMT_JSON_M))
self.saveMenu.addAction(self.saveJsonM)
+1 -1
View File
@@ -1330,7 +1330,7 @@ class GuiDocEditor(QTextEdit):
else:
self.theParent.makeAlert(
self.tr("Please selection some text before calling replace quotes."),
self.tr("Please select some text before calling replace quotes."),
nwAlert.ERROR
)
+1 -1
View File
@@ -989,7 +989,7 @@ class GuiMainMenu(QMenuBar):
# Tools > Writing Stats
self.aWritingStats = QAction(self.tr("Writing Statistics"), self)
self.aWritingStats.setStatusTip(self.tr("Show the writing statistics dialog"))
self.aWritingStats.setStatusTip(self.tr("Show the writing statistics dialogue"))
self.aWritingStats.setShortcut("F6")
self.aWritingStats.triggered.connect(lambda: self.theParent.showWritingStatsDialog())
self.toolsMenu.addAction(self.aWritingStats)
+1 -1
View File
@@ -380,7 +380,7 @@ class GuiPreferencesProjects(QWidget):
self.mainForm.addRow(
self.tr("Run backup when the project is closed"),
self.backupOnClose,
self.tr("Can be overridden for individual projects in project settings.")
self.tr("Can be overridden for individual projects in Project Settings.")
)
## Ask before backup