i18n: update italian translation
authorStefano Tortarolo <stefano.tortarolo@gmail.com>
Sat, 28 Feb 2009 13:15:58 +0100
changeset 7811 864ad81b4e24cb0616444ce1b6d8c314ea7f1d39
parent 7810 b136c6c5c1c71bd7331ce3ee01fe99ca5329a7f3
child 7812 18048153fd4ef3224923a271a87bf0ab85c85866
push id1
push usergszorc@mozilla.com
push dateWed, 18 Mar 2015 16:34:57 +0000
i18n: update italian translation
i18n/it.po
--- a/i18n/it.po
+++ b/i18n/it.po
@@ -1,51 +1,79 @@
-# Copyright (C) YEAR ORGANIZATION
-#
-# Stefano Tortarolo, 2009.
+# Italian translations for Mercurial
+# Traduzione italiana per Mercurial
+# Copyright (C) 2009 Matt Mackall and others
 msgid ""
 msgstr ""
 "Project-Id-Version: Mercurial\n"
-"POT-Creation-Date: 2009-01-17 13:56+CET\n"
-"PO-Revision-Date: 2009-02-12 18:15+0100\n"
-"Last-Translator: Stefano Tortarolo\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2009-03-01 21:10+0100\n"
+"PO-Revision-Date: 2009-03-03 20:05+0100\n"
+"Last-Translator: Stefano Tortarolo <stefano.tortarolo@gmail.com>\n"
 "Language-Team: Italian <Italian>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Generated-By: pygettext.py 1.5\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
-"X-Generator: Lokalize 0.3\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);"
+
+#, python-format
+msgid " (default: %s)"
+msgstr " (default: %s)"
+
+msgid "OPTIONS"
+msgstr "OPZIONI"
+
+msgid "COMMANDS"
+msgstr "COMANDI"
+
+msgid "    options:\n"
+msgstr "    opzioni:\n"
+
+#, python-format
+msgid ""
+"    aliases: %s\n"
+"\n"
+msgstr ""
+"    alias: %s\n"
+"\n"
 
 msgid "return tuple of (match function, list enabled)."
 msgstr "restituisce una tupla di (funzione match, elenco abilitato)."
 
+#, python-format
 msgid "acl: %s not enabled\n"
 msgstr "acl: %s non abilitato\n"
 
+#, python-format
 msgid "acl: %s enabled, %d entries for user %s\n"
 msgstr "acl: %s abilitato, %d entry per l'utente %s\n"
 
+#, python-format
 msgid "config error - hook type \"%s\" cannot stop incoming changesets"
 msgstr ""
 "errore di configurazione - l'hook di tipo \"%s\" non pu fermare i changeset "
 "in entrata"
 
+#, python-format
 msgid "acl: changes have source \"%s\" - skipping\n"
 msgstr "acl: le modifiche hanno sorgente \"%s\" - saltato\n"
 
+#, python-format
 msgid "acl: user %s denied on %s\n"
 msgstr "acl: utente %s bloccato su %s\n"
 
+#, python-format
 msgid "acl: access denied for changeset %s"
 msgstr "acl: accesso negato per il changeset %s"
 
+#, python-format
 msgid "acl: user %s not allowed on %s\n"
 msgstr "acl: l'utente %s non pu avere accesso a %s\n"
 
+#, python-format
 msgid "acl: allowing changeset %s\n"
 msgstr "acl: consentendo il changeset %s\n"
 
 msgid ""
 "allow user-defined command aliases\n"
 "\n"
 "To use, create entries in your hgrc of the form\n"
 "\n"
@@ -62,25 +90,29 @@ msgstr ""
 msgid ""
 "defer command lookup until needed, so that extensions loaded\n"
 "    after alias can be aliased"
 msgstr ""
 "ritarda la ricerca del comando fin quando necessario, in modo che si "
 "attivino gli alias\n"
 "    per le estensioni caricate dopo alias"
 
+#, python-format
 msgid "*** [alias] %s: command %s is unknown"
 msgstr "*** [alias] %s: il comando %s  sconosciuto"
 
+#, python-format
 msgid "*** [alias] %s: command %s is ambiguous"
 msgstr "*** [alias] %s: il comando %s  ambiguo"
 
+#, python-format
 msgid "*** [alias] %s: circular dependency on %s"
 msgstr "*** [alias] %s: dipendenza circolare su %s"
 
+#, python-format
 msgid "*** [alias] %s: no definition\n"
 msgstr "*** [alias] %s: nessuna definizione\n"
 
 msgid ""
 "mercurial bookmarks\n"
 "\n"
 "Mercurial bookmarks are local moveable pointers to changesets. Every\n"
 "bookmark points to a changeset identified by its hash. If you commit a\n"
@@ -121,73 +153,82 @@ msgstr ""
 "\n"
 "Questo porter i segnalibri a tener traccia del segnalibro su cui sei "
 "attualmente,e\n"
 "ad aggiornarlo. Questo  simile all'approccio di branching di git.\n"
 
 msgid ""
 "Parse .hg/bookmarks file and return a dictionary\n"
 "\n"
-"    Bookmarks are stored as {HASH}\\s{NAME}\n"
-" (localtags format) values\n"
+"    Bookmarks are stored as {HASH}\\s{NAME}\\n (localtags format) values\n"
 "    in the .hg/bookmarks file. They are read by the parse() method and\n"
 "    returned as a dictionary with name => hash values.\n"
 "\n"
 "    The parsed dictionary is cached until a write() operation is done.\n"
 "    "
 msgstr ""
 "Parsifica il file .hg/bookmarks e restituisce un dizionario\n"
 "\n"
 "    I segnalibri sono memorizzati nel file .hg/bookmarks come \n"
 "    valori {HASH}\\s{NAME} (formato di localtags).\n"
-"    Sono letti dal metodo parse() e\n"
-"    restituiti come dizionario con nome => valore di hash.\n"
-"\n"
-"    Il dizionario parsificato  memorizzato in cache finchè un'operazione di "
-"write() non viene eseguita.\n"
+"    Sono letti dal metodo parse() e restituiti come dizionario con \n"
+"    nome => valore di hash.\n"
+"\n"
+"    Il dizionario parsificato viene memorizzato in cache finchè\n"
+"    un'operazione di write() non viene eseguita.\n"
 "    "
 
 msgid ""
 "Write bookmarks\n"
 "\n"
 "    Write the given bookmark => hash dictionary to the .hg/bookmarks file\n"
 "    in a format equal to those of localtags.\n"
 "\n"
 "    We also store a backup of the previous state in undo.bookmarks that\n"
 "    can be copied back on rollback.\n"
 "    "
 msgstr ""
+"Scrive segnalibri\n"
+"\n"
+"    Scrive il dato dizionario segnalibro => hash nel file\n"
+"    .hg/bookmarks nello stesso formato di localtags.\n"
+"\n"
+"    Viene anche effettuato un backup dello stato\n"
+"    precedente in undo.bookmarks che può essere\n"
+"    ripristinato con rollback.\n"
+"    "
 
 msgid ""
 "Get the current bookmark\n"
 "\n"
 "    If we use gittishsh branches we have a current bookmark that\n"
 "    we are on. This function returns the name of the bookmark. It\n"
 "    is stored in .hg/bookmarks.current\n"
 "    "
 msgstr ""
 "Ottiene il segnalibro corrente\n"
 "\n"
-"    Se si usano branch in stile git si ha un segnalibro corrente\n"
-"    attivo. Questa funzione restituisce il nome del segnalibro. Questi\n"
-"    è memorizzato in .hg/bookmarks.current\n"
+"    Se si usano branch in stile git si ha un segnalibro\n"
+"    corrente attivo. Questa funzione restituisce il\n"
+"    nome del segnalibro. Questi è memorizzato in\n"
+"    .hg/bookmarks.current\n"
 "    "
 
 msgid ""
 "Set the name of the bookmark that we are currently on\n"
 "\n"
 "    Set the name of the bookmark that we are on (hg update <bookmark>).\n"
-"    The name is recorded in .hg/bookmarks.current\n"
+"    The name is recoreded in .hg/bookmarks.current\n"
 "    "
 msgstr ""
 "Imposta il nome del segnalibro sul quale ci si trova attualmente\n"
 "\n"
-"    Imposta il nome del segnalibro sul quale ci si trova(hg update "
-"<bookmark>).\n"
-"    Il nome viene memorizzato in .hg/bookmarks.current\n"
+"    Imposta il nome del segnalibro sul quale ci si trova\n"
+"    (hg update <bookmark>). Il nome viene memorizzato in\n"
+"    .hg/bookmarks.current\n"
 "    "
 
 msgid ""
 "mercurial bookmarks\n"
 "\n"
 "    Bookmarks are pointers to certain commits that move when\n"
 "    commiting. Bookmarks are local. They can be renamed, copied and\n"
 "    deleted. It is possible to use bookmark names in 'hg merge' and 'hg\n"
@@ -199,29 +240,29 @@ msgid ""
 "    that revision.\n"
 "    "
 msgstr ""
 
 msgid "a bookmark of this name does not exist"
 msgstr "non esiste un segnalibro con questo nome"
 
 msgid "a bookmark of the same name already exists"
-msgstr "esiste gi un segnalibro con lo stesso nome"
+msgstr "esiste già un segnalibro con lo stesso nome"
 
 msgid "new bookmark name required"
 msgstr "richiesto nuovo nome per il segnalibro"
 
 msgid "bookmark name required"
 msgstr "richiesto nome per il segnalibro"
 
 msgid "bookmark name cannot contain newlines"
-msgstr "il nome di un segnalibro non pu contenere a capo"
+msgstr "il nome di un segnalibro non può contenere a capo"
 
 msgid "a bookmark cannot have the name of an existing branch"
-msgstr "un segnalibro non pu avere lo stesso nome di una branch esistente"
+msgstr "un segnalibro non può avere lo stesso nome di una branch esistente"
 
 msgid ""
 "Strip bookmarks if revisions are stripped using\n"
 "    the mercurial.strip method. This usually happens during\n"
 "    qpush and qpop"
 msgstr ""
 
 msgid ""
@@ -238,29 +279,29 @@ msgid ""
 "Set the current bookmark\n"
 "\n"
 "    If the user updates to a bookmark we update the .hg/bookmarks.current\n"
 "    file.\n"
 "    "
 msgstr ""
 
 msgid "force"
-msgstr ""
+msgstr "forza"
 
 msgid "revision"
-msgstr ""
+msgstr "revisione"
 
 msgid "delete a given bookmark"
-msgstr ""
+msgstr "elimina un dato segnalibro"
 
 msgid "rename a given bookmark"
-msgstr ""
-
-msgid "hg bookmarks [-d] [-m NAME] [-r NAME] [NAME]"
-msgstr ""
+msgstr "rinomina un dato segnalibro"
+
+msgid "hg bookmarks [-f] [-d] [-m NAME] [-r NAME] [NAME]"
+msgstr "hg bookmarks [-f] [-d] [-m NOME] [-r NOME] [NOME]"
 
 msgid ""
 "Bugzilla integration\n"
 "\n"
 "This hook extension adds comments on bugs in Bugzilla when changesets\n"
 "that refer to bugs by Bugzilla ID are seen. The hook does not change bug\n"
 "status.\n"
 "\n"
@@ -377,98 +418,109 @@ msgid ""
 "    http://dev.domain.com/hg/repository-name/rev/3b16791d6642\n"
 "\n"
 "    Changeset commit comment. Bug 1234.\n"
 msgstr ""
 
 msgid "support for bugzilla version 2.16."
 msgstr ""
 
+#, python-format
 msgid "connecting to %s:%s as %s, password %s\n"
 msgstr ""
 
 msgid "run a query."
 msgstr ""
 
+#, python-format
 msgid "query: %s %s\n"
 msgstr ""
 
+#, python-format
 msgid "failed query: %s %s\n"
 msgstr ""
 
 msgid "get identity of longdesc field"
 msgstr ""
 
 msgid "unknown database schema"
-msgstr ""
+msgstr "schema del database sconosciuto"
 
 msgid "filter not-existing bug ids from list."
-msgstr ""
+msgstr "filtra id di bug non esistenti dalla lista"
 
 msgid "filter bug ids from list that already refer to this changeset."
 msgstr ""
 
+#, python-format
 msgid "bug %d already knows about changeset %s\n"
 msgstr "il bug %d  gi a conoscenza del changeset %s\n"
 
 msgid "tell bugzilla to send mail."
 msgstr "dice a bugzilla di inviare la mail."
 
 msgid "telling bugzilla to send mail:\n"
 msgstr "sto dicendo a bugzilla di inviare la mail:\n"
 
+#, python-format
 msgid "  bug %s\n"
 msgstr "  bug %s\n"
 
+#, python-format
 msgid "running notify command %s\n"
 msgstr "sto eseguendo il comando di notifica %s\n"
 
+#, python-format
 msgid "bugzilla notify command %s"
 msgstr "comando di notifica di bugzilla %s"
 
 msgid "done\n"
 msgstr "fatto\n"
 
 msgid "look up numeric bugzilla user id."
-msgstr ""
-
+msgstr "cerca l'identificatore utente numerico di bugzilla"
+
+#, python-format
 msgid "looking up user %s\n"
 msgstr "ricercando l'utente %s\n"
 
 msgid "map name of committer to bugzilla user name."
-msgstr ""
+msgstr "mappa il nome del committente al nome utente bugzilla"
 
 msgid ""
 "see if committer is a registered bugzilla user. Return\n"
 "        bugzilla username and userid if so. If not, return default\n"
 "        bugzilla username and userid."
 msgstr ""
 
+#, python-format
 msgid "cannot find bugzilla user id for %s"
-msgstr ""
-
+msgstr "impossibile trovare nome utente bugzilla per %s"
+
+#, python-format
 msgid "cannot find bugzilla user id for %s or %s"
-msgstr ""
+msgstr "impossibile trovare nome utente bugzilla per %s o %s"
 
 msgid ""
 "add comment to bug. try adding comment as committer of\n"
 "        changeset, otherwise as default bugzilla user."
 msgstr ""
 
 msgid "support for bugzilla 2.18 series."
-msgstr ""
+msgstr "supporto per la serie di bugzilla 2.18."
 
 msgid "support for bugzilla 3.0 series."
 msgstr ""
 
 msgid ""
 "return object that knows how to talk to bugzilla version in\n"
 "        use."
 msgstr ""
 
+#, python-format
 msgid "bugzilla version %s not supported"
 msgstr ""
 
 msgid ""
 "find valid bug ids that are referred to in changeset\n"
 "        comments and that do not already have references to this\n"
 "        changeset."
 msgstr ""
@@ -488,53 +540,58 @@ msgid ""
 msgstr ""
 
 msgid ""
 "add comment to bugzilla for each changeset that refers to a\n"
 "    bugzilla bug id. only add a comment once per bug, so same change\n"
 "    seen multiple times does not fill bug with duplicate data."
 msgstr ""
 
+#, python-format
 msgid "python mysql support not available: %s"
 msgstr "il supporto per python per mysql non è disponibile: %s"
 
+#, python-format
 msgid "hook type %s does not pass a changeset id"
 msgstr ""
 
+#, python-format
 msgid "database error: %s"
 msgstr "errore del database: %s"
 
 msgid ""
 "show the children of the given or working dir revision\n"
 "\n"
 "    Print the children of the working directory's revisions.\n"
 "    If a revision is given via --rev, the children of that revision\n"
 "    will be printed. If a file argument is given, revision in\n"
 "    which the file was last changed (after the working directory\n"
 "    revision or the argument to --rev if given) is printed.\n"
 "    "
 msgstr ""
 
 msgid "show children of the specified rev"
-msgstr ""
+msgstr "mostra i figli della revisione specificata"
 
 msgid "hg children [-r REV] [FILE]"
-msgstr ""
+msgstr "hg·children·[-r·REV]·[FILE]"
 
 msgid "command to show certain statistics about revision history"
-msgstr ""
+msgstr "comando per mostrare alcune statistiche sulla storia delle revisioni"
 
 msgid "Calculate stats"
-msgstr ""
-
+msgstr "Calcola statistiche"
+
+#, python-format
 msgid "Revision %d is a merge, ignoring...\n"
-msgstr ""
-
+msgstr "La revisione %d è un merge, ignoro...\n"
+
+#, python-format
 msgid "\rgenerating stats: %d%%"
-msgstr ""
+msgstr "\rsto generando le statistiche: %d%%"
 
 msgid ""
 "graph count of revisions grouped by template\n"
 "\n"
 "    Will graph count of changed lines or revisions grouped by template or\n"
 "    alternatively by date, if dateformat is used. In this case it will "
 "override\n"
 "    template.\n"
@@ -555,18 +612,19 @@ msgid ""
 "      # display count of lines changed in every year\n"
 "      hg churn -f '%Y' -s\n"
 "\n"
 "    The map file format used to specify aliases is fairly simple:\n"
 "\n"
 "    <alias email> <actual email>"
 msgstr ""
 
+#, python-format
 msgid "assuming %i character terminal\n"
-msgstr ""
+msgstr "assumo carattere di terminazione %i\n"
 
 msgid "count rate for the specified revision or range"
 msgstr ""
 
 msgid "count rate for revs matching date spec"
 msgstr ""
 
 msgid "template to group changesets"
@@ -574,26 +632,26 @@ msgstr ""
 
 msgid "strftime-compatible format for grouping by date"
 msgstr ""
 
 msgid "count rate by number of changesets"
 msgstr ""
 
 msgid "sort by key (default: sort by count)"
-msgstr ""
+msgstr "ordina per chiave (default: ordina per conteggio)"
 
 msgid "file with email aliases"
-msgstr ""
+msgstr "file con alias email"
 
 msgid "show progress"
-msgstr ""
+msgstr "mostra progresso"
 
 msgid "hg churn [-d DATE] [-r REV] [--aliases FILE] [--progress] [FILE]"
-msgstr ""
+msgstr "hg churn [-d DATA] [-r REV] [--aliases FILE] [--progress] [FILE]"
 
 msgid ""
 "add color output to status, qseries, and diff-related commands\n"
 "\n"
 "This extension modifies the status command to add color to its output to\n"
 "reflect file status, the qseries command to add color to reflect patch "
 "status\n"
 "(applied, unapplied, missing), and to diff-related commands to highlight\n"
@@ -636,20 +694,20 @@ msgid ""
 "diff.changed = white\n"
 "diff.trailingwhitespace = bold red_background\n"
 msgstr ""
 
 msgid "Wrap text in commands to turn on each effect."
 msgstr ""
 
 msgid "run the status command with colored output"
-msgstr ""
+msgstr "esegue il comando status con output colorato"
 
 msgid "run the qseries command with colored output"
-msgstr ""
+msgstr "esegue il comando qseries con output colorato"
 
 msgid "wrap ui.write for colored diff output"
 msgstr ""
 
 msgid "wrap cmdutil.changeset_printer.showpatch with colored output"
 msgstr ""
 
 msgid "run the diff command with colored output"
@@ -888,24 +946,443 @@ msgstr "aggiorna la cache dei log di cvs
 
 msgid "create new cvs log cache"
 msgstr "crea una nuova cache dei log cvs"
 
 msgid "set commit time fuzz in seconds"
 msgstr ""
 
 msgid "specify cvsroot"
-msgstr "specifica cvsroot"
+msgstr "specifica la cvsroot"
 
 msgid "show parent changesets"
 msgstr "mostra i changeset genitori"
 
 msgid "show current changeset in ancestor branches"
 msgstr "mostra il changeset corrente nei rami degli antenati"
 
+msgid "ignored for compatibility"
+msgstr "ignorato per compatibilità"
+
+msgid "hg debugcvsps [OPTION]... [PATH]..."
+msgstr "hg debugcvsps [OPZIONI]... [PERCORSO]..."
+
+#, python-format
+msgid "%s is not a valid revision in current branch"
+msgstr "%s non è una revisione valida nella branch corrente"
+
+#, python-format
+msgid "%s is not available in %s anymore"
+msgstr "%s non è più disponibile in %s"
+
+#, python-format
+msgid "cannot find required \"%s\" tool"
+msgstr "impossibile trovare il tool \"%s\""
+
+#, python-format
+msgid "running: %s\n"
+msgstr "sto eseguendo: %s\n"
+
+#, python-format
+msgid "%s error:\n"
+msgstr "%s errore:\n"
+
+#, python-format
+msgid "%s %s"
+msgstr "%s %s"
+
+#, python-format
+msgid "could not open map file %r: %s"
+msgstr "impossibile aprire il file di associazione %r: %s"
+
+#, python-format
+msgid "%s: missing or unsupported repository"
+msgstr "%s: repository mancante o non supportato"
+
+#, python-format
+msgid "convert: %s\n"
+msgstr "convert: %s\n"
+
+#, python-format
+msgid "%s: unknown repository type"
+msgstr "%s: tipo di repository sconosciuto"
+
+#, python-format
+msgid "cycle detected between %s and %s"
+msgstr "ciclo rilevato tra %s e %s"
+
+msgid "not all revisions were sorted"
+msgstr "non tutte le revisioni erano ordinate"
+
+#, python-format
+msgid "Writing author map file %s\n"
+msgstr "Scrivo il file di associazione degli autori %s\n"
+
+#, python-format
+msgid "Overriding mapping for author %s, was %s, will be %s\n"
+msgstr "Rimpiazzo l'associazione per l'autore %s, era %s, sarà %s\n"
+
+#, python-format
+msgid "mapping author %s to %s\n"
+msgstr "sto associando l'autore %s a %s\n"
+
+#, python-format
+msgid "Ignoring bad line in author map file %s: %s\n"
+msgstr "Ignoro riga non valida nel file di associazione degli autori %s: %s\n"
+
+#, python-format
+msgid "spliced in %s as parents of %s\n"
+msgstr ""
+
+msgid "scanning source...\n"
+msgstr "sto effettuando la scansione della sorgente...\n"
+
+msgid "sorting...\n"
+msgstr "sto ordinando...\n"
+
+msgid "converting...\n"
+msgstr "sto effettuando la conversione...\n"
+
+#, python-format
+msgid "source: %s\n"
+msgstr "sorgente: %s\n"
+
+#, python-format
+msgid "assuming destination %s\n"
+msgstr "assumo destinazione %s\n"
+
+#, python-format
+msgid "revision %s is not a patchset number or date"
+msgstr "la revisione %s non è un numero di patchset o una data"
+
+msgid "using builtin cvsps\n"
+msgstr "sto usando cvsps integrato\n"
+
+#, python-format
+msgid "connecting to %s\n"
+msgstr "sto connettendomi a %s\n"
+
+msgid "CVS pserver authentication failed"
+msgstr "autenticazione al pserver CVS fallita"
+
+msgid "server sucks"
+msgstr "il server fa schifo"
+
+#, python-format
+msgid "%d bytes missing from remote file"
+msgstr "%d byte mancanti dal file remoto"
+
+#, python-format
+msgid "cvs server: %s\n"
+msgstr "server cvs: %s\n"
+
+#, python-format
+msgid "unknown CVS response: %s"
+msgstr "risposta CVS sconosciuta: %s"
+
+msgid "collecting CVS rlog\n"
+msgstr "sto collezionando gli rlog CVS\n"
+
+#, python-format
+msgid "reading cvs log cache %s\n"
+msgstr "sto leggendo la cache dei log cvs %s\n"
+
+#, python-format
+msgid "cache has %d log entries\n"
+msgstr "la cache ha %d voci di log\n"
+
+#, python-format
+msgid "error reading cache: %r\n"
+msgstr "errore durante la lettura della cache: %r\n"
+
+#, python-format
+msgid "running %s\n"
+msgstr "sto eseguendo %s\n"
+
+#, python-format
+msgid "prefix=%r directory=%r root=%r\n"
+msgstr "prefisso=%r directory=%r radice=%r\n"
+
+msgid "RCS file must be followed by working file"
+msgstr "Il file RCS deve essere seguito da un file funzionante"
+
+msgid "must have at least some revisions"
+msgstr "è necessario avere almeno alcune revisioni"
+
+msgid "expected revision number"
+msgstr "numero di revisione atteso"
+
+msgid "revision must be followed by date line"
+msgstr "la revisione deve essere seguita da una riga con la data"
+
+#, python-format
+msgid "writing cvs log cache %s\n"
+msgstr "sto scrivendo la cache dei log cvs %s\n"
+
+#, python-format
+msgid "%d log entries\n"
+msgstr "%d voci di log\n"
+
+msgid "creating changesets\n"
+msgstr "sto creando i changeset\n"
+
+#, python-format
+msgid "%d changeset entries\n"
+msgstr "%d voci di changeset\n"
+
+msgid "Python ElementTree module is not available"
+msgstr "il modulo Python ElementTree non è disponibile"
+
+#, python-format
+msgid "cleaning up %s\n"
+msgstr "sto ripulendo %s\n"
+
+msgid "internal calling inconsistency"
+msgstr "inconsistenza nella chiamata interna"
+
+msgid "errors in filemap"
+msgstr "errori nel filemap"
+
+#, python-format
+msgid "%s:%d: %r already in %s list\n"
+msgstr "%s:%d: %r esiste già nell'elenco %s\n"
+
+#, python-format
+msgid "%s:%d: unknown directive %r\n"
+msgstr "%s:%d: direttiva sconosciuta %r\n"
+
+msgid "source repository doesn't support --filemap"
+msgstr "il repository sorgente non supporta --filemap"
+
+#, python-format
+msgid "%s does not look like a GNU Arch repo"
+msgstr "%s non sembra essere un repository GNU Arch"
+
+msgid "cannot find a GNU Arch tool"
+msgstr "impossibile trovare un tool GNU Arch"
+
+#, python-format
+msgid "analyzing tree version %s...\n"
+msgstr "sto analizzando la versione dell'albero %s...\n"
+
+#, python-format
+msgid ""
+"tree analysis stopped because it points to an unregistered archive %s...\n"
+msgstr ""
+
+#, python-format
+msgid "applying revision %s...\n"
+msgstr "sto applicando la revisione %s...\n"
+
+#, python-format
+msgid "computing changeset between %s and %s...\n"
+msgstr "sto calcolando il changeset tra %s e %s...\n"
+
+#, python-format
+msgid "obtaining revision %s...\n"
+msgstr "sto ottenendo la revisione %s...\n"
+
+#, python-format
+msgid "analysing revision %s...\n"
+msgstr "sto analizzando la revisione %s...\n"
+
+#, python-format
+msgid "could not parse cat-log of %s"
+msgstr ""
+
+#, python-format
+msgid "%s is not a local Mercurial repo"
+msgstr "%s non è un repository locale Mercurial"
+
+#, python-format
+msgid "initializing destination %s repository\n"
+msgstr "sto inizializzando il repository destinatario %s\n"
+
+msgid "run hg sink pre-conversion action\n"
+msgstr ""
+
+msgid "run hg sink post-conversion action\n"
+msgstr ""
+
+#, python-format
+msgid "pulling from %s into %s\n"
+msgstr "sto effettuando il pull da %s a %s\n"
+
+msgid "updating tags\n"
+msgstr "sto aggiornando le tag\n"
+
+#, python-format
+msgid "%s is not a valid start revision"
+msgstr "%s non è una revisione iniziale valida"
+
+#, python-format
+msgid "ignoring: %s\n"
+msgstr "sto ignorando: %s\n"
+
+msgid "run hg source pre-conversion action\n"
+msgstr ""
+
+msgid "run hg source post-conversion action\n"
+msgstr ""
+
+#, python-format
+msgid "%s does not look like a monotone repo"
+msgstr "%s non sembra essere un repository monotone"
+
+#, python-format
+msgid "copying file in renamed dir from '%s' to '%s'"
+msgstr ""
+
+msgid "Subversion python bindings could not be loaded"
+msgstr "Non è stato possibile caricare i binding python per Subversion"
+
+#, python-format
+msgid "Subversion python bindings %d.%d found, 1.4 or later required"
+msgstr ""
+"Trovati binding python per Subversion %d.%d, richiesti 1.4 o successivi"
+
+msgid "Subversion python bindings are too old, 1.4 or later required"
+msgstr ""
+"I binding python per Subversion sono troppo vecchi, richiesti 1.4 o "
+"successivi"
+
+#, python-format
+msgid "svn: revision %s is not an integer"
+msgstr "svn: la revisione %s non è un intero"
+
+#, python-format
+msgid "svn: start revision %s is not an integer"
+msgstr "svn: la revisione iniziale %s non è un intero"
+
+#, python-format
+msgid "no revision found in module %s"
+msgstr "nessuna revisione trovata nel modulo %s"
+
+#, python-format
+msgid "expected %s to be at %r, but not found"
+msgstr "mi aspettavo di trovare %s in %r, ma non esiste"
+
+#, python-format
+msgid "found %s at %r\n"
+msgstr "trovato %s in %r\n"
+
+#, python-format
+msgid "ignoring empty branch %s\n"
+msgstr "ignoro branch vuota %s\n"
+
+#, python-format
+msgid "found branch %s at %d\n"
+msgstr "trovata branch %s in %d\n"
+
+msgid "svn: start revision is not supported with with more than one branch"
+msgstr "svn: non è supportata una revisione iniziale con più di una branch"
+
+#, python-format
+msgid "svn: no revision found after start revision %d"
+msgstr "svn: nessuna revisione trovata dopo la revisione iniziale %d"
+
+#, python-format
+msgid "no tags found at revision %d\n"
+msgstr "nessuna tag trovata alla revisione %d\n"
+
+#, python-format
+msgid "ignoring foreign branch %r\n"
+msgstr "ignoro la branch straniera %r\n"
+
+#, python-format
+msgid "%s not found up to revision %d"
+msgstr "%s non trovato fino alla revisione %d"
+
+#, python-format
+msgid "branch renamed from %s to %s at %d\n"
+msgstr "branch rinominata da %s a %s in %d\n"
+
+#, python-format
+msgid "reparent to %s\n"
+msgstr "riassociato il genitore come %s\n"
+
+#, python-format
+msgid "copied to %s from %s@%s\n"
+msgstr "copiato in %s da %s@%s\n"
+
+#, python-format
+msgid "gone from %s\n"
+msgstr "andato da %s\n"
+
+#, python-format
+msgid "found parent directory %s\n"
+msgstr "trovata directory genitore %s\n"
+
+#, python-format
+msgid "base, entry %s %s\n"
+msgstr "base, voce %s %s\n"
+
+msgid "munge-o-matic\n"
+msgstr "munge-o-matic\n"
+
+#, python-format
+msgid "info: %s %s %s %s\n"
+msgstr "info: %s %s %s %s\n"
+
+#, python-format
+msgid "unknown path in revision %d: %s\n"
+msgstr "percorso sconosciuto nella revisione %d: %s\n"
+
+#, python-format
+msgid "mark %s came from %s:%d\n"
+msgstr "%s marcato come proveniente da %s:%d\n"
+
+#, python-format
+msgid "parsing revision %d (%d changes)\n"
+msgstr "sto effettuando il parsing della revisione %d (%d modifiche)\n"
+
+#, python-format
+msgid "found parent of branch %s at %d: %s\n"
+msgstr "trovato genitore della branch %s in %d: %s\n"
+
+msgid "no copyfrom path, don't know what to do.\n"
+msgstr ""
+
+#, python-format
+msgid "fetching revision log for \"%s\" from %d to %d\n"
+msgstr ""
+
+#, python-format
+msgid "skipping blacklisted revision %d\n"
+msgstr "sto saltando la revisione nella blacklist %d\n"
+
+#, python-format
+msgid "revision %d has no entries\n"
+msgstr "la revisione %d non ha voci\n"
+
+#, python-format
+msgid "svn: branch has no revision %s"
+msgstr "svn: la branch non ha nessuna revisione %s"
+
+#, python-format
+msgid "%r is not under %r, ignoring\n"
+msgstr "%r non è sotto %r, ignoro\n"
+
+#, python-format
+msgid "initializing svn repo %r\n"
+msgstr "inizializzo il repository svn %r\n"
+
+#, python-format
+msgid "initializing svn wc %r\n"
+msgstr "inizializzo svn wc %r\n"
+
+msgid "unexpected svn output:\n"
+msgstr "output svn inatteso:\n"
+
+msgid "unable to cope with svn output"
+msgstr ""
+
+msgid "XXX TAGS NOT IMPLEMENTED YET\n"
+msgstr "XXX TAG NON ANCORA IMPLEMENTATE\n"
+
 msgid ""
 "\n"
 "The `extdiff' Mercurial extension allows you to use external programs\n"
 "to compare revisions, or revision with working dir.  The external diff\n"
 "programs are called with a configurable set of options and two\n"
 "non-option arguments: paths to directories containing snapshots of\n"
 "files to compare.\n"
 "\n"
