Sun, 12 Aug 2012 12:50:29 +0200
Added support for AdBlock checksum checking when downloading a subscription to the web browser.
--- a/APIs/Python3/eric5.api Thu Aug 09 19:13:46 2012 +0200 +++ b/APIs/Python3/eric5.api Sun Aug 12 12:50:29 2012 +0200 @@ -1769,6 +1769,7 @@ eric5.Helpviewer.AdBlock.AdBlockRule.AdBlockRule.isElementHiding?4() eric5.Helpviewer.AdBlock.AdBlockRule.AdBlockRule.isEnabled?4() eric5.Helpviewer.AdBlock.AdBlockRule.AdBlockRule.isException?4() +eric5.Helpviewer.AdBlock.AdBlockRule.AdBlockRule.isHeader?4() eric5.Helpviewer.AdBlock.AdBlockRule.AdBlockRule.isInternalDisabled?4() eric5.Helpviewer.AdBlock.AdBlockRule.AdBlockRule.isSlow?4() eric5.Helpviewer.AdBlock.AdBlockRule.AdBlockRule.matchDomain?4(domain)
--- a/Documentation/Help/source.qhp Thu Aug 09 19:13:46 2012 +0200 +++ b/Documentation/Help/source.qhp Sun Aug 12 12:50:29 2012 +0200 @@ -1150,6 +1150,7 @@ <keyword name="AdBlockRule.isElementHiding" id="AdBlockRule.isElementHiding" ref="eric5.Helpviewer.AdBlock.AdBlockRule.html#AdBlockRule.isElementHiding" /> <keyword name="AdBlockRule.isEnabled" id="AdBlockRule.isEnabled" ref="eric5.Helpviewer.AdBlock.AdBlockRule.html#AdBlockRule.isEnabled" /> <keyword name="AdBlockRule.isException" id="AdBlockRule.isException" ref="eric5.Helpviewer.AdBlock.AdBlockRule.html#AdBlockRule.isException" /> + <keyword name="AdBlockRule.isHeader" id="AdBlockRule.isHeader" ref="eric5.Helpviewer.AdBlock.AdBlockRule.html#AdBlockRule.isHeader" /> <keyword name="AdBlockRule.isInternalDisabled" id="AdBlockRule.isInternalDisabled" ref="eric5.Helpviewer.AdBlock.AdBlockRule.html#AdBlockRule.isInternalDisabled" /> <keyword name="AdBlockRule.isSlow" id="AdBlockRule.isSlow" ref="eric5.Helpviewer.AdBlock.AdBlockRule.html#AdBlockRule.isSlow" /> <keyword name="AdBlockRule.matchDomain" id="AdBlockRule.matchDomain" ref="eric5.Helpviewer.AdBlock.AdBlockRule.html#AdBlockRule.matchDomain" /> @@ -1170,6 +1171,7 @@ <keyword name="AdBlockSubscription.__parseUrl" id="AdBlockSubscription.__parseUrl" ref="eric5.Helpviewer.AdBlock.AdBlockSubscription.html#AdBlockSubscription.__parseUrl" /> <keyword name="AdBlockSubscription.__populateCache" id="AdBlockSubscription.__populateCache" ref="eric5.Helpviewer.AdBlock.AdBlockSubscription.html#AdBlockSubscription.__populateCache" /> <keyword name="AdBlockSubscription.__rulesDownloaded" id="AdBlockSubscription.__rulesDownloaded" ref="eric5.Helpviewer.AdBlock.AdBlockSubscription.html#AdBlockSubscription.__rulesDownloaded" /> + <keyword name="AdBlockSubscription.__validateCheckSum" id="AdBlockSubscription.__validateCheckSum" ref="eric5.Helpviewer.AdBlock.AdBlockSubscription.html#AdBlockSubscription.__validateCheckSum" /> <keyword name="AdBlockSubscription.adBlockDisabledForUrl" id="AdBlockSubscription.adBlockDisabledForUrl" ref="eric5.Helpviewer.AdBlock.AdBlockSubscription.html#AdBlockSubscription.adBlockDisabledForUrl" /> <keyword name="AdBlockSubscription.addRule" id="AdBlockSubscription.addRule" ref="eric5.Helpviewer.AdBlock.AdBlockSubscription.html#AdBlockSubscription.addRule" /> <keyword name="AdBlockSubscription.allRules" id="AdBlockSubscription.allRules" ref="eric5.Helpviewer.AdBlock.AdBlockSubscription.html#AdBlockSubscription.allRules" />
--- a/Documentation/Source/eric5.Helpviewer.AdBlock.AdBlockRule.html Thu Aug 09 19:13:46 2012 +0200 +++ b/Documentation/Source/eric5.Helpviewer.AdBlock.AdBlockRule.html Sun Aug 12 12:50:29 2012 +0200 @@ -100,6 +100,9 @@ <td><a href="#AdBlockRule.isException">isException</a></td> <td>Public method to check, if the rule defines an exception.</td> </tr><tr> +<td><a href="#AdBlockRule.isHeader">isHeader</a></td> +<td>Public method to check, if this is a header.</td> +</tr><tr> <td><a href="#AdBlockRule.isInternalDisabled">isInternalDisabled</a></td> <td>Public method to check, if this rule was disabled internally.</td> </tr><tr> @@ -272,6 +275,16 @@ <dd> flag indicating an exception (boolean) </dd> +</dl><a NAME="AdBlockRule.isHeader" ID="AdBlockRule.isHeader"></a> +<h4>AdBlockRule.isHeader</h4> +<b>isHeader</b>(<i></i>) +<p> + Public method to check, if this is a header. +</p><dl> +<dt>Returns:</dt> +<dd> +flag indicating a header (boolean) +</dd> </dl><a NAME="AdBlockRule.isInternalDisabled" ID="AdBlockRule.isInternalDisabled"></a> <h4>AdBlockRule.isInternalDisabled</h4> <b>isInternalDisabled</b>(<i></i>)
--- a/Documentation/Source/eric5.Helpviewer.AdBlock.AdBlockSubscription.html Thu Aug 09 19:13:46 2012 +0200 +++ b/Documentation/Source/eric5.Helpviewer.AdBlock.AdBlockSubscription.html Sun Aug 12 12:50:29 2012 +0200 @@ -85,6 +85,9 @@ <td><a href="#AdBlockSubscription.__rulesDownloaded">__rulesDownloaded</a></td> <td>Private slot to deal with the downloaded rules.</td> </tr><tr> +<td><a href="#AdBlockSubscription.__validateCheckSum">__validateCheckSum</a></td> +<td>Private method to check the subscription file's checksum.</td> +</tr><tr> <td><a href="#AdBlockSubscription.adBlockDisabledForUrl">adBlockDisabledForUrl</a></td> <td>Public method to check, if AdBlock is disabled for the given URL.</td> </tr><tr> @@ -212,7 +215,24 @@ <b>__rulesDownloaded</b>(<i></i>) <p> Private slot to deal with the downloaded rules. -</p><a NAME="AdBlockSubscription.adBlockDisabledForUrl" ID="AdBlockSubscription.adBlockDisabledForUrl"></a> +</p><a NAME="AdBlockSubscription.__validateCheckSum" ID="AdBlockSubscription.__validateCheckSum"></a> +<h4>AdBlockSubscription.__validateCheckSum</h4> +<b>__validateCheckSum</b>(<i>fileName</i>) +<p> + Private method to check the subscription file's checksum. +</p><dl> +<dt><i>fileName</i></dt> +<dd> +name of the file containing the subscription (string) +</dd> +</dl><dl> +<dt>Returns:</dt> +<dd> +flag indicating a valid file (boolean). A file is considered + valid, if the checksum is OK or the file does not contain a + checksum (i.e. cannot be checked). +</dd> +</dl><a NAME="AdBlockSubscription.adBlockDisabledForUrl" ID="AdBlockSubscription.adBlockDisabledForUrl"></a> <h4>AdBlockSubscription.adBlockDisabledForUrl</h4> <b>adBlockDisabledForUrl</b>(<i>url</i>) <p>
--- a/Helpviewer/AdBlock/AdBlockRule.py Thu Aug 09 19:13:46 2012 +0200 +++ b/Helpviewer/AdBlock/AdBlockRule.py Sun Aug 12 12:50:29 2012 +0200 @@ -118,7 +118,7 @@ parsedLine = self.__filter # empty rule or just a comment - if not parsedLine.strip() or parsedLine.startswith("!"): + if not parsedLine.strip() or parsedLine.startswith(("!", "[Adblock")): self.__enabled = False return @@ -505,6 +505,14 @@ """ return self.__filter.startswith("!") + def isHeader(self): + """ + Public method to check, if this is a header. + + @return flag indicating a header (boolean) + """ + return self.__filter.startswith("[Adblock") + def isSlow(self): """ Public method to check, if this is a slow rule.
--- a/Helpviewer/AdBlock/AdBlockSubscription.py Thu Aug 09 19:13:46 2012 +0200 +++ b/Helpviewer/AdBlock/AdBlockSubscription.py Sun Aug 12 12:50:29 2012 +0200 @@ -8,6 +8,9 @@ """ import os +import re +import hashlib +import base64 from PyQt4.QtCore import pyqtSignal, Qt, QObject, QByteArray, QDateTime, QUrl, \ QCryptographicHash, QFile, QIODevice, QTextStream @@ -68,6 +71,10 @@ self.__documentRules = [] self.__elemhideRules = [] + self.__checksumRe = re.compile(r"""^\s*!\s*checksum[\s\-:]+([\w\+\/=]+).*\n""", + re.IGNORECASE | re.MULTILINE) + + self.__parseUrl(url) def __parseUrl(self, url): @@ -244,7 +251,7 @@ if not header.startswith("[Adblock"): E5MessageBox.warning(None, self.trUtf8("Load subscription rules"), - self.trUtf8("""Adblock file '{0}' does not start""" + self.trUtf8("""AdBlock file '{0}' does not start""" """ with [Adblock.""")\ .format(fileName)) f.close() @@ -252,11 +259,14 @@ self.__lastUpdate = QDateTime() else: self.__rules = [] + self.__rules.append(AdBlockRule(header, self)) while not textStream.atEnd(): line = textStream.readLine() self.__rules.append(AdBlockRule(line, self)) self.__populateCache() self.changed.emit() + elif not fileName.endswith("_custom"): + self.__lastUpdate = QDateTime() self.checkForUpdate() @@ -317,6 +327,7 @@ return fileName = self.rulesFileName() + QFile.remove(fileName) f = QFile(fileName) if not f.open(QIODevice.ReadWrite): E5MessageBox.warning(None, @@ -325,10 +336,59 @@ .file(fileName)) return f.write(response) + f.close() self.__lastUpdate = QDateTime.currentDateTime() - self.__loadRules() + if self.__validateCheckSum(fileName): + self.__loadRules() + else: + QFile.remove(fileName) self.__downloading = None + def __validateCheckSum(self, fileName): + """ + Private method to check the subscription file's checksum. + + @param fileName name of the file containing the subscription (string) + @return flag indicating a valid file (boolean). A file is considered + valid, if the checksum is OK or the file does not contain a + checksum (i.e. cannot be checked). + """ + try: + f = open(fileName, "r", encoding="utf-8") + data = f.read() + f.close() + except (IOError, OSError): + return False + + match = re.search(self.__checksumRe, data) + if match: + expectedChecksum = match.group(1) + else: + # consider it as valid + return True + + # normalize the data + data = re.sub(r"\r", "", data) # normalize eol + data = re.sub(r"\n+", "\n", data) # remove empty lines + data = re.sub(self.__checksumRe, "", data) # remove checksum line + + # calculate checksum + md5 = hashlib.md5() + md5.update(data.encode("utf-8")) + calculatedChecksum = base64.b64encode(md5.digest()).decode().rstrip("=") + if calculatedChecksum == expectedChecksum: + return True + else: + res = E5MessageBox.yesNo(None, + self.trUtf8("Downloading subscription rules"), + self.trUtf8("""<p>AdBlock subscription <b>{0}</b> has a wrong""" + """ checksum.<br/>""" + """Found: {1}<br/>""" + """Calculated: {2}<br/>""" + """Use it anyway?</p>""")\ + .format(self.__title, expectedChecksum, calculatedChecksum)) + return res + def saveRules(self): """ Public method to save the subscription rules. @@ -346,7 +406,8 @@ return textStream = QTextStream(f) - textStream << "[Adblock Plus 1.1.1]\n" + if not self.__rules or not self.__rules[0].isHeader(): + textStream << "[Adblock Plus 1.1.1]\n" for rule in self.__rules: textStream << rule.filter() << "\n"
--- a/Helpviewer/AdBlock/AdBlockTreeWidget.py Thu Aug 09 19:13:46 2012 +0200 +++ b/Helpviewer/AdBlock/AdBlockTreeWidget.py Sun Aug 12 12:50:29 2012 +0200 @@ -234,7 +234,7 @@ font.setItalic(True) itm.setForeground(0, QColor(Qt.gray)) - if not rule.isComment(): + if not rule.isComment() and not rule.isHeader(): itm.setFlags(itm.flags() | Qt.ItemIsUserCheckable) itm.setCheckState(0, Qt.Unchecked) itm.setFont(0, font)
--- a/changelog Thu Aug 09 19:13:46 2012 +0200 +++ b/changelog Sun Aug 12 12:50:29 2012 +0200 @@ -25,6 +25,7 @@ -- rewrote huge part of AdBlock to speed up -- added support for dependent AdBlock subscriptions -- added support for AdBlock exceptions + -- added support for AdBlock checksum checking when downloading a subscription Version 5.3-snapshot-20120624: - bug fixes
--- a/i18n/eric5_cs.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_cs.ts Sun Aug 12 12:50:29 2012 +0200 @@ -320,45 +320,55 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation>Nahrát odebíraná pravidla</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation>Stažení odebíraných pravidel</translation> </message> <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> + <source>Got empty subscription rules.</source> + <translation>Odebíraná pravidla jsou prázdná.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> + <source>Saving subscription rules</source> + <translation>Ukládání odebíraných pravidel</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> + <source>Unable to open adblock file '{0}' for reading.</source> + <translation>Nelze otevřít adblock soubor '{0}' pro čtení.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>Adblock file '{0}' does not start with [Adblock.</source> + <translation type="obsolete">Adblock soubor '{0}' nezačíná s [Adblock.</translation> + </message> + <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> - <source>Got empty subscription rules.</source> - <translation>Odebíraná pravidla jsou prázdná.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> - <source>Saving subscription rules</source> - <translation>Ukládání odebíraných pravidel</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> - <source>Unable to open adblock file '{0}' for reading.</source> - <translation>Nelze otevřít adblock soubor '{0}' pro čtení.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> - <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation>Adblock soubor '{0}' nezačíná s [Adblock.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> <translation><p>Pravidla pro předplatné nelze stáhnout.</p><p>Chyba: {0}</p></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation>Nelze otevřít adblock soubor '{0}' pro zápis.</translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -48007,17 +48017,17 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation type="unfinished"></translation> </message> @@ -48027,35 +48037,40 @@ <translation type="obsolete">Pokračovat</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation type="unfinished">Projekt bude znovu načten. Má se provést?</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_de.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_de.ts Sun Aug 12 12:50:29 2012 +0200 @@ -1,6 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE TS> -<TS version="2.0" language="de"> +<!DOCTYPE TS><TS version="2.0" language="de" sourcelanguage=""> <context> <name>AboutDialog</name> <message> @@ -290,45 +289,50 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation>Abonnementregeln laden</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> <source>Unable to open adblock file '{0}' for reading.</source> <translation>Adblock Datei '{0}' konnte nicht zum Lesen geöffnet werden.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> - <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation>Adblock Datei '{0}' startet nicht mit [Adblock.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation>Lade Abonnementregeln herunter</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> - <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> - <translation><p>Abonnementregeln konnten nicht heruntergeladen werden.</p><p>Fehler: {0}</p></translation> - </message> - <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> + <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> + <translation><p>Abonnementregeln konnten nicht heruntergeladen werden.</p><p>Fehler: {0}</p></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> <source>Got empty subscription rules.</source> <translation>Habe leere Abonnementregeln erhalten.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation>Adblock Datei '{0}' konnte nicht zum Schreiben geöffnet werden.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Saving subscription rules</source> <translation>Speichern der Abonnementregeln</translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation>AdBlock Datei '{0}' startet nicht mit [Adblock.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation><p>AdBlock Abonnement <b>{0}</b> hat eine falsche Prüfsumme.<br/>Gefunden: {1}<br/>Berechnet: {2}<br/>Trotzdem verwenden?</p></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -1929,7 +1933,7 @@ </message> <message> <location filename="Helpviewer/Bookmarks/BookmarksMenu.py" line="142"/> - <source>Open in New &Tab Ctrl+LMB</source> + <source>Open in New &Tab<byte value="x9"/>Ctrl+LMB</source> <translation>In neuem &Register öffnen\tStrg+LMK</translation> </message> </context> @@ -2166,7 +2170,7 @@ </message> <message> <location filename="Helpviewer/Bookmarks/BookmarksToolBar.py" line="90"/> - <source>Open in New &Tab Ctrl+LMB</source> + <source>Open in New &Tab<byte value="x9"/>Ctrl+LMB</source> <translation>In neuem &Register öffnen\tStrg+LMK</translation> </message> </context> @@ -14008,7 +14012,7 @@ </message> <message> <location filename="Helpviewer/HelpBrowserWV.py" line="977"/> - <source>Open Link in New Tab Ctrl+LMB</source> + <source>Open Link in New Tab<byte value="x9"/>Ctrl+LMB</source> <translation>Link in neuem Fenster öffnen\tStrg+LMK</translation> </message> <message> @@ -46581,50 +46585,55 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation>Änderungssätze transplantieren</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation>Änderungssätze aus einem anderen Zweig transplantieren</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation><b>Änderungssätze transplantieren</b><p>Dies transplantier Änderungssätze aus einem anderen Zweig mit der Originaländerungsmeldung in das Arbeitsverzeichnis.</p></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation>Setzt die letzte Transplantationssitzung nach Reparatur fort</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation>Transplantation</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation>Das Projekt sollte neu gelesen werde. Jetzt durchführen?</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation>Änderungssätze transplantieren (Fortsetzung)</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation>Transplantationssitzung fortsetzen</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation><b>Transplantationssitzung fortsetzen</b><p>Dies setzt die letzte Transplantationssitzung nach Reparatur fort.</p></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation>Transplant ist überholt</translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_en.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_en.ts Sun Aug 12 12:50:29 2012 +0200 @@ -289,45 +289,50 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> <source>Unable to open adblock file '{0}' for reading.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> - <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> - <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> + <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> <source>Got empty subscription rules.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Saving subscription rules</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -46124,50 +46129,55 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_es.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_es.ts Sun Aug 12 12:50:29 2012 +0200 @@ -312,45 +312,55 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation>Cargar reglas de la suscripción</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation>Descargando reglas de la suscripción</translation> </message> <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> + <source>Got empty subscription rules.</source> + <translation>El conjunto de reglas de suscripción está vacío.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> + <source>Saving subscription rules</source> + <translation>Guardando reglas de la suscripción</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> + <source>Unable to open adblock file '{0}' for reading.</source> + <translation>No ha sido posible abrir el archivo de AdBlock '{0}' en modo lectura.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>Adblock file '{0}' does not start with [Adblock.</source> + <translation type="obsolete">El archivo de AdBlock '{0}' no comienza con [Adblock.</translation> + </message> + <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> - <source>Got empty subscription rules.</source> - <translation>El conjunto de reglas de suscripción está vacío.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> - <source>Saving subscription rules</source> - <translation>Guardando reglas de la suscripción</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> - <source>Unable to open adblock file '{0}' for reading.</source> - <translation>No ha sido posible abrir el archivo de AdBlock '{0}' en modo lectura.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> - <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation>El archivo de AdBlock '{0}' no comienza con [Adblock.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> <translation><p>Las reglas de la subscrición no han podido ser descargadas.</p><p>Error: {0}</p></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation>No ha sido posible abrir el archivo de AdBlock '{0}' en modo escritura.</translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -46743,50 +46753,55 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation>Trasplantar Changesets</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation>Hacer rebase de changesets de otra branch</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation><b>Transplantar Changesets</b><p>Transplanta changesets de otra branch sobre el directorio de trabajo actual con el log del changeset original.</p></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation>Continuar la última sesión de trasplante despues de reparar</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation>Transplantar</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation>El proyecto debería ser cargado de nuevo. ¿Desea hacerlo ahora?</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation>Trasplantar Changesets (Continuar)</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation>Continuar Sesión de Trasplantar</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation><b>Continuar Sesión de Transplantar</b><p>Continua la ultima sesión de transplantar despues de reparar.</p></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_fr.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_fr.ts Sun Aug 12 12:50:29 2012 +0200 @@ -342,45 +342,50 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation type="unfinished"></translation> </message> <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> + <source>Got empty subscription rules.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> + <source>Saving subscription rules</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> + <source>Unable to open adblock file '{0}' for reading.</source> + <translation type="unfinished"></translation> + </message> + <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> - <source>Got empty subscription rules.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> - <source>Saving subscription rules</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> - <source>Unable to open adblock file '{0}' for reading.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> - <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -51192,17 +51197,17 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation type="unfinished"></translation> </message> @@ -51212,35 +51217,40 @@ <translation type="obsolete">Continuer</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_it.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_it.ts Sun Aug 12 12:50:29 2012 +0200 @@ -320,45 +320,55 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation>Carica regole di sottoscrizione</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation>Scarica regole di sottoscrizione</translation> </message> <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> + <source>Got empty subscription rules.</source> + <translation>Ricevuto regole di sottoscrizione vuote.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> + <source>Saving subscription rules</source> + <translation>Salvataggio regole di sottoscrizione</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> + <source>Unable to open adblock file '{0}' for reading.</source> + <translation>Non posso aprire il file adblock '{0}' in lettura.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>Adblock file '{0}' does not start with [Adblock.</source> + <translation type="obsolete">Il file adblock '{0}' non inizia con [Adblock.</translation> + </message> + <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> - <source>Got empty subscription rules.</source> - <translation>Ricevuto regole di sottoscrizione vuote.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> - <source>Saving subscription rules</source> - <translation>Salvataggio regole di sottoscrizione</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> - <source>Unable to open adblock file '{0}' for reading.</source> - <translation>Non posso aprire il file adblock '{0}' in lettura.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> - <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation>Il file adblock '{0}' non inizia con [Adblock.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> <translation><p>Le regole di sottoscrizione non possono essere scaricate.</p><p>Errore {0}</p></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation>Non posso aprire il file adblock '{0}' in scrittura.</translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -47696,17 +47706,17 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation type="unfinished"></translation> </message> @@ -47716,35 +47726,40 @@ <translation type="obsolete">Continua</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation type="unfinished">Il progetto deve essere riletto. Farlo ora ?</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_ru.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_ru.ts Sun Aug 12 12:50:29 2012 +0200 @@ -320,45 +320,55 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation>Загрузить правила подписки</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> <source>Unable to open adblock file '{0}' for reading.</source> <translation>Невозможно открыть adblock файл '{0}' для чтения.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation>Adblock файл '{0}' начинается не с '[Adblock'.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <translation type="obsolete">Adblock файл '{0}' начинается не с '[Adblock'.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation>Загрузка правил подписки</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> - <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> - <translation><p>Не могу загрузить правила подписки.</p><p>Ошибка: {0}</p></translation> - </message> - <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> + <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> + <translation><p>Не могу загрузить правила подписки.</p><p>Ошибка: {0}</p></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> <source>Got empty subscription rules.</source> <translation>Правила подписки пусты.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation>Невозможно открыть adblock файл '{0}' для записи.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Saving subscription rules</source> <translation>Сохранение правил подписки</translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -47797,17 +47807,17 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation type="unfinished"></translation> </message> @@ -47817,35 +47827,40 @@ <translation type="obsolete">Продолжить</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation type="unfinished">Необходимо перезагрузить проект. Сделать это?</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_tr.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_tr.ts Sun Aug 12 12:50:29 2012 +0200 @@ -320,45 +320,55 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation>Üyelik kuralları yükleniyor</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> <source>Unable to open adblock file '{0}' for reading.</source> <translation>'{0}' dosyasına okuma blokesini kaldır.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation>Block'{0}' dosyası [Adblock ile başlamıyor.</translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <translation type="obsolete">Block'{0}' dosyası [Adblock ile başlamıyor.</translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation>Üyelik kuralları indiriliyor</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> - <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> - <translation><p>Üyelik kuralları indirilemiyor.</p><p>Hatar: {0}</p></translation> - </message> - <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> + <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> + <translation><p>Üyelik kuralları indirilemiyor.</p><p>Hatar: {0}</p></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> <source>Got empty subscription rules.</source> <translation>Boş üyelik kuralları alındı.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation>'{0}' dosyasına yazma blokesini kaldır.</translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Saving subscription rules</source> <translation>Üyelik kurallarını kaydediliyor</translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -47559,17 +47569,17 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation type="unfinished"></translation> </message> @@ -47579,35 +47589,40 @@ <translation type="obsolete">Devam et</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation type="unfinished">Projenin yeniden okunması gerekiyor. Şimdi yapılsın mı?</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>
--- a/i18n/eric5_zh_CN.GB2312.ts Thu Aug 09 19:13:46 2012 +0200 +++ b/i18n/eric5_zh_CN.GB2312.ts Sun Aug 12 12:50:29 2012 +0200 @@ -342,45 +342,50 @@ <context> <name>AdBlockSubscription</name> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> <source>Load subscription rules</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="322"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> <source>Downloading subscription rules</source> <translation type="unfinished"></translation> </message> <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="324"/> + <source>Got empty subscription rules.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> + <source>Saving subscription rules</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="244"/> + <source>Unable to open adblock file '{0}' for reading.</source> + <translation type="unfinished"></translation> + </message> + <message> <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="314"/> - <source>Got empty subscription rules.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> - <source>Saving subscription rules</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="237"/> - <source>Unable to open adblock file '{0}' for reading.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="245"/> - <source>Adblock file '{0}' does not start with [Adblock.</source> - <translation type="unfinished"></translation> - </message> - <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="304"/> <source><p>Subscription rules could not be downloaded.</p><p>Error: {0}</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="342"/> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="402"/> <source>Unable to open adblock file '{0}' for writing.</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="252"/> + <source>AdBlock file '{0}' does not start with [Adblock.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/AdBlock/AdBlockSubscription.py" line="382"/> + <source><p>AdBlock subscription <b>{0}</b> has a wrong checksum.<br/>Found: {1}<br/>Calculated: {2}<br/>Use it anyway?</p></source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>AdBlockTreeWidget</name> @@ -51168,17 +51173,17 @@ <context> <name>TransplantProjectHelper</name> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="94"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="112"/> <source>Transplant Changesets</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="38"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="52"/> <source>Transplant changesets from another branch</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="41"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="55"/> <source><b>Transplant Changesets</b><p>This transplants changesets from another branch on top of the current working directory with the log of the original changeset.</p></source> <translation type="unfinished"></translation> </message> @@ -51188,35 +51193,40 @@ <translation type="obsolete">继续</translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="53"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="67"/> <source>Continue the last transplant session after repair</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="85"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="103"/> <source>Transplant</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>The project should be reread. Do this now?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="108"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="126"/> <source>Transplant Changesets (Continue)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="49"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="63"/> <source>Continue Transplant Session</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="56"/> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="70"/> <source><b>Continue Transplant Session</b><p>This continues the last transplant session after repair.</p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="Plugins/VcsPlugins/vcsMercurial/TransplantExtension/ProjectHelper.py" line="88"/> + <source>Transplant is deprecated</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>TrayStarter</name>