Avoid masking of global module mimetypes with the local one in Python 2.

Fri, 30 May 2014 11:53:20 +0200

author
T.Rzepka <Tobias.Rzepka@gmail.com>
date
Fri, 30 May 2014 11:53:20 +0200
changeset 3619
4643a9ef7dd6
parent 3618
49e7fbd66ef9
child 3620
2c8d96d47cda

Avoid masking of global module mimetypes with the local one in Python 2.

Plugins/VcsPlugins/vcsMercurial/HgConflictsListDialog.py file | annotate | diff | comparison | revisions
Project/ProjectOthersBrowser.py file | annotate | diff | comparison | revisions
UI/Browser.py file | annotate | diff | comparison | revisions
Utilities/MimeTypes.py file | annotate | diff | comparison | revisions
Utilities/mimetypes.py file | annotate | diff | comparison | revisions
--- a/Plugins/VcsPlugins/vcsMercurial/HgConflictsListDialog.py	Fri May 30 11:39:39 2014 +0200
+++ b/Plugins/VcsPlugins/vcsMercurial/HgConflictsListDialog.py	Fri May 30 11:53:20 2014 +0200
@@ -22,7 +22,7 @@
 
 from .Ui_HgConflictsListDialog import Ui_HgConflictsListDialog
 
-import Utilities.mimetypes
+import Utilities.MimeTypes
 
 
 class HgConflictsListDialog(QWidget, Ui_HgConflictsListDialog):
