diff --git a/i18n/nw_en_US.ts b/i18n/nw_en_US.ts index d9188d2f..0c61be13 100644 --- a/i18n/nw_en_US.ts +++ b/i18n/nw_en_US.ts @@ -1,6 +1,5 @@ - - + Common @@ -335,7 +334,7 @@ GuiAbout - + About novelWriter @@ -350,69 +349,84 @@ - + Website: {0} - + Credits - + 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. - + 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. - + Theme: {0} - - Author: {0} - - - - - Credit: {0} - - - - + Icons: {0} - + Syntax: {0} - + Licence License - + 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. - + See the Licence tab for the full licence text, or visit the GNU website at {0} for more details. See the License tab for the full license text, or visit the GNU website at {0} for more details. - - Licence: {0} - License: {0} + + Translations + + + + + Author + + + + + Credit + + + + + Concept + + + + + i18n + + + + + Developer + @@ -3596,37 +3610,37 @@ GuiProjectEditReplace - + Keyword - + Replace With - + Save entry - + Add new entry - + Delete selected entry - + Text Replace List for Preview and Export - + Select item to edit @@ -3634,77 +3648,77 @@ GuiProjectEditStatus - + Save - + Colour Color - + Novel File Status Levels - + Note File Importance Levels - + Select Colour Select Color - + New Item - + Label - + Usage - + Add new entry - + Delete selected entry - + Select item to edit - + Cannot delete a status item that is in use. - + Not in use - + Used once - + Used by {0} items diff --git a/i18n/nw_fr.ts b/i18n/nw_fr.ts index ed010368..f70dd561 100644 --- a/i18n/nw_fr.ts +++ b/i18n/nw_fr.ts @@ -3,72 +3,72 @@ Common - + in the future dans le futur - + just now maintenant - + a minute ago il y a une minute - + {0} minutes ago il y a {0} minutes - + an hour ago il y a une heure - + {0} hours ago il y a {0} heures - + a day ago hier - + {0} days ago il y a {0} jours - + a week ago il y a une semaine - + {0} weeks ago il y a {0} semaines - + a month ago il y a un mois - + {0} months ago il y a {0} mois - + a year ago il y a un an - + {0} years ago il y a {0} ans @@ -334,7 +334,7 @@ GuiAbout - + About novelWriter À propos de novelWriter @@ -349,70 +349,85 @@ Version - + Licence Licence - + Website: {0} Site Web: {0} - + Credits Crédits - + 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. novelWriter est un éditeur markdown pour organiser et écrire des romans. Il est écrit en Python 3 avec un interface utilisateur Qt5, basé sur PyQt5. - + 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. novelWriter est un logiciel libre: vous pouvez le redistribuer et/ou le modifier selon les termes de la licence publique générale GNU telle que publiée par la Free Software Foundation, dans la version 3 de cette licence ou (à votre choix) dans une version plus récente. - + 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. novelWriter est diffusé dans l'espoir qu'il sera utile, mais SANS GARANTIE D'AUCUNE SORTE, en particulier cconcernant sa QUALITÉ MARCHANDE ou son APTITUDE À UN USAGE SPÉCIFIQUE. - + See the Licence tab for the full licence text, or visit the GNU website at {0} for more details. Ouvrez l'onglet Licence pour voir le texte complet de la licence (en anglais), ou visitez le site de GNU à l'adresse {0} pour en lire une traduction ou pour obtenir plus de détails. - + Theme: {0} Thème: {0} - - Author: {0} - Auteur: {0} - - - - Credit: {0} - Crédits: {0} - - - - Licence: {0} - Licence: {0} - - - + Icons: {0} Icônes: {0} - + Syntax: {0} Syntaxe: {0} + + + Translations + + + + + Author + Auteur + + + + Credit + Crédits + + + + Concept + + + + + i18n + + + + + Developer + + GuiBuildNovel @@ -3537,57 +3552,57 @@ GuiProjectEditMain - + Project Settings Paramètres du projet - + Working title Titre de travail - + Should be set only once. Evitez de le changer ensuite. - + Novel title Titre du roman - + Change whenever you want! Modifiez le à volonté ! - + Author(s) Auteur(s) - + One name per line. Un nom par ligne. - + Default Défauts - + Spell check language Langue du texte - + Overrides main preferences. Prioritaire sur les réglages de nW. - + No backup on close Ne pas sauvegarder en fermant @@ -3595,92 +3610,117 @@ GuiProjectEditReplace - + Keyword Mot-clé - + Replace With Remplacer par - + Save entry Enregistrer cette entrée - + Add new entry Ajouter une nouvelle entrée - + Delete selected entry Supprimer l'entrée sélectionnée - + Text Replace List for Preview and Export Remplacements dans le texte pour les aperçus et exportations + + + Select item to edit + + GuiProjectEditStatus - - New - Nouveau - - - - Delete - Effacer - - - + Save Enregistrer - + Colour Couleur - - Name - Nom - - - + Novel File Status Levels États des fichiers du roman - + Note File Importance Levels Importance des fichiers de notes - + Select Colour Choisir la couleur - + New Item Nouvel item - - Cannot delete status item that is in use. - On ne peut pas retirer un élément d'état tant qu'il est utilisé. + + Label + Label - - {0} [{1}] - {0} [{1}] + + Usage + + + + + Add new entry + Ajouter une nouvelle entrée + + + + Delete selected entry + Supprimer l'entrée sélectionnée + + + + Select item to edit + + + + + Cannot delete a status item that is in use. + + + + + Not in use + + + + + Used once + + + + + Used by {0} items + diff --git a/i18n/nw_nb_NO.ts b/i18n/nw_nb_NO.ts index 679c46b0..ce791594 100644 --- a/i18n/nw_nb_NO.ts +++ b/i18n/nw_nb_NO.ts @@ -1,6 +1,5 @@ - - + Common @@ -335,7 +334,7 @@ GuiAbout - + About novelWriter Om novelWriter @@ -350,70 +349,85 @@ Utgivelse - + Licence Lisens - + Website: {0} Nettside: {0} - + Credits Krediteringer - + 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. novelWriter er en markdown-liknende teksteditor laget for å kunne organisere og skrive romaner og noveller. Programmet er skrevet i Python 3 med et brukergrensesnitt i Qt 5 via PyQt5. - + 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. novelWriter er gratis programvare: du kan videredistribuere det og/eller modifisere det under vilkårene i GNU General Public License som utgitt av Free Software Foundation, enten versjon 3 av Lisensen, eller (etter eget valg) enhver senere versjon. - + 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. novelWriter er distribuert i håp om at det vil være nyttig, men UTEN NOEN GARANTI; uten selv en underforstått garanti vedrørende SALGBARHET eller EGNETHET TIL ET BESTEMT FORMÅL. Se GNU General Public Licence for flere detaljer. - + See the Licence tab for the full licence text, or visit the GNU website at {0} for more details. Se lisens-fanen for fulltekst-versjonen av lisensen (på engelsk), eller besøk GNU sin nettside på {0} for mer informasjon. - + Theme: {0} Tema: {0} - - Author: {0} - Ansvarlig: {0} - - - - Credit: {0} - Kreditert: {0} - - - - Licence: {0} - Lisens: {0} - - - + Icons: {0} Ikoner: {0} - + Syntax: {0} Syntaks: {0} + + + Translations + Oversettelser + + + + Author + Ansvarlig + + + + Credit + Kreditert + + + + Concept + Konsept + + + + i18n + + + + + Developer + Utvikler + GuiBuildNovel @@ -3596,37 +3610,37 @@ GuiProjectEditReplace - + Keyword Kodeord - + Replace With Erstatt med - + Save entry Lagre tekst - + Add new entry Legg til ny - + Delete selected entry Slett valgte element - + Text Replace List for Preview and Export Erstatningsliste for forhåndsvisning og eksport - + Select item to edit Velg enhet å redigere @@ -3634,77 +3648,77 @@ GuiProjectEditStatus - + Save Lagre - + Colour Farge - + Novel File Status Levels Statusnivåer i roman-filer - + Note File Importance Levels Viktighetsnivåer i notatfiler - + Select Colour Velg farge - + New Item Legg til - + Label Navn - + Usage Bruk - + Add new entry Legg til ny - + Delete selected entry Slett valgte element - + Select item to edit Velg enhet å redigere - + Cannot delete a status item that is in use. Kan ikke slette status som er i bruk. - + Not in use Ikke i bruk - + Used once Brukt ett sted - + Used by {0} items Brukt {0} steder diff --git a/i18n/nw_pt.ts b/i18n/nw_pt.ts index 86e0e7b1..0d9d964e 100644 --- a/i18n/nw_pt.ts +++ b/i18n/nw_pt.ts @@ -1,6 +1,5 @@ - - + Common @@ -335,47 +334,47 @@ GuiAbout - + About novelWriter Sobre o novelWriter - + 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. novelWriter é um editor de texto som sintaxe semelhante ao markdown, projetado para a escrita e organização de livros. É escrito em Python 3 com interface de usuário em Qr5, usando PyQt5. - + 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. novelWriter é distribuído na especativa de que seja útil, mas SEM NENHUMA GARANTIA, nem mesmo a garantia implícita de COMERCIALIZAÇÃO ou ADEQUAÇÃO PARA UM PROPÓSITO ESPECÍFICO. - + Credits Créditos - + 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. novelWriter é um software livre: você pode redistribuí-lo e/ou modificá-lo sob os termos da GNU Licença Pública Geral, assim como publicada pela Free Software Foundation, tanto na versão 3 da licença, ou (à sua escolha) qualquer versão subsequente. - + Theme: {0} Tema: {0} - + Icons: {0} Ícones: {0} - + Syntax: {0} Sintaxe: {0} - + Website: {0} Website: {0} @@ -390,29 +389,44 @@ Lançamento - + See the Licence tab for the full licence text, or visit the GNU website at {0} for more details. Veja a aba de Licença para o texto completo de licença, ou visite o website da GNU em {0} para mais detalhes. - + Licence Licença - - Author: {0} - Autor: {0} + + Translations + - - Credit: {0} - Créditos: {0} + + Author + Autor - - Licence: {0} - Licença: {0} + + Credit + Créditos + + + + Concept + + + + + i18n + + + + + Developer + @@ -3628,7 +3642,7 @@ Select item to edit - Selecione o item para editar + Selecione um item para editar diff --git a/nw/__init__.py b/nw/__init__.py index a2122e73..d775ea96 100644 --- a/nw/__init__.py +++ b/nw/__init__.py @@ -73,10 +73,6 @@ __issuesurl__ = "https://github.com/vkbo/novelWriter/issues" __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)" -] ## # Logging diff --git a/nw/gui/about.py b/nw/gui/about.py index f2335c1a..3ee819bb 100644 --- a/nw/gui/about.py +++ b/nw/gui/about.py @@ -131,12 +131,10 @@ class GuiAbout(QDialog): def _fillAboutPage(self): """Generate the content for the About page. """ - listPrefix = "  •  " - webLink = f"{nw.__domain__:s}" aboutMsg = ( "