@@ -941,41 +1418,48 @@ msgid ""
 "\"hg diff\" command.  The `extdiff' extension makes snapshots of only\n"
 "needed files, so running the external diff program will actually be\n"
 "pretty fast (at least faster than having to compare the entire tree).\n"
 msgstr ""
 
 msgid "snapshot files as of some revision"
 msgstr ""
 
+#, python-format
 msgid "making snapshot of %d files from rev %s\n"
 msgstr ""
 
 msgid ""
 "snapshot files from working directory.\n"
 "    if not using snapshot, -I/-X does not work and recursive diff\n"
 "    in tools like kdiff3 and meld displays too many files."
 msgstr ""
 
+#, python-format
 msgid "making snapshot of %d files from working dir\n"
 msgstr ""
 
 msgid ""
 "Do the actuall diff:\n"
 "\n"
 "    - copy to a temp structure if diffing 2 internal revisions\n"
 "    - copy to a temp structure if diffing working revision with\n"
 "      another one and more than 1 file is changed\n"
 "    - just invoke the diff for a single file in the working dir\n"
 "    "
 msgstr ""
 
+msgid "cannot specify --rev and --change at the same time"
+msgstr ""
+
+#, python-format
 msgid "running %r in %s\n"
 msgstr ""
 
+#, python-format
 msgid "file changed while diffing. Overwriting: %s (src: %s)\n"
 msgstr ""
 
 msgid "cleaning up temp directory\n"
 msgstr "sto ripulendo la directory temporanea\n"
 
 msgid ""
 "use external program to diff repository (or selected files)\n"
@@ -992,32 +1476,36 @@ msgid ""
 "    When two revision arguments are given, then changes are\n"
 "    shown between those revisions. If only one revision is\n"
 "    specified then that revision is compared to the working\n"
 "    directory, and, when no revisions are specified, the\n"
 "    working directory files are compared to its parent."
 msgstr ""
 
 msgid "comparison program to run"
-msgstr ""
+msgstr "programma per i confronti da eseguire"
 
 msgid "pass option to comparison program"
-msgstr ""
+msgstr "passa l'opzione al programma per i confronti"
+
+msgid "change made by revision"
+msgstr "modifica effettuata dalla revisione"
 
 msgid "hg extdiff [OPT]... [FILE]..."
-msgstr ""
+msgstr "hg extdiff [OPT]... [FILE]..."
 
 msgid "use closure to save diff command to use"
 msgstr ""
 
+#, python-format
 msgid "hg %s [OPTION]... [FILE]..."
 msgstr "hg %s [OPZIONI]... [FILE]..."
 
 msgid "pulling, updating and merging in one command"
-msgstr ""
+msgstr "pull, update e merge in un comando"
 
 msgid ""
 "pull changes from a remote repository, merge new changes if needed.\n"
 "\n"
 "    This finds all changes from the repository at the specified path\n"
 "    or URL and adds them to the local repository.\n"
 "\n"
 "    If the pulled changes add a new branch head, the head is automatically\n"
@@ -1065,36 +1553,42 @@ msgstr "ci sono modifiche in sospeso di cui non si è effettuato il commit"
 
 msgid "working directory is missing some files"
 msgstr "alla directory di lavoro mancano alcuni file"
 
 msgid ""
 "multiple heads in this branch (use \"hg heads .\" and \"hg merge\" to merge)"
 msgstr ""
 
+#, python-format
 msgid "pulling from %s\n"
 msgstr "sto facendo pull da %s\n"
 
 msgid "fetch -r doesn't work for remote repositories yet"
 msgstr ""
 
+#, python-format
 msgid ""
 "not merging with %d other new branch heads (use \"hg heads .\" and \"hg merge"
 "\" to merge them)\n"
 msgstr ""
 
+#, python-format
 msgid "updating to %d:%s\n"
 msgstr "sto aggiornando a %d:%s\n"
 
+#, python-format
 msgid "merging with %d:%s\n"
 msgstr "sto facendo il merge con %d:%s\n"
 
+#, python-format
 msgid "Automated merge with %s"
 msgstr "Merge automatico con %s"
 
+#, python-format
 msgid "new changeset %d:%s merges remote changes with local\n"
 msgstr ""
 "il nuovo changeset %d:%s fa il merge delle modifiche remote con quelle "
 "locali\n"
 
 msgid "a specific revision you would like to pull"
 msgstr "una specifica revisione di cui si desidera fare il pull"
 
@@ -1128,35 +1622,40 @@ msgstr ""
 "\n"
 "    percorre ogni firma, restituendo una coppia\n"
 "    ((nodo, versione, firma), (nome del file, numero di riga))\n"
 "    "
 
 msgid "get the keys who signed a data"
 msgstr "ottiene le chiavi di chi ha firmato i dati"
 
+#, python-format
 msgid "%s Bad signature from \"%s\"\n"
 msgstr "%s Firma non valida da \"%s\"\n"
 
+#, python-format
 msgid "%s Note: Signature has expired (signed by: \"%s\")\n"
 msgstr "%s Nota: La firma è scaduta (firmato da: \"%s\")\n"
 
+#, python-format
 msgid "%s Note: This key has expired (signed by: \"%s\")\n"
 msgstr "%s Nota: Questa chiave è scaduta (firmato da: \"%s\")\n"
 
 msgid "list signed changesets"
 msgstr "elenca i changeset firmati"
 
+#, python-format
 msgid "%s:%d node does not exist\n"
 msgstr "il nodo %s:%d non esiste\n"
 
 msgid "verify all the signatures there may be for a particular revision"
 msgstr ""
 "verifica tutte le firme che potrebbero esistere per una particolare revisione"
 
+#, python-format
 msgid "No valid signature for %s\n"
 msgstr "Nessuna firma valida per %s\n"
 
 msgid "associate a string to a key (username, comment)"
 msgstr "associa una stringa ad una chiave (username, commento)"
 
 msgid ""
 "add a signature for the current or given revision\n"
@@ -1187,16 +1686,17 @@ msgstr "Errore durante la firma"
 
 msgid ""
 "working copy of .hgsigs is changed (please commit .hgsigs manually or use --"
 "force)"
 msgstr ""
 "la copia di lavoro di .hgsigs è cambiata (si prega di fare il commit "
 "manualmente di .hgsigs o usare --force)"
 
+#, python-format
 msgid "Added signature for changeset %s"
 msgstr "Aggiunta firma per il changeset %s"
 
 msgid "map a manifest into some text"
 msgstr "associa un manifesto ad un qualche testo"
 
 msgid "unknown signature version"
 msgstr "versione della firma sconosciuta"
@@ -1275,68 +1775,48 @@ msgid ""
 "      - Number of columns (ongoing edges) in the current revision.\n"
 "      - The difference between the number of columns (ongoing edges)\n"
 "        in the next revision and the number of columns (ongoing edges)\n"
 "        in the current revision. That is: -1 means one column removed;\n"
 "        0 means no columns added or removed; 1 means one column added.\n"
 "    "
 msgstr ""
 
-msgid "limit must be a positive integer"
-msgstr ""
-
-msgid "limit must be positive"
-msgstr ""
-
+#, python-format
 msgid "--graph option is incompatible with --%s"
 msgstr "l'opzione --graph è incompatibile con --%s"
 
 msgid ""
 "show revision history alongside an ASCII revision graph\n"
 "\n"
 "    Print a revision history alongside a revision graph drawn with\n"
 "    ASCII characters.\n"
 "\n"
 "    Nodes printed as an @ character are parents of the working\n"
 "    directory.\n"
 "    "
 msgstr ""
 
 msgid ""
-"cset DAG generator yielding (node, [parents]) tuples\n"
-"\n"
-"    This generator function walks through the revisions not found\n"
-"    in the destination\n"
-"    "
-msgstr ""
-
-msgid "comparing with %s\n"
-msgstr ""
-
-msgid "no changes found\n"
-msgstr ""
-
-msgid ""
 "show the outgoing changesets alongside an ASCII revision graph\n"
 "\n"
 "    Print the outgoing changesets alongside a revision graph drawn with\n"
 "    ASCII characters.\n"
 "\n"
 "    Nodes printed as an @ character are parents of the working\n"
 "    directory.\n"
 "    "
 msgstr ""
 
-msgid ""
-"cset DAG generator yielding (node, [parents]) tuples\n"
-"\n"
-"    This generator function walks through the revisions of the destination\n"
-"    not found in repo\n"
-"    "
-msgstr ""
+#, python-format
+msgid "comparing with %s\n"
+msgstr ""
+
+msgid "no changes found\n"
+msgstr "nessuna modifica trovata\n"
 
 msgid ""
 "show the incoming changesets alongside an ASCII revision graph\n"
 "\n"
 "    Print the incoming changesets alongside a revision graph drawn with\n"
 "    ASCII characters.\n"
 "\n"
 "    Nodes printed as an @ character are parents of the working\n"
@@ -1401,24 +1881,25 @@ msgid ""
 msgstr ""
 
 msgid " A CIA message "
 msgstr ""
 
 msgid " CIA notification class "
 msgstr ""
 
+#, python-format
 msgid "hgcia: sending update to %s\n"
 msgstr ""
 
 msgid " send CIA notification "
-msgstr ""
+msgstr "invia notifica CIA"
 
 msgid "email.from must be defined when sending by email"
-msgstr ""
+msgstr "email.from deve essere definito quando si mandano mail"
 
 msgid "cia: no user specified"
 msgstr ""
 
 msgid "cia: no project specified"
 msgstr ""
 
 msgid ""
@@ -1459,47 +1940,44 @@ msgid ""
 "  [hgk]\n"
 "  vdiff=vdiff\n"
 "\n"
 "Revisions context menu will now display additional entries to fire\n"
 "vdiff on hovered and selected revisions."
 msgstr ""
 
 msgid "diff trees from two commits"
-msgstr ""
+msgstr "mostra le differenze tra alberi di due commit"
 
 msgid "output common ancestor information"
-msgstr ""
+msgstr "stampa in output informazioni sull'antenato comune"
 
 msgid "cat a specific revision"
 msgstr "stampa a video una specifica revisione"
 
 msgid "cat-file: type or revision not supplied\n"
-msgstr ""
+msgstr "cat-file: tipo o revisione non forniti\n"
 
 msgid "aborting hg cat-file only understands commits\n"
 msgstr ""
 
 msgid "parse given revisions"
-msgstr ""
+msgstr "parsifica le revisioni date"
 
 msgid "print revisions"
-msgstr ""
+msgstr "stampa revisioni"
 
 msgid "print extension options"
 msgstr "stampa le opzioni dell'estensione"
 
 msgid "start interactive history viewer"
-msgstr ""
-
-msgid "running %s\n"
-msgstr ""
+msgstr "avvia visualizzatore interattivo della storia"
 
 msgid "hg view [-l LIMIT] [REVRANGE]"
-msgstr ""
+msgstr "hg view [-l LIMITE] [INTERVALLOREV]"
 
 msgid "generate patch"
 msgstr "genera patch"
 
 msgid "recursive"
 msgstr "ricorsivo"
 
 msgid "pretty"
@@ -1516,26 +1994,26 @@ msgstr "ricerca"
 
 msgid "hg git-diff-tree [OPTION]... NODE1 NODE2 [FILE]..."
 msgstr "hg git-diff-tree [OPZIONI]... NODO1 NODO2 [FILE]..."
 
 msgid "hg debug-cat-file [OPTION]... TYPE FILE"
 msgstr "hg debug-cat-file [OPZIONI]... TIPO FILE"
 
 msgid "hg debug-config"
-msgstr ""
+msgstr "hg debug-config"
 
 msgid "hg debug-merge-base node node"
-msgstr ""
+msgstr "hg debug-merge-base nodo nodo"
 
 msgid "ignored"
 msgstr "ignorato"
 
 msgid "hg debug-rev-parse REV"
-msgstr ""
+msgstr "hg debug-rev-parse REV"
 
 msgid "header"
 msgstr "intestazione"
 
 msgid "topo-order"
 msgstr "ordine topologico"
 
 msgid "parents"
@@ -1567,54 +2045,183 @@ msgid ""
 "\n"
 "-- Adam Hupp <adam@hupp.org>\n"
 msgstr ""
 
 msgid "inotify-based status acceleration for Linux systems\n"
 msgstr "accelerazione di status per sistemi Linux basata su inotify\n"
 
 msgid "start an inotify server for this repository"
-msgstr ""
+msgstr "avvia un server inotify per questo repository"
 
 msgid "(found dead inotify server socket; removing it)\n"
-msgstr ""
+msgstr "(trovato socket morto del server inotify; lo rimuovo)\n"
 
 msgid "(starting inotify server)\n"
-msgstr ""
-
+msgstr "(sto avviando il server inotify)\n"
+
+#, python-format
 msgid "could not start inotify server: %s\n"
-msgstr ""
-
+msgstr "impossibile avviare il server inotify: %s\n"
+
+#, python-format
 msgid "could not talk to new inotify server: %s\n"
-msgstr ""
+msgstr "impossibile comunicare con il nuovo server inotify: %s\n"
 
 msgid "(inotify server not running)\n"
 msgstr "(server inotify non in esecuzione\n"
 
+#, python-format
 msgid "failed to contact inotify server: %s\n"
 msgstr "non sono riuscito a contattare il server inotify: %s\n"
 
 msgid "run server in background"
 msgstr "avvia il server in background"
 
 msgid "used internally by daemon mode"
 msgstr "usato internamente dalla modalità demone"
 
 msgid "minutes to sit idle before exiting"
-msgstr ""
+msgstr "minuti per cui stare in attesa prima di uscire"
 
 msgid "name of file to write process ID to"
-msgstr ""
+msgstr "nome del file in cui scrivere l'ID del processo"
 
 msgid "hg inserve [OPT]..."
-msgstr ""
-
+msgstr "hg inserve [OPT]..."
+
+#, python-format
+msgid "(inotify: received response from incompatible server version %d)\n"
+msgstr ""
+
+msgid "this system does not seem to support inotify"
+msgstr "questo sistema sembra non supportare inotify"
+
+#, python-format
+msgid "*** the current per-user limit on the number of inotify watches is %s\n"
+msgstr ""
+
+msgid "*** this limit is too low to watch every directory in this repository\n"
+msgstr ""
+
+msgid "*** counting directories: "
+msgstr "*** sto contando le directory: "
+
+#, python-format
+msgid "found %d\n"
+msgstr "trovato %d\n"
+
+#, python-format
+msgid "*** to raise the limit from %d to %d (run as root):\n"
+msgstr ""
+
+#, python-format
+msgid "***  echo %d > %s\n"
+msgstr "***  echo %d > %s\n"
+
+#, python-format
+msgid "cannot watch %s until inotify watch limit is raised"
+msgstr ""
+"impossibile controllare %s finchè il limite di controlli di inotify non "
+"verrà aumentato"
+
+#, python-format
+msgid "inotify service not available: %s"
+msgstr "servizio inotify non disponibile: %s"
+
+#, python-format
+msgid "watching %r\n"
+msgstr "sto controllando %r\n"
+
+#, python-format
+msgid "watching directories under %r\n"
+msgstr "sto controllando le directory sotto %r\n"
+
+#, python-format
+msgid "status: %r dir(%d) -> %s\n"
+msgstr "status: %r dir(%d) -> %s\n"
+
+#, python-format
+msgid "status: %r %s -> %s\n"
+msgstr "status: %r %s -> %s\n"
+
+#, python-format
+msgid "%s dirstate reload\n"
+msgstr ""
+
+#, python-format
+msgid "%s end dirstate reload\n"
+msgstr ""
+
+msgid "rescanning due to .hgignore change\n"
+msgstr ""
+
+#, python-format
+msgid "%s event: created %s\n"
+msgstr "evento %s: creato %s\n"
+
+#, python-format
+msgid "%s event: deleted %s\n"
+msgstr "evento %s: cancellato %s\n"
+
+#, python-format
+msgid "%s event: modified %s\n"
+msgstr "evento %s: modificato %s\n"
+
+#, python-format
+msgid "filesystem containing %s was unmounted\n"
+msgstr "il filesystem contenente %s era smontato\n"
+
+#, python-format
+msgid "%s readable: %d bytes\n"
+msgstr "%s leggibile: %d byte\n"
+
+#, python-format
+msgid "%s below threshold - unhooking\n"
+msgstr ""
+
+#, python-format
+msgid "%s reading %d events\n"
+msgstr ""
+
+#, python-format
+msgid "%s hooking back up with %d bytes readable\n"
+msgstr ""
+
+#, python-format
+msgid "%s processing %d deferred events as %d\n"
+msgstr ""
+
+#, python-format
+msgid "could not start server: %s"
+msgstr ""
+
+#, python-format
+msgid "received query from incompatible client version %d\n"
+msgstr ""
+
+#, python-format
+msgid "answering query for %r\n"
+msgstr ""
+
+msgid "finished setup\n"
+msgstr ""
+
+msgid "polling: no timeout\n"
+msgstr ""
+
+#, python-format
+msgid "polling: %sms timeout\n"
+msgstr ""
+
+#, python-format
 msgid "interhg: invalid pattern for %s: %s\n"
 msgstr ""
 
+#, python-format
 msgid "interhg: invalid regexp for %s: %s\n"
 msgstr ""
 
 msgid ""
 "keyword expansion in local repositories\n"
 "\n"
 "This extension expands RCS/CVS-like or self-customized $Keywords$\n"
 "in tracked text files selected by your configuration.\n"
@@ -1682,16 +2289,17 @@ msgid ""
 "Returns true if path matches [keyword] pattern\n"
 "        and is not a symbolic link.\n"
 "        Caveat: localrepository._link fails on Windows."
 msgstr ""
 
 msgid "Overwrites selected files expanding/shrinking keywords."
 msgstr ""
 
+#, python-format
 msgid "overwriting %s %s keywords\n"
 msgstr ""
 
 msgid "Unconditionally removes all keyword substitutions from text."
 msgstr ""
 
 msgid "Returns text with all keyword substitutions removed."
 msgstr ""
@@ -1744,32 +2352,36 @@ msgid ""
 "\n"
 "    Extend current configuration by specifying maps as arguments\n"
 "    and optionally by reading from an additional hgrc file.\n"
 "\n"
 "    Override current keyword template maps with \"default\" option.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid ""
 "\n"
 "\t%s\n"
 msgstr ""
 
+#, python-format
 msgid "creating temporary repo at %s\n"
 msgstr ""
 
+#, python-format
 msgid ""
 "\n"
 "%s keywords written to %s:\n"
 msgstr ""
 
 msgid "unhooked all commit hooks\n"
 msgstr ""
 
+#, python-format
 msgid ""
 "\n"
 "removing temporary repo %s\n"
 msgstr ""
 
 msgid ""
 "expand keywords in working directory\n"
 "\n"
@@ -1888,209 +2500,250 @@ msgstr ""
 "        If none found, add it email style."
 
 msgid ""
 "Remove existing message, keeping the rest of the comments fields.\n"
 "        If comments contains 'subject: ', message will prepend\n"
 "        the field and a blank line."
 msgstr ""
 
+#, python-format
 msgid "%s appears more than once in %s"
 msgstr "%s compare più di una volta in %s"
 
 msgid "guard cannot be an empty string"
 msgstr "una guardia non può essere una stringa vuota"
 
+#, python-format
 msgid "guard %r starts with invalid character: %r"
 msgstr "la guardia %r inizia con un carattere non valido: %r"
 
+#, python-format
 msgid "invalid character in guard %r: %r"
 msgstr "carattere non valido nella guardia %r: %r"
 
+#, python-format
 msgid "active guards: %s\n"
 msgstr "guardie attive: %s\n"
 
+#, python-format
 msgid "guard %r too short"
 msgstr "la guardia %r è troppo corta"
 
+#, python-format
 msgid "guard %r starts with invalid char"
 msgstr "la guardia %r inizia con un carattere non valido"
 
+#, python-format
 msgid "allowing %s - no guards in effect\n"
 msgstr ""
 
+#, python-format
 msgid "allowing %s - no matching negative guards\n"
 msgstr ""
 
+#, python-format
 msgid "allowing %s - guarded by %r\n"
 msgstr ""
 
+#, python-format
 msgid "skipping %s - guarded by %r\n"
 msgstr "sto saltando %s - controllato da %r\n"
 
+#, python-format
 msgid "skipping %s - no matching guards\n"
 msgstr "sto saltando %s - nessuna guardia corrispondente\n"
 
+#, python-format
 msgid "error removing undo: %s\n"
 msgstr ""
 
+#, python-format
 msgid "apply failed for patch %s"
 msgstr "applicazione della patch %s fallita"
 
+#, python-format
 msgid "patch didn't work out, merging %s\n"
 msgstr ""
 
+#, python-format
 msgid "update returned %d"
 msgstr "l'aggiornamento ha restituito %d"
 
 msgid "repo commit failed"
 msgstr "commit del repository fallito"
 
+#, python-format
 msgid "unable to read %s"
 msgstr "impossibile leggere %s"
 
+#, python-format
 msgid "patch %s does not exist\n"
 msgstr "la patch %s non esiste\n"
 
+#, python-format
 msgid "patch %s is not applied\n"
 msgstr "la patch %s non è applicata\n"
 
 msgid ""
 "Apply patchfile  to the working directory.\n"
 "        patchfile: file name of patch"
 msgstr ""
 
 msgid "patch failed, unable to continue (try -v)\n"
 msgstr "patch fallita, impossibile continuare (provare con -v)\n"
 
+#, python-format
 msgid "applying %s\n"
 msgstr "sto applicando %s\n"
 
+#, python-format
 msgid "Unable to read %s\n"
 msgstr "Impossibile leggere %s\n"
 
+#, python-format
 msgid "imported patch %s\n"
 msgstr "patch %s importata\n"
 
+#, python-format
 msgid ""
 "\n"
 "imported patch %s"
 msgstr ""
 "\n"
 "patch %s importata"
 
+#, python-format
 msgid "patch %s is empty\n"
 msgstr "la patch %s è vuota\n"
 
 msgid "patch failed, rejects left in working dir\n"
 msgstr ""
 
 msgid "fuzz found when applying patch, stopping\n"
 msgstr ""
 
+#, python-format
 msgid "revision %d is not managed"
 msgstr ""
 
+#, python-format
 msgid "cannot delete revision %d above applied patches"
 msgstr ""
 
 msgid "qdelete requires at least one revision or patch name"
 msgstr ""
 
+#, python-format
 msgid "cannot delete applied patch %s"
 msgstr ""
 
+#, python-format
 msgid "patch %s not in series file"
 msgstr ""
 
 msgid "no patches applied"
 msgstr ""
 
 msgid "working directory revision is not qtip"
 msgstr ""
 
 msgid "local changes found, refresh first"
 msgstr ""
 
 msgid "local changes found"
 msgstr ""
 
