Ported the plug-in to PyQt6 for eric7. eric7

Tue, 25 May 2021 20:12:47 +0200

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Tue, 25 May 2021 20:12:47 +0200
branch
eric7
changeset 38
6a12561fc0b5
parent 37
01822a402c97
child 39
0973a069f795

Ported the plug-in to PyQt6 for eric7.

.hgignore file | annotate | diff | comparison | revisions
ChangeLog file | annotate | diff | comparison | revisions
PluginProjectWeb.py file | annotate | diff | comparison | revisions
PluginProjectWeb.zip file | annotate | diff | comparison | revisions
PluginWeb.e4p file | annotate | diff | comparison | revisions
PluginWeb.epj file | annotate | diff | comparison | revisions
ProjectWeb/Documentation/source/Plugin_Project_Web.PluginProjectWeb.html file | annotate | diff | comparison | revisions
ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5Prettifier.html file | annotate | diff | comparison | revisions
ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToCss3Converter.html file | annotate | diff | comparison | revisions
ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToCss3ConverterParameterDialog.html file | annotate | diff | comparison | revisions
ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToJsConverter.html file | annotate | diff | comparison | revisions
ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToJsConverterParameterDialog.html file | annotate | diff | comparison | revisions
ProjectWeb/Html5Prettifier.py file | annotate | diff | comparison | revisions
ProjectWeb/Html5ToCss3Converter.py file | annotate | diff | comparison | revisions
ProjectWeb/Html5ToCss3ConverterParameterDialog.py file | annotate | diff | comparison | revisions
ProjectWeb/Html5ToJsConverter.py file | annotate | diff | comparison | revisions
ProjectWeb/Html5ToJsConverterParameterDialog.py file | annotate | diff | comparison | revisions
ProjectWeb/i18n/web_de.qm file | annotate | diff | comparison | revisions
ProjectWeb/i18n/web_de.ts file | annotate | diff | comparison | revisions
ProjectWeb/i18n/web_en.qm file | annotate | diff | comparison | revisions
ProjectWeb/i18n/web_en.ts file | annotate | diff | comparison | revisions
ProjectWeb/i18n/web_es.ts file | annotate | diff | comparison | revisions
ProjectWeb/i18n/web_pt.ts file | annotate | diff | comparison | revisions
ProjectWeb/i18n/web_ru.ts file | annotate | diff | comparison | revisions
--- a/.hgignore	Tue May 25 19:44:14 2021 +0200
+++ b/.hgignore	Tue May 25 20:12:47 2021 +0200
@@ -1,11 +1,6 @@
 glob:.eric6project
-glob:_eric6project
-glob:.eric5project
-glob:_eric5project
-glob:.eric4project
-glob:_eric4project
+glob:.eric7project
 glob:.ropeproject
-glob:_ropeproject
 glob:.directory
 glob:**.pyc
 glob:**.pyo
--- a/ChangeLog	Tue May 25 19:44:14 2021 +0200
+++ b/ChangeLog	Tue May 25 20:12:47 2021 +0200
@@ -1,5 +1,10 @@
 ChangeLog
 ---------
+Version 1.0.0:
+- first release of the eric7 variant
+
+************************************************************
+
 Version 2.2.0:
 - implemented some code simplifications
 
--- a/PluginProjectWeb.py	Tue May 25 19:44:14 2021 +0200
+++ b/PluginProjectWeb.py	Tue May 25 20:12:47 2021 +0200
@@ -10,10 +10,10 @@
 import contextlib
 import os
 
-from PyQt5.QtCore import QObject, QTranslator
-from PyQt5.QtWidgets import QMenu
+from PyQt6.QtCore import QObject, QTranslator
+from PyQt6.QtWidgets import QMenu
 
-from E5Gui.E5Application import e5App
+from EricWidgets.EricApplication import ericApp
 
 import Preferences
 
@@ -29,13 +29,13 @@
 author = "Detlev Offenbach <detlev@die-offenbachs.de>"
 autoactivate = True
 deactivateable = True
-version = "2.2.0"
+version = "1.0.0"
 className = "ProjectWebPlugin"
 packageName = "ProjectWeb"
 shortDescription = "Support for Web projects and web related tools."
 longDescription = (
     """This plug-in provides support for ordinary web projects and some web"""
-    """ related tools.\n\nIt requires BeautifulSoup4 for some of its"""
+    """ related tools.\n\nIt uses BeautifulSoup4 for some of its"""
     """ functionality."""
 )
 needsRestart = False
@@ -53,7 +53,8 @@
         """
         Constructor
         
-        @param ui reference to the user interface object (UI.UserInterface)
+        @param ui reference to the user interface object
+        @type UserInterface
         """
         super().__init__(ui)
         self.__ui = ui
@@ -68,7 +69,7 @@
         """
         Private slot to (re)initialize the plugin.
         """
-        self.__e5project = e5App().getObject("Project")
+        self.__ericProject = ericApp().getObject("Project")
         
         self.__editors = {}
         self.__mainActions = []
@@ -77,13 +78,14 @@
         """
         Public method to activate this plugin.
         
-        @return tuple of None and activation status (boolean)
+        @return tuple of None and activation status
+        @rtype tuple of (None, bool)
         """
         global error
         error = ""     # clear previous error
         
         # it is not registered for a specific programming language