{title1}

" - "

{copyright}.

" - "

{website}

" + "

{copy}

" + "

{link}

" "

{intro}

" "

{license1}

" "

{license2}

" @@ -144,27 +142,31 @@ 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(f"{nw.__domain__}"), + title2 = self.tr("Credits"), + credits = self._wrapTable([ + (self.tr("Developer"), "Veronica Berglyd Olsen"), + (self.tr("Concept"), "Veronica Berglyd Olsen, Marian Lückhof"), + (self.tr("i18n"), "Bruno Meneguello"), + ]), + 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,36 +174,49 @@ class GuiAbout(QDialog): ), ) + aboutMsg += "

%s

%s

" % ( + self.tr("Translations"), + self._wrapTable([ + ("English", "Veronica Berglyd Olsen"), + ("Français", "Jan Lüdke (jyhelle)"), + ("Norsk Bokmål", "Veronica Berglyd Olsen"), + ("Português", "Bruno Meneguello"), + ]) + ) + theTheme = self.theParent.theTheme theIcons = self.theParent.theTheme.theIcons - if theTheme.themeName: - aboutMsg += "

%s

%s
%s
%s

" % ( + if theTheme.themeName and theTheme.themeAuthor != "N/A": + licURL = f"{theTheme.themeLicense}" + aboutMsg += "