+#, python-format
 msgid "\"%s\" cannot be used as the name of a patch"
 msgstr ""
 
 msgid ""
 "options:\n"
 "           msg: a string or a no-argument function returning a string\n"
 "        "
 msgstr ""
 
+#, python-format
 msgid "patch \"%s\" already exists"
 msgstr "la patch \"%s\" esiste gi"
 
+#, python-format
 msgid "error unlinking %s\n"
 msgstr ""
 
 msgid "returns (index, rev, patch)"
 msgstr ""
 
+#, python-format
 msgid "patch name \"%s\" is ambiguous:\n"
 msgstr "il nome della patch \"%s\"  ambiguo:\n"
 
+#, python-format
 msgid "patch %s not in series"
 msgstr "la patch %s non  nella serie"
 
 msgid "(working directory not at tip)\n"
 msgstr "(directory di lavoro non  tip)\n"
 
 msgid "no patches in series\n"
 msgstr "nessuna patch nella serie\n"
 
+#, python-format
 msgid "cannot push to a previous patch: %s"
 msgstr "impossibile fare push su una patch precedente: %s"
 
+#, python-format
 msgid "qpush: %s is already at the top\n"
 msgstr "qpush: %s  gi in cima\n"
 
+#, python-format
 msgid "guarded by %r"
 msgstr "controllato da %r"
 
 msgid "no matching guards"
 msgstr "nessuna guardia corrispondente"
 
+#, python-format
 msgid "cannot push '%s' - %s\n"
 msgstr "impossibile fare push di '%s' - %s\n"
 
 msgid "all patches are currently applied\n"
 msgstr "tutte le patch sono correntemente applicate\n"
 
 msgid "patch series already fully applied\n"
 msgstr "la serie di patch  gi stata applicata completamente\n"
 
 msgid "cleaning up working directory..."
 msgstr "sto pulendo la directory di lavoro..."
 
+#, python-format
 msgid "errors during apply, please fix and refresh %s\n"
 msgstr ""
 "errori durante l'applicazione, si prega di correggere e aggiornare %s\n"
 
+#, python-format
 msgid "now at: %s\n"
 msgstr "ora a: %s\n"
 
+#, python-format
 msgid "patch %s is not applied"
 msgstr "la patch %s non  applicata"
 
 msgid "no patches applied\n"
 msgstr "nessuna patch applicata\n"
 
+#, python-format
 msgid "qpop: %s is already at the top\n"
 msgstr ""
 
 msgid "qpop: forcing dirstate update\n"
 msgstr ""
 
+#, python-format
 msgid "trying to pop unknown node %s"
 msgstr ""
 
 msgid "popping would remove a revision not managed by this patch queue"
 msgstr ""
 
 msgid "deletions found between repo revs"
 msgstr ""
@@ -2104,31 +2757,35 @@ msgstr ""
 msgid ""
 "refresh interrupted while patch was popped! (revert --all, qpush to "
 "recover)\n"
 msgstr ""
 
 msgid "patch queue directory already exists"
 msgstr ""
 
+#, python-format
 msgid "patch %s is not in series file"
 msgstr ""
 
 msgid "No saved patch data found\n"
 msgstr ""
 
+#, python-format
 msgid "restoring status: %s\n"
 msgstr "sto ripristinando lo stato: %s\n"
 
 msgid "save entry has children, leaving it alone\n"
 msgstr ""
 
+#, python-format
 msgid "removing save entry %s\n"
 msgstr ""
 
+#, python-format
 msgid "saved queue repository parents: %s %s\n"
 msgstr ""
 
 msgid "queue directory updating\n"
 msgstr ""
 
 msgid "Unable to load queue repository\n"
 msgstr "Impossibile caricare il repository della coda\n"
@@ -2148,52 +2805,61 @@ msgstr "commit del repository fallito\n"
 msgid ""
 "If all_patches is False, return the index of the next pushable patch\n"
 "        in the series, or the series length. If all_patches is True, return "
 "the\n"
 "        index of the first patch past the last applied one.\n"
 "        "
 msgstr ""
 
+#, python-format
 msgid "patch %s is already in the series file"
 msgstr "la patch %s  gi nel file series"
 
 msgid "option \"-r\" not valid when importing files"
 msgstr "l'opzione \"-r\" non è valida quando si importano file"
 
 msgid "option \"-n\" not valid when importing multiple patches"
 msgstr "l'opzione \"-n\" non è valida quando si importano patch multiple"
 
+#, python-format
 msgid "revision %d is the root of more than one branch"
 msgstr ""
 
+#, python-format
 msgid "revision %d is already managed"
 msgstr ""
 
+#, python-format
 msgid "revision %d is not the parent of the queue"
 msgstr ""
 
+#, python-format
 msgid "revision %d has unmanaged children"
 msgstr ""
 
+#, python-format
 msgid "cannot import merge revision %d"
 msgstr ""
 
+#, python-format
 msgid "revision %d is not the parent of %d"
 msgstr "la revisione %d non  il genitore di %d"
 
 msgid "-e is incompatible with import from -"
 msgstr "-e  incompatibile con l'import da -"
 
+#, python-format
 msgid "patch %s does not exist"
 msgstr "la patch %s non esiste"
 
 msgid "need --name to import a patch from -"
 msgstr "necessario --name per importare una patch da -"
 
+#, python-format
 msgid "adding %s to series file\n"
 msgstr "sto aggiungendo %s al file series\n"
 
 msgid ""
 "remove patches from queue\n"
 "\n"
 "    The patches must not be applied, unless they are arguments to\n"
 "    the --rev parameter. At least one patch or revision is required.\n"
@@ -2408,57 +3074,58 @@ msgid ""
 "    The header for each folded patch will be concatenated with\n"
 "    the current patch header, separated by a line of '* * *'."
 msgstr ""
 
 msgid "qfold requires at least one patch name"
 msgstr ""
 
 msgid "No patches applied"
-msgstr ""
-
+msgstr "Nessuna patch applicata"
+
+#, python-format
 msgid "Skipping already folded patch %s"
-msgstr ""
-
+msgstr "Salto patch già ripiegata %s"
+
+#, python-format
 msgid "qfold cannot fold already applied patch %s"
-msgstr ""
-
+msgstr "qfold non può ripiegare la patch già applicata %s"
+
+#, python-format
 msgid "Error folding patch %s"
-msgstr ""
+msgstr "Errore nel ripiegare la patch %s"
 
 msgid "push or pop patches until named patch is at top of stack"
 msgstr ""
 
 msgid ""
 "set or print guards for a patch\n"
 "\n"
 "    Guards control whether a patch can be pushed. A patch with no\n"
 "    guards is always pushed. A patch with a positive guard (\"+foo\") is\n"
 "    pushed only if the qselect command has activated it. A patch with\n"
 "    a negative guard (\"-foo\") is never pushed if the qselect command\n"
 "    has activated it.\n"
 "\n"
 "    With no arguments, print the currently active guards.\n"
 "    With arguments, set guards for the named patch.\n"
-"\n"
-"    To set a negative guard \"-foo\" on topmost patch (\"--\" is needed so\n"
-"    hg will not interpret \"-foo\" as an option):\n"
-"      hg qguard -- -foo\n"
+"    NOTE: Specifying negative guards now requires '--'.\n"
 "\n"
 "    To set guards on another patch:\n"
-"      hg qguard other.patch +2.6.17 -stable\n"
+"      hg qguard -- other.patch +2.6.17 -stable\n"
 "    "
 msgstr ""
 
 msgid "cannot mix -l/--list with options or arguments"
 msgstr ""
 
 msgid "no patch to work with"
 msgstr ""
 
+#, python-format
 msgid "no patch named %s"
 msgstr ""
 
 msgid "print the header of the topmost or specified patch"
 msgstr ""
 
 msgid ""
 "push the next patch onto the stack\n"
@@ -2466,70 +3133,83 @@ msgid ""
 "    When --force is applied, all local changes in patched files will be "
 "lost.\n"
 "    "
 msgstr ""
 
 msgid "no saved queues found, please use -n\n"
 msgstr ""
 
+#, python-format
 msgid "merging with queue at: %s\n"
 msgstr ""
 
 msgid ""
 "pop the current patch off the stack\n"
 "\n"
 "    By default, pops off the top of the patch stack. If given a patch name,\n"
 "    keeps popping off patches until the named patch is at the top of the "
 "stack.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid "using patch queue: %s\n"
 msgstr ""
 
 msgid ""
 "rename a patch\n"
 "\n"
 "    With one argument, renames the current patch to PATCH1.\n"
 "    With two arguments, renames PATCH1 to PATCH2."
 msgstr ""
 "rinomina una patch\n"
 "\n"
 "    Con un argomento rinomina la patch corrente in PATCH1.\n"
 "    Con due argomenti rinomina PATCH1 in PATCH2."
 
+#, python-format
 msgid "%s already exists"
 msgstr "%s esiste già"
 
+#, python-format
 msgid "A patch named %s already exists in the series file"
 msgstr "Una patch chiamata %s esiste già nel file series"
 
 msgid "restore the queue state saved by a rev"
 msgstr "ripristina lo stato della coda salvato da una revisione"
 
 msgid "save current queue state"
 msgstr "salva lo stato corrente della coda"
 
+#, python-format
 msgid "destination %s exists and is not a directory"
 msgstr "la destinazione %s esiste e non è una directory"
 
+#, python-format
 msgid "destination %s exists, use -f to force"
 msgstr "la destinazione %s esiste, usare -f per forzare l'operazione"
 
+#, python-format
 msgid "copy %s to %s\n"
 msgstr "copia %s a %s\n"
 
 msgid ""
 "strip a revision and all its descendants from the repository\n"
 "\n"
 "    If one of the working dir's parent revisions is stripped, the working\n"
 "    directory will be updated to the parent of the stripped revision.\n"
 "    "
 msgstr ""
+"elimina una revisione e tutti i suoi discendenti dal repository\n"
+"\n"
+"    Se una delle revisioni genitore della directory di lavoro\n"
+"    viene rimossa, la directory di lavorò sarà aggiornata al\n"
+"    genitore della revisione rimossa.\n"
+"    "
 
 msgid ""
 "set or print guarded patches to push\n"
 "\n"
 "    Use the qguard command to set or print guards on patch, then use\n"
 "    qselect to tell mq which guards to use. A patch will be pushed if it\n"
 "    has no guards or any positive guards match the currently selected "
 "guard,\n"
@@ -2558,20 +3238,22 @@ msgid ""
 "\n"
 "    Use -s/--series to print a list of all guards in the series file (no\n"
 "    other arguments needed). Use -v for more information."
 msgstr ""
 
 msgid "guards deactivated\n"
 msgstr "guardie disattivate\n"
 
+#, python-format
 msgid "number of unguarded, unapplied patches has changed from %d to %d\n"
 msgstr ""
 "il numero di patch non applicate, senza guardia è cambiato da %d a %d\n"
 
+#, python-format
 msgid "number of guarded, applied patches has changed from %d to %d\n"
 msgstr "il numero di patch applicate aventi guardia è cambiato da %d a %d\n"
 
 msgid "guards in series file:\n"
 msgstr "guardie nel file series:\n"
 
 msgid "no guards in series file\n"
 msgstr "nessuna guardia nel file series\n"
@@ -2609,19 +3291,21 @@ msgid "no revisions specified"
 msgstr "nessuna revisione specificata"
 
 msgid "cannot commit over an applied mq patch"
 msgstr "impossibile effettuare commit su una patch mq applicata"
 
 msgid "source has mq patches applied"
 msgstr "la sorgente ha patch mq applicate"
 
+#, python-format
 msgid "mq status file refers to unknown node %s\n"
 msgstr "il file dello stato di mq fa riferimento al nodo sconosciuto %s\n"
 
+#, python-format
 msgid "Tag %s overrides mq patch of the same name\n"
 msgstr "La tag %s annulla una patch mq con lo stesso nome\n"
 
 msgid "cannot import over an applied patch"
 msgstr "impossibile importare sopra ad una patch applicata"
 
 msgid "print first line of patch header"
 msgstr "stampa la prima riga dell'intestazione della patch"
@@ -2675,18 +3359,18 @@ msgid "hg qgoto [OPTION]... PATCH"
 msgstr "hg qgoto [OPZIONI]... PATCH"
 
 msgid "list all patches and guards"
 msgstr "elenca tutte le patch e le guardie"
 
 msgid "drop all guards"
 msgstr "scarta tutte le guardie"
 
-msgid "hg qguard [-l] [-n] [PATCH] [+GUARD]... [-GUARD]..."
-msgstr "hg qguard [-l] [-n] [PATCH] [+GUARDIA]... [-GUARDIA]..."
+msgid "hg qguard [-l] [-n] -- [PATCH] [+GUARD]... [-GUARD]..."
+msgstr "hg qguard [-l] [-n] -- [PATCH] [+GUARDIA]... [-GUARDIA]..."
 
 msgid "hg qheader [PATCH]"
 msgstr "hg qheader [PATCH]"
 
 msgid "import file in patch dir"
 msgstr "importa il file nella directory delle patch"
 
 msgid "patch file name"
@@ -2930,54 +3614,55 @@ msgstr ""
 msgid "return list of email addresses of subscribers to this repo."
 msgstr ""
 
 msgid "format one changeset."
 msgstr "formatta un changeset."
 
 msgid "true if incoming changes from this source should be skipped."
 msgstr ""
+"vero se le modifiche in entrata da questa sorgente dovrebbero essere saltate."
 
 msgid "send message."
 msgstr "invia messaggio."
 
-msgid "try to make subject line exist and be useful."
-msgstr ""
-
+#, python-format
 msgid "%s: %d new changesets"
 msgstr "%s: %d nuovi changeset"
 
-msgid "try to make message have proper sender."
-msgstr ""
-
+#, python-format
 msgid "notify: sending %d subscribers %d changes\n"
 msgstr ""
 
+#, python-format
 msgid ""
 "\n"
 "diffs (truncated from %d to %d lines):\n"
 "\n"
 msgstr ""
 
+#, python-format
 msgid ""
 "\n"
 "diffs (%d lines):\n"
 "\n"
 msgstr ""
 
 msgid ""
 "send email notifications to interested subscribers.\n"
 "\n"
 "    if used as changegroup hook, send one email for all changesets in\n"
 "    changegroup. else send one email per changeset."
 msgstr ""
 
+#, python-format
 msgid "notify: no subscribers to repo %s\n"
 msgstr ""
 
+#, python-format
 msgid "notify: changes have source \"%s\" - skipping\n"
 msgstr ""
 
 msgid ""
 "browse command output with external pager\n"
 "\n"
 "To set the pager that should be used, set the application variable:\n"
 "\n"
@@ -3079,27 +3764,33 @@ msgid ""
 "done, patchbomb messages are displayed. If PAGER environment variable\n"
 "is set, your pager will be fired up once for each patchbomb message, so\n"
 "you can verify everything is alright.\n"
 "\n"
 "The \"-m\" (mbox) option is also very useful.  Instead of previewing\n"
 "each patchbomb message in a pager or sending the messages directly,\n"
 "it will create a UNIX mailbox file with the patch emails.  This\n"
 "mailbox file can be previewed with any mail user agent which supports\n"
-"UNIX mbox files, i.e. with mutt:\n"
+"UNIX mbox files, e.g. with mutt:\n"
 "\n"
 "  % mutt -R -f mbox\n"
 "\n"
 "When you are previewing the patchbomb messages, you can use `formail'\n"
 "(a utility that is commonly installed as part of the procmail package),\n"
 "to send each message out:\n"
 "\n"
 "  % formail -s sendmail -bm -t < mbox\n"
 "\n"
-"That should be all. Now your patchbomb is on its way out."
+"That should be all. Now your patchbomb is on its way out.\n"
+"\n"
+"You can also either configure the method option in the email section\n"
+"to be a sendmail compatable mailer or fill out the [smtp] section so\n"
+"that the patchbomb extension can automatically send patchbombs directly\n"
+"from the commandline. See the [email] and [smtp] sections in hgrc(5)\n"
+"for details."
 msgstr ""
 
 msgid "Please enter a valid value.\n"
 msgstr "Si prega di inserire un valore valido.\n"
 
 msgid "does the diffstat above look okay? "
 msgstr ""
 
@@ -3170,16 +3861,17 @@ msgid ""
 "\n"
 "Write the introductory message for the patch series.\n"
 "\n"
 msgstr ""
 "\n"
 "Scrivi il messaggio introduttivo per la serie di patch.\n"
 "\n"
 
+#, python-format
 msgid ""
 "This patch series consists of %d patches.\n"
 "\n"
 msgstr ""
 "Questa serie di patch consiste di %d patch.\n"
 "\n"
 
 msgid "Final summary:\n"
@@ -3195,17 +3887,17 @@ msgid "Sending "
 msgstr "Sto inviando"
 
 msgid "send patches as attachments"
 msgstr "invia patch come allegati"
 
 msgid "send patches as inline attachments"
 msgstr "invia patch come allegati in linea"
 
-msgid "email addresses of blind copy recipients"
+msgid "email addresses of blind carbon copy recipients"
 msgstr "indirizzi mail dei destinatari in copia nascosta"
 
 msgid "email addresses of copy recipients"
 msgstr "indirizzi mail dei destinatari in copia"
 
 msgid "add diffstat output to messages"
 msgstr "aggiungi l'output del diffstat ai messaggi"
 
@@ -3273,25 +3965,29 @@ msgid ""
 "    directories are considered.\n"
 "\n"
 "    Be careful with purge, as you could irreversibly delete some files you\n"
 "    forgot to add to the repository. If you only want to print the list of\n"
 "    files that this program would delete, use the --print option.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid "%s cannot be removed"
 msgstr "%s non può essere rimosso"
 
+#, python-format
 msgid "warning: %s\n"
 msgstr "attenzione: %s\n"
 
+#, python-format
 msgid "Removing file %s\n"
 msgstr "Sto rimuovendo il file %s\n"
 
+#, python-format
 msgid "Removing directory %s\n"
 msgstr "Sto rimuovendo la directory %s\n"
 
 msgid "abort if an error occurs"
 msgstr "abortisce se si verifica un errore"
 
 msgid "purge ignored files too"
 msgstr "rimuove anche i file ignorati"
@@ -3375,16 +4071,17 @@ msgstr "merge del rebase completato\n"
 
 msgid "warning: new changesets detected on source branch, not stripping\n"
 msgstr ""
 "attenzione: nuovi changeset rilevati sulla branch sorgente, non li rimuovo\n"
 
 msgid "rebase completed\n"
 msgstr "rebase completato\n"
 
+#, python-format
 msgid "%d revisions have been skipped\n"
 msgstr "%d revisioni sono state saltate\n"
 
 msgid ""
 "Skip commit if collapsing has been required and rev is not the last\n"
 "    revision, commit otherwise\n"
 "    "
 msgstr ""
@@ -3393,63 +4090,72 @@ msgstr ""
 "    "
 
 msgid " set parents\n"
 msgstr " imposta i genitori\n"
 
 msgid "Rebase a single revision"
 msgstr "Rebase di una singola revisione"
 
+#, python-format
 msgid "rebasing %d:%s\n"
 msgstr "sto effettuando il rebase di %d:%s\n"
 
+#, python-format
 msgid " future parents are %d and %d\n"
 msgstr " i genitori futuri sono %d e %d\n"
 
+#, python-format
 msgid " update to %d:%s\n"
 msgstr " aggiorno a %d:%s\n"
 
 msgid " already in target\n"
 msgstr " già su target\n"
 
+#, python-format
 msgid " merge against %d:%s\n"
 msgstr " merge con %d:%s\n"
 
 msgid "fix unresolved conflicts with hg resolve then run hg rebase --continue"
 msgstr ""
 "correggi i conflitti non risolti con hg resolve e poi esegui hg rebase --"
 "continue"
 
 msgid "resuming interrupted rebase\n"
 msgstr "sto riprendendo un rebase interrotto\n"
 
+#, python-format
 msgid "no changes, revision %d skipped\n"
 msgstr "nessuna modifica, revisione %d saltata\n"
 
+#, python-format
 msgid "next revision set to %s\n"
 msgstr "prossima revisione impostata su %s\n"
 
 msgid "Return the new parent relationship of the revision that will be rebased"
 msgstr ""
 "Restituisce la nuova relazione di parentela della revisione di cui si farà "
 "il rebase"
 
+#, python-format
 msgid "cannot use revision %d as base, result would have 3 parents"
 msgstr ""
 "non è possibile usare la revisione %d come base, il risultato avrebbe 3 "
 "genitori"
 
 msgid "Update rebased mq patches - finalize and then import them"
 msgstr ""
 "Aggiorna le patch mq di cui si è effettuato il rebase - le finalizza e poi "
 "le importa"
 
+#, python-format
 msgid "revision %d is an mq patch (%s), finalize it.\n"
 msgstr "la revisione %d è una patch mq (%s), la finalizzo.\n"
 
+#, python-format
 msgid "import mq patch %d (%s)\n"
 msgstr "import della patch mq %d (%s)\n"
 
 msgid "Store the current status to allow recovery"
 msgstr "Salva lo status corrente per consentire il recupero"
 
 msgid "rebase status stored\n"
 msgstr "status del rebase salvato\n"
@@ -3489,27 +4195,28 @@ msgid "cannot rebase a descendant"
 msgstr "non è possibile effettuare il rebase di un discendente"
 
 msgid "already working on current\n"
 msgstr "sto già lavorando su current\n"
 
 msgid "already working on the current branch\n"
 msgstr "sto già lavorando sulla branch corrente\n"
 
+#, python-format
 msgid "rebase onto %d starting from %d\n"
 msgstr "rebase su %d partendo da %d\n"
 
 msgid "unable to collapse, there is more than one external parent"
 msgstr "impossibile effettuare il collapse, c'è più di un genitore esterno"
 
 msgid "Call rebase after pull if the latter has been invoked with --rebase"
 msgstr "Invoca rebase dopo pull se l'ultimo è stato invocato con --rebase"
 
-msgid "--update and --rebase are not compatible"
-msgstr "--update e --rebase non sono compatibili"
+msgid "--update and --rebase are not compatible, ignoring the update flag\n"
+msgstr "--update e --rebase non sono compatibili, ignoro il flag update\n"
 
 msgid "Replace pull with a decorator to provide --rebase option"
 msgstr "Rimpiazza pull con un decoratore per fornire l'opzione --rebase"
 
 msgid "rebase working directory to branch head"
 msgstr "effettua il rebase della directory di lavoro sulla head della branch"
 
 msgid "keep original revisions"
@@ -3569,16 +4276,17 @@ msgstr ""
 "    "
 
 msgid "this modifies a binary file (all or nothing)\n"
 msgstr "questo modifica un file binario (tutto o niente)\n"
 
 msgid "this is a binary file\n"
 msgstr "questo è un file binario\n"
 
+#, python-format
 msgid "%d hunks, %d lines changed\n"
 msgstr ""
 
 msgid "hunk -> (n+,n-)"
 msgstr "hunk -> (n+,n-)"
 
 msgid ""
 "patch hunk\n"
@@ -3639,26 +4347,27 @@ msgid "a"
 msgstr "a"
 
 msgid "q"
 msgstr "q"
 
 msgid "user quit"
 msgstr ""
 
+#, python-format
 msgid "examine changes to %s?"
 msgstr ""
 
 msgid " and "
 msgstr " e "
 
+#, python-format
 msgid "record this change to %r?"
 msgstr ""
 
-#, fuzzy
 msgid ""
 "interactively select changes to commit\n"
 "\n"
 "    If a list of files is omitted, all changes reported by \"hg status\"\n"
 "    will be candidates for recording.\n"
 "\n"
 "    See 'hg help dates' for a list of formats valid for -d/--date.\n"
 "\n"
@@ -3676,38 +4385,39 @@ msgid ""
 "    d - done, skip remaining changes and files\n"
 "    a - record all changes to all remaining files\n"
 "    q - quit, recording no changes\n"
 "\n"
 "    ? - display help"
 msgstr ""
 "seleziona interattivamente le modifiche di cui eseguire il commit\n"
 "\n"
-"    Se viene omesso un elenco di file, tutte le modifiche riportate da \"hg "
-"status\"\n"
-"    saranno candidati per la registrazione.\n"
-"\n"
-"    Vedere 'hg help dates' per un elenco dei formati validi per -d/--date.\n"
-"\n"
-"    You will be prompted for whether to record changes to each\n"
-"    modified file, and for files with multiple changes, for each\n"
-"    change to use.  For each query, the following responses are\n"
-"    possible:\n"
+"    Se viene omesso un elenco di file, tutte le modifiche\n"
+"    riportate da \"hg status\" saranno candidati per la\n"
+"    registrazione.\n"
+"\n"
+"    Vedere 'hg help dates' per un elenco di formati\n"
+"    validi per -d/--date.\n"
+"\n"
+"    Si verrà interrogati su quali modifiche registrare\n"
+"    per ogni file modificato e, per file con modifiche\n"
+"    multiple, per ogni modifica da usare. Per ogni domanda\n"
+"    sono possibili le seguenti risposte:\n"
 "\n"
 "    y - registra questa modifica\n"
 "    n - salta questa modifica\n"
 "\n"
 "    s - salta le modifiche rimanenti di questo file\n"
 "    f - registra le modifiche rimanenti di questo file\n"
 "\n"
-"    d - done, skip remaining changes and files\n"
-"    a - record all changes to all remaining files\n"
-"    q - quit, recording no changes\n"
-"\n"
-"    ? - display help"
+"    d - fatto, salta le modifiche e i file rimanenti\n"
+"    a - registra tutte le modifiche a tutti i file rimanenti\n"
+"    q - esci, non registrare alcuna modifica\n"
+"\n"
+"    ? - mostra il messaggio di aiuto"
 
 msgid ""
 "interactively record a new patch\n"
 "\n"
 "    see 'hg help qnew' & 'hg help record' for more information and usage\n"
 "    "
 msgstr ""
 
@@ -3732,25 +4442,27 @@ msgid ""
 "be\n"
 "        left in place, so the user can continue his work.\n"
 "        "
 msgstr ""
 
 msgid "no changes to record\n"
 msgstr "nessuna modifica da registrare\n"
 
+#, python-format
 msgid "backup %r as %r\n"
 msgstr "backup %r come %r\n"
 
 msgid "applying patch\n"
 msgstr "sto applicando una patch\n"
 
 msgid "patch failed to apply"
 msgstr ""
 
+#, python-format
 msgid "restoring %r to %r\n"
 msgstr ""
 
 msgid "hg record [OPTION]... [FILE]..."
 msgstr "hg record [OPZIONI]... [FILE]..."
 
 msgid "hg qrecord [OPTION]... PATCH [FILE]..."
 msgstr "hg qrecord [OPZIONI]... PATCH [FILE]..."
@@ -3767,61 +4479,69 @@ msgstr ""
 msgid ""
 "returns True if a node is already an ancestor of parent\n"
 "        or has already been transplanted"
 msgstr ""
 
 msgid "apply the revisions in revmap one by one in revision order"
 msgstr ""
 
+#, python-format
 msgid "skipping already applied revision %s\n"
 msgstr ""
 
+#, python-format
 msgid "skipping merge changeset %s:%s\n"
 msgstr ""
 
+#, python-format
 msgid "%s merged at %s\n"
 msgstr ""
 
+#, python-format
 msgid "%s transplanted to %s\n"
 msgstr ""
 
 msgid "arbitrarily rewrite changeset before applying it"
 msgstr ""
 
