eric6/QScintilla/Editor.py

branch
maintenance
changeset 7214
f434af227a41
parent 7035
d2036d7f5ef6
parent 7178
43e994af5ee0
child 7286
7eb04391adf7
--- a/eric6/QScintilla/Editor.py	Sat Aug 03 11:34:00 2019 +0200
+++ b/eric6/QScintilla/Editor.py	Sat Sep 07 12:59:54 2019 +0200
@@ -622,7 +622,8 @@
             supportedLanguages = Lexers.getSupportedLanguages()
             if self.filetype in supportedLanguages:
                 bindName = supportedLanguages[self.filetype][1]
-            elif self.filetype in ["Python", "Python2", "Python3"]:
+            elif self.filetype in ["Python", "Python2", "Python3",
+                                   "MicroPython"]:
                 bindName = "dummy.py"
         
         if not bindName and line0.startswith("#!"):
@@ -1592,7 +1593,8 @@
                 pyVer = Utilities.determinePythonVersion(
                     filename, self.text(0), self)
                 language = "Python{0}".format(pyVer)
-            if language in ['Python2', 'Python3', 'Ruby', 'JavaScript']:
+            if language in ['Python2', 'Python3', 'MicroPython', 'Ruby',
+                            'JavaScript']:
                 self.filetype = language
             else:
                 self.filetype = ""
@@ -1911,6 +1913,18 @@
         @return flag indicating a Python3 file (boolean)
         """
         return self.__getPyVersion() == 3
+    
+    def isMicroPythonFile(self):
+        """
+        Public method to return a flag indicating a MicroPython file.
+        
+        @return flag indicating a MicroPython file
+        @rtype bool
+        """
+        if self.filetype == "MicroPython":
+            return True
+        
+        return False
 
     def isRubyFile(self):
         """
@@ -5594,8 +5608,13 @@
         """
         Public method to perform an automatic syntax check of the file.
         """
+        fileType = self.filetype
+        if fileType == "MicroPython":
+            # adjustment for MicroPython
+            fileType = "Python3"
+        
         if self.syntaxCheckService is None or \
-                self.filetype not in self.syntaxCheckService.getLanguages():
+                fileType not in self.syntaxCheckService.getLanguages():
             return
         
         if Preferences.getEditor("AutoCheckSyntax"):
@@ -5603,7 +5622,7 @@
                 self.__onlineSyntaxCheckTimer.stop()
             
             self.syntaxCheckService.syntaxCheck(
-                self.filetype, self.fileName or "(Unnamed)", self.text())
+                fileType, self.fileName or "(Unnamed)", self.text())
 
     def __processSyntaxCheckError(self, fn, msg):
         """

eric ide

mercurial