From 26c49e7c225000b12ec964784e5b7cfb5135733b Mon Sep 17 00:00:00 2001
From: "Veronica K. B. Olsen" <1619840+vkbo@users.noreply.github.com>
Date: Wed, 3 Mar 2021 21:52:30 +0100
Subject: [PATCH] Add a translations credit section to the About dialog
---
nw/__init__.py | 4 ++--
nw/gui/about.py | 61 ++++++++++++++++++++++++++++++-------------------
2 files changed, 39 insertions(+), 26 deletions(-)
diff --git a/nw/__init__.py b/nw/__init__.py
index a2122e73..596e3447 100644
--- a/nw/__init__.py
+++ b/nw/__init__.py
@@ -74,8 +74,8 @@ __helpurl__ = "https://github.com/vkbo/novelWriter/discussions"
__releaseurl__ = "https://github.com/vkbo/novelWriter/releases/latest"
__docurl__ = "https://novelwriter.readthedocs.io"
__credits__ = [
- "Veronica Berglyd Olsen (developer)",
- "Marian Lückhof (contributor, tester)"
+ "Veronica Berglyd Olsen (author, maintainer)",
+ "Marian Lückhof (concept, testing)"
]
##
diff --git a/nw/gui/about.py b/nw/gui/about.py
index f2335c1a..5e0c9da7 100644
--- a/nw/gui/about.py
+++ b/nw/gui/about.py
@@ -135,8 +135,8 @@ class GuiAbout(QDialog):
webLink = f"{nw.__domain__:s}"
aboutMsg = (
"
{title1}
"
- "{copyright}.
"
- "{website}
"
+ "{copy}
"
+ "{link}
"
"{intro}
"
"{license1}
"
"{license2}
"
@@ -144,27 +144,27 @@ class GuiAbout(QDialog):
"{title2}
"
"{credits}
"
).format(
- title1 = self.tr("About novelWriter"),
- copyright = nw.__copyright__,
- website = self.tr("Website: {0}").format(webLink),
- title2 = self.tr("Credits"),
- credits = "
".join(["%s%s" % (listPrefix, x) for x in nw.__credits__]),
- intro = self.tr(
+ title1 = self.tr("About novelWriter"),
+ copy = nw.__copyright__,
+ link = self.tr("Website: {0}").format(webLink),
+ title2 = self.tr("Credits"),
+ credits = "
".join(["%s%s" % (listPrefix, x) for x in nw.__credits__]),
+ intro = self.tr(
"novelWriter is a markdown-like text editor designed for organising and "
"writing novels. It is written in Python 3 with a Qt5 GUI, using PyQt5."
),
- license1 = self.tr(
+ license1 = self.tr(
"novelWriter is free software: you can redistribute it and/or modify it "
"under the terms of the GNU General Public License as published by the "
"Free Software Foundation, either version 3 of the License, or (at your "
"option) any later version."
),
- license2 = self.tr(
+ license2 = self.tr(
"novelWriter is distributed in the hope that it will be useful, but "
"WITHOUT ANY WARRANTY; without even the implied warranty of "
"MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
),
- license3 = self.tr(
+ license3 = self.tr(
"See the Licence tab for the full licence text, or visit the "
"GNU website at {0} for more details."
).format(
@@ -172,34 +172,47 @@ class GuiAbout(QDialog):
),
)
+ trOrder = self.tr("{0}{1}: {2}")
+ i18n = [
+ ("American English", "Veronica Berglyd Olsen"),
+ ("British English", "Veronica Berglyd Olsen"),
+ ("Français", "Jan Lüdke (jyhelle)"),
+ ("Norsk Bokmål", "Veronica Berglyd Olsen"),
+ ("Português", "Bruno Meneguello"),
+ ]
+ aboutMsg += "%s
%s
" % (
+ self.tr("Translations"),
+ "
".join([trOrder.format(listPrefix, n, c) for n, c in i18n]),
+ )
+
theTheme = self.theParent.theTheme
theIcons = self.theParent.theTheme.theIcons
- if theTheme.themeName:
+ if theTheme.themeName and theTheme.themeAuthor != "N/A":
aboutMsg += "%s
%s
%s
%s
" % (
- self.tr("Theme: {0}").format(theTheme.themeName),
- self.tr("Author: {0}").format(theTheme.themeAuthor),
- self.tr("Credit: {0}").format(theTheme.themeCredit),
- self.tr("Licence: {0}").format(
+ self.tr("Theme: {0}").format(theTheme.themeName),
+ self.tr("Author: {0}").format(theTheme.themeAuthor),
+ self.tr("Credit: {0}").format(theTheme.themeCredit),
+ self.tr("Licence: {0}").format(
f"{theTheme.themeLicense}"
)
)
if theIcons.themeName:
aboutMsg += "%s
%s
%s
%s
" % (
- self.tr("Icons: {0}").format(theIcons.themeName),
- self.tr("Author: {0}").format(theIcons.themeAuthor),
- self.tr("Credit: {0}").format(theIcons.themeCredit),
- self.tr("Licence: {0}").format(
+ self.tr("Icons: {0}").format(theIcons.themeName),
+ self.tr("Author: {0}").format(theIcons.themeAuthor),
+ self.tr("Credit: {0}").format(theIcons.themeCredit),
+ self.tr("Licence: {0}").format(
f"{theIcons.themeLicense}"
)
)
if theTheme.syntaxName:
aboutMsg += "%s
%s
%s
%s
" % (
- self.tr("Syntax: {0}").format(theTheme.syntaxName),
- self.tr("Author: {0}").format(theTheme.syntaxAuthor),
- self.tr("Credit: {0}").format(theTheme.syntaxCredit),
- self.tr("Licence: {0}").format(
+ self.tr("Syntax: {0}").format(theTheme.syntaxName),
+ self.tr("Author: {0}").format(theTheme.syntaxAuthor),
+ self.tr("Credit: {0}").format(theTheme.syntaxCredit),
+ self.tr("Licence: {0}").format(
f"{theTheme.syntaxLicense}"
)
)