+#, python-format
 msgid "filtering %s\n"
 msgstr "sto filtrando %s\n"
 
 msgid "filter failed"
 msgstr "filtraggio fallito"
 
 msgid "apply the patch in patchfile to the repository as a transplant"
 msgstr ""
 
 msgid "can only omit patchfile if merging"
 msgstr ""
 
+#, python-format
 msgid "%s: empty changeset"
 msgstr "%s: changeset vuoto"
 
 msgid "Fix up the merge and run hg transplant --continue"
 msgstr ""
 
 msgid "recover last transaction and apply remaining changesets"
 msgstr ""
 
+#, python-format
 msgid "%s transplanted as %s\n"
 msgstr "%s trapiantato come %s\n"
 
 msgid "commit working directory using journal metadata"
 msgstr ""
 
 msgid "transplant log file is corrupt"
 msgstr ""
 
+#, python-format
 msgid "working dir not at transplant parent %s"
 msgstr ""
 
 msgid "commit failed"
 msgstr "commit fallito"
 
 msgid "journal changelog metadata for later recover"
 msgstr ""
@@ -3948,38 +4668,44 @@ msgid ""
 "  [extensions]\n"
 "  hgext.win32mbcs =\n"
 "\n"
 "Path encoding conversion are done between unicode and util._encoding\n"
 "which is decided by mercurial from current locale setting or HGENCODING.\n"
 "\n"
 msgstr ""
 
+#, python-format
 msgid "[win32mbcs] filename conversion fail with %s encoding\n"
 msgstr ""
 
 msgid "[win32mbcs] cannot activate on this platform.\n"
 msgstr ""
 
+#, python-format
 msgid "[win32mbcs] activated with encoding: %s\n"
 msgstr ""
 
+#, python-format
 msgid ""
 "WARNING: %s already has %s line endings\n"
 "and does not need EOL conversion by the win32text plugin.\n"
 "Before your next commit, please reconsider your encode/decode settings in \n"
 "Mercurial.ini or %s.\n"
 msgstr ""
 
+#, python-format
 msgid "Attempt to commit or push text file(s) using %s line endings\n"
 msgstr ""
 
+#, python-format
 msgid "in %s: %s\n"
 msgstr ""
 
+#, python-format
 msgid ""
 "\n"
 "To prevent this mistake in your local repository,\n"
 "add to Mercurial.ini or .hg/hgrc:\n"
 "\n"
 "[hooks]\n"
 "pretxncommit.%s = python:hgext.win32text.forbid%s\n"
 "\n"
@@ -4014,29 +4740,251 @@ msgid ""
 " $ hg serve\n"
 "\n"
 "You can discover zeroconf enabled repositories by running \"hg paths\".\n"
 "\n"
 " $ hg paths\n"
 " zc-test = http://example.com:8000/test\n"
 msgstr ""
 
+msgid "archive prefix contains illegal components"
+msgstr ""
+
+msgid "cannot give prefix when archiving to files"
+msgstr ""
+
+#, python-format
+msgid "unknown archive type '%s'"
+msgstr ""
+
+msgid "invalid changegroup"
+msgstr ""
+
+msgid "unknown parent"
+msgstr ""
+
+#, python-format
+msgid "integrity check failed on %s:%d"
+msgstr ""
+
+#, python-format
+msgid "%s: not a Mercurial bundle file"
+msgstr ""
+
+#, python-format
+msgid "%s: unknown bundle version"
+msgstr ""
+
+#, python-format
+msgid "%s: unknown bundle compression type"
+msgstr ""
+
+msgid "cannot create new bundle repository"
+msgstr ""
+
+#, python-format
+msgid "premature EOF reading chunk (got %d bytes, expected %d)"
+msgstr ""
+
+#, python-format
+msgid "username %s contains a newline"
+msgstr ""
+
+msgid "options --message and --logfile are mutually exclusive"
+msgstr ""
+
+#, python-format
+msgid "can't read commit message '%s': %s"
+msgstr ""
+
+msgid "limit must be a positive integer"
+msgstr ""
+
+msgid "limit must be positive"
+msgstr ""
+
+msgid "too many revisions specified"
+msgstr ""
+
+#, python-format
+msgid "invalid format spec '%%%s' in output file name"
+msgstr ""
+
+#, python-format
+msgid "adding %s\n"
+msgstr ""
+
+#, python-format
+msgid "removing %s\n"
+msgstr "sto rimuovendo %s\n"
+
+#, python-format
+msgid "recording removal of %s as rename to %s (%d%% similar)\n"
+msgstr ""
+
+#, python-format
+msgid "%s: not copying - file is not managed\n"
+msgstr ""
+
+#, python-format
+msgid "%s: not copying - file has been marked for remove\n"
+msgstr ""
+
+#, python-format
+msgid "%s: not overwriting - %s collides with %s\n"
+msgstr ""
+
+#, python-format
+msgid "%s: not overwriting - file exists\n"
+msgstr ""
+
+#, python-format
+msgid "%s: deleted in working copy\n"
+msgstr ""
+
+#, python-format
+msgid "%s: cannot copy - %s\n"
+msgstr "%s: impossibile copiare - %s\n"
+
+#, python-format
+msgid "%s %s to %s\n"
+msgstr "%s %s in %s\n"
+
+#, python-format
+msgid "%s has not been committed yet, so no copy data will be stored for %s.\n"
+msgstr ""
+
+msgid "no source or destination specified"
+msgstr "nessuna sorgente o destinazione specificata"
+
+msgid "no destination specified"
+msgstr "nessuna destinazione specificata"
+
+msgid "with multiple sources, destination must be an existing directory"
+msgstr ""
+"con sorgenti multiple la destinazione deve essere una directory esistente"
+
+#, python-format
+msgid "destination %s is not a directory"
+msgstr "la destinazione %s non è una directory"
+
+msgid "no files to copy"
+msgstr "nessun file da copiare"
+
+msgid "(consider using --after)\n"
+msgstr "(considera di usare --after)\n"
+
+#, python-format
+msgid "changeset:   %d:%s\n"
+msgstr "changeset:   %d:%s\n"
+
+#, python-format
+msgid "branch:      %s\n"
+msgstr "branch:      %s\n"
+
+#, python-format
+msgid "tag:         %s\n"
+msgstr "tag:         %s\n"
+
+#, python-format
+msgid "parent:      %d:%s\n"
+msgstr "genitore:      %d:%s\n"
+
+#, python-format
+msgid "manifest:    %d:%s\n"
+msgstr "manifesto:    %d:%s\n"
+
+#, python-format
+msgid "user:        %s\n"
+msgstr "utente:      %s\n"
+
+#, python-format
+msgid "date:        %s\n"
+msgstr "data:        %s\n"
+
+msgid "files+:"
+msgstr "file+:"
+
+msgid "files-:"
+msgstr "file-:"
+
+msgid "files:"
+msgstr "file:"
+
+#, python-format
+msgid "files:       %s\n"
+msgstr "file:       %s\n"
+
+#, python-format
+msgid "copies:      %s\n"
+msgstr "copie:      %s\n"
+
+#, python-format
+msgid "extra:       %s=%s\n"
+msgstr "extra:       %s=%s\n"
+
+msgid "description:\n"
+msgstr "descrizione:\n"
+
+#, python-format
+msgid "summary:     %s\n"
+msgstr "sommario:    %s\n"
+
+#, python-format
+msgid "%s: no key named '%s'"
+msgstr "%s: nessuna chiave chiamata '%s'"
+
+#, python-format
+msgid "%s: %s"
+msgstr "%s: %s"
+
+#, python-format
+msgid "Found revision %s from %s\n"
+msgstr "Trovata revisione %s da %s\n"
+
+msgid "revision matching date not found"
+msgstr "revisione corrispondente alla data non trovata"
+
+#, python-format
+msgid "cannot follow nonexistent file: \"%s\""
+msgstr "impossibile seguire il file non esistente: \"%s\""
+
+#, python-format
+msgid "%s:%s copy source revision cannot be found!\n"
+msgstr ""
+
+msgid "can only follow copies/renames for explicit file names"
+msgstr ""
+
+#, python-format
+msgid "file %s not found!"
+msgstr "file %s non trovato!"
+
+#, python-format
+msgid "no match under directory %s!"
+msgstr "nessuna corrispondenza sotto la directory %s!"
+
+#, python-format
+msgid "can't commit %s: unsupported file type!"
+msgstr "impossibile fare il commit di %s: tipo di file non supportato!"
+
+#, python-format
+msgid "file %s not tracked!"
+msgstr "il file %s non è tracciato!"
+
 msgid ""
 "add the specified files on the next commit\n"
 "\n"
 "    Schedule files to be version controlled and added to the repository.\n"
 "\n"
 "    The files will be added to the repository at the next commit. To\n"
 "    undo an add before that, see hg revert.\n"
 "\n"
-"    If no names are given, add all files in the repository.\n"
-"    "
-msgstr ""
-
-msgid "adding %s\n"
+"    If no names are given, add all files to the repository.\n"
+"    "
 msgstr ""
 
 msgid ""
 "add all new files, delete all missing files\n"
 "\n"
 "    Add all new files and remove all missing files from the repository.\n"
 "\n"
 "    New files are ignored if they match any of the patterns in .hgignore. "
@@ -4074,16 +5022,17 @@ msgid ""
 msgstr ""
 
 msgid "at least one file name or pattern required"
 msgstr ""
 
 msgid "at least one of -n/-c is required for -l"
 msgstr ""
 
+#, python-format
 msgid "%s: binary file\n"
 msgstr ""
 
 msgid ""
 "create unversioned archive of a repository revision\n"
 "\n"
 "    By default, the revision used is the parent of the working\n"
 "    directory; use \"-r\" to specify a different revision.\n"
@@ -4111,50 +5060,51 @@ msgid "no working directory: please spec
 msgstr ""
 
 msgid "repository root cannot be destination"
 msgstr ""
 
 msgid "cannot archive plain files to stdout"
 msgstr ""
 
-#, fuzzy
 msgid ""
 "reverse effect of earlier changeset\n"
 "\n"
 "    Commit the backed out changes as a new changeset. The new\n"
 "    changeset is a child of the backed out changeset.\n"
 "\n"
 "    If you back out a changeset other than the tip, a new head is\n"
 "    created. This head will be the new tip and you should merge this\n"
 "    backout changeset with another head (current one by default).\n"
 "\n"
 "    The --merge option remembers the parent of the working directory\n"
 "    before starting the backout, then merges the new head with that\n"
 "    changeset afterwards. This saves you from doing the merge by\n"
-"    hand. The result of this merge is not committed, as for a normal\n"
+"    hand. The result of this merge is not committed, as with a normal\n"
 "    merge.\n"
 "\n"
 "    See 'hg help dates' for a list of formats valid for -d/--date.\n"
 "    "
 msgstr ""
-"reverse effect of earlier changeset\n"
-"\n"
-"    Commit the backed out changes as a new changeset. The new\n"
-"    changeset is a child of the backed out changeset.\n"
-"\n"
-"    If you back out a changeset other than the tip, a new head is\n"
-"    created. This head will be the new tip and you should merge this\n"
-"    backout changeset with another head (current one by default).\n"
-"\n"
-"    The --merge option remembers the parent of the working directory\n"
-"    before starting the backout, then merges the new head with that\n"
-"    changeset afterwards. This saves you from doing the merge by\n"
-"    hand. The result of this merge is not committed, as for a normal\n"
-"    merge.\n"
+"inverte l'effetto di un changeset precedente\n"
+"\n"
+"    Effettua il commit delle modifiche di cui si è fatto backout\n"
+"    come nuovo changeset. Il nuovo changeset è un figlio del\n"
+"    changeset di cui si è fatto backout.\n"
+"\n"
+"    Se si fa il backout di un changeset diverso da tip, viene creata\n"
+"    una nuova head. Questa sarà la nuova tip e si dovrebbe fare il\n"
+"    merge di questo changeset di backout con un'altra head\n"
+"    (attualmente una di default).\n"
+"\n"
+"    L'opzione --merge ricorda il genitore della directory di lavoro\n"
+"    prima di avviare il backout, poi fa il merge della nuova head con\n"
+"    quel changeset. Questo evita di fare il merge a mano. Non viene\n"
+"    effettuato il commit del risultato di questo merge, come per un\n"
+"    merge normale.\n"
 "\n"
 "    Vedere 'hg help dates' per un elenco dei formati validi per -d/--date.\n"
 "    "
 
 msgid "please specify just one revision"
 msgstr ""
 
 msgid "please specify a revision to backout"
@@ -4164,30 +5114,34 @@ msgid "cannot back out change on a diffe
 msgstr ""
 
 msgid "cannot back out a change with no parents"
 msgstr ""
 
 msgid "cannot back out a merge changeset without --parent"
 msgstr ""
 
+#, python-format
 msgid "%s is not a parent of %s"
 msgstr ""
 
 msgid "cannot use --parent on non-merge changeset"
 msgstr ""
 
+#, python-format
 msgid "Backed out changeset %s"
 msgstr ""
 
+#, python-format
 msgid "changeset %s backs out changeset %s\n"
 msgstr ""
 
+#, python-format
 msgid "merging with changeset %s\n"
-msgstr ""
+msgstr "sto effettuando il merge con il changeset %s\n"
 
 msgid "the backout changeset is a new head - do not forget to merge\n"
 msgstr ""
 
 msgid "(use \"backout --merge\" if you want to auto-merge)\n"
 msgstr ""
 
 msgid ""
@@ -4206,49 +5160,54 @@ msgid ""
 "    revision as good or bad without checking it out first.\n"
 "\n"
 "    If you supply a command it will be used for automatic bisection. Its "
 "exit\n"
 "    status will be used as flag to mark revision as bad or good. In case "
 "exit\n"
 "    status is 0 the revision is marked as good, 125 - skipped, 127 (command "
 "not\n"
-"    found) - bisection will be aborted and any other status bigger than 0 "
-"will\n"
+"    found) - bisection will be aborted; any other status bigger than 0 will\n"
 "    mark revision as bad.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid "The first %s revision is:\n"
-msgstr ""
-
+msgstr "La prima revisione %s è:\n"
+
+#, python-format
 msgid "Due to skipped revisions, the first %s revision could be any of:\n"
 msgstr ""
 
 msgid "cannot bisect (no known good revisions)"
-msgstr ""
+msgstr "impossibile fare bisect (nessuna revisione buona nota)"
 
 msgid "cannot bisect (no known bad revisions)"
-msgstr ""
+msgstr "impossibile fare bisect (nessuna revisione cattiva nota)"
 
 msgid "(use of 'hg bisect <cmd>' is deprecated)\n"
-msgstr ""
+msgstr "(l'uso di 'hg bisect <cmd>' è deprecato)\n"
 
 msgid "incompatible arguments"
-msgstr ""
-
+msgstr "argomenti incompatibili"
+
+#, python-format
 msgid "failed to execute %s"
-msgstr ""
-
+msgstr "esecuzione di %s fallita"
+
+#, python-format
 msgid "%s killed"
-msgstr ""
-
+msgstr "%s ucciso"
+
+#, python-format
 msgid "Changeset %s: %s\n"
-msgstr ""
-
+msgstr "Changeset %s: %s\n"
+
+#, python-format
 msgid "Testing changeset %s:%s (%s changesets remaining, ~%s tests)\n"
 msgstr ""
 
 msgid ""
 "set or show the current branch name\n"
 "\n"
 "    With no argument, show the current branch name. With one argument,\n"
 "    set the working directory branch name (the branch does not exist in\n"
@@ -4259,24 +5218,26 @@ msgid ""
 "\n"
 "    Use --clean to reset the working directory branch to that of the\n"
 "    parent of the working directory, negating a previous branch change.\n"
 "\n"
 "    Use the command 'hg update' to switch to an existing branch.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid "reset working directory to branch %s\n"
-msgstr ""
+msgstr "resetto la directory di lavoro alla branch %s\n"
 
 msgid "a branch of the same name already exists (use --force to override)"
-msgstr ""
-
+msgstr "una branch con lo stesso nome esiste già (usare --force per sovrascrivere)"
+
+#, python-format
 msgid "marked working directory as branch %s\n"
-msgstr ""
+msgstr "marcata directory di lavoro come branch %s\n"
 
 msgid ""
 "list repository named branches\n"
 "\n"
 "    List the repository's named branches, indicating which ones are\n"
 "    inactive. If active is specified, only show active branches.\n"
 "\n"
 "    A branch is considered active if it contains repository heads.\n"
@@ -4284,17 +5245,17 @@ msgid ""
 "    Use the command 'hg update' to switch to an existing branch.\n"
 "    "
 msgstr ""
 
 msgid ""
 "create a changegroup file\n"
 "\n"
 "    Generate a compressed changegroup file collecting changesets not\n"
-"    found in the other repository.\n"
+"    known to be in another repository.\n"
 "\n"
 "    If no destination repository is specified the destination is\n"
 "    assumed to have all the nodes specified by one or more --base\n"
 "    parameters. To create a bundle containing all changesets, use\n"
 "    --all (or --base null). To change the compression method applied,\n"
 "    use the -t option (by default, bundles are compressed using bz2).\n"
 "\n"
 "    The bundle file can then be transferred using conventional means and\n"
@@ -4363,84 +5324,87 @@ msgid ""
 "    If you use the -r option to clone up to a specific revision, no\n"
 "    subsequent revisions will be present in the cloned repository.\n"
 "    This option implies --pull, even on local repositories.\n"
 "\n"
 "    If the -U option is used, the new clone will contain only a repository\n"
 "    (.hg) and no working copy (the working copy parent is the null "
 "revision).\n"
 "\n"
-"    See pull for valid source format details.\n"
+"    See 'hg help urls' for valid source format details.\n"
 "\n"
 "    It is possible to specify an ssh:// URL as the destination, but no\n"
 "    .hg/hgrc and working directory will be created on the remote side.\n"
-"    Look at the help text for the pull command for important details\n"
-"    about ssh:// URLs.\n"
+"    Look at the help text for urls for important details about ssh:// URLs.\n"
 "    "
 msgstr ""
 "crea una copia di un repository esistente\n"
 "\n"
 "    Crea una copia di un repository esistente in una nuova directory.\n"
 "\n"
-"    Se non viene specificato nessun nome di directory destinazione, di\n"
-"    default viene usata la directory base della sorgente.\n"
-"\n"
-"    La posizione della sorgente viene aggiunta al file .hg/hgrc del\n"
-"    nuovo repository, come default da usare per pull futuri.\n"
-"\n"
-"    Per efficienza, si usano hardlink per clonare ogni volta che la\n"
-"    sorgente e la destinazione sono sullo stesso filesystem (notare\n"
-"    che questo vale per i dati del repository, per per i file di cui\n"
-"    si è fatto il check out). Alcuni filesystem, tipo AFS, non\n"
-"    implementano correttamente gli hardlink, ma non riportano errori.\n"
-"    In questi casi, usare l'opzione --pull per evitare gli hardlink.\n"
-"\n"
-"    In alcuni casi, è possibile clonare repository e i file di cui si\n"
-"    è fatto il check out usando hardlink completi con\n"
+"    Se non viene specificato nessun nome di directory\n"
+"    destinazione, di default viene usata la directory base\n"
+"    della sorgente.\n"
+"\n"
+"    La posizione della sorgente viene aggiunta al file .hg/hgrc\n"
+"    del nuovo repository, come default da usare per pull futuri.\n"
+"\n"
+"    Per efficienza, si usano hardlink per clonare ogni volta che\n"
+"    la sorgente e la destinazione sono sullo stesso filesystem\n"
+"    (notare che questo vale per i dati del repository, non per\n"
+"    per i file di cui si è fatto il check out). Alcuni\n"
+"    filesystem, tipo AFS, non implementano correttamente gli\n"
+"    hardlink, ma non riportano errori. In questi casi, usare\n"
+"    l'opzione --pull per evitare gli hardlink.\n"
+"\n"
+"    In alcuni casi, è possibile clonare i repository e i file di\n"
+"    cui si è fatto il check out usando hardlink completi con\n"
 "\n"
 "      $ cp -al REPO REPOCLONE\n"
 "\n"
-"    Questo è il modo più veloce per clonare, ma non è sempre sicuro.\n"
-"    L'operazione non è atomica (spetta all'utente assicurarsi che REPO\n"
-"    non venga modificato durante l'operazione) e bisogna assicurarsi\n"
-"    che l'editor usato spezzi gli hardlink (Emacs e i principali tool\n"
-"    del Kernel Linux lo fanno). Inoltre, questo non è compatibile con\n"
-"    alcune estensioni che mettono i loro metadati sotto la directory\n"
+"    Questo è il modo più veloce per clonare, ma non è sempre\n"
+"    sicuro. L'operazione non è atomica (spetta all'utente\n"
+"    assicurarsi che REPO non venga modificato durante la\n"
+"    operazione) e bisogna assicurarsi che l'editor usato spezzi\n"
+"    gli hardlink (Emacs e i principali tool del Kernel Linux lo\n"
+"    fanno). Inoltre, questo non è compatibile con alcune\n"
+"    estensioni che mettono i loro metadati sotto la directory\n"
 "    .hg, tipo mq.\n"
 "\n"
-"    Se viene usata l'opzione -r per clonare fino ad una revisione\n"
-"    specifica, nessuna revisione seguente sarà presente nel repository\n"
-"    clonato. Questa opzione implica --pull, anche per repository\n"
-"    locali.\n"
+"    Se viene usata l'opzione -r per clonare fino ad una\n"
+"    revisione specifica, nessuna revisione seguente sarà presente\n"
+"    nel repository clonato. Questa opzione implica --pull, anche\n"
+"    per repository locali.\n"
 "\n"
 "    Se viene usata l'opzione -U, il nuovo clone conterrà solo un\n"
-"    repository (.hg) e nessuna copia di lavoro (il genitore della\n"
-"    copia di lavoro è la revisione nulla).\n"
-"\n"
-"    Vedere pull per dettagli sui formati di sorgenti valide.\n"
+"    repository (.hg) e nessuna copia di lavoro (il genitore\n"
+"    della copia di lavoro è la revisione nulla).\n"
+"\n"
+"    Vedere 'hg help urls' per dettagli sui formati di sorgenti\n"
+"    validi.\n"
 "\n"
 "    E' possibile specificare un URL ssh:// come destinazione, ma\n"
-"    nessun .hg/hgrc e directory di lavoro verranno creati sul lato\n"
-"    remoto. Riferirsi al testo di aiuto per il comando pull per\n"
+"    nessun .hg/hgrc e directory di lavoro verranno creati sul\n"
+"    lato remoto. Riferirsi al testo di aiuto per gli url per\n"
 "    dettagli importanti riguardo gli URL ssh://.\n"
 "    "
 
 msgid ""
 "commit the specified files or all outstanding changes\n"
 "\n"
 "    Commit changes to the given files into the repository.\n"
 "\n"
 "    If a list of files is omitted, all changes reported by \"hg status\"\n"
 "    will be committed.\n"
 "\n"
 "    If you are committing the result of a merge, do not provide any\n"
 "    file names or -I/-X filters.\n"
 "\n"
 "    If no commit message is specified, the configured editor is started to\n"
-"    enter a message.\n"
+"    prompt you for a message.\n"
 "\n"
 "    See 'hg help dates' for a list of formats valid for -d/--date.\n"
 "    "
 msgstr ""
 "effettua il commit dei file specificati o di tutte le modifiche pendenti\n"
 "\n"
 "    Effettua il commit delle modifiche sui file dati nel repository.\n"
 "\n"
@@ -4455,31 +5419,32 @@ msgstr ""
 "\n"
 "    Vedere 'hg help dates' per un elenco dei formati validi per\n"
 "    -d/--date.\n"
 "    "
 
 msgid "created new head\n"
 msgstr "creata una nuova head\n"
 
+#, python-format
 msgid "committed changeset %d:%s\n"
 msgstr "effettuato il commit del changeset %d:%s\n"
 
 msgid ""
 "mark files as copied for the next commit\n"
 "\n"
 "    Mark dest as having copies of source files. If dest is a\n"
 "    directory, copies are put in that directory. If dest is a file,\n"
-"    there can only be one source.\n"
+"    the source must be a single file.\n"
 "\n"
 "    By default, this command copies the contents of files as they\n"
 "    stand in the working directory. If invoked with --after, the\n"
 "    operation is recorded, but no copying is performed.\n"
 "\n"
-"    This command takes effect in the next commit. To undo a copy\n"
+"    This command takes effect with the next commit. To undo a copy\n"
 "    before that, see hg revert.\n"
 "    "
 msgstr ""
 
 msgid "find the ancestor revision of two revisions in a given index"
 msgstr ""
 
 msgid "There is no Mercurial repository here (.hg not found)"
@@ -4492,25 +5457,29 @@ msgid "returns the completion list assoc
 msgstr "restituisce l'elenco di completamento associato al dato comando"
 
 msgid "rebuild the dirstate as it would look like for the given revision"
 msgstr ""
 
 msgid "validate the correctness of the current dirstate"
 msgstr ""
 
+#, python-format
 msgid "%s in state %s, but not in manifest1\n"
 msgstr "%s è nello state %s, ma non nel manifest1\n"
 
+#, python-format
 msgid "%s in state %s, but also in manifest1\n"
 msgstr "%s è nello state %s, ma anche nel manifest1\n"
 
+#, python-format
 msgid "%s in state %s, but not in either manifest\n"
 msgstr "%s è nello state %s, ma non in uno dei manifesti\n"
 
+#, python-format
 msgid "%s in manifest1, but listed as state %s"
 msgstr ""
 
 msgid ".hg/dirstate inconsistent with current parent's manifest"
 msgstr ""
 
 msgid ""
 "show combined config settings from all hgrc files\n"
@@ -4533,37 +5502,40 @@ msgid ""
 "    This is useful for writing repository conversion tools, but should\n"
 "    be used with care.\n"
 "    "
 msgstr ""
 
 msgid "show the contents of the current dirstate"
 msgstr ""
 
+#, python-format
 msgid "copy: %s -> %s\n"
 msgstr ""
 
 msgid "dump the contents of a data file revision"
 msgstr ""
 
+#, python-format
 msgid "invalid revision identifier %s"
 msgstr ""
 
 msgid "parse and display a date"
 msgstr ""
 
 msgid "dump the contents of an index file"
 msgstr ""
 
 msgid "dump an index DAG as a .dot file"
 msgstr ""
 
 msgid "test Mercurial installation"
 msgstr ""
 
+#, python-format
 msgid "Checking encoding (%s)...\n"
 msgstr ""
 
 msgid " (check that your locale is properly set)\n"
 msgstr ""
 
 msgid "Checking extensions...\n"
 msgstr ""
@@ -4598,50 +5570,54 @@ msgid ""
 msgstr ""
 
 msgid ""
 " Internal patcher failure, please report this error to http://www.selenic."
 "com/mercurial/bts\n"
 msgstr ""
 
 msgid "Checking commit editor...\n"
-msgstr ""
+msgstr "Sto controllando l'editor per il commit...\n"
 
 msgid " No commit editor set and can't find vi in PATH\n"
-msgstr ""
+msgstr "Nessun editor per il commit trovato e non trovo vi in PATH\n"
 
 msgid " (specify a commit editor in your .hgrc file)\n"
-msgstr ""
-
+msgstr " (specificare un editore per il commit nel proprio file .hgrc)\n"
+
+#, python-format
 msgid " Can't find editor '%s' in PATH\n"
-msgstr ""
+msgstr "Editor '%s' non trovato in PATH\n"
 
 msgid "Checking username...\n"
-msgstr ""
+msgstr "Sto controllando lo username...\n"
 
 msgid " (specify a username in your .hgrc file)\n"
-msgstr ""
+msgstr " (specificare un nome utente nel proprio file .hgrc)\n"
 
 msgid "No problems detected\n"
