From 6d45194253bc287d2143e5cd947ffc572da7b111 Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 5 Feb 2023 14:13:21 +0100 Subject: [PATCH 1/8] Update completed translations and add Russian project file --- i18n/nw_de_DE.ts | 88 ++++++++--------- i18n/nw_en_US.ts | 88 ++++++++--------- i18n/nw_es_419.ts | 88 ++++++++--------- i18n/nw_fr_FR.ts | 90 +++++++++--------- i18n/nw_nb_NO.ts | 88 ++++++++--------- i18n/nw_nl_NL.ts | 90 +++++++++--------- novelwriter/assets/i18n/project_ru_RU.json | 105 +++++++++++++++++++++ 7 files changed, 371 insertions(+), 266 deletions(-) create mode 100644 novelwriter/assets/i18n/project_ru_RU.json diff --git a/i18n/nw_de_DE.ts b/i18n/nw_de_DE.ts index 6cd62475..0463c653 100644 --- a/i18n/nw_de_DE.ts +++ b/i18n/nw_de_DE.ts @@ -4,72 +4,72 @@ Common - + in the future in der Zukunft - + just now gerade eben - + a minute ago vor einer Minute - + {0} minutes ago {0} Minuten her - + an hour ago eine Stunde her - + {0} hours ago {0} Stunden her - + a day ago einen Tag her - + {0} days ago {0} Tage her - + a week ago eine Woche her - + {0} weeks ago {0} Wochen her - + a month ago einen Monat her - + {0} months ago {0} Monate her - + a year ago ein Jahr her - + {0} years ago {0} Jahre her @@ -2884,72 +2884,72 @@ GuiProjectDetailsContents - + Table of Contents Inhaltsverzeichnis - + Title Name - + Words Wörter - + Pages Seiten - + Page Seite - + Progress Fortschritt - + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. Üblicherweise sind ca. 350 Wörter auf einer Buchseite (5 x 8 Zoll, 11 pt). - + Start counting page numbers from this page. Ab dieser Seite mit arabischen Ziffern beginnen zu zählen. - + Assume a new chapter or partition always start on an odd numbered page. Angenommen ein neues Kapitel oder neuer Teil beginnt immer auf einer ungeraden Seite. - + Words per page Wörter pro Seite - + Count pages from Seiten zählen ab - + Clear double pages Leere linke Seiten auslassen - + END ENDE - + Untitled Ohne Titel @@ -2957,45 +2957,45 @@ GuiProjectDetailsMain - - Working Title: {0} - Arbeitstitel: {0} - - - - By {0} - Von {0} - - - + Words Wörter - + Chapters Kapitel - + Scenes Szenen - + Revisions Revisionen - + Editing Time Bearbeitungszeit - + Path Pfad + + + Project: {0} + Projekt: {0} + + + + By {0} + Von {0} + GuiProjectEditMain diff --git a/i18n/nw_en_US.ts b/i18n/nw_en_US.ts index 40b5694d..55ae7e4a 100644 --- a/i18n/nw_en_US.ts +++ b/i18n/nw_en_US.ts @@ -4,72 +4,72 @@ Common - + in the future in the future - + just now just now - + a minute ago a minute ago - + {0} minutes ago {0} minutes ago - + an hour ago an hour ago - + {0} hours ago {0} hours ago - + a day ago a day ago - + {0} days ago {0} days ago - + a week ago a week ago - + {0} weeks ago {0} weeks ago - + a month ago a month ago - + {0} months ago {0} months ago - + a year ago a year ago - + {0} years ago {0} years ago @@ -2884,72 +2884,72 @@ GuiProjectDetailsContents - + Table of Contents Table of Contents - + Title Title - + Words Words - + Pages Pages - + Page Page - + Progress Progress - + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. Typical word count for a 5 by 8 inch book page with 11 pt font is 350. - + Start counting page numbers from this page. Start counting page numbers from this page. - + Assume a new chapter or partition always start on an odd numbered page. Assume a new chapter or partition always start on an odd numbered page. - + Words per page Words per page - + Count pages from Count pages from - + Clear double pages Clear double pages - + END END - + Untitled Untitled @@ -2957,45 +2957,45 @@ GuiProjectDetailsMain - - Working Title: {0} - Working Title: {0} - - - - By {0} - By {0} - - - + Words Words - + Chapters Chapters - + Scenes Scenes - + Revisions Revisions - + Editing Time Editing Time - + Path Path + + + Project: {0} + Project: {0} + + + + By {0} + By {0} + GuiProjectEditMain diff --git a/i18n/nw_es_419.ts b/i18n/nw_es_419.ts index 68af1721..6c15bc07 100644 --- a/i18n/nw_es_419.ts +++ b/i18n/nw_es_419.ts @@ -4,72 +4,72 @@ Common - + in the future en el futuro - + just now ahora mismo - + a minute ago hace un minuto - + {0} minutes ago hace {0} minutos - + an hour ago hace una hora - + {0} hours ago hace {0} horas - + a day ago hace un día - + {0} days ago hace {0} días - + a week ago hace una semana - + {0} weeks ago hace {0} semanas - + a month ago hace un mes - + {0} months ago hace {0} meses - + a year ago hace un año - + {0} years ago hace {0} años @@ -2884,72 +2884,72 @@ GuiProjectDetailsContents - + Table of Contents Tabla de Contenido - + Title Título - + Words Palabras - + Pages Páginas - + Page Página - + Progress Progreso - + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. El total de palabras característico para una página de libro de 12cm por 20cm con una fuente a 11pt es de 350. - + Start counting page numbers from this page. Comenzar a contar los números de página a partir de esta página. - + Assume a new chapter or partition always start on an odd numbered page. Dar por sentado que un capítulo o partición nueva siempre comenzará en una página impar. - + Words per page Palabras por página - + Count pages from Contar páginas desde - + Clear double pages Eliminar páginas dobles - + END FIN - + Untitled Sin Título @@ -2957,45 +2957,45 @@ GuiProjectDetailsMain - - Working Title: {0} - Título Provisional: {0} - - - - By {0} - Por {0} - - - + Words Palabras - + Chapters Capítulos - + Scenes Escenas - + Revisions Revisiones - + Editing Time Tiempo de Edición - + Path Ruta + + + Project: {0} + Proyecto: {0} + + + + By {0} + Por {0} + GuiProjectEditMain diff --git a/i18n/nw_fr_FR.ts b/i18n/nw_fr_FR.ts index e3345f58..71246a99 100644 --- a/i18n/nw_fr_FR.ts +++ b/i18n/nw_fr_FR.ts @@ -4,72 +4,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 @@ -2884,72 +2884,72 @@ GuiProjectDetailsContents - + Table of Contents Table des matières - + Title Titre - + Words Mots - + Pages Pages - + Page Page - + Progress Progression - + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. Le nombre de mots moyen pour une page de livre de format 13 X 20 cm avec une police en taille 11pt est de 350. - + Start counting page numbers from this page. Commencer à compter les pages depuis cette page. - + Assume a new chapter or partition always start on an odd numbered page. On suppose qu'un nouveau chapitre ou une nouvelle partie débute sur une page de droite, numérotée impaire. - + Words per page Mots par page - + Count pages from Compter les pages depuis - + Clear double pages Ignorer les doubles pages - + END FIN - + Untitled Sans titre @@ -2957,45 +2957,45 @@ GuiProjectDetailsMain - - Working Title: {0} - Titre de travail : {0} - - - - By {0} - Par {0} - - - + Words Mots - + Chapters Chapitres - + Scenes Scènes - + Revisions Révisions - + Editing Time Durée d'édition - + Path Chemin + + + Project: {0} + Projet : {0} + + + + By {0} + Par {0} + GuiProjectEditMain @@ -3782,7 +3782,7 @@ Could not open project with path: {0} - + N'a pas pu ouvrir le projet avec le chemin : {0} diff --git a/i18n/nw_nb_NO.ts b/i18n/nw_nb_NO.ts index 55401fd7..32ebc590 100644 --- a/i18n/nw_nb_NO.ts +++ b/i18n/nw_nb_NO.ts @@ -4,72 +4,72 @@ Common - + in the future i fremtiden - + just now nå nettopp - + a minute ago for et minutt siden - + {0} minutes ago for {0} minutter siden - + an hour ago for en time siden - + {0} hours ago for {0} timer siden - + a day ago for en dag siden - + {0} days ago for {0} dager siden - + a week ago for en uke siden - + {0} weeks ago for {0} uker siden - + a month ago for en måned siden - + {0} months ago for {0} måneder siden - + a year ago for et år siden - + {0} years ago for {0} år siden @@ -2884,72 +2884,72 @@ GuiProjectDetailsContents - + Table of Contents Innholdsfortegnelse - + Title Tittel - + Words Ord - + Pages Sider - + Page Side - + Progress Fremdrift - + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. Typisk antall ord for en 5 x 8 tommers bokside med 11 pt tekst er 350. - + Start counting page numbers from this page. Begynn sidetall fra denne siden. - + Assume a new chapter or partition always start on an odd numbered page. Beregn at nye kapitler og partisjoner alltid starter på en høyreside. - + Words per page Ord per side - + Count pages from Tell sider fra - + Clear double pages Tøm doble sider - + END SLUTT - + Untitled Uten tittel @@ -2957,45 +2957,45 @@ GuiProjectDetailsMain - - Working Title: {0} - Arbeidstittel: {0} - - - - By {0} - Av {0} - - - + Words Ord - + Chapters Kapitler - + Scenes Scener - + Revisions Revisjoner - + Editing Time Redigeringstid - + Path Filbane + + + Project: {0} + Prosjekt: {0} + + + + By {0} + Av {0} + GuiProjectEditMain diff --git a/i18n/nw_nl_NL.ts b/i18n/nw_nl_NL.ts index bc3d3738..249938ab 100644 --- a/i18n/nw_nl_NL.ts +++ b/i18n/nw_nl_NL.ts @@ -4,72 +4,72 @@ Common - + in the future in de toekomst - + just now zojuist - + a minute ago een minuut geleden - + {0} minutes ago {0} minuten geleden - + an hour ago een uur geleden - + {0} hours ago {0} uur geleden - + a day ago een dag geleden - + {0} days ago {0} dagen geleden - + a week ago een week geleden - + {0} weeks ago {0} weken geleden - + a month ago een maand geleden - + {0} months ago {0} maanden geleden - + a year ago een jaar geleden - + {0} years ago {0} jaren geleden @@ -2884,72 +2884,72 @@ GuiProjectDetailsContents - + Table of Contents Inhoudsopgave - + Title Titel - + Words Woorden - + Pages Pagina's - + Page Pagina - + Progress Voortgang - + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. Typische woord telling voor een 5 bij 8 inch boek pagina met 11 pt lettertype is 350. - + Start counting page numbers from this page. Begin met het tellen van paginanummers vanaf deze pagina. - + Assume a new chapter or partition always start on an odd numbered page. Neem aan dat een nieuw hoofdstuk of partitie altijd op een oneven genummerde pagina begint. - + Words per page Woorden per pagina - + Count pages from Pagina's tellen vanaf - + Clear double pages Dubbele pagina's wissen - + END EINDE - + Untitled Naamloos @@ -2957,45 +2957,45 @@ GuiProjectDetailsMain - - Working Title: {0} - Werktitel: {0} - - - - By {0} - Door {0} - - - + Words Woorden - + Chapters Hoofdstukken - + Scenes Scènes - + Revisions Revisies - + Editing Time Bewerk tijd - + Path Pad + + + Project: {0} + Project: {0} + + + + By {0} + Door {0} + GuiProjectEditMain @@ -3782,7 +3782,7 @@ Could not open project with path: {0} - + Kon project niet openen met pad: {0} diff --git a/novelwriter/assets/i18n/project_ru_RU.json b/novelwriter/assets/i18n/project_ru_RU.json new file mode 100644 index 00000000..9bebab4d --- /dev/null +++ b/novelwriter/assets/i18n/project_ru_RU.json @@ -0,0 +1,105 @@ +{ + "Synopsis": "Сводка", + "Comment": "Комментарий", + "Notes": "Заметки", + "0": "Ноль", + "1": "Один", + "2": "Два", + "3": "Три", + "4": "Четыре", + "5": "Пять", + "6": "Шесть", + "7": "Семь", + "8": "Восемь", + "9": "Девять", + "10": "Десять", + "11": "Одиннадцать", + "12": "Двенадцать", + "13": "Тринадцать", + "14": "Четырнадцать", + "15": "Пятнадцать", + "16": "Шестнадцать", + "17": "Семнадцать", + "18": "Восемнадцатая", + "19": "Девятнадцать", + "20": "Двадцать", + "21": "Двадцать один", + "22": "Двадцать два", + "23": "Двадцать три", + "24": "Двадцать четыре", + "25": "Двадцать пять", + "26": "Двадцать шесть", + "27": "Двадцать семь", + "28": "Двадцать восемь", + "29": "Двадцать девять", + "30": "Тридцать", + "31": "Тридцать один", + "32": "Тридцать два", + "33": "Тридцать три", + "34": "Тридцать четыре", + "35": "Тридцать пятая", + "36": "Тридцать пять", + "37": "Тридцать семь", + "38": "Тридцать восемь", + "39": "Тридцать девять", + "40": "Сорок", + "41": "Сорок один", + "42": "Сорок два", + "43": "Сорок три", + "44": "Сорок четыре", + "45": "Сорок пять", + "46": "Сорок шесть", + "47": "Сорок семь", + "48": "Сорок восемь", + "49": "Сорок девять", + "50": "Пятьдесят", + "51": "Пятьдесят один", + "52": "Пятьдесят два", + "53": "Пятьдесят три", + "54": "Пятьдесят четыре", + "55": "Пятьдесят пять", + "56": "Пятьдесят шесть", + "57": "Пятьдесят семь", + "58": "Пятьдесят восемь", + "59": "Пятьдесят девять", + "60": "Шестьдесят", + "61": "Шестьдесят один", + "62": "Шестьдесят два", + "63": "Шестьдесят три", + "64": "Шестьдесят четыре", + "65": "Шестьдесят пять", + "66": "Шестьдесят шесть", + "67": "Шестьдесят семь", + "68": "Шестьдесят восемь", + "69": "Шестьдесят девять", + "70": "Семьдесят", + "71": "Семьдесят один", + "72": "Семьдесят два", + "73": "Семьдесят три", + "74": "Семьдесят четыре", + "75": "Семьдесят пять", + "76": "Семьдесят шесть", + "77": "Семьдесят семь", + "78": "Семьдесят восемь", + "79": "Семьдесят девять", + "80": "Восемьдесят", + "81": "Восемьдесят один", + "82": "Восемьдесят два", + "83": "Восемьдесят три", + "84": "Восемьдесят четыре", + "85": "Восемьдесят пять", + "86": "Восемьдесят шесть", + "87": "Восемьдесят семь", + "88": "Восемьдесят восемь", + "89": "Восемьдесят девять", + "90": "Девяносто", + "91": "Девяносто один", + "92": "Девяносто два", + "93": "Девяносто три", + "94": "Девяносто четыре", + "95": "Девяносто пять", + "96": "Девяносто шесть", + "97": "Девяносто семь", + "98": "Девяносто восемь", + "99": "Девяносто девять" +} From ee550c22130759ce3bbcce3bf45f3962a0b69475 Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 12 Feb 2023 08:31:55 +0100 Subject: [PATCH 2/8] Update translations --- i18n/nw_de_DE.ts | 75 ++++++++++++--------- i18n/nw_en_US.ts | 75 ++++++++++++--------- i18n/nw_es_419.ts | 75 ++++++++++++--------- i18n/nw_nb_NO.ts | 75 ++++++++++++--------- i18n/nw_pt_BR.ts | 165 ++++++++++++++++++++++++---------------------- 5 files changed, 260 insertions(+), 205 deletions(-) diff --git a/i18n/nw_de_DE.ts b/i18n/nw_de_DE.ts index 0463c653..42520e2a 100644 --- a/i18n/nw_de_DE.ts +++ b/i18n/nw_de_DE.ts @@ -757,32 +757,32 @@ GuiDocEditFooter - + Status Status - + Line: {0} ({1}) Zeile: {0} ({1}) - + Words: {0} ({1}) Wörter: {0} ({1}) - + Document size is {0} bytes Dateigröße: {0} bytes - + Words: {0} selected Wörter: {0} markiert - + Character count: {0} Zeichenanzahl: {0} @@ -790,22 +790,22 @@ GuiDocEditHeader - + Edit document label Name des Dokuments ändern - + Search document Dokument durchsuchen - + Toggle Focus Mode Ablenkungsfrei ein/aus - + Close the document Dokument schließen @@ -813,58 +813,58 @@ GuiDocEditSearch - - + + Search Suchen - + Replace Ersetzen - + Case Sensitive Groß-/Kleinschreibung beachten - + Whole Words Only Nur ganze Wörter - + RegEx Mode RegEx-Modus - + Loop Search Suche am Anfang fortsetzen - + Search Next File Nächstes Dokument durchsuchen - + Preserve Case Groß-/Kleinschreibung beibehalten - + Close Search Suche schließen - + Find in current document Im geöffneten Dokument suchen - + Find and replace in current document Im geöffneten Dokument suchen und ersetzen @@ -2050,55 +2050,66 @@ GuiNovelToolBar - + Outline of {0} Gliederung für {0} - + Novel Root Hauptordner für den Roman - + Refresh Aktualisieren - + Last Column Letzte Spalte - + Hidden Ausblenden - + Point of View Character Erzählperspektive - + Focus Character Figur im Mittelpunkt - + Novel Plot Romanhandlung - + + + Column Size + Spaltenbreite + + + More Options Weitere Optionen + + + Maximum column size in % + Maximale Spaltenbreite in % + GuiNovelTree - + No meta data Keine Meta-Daten diff --git a/i18n/nw_en_US.ts b/i18n/nw_en_US.ts index 55ae7e4a..dc1986fc 100644 --- a/i18n/nw_en_US.ts +++ b/i18n/nw_en_US.ts @@ -757,32 +757,32 @@ GuiDocEditFooter - + Status Status - + Line: {0} ({1}) Line: {0} ({1}) - + Words: {0} ({1}) Words: {0} ({1}) - + Document size is {0} bytes Document size is {0} bytes - + Words: {0} selected Words: {0} selected - + Character count: {0} Character count: {0} @@ -790,22 +790,22 @@ GuiDocEditHeader - + Edit document label Edit document label - + Search document Search document - + Toggle Focus Mode Toggle Focus Mode - + Close the document Close the document @@ -813,58 +813,58 @@ GuiDocEditSearch - - + + Search Search - + Replace Replace - + Case Sensitive Case Sensitive - + Whole Words Only Whole Words Only - + RegEx Mode RegEx Mode - + Loop Search Loop Search - + Search Next File Search Next File - + Preserve Case Preserve Case - + Close Search Close Search - + Find in current document Find in current document - + Find and replace in current document Find and replace in current document @@ -2050,55 +2050,66 @@ GuiNovelToolBar - + Outline of {0} Outline of {0} - + Novel Root Novel Root - + Refresh Refresh - + Last Column Last Column - + Hidden Hidden - + Point of View Character Point of View Character - + Focus Character Focus Character - + Novel Plot Novel Plot - + + + Column Size + Column Size + + + More Options More Options + + + Maximum column size in % + Maximum column size in % + GuiNovelTree - + No meta data No meta data diff --git a/i18n/nw_es_419.ts b/i18n/nw_es_419.ts index 6c15bc07..bf5ca215 100644 --- a/i18n/nw_es_419.ts +++ b/i18n/nw_es_419.ts @@ -757,32 +757,32 @@ GuiDocEditFooter - + Status Estado - + Line: {0} ({1}) Línea: {0} ({1}) - + Words: {0} ({1}) Palabras: {0} ({1}) - + Document size is {0} bytes El tamaño del documento es de {0} bytes - + Words: {0} selected Palabras: {0} seleccionadas - + Character count: {0} Total de caracteres: {0} @@ -790,22 +790,22 @@ GuiDocEditHeader - + Edit document label Editar el rótulo del documento - + Search document Buscar en el documento - + Toggle Focus Mode Alternar el Modo Enfocado - + Close the document Cerrar el documento @@ -813,58 +813,58 @@ GuiDocEditSearch - - + + Search Buscar - + Replace Reemplazar - + Case Sensitive Sensibilidad a Mayúsculas y Minúsculas - + Whole Words Only Sólo Palabras Enteras - + RegEx Mode Modo ExReg - + Loop Search Reiniciar la Búsqueda - + Search Next File Buscar en el Siguiente Archivo - + Preserve Case Conservar Mayúsculas y Minúsculas - + Close Search Cerrar la Búsqueda - + Find in current document Buscar en el documento actual - + Find and replace in current document Buscar y reemplazar en el documento actual @@ -2050,55 +2050,66 @@ GuiNovelToolBar - + Outline of {0} Estructura de {0} - + Novel Root Raíz de la Novela - + Refresh Actualizar - + Last Column Última Columna - + Hidden Ocultar - + Point of View Character Personaje Vehículo del Punto de Vista - + Focus Character Personaje bajo Enfoque - + Novel Plot Argumento de la Novela - + + + Column Size + Tamaño de Columna + + + More Options Más Opciones + + + Maximum column size in % + Tamaño de columna máximo en % + GuiNovelTree - + No meta data Sin metadatos diff --git a/i18n/nw_nb_NO.ts b/i18n/nw_nb_NO.ts index 32ebc590..33c46f86 100644 --- a/i18n/nw_nb_NO.ts +++ b/i18n/nw_nb_NO.ts @@ -757,32 +757,32 @@ GuiDocEditFooter - + Status Status - + Line: {0} ({1}) Linje: {0} ({1}) - + Words: {0} ({1}) Ord: {0} ({1}) - + Document size is {0} bytes Dokumentet er {0} byte - + Words: {0} selected Ord: {0} valgt - + Character count: {0} Antall tegn: {0} @@ -790,22 +790,22 @@ GuiDocEditHeader - + Edit document label Endre dokumentnavn - + Search document Søk i dokumentet - + Toggle Focus Mode Slå av/på "Fokus-modus" - + Close the document Lukk dokumentet @@ -813,58 +813,58 @@ GuiDocEditSearch - - + + Search Søk - + Replace Erstatt - + Case Sensitive Skill store/små bokstaver - + Whole Words Only Kun hele ord - + RegEx Mode RegEx-modus - + Loop Search Søk rundt - + Search Next File Søk i neste file - + Preserve Case Behold store/små bokstaver - + Close Search Lukk søk - + Find in current document Søk i det åpne dokumentet - + Find and replace in current document Søk og erstatt i det åpne dokumentet @@ -2050,55 +2050,66 @@ GuiNovelToolBar - + Outline of {0} Innhold i {0} - + Novel Root Roman-mappe - + Refresh Oppdatér - + Last Column Siste kolonne - + Hidden Skjult - + Point of View Character Synsvinkel-karakter - + Focus Character Fokus-karakter - + Novel Plot Roman-plott - + + + Column Size + Kolonnebredde + + + More Options Flere valg + + + Maximum column size in % + Maksimal kolonnebredde i % + GuiNovelTree - + No meta data Ingen meta-data diff --git a/i18n/nw_pt_BR.ts b/i18n/nw_pt_BR.ts index b91f0a94..9dcaf7c8 100644 --- a/i18n/nw_pt_BR.ts +++ b/i18n/nw_pt_BR.ts @@ -4,72 +4,72 @@ Common - + in the future no futuro - + just now agora - + a minute ago um minuto atrás - + {0} minutes ago {0} minutos atrás - + an hour ago uma hora atrás - + {0} hours ago {0} horas atrás - + a day ago um dia atrás - + {0} days ago {0} dias atrás - + a week ago uma semana atrás - + {0} weeks ago {0} semanas atrás - + a month ago um mês atrás - + {0} months ago {0} meses atrás - + a year ago um ano atrás - + {0} years ago {0} anos atrás @@ -757,32 +757,32 @@ GuiDocEditFooter - + Status Estado - + Line: {0} ({1}) Linha: {0} ({1}) - + Words: {0} ({1}) Palavras: {0} ({1}) - + Document size is {0} bytes O tamanho do documento é {0} bytes - + Words: {0} selected Palavras: {0} selecionadas - + Character count: {0} Contagem de carecteres: {0} @@ -790,22 +790,22 @@ GuiDocEditHeader - + Edit document label Editar etiqueta do documento - + Search document Procurar no documento - + Toggle Focus Mode Alternar o "Modo Foco" - + Close the document Fechar o documento @@ -813,58 +813,58 @@ GuiDocEditSearch - - + + Search Pesquisa - + Replace Substituir - + Case Sensitive Diferenciar Maiúsculas e Minúsculas - + Whole Words Only Apenas Palavras Inteiras - + RegEx Mode Expressão Regular - + Loop Search Pesquisa do Início - + Search Next File Busca no Próximo Arquivo - + Preserve Case Preserva Maiúsculas e Minúsculas - + Close Search Fechar a Busca - + Find in current document Encontrar no documento atual - + Find and replace in current document Encontrar e substituir no documento atual @@ -2050,55 +2050,66 @@ GuiNovelToolBar - + Outline of {0} Esboço de {0} - + Novel Root Raiz do Livro - + Refresh Atualizar - + Last Column Última Coluna - + Hidden Oculto - + Point of View Character Ponto de Vista do Personagem - + Focus Character Personagem em Foco - + Novel Plot Enredo do Livro - + + + Column Size + Tamanho da coluna + + + More Options Mais Opções + + + Maximum column size in % + Tamanho máximo da coluna em % + GuiNovelTree - + No meta data Sem metadados @@ -2884,72 +2895,72 @@ GuiProjectDetailsContents - + Table of Contents Sumário - + Title Título - + Words Palavras - + Pages Páginas - + Page Página - + Progress Progresso - + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. Contagem de palavras típica para uma página de livro de 5 por 8 polegadas com a fonte de 11 pt é 350. - + Start counting page numbers from this page. Inicia a contagem de numero de páginas à partir dessa página. - + Assume a new chapter or partition always start on an odd numbered page. Assume que um capítulo ou partição sempre começa em uma página com numeração ímpar. - + Words per page Palavras por página - + Count pages from Contar páginas à partir da página - + Clear double pages Eliminar páginas duplas - + END FIM - + Untitled Sem Título @@ -2957,45 +2968,45 @@ GuiProjectDetailsMain - - Working Title: {0} - Nome do projeto - - - - By {0} - Por {0} - - - + Words Palavras - + Chapters Capítulos - + Scenes Cenas - + Revisions Revisões - + Editing Time Tempo de Edição - + Path Caminho + + + Project: {0} + Projeto: {0} + + + + By {0} + Por {0} + GuiProjectEditMain @@ -3782,7 +3793,7 @@ Could not open project with path: {0} - + Não foi possível abrir o projeto com o caminho: {0} From c2dd579eb484080cd1d05b8e54cf39827878ca9a Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 12 Feb 2023 08:32:02 +0100 Subject: [PATCH 3/8] Add Italian translation --- CREDITS.md | 1 + i18n/nw_it_IT.ts | 4480 ++++++++++++++++++++ novelwriter/assets/i18n/project_it_IT.json | 105 + novelwriter/assets/text/credits_en.htm | 1 + 4 files changed, 4587 insertions(+) create mode 100644 i18n/nw_it_IT.ts create mode 100644 novelwriter/assets/i18n/project_it_IT.json diff --git a/CREDITS.md b/CREDITS.md index 16e1dbba..4d30b0a3 100644 --- a/CREDITS.md +++ b/CREDITS.md @@ -20,6 +20,7 @@ translators for the languages currently available: * Dutch: Martijn van der Kleijn (@mvdkleijn) * French: Jan Lüdke (@jyhelle) * German: Myian (@heymyian) +* Italian: Riccardo Mangili * Latin American Spanish: Tommy Marplatt (@tmarplatt) * Norwegian: Veronica Berglyd Olsen (@vkbo) * Portuguese: Bruno Meneguello (@bkmeneguello) diff --git a/i18n/nw_it_IT.ts b/i18n/nw_it_IT.ts new file mode 100644 index 00000000..e01cb77a --- /dev/null +++ b/i18n/nw_it_IT.ts @@ -0,0 +1,4480 @@ + + + + + Common + + + in the future + in futuro + + + + just now + ora + + + + a minute ago + un minuto fa + + + + {0} minutes ago + {0} minuti fa + + + + an hour ago + un ora fa + + + + {0} hours ago + {0} ore fa + + + + a day ago + un giorno fa + + + + {0} days ago + {0} giorni fa + + + + a week ago + una settimana fa + + + + {0} weeks ago + {0} settimane fa + + + + a month ago + un mese fa + + + + {0} months ago + {0} mesi fa + + + + a year ago + un anno fa + + + + {0} years ago + {0} anni fa + + + + Constant + + + + + None + Nessuno + + + + Novel + Romanzo + + + + + Plot + Trama + + + + + Characters + Personaggi + + + + + Locations + Luoghi + + + + + Timeline + Sequenza temporale + + + + + Objects + Oggetti + + + + + Entities + Entità + + + + + Custom + Personalizzato + + + + Archive + Archivio + + + + Trash + Cestino + + + + + Novel Document + Documento del romanzo + + + + + Project Note + Nota del progetto + + + + Root Folder + Cartella principale + + + + Folder + Cartella + + + + Novel Title Page + Pagina del titolo del romanzo + + + + Novel Chapter + Capitolo del romanzo + + + + Novel Scene + Scena del romanzo + + + + Novel Section + Sezione del romanzo + + + + Tag + Etichetta + + + + Point of View + Punto di vista + + + + + Focus + Focus + + + + Title + Titolo + + + + Level + Livello + + + + Document + Documento + + + + Line + Righe + + + + Chars + Caratteri + + + + Words + Parole + + + + Pars + Paragrafi + + + + POV + POV + + + + Synopsis + Sommario + + + + Straight single quotation mark + Virgoletta singola diritta + + + + Straight double quotation mark + Virgolette doppie diritte + + + + Left single quotation mark + Virgoletta singola a sinistra + + + + Right single quotation mark + Virgoletta singola a destra + + + + Single low-9 quotation mark + Singola virgoletta bassa 9 + + + + Single high-reversed-9 quotation mark + Singola virgoletta alta inversa-9 + + + + Left double quotation mark + Virgolette doppie a sinistra + + + + Right double quotation mark + Virgolette doppie a destra + + + + Double low-9 quotation mark + Doppie virgolette basse 9 + + + + Double high-reversed-9 quotation mark + Doppie virgolette alte inverse 9 + + + + Double low-reversed-9 quotation mark + Doppie virgolette basse inverse 9 + + + + Single left-pointing angle quotation mark + Virgoletta singola ad angolo sinistro (<) + + + + Single right-pointing angle quotation mark + Virgoletta singola ad angolo destro (>) + + + + Double left-pointing angle quotation mark + Virgolette doppie ad angolo sinistro (<<) + + + + Double right-pointing angle quotation mark + Virgolette doppie ad angolo destro (>>) + + + + Left corner bracket + Staffa angolare sinistra + + + + Right corner bracket + Staffa angolare destra + + + + Left white corner bracket + Staffa angolare bianca sinistra + + + + Right white corner bracket + Staffa angolare bianca destra + + + + GuiAbout + + + + About novelWriter + A proposito di novelWriter + + + + About + Informazioni + + + + Release + Versione + + + + Credits + Riconoscimenti + + + + Licence + Licenza + + + + Website: {0} + Sito web: {0} + + + + 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 è un editor di testo basato su markdown progettato per organizzare e scrivere romanzi. È scritto in Python 3 con una GUI Qt5, usando 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 è software libero: è possibile redistribuirlo e/o modificarlo secondo i termini della GNU General Public License come pubblicata dalla Free Software Foundation, o la versione 3 della Licenza, o (a scelta) una versione successiva. + + + + 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 è distribuito nella speranza che sia utile, ma SENZA ALCUNA GARANZIA; senza neppure la garanzia implicita di COMMERCIABILITÀ o di APPLICABILITÀ PER UNO SCOPO PARTICOLARE. + + + + See the Licence tab for the full licence text, or visit the GNU website at {0} for more details. + Vedere la scheda Licenza per il testo completo della licenza, o visitare il sito web GNU a {0} per maggiori dettagli. + + + + GuiBuildNovel + + + Build Novel Project + Costruisci il progetto del romanzo + + + + Title Formats for Novel Files + Formati del titolo per i file del romanzo + + + + Formatting Codes: + Codici di formattazione: + + + + {0} for the title as set in the document + {0} per il titolo come impostato nel documento + + + + {0} for chapter number (1, 2, 3) + {0} per il numero del capitolo (1, 2, 3) + + + + {0} for chapter number as a word (one, two) + {0} per il numero di capitolo come parola (uno, due) + + + + {0} for chapter number in upper case Roman + {0} per il numero di capitolo in maiuscolo Romano + + + + {0} for chapter number in lower case Roman + {0} per il numero di capitolo in minuscolo Romano + + + + {0} for scene number within chapter + {0} per il numero di scena all'interno del capitolo + + + + {0} for scene number within novel + {0} per il numero di scena all'interno del romanzo + + + + Leave blank to skip this heading, or set to a static text, like for instance '{0}', to make a separator. The separator will be centred automatically and only appear between sections of the same type. + Lasciare vuoto per saltare questa intestazione, o impostare su un testo statico, come ad esempio '{0}', per creare un separatore. Il separatore sarà centrato automaticamente e apparirà solo tra sezioni dello stesso tipo. + + + + Not Set + Non impostato + + + + Title + Titolo + + + + Chapter + Capitolo + + + + Unnumbered + Senza numerazione + + + + Scene + Scena + + + + Section + Sezione + + + + Language + Lingua + + + + Hide scene + Nascondi scena + + + + Hide section + Nascondi sezione + + + + Font Options + Opzioni carattere + + + + Font family + Famiglia carattere + + + + Font size + Dimensione carattere + + + + Line height + Altezza riga + + + + Justify text + Giustifica il testo + + + + Disable styling + Disabilita lo stile + + + + Styling Options + Opzioni di stile + + + + Include Options + Opzioni di inclusione + + + + Include synopsis + Includi sinossi + + + + Include comments + Includi commenti + + + + Include keywords + Includi parole chiavi + + + + Include body text + Includi corpo testo + + + + Root Filter Options + Opzioni Filtro Radice + + + + File Filter Options + Opzioni Filtro File + + + + Include novel files + Includi i files del romanzo + + + + Include note files + Includi i file delle note + + + + Include inactive files + Includi i file inattivi + + + + Export Options + Opzioni di esportazione + + + + Replace tabs with spaces + Sostituisci le tabulazioni con gli spazi + + + + Replace Unicode in HTML + Sostituisci Unicode in HTML + + + + Build Preview + Genera anteprima + + + + Print + Stampa + + + + Print Preview + Anteprima di stampa + + + + Print to PDF + Stampa come PDF + + + + Save As + Salva come + + + + Open Document (.odt) + Apri documento (.odt) + + + + Flat Open Document (.fodt) + Apri documento piatto (.fodt) + + + + novelWriter HTML (.htm) + novelWriter HTML (.htm) + + + + novelWriter Markdown (.nwd) + novelWriter Markdown (.nwd) + + + + Standard Markdown (.md) + Standard Markdown (.md) + + + + GitHub Markdown (.md) + GitHub Markdown (.md) + + + + JSON + novelWriter HTML (.json) + JSON + novelWriter HTML (.json) + + + + JSON + novelWriter Markdown (.json) + JSON + novelWriter Markdown (.json) + + + + Close + Chiudi + + + + Failed to generate preview. The result is too big. + Impossibile generare l'anteprima. Il risultato è troppo grande. + + + + There were problems when building the project: + Ci sono stati problemi durante la costruzione del progetto: + + + + Open Document + Documento Aperto + + + + Flat Open Document + Documento Aperto Piatto + + + + Plain HTML + HTML Semplice + + + + novelWriter Markdown + novelWriter Markdown + + + + Standard Markdown + Standard Markdown + + + + GitHub Markdown + GitHub Markdown + + + + JSON + novelWriter HTML + JSON + novelWriter HTML + + + + JSON + novelWriter Markdown + JSON + novelWriter Markdown + + + + PDF + PDF + + + + Save Document As + Salva documento come + + + + {0} file successfully written to: + {0} file scritto correttamente in: + + + + Failed to write {0} file. {1} + Scrittura file {0} non riuscita. {1} + + + + GuiBuildNovelDocView + + + This area will show the content of the document to be exported or printed. Press the "Build Preview" button to generate content. + Questa area mostrerà il contenuto del documento da esportare o stampare. Premi il pulsante "Crea Anteprima" per generare il contenuto. + + + + Unknown + Sconosciuto + + + + Build Time: + Data di compilazione: + + + + GuiDocEditFooter + + + Status + Stato + + + + Line: {0} ({1}) + Riga: {0} ({1}) + + + + Words: {0} ({1}) + Parole: {0} ({1}) + + + + Document size is {0} bytes + La dimensione del documento è {0} byte + + + + Words: {0} selected + Parole: {0} selezionate + + + + Character count: {0} + Conteggio caratteri: {0} + + + + GuiDocEditHeader + + + Edit document label + Modifica etichetta del documento + + + + Search document + Cerca nel documento + + + + Toggle Focus Mode + Attiva/Disattiva modalità Focus + + + + Close the document + Chiudi il documento + + + + GuiDocEditSearch + + + + Search + Cerca + + + + Replace + Sostituisci + + + + Case Sensitive + Considera maiuscole/minuscole + + + + Whole Words Only + Solo parole intere + + + + RegEx Mode + Modalità RegEx + + + + Loop Search + Ricerca a ciclo continuo + + + + Search Next File + Cerca nel file successivo + + + + Preserve Case + Non considerare maiuscole/minuscole + + + + Close Search + Chiudi ricerca + + + + Find in current document + Trova nel documento corrente + + + + Find and replace in current document + Trova e sostituisci nel documento corrente + + + + GuiDocEditor + + + The document you are trying to open is too big. The document size is {0} MB. The maximum size allowed is {1} MB. + Il documento che stai cercando di aprire è troppo grande. La dimensione del documento è {0} MB. La dimensione massima consentita è {1} MB. + + + + Opened Document: {0} + Documento aperto: {0} + + + + The text you are trying to add is too big. The text size is {0} MB. The maximum size allowed is {1} MB. + Il testo che stai cercando di aggiungere è troppo grande. La dimensione del testo è {0} MB. La dimensione massima consentita è {1} MB. + + + + File Changed on Disk + File modificato sul disco + + + + This document has been changed outside of novelWriter while it was open. Overwrite the file on disk? + Questo documento è stato cambiato al di fuori di novelWriter mentre era aperto. Sovrascrivere il file su disco? + + + + Could not save document. + Impossibile salvare il documento. + + + + Saved Document: {0} + Documento salvato: {0} + + + + Spell checking requires the package PyEnchant. It does not appear to be installed. + Il controllo ortografico richiede il pacchetto PyEnchant. Non sembra essere installato. + + + + Spell check complete + Controllo ortografico completo + + + + File Location + Posizione del file + + + + The currently open file is saved in: + Il file attualmente aperto è salvato in: + + + + The document has grown too big and you cannot add more text to it. The maximum size of a single novelWriter document is {0} MB. + Il documento è diventato troppo grande e non puoi aggiungere altro testo. La dimensione massima di un singolo documento di novelWriter è {0} MB. + + + + Follow Tag + Segui i Tag + + + + Cut + Taglia + + + + Copy + Copia + + + + Paste + Incolla + + + + Select All + Seleziona tutto + + + + Select Word + Seleziona parola + + + + Select Paragraph + Seleziona paragrafo + + + + Spelling Suggestion(s) + Suggerimento(i) ortografico(i) + + + + No Suggestions + Nessun suggerimento + + + + Add Word to Dictionary + Aggiungi parola al dizionario + + + + Please select some text before calling replace quotes. + Per favore seleziona del testo prima di chiedere il cambio di virgolette. + + + + GuiDocMerge + + + Merge Documents + Unisci i documenti + + + + Documents to Merge + Documenti da unire + + + + Drag and drop items to change the order, or uncheck to exclude. + Trascina e rilascia gli elementi per cambiare l'ordine, o deseleziona per escludere. + + + + Move merged items to Trash + Sposta gli elementi uniti nel cestino + + + + GuiDocSplit + + + Split Document + Dividi il documento + + + + Document Headers + Intestazioni del documento + + + + Select the maximum level to split into files. + Seleziona il livello massimo da dividere in file separati. + + + + Split on Header Level 1 (Title) + Dividi sul livello d'intestazione 1 (Titolo) + + + + Split up to Header Level 2 (Chapter) + Dividi sul livello d'intestazione 2 (Capitolo) + + + + Split up to Header Level 3 (Scene) + Dividi sul livello d'intestazione 3 (Scena) + + + + Split up to Header Level 4 (Section) + Dividi sul livello d'intestazione 4 (Sezione) + + + + Split into a new folder + Dividi in una nuova cartella + + + + Create document hierarchy + Crea gerarchia dei documenti + + + + Move split document to Trash + Sposta il documento diviso nel cestino + + + + GuiDocViewFooter + + + Show/hide the references panel + Mostra/nascondi il pannello dei riferimenti + + + + Activate to freeze the content of the references panel when changing document + Attiva per bloccare il contenuto del pannello dei riferimenti quando si cambia il documento + + + + Show comments + Visualizza commenti + + + + Show synopsis comments + Mostra i commenti relativi alla sinossi + + + + References + Riferimenti + + + + Sticky + Post-it + + + + Comments + Commenti + + + + Synopsis + Sinossi + + + + GuiDocViewHeader + + + Go backward + Muovi indietro + + + + Go forward + Muovi avanti + + + + Reload the document + Ricarica il documento + + + + Close the document + Chiudi il documento + + + + GuiDocViewer + + + An error occurred while generating the preview. + Si è verificato un errore durante la generazione dell'anteprima. + + + + Copy + Copia + + + + Select All + Seleziona tutto + + + + Select Word + Seleziona parola + + + + Select Paragraph + Seleziona paragrafo + + + + GuiEditLabel + + + Item Label + Etichetta dell'elemento + + + + Label + Etichetta + + + + GuiItemDetails + + + Label + Etichetta + + + + Status + Stato + + + + Class + Classe + + + + Usage + Utilizzo + + + + Characters + Caratteri + + + + Words + Parole + + + + Paragraphs + Paragrafi + + + + GuiLipsum + + + Insert Placeholder Text + Inserisci testo segnaposto + + + + Insert Lorem Ipsum Text + Inserisci testo Lorem Ipsum + + + + Number of paragraphs + Numero dei paragrafi + + + + Randomise order + Ordine casuale + + + + Insert + Inserisci + + + + GuiMain + + + You are running an untested development version of novelWriter. Please be careful when working on a live project and make sure you take regular backups. + Stai eseguendo una versione di sviluppo non testata di novelWriter. Fai attenzione quando lavori su un progetto live e assicurati di eseguire dei backup regolari. + + + + novelWriter is ready ... + novelWriter è pronto... + + + + Cannot create a new project when another project is open. + Impossibile creare un nuovo progetto quando un altro progetto è aperto. + + + + A project already exists in that location. Please choose another folder. + Un progetto esiste già in quella posizione. Si prega di scegliere un'altra cartella. + + + + Close Project + Chiudi progetto + + + + Close the current project? + Chiudere il progetto attuale? + + + + + Changes are saved automatically. + Le modifiche vengono salvate automaticamente. + + + + Backup Project + Backup del progetto + + + + Backup the current project? + Eseguire il backup del progetto corrente? + + + + The project was locked by the computer '{0}' ({1} {2}), last active on {3}. + Il progetto è stato bloccato dal computer '{0}' ({1} {2}), ultimo attivo su {3}. + + + + Project Locked + Progetto bloccato + + + + The project is already open by another instance of novelWriter, and is therefore locked. Override lock and continue anyway? + Il progetto è già aperto da un'altra istanza di novelWriter, ed è quindi bloccato. Scavalcare il blocco e continuare comunque? + + + + Note: If the program or the computer previously crashed, the lock can safely be overridden. However, overriding it is not recommended if the project is open in another instance of novelWriter. Doing so may corrupt the project. + Nota: Se il programma o il computer in precedenza si è bloccato, il blocco può essere superato in modo sicuro. Tuttavia, non è consigliabile sovrascrivere se il progetto è aperto in un'altra istanza di novelWriter. Facendolo si potrebbe danneggiare il progetto. + + + + The project index is outdated or broken. Rebuilding index. + L'indice del progetto è obsoleto o rotto. Ricostruzione dell'indice. + + + + Text files ({0}) + File di testo ({0}) + + + + Markdown files ({0}) + File Markdown ({0}) + + + + novelWriter files ({0}) + file di novelWriter ({0}) + + + + All files ({0}) + Tutti i file ({0}) + + + + Import File + Importa file + + + + Could not read file. The file must be an existing text file. + Impossibile leggere il file. Il file deve essere un file di testo esistente. + + + + Please open a document to import the text file into. + Si prega di aprire un documento in cui importare il file di testo. + + + + Import Document + Importa documento + + + + Importing the file will overwrite the current content of the document. Do you want to proceed? + L'importazione del file sovrascriverà il contenuto corrente del documento. Vuoi procedere? + + + + Indexing completed in {0} ms + Indicizzazione completata in {0} ms + + + + The project index has been successfully rebuilt. + L'indice del progetto è stato ricostruito con successo. + + + + Some changes will not be applied until novelWriter has been restarted. + Alcune modifiche non saranno applicate fino al riavvio di novelWriter. + + + + Information + Informazioni + + + + Warning + Attenzione + + + + Error + Errore + + + + This is a bug! + Questo è un bug! + + + + Internal Error + Errore interno + + + + Exit + Esci + + + + Do you want to exit novelWriter? + Vuoi uscire da novelWriter? + + + + Could not find the reference for tag '{0}'. It either doesn't exist, or the index is out of date. The index can be updated from the Tools menu, or by pressing {1}. + Impossibile trovare il riferimento per il tag '{0}'. O non esiste, o l'indice è obsoleto. L'indice può essere aggiornato dal menu Strumenti, o premendo {1}. + + + + GuiMainMenu + + + &Project + &Progetto + + + + New Project + Nuovo progetto + + + + Open Project + Apri progetto + + + + Save Project + Salva progetto + + + + Close Project + Chiudi progetto + + + + Project Settings + Impostazioni del progetto + + + + Project Details + Dettagli del progetto + + + + Rename Item + Rinomina l'elemento + + + + Delete Item + Elimina l'elemento + + + + Empty Trash + Svuota il cestino + + + + Exit + Esci + + + + &Document + &Documento + + + + Open Document + Apri documento + + + + Save Document + Salva documento + + + + Close Document + Chiudi documento + + + + View Document + Visualizza documento + + + + Close Document View + Chiudi visualizzazione documento + + + + Show File Details + Mostra dettagli del file + + + + Import Text from File + Importa testo da file + + + + &Edit + &Modifica + + + + Undo + Annulla + + + + Redo + Ripristina + + + + Cut + Taglia + + + + Copy + Copia + + + + Paste + Incolla + + + + Select All + Seleziona tutto + + + + Select Paragraph + Seleziona paragrafo + + + + &View + &Visualizza + + + + Go to Project Tree + Vai all'albero del progetto + + + + Go to Document Editor + Vai all'editor dei documenti + + + + Go to Document Viewer + Vai al visualizzatore documenti + + + + Go to Outline + Vai allo schema riassuntivo + + + + Navigate Backward + Naviga indietro + + + + Navigate Forward + Naviga avanti + + + + Focus Mode + Modalità Focus + + + + Full Screen Mode + Modalità a schermo intero + + + + &Insert + &Inserisci + + + + Dashes + Trattini + + + + Short Dash + Trattino breve + + + + Long Dash + Trattino lungo + + + + Horizontal Bar + Barra orizzontale + + + + Figure Dash + Simbolo 'Tilde' + + + + Quote Marks + Marcatori di citazione + + + + Left Single Quote + Virgoletta singola a sinistra + + + + Right Single Quote + Virgoletta singola a destra + + + + Left Double Quote + Virgolette doppie a sinistra + + + + Right Double Quote + Virgolette doppie a destra + + + + Alternative Apostrophe + Apostrofo alternativo + + + + General Punctuation + Punteggiatura generica + + + + Ellipsis + Ellisse + + + + Prime + Apostrofo + + + + Double Prime + Doppie virgolette + + + + White Spaces + Spazi bianchi + + + + Non-Breaking Space + Spaziatura larga + + + + Thin Space + Spaziatura sottile + + + + Thin Non-Breaking Space + Spaziatura media + + + + Other Symbols + Altri simboli + + + + List Bullet + Elenco puntato + + + + Hyphen Bullet + Elenco listato + + + + Flower Mark + Asterisco a forma di fiore + + + + Per Mille + Per mille + + + + Degree Symbol + Simbolo di grado + + + + Minus Sign + Segno meno + + + + Times Sign + Segno di moltiplicazione + + + + Division Sign + Segno di divisione + + + + Tags and References + Etichette e riferimenti + + + + Special Comments + Commenti speciali + + + + Synopsis Comment + Commenti relativi alla sinossi + + + + Page Break and Space + Interruzioni di pagina e spaziature + + + + Page Break + Interruzione di pagina + + + + Vertical Space (Single) + Spazio verticale (Singolo) + + + + Vertical Space (Multi) + Spazio verticale (Multiplo) + + + + Placeholder Text + Testo segnaposto + + + + &Format + &Formato + + + + Emphasis + Corsivo + + + + Strong Emphasis + Grassetto + + + + Strikethrough + Barrato + + + + Wrap Double Quotes + Doppie virgolette automatiche + + + + Wrap Single Quotes + Singole virgolette automatiche + + + + Header 1 (Partition) + Titolo 1 (Partizione) + + + + Header 2 (Chapter) + Titolo 2 (Capitolo) + + + + Header 3 (Scene) + Titolo 3 (Scena) + + + + Header 4 (Section) + Titolo 4 (Sezione) + + + + Novel Title + Titolo del romanzo + + + + Unnumbered Chapter + Capitolo non numerato + + + + Align Left + Allineamento a sinistra + + + + Align Centre + Centrato + + + + Align Right + Allineamento a destra + + + + Indent Left + Rientro a sinistra + + + + Indent Right + Rientro a destra + + + + Toggle Comment + Attiva/Disattiva commento + + + + Remove Block Format + Rimuovi il formato blocco + + + + Convert Single Quotes + Converti in virgolette singole + + + + Convert Double Quotes + Converti in virgolette doppie + + + + Remove In-Paragraph Breaks + Rimuovi le interruzioni di paragrafo + + + + &Search + &Cerca + + + + Find + Trova + + + + Replace + Sostituisci + + + + Find Next + Trova successivo + + + + Find Previous + Trova precedente + + + + Replace Next + Sostituisci successivo + + + + &Tools + &Strumenti + + + + Check Spelling + Controllo ortografico + + + + Re-Run Spell Check + Riavvia il controllo ortografico + + + + Project Word List + Elenco delle parole del progetto + + + + Rebuild Index + Ricostruisci l'indice + + + + Backup Project + Crea una copia di backup + + + + Build Novel Project + Costruisci il progetto del romanzo + + + + Writing Statistics + Statistiche di scrittura + + + + Preferences + Preferenze + + + + &Help + &Aiuto + + + + About novelWriter + A proposito di novelWriter + + + + About Qt5 + A proposito di Qt5 + + + + User Manual (Online) + Manuale utente (Online) + + + + User Manual (PDF) + Manuale utente (PDF) + + + + Report an Issue (GitHub) + Segnala un problema (GitHub) + + + + Ask a Question (GitHub) + Fai una domanda (GitHub) + + + + The novelWriter Website + Il sito web di novelWriter + + + + Check for New Release + Controlla per aggiornamenti + + + + GuiMainStatus + + + + None + Nessuno + + + + Editor + Editor + + + + Project + Progetto + + + + Session Time + Durata della sessione + + + + Words: {0} ({1}) + Parole: {0} ({1}) + + + + Project word count (session change) + Conteggio parole del progetto (modifica sessione) + + + + Novel word count (session change) + Conteggio parole del romanzo (modifica sessione) + + + + GuiNovelToolBar + + + Outline of {0} + Schema di {0} + + + + Novel Root + Radice del romanzo + + + + Refresh + Aggiorna + + + + Last Column + Ultima colonna + + + + Hidden + Nascosto + + + + Point of View Character + Personaggio con punto di vista + + + + Focus Character + Personaggio oggetto del focus + + + + Novel Plot + Trama del romanzo + + + + + Column Size + Dimensione della colonna + + + + More Options + Altre opzioni + + + + Maximum column size in % + Dimensione massima della colonna in % + + + + GuiNovelTree + + + No meta data + Nessun metadato + + + + GuiOutlineDetails + + + + + + Title + Titolo + + + + Chapter + Capitolo + + + + Scene + Scena + + + + Section + Sezione + + + + Document + Documento + + + + Status + Stato + + + + Characters + Caratteri + + + + Words + Parole + + + + Paragraphs + Paragrafi + + + + Synopsis + Sinossi + + + + Title Details + Dettagli Titolo + + + + Reference Tags + Riferimenti + + + + GuiOutlineHeaderMenu + + + Select Columns + Seleziona colonne + + + + GuiOutlineToolBar + + + Outline of + Struttura di + + + + Refresh + Aggiorna + + + + GuiPreferences + + + Preferences + Preferenze + + + + General + Generale + + + + Projects + Progetti + + + + Documents + Documenti + + + + Editor + Editor + + + + Highlighting + Evidenziazione + + + + Automation + Automatismi + + + + Quotes + Citazioni + + + + GuiPreferencesAutomation + + + Automatic Features + Funzionalità automatiche + + + + Auto-select word under cursor + Seleziona automaticamente la parola sotto il cursore + + + + Apply formatting to word under cursor if no selection is made. + Applica la formattazione alla parola sotto il cursore se non viene effettuata alcuna selezione. + + + + Auto-replace text as you type + Sostituisci automaticamente il testo mentre digiti + + + + Allow the editor to replace symbols as you type. + Consenti all'editor di sostituire i simboli durante la digitazione. + + + + Replace as You Type + Sostituisci mentre scrivi + + + + Auto-replace single quotes + Sostituisci automaticamente le virgolette singole + + + + + Try to guess which is an opening or a closing quote. + Prova a indovinare quale sia l'inizio o la fine di una citazione. + + + + Auto-replace double quotes + Sostituisci automaticamente le virgolette doppie + + + + Auto-replace dashes + Sostituisci automaticamente i trattini + + + + Double and triple hyphens become short and long dashes. + I trattini doppi e tripli diventano brevi e lunghi trattini. + + + + Auto-replace dots + Sostituisci automaticamente i puntini + + + + Three consecutive dots become ellipsis. + Tre punti consecutivi diventano puntini di sospensione. + + + + Automatic Padding + Riempimenti automatici + + + + Insert non-breaking space before + Inserisci uno spazio prima di + + + + Automatically add space before any of these symbols. + Aggiungi automaticamente spazio prima di uno di questi simboli. + + + + Insert non-breaking space after + Inserisci uno spazio dopo di + + + + Automatically add space after any of these symbols. + Aggiungi automaticamente spazio dopo uno di questi simboli. + + + + Use thin space instead + Usa invece uno spazio sottile + + + + Inserts a thin space instead of a regular space. + Inserisce uno spazio sottile invece di uno spazio regolare. + + + + GuiPreferencesDocuments + + + Text Style + Stile del testo + + + + Font family + Famiglia carattere + + + + + + + Applies to both document editor and viewer. + Si applica sia all'editor di documenti che al visualizzatore. + + + + Font size + Dimensione carattere + + + + pt + pt + + + + Text Flow + Flusso del testo + + + + Maximum text width in "Normal Mode" + Larghezza massima del testo in "Modalità normale" + + + + Set to 0 to disable this feature. + Impostare a 0 per disabilitare questa funzione. + + + + + + + px + px + + + + Maximum text width in "Focus Mode" + Larghezza massima del testo in "Modalità Focus" + + + + The maximum width cannot be disabled. + La larghezza massima non può essere disabilitata. + + + + Hide document footer in "Focus Mode" + Nascondi piè di pagina del documento in "Modalità Focus" + + + + Hide the information bar in the document editor. + Nascondi la barra delle informazioni nell'editor dei documenti. + + + + Justify the text margins + Giustifica i margini del testo + + + + Minimum text margin + Dimensione minima del margine del testo + + + + Tab width + Larghezza di tabulazione + + + + The width of a tab key press in the editor and viewer. + La larghezza ottenibile con una pressione sul tasto TAB nell'editor e nel visualizzatore. + + + + GuiPreferencesEditor + + + Spell Checking + Controllo ortografico + + + + None + Nessuno + + + + Not installed + Non installato + + + + Spell check language + Lingua per il controllo ortografico + + + + Available languages are determined by your system. + Le lingue disponibili sono determinate dal tuo sistema. + + + + Big document limit + Dimensione massima del documento + + + + Full spell checking is disabled above this limit. + Il controllo ortografico completo è disabilitato al di sopra di questo limite. + + + + kB + kB + + + + Word Count + Conteggio delle parole + + + + Word count interval + Intervallo di conteggio delle parole + + + + seconds + secondi + + + + Include project notes in status bar word count + Includi le note del progetto nel conteggio delle parole della barra di stato + + + + Writing Guides + Guide di scrittura + + + + Show tabs and spaces + Mostra tabulazioni e spazi + + + + Show line endings + Mostra terminazioni di riga + + + + Scroll Behaviour + Comportamento di scorrimento + + + + Scroll past end of the document + Scorri alla fine del documento + + + + Set to 0 to disable this feature. + Impostare a 0 per disabilitare questa funzione. + + + + lines + righe + + + + Typewriter style scrolling when you type + Scorrimento stile macchina da scrivere quando si digita + + + + Keeps the cursor at a fixed vertical position. + Mantiene il cursore in posizione verticale fissa. + + + + Minimum position for Typewriter scrolling + Posizione minima per lo scorrimento della macchina da scrivere + + + + Percentage of the editor height from the top. + Percentuale dell'altezza dell'editor dall'alto. + + + + GuiPreferencesGeneral + + + Look and Feel + Personalizza l'aspetto + + + + Main GUI language + Lingua principale + + + + + + Requires restart to take effect. + Richiede il riavvio per avere effetto. + + + + Main GUI theme + Tema principale dell'interfaccia + + + + General colour theme and icons. + Colore del tema generale e delle icone. + + + + Editor theme + Tema dell'editor + + + + Colour theme for the editor and viewer. + Colore del tema per l'editor ed il visualizzatore. + + + + Font family + Famiglia carattere + + + + Font size + Dimensione carattere + + + + pt + pt + + + + GUI Settings + Impostazioni della GUI + + + + Emphasise partition and chapter labels + Sottolineare le etichette delle partizioni e dei capitoli + + + + Makes them stand out in the project tree. + Li fa risaltare nell'albero del progetto. + + + + Show full path in document header + Mostra il percorso completo nell'intestazione del documento + + + + Add the parent folder names to the header. + Aggiunge i nomi delle cartelle di livello superiore all'intestazione. + + + + Hide vertical scroll bars in main windows + Nascondi le barre di scorrimento verticali nelle finestre principali + + + + + Scrolling available with mouse wheel and keys only. + Scorrimento disponibile solo con la rotellina del mouse e i tasti. + + + + Hide horizontal scroll bars in main windows + Nascondi le barre di scorrimento orizzontali nelle finestre principali + + + + GuiPreferencesProjects + + + Automatic Save + Salvataggio automatico + + + + Save document interval + Intervallo di salvataggio del documento + + + + How often the document is automatically saved. + Quante volte il documento viene salvato automaticamente. + + + + + seconds + secondi + + + + Save project interval + Intervallo di salvataggio del progetto + + + + How often the project is automatically saved. + Quante volte il progetto viene salvato automaticamente. + + + + Project Backup + Backup del progetto + + + + Browse + Sfoglia + + + + Backup storage location + Posizione di archiviazione del backup + + + + + Path: {0} + Percorso: {0} + + + + Run backup when the project is closed + Esegui il backup quando il progetto è chiuso + + + + Can be overridden for individual projects in Project Settings. + Può essere sovrascritto per singoli progetti nelle Impostazioni del progetto. + + + + Ask before running backup + Chiedi prima di eseguire il backup + + + + If off, backups will run in the background. + Se disattivato, i backup verranno eseguiti in background. + + + + Session Timer + Timer della sessione + + + + Pause the session timer when not writing + Metti in pausa il timer di sessione quando non si scrive + + + + Also pauses when the application window does not have focus. + Inoltre si interrompe quando la finestra dell'applicazione non ha focus. + + + + Editor inactive time before pausing timer + Tempo d'inattività dell'editor prima di mettere in pausa il timer + + + + User activity includes typing and changing the content. + L'attività dell'utente include la digitazione e la modifica del contenuto. + + + + minutes + minuti + + + + Backup Directory + Percorso di backup + + + + GuiPreferencesQuotes + + + Quotation Style + Stile delle citazioni + + + + Single quote open style + Singola virgoletta aperta + + + + The symbol to use for a leading single quote. + Il simbolo da usare per una singola virgoletta iniziale. + + + + Single quote close style + Singola virgoletta chiusa + + + + The symbol to use for a trailing single quote. + Il simbolo da usare per una singola virgoletta finale. + + + + Double quote open style + Doppie virgolette aperte + + + + The symbol to use for a leading double quote. + Il simbolo da usare per avere doppie virgolette iniziali. + + + + Double quote close style + Doppie virgolette chiuse + + + + The symbol to use for a trailing double quote. + Il simbolo da usare per avere doppie virgolette finali. + + + + GuiPreferencesSyntax + + + Quotes & Dialogue + Citazioni & Dialoghi + + + + Highlight text wrapped in quotes + Evidenzia il testo racchiuso tra virgolette + + + + + + Applies to the document editor only. + Si applica solo all'editor dei documenti. + + + + Allow open-ended single quotes + Consenti di aprire e chiudere le singole virgolette + + + + Highlight single-quoted line with no closing quote. + Evidenzia la riga con virgoletta singola senza virgoletta di chiusura. + + + + Allow open-ended double quotes + Consenti di aprire e chiudere le doppie virgolette + + + + Highlight double-quoted line with no closing quote. + Evidenzia la riga con virgolette doppie senza virgolette di chiusura. + + + + Text Emphasis + Enfasi sul testo + + + + Add highlight colour to emphasised text + Aggiungi un colore per evidenziare ed enfatizzare il testo + + + + Text Errors + Errori di testo + + + + Highlight multiple or trailing spaces + Evidenzia spazi multipli o finali + + + + GuiProjectDetails + + + Project Details + Dettagli del progetto + + + + Overview + Panoramica + + + + Contents + Contenuti + + + + GuiProjectDetailsContents + + + Table of Contents + Tavola dei contenuti + + + + Title + Titolo + + + + Words + Parole + + + + Pages + Pagine + + + + Page + Pagina + + + + Progress + Avanzamento + + + + Typical word count for a 5 by 8 inch book page with 11 pt font is 350. + Il tipico conteggio delle parole per una pagina dil libro da 5 x 8 pollici con carattere 11 pt è 350. + + + + Start counting page numbers from this page. + Inizia il conteggio dei numeri di pagina da questa pagina. + + + + Assume a new chapter or partition always start on an odd numbered page. + Si suppone che un nuovo capitolo o partizione inizi sempre su una pagina con numero dispari. + + + + Words per page + Parole per pagina + + + + Count pages from + Conta le pagine da + + + + Clear double pages + Cancella le pagine doppie + + + + END + FINE + + + + Untitled + Senza titolo + + + + GuiProjectDetailsMain + + + Words + Parole + + + + Chapters + Capitoli + + + + Scenes + Scene + + + + Revisions + Revisioni + + + + Editing Time + Tempo di lavorazione + + + + Path + Percorso + + + + Project: {0} + Progetto: {0} + + + + By {0} + Scritto da {0} + + + + GuiProjectEditMain + + + Project Settings + Impostazioni del progetto + + + + Project name + Nome del progetto + + + + Should be set only once. + Dovrebbe essere impostato una sola volta. + + + + Novel title + Titolo del romanzo + + + + + Change whenever you want! + Cambia quando vuoi! + + + + Author(s) + Autore(i) + + + + Default + Predefinito + + + + Spell check language + Lingua controllo ortografico + + + + + Overrides main preferences. + Sovrascrive le preferenze principali. + + + + No backup on close + Nessun backup alla chiusura + + + + GuiProjectEditReplace + + + Text Replace List for Preview and Export + Elenco di sostituzione del testo per anteprima ed esportazione + + + + Keyword + Parola chiave + + + + Replace With + Sostituisci con + + + + Select item to edit + Seleziona e modifica + + + + Save + Salva + + + + GuiProjectEditStatus + + + Novel File Status Levels + Livelli di avanzamento dei file del romanzo + + + + Note File Importance Levels + Livelli di importanza dei file delle note + + + + Label + Etichetta + + + + Usage + Utilizzo + + + + Select item to edit + Seleziona e modifica + + + + Colour + Colore + + + + Save + Salva + + + + Select Colour + Seleziona colore + + + + New Item + Nuovo elemento + + + + Cannot delete a status item that is in use. + Impossibile eliminare un elemento di stato in uso. + + + + Not in use + Non utilizzato + + + + Used once + Usato una volta + + + + Used by {0} items + Usato da {0} elementi + + + + GuiProjectLoad + + + + Open Project + Apri progetto + + + + Working Title + Titolo provvisorio + + + + Words + Parole + + + + Last Opened + Ultimo file aperto + + + + Recently Opened Projects + Progetti aperti di recente + + + + Path + Percorso + + + + New + Nuovo + + + + Remove + Rimuovi + + + + novelWriter Project File ({0}) + File di progetto di novelWriter ({0}) + + + + All files ({0}) + Tutti i file ({0}) + + + + Remove Entry + Rimuovi voce + + + + Remove '{0}' from the recent projects list? The project files will not be deleted. + Rimuovere '{0}' dalla lista dei progetti recenti? I file del progetto non verranno eliminati. + + + + GuiProjectSettings + + + Project Settings + Impostazioni del progetto + + + + Settings + Impostazioni + + + + Status + Stato + + + + Importance + Importanza + + + + Auto-Replace + Auto - sostituisci + + + + GuiProjectToolBar + + + Project Content + Contenuto del progetto + + + + Quick Links + Collegamenti rapidi + + + + Move Up + Sposta su + + + + Move Down + Sposta giù + + + + Add Item + Aggiungi elemento + + + + Expand All + Espandi tutto + + + + Collapse All + Collassa tutto + + + + Undo Move + Annulla azione + + + + Empty Trash + Svuota il cestino + + + + More Options + Altre opzioni + + + + GuiProjectTree + + + Active + Attivo + + + + Inactive + Inattivo + + + + Did not find anywhere to add the file or folder! + Non è stato trovato alcun posto dove aggiungere il file o la cartella! + + + + Cannot add new files or folders to the Trash folder. + Impossibile aggiungere nuovi file o cartelle alla cartella Cestino. + + + + New Note + Nuova nota + + + + New Chapter + Nuovo capitolo + + + + New Scene + Nuova scena + + + + New Document + Nuovo documento + + + + New Folder + Nuova cartella + + + + There is currently no Trash folder in this project. + Al momento non c'è una cartella Cestino in questo progetto. + + + + The Trash folder is already empty. + La cartella Cestino è già vuota. + + + + + Empty Trash + Svuota il cestino + + + + Permanently delete {0} file(s) from Trash? + Eliminare definitivamente {0} file(s) dal cestino? + + + + + Delete + Elimina + + + + Move '{0}' to Trash? + Spostare '{0}' nel Cestino? + + + + Root folders can only be deleted when they are empty. + Le cartelle radice possono essere eliminate solo quando sono vuote. + + + + Permanently delete '{0}'? + Eliminare definitivamente '{0}'? + + + + Open Document + Apri documento + + + + View Document + Visualizza documento + + + + Change Label + Cambia etichetta + + + + Toggle Active + Attiva/Disattiva + + + + Set Status to ... + Imposta lo stato a ... + + + + Set Importance to ... + Imposta importanza a ... + + + + Transform + Trasforma + + + + + + + Convert to {0} + Converti in {0} + + + + Merge Child Items into Self + Fondi elementi figli + + + + Merge Child Items into New + Fondi elementi figli in uno nuovo + + + + Merge Documents in Folder + Fondi i documenti nella cartella + + + + Split Document by Headers + Dividi il documento per intestazioni + + + + Expand All + Espandi tutto + + + + Collapse All + Collassa tutto + + + + Delete Permanently + Elimina definitivamente + + + + Move to Trash + Sposta nel Cestino + + + + Convert Folder + Converti la cartella + + + + Do you want to convert the folder to a {0}? This action cannot be reversed. + Vuoi convertire la cartella in un {0}? Questa azione non può essere annullata. + + + + No documents selected for merging. + Nessun documento selezionato per la fusione. + + + + Merged + Uniti + + + + + Could not write document content. + Impossibile scrivere il contenuto del documento. + + + + + There is nowhere to add item with name '{0}'. + Non c'è nessun posto dove aggiungere un elemento con il nome '{0}. + + + + GuiSideBar + + + Project + Progetto + + + + Project Tree View + Vista ad albero del progetto + + + + Novel + Romanzo + + + + Novel Tree View + Vista ad albero del romanzo + + + + Outline + Struttura + + + + Novel Outline View + Vista della struttura del romanzo + + + + Build + Compila + + + + Build Novel Project + Compila il progetto del romanzo + + + + Details + Dettagli + + + + Project Details + Dettagli del progetto + + + + Stats + Statistiche + + + + Writing Statistics + Statistiche di scrittura + + + + Settings + Opzioni + + + + GuiUpdates + + + Check for Updates + Controlla aggiornamenti + + + + Current Release + Versione attuale + + + + + novelWriter {0} released on {1} + novelWriter {0} rilasciato il {1} + + + + Latest Release + Ultima versione + + + + Checking ... + Controllo in corso... + + + + Download: {0} + Scaricamento: {0} + + + + GuiWordList + + + + Project Word List + Elenco delle parole del progetto + + + + Cannot add a blank word. + Impossibile aggiungere una parola vuota. + + + + The word '{0}' is already in the word list. + La parola '{0}' è già nella lista delle parole. + + + + GuiWritingStats + + + Writing Statistics + Statistiche di scrittura + + + + Session Start + Avvii di sessione + + + + Length + Durata + + + + Idle + Inattività + + + + Words + Parole + + + + Histogram + Istogramma + + + + Sum Totals + Totalizzazioni + + + + Total Time: + Tempo totale: + + + + Idle Time: + Tempo d'inattività: + + + + Filtered Time: + Tempo filtrato: + + + + Novel Word Count: + Conteggio parole del romanzo: + + + + Notes Word Count: + Conteggio parole delle note: + + + + Total Word Count: + Conteggio parole totali: + + + + Filters + Filtri + + + + Count novel files + Conteggio file del romanzo + + + + Count note files + Conteggio file delle note + + + + Hide zero word count + Nascondi il conteggio parole se a zero + + + + Hide negative word count + Nascondi il conteggio parole se negativo + + + + Group entries by day + Raggruppa le voci per giorno + + + + Show idle time + Mostra tempo d'inattività + + + + Word count cap for the histogram + Max n° di parole per l'istogramma + + + + Save As + Salva come + + + + JSON Data File (.json) + File di dati JSON (.json) + + + + CSV Data File (.csv) + File di dati CSV (.csv) + + + + JSON Data File + File di dati JSON + + + + CSV Data File + File di dati CSV + + + + Save Data As + Salva dati come + + + + {0} file successfully written to: + {0} file scritto correttamente in: + + + + Failed to write {0} file. + Scrittura file {0} non riuscita. + + + + Failed to read session log file. + Impossibile leggere il file di log della sessione. + + + + NWProject + + + Could not delete document file. + Impossibile eliminare il file del documento. + + + + Could not open project with path: {0} + Impossibile aprire il progetto con il percorso: {0} + + + + Unknown + Sconosciuto + + + + Project file does not appear to be a novelWriterXML file. + Il file del progetto non sembra essere un file novelWriterXML. + + + + Unknown or unsupported novelWriter project file format. The project cannot be opened by this version of novelWriter. The file was saved with novelWriter version {0}. + Formato file di progetto di novelWriter sconosciuto o non supportato. Il progetto non può essere aperto da questa versione di novelWriter. Il file è stato salvato con la versione {0} di novelWriter. + + + + Failed to parse project xml. + Impossibile analizzare il progetto xml. + + + + File Version + Versione del file + + + + The file format of your project is about to be updated. If you proceed, older versions of novelWriter will no longer be able to open this project. Continue? + Il formato del file del tuo progetto sta per essere aggiornato. Scegliendo di procedere, le versioni più vecchie di novelWriter non saranno più in grado di aprire questo progetto. Continuare? + + + + Version Conflict + Conflitto di versione + + + + This project was saved by a newer version of novelWriter, version {0}. This is version {1}. If you continue to open the project, some attributes and settings may not be preserved, but the overall project should be fine. Continue opening the project? + Questo progetto è stato salvato da una versione più recente di novelWriter, versione {0}. Questa è la versione {1}. Se si continua ad aprire il progetto, alcuni attributi e impostazioni potrebbero non essere preservati, ma il progetto complessivo dovrebbe andare bene. Continuare ad aprire il progetto? + + + + Opened Project: {0} + Progetto aperto: {0} + + + + There is no project open. + Non c'è nessun progetto aperto. + + + + Failed to save project. + Salvataggio del progetto non riuscito. + + + + Saved Project: {0} + Progetto salvato: {0} + + + + Backing up project ... + Crea una copia di backup ... + + + + Cannot backup project because no valid backup path is set. Please set a valid backup location in Preferences. + Impossibile eseguire il backup del progetto perché non è stato impostato alcun percorso di backup valido. Impostare una posizione di backup valida nelle Preferenze. + + + + Cannot backup project because no project name is set. Please set a Project Name in Project Settings. + Impossibile eseguire il backup del progetto perché nessun nome del progetto è impostato. Si prega di impostare un nome del progetto nelle impostazioni del progetto. + + + + Could not create backup folder. + Impossibile creare la cartella di backup. + + + + Backup from {0} + Backup da {0} + + + + Backup archive file written to: {0} + Archivio di backup del file scritto su: {0} + + + + Could not write backup archive. + Impossibile scrivere l'archivio di backup. + + + + Project backed up to '{0}' + Eseguito il backup del progetto su '{0}' + + + + + New + Nuovo + + + + Note + Nota + + + + Draft + Bozza + + + + Finished + Finito + + + + Minor + Minore + + + + Major + Maggiore + + + + Main + Principale + + + + Found {0} orphaned file(s) in project folder. + Trovato {0} file(s) orfani nella cartella del progetto. + + + + Recovered + Ripristinato + + + + [{0}] {1} + [{0}] {1} + + + + Recovered File {0} + Ripristinato il file {0} + + + + One or more orphaned files could not be added back into the project. Make sure at least a Novel root folder exists. + Uno o più file orfani non possono essere aggiunti di nuovo al progetto. Assicurati che esista almeno una cartella radice del romanzo. + + + + NovelSelector + + + All Novel Folders + Tutte le cartelle del romanzo + + + + ProjWizardCustomPage + + + Custom Project Options + Opzioni del progetto personalizzate + + + + Select which additional elements to populate the project with. You can skip making chapters and add only scenes by setting the number of chapters to 0. + Seleziona gli elementi aggiuntivi con cui allestire il progetto. È possibile saltare i capitoli e aggiungere solo scene impostando il numero di capitoli a 0. + + + + Add a folder for plot notes + Aggiungi una cartella per le note sulla trama + + + + Add a folder for character notes + Aggiunge una cartella per le note sui personaggi + + + + Add a folder for location notes + Aggiungi una cartella per le note sulle località + + + + Add example notes to the above + Aggiungi note di esempio alle precedenti + + + + Add chapters to the novel folder + Aggiungi capitoli alla cartella romanzo + + + + Add scenes to each chapter + Aggiungi scene ad ogni capitolo + + + + ProjWizardFinalPage + + + Summary + Riepilogo + + + + Project Name: {0} + Nome del progetto: {0} + + + + Project Path: {0} + Percorso del progetto: {0} + + + + Fill the project with a minimal set of items + Riempi il progetto con un insieme minimo di elementi + + + + Fill the project with example files + Riempi il progetto con file di esempio + + + + Add a folder for plot notes + Aggiunta una cartella per le note sulla trama + + + + Add a folder for character notes + Aggiunta una cartella per le note sui personaggi + + + + Add a folder for location notes + Aggiunta una cartella per le note sulle località + + + + Add example notes to the above + Aggiunte note di esempio alle precedenti + + + + Add {0} chapters to the novel folder + Aggiunti {0} capitoli alla cartella del romanzo + + + + Add {0} scenes to each chapter + Aggiunte {0} scene ad ogni capitolo + + + + Add {0} scenes + Aggiunte {0} scene + + + + You have selected the following: + Hai selezionato quanto segue: + + + + Press '{0}' to create the new project. + Premi '{0}' per creare il nuovo progetto. + + + + Done + Fatto + + + + Finish + Termina + + + + ProjWizardFolderPage + + + + Select Project Folder + Seleziona la cartella del progetto + + + + Select a location to store the project. A new project folder will be created in the selected location. + Selezionare una posizione per archiviare il progetto. Verrà creata una nuova cartella del progetto nella posizione selezionata. + + + + Required + Necessario + + + + Project Path + Percorso del progetto + + + + Error: A project folder cannot be created using this path. + Errore: non è possibile creare una cartella del progetto usando questo percorso. + + + + Error: The selected path already exists. + Errore: il percorso selezionato esiste già. + + + + ProjWizardIntroPage + + + Create New Project + Crea un nuovo progetto + + + + Provide at least a project name. The project name should not be changed beyond this point as it is used for generating file names for for instance backups. The other fields are optional and can be changed at any time in Project Settings. + Fornire almeno un nome del progetto. Il nome del progetto non deve essere cambiato oltre questo punto in quanto è usato per generare nomi di file, ad esempio per i backup. Gli altri campi sono opzionali e possono essere modificati in qualsiasi momento nelle impostazioni del progetto. + + + + Side image by {0}, {1} + L'immagine a lato è di {0}, {1} + + + + Required + Necessario + + + + + Optional + Facoltativo + + + + Project Name + Nome del progetto + + + + Novel Title + Titolo del romanzo + + + + Author(s) + Autore(i) + + + + ProjWizardPopulatePage + + + Populate Project + Allestisci il progetto + + + + Choose how to pre-fill the project. Either with a minimal set of starter items, an example project explaining and showing many of the features, or show further custom options on the next page. + Scegli come pre-compilare il progetto. O con un set minimo di elementi per iniziare, un progetto di esempio che spiega e mostra molte delle caratteristiche, oppure mostra ulteriori opzioni personalizzate nella pagina successiva. + + + + Fill the project with a minimal set of items + Allestisci il progetto con un insieme minimo di elementi + + + + Fill the project with example files + Allestisci il progetto con file di esempio + + + + Show detailed options for filling the project + Mostra le opzioni dettagliate per allestire il progetto + + + + ProjectBuilder + + + New Project + Nuovo progetto + + + + New Chapter + Nuovo capitolo + + + + New Scene + Nuova scena + + + + Title Page + Pagina del titolo + + + + By + Di + + + + Summary of the chapter. + Riassunto del capitolo. + + + + Summary of the scene. + Riassunto della scena. + + + + Chapter {0} + Capitolo {0} + + + + + Scene {0} + Scena {0} + + + + Main Plot + Trama principale + + + + Protagonist + Protagonista + + + + Main Location + Località principale + + + + Failed to create a new example project. + Impossibile creare un nuovo progetto di esempio. + + + + Failed to create a new example project. Could not find the necessary files. They seem to be missing from this installation. + Impossibile creare un nuovo progetto di esempio. Impossibile trovare i file necessari. Sembrano mancanti da questa installazione. + + + + QDialogButtonBox + + + OK + OK + + + + QGnomeTheme + + + &OK + &OK + + + + &Save + &Salva + + + + &Cancel + &Cancella + + + + &Close + &Chiudi + + + + Close without Saving + Chiudi senza salvare + + + + QPlatformTheme + + + OK + OK + + + + Save + Salva + + + + Save All + Salva tutto + + + + Open + Apri + + + + &Yes + &Sì + + + + Yes to &All + Sì a &tutto + + + + &No + &No + + + + N&o to All + N&o a tutto + + + + Abort + Interrompi + + + + Retry + Riprova + + + + Ignore + Ignora + + + + Close + Chiudi + + + + Cancel + Cancella + + + + Discard + Scarta + + + + Help + Aiuto + + + + Apply + Applica + + + + Reset + Ripristina + + + + Restore Defaults + Ripristina predefiniti + + + + QWizard + + + Go Back + Torna indietro + + + + < &Back + < &Indietro + + + + Continue + Continua + + + + &Next + &Successivo + + + + &Next > + &Successivo > + + + + Commit + Esegui + + + + Done + Fatto + + + + &Finish + &Termina + + + + + Cancel + Cancella + + + + Help + Aiuto + + + + &Help + &Aiuto + + + + Tokenizer + + + Synopsis + Sinossi + + + + Document '{0}' is too big ({1} MB). Skipping. + Il documento '{0}' è troppo grande ({1} MB). Saltare. + + + + ERROR + ERRORE + + + diff --git a/novelwriter/assets/i18n/project_it_IT.json b/novelwriter/assets/i18n/project_it_IT.json new file mode 100644 index 00000000..e9f9bcaa --- /dev/null +++ b/novelwriter/assets/i18n/project_it_IT.json @@ -0,0 +1,105 @@ +{ + "Synopsis": "Sinossi", + "Comment": "Commento", + "Notes": "Note", + "0": "Zero", + "1": "Uno", + "2": "Due", + "3": "Tre", + "4": "Quattro", + "5": "Cinque", + "6": "Sei", + "7": "Sette", + "8": "Otto", + "9": "Nove", + "10": "Dieci", + "11": "Undici", + "12": "Dodici", + "13": "Tredici", + "14": "Quattordici", + "15": "Quindici", + "16": "Sedici", + "17": "Diciassette", + "18": "Diciotto", + "19": "Diciannove", + "20": "Venti", + "21": "Ventuno", + "22": "Ventidue", + "23": "Ventitré", + "24": "Ventiquattro", + "25": "Venticinque", + "26": "Ventisei", + "27": "Ventisette", + "28": "Ventotto", + "29": "Ventinove", + "30": "Trenta", + "31": "Trentuno", + "32": "Trentadue", + "33": "Trentatré", + "34": "Trentaquattro", + "35": "Trentacinque", + "36": "Trentasei", + "37": "Trentasette", + "38": "Trentotto", + "39": "Trentanove", + "40": "Quaranta", + "41": "Quarantuno", + "42": "Quarantadue", + "43": "Quarantatré", + "44": "Quarantaquattro", + "45": "Quarantacinque", + "46": "Quarantasei", + "47": "Quarantasette", + "48": "Quarantotto", + "49": "Quarantanove", + "50": "Cinquanta", + "51": "Cinquantuno", + "52": "Cinquantadue", + "53": "Cinquantatré", + "54": "Cinquantaquattro", + "55": "Cinquantacinque", + "56": "Cinquantasei", + "57": "Cinquantasette", + "58": "Cinquantotto", + "59": "Cinquantanove", + "60": "Sessanta", + "61": "Sessantuno", + "62": "Sessantadue", + "63": "Sessantatre", + "64": "Sessantaquattro", + "65": "Sessantacinque", + "66": "Sessantasei", + "67": "Sessantasette", + "68": "Sessantotto", + "69": "Sessantanove", + "70": "Settanta", + "71": "Settantuno", + "72": "Settantadue", + "73": "Settantatré", + "74": "Settantaquattro", + "75": "Settantacinque", + "76": "Settantasei", + "77": "Settantasette", + "78": "Settantotto", + "79": "Settantanove", + "80": "Ottanta", + "81": "Ottantuno", + "82": "Ottantadue", + "83": "Ottantatré", + "84": "Ottantaquattro", + "85": "Ottantacinque", + "86": "Ottantasei", + "87": "Ottantasette", + "88": "Ottantotto", + "89": "Ottantanove", + "90": "Novanta", + "91": "Novantuno", + "92": "Novantadue", + "93": "Novantatré", + "94": "Novantaquattro", + "95": "Novantacinque", + "96": "Novantasei", + "97": "Novantasette", + "98": "Novantotto", + "99": "Novantanove" +} diff --git a/novelwriter/assets/text/credits_en.htm b/novelwriter/assets/text/credits_en.htm index 26cd3dab..c696781d 100644 --- a/novelwriter/assets/text/credits_en.htm +++ b/novelwriter/assets/text/credits_en.htm @@ -25,6 +25,7 @@ translators for the languages currently available:

