[RFR] wget2
Giuseppe Sacco
giuseppe@sguazz.it
Dom 11 Gen 2026 11:57:26 CET
Ciao Luca,
non sapevo dell'esistenza di wget2 sicché ho approfittato della tua
traduzione per studiarlo. Ecco qualche commento, ma tieni presente che
non conosco benissimo il programma.
Il giorno ven, 09/01/2026 alle 17.19 +0100, Luca Vercelli ha scritto:
> Ciao, incollo qui sotto la traduzione per wget2
[...]
> #: lib/gai_strerror.c:57
> msgid "Address family for hostname not supported"
> msgstr "Famiglia indirizzo del nome host non supportata"
Io qui aggiungerei qualche preposizione, se non diventa un messaggio
troppo lungo. Del tipo:
Famiglia dell'indirizzo del nome host non supportata.
[...]
> #: lib/gai_strerror.c:63
> msgid "No address associated with hostname"
> msgstr "Nessun indirizzo associato col nome host"
non ne sono sicuro, ma forse dovrebbe essere "associato al"
[...]
> #: lib/gai_strerror.c:68
> msgid "Argument buffer too small"
> msgstr "Parametro buffer troppo piccolo"
Qui non ho capito bene quale sia il contesto: non ho trovato un
parametro "buffer" da usare nella linea di comando. Potrebbe essere un
buffer interno di qualche tipo? Il mio sospetto è che vada tradotto con
un generico "argomento" al posto di "parametro". Dove il secondo per me
è qualcosa che gli viene dato esternamente, dall'utente, in maniera
statica (ad esempio in un file di configurazione), mentre il primo è
più legato alla singola invocazione.
Inoltre, anche il nostro glossario indica argument->argomento.
[...]
> #: lib/openat-die.c:38
> #, c-format
> msgid "unable to record current working directory"
> msgstr "impossibile registrare la cartella di lavoro corrente"
penso che "cartella" sia usato nell'ambito grafico, ma qui siamo sulla
riga di comando, quindi lascerei il termine inglese invariato.
> #: lib/openat-die.c:57
> #, c-format
> msgid "failed to return to initial working directory"
> msgstr "impossibile ritornare alla cartella di lavoro iniziale"
idem
[...]
> #: lib/regcomp.c:134
> msgid "Invalid character class name"
> msgstr "Nome classe del carattere non valido"
sostituirei "classe del carattere" con "classe di caratteri". Credo si
riferisca alle classi di caratteri delle espressioni regolali, come la
classe [[:alnum:]] (vedi man wctype)
[..]
> #: lib/regcomp.c:143
> msgid "Unmatched [, [^, [:, [., or [="
> msgstr "[, [^. [:, [. o [= senza corrispondenza"
manca la seconda virgola, dopo il circonflesso.
[...]
> #: lib/wait-process.c:317 lib/wait-process.c:386
> #, c-format
> msgid "%s subprocess got fatal signal %d"
> msgstr "il sotto-processo %s ha ricevuto il segnale %d"
qui manca la parte di "fatal". Potresti forse inserire "segnale
irreversibile"?
[...]
> #: libwget/decompressor.c:193
> msgid ""
> "Failed to init deflate decompression\n"
> msgstr "Impossibile iniziare la decompressione deflate\n"
>
> #: libwget/decompressor.c:208
> msgid ""
> "Failed to init LZMA decompression\n"
> msgstr "Impossibile inizializzare la decompressione LZMA\n"
In questi due ha tradotto il verbo "init" diversamente. Io userei una
sola traduzione ovunque.
[...]
> #: libwget/decompressor.c:261
> msgid ""
> "Failed to init Brotli decompression\n"
> msgstr "Impossibile iniziare la decompressione Brotli\n"
idem
[...]
> #: libwget/decompressor.c:325
> #, c-format
> msgid ""
> "Failed to init Zstandard decompression: %s\n"
> msgstr "Impossibile iniziare la decompressione Zstandard: %s\n"
idem
[...]
> #: libwget/decompressor.c:460
> msgid ""
> "Failed to init bzip2 decompression\n"
> msgstr "Impossibile iniziare la decompressione bzip2\n"
idem
[...]
>
> #: libwget/dns.c:315
> #, c-format
> msgid ""
> "Failed to resolve '%s:%d': %s\n"
> msgstr ""
> "Impossibile risolvere [%s]:%d: %s\n"
Qui hai aggiunto delle parentesi quadre che nell'originale non ci sono.
[...]
> #: libwget/encoding.c:283
> #, c-format
> msgid ""
> "Invalid UTF-8 sequence not converted: '%s'\n"
> msgstr "Sequenza UTF-8 non valida non convertita: %s\n"
Qui nell'originale la stringa finale è tra virgolette.
[...]
> #: libwget/hsts.c:419 libwget/tls_session.c:332
> #, c-format
> msgid ""
> "Failed to parse HSTS line: '%s'\n"
> msgstr ""
> "HPKP: impossibile interpretare la linea HSTS \"%s\"\n"
Qui hai aggiunto HPKP all'inizio, ma non c'è nell'originale.
[...]
> #: libwget/http.c:1090
> #, c-format
> msgid ""
> "Just got %zu of %zu bytes (%s)\n"
> msgstr "Ottenuti %zu di %zu byte (%s)\n"
Io qui aggiungere un "solo": "Ottenuti solo %zu di %zu byte (%s)\n"
[...]
> #: libwget/http_highlevel.c:165
> #, c-format
> msgid ""
> "Unknown option %d\n"
> msgstr ""
> "Opzione sconosciuta '%d'\n"
Qui hai aggiunto delle virgolette che nell'originale non ci sono.
[...]
> #: libwget/io.c:454
> #, c-format
> msgid ""
> "Failed to read open '%s' (%d)\n"
> msgstr "Impossibile leggere/aprire \"%s\" (%d)\n"
che sia "aprire in lettura" ? Non capisco bene l'originale, ma la
traduzione sembra più un'interpretazione, che non so se sia giusta.
[...]
> #: libwget/io.c:486
> #, c-format
> msgid ""
> "Failed to write open '%s' (%d)\n"
> msgstr "Impossibile scrivere/aprire \"%s\" (%d)\n"
questo è l'equivalente. "aprire in scrittura"?
> #: libwget/io.c:502
> #, c-format
> msgid ""
> "Failed to write/close '%s' (%d)\n"
> msgstr ""
> "Impossibile scrivere/chiudere \"%s\" (%d)\n"
Questo invece è giusto. Quindi se qui nell'originale viene usato lo /
immagino che quando questo manchi il significato sia diverso.
[...]
> #: libwget/io.c:510
> #, c-format
> msgid ""
> "Failed to rename '%s' to '%s' (%d)\n"
> msgstr "Impossibile rinominare \"%s\" in \"%s\" (errno=%d)\n"
qui hai aggiunto un "errno="
[...]
> #: libwget/iri.c:629
> msgid ""
> "Port number must be in the range 1..65535\n"
> msgstr ""
> "Il numero di porta deve essere nel range 1..65535\n"
tradurrei "nel range" in "nell'intervallo"
[...]
> #: libwget/net.c:608 libwget/net.c:616
> msgid ""
> "Failed to set socket to non-blocking\n"
> msgstr "Impossibile impostare il socket a non-blocking\n"
Lo tradurrei completamente: "impossibile impostare il socket come non
bloccante".
[...]
> #: libwget/ssl_gnutls.c:376
> #, c-format
> msgid ""
> " Serial number: %s\n"
> msgstr " Serial number: %s\n"
perché non "Numero di serie" o "Numero seriale" ?
[...]
> #: libwget/ssl_gnutls.c:394
> #, c-format
> msgid ""
> " Issuer's DN: %s\n"
> msgstr " Issuer DN: %s\n"
Potrebbe invece essere "DN emittente"?
[...]
> #: libwget/ssl_gnutls.c:398
> #, c-format
> msgid ""
> " Issuer's OID: %s\n"
> msgstr ""
> " Issuer OID: %s\n"
idem
> #: libwget/ssl_gnutls.c:402
> #, c-format
> msgid ""
> " Issuer's UID: %s\n"
> msgstr ""
> " Issuer UID: %s\n"
idem
[...]
> #: libwget/ssl_gnutls.c:509
> #, c-format
> msgid ""
> "Ephemeral ECDH using curve %s\n"
> msgstr "ECDH effimero utilizza la curva %s\n"
Qui c'è un "effimero" di troppo?
[...]
> #: libwget/ssl_gnutls.c:514
> #, c-format
> msgid ""
> "Key Exchange: %s\n"
> msgstr "Scambio Chiave: %s\n"
non userei tutte le maiuscole; e forse userei il plurale visto che è
uno scambio. Potrebbe essere "Scambio chiavi" ?
[...]
> #: libwget/ssl_gnutls.c:1061
> #, c-format
> msgid ""
> "%s: The certificate doesn't have a known issuer.\n"
> msgstr ""
> "%s: Il certificato non ha un issuer noto.\n"
se cambierai "issuer" in emittente, andrebbe fatto anche qui.
[...]
>
> #: libwget/ssl_gnutls.c:1067
> #, c-format
> msgid ""
> "%s: The certificate is not yet activated.\n"
> msgstr "%s: Il certificato non è ancora stato attivato.\n"
Non so cosa voglia dire "is not yet activated" nel contesto dei
certificati. Forse intende che la data di inizio non è ancora
arrivata. In questo caso tradurrei più esplicitamente con "non è ancora
valido".
[...]
> #: libwget/ssl_gnutls.c:1137
> msgid ""
> "WARNING: The certificate's (stapled) OCSP status is invalid\n"
> msgstr "ATTENZIONE: Lo stato OCSP del certificato (con appendice) non
> è valido\n"
Se non ricordo male, l'OCSP consiste nel fatto che un server web si fa
dare una "certificazione temporanea" di verifica dalla sua CA e lo
passa al cliente, che così non deve chiamare anche la CA per verificare
se quello del server sia valido. In questo modo il client non deve fare
una connessione ulteriore e la CA non vine subissata di richieste da
ogni client. In questo senso credo che "stapled" indichi che lo stato
de certificato contenuto nella "certificazione temporanea" non è valido
(magari è scaduto o la sua firma non è valida).
In questo senso tradurrei "stapled" solo con "allegato", senza il
"con". Oppure "in appendice". Difatti "con appendice" mi fa pensare che
allo stato OCSP sia aggiunta una appendice, mentre qui si fa
riferimento proprio allo stato OCSP stesso.
> #: libwget/ssl_gnutls.c:1144
> #, c-format
> msgid ""
> "WARNING: OCSP stapling is not supported by '%s', but OCSP validation
> has "
> "been requested.\n"
> msgstr ""
> "ATTENZIONE: OCSP con appendice non è supportato da '%s', ma è stata
> "
> "richiesta la validazione OCSP.\n"
Questo lo cambierei un po' per evitare il "con appendice" senza
rimanere ambigui. Qualcosa del tipo: "il protocollo OCSP non è
supportato"
[...]
> # vd. HPKP=certificate pinning
> #: libwget/ssl_gnutls.c:1244
> #, c-format
> msgid ""
> "%s: Pubkey pinning mismatch!\n"
> msgstr ""
> "%s: La chiave pubblica non corrisponde a un'impronta memorizzata\n"
Qui non ho capito se hai voluto chiarire o se è una svista. Forse
basterebbe "%s: La chiave pubblica non corrisponde".
[...]
> #: libwget/ssl_gnutls.c:1404
> #, c-format
> msgid ""
> "Failed to opendir %s\n"
> msgstr "Impossibile aprire la cartella %s\n"
Anche qui userei "directory"
[...]
> #: libwget/ssl_gnutls.c:1411
> #, c-format
> msgid ""
> "Failed to load CRL '%s': (%d)\n"
> msgstr "Impossibile caricare CRL \"%s\": (%d)\n"
Aggiungere l'articolo: "caricare la CRL"
[...]
> #: libwget/ssl_wolfssl.c:695
> #, c-format
> msgid ""
> "Failed to load CA pem: %s or cert dir: %s, SSL verification will
> likely fail."
> "\n"
> msgstr ""
> "Impossibile caricare CA pem: %s oppure la cartella dei certificati:
> %s, la "
> "verifica SSL probabilmente fallirà.\n"
s/cartella/directory
[...]
> #: libwget/ssl_openssl.c:414
> msgid ""
> "OpenSSL: TLS 1.3 is not supported by your OpenSSL version. Will use
> TLS 1.2 "
> "instead.\n"
> msgstr ""
> "OpenSSL: TLS 1.3 non è supportato da questa versione di OpenSSL.
> Viene "
> "utilizzato TLS 1.2.\n"
Tradurrei "Will" in "Verrà" più che in "Viene", anche se la differenza
è sicuramente minima.
[...]
> #: libwget/ssl_openssl.c:424
> #, c-format
> msgid ""
> "OpenSSL: Invalid priority string '%s'\n"
> msgstr ""
> "OpenSSL: stringa di priorità \"%s\" non supportata\n"
Qui dice "invalid" anziché "not supported". La traduzione contiene una
svita o l'hai fatto apposta?
[...]
> #: libwget/ssl_openssl.c:491
> #, c-format
> msgid ""
> "OpenSSL: No certificates could be loaded from directory '%s'\n"
> msgstr "OpenSSL: Non è possibile caricare certificati dalla cartella
> \"%s\"\n"
anche qui s/cartella/directory
> #: libwget/ssl_openssl.c:495
> #, c-format
> msgid ""
> "OpenSSL: Could not open directory '%s'. No certificates were
> loaded.\n"
> msgstr ""
> "OpenSSL: Impossibile aprire la cartella \"%s\". Nessun certificato è
> stato "
> "caricato.\n"
idem
[...]
> #: libwget/ssl_openssl.c:698
> msgid ""
> "Got a stapled OCSP response, but could not parse it. Aborting.\n"
> msgstr ""
> "Ricevuta risposta OCSP con appendice, ma impossibile interpretarla.
> "
> "Interruzione.\n"
Qui vale il discorso di prima relativo al "con appendice". Se l'avrai
cambiato sopra, andrebbe cambiato anche qui.
[...]
> #: libwget/ssl_openssl.c:716
> msgid ""
> "Could not verify stapled OCSP response. Aborting.\n"
> msgstr "Impossibile verificare la risposta OCSP con appendice.
> Interruzione.\n"
idem
[...]
> #: libwget/ssl_openssl.c:905
> msgid ""
> "*** OCSP response thisUpd is too old. Aborting.\n"
> msgstr ""
> "*** La risposta OCSP thisUpd è troppo vecchia. Interruzione.\n"
Non saprei se qui "interruzione" sia la scelta migliore: si perde il
fatto che sia un'azione, un verbo. Forse andrebbe bene uno tra:
interrompo, rinuncio, esco?
> #: libwget/ssl_openssl.c:916
> msgid ""
> "Could not compute time difference for nextUpd. Aborting.\n"
> msgstr ""
> "Impossibile calcolare l'intervallo temporale per nextUpd.
> Interruzione.\n"
idem
[...]
> #: libwget/ssl_openssl.c:1267
> msgid ""
> "Certificate check disabled. Peer's certificate will NOT be
> checked.\n"
> msgstr ""
> "Verifica dei certificati disabilitata. Il certificato del nodo NON
> sarà "
> "verificato.\n"
Non tradurrei "peer" con un generico "nodo". Forse si potrebbe usare
uno tra: controparte, corrispondente, remoto?
[...]
> # Certificate Revocation List
> #: libwget/ssl_openssl.c:1286
> #, c-format
> msgid ""
> "Could not load CRL from '%s' (%d)\n"
> msgstr "Impossibile caricare la CRL da '%s' (%d)\n"
se prima non avessi aggiunto il "la" davanti a "CRL", allora lo
toglierei anche qui per uniformità.
[...]
> # vd. HPKP=certificate pinning
> #: libwget/ssl_openssl.c:1696
> msgid ""
> "Public key pinning mismatch\n"
> msgstr "La chiave pubblica non corrisponde a un'impronta
> memorizzata\n"
Qui vale il discorso fatto prima su una traduzione analoga.
[...]
> #: src/gpgme.c:171
> msgid ""
> "Couldn't specify gnupg homedir\n"
> msgstr ""
> "Impossibile specificare la cartella home gnupg\n"
s/cartella/directory
[...]
> #: src/gpgme.c:177
> #, c-format
> msgid ""
> "Couldn't canonicalize %s. (Does the path exist?)\n"
> msgstr "Impossibile canonicizzare %s. (Il percorso esiste?)\n"
Credo che "canononicizzare" sia usato solo nel contesto religioso, ma
non ne sono sicurissimo. Nel dubbio, lo eviterei. Potresti forse usare
uno tra: normalizzare, standardizzare?
[...]
> #: src/gpgme.c:290
> #, c-format
> msgid ""
> "Failed to read file to verify sig: %s\n"
> msgstr "Impossibile leggere il file per verificare la firma: %s\n"
qui "sig" è una riduzione di "signature" o si riferisce al "sig" del
GPG che prima hai lasciato corretamente non tradotto?
[...]
> #: src/job.c:213
> msgid ""
> "Failed to build checksum, assuming file to be OK\n"
> msgstr "Impossibile calcolare il checksum, si assume che il file sia
> OK\n"
>
> #: src/job.c:218
> #, c-format
> msgid ""
> "Bad checksum for '%s'\n"
> msgstr "Checksum non valida per '%s'\n"
In queste due hai usato checksum una volta al maschile e una al
femminile. Io lo/la tradurrei sempre allo stesso modo.
[...]
> #: src/options.c:738
> #, c-format
> msgid ""
> "Invalid time specifier in '%s'\n"
> msgstr "Specificatore di tempo non valido in \"%s\"\n"
Per me è difficile capire cosa sia il tempo. In questo caso cosa viene
inteso, l'orario? il momento? Nel caso sarebbe meglio dire
"Specificatore di orario"
[...]
> #: src/options.c:980 src/options.c:998
> #, c-format
> msgid ""
> "Plugin '%s' failed to load: %s\n"
> msgstr ""
> "Errore nel caricamento del plugin \"%s\" : %s\n"
C'è uno spazio di troppo dopo il due punti.
[...]
> #: src/options.c:2648
> #, c-format
> msgid ""
> "Option 'no-%s' doesn't allow an argument\n"
> msgstr ""
> "L'opzione \"no-%s\" non ammette argomenti\n"
io mettere "non vuole" o "non permette", ma direi che è un punto di
vista molto soggettivo.
[...]
> #: src/options.c:2652
> #, c-format
> msgid ""
> "Option '%s' doesn't allow an argument\n"
> msgstr ""
> "L'opzione \"%s\" non ammette argomenti\n"
idem
[...]
> # (ndt) da migliorare
> #: src/options.c:3637
> msgid "Can't timestamp and not clobber old files at the same time"
> msgstr ""
> "Non è possibile allo stesso tempo utilizzare timestamp e non clobber
> sui "
> "vecchi file"
Forse potresti cambiarlo così: "Non è possibile scaricare i file in
base alla loro data e allo stesso tempo evitare di sovrascrivere
eventuali copie precedenti già scaricate".
[...]
> #: src/options.c:4082
> #, c-format
> msgid ""
> "%s: Failed to parse bool short option #%zu (=%d)\n"
> msgstr ""
> "%s: Impossibile interpretare l'opzione bool corta #%zu (=%d)\n"
userei "booleana" per intero
[...]
> #: src/options.c:4108 src/options.c:4114
> #, c-format
> msgid ""
> "%s: Failed to parse bool long option #%zu (%d)\n"
> msgstr ""
> "%s: Impossibile interpretare l'opzione bool lunga #%zu (=%d)\n"
idem
[...]
> #: src/utils.c:83 src/utils.c:90
> #, c-format
> msgid ""
> "Failed to make directory '%s' (errno=%d)\n"
> msgstr "Impossibile creare la cartella \"%s\" (errno=%d)\n"
s/cartella/directory
[...]
> #: src/wget.c:631
> #, c-format
> msgid ""
> "HSTS in effect for [%s]:%hu\n"
> msgstr "HSTS in effetto per [%s]:%hu\n"
>
> #: src/wget.c:633
> #, c-format
> msgid ""
> "HSTS in effect for %s:%hu\n"
> msgstr "HSTS in effetto per %s:%hu\n"
Non capisco cosa intendi per "in effetto". Forse tradurrei "in effect"
con "attivo".
[...]
> #: src/wget.c:1013
> #, c-format
> msgid ""
> "URL '%s' not followed (doesn't match accept pattern)\n"
> msgstr ""
> "URL \"%s\" non seguito (non corrisponde ai pattern accettati)\n"
Qui dovrebbe essere al singolare: "non corrisponde al modello
accettato"
> #: src/wget.c:1020
> #, c-format
> msgid ""
> "URL '%s' not followed (matches reject pattern)\n"
> msgstr ""
> "URL \"%s\" non seguito (corrisponde a un pattern rifiutato)\n"
Anche qui, non userei "un" ma "al" perché è unico: "corrisponde al
modello da rifiutare"
[...]
> #: src/wget.c:1191
> #, c-format
> msgid ""
> "convert %s %s %s\n"
> msgstr "conversione %s %s %s\n"
Non so bene quale sia il contesto, ma forse manca una preposizione:
"conversione di %s %s %s\n"
[...]
> #: src/wget.c:1265
> #, c-format
> msgid "Failed to write open %s (%d)"
> msgstr "Impossibile scrivere/aprire %s (%d)"
come sopra, forse è "aprire in scrittura"
[...]
> #: src/wget.c:1502
> #, c-format
> msgid ""
> "Quota of %lld bytes reached - stopping.\n"
> msgstr "Raggiunta la quota di %lld byte - interruzione.\n"
Qui vale il discorso su "interruzione" fatto prima. Se l'avrai cambiato
prima, allora andrebbe fatto anche qui.
[...]
> #: src/wget.c:2812
> #, c-format
> msgid ""
> "URI content encoding = '%s' (%s)\n"
> msgstr "URI codifica contenuto = \"%s\" (%s)\n"
Credo sia "Codifica del contenuto dell'URI", ma non ne sono certo.
[...]
> #: src/wget.c:3196 src/wget.c:3224 src/wget.c:3243
> #, c-format
> msgid ""
> "URI content encoding = '%s'\n"
> msgstr "URI codifica contenuto = \"%s\"\n"
idem
[...]
> #: src/wget.c:3649
> #, c-format
> msgid ""
> "Directory / file name clash - not saving '%s'\n"
> msgstr "Conflitto nel nome di cartella / file - non viene salvato
> \"%s\"\n"
s/cartella/directory
Ciao,
Giuseppe
Maggiori informazioni sulla lista
tp