Thu, 20 Jun 2013 18:59:13 +0200
Added a menu entry to call a translations editor from the translations viewer.
--- a/ChangeLog Sun May 05 19:27:51 2013 +0200 +++ b/ChangeLog Thu Jun 20 18:59:13 2013 +0200 @@ -1,5 +1,9 @@ ChangeLog --------- +Version 1.3.0 +- bug fixes +- added a menu entry to call a translations editor from the translations viewer + Version 1.2.0 - bug fixes - extended the Python variant detection to only offer the Pyramid project type,
--- a/PluginProjectPyramid.py Sun May 05 19:27:51 2013 +0200 +++ b/PluginProjectPyramid.py Thu Jun 20 18:59:13 2013 +0200 @@ -26,7 +26,7 @@ author = "Detlev Offenbach <detlev@die-offenbachs.de>" autoactivate = True deactivateable = True -version = "1.2.0" +version = "1.3.0" className = "ProjectPyramidPlugin" packageName = "ProjectPyramid" shortDescription = "Project support for Pyramid projects." @@ -123,6 +123,7 @@ "Python2ConsoleType": "python", "Python3ConsoleType": "python", "PyramidDocUrl": "http://docs.pylonsproject.org/en/latest/docs/pyramid.html", + "TranslationsEditor": "", } if isWindowsPlatform(): self.__defaults["ConsoleCommand"] = "cmd.exe /c" @@ -358,6 +359,9 @@ if key in ["VirtualEnvironmentPy2", "VirtualEnvironmentPy3"]: self.__reregisterProjectType() + elif key == "TranslationsEditor": + if self.__object: + self.__object.registerOpenHook() def __reregisterProjectType(self): """
--- a/PluginPyramid.e4p Sun May 05 19:27:51 2013 +0200 +++ b/PluginPyramid.e4p Thu Jun 20 18:59:13 2013 +0200 @@ -7,7 +7,7 @@ <ProgLanguage mixed="0">Python3</ProgLanguage> <ProjectType>E4Plugin</ProjectType> <Description>Plugin implementing support for Pyramid projects.</Description> - <Version>1.0.0</Version> + <Version>1.3.x</Version> <Author>Detlev Offenbach</Author> <Email>detlev@die-offenbachs.de</Email> <TranslationPattern>ProjectPyramid/i18n/pyramid_%language%.ts</TranslationPattern>
--- a/ProjectPyramid/ConfigurationPage/PyramidPage.py Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/ConfigurationPage/PyramidPage.py Thu Jun 20 18:59:13 2013 +0200 @@ -47,6 +47,7 @@ consoleList.append("@konsole --workdir . -e") # KDE4 konsole spawns consoleList.append("gnome-terminal -x") + consoleList.append("xfce4-terminal -e") consoleList.append("xterm -e") self.consoleCommandCombo.addItems(consoleList) @@ -77,6 +78,9 @@ self.urlEdit.setText( self.__plugin.getPreferences("PyramidDocUrl")) + + self.translationsEdit.setText( + self.__plugin.getPreferences("TranslationsEditor")) def save(self): """ @@ -97,6 +101,9 @@ self.__plugin.setPreferences("PyramidDocUrl", self.urlEdit.text()) + + self.__plugin.setPreferences("TranslationsEditor", + self.translationsEdit.text()) @pyqtSlot() def on_virtualEnvPy3Button_clicked(self): @@ -133,3 +140,16 @@ if virtualEnv: self.virtualEnvPy2Edit.setText(Utilities.toNativeSeparators(virtualEnv)) + + @pyqtSlot() + def on_translationsButton_clicked(self): + """ + Private slot to select the translations editor via a file selection dialog. + """ + editor = E5FileDialog.getOpenFileName( + self, + self.trUtf8("Translations Editor"), + self.translationsEdit.text(), + self.trUtf8("All Files (*)")) + if editor: + self.translationsEdit.setText(Utilities.toNativeSeparators(editor))
--- a/ProjectPyramid/ConfigurationPage/PyramidPage.ui Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/ConfigurationPage/PyramidPage.ui Thu Jun 20 18:59:13 2013 +0200 @@ -87,6 +87,12 @@ <layout class="QGridLayout" name="gridLayout_4"> <item row="0" column="0" colspan="2"> <widget class="QLabel" name="label_3"> + <property name="minimumSize"> + <size> + <width>0</width> + <height>40</height> + </size> + </property> <property name="text"> <string>Enter the path of the Pyramid virtual environment. Leave empty to not use a virtual environment setup.</string> </property> @@ -148,6 +154,12 @@ <layout class="QGridLayout" name="gridLayout_2"> <item row="0" column="0" colspan="2"> <widget class="QLabel" name="label_7"> + <property name="minimumSize"> + <size> + <width>0</width> + <height>40</height> + </size> + </property> <property name="text"> <string>Enter the path of the Pyramid virtual environment. Leave empty to not use a virtual environment setup.</string> </property> @@ -219,6 +231,44 @@ </widget> </item> <item> + <widget class="QGroupBox" name="TranslationsGroup"> + <property name="title"> + <string>Translations Editor</string> + </property> + <layout class="QGridLayout" name="gridLayout_6"> + <item row="0" column="0" colspan="2"> + <widget class="QLabel" name="label_10"> + <property name="minimumSize"> + <size> + <width>0</width> + <height>40</height> + </size> + </property> + <property name="text"> + <string>Enter the path of an editor to use to do the translations. Leave empty to disable this feature.</string> + </property> + <property name="wordWrap"> + <bool>true</bool> + </property> + </widget> + </item> + <item row="1" column="0"> + <widget class="QLineEdit" name="translationsEdit"/> + </item> + <item row="1" column="1"> + <widget class="QPushButton" name="translationsButton"> + <property name="toolTip"> + <string>Select the translations editor via a file selection dialog</string> + </property> + <property name="text"> + <string>...</string> + </property> + </widget> + </item> + </layout> + </widget> + </item> + <item> <spacer name="verticalSpacer"> <property name="orientation"> <enum>Qt::Vertical</enum>
--- a/ProjectPyramid/Documentation/source/Plugin_Project_Pyramid.ProjectPyramid.ConfigurationPage.PyramidPage.html Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/Documentation/source/Plugin_Project_Pyramid.ProjectPyramid.ConfigurationPage.PyramidPage.html Thu Jun 20 18:59:13 2013 +0200 @@ -60,6 +60,9 @@ <td><a href="#PyramidPage.__init__">PyramidPage</a></td> <td>Constructor</td> </tr><tr> +<td><a href="#PyramidPage.on_translationsButton_clicked">on_translationsButton_clicked</a></td> +<td>Private slot to select the translations editor via a file selection dialog.</td> +</tr><tr> <td><a href="#PyramidPage.on_virtualEnvPy2Button_clicked">on_virtualEnvPy2Button_clicked</a></td> <td>Private slot to select the virtual environment for Python 2 via a directory selection dialog.</td> </tr><tr> @@ -84,7 +87,12 @@ <dd> reference to the plugin object </dd> -</dl><a NAME="PyramidPage.on_virtualEnvPy2Button_clicked" ID="PyramidPage.on_virtualEnvPy2Button_clicked"></a> +</dl><a NAME="PyramidPage.on_translationsButton_clicked" ID="PyramidPage.on_translationsButton_clicked"></a> +<h4>PyramidPage.on_translationsButton_clicked</h4> +<b>on_translationsButton_clicked</b>(<i></i>) +<p> + Private slot to select the translations editor via a file selection dialog. +</p><a NAME="PyramidPage.on_virtualEnvPy2Button_clicked" ID="PyramidPage.on_virtualEnvPy2Button_clicked"></a> <h4>PyramidPage.on_virtualEnvPy2Button_clicked</h4> <b>on_virtualEnvPy2Button_clicked</b>(<i></i>) <p>
--- a/ProjectPyramid/Documentation/source/Plugin_Project_Pyramid.ProjectPyramid.Project.html Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/Documentation/source/Plugin_Project_Pyramid.ProjectPyramid.Project.html Thu Jun 20 18:59:13 2013 +0200 @@ -171,6 +171,9 @@ <td><a href="#Project.newForm">newForm</a></td> <td>Public method to create a new form.</td> </tr><tr> +<td><a href="#Project.openPOEditor">openPOEditor</a></td> +<td>Public method to edit the given file in an external .po editor.</td> +</tr><tr> <td><a href="#Project.projectClosed">projectClosed</a></td> <td>Public method to handle the closing of a project.</td> </tr><tr> @@ -180,6 +183,9 @@ <td><a href="#Project.projectOpenedHooks">projectOpenedHooks</a></td> <td>Public method to add our hook methods.</td> </tr><tr> +<td><a href="#Project.registerOpenHook">registerOpenHook</a></td> +<td>Public method to register the open hook to open a translations file in a translations editor.</td> +</tr><tr> <td><a href="#Project.supportedPythonVariants">supportedPythonVariants</a></td> <td>Public method to get the supported Python variants.</td> </tr><tr> @@ -548,6 +554,16 @@ <dd> full directory path for the new form file (string) </dd> +</dl><a NAME="Project.openPOEditor" ID="Project.openPOEditor"></a> +<h4>Project.openPOEditor</h4> +<b>openPOEditor</b>(<i>poFile</i>) +<p> + Public method to edit the given file in an external .po editor. +</p><dl> +<dt><i>poFile</i></dt> +<dd> +name of the .po file (string) +</dd> </dl><a NAME="Project.projectClosed" ID="Project.projectClosed"></a> <h4>Project.projectClosed</h4> <b>projectClosed</b>(<i></i>) @@ -563,6 +579,12 @@ <b>projectOpenedHooks</b>(<i></i>) <p> Public method to add our hook methods. +</p><a NAME="Project.registerOpenHook" ID="Project.registerOpenHook"></a> +<h4>Project.registerOpenHook</h4> +<b>registerOpenHook</b>(<i></i>) +<p> + Public method to register the open hook to open a translations file + in a translations editor. </p><a NAME="Project.supportedPythonVariants" ID="Project.supportedPythonVariants"></a> <h4>Project.supportedPythonVariants</h4> <b>supportedPythonVariants</b>(<i></i>)
--- a/ProjectPyramid/Project.py Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/Project.py Thu Jun 20 18:59:13 2013 +0200 @@ -324,6 +324,24 @@ self.__mainMenu = menu return menu + def registerOpenHook(self): + """ + Public method to register the open hook to open a translations file + in a translations editor. + """ + if self.__hooksInstalled: + editor = self.__plugin.getPreferences("TranslationsEditor") + try: + if editor: + self.__translationsBrowser.addHookMethodAndMenuEntry("open", + self.openPOEditor, + self.trUtf8("Open with {0}").format(os.path.basename(editor))) + else: + self.__translationsBrowser.removeHookMethod("open") + except KeyError: + # ignore for older eric5 versions + pass + def projectOpenedHooks(self): """ Public method to add our hook methods. @@ -353,6 +371,8 @@ self.updateSelectedCatalogs, self.trUtf8("Update Selected Catalogs")) self.__hooksInstalled = True + + self.registerOpenHook() def projectClosedHooks(self): """ @@ -369,6 +389,11 @@ self.__translationsBrowser.removeHookMethod("releaseSelected") self.__translationsBrowser.removeHookMethod("generateAll") self.__translationsBrowser.removeHookMethod("generateSelected") + try: + self.__translationsBrowser.removeHookMethod("open") + except KeyError: + # ignore for older eric5 versions + pass self.__translationsBrowser = None self.__hooksInstalled = False @@ -1406,3 +1431,22 @@ res = dia.startBatchProcesses(argsLists, projectPath) if res: dia.exec_() + + def openPOEditor(self, poFile): + """ + Public method to edit the given file in an external .po editor. + + @param poFile name of the .po file (string) + """ + editor = self.__plugin.getPreferences("TranslationsEditor") + if poFile.endswith(".po") and editor: + try: + wd = self.__projectPath() + except PyramidNoProjectSelectedException: + wd = "" + started, pid = QProcess.startDetached(editor, [poFile], wd) + if not started: + E5MessageBox.critical(None, + self.trUtf8('Process Generation Error'), + self.trUtf8('The translations editor process ({0}) could not' + ' be started.').format(os.path.basename(editor)))
--- a/ProjectPyramid/i18n/pyramid_de.ts Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/i18n/pyramid_de.ts Thu Jun 20 18:59:13 2013 +0200 @@ -1,5 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE TS><TS version="2.0" language="de_DE" sourcelanguage=""> +<!DOCTYPE TS> +<TS version="2.0" language="de_DE"> <context> <name>CreateParametersDialog</name> <message> @@ -162,7 +163,7 @@ <translation><b>Aktuelles Pyramid Projekt</b><p>Wählt das Pyramid Projekt aus. Wird bei Multiprojekt Pyramid Projekten eingesetzt, um zwischen den Projekten umzuschalten.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="673"/> + <location filename="ProjectPyramid/Project.py" line="698"/> <source>Create Pyramid Project</source> <translation>Pyramid Projekt erstellen</translation> </message> @@ -182,7 +183,7 @@ <translation><b>Pyramid Projekt erstellen</b><p>Erstellt ein neues Pyramid Projekt mittels "pcreate".</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="824"/> + <location filename="ProjectPyramid/Project.py" line="849"/> <source>Run Server</source> <translation>Server starten</translation> </message> @@ -222,7 +223,7 @@ <translation><b>Server mit Logging starten</b><p>Startet den Pyramid Web Server mit Logging mittels "pserve --log-file=server.log --reload development.ini".</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="891"/> + <location filename="ProjectPyramid/Project.py" line="916"/> <source>Run Web-Browser</source> <translation>Web-Browser starten</translation> </message> @@ -242,7 +243,7 @@ <translation><b>Web-Browser starten</b><p>Startet den Standard Web-Browser mit der URL des Pyramid Web-Servers.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="906"/> + <location filename="ProjectPyramid/Project.py" line="931"/> <source>Start Pyramid Python Console</source> <translation>Starte Pyramid Python Konsole</translation> </message> @@ -262,7 +263,7 @@ <translation><b>Starte Pyramid Python Konsole</b><p>Startet einen interaktiven Python Interpreter</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="937"/> + <location filename="ProjectPyramid/Project.py" line="962"/> <source>Setup Development Environment</source> <translation>Entwicklungsumgebung einrichten</translation> </message> @@ -282,7 +283,7 @@ <translation><b>Entwicklungsumgebung einrichten</b><p>Richtet das Pyramid Projekt im Entwicklungsmodus mittels "python setup.py develop" ein.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1018"/> + <location filename="ProjectPyramid/Project.py" line="1043"/> <source>Initialize Database</source> <translation>Datenbank initialisieren</translation> </message> @@ -302,7 +303,7 @@ <translation><b>Datenbank initialisieren</b><p>Initialisiert (oder reinitialisiert) die Datenbank des aktuellen Pyramid Projektes.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1056"/> + <location filename="ProjectPyramid/Project.py" line="1081"/> <source>Show Matching Views</source> <translation>Passende Ansichten anzeigen</translation> </message> @@ -322,7 +323,7 @@ <translation><b>Passende Ansichten anzeigen</b><p>Zeigt Ansichten zu einer gegebenen URL an.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1079"/> + <location filename="ProjectPyramid/Project.py" line="1104"/> <source>Show Routes</source> <translation>Routen anzeigen</translation> </message> @@ -342,7 +343,7 @@ <translation><b>Routen anzeigen</b><p>Zeigt alle durch eine Pyramid Anwendung verwendete URL Routen in der Reihenfolge ihrer Auswertung an.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1100"/> + <location filename="ProjectPyramid/Project.py" line="1125"/> <source>Show Tween Objects</source> <translation>Tween Objekte anzeigen</translation> </message> @@ -402,7 +403,7 @@ <translation><b>Dokumentation</b><p>Zeigt die Hilfeanzeige mit der Pyramid Dokumentation.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="596"/> + <location filename="ProjectPyramid/Project.py" line="621"/> <source>About Pyramid</source> <translation>Über Pyramid</translation> </message> @@ -427,192 +428,202 @@ <translation>P&yramid</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="334"/> + <location filename="ProjectPyramid/Project.py" line="352"/> <source>New template...</source> <translation>Neues Template...</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="343"/> + <location filename="ProjectPyramid/Project.py" line="361"/> <source>Extract Messages</source> <translation>Texte extrahieren</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="345"/> + <location filename="ProjectPyramid/Project.py" line="363"/> <source>Compile All Catalogs</source> <translation>Alle Kataloge übersetzen</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="347"/> + <location filename="ProjectPyramid/Project.py" line="365"/> <source>Compile Selected Catalogs</source> <translation>Ausgewählte Kataloge übersetzen</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="350"/> + <location filename="ProjectPyramid/Project.py" line="368"/> <source>Update All Catalogs</source> <translation>Alle Kataloge aktualisieren</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="352"/> + <location filename="ProjectPyramid/Project.py" line="370"/> <source>Update Selected Catalogs</source> <translation>Ausgewählte Kataloge aktualisieren</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="388"/> + <location filename="ProjectPyramid/Project.py" line="413"/> <source>Chameleon Templates (*.pt);;Chameleon Text Templates (*.txt);;Mako Templates (*.mako);;Mako Templates (*.mak);;HTML Files (*.html);;HTML Files (*.htm);;All Files (*)</source> <translation>Chameleon Templates (*.pt);;Chameleon Text Templates (*.txt);;Mako Templates (*.mako);;Mako Templates (*.mak);;HTML Dateien (*.html);;HTML Dateien (*.htm);;Alle Dateien (*)</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="424"/> + <location filename="ProjectPyramid/Project.py" line="449"/> <source>New Form</source> <translation>Neues Formular</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="411"/> + <location filename="ProjectPyramid/Project.py" line="436"/> <source>The file already exists! Overwrite it?</source> <translation>Die Datei existiert bereits. Überschreiben?</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="424"/> + <location filename="ProjectPyramid/Project.py" line="449"/> <source><p>The new form file <b>{0}</b> could not be created.<br/>Problem: {1}</p></source> <translation><p>Die neue Formulardatei <b>{0}</b> konnte nicht erstellt werden.<br/>Problem: {1}</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="731"/> + <location filename="ProjectPyramid/Project.py" line="756"/> <source>Select Pyramid Project</source> <translation>Pyramid Projekt auswählen</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="731"/> + <location filename="ProjectPyramid/Project.py" line="756"/> <source>Select the Pyramid project to work with.</source> <translation>Wähle das Pyramid Projekt aus, mit dem gearbeitet werden soll.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="769"/> + <location filename="ProjectPyramid/Project.py" line="794"/> <source>None</source> <translation>keines</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="772"/> + <location filename="ProjectPyramid/Project.py" line="797"/> <source>&Current Pyramid Project ({0})</source> <translation>&Aktuelles Pyramid Projekt ({0})</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1379"/> + <location filename="ProjectPyramid/Project.py" line="1404"/> <source>No current Pyramid project selected or no Pyramid project created yet. Aborting...</source> <translation>Kein aktuelles Pyramid Projekt ausgewählt oder noch keines erstellt. Abbruch...</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="925"/> + <location filename="ProjectPyramid/Project.py" line="1449"/> <source>Process Generation Error</source> <translation>Fehler bei der Prozessgenerierung</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="851"/> + <location filename="ProjectPyramid/Project.py" line="876"/> <source>The Pyramid server could not be started.</source> <translation>Der Pyramid Server konnte nicht gestartet werden.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="891"/> + <location filename="ProjectPyramid/Project.py" line="916"/> <source>Could not start the web-browser for the URL "{0}".</source> <translation>Der Web-Browser konnte nicht für die URL "{0}" gestartet werden.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="925"/> + <location filename="ProjectPyramid/Project.py" line="950"/> <source>The Pyramid Shell process could not be started.</source> <translation>Der Pyramid Konsolenprozess konnte nicht gestartet werden.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="952"/> + <location filename="ProjectPyramid/Project.py" line="977"/> <source>Pyramid development environment setup successfully.</source> <translation>Die Pyramid Entwicklungsumgebung wurde erfolgreich eingerichtet.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="966"/> + <location filename="ProjectPyramid/Project.py" line="991"/> <source>Build Distribution File</source> <translation>Distributionsdateien erzeugen</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="988"/> + <location filename="ProjectPyramid/Project.py" line="1013"/> <source>Python distribution file built successfully.</source> <translation>Python Distributionsdateien erfolgreich erzeugt.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1032"/> + <location filename="ProjectPyramid/Project.py" line="1057"/> <source>Database initialized successfully.</source> <translation>Datenbank erfolgreich initialisiert.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1056"/> + <location filename="ProjectPyramid/Project.py" line="1081"/> <source>Enter the URL to be matched:</source> <translation>Gib die zu überprüfende URL ein:</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1190"/> + <location filename="ProjectPyramid/Project.py" line="1215"/> <source>Extract messages</source> <translation>Texte extrahieren</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1205"/> + <location filename="ProjectPyramid/Project.py" line="1230"/> <source> Messages extracted successfully.</source> <translation>Texte erfolgreich extrahiert.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1252"/> + <location filename="ProjectPyramid/Project.py" line="1277"/> <source> Message catalog initialized successfully.</source> <translation> Textkatalog erfolgreich initialisiert.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1301"/> + <location filename="ProjectPyramid/Project.py" line="1326"/> <source>Compiling message catalogs</source> <translation>Übersetze Textkataloge</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1330"/> + <location filename="ProjectPyramid/Project.py" line="1355"/> <source> Message catalogs compiled successfully.</source> <translation> Textkataloge erfolgreich übersetzt.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1399"/> + <location filename="ProjectPyramid/Project.py" line="1424"/> <source>No locales detected. Aborting...</source> <translation>Keine Sprachen erkannt. Abbruch...</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1375"/> + <location filename="ProjectPyramid/Project.py" line="1400"/> <source>Updating message catalogs</source> <translation>Aktualisiere Textkataloge</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1404"/> + <location filename="ProjectPyramid/Project.py" line="1429"/> <source> Message catalogs updated successfully.</source> <translation> Textkataloge erfolgreich aktualisiert.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1235"/> + <location filename="ProjectPyramid/Project.py" line="1260"/> <source>Initializing message catalog for '{0}'</source> <translation>Initialisiere Textkatalog für '{0}'</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="596"/> + <location filename="ProjectPyramid/Project.py" line="621"/> <source><p>Pyramid is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.</p><p><table><tr><td>Version:</td><td>{0}</td></tr><tr><td>URL:</td><td><a href="{1}">{1}</a></td></tr></table></p></source> <translation><p>Pyramid ist ein Python Web-Framework, das eine schnelle Entwicklung und ein klares, pragmatisches Design fördert.</p><table><tr><td>Version:</td><td>{0}</td></tr><tr><td>URL:</td><td><a href="{1}">{1}</a></td></tr></table></p></translation> </message> + <message> + <location filename="ProjectPyramid/Project.py" line="336"/> + <source>Open with {0}</source> + <translation>Mit [0} öffnen</translation> + </message> + <message> + <location filename="ProjectPyramid/Project.py" line="1449"/> + <source>The translations editor process ({0}) could not be started.</source> + <translation>Der Prozess für den Übersetzungseditor ({0}) konnte nicht gestartet werden.</translation> + </message> </context> <context> <name>ProjectPyramidPlugin</name> <message> - <location filename="PluginProjectPyramid.py" line="382"/> + <location filename="PluginProjectPyramid.py" line="386"/> <source>Pyramid</source> <translation>Pyramid</translation> </message> <message> - <location filename="PluginProjectPyramid.py" line="161"/> + <location filename="PluginProjectPyramid.py" line="162"/> <source>eric5 version is too old, {0}, {1} or newer needed.</source> <translation>Die eric5 Version ist zu alt; {0}, {1} oder neuer wird benötigt.</translation> </message> @@ -713,77 +724,77 @@ <translation>Python 3</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="146"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="152"/> <source>Pyramid Virtual Environment</source> <translation>Virtuelle Pyramid Umgebung</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="152"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="164"/> <source>Enter the path of the Pyramid virtual environment. Leave empty to not use a virtual environment setup.</source> <translation>Gib den Pfad der virtuellen Pyramid Umgebung ein. Leer lassen, um keine virtuelle Umgebung zu verwenden.</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="165"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="177"/> <source>Select the virtual environment directory via a selection dialog</source> <translation>Select the virtual environment directory via a selection dialog</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="168"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="264"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="178"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="190"/> <source>Pyramid Python Console:</source> <translation>Pyramid Python Konsole:</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="191"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="203"/> <source>Select the Python console type</source> <translation>Wähle den Typ der Python Konsole</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="140"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="146"/> <source>Python 2</source> <translation>Python 2</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="201"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="213"/> <source>Pyramid Documentation</source> <translation>Pyramid Dokumentation</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="207"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="219"/> <source>URL:</source> <translation>URL:</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="214"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="226"/> <source>Enter the URL of the Pyramid documentation</source> <translation>Gib die URL für die Pyramid Dokumentation ein</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="60"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="61"/> <source>Plain Python</source> <translation>Normales Python</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="61"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="62"/> <source>IPython</source> <translation>IPython</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="62"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="63"/> <source>bpython</source> <translation>bpython</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="110"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="117"/> <source>Select Virtual Environment for Python 3</source> <translation>Wähle die virtuelle Umgebung für Python 3</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="128"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="135"/> <source>Select Virtual Environment for Python 2</source> <translation>Wähle die virtuelle Umgebung für Python 2</translation> </message> @@ -792,6 +803,26 @@ <source>Console Command</source> <translation>Konsole</translation> </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="149"/> + <source>Translations Editor</source> + <translation>Übersetzungseditor</translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="248"/> + <source>Enter the path of an editor to use to do the translations. Leave empty to disable this feature.</source> + <translation>Gib den Pfad für einen Editor an, um Übersetzungen zu erstellen. Leer lassen, um dieses Feature abzuschalten.</translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="261"/> + <source>Select the translations editor via a file selection dialog</source> + <translation>Wähle den Übersetzungseditor über einen Auswahldialog aus</translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="149"/> + <source>All Files (*)</source> + <translation>Alle Dateien (*)</translation> + </message> </context> <context> <name>PyramidRoutesDialog</name>
--- a/ProjectPyramid/i18n/pyramid_en.ts Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/i18n/pyramid_en.ts Thu Jun 20 18:59:13 2013 +0200 @@ -162,7 +162,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="673"/> + <location filename="ProjectPyramid/Project.py" line="698"/> <source>Create Pyramid Project</source> <translation type="unfinished"></translation> </message> @@ -182,7 +182,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="824"/> + <location filename="ProjectPyramid/Project.py" line="849"/> <source>Run Server</source> <translation type="unfinished"></translation> </message> @@ -222,7 +222,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="891"/> + <location filename="ProjectPyramid/Project.py" line="916"/> <source>Run Web-Browser</source> <translation type="unfinished"></translation> </message> @@ -242,7 +242,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="906"/> + <location filename="ProjectPyramid/Project.py" line="931"/> <source>Start Pyramid Python Console</source> <translation type="unfinished"></translation> </message> @@ -262,7 +262,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="937"/> + <location filename="ProjectPyramid/Project.py" line="962"/> <source>Setup Development Environment</source> <translation type="unfinished"></translation> </message> @@ -282,7 +282,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1018"/> + <location filename="ProjectPyramid/Project.py" line="1043"/> <source>Initialize Database</source> <translation type="unfinished"></translation> </message> @@ -302,7 +302,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1056"/> + <location filename="ProjectPyramid/Project.py" line="1081"/> <source>Show Matching Views</source> <translation type="unfinished"></translation> </message> @@ -322,7 +322,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1079"/> + <location filename="ProjectPyramid/Project.py" line="1104"/> <source>Show Routes</source> <translation type="unfinished"></translation> </message> @@ -342,7 +342,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1100"/> + <location filename="ProjectPyramid/Project.py" line="1125"/> <source>Show Tween Objects</source> <translation type="unfinished"></translation> </message> @@ -402,7 +402,7 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="596"/> + <location filename="ProjectPyramid/Project.py" line="621"/> <source>About Pyramid</source> <translation type="unfinished"></translation> </message> @@ -427,189 +427,199 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="334"/> + <location filename="ProjectPyramid/Project.py" line="352"/> <source>New template...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="343"/> + <location filename="ProjectPyramid/Project.py" line="361"/> <source>Extract Messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="345"/> + <location filename="ProjectPyramid/Project.py" line="363"/> <source>Compile All Catalogs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="347"/> + <location filename="ProjectPyramid/Project.py" line="365"/> <source>Compile Selected Catalogs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="350"/> + <location filename="ProjectPyramid/Project.py" line="368"/> <source>Update All Catalogs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="352"/> + <location filename="ProjectPyramid/Project.py" line="370"/> <source>Update Selected Catalogs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="388"/> + <location filename="ProjectPyramid/Project.py" line="413"/> <source>Chameleon Templates (*.pt);;Chameleon Text Templates (*.txt);;Mako Templates (*.mako);;Mako Templates (*.mak);;HTML Files (*.html);;HTML Files (*.htm);;All Files (*)</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="424"/> + <location filename="ProjectPyramid/Project.py" line="449"/> <source>New Form</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="411"/> + <location filename="ProjectPyramid/Project.py" line="436"/> <source>The file already exists! Overwrite it?</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="424"/> + <location filename="ProjectPyramid/Project.py" line="449"/> <source><p>The new form file <b>{0}</b> could not be created.<br/>Problem: {1}</p></source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="731"/> + <location filename="ProjectPyramid/Project.py" line="756"/> <source>Select Pyramid Project</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="731"/> + <location filename="ProjectPyramid/Project.py" line="756"/> <source>Select the Pyramid project to work with.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="769"/> + <location filename="ProjectPyramid/Project.py" line="794"/> <source>None</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="772"/> + <location filename="ProjectPyramid/Project.py" line="797"/> <source>&Current Pyramid Project ({0})</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1379"/> + <location filename="ProjectPyramid/Project.py" line="1404"/> <source>No current Pyramid project selected or no Pyramid project created yet. Aborting...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="925"/> + <location filename="ProjectPyramid/Project.py" line="1449"/> <source>Process Generation Error</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="851"/> + <location filename="ProjectPyramid/Project.py" line="876"/> <source>The Pyramid server could not be started.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="891"/> + <location filename="ProjectPyramid/Project.py" line="916"/> <source>Could not start the web-browser for the URL "{0}".</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="925"/> + <location filename="ProjectPyramid/Project.py" line="950"/> <source>The Pyramid Shell process could not be started.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="952"/> + <location filename="ProjectPyramid/Project.py" line="977"/> <source>Pyramid development environment setup successfully.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="966"/> + <location filename="ProjectPyramid/Project.py" line="991"/> <source>Build Distribution File</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="988"/> + <location filename="ProjectPyramid/Project.py" line="1013"/> <source>Python distribution file built successfully.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1032"/> + <location filename="ProjectPyramid/Project.py" line="1057"/> <source>Database initialized successfully.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1056"/> + <location filename="ProjectPyramid/Project.py" line="1081"/> <source>Enter the URL to be matched:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1190"/> + <location filename="ProjectPyramid/Project.py" line="1215"/> <source>Extract messages</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1205"/> + <location filename="ProjectPyramid/Project.py" line="1230"/> <source> Messages extracted successfully.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1252"/> + <location filename="ProjectPyramid/Project.py" line="1277"/> <source> Message catalog initialized successfully.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1301"/> + <location filename="ProjectPyramid/Project.py" line="1326"/> <source>Compiling message catalogs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1330"/> + <location filename="ProjectPyramid/Project.py" line="1355"/> <source> Message catalogs compiled successfully.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1399"/> + <location filename="ProjectPyramid/Project.py" line="1424"/> <source>No locales detected. Aborting...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1375"/> + <location filename="ProjectPyramid/Project.py" line="1400"/> <source>Updating message catalogs</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1404"/> + <location filename="ProjectPyramid/Project.py" line="1429"/> <source> Message catalogs updated successfully.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1235"/> + <location filename="ProjectPyramid/Project.py" line="1260"/> <source>Initializing message catalog for '{0}'</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="596"/> + <location filename="ProjectPyramid/Project.py" line="621"/> <source><p>Pyramid is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.</p><p><table><tr><td>Version:</td><td>{0}</td></tr><tr><td>URL:</td><td><a href="{1}">{1}</a></td></tr></table></p></source> <translation type="unfinished"></translation> </message> + <message> + <location filename="ProjectPyramid/Project.py" line="336"/> + <source>Open with {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/Project.py" line="1449"/> + <source>The translations editor process ({0}) could not be started.</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ProjectPyramidPlugin</name> <message> - <location filename="PluginProjectPyramid.py" line="382"/> + <location filename="PluginProjectPyramid.py" line="386"/> <source>Pyramid</source> <translation type="unfinished"></translation> </message> <message> - <location filename="PluginProjectPyramid.py" line="161"/> + <location filename="PluginProjectPyramid.py" line="162"/> <source>eric5 version is too old, {0}, {1} or newer needed.</source> <translation type="unfinished"></translation> </message> @@ -710,77 +720,77 @@ <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="146"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="152"/> <source>Pyramid Virtual Environment</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="152"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="164"/> <source>Enter the path of the Pyramid virtual environment. Leave empty to not use a virtual environment setup.</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="165"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="177"/> <source>Select the virtual environment directory via a selection dialog</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="168"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="264"/> <source>...</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="178"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="190"/> <source>Pyramid Python Console:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="191"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="203"/> <source>Select the Python console type</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="140"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="146"/> <source>Python 2</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="201"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="213"/> <source>Pyramid Documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="207"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="219"/> <source>URL:</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="214"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="226"/> <source>Enter the URL of the Pyramid documentation</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="60"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="61"/> <source>Plain Python</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="61"/> - <source>IPython</source> - <translation type="unfinished"></translation> - </message> - <message> <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="62"/> + <source>IPython</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="63"/> <source>bpython</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="110"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="117"/> <source>Select Virtual Environment for Python 3</source> <translation type="unfinished"></translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="128"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="135"/> <source>Select Virtual Environment for Python 2</source> <translation type="unfinished"></translation> </message> @@ -789,6 +799,26 @@ <source>Console Command</source> <translation type="unfinished"></translation> </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="149"/> + <source>Translations Editor</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="248"/> + <source>Enter the path of an editor to use to do the translations. Leave empty to disable this feature.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="261"/> + <source>Select the translations editor via a file selection dialog</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="149"/> + <source>All Files (*)</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>PyramidRoutesDialog</name>
--- a/ProjectPyramid/i18n/pyramid_es.ts Sun May 05 19:27:51 2013 +0200 +++ b/ProjectPyramid/i18n/pyramid_es.ts Thu Jun 20 18:59:13 2013 +0200 @@ -1,6 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE TS> -<TS version="2.0" language="es_ES"> +<!DOCTYPE TS><TS version="2.0" language="es_ES" sourcelanguage=""> <context> <name>CreateParametersDialog</name> <message> @@ -163,7 +162,7 @@ <translation><b>Proyecto Pyramid Actual</b><p>Seleciona el proyecto Pyramid. Se utiliza en proyectos Pyramid multi-proyecto Pyramid projects para cambiar entre proyectos.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="673"/> + <location filename="ProjectPyramid/Project.py" line="698"/> <source>Create Pyramid Project</source> <translation>Crear Proyecto Pyramid</translation> </message> @@ -183,7 +182,7 @@ <translation><b>Crear Proyecto Pyramid </b><p>Crea un nuevo proyecto Pyramid usando "pcreate".</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="824"/> + <location filename="ProjectPyramid/Project.py" line="849"/> <source>Run Server</source> <translation>Lanzar Servidor</translation> </message> @@ -223,7 +222,7 @@ <translation><b>Lanzar Servidor con Log</b><p>Inicia el servidor Web de Pyramid con log usando "pserve --log-file=server.log --reload development.ini".</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="891"/> + <location filename="ProjectPyramid/Project.py" line="916"/> <source>Run Web-Browser</source> <translation>Lanzar Navegador Web</translation> </message> @@ -243,7 +242,7 @@ <translation><b>Lanzar Navegador Web</b><p>Inicia el Navegador Web por defecto con la URL del servidor Web de Pyramid.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="906"/> + <location filename="ProjectPyramid/Project.py" line="931"/> <source>Start Pyramid Python Console</source> <translation>Iniciar Consola Python de Pyramid</translation> </message> @@ -263,7 +262,7 @@ <translation><b>Iniciar Consola Python de Pyramid</b><p>Inicia un intérprete interactivo de Python.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="937"/> + <location filename="ProjectPyramid/Project.py" line="962"/> <source>Setup Development Environment</source> <translation>Configurar Entorno de Desarrollo</translation> </message> @@ -283,7 +282,7 @@ <translation><b>Configurar Entorno de Desarrollo</b><p>Configurar el proyecto Pyramid en modo de desarrollo usando "python setup.py develop".</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1018"/> + <location filename="ProjectPyramid/Project.py" line="1043"/> <source>Initialize Database</source> <translation>Inicializar Base de Datos</translation> </message> @@ -303,7 +302,7 @@ <translation><b>Inicializar Base de Datos</b><p>Inicializa (o reinicializa) la base de datos del proyecto Pyramid actual.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1056"/> + <location filename="ProjectPyramid/Project.py" line="1081"/> <source>Show Matching Views</source> <translation>Mostrar Vistas Concordantes</translation> </message> @@ -323,7 +322,7 @@ <translation><b>Mostrar Vistas Concordantes</b><p>Mostrar vistas que concuerdan con una URL dada.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1079"/> + <location filename="ProjectPyramid/Project.py" line="1104"/> <source>Show Routes</source> <translation>Mostrar Rutas</translation> </message> @@ -343,7 +342,7 @@ <translation><b>Mostrar Rutas</b><p>Mostrar todas las rutas URL de despacho usadas por una aplicación Pyramid en el orden en que son evaluadas.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1100"/> + <location filename="ProjectPyramid/Project.py" line="1125"/> <source>Show Tween Objects</source> <translation>Mostrar Objetos Gemelos</translation> </message> @@ -403,7 +402,7 @@ <translation><b>Documentación</b><p>Muestra el visor de ayuda con la documentación de Pyramid.</p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="596"/> + <location filename="ProjectPyramid/Project.py" line="621"/> <source>About Pyramid</source> <translation>Acerca de Pyramid</translation> </message> @@ -428,52 +427,52 @@ <translation>P&yramid</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="334"/> + <location filename="ProjectPyramid/Project.py" line="352"/> <source>New template...</source> <translation>Nueva Plantilla...</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="343"/> + <location filename="ProjectPyramid/Project.py" line="361"/> <source>Extract Messages</source> <translation>Extraer Mensajes</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="345"/> + <location filename="ProjectPyramid/Project.py" line="363"/> <source>Compile All Catalogs</source> <translation>Compilar Todos los Catálogos</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="347"/> + <location filename="ProjectPyramid/Project.py" line="365"/> <source>Compile Selected Catalogs</source> <translation>Compilar Catálogos Seleccionados</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="350"/> + <location filename="ProjectPyramid/Project.py" line="368"/> <source>Update All Catalogs</source> <translation>Actualizar Todos los Catálogos</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="352"/> + <location filename="ProjectPyramid/Project.py" line="370"/> <source>Update Selected Catalogs</source> <translation>Actualizar Catálogos Seleccionados</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="388"/> + <location filename="ProjectPyramid/Project.py" line="413"/> <source>Chameleon Templates (*.pt);;Chameleon Text Templates (*.txt);;Mako Templates (*.mako);;Mako Templates (*.mak);;HTML Files (*.html);;HTML Files (*.htm);;All Files (*)</source> <translation>Plantillas Chameleon (*.pt);;Plantillas de Texto Chameleon (*.txt);;Plantillas Mako (*.mako);;Plantillas Mako (*.mak);;Archivos HTML (*.html);;Archivos HTML (*.htm);;Todos los Archivos (*)</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="424"/> + <location filename="ProjectPyramid/Project.py" line="449"/> <source>New Form</source> <translation>Nuevo Formulario</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="411"/> + <location filename="ProjectPyramid/Project.py" line="436"/> <source>The file already exists! Overwrite it?</source> <translation>¡El archivo ya existe!¿Sobreescribirlo?</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="424"/> + <location filename="ProjectPyramid/Project.py" line="449"/> <source><p>The new form file <b>{0}</b> could not be created.<br/>Problem: {1}</p></source> <translation><p>No ha podido crearse el nuevo archivo de formulario <b>{0}</b>.<br/>Problema: {1}</p></translation> </message> @@ -483,140 +482,150 @@ <translation type="obsolete"><p>Pyramid es un framework Web de alto nivel para Python que promueve desarrollo rápido, y diseño pragmático y limpio.</p><p>URL: <a href="{0}">{0}</a></p></translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="731"/> + <location filename="ProjectPyramid/Project.py" line="756"/> <source>Select Pyramid Project</source> <translation>Seleccionar Proyecto Pyramid</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="731"/> + <location filename="ProjectPyramid/Project.py" line="756"/> <source>Select the Pyramid project to work with.</source> <translation>Seleccionar el proyecto Pyramid con el que trabajar.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="769"/> + <location filename="ProjectPyramid/Project.py" line="794"/> <source>None</source> <translation>Ninguno</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="772"/> + <location filename="ProjectPyramid/Project.py" line="797"/> <source>&Current Pyramid Project ({0})</source> <translation>Proyecto Pyramid A&ctual ({0})</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1379"/> + <location filename="ProjectPyramid/Project.py" line="1404"/> <source>No current Pyramid project selected or no Pyramid project created yet. Aborting...</source> <translation>No se ha seleccionado proyecto Pyramid actual o no hay creado todavía ningún proyecto Pyramid. Abortando...</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="925"/> + <location filename="ProjectPyramid/Project.py" line="1449"/> <source>Process Generation Error</source> <translation>Error de Generación de Proceso</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="851"/> + <location filename="ProjectPyramid/Project.py" line="876"/> <source>The Pyramid server could not be started.</source> <translation>No se ha podido iniciar el servidor de Pyramid.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="891"/> + <location filename="ProjectPyramid/Project.py" line="916"/> <source>Could not start the web-browser for the URL "{0}".</source> <translation>No se ha podido inicialr el navegador web para la URL "{0}".</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="925"/> + <location filename="ProjectPyramid/Project.py" line="950"/> <source>The Pyramid Shell process could not be started.</source> <translation>No se ha podido iniciar el proceso Shell de Pyramid.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="952"/> + <location filename="ProjectPyramid/Project.py" line="977"/> <source>Pyramid development environment setup successfully.</source> <translation>Entorno de desarrollo de Pyramid configurado con éxito.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="966"/> + <location filename="ProjectPyramid/Project.py" line="991"/> <source>Build Distribution File</source> <translation>Construir Archivo de Distribución</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="988"/> + <location filename="ProjectPyramid/Project.py" line="1013"/> <source>Python distribution file built successfully.</source> <translation>Archivo de distribución Python construido con éxito.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1032"/> + <location filename="ProjectPyramid/Project.py" line="1057"/> <source>Database initialized successfully.</source> <translation>Base de Datos inicializada con éxito.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1056"/> + <location filename="ProjectPyramid/Project.py" line="1081"/> <source>Enter the URL to be matched:</source> <translation>Introducir la URL a ser concordada:</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1190"/> + <location filename="ProjectPyramid/Project.py" line="1215"/> <source>Extract messages</source> <translation>Extraer mensajes</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1205"/> + <location filename="ProjectPyramid/Project.py" line="1230"/> <source> Messages extracted successfully.</source> <translation>Mensajes extraídos con éxito.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1252"/> + <location filename="ProjectPyramid/Project.py" line="1277"/> <source> Message catalog initialized successfully.</source> <translation>Catálogo de Mensajes inicializado con éxito.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1301"/> + <location filename="ProjectPyramid/Project.py" line="1326"/> <source>Compiling message catalogs</source> <translation>Compilando catálogos de mensajes</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1330"/> + <location filename="ProjectPyramid/Project.py" line="1355"/> <source> Message catalogs compiled successfully.</source> <translation>Catálogo de Mensajes compilado con éxito.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1399"/> + <location filename="ProjectPyramid/Project.py" line="1424"/> <source>No locales detected. Aborting...</source> <translation>No se han detectado traducciones. Abortando...</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1375"/> + <location filename="ProjectPyramid/Project.py" line="1400"/> <source>Updating message catalogs</source> <translation>Actualizando catálogos de mensajes</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1404"/> + <location filename="ProjectPyramid/Project.py" line="1429"/> <source> Message catalogs updated successfully.</source> <translation>Catálogo de Mensajes actualizado con éxito.</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="1235"/> + <location filename="ProjectPyramid/Project.py" line="1260"/> <source>Initializing message catalog for '{0}'</source> <translation>Inicializando catálogo de mensajes para '{0}'</translation> </message> <message> - <location filename="ProjectPyramid/Project.py" line="596"/> + <location filename="ProjectPyramid/Project.py" line="621"/> <source><p>Pyramid is a high-level Python Web framework that encourages rapid development and clean, pragmatic design.</p><p><table><tr><td>Version:</td><td>{0}</td></tr><tr><td>URL:</td><td><a href="{1}">{1}</a></td></tr></table></p></source> <translation><p>Pyramid es un framework Web de alto nivel para Python que promueve desarrollo rápido, y diseño pragmático y limpio.</p><p><table><tr><td>Versión:</td><td>{0}</td></tr><tr><td>URL:</td><td><a href="{1}">{1}</a></td></tr></table></p></translation> </message> + <message> + <location filename="ProjectPyramid/Project.py" line="336"/> + <source>Open with {0}</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/Project.py" line="1449"/> + <source>The translations editor process ({0}) could not be started.</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>ProjectPyramidPlugin</name> <message> - <location filename="PluginProjectPyramid.py" line="382"/> + <location filename="PluginProjectPyramid.py" line="386"/> <source>Pyramid</source> <translation></translation> </message> <message> - <location filename="PluginProjectPyramid.py" line="161"/> + <location filename="PluginProjectPyramid.py" line="162"/> <source>eric5 version is too old, {0}, {1} or newer needed.</source> <translation>La versión de eric5 es demasiado antigua, {0}, es necesaria {1} o más reciente .</translation> </message> @@ -717,77 +726,77 @@ <translation>Python 3</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="146"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="152"/> <source>Pyramid Virtual Environment</source> <translation>Entorno Virtual de Pyramid</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="152"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="164"/> <source>Enter the path of the Pyramid virtual environment. Leave empty to not use a virtual environment setup.</source> <translation>Introducir la ruta del entorno virtual de Pyramid. Dejar vacío para no utilizar una configuración de entorno virtual.</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="165"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="177"/> <source>Select the virtual environment directory via a selection dialog</source> <translation>Seleccionar el directorio de entorno virtual a través de un diálogo de selección</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="168"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="264"/> <source>...</source> <translation>...</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="178"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="190"/> <source>Pyramid Python Console:</source> <translation>Consola Python de Pyramid:</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="191"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="203"/> <source>Select the Python console type</source> <translation>Seleccionar el tipo de consola de Python</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="140"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="146"/> <source>Python 2</source> <translation>Python 2</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="201"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="213"/> <source>Pyramid Documentation</source> <translation>Documentación de Pyramid</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="207"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="219"/> <source>URL:</source> <translation>URL:</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="214"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="226"/> <source>Enter the URL of the Pyramid documentation</source> <translation>Introducir la URL de la documentación de Pyramid</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="60"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="61"/> <source>Plain Python</source> <translation>Python normal</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="61"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="62"/> <source>IPython</source> <translation>IPython</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="62"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="63"/> <source>bpython</source> <translation>bpython</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="110"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="117"/> <source>Select Virtual Environment for Python 3</source> <translation>Seleccionar Entorno Virtual para Python 3</translation> </message> <message> - <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="128"/> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="135"/> <source>Select Virtual Environment for Python 2</source> <translation>Seleccionar Entorno Virtual para Python 2</translation> </message> @@ -796,6 +805,26 @@ <source>Console Command</source> <translation>Comando de Consola</translation> </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="149"/> + <source>Translations Editor</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="248"/> + <source>Enter the path of an editor to use to do the translations. Leave empty to disable this feature.</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.ui" line="261"/> + <source>Select the translations editor via a file selection dialog</source> + <translation type="unfinished"></translation> + </message> + <message> + <location filename="ProjectPyramid/ConfigurationPage/PyramidPage.py" line="149"/> + <source>All Files (*)</source> + <translation type="unfinished"></translation> + </message> </context> <context> <name>PyramidRoutesDialog</name>