-msgstr ""
-
+msgstr "Nessun problema riscontrato\n"
+
+#, python-format
 msgid "%s problems detected, please check your install!\n"
-msgstr ""
+msgstr "%s problemi riscontrati, si prega di controllare l'installazione!\n"
 
 msgid "dump rename information"
 msgstr ""
 
+#, python-format
 msgid "%s renamed from %s:%s\n"
 msgstr ""
 
+#, python-format
 msgid "%s not renamed\n"
 msgstr ""
 
 msgid "show how files match on given patterns"
-msgstr ""
+msgstr "mostra come i file corrispondono ai dati pattern"
 
 msgid ""
 "diff repository (or selected files)\n"
 "\n"
 "    Show differences between revisions for the specified files.\n"
 "\n"
 "    Differences between files are shown using the unified diff format.\n"
 "\n"
@@ -4655,21 +5631,18 @@ msgid ""
 "    revisions are specified, the working directory files are compared\n"
 "    to its parent.\n"
 "\n"
 "    Without the -a option, diff will avoid generating diffs of files\n"
 "    it detects as binary. With -a, diff will generate a diff anyway,\n"
 "    probably with undesirable results.\n"
 "\n"
 "    Use the --git option to generate diffs in the git extended diff\n"
-"    format. Read the diffs help topic for more information.\n"
-"    "
-msgstr ""
-
-msgid "cannot specify --rev and --change at the same time"
+"    format. For more information, read hg help diffs.\n"
+"    "
 msgstr ""
 
 msgid ""
 "dump the header and diffs for one or more changesets\n"
 "\n"
 "    Print the changeset header and diffs for one or more revisions.\n"
 "\n"
 "    The information shown in the changeset header is: author,\n"
@@ -4724,16 +5697,17 @@ msgid ""
 "    By default, grep only prints output for the first revision of a\n"
 "    file in which it finds a match. To get it to print every revision\n"
 "    that contains a change in match status (\"-\" for a match that\n"
 "    becomes a non-match, or \"+\" for a non-match that becomes a match),\n"
 "    use the --all flag.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid "grep: invalid match pattern: %s\n"
 msgstr ""
 
 msgid ""
 "show current repository heads or show branch heads\n"
 "\n"
 "    With no arguments, show all repository head changesets.\n"
 "\n"
@@ -4746,19 +5720,21 @@ msgid ""
 "    are the usual targets for update and merge operations.\n"
 "\n"
 "    Branch heads are changesets that have a given branch tag, but have\n"
 "    no child changesets with that tag. They are usually where\n"
 "    development on the given branch takes place.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid "no changes on branch %s containing %s are reachable from %s\n"
 msgstr ""
 
+#, python-format
 msgid "no changes on branch %s are reachable from %s\n"
 msgstr ""
 
 msgid ""
 "show help for a given topic or a help overview\n"
 "\n"
 "    With no arguments, print a list of commands and short help.\n"
 "\n"
@@ -4777,29 +5753,32 @@ msgstr "opzioni globali:"
 msgid "use \"hg help\" for the full list of commands"
 msgstr "usare \"hg help\" per l'elenco completo dei comandi"
 
 msgid "use \"hg help\" for the full list of commands or \"hg -v\" for details"
 msgstr ""
 "usare \"hg help\" per la lista completa dei comandi oppure \"hg -v\" per i "
 "dettagli"
 
+#, python-format
 msgid "use \"hg -v help%s\" to show aliases and global options"
 msgstr "usare \"hg -v help%s\" per mostrare gli alias e le opzioni globali"
 
+#, python-format
 msgid "use \"hg -v help %s\" to show global options"
 msgstr "usare \"hg -v help %s\" per mostrare le opzioni globali"
 
 msgid ""
 "list of commands:\n"
 "\n"
 msgstr ""
 "elenco dei comandi:\n"
 "\n"
 
+#, python-format
 msgid ""
 "\n"
 "aliases: %s\n"
 msgstr ""
 "\n"
 "alias: %s\n"
 
 msgid "(no help text available)"
@@ -4815,38 +5794,37 @@ msgid ""
 "\n"
 "enabled extensions:\n"
 "\n"
 msgstr ""
 "\n"
 "estensioni abilitate:\n"
 "\n"
 
+#, python-format
 msgid " %s   %s\n"
 msgstr " %s   %s\n"
 
 msgid "no help text available"
 msgstr "nessun testo di aiuto disponibile"
 
+#, python-format
 msgid "%s extension - %s\n"
 msgstr "estensione %s - %s\n"
 
 msgid "Mercurial Distributed SCM\n"
 msgstr "Mercurial SCM Distribuito\n"
 
 msgid ""
 "basic commands:\n"
 "\n"
 msgstr ""
 "comandi base:\n"
 "\n"
 
-msgid " (default: %s)"
-msgstr " (default: %s)"
-
 msgid ""
 "\n"
 "additional help topics:\n"
 "\n"
 msgstr ""
 "\n"
 "argomenti di aiuto aggiuntivi:\n"
 "\n"
@@ -4947,16 +5925,17 @@ msgstr ""
 "    "
 
 msgid "applying patch from stdin\n"
 msgstr "sto applicando patch dallo stdin\n"
 
 msgid "no diffs found"
 msgstr "nessun diff trovato"
 
+#, python-format
 msgid ""
 "message:\n"
 "%s\n"
 msgstr ""
 "messaggio:\n"
 "%s\n"
 
 msgid "not a mercurial patch"
@@ -4994,30 +5973,28 @@ msgid ""
 "create a new repository in the given directory\n"
 "\n"
 "    Initialize a new repository in the given directory. If the given\n"
 "    directory does not exist, it is created.\n"
 "\n"
 "    If no directory is given, the current directory is used.\n"
 "\n"
 "    It is possible to specify an ssh:// URL as the destination.\n"
-"    Look at the help text for the pull command for important details\n"
-"    about ssh:// URLs.\n"
+"    See 'hg help urls' for more information.\n"
 "    "
 msgstr ""
 "crea un nuovo repository nella directory data\n"
 "\n"
 "    Inizializza un nuovo repository nella directory data. Se tale\n"
 "    directory non esiste la crea.\n"
 "\n"
 "    Se nessuna directory è specificata si usa la directory corrente.\n"
 "\n"
 "    E' possibile specificare un URL ssh:// come destinazione.\n"
-"    Controllare il testo di aiuto per il comando pull per importanti\n"
-"    dettagli riguardanti gli URL ssh://.\n"
+"    Vedere 'hg help urls' per maggiorni informazioni.\n"
 "    "
 
 msgid ""
 "locate files matching specific patterns\n"
 "\n"
 "    Print all files under Mercurial control whose names match the\n"
 "    given patterns.\n"
 "\n"
@@ -5073,18 +6050,18 @@ msgid ""
 "    See 'hg help dates' for a list of formats valid for -d/--date.\n"
 "\n"
 "    By default this command outputs: changeset id and hash, tags,\n"
 "    non-trivial parents, user, date and time, and a summary for each\n"
 "    commit. When the -v/--verbose switch is used, the list of changed\n"
 "    files and full commit message is shown.\n"
 "\n"
 "    NOTE: log -p may generate unexpected diff output for merge\n"
-"    changesets, as it will compare the merge changeset against its\n"
-"    first parent only. Also, the files: list will only reflect files\n"
+"    changesets, as it will only compare the merge changeset against\n"
+"    its first parent. Also, the files: list will only reflect files\n"
 "    that are different from BOTH parents.\n"
 "\n"
 "    "
 msgstr ""
 "show revision history of entire repository or files\n"
 "\n"
 "    Print the revision history of the specified files or the entire\n"
 "    project.\n"
@@ -5146,25 +6123,28 @@ msgid ""
 "\n"
 "    If no revision is specified, the working directory's parent is a\n"
 "    head revision, and the current branch contains exactly one other head,\n"
 "    the other head is merged with by default. Otherwise, an explicit\n"
 "    revision to merge with must be provided.\n"
 "    "
 msgstr ""
 
+#, python-format
 msgid "branch '%s' has %d heads - please merge with an explicit rev"
 msgstr ""
 
+#, python-format
 msgid "branch '%s' has one head - please merge with an explicit rev"
 msgstr ""
 
 msgid "there is nothing to merge"
 msgstr ""
 
+#, python-format
 msgid "%s - use \"hg update\" instead"
 msgstr ""
 
 msgid ""
 "working dir not at a head rev - use \"hg update\" or merge with an explicit "
 "rev"
 msgstr ""
 
@@ -5184,50 +6164,53 @@ msgstr ""
 "    Mostra i changeset non trovati nel repository di destinazione\n"
 "    specificato o nella posizione di default di push. Questi sono i\n"
 "    changeset che di cui si effetterebbe il push se questo venisse\n"
 "    richiesto.\n"
 "\n"
 "    Vedere pull per dettagli sui formati validi di destinazioni.\n"
 "    "
 
-#, fuzzy
 msgid ""
 "show the parents of the working dir or revision\n"
 "\n"
 "    Print the working directory's parent revisions. If a\n"
 "    revision is given via --rev, the parent of that revision\n"
 "    will be printed. If a file argument is given, revision in\n"
 "    which the file was last changed (before the working directory\n"
 "    revision or the argument to --rev if given) is printed.\n"
 "    "
 msgstr ""
 "mostra i genitori della directory di lavoro o di una revisione\n"
 "\n"
 "    Stampa le revisioni genitori della directory di lavoro. Se una\n"
-"    revisione è data tramite --rev, the parent of that revision will\n"
-"    be printed. If a file argument is given, revision in which the\n"
-"    file was last changed (before the working directory revision or\n"
-"    the argument to --rev if given) is printed.\n"
+"    revisione è data tramite --rev, verrà stampato il genitore di\n"
+"    quella revisione. Se viene fornito un file come argomento,\n"
+"    verrà stampata l'ultima revisione in cui il file è stato\n"
+"    modificato (prima della revisione della directory di lavoro\n"
+"    o dell'argomento di --rev se fornito).\n"
 "    "
 
 msgid "can only specify an explicit file name"
 msgstr ""
 
+#, python-format
 msgid "'%s' not found in manifest!"
 msgstr "'%s' non trovato nel manifesto!"
 
 msgid ""
-"show definition of symbolic path names\n"
+"show aliases for remote repositories\n"
 "\n"
 "    Show definition of symbolic path name NAME. If no name is given, show\n"
 "    definition of available names.\n"
 "\n"
 "    Path names are defined in the [paths] section of /etc/mercurial/hgrc\n"
 "    and $HOME/.hgrc. If run inside a repository, .hg/hgrc is used, too.\n"
+"\n"
+"    See 'hg help urls' for more information.\n"
 "    "
 msgstr ""
 
 msgid "not found!\n"
 msgstr "non trovato!\n"
 
 msgid "not updating, since new heads added\n"
 msgstr ""
@@ -5242,89 +6225,29 @@ msgid ""
 "pull changes from the specified source\n"
 "\n"
 "    Pull changes from a remote repository to a local one.\n"
 "\n"
 "    This finds all changes from the repository at the specified path\n"
 "    or URL and adds them to the local repository. By default, this\n"
 "    does not update the copy of the project in the working directory.\n"
 "\n"
-"    Valid URLs are of the form:\n"
-"\n"
-"      local/filesystem/path (or file://local/filesystem/path)\n"
-"      http://[user[:pass]@]host[:port]/[path]\n"
-"      https://[user[:pass]@]host[:port]/[path]\n"
-"      ssh://[user[:pass]@]host[:port]/[path]\n"
-"\n"
-"    Paths in the local filesystem can either point to Mercurial\n"
-"    repositories or to bundle files (as created by 'hg bundle' or\n"
-"    'hg incoming --bundle').\n"
-"\n"
-"    An optional identifier after # indicates a particular branch, tag,\n"
-"    or changeset to pull.\n"
-"\n"
-"    Some notes about using SSH with Mercurial:\n"
-"    - SSH requires an accessible shell account on the destination machine\n"
-"      and a copy of hg in the remote path or specified with as remotecmd.\n"
-"    - path is relative to the remote user's home directory by default.\n"
-"      Use an extra slash at the start of a path to specify an absolute "
-"path:\n"
-"        ssh://example.com//tmp/repository\n"
-"    - Mercurial doesn't use its own compression via SSH; the right thing\n"
-"      to do is to configure it in your ~/.ssh/config, e.g.:\n"
-"        Host *.mylocalnetwork.example.com\n"
-"          Compression no\n"
-"        Host *\n"
-"          Compression yes\n"
-"      Alternatively specify \"ssh -C\" as your ssh command in your hgrc or\n"
-"      with the --ssh command line option.\n"
-"    "
-msgstr ""
-"effettua il pull delle modifiche dalla sorgente specificata\n"
-"\n"
-"    Effettua il pull delle modifiche da un repository remoto ad uno locale.\n"
-"\n"
-"    Questo trova tutte le modifiche dal repository al percorso o URL "
-"specificato\n"
-"    e le aggiunge al repository locale. Di default, questo\n"
-"    non aggiorna la copia del progetto nella directory di lavoro.\n"
-"\n"
-"    URL validi sono della forma:\n"
-"\n"
-"      percorso/filesystem/locale (o file://percorso/filesystem/locale)\n"
-"      http://[utente[:password]@]host[:porta]/[percorso]\n"
-"      https://[utente[:password]@]host[:porta]/[percorso]\n"
-"      ssh://[utente[:password]@]host[:porta]/[percorso]\n"
-"\n"
-"    I percorsi nel filesystem locale possono puntare a repository Mercurial\n"
-"    o a file bundle (come quelli creati da 'hg bundle' o\n"
-"    'hg incoming --bundle').\n"
-"\n"
-"    Un identificatore opzionale dopo # indica una branch particolare, tag,\n"
-"    o changeset di cui eseguire il pull.\n"
-"\n"
-"    Alcune note riguardo all'uso di SSH con Mercurial:\n"
-"    - SSH richiede un account con accesso shell sulla macchina di\n"
-"      destinazione e una copia di hg nel percorso remoto o specificato da "
-"remotecmd.\n"
-"    - il percorso di default è relativo alla home directory remota "
-"dell'utente.\n"
-"      Usare un extra slash all'inizio del percorso per specificare un "
-"percorso assoluto:\n"
-"        ssh://esempio.com//tmp/repository\n"
-"    - Mercurial non usa la propria compressione via SSH; la cosa giusta da "
-"fare\n"
-"      è configurarla nel proprio ~/.ssh/config, es.:\n"
-"        Host *.miaretelocale.esempio.com\n"
-"          Compression no\n"
-"        Host *\n"
-"          Compression yes\n"
-"      In alternativa specificare \"ssh -C\" come comando ssh nel proprio "
-"hgrc\n"
-"      o con l'opzione --ssh nella riga di comando.\n"
+"    If SOURCE is omitted, the 'default' path will be used.\n"
+"    See 'hg help urls' for more information.\n"
+"    "
+msgstr "effettua il pull delle modifiche dalla sorgente specificata\n"
+"\n"
+"    Effettua il pull di modifiche da un repository remoto in uno locale.\n"
+"\n"
+"    Questo trova tutte le modifiche dal repository al percorso o URL specificato\n"
+"    e le aggiunge al repository locale. Di default non aggiorna la copia del\n"
+"    progetto nella directory di lavoro.\n"
+"\n"
+"    Se SOURCE viene omesso, verrà usato il percorso 'default'.\n"
+"    Vedere 'hg help urls' per maggiori informazioni.\n"
 "    "
 
 msgid ""
 "Other repository doesn't support revision lookup, so a rev cannot be "
 "specified."
 msgstr ""
 "L'altro repository non supporta la ricerca di revisioni, quindi una "
 "revisione non può essere specificata."
@@ -5338,35 +6261,47 @@ msgid ""
 "    changes from the current repository to a different one. If the\n"
 "    destination is local this is identical to a pull in that directory\n"
 "    from the current one.\n"
 "\n"
 "    By default, push will refuse to run if it detects the result would\n"
 "    increase the number of remote heads. This generally indicates the\n"
 "    the client has forgotten to pull and merge before pushing.\n"
 "\n"
-"    Valid URLs are of the form:\n"
-"\n"
-"      local/filesystem/path (or file://local/filesystem/path)\n"
-"      ssh://[user[:pass]@]host[:port]/[path]\n"
-"      http://[user[:pass]@]host[:port]/[path]\n"
-"      https://[user[:pass]@]host[:port]/[path]\n"
-"\n"
-"    An optional identifier after # indicates a particular branch, tag,\n"
-"    or changeset to push. If -r is used, the named changeset and all its\n"
-"    ancestors will be pushed to the remote repository.\n"
-"\n"
-"    Look at the help text for the pull command for important details\n"
-"    about ssh:// URLs.\n"
-"\n"
-"    Pushing to http:// and https:// URLs is only possible, if this\n"
-"    feature is explicitly enabled on the remote Mercurial server.\n"
-"    "
-msgstr ""
-
+"    If -r is used, the named changeset and all its ancestors will be pushed\n"
+"    to the remote repository.\n"
+"\n"
+"    Look at the help text for urls for important details about ssh:// URLs.\n"
+"    If DESTINATION is omitted, a default path will be used.\n"
+"    See 'hg help urls' for more information.\n"
+"    "
+msgstr ""
+"effettua il push di modifiche verso la destinazione specificata\n"
+"\n"
+"    Effettua il push di modifiche dal repository locale verso la\n"
+"    destinazione data.\n"
+"\n"
+"    Questa è l'operazione simmetrica di pull. Aiuta a spostare modifiche\n"
+"    dal repository corrente in un altro. Se la destinazione è locale questo\n"
+"    è identico ad un pull in quella directory verso questa.\n"
+"\n"
+"    Di default, il push verrà rifiutato se viene rivelato che aumenterà il\n"
+"    numerdo di head remote. Questo generalmente indica che il client ha\n"
+"    dimenticato di fare pull e merge prima del push.\n"
+"\n"
+"    Se si usa -r, si farà il push del changeset dato e tutti i suoi antenati\n"
+"    verso il repository remoto.\n"
+"\n"
+"    Vedere il testo di aiuto per gli url per importanti dettagli sugli\n"
+"    URL ssh://.\n"
+"    Se viene omessa DESTINATION, verrà usato il percorso di default.\n"
+"    Vedere 'hg help urls' per maggiori informazioni.\n"
+"    "
+
+#, python-format
 msgid "pushing to %s\n"
 msgstr "sto effettuando il push verso %s\n"
 
 msgid ""
 "raw commit interface (DEPRECATED)\n"
 "\n"
 "    (DEPRECATED)\n"
 "    Lowlevel commit, for use in helper scripts.\n"
@@ -5424,43 +6359,41 @@ msgid ""
 "    This command schedules the files to be removed at the next commit.\n"
 "    To undo a remove before that, see hg revert.\n"
 "    "
 msgstr ""
 
 msgid "no files specified"
 msgstr "nessun file specificato"
 
+#, python-format
 msgid "not removing %s: file %s (use -f to force removal)\n"
 msgstr "non rimuovo %s: file %s (usare -f per forzare la rimozione)\n"
 
 msgid "still exists"
 msgstr "esiste ancora"
 
 msgid "is modified"
 msgstr "è modificato"
 
 msgid "has been marked for add"
 msgstr "è stato marcato per l'aggiunta"
 
-msgid "removing %s\n"
-msgstr "sto rimuovendo %s\n"
-
 msgid ""
 "rename files; equivalent of copy + remove\n"
 "\n"
 "    Mark dest as copies of sources; mark sources for deletion. If\n"
 "    dest is a directory, copies are put in that directory. If dest is\n"
 "    a file, there can only be one source.\n"
 "\n"
 "    By default, this command copies the contents of files as they\n"
-"    stand in the working directory. If invoked with --after, the\n"
+"    exist in the working directory. If invoked with --after, the\n"
 "    operation is recorded, but no copying is performed.\n"
 "\n"
-"    This command takes effect in the next commit. To undo a rename\n"
+"    This command takes effect at the next commit. To undo a rename\n"
 "    before that, see hg revert.\n"
 "    "
 msgstr ""
 
 msgid ""
 "retry file merges from a merge or update\n"
 "\n"
 "    This command will cleanly retry unresolved file merges using file\n"
@@ -5562,31 +6495,37 @@ msgstr ""
 msgid "you can't specify a revision and a date"
 msgstr "non è possibile specificare sia una revisione sia una data"
 
 msgid "no files or directories specified; use --all to revert the whole repo"
 msgstr ""
 "nessun file o directory specificati; usare --all per ripristinare l'intero "
 "repository"
 
+#, python-format
 msgid "forgetting %s\n"
 msgstr "sto dimenticandomi di %s\n"
 
+#, python-format
 msgid "reverting %s\n"
 msgstr "sto ripristinando %s\n"
 
+#, python-format
 msgid "undeleting %s\n"
 msgstr "sto annullando la rimozione di %s\n"
 
+#, python-format
 msgid "saving current version of %s as %s\n"
 msgstr "sto salvando la versione corrente di %s come %s\n"
 
+#, python-format
 msgid "file not managed: %s\n"
 msgstr "file non gestito: %s\n"
 
+#, python-format
 msgid "no changes needed to %s\n"
 msgstr "nessuna modifica richiesta per %s\n"
 
 msgid ""
 "roll back the last transaction\n"
 "\n"
 "    This command should be used with care. There is only one level of\n"
 "    rollback, and there is no way to undo a rollback. It will also\n"
@@ -5664,16 +6603,17 @@ msgstr ""
 "\n"
 "    Avvia un server HTTP locale per il pull e la navigazione.\n"
 "\n"
 "    Di default i log del server vengono inviati allo stdout e gli\n"
 "    errori allo stderr. Usare le opzioni \"-A\" e \"-E\" per effettuare il\n"
 "    log su file.\n"
 "    "
 
+#, python-format
 msgid "listening at http://%s%s/%s (bound to %s:%d)\n"
 msgstr "in ascolto su http://%s%s/%s (limitato a %s:%d)\n"
 
 msgid ""
 "show changed files in the working directory\n"
 "\n"
 "    Show status of files in the repository. If names are given, only\n"
 "    files that match are shown. Files that are clean or ignored or\n"
@@ -5746,34 +6686,40 @@ msgstr ""
 "\n"
 "    Vedere 'hg help dates' per un elenco di formati validi per\n"
 "    -d/--date.\n"
 "    "
 
 msgid "tag names must be unique"
 msgstr "i nomi delle tag devono essere univoci"
 
+#, python-format
 msgid "the name '%s' is reserved"
 msgstr "il nome '%s' è riservato"
 
 msgid "--rev and --remove are incompatible"
 msgstr "--rev e --remove sono incompatibili"
 
+#, python-format
 msgid "tag '%s' does not exist"
 msgstr "la tag '%s' non esiste"
 
+#, python-format
 msgid "tag '%s' is not a %s tag"
 msgstr "la tag '%s' non è una tag %s"
 
+#, python-format
 msgid "Removed tag %s"
 msgstr "Rimossa tag %s"
 
+#, python-format
 msgid "tag '%s' already exists (use -f to force)"
 msgstr "la tag '%s' esiste già (usare -f per forzare)"
 
+#, python-format
 msgid "Added tag %s for changeset %s"
 msgstr "Aggiunta tag %s per il changeset %s"
 
 msgid ""
 "list repository tags\n"
 "\n"
 "    This lists both regular and local tags. When the -v/--verbose switch\n"
 "    is used, a third column \"local\" is printed for local tags.\n"
@@ -5903,30 +6849,31 @@ msgstr ""
 "    repository validando gli hash e i checksum di ogni voce nel\n"
 "    changelog, manifesto, e file tracciati, così come l'integrità dei\n"
 "    loro link incrociati e indici.\n"
 "    "
 
 msgid "output version and copyright information"
 msgstr "stampa la versione e le informazioni di copyright"
 
+#, python-format
 msgid "Mercurial Distributed SCM (version %s)\n"
 msgstr "Mercurial SCM Distribuito (versione %s)\n"
 
 msgid ""
 "\n"
 "Copyright (C) 2005-2008 Matt Mackall <mpm@selenic.com> and others\n"
 "This is free software; see the source for copying conditions. There is NO\n"
 "warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.\n"
 msgstr ""
 "\n"
 "Copyright (C) 2005-2008 Matt Mackall <mpm@selenic.com> e altri\n"
 "Questo è software libero; vedere i sorgenti per le condizioni di copia. Non "
 "c'è alcuna garanzia;\n"
-"neppure  di COMMERCIABILITÀ o IDONEITÀ AD UNO SCOPO PARTICOLARE.\n"
+"neppure di COMMERCIABILITÀ o IDONEITÀ AD UNO SCOPO PARTICOLARE.\n"
 
 msgid "repository root directory or symbolic path name"
 msgstr "directory radice del repository o nome del percorso simbolico"
 
 msgid "change working directory"
 msgstr "cambia la directory di lavoro"
 
 msgid "do not prompt, assume 'yes' for any required answers"
@@ -5993,17 +6940,16 @@ msgid "read commit message from <file>"
 msgstr "legge il messaggio di commit da <file>"
 
 msgid "record datecode as commit date"
 msgstr "registra il datecode come data del commit"
 
 msgid "record user as committer"
 msgstr "registra l'utente come committente"
 
-#, fuzzy
 msgid "display using template map file"
 msgstr "mostra usando un file mappa template"
 
 msgid "display with template"
 msgstr "mostra con un template"
 
 msgid "do not show merges"
 msgstr "non mostrare i merge"
@@ -6224,19 +7170,16 @@ msgid "REV1 [REV2]"
 msgstr "REV1 [REV2]"
 
 msgid "do not display the saved mtime"
 msgstr "non mostrare l'mtime salvato"
 
 msgid "[OPTION]..."
 msgstr "[OPZIONI]..."
 
-msgid "change made by revision"
-msgstr "modifica effettuata dalla revisione"
-
 msgid "[OPTION]... [-r REV1 [-r REV2]] [FILE]..."
 msgstr "[OPZIONI]... [-r REV1 [-r REV2]] [FILE]..."
 
 msgid "diff against the second parent"
 msgstr "effettua il diff con il secondo genitore"
 
 msgid "[OPTION]... [-o OUTFILESPEC] REV..."
 msgstr "[OPZIONI]... [-o OUTFILESPEC] REV..."
@@ -6562,683 +7505,73 @@ msgid "[-u] FILE..."
 msgstr "[-u] FILE..."
 
 msgid "overwrite locally modified files (no backup)"
 msgstr "sovrascrivi file modificati localmente (nessun backup)"
 
 msgid "[-C] [-d DATE] [[-r] REV]"
 msgstr "[-C] [-d DATA] [[-r] REV]"
 
