eric7/QScintilla/KeySequenceTranslator.py

branch
eric7
changeset 8312
800c432b34c8
parent 8143
2c730d5fd177
child 8318
962bce857696
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/eric7/QScintilla/KeySequenceTranslator.py	Sat May 15 18:45:04 2021 +0200
@@ -0,0 +1,135 @@
+# -*- coding: utf-8 -*-
+
+# Copyright (c) 2016 - 2021 Detlev Offenbach <detlev@die-offenbachs.de>
+#
+
+"""
+Module implementing functions to map QScintilla keyboard commands to
+QKeySequence standard keys.
+"""
+
+from PyQt5.QtGui import QKeySequence
+from PyQt5.Qsci import QsciScintilla
+
+__all__ = ["s2qTranslate"]
+
+Scintilla2QKeySequence = {
+    QsciScintilla.SCI_CHARLEFT: QKeySequence.StandardKey.MoveToPreviousChar,
+    QsciScintilla.SCI_CHARRIGHT: QKeySequence.StandardKey.MoveToNextChar,
+    QsciScintilla.SCI_LINEUP: QKeySequence.StandardKey.MoveToPreviousLine,
+    QsciScintilla.SCI_LINEDOWN: QKeySequence.StandardKey.MoveToNextLine,
+    QsciScintilla.SCI_WORDPARTLEFT: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDPARTRIGHT: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDLEFT: QKeySequence.StandardKey.MoveToNextWord,
+    QsciScintilla.SCI_WORDRIGHT: QKeySequence.StandardKey.MoveToPreviousWord,
+    QsciScintilla.SCI_VCHOME: QKeySequence.StandardKey.MoveToStartOfLine,
+    QsciScintilla.SCI_HOMEDISPLAY: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEEND: QKeySequence.StandardKey.MoveToEndOfLine,
+    QsciScintilla.SCI_LINESCROLLDOWN: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINESCROLLUP: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_PARAUP: QKeySequence.StandardKey.MoveToStartOfBlock,
+    QsciScintilla.SCI_PARADOWN: QKeySequence.StandardKey.MoveToEndOfBlock,
+    QsciScintilla.SCI_PAGEUP: QKeySequence.StandardKey.MoveToPreviousPage,
+    QsciScintilla.SCI_PAGEDOWN: QKeySequence.StandardKey.MoveToNextPage,
+    QsciScintilla.SCI_DOCUMENTSTART:
+        QKeySequence.StandardKey.MoveToStartOfDocument,
+    QsciScintilla.SCI_DOCUMENTEND:
+        QKeySequence.StandardKey.MoveToEndOfDocument,
+    QsciScintilla.SCI_TAB: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_BACKTAB: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_CHARLEFTEXTEND:
+        QKeySequence.StandardKey.SelectPreviousChar,
+    QsciScintilla.SCI_CHARRIGHTEXTEND: QKeySequence.StandardKey.SelectNextChar,
+    QsciScintilla.SCI_LINEUPEXTEND:
+        QKeySequence.StandardKey.SelectPreviousLine,
+    QsciScintilla.SCI_LINEDOWNEXTEND: QKeySequence.StandardKey.SelectNextLine,
+    QsciScintilla.SCI_WORDPARTLEFTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDPARTRIGHTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDLEFTEXTEND:
+        QKeySequence.StandardKey.SelectPreviousWord,
+    QsciScintilla.SCI_WORDRIGHTEXTEND: QKeySequence.StandardKey.SelectNextWord,
+    QsciScintilla.SCI_VCHOMEEXTEND: QKeySequence.StandardKey.SelectStartOfLine,
+    QsciScintilla.SCI_LINEENDEXTEND: QKeySequence.StandardKey.SelectEndOfLine,
+    QsciScintilla.SCI_PARAUPEXTEND:
+        QKeySequence.StandardKey.SelectStartOfBlock,
+    QsciScintilla.SCI_PARADOWNEXTEND:
+        QKeySequence.StandardKey.SelectEndOfBlock,
+    QsciScintilla.SCI_PAGEUPEXTEND:
+        QKeySequence.StandardKey.SelectPreviousPage,
+    QsciScintilla.SCI_PAGEDOWNEXTEND: QKeySequence.StandardKey.SelectNextPage,
+    QsciScintilla.SCI_DOCUMENTSTARTEXTEND:
+        QKeySequence.StandardKey.SelectStartOfDocument,
+    QsciScintilla.SCI_DOCUMENTENDEXTEND:
+        QKeySequence.StandardKey.SelectEndOfDocument,
+    QsciScintilla.SCI_DELETEBACK: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_DELETEBACKNOTLINE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_CLEAR: QKeySequence.StandardKey.Delete,
+    QsciScintilla.SCI_DELWORDLEFT: QKeySequence.StandardKey.DeleteStartOfWord,
+    QsciScintilla.SCI_DELWORDRIGHT: QKeySequence.StandardKey.DeleteEndOfWord,
+    QsciScintilla.SCI_DELLINELEFT: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_DELLINERIGHT: QKeySequence.StandardKey.DeleteEndOfLine,
+    QsciScintilla.SCI_NEWLINE: QKeySequence.StandardKey.InsertLineSeparator,
+    QsciScintilla.SCI_LINEDELETE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEDUPLICATE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINETRANSPOSE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINECUT: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINECOPY: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_EDITTOGGLEOVERTYPE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEENDDISPLAY: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEENDDISPLAYEXTEND:
+        QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_FORMFEED: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_CANCEL: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEDOWNRECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEUPRECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_CHARLEFTRECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_CHARRIGHTRECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_VCHOMERECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEENDRECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_PAGEUPRECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_PAGEDOWNRECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_SELECTIONDUPLICATE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_SCROLLTOSTART: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_SCROLLTOEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_VERTICALCENTRECARET: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDRIGHTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDRIGHTENDEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDLEFTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_WORDLEFTENDEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_HOME: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_HOMEEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_HOMERECTEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_HOMEDISPLAYEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_HOMEWRAP: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_HOMEWRAPEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_VCHOMEWRAP: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_VCHOMEWRAPEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEENDWRAP: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEENDWRAPEXTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_STUTTEREDPAGEUP: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_STUTTEREDPAGEUPEXTEND:
+        QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_STUTTEREDPAGEDOWN: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_STUTTEREDPAGEDOWNEXTEND:
+        QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_DELWORDRIGHTEND: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_MOVESELECTEDLINESUP: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_MOVESELECTEDLINESDOWN:
+        QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LOWERCASE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_UPPERCASE: QKeySequence.StandardKey.UnknownKey,
+    QsciScintilla.SCI_LINEDELETE: QKeySequence.StandardKey.DeleteCompleteLine,
+    QsciScintilla.SCI_DELETEBACK: QKeySequence.StandardKey.Backspace,
+}
+
+
+def s2qTranslate(scintillaCommand):
+    """
+    Function to translate a QScintilla command to a QKeySequence.
+    
+    @param scintillaCommand QScintilla command
+    @type int
+    @return Qt key sequence
+    @rtype QKeySequence.StandardKey
+    """
+    return Scintilla2QKeySequence[scintillaCommand]

eric ide

mercurial