%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( - f"{theTheme.themeLicense}" - ) + self._wrapTable([ + (self.tr("Author"), theTheme.themeAuthor), + (self.tr("Credit"), theTheme.themeCredit), + (self.tr("Licence"), licURL), + ]) ) if theIcons.themeName: - aboutMsg += "

%s

%s
%s
%s

" % ( + licURL = f"{theIcons.themeLicense}" + aboutMsg += "

%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( - f"{theIcons.themeLicense}" - ) + self._wrapTable([ + (self.tr("Author"), theIcons.themeAuthor), + (self.tr("Credit"), theIcons.themeCredit), + (self.tr("Licence"), licURL), + ]) ) if theTheme.syntaxName: - aboutMsg += "

%s

%s
%s
%s

" % ( + licURL = f"{theTheme.syntaxLicense}" + aboutMsg += "

%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( - f"{theTheme.syntaxLicense}" - ) + self._wrapTable([ + (self.tr("Author"), theTheme.syntaxAuthor), + (self.tr("Credit"), theTheme.syntaxCredit), + (self.tr("Licence"), licURL), + ]) ) self.pageAbout.setHtml(aboutMsg) @@ -232,6 +247,16 @@ class GuiAbout(QDialog): self.pageLicense.setHtml("Error loading licence text ...") return + def _wrapTable(self, theData): + """Wrap a list of label/value tuples in a html table. + """ + theTable = [] + for aLabel, aValue in theData: + theTable.append( + f"{aLabel}:{aValue}" + ) + return "%s
" % "".join(theTable) + def _setStyleSheet(self): """Set stylesheet for all browser tabs """ @@ -242,6 +267,9 @@ class GuiAbout(QDialog): "a {{" " color: rgb({hColR},{hColG},{hColB});" "}}\n" + "td {{" + " padding-right: 0.8em;" + "}}\n" ).format( hColR = self.theParent.theTheme.colHead[0], hColG = self.theParent.theTheme.colHead[1],