@@ -390,7 +390,7 @@
         self.reMergeButton.setEnabled(unresolved > 0)
         self.editButton.setEnabled(
             selectedCount == 1 and
-            Utilities.mimetypes.isTextFile(
+            Utilities.MimeTypes.isTextFile(
                 self.conflictsList.selectedItems()[0].data(
                     0, self.FilenameRole)))
     
@@ -442,5 +442,5 @@
         """
         itm = self.conflictsList.selectedItems()[0]
         filename = itm.data(0, self.FilenameRole)
-        if Utilities.mimetypes.isTextFile(filename):
+        if Utilities.MimeTypes.isTextFile(filename):
             e5App().getObject("ViewManager").getEditor(filename)
--- a/Project/ProjectOthersBrowser.py	Fri May 30 11:39:39 2014 +0200
+++ b/Project/ProjectOthersBrowser.py	Fri May 30 11:53:20 2014 +0200
@@ -18,7 +18,7 @@
     ProjectBrowserOthersType
 from .ProjectBaseBrowser import ProjectBaseBrowser
 
-import Utilities.mimetypes
+import Utilities.MimeTypes
 
 
 class ProjectOthersBrowser(ProjectBaseBrowser):
@@ -236,7 +236,7 @@
                 elif itm.isSvgFile():
                     self.svgFile.emit(itm.fileName())
                 else:
-                    if Utilities.mimetypes.isTextFile(itm.fileName()):
+                    if Utilities.MimeTypes.isTextFile(itm.fileName()):
                         self.sourceFile.emit(itm.fileName())
                     else:
                         QDesktopServices.openUrl(QUrl(itm.fileName()))
--- a/UI/Browser.py	Fri May 30 11:39:39 2014 +0200
+++ b/UI/Browser.py	Fri May 30 11:53:20 2014 +0200
@@ -26,7 +26,7 @@
 import UI.PixmapCache
 import Preferences
 import Utilities
-import Utilities.mimetypes
+import Utilities.MimeTypes
 
 
 class Browser(QTreeView):
@@ -423,7 +423,7 @@
                     elif itm.isPixmapFile():
                         self.pixmapFile.emit(itm.fileName())
                     else:
-                        if Utilities.mimetypes.isTextFile(itm.fileName()):
+                        if Utilities.MimeTypes.isTextFile(itm.fileName()):
                             self.sourceFile[str].emit(itm.fileName())
                         else:
                             QDesktopServices.openUrl(QUrl(itm.fileName()))
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/Utilities/MimeTypes.py	Fri May 30 11:53:20 2014 +0200
@@ -0,0 +1,132 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2014 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing mimetype dependent functions.
+"""
+
+from __future__ import unicode_literals
+
+import mimetypes
+
+TextMimeTypes = [
+    "application/bookmarks.xbel",
+    "application/opensearchdescription+xml",
+    "application/x-actionscript",
+    "application/x-actionscript3",
+    "application/x-awk",
+    "application/x-sh",
+    "application/x-shellscript",
+    "application/x-shell-session",
+    "application/x-dos-batch",
+    "application/x-befunge",
+    "application/x-brainfuck",
+    "application/x-javascript+cheetah",
+    "application/x-javascript+spitfire",
+    "application/x-cheetah",
+    "application/x-spitfire",
+    "application/xml+cheetah",
+    "application/xml+spitfire",
+    "application/x-clojure",
+    "application/x-coldfusion",
+    "application/x-cython",
+    "application/x-django-templating",
+    "application/x-jinja",
+    "application/xml-dtd",
+    "application/x-ecl",
+    "application/x-ruby-templating",
+    "application/x-evoque",
+    "application/xml+evoque",
+    "application/x-fantom",
+    "application/x-genshi",
+    "application/x-kid",
+    "application/x-genshi-text",
+    "application/x-gettext",
+    "application/x-troff",
+    "application/xhtml+xml",
+    "application/x-php",
+    "application/x-httpd-php",
+    "application/x-httpd-php3",
+    "application/x-httpd-php4",
+    "application/x-httpd-php5",
+    "application/x-hybris",
+    "application/x-javascript+django",
+    "application/x-javascript+jinja",
+    "application/x-javascript+ruby",
+    "application/x-javascript+genshi",
+    "application/javascript",
+    "application/x-javascript",
+    "application/x-javascript+php",
+    "application/x-javascript+smarty",
+    "application/json",
+    "application/x-jsp",
+    "application/x-julia",
+    "application/x-httpd-lasso",
+    "application/x-httpd-lasso[89]",
+    "application/x-httpd-lasso8",
+    "application/x-httpd-lasso9",
+    "application/x-javascript+lasso",
+    "application/xml+lasso",
+    "application/x-lua",
+    "application/x-javascript+mako",
+    "application/x-mako",
+    "application/xml+mako",
+    "application/x-gooddata-maql",
+    "application/x-mason",
+    "application/x-moonscript",
+    "application/x-javascript+myghty",
+    "application/x-myghty",
+    "application/xml+myghty",
+    "application/x-newlisp",
+    "application/x-openedge",
+    "application/x-perl",
+    "application/postscript",
+    "application/x-pypylog",
+    "application/x-python3",
+    "application/x-python",
+    "application/x-qml",
+    "application/x-racket",
+    "application/x-pygments-tokens",
+    "application/x-ruby",
+    "application/x-standardml",
+    "application/x-scheme",
+    "application/x-sh-session",
+    "application/x-smarty",
+    "application/x-ssp",
+    "application/x-tcl",
+    "application/x-csh",
+    "application/x-urbiscript",
+    "application/xml+velocity",
+    "application/xquery",
+    "application/xml+django",
+    "application/xml+jinja",
+    "application/xml+ruby",
+    "application/xml",
+    "application/rss+xml",
+    "application/atom+xml",
+    "application/xml+php",
+    "application/xml+smarty",
+    "application/xsl+xml",
+    "application/xslt+xml",
+    "application/x-desktop",
+    
+    "image/svg+xml",
+]
+
+
+def isTextFile(filename):
+    """
+    Function to test, if the given file is a text (i.e. editable) file.
+    
+    @param filename name of the file to be checked (string)
+    @return flag indicating an editable file (boolean)
+    """
+    type_ = mimetypes.guess_type(filename)[0]
+    if (type_ is None or
+        type_.split("/")[0] == "text" or
+            type_ in TextMimeTypes):
+        return True
+    else:
+        return False
--- a/Utilities/mimetypes.py	Fri May 30 11:39:39 2014 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,132 +0,0 @@
-# -*- coding: utf-8 -*-
-
-# Copyright (c) 2014 Detlev Offenbach <detlev@die-offenbachs.de>
-#
-
-"""
-Module implementing mimetype dependent functions.
-"""
-
-from __future__ import unicode_literals
-
-import mimetypes
-
-TextMimeTypes = [
-    "application/bookmarks.xbel",
-    "application/opensearchdescription+xml",
-    "application/x-actionscript",
-    "application/x-actionscript3",
-    "application/x-awk",
-    "application/x-sh",
-    "application/x-shellscript",
-    "application/x-shell-session",
-    "application/x-dos-batch",
-    "application/x-befunge",
-    "application/x-brainfuck",
-    "application/x-javascript+cheetah",
-    "application/x-javascript+spitfire",
-    "application/x-cheetah",
-    "application/x-spitfire",
-    "application/xml+cheetah",
-    "application/xml+spitfire",
-    "application/x-clojure",
-    "application/x-coldfusion",
-    "application/x-cython",
-    "application/x-django-templating",
-    "application/x-jinja",
-    "application/xml-dtd",
-    "application/x-ecl",
-    "application/x-ruby-templating",
-    "application/x-evoque",
-    "application/xml+evoque",
-    "application/x-fantom",
-    "application/x-genshi",
-    "application/x-kid",
-    "application/x-genshi-text",
-    "application/x-gettext",
-    "application/x-troff",
-    "application/xhtml+xml",
-    "application/x-php",
-    "application/x-httpd-php",
-    "application/x-httpd-php3",
-    "application/x-httpd-php4",
-    "application/x-httpd-php5",
-    "application/x-hybris",
-    "application/x-javascript+django",
-    "application/x-javascript+jinja",
-    "application/x-javascript+ruby",
-    "application/x-javascript+genshi",
-    "application/javascript",
-    "application/x-javascript",
-    "application/x-javascript+php",
-    "application/x-javascript+smarty",
-    "application/json",
-    "application/x-jsp",
-    "application/x-julia",
-    "application/x-httpd-lasso",
-    "application/x-httpd-lasso[89]",
-    "application/x-httpd-lasso8",
-    "application/x-httpd-lasso9",
-    "application/x-javascript+lasso",
-    "application/xml+lasso",
-    "application/x-lua",
-    "application/x-javascript+mako",
-    "application/x-mako",
-    "application/xml+mako",
-    "application/x-gooddata-maql",
-    "application/x-mason",
-    "application/x-moonscript",
-    "application/x-javascript+myghty",
-    "application/x-myghty",
-    "application/xml+myghty",
-    "application/x-newlisp",
-    "application/x-openedge",
-    "application/x-perl",
-    "application/postscript",
-    "application/x-pypylog",
-    "application/x-python3",
-    "application/x-python",
-    "application/x-qml",
-    "application/x-racket",
-    "application/x-pygments-tokens",
-    "application/x-ruby",
-    "application/x-standardml",
-    "application/x-scheme",
-    "application/x-sh-session",
-    "application/x-smarty",
-    "application/x-ssp",
-    "application/x-tcl",
-    "application/x-csh",
-    "application/x-urbiscript",
-    "application/xml+velocity",
-    "application/xquery",
-    "application/xml+django",
-    "application/xml+jinja",
-    "application/xml+ruby",
-    "application/xml",
-    "application/rss+xml",
-    "application/atom+xml",
-    "application/xml+php",
-    "application/xml+smarty",
-    "application/xsl+xml",
-    "application/xslt+xml",
-    "application/x-desktop",
-    
-    "image/svg+xml",
-]
-
-
-def isTextFile(filename):
-    """
-    Function to test, if the given file is a text (i.e. editable) file.
-    
-    @param filename name of the file to be checked (string)
-    @return flag indicating an editable file (boolean)
-    """
-    type_ = mimetypes.guess_type(filename)[0]
-    if (type_ is None or
-        type_.split("/")[0] == "text" or
-            type_ in TextMimeTypes):
-        return True
-    else:
-        return False

eric ide

mercurial