mirror of
https://github.com/keepassxreboot/keepassxc.git
synced 2024-10-01 01:26:01 -04:00
Merge branch '2.0'
This commit is contained in:
commit
d6d92ce90a
19
CHANGELOG
19
CHANGELOG
@ -1,3 +1,22 @@
|
||||
2.0.2 (2016-02-02)
|
||||
=========================
|
||||
|
||||
- Fix regression in database writer that caused it to strip certain special
|
||||
characters (characters from Unicode plane > 0).
|
||||
- Fix bug in repair function that caused it to strip non-ASCII characters.
|
||||
|
||||
2.0.1 (2016-01-31)
|
||||
=========================
|
||||
|
||||
- Flush temporary file before opening attachment. [#390]
|
||||
- Disable password generator when showing entry in history mode. [#422]
|
||||
- Strip invalid XML chars when writing databases. [#392]
|
||||
- Add repair function to fix databases with invalid XML chars. [#392]
|
||||
- Display custom icons scaled. [#322]
|
||||
- Allow opening databases that have no password and keyfile. [#391]
|
||||
- Fix crash when importing .kdb files with invalid icon ids. [#425]
|
||||
- Update translations.
|
||||
|
||||
2.0 (2015-12-06)
|
||||
=========================
|
||||
|
||||
|
@ -33,8 +33,8 @@ option(WITH_TESTS "Enable building of unit tests" ON)
|
||||
option(WITH_GUI_TESTS "Enable building of GUI tests" OFF)
|
||||
option(WITH_DEV_BUILD "Use only for development. Disables/warns about deprecated methods." OFF)
|
||||
|
||||
set(KEEPASSX_VERSION "2.0")
|
||||
set(KEEPASSX_VERSION_NUM "2.0")
|
||||
set(KEEPASSX_VERSION "2.0.2")
|
||||
set(KEEPASSX_VERSION_NUM "2.0.2")
|
||||
|
||||
if("${CMAKE_C_COMPILER}" MATCHES "clang$" OR "${CMAKE_C_COMPILER_ID}" STREQUAL "Clang")
|
||||
set(CMAKE_COMPILER_IS_CLANG 1)
|
||||
|
@ -13,6 +13,10 @@
|
||||
<source>Revision</source>
|
||||
<translation>Revision</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Using:</source>
|
||||
<translation>Bruger:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AutoType</name>
|
||||
@ -828,6 +832,16 @@ Vil du alligevel gemme?</translation>
|
||||
<source>Unable to calculate master key</source>
|
||||
<translation>Kan ikke beregne hovednøgle</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The selected file is an old KeePass 1 database (.kdb).
|
||||
|
||||
You can import it by clicking on Database > 'Import KeePass 1 database'.
|
||||
This is a one-way migration. You won't be able to open the imported database with the old KeePassX 0.4 version.</source>
|
||||
<translation>Den valgte fil er en gammel KeePass 1 databasefil (.kdb).
|
||||
|
||||
Du kan importere den ved at klikke på Database > 'Importér KeePass 1 database'.
|
||||
Dette er en envejs konvertering. Du vil ikke være i stand til at åbne den importerede database med den gamle KeePassX 0.4 version.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Main</name>
|
||||
|
@ -172,6 +172,42 @@
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>DatabaseRepairWidget</name>
|
||||
<message>
|
||||
<source>Repair database</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Can't open key file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Database opened fine. Nothing to do.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to open the database.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Success</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The database has been successfully repaired
|
||||
You can now save it.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to repair the database.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>DatabaseSettingsWidget</name>
|
||||
<message>
|
||||
@ -1022,6 +1058,30 @@ This is a one-way migration. You won't be able to open the imported databas
|
||||
<source>Export to CSV file</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Repair database</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>KeePass 2 Database</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All files</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Save repaired database</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Error</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Writing the database failed.</source>
|
||||
<translation type="unfinished"></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>PasswordGeneratorWidget</name>
|
||||
|
@ -13,6 +13,10 @@
|
||||
<source>Revision</source>
|
||||
<translation>Version</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Using:</source>
|
||||
<translation>Utilise :</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AutoType</name>
|
||||
@ -79,7 +83,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Key files</source>
|
||||
<translation>Fichiers de clé</translation>
|
||||
<translation>Fichiers-clés</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All files</source>
|
||||
@ -120,7 +124,7 @@
|
||||
<message>
|
||||
<source>Failed to set %1 as the Key file:
|
||||
%2</source>
|
||||
<translation>Impossible de définir %1 comme fichier-clé:
|
||||
<translation>Impossible de définir %1 comme fichier-clé :
|
||||
%2</translation>
|
||||
</message>
|
||||
</context>
|
||||
@ -286,7 +290,7 @@ Voulez-vous quand même l'ouvrir ? Dans ce cas, elle sera ouverte en lectur
|
||||
</message>
|
||||
<message>
|
||||
<source>Lock database</source>
|
||||
<translation>Verrouiiler la base de données</translation>
|
||||
<translation>Verrouiller la base de données</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Can't lock the database as you are currently editing it.
|
||||
@ -449,7 +453,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
<message>
|
||||
<source>Unable to save the attachment:
|
||||
</source>
|
||||
<translation>Impossible d'enregistrer le fichier attaché:
|
||||
<translation>Impossible d'enregistrer le fichier attaché :
|
||||
</translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -532,7 +536,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Set custom sequence:</source>
|
||||
<translation>Définir une séquence personnalisé :</translation>
|
||||
<translation>Définir une séquence personnalisée :</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -562,7 +566,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Username:</source>
|
||||
<translation>Non d'utilisateur :</translation>
|
||||
<translation>Nom d'utilisateur :</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Password:</source>
|
||||
@ -755,7 +759,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Username</source>
|
||||
<translation>Non d'utilisateur</translation>
|
||||
<translation>Nom d'utilisateur</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>URL</source>
|
||||
@ -792,7 +796,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Not a KeePass database.</source>
|
||||
<translation>Ce n'est pas une base de donnée KeePass.</translation>
|
||||
<translation>Ce n'est pas une base de données KeePass.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unsupported encryption algorithm.</source>
|
||||
@ -800,7 +804,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unsupported KeePass database version.</source>
|
||||
<translation>Version de base de donnée KeePass non supportée.</translation>
|
||||
<translation>Version de base de données KeePass non supportée.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Root</source>
|
||||
@ -815,20 +819,30 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
<name>KeePass2Reader</name>
|
||||
<message>
|
||||
<source>Not a KeePass database.</source>
|
||||
<translation>Ce n'est pas une base de donnée KeePass.</translation>
|
||||
<translation>Ce n'est pas une base de données KeePass.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unsupported KeePass database version.</source>
|
||||
<translation>Version de base de donnée KeePass non supportée.</translation>
|
||||
<translation>Version de base de données KeePass non supportée.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Wrong key or database file is corrupt.</source>
|
||||
<translation>Mauvaise clé ou fichier de base de donnée corrompu.</translation>
|
||||
<translation>Mauvaise clé ou fichier de base de données corrompu.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to calculate master key</source>
|
||||
<translation>Impossible de calculer la clé maître</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The selected file is an old KeePass 1 database (.kdb).
|
||||
|
||||
You can import it by clicking on Database > 'Import KeePass 1 database'.
|
||||
This is a one-way migration. You won't be able to open the imported database with the old KeePassX 0.4 version.</source>
|
||||
<translation>Le fichier sélectionné est une ancienne base de données pour KeePass 1 (.kdb).
|
||||
|
||||
Vous pouvez l'importer en cliquant sur "Base de données" > "Importer une base de données KeePass 1".
|
||||
Ceci est une migration à sens unique. Vous ne serez plus en mesure d'ouvrir la base de données importée avec l'ancienne version KeePassX version 0.4.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Main</name>
|
||||
@ -861,7 +875,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy attribute to clipboard</source>
|
||||
<translation>Copier l'attribut dans le presse-papiers</translation>
|
||||
<translation>Copier l'attribut dans le presse-papier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Groups</source>
|
||||
@ -881,19 +895,19 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open database</source>
|
||||
<translation>Ouvrir une base de donnée</translation>
|
||||
<translation>Ouvrir une base de données</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Save database</source>
|
||||
<translation>Enregistrer la base de donnée</translation>
|
||||
<translation>Enregistrer la base de données</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Close database</source>
|
||||
<translation>Fermer la base de donnée</translation>
|
||||
<translation>Fermer la base de données</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>New database</source>
|
||||
<translation>Nouvelle base de donnée</translation>
|
||||
<translation>Nouvelle base de données</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Add new entry</source>
|
||||
@ -921,7 +935,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Save database as</source>
|
||||
<translation>Enregistrer la base de donnée sous</translation>
|
||||
<translation>Enregistrer la base de données sous</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Change master key</source>
|
||||
@ -929,11 +943,11 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Database settings</source>
|
||||
<translation>Paramètre de la base de donnée</translation>
|
||||
<translation>Paramètres de la base de données</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Import KeePass 1 database</source>
|
||||
<translation>Importer une base de donnée KeePass 1</translation>
|
||||
<translation>Importer une base de données KeePass 1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Clone entry</source>
|
||||
@ -945,11 +959,11 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy username to clipboard</source>
|
||||
<translation>Copier le nom d'utilisateur dans le presse-papiers</translation>
|
||||
<translation>Copier le nom d'utilisateur dans le presse-papier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy password to clipboard</source>
|
||||
<translation>Copier le mot de passe dans le presse-papiers</translation>
|
||||
<translation>Copier le mot de passe dans le presse-papier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Settings</source>
|
||||
@ -1020,7 +1034,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Character Types</source>
|
||||
<translation>Types de caractère</translation>
|
||||
<translation>Types de caractères</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Upper Case Letters</source>
|
||||
@ -1055,7 +1069,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
<name>QCommandLineParser</name>
|
||||
<message>
|
||||
<source>Displays version information.</source>
|
||||
<translation>Afficher les informations de version</translation>
|
||||
<translation>Afficher les informations de version.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Displays this help.</source>
|
||||
@ -1166,7 +1180,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
<name>SettingsWidget</name>
|
||||
<message>
|
||||
<source>Application Settings</source>
|
||||
<translation>Paramètre de l'application</translation>
|
||||
<translation>Paramètres de l'application</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>General</source>
|
||||
@ -1185,19 +1199,19 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open previous databases on startup</source>
|
||||
<translation>Ouvrir les base de données précédentes au démarrage</translation>
|
||||
<translation>Ouvrir les bases de données précédentes au démarrage</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Automatically save on exit</source>
|
||||
<translation>Sauvegarde automatiquement à la sortie</translation>
|
||||
<translation>Sauvegarder automatiquement à la sortie</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Automatically save after every change</source>
|
||||
<translation>Sauvegarde automatiquement après chaque modification</translation>
|
||||
<translation>Sauvegarder automatiquement après chaque modification</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Minimize when copying to clipboard</source>
|
||||
<translation>Réduire lors de la copie dans le presse-papiers</translation>
|
||||
<translation>Réduire lors de la copie dans le presse-papier</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use group icon on entry creation</source>
|
||||
@ -1232,7 +1246,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
<name>SettingsWidgetSecurity</name>
|
||||
<message>
|
||||
<source>Clear clipboard after</source>
|
||||
<translation>Vider le presse-papiers après</translation>
|
||||
<translation>Vider le presse-papier après</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source> sec</source>
|
||||
@ -1240,7 +1254,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lock databases after inactivity of</source>
|
||||
<translation>Verrouiller les bases de donnée après une inactivité de</translation>
|
||||
<translation>Verrouiller les bases de données après une inactivité de</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Show passwords in cleartext by default</source>
|
||||
@ -1255,7 +1269,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
<name>UnlockDatabaseWidget</name>
|
||||
<message>
|
||||
<source>Unlock database</source>
|
||||
<translation>Déverrouiller la base de donnée</translation>
|
||||
<translation>Déverrouiller la base de données</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -1273,7 +1287,7 @@ Voulez-vous quand même la sauvegarder ?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>filename of the password database to open (*.kdbx)</source>
|
||||
<translation>Nom de fichier de la base de donnée de mot de pass à ouvrir (*.kdbx)</translation>
|
||||
<translation>Nom de fichier de la base de données de mot de passe à ouvrir (*.kdbx)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>path to a custom config file</source>
|
||||
|
@ -13,6 +13,10 @@
|
||||
<source>Revision</source>
|
||||
<translation>Revisi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Using:</source>
|
||||
<translation>Menggunakan:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AutoType</name>
|
||||
@ -79,7 +83,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Key files</source>
|
||||
<translation>Berkas Kunci</translation>
|
||||
<translation>Berkas kunci</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>All files</source>
|
||||
@ -99,7 +103,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Select a key file</source>
|
||||
<translation>Pilih sebuah berkas kunci</translation>
|
||||
<translation>Pilih berkas kunci</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Question</source>
|
||||
@ -111,7 +115,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Different passwords supplied.</source>
|
||||
<translation>Sandi yang berbeda diberikan.</translation>
|
||||
<translation>Sandi berbeda.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Failed to set key file</source>
|
||||
@ -428,7 +432,7 @@ Apakah Anda tetap ingin menyimpannya?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Different passwords supplied.</source>
|
||||
<translation>Kata sandi yang berbeda diberikan.</translation>
|
||||
<translation>Sandi berbeda.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>New attribute</source>
|
||||
@ -586,7 +590,7 @@ Apakah Anda tetap ingin menyimpannya?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Presets</source>
|
||||
<translation type="unfinished"/>
|
||||
<translation>Prasetel</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Notes:</source>
|
||||
@ -829,6 +833,16 @@ Apakah Anda tetap ingin menyimpannya?</translation>
|
||||
<source>Unable to calculate master key</source>
|
||||
<translation>Tidak bisa mengkalkulasi kunci utama</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The selected file is an old KeePass 1 database (.kdb).
|
||||
|
||||
You can import it by clicking on Database > 'Import KeePass 1 database'.
|
||||
This is a one-way migration. You won't be able to open the imported database with the old KeePassX 0.4 version.</source>
|
||||
<translation>Berkas yang dipilih adalah basis data KeePass 1 yang lama (.kdb).
|
||||
|
||||
Anda bisa mengimpornya dengan mengklik Basis Data > 'Impor basis data KeePass 1'.
|
||||
Ini adalah migrasi satu arah. Anda tidak akan bisa lagi membuka basis data yang diimpor dengan versi lama KeePassX 0.4.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Main</name>
|
||||
|
@ -13,6 +13,10 @@
|
||||
<source>Revision</source>
|
||||
<translation>Revisione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Using:</source>
|
||||
<translation>In uso:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AutoType</name>
|
||||
@ -48,7 +52,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Select entry to Auto-Type:</source>
|
||||
<translation>Selezionare una voce per Auto-Type:</translation>
|
||||
<translation>Seleziona una voce per Auto-Type:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -59,11 +63,11 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Enter password:</source>
|
||||
<translation>Inserire password:</translation>
|
||||
<translation>Inserisci password:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Repeat password:</source>
|
||||
<translation>Ripetere password:</translation>
|
||||
<translation>Ripeti password:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key file</source>
|
||||
@ -75,7 +79,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Create</source>
|
||||
<translation>Creare</translation>
|
||||
<translation>Crea</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key files</source>
|
||||
@ -87,7 +91,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Create Key File...</source>
|
||||
<translation>Creare file chiave...</translation>
|
||||
<translation>Crea file chiave...</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Error</source>
|
||||
@ -120,18 +124,19 @@
|
||||
<message>
|
||||
<source>Failed to set %1 as the Key file:
|
||||
%2</source>
|
||||
<translation>Impossibile impostare %1 come file Chiave: %2</translation>
|
||||
<translation>Impossibile impostare %1 come file chiave:
|
||||
%2</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>DatabaseOpenWidget</name>
|
||||
<message>
|
||||
<source>Enter master key</source>
|
||||
<translation>Inserire password</translation>
|
||||
<translation>Inserisci la chiave principale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Key File:</source>
|
||||
<translation>File Chiave:</translation>
|
||||
<translation>File chiave:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Password:</source>
|
||||
@ -139,7 +144,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Browse</source>
|
||||
<translation>Sfogliare</translation>
|
||||
<translation>Sfoglia</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Error</source>
|
||||
@ -159,7 +164,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Key files</source>
|
||||
<translation>Files chiave</translation>
|
||||
<translation>File chiave</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Select key file</source>
|
||||
@ -170,7 +175,7 @@
|
||||
<name>DatabaseSettingsWidget</name>
|
||||
<message>
|
||||
<source>Database name:</source>
|
||||
<translation>Nome database:</translation>
|
||||
<translation>Nome del database:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Database description:</source>
|
||||
@ -178,7 +183,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Transform rounds:</source>
|
||||
<translation>Rounds di trasformazione:</translation>
|
||||
<translation>Round di trasformazione:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Default username:</source>
|
||||
@ -186,7 +191,7 @@
|
||||
</message>
|
||||
<message>
|
||||
<source>Use recycle bin:</source>
|
||||
<translation>Utilizzare cestino:</translation>
|
||||
<translation>Utilizza cestino:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source> MiB</source>
|
||||
@ -254,7 +259,7 @@
|
||||
<message>
|
||||
<source>"%1" was modified.
|
||||
Save changes?</source>
|
||||
<translation>"%1" è stata modificata.
|
||||
<translation>"%1" è stata modificato.
|
||||
Salvare le modifiche?</translation>
|
||||
</message>
|
||||
<message>
|
||||
@ -263,11 +268,11 @@ Salvare le modifiche?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Writing the database failed.</source>
|
||||
<translation>Scrittura del database fallita.</translation>
|
||||
<translation>Scrittura del database non riuscita.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Save database as</source>
|
||||
<translation>Salvare database come</translation>
|
||||
<translation>Salva database come</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>New database</source>
|
||||
@ -280,18 +285,18 @@ Salvare le modifiche?</translation>
|
||||
<message>
|
||||
<source>The database you are trying to open is locked by another instance of KeePassX.
|
||||
Do you want to open it anyway? Alternatively the database is opened read-only.</source>
|
||||
<translation>Il Database che stai tentando di aprire è bloccato da un'altra esecuzione di KeePassX.
|
||||
Vuoi aprirlo comunque? In alternativa, il database verrà aperto in sola lettura.</translation>
|
||||
<translation>Il database che stai tentando di aprire è bloccato da un'altra istanza di KeePassX.
|
||||
Vuoi aprirlo comunque? Altrimenti il database verrà aperto in sola lettura.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lock database</source>
|
||||
<translation>Bloccare database</translation>
|
||||
<translation>Blocca database</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Can't lock the database as you are currently editing it.
|
||||
Please press cancel to finish your changes or discard them.</source>
|
||||
<translation>Non è possibile bloccare il database nel modo in cui lo stai modificando.
|
||||
Premere annulla per terminare le modifiche o scartarle .</translation>
|
||||
<translation>Non è possibile bloccare il database dato che lo stai modificando.
|
||||
Premere Annulla per completare le modifiche o scartarle.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>This database has never been saved.
|
||||
@ -323,12 +328,12 @@ Annullare le modifiche e chiudere comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Writing the CSV file failed.</source>
|
||||
<translation>Scrittura del file CSV fallita.</translation>
|
||||
<translation>Scrittura del file CSV non riuscita.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The database you are trying to save as is locked by another instance of KeePassX.
|
||||
Do you want to save it anyway?</source>
|
||||
<translation>Il database che si sta tentando di salvare è bloccato da un'altra istanza di KeePassX.
|
||||
<translation>Il database che stai tentando di salvare è bloccato da un'altra istanza di KeePassX.
|
||||
Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
</context>
|
||||
@ -336,7 +341,7 @@ Vuoi salvare comunque?</translation>
|
||||
<name>DatabaseWidget</name>
|
||||
<message>
|
||||
<source>Change master key</source>
|
||||
<translation>Cambia password principale</translation>
|
||||
<translation>Cambia chiave principale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete entry?</source>
|
||||
@ -457,15 +462,15 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message numerus="yes">
|
||||
<source>%n week(s)</source>
|
||||
<translation><numerusform>%n settimana(e)</numerusform><numerusform>%n settimana(e)</numerusform></translation>
|
||||
<translation><numerusform>%n settimana</numerusform><numerusform>%n settimane</numerusform></translation>
|
||||
</message>
|
||||
<message numerus="yes">
|
||||
<source>%n month(s)</source>
|
||||
<translation><numerusform>%n mese(i)</numerusform><numerusform>%n mese(i)</numerusform></translation>
|
||||
<translation><numerusform>%n mese</numerusform><numerusform>%n mesi</numerusform></translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>1 year</source>
|
||||
<translation>1 anno</translation>
|
||||
<translation>Un anno</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -476,15 +481,15 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Add</source>
|
||||
<translation>Aggiungere</translation>
|
||||
<translation>Aggiungi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Edit</source>
|
||||
<translation>Modificare</translation>
|
||||
<translation>Modifica</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Remove</source>
|
||||
<translation>Rimuovere</translation>
|
||||
<translation>Rimuovi</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Attachments</source>
|
||||
@ -492,26 +497,26 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Save</source>
|
||||
<translation>Salvare</translation>
|
||||
<translation>Salva</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open</source>
|
||||
<translation>Aprire</translation>
|
||||
<translation>Apri</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEntryWidgetAutoType</name>
|
||||
<message>
|
||||
<source>Enable Auto-Type for this entry</source>
|
||||
<translation>Abilitare Auto-Type per questa voce</translation>
|
||||
<translation>Abilita Auto-Type per questa voce</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Inherit default Auto-Type sequence from the group</source>
|
||||
<translation>Ereditare la sequenza predefinita di Auto-Type dal gruppo</translation>
|
||||
<translation>Eredita la sequenza predefinita di Auto-Type dal gruppo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use custom Auto-Type sequence:</source>
|
||||
<translation>Usare sequenza personalizzata di Auto-Type:</translation>
|
||||
<translation>Usa sequenza personalizzata di Auto-Type:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>+</source>
|
||||
@ -527,30 +532,30 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use default sequence</source>
|
||||
<translation>Usare sequenza predefinita</translation>
|
||||
<translation>Usa sequenza predefinita</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Set custom sequence:</source>
|
||||
<translation>Impostare sequenza personalizzata:</translation>
|
||||
<translation>Imposta sequenza personalizzata:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditEntryWidgetHistory</name>
|
||||
<message>
|
||||
<source>Show</source>
|
||||
<translation>Mostrare</translation>
|
||||
<translation>Mostra</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Restore</source>
|
||||
<translation>Ripristinare</translation>
|
||||
<translation>Ripristina</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete</source>
|
||||
<translation>Eliminare</translation>
|
||||
<translation>Elimina</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete all</source>
|
||||
<translation>Eliminare tutti</translation>
|
||||
<translation>Elimina tutti</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -569,7 +574,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Repeat:</source>
|
||||
<translation>Ripetere:</translation>
|
||||
<translation>Ripeti:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Gen.</source>
|
||||
@ -585,7 +590,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Presets</source>
|
||||
<translation>Presets</translation>
|
||||
<translation>Preimpostazioni</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Notes:</source>
|
||||
@ -624,7 +629,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Inherit from parent group (%1)</source>
|
||||
<translation>Ereditare dal gruppo genitore (%1)</translation>
|
||||
<translation>Eredita dal gruppo genitore (%1)</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -643,7 +648,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Search</source>
|
||||
<translation>Cercare</translation>
|
||||
<translation>Cerca</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Auto-type</source>
|
||||
@ -651,30 +656,30 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use default auto-type sequence of parent group</source>
|
||||
<translation>Ereditare la sequenza predefinita di auto-type dal gruppo</translation>
|
||||
<translation>Eredita la sequenza predefinita di auto-type dal gruppo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Set default auto-type sequence</source>
|
||||
<translation>Usare sequenza auto-type predefinita</translation>
|
||||
<translation>Usa sequenza di auto-type predefinita</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditWidgetIcons</name>
|
||||
<message>
|
||||
<source>Use default icon</source>
|
||||
<translation>Usare icona predefinita</translation>
|
||||
<translation>Usa icona predefinita</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use custom icon</source>
|
||||
<translation>Usare icona personalizzata</translation>
|
||||
<translation>Usa icona personalizzata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Add custom icon</source>
|
||||
<translation>Aggiungere icona personalizzata</translation>
|
||||
<translation>Aggiungi icona personalizzata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete custom icon</source>
|
||||
<translation>Rimuovere icona personalizzata</translation>
|
||||
<translation>Rimuovi icona personalizzata</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Images</source>
|
||||
@ -686,7 +691,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Select Image</source>
|
||||
<translation>Seleziona Immagine</translation>
|
||||
<translation>Seleziona immagine</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Can't delete icon!</source>
|
||||
@ -694,18 +699,18 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message numerus="yes">
|
||||
<source>Can't delete icon. Still used by %n item(s).</source>
|
||||
<translation><numerusform>Impossibile eliminare l'icona in quanto è in uso da %n voce(i).</numerusform><numerusform>Impossibile eliminare l'icona in quanto è in uso da %n voce(i).</numerusform></translation>
|
||||
<translation><numerusform>Impossibile eliminare l'icona in quanto è in uso da %n voce.</numerusform><numerusform>Impossibile eliminare l'icona in quanto è in uso da %n voci.</numerusform></translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>EditWidgetProperties</name>
|
||||
<message>
|
||||
<source>Created:</source>
|
||||
<translation>Creato:</translation>
|
||||
<translation>Creazione:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Modified:</source>
|
||||
<translation>Modificato:</translation>
|
||||
<translation>Modifica:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Accessed:</source>
|
||||
@ -713,7 +718,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Uuid:</source>
|
||||
<translation>Uuid:</translation>
|
||||
<translation>UUID:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -754,7 +759,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Username</source>
|
||||
<translation>Nome Utente</translation>
|
||||
<translation>Nome utente</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>URL</source>
|
||||
@ -772,7 +777,7 @@ Vuoi salvare comunque?</translation>
|
||||
<name>KeePass1OpenWidget</name>
|
||||
<message>
|
||||
<source>Import KeePass1 database</source>
|
||||
<translation>Importare database KeePass1</translation>
|
||||
<translation>Importa database KeePass1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Error</source>
|
||||
@ -787,7 +792,7 @@ Vuoi salvare comunque?</translation>
|
||||
<name>KeePass1Reader</name>
|
||||
<message>
|
||||
<source>Unable to read keyfile.</source>
|
||||
<translation>Impossibile leggere il file chiave.</translation>
|
||||
<translation>Impossibile leggere il file della chiave.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Not a KeePass database.</source>
|
||||
@ -807,7 +812,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to calculate master key</source>
|
||||
<translation>Impossibile calcolare la chiave master</translation>
|
||||
<translation>Impossibile calcolare la chiave principale</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -822,11 +827,21 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Wrong key or database file is corrupt.</source>
|
||||
<translation>Password errata o file database corrotto.</translation>
|
||||
<translation>Chiave errata o file del database danneggiato.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unable to calculate master key</source>
|
||||
<translation>Impossibile calcolare la chiave master</translation>
|
||||
<translation>Impossibile calcolare la chiave principale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The selected file is an old KeePass 1 database (.kdb).
|
||||
|
||||
You can import it by clicking on Database > 'Import KeePass 1 database'.
|
||||
This is a one-way migration. You won't be able to open the imported database with the old KeePassX 0.4 version.</source>
|
||||
<translation>Il file selezionato è un vecchio database KeePass 1 (.kdb).
|
||||
|
||||
Puoi importarlo facendo clic su Database > 'Importa database KeePass 1'.
|
||||
Questa è una migrazione in una sola direzione. Non potrai aprire il database importato con la vecchia versione 0.4 di KeePassX. </translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -872,23 +887,23 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Quit</source>
|
||||
<translation>Uscire</translation>
|
||||
<translation>Esci</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>About</source>
|
||||
<translation>A Proposito</translation>
|
||||
<translation>Informazioni</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open database</source>
|
||||
<translation>Aprire database</translation>
|
||||
<translation>Apri database</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Save database</source>
|
||||
<translation>Salvare database</translation>
|
||||
<translation>Salva database</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Close database</source>
|
||||
<translation>Chiudere database</translation>
|
||||
<translation>Chiudi database</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>New database</source>
|
||||
@ -896,35 +911,35 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Add new entry</source>
|
||||
<translation>Aggiungere nuova voce</translation>
|
||||
<translation>Aggiungi nuova voce</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>View/Edit entry</source>
|
||||
<translation>Visualizzare/Modificare voce</translation>
|
||||
<translation>Visualizza/modifica voce</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete entry</source>
|
||||
<translation>Eliminare voce</translation>
|
||||
<translation>Elimina voce</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Add new group</source>
|
||||
<translation>Aggiungere nuovo gruppo</translation>
|
||||
<translation>Aggiungi nuovo gruppo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Edit group</source>
|
||||
<translation>Modificare gruppo</translation>
|
||||
<translation>Modifica gruppo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Delete group</source>
|
||||
<translation>Eliminare gruppo</translation>
|
||||
<translation>Elimina gruppo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Save database as</source>
|
||||
<translation>Salvare database come</translation>
|
||||
<translation>Salva database come</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Change master key</source>
|
||||
<translation>Cambiare password principale</translation>
|
||||
<translation>Cambia chiave principale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Database settings</source>
|
||||
@ -932,7 +947,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Import KeePass 1 database</source>
|
||||
<translation>Importare database KeePass 1</translation>
|
||||
<translation>Importa database KeePass 1</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Clone entry</source>
|
||||
@ -940,15 +955,15 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Find</source>
|
||||
<translation>Trovare</translation>
|
||||
<translation>Trova</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy username to clipboard</source>
|
||||
<translation>Copiare nome utente negli appunti</translation>
|
||||
<translation>Copia nome utente negli appunti</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Copy password to clipboard</source>
|
||||
<translation>Copiare password negli appunti</translation>
|
||||
<translation>Copia password negli appunti</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Settings</source>
|
||||
@ -956,15 +971,15 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Perform Auto-Type</source>
|
||||
<translation>Eseguire Auto-Type</translation>
|
||||
<translation>Esegui Auto-Type</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open URL</source>
|
||||
<translation>Aprire URL</translation>
|
||||
<translation>Apri URL</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lock databases</source>
|
||||
<translation>Bloccare database</translation>
|
||||
<translation>Blocca database</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Title</source>
|
||||
@ -1039,26 +1054,26 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Exclude look-alike characters</source>
|
||||
<translation>Escludere caratteri simili</translation>
|
||||
<translation>Escludi caratteri simili</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Ensure that the password contains characters from every group</source>
|
||||
<translation>Assicurare che la password contenga caratteri di ogni gruppo</translation>
|
||||
<translation>Verifica che la password contenga caratteri di ogni gruppo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Accept</source>
|
||||
<translation>Accettare</translation>
|
||||
<translation>Accetta</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>QCommandLineParser</name>
|
||||
<message>
|
||||
<source>Displays version information.</source>
|
||||
<translation>Mostrare informazioni sulla versione.</translation>
|
||||
<translation>Mostra informazioni sulla versione.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Displays this help.</source>
|
||||
<translation>Mostrare questo aiuto.</translation>
|
||||
<translation>Mostra questo aiuto.</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Unknown option '%1'.</source>
|
||||
@ -1101,7 +1116,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Writing canceled by application</source>
|
||||
<translation>Scrittura cancellata dall'applicazione</translation>
|
||||
<translation>Scrittura annullata dall'applicazione</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Partial write. Partition full?</source>
|
||||
@ -1146,7 +1161,7 @@ Vuoi salvare comunque?</translation>
|
||||
<name>SearchWidget</name>
|
||||
<message>
|
||||
<source>Find:</source>
|
||||
<translation>Trovare:</translation>
|
||||
<translation>Trova:</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Case sensitive</source>
|
||||
@ -1184,23 +1199,23 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open previous databases on startup</source>
|
||||
<translation>Aprire precedente database all'avvio</translation>
|
||||
<translation>Apri il database precedente all'avvio</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Automatically save on exit</source>
|
||||
<translation>Salvare automaticamente all'uscita</translation>
|
||||
<translation>Salva automaticamente all'uscita</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Automatically save after every change</source>
|
||||
<translation>Salvare automaticamente dopo ogni modifica</translation>
|
||||
<translation>Salva automaticamente dopo ogni modifica</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Minimize when copying to clipboard</source>
|
||||
<translation>Minimizzare quando si copia negli appunti</translation>
|
||||
<translation>Minimizza quando si copia negli appunti</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use group icon on entry creation</source>
|
||||
<translation>Usare l'icona del gruppo alla creazione di una voce</translation>
|
||||
<translation>Usa l'icona del gruppo alla creazione di una voce</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Global Auto-Type shortcut</source>
|
||||
@ -1208,7 +1223,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Use entry title to match windows for global auto-type</source>
|
||||
<translation>Utilizzare il titolo della voce per abbinare la finestra per auto-type globale</translation>
|
||||
<translation>Utilizza il titolo della voce per abbinare la finestra per auto-type globale</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Language</source>
|
||||
@ -1224,14 +1239,14 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Remember last key files</source>
|
||||
<translation>Ricorda gli ultimi files chiave</translation>
|
||||
<translation>Ricorda gli ultimi file di chiavi</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>SettingsWidgetSecurity</name>
|
||||
<message>
|
||||
<source>Clear clipboard after</source>
|
||||
<translation>Pulire appunti dopo</translation>
|
||||
<translation>Pulisci appunti dopo</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source> sec</source>
|
||||
@ -1239,22 +1254,22 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Lock databases after inactivity of</source>
|
||||
<translation>Bloccare i database dopo un'inattività di</translation>
|
||||
<translation>Blocca i database dopo un'inattività di</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Show passwords in cleartext by default</source>
|
||||
<translation>Mostrare la password in chiaro in maniera predefinita</translation>
|
||||
<translation>Mostra la password in chiaro in maniera predefinita</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Always ask before performing auto-type</source>
|
||||
<translation>Chiedere sempre prima di eseguire auto-type</translation>
|
||||
<translation>Chiedi sempre prima di eseguire auto-type</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>UnlockDatabaseWidget</name>
|
||||
<message>
|
||||
<source>Unlock database</source>
|
||||
<translation>Sbloccare database</translation>
|
||||
<translation>Sblocca database</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
@ -1272,7 +1287,7 @@ Vuoi salvare comunque?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>filename of the password database to open (*.kdbx)</source>
|
||||
<translation>nome del file del database da aprire (*.kdbx)</translation>
|
||||
<translation>nome del file di database da aprire (*.kdbx)</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>path to a custom config file</source>
|
||||
|
@ -13,6 +13,10 @@
|
||||
<source>Revision</source>
|
||||
<translation>Revision</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Using:</source>
|
||||
<translation>Använder:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AutoType</name>
|
||||
@ -829,6 +833,13 @@ Vill du spara endå?</translation>
|
||||
<source>Unable to calculate master key</source>
|
||||
<translation>Kunde inte räkna nu master-nyckeln</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The selected file is an old KeePass 1 database (.kdb).
|
||||
|
||||
You can import it by clicking on Database > 'Import KeePass 1 database'.
|
||||
This is a one-way migration. You won't be able to open the imported database with the old KeePassX 0.4 version.</source>
|
||||
<translation type="unfinished"/>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Main</name>
|
||||
@ -849,7 +860,7 @@ Vill du spara endå?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Recent databases</source>
|
||||
<translation>Senast använda databser</translation>
|
||||
<translation>Senast använda databaser</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Help</source>
|
||||
@ -1185,11 +1196,11 @@ Vill du spara endå?</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Open previous databases on startup</source>
|
||||
<translation>Öppna senaste databasen är programmet startar</translation>
|
||||
<translation>Öppna senaste databasen när programmet startar</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Automatically save on exit</source>
|
||||
<translation>Spara automatiskt är applikationen anslutas</translation>
|
||||
<translation>Spara automatiskt när applikationen anslutas</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Automatically save after every change</source>
|
||||
|
@ -13,6 +13,10 @@
|
||||
<source>Revision</source>
|
||||
<translation>Ревізія</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>Using:</source>
|
||||
<translation>Використання:</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>AutoType</name>
|
||||
@ -828,6 +832,16 @@ Do you want to save it anyway?</source>
|
||||
<source>Unable to calculate master key</source>
|
||||
<translation>Неможливо вирахувати майстер-пароль</translation>
|
||||
</message>
|
||||
<message>
|
||||
<source>The selected file is an old KeePass 1 database (.kdb).
|
||||
|
||||
You can import it by clicking on Database > 'Import KeePass 1 database'.
|
||||
This is a one-way migration. You won't be able to open the imported database with the old KeePassX 0.4 version.</source>
|
||||
<translation>Обрано файл сховища попередньої версії KeePass 1 (.kdb).
|
||||
|
||||
Ви можете імпортувати його, натиснувши Сховище > 'Імпортувати сховище KeePass 1'.
|
||||
Це односторонній спосіб міграції. Ви не зможете відкрити імпортоване сховище в попередній версії KeePassX 0.4.</translation>
|
||||
</message>
|
||||
</context>
|
||||
<context>
|
||||
<name>Main</name>
|
||||
|
@ -901,10 +901,10 @@ bool KeePass1Reader::parseCustomIcons4(const QByteArray& data)
|
||||
QByteArray entryUuid = data.mid(pos, 16);
|
||||
pos += 16;
|
||||
|
||||
int iconId = Endian::bytesToUInt32(data.mid(pos, 4), KeePass1::BYTEORDER);
|
||||
quint32 iconId = Endian::bytesToUInt32(data.mid(pos, 4), KeePass1::BYTEORDER);
|
||||
pos += 4;
|
||||
|
||||
if (m_entryUuids.contains(entryUuid) && (iconId < iconUuids.size())) {
|
||||
if (m_entryUuids.contains(entryUuid) && (iconId < static_cast<quint32>(iconUuids.size()))) {
|
||||
m_entryUuids[entryUuid]->setIcon(iconUuids[iconId]);
|
||||
}
|
||||
}
|
||||
@ -917,10 +917,10 @@ bool KeePass1Reader::parseCustomIcons4(const QByteArray& data)
|
||||
quint32 groupId = Endian::bytesToUInt32(data.mid(pos, 4), KeePass1::BYTEORDER);
|
||||
pos += 4;
|
||||
|
||||
int iconId = Endian::bytesToUInt32(data.mid(pos, 4), KeePass1::BYTEORDER);
|
||||
quint32 iconId = Endian::bytesToUInt32(data.mid(pos, 4), KeePass1::BYTEORDER);
|
||||
pos += 4;
|
||||
|
||||
if (m_groupIds.contains(groupId) && (iconId < iconUuids.size())) {
|
||||
if (m_groupIds.contains(groupId) && (iconId < static_cast<quint32>(iconUuids.size()))) {
|
||||
m_groupIds[groupId]->setIcon(iconUuids[iconId]);
|
||||
}
|
||||
}
|
||||
|
@ -66,7 +66,7 @@ KeePass2Repair::RepairResult KeePass2Repair::repairDatabase(QIODevice* device, c
|
||||
|
||||
// try to fix broken databases because of bug #392
|
||||
for (int i = (xmlData.size() - 1); i >= 0; i--) {
|
||||
char ch = xmlData.at(i);
|
||||
quint8 ch = static_cast<quint8>(xmlData.at(i));
|
||||
if (ch < 0x20 && ch != 0x09 && ch != 0x0A && ch != 0x0D) {
|
||||
xmlData.remove(i, 1);
|
||||
repairAction = true;
|
||||
|
@ -523,6 +523,7 @@ Group* KeePass2XmlReader::parseGroup()
|
||||
if (m_strictMode) {
|
||||
raiseError("Invalid group icon number");
|
||||
}
|
||||
iconId = 0;
|
||||
}
|
||||
else {
|
||||
if (iconId >= DatabaseIcons::IconCount) {
|
||||
@ -702,6 +703,7 @@ Entry* KeePass2XmlReader::parseEntry(bool history)
|
||||
if (m_strictMode) {
|
||||
raiseError("Invalid entry icon number");
|
||||
}
|
||||
iconId = 0;
|
||||
}
|
||||
else {
|
||||
entry->setIcon(iconId);
|
||||
|
@ -550,11 +550,19 @@ QString KeePass2XmlWriter::colorPartToString(int value)
|
||||
QString KeePass2XmlWriter::stripInvalidXml10Chars(QString str)
|
||||
{
|
||||
for (int i = str.size() - 1; i >= 0; i--) {
|
||||
const ushort uc = str.at(i).unicode();
|
||||
const QChar ch = str.at(i);
|
||||
const ushort uc = ch.unicode();
|
||||
|
||||
if ((uc < 0x20 && uc != 0x09 && uc != 0x0A && uc != 0x0D)
|
||||
|| (uc > 0xD7FF && uc < 0xE000)
|
||||
|| (uc > 0xFFFD))
|
||||
if (ch.isLowSurrogate() && i != 0 && str.at(i - 1).isHighSurrogate()) {
|
||||
// keep valid surrogate pair
|
||||
i--;
|
||||
}
|
||||
else if ((uc < 0x20 && uc != 0x09 && uc != 0x0A && uc != 0x0D) // control chracters
|
||||
|| (uc >= 0x7F && uc <= 0x84) // control chracters, valid but discouraged by XML
|
||||
|| (uc >= 0x86 && uc <= 0x9F) // control chracters, valid but discouraged by XML
|
||||
|| (uc > 0xFFFD) // noncharacter
|
||||
|| ch.isLowSurrogate() // single low surrogate
|
||||
|| ch.isHighSurrogate()) // single high surrogate
|
||||
{
|
||||
qWarning("Stripping invalid XML 1.0 codepoint %x", uc);
|
||||
str.remove(i, 1);
|
||||
|
@ -49,10 +49,6 @@ DatabaseOpenWidget::DatabaseOpenWidget(QWidget* parent)
|
||||
connect(m_ui->editPassword, SIGNAL(textChanged(QString)), SLOT(activatePassword()));
|
||||
connect(m_ui->comboKeyFile, SIGNAL(editTextChanged(QString)), SLOT(activateKeyFile()));
|
||||
|
||||
connect(m_ui->checkPassword, SIGNAL(toggled(bool)), SLOT(setOkButtonEnabled()));
|
||||
connect(m_ui->checkKeyFile, SIGNAL(toggled(bool)), SLOT(setOkButtonEnabled()));
|
||||
connect(m_ui->comboKeyFile, SIGNAL(editTextChanged(QString)), SLOT(setOkButtonEnabled()));
|
||||
|
||||
connect(m_ui->buttonBox, SIGNAL(accepted()), SLOT(openDatabase()));
|
||||
connect(m_ui->buttonBox, SIGNAL(rejected()), SLOT(reject()));
|
||||
}
|
||||
@ -75,6 +71,7 @@ void DatabaseOpenWidget::load(const QString& filename)
|
||||
}
|
||||
}
|
||||
|
||||
m_ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(true);
|
||||
m_ui->editPassword->setFocus();
|
||||
}
|
||||
|
||||
@ -99,9 +96,6 @@ void DatabaseOpenWidget::openDatabase()
|
||||
{
|
||||
KeePass2Reader reader;
|
||||
CompositeKey masterKey = databaseKey();
|
||||
if (masterKey.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
|
||||
QFile file(m_filename);
|
||||
if (!file.open(QIODevice::ReadOnly)) {
|
||||
@ -172,14 +166,6 @@ void DatabaseOpenWidget::activateKeyFile()
|
||||
m_ui->checkKeyFile->setChecked(true);
|
||||
}
|
||||
|
||||
void DatabaseOpenWidget::setOkButtonEnabled()
|
||||
{
|
||||
bool enable = m_ui->checkPassword->isChecked()
|
||||
|| (m_ui->checkKeyFile->isChecked() && !m_ui->comboKeyFile->currentText().isEmpty());
|
||||
|
||||
m_ui->buttonBox->button(QDialogButtonBox::Ok)->setEnabled(enable);
|
||||
}
|
||||
|
||||
void DatabaseOpenWidget::browseKeyFile()
|
||||
{
|
||||
QString filters = QString("%1 (*);;%2 (*.key)").arg(tr("All files"), tr("Key files"));
|
||||
|
@ -54,7 +54,6 @@ protected Q_SLOTS:
|
||||
private Q_SLOTS:
|
||||
void activatePassword();
|
||||
void activateKeyFile();
|
||||
void setOkButtonEnabled();
|
||||
void browseKeyFile();
|
||||
|
||||
protected:
|
||||
|
@ -51,6 +51,7 @@ void DatabaseRepairWidget::openDatabase()
|
||||
if (!key.load(keyFilename, &errorMsg)) {
|
||||
MessageBox::warning(this, tr("Error"), tr("Can't open key file").append(":\n").append(errorMsg));
|
||||
Q_EMIT editFinished(false);
|
||||
return;
|
||||
}
|
||||
masterKey.addKey(key);
|
||||
}
|
||||
|
@ -132,7 +132,7 @@ void TestKeePass2Writer::testRepair()
|
||||
{
|
||||
QString brokenDbFilename = QString(KEEPASSX_TEST_DATA_DIR).append("/bug392.kdbx");
|
||||
// master password = test
|
||||
// entry username: testuser\x10
|
||||
// entry username: testuser\x10\x20AC
|
||||
// entry password: testpw
|
||||
CompositeKey key;
|
||||
key.addKey(PasswordKey("test"));
|
||||
@ -152,7 +152,7 @@ void TestKeePass2Writer::testRepair()
|
||||
QVERIFY(dbRepaired);
|
||||
|
||||
QCOMPARE(dbRepaired->rootGroup()->entries().size(), 1);
|
||||
QCOMPARE(dbRepaired->rootGroup()->entries().at(0)->username(), QString("testuser"));
|
||||
QCOMPARE(dbRepaired->rootGroup()->entries().at(0)->username(), QString("testuser").append(QChar(0x20AC)));
|
||||
QCOMPARE(dbRepaired->rootGroup()->entries().at(0)->password(), QString("testpw"));
|
||||
}
|
||||
|
||||
|
@ -67,6 +67,18 @@ QDateTime TestKeePass2XmlReader::genDT(int year, int month, int day, int hour, i
|
||||
return QDateTime(date, time, Qt::UTC);
|
||||
}
|
||||
|
||||
QByteArray TestKeePass2XmlReader::strToBytes(const QString& str)
|
||||
{
|
||||
QByteArray result;
|
||||
|
||||
for (int i = 0; i < str.size(); i++) {
|
||||
result.append(str.at(i).unicode() >> 8);
|
||||
result.append(str.at(i).unicode() & 0xFF);
|
||||
}
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
void TestKeePass2XmlReader::initTestCase()
|
||||
{
|
||||
QVERIFY(Crypto::init());
|
||||
@ -413,10 +425,35 @@ void TestKeePass2XmlReader::testInvalidXmlChars()
|
||||
{
|
||||
QScopedPointer<Database> dbWrite(new Database());
|
||||
|
||||
QString strPlainInvalid = QString().append(QChar(0x02)).append(QChar(0x19))
|
||||
.append(QChar(0xFFFE)).append(QChar(0xFFFF));
|
||||
QString strPlainValid = QString().append(QChar(0x09)).append(QChar(0x0A))
|
||||
.append(QChar(0x20)).append(QChar(0xD7FF))
|
||||
.append(QChar(0xE000)).append(QChar(0xFFFD));
|
||||
// U+10437 in UTF-16: D801 DC37
|
||||
// high low surrogate
|
||||
QString strSingleHighSurrogate1 = QString().append(QChar(0xD801));
|
||||
QString strSingleHighSurrogate2 = QString().append(QChar(0x31)).append(QChar(0xD801)).append(QChar(0x32));
|
||||
QString strHighHighSurrogate = QString().append(QChar(0xD801)).append(QChar(0xD801));
|
||||
QString strSingleLowSurrogate1 = QString().append(QChar(0xDC37));
|
||||
QString strSingleLowSurrogate2 = QString().append(QChar((0x31))).append(QChar(0xDC37)).append(QChar(0x32));
|
||||
QString strLowLowSurrogate = QString().append(QChar(0xDC37)).append(QChar(0xDC37));
|
||||
QString strSurrogateValid1 = QString().append(QChar(0xD801)).append(QChar(0xDC37));
|
||||
QString strSurrogateValid2 = QString().append(QChar(0x31)).append(QChar(0xD801)).append(QChar(0xDC37)).append(QChar(0x32));
|
||||
|
||||
Entry* entry = new Entry();
|
||||
entry->setUuid(Uuid::random());
|
||||
entry->setNotes(QString("a %1 b %2 c %3").arg(QChar(0x02)).arg(QChar(0xD800)).arg(QChar(0xFFFE)));
|
||||
entry->setGroup(dbWrite->rootGroup());
|
||||
entry->attributes()->set("PlainInvalid", strPlainInvalid);
|
||||
entry->attributes()->set("PlainValid", strPlainValid);
|
||||
entry->attributes()->set("SingleHighSurrogate1", strSingleHighSurrogate1);
|
||||
entry->attributes()->set("SingleHighSurrogate2", strSingleHighSurrogate2);
|
||||
entry->attributes()->set("HighHighSurrogate", strHighHighSurrogate);
|
||||
entry->attributes()->set("SingleLowSurrogate1", strSingleLowSurrogate1);
|
||||
entry->attributes()->set("SingleLowSurrogate2", strSingleLowSurrogate2);
|
||||
entry->attributes()->set("LowLowSurrogate", strLowLowSurrogate);
|
||||
entry->attributes()->set("SurrogateValid1", strSurrogateValid1);
|
||||
entry->attributes()->set("SurrogateValid2", strSurrogateValid2);
|
||||
|
||||
QBuffer buffer;
|
||||
buffer.open(QIODevice::ReadWrite);
|
||||
@ -434,8 +471,19 @@ void TestKeePass2XmlReader::testInvalidXmlChars()
|
||||
QVERIFY(!reader.hasError());
|
||||
QVERIFY(!dbRead.isNull());
|
||||
QCOMPARE(dbRead->rootGroup()->entries().size(), 1);
|
||||
// check that the invalid codepoints have been stripped
|
||||
QCOMPARE(dbRead->rootGroup()->entries().first()->notes(), QString("a b c "));
|
||||
Entry* entryRead = dbRead->rootGroup()->entries().at(0);
|
||||
EntryAttributes* attrRead = entryRead->attributes();
|
||||
|
||||
QCOMPARE(strToBytes(attrRead->value("PlainInvalid")), QByteArray());
|
||||
QCOMPARE(strToBytes(attrRead->value("PlainValid")), strToBytes(strPlainValid));
|
||||
QCOMPARE(strToBytes(attrRead->value("SingleHighSurrogate1")), QByteArray());
|
||||
QCOMPARE(strToBytes(attrRead->value("SingleHighSurrogate2")), strToBytes(QString("12")));
|
||||
QCOMPARE(strToBytes(attrRead->value("HighHighSurrogate")), QByteArray());
|
||||
QCOMPARE(strToBytes(attrRead->value("SingleLowSurrogate1")), QByteArray());
|
||||
QCOMPARE(strToBytes(attrRead->value("SingleLowSurrogate2")), strToBytes(QString("12")));
|
||||
QCOMPARE(strToBytes(attrRead->value("LowLowSurrogate")), QByteArray());
|
||||
QCOMPARE(strToBytes(attrRead->value("SurrogateValid1")), strToBytes(strSurrogateValid1));
|
||||
QCOMPARE(strToBytes(attrRead->value("SurrogateValid2")), strToBytes(strSurrogateValid2));
|
||||
}
|
||||
|
||||
void TestKeePass2XmlReader::cleanupTestCase()
|
||||
|
@ -47,6 +47,7 @@ private Q_SLOTS:
|
||||
|
||||
private:
|
||||
static QDateTime genDT(int year, int month, int day, int hour, int min, int second);
|
||||
static QByteArray strToBytes(const QString& str);
|
||||
|
||||
Database* m_db;
|
||||
};
|
||||
|
Binary file not shown.
Loading…
Reference in New Issue
Block a user