-msgid "OPTIONS"
-msgstr "OPZIONI"
-
-msgid "COMMANDS"
-msgstr "COMANDI"
-
-msgid "    options:\n"
-msgstr "    opzioni:\n"
-
-msgid ""
-"    aliases: %s\n"
-"\n"
-msgstr ""
-"    alias: %s\n"
-"\n"
-
-msgid "%s is not a valid revision in current branch"
-msgstr "%s non è una revisione valida nella branch corrente"
-
-msgid "%s is not available in %s anymore"
-msgstr "%s non è più disponibile in %s"
-
-msgid "cannot find required \"%s\" tool"
-msgstr "impossibile trovare il tool \"%s\""
-
-msgid "running: %s\n"
-msgstr "sto eseguendo: %s\n"
-
-msgid "%s error:\n"
-msgstr "%s errore:\n"
-
-msgid "%s %s"
-msgstr "%s %s"
-
-msgid "could not open map file %r: %s"
-msgstr "impossibile aprire il file di associazione %r: %s"
-
-msgid "%s: missing or unsupported repository"
-msgstr "%s: repository mancante o non supportato"
-
-msgid "convert: %s\n"
-msgstr "convert: %s\n"
-
-msgid "%s: unknown repository type"
-msgstr "%s: tipo di repository sconosciuto"
-
-msgid "cycle detected between %s and %s"
-msgstr "ciclo rilevato tra %s e %s"
-
-msgid "not all revisions were sorted"
-msgstr "non tutte le revisioni erano ordinate"
-
-msgid "Writing author map file %s\n"
-msgstr "Scrivo il file di associazione degli autori %s\n"
-
-msgid "Overriding mapping for author %s, was %s, will be %s\n"
-msgstr "Rimpiazzo l'associazione per l'autore %s, era %s, sarà %s\n"
-
-msgid "mapping author %s to %s\n"
-msgstr "sto associando l'autore %s a %s\n"
-
-msgid "Ignoring bad line in author map file %s: %s\n"
-msgstr "Ignoro riga non valida nel file di associazione degli autori %s: %s\n"
-
-msgid "spliced in %s as parents of %s\n"
-msgstr ""
-
-msgid "scanning source...\n"
-msgstr "sto effettuando la scansione della sorgente...\n"
-
-msgid "sorting...\n"
-msgstr "sto ordinando...\n"
-
-msgid "converting...\n"
-msgstr "sto effettuando la conversione...\n"
-
-msgid "source: %s\n"
-msgstr "sorgente: %s\n"
-
-msgid "assuming destination %s\n"
-msgstr "assumo destinazione %s\n"
-
-#, fuzzy
-msgid "revision %s is not a patchset number or date"
-msgstr "la revisione %s non è un numero di patchset o una data"
-
-msgid "using builtin cvsps\n"
-msgstr "sto usando cvsps integrato\n"
-
-msgid "connecting to %s\n"
-msgstr "sto connettendomi a %s\n"
-
-msgid "CVS pserver authentication failed"
-msgstr "autenticazione al pserver CVS fallita"
-
-#, fuzzy
-msgid "server sucks"
-msgstr "il server fa schifo"
-
-msgid "%d bytes missing from remote file"
-msgstr "%d byte mancanti dal file remoto"
-
-msgid "cvs server: %s\n"
-msgstr "server cvs: %s\n"
-
-msgid "unknown CVS response: %s"
-msgstr "risposta CVS sconosciuta: %s"
-
-msgid "collecting CVS rlog\n"
-msgstr "sto collezionando gli rlog CVS\n"
-
-msgid "reading cvs log cache %s\n"
-msgstr "sto leggendo la cache dei log cvs %s\n"
-
-msgid "cache has %d log entries\n"
-msgstr "la cache ha %d voci di log\n"
-
-msgid "error reading cache: %r\n"
-msgstr "errore durante la lettura della cache: %r\n"
-
-msgid "prefix=%r directory=%r root=%r\n"
-msgstr "prefisso=%r directory=%r radice=%r\n"
-
-msgid "RCS file must be followed by working file"
-msgstr "Il file RCS deve essere seguito da un file funzionante"
-
-msgid "must have at least some revisions"
-msgstr "è necessario avere almeno alcune revisioni"
-
-msgid "expected revision number"
-msgstr "numero di revisione atteso"
-
-msgid "revision must be followed by date line"
-msgstr "la revisione deve essere seguita da una riga con la data"
-
-msgid "writing cvs log cache %s\n"
-msgstr ""
-
-msgid "%d log entries\n"
-msgstr "%d voci di log\n"
-
-msgid "creating changesets\n"
-msgstr "sto creando i changeset\n"
-
-msgid "%d changeset entries\n"
-msgstr "%d voci di changeset\n"
-
-msgid "Python ElementTree module is not available"
-msgstr "il modulo Python ElementTree non è disponibile"
-
-msgid "cleaning up %s\n"
-msgstr "sto ripulendo %s\n"
-
-msgid "internal calling inconsistency"
-msgstr ""
-
-msgid "errors in filemap"
-msgstr "errori nel filemap"
-
-msgid "%s:%d: %r already in %s list\n"
-msgstr "%s:%d: %r esiste già nell'elenco %s\n"
-
-msgid "%s:%d: unknown directive %r\n"
-msgstr "%s:%d: direttiva sconosciuta %r\n"
-
-msgid "source repository doesn't support --filemap"
-msgstr "il repository sorgente non supporta --filemap"
-
-msgid "%s does not look like a GNU Arch repo"
-msgstr "%s non sembra essere un repository GNU Arch"
-
-msgid "cannot find a GNU Arch tool"
-msgstr "impossibile trovare un tool GNU Arch"
-
-msgid "analyzing tree version %s...\n"
-msgstr "sto analizzando la versione dell'albero %s...\n"
-
-msgid ""
-"tree analysis stopped because it points to an unregistered archive %s...\n"
-msgstr ""
-
-msgid "applying revision %s...\n"
-msgstr "sto applicando la revisione %s...\n"
-
-msgid "computing changeset between %s and %s...\n"
-msgstr "sto calcolando il changeset tra %s e %s...\n"
-
-msgid "obtaining revision %s...\n"
-msgstr "sto ottenendo la revisione %s...\n"
-
-msgid "analysing revision %s...\n"
-msgstr "sto analizzando la revisione %s...\n"
-
-msgid "could not parse cat-log of %s"
-msgstr ""
-
-msgid "%s is not a local Mercurial repo"
-msgstr "%s non è un repository locale Mercurial"
-
-msgid "initializing destination %s repository\n"
-msgstr "sto inizializzando il repository destinatario %s\n"
-
-msgid "run hg sink pre-conversion action\n"
-msgstr ""
-
-msgid "run hg sink post-conversion action\n"
-msgstr ""
-
-msgid "pulling from %s into %s\n"
-msgstr "sto effettuando il pull da %s a %s\n"
-
-msgid "updating tags\n"
-msgstr "sto aggiornando le tag\n"
-
-msgid "%s is not a valid start revision"
-msgstr "%s non è una revisione iniziale valida"
-
-msgid "ignoring: %s\n"
-msgstr "sto ignorando: %s\n"
-
-msgid "run hg source pre-conversion action\n"
-msgstr ""
-
-msgid "run hg source post-conversion action\n"
-msgstr ""
-
-msgid "%s does not look like a monotone repo"
-msgstr "%s non sembra essere un repository monotone"
-
-msgid "copying file in renamed dir from '%s' to '%s'"
-msgstr ""
-
-msgid "Subversion python bindings could not be loaded"
-msgstr "Non è stato possibile caricare i binding python per Subversion"
-
-msgid "Subversion python bindings %d.%d found, 1.4 or later required"
-msgstr ""
-"Trovati binding python per Subversion %d.%d, richiesti 1.4 o successivi"
-
-msgid "Subversion python bindings are too old, 1.4 or later required"
-msgstr ""
-"I binding python per Subversion sono troppo vecchi, richiesti 1.4 o "
-"successivi"
-
-msgid "svn: revision %s is not an integer"
-msgstr "svn: la revisione %s non è un intero"
-
-msgid "svn: start revision %s is not an integer"
-msgstr "svn: la revisione iniziale %s non è un intero"
-
-msgid "no revision found in module %s"
-msgstr "nessuna revisione trovata nel modulo %s"
-
-msgid "expected %s to be at %r, but not found"
-msgstr "mi aspettavo di trovare %s in %r, ma non esiste"
-
-msgid "found %s at %r\n"
-msgstr "trovato %s in %r\n"
-
-msgid "ignoring empty branch %s\n"
-msgstr "ignoro branch vuota %s\n"
-
-msgid "found branch %s at %d\n"
-msgstr "trovata branch %s in %d\n"
-
-msgid "svn: start revision is not supported with with more than one branch"
-msgstr "svn: non è supportata una revisione iniziale con più di una branch"
-
-msgid "svn: no revision found after start revision %d"
-msgstr "svn: nessuna revisione trovata dopo la revisione iniziale %d"
-
-msgid "no tags found at revision %d\n"
-msgstr "nessuna tag trovata alla revisione %d\n"
-
-msgid "ignoring foreign branch %r\n"
-msgstr "ignoro la branch straniera %r\n"
-
-msgid "%s not found up to revision %d"
-msgstr "%s non trovato fino alla revisione %d"
-
-msgid "branch renamed from %s to %s at %d\n"
-msgstr "branch rinominata da %s a %s in %d\n"
-
-#, fuzzy
-msgid "reparent to %s\n"
-msgstr "riassociato il genitore come %s\n"
-
-msgid "copied to %s from %s@%s\n"
-msgstr "copiato in %s da %s@%s\n"
-
-msgid "gone from %s\n"
-msgstr "andato da %s\n"
-
-msgid "found parent directory %s\n"
-msgstr "trovata directory genitore %s\n"
-
-msgid "base, entry %s %s\n"
-msgstr "base, voce %s %s\n"
-
-msgid "munge-o-matic\n"
-msgstr ""
-
-msgid "info: %s %s %s %s\n"
-msgstr "info: %s %s %s %s\n"
-
-msgid "unknown path in revision %d: %s\n"
-msgstr "percorso sconosciuto nella revisione %d: %s\n"
-
-msgid "mark %s came from %s:%d\n"
-msgstr "%s marcato come proveniente da %s:%d\n"
-
-msgid "parsing revision %d (%d changes)\n"
-msgstr "sto effettuando il parsing della revisione %d (%d modifiche)\n"
-
-msgid "found parent of branch %s at %d: %s\n"
-msgstr "trovato genitore della branch %s in %d: %s\n"
-
-msgid "no copyfrom path, don't know what to do.\n"
-msgstr ""
-
-msgid "fetching revision log for \"%s\" from %d to %d\n"
-msgstr ""
-
-msgid "skipping blacklisted revision %d\n"
-msgstr "sto saltando la revisione nella blacklist %d\n"
-
-msgid "revision %d has no entries\n"
-msgstr "la revisione %d non ha voci\n"
-
-msgid "svn: branch has no revision %s"
-msgstr "svn: la branch non ha nessuna revisione %s"
-
-msgid "%r is not under %r, ignoring\n"
-msgstr "%r non è sotto %r, ignoro\n"
-
-msgid "initializing svn repo %r\n"
-msgstr "inizializzo il repository svn %r\n"
-
-msgid "initializing svn wc %r\n"
-msgstr "inizializzo svn wc %r\n"
-
-msgid "unexpected svn output:\n"
-msgstr "output svn inatteso:\n"
-
-msgid "unable to cope with svn output"
-msgstr ""
-
-msgid "XXX TAGS NOT IMPLEMENTED YET\n"
-msgstr "XXX TAG NON ANCORA IMPLEMENTATE\n"
-
-msgid "(inotify: received response from incompatible server version %d)\n"
-msgstr ""
-
-msgid "this system does not seem to support inotify"
-msgstr "questo sistema sembra non supportare inotify"
-
-msgid "*** the current per-user limit on the number of inotify watches is %s\n"
-msgstr ""
-
-msgid "*** this limit is too low to watch every directory in this repository\n"
-msgstr ""
-
-msgid "*** counting directories: "
-msgstr "*** sto contando le directory: "
-
-msgid "found %d\n"
-msgstr "trovato %d\n"
-
-msgid "*** to raise the limit from %d to %d (run as root):\n"
-msgstr ""
-
-msgid "***  echo %d > %s\n"
-msgstr "***  echo %d > %s\n"
-
-msgid "cannot watch %s until inotify watch limit is raised"
-msgstr ""
-"impossibile controllare %s finchè il limite di controlli di inotify non "
-"verrà aumentato"
-
-msgid "inotify service not available: %s"
-msgstr "servizio inotify non disponibile: %s"
-
-msgid "watching %r\n"
-msgstr "sto controllando %r\n"
-
-msgid "watching directories under %r\n"
-msgstr "sto controllando le directory sotto %r\n"
-
-msgid "status: %r dir(%d) -> %s\n"
-msgstr "status: %r dir(%d) -> %s\n"
-
-msgid "status: %r %s -> %s\n"
-msgstr "status: %r %s -> %s\n"
-
-msgid "%s dirstate reload\n"
-msgstr ""
-
-msgid "%s end dirstate reload\n"
-msgstr ""
-
-msgid "rescanning due to .hgignore change\n"
-msgstr ""
-
-msgid "%s event: created %s\n"
-msgstr "evento %s: creato %s\n"
-
-msgid "%s event: deleted %s\n"
-msgstr "evento %s: cancellato %s\n"
-
-msgid "%s event: modified %s\n"
-msgstr "evento %s: modificato %s\n"
-
-msgid "filesystem containing %s was unmounted\n"
-msgstr "il filesystem contenente %s era smontato\n"
-
-msgid "%s readable: %d bytes\n"
-msgstr "%s leggibile: %d byte\n"
-
-msgid "%s below threshold - unhooking\n"
-msgstr ""
-
-msgid "%s reading %d events\n"
-msgstr ""
-
-msgid "%s hooking back up with %d bytes readable\n"
-msgstr ""
-
-msgid "%s processing %d deferred events as %d\n"
-msgstr ""
-
-msgid "could not start server: %s"
-msgstr ""
-
-msgid "received query from incompatible client version %d\n"
-msgstr ""
-
-msgid "answering query for %r\n"
-msgstr ""
-
-msgid "finished setup\n"
-msgstr ""
-
-msgid "polling: no timeout\n"
-msgstr ""
-
-msgid "polling: %sms timeout\n"
-msgstr ""
-
-msgid "archive prefix contains illegal components"
-msgstr ""
-
-msgid "cannot give prefix when archiving to files"
-msgstr ""
-
-msgid "unknown archive type '%s'"
-msgstr ""
-
-msgid "invalid changegroup"
-msgstr ""
-
-msgid "unknown parent"
-msgstr ""
-
-msgid "integrity check failed on %s:%d"
-msgstr ""
-
-msgid "%s: not a Mercurial bundle file"
-msgstr ""
-
-msgid "%s: unknown bundle version"
-msgstr ""
-
-msgid "%s: unknown bundle compression type"
-msgstr ""
-
-msgid "cannot create new bundle repository"
-msgstr ""
-
-msgid "premature EOF reading chunk (got %d bytes, expected %d)"
-msgstr ""
-
-msgid "username %s contains a newline"
-msgstr ""
-
-msgid "options --message and --logfile are mutually exclusive"
-msgstr ""
-
-msgid "can't read commit message '%s': %s"
-msgstr ""
-
-msgid "too many revisions specified"
-msgstr ""
-
-msgid "invalid format spec '%%%s' in output file name"
-msgstr ""
-
-msgid "recording removal of %s as rename to %s (%d%% similar)\n"
-msgstr ""
-
-msgid "%s: not copying - file is not managed\n"
-msgstr ""
-
-msgid "%s: not copying - file has been marked for remove\n"
-msgstr ""
-
-msgid "%s: not overwriting - %s collides with %s\n"
-msgstr ""
-
-msgid "%s: not overwriting - file exists\n"
-msgstr ""
-
-msgid "%s: deleted in working copy\n"
-msgstr ""
-
-msgid "%s: cannot copy - %s\n"
-msgstr "%s: impossibile copiare - %s\n"
-
-msgid "%s %s to %s\n"
-msgstr "%s %s in %s\n"
-
-msgid "%s has not been committed yet, so no copy data will be stored for %s.\n"
-msgstr ""
-
-msgid "no source or destination specified"
-msgstr "nessuna sorgente o destinazione specificata"
-
-msgid "no destination specified"
-msgstr "nessuna destinazione specificata"
-
-msgid "with multiple sources, destination must be an existing directory"
-msgstr ""
-"con sorgenti multiple la destinazione deve essere una directory esistente"
-
-msgid "destination %s is not a directory"
-msgstr "la destinazione %s non è una directory"
-
-msgid "no files to copy"
-msgstr "nessun file da copiare"
-
-msgid "(consider using --after)\n"
-msgstr "(considera di usare --after)\n"
-
-msgid "changeset:   %d:%s\n"
-msgstr "changeset:   %d:%s\n"
-
-msgid "branch:      %s\n"
-msgstr "branch:      %s\n"
-
-msgid "tag:         %s\n"
-msgstr "tag:         %s\n"
-
-msgid "parent:      %d:%s\n"
-msgstr "genitore:      %d:%s\n"
-
-msgid "manifest:    %d:%s\n"
-msgstr "manifesto:    %d:%s\n"
-
-msgid "user:        %s\n"
-msgstr "utente:      %s\n"
-
-msgid "date:        %s\n"
-msgstr "data:        %s\n"
-
-msgid "files+:"
-msgstr "file+:"
-
-msgid "files-:"
-msgstr "file-:"
-
-msgid "files:"
-msgstr "file:"
-
-msgid "files:       %s\n"
-msgstr "file:       %s\n"
-
-msgid "copies:      %s\n"
-msgstr "copie:      %s\n"
-
-msgid "extra:       %s=%s\n"
-msgstr "extra:       %s=%s\n"
-
-msgid "description:\n"
-msgstr "descrizione:\n"
-
-msgid "summary:     %s\n"
-msgstr "sommario:    %s\n"
-
-msgid "%s: no key named '%s'"
-msgstr "%s: nessuna chiave chiamata '%s'"
-
-msgid "%s: %s"
-msgstr "%s: %s"
-
-msgid "Found revision %s from %s\n"
-msgstr "Trovata revisione %s da %s\n"
-
-msgid "revision matching date not found"
-msgstr "revisione corrispondente alla data non trovata"
-
-msgid "cannot follow nonexistent file: \"%s\""
-msgstr "impossibile seguire il file non esistente: \"%s\""
-
-msgid "%s:%s copy source revision cannot be found!\n"
-msgstr ""
-
-msgid "can only follow copies/renames for explicit file names"
-msgstr ""
-
-msgid "file %s not found!"
-msgstr "file %s non trovato!"
-
-msgid "no match under directory %s!"
-msgstr "nessuna corrispondenza sotto la directory %s!"
-
-msgid "can't commit %s: unsupported file type!"
-msgstr "impossibile fare il commit di %s: tipo di file non supportato!"
-
-msgid "file %s not tracked!"
-msgstr "il file %s non è tracciato!"
-
 msgid "not found in manifest"
 msgstr "non trovato nel manifesto"
 
 msgid "branch name not in UTF-8!"
 msgstr "il nome della branch non è in UTF-8!"
 
+#, python-format
 msgid "  searching for copies back to rev %d\n"
 msgstr "  sto cercando copie fino alla revisione %d\n"
 
+#, python-format
 msgid ""
 "  unmatched files in local:\n"
 "   %s\n"
 msgstr ""
 "  file non corrispondenti in locale:\n"
 "   %s\n"
 
+#, python-format
 msgid ""
 "  unmatched files in other:\n"
 "   %s\n"
 msgstr ""
 "  file non corrispondenti in altro:\n"
 "   %s\n"
 
 msgid "  all copies found (* = to merge, ! = divergent):\n"
 msgstr "  trovate tutte le copie (* = per merge, ! = divergenti):\n"
 
+#, python-format
 msgid "   %s -> %s %s\n"
 msgstr "   %s -> %s %s\n"
 
 msgid "  checking for directory renames\n"
 msgstr "  sto controllando directory rinominate\n"
 
+#, python-format
 msgid "  dir %s -> %s\n"
 msgstr "  dir %s -> %s\n"
 
+#, python-format
 msgid "  file %s -> %s\n"
 msgstr "  file %s -> %s\n"
 
+#, python-format
 msgid "'\\n' and '\\r' disallowed in filenames: %r"
 msgstr "'\\n' e '\\r' non sono consentiti nei nomi dei file: %r"
 
+#, python-format
 msgid "directory %r already in dirstate"
 msgstr "la directory %r è già nel dirstate"
 
+#, python-format
 msgid "file %r in dirstate clashes with %r"
 msgstr "il file %r nel dirstate collide con %r"
 
+#, python-format
 msgid "not in dirstate: %s\n"
 msgstr "non nel dirstate: %s\n"
 
 msgid "character device"
 msgstr "device a caratteri"
 
 msgid "block device"
 msgstr "device a blocchi"
@@ -7247,71 +7580,85 @@ msgid "fifo"
 msgstr "fifo"
 
 msgid "socket"
 msgstr "socket"
 
 msgid "directory"
 msgstr "directory"
 
+#, python-format
 msgid "%s: unsupported file type (type is %s)\n"
 msgstr "%s: tipo di file non supportato (il tipo è %s)\n"
 
+#, python-format
 msgid "abort: %s\n"
 msgstr "abortito: %s\n"
 
+#, python-format
 msgid ""
 "hg: command '%s' is ambiguous:\n"
 "    %s\n"
 msgstr ""
 "hg: il comando '%s' è ambiguo:\n"
 "    %s\n"
 
+#, python-format
 msgid "timed out waiting for lock held by %s"
 msgstr "tempo esaurito per l'attesa del lock tenuto da %s"
 
+#, python-format
 msgid "lock held by %s"
 msgstr "lock tenuto da %s"
 
+#, python-format
 msgid "abort: %s: %s\n"
 msgstr "abortito: %s: %s\n"
 
+#, python-format
 msgid "abort: could not lock %s: %s\n"
 msgstr "abortito: impossibile acquisire il lock su %s: %s\n"
 
+#, python-format
 msgid "hg %s: %s\n"
 msgstr "hg %s: %s\n"
 
+#, python-format
 msgid "hg: %s\n"
 msgstr "hg: %s\n"
 
+#, python-format
 msgid "abort: %s!\n"
 msgstr "abortito: %s!\n"
 
+#, python-format
 msgid "abort: %s"
 msgstr "abortito: %s"
 
 msgid " empty string\n"
 msgstr "stringa vuota\n"
 
 msgid "killed!\n"
 msgstr "ucciso!\n"
 
+#, python-format
 msgid "hg: unknown command '%s'\n"
 msgstr "hg: comando '%s' sconosciuto\n"
 
+#, python-format
 msgid "abort: could not import module %s!\n"
 msgstr "abortito: non è stato possibile importare %s!\n"
 
 msgid "(did you forget to compile extensions?)\n"
 msgstr "(ti sei dimenticato di compilare le estensioni?)\n"
 
 msgid "(is your Python install correct?)\n"
 msgstr "(l'installazione di Python è corretta?)\n"
 
+#, python-format
 msgid "abort: error: %s\n"
 msgstr "abortito: errore: %s\n"
 
 msgid "broken pipe\n"
 msgstr "pipe rotta\n"
 
 msgid "interrupted!\n"
 msgstr "interrotto!\n"
@@ -7330,128 +7677,149 @@ msgid "** unknown exception encountered,
 msgstr "** incontrata eccezione sconosciuta, seguono dettagli\n"
 
 msgid "** report bug details to http://www.selenic.com/mercurial/bts\n"
 msgstr "** riportare dettagli del bug a http://www.selenic.com/mercurial/bts\n"
 
 msgid "** or mercurial@selenic.com\n"
 msgstr "** o mercurial@selenic.com\n"
 
+#, python-format
 msgid "** Mercurial Distributed SCM (version %s)\n"
 msgstr "** Mercurial SCM Distribuito (versione %s)\n"
 
+#, python-format
 msgid "** Extensions loaded: %s\n"
 msgstr "** Estensioni caricate: %s\n"
 
+#, python-format
 msgid "malformed --config option: %s"
 msgstr "opzione --config malformata: %s"
 
+#, python-format
 msgid "extension '%s' overrides commands: %s\n"
 msgstr "l'estensione '%s' rimpiazza i comandi: %s\n"
 
 msgid "Option --config may not be abbreviated!"
 msgstr "Non si può abbreviare l'opzione --config!"
 
 msgid "Option --cwd may not be abbreviated!"
 msgstr "Non si può abbreviare l'opzione --cwd!"
 
 msgid ""
 "Option -R has to be separated from other options (i.e. not -qR) and --"
 "repository may only be abbreviated as --repo!"
 msgstr ""
 
+#, python-format
 msgid "Time: real %.3f secs (user %.3f+%.3f sys %.3f+%.3f)\n"
 msgstr ""
 
+#, python-format
 msgid "repository '%s' is not local"
 msgstr "il repository '%s' non è locale"
 
 msgid "invalid arguments"
 msgstr "argomenti non validi"
 
 msgid "exception raised - generating profile anyway\n"
 msgstr "eccezione sollevata - genero comunque il profilo\n"
 
 msgid ""
 "lsprof not available - install from http://codespeak.net/svn/user/arigo/hack/"
 "misc/lsprof/"
 msgstr ""
 
+#, python-format
 msgid "*** failed to import extension %s from %s: %s\n"
 msgstr "*** fallita l'importazione dell'estensione %s da %s: %s\n"
 
+#, python-format
 msgid "*** failed to import extension %s: %s\n"
 msgstr "*** fallita l'importazione dell'estensione %s: %s\n"
 
+#, python-format
 msgid "couldn't find merge tool %s\n"
 msgstr "non è stato possibile trovare il tool per il merge %s\n"
 
+#, python-format
 msgid "tool %s can't handle symlinks\n"
 msgstr "il tool %s non può gestire link simbolici\n"
 
+#, python-format
 msgid "tool %s can't handle binary\n"
 msgstr "il tool %s non può gestire file binari\n"
 
+#, python-format
 msgid "tool %s requires a GUI\n"
 msgstr "il tool %s richiede una GUI\n"
 
+#, python-format
 msgid "picked tool '%s' for %s (binary %s symlink %s)\n"
 msgstr ""
 
+#, python-format
 msgid ""
 " no tool found to merge %s\n"
 "keep (l)ocal or take (o)ther?"
 msgstr ""
 
 msgid "[lo]"
 msgstr "[lo]"
 
 msgid "l"
 msgstr "l"
 
+#, python-format
 msgid "merging %s and %s to %s\n"
-msgstr ""
-
+msgstr "sto effettuando il merge di %s e %s in %s\n"
+
+#, python-format
 msgid "merging %s\n"
 msgstr "sto effettuando il merge di %s\n"
 
+#, python-format
 msgid "my %s other %s ancestor %s\n"
 msgstr "mio %s altro %s antenato %s\n"
 
 msgid " premerge successful\n"
 msgstr " premerge eseguito con successo\n"
 
+#, python-format
 msgid ""
 " output file %s appears unchanged\n"
 "was merge successful (yn)?"
 msgstr ""
 
 msgid "[yn]"
 msgstr "[yn]"
 
 msgid "n"
 msgstr "n"
 
+#, python-format
 msgid "merging %s failed!\n"
 msgstr "merge di %s fallito!\n"
 
+#, python-format
 msgid "Inconsistent state, %s:%s is good and bad"
-msgstr ""
-
+msgstr "Stato inconsistente, %s:%s è buona e cattiva"
+
+#, python-format
 msgid "unknown bisect kind %s"
 msgstr ""
 
 msgid "Date Formats"
 msgstr "Formati della data"
 
 msgid ""
 "\n"
-"    Some commands allow the user to specify a date:\n"
-"    backout, commit, import, tag: Specify the commit date.\n"
-"    log, revert, update: Select revision(s) by date.\n"
+"    Some commands allow the user to specify a date, e.g.:\n"
+"    * backout, commit, import, tag: Specify the commit date.\n"
+"    * log, revert, update: Select revision(s) by date.\n"
 "\n"
 "    Many date formats are valid. Here are some examples:\n"
 "\n"
 "    \"Wed Dec 6 13:18:29 2006\" (local timezone assumed)\n"
 "    \"Dec 6 13:18 -0600\" (year assumed, time offset provided)\n"
 "    \"Dec 6 13:18 UTC\" (UTC and GMT are aliases for +0000)\n"
 "    \"Dec 6\" (midnight)\n"
 "    \"13:18\" (today assumed)\n"
