1212 self.languagesActGrp.addAction(self.noLanguageAct) |
1212 self.languagesActGrp.addAction(self.noLanguageAct) |
1213 menu.addSeparator() |
1213 menu.addSeparator() |
1214 |
1214 |
1215 self.supportedLanguages = {} |
1215 self.supportedLanguages = {} |
1216 supportedLanguages = Lexers.getSupportedLanguages() |
1216 supportedLanguages = Lexers.getSupportedLanguages() |
1217 languages = sorted(supportedLanguages.keys()) |
1217 for language in sorted(supportedLanguages): |
1218 for language in languages: |
|
1219 if language != "Guessed": |
1218 if language != "Guessed": |
1220 self.supportedLanguages[language] = supportedLanguages[language][:2] |
1219 self.supportedLanguages[language] = supportedLanguages[language][:2] |
1221 act = menu.addAction( |
1220 act = menu.addAction( |
1222 EricPixmapCache.getIcon(supportedLanguages[language][2]), |
1221 EricPixmapCache.getIcon(supportedLanguages[language][2]), |
1223 self.supportedLanguages[language][0], |
1222 self.supportedLanguages[language][0], |
6750 self.syntaxerrors[handle].append((msg, index)) |
6749 self.syntaxerrors[handle].append((msg, index)) |
6751 if show: |
6750 if show: |
6752 self.setCursorPosition(line - 1, index) |
6751 self.setCursorPosition(line - 1, index) |
6753 self.ensureLineVisible(line - 1) |
6752 self.ensureLineVisible(line - 1) |
6754 else: |
6753 else: |
6755 for handle in list(self.syntaxerrors.keys()): |
6754 for handle in list(self.syntaxerrors): |
6756 if self.markerLine(handle) == line - 1: |
6755 if self.markerLine(handle) == line - 1: |
6757 del self.syntaxerrors[handle] |
6756 del self.syntaxerrors[handle] |
6758 self.markerDeleteHandle(handle) |
6757 self.markerDeleteHandle(handle) |
6759 self.syntaxerrorToggled.emit(self) |
6758 self.syntaxerrorToggled.emit(self) |
6760 |
6759 |
6802 @pyqtSlot() |
6801 @pyqtSlot() |
6803 def clearSyntaxError(self): |
6802 def clearSyntaxError(self): |
6804 """ |
6803 """ |
6805 Public slot to handle the 'Clear all syntax error' context menu action. |
6804 Public slot to handle the 'Clear all syntax error' context menu action. |
6806 """ |
6805 """ |
6807 for handle in list(self.syntaxerrors.keys()): |
6806 for handle in list(self.syntaxerrors): |
6808 line = self.markerLine(handle) + 1 |
6807 line = self.markerLine(handle) + 1 |
6809 self.toggleSyntaxError(line, 0, False) |
6808 self.toggleSyntaxError(line, 0, False) |
6810 |
6809 |
6811 self.syntaxerrors.clear() |
6810 self.syntaxerrors.clear() |
6812 self.syntaxerrorToggled.emit(self) |
6811 self.syntaxerrorToggled.emit(self) |
6907 self.markerLine(handle) == line - 1 |
6906 self.markerLine(handle) == line - 1 |
6908 and warn not in self._warnings[handle] |
6907 and warn not in self._warnings[handle] |
6909 ): |
6908 ): |
6910 self._warnings[handle].append(warn) |
6909 self._warnings[handle].append(warn) |
6911 else: |
6910 else: |
6912 for handle in list(self._warnings.keys()): |
6911 for handle in list(self._warnings): |
6913 if self.markerLine(handle) == line - 1: |
6912 if self.markerLine(handle) == line - 1: |
6914 del self._warnings[handle] |
6913 del self._warnings[handle] |
6915 self.markerDeleteHandle(handle) |
6914 self.markerDeleteHandle(handle) |
6916 self.syntaxerrorToggled.emit(self) |
6915 self.syntaxerrorToggled.emit(self) |
6917 # signal is also used for warnings |
6916 # signal is also used for warnings |
7020 Private method to clear warnings of a specific kind. |
7019 Private method to clear warnings of a specific kind. |
7021 |
7020 |
7022 @param warningKind kind of warning to clear (Editor.WarningCode, |
7021 @param warningKind kind of warning to clear (Editor.WarningCode, |
7023 Editor.WarningPython, Editor.WarningStyle) |
7022 Editor.WarningPython, Editor.WarningStyle) |
7024 """ |
7023 """ |
7025 for handle in list(self._warnings.keys()): |
7024 for handle in list(self._warnings): |
7026 issues = [] |
7025 issues = [] |
7027 for msg, warningType in self._warnings[handle]: |
7026 for msg, warningType in self._warnings[handle]: |
7028 if warningType == warningKind: |
7027 if warningType == warningKind: |
7029 continue |
7028 continue |
7030 |
7029 |
8990 |
8989 |
8991 # step 3: sort the lines |
8990 # step 3: sort the lines |
8992 eol = self.getLineSeparator() |
8991 eol = self.getLineSeparator() |
8993 lastWithEol = True |
8992 lastWithEol = True |
8994 newLines = [] |
8993 newLines = [] |
8995 for txt in sorted(selText.keys(), key=keyFun, reverse=reverse): |
8994 for txt in sorted(selText, key=keyFun, reverse=reverse): |
8996 for line in selText[txt]: |
8995 for line in selText[txt]: |
8997 txt = txtLines[line] |
8996 txt = txtLines[line] |
8998 if not txt.endswith(eol): |
8997 if not txt.endswith(eol): |
8999 lastWithEol = False |
8998 lastWithEol = False |
9000 txt += eol |
8999 txt += eol |
9133 a plug-in. |
9132 a plug-in. |
9134 |
9133 |
9135 @param name name of the plug-in |
9134 @param name name of the plug-in |
9136 @type str |
9135 @type str |
9137 """ |
9136 """ |
9138 for key in list(self.__mouseClickHandlers.keys()): |
9137 for key in list(self.__mouseClickHandlers): |
9139 if self.__mouseClickHandlers[key][0] == name: |
9138 if self.__mouseClickHandlers[key][0] == name: |
9140 del self.__mouseClickHandlers[key] |
9139 del self.__mouseClickHandlers[key] |
9141 |
9140 |
9142 def gotoReferenceHandler(self, referencesList): |
9141 def gotoReferenceHandler(self, referencesList): |
9143 """ |
9142 """ |