Sun, 18 Mar 2012 17:46:54 +0100
Added a bookmarks importer for Firefox.
--- a/APIs/Python3/eric5.api Sun Mar 18 16:15:50 2012 +0100 +++ b/APIs/Python3/eric5.api Sun Mar 18 17:46:54 2012 +0100 @@ -1799,6 +1799,11 @@ eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter.ChromeImporter.setPath?4(path) eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter.ChromeImporter?1(id="", parent=None) eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter.getImporterInfo?4(id) +eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.FirefoxImporter.importedBookmarks?4() +eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.FirefoxImporter.open?4() +eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.FirefoxImporter.setPath?4(path) +eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.FirefoxImporter?1(id="", parent=None) +eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.getImporterInfo?4(id) eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter.HtmlImporter.importedBookmarks?4() eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter.HtmlImporter.open?4() eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter.HtmlImporter.setPath?4(path)
--- a/APIs/Python3/eric5.bas Sun Mar 18 16:15:50 2012 +0100 +++ b/APIs/Python3/eric5.bas Sun Mar 18 17:46:54 2012 +0100 @@ -210,6 +210,7 @@ FiletypeAssociationDialog QDialog Ui_FiletypeAssociationDialog FindFileDialog QDialog Ui_FindFileDialog FindFileNameDialog QWidget Ui_FindFileNameDialog +FirefoxImporter BookmarksImporter FontDialogWizard QObject FontDialogWizardDialog QDialog Ui_FontDialogWizardDialog FtpAccessHandler SchemeAccessHandler
--- a/Documentation/Help/source.qhp Sun Mar 18 16:15:50 2012 +0100 +++ b/Documentation/Help/source.qhp Sun Mar 18 17:46:54 2012 +0100 @@ -203,6 +203,7 @@ <section title="eric5.Helpviewer.Bookmarks.BookmarksImporters" ref="index-eric5.Helpviewer.Bookmarks.BookmarksImporters.html"> <section title="eric5.Helpviewer.Bookmarks.BookmarksImporters.BookmarksImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.BookmarksImporter.html" /> <section title="eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter.html" /> + <section title="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html" /> <section title="eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter.html" /> <section title="eric5.Helpviewer.Bookmarks.BookmarksImporters.OperaImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.OperaImporter.html" /> <section title="eric5.Helpviewer.Bookmarks.BookmarksImporters.XbelImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.XbelImporter.html" /> @@ -4277,6 +4278,12 @@ <keyword name="FindFileNameDialog.on_searchDirEdit_textChanged" id="FindFileNameDialog.on_searchDirEdit_textChanged" ref="eric5.UI.FindFileNameDialog.html#FindFileNameDialog.on_searchDirEdit_textChanged" /> <keyword name="FindFileNameDialog.on_syspathCheckBox_toggled" id="FindFileNameDialog.on_syspathCheckBox_toggled" ref="eric5.UI.FindFileNameDialog.html#FindFileNameDialog.on_syspathCheckBox_toggled" /> <keyword name="FindFileNameDialog.show" id="FindFileNameDialog.show" ref="eric5.UI.FindFileNameDialog.html#FindFileNameDialog.show" /> + <keyword name="FirefoxImporter" id="FirefoxImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html#FirefoxImporter" /> + <keyword name="FirefoxImporter (Constructor)" id="FirefoxImporter (Constructor)" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html#FirefoxImporter.__init__" /> + <keyword name="FirefoxImporter (Module)" id="FirefoxImporter (Module)" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html" /> + <keyword name="FirefoxImporter.importedBookmarks" id="FirefoxImporter.importedBookmarks" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html#FirefoxImporter.importedBookmarks" /> + <keyword name="FirefoxImporter.open" id="FirefoxImporter.open" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html#FirefoxImporter.open" /> + <keyword name="FirefoxImporter.setPath" id="FirefoxImporter.setPath" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html#FirefoxImporter.setPath" /> <keyword name="FlexCompleter (Module)" id="FlexCompleter (Module)" ref="eric5.DebugClients.Python.FlexCompleter.html" /> <keyword name="FlexCompleter (Module)" id="FlexCompleter (Module)" ref="eric5.DebugClients.Python3.FlexCompleter.html" /> <keyword name="FontDialogWizard" id="FontDialogWizard" ref="eric5.Plugins.PluginWizardQFontDialog.html#FontDialogWizard" /> @@ -11321,6 +11328,7 @@ <keyword name="getIcons" id="getIcons" ref="eric5.Preferences.__init__.html#getIcons" /> <keyword name="getImporter" id="getImporter" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.__init__.html#getImporter" /> <keyword name="getImporterInfo" id="getImporterInfo" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter.html#getImporterInfo" /> + <keyword name="getImporterInfo" id="getImporterInfo" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html#getImporterInfo" /> <keyword name="getImporterInfo" id="getImporterInfo" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter.html#getImporterInfo" /> <keyword name="getImporterInfo" id="getImporterInfo" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.OperaImporter.html#getImporterInfo" /> <keyword name="getImporterInfo" id="getImporterInfo" ref="eric5.Helpviewer.Bookmarks.BookmarksImporters.XbelImporter.html#getImporterInfo" /> @@ -11876,6 +11884,7 @@ <file>eric5.Helpviewer.Bookmarks.BookmarksImportDialog.html</file> <file>eric5.Helpviewer.Bookmarks.BookmarksImporters.BookmarksImporter.html</file> <file>eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter.html</file> + <file>eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html</file> <file>eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter.html</file> <file>eric5.Helpviewer.Bookmarks.BookmarksImporters.OperaImporter.html</file> <file>eric5.Helpviewer.Bookmarks.BookmarksImporters.XbelImporter.html</file>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Documentation/Source/eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html Sun Mar 18 17:46:54 2012 +0100 @@ -0,0 +1,142 @@ +<?xml version="1.0" encoding="utf-8"?> +<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Strict//EN' +'http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd'> +<html><head> +<title>eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter</title> +<style> +body { + background: #EDECE6; + margin: 0em 1em 10em 1em; + color: black; +} + +h1 { color: white; background: #85774A; } +h2 { color: white; background: #85774A; } +h3 { color: white; background: #9D936E; } +h4 { color: white; background: #9D936E; } + +a { color: #BA6D36; } + +</style> +</head> +<body><a NAME="top" ID="top"></a> +<h1>eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter</h1> +<p> +Module implementing an importer for Firefox bookmarks. +</p> +<h3>Global Attributes</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Classes</h3> +<table> +<tr> +<td><a href="#FirefoxImporter">FirefoxImporter</a></td> +<td>Class implementing the Chrome bookmarks importer.</td> +</tr> +</table> +<h3>Functions</h3> +<table> +<tr> +<td><a href="#getImporterInfo">getImporterInfo</a></td> +<td>Module function to get information for the given source id.</td> +</tr> +</table> +<hr /><hr /> +<a NAME="FirefoxImporter" ID="FirefoxImporter"></a> +<h2>FirefoxImporter</h2> +<p> + Class implementing the Chrome bookmarks importer. +</p> +<h3>Derived from</h3> +BookmarksImporter +<h3>Class Attributes</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Class Methods</h3> +<table> +<tr><td>None</td></tr> +</table> +<h3>Methods</h3> +<table> +<tr> +<td><a href="#FirefoxImporter.__init__">FirefoxImporter</a></td> +<td>Constructor</td> +</tr><tr> +<td><a href="#FirefoxImporter.importedBookmarks">importedBookmarks</a></td> +<td>Public method to get the imported bookmarks.</td> +</tr><tr> +<td><a href="#FirefoxImporter.open">open</a></td> +<td>Public method to open the bookmarks file.</td> +</tr><tr> +<td><a href="#FirefoxImporter.setPath">setPath</a></td> +<td>Public method to set the path of the bookmarks file or directory.</td> +</tr> +</table> +<h3>Static Methods</h3> +<table> +<tr><td>None</td></tr> +</table> +<a NAME="FirefoxImporter.__init__" ID="FirefoxImporter.__init__"></a> +<h4>FirefoxImporter (Constructor)</h4> +<b>FirefoxImporter</b>(<i>id="", parent=None</i>) +<p> + Constructor +</p><dl> +<dt><i>id</i></dt> +<dd> +source ID (string) +</dd><dt><i>parent</i></dt> +<dd> +reference to the parent object (QObject) +</dd> +</dl><a NAME="FirefoxImporter.importedBookmarks" ID="FirefoxImporter.importedBookmarks"></a> +<h4>FirefoxImporter.importedBookmarks</h4> +<b>importedBookmarks</b>(<i></i>) +<p> + Public method to get the imported bookmarks. +</p><dl> +<dt>Returns:</dt> +<dd> +imported bookmarks (BookmarkNode) +</dd> +</dl><a NAME="FirefoxImporter.open" ID="FirefoxImporter.open"></a> +<h4>FirefoxImporter.open</h4> +<b>open</b>(<i></i>) +<p> + Public method to open the bookmarks file. +</p><dl> +<dt>Returns:</dt> +<dd> +flag indicating success (boolean) +</dd> +</dl><a NAME="FirefoxImporter.setPath" ID="FirefoxImporter.setPath"></a> +<h4>FirefoxImporter.setPath</h4> +<b>setPath</b>(<i>path</i>) +<p> + Public method to set the path of the bookmarks file or directory. +</p><dl> +<dt><i>path</i></dt> +<dd> +bookmarks file or directory (string) +</dd> +</dl> +<div align="right"><a href="#top">Up</a></div> +<hr /><hr /> +<a NAME="getImporterInfo" ID="getImporterInfo"></a> +<h2>getImporterInfo</h2> +<b>getImporterInfo</b>(<i>id</i>) +<p> + Module function to get information for the given source id. +</p><dl> +<dt>Returns:</dt> +<dd> +tuple with an icon (QPixmap), readable name (string), name of + the default bookmarks file (string), an info text (string), + a prompt (string) and the default directory of the bookmarks file (string) +</dd> +</dl> +<div align="right"><a href="#top">Up</a></div> +<hr /> +</body></html> \ No newline at end of file
--- a/Documentation/Source/index-eric5.Helpviewer.Bookmarks.BookmarksImporters.html Sun Mar 18 16:15:50 2012 +0100 +++ b/Documentation/Source/index-eric5.Helpviewer.Bookmarks.BookmarksImporters.html Sun Mar 18 17:46:54 2012 +0100 @@ -35,6 +35,9 @@ <td><a href="eric5.Helpviewer.Bookmarks.BookmarksImporters.ChromeImporter.html">ChromeImporter</a></td> <td>Module implementing an importer for Chrome bookmarks.</td> </tr><tr> +<td><a href="eric5.Helpviewer.Bookmarks.BookmarksImporters.FirefoxImporter.html">FirefoxImporter</a></td> +<td>Module implementing an importer for Firefox bookmarks.</td> +</tr><tr> <td><a href="eric5.Helpviewer.Bookmarks.BookmarksImporters.HtmlImporter.html">HtmlImporter</a></td> <td>Module implementing an importer for HTML bookmark files.</td> </tr><tr>
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py Sun Mar 18 17:46:54 2012 +0100 @@ -0,0 +1,158 @@ +# -*- coding: utf-8 -*- + +# Copyright (c) 2012 Detlev Offenbach <detlev@die-offenbachs.de> +# + +""" +Module implementing an importer for Firefox bookmarks. +""" + +import os + +from PyQt4.QtCore import QCoreApplication, QDate, Qt, QUrl +from PyQt4.QtSql import QSqlDatabase, QSqlQuery + +from ..BookmarkNode import BookmarkNode + +from .BookmarksImporter import BookmarksImporter + +import UI.PixmapCache +import Globals + + +def getImporterInfo(id): + """ + Module function to get information for the given source id. + + @return tuple with an icon (QPixmap), readable name (string), name of + the default bookmarks file (string), an info text (string), + a prompt (string) and the default directory of the bookmarks file (string) + """ + if id == "firefox": + if Globals.isWindowsPlatform(): + standardDir = os.path.expandvars( + "%APPDATA%\\Mozilla\\Firefox\\Profiles") + else: + standardDir = os.path.expanduser("~/.mozilla/firefox") + return ( + UI.PixmapCache.getPixmap("chrome.png"), + "Mozilla Firefox", + "places.sqlite", + QCoreApplication.translate("FirefoxImporter", + """Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> """ + """SQLite database. This file is usually located in"""), + QCoreApplication.translate("FirefoxImporter", + """Please choose the file to begin importing bookmarks."""), + standardDir, + ) + else: + raise ValueError("Unsupported browser ID given ({0}).".format(id)) + + +class FirefoxImporter(BookmarksImporter): + """ + Class implementing the Chrome bookmarks importer. + """ + def __init__(self, id="", parent=None): + """ + Constructor + + @param id source ID (string) + @param parent reference to the parent object (QObject) + """ + super().__init__(id, parent) + + self.__fileName = "" + self.__db = None + + def setPath(self, path): + """ + Public method to set the path of the bookmarks file or directory. + + @param path bookmarks file or directory (string) + """ + self.__fileName = path + + def open(self): + """ + Public method to open the bookmarks file. + + @return flag indicating success (boolean) + """ + if not os.path.exists(self.__fileName): + self._error = True + self._errorString = self.trUtf8("File '{0}' does not exist.")\ + .format(self.__fileName) + return False + + self.__db = QSqlDatabase.addDatabase("QSQLITE") + self.__db.setDatabaseName(self.__fileName) + opened = self.__db.open() + + if not opened: + self._error = True + self._errorString = self.trUtf8("Unable to open database.\nReason: {0}")\ + .format(self.__db.lastError().text()) + return False + + return True + + def importedBookmarks(self): + """ + Public method to get the imported bookmarks. + + @return imported bookmarks (BookmarkNode) + """ + importRootNode = BookmarkNode(BookmarkNode.Folder) + + # step 1: build the hierarchy of bookmark folders + folders = {} + query = QSqlQuery(self.__db) + query.exec_( + "SELECT id, parent, title FROM moz_bookmarks WHERE type = 2 and title !=''") + while query.next(): + id_ = int(query.value(0)) + parent = int(query.value(1)) + title = query.value(2) + if parent in folders: + folder = BookmarkNode(BookmarkNode.Folder, folders[parent]) + else: + folder = BookmarkNode(BookmarkNode.Folder, importRootNode) + folder.title = title + folders[id_] = folder + + query = QSqlQuery(self.__db) + query.exec_( + "SELECT parent, title, fk, position FROM moz_bookmarks" + " WHERE type = 1 and title != '' ORDER BY position") + while query.next(): + parent = int(query.value(0)) + title = query.value(1).replace("&", "&&") + placesId = int(query.value(2)) + + query2 = QSqlQuery(self.__db) + query2.exec_("SELECT url FROM moz_places WHERE id = {0}".format(placesId)) + if not query2.next(): + continue + + url = QUrl(query2.value(0)) + if not title or url.isEmpty() or url.scheme() in ["place", "about"]: + continue + + if parent in folders: + bookmark = BookmarkNode(BookmarkNode.Bookmark, folders[parent]) + else: + bookmark = BookmarkNode(BookmarkNode.Bookmark, importRootNode) + bookmark.url = url.toString() + bookmark.title = title + + if query.lastError().isValid(): + self._error = True + self._errorString = query.lastError().text() + + if self._id == "firefox": + importRootNode.title = self.trUtf8("Mozilla Firefox Import") + else: + importRootNode.title = self.trUtf8("Imported {0}")\ + .format(QDate.currentDate().toString(Qt.SystemLocaleShortDate)) + return importRootNode
--- a/Helpviewer/Bookmarks/BookmarksImporters/__init__.py Sun Mar 18 16:15:50 2012 +0100 +++ b/Helpviewer/Bookmarks/BookmarksImporters/__init__.py Sun Mar 18 17:46:54 2012 +0100 @@ -24,8 +24,10 @@ importers.append( (UI.PixmapCache.getIcon("ericWeb48.png"), "eric5 Web Browser", "e5browser")) importers.append( + (UI.PixmapCache.getIcon("firefox.png"), "Mozilla Firefox", "firefox")) + importers.append( (UI.PixmapCache.getIcon("chrome.png"), "Google Chrome", "chrome")) - if not Globals.isWindowsPlatform() and not Globals.isMacPlatform(): + if Globals.isLinuxPlatform(): importers.append( (UI.PixmapCache.getIcon("chromium.png"), "Chromium", "chromium")) importers.append( @@ -39,7 +41,7 @@ QCoreApplication.translate("BookmarksImporters", "HTML File"), "html")) return importers - # TODO: importers for Safari, Firefox, IE + # TODO: importers for Safari, IE def getImporterInfo(id): @@ -63,6 +65,9 @@ elif id == "opera": from . import OperaImporter return OperaImporter.getImporterInfo(id) + elif id == "firefox": + from . import FirefoxImporter + return FirefoxImporter.getImporterInfo(id) else: raise ValueError("Invalid importer ID given ({0}).".format(id)) @@ -86,5 +91,8 @@ elif id == "opera": from . import OperaImporter return OperaImporter.OperaImporter(id, parent) + elif id == "firefox": + from . import FirefoxImporter + return FirefoxImporter.FirefoxImporter(id, parent) else: raise ValueError("No importer for ID {0}.".format(id))
--- a/eric5.e4p Sun Mar 18 16:15:50 2012 +0100 +++ b/eric5.e4p Sun Mar 18 17:46:54 2012 +0100 @@ -992,6 +992,8 @@ <Source>Helpviewer/Bookmarks/BookmarksImporters/HtmlImporter.py</Source> <Source>Helpviewer/Bookmarks/BookmarksImporters/BookmarksImporter.py</Source> <Source>Helpviewer/Bookmarks/BookmarksImporters/ChromeImporter.py</Source> + <Source>Helpviewer/Bookmarks/BookmarksImporters/OperaImporter.py</Source> + <Source>Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py</Source> </Sources> <Forms> <Form>PyUnit/UnittestDialog.ui</Form>
--- a/i18n/eric5_cs.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_cs.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1597,12 +1597,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -13141,6 +13141,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished">Importováno {0}</translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="121"/>
--- a/i18n/eric5_de.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_de.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1586,12 +1586,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation>XBEL Datei</translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation>HTML Datei</translation> </message> @@ -12869,6 +12869,41 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation>Mozilla Firefox speichert die Lesezeichen in der SQLite Datenbank <b>places.sqlite</b>. Diese Datei befindet sich gewöhnlich in</translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation>Bitte wähle die Datei, um den Import von Lesezeichen zu starten.</translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation>Datei '{0}' existiert nicht.</translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation>Die Datenbank kann nicht geöffnet werden. +Ursache: {0}</translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation>Mozilla Firefox Import</translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation>Importiert {0}</translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="121"/>
--- a/i18n/eric5_en.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_en.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1559,12 +1559,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -12784,6 +12784,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="76"/>
--- a/i18n/eric5_es.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_es.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1595,12 +1595,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -13036,6 +13036,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished">Importado {0}</translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="76"/>
--- a/i18n/eric5_fr.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_fr.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1778,12 +1778,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -14007,6 +14007,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="121"/>
--- a/i18n/eric5_it.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_it.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1597,12 +1597,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -12975,6 +12975,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished">Importato {0}</translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="121"/>
--- a/i18n/eric5_ru.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_ru.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1594,12 +1594,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -13072,6 +13072,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished">Импортировано {0}</translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="121"/>
--- a/i18n/eric5_tr.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_tr.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1595,12 +1595,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -13153,6 +13153,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished">İçe Aktarılmış {0}</translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="76"/>
--- a/i18n/eric5_zh_CN.GB2312.ts Sun Mar 18 16:15:50 2012 +0100 +++ b/i18n/eric5_zh_CN.GB2312.ts Sun Mar 18 17:46:54 2012 +0100 @@ -1771,12 +1771,12 @@ <context> <name>BookmarksImporters</name> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="33"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="35"/> <source>XBEL File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="37"/> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/__init__.py" line="39"/> <source>HTML File</source> <translation type="unfinished"></translation> </message> @@ -13954,6 +13954,40 @@ </message> </context> <context> + <name>FirefoxImporter</name> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Mozilla Firefox stores its bookmarks in the <b>places.sqlite</b> SQLite database. This file is usually located in</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="37"/> + <source>Please choose the file to begin importing bookmarks.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="84"/> + <source>File '{0}' does not exist.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="94"/> + <source>Unable to open database. +Reason: {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="154"/> + <source>Mozilla Firefox Import</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="Helpviewer/Bookmarks/BookmarksImporters/FirefoxImporter.py" line="156"/> + <source>Imported {0}</source> + <translation type="unfinished"></translation> + </message> +</context> +<context> <name>FontDialogWizard</name> <message> <location filename="Plugins/PluginWizardQFontDialog.py" line="76"/>