-        self.__e5project.registerProjectType(
+        self.__ericProject.registerProjectType(
             "Web", self.tr("Web"),
             self.fileTypesCallback)
         
@@ -105,12 +107,12 @@
             act = menu.addMenu(self.__menu)
             self.__mainActions.append(act)
         
-        e5App().getObject("ViewManager").editorOpenedEd.connect(
+        ericApp().getObject("ViewManager").editorOpenedEd.connect(
             self.__editorOpened)
-        e5App().getObject("ViewManager").editorClosedEd.connect(
+        ericApp().getObject("ViewManager").editorClosedEd.connect(
             self.__editorClosed)
         
-        for editor in e5App().getObject("ViewManager").getOpenEditors():
+        for editor in ericApp().getObject("ViewManager").getOpenEditors():
             self.__editorOpened(editor)
         
         return None, True
@@ -119,7 +121,7 @@
         """
         Public method to deactivate this plugin.
         """
-        self.__e5project.unregisterProjectType("Web")
+        self.__ericProject.unregisterProjectType("Web")
         
         self.__ui.showMenu.disconnect(self.__populateMenu)
         
@@ -129,9 +131,9 @@
                 menu.removeAction(act)
         self.__mainActions = []
 
-        e5App().getObject("ViewManager").editorOpenedEd.disconnect(
+        ericApp().getObject("ViewManager").editorOpenedEd.disconnect(
             self.__editorOpened)
-        e5App().getObject("ViewManager").editorClosedEd.disconnect(
+        ericApp().getObject("ViewManager").editorClosedEd.disconnect(
             self.__editorClosed)
         
         for editor, acts in self.__editors.items():
@@ -157,7 +159,7 @@
                 loaded = translator.load(translation, locale_dir)
                 if loaded:
                     self.__translator = translator
-                    e5App().installTranslator(self.__translator)
+                    ericApp().installTranslator(self.__translator)
                 else:
                     print("Warning: translation file '{0}' could not be"
                           " loaded.".format(translation))
@@ -168,8 +170,9 @@
         Public method to get the filetype associations of the Web project type.
         
         @return dictionary with file type associations
+        @rtype dict
         """
-        if self.__e5project.getProjectType() == "Web":
+        if self.__ericProject.getProjectType() == "Web":
             return {
                 "*.html": "FORMS",
                 "*.htm": "FORMS",
@@ -198,7 +201,7 @@
         """
         Private slot to prepare the menu before it is shown.
         """
-        editor = e5App().getObject("ViewManager").activeWindow()
+        editor = ericApp().getObject("ViewManager").activeWindow()
         selectionAvailable = bool(editor and editor.selectedText() != "")
         isHtml = bool(editor and
                       editor.getLanguage().lower().startswith("html"))
@@ -214,8 +217,10 @@
         """
         Private slot to populate the tools menu with our entries.
         
-        @param name name of the menu (string)
-        @param menu reference to the menu to be populated (QMenu)
+        @param name name of the menu
+        @type str
+        @param menu reference to the menu to be populated
+        @type QMenu
         """
         if name not in ["Tools", "PluginTools"]:
             return
@@ -229,7 +234,8 @@
         """
         Private slot called, when a new editor was opened.
         
-        @param editor reference to the new editor (QScintilla.Editor)
+        @param editor reference to the new editor
+        @type Editor
         """
         menu = editor.getMenu("Tools")
         if menu is not None:
@@ -245,7 +251,8 @@
         """
         Private slot called, when an editor was closed.
         
-        @param editor reference to the editor (QScintilla.Editor)
+        @param editor reference to the editor
+        @type Editor
         """
         with contextlib.suppress(KeyError):
             del self.__editors[editor]
@@ -255,9 +262,12 @@
         Private slot called, when the the editor context menu or a submenu is
         about to be shown.
         
-        @param menuName name of the menu to be shown (string)
-        @param menu reference to the menu (QMenu)
+        @param menuName name of the menu to be shown
+        @type str
+        @param menu reference to the menu
+        @type QMenu
         @param editor reference to the editor
+        @type Editor
         """
         if (
             menuName == "Tools" and
@@ -276,7 +286,7 @@
         Private slot handling the HTML5 to CSS3 conversion.
         """
         from ProjectWeb.Html5ToCss3Converter import Html5ToCss3Converter
-        vm = e5App().getObject("ViewManager")
+        vm = ericApp().getObject("ViewManager")
         editor = vm.activeWindow()
         html = editor.selectedText()
         
@@ -294,7 +304,7 @@
         Private slot handling the HTML5 to JavaScript conversion.
         """
         from ProjectWeb.Html5ToJsConverter import Html5ToJsConverter
-        vm = e5App().getObject("ViewManager")
+        vm = ericApp().getObject("ViewManager")
         editor = vm.activeWindow()
         html = editor.selectedText()
         
@@ -312,7 +322,7 @@
         Private slot handling the Prettify HTML action.
         """
         from ProjectWeb.Html5Prettifier import Html5Prettifier
-        editor = e5App().getObject("ViewManager").activeWindow()
+        editor = ericApp().getObject("ViewManager").activeWindow()
         html = editor.text()
         
         prettifier = Html5Prettifier(html)
@@ -328,5 +338,18 @@
             
             editor.setCursorPosition(cursorLine, cursorIndex)
 
+
+def installDependencies(pipInstall):
+    """
+    Function to install dependencies of this plug-in.
+    
+    @param pipInstall function to be called with a list of package names.
+    @type function
+    """
+    try:
+        import bs4         # __IGNORE_WARNING__
+    except ImportError:
+        pipInstall(["beautifulsoup4"])
+
 #
 # eflag: noqa = M801
Binary file PluginProjectWeb.zip has changed
--- a/PluginWeb.e4p	Tue May 25 19:44:14 2021 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,513 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE Project SYSTEM "Project-5.1.dtd">
-<!-- eric project file for project PluginWeb -->
-<!-- Copyright (C) 2020 Detlev Offenbach, detlev@die-offenbachs.de -->
-<Project version="5.1">
-  <Language>en_US</Language>
-  <Hash>b8ec8ccc0a087e55bdb7879c78b018b43ce2c6ed</Hash>
-  <ProgLanguage mixed="0">Python3</ProgLanguage>
-  <ProjectType>E6Plugin</ProjectType>
-  <Description>Plugin implementing support for ordinary Web projects and providing web related tools.</Description>
-  <Version>0.x</Version>
-  <Author>Detlev Offenbach</Author>
-  <Email>detlev@die-offenbachs.de</Email>
-  <TranslationPattern>ProjectWeb/i18n/web_%language%.ts</TranslationPattern>
-  <Eol index="1"/>
-  <Sources>
-    <Source>PluginProjectWeb.py</Source>
-    <Source>ProjectWeb/Html5Prettifier.py</Source>
-    <Source>ProjectWeb/Html5ToCss3Converter.py</Source>
-    <Source>ProjectWeb/Html5ToCss3ConverterParameterDialog.py</Source>
-    <Source>ProjectWeb/Html5ToJsConverter.py</Source>
-    <Source>ProjectWeb/Html5ToJsConverterParameterDialog.py</Source>
-    <Source>ProjectWeb/__init__.py</Source>
-    <Source>__init__.py</Source>
-  </Sources>
-  <Forms>
-    <Form>ProjectWeb/Html5ToCss3ConverterParameterDialog.ui</Form>
-    <Form>ProjectWeb/Html5ToJsConverterParameterDialog.ui</Form>
-  </Forms>
-  <Translations>
-    <Translation>ProjectWeb/i18n/web_de.qm</Translation>
-    <Translation>ProjectWeb/i18n/web_de.ts</Translation>
-    <Translation>ProjectWeb/i18n/web_en.qm</Translation>
-    <Translation>ProjectWeb/i18n/web_en.ts</Translation>
-    <Translation>ProjectWeb/i18n/web_es.qm</Translation>
-    <Translation>ProjectWeb/i18n/web_es.ts</Translation>
-    <Translation>ProjectWeb/i18n/web_pt.ts</Translation>
-    <Translation>ProjectWeb/i18n/web_ru.qm</Translation>
-    <Translation>ProjectWeb/i18n/web_ru.ts</Translation>
-  </Translations>
-  <Others>
-    <Other>.hgignore</Other>
-    <Other>ChangeLog</Other>
-    <Other>PKGLIST</Other>
-    <Other>PluginProjectWeb.zip</Other>
-    <Other>PluginWeb.e4p</Other>
-    <Other>ProjectWeb/Documentation/LICENSE.GPL3</Other>
-    <Other>ProjectWeb/Documentation/source</Other>
-  </Others>
-  <MainScript>PluginProjectWeb.py</MainScript>
-  <Vcs>
-    <VcsType>Mercurial</VcsType>
-    <VcsOptions>
-      <dict>
-        <key>
-          <string>add</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>checkout</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>commit</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>diff</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>export</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>global</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>history</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>log</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>remove</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>status</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>tag</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-        <key>
-          <string>update</string>
-        </key>
-        <value>
-          <list>
-            <string></string>
-          </list>
-        </value>
-      </dict>
-    </VcsOptions>
-  </Vcs>
-  <FiletypeAssociations>
-    <FiletypeAssociation pattern="*.idl" type="INTERFACES"/>
-    <FiletypeAssociation pattern="*.py" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.py3" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.pyw" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.pyw3" type="SOURCES"/>
-    <FiletypeAssociation pattern="*.qm" type="TRANSLATIONS"/>
-    <FiletypeAssociation pattern="*.qrc" type="RESOURCES"/>
-    <FiletypeAssociation pattern="*.ts" type="TRANSLATIONS"/>
-    <FiletypeAssociation pattern="*.ui" type="FORMS"/>
-    <FiletypeAssociation pattern="Ui_*.py" type="__IGNORE__"/>
-  </FiletypeAssociations>
-  <Documentation>
-    <DocumentationParams>
-      <dict>
-        <key>
-          <string>ERIC4DOC</string>
-        </key>
-        <value>
-          <dict>
-            <key>
-              <string>cssFile</string>
-            </key>
-            <value>
-              <string>%PYTHON%/eric6/CSSs/default.css</string>
-            </value>
-            <key>
-              <string>ignoreDirectories</string>
-            </key>
-            <value>
-              <list>
-                <string>.eric6project</string>
-                <string>.hg</string>
-                <string>.ropeproject</string>
-                <string>_eric6project</string>
-                <string>_ropeproject</string>
-              </list>
-            </value>
-            <key>
-              <string>ignoreFilePatterns</string>
-            </key>
-            <value>
-              <list>
-                <string>Ui_*</string>
-              </list>
-            </value>
-            <key>
-              <string>outputDirectory</string>
-            </key>
-            <value>
-              <string>ProjectWeb/Documentation/source</string>
-            </value>
-            <key>
-              <string>qtHelpEnabled</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>useRecursion</string>
-            </key>
-            <value>
-              <bool>True</bool>
-            </value>
-          </dict>
-        </value>
-      </dict>
-    </DocumentationParams>
-  </Documentation>
-  <Checkers>
-    <CheckersParams>
-      <dict>
-        <key>
-          <string>Pep8Checker</string>
-        </key>
-        <value>
-          <dict>
-            <key>
-              <string>AnnotationsChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>MaximumComplexity</string>
-                </key>
-                <value>
-                  <int>3</int>
-                </value>
-                <key>
-                  <string>MinimumCoverage</string>
-                </key>
-                <value>
-                  <int>75</int>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>BlankLines</string>
-            </key>
-            <value>
-              <tuple>
-                <int>2</int>
-                <int>1</int>
-              </tuple>
-            </value>
-            <key>
-              <string>BuiltinsChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>bytes</string>
-                </key>
-                <value>
-                  <list>
-                    <string>unicode</string>
-                  </list>
-                </value>
-                <key>
-                  <string>chr</string>
-                </key>
-                <value>
-                  <list>
-                    <string>unichr</string>
-                  </list>
-                </value>
-                <key>
-                  <string>str</string>
-                </key>
-                <value>
-                  <list>
-                    <string>unicode</string>
-                  </list>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>CommentedCodeChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>Aggressive</string>
-                </key>
-                <value>
-                  <bool>False</bool>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>CopyrightAuthor</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>CopyrightMinFileSize</string>
-            </key>
-            <value>
-              <int>0</int>
-            </value>
-            <key>
-              <string>DocstringType</string>
-            </key>
-            <value>
-              <string>eric</string>
-            </value>
-            <key>
-              <string>EnabledCheckerCategories</string>
-            </key>
-            <value>
-              <string>C, D, E, M, N, S, W</string>
-            </value>
-            <key>
-              <string>ExcludeFiles</string>
-            </key>
-            <value>
-              <string>*/Ui_*.py, */*_rc.py,</string>
-            </value>
-            <key>
-              <string>ExcludeMessages</string>
-            </key>
-            <value>
-              <string>C101,E265,E266,E305,E402,M811,N802,N803,N807,N808,N821,W293,M201,W504,M305</string>
-            </value>
-            <key>
-              <string>FixCodes</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>FixIssues</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>FutureChecker</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>HangClosing</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>IncludeMessages</string>
-            </key>
-            <value>
-              <string></string>
-            </value>
-            <key>
-              <string>LineComplexity</string>
-            </key>
-            <value>
-              <int>20</int>
-            </value>
-            <key>
-              <string>LineComplexityScore</string>
-            </key>
-            <value>
-              <int>10</int>
-            </value>
-            <key>
-              <string>MaxCodeComplexity</string>
-            </key>
-            <value>
-              <int>10</int>
-            </value>
-            <key>
-              <string>MaxDocLineLength</string>
-            </key>
-            <value>
-              <int>79</int>
-            </value>
-            <key>
-              <string>MaxLineLength</string>
-            </key>
-            <value>
-              <int>79</int>
-            </value>
-            <key>
-              <string>NoFixCodes</string>
-            </key>
-            <value>
-              <string>E501</string>
-            </value>
-            <key>
-              <string>RepeatMessages</string>
-            </key>
-            <value>
-              <bool>True</bool>
-            </value>
-            <key>
-              <string>SecurityChecker</string>
-            </key>
-            <value>
-              <dict>
-                <key>
-                  <string>CheckTypedException</string>
-                </key>
-                <value>
-                  <bool>False</bool>
-                </value>
-                <key>
-                  <string>HardcodedTmpDirectories</string>
-                </key>
-                <value>
-                  <list>
-                    <string>/tmp</string>
-                    <string>/var/tmp</string>
-                    <string>/dev/shm</string>
-                    <string>~/tmp</string>
-                  </list>
-                </value>
-                <key>
-                  <string>InsecureHashes</string>
-                </key>
-                <value>
-                  <list>
-                    <string>md4</string>
-                    <string>md5</string>
-                    <string>sha</string>
-                    <string>sha1</string>
-                  </list>
-                </value>
-                <key>
-                  <string>InsecureSslProtocolVersions</string>
-                </key>
-                <value>
-                  <list>
-                    <string>PROTOCOL_SSLv2</string>
-                    <string>SSLv2_METHOD</string>
-                    <string>SSLv23_METHOD</string>
-                    <string>PROTOCOL_SSLv3</string>
-                    <string>PROTOCOL_TLSv1</string>
-                    <string>SSLv3_METHOD</string>
-                    <string>TLSv1_METHOD</string>
-                  </list>
-                </value>
-                <key>
-                  <string>WeakKeySizeDsaHigh</string>
-                </key>
-                <value>
-                  <string>1024</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeDsaMedium</string>
-                </key>
-                <value>
-                  <string>2048</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeEcHigh</string>
-                </key>
-                <value>
-                  <string>160</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeEcMedium</string>
-                </key>
-                <value>
-                  <string>224</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeRsaHigh</string>
-                </key>
-                <value>
-                  <string>1024</string>
-                </value>
-                <key>
-                  <string>WeakKeySizeRsaMedium</string>
-                </key>
-                <value>
-                  <string>2048</string>
-                </value>
-              </dict>
-            </value>
-            <key>
-              <string>ShowIgnored</string>
-            </key>
-            <value>
-              <bool>False</bool>
-            </value>
-            <key>
-              <string>ValidEncodings</string>
-            </key>
-            <value>
-              <string>latin-1, utf-8</string>
-            </value>
-          </dict>
-        </value>
-      </dict>
-    </CheckersParams>
-  </Checkers>
-</Project>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/PluginWeb.epj	Tue May 25 20:12:47 2021 +0200
@@ -0,0 +1,274 @@
+{
+  "header": {
+    "comment": "eric project file for project PluginWeb",
+    "copyright": "Copyright (C) 2021 Detlev Offenbach, detlev@die-offenbachs.de"
+  },
+  "project": {
+    "AUTHOR": "Detlev Offenbach",
+    "CHECKERSPARMS": {
+      "Pep8Checker": {
+        "AnnotationsChecker": {
+          "AllowUntypedDefs": false,
+          "AllowUntypedNested": false,
+          "DispatchDecorators": [
+            "singledispatch",
+            "singledispatchmethod"
+          ],
+          "MaximumComplexity": 3,
+          "MaximumLength": 7,
+          "MinimumCoverage": 75,
+          "MypyInitReturn": false,
+          "OverloadDecorators": [
+            "overload"
+          ],
+          "SuppressDummyArgs": false,
+          "SuppressNoneReturning": true
+        },
+        "BlankLines": [
+          2,
+          1
+        ],
+        "BuiltinsChecker": {
+          "bytes": [
+            "unicode"
+          ],
+          "chr": [
+            "unichr"
+          ],
+          "str": [
+            "unicode"
+          ]
+        },
+        "CommentedCodeChecker": {
+          "Aggressive": false,
+          "WhiteList": [
+            "pylint",
+            "pyright",
+            "noqa",
+            "type:\\s*ignore",
+            "fmt:\\s*(on|off)",
+            "TODO",
+            "FIXME",
+            "WARNING",
+            "NOTE",
+            "TEST",
+            "DOCU",
+            "XXX",
+            "- "
+          ]
+        },
+        "CopyrightAuthor": "",
+        "CopyrightMinFileSize": 0,
+        "DocstringType": "eric",
+        "EnabledCheckerCategories": "C, D, E, M, N, S, Y, W",
+        "ExcludeFiles": "*/Ui_*.py, */*_rc.py,",
+        "ExcludeMessages": "C101,E265,E266,E305,E402,M201,M301,M302,M303,M304,M305,M306,M307,M308,M311,M312,M313,M314,M315,M321,M701,M702,M811,M834,N802,N803,N807,N808,N821,W293,W504,Y119,Y401,Y402",
+        "FixCodes": "",
+        "FixIssues": false,
+        "FutureChecker": "",
+        "HangClosing": false,
+        "IncludeMessages": "",
+        "LineComplexity": 25,
+        "LineComplexityScore": 10,
+        "MaxCodeComplexity": 10,
+        "MaxDocLineLength": 79,
+        "MaxLineLength": 79,
+        "NoFixCodes": "E501",
+        "RepeatMessages": true,
+        "SecurityChecker": {
+          "CheckTypedException": false,
+          "HardcodedTmpDirectories": [
+            "/tmp",
+            "/var/tmp",
+            "/dev/shm",
+            "~/tmp"
+          ],
+          "InsecureHashes": [
+            "md4",
+            "md5",
+            "sha",
+            "sha1"
+          ],
+          "InsecureSslProtocolVersions": [
+            "PROTOCOL_SSLv2",
+            "SSLv2_METHOD",
+            "SSLv23_METHOD",
+            "PROTOCOL_SSLv3",
+            "PROTOCOL_TLSv1",
+            "SSLv3_METHOD",
+            "TLSv1_METHOD"
+          ],
+          "WeakKeySizeDsaHigh": "1024",
+          "WeakKeySizeDsaMedium": "2048",
+          "WeakKeySizeEcHigh": "160",
+          "WeakKeySizeEcMedium": "224",
+          "WeakKeySizeRsaHigh": "1024",
+          "WeakKeySizeRsaMedium": "2048"
+        },
+        "ShowIgnored": false,
+        "ValidEncodings": "latin-1, utf-8"
+      }
+    },
+    "DESCRIPTION": "Plugin implementing support for ordinary Web projects and providing web related tools.",
+    "DOCSTRING": "",
+    "DOCUMENTATIONPARMS": {
+      "ERIC4DOC": {
+        "cssFile": "%PYTHON%/eric7/CSSs/default.css",
+        "ignoreDirectories": [
+          ".eric6project",
+          ".hg",
+          ".ropeproject",
+          ".eric7project"
+        ],
+        "ignoreFilePatterns": [
+          "Ui_*"
+        ],
+        "outputDirectory": "ProjectWeb/Documentation/source",
+        "qtHelpEnabled": false,
+        "useRecursion": true
+      }
+    },
+    "EMAIL": "detlev@die-offenbachs.de",
+    "EOL": 1,
+    "FILETYPES": {
+      "*.e4p": "OTHERS",
+      "*.epj": "OTHERS",
+      "*.idl": "INTERFACES",
+      "*.md": "OTHERS",
+      "*.proto": "PROTOCOLS",
+      "*.py": "SOURCES",
+      "*.py3": "SOURCES",
+      "*.pyw": "SOURCES",
+      "*.pyw3": "SOURCES",
+      "*.qm": "TRANSLATIONS",
+      "*.rst": "OTHERS",
+      "*.ts": "TRANSLATIONS",
+      "*.txt": "OTHERS",
+      "*.ui": "FORMS",
+      "GNUmakefile": "OTHERS",
+      "Makefile": "OTHERS",
+      "README": "OTHERS",
+      "README.*": "OTHERS",
+      "makefile": "OTHERS"
+    },
+    "FORMS": [
+      "ProjectWeb/Html5ToCss3ConverterParameterDialog.ui",
+      "ProjectWeb/Html5ToJsConverterParameterDialog.ui"
+    ],
+    "HASH": "b8ec8ccc0a087e55bdb7879c78b018b43ce2c6ed",
+    "IDLPARAMS": {
+      "DefinedNames": [],
+      "IncludeDirs": [],
+      "UndefinedNames": []
+    },
+    "INTERFACES": [],
+    "LEXERASSOCS": {},
+    "MAINSCRIPT": "PluginProjectWeb.py",
+    "MAKEPARAMS": {
+      "MakeEnabled": false,
+      "MakeExecutable": "",
+      "MakeFile": "",
+      "MakeParameters": "",
+      "MakeTarget": "",
+      "MakeTestOnly": true
+    },
+    "MIXEDLANGUAGE": false,
+    "OTHERS": [
+      ".hgignore",
+      "ChangeLog",
+      "PKGLIST",
+      "PluginProjectWeb.zip",
+      "ProjectWeb/Documentation/LICENSE.GPL3",
+      "ProjectWeb/Documentation/source",
+      "PluginWeb.epj"
+    ],
+    "OTHERTOOLSPARMS": {},
+    "PACKAGERSPARMS": {},
+    "PROGLANGUAGE": "Python3",
+    "PROJECTTYPE": "E7Plugin",
+    "PROJECTTYPESPECIFICDATA": {},
+    "PROTOCOLS": [],
+    "RCCPARAMS": {
+      "CompressLevel": 0,
+      "CompressionDisable": false,
+      "CompressionThreshold": 70,
+      "PathPrefix": ""
+    },
+    "RESOURCES": [],
+    "SOURCES": [
+      "PluginProjectWeb.py",
+      "ProjectWeb/Html5Prettifier.py",
+      "ProjectWeb/Html5ToCss3Converter.py",
+      "ProjectWeb/Html5ToCss3ConverterParameterDialog.py",
+      "ProjectWeb/Html5ToJsConverter.py",
+      "ProjectWeb/Html5ToJsConverterParameterDialog.py",
+      "ProjectWeb/__init__.py",
+      "__init__.py",
+      "ProjectWeb/Ui_Html5ToCss3ConverterParameterDialog.py",
+      "ProjectWeb/Ui_Html5ToJsConverterParameterDialog.py"
+    ],
+    "SPELLEXCLUDES": "",
+    "SPELLLANGUAGE": "en_US",
+    "SPELLWORDS": "",
+    "TRANSLATIONEXCEPTIONS": [],
+    "TRANSLATIONPATTERN": "ProjectWeb/i18n/web_%language%.ts",
+    "TRANSLATIONS": [
+      "ProjectWeb/i18n/web_de.qm",
+      "ProjectWeb/i18n/web_de.ts",
+      "ProjectWeb/i18n/web_en.qm",
+      "ProjectWeb/i18n/web_en.ts",
+      "ProjectWeb/i18n/web_es.qm",
+      "ProjectWeb/i18n/web_es.ts",
+      "ProjectWeb/i18n/web_pt.ts",
+      "ProjectWeb/i18n/web_ru.qm",
+      "ProjectWeb/i18n/web_ru.ts"
+    ],
+    "TRANSLATIONSBINPATH": "",
+    "UICPARAMS": {
+      "Package": "",
+      "PackagesRoot": "",
+      "RcSuffix": ""
+    },
+    "VCS": "Mercurial",
+    "VCSOPTIONS": {
+      "add": [
+        ""
+      ],
+      "checkout": [
+        ""
+      ],
+      "commit": [
+        ""
+      ],
+      "diff": [
+        ""
+      ],
+      "export": [
+        ""
+      ],
+      "global": [
+        ""
+      ],
+      "history": [
+        ""
+      ],
+      "log": [
+        ""
+      ],
+      "remove": [
+        ""
+      ],
+      "status": [
+        ""
+      ],
+      "tag": [
+        ""
+      ],
+      "update": [
+        ""
+      ]
+    },
+    "VCSOTHERDATA": {},
+    "VERSION": "0.x"
+  }
+}
\ No newline at end of file
--- a/ProjectWeb/Documentation/source/Plugin_Project_Web.PluginProjectWeb.html	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Documentation/source/Plugin_Project_Web.PluginProjectWeb.html	Tue May 25 20:12:47 2021 +0200
@@ -42,7 +42,11 @@
 <h3>Functions</h3>
 
 <table>
-<tr><td>None</td></tr>
+
+<tr>
+<td><a href="#installDependencies">installDependencies</a></td>
+<td>Function to install dependencies of this plug-in.</td>
+</tr>
 </table>
 <hr />
 <hr />
@@ -144,9 +148,9 @@
 </p>
 <dl>
 
-<dt><i>ui</i></dt>
+<dt><i>ui</i> (UserInterface)</dt>
 <dd>
-reference to the user interface object (UI.UserInterface)
+reference to the user interface object
 </dd>
 </dl>
 <a NAME="ProjectWebPlugin.__editorClosed" ID="ProjectWebPlugin.__editorClosed"></a>
@@ -158,9 +162,9 @@
 </p>
 <dl>
 
-<dt><i>editor</i></dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
-reference to the editor (QScintilla.Editor)
+reference to the editor
 </dd>
 </dl>
 <a NAME="ProjectWebPlugin.__editorOpened" ID="ProjectWebPlugin.__editorOpened"></a>
@@ -172,9 +176,9 @@
 </p>
 <dl>
 
-<dt><i>editor</i></dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
-reference to the new editor (QScintilla.Editor)
+reference to the new editor
 </dd>
 </dl>
 <a NAME="ProjectWebPlugin.__editorShowMenu" ID="ProjectWebPlugin.__editorShowMenu"></a>
@@ -187,15 +191,15 @@
 </p>
 <dl>
 
-<dt><i>menuName</i></dt>
+<dt><i>menuName</i> (str)</dt>
 <dd>
-name of the menu to be shown (string)
+name of the menu to be shown
 </dd>
-<dt><i>menu</i></dt>
+<dt><i>menu</i> (QMenu)</dt>
 <dd>
-reference to the menu (QMenu)
+reference to the menu
 </dd>
-<dt><i>editor</i></dt>
+<dt><i>editor</i> (Editor)</dt>
 <dd>
 reference to the editor
 </dd>
@@ -258,13 +262,13 @@
 </p>
 <dl>
 
-<dt><i>name</i></dt>
+<dt><i>name</i> (str)</dt>
 <dd>
-name of the menu (string)
+name of the menu
 </dd>
-<dt><i>menu</i></dt>
+<dt><i>menu</i> (QMenu)</dt>
 <dd>
-reference to the menu to be populated (QMenu)
+reference to the menu to be populated
 </dd>
 </dl>
 <a NAME="ProjectWebPlugin.activate" ID="ProjectWebPlugin.activate"></a>
@@ -277,7 +281,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-tuple of None and activation status (boolean)
+tuple of None and activation status
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (None, bool)
 </dd>
 </dl>
 <a NAME="ProjectWebPlugin.deactivate" ID="ProjectWebPlugin.deactivate"></a>
@@ -300,6 +310,29 @@
 dictionary with file type associations
 </dd>
 </dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+dict
+</dd>
+</dl>
+<div align="right"><a href="#top">Up</a></div>
+<hr />
+<hr />
+<a NAME="installDependencies" ID="installDependencies"></a>
+<h2>installDependencies</h2>
+<b>installDependencies</b>(<i>pipInstall</i>)
+
+<p>
+    Function to install dependencies of this plug-in.
+</p>
+<dl>
+
+<dt><i>pipInstall</i> (function)</dt>
+<dd>
+function to be called with a list of package names.
+</dd>
+</dl>
 <div align="right"><a href="#top">Up</a></div>
 <hr />
 </body></html>
\ No newline at end of file
--- a/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5Prettifier.html	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5Prettifier.html	Tue May 25 20:12:47 2021 +0200
@@ -100,13 +100,13 @@
 </p>
 <dl>
 
-<dt><i>html</i></dt>
+<dt><i>html</i> (str)</dt>
 <dd>
-HTML text to be prettified (string)
+HTML text to be prettified
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QObject)</dt>
 <dd>
-reference to the parent object (QObject)
+reference to the parent object
 </dd>
 </dl>
 <a NAME="Html5Prettifier.commentPrettify" ID="Html5Prettifier.commentPrettify"></a>
@@ -118,15 +118,21 @@
 </p>
 <dl>
 
-<dt><i>matchobj</i></dt>
+<dt><i>matchobj</i> (re.MatchObject)</dt>
 <dd>
-reference to the match object (re.MatchObject)
+reference to the match object
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-prettified comment (string)
+prettified comment
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="Html5Prettifier.getPrettifiedHtml" ID="Html5Prettifier.getPrettifiedHtml"></a>
@@ -139,7 +145,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-prettified HTML code (string)
+prettified HTML code
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <a NAME="Html5Prettifier.tagPrettify" ID="Html5Prettifier.tagPrettify"></a>
@@ -151,15 +163,21 @@
 </p>
 <dl>
 
-<dt><i>tag</i></dt>
+<dt><i>tag</i> (str)</dt>
 <dd>
-tag to be prettified (string)
+tag to be prettified
 </dd>
 </dl>
 <dl>
 <dt>Return:</dt>
 <dd>
-prettified tag (string)
+prettified tag
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToCss3Converter.html	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToCss3Converter.html	Tue May 25 20:12:47 2021 +0200
@@ -108,13 +108,13 @@
 </p>
 <dl>
 
-<dt><i>html</i></dt>
+<dt><i>html</i> (str)</dt>
 <dd>
-HTML text to be converted (string)
+HTML text to be converted
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QObject)</dt>
 <dd>
-reference to the parent object (QObject)
+reference to the parent object
 </dd>
 </dl>
 <a NAME="Html5ToCss3Converter.__createSoup" ID="Html5ToCss3Converter.__createSoup"></a>
@@ -135,7 +135,13 @@
 <dt>Return:</dt>
 <dd>
 list of tuples containing the tag name and its classes
-            as a blank separated string (list of tuples of two strings)
+            as a blank separated string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of tuples of (str, str)
 </dd>
 </dl>
 <a NAME="Html5ToCss3Converter.__getIds" ID="Html5ToCss3Converter.__getIds"></a>
@@ -149,7 +155,12 @@
 <dt>Return:</dt>
 <dd>
 list of tuples containing the tag name and its ID
-            (list of tuples of two strings)
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of tuples of (str, str)
 </dd>
 </dl>
 <a NAME="Html5ToCss3Converter.__getTags" ID="Html5ToCss3Converter.__getTags"></a>
@@ -162,7 +173,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-list of all tags (list of strings)
+list of all tags
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of str
 </dd>
 </dl>
 <a NAME="Html5ToCss3Converter.getCss3" ID="Html5ToCss3Converter.getCss3"></a>
@@ -175,7 +192,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-CSS3 text (string)
+CSS3 text
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToCss3ConverterParameterDialog.html	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToCss3ConverterParameterDialog.html	Tue May 25 20:12:47 2021 +0200
@@ -92,9 +92,9 @@
 </p>
 <dl>
 
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-reference to the parent widget (QWidget)
+reference to the parent widget
 </dd>
 </dl>
 <a NAME="Html5ToCss3ConverterParameterDialog.getData" ID="Html5ToCss3ConverterParameterDialog.getData"></a>
@@ -107,8 +107,14 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-tuple of indentation string (string) and a flag indicating to
-            use CSS placeholders (boolean)
+tuple of indentation string and a flag indicating to use CSS
+            placeholders
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (str, bool)
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToJsConverter.html	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToJsConverter.html	Tue May 25 20:12:47 2021 +0200
@@ -104,13 +104,13 @@
 </p>
 <dl>
 
-<dt><i>html</i></dt>
+<dt><i>html</i> (str)</dt>
 <dd>
-HTML text to be converted (string)
+HTML text to be converted
 </dd>
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QObject)</dt>
 <dd>
-reference to the parent object (QObject)
+reference to the parent object
 </dd>
 </dl>
 <a NAME="Html5ToJsConverter.__createSoup" ID="Html5ToJsConverter.__createSoup"></a>
@@ -131,7 +131,13 @@
 <dt>Return:</dt>
 <dd>
 list of tuples containing the tag name and its classes
-            as a blank separated string (list of tuples of two strings)
+            as a blank separated string
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of tuples of (str, str)
 </dd>
 </dl>
 <a NAME="Html5ToJsConverter.__getIds" ID="Html5ToJsConverter.__getIds"></a>
@@ -145,7 +151,12 @@
 <dt>Return:</dt>
 <dd>
 list of tuples containing the tag name and its ID
-            (list of tuples of two strings)
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+list of tuples of (str, str)
 </dd>
 </dl>
 <a NAME="Html5ToJsConverter.getJavaScript" ID="Html5ToJsConverter.getJavaScript"></a>
@@ -158,7 +169,13 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-JavaScript text (string)
+JavaScript text
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+str
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToJsConverterParameterDialog.html	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Documentation/source/Plugin_Project_Web.ProjectWeb.Html5ToJsConverterParameterDialog.html	Tue May 25 20:12:47 2021 +0200
@@ -92,9 +92,9 @@
 </p>
 <dl>
 
-<dt><i>parent</i></dt>
+<dt><i>parent</i> (QWidget)</dt>
 <dd>
-reference to the parent widget (QWidget)
+reference to the parent widget
 </dd>
 </dl>
 <a NAME="Html5ToJsConverterParameterDialog.getData" ID="Html5ToJsConverterParameterDialog.getData"></a>
@@ -107,8 +107,14 @@
 <dl>
 <dt>Return:</dt>
 <dd>
-tuple of indentation string (string) and a flag indicating to
-            enclose the code by 'script' tags (boolean)
+tuple of indentation string and a flag indicating to enclose
+            the code by 'script' tags
+</dd>
+</dl>
+<dl>
+<dt>Return Type:</dt>
+<dd>
+tuple of (str, bool)
 </dd>
 </dl>
 <div align="right"><a href="#top">Up</a></div>
--- a/ProjectWeb/Html5Prettifier.py	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Html5Prettifier.py	Tue May 25 20:12:47 2021 +0200
@@ -9,7 +9,7 @@
 
 import re
 
-from PyQt5.QtCore import QObject
+from PyQt6.QtCore import QObject
 
 import Preferences
 
@@ -22,8 +22,10 @@
         """
         Constructor
         
-        @param html HTML text to be prettified (string)
-        @param parent reference to the parent object (QObject)
+        @param html HTML text to be prettified
+        @type str
+        @param parent reference to the parent object
+        @type QObject
         """
         super().__init__(parent)
         
@@ -34,7 +36,8 @@
         """
         Public method to prettify the HTML code.
         
-        @return prettified HTML code (string)
+        @return prettified HTML code
+        @rtype str
         """
         from bs4 import BeautifulSoup
         soup = BeautifulSoup(self.__html, "html.parser")
@@ -53,8 +56,10 @@
         """
         Public method to prettify HTML tags.
         
-        @param tag tag to be prettified (string)
-        @return prettified tag (string)
+        @param tag tag to be prettified
+        @type str
+        @return prettified tag
+        @rtype str
         """
         return re.sub(" {{1,{0}}}".format(self.__indentWidth), " ", tag,
                       flags=re.MULTILINE)
@@ -63,8 +68,10 @@
         """
         Public method to prettify HTML comments.
         
-        @param matchobj reference to the match object (re.MatchObject)
-        @return prettified comment (string)
+        @param matchobj reference to the match object
+        @type re.MatchObject
+        @return prettified comment
+        @rtype str
         """
         if re.search("\n", matchobj.group()):
             return self.tagPrettify(matchobj.group())
--- a/ProjectWeb/Html5ToCss3Converter.py	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Html5ToCss3Converter.py	Tue May 25 20:12:47 2021 +0200
@@ -12,8 +12,8 @@
 import getpass
 import random
 
-from PyQt5.QtCore import QObject
-from PyQt5.QtWidgets import QDialog
+from PyQt6.QtCore import QObject
+from PyQt6.QtWidgets import QDialog
 
 from .Html5ToCss3ConverterParameterDialog import (
     Html5ToCss3ConverterParameterDialog
@@ -39,8 +39,10 @@
         """
         Constructor
         
-        @param html HTML text to be converted (string)
-        @param parent reference to the parent object (QObject)
+        @param html HTML text to be converted
+        @type str
+        @param parent reference to the parent object
+        @type QObject
         """
         super().__init__(parent)
         
@@ -50,10 +52,11 @@
         """
         Public method to get the converted CSS3 text.
         
-        @return CSS3 text (string)
+        @return CSS3 text
+        @rtype str
         """
         dlg = Html5ToCss3ConverterParameterDialog()
-        if dlg.exec() == QDialog.Accepted:
+        if dlg.exec() == QDialog.DialogCode.Accepted:
             indentation, placeholders = dlg.getData()
             
             self.__createSoup()
@@ -144,7 +147,8 @@
         """
         Private method to extract all tags of the HTML text.
         
-        @return list of all tags (list of strings)
+        @return list of all tags
+        @rtype list of str
         """
         tags = [t.name for t in self.__soup.find_all(True)]
         return list(set(tags))
@@ -154,7 +158,8 @@
         Private method to extract all classes of the HTML text.
         
         @return list of tuples containing the tag name and its classes
-            as a blank separated string (list of tuples of two strings)
+            as a blank separated string
+        @rtype list of tuples of (str, str)
         """
         classes = [(t.name, " ".join(t["class"])) for t in
                    self.__soup.find_all(True, {"class": True})]
@@ -165,7 +170,7 @@
         Private method to extract all IDs of the HTML text.
         
         @return list of tuples containing the tag name and its ID
-            (list of tuples of two strings)
+        @rtype list of tuples of (str, str)
         """
         ids = [(t.name, t["id"]) for t in
                self.__soup.find_all(True, {"id": True})]
--- a/ProjectWeb/Html5ToCss3ConverterParameterDialog.py	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Html5ToCss3ConverterParameterDialog.py	Tue May 25 20:12:47 2021 +0200
@@ -7,7 +7,7 @@
 Module implementing a dialog to enter the CSS conversion parameters.
 """
 
-from PyQt5.QtWidgets import QDialog
+from PyQt6.QtWidgets import QDialog
 
 from .Ui_Html5ToCss3ConverterParameterDialog import (
     Ui_Html5ToCss3ConverterParameterDialog
@@ -23,7 +23,8 @@
         """
         Constructor
         
-        @param parent reference to the parent widget (QWidget)
+        @param parent reference to the parent widget
+        @type QWidget
         """
         super().__init__(parent)
         self.setupUi(self)
@@ -35,8 +36,9 @@
         """
         Public method to get the entered data.
         
-        @return tuple of indentation string (string) and a flag indicating to
-            use CSS placeholders (boolean)
+        @return tuple of indentation string and a flag indicating to use CSS
+            placeholders
+        @rtype tuple of (str, bool)
         """
         placeholders = self.placeholderComboBox.currentIndex() == 1
         return " " * self.indentationSpinBox.value(), placeholders
--- a/ProjectWeb/Html5ToJsConverter.py	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Html5ToJsConverter.py	Tue May 25 20:12:47 2021 +0200
@@ -12,8 +12,8 @@
 import datetime
 import getpass
 
-from PyQt5.QtCore import QObject
-from PyQt5.QtWidgets import QDialog
+from PyQt6.QtCore import QObject
+from PyQt6.QtWidgets import QDialog
 
 from .Html5ToJsConverterParameterDialog import (
     Html5ToJsConverterParameterDialog
@@ -34,8 +34,10 @@
         """
         Constructor
         
-        @param html HTML text to be converted (string)
-        @param parent reference to the parent object (QObject)
+        @param html HTML text to be converted
+        @type str
+        @param parent reference to the parent object
+        @type QObject
         """
         super().__init__(parent)
         
@@ -45,10 +47,11 @@
         """
         Public method to get the converted JavaScript text.
         
-        @return JavaScript text (string)
+        @return JavaScript text
+        @rtype str
         """
         dlg = Html5ToJsConverterParameterDialog()
-        if dlg.exec() == QDialog.Accepted:
+        if dlg.exec() == QDialog.DialogCode.Accepted:
             indentation, scriptTags = dlg.getData()
             
             self.__createSoup()
@@ -133,7 +136,8 @@
         Private method to extract all classes of the HTML text.
         
         @return list of tuples containing the tag name and its classes
-            as a blank separated string (list of tuples of two strings)
+            as a blank separated string
+        @rtype list of tuples of (str, str)
         """
         classes = [(t.name, " ".join(t["class"])) for t in
                    self.__soup.find_all(True, {"class": True})]
@@ -144,7 +148,7 @@
         Private method to extract all IDs of the HTML text.
         
         @return list of tuples containing the tag name and its ID
-            (list of tuples of two strings)
+        @rtype list of tuples of (str, str)
         """
         ids = [(t.name, t["id"]) for t in
                self.__soup.find_all(True, {"id": True})]
--- a/ProjectWeb/Html5ToJsConverterParameterDialog.py	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/Html5ToJsConverterParameterDialog.py	Tue May 25 20:12:47 2021 +0200
@@ -7,7 +7,7 @@
 Module implementing a dialog to enter the JavaScript conversion parameters.
 """
 
-from PyQt5.QtWidgets import QDialog
+from PyQt6.QtWidgets import QDialog
 
 from .Ui_Html5ToJsConverterParameterDialog import (
     Ui_Html5ToJsConverterParameterDialog
@@ -23,7 +23,8 @@
         """
         Constructor
         
-        @param parent reference to the parent widget (QWidget)
+        @param parent reference to the parent widget
+        @type QWidget
         """
         super().__init__(parent)
         self.setupUi(self)
@@ -35,8 +36,9 @@
         """
         Public method to get the entered data.
         
-        @return tuple of indentation string (string) and a flag indicating to
-            enclose the code by 'script' tags (boolean)
+        @return tuple of indentation string and a flag indicating to enclose
+            the code by 'script' tags
+        @rtype tuple of (str, bool)
         """
         return (" " * self.indentationSpinBox.value(),
                 self.scriptCheckBox.isChecked())
Binary file ProjectWeb/i18n/web_de.qm has changed
--- a/ProjectWeb/i18n/web_de.ts	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/i18n/web_de.ts	Tue May 25 20:12:47 2021 +0200
@@ -1,92 +1,94 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="de_DE" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="de_DE" sourcelanguage="">
+  <context>
     <name>Html5ToCss3ConverterParameterDialog</name>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation>Umwandlungsparameter</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation>Umwandlungsparameter</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="23"/>
-        <source>CSS Indentation Spaces:</source>
-        <translation>Leerzeichen für CSS Einrückung:</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Indentation Spaces:</source>
+      <translation>Leerzeichen für CSS Einrückung:</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation>Gib die Anzahl an Leerzeichen für die CSS Einrückung ein</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation>Gib die Anzahl an Leerzeichen für die CSS Einrückung ein</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="62"/>
-        <source>CSS Placeholder:</source>
-        <translation>CSS Platzhalter:</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Placeholder:</source>
+      <translation>CSS Platzhalter:</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="75"/>
-        <source>Select the treatment of empty CSS</source>
-        <translation>Wähle die Behandlung leerer CSS aus</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Select the treatment of empty CSS</source>
+      <translation>Wähle die Behandlung leerer CSS aus</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="79"/>
-        <source>Blank Empty CSS</source>
-        <translation>Leere CSS ausblenden</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Blank Empty CSS</source>
+      <translation>Leere CSS ausblenden</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="84"/>
-        <source>Placeholders</source>
-        <translation>Platzhalter</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Placeholders</source>
+      <translation>Platzhalter</translation>
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>Html5ToJsConverterParameterDialog</name>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation>Umwandlungsparameter</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation>Umwandlungsparameter</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="23"/>
-        <source>JS Indentation Spaces:</source>
-        <translation>Leerzeichen für JS Einrückung:</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>JS Indentation Spaces:</source>
+      <translation>Leerzeichen für JS Einrückung:</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation>Gib die Anzahl an Leerzeichen für die JS Einrückung ein</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation>Gib die Anzahl an Leerzeichen für die JS Einrückung ein</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="72"/>
-        <source>Select to enclose the generated JavaScript code by &apos;script&apos; tags</source>
-        <translation>Auswählen, um den generierten JavaScript Code mit &apos;script&apos; Tags zu umschließen</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Select to enclose the generated JavaScript code by 'script' tags</source>
+      <translation>Auswählen, um den generierten JavaScript Code mit 'script' Tags zu umschließen</translation>
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="75"/>
-        <source>Enclose by &apos;script&apos; HTML tags</source>
-        <translation>Mit &apos;script&apos; HTML Tag umschließen</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enclose by 'script' HTML tags</source>
+      <translation>Mit 'script' HTML Tag umschließen</translation>
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>ProjectWebPlugin</name>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="177"/>
-        <source>Web</source>
-        <translation>Web</translation>
+      <location filename="../../PluginProjectWeb.py" line="188" />
+      <location filename="../../PluginProjectWeb.py" line="89" />
+      <source>Web</source>
+      <translation>Web</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="180"/>
-        <source>HTML5 to CSS3</source>
-        <translation>HTML5 nach CSS3</translation>
+      <location filename="../../PluginProjectWeb.py" line="190" />
+      <source>HTML5 to CSS3</source>
+      <translation>HTML5 nach CSS3</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="182"/>
-        <source>HTML5 to JavaScript</source>
-        <translation>HTML5 nach JavaScript</translation>
+      <location filename="../../PluginProjectWeb.py" line="192" />
+      <source>HTML5 to JavaScript</source>
+      <translation>HTML5 nach JavaScript</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="185"/>
-        <source>Prettify HTML</source>
-        <translation>HTML aufhübschen</translation>
+      <location filename="../../PluginProjectWeb.py" line="195" />
+      <source>Prettify HTML</source>
+      <translation>HTML aufhübschen</translation>
     </message>
-</context>
+  </context>
 </TS>
Binary file ProjectWeb/i18n/web_en.qm has changed
--- a/ProjectWeb/i18n/web_en.ts	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/i18n/web_en.ts	Tue May 25 20:12:47 2021 +0200
@@ -1,92 +1,94 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="en_US" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="en_US" sourcelanguage="">
+  <context>
     <name>Html5ToCss3ConverterParameterDialog</name>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="23"/>
-        <source>CSS Indentation Spaces:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Indentation Spaces:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="62"/>
-        <source>CSS Placeholder:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Placeholder:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="75"/>
-        <source>Select the treatment of empty CSS</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Select the treatment of empty CSS</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="79"/>
-        <source>Blank Empty CSS</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Blank Empty CSS</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="84"/>
-        <source>Placeholders</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Placeholders</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>Html5ToJsConverterParameterDialog</name>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="23"/>
-        <source>JS Indentation Spaces:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>JS Indentation Spaces:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="72"/>
-        <source>Select to enclose the generated JavaScript code by &apos;script&apos; tags</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Select to enclose the generated JavaScript code by 'script' tags</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="75"/>
-        <source>Enclose by &apos;script&apos; HTML tags</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enclose by 'script' HTML tags</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>ProjectWebPlugin</name>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="177"/>
-        <source>Web</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="188" />
+      <location filename="../../PluginProjectWeb.py" line="89" />
+      <source>Web</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="180"/>
-        <source>HTML5 to CSS3</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="190" />
+      <source>HTML5 to CSS3</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="182"/>
-        <source>HTML5 to JavaScript</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="192" />
+      <source>HTML5 to JavaScript</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="185"/>
-        <source>Prettify HTML</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="195" />
+      <source>Prettify HTML</source>
+      <translation type="unfinished" />
     </message>
-</context>
+  </context>
 </TS>
--- a/ProjectWeb/i18n/web_es.ts	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/i18n/web_es.ts	Tue May 25 20:12:47 2021 +0200
@@ -1,92 +1,94 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="es_ES" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="es_ES" sourcelanguage="">
+  <context>
     <name>Html5ToCss3ConverterParameterDialog</name>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation>Parámetros de Conversión</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation>Parámetros de Conversión</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="23"/>
-        <source>CSS Indentation Spaces:</source>
-        <translation>Espacios de Indentación de CSS:</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Indentation Spaces:</source>
+      <translation>Espacios de Indentación de CSS:</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation>Introducir el número de espacios a usar como indentación</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation>Introducir el número de espacios a usar como indentación</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="62"/>
-        <source>CSS Placeholder:</source>
-        <translation>Marcador de posición de CSS:</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Placeholder:</source>
+      <translation>Marcador de posición de CSS:</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="75"/>
-        <source>Select the treatment of empty CSS</source>
-        <translation>Seleccionar el tratamiento de CSS vacío</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Select the treatment of empty CSS</source>
+      <translation>Seleccionar el tratamiento de CSS vacío</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="79"/>
-        <source>Blank Empty CSS</source>
-        <translation>CSS Vacío en Blanco</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Blank Empty CSS</source>
+      <translation>CSS Vacío en Blanco</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="84"/>
-        <source>Placeholders</source>
-        <translation>Marcadores de posición</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Placeholders</source>
+      <translation>Marcadores de posición</translation>
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>Html5ToJsConverterParameterDialog</name>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation>Parámetros de Conversión</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation>Parámetros de Conversión</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="23"/>
-        <source>JS Indentation Spaces:</source>
-        <translation>Espacios de Indentación de JS:</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>JS Indentation Spaces:</source>
+      <translation>Espacios de Indentación de JS:</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation>Introducir el número de espacios a usar como indentación</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation>Introducir el número de espacios a usar como indentación</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="72"/>
-        <source>Select to enclose the generated JavaScript code by &apos;script&apos; tags</source>
-        <translation>Seleccionar para encerrar el código JavaScript generado dentro de etiquetas &apos;script&apos;</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Select to enclose the generated JavaScript code by 'script' tags</source>
+      <translation>Seleccionar para encerrar el código JavaScript generado dentro de etiquetas 'script'</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="75"/>
-        <source>Enclose by &apos;script&apos; HTML tags</source>
-        <translation>Encerrar entre etiquetas HTML &apos;script&apos;</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enclose by 'script' HTML tags</source>
+      <translation>Encerrar entre etiquetas HTML 'script'</translation>
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>ProjectWebPlugin</name>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="188"/>
-        <source>Web</source>
-        <translation>Web</translation>
+      <location filename="../../PluginProjectWeb.py" line="188" />
+      <location filename="../../PluginProjectWeb.py" line="89" />
+      <source>Web</source>
+      <translation>Web</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="190"/>
-        <source>HTML5 to CSS3</source>
-        <translation>HTML5 a CSS3</translation>
+      <location filename="../../PluginProjectWeb.py" line="190" />
+      <source>HTML5 to CSS3</source>
+      <translation>HTML5 a CSS3</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="192"/>
-        <source>HTML5 to JavaScript</source>
-        <translation>HTML5 a JavaScript</translation>
+      <location filename="../../PluginProjectWeb.py" line="192" />
+      <source>HTML5 to JavaScript</source>
+      <translation>HTML5 a JavaScript</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="195"/>
-        <source>Prettify HTML</source>
-        <translation>Embellecer HTML</translation>
+      <location filename="../../PluginProjectWeb.py" line="195" />
+      <source>Prettify HTML</source>
+      <translation>Embellecer HTML</translation>
     </message>
-</context>
+  </context>
 </TS>
--- a/ProjectWeb/i18n/web_pt.ts	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/i18n/web_pt.ts	Tue May 25 20:12:47 2021 +0200
@@ -1,92 +1,94 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0">
+  <context>
     <name>Html5ToCss3ConverterParameterDialog</name>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="23"/>
-        <source>CSS Indentation Spaces:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Indentation Spaces:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="62"/>
-        <source>CSS Placeholder:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Placeholder:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="75"/>
-        <source>Select the treatment of empty CSS</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Select the treatment of empty CSS</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="79"/>
-        <source>Blank Empty CSS</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Blank Empty CSS</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToCss3ConverterParameterDialog.ui" line="84"/>
-        <source>Placeholders</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Placeholders</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>Html5ToJsConverterParameterDialog</name>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="23"/>
-        <source>JS Indentation Spaces:</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>JS Indentation Spaces:</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="72"/>
-        <source>Select to enclose the generated JavaScript code by &apos;script&apos; tags</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Select to enclose the generated JavaScript code by 'script' tags</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../ProjectWeb/Html5ToJsConverterParameterDialog.ui" line="75"/>
-        <source>Enclose by &apos;script&apos; HTML tags</source>
-        <translation type="unfinished"></translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enclose by 'script' HTML tags</source>
+      <translation type="unfinished" />
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>ProjectWebPlugin</name>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="177"/>
-        <source>Web</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="188" />
+      <location filename="../../PluginProjectWeb.py" line="89" />
+      <source>Web</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="180"/>
-        <source>HTML5 to CSS3</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="190" />
+      <source>HTML5 to CSS3</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="182"/>
-        <source>HTML5 to JavaScript</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="192" />
+      <source>HTML5 to JavaScript</source>
+      <translation type="unfinished" />
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="185"/>
-        <source>Prettify HTML</source>
-        <translation type="unfinished"></translation>
+      <location filename="../../PluginProjectWeb.py" line="195" />
+      <source>Prettify HTML</source>
+      <translation type="unfinished" />
     </message>
-</context>
+  </context>
 </TS>
--- a/ProjectWeb/i18n/web_ru.ts	Tue May 25 19:44:14 2021 +0200
+++ b/ProjectWeb/i18n/web_ru.ts	Tue May 25 20:12:47 2021 +0200
@@ -1,92 +1,94 @@
 <?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE TS><TS version="2.0" language="ru_RU" sourcelanguage="">
-<context>
+<!DOCTYPE TS>
+<TS version="2.0" language="ru_RU" sourcelanguage="">
+  <context>
     <name>Html5ToCss3ConverterParameterDialog</name>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation>Параметры преобразования</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation>Параметры преобразования</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="23"/>
-        <source>CSS Indentation Spaces:</source>
-        <translation>CSS для отступов пробелами:</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Indentation Spaces:</source>
+      <translation>CSS для отступов пробелами:</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation>Задайте количество пробелов для использования в качестве отступа</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation>Задайте количество пробелов для использования в качестве отступа</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="62"/>
-        <source>CSS Placeholder:</source>
-        <translation>CSS заполнитель:</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>CSS Placeholder:</source>
+      <translation>CSS заполнитель:</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="75"/>
-        <source>Select the treatment of empty CSS</source>
-        <translation>Разрешить обработку пустых CSS</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Select the treatment of empty CSS</source>
+      <translation>Разрешить обработку пустых CSS</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="79"/>
-        <source>Blank Empty CSS</source>
-        <translation>Чистый пустой CSS</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Blank Empty CSS</source>
+      <translation>Чистый пустой CSS</translation>
     </message>
     <message>
-        <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="84"/>
-        <source>Placeholders</source>
-        <translation>Заполнители</translation>
+      <location filename="../Html5ToCss3ConverterParameterDialog.ui" line="0" />
+      <source>Placeholders</source>
+      <translation>Заполнители</translation>
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>Html5ToJsConverterParameterDialog</name>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="14"/>
-        <source>Conversion Parameters</source>
-        <translation>Параметры преобразования</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Conversion Parameters</source>
+      <translation>Параметры преобразования</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="23"/>
-        <source>JS Indentation Spaces:</source>
-        <translation>JS для отступов пробелами:</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>JS Indentation Spaces:</source>
+      <translation>JS для отступов пробелами:</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="30"/>
-        <source>Enter the amount of spaces to be used as indentation</source>
-        <translation>Задайте количество пробелов для использования в качестве отступа</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enter the amount of spaces to be used as indentation</source>
+      <translation>Задайте количество пробелов для использования в качестве отступа</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="72"/>
-        <source>Select to enclose the generated JavaScript code by &apos;script&apos; tags</source>
-        <translation>Разрешить встраивать сгенерированный JavaScript код в тэги &apos;script&apos;</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Select to enclose the generated JavaScript code by 'script' tags</source>
+      <translation>Разрешить встраивать сгенерированный JavaScript код в тэги 'script'</translation>
     </message>
     <message>
-        <location filename="../Html5ToJsConverterParameterDialog.ui" line="75"/>
-        <source>Enclose by &apos;script&apos; HTML tags</source>
-        <translation>Охват тегами HTML &apos;script&apos;</translation>
+      <location filename="../Html5ToJsConverterParameterDialog.ui" line="0" />
+      <source>Enclose by 'script' HTML tags</source>
+      <translation>Охват тегами HTML 'script'</translation>
     </message>
-</context>
-<context>
+  </context>
+  <context>
     <name>ProjectWebPlugin</name>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="188"/>
-        <source>Web</source>
-        <translation>Web</translation>
+      <location filename="../../PluginProjectWeb.py" line="188" />
+      <location filename="../../PluginProjectWeb.py" line="89" />
+      <source>Web</source>
+      <translation>Web</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="190"/>
-        <source>HTML5 to CSS3</source>
-        <translation>HTML5 в CSS3</translation>
+      <location filename="../../PluginProjectWeb.py" line="190" />
+      <source>HTML5 to CSS3</source>
+      <translation>HTML5 в CSS3</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="192"/>
-        <source>HTML5 to JavaScript</source>
-        <translation>HTML5 в JavaScript</translation>
+      <location filename="../../PluginProjectWeb.py" line="192" />
+      <source>HTML5 to JavaScript</source>
+      <translation>HTML5 в JavaScript</translation>
     </message>
     <message>
-        <location filename="../../PluginProjectWeb.py" line="195"/>
-        <source>Prettify HTML</source>
-        <translation>Приукрасить HTML</translation>
+      <location filename="../../PluginProjectWeb.py" line="195" />
+      <source>Prettify HTML</source>
+      <translation>Приукрасить HTML</translation>
     </message>
-</context>
+  </context>
 </TS>

eric ide

mercurial