@@ -7470,19 +7838,19 @@ msgid ""
 "\n"
 "    This is the internal representation format for dates. unixtime is\n"
 "    the number of seconds since the epoch (1970-01-01 00:00 UTC). offset\n"
 "    is the offset of the local timezone, in seconds west of UTC (negative\n"
 "    if the timezone is east of UTC).\n"
 "\n"
 "    The log command also accepts date ranges:\n"
 "\n"
-"    \"<{date}\" - on or before a given date\n"
-"    \">{date}\" - on or after a given date\n"
-"    \"{date} to {date}\" - a date range, inclusive\n"
+"    \"<{datetime}\" - at or before a given date/time\n"
+"    \">{datetime}\" - on or after a given date/time\n"
+"    \"{datetime} to {datetime}\" - a date range, inclusive\n"
 "    \"-{days}\" - within a given number of days of today\n"
 "    "
 msgstr ""
 
 msgid "File Name Patterns"
 msgstr "Pattern dei Nomi dei File"
 
 msgid ""
@@ -7490,147 +7858,157 @@ msgid ""
 "    Mercurial accepts several notations for identifying one or more\n"
 "    files at a time.\n"
 "\n"
 "    By default, Mercurial treats filenames as shell-style extended\n"
 "    glob patterns.\n"
 "\n"
 "    Alternate pattern notations must be specified explicitly.\n"
 "\n"
-"    To use a plain path name without any pattern matching, start a\n"
-"    name with \"path:\".  These path names must match completely, from\n"
-"    the root of the current repository.\n"
-"\n"
-"    To use an extended glob, start a name with \"glob:\".  Globs are\n"
-"    rooted at the current directory; a glob such as \"*.c\" will match\n"
-"    files ending in \".c\" in the current directory only.\n"
+"    To use a plain path name without any pattern matching, start it\n"
+"    with \"path:\". These path names must completely match starting at\n"
+"    the current repository root.\n"
+"\n"
+"    To use an extended glob, start a name with \"glob:\". Globs are\n"
+"    rooted at the current directory; a glob such as \"*.c\" will only\n"
+"    match files in the current directory ending with \".c\".\n"
 "\n"
 "    The supported glob syntax extensions are \"**\" to match any string\n"
-"    across path separators, and \"{a,b}\" to mean \"a or b\".\n"
+"    across path separators and \"{a,b}\" to mean \"a or b\".\n"
 "\n"
 "    To use a Perl/Python regular expression, start a name with \"re:\".\n"
 "    Regexp pattern matching is anchored at the root of the repository.\n"
 "\n"
 "    Plain examples:\n"
 "\n"
 "    path:foo/bar   a name bar in a directory named foo in the root of\n"
 "                   the repository\n"
 "    path:path:name a file or directory named \"path:name\"\n"
 "\n"
 "    Glob examples:\n"
 "\n"
 "    glob:*.c       any name ending in \".c\" in the current directory\n"
 "    *.c            any name ending in \".c\" in the current directory\n"
-"    **.c           any name ending in \".c\" in the current directory, or\n"
-"                   any subdirectory\n"
+"    **.c           any name ending in \".c\" in any subdirectory of the\n"
+"                   current directory including itself.\n"
 "    foo/*.c        any name ending in \".c\" in the directory foo\n"
-"    foo/**.c       any name ending in \".c\" in the directory foo, or any\n"
-"                   subdirectory\n"
+"    foo/**.c       any name ending in \".c\" in any subdirectory of foo\n"
+"                   including itself.\n"
 "\n"
 "    Regexp examples:\n"
 "\n"
 "    re:.*\\.c$      any name ending in \".c\", anywhere in the repository\n"
 "\n"
 "    "
 msgstr ""
 
 msgid "Environment Variables"
 msgstr "Variabili d'ambiente"
 
 msgid ""
 "\n"
 "HG::\n"
 "    Path to the 'hg' executable, automatically passed when running hooks,\n"
-"    extensions or external tools. If unset or empty, an executable named\n"
-"    'hg' (with com/exe/bat/cmd extension on Windows) is searched.\n"
+"    extensions or external tools. If unset or empty, this is the hg\n"
+"    exutable's name if it's frozen, or an executable named 'hg'\n"
+"    (with %PATHEXT% [defaulting to COM/EXE/BAT/CMD] extensions on\n"
+"    Windows) is searched.\n"
 "\n"
 "HGEDITOR::\n"
-"    This is the name of the editor to use when committing. See EDITOR.\n"
+"    This is the name of the editor to run when committing. See EDITOR.\n"
 "\n"
 "    (deprecated, use .hgrc)\n"
 "\n"
 "HGENCODING::\n"
 "    This overrides the default locale setting detected by Mercurial.\n"
 "    This setting is used to convert data including usernames,\n"
 "    changeset descriptions, tag names, and branches. This setting can\n"
 "    be overridden with the --encoding command-line option.\n"
 "\n"
 "HGENCODINGMODE::\n"
 "    This sets Mercurial's behavior for handling unknown characters\n"
-"    while transcoding user inputs. The default is \"strict\", which\n"
-"    causes Mercurial to abort if it can't translate a character. Other\n"
+"    while transcoding user input. The default is \"strict\", which\n"
+"    causes Mercurial to abort if it can't map a character. Other\n"
 "    settings include \"replace\", which replaces unknown characters, and\n"
 "    \"ignore\", which drops them. This setting can be overridden with\n"
 "    the --encodingmode command-line option.\n"
 "\n"
 "HGMERGE::\n"
 "    An executable to use for resolving merge conflicts. The program\n"
 "    will be executed with three arguments: local file, remote file,\n"
 "    ancestor file.\n"
 "\n"
 "    (deprecated, use .hgrc)\n"
 "\n"
 "HGRCPATH::\n"
-"    A list of files or directories to search for hgrc files.  Item\n"
-"    separator is \":\" on Unix, \";\" on Windows.  If HGRCPATH is not set,\n"
-"    platform default search path is used.  If empty, only .hg/hgrc of\n"
-"    current repository is read.\n"
-"\n"
-"    For each element in path, if a directory, all entries in directory\n"
-"    ending with \".rc\" are added to path.  Else, element itself is\n"
-"    added to path.\n"
+"    A list of files or directories to search for hgrc files. Item\n"
+"    separator is \":\" on Unix, \";\" on Windows. If HGRCPATH is not set,\n"
+"    platform default search path is used. If empty, only the .hg/hgrc\n"
+"    from the current repository is read.\n"
+"\n"
+"    For each element in HGRCPATH:\n"
+"    * if it's a directory, all directories ending with .rc are added\n"
+"    * otherwise, the directory itself will be added\n"
 "\n"
 "HGUSER::\n"
-"    This is the string used for the author of a commit.\n"
+"    This is the string used as the author of a commit. If not set,\n"
+"    available values will be considered in this order:\n"
+"\n"
+"    * HGUSER (deprecated)\n"
+"    * hgrc files from the HGRCPATH\n"
+"    * EMAIL\n"
+"    * interactive prompt\n"
+"    * LOGNAME (with '@hostname' appended)\n"
 "\n"
 "    (deprecated, use .hgrc)\n"
 "\n"
 "EMAIL::\n"
-"    If HGUSER is not set, this will be used as the author for a commit.\n"
+"    May be used as the author of a commit; see HGUSER.\n"
 "\n"
 "LOGNAME::\n"
-"    If neither HGUSER nor EMAIL is set, LOGNAME will be used (with\n"
-"    '@hostname' appended) as the author value for a commit.\n"
+"    May be used as the author of a commit; see HGUSER.\n"
 "\n"
 "VISUAL::\n"
 "    This is the name of the editor to use when committing. See EDITOR.\n"
 "\n"
 "EDITOR::\n"
 "    Sometimes Mercurial needs to open a text file in an editor\n"
 "    for a user to modify, for example when writing commit messages.\n"
 "    The editor it uses is determined by looking at the environment\n"
 "    variables HGEDITOR, VISUAL and EDITOR, in that order. The first\n"
 "    non-empty one is chosen. If all of them are empty, the editor\n"
 "    defaults to 'vi'.\n"
 "\n"
 "PYTHONPATH::\n"
 "    This is used by Python to find imported modules and may need to be set\n"
-"    appropriately if Mercurial is not installed system-wide.\n"
+"    appropriately if this Mercurial is not installed system-wide.\n"
 "    "
 msgstr ""
 
 msgid "Specifying Single Revisions"
 msgstr ""
 
 msgid ""
 "\n"
-"    Mercurial accepts several notations for identifying individual\n"
+"    Mercurial supports several ways to specify individual\n"
 "    revisions.\n"
 "\n"
 "    A plain integer is treated as a revision number. Negative\n"
-"    integers are treated as offsets from the tip, with -1 denoting the\n"
-"    tip.\n"
+"    integers are treated as toplogical offsets from the tip, with\n"
+"    -1 denoting the tip. As such, negative numbers are only useful\n"
+"    if you've memorized your local tree numbers and want to save\n"
+"    typing a single digit. This editor suggests copy and paste.\n"
 "\n"
 "    A 40-digit hexadecimal string is treated as a unique revision\n"
 "    identifier.\n"
 "\n"
 "    A hexadecimal string less than 40 characters long is treated as a\n"
 "    unique revision identifier, and referred to as a short-form\n"
 "    identifier. A short-form identifier is only valid if it is the\n"
-"    prefix of one full-length identifier.\n"
+"    prefix of exactly one full-length identifier.\n"
 "\n"
 "    Any other string is treated as a tag name, which is a symbolic\n"
 "    name associated with a revision identifier. Tag names may not\n"
 "    contain the \":\" character.\n"
 "\n"
 "    The reserved name \"tip\" is a special tag that always identifies\n"
 "    the most recent revision.\n"
 "\n"
@@ -7640,58 +8018,58 @@ msgid ""
 "    The reserved name \".\" indicates the working directory parent. If\n"
 "    no working directory is checked out, it is equivalent to null.\n"
 "    If an uncommitted merge is in progress, \".\" is the revision of\n"
 "    the first parent.\n"
 "    "
 msgstr ""
 
 msgid "Specifying Multiple Revisions"
-msgstr ""
+msgstr "Specificare Revisioni Multiple"
 
 msgid ""
 "\n"
 "    When Mercurial accepts more than one revision, they may be\n"
-"    specified individually, or provided as a continuous range,\n"
-"    separated by the \":\" character.\n"
+"    specified individually, or provided as a topologically continuous\n"
+"    range, separated by the \":\" character.\n"
 "\n"
 "    The syntax of range notation is [BEGIN]:[END], where BEGIN and END\n"
 "    are revision identifiers. Both BEGIN and END are optional. If\n"
 "    BEGIN is not specified, it defaults to revision number 0. If END\n"
 "    is not specified, it defaults to the tip. The range \":\" thus\n"
 "    means \"all revisions\".\n"
 "\n"
 "    If BEGIN is greater than END, revisions are treated in reverse\n"
 "    order.\n"
 "\n"
 "    A range acts as a closed interval. This means that a range of 3:5\n"
-"    gives 3, 4 and 5. Similarly, a range of 4:2 gives 4, 3, and 2.\n"
+"    gives 3, 4 and 5. Similarly, a range of 9:6 gives 9, 8, 7, and 6.\n"
 "    "
 msgstr ""
 
 msgid "Diff Formats"
 msgstr "Formati di diff"
 
 msgid ""
 "\n"
 "    Mercurial's default format for showing changes between two versions\n"
 "    of a file is compatible with the unified format of GNU diff, which\n"
 "    can be used by GNU patch and many other standard tools.\n"
 "\n"
 "    While this standard format is often enough, it does not encode the\n"
 "    following information:\n"
 "\n"
-"     - executable status\n"
+"     - executable status and other permission bits\n"
 "     - copy or rename information\n"
 "     - changes in binary files\n"
 "     - creation or deletion of empty files\n"
 "\n"
 "    Mercurial also supports the extended diff format from the git VCS\n"
 "    which addresses these limitations. The git diff format is not\n"
-"    produced by default because there are very few tools which\n"
+"    produced by default because a few widespread tools still do not\n"
 "    understand this format.\n"
 "\n"
 "    This means that when generating diffs from a Mercurial repository\n"
 "    (e.g. with \"hg export\"), you should be careful about things like\n"
 "    file copies and renames or other things mentioned above, because\n"
 "    when applying a standard diff to a different repository, this extra\n"
 "    information is lost. Mercurial's internal operations (like push and\n"
 "    pull) are not affected by this, because they use an internal binary\n"
@@ -7699,757 +8077,1067 @@ msgid ""
 "\n"
 "    To make Mercurial produce the git extended diff format, use the\n"
 "    --git option available for many commands, or set 'git = True' in the\n"
 "    [diff] section of your hgrc. You do not need to set this option when\n"
 "    importing diffs in this format or using them in the mq extension.\n"
 "    "
 msgstr ""
 
+msgid "Template Usage"
+msgstr ""
+
+msgid ""
+"\n"
+"    Mercurial allows you to customize output of commands through\n"
+"    templates. You can either pass in a template from the command line,\n"
+"    via the --template option, or select an existing template-style (--"
+"style).\n"
+"\n"
+"    You can customize output for any \"log-like\" command: log, outgoing,\n"
+"    incoming, tip, parents, heads and glog.\n"
+"\n"
+"    Three styles are packaged with Mercurial: default (the style used\n"
+"    when no explicit preference is passed), compact and changelog. Usage:\n"
+"\n"
+"        $ hg log -r1 --style changelog\n"
+"\n"
+"    A template is a piece of text, with markup to invoke variable "
+"expansion:\n"
+"\n"
+"        $ hg log -r1 --template \"{node}\\n\"\n"
+"        b56ce7b07c52de7d5fd79fb89701ea538af65746\n"
+"\n"
+"    Strings in curly braces are called keywords. The availability of\n"
+"    keywords depends on the exact context of the templater. These keywords\n"
+"    are usually available for templating a log-like command:\n"
+"\n"
+"    - author: String. The unmodified author of the changeset.\n"
+"    - branches: String. The name of the branch on which the changeset\n"
+"          was committed. Will be empty if the branch name was default.\n"
+"    - date: Date information. The date when the changeset was committed.\n"
+"    - desc: String. The text of the changeset description.\n"
+"    - files: List of strings. All files modified, added, or removed by\n"
+"          this changeset.\n"
+"    - file_adds: List of strings. Files added by this changeset.\n"
+"    - file_mods: List of strings. Files modified by this changeset.\n"
+"    - file_dels: List of strings. Files removed by this changeset.\n"
+"    - node: String. The changeset identification hash, as a 40-character\n"
+"          hexadecimal string.\n"
+"    - parents: List of strings. The parents of the changeset.\n"
+"    - rev: Integer. The repository-local changeset revision number.\n"
+"    - tags: List of strings. Any tags associated with the changeset.\n"
+"\n"
+"    The \"date\" keyword does not produce human-readable output. If you\n"
+"    want to use a date in your output, you can use a filter to process it.\n"
+"    Filters are functions which return a string based on the input "
+"variable.\n"
+"    You can also use a chain of filters to get the desired output:\n"
+"\n"
+"       $ hg tip --template \"{date|isodate}\\n\"\n"
+"       2008-08-21 18:22 +0000\n"
+"\n"
+"    List of filters:\n"
+"\n"
+"    - addbreaks: Any text. Add an XHTML \"<br />\" tag before the end of\n"
+"          every line except the last.\n"
+"    - age: Date. Returns a human-readable date/time difference between\n"
+"          the given date/time and the current date/time.\n"
+"    - basename: Any text. Treats the text as a path, and returns the\n"
+"          last component of the path after splitting by the path\n"
+"          separator (ignoring trailing seprators). For example,\n"
+"          \"foo/bar/baz\" becomes \"baz\" and \"foo/bar//\" becomes \"bar"
+"\".\n"
+"    - date: Date. Returns a date in a Unix date format, including\n"
+"          the timezone: \"Mon Sep 04 15:13:13 2006 0700\".\n"
+"    - domain: Any text. Finds the first string that looks like an email\n"
+"          address, and extracts just the domain component.\n"
+"          Example: 'User <user@example.com>' becomes 'example.com'.\n"
+"    - email: Any text. Extracts the first string that looks like an email\n"
+"          address. Example: 'User <user@example.com>' becomes\n"
+"          'user@example.com'.\n"
+"    - escape: Any text. Replaces the special XML/XHTML characters \"&\",\n"
+"          \"<\" and \">\" with XML entities.\n"
+"    - fill68: Any text. Wraps the text to fit in 68 columns.\n"
+"    - fill76: Any text. Wraps the text to fit in 76 columns.\n"
+"    - firstline: Any text. Returns the first line of text.\n"
+"    - hgdate: Date. Returns the date as a pair of numbers:\n"
+"          \"1157407993 25200\" (Unix timestamp, timezone offset).\n"
+"    - isodate: Date. Returns the date in ISO 8601 format.\n"
+"    - obfuscate: Any text. Returns the input text rendered as a sequence\n"
+"          of XML entities.\n"
+"    - person: Any text. Returns the text before an email address.\n"
+"    - rfc822date: Date. Returns a date using the same format used\n"
+"          in email headers.\n"
+"    - short: Changeset hash. Returns the short form of a changeset hash,\n"
+"          i.e. a 12-byte hexadecimal string.\n"
+"    - shortdate: Date. Returns a date like \"2006-09-18\".\n"
+"    - strip: Any text. Strips all leading and trailing whitespace.\n"
+"    - tabindent: Any text. Returns the text, with every line except the\n"
+"          first starting with a tab character.\n"
+"    - urlescape: Any text. Escapes all \"special\" characters. For example,\n"
+"          \"foo bar\" becomes \"foo%20bar\".\n"
+"    - user: Any text. Returns the user portion of an email address.\n"
+"    "
+msgstr ""
+
+msgid "Url Paths"
+msgstr "Percorsi url"
+
+msgid ""
+"\n"
+"    Valid URLs are of the form:\n"
+"\n"
+"      local/filesystem/path (or file://local/filesystem/path)\n"
+"      http://[user[:pass]@]host[:port]/[path]\n"
+"      https://[user[:pass]@]host[:port]/[path]\n"
+"      ssh://[user[:pass]@]host[:port]/[path]\n"
+"\n"
+"    Paths in the local filesystem can either point to Mercurial\n"
+"    repositories or to bundle files (as created by 'hg bundle' or\n"
+"    'hg incoming --bundle').\n"
+"\n"
+"    An optional identifier after # indicates a particular branch, tag,\n"
+"    or changeset to use from the remote repository.\n"
+"\n"
+"    Some features, such as pushing to http:// and https:// URLs are\n"
+"    only possible if the feature is explicitly enabled on the\n"
+"    remote Mercurial server.\n"
+"\n"
+"    Some notes about using SSH with Mercurial:\n"
+"    - SSH requires an accessible shell account on the destination machine\n"
+"      and a copy of hg in the remote path or specified with as remotecmd.\n"
+"    - path is relative to the remote user's home directory by default.\n"
+"      Use an extra slash at the start of a path to specify an absolute "
+"path:\n"
+"        ssh://example.com//tmp/repository\n"
+"    - Mercurial doesn't use its own compression via SSH; the right thing\n"
+"      to do is to configure it in your ~/.ssh/config, e.g.:\n"
+"        Host *.mylocalnetwork.example.com\n"
+"          Compression no\n"
+"        Host *\n"
+"          Compression yes\n"
+"      Alternatively specify \"ssh -C\" as your ssh command in your hgrc or\n"
+"      with the --ssh command line option.\n"
+"\n"
+"    These urls can all be stored in your hgrc with path aliases under the\n"
+"    [paths] section like so:\n"
+"    [paths]\n"
+"    alias1 = URL1\n"
+"    alias2 = URL2\n"
+"    ...\n"
+"\n"
+"    You can then use the alias for any command that uses a url (for example\n"
+"    'hg pull alias1' would pull from the 'alias1' path).\n"
+"\n"
+"    Two path aliases are special because they are used as defaults\n"
+"    when you do not provide the url to a command:\n"
+"\n"
+"    default:\n"
+"      When you create a repository with hg clone, the clone command saves\n"
+"      the location of the source repository as the new repository's\n"
+"      'default' path. This is then used when you omit path from push-\n"
+"      and pull-like commands (including in and out).\n"
+"\n"
+"    default-push:\n"
+"      The push command will look for a path named 'default-push', and\n"
+"      prefer it over 'default' if both are defined.\n"
+"    "
+msgstr ""
+
+#, python-format
 msgid "destination directory: %s\n"
 msgstr "directory di destinazione: %s\n"
 
+#, python-format
 msgid "destination '%s' already exists"
 msgstr "la destinazione '%s' esiste già"
 
 msgid ""
 "src repository does not support revision lookup and so doesn't support clone "
 "by revision"
 msgstr ""
 
 msgid "clone from remote to remote not supported"
 msgstr "clone da remoto a remoto non supportato"
 
 msgid "updating working directory\n"
 msgstr "sto aggiornando la directory di lavoro\n"
 
 msgid "updated"
-msgstr "aggiornato"
+msgstr "aggiornati"
 
 msgid "merged"
 msgstr "merge"
 
 msgid "removed"
-msgstr "rimosso"
+msgstr "rimossi"
 
 msgid "unresolved"
-msgstr "non risolto"
-
+msgstr "non risolti"
+
+#, python-format
 msgid "%d files %s"
 msgstr "%d file %s"
 
 msgid "use 'hg resolve' to retry unresolved file merges\n"
 msgstr "usa 'hg resolve' per riprovare i merge sui file non risolti\n"
 
 msgid "(branch merge, don't forget to commit)\n"
 msgstr "(merge su branch, non dimenticare di effettuare il commit)\n"
 
+#, python-format
 msgid "error reading %s/.hg/hgrc: %s\n"
 msgstr "errore di lettura di %s/.hg/hgrc: %s\n"
 
 msgid "SSL support is unavailable"
 msgstr "Supporto SSL non disponibile"
 
 msgid "IPv6 not available on this system"
 msgstr "IPv6 non disponibile su questo sistema"
 
+#, python-format
 msgid "cannot start server at '%s:%d': %s"
 msgstr "impossibile avviare il server a '%s:%d': %s"
 
+#, python-format
 msgid "calling hook %s: %s\n"
 msgstr "sto invocando l'hook %s: %s\n"
 
+#, python-format
 msgid "%s hook is invalid (\"%s\" not in a module)"
 msgstr "l'hook %s non è valido (\"%s\" non in un modulo)"
 
+#, python-format
 msgid "%s hook is invalid (import of \"%s\" failed)"
 msgstr ""
 
+#, python-format
 msgid "%s hook is invalid (\"%s\" is not defined)"
 msgstr ""
 
+#, python-format
 msgid "%s hook is invalid (\"%s\" is not callable)"
 msgstr ""
 
+#, python-format
 msgid "error: %s hook failed: %s\n"
 msgstr ""
 
+#, python-format
 msgid "error: %s hook raised an exception: %s\n"
 msgstr ""
 
+#, python-format
 msgid "%s hook failed"
 msgstr ""
 
+#, python-format
 msgid "warning: %s hook failed\n"
 msgstr ""
 
+#, python-format
 msgid "running hook %s: %s\n"
 msgstr ""
 
+#, python-format
 msgid "%s hook %s"
 msgstr ""
 
+#, python-format
 msgid "warning: %s hook %s\n"
 msgstr ""
 
 msgid "connection ended unexpectedly"
-msgstr ""
-
+msgstr "connessione terminata inaspettatamente"
+
+#, python-format
 msgid "unsupported URL component: \"%s\""
-msgstr ""
-
+msgstr "componente URL non supportato: \"%s\""
+
+#, python-format
 msgid "using %s\n"
-msgstr ""
-
+msgstr "sto usando %s\n"
+
+#, python-format
 msgid "capabilities: %s\n"
-msgstr ""
+msgstr "funzionalità: %s\n"
 
 msgid "operation not supported over http"
-msgstr ""
-
+msgstr "operazione non supportata su http"
+
+#, python-format
 msgid "sending %s command\n"
-msgstr ""
-
+msgstr "sto inviando il comando %s\n"
+
+#, python-format
 msgid "sending %s bytes\n"
-msgstr ""
+msgstr "sto inviando %s byte\n"
 
 msgid "authorization failed"
-msgstr ""
-
+msgstr "autorizzazione fallita"
+
+#, python-format
 msgid "http error while sending %s command\n"
-msgstr ""
+msgstr "errore http durante l'invio del comando %s\n"
 
 msgid "http error, possibly caused by proxy setting"
-msgstr ""
-
+msgstr "errore http, probabilmente causato dalle impostazioni del proxy"
+
+#, python-format
 msgid "real URL is %s\n"
-msgstr ""
-
+msgstr "il vero URL è %s\n"
+
+#, python-format
 msgid "Requested URL: '%s'\n"
-msgstr ""
-
+msgstr "URL richiesto: '%s'\n"
+
+#, python-format
 msgid "'%s' does not appear to be an hg repository"
-msgstr ""
-
+msgstr "'%s' non sembra essere un repository hg"
+
+#, python-format
 msgid "'%s' sent a broken Content-Type header (%s)"
-msgstr ""
-
+msgstr "'%s' ha inviato un header Content-Type rotto (%s)"
+
+#, python-format
 msgid "'%s' uses newer protocol %s"
 msgstr ""
 
 msgid "look up remote revision"
 msgstr ""
 
 msgid "unexpected response:"
-msgstr ""
+msgstr "risposta inattesa: "
 
 msgid "look up remote changes"
 msgstr ""
 
 msgid "push failed (unexpected response):"
-msgstr ""
-
+msgstr "push fallito (risposta inattesa):"
+
+#, python-format
 msgid "push failed: %s"
-msgstr ""
+msgstr "push fallito: %s"
 
 msgid "Python support for SSL and HTTPS is not installed"
-msgstr ""
+msgstr "Supporto per Python per SSL e HTTPS non installato"
 
 msgid "cannot create new http repository"
-msgstr ""
-
+msgstr "impossibile creare un nuovo repository http"
+
+#, python-format
 msgid "%s: ignoring invalid syntax '%s'\n"
 msgstr ""
 
+#, python-format
 msgid "skipping unreadable ignore file '%s': %s\n"
-msgstr ""
-
+msgstr "sto saltando file ignore non leggibile '%s': %s\n"
+
+#, python-format
 msgid "repository %s not found"
 msgstr "repository %s non trovato"
 
+#, python-format
 msgid "repository %s already exists"
 msgstr ""
 
+#, python-format
 msgid "requirement '%s' not supported"
-msgstr ""
-
+msgstr "requisito '%s' non supportato"
+
+#, python-format
 msgid "%r cannot be used in a tag name"
 msgstr ""
 
 msgid "working copy of .hgtags is changed (please commit .hgtags manually)"
 msgstr ""
-
+"la copia di lavoro di .hgtags è cambiata (si prega di effettuare il commit "
+"manuale di .hgtags)"
+
+#, python-format
 msgid "%s, line %s: %s\n"
-msgstr ""
+msgstr "%s, linea %s: %s\n"
 
 msgid "cannot parse entry"
-msgstr ""
-
+msgstr "impossibile parsificare la entry"
+
+#, python-format
 msgid "node '%s' is not well formed"
-msgstr ""
-
+msgstr "il nodo '%s' non è ben formato"
+
+#, python-format
 msgid "tag '%s' refers to unknown node"
-msgstr ""
-
+msgstr "la tag '%s' si riferisce ad un nodo sconosciuto"
+
+#, python-format
 msgid "unknown revision '%s'"
-msgstr ""
-
+msgstr "revisione sconosciuta '%s'"
+
+#, python-format
 msgid "filtering %s through %s\n"