Dutch: Martijn van der Kleijn (@mvdkleijn)
French: Jan Lüdke (@jyhelle)
German: Myian (@heymyian)
+ Italian: Riccardo Mangili
Latin American Spanish: Tommy Marplatt (@tmarplatt)
Norwegian: Veronica Berglyd Olsen (@vkbo)
Portuguese: Bruno Meneguello (@bkmeneguello)
From 4b7a4e078979cb5efd789783eb2695a4c96413d6 Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 12 Feb 2023 08:36:30 +0100 Subject: [PATCH 4/8] Fix capitalisation in Portuguese translation --- i18n/nw_pt_BR.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/i18n/nw_pt_BR.ts b/i18n/nw_pt_BR.ts index 9dcaf7c8..7a3d9602 100644 --- a/i18n/nw_pt_BR.ts +++ b/i18n/nw_pt_BR.ts @@ -2093,7 +2093,7 @@ Column Size - Tamanho da coluna + Tamanho da Coluna
From cce1ef54d817377ef39c0f34eff9db478dc13d8d Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 12 Feb 2023 12:54:05 +0100 Subject: [PATCH 5/8] Fix Open Document warning on settings.xml and bump version to 1.3 --- novelwriter/core/toodt.py | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/novelwriter/core/toodt.py b/novelwriter/core/toodt.py index 968d7b87..f4740f13 100644 --- a/novelwriter/core/toodt.py +++ b/novelwriter/core/toodt.py @@ -65,7 +65,7 @@ def _mkTag(nsName, tagName, nsMap=XML_NS): # Mimetype and Version X_MIME = "application/vnd.oasis.opendocument.text" -X_VERS = "1.2" +X_VERS = "1.3" # Text Formatting Tags TAG_BR = _mkTag("text", "line-break") @@ -503,9 +503,8 @@ class ToOdt(Tokenizer): etree.SubElement(xMani, mFile, attrib={mPath: "styles.xml", mType: "text/xml"}) oRoot = _mkTag("office", "document-settings", nsMap=OFFICE_NS) - oSett = _mkTag("office", "settings", nsMap=OFFICE_NS) - xSett = etree.Element(oRoot, nsmap=OFFICE_NS) - etree.SubElement(xSett, oSett) + oVers = _mkTag("office", "version", nsMap=OFFICE_NS) + xSett = etree.Element(oRoot, nsmap=OFFICE_NS, attrib={oVers: X_VERS}) with ZipFile(savePath, mode="w") as outFile: outFile.writestr("mimetype", X_MIME) From 5796d55531a9d31aeffc7aaab3ab686fa75efecb Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 12 Feb 2023 13:27:43 +0100 Subject: [PATCH 6/8] Title elements should be paragraph, not heading to be valid ODF --- novelwriter/core/toodt.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/novelwriter/core/toodt.py b/novelwriter/core/toodt.py index f4740f13..11658441 100644 --- a/novelwriter/core/toodt.py +++ b/novelwriter/core/toodt.py @@ -408,7 +408,7 @@ class ToOdt(Tokenizer): elif tType == self.T_TITLE: tHead = tText.replace(r"\\", "\n") - self._addTextPar("Title", oStyle, tHead, isHead=True) + self._addTextPar("Title", oStyle, tHead, isHead=False) elif tType == self.T_UNNUM: tHead = tText.replace(r"\\", "\n") From c39e37c799fd31529bdd5782f51de729801aa414 Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 12 Feb 2023 14:44:01 +0100 Subject: [PATCH 7/8] Add more meta data to supporet adding fields in LibreOffice --- novelwriter/core/toodt.py | 33 +++++++++++++++++++++++++++++---- 1 file changed, 29 insertions(+), 4 deletions(-) diff --git a/novelwriter/core/toodt.py b/novelwriter/core/toodt.py index 11658441..a874fcfd 100644 --- a/novelwriter/core/toodt.py +++ b/novelwriter/core/toodt.py @@ -44,12 +44,13 @@ XML_NS = { "text": "urn:oasis:names:tc:opendocument:xmlns:text:1.0", "meta": "urn:oasis:names:tc:opendocument:xmlns:meta:1.0", "fo": "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0", + "dc": "http://purl.org/dc/elements/1.1/", } MANI_NS = { "manifest": "urn:oasis:names:tc:opendocument:xmlns:manifest:1.0" } OFFICE_NS = { - "office": XML_NS["office"] + "office": "urn:oasis:names:tc:opendocument:xmlns:office:1.0", } @@ -328,13 +329,37 @@ class ToOdt(Tokenizer): self._xText = etree.SubElement(self._xBody, _mkTag("office", "text")) - # Meta Data + timeStamp = datetime.now().isoformat(sep="T", timespec="seconds") + + # Office Meta Data xMeta = etree.SubElement(self._xMeta, _mkTag("meta", "creation-date")) - xMeta.text = datetime.now().isoformat(sep="T", timespec="seconds") + xMeta.text = timeStamp xMeta = etree.SubElement(self._xMeta, _mkTag("meta", "generator")) xMeta.text = f"novelWriter/{novelwriter.__version__}" + xMeta = etree.SubElement(self._xMeta, _mkTag("meta", "initial-creator")) + xMeta.text = self.theProject.data.author + + xMeta = etree.SubElement(self._xMeta, _mkTag("meta", "editing-cycles")) + xMeta.text = str(self.theProject.data.saveCount) + + # Format is: PnYnMnDTnHnMnS + # https://www.w3.org/TR/2004/REC-xmlschema-2-20041028/#duration + eT = self.theProject.data.editTime + xMeta = etree.SubElement(self._xMeta, _mkTag("meta", "editing-duration")) + xMeta.text = f"P{eT//86400:d}DT{eT%86400//3600:d}H{eT%3600//60:d}M{eT%60:d}S" + + # Dublin Core Meta Data + xMeta = etree.SubElement(self._xMeta, _mkTag("dc", "title")) + xMeta.text = self.theProject.data.title or self.theProject.data.name + + xMeta = etree.SubElement(self._xMeta, _mkTag("dc", "date")) + xMeta.text = timeStamp + + xMeta = etree.SubElement(self._xMeta, _mkTag("dc", "creator")) + xMeta.text = self.theProject.data.author + self._pageStyles() self._defaultStyles() self._useableStyles() @@ -408,7 +433,7 @@ class ToOdt(Tokenizer): elif tType == self.T_TITLE: tHead = tText.replace(r"\\", "\n") - self._addTextPar("Title", oStyle, tHead, isHead=False) + self._addTextPar("Title", oStyle, tHead, isHead=False) # Title must be text:p elif tType == self.T_UNNUM: tHead = tText.replace(r"\\", "\n") From 7638db21ec71bc51df83509a87842d517e3d11bc Mon Sep 17 00:00:00 2001 From: Veronica Berglyd Olsen <1619840+vkbo@users.noreply.github.com> Date: Sun, 12 Feb 2023 15:12:39 +0100 Subject: [PATCH 8/8] Fix tests --- novelwriter/core/toodt.py | 2 +- .../coreToOdt_SaveFlat_document.fodt | 14 +++++++++---- .../reference/coreToOdt_SaveFull_content.xml | 2 +- .../reference/coreToOdt_SaveFull_manifest.xml | 4 ++-- tests/reference/coreToOdt_SaveFull_meta.xml | 12 ++++++++--- .../reference/coreToOdt_SaveFull_settings.xml | 4 +--- tests/reference/coreToOdt_SaveFull_styles.xml | 4 ++-- .../guiBuild_Tool_Step1_Lorem_Ipsum.fodt | 14 +++++++++---- .../guiBuild_Tool_Step2_Lorem_Ipsum.fodt | 20 ++++++++++++------- .../guiBuild_Tool_Step3_Lorem_Ipsum.fodt | 20 ++++++++++++------- tests/test_core/test_core_toodt.py | 17 ++++++++++++---- tests/test_tools/test_tools_build.py | 8 ++++---- tests/tools.py | 1 + 13 files changed, 80 insertions(+), 42 deletions(-) diff --git a/novelwriter/core/toodt.py b/novelwriter/core/toodt.py index a874fcfd..2f6e1f0b 100644 --- a/novelwriter/core/toodt.py +++ b/novelwriter/core/toodt.py @@ -262,7 +262,7 @@ class ToOdt(Tokenizer): # =============== if self._headerText == "": - theTitle = self.theProject.data.title + theTitle = self.theProject.data.title or self.theProject.data.name theAuth = self.theProject.data.author self._headerText = f"{theTitle} / {theAuth} /" diff --git a/tests/reference/coreToOdt_SaveFlat_document.fodt b/tests/reference/coreToOdt_SaveFlat_document.fodt index a6436607..6e879a5c 100644 --- a/tests/reference/coreToOdt_SaveFlat_document.fodt +++ b/tests/reference/coreToOdt_SaveFlat_document.fodt @@ -1,8 +1,14 @@ - + - 2022-01-02T19:56:15 - novelWriter/1.6-alpha0 + 2023-02-12T15:10:11 + novelWriter/2.0.4 + Jane Smith + 1234 + P42DT12H34M56S + Test Project + 2023-02-12T15:10:11 + Jane Smith @@ -66,7 +72,7 @@ - / / 2 + Test Project / Jane Smith / 2 diff --git a/tests/reference/coreToOdt_SaveFull_content.xml b/tests/reference/coreToOdt_SaveFull_content.xml index bb1eb27c..4e191f7c 100644 --- a/tests/reference/coreToOdt_SaveFull_content.xml +++ b/tests/reference/coreToOdt_SaveFull_content.xml @@ -1,5 +1,5 @@ - + diff --git a/tests/reference/coreToOdt_SaveFull_manifest.xml b/tests/reference/coreToOdt_SaveFull_manifest.xml index df81d9bc..f939a7b3 100644 --- a/tests/reference/coreToOdt_SaveFull_manifest.xml +++ b/tests/reference/coreToOdt_SaveFull_manifest.xml @@ -1,6 +1,6 @@ - - + + diff --git a/tests/reference/coreToOdt_SaveFull_meta.xml b/tests/reference/coreToOdt_SaveFull_meta.xml index f280ad49..79930faa 100644 --- a/tests/reference/coreToOdt_SaveFull_meta.xml +++ b/tests/reference/coreToOdt_SaveFull_meta.xml @@ -1,7 +1,13 @@ - + - 2021-08-13T18:54:46 - novelWriter/1.5-alpha0 + 2023-02-12T15:09:03 + novelWriter/2.0.4 + Jane Smith + 1234 + P42DT12H34M56S + Test Project + 2023-02-12T15:09:03 + Jane Smith diff --git a/tests/reference/coreToOdt_SaveFull_settings.xml b/tests/reference/coreToOdt_SaveFull_settings.xml index 96545148..7b5218f2 100644 --- a/tests/reference/coreToOdt_SaveFull_settings.xml +++ b/tests/reference/coreToOdt_SaveFull_settings.xml @@ -1,4 +1,2 @@ - - - + diff --git a/tests/reference/coreToOdt_SaveFull_styles.xml b/tests/reference/coreToOdt_SaveFull_styles.xml index c0c1bc7d..5319adf2 100644 --- a/tests/reference/coreToOdt_SaveFull_styles.xml +++ b/tests/reference/coreToOdt_SaveFull_styles.xml @@ -1,5 +1,5 @@ - + @@ -59,7 +59,7 @@ - / / 2 + Test Project / Jane Smith / 2 diff --git a/tests/reference/guiBuild_Tool_Step1_Lorem_Ipsum.fodt b/tests/reference/guiBuild_Tool_Step1_Lorem_Ipsum.fodt index d76fd988..d327ee5b 100644 --- a/tests/reference/guiBuild_Tool_Step1_Lorem_Ipsum.fodt +++ b/tests/reference/guiBuild_Tool_Step1_Lorem_Ipsum.fodt @@ -1,8 +1,14 @@ - + - 2022-01-02T19:51:47 - novelWriter/1.6-alpha0 + 2023-02-12T14:52:03 + novelWriter/2.0.4 + lipsum.com + 38 + P0DT0H31M40S + Lorem Ipsum + 2023-02-12T14:52:03 + lipsum.com @@ -87,7 +93,7 @@ - Lorem Ipsum + Lorem Ipsum By lipsum.com “Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…” “There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…” diff --git a/tests/reference/guiBuild_Tool_Step2_Lorem_Ipsum.fodt b/tests/reference/guiBuild_Tool_Step2_Lorem_Ipsum.fodt index 52049d2a..d179c99d 100644 --- a/tests/reference/guiBuild_Tool_Step2_Lorem_Ipsum.fodt +++ b/tests/reference/guiBuild_Tool_Step2_Lorem_Ipsum.fodt @@ -1,8 +1,14 @@ - + - 2022-01-02T19:52:00 - novelWriter/1.6-alpha0 + 2023-02-12T15:00:22 + novelWriter/2.0.4 + lipsum.com + 38 + P0DT0H31M40S + Lorem Ipsum + 2023-02-12T15:00:22 + lipsum.com @@ -99,7 +105,7 @@ - Lorem Ipsum + Lorem Ipsum By lipsum.com “Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…” “There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…” @@ -180,19 +186,19 @@ Donec luctus lectus efficitur, blandit nisi vitae, dignissim tellus. Pellentesque euismod pharetra augue gravida hendrerit. Quisque nisi mi, mattis ac nisi non, maximus malesuada ante. Nulla lobortis, diam eu ornare ornare, tellus enim feugiat arcu, non vestibulum tortor nunc eu justo. Integer blandit felis justo, eu semper est scelerisque vel. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam ultricies, nisi vel elementum commodo, nisl dolor tincidunt magna, sed varius est nunc at lectus. Aliquam dolor tortor, sodales placerat ultricies quis, sodales quis sapien. Duis ullamcorper sollicitudin risus at mattis. Integer consequat et nunc at condimentum. Pellentesque cursus congue augue, non suscipit lectus sodales ut. Nam a mi bibendum, blandit nisl eu, accumsan nunc. Aliquam a ex mauris. Sed nec sem quis arcu dignissim tempus eget et turpis. Ut sed ex nec ipsum ultrices lobortis. Pellentesque rhoncus pharetra eros, non mollis nisi pretium non. Mauris accumsan quis odio quis euismod. Maecenas ultrices, augue et aliquam tincidunt, erat tellus ornare ligula, quis ultrices turpis nibh vel justo. Fusce gravida odio tellus. In a congue diam. Mauris consequat ex id leo lacinia dictum. Fusce id sem sodales, ultrices sapien ac, convallis orci. Donec gravida nunc sit amet nisi hendrerit, sed porta enim aliquam. In hac habitasse platea dictumst. Cras a orci felis. Curabitur non felis nec urna maximus auctor ut ut nisi. Curabitur at turpis eleifend, blandit eros at, molestie odio. Phasellus euismod neque augue. Integer egestas maximus leo eu facilisis. Nunc rhoncus dignissim lectus eu lacinia. Praesent lacinia urna porttitor aliquam condimentum. Nulla eu eros dictum, dictum nunc vitae, sagittis nibh. Integer ante neque, consequat nec sollicitudin id, consectetur vitae dolor. Nullam volutpat sem orci, quis viverra magna auctor a. Suspendisse potenti. Maecenas commodo sed neque pellentesque vehicula. Sed luctus nisl risus, elementum semper purus interdum vel. Ut pulvinar, massa sit amet venenatis placerat, nunc lacus hendrerit odio, non aliquet nunc risus eu lectus. Maecenas feugiat semper ligula, id lobortis sem porta eu. Integer posuere elit magna, at mollis eros bibendum et. Ut imperdiet purus vel nulla aliquam maximus. Morbi sodales purus tellus, a rhoncus sem rutrum sit amet. Quisque risus sem, laoreet nec convallis nec, rutrum vitae justo. - Notes: Characters + Notes: Characters Nobody Owens Tag: Bod Plot: Main Pellentesque nec erat ut nulla posuere commodo. Curabitur nisi augue, imperdiet et porta imperdiet, efficitur id leo. Cras finibus arcu at nibh commodo congue. Proin suscipit placerat condimentum. Aenean ante enim, cursus id lorem a, blandit venenatis nibh. Maecenas suscipit porta elit, sit amet porta felis porttitor eu. Sed a dui nibh. Phasellus sed faucibus dui. Pellentesque felis nulla, ultrices non efficitur quis, rutrum id mi. Mauris tempus auctor nisl, in bibendum enim pellentesque sit amet. Proin nunc lacus, imperdiet nec posuere ac, interdum non lectus. Suspendisse faucibus est auctor orci mollis luctus. Praesent quis sodales neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Donec sodales rutrum mattis. In in sem ornare, consequat nulla ac, convallis arcu. Duis ac metus id felis commodo commodo sit amet eget diam. Curabitur rhoncus lacinia leo at sodales. Etiam finibus porta diam a viverra. Praesent nisi urna, volutpat sit amet odio at, vehicula vehicula leo. In non enim eget nisl luctus commodo. Pellentesque pellentesque at lectus at luctus. Quisque nec felis bibendum, lacinia libero ut, lacinia eros. Integer finibus ultricies nibh sit amet placerat. Nullam scelerisque velit et tortor congue vestibulum a at nisi. Vivamus sodales ut turpis a convallis. In dignissim nibh at luctus sodales. Etiam sit amet rhoncus massa. Phasellus ligula magna, sollicitudin non imperdiet sit amet, volutpat vel magna. Nunc vestibulum tempor lectus, sit amet porta nunc hendrerit in. Curabitur non odio sit amet massa tincidunt facilisis. Integer et luctus nunc, eget euismod leo. Praesent faucibus metus sed purus convallis scelerisque. Fusce viverra lorem et placerat malesuada. In at elit malesuada, ullamcorper risus vitae, sodales dolor. Donec quis elementum lectus. Quisque eu eros at dui imperdiet euismod ut id neque. - Notes: Plot + Notes: Plot Main Plot Tag: Main Suspendisse vulputate malesuada pellentesque. Aenean sollicitudin cursus mi, vitae ultricies felis ullamcorper eu. Duis luctus risus mi, in accumsan velit cursus ut. Vestibulum eleifend leo in magna eleifend fermentum. Proin nec ornare elit. Phasellus nec interdum risus. In a volutpat augue, quis egestas justo. Morbi porta mauris mattis bibendum imperdiet. Mauris ut erat eu lorem malesuada egestas vel vel urna. Maecenas ac semper quam. Maecenas aliquet metus non interdum mattis. Proin consectetur molestie ligula. Aliquam sollicitudin pulvinar urna a pellentesque. Suspendisse ultrices, est mattis scelerisque porta, nisi nisi laoreet nisl, non condimentum quam ante a velit. Proin scelerisque justo augue, nec laoreet ligula egestas at. Etiam enim quam, ultrices non accumsan hendrerit, elementum vel ligula. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam efficitur odio libero, in vestibulum arcu aliquam at. Cras non vehicula augue. Integer lobortis, est vitae aliquam facilisis, metus ligula aliquet eros, at porttitor sem tortor eget massa. Aliquam varius scelerisque neque sed gravida. Aenean eleifend lorem id ante elementum sollicitudin. Proin commodo massa a quam volutpat, mollis fermentum turpis efficitur. - Notes: World + Notes: World Ancient Europe Tag: Europe Vivamus sodales risus ac accumsan posuere. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nunc vel enim felis. Vestibulum dignissim massa nunc, a auctor magna eleifend et. Proin dignissim sodales erat vitae convallis. Aliquam id tellus dui. Curabitur sollicitudin scelerisque ex sit amet posuere. Nam rutrum felis id rhoncus feugiat. Duis sagittis quam quis purus efficitur, quis rutrum odio iaculis. Maecenas semper ante turpis, at vulputate mi consectetur non. Sed rutrum nibh turpis, quis rhoncus purus ornare quis. Vestibulum at rutrum mauris. Integer dolor nisi, tincidunt eget vehicula ac, ultricies at ligula. diff --git a/tests/reference/guiBuild_Tool_Step3_Lorem_Ipsum.fodt b/tests/reference/guiBuild_Tool_Step3_Lorem_Ipsum.fodt index 0cf7403d..ca391d27 100644 --- a/tests/reference/guiBuild_Tool_Step3_Lorem_Ipsum.fodt +++ b/tests/reference/guiBuild_Tool_Step3_Lorem_Ipsum.fodt @@ -1,8 +1,14 @@ - + - 2022-01-02T19:52:33 - novelWriter/1.6-alpha0 + 2023-02-12T15:01:25 + novelWriter/2.0.4 + lipsum.com + 38 + P0DT0H31M40S + Lorem Ipsum + 2023-02-12T15:01:25 + lipsum.com @@ -99,7 +105,7 @@ - Lorem Ipsum + Lorem Ipsum By lipsum.com “Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit…” “There is no one who loves pain itself, who seeks after it and wants to have it, simply because it is pain…” @@ -180,19 +186,19 @@ Donec luctus lectus efficitur, blandit nisi vitae, dignissim tellus. Pellentesque euismod pharetra augue gravida hendrerit. Quisque nisi mi, mattis ac nisi non, maximus malesuada ante. Nulla lobortis, diam eu ornare ornare, tellus enim feugiat arcu, non vestibulum tortor nunc eu justo. Integer blandit felis justo, eu semper est scelerisque vel. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nam ultricies, nisi vel elementum commodo, nisl dolor tincidunt magna, sed varius est nunc at lectus. Aliquam dolor tortor, sodales placerat ultricies quis, sodales quis sapien. Duis ullamcorper sollicitudin risus at mattis. Integer consequat et nunc at condimentum. Pellentesque cursus congue augue, non suscipit lectus sodales ut. Nam a mi bibendum, blandit nisl eu, accumsan nunc. Aliquam a ex mauris. Sed nec sem quis arcu dignissim tempus eget et turpis. Ut sed ex nec ipsum ultrices lobortis. Pellentesque rhoncus pharetra eros, non mollis nisi pretium non. Mauris accumsan quis odio quis euismod. Maecenas ultrices, augue et aliquam tincidunt, erat tellus ornare ligula, quis ultrices turpis nibh vel justo. Fusce gravida odio tellus. In a congue diam. Mauris consequat ex id leo lacinia dictum. Fusce id sem sodales, ultrices sapien ac, convallis orci. Donec gravida nunc sit amet nisi hendrerit, sed porta enim aliquam. In hac habitasse platea dictumst. Cras a orci felis. Curabitur non felis nec urna maximus auctor ut ut nisi. Curabitur at turpis eleifend, blandit eros at, molestie odio. Phasellus euismod neque augue. Integer egestas maximus leo eu facilisis. Nunc rhoncus dignissim lectus eu lacinia. Praesent lacinia urna porttitor aliquam condimentum. Nulla eu eros dictum, dictum nunc vitae, sagittis nibh. Integer ante neque, consequat nec sollicitudin id, consectetur vitae dolor. Nullam volutpat sem orci, quis viverra magna auctor a. Suspendisse potenti. Maecenas commodo sed neque pellentesque vehicula. Sed luctus nisl risus, elementum semper purus interdum vel. Ut pulvinar, massa sit amet venenatis placerat, nunc lacus hendrerit odio, non aliquet nunc risus eu lectus. Maecenas feugiat semper ligula, id lobortis sem porta eu. Integer posuere elit magna, at mollis eros bibendum et. Ut imperdiet purus vel nulla aliquam maximus. Morbi sodales purus tellus, a rhoncus sem rutrum sit amet. Quisque risus sem, laoreet nec convallis nec, rutrum vitae justo. - Notes: Characters + Notes: Characters Nobody Owens Tag: Bod Plot: Main Pellentesque nec erat ut nulla posuere commodo. Curabitur nisi augue, imperdiet et porta imperdiet, efficitur id leo. Cras finibus arcu at nibh commodo congue. Proin suscipit placerat condimentum. Aenean ante enim, cursus id lorem a, blandit venenatis nibh. Maecenas suscipit porta elit, sit amet porta felis porttitor eu. Sed a dui nibh. Phasellus sed faucibus dui. Pellentesque felis nulla, ultrices non efficitur quis, rutrum id mi. Mauris tempus auctor nisl, in bibendum enim pellentesque sit amet. Proin nunc lacus, imperdiet nec posuere ac, interdum non lectus. Suspendisse faucibus est auctor orci mollis luctus. Praesent quis sodales neque. Interdum et malesuada fames ac ante ipsum primis in faucibus. Donec sodales rutrum mattis. In in sem ornare, consequat nulla ac, convallis arcu. Duis ac metus id felis commodo commodo sit amet eget diam. Curabitur rhoncus lacinia leo at sodales. Etiam finibus porta diam a viverra. Praesent nisi urna, volutpat sit amet odio at, vehicula vehicula leo. In non enim eget nisl luctus commodo. Pellentesque pellentesque at lectus at luctus. Quisque nec felis bibendum, lacinia libero ut, lacinia eros. Integer finibus ultricies nibh sit amet placerat. Nullam scelerisque velit et tortor congue vestibulum a at nisi. Vivamus sodales ut turpis a convallis. In dignissim nibh at luctus sodales. Etiam sit amet rhoncus massa. Phasellus ligula magna, sollicitudin non imperdiet sit amet, volutpat vel magna. Nunc vestibulum tempor lectus, sit amet porta nunc hendrerit in. Curabitur non odio sit amet massa tincidunt facilisis. Integer et luctus nunc, eget euismod leo. Praesent faucibus metus sed purus convallis scelerisque. Fusce viverra lorem et placerat malesuada. In at elit malesuada, ullamcorper risus vitae, sodales dolor. Donec quis elementum lectus. Quisque eu eros at dui imperdiet euismod ut id neque. - Notes: Plot + Notes: Plot Main Plot Tag: Main Suspendisse vulputate malesuada pellentesque. Aenean sollicitudin cursus mi, vitae ultricies felis ullamcorper eu. Duis luctus risus mi, in accumsan velit cursus ut. Vestibulum eleifend leo in magna eleifend fermentum. Proin nec ornare elit. Phasellus nec interdum risus. In a volutpat augue, quis egestas justo. Morbi porta mauris mattis bibendum imperdiet. Mauris ut erat eu lorem malesuada egestas vel vel urna. Maecenas ac semper quam. Maecenas aliquet metus non interdum mattis. Proin consectetur molestie ligula. Aliquam sollicitudin pulvinar urna a pellentesque. Suspendisse ultrices, est mattis scelerisque porta, nisi nisi laoreet nisl, non condimentum quam ante a velit. Proin scelerisque justo augue, nec laoreet ligula egestas at. Etiam enim quam, ultrices non accumsan hendrerit, elementum vel ligula. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Nam efficitur odio libero, in vestibulum arcu aliquam at. Cras non vehicula augue. Integer lobortis, est vitae aliquam facilisis, metus ligula aliquet eros, at porttitor sem tortor eget massa. Aliquam varius scelerisque neque sed gravida. Aenean eleifend lorem id ante elementum sollicitudin. Proin commodo massa a quam volutpat, mollis fermentum turpis efficitur. - Notes: World + Notes: World Ancient Europe Tag: Europe Vivamus sodales risus ac accumsan posuere. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia curae; Nunc vel enim felis. Vestibulum dignissim massa nunc, a auctor magna eleifend et. Proin dignissim sodales erat vitae convallis. Aliquam id tellus dui. Curabitur sollicitudin scelerisque ex sit amet posuere. Nam rutrum felis id rhoncus feugiat. Duis sagittis quam quis purus efficitur, quis rutrum odio iaculis. Maecenas semper ante turpis, at vulputate mi consectetur non. Sed rutrum nibh turpis, quis rhoncus purus ornare quis. Vestibulum at rutrum mauris. Integer dolor nisi, tincidunt eget vehicula ac, ultricies at ligula. diff --git a/tests/test_core/test_core_toodt.py b/tests/test_core/test_core_toodt.py index 22ea18be..fedfbcf3 100644 --- a/tests/test_core/test_core_toodt.py +++ b/tests/test_core/test_core_toodt.py @@ -25,7 +25,7 @@ import zipfile from lxml import etree from shutil import copyfile -from tools import cmpFiles +from tools import ODT_IGNORE, cmpFiles from novelwriter.core.toodt import ToOdt, ODTParagraphStyle, ODTTextStyle, XMLParagraph, _mkTag from novelwriter.core.project import NWProject @@ -37,6 +37,7 @@ XML_NS = [ ' xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0"', ' xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0"', ' xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"', + ' xmlns:dc="http://purl.org/dc/elements/1.1/"' ] @@ -304,7 +305,7 @@ def testCoreToOdt_Convert(mockGUI): assert theDoc.getErrors() == [] assert xmlToText(theDoc._xText) == ( '' - 'Title' + 'Title' '' ) @@ -615,6 +616,10 @@ def testCoreToOdt_SaveFlat(mockGUI, fncPath, tstPaths): """Test the document save functions. """ theProject = NWProject(mockGUI) + theProject.data.setAuthor("Jane Smith") + theProject.data.setName("Test Project") + theProject.data.setSaveCount(1234) + theProject.data.setEditTime(3674096) theDoc = ToOdt(theProject, isFlat=True) theDoc._isNovel = True @@ -641,7 +646,7 @@ def testCoreToOdt_SaveFlat(mockGUI, fncPath, tstPaths): assert flatFile.exists() copyfile(flatFile, testFile) - assert cmpFiles(testFile, compFile, [4, 5]) + assert cmpFiles(testFile, compFile, ignoreStart=ODT_IGNORE) # END Test testCoreToOdt_SaveFlat @@ -651,6 +656,10 @@ def testCoreToOdt_SaveFull(mockGUI, fncPath, tstPaths): """Test the document save functions. """ theProject = NWProject(mockGUI) + theProject.data.setAuthor("Jane Smith") + theProject.data.setName("Test Project") + theProject.data.setSaveCount(1234) + theProject.data.setEditTime(3674096) theDoc = ToOdt(theProject, isFlat=False) theDoc._isNovel = True @@ -719,7 +728,7 @@ def testCoreToOdt_SaveFull(mockGUI, fncPath, tstPaths): assert cmpFiles(maniFile, maniComp) assert cmpFiles(settFile, settComp) assert cmpFiles(contFile, contComp) - assert cmpFiles(metaFile, metaComp, [4, 5]) + assert cmpFiles(metaFile, metaComp, ignoreStart=ODT_IGNORE) assert cmpFiles(stylFile, stylComp) # END Test testCoreToOdt_SaveFull diff --git a/tests/test_tools/test_tools_build.py b/tests/test_tools/test_tools_build.py index 259e0924..e8dd5dce 100644 --- a/tests/test_tools/test_tools_build.py +++ b/tests/test_tools/test_tools_build.py @@ -23,7 +23,7 @@ import pytest from shutil import copyfile -from tools import cmpFiles, getGuiItem +from tools import ODT_IGNORE, cmpFiles, getGuiItem from PyQt5.QtCore import Qt from PyQt5.QtWidgets import QAction, QFileDialog @@ -103,7 +103,7 @@ def testToolBuild_Main(qtbot, monkeypatch, nwGUI, prjLipsum, tstPaths): testFile = tstPaths.outDir / "guiBuild_Tool_Step1_Lorem_Ipsum.fodt" compFile = tstPaths.refDir / "guiBuild_Tool_Step1_Lorem_Ipsum.fodt" copyfile(projFile, testFile) - assert cmpFiles(testFile, compFile, [4, 5]) + assert cmpFiles(testFile, compFile, ignoreStart=ODT_IGNORE) # Change Title Formats and Flip Switches nwBuild.fmtChapter.setText(r"Chapter %chw%: %title%") @@ -147,7 +147,7 @@ def testToolBuild_Main(qtbot, monkeypatch, nwGUI, prjLipsum, tstPaths): testFile = tstPaths.outDir / "guiBuild_Tool_Step2_Lorem_Ipsum.fodt" compFile = tstPaths.refDir / "guiBuild_Tool_Step2_Lorem_Ipsum.fodt" copyfile(projFile, testFile) - assert cmpFiles(testFile, compFile, [4, 5]) + assert cmpFiles(testFile, compFile, ignoreStart=ODT_IGNORE) # Replace Tabs with Spaces qtbot.mouseClick(nwBuild.replaceTabs, Qt.LeftButton) @@ -181,7 +181,7 @@ def testToolBuild_Main(qtbot, monkeypatch, nwGUI, prjLipsum, tstPaths): testFile = tstPaths.outDir / "guiBuild_Tool_Step3_Lorem_Ipsum.fodt" compFile = tstPaths.refDir / "guiBuild_Tool_Step3_Lorem_Ipsum.fodt" copyfile(projFile, testFile) - assert cmpFiles(testFile, compFile, [4, 5]) + assert cmpFiles(testFile, compFile, ignoreStart=ODT_IGNORE) # Putline Mode nwBuild.fmtChapter.setText(r"Chapter %chw%: %title%") diff --git a/tests/tools.py b/tests/tools.py index fa5107a5..dd6443fd 100644 --- a/tests/tools.py +++ b/tests/tools.py @@ -27,6 +27,7 @@ from pathlib import Path from PyQt5.QtWidgets import qApp XML_IGNORE = ("