-msgstr ""
+msgstr "sto filtrando %s attraverso %s\n"
 
 msgid "journal already exists - run hg recover"
-msgstr ""
+msgstr "il journal esiste già - eseguire hg recover"
 
 msgid "rolling back interrupted transaction\n"
-msgstr ""
+msgstr "sto effettuando il rollback della transazione interrotta\n"
 
 msgid "no interrupted transaction available\n"
-msgstr ""
+msgstr "nessuna transazione interrotta disponibile\n"
 
 msgid "rolling back last transaction\n"
-msgstr ""
-
+msgstr "sto effettuando il rollback dell'ultima transazione\n"
+
+#, python-format
 msgid "Named branch could not be reset, current branch still is: %s\n"
 msgstr ""
 
 msgid "no rollback information available\n"
-msgstr ""
-
+msgstr "nessuna informazione disponibile per il rollback\n"
+
+#, python-format
 msgid "waiting for lock on %s held by %r\n"
-msgstr ""
-
+msgstr "sto aspettando il lock su %s mantenuto da %r\n"
+
+#, python-format
 msgid "repository %s"
-msgstr ""
-
+msgstr "repository·%s"
+
+#, python-format
 msgid "working directory of %s"
-msgstr ""
-
+msgstr "directory di lavoro di %s"
+
+#, python-format
 msgid " %s: searching for copy revision for %s\n"
 msgstr ""
 
+#, python-format
 msgid " %s: copy %s:%s\n"
 msgstr ""
 
 msgid "cannot partially commit a merge (do not specify files or patterns)"
 msgstr ""
 
+#, python-format
 msgid "%s not tracked!\n"
-msgstr ""
+msgstr "%s non è tracciato!\n"
 
 msgid "unresolved merge conflicts (see hg resolve)"
 msgstr ""
 
-msgid "closing the default branch is invalid"
-msgstr ""
-
 msgid "nothing changed\n"
-msgstr ""
-
+msgstr "nulla è cambiato\n"
+
+#, python-format
 msgid "trouble committing %s!\n"
 msgstr ""
 
 msgid "HG: Enter commit message.  Lines beginning with 'HG:' are removed."
 msgstr ""
 
 msgid "empty commit message"
-msgstr ""
-
+msgstr "messaggio di commit vuoto"
+
+#, python-format
 msgid "%s does not exist!\n"
-msgstr ""
-
+msgstr "%s non esiste!\n"
+
+#, python-format
 msgid ""
 "%s: files over 10MB may cause memory and performance problems\n"
 "(use 'hg revert %s' to unadd the file)\n"
 msgstr ""
-
+"%s: file oltre i 10MB potrebbero causare problemi di memoria\n"
+"e performance (usare 'hg revert %s' per annullare l'aggiunta\n"
+"del file)\n"
+
+#, python-format
 msgid "%s not added: only files and symlinks supported currently\n"
 msgstr ""
-
+"%s non aggiunto: attualmente solo file e link simbolici sono supportati\n"
+
+#, python-format
 msgid "%s already tracked!\n"
-msgstr ""
-
+msgstr "%s è già tracciato!\n"
+
+#, python-format
 msgid "%s not added!\n"
-msgstr ""
-
+msgstr "%s non aggiunto!\n"
+
+#, python-format
 msgid "%s still exists!\n"
 msgstr ""
 
+#, python-format
 msgid "%s not removed!\n"
 msgstr ""
 
+#, python-format
 msgid "copy failed: %s is not a file or a symbolic link\n"
 msgstr ""
 
 msgid "searching for changes\n"
-msgstr ""
-
+msgstr "sto cercando modifiche\n"
+
+#, python-format
 msgid "examining %s:%s\n"
 msgstr ""
 
 msgid "branch already found\n"
-msgstr ""
-
+msgstr "branch già trovata\n"
+
+#, python-format
 msgid "found incomplete branch %s:%s\n"
-msgstr ""
-
+msgstr "trovata branch incompleta %s:%s\n"
+
+#, python-format
 msgid "found new changeset %s\n"
-msgstr ""
-
+msgstr "trovato nuovo changeset %s\n"
+
+#, python-format
 msgid "request %d: %s\n"
 msgstr ""
 
+#, python-format
 msgid "received %s:%s\n"
 msgstr ""
 
+#, python-format
 msgid "narrowing %d:%d %s\n"
 msgstr ""
 
+#, python-format
 msgid "found new branch changeset %s\n"
 msgstr ""
 
+#, python-format
 msgid "narrowed branch search to %s:%s\n"
 msgstr ""
 
 msgid "already have changeset "
 msgstr ""
 
 msgid "warning: repository is unrelated\n"
 msgstr ""
 
 msgid "repository is unrelated"
-msgstr ""
+msgstr "il repository non è imparentato"
 
 msgid "found new changesets starting at "
-msgstr ""
-
+msgstr "trovati nuovi changeset a partire da "
+
+#, python-format
 msgid "%d total queries\n"
-msgstr ""
+msgstr "%d query totali\n"
 
 msgid "common changesets up to "
-msgstr ""
+msgstr "changeset comuni fino a "
 
 msgid "requesting all changes\n"
-msgstr ""
+msgstr "sto richiedendo tutte le modifiche\n"
 
 msgid ""
 "Partial pull cannot be done because other repository doesn't support "
 "changegroupsubset."
 msgstr ""
 
 msgid "abort: push creates new remote heads!\n"
-msgstr ""
+msgstr "abortito: push crea nuove head remote!\n"
 
 msgid "(did you forget to merge? use push -f to force)\n"
 msgstr ""
+"(ti sei dimenticato di effettuare il merge? usare push -f per forzare)\n"
 
 msgid "note: unsynced remote changes!\n"
-msgstr ""
-
+msgstr "nota: modifiche remote non sincronizzate!\n"
+
+#, python-format
 msgid "%d changesets found\n"
-msgstr ""
+msgstr "%d changeset trovati\n"
 
 msgid "list of changesets:\n"
-msgstr ""
-
+msgstr "elenco dei changeset:\n"
+
+#, python-format
 msgid "empty or missing revlog for %s"
-msgstr ""
-
+msgstr "revlog vuoto o mancante per %s"
+
+#, python-format
 msgid "add changeset %s\n"
-msgstr ""
+msgstr "aggiungo changeset %s\n"
 
 msgid "adding changesets\n"
-msgstr ""
+msgstr "sto aggiungendo i changeset\n"
 
 msgid "received changelog group is empty"
-msgstr ""
+msgstr "il gruppo di changelog ricevuto è vuoto"
 
 msgid "adding manifests\n"
-msgstr ""
+msgstr "sto aggiungendo i manifesti\n"
 
 msgid "adding file changes\n"
-msgstr ""
-
+msgstr "sto aggiungendo le modifiche ai file\n"
+
+#, python-format
 msgid "adding %s revisions\n"
-msgstr ""
+msgstr "sto aggiungendo %s revisioni\n"
 
 msgid "received file revlog group is empty"
-msgstr ""
-
+msgstr "il gruppo di file revlog ricevuto è vuoto"
+
+#, python-format
 msgid " (%+d heads)"
-msgstr ""
-
+msgstr " (%+d head)"
+
+#, python-format
 msgid "added %d changesets with %d changes to %d files%s\n"
-msgstr ""
+msgstr "aggiunti %d changeset con %d modifiche a %d file%s\n"
 
 msgid "updating the branch cache\n"
-msgstr ""
+msgstr "sto aggiornando la cache delle branch\n"
 
 msgid "Unexpected response from remote server:"
-msgstr ""
+msgstr "Risposta inaspettata dal server remoto:"
 
 msgid "operation forbidden by server"
-msgstr ""
+msgstr "operazione vietata dal server"
 
 msgid "locking the remote repository failed"
-msgstr ""
+msgstr "lock del repository remoto fallito"
 
 msgid "the server sent an unknown error code"
-msgstr ""
+msgstr "il server ha inviato un codice d'errore sconosciuto"
 
 msgid "streaming all changes\n"
-msgstr ""
-
+msgstr "sto effettuando lo streaming di tutte le modifiche\n"
+
+#, python-format
 msgid "%d files to transfer, %s of data\n"
-msgstr ""
-
+msgstr "%d file da trasferire, %s di dati\n"
+
+#, python-format
 msgid "adding %s (%s)\n"
-msgstr ""
-
+msgstr "sto aggiungendo %s (%s)\n"
+
+#, python-format
 msgid "transferred %s in %.1f seconds (%s/sec)\n"
-msgstr ""
+msgstr "trasferiti %s in %.1f secondi (%s/sec)\n"
 
 msgid "no [smtp]host in hgrc - cannot send mail"
 msgstr ""
 
+#, python-format
 msgid "sending mail: smtp host %s, port %s\n"
 msgstr ""
 
 msgid "can't use TLS: Python SSL support not installed"
 msgstr ""
 
 msgid "(using tls)\n"
-msgstr ""
-
+msgstr "(sto usando tls)\n"
+
+#, python-format
 msgid "(authenticating to mail server as %s)\n"
 msgstr ""
 
+#, python-format
 msgid "sending mail: %s\n"
-msgstr ""
+msgstr "sto inviando la mail: %s\n"
 
 msgid "smtp specified as email transport, but no smtp host configured"
 msgstr ""
 
+#, python-format
 msgid "%r specified as email transport, but not in PATH"
 msgstr ""
 
+#, python-format
 msgid "ignoring invalid sendcharset: %s\n"
 msgstr ""
 
+#, python-format
 msgid "invalid email address: %s"
 msgstr ""
 
+#, python-format
 msgid "invalid local address: %s"
 msgstr ""
 
 msgid "'\\n' and '\\r' disallowed in filenames"
 msgstr ""
 
+#, python-format
 msgid "failed to remove %s from manifest"
 msgstr ""
 
+#, python-format
 msgid "diff context lines count must be an integer, not %r"
 msgstr ""
 
+#, python-format
 msgid ""
 "untracked file in working directory differs from file in requested revision: "
 "'%s'"
 msgstr ""
 
+#, python-format
 msgid "case-folding collision between %s and %s"
 msgstr ""
 
 msgid "resolving manifests\n"
 msgstr "sto risolvendo i manifesti\n"
 
+#, python-format
 msgid " overwrite %s partial %s\n"
 msgstr "sovrascrivi %s parziale %s\n"
 
+#, python-format
 msgid " ancestor %s local %s remote %s\n"
 msgstr "antenato %s locale %s remoto %s\n"
 
+#, python-format
 msgid ""
 " conflicting flags for %s\n"
 "(n)one, e(x)ec or sym(l)ink?"
 msgstr ""
 
+#, python-format
 msgid ""
 " local changed %s which remote deleted\n"
 "use (c)hanged version or (d)elete?"
 msgstr ""
 
 msgid "[cd]"
 msgstr ""
 
 msgid "c"
 msgstr ""
 
+#, python-format
 msgid ""
 "remote changed %s which local deleted\n"
 "use (c)hanged version or leave (d)eleted?"
 msgstr ""
 
+#, python-format
 msgid "preserving %s for resolve of %s\n"
 msgstr ""
 
+#, python-format
 msgid "update failed to remove %s: %s!\n"
 msgstr ""
 
+#, python-format
 msgid "getting %s\n"
-msgstr ""
-
+msgstr "sto ottenendo %s\n"
+
+#, python-format
 msgid "moving %s to %s\n"
-msgstr ""
-
+msgstr "sto spostando %s in %s\n"
+
+#, python-format
 msgid "getting %s to %s\n"
-msgstr ""
-
+msgstr "sto ottenendo %s in %s\n"
+
+#, python-format
 msgid "warning: detected divergent renames of %s to:\n"
 msgstr ""
 
+#, python-format
 msgid "branch %s not found"
-msgstr ""
+msgstr "branch %s non trovata"
 
 msgid "can't merge with ancestor"
-msgstr ""
+msgstr "impossibile fare merge con un antenato"
 
 msgid "nothing to merge (use 'hg update' or check 'hg heads')"
 msgstr ""
+"niente di cui effettuare il merge (usare 'hg update' ocontrollare 'hg heads')"
 
 msgid "crosses branches (use 'hg merge' or 'hg update -C' to discard changes)"
 msgstr ""
 
 msgid "crosses branches (use 'hg merge' or 'hg update -C')"
 msgstr ""
 
 msgid "crosses named branches (use 'hg update -C' to discard changes)"
 msgstr ""
 
+#, python-format
 msgid "cannot create %s: destination already exists"
-msgstr ""
-
+msgstr "impossibile creare %s: la destinazione esiste già"
+
+#, python-format
 msgid "cannot create %s: unable to create destination directory"
-msgstr ""
-
+msgstr "impossibile creare %s: impossibile creare la directory di destinazione"
+
+#, python-format
 msgid "found patch at byte %d\n"
 msgstr ""
 
 msgid "patch generated by hg export\n"
-msgstr ""
-
+msgstr "patch generata da hg export\n"
+
+#, python-format
 msgid "unable to find '%s' for patching\n"
 msgstr ""
 
+#, python-format
 msgid "patching file %s\n"
-msgstr ""
-
+msgstr "sto applicando una patch al file %s\n"
+
+#, python-format
 msgid "%d out of %d hunks FAILED -- saving rejects to file %s\n"
 msgstr ""
 
+#, python-format
 msgid "bad hunk #%d %s (%d %d %d %d)"
 msgstr ""
 
+#, python-format
 msgid "file %s already exists\n"
 msgstr ""
 
+#, python-format
 msgid "Hunk #%d succeeded at %d %s(offset %d %s).\n"
 msgstr ""
 
+#, python-format
 msgid "Hunk #%d FAILED at %d\n"
 msgstr ""
 
+#, python-format
 msgid "bad hunk #%d"
 msgstr ""
 
+#, python-format
 msgid "bad hunk #%d old text line %d"
 msgstr ""
 
 msgid "could not extract binary patch"
 msgstr ""
 
+#, python-format
 msgid "binary patch is %d bytes, not %d"
 msgstr ""
 
+#, python-format
 msgid "unable to strip away %d dirs from %s"
 msgstr ""
 
 msgid "undefined source and destination files"
 msgstr ""
 
+#, python-format
 msgid "malformed patch %s %s"
 msgstr ""
 
+#, python-format
 msgid "unsupported parser state: %s"
 msgstr ""
 
+#, python-format
 msgid "patch command failed: %s"
-msgstr ""
-
+msgstr "comando patch fallito: %s"
+
+#, python-format
 msgid "no valid hunks found; trying with %r instead\n"
 msgstr ""
 
+#, python-format
 msgid "saving bundle to %s\n"
-msgstr ""
+msgstr "sto salvando il bundle in %s\n"
 
 msgid "adding branch\n"
 msgstr ""
 
+#, python-format
 msgid "cannot %s; remote repository does not support the %r capability"
-msgstr ""
-
+msgstr "%s impossibile; il repository remoto non supporta la funzionalità %r"
+
+#, python-format
 msgid "unknown compression type %r"
 msgstr ""
 
+#, python-format
 msgid "index %s unknown flags %#04x for format v0"
 msgstr ""
 
+#, python-format
 msgid "index %s unknown flags %#04x for revlogng"
 msgstr ""
 
+#, python-format
 msgid "index %s unknown format %d"
 msgstr ""
 
 msgid "no node"
-msgstr ""
+msgstr "nessun nodo"
 
 msgid "ambiguous identifier"
-msgstr ""
+msgstr "identificatore ambiguo"
 
 msgid "no match found"
 msgstr ""
 
+#, python-format
 msgid "incompatible revision flag %x"
 msgstr ""
 
+#, python-format
 msgid "%s not found in the transaction"
 msgstr ""
 
 msgid "unknown base"
-msgstr ""
+msgstr "base sconosciuta"
 
 msgid "consistency error adding group"
 msgstr ""
 
+#, python-format
 msgid "%s looks like a binary file."
 msgstr ""
 
 msgid "can only specify two labels."
-msgstr ""
+msgstr "possibile specificare solo due etichette."
 
 msgid "warning: conflicts during merge.\n"
-msgstr ""
-
+msgstr "attenzione: conflitti durante il merge.\n"
+
+#, python-format
 msgid "couldn't parse location %s"
-msgstr ""
+msgstr "non è stato possibile parsificare la posizione %s"
 
 msgid "could not create remote repo"
-msgstr ""
+msgstr "non è stato possibile creare il repository remoto"
 
 msgid "remote: "
-msgstr ""
+msgstr "remoto: "
 
 msgid "no suitable response from remote hg"
-msgstr ""
-
+msgstr "nessuna risposta accettabile dall'hg remoto"
+
+#, python-format
 msgid "push refused: %s"
-msgstr ""
+msgstr "push rifiutato: %s"
 
 msgid "unsynced changes"
-msgstr ""
+msgstr "modifiche non sincronizzate"
 
 msgid "cannot lock static-http repository"
-msgstr ""
+msgstr "impossibile bloccare il repository http statico"
 
 msgid "cannot create new static-http repository"
-msgstr ""
-
+msgstr "impossibile creare un nuovo repository http statico"
+
+#, python-format
 msgid "invalid entry in fncache, line %s"
-msgstr ""
+msgstr "voce non valida in fncache, linea %s"
 
 msgid "scanning\n"
-msgstr ""
-
+msgstr "sto effettuando la scansione\n"
+
+#, python-format
 msgid "%d files, %d bytes to transfer\n"
 msgstr ""
 
+#, python-format
 msgid "sending %s (%d bytes)\n"
-msgstr ""
+msgstr "sto inviando %s (%d byte)\n"
 
 msgid "unmatched quotes"
 msgstr ""
 
+#, python-format
 msgid "style not found: %s"
-msgstr ""
-
+msgstr "stile non trovato: %s"
+
+#, python-format
 msgid "%s:%s: parse error"
 msgstr ""
 
+#, python-format
 msgid "template file %s: %s"
 msgstr ""
 
+#, python-format
 msgid "Error expanding '%s%%%s'"
 msgstr ""
 
 msgid "transaction abort!\n"
 msgstr "transazione abortita!\n"
 
+#, python-format
 msgid "failed to truncate %s\n"
 msgstr ""
 
 msgid "rollback completed\n"
 msgstr "rollback completato\n"
 
+#, python-format
 msgid "Not trusting file %s from untrusted user %s, group %s\n"
 msgstr ""
 
+#, python-format
 msgid ""
 "Failed to parse %s\n"
 "%s"
 msgstr ""
 "Fallita la parsificazione di %s\n"
 "%s"
 
+#, python-format
 msgid "Ignored: %s\n"
 msgstr "Ignorato: %s\n"
 
+#, python-format
 msgid "unable to open %s: %s"
 msgstr "impossibile aprire %s: %s"
 
+#, python-format
 msgid ""
 "failed to parse %s\n"
 "%s"
 msgstr ""
 "fallita la parsificazione di %s\n"
 "%s"
 
+#, python-format
 msgid ""
 "Error in configuration section [%s] parameter '%s':\n"
 "%s"
 msgstr ""
 "Errore nella sezione di configurazione [%s] parametro '%s':\n"
 "%s"
 
+#, python-format
 msgid "Ignoring untrusted configuration option %s.%s = %s\n"
 msgstr "Ignoro l'opzione di configurazione non affidabile %s.%s = %s\n"
 
+#, python-format
 msgid ""
 "Error in configuration section [%s]:\n"
 "%s"
 msgstr ""
 "Errore nella sezione di configurazione [%s]:\n"
 "%s"
 
 msgid "enter a commit username:"
 msgstr "inserire uno username per il commit:"
 
+#, python-format
 msgid "No username found, using '%s' instead\n"
 msgstr "Nessuno username trovato, uso '%s' invece\n"
 
 msgid "Please specify a username."
 msgstr "Si prega di specificare uno username."
 
+#, python-format
 msgid "username %s contains a newline\n"
 msgstr "lo username %s contiene un carattere di fine riga\n"
 
 msgid "unrecognized response\n"
 msgstr "risposta non riconosciuta\n"
 
 msgid "response expected"
 msgstr "risposta attesa"
@@ -8461,216 +9149,271 @@ msgid "edit failed"
 msgstr "modifica fallita"
 
 msgid "http authorization required"
 msgstr "autorizzazione http richiesta"
 
 msgid "http authorization required\n"
 msgstr "autorizzazione http richiesta\n"
 
+#, python-format
 msgid "realm: %s\n"
 msgstr "reame: %s\n"
 
+#, python-format
 msgid "user: %s\n"
 msgstr "utente: %s\n"
 
 msgid "user:"
 msgstr "utente:"
 
+#, python-format
 msgid "proxying through http://%s:%s\n"
 msgstr "usando proxy attraverso http://%s:%s\n"
 
+#, python-format
 msgid "http auth: user %s, password %s\n"
 msgstr "autenticazione http: utente %s, password %s\n"
 
+#, python-format
 msgid "%s, please check your locale settings"
 msgstr "%s, si prega di controllare le impostazioni di localizzazione"
 
+#, python-format
 msgid "command '%s' failed: %s"
 msgstr "comando '%s' fallito: %s"
 
+#, python-format
 msgid "path contains illegal component: %s"
 msgstr "il percorso contiene un componente non consentito: %s"
 
+#, python-format
 msgid "path %r is inside repo %r"
 msgstr "il percorso %r  all'interno del repository %r"
 
+#, python-format
 msgid "path %r traverses symbolic link %r"
 msgstr "il percorso %r attraversa il link simbolico %r"
 
 msgid "Hardlinks not supported"
 msgstr "Hardlink non supportati"
 
 msgid "user name not available - set USERNAME environment variable"
 msgstr ""
 "nome utente non disponibile - impostare la variabile d'ambiente USERNAME"
 
+#, python-format
 msgid "exited with status %d"
 msgstr "uscito con status %d"
 
+#, python-format
 msgid "killed by signal %d"
 msgstr "ucciso dal segnale %d"
 
+#, python-format
 msgid "stopped by signal %d"
 msgstr "terminato dal segnale %d"
 
 msgid "invalid exit code"
 msgstr "codice d'uscita non valido"
 
+#, python-format
 msgid "could not symlink to %r: %s"
 msgstr "impossibile creare un link simbolico a %r: %s"
 
+#, python-format
 msgid "invalid date: %r "
 msgstr "data non valida: %r "
 
+#, python-format
 msgid "date exceeds 32 bits: %d"
 msgstr "la data supera i 32 bit: %d"
 
+#, python-format
 msgid "impossible time zone offset: %d"
 msgstr "fuso orario impossibile: %d"
 
+#, python-format
 msgid "invalid day spec: %s"
 msgstr ""
 
+#, python-format
 msgid "%.0f GB"
 msgstr "%.0f GB"
 
+#, python-format
 msgid "%.1f GB"
 msgstr "%.1f GB"
 
+#, python-format
 msgid "%.2f GB"
 msgstr "%.2f GB"
 
+#, python-format
 msgid "%.0f MB"
 msgstr "%.0f MB"
 
+#, python-format
 msgid "%.1f MB"
 msgstr "%.1f MB"
 
+#, python-format
 msgid "%.2f MB"
 msgstr "%.2f MB"
 
+#, python-format
 msgid "%.0f KB"
 msgstr "%.0f KB"
 
+#, python-format
 msgid "%.1f KB"
 msgstr "%.1f KB"
 
+#, python-format
 msgid "%.2f KB"
 msgstr "%.2f KB"
 
+#, python-format
 msgid "%.0f bytes"
 msgstr "%.0f byte"
 
 msgid "cannot verify bundle or remote repos"
 msgstr "impossibile verificare bundle o repository remoti"
 
 msgid "interrupted"
 msgstr "interrotto"
 
+#, python-format
 msgid "empty or missing %s"
 msgstr "%s vuoto o mancante"
 
+#, python-format
 msgid "data length off by %d bytes"
 msgstr ""
 
+#, python-format
 msgid "index contains %d extra bytes"
 msgstr "l'indice contiene %d extra byte"
 
+#, python-format
 msgid "warning: `%s' uses revlog format 1"
 msgstr "attenzione: `%s' usa il formato di revlog 1"
 
+#, python-format
 msgid "warning: `%s' uses revlog format 0"
 msgstr "attenzione: `%s' usa il formato di revlog 0"
 
+#, python-format
 msgid "rev %d point to %s changeset %d"
 msgstr "rev %d punta a %s changeset %d"
 
+#, python-format
 msgid " (expected %s)"
 msgstr "(atteso %s)"
 
+#, python-format
 msgid "unknown parent 1 %s of %s"
 msgstr "genitore 1 %s di %s sconosciuto"
 
+#, python-format
 msgid "unknown parent 2 %s of %s"
 msgstr "genitore 2 %s di %s sconosciuto"
 
+#, python-format
 msgid "checking parents of %s"
 msgstr "sto controllando i genitori di %s"
 
+#, python-format
 msgid "duplicate revision %d (%d)"
 msgstr "revisione duplicata %d (%d)"
 
+#, python-format
 msgid "repository uses revlog format %d\n"
 msgstr "il repository usa il formato di revlog %d\n"
 
 msgid "checking changesets\n"
 msgstr "sto controllando i changeset\n"
 
+#, python-format
 msgid "unpacking changeset %s"
 msgstr "sto spacchettando il changeset %s"
 
 msgid "checking manifests\n"
 msgstr "sto controllando i manifesti\n"
 
 msgid "file without name in manifest"
 msgstr "file senza nome nel manifesto"
 
+#, python-format
 msgid "reading manifest delta %s"
 msgstr "sto leggendo il delta del manifesto %s"
 
 msgid "crosschecking files in changesets and manifests\n"
 msgstr ""
 "sto facendo un controllo incrociato sui file nei changeset e nei manifesti\n"
 
+#, python-format
 msgid "changeset refers to unknown manifest %s"
 msgstr "il changeset si riferisce ad un manifesto sconosciuto %s"
 
 msgid "in changeset but not in manifest"
 msgstr "nel changeset ma non nel manifesto"
 
 msgid "in manifest but not in changeset"
 msgstr "nel manifesto ma non nel changeset"
 
 msgid "checking files\n"
 msgstr "sto controllando i file\n"
 
+#, python-format
 msgid "cannot decode filename '%s'"
 msgstr ""
 
 msgid "missing revlog!"
 msgstr "revlog mancante!"
 
+#, python-format
 msgid "%s not in manifests"
 msgstr "%s non è nei manifesti"
 
+#, python-format
 msgid "unpacked size is %s, %s expected"
 msgstr "la dimensione spacchettata è %s, attesa %s"
 
+#, python-format
 msgid "unpacking %s"
 msgstr "sto spacchettando %s"
 
+#, python-format
 msgid "empty or missing copy source revlog %s:%s"
 msgstr ""
 
+#, python-format
 msgid "warning: %s@%s: copy source revision is nullid %s:%s"
 msgstr ""
 
+#, python-format
 msgid "checking rename of %s"
 msgstr "sto controllando la rinomina di %s"
 
+#, python-format
 msgid "%s in manifests not found"
 msgstr "%s non trovato nei manifesti"
 
+#, python-format
 msgid "warning: orphan revlog '%s'"
 msgstr "attenzione: revlog '%s' orfano"
 
+#, python-format
 msgid "%d files, %d changesets, %d total revisions\n"
 msgstr "%d file, %d changeset, %d revisioni totali\n"
 
+#, python-format
 msgid "%d warnings encountered!\n"
 msgstr "%d warning incontrati!\n"
 
+#, python-format
 msgid "%d integrity errors encountered!\n"
 msgstr "%d errori di integrit incontrati!\n"
 
+#, python-format
 msgid "(first damaged changeset appears to be %d)\n"
 msgstr "(il primo changeset danneggiato sembra essere %d)\n"