Editor: added these capabilities

Wed, 06 Mar 2019 18:44:29 +0100

author
Detlev Offenbach <detlev@die-offenbachs.de>
date
Wed, 06 Mar 2019 18:44:29 +0100
changeset 6843
5e1afd1577b9
parent 6842
c83dcb7c6147
child 6844
d706eb5bc040
child 6847
5150e076014b

Editor: added these capabilities
- frame the line containing the cursor with the background color instead of coloring it
- support for the "reverse selected lines" command (Meta+Alt+R)

Preferences/ConfigurationPages/EditorStylesPage.py file | annotate | diff | comparison | revisions
Preferences/ConfigurationPages/EditorStylesPage.ui file | annotate | diff | comparison | revisions
Preferences/__init__.py file | annotate | diff | comparison | revisions
QScintilla/Editor.py file | annotate | diff | comparison | revisions
QScintilla/MiniEditor.py file | annotate | diff | comparison | revisions
QScintilla/QsciScintillaCompat.py file | annotate | diff | comparison | revisions
ViewManager/ViewManager.py file | annotate | diff | comparison | revisions
changelog file | annotate | diff | comparison | revisions
--- a/Preferences/ConfigurationPages/EditorStylesPage.py	Tue Mar 05 19:50:32 2019 +0100
+++ b/Preferences/ConfigurationPages/EditorStylesPage.py	Wed Mar 06 18:44:29 2019 +0100
@@ -73,19 +73,21 @@
                 QsciScintilla.WrapFlagInMargin)
         
         self.wrapIndentComboBox.addItem(
-            self.tr("Fixed Amount"), QsciScintilla.WrapIndentFixed)
+            self.tr("Fixed"), QsciScintilla.WrapIndentFixed)
         self.wrapIndentComboBox.addItem(
-            self.tr("Aligned to First Line"), QsciScintilla.WrapIndentSame)
+            self.tr("Aligned"), QsciScintilla.WrapIndentSame)
         self.wrapIndentComboBox.addItem(
-            self.tr("Aligned to First Line plus One"),
+            self.tr("Aligned plus One"),
             QsciScintilla.WrapIndentIndented)
         if QSCINTILLA_VERSION() >= 0x020B00:
             self.wrapIndentComboBox.addItem(
-                self.tr("Aligned to First Line plus Two"),
+                self.tr("Aligned plus Two"),
                 QsciScintilla.WrapIndentDeeplyIndented)
         
-        if QSCINTILLA_VERSION() < 0x020800:
-            self.caretlineAlwaysVisibleCheckBox.hide()
+        self.caretlineAlwaysVisibleCheckBox.setEnabled(
+            QSCINTILLA_VERSION() >= 0x020800)
+        self.caretlineFrameWidthSpinBox.setEnabled(
+            QSCINTILLA_VERSION() >= 0x020B00)
         
         # set initial values
         try:
@@ -112,6 +114,8 @@
             Preferences.getEditor("CaretLineAlwaysVisible"))
         self.caretWidthSpinBox.setValue(
             Preferences.getEditor("CaretWidth"))
+        self.caretlineFrameWidthSpinBox.setValue(
+            Preferences.getEditor("CaretLineFrameWidth"))
         self.colourizeSelTextCheckBox.setChecked(
             Preferences.getEditor("ColourizeSelText"))
         self.customSelColourCheckBox.setChecked(
@@ -170,6 +174,8 @@
         self.wrapIndentComboBox.setCurrentIndex(
             self.wrapIndentComboBox.findData(
                 Preferences.getEditor("WrapIndentMode")))
+        self.wrapStartIndentSpinBox.setValue(
+            Preferences.getEditor("WrapStartIndent"))
         
         self.edgeModeCombo.setCurrentIndex(
             self.edgeModes.index(Preferences.getEditor("EdgeMode")))
@@ -326,6 +332,8 @@
         
         Preferences.setEditor(
             "CaretWidth", self.caretWidthSpinBox.value())
+        Preferences.setEditor(
+            "CaretLineFrameWidth", self.caretlineFrameWidthSpinBox.value())
         
         Preferences.setEditor(
             "ShowEOL", self.eolCheckBox.isChecked())
@@ -339,6 +347,8 @@
             "WrapIndentMode", self.wrapIndentComboBox.itemData(
                 self.wrapIndentComboBox.currentIndex()))
         Preferences.setEditor(
+            "WrapStartIndent", self.wrapStartIndentSpinBox.value())
+        Preferences.setEditor(
             "EdgeMode", self.edgeModes[self.edgeModeCombo.currentIndex()])
         Preferences.setEditor(
             "EdgeColumn", self.edgeLineColumnSlider.value())
--- a/Preferences/ConfigurationPages/EditorStylesPage.ui	Tue Mar 05 19:50:32 2019 +0100
+++ b/Preferences/ConfigurationPages/EditorStylesPage.ui	Wed Mar 06 18:44:29 2019 +0100
@@ -10,7 +10,7 @@
     <height>2891</height>
    </rect>
   </property>
-  <layout class="QVBoxLayout" name="verticalLayout_9">
+  <layout class="QVBoxLayout" name="verticalLayout_10">
    <item>
     <widget class="QLabel" name="headerLabel">
      <property name="text">
@@ -563,133 +563,186 @@
      <property name="title">
       <string>Caret</string>
      </property>
-     <layout class="QVBoxLayout" name="verticalLayout_6">
+     <layout class="QVBoxLayout" name="verticalLayout_9">
       <item>
-       <layout class="QHBoxLayout" name="horizontalLayout_4">
-        <item>
-         <widget class="QCheckBox" name="caretlineVisibleCheckBox">
-          <property name="toolTip">
-           <string>Select, whether the caretline should be highlighted</string>
-          </property>
-          <property name="text">
-           <string>Caretline visible</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QCheckBox" name="caretlineAlwaysVisibleCheckBox">
-          <property name="toolTip">
-           <string>Select, whether the caretline should be highlighted even if the editor doesn't have the focus</string>
-          </property>
-          <property name="text">
-           <string>Caretline always visible</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <spacer name="horizontalSpacer_3">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-       </layout>
+       <widget class="QGroupBox" name="groupBox_18">
+        <property name="title">
+         <string>Caret</string>
+        </property>
+        <layout class="QHBoxLayout" name="horizontalLayout_5">
+         <item>
+          <widget class="QLabel" name="textLabel1_7">
+           <property name="text">
+            <string>Width:</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QSpinBox" name="caretWidthSpinBox">
+           <property name="toolTip">
+            <string>Select caret width (1, 2 or 3 pixels)</string>
+           </property>
+           <property name="minimum">
+            <number>1</number>
+           </property>
+           <property name="maximum">
+            <number>3</number>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QLabel" name="TextLabel2_2_2_2_2_2">
+           <property name="text">
+            <string>Foreground:</string>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <widget class="QPushButton" name="caretForegroundButton">
+           <property name="minimumSize">
+            <size>
+             <width>100</width>
+             <height>0</height>
+            </size>
+           </property>
+           <property name="toolTip">
+            <string>Select the colour for the caret.</string>
+           </property>
+           <property name="text">
+            <string/>
+           </property>
+          </widget>
+         </item>
+         <item>
+          <spacer>
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeType">
+            <enum>QSizePolicy::Expanding</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>347</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
+        </layout>
+       </widget>
       </item>
       <item>
-       <layout class="QHBoxLayout" name="_6">
-        <item>
-         <widget class="QLabel" name="textLabel1_7">
-          <property name="text">
-           <string>Caret width:</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QSpinBox" name="caretWidthSpinBox">
-          <property name="toolTip">
-           <string>Select caret width (1, 2 or 3 pixels)</string>
-          </property>
-          <property name="minimum">
-           <number>1</number>
-          </property>
-          <property name="maximum">
-           <number>3</number>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <spacer>
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-          <property name="sizeType">
-           <enum>QSizePolicy::Expanding</enum>
-          </property>
-          <property name="sizeHint" stdset="0">
-           <size>
-            <width>40</width>
-            <height>20</height>
-           </size>
-          </property>
-         </spacer>
-        </item>
-       </layout>
-      </item>
-      <item>
-       <layout class="QHBoxLayout" name="_7">
-        <item>
-         <widget class="QLabel" name="TextLabel2_2_2_2_2_2">
-          <property name="text">
-           <string>Caret foreground:</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QPushButton" name="caretForegroundButton">
-          <property name="minimumSize">
-           <size>
-            <width>100</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="toolTip">
-           <string>Select the colour for the caret.</string>
-          </property>
-          <property name="text">
-           <string/>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QLabel" name="TextLabel2_2_2_2_2_3">
-          <property name="text">
-           <string>Caretline background:</string>
-          </property>
-         </widget>
-        </item>
-        <item>
-         <widget class="QPushButton" name="caretlineBackgroundButton">
-          <property name="minimumSize">
-           <size>
-            <width>100</width>
-            <height>0</height>
-           </size>
-          </property>
-          <property name="toolTip">
-           <string>Select the background colour for the line containing the caret.</string>
-          </property>
-          <property name="text">
-           <string/>
-          </property>
-         </widget>
-        </item>
-       </layout>
+       <widget class="QGroupBox" name="groupBox_19">
+        <property name="title">
+         <string>Caret Line</string>
+        </property>
+        <layout class="QVBoxLayout" name="verticalLayout_6">
+         <item>
+          <layout class="QHBoxLayout" name="horizontalLayout_4">
+           <item>
+            <widget class="QCheckBox" name="caretlineVisibleCheckBox">
+             <property name="toolTip">
+              <string>Select, whether the caret line should be highlighted</string>
+             </property>
+             <property name="text">
+              <string>Caret line visible</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QCheckBox" name="caretlineAlwaysVisibleCheckBox">
+             <property name="toolTip">
+              <string>Select, whether the caret line should be highlighted even if the editor doesn't have the focus</string>
+             </property>
+             <property name="text">
+              <string>Caret line always visible</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <spacer name="horizontalSpacer_3">
+             <property name="orientation">
+              <enum>Qt::Horizontal</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>40</width>
+               <height>20</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </item>
+         <item>
+          <layout class="QHBoxLayout" name="horizontalLayout_6">
+           <item>
+            <widget class="QLabel" name="label_19">
+             <property name="text">
+              <string>Frame Width:</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QSpinBox" name="caretlineFrameWidthSpinBox">
+             <property name="toolTip">
+              <string>Select caret line frame width (off, 1, 2 or 3 pixels)</string>
+             </property>
+             <property name="specialValueText">
+              <string>Off</string>
+             </property>
+             <property name="minimum">
+              <number>0</number>
+             </property>
+             <property name="maximum">
+              <number>3</number>
+             </property>
+             <property name="value">
+              <number>0</number>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QLabel" name="TextLabel2_2_2_2_2_3">
+             <property name="text">
+              <string>Background:</string>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <widget class="QPushButton" name="caretlineBackgroundButton">
+             <property name="minimumSize">
+              <size>
+               <width>100</width>
+               <height>0</height>
+              </size>
+             </property>
+             <property name="toolTip">
+              <string>Select the background colour for the line containing the caret.</string>
+             </property>
+             <property name="text">
+              <string/>
+             </property>
+            </widget>
+           </item>
+           <item>
+            <spacer name="horizontalSpacer_5">
+             <property name="orientation">
+              <enum>Qt::Horizontal</enum>
+             </property>
+             <property name="sizeHint" stdset="0">
+              <size>
+               <width>40</width>
+               <height>20</height>
+              </size>
+             </property>
+            </spacer>
+           </item>
+          </layout>
+         </item>
+        </layout>
+       </widget>
       </item>
      </layout>
     </widget>
@@ -912,7 +965,7 @@
            </property>
           </widget>
          </item>
-         <item row="0" column="2">
+         <item row="0" column="2" colspan="2">
           <spacer name="horizontalSpacer_2">
            <property name="orientation">
             <enum>Qt::Horizontal</enum>
@@ -953,6 +1006,32 @@
            </property>
           </widget>
          </item>
+         <item row="2" column="2">
+          <widget class="QSpinBox" name="wrapStartIndentSpinBox">
+           <property name="toolTip">
+            <string>Enter the number of characters to indent (only used for 'Fixed')</string>
+           </property>
+           <property name="suffix">
+            <string> characters</string>
+           </property>
+           <property name="maximum">
+            <number>9</number>
+           </property>
+          </widget>
+         </item>
+         <item row="2" column="3">
+          <spacer name="horizontalSpacer_4">
+           <property name="orientation">
+            <enum>Qt::Horizontal</enum>
+           </property>
+           <property name="sizeHint" stdset="0">
+            <size>
+             <width>362</width>
+             <height>20</height>
+            </size>
+           </property>
+          </spacer>
+         </item>
         </layout>
        </widget>
       </item>
@@ -2018,10 +2097,11 @@
   <tabstop>extentSelEolCheckBox</tabstop>
   <tabstop>selectionForegroundButton</tabstop>
   <tabstop>selectionBackgroundButton</tabstop>
+  <tabstop>caretWidthSpinBox</tabstop>
+  <tabstop>caretForegroundButton</tabstop>
   <tabstop>caretlineVisibleCheckBox</tabstop>
   <tabstop>caretlineAlwaysVisibleCheckBox</tabstop>
-  <tabstop>caretWidthSpinBox</tabstop>
-  <tabstop>caretForegroundButton</tabstop>
+  <tabstop>caretlineFrameWidthSpinBox</tabstop>
   <tabstop>caretlineBackgroundButton</tabstop>
   <tabstop>debugMarkerBackgroundCheckBox</tabstop>
   <tabstop>currentLineMarkerButton</tabstop>
@@ -2035,6 +2115,7 @@
   <tabstop>wrapModeComboBox</tabstop>
   <tabstop>wrapVisualComboBox</tabstop>
   <tabstop>wrapIndentComboBox</tabstop>
+  <tabstop>wrapStartIndentSpinBox</tabstop>
   <tabstop>edgeModeCombo</tabstop>
   <tabstop>edgeLineColumnSlider</tabstop>
   <tabstop>edgeBackgroundColorButton</tabstop>
--- a/Preferences/__init__.py	Tue Mar 05 19:50:32 2019 +0100
+++ b/Preferences/__init__.py	Wed Mar 06 18:44:29 2019 +0100
@@ -402,6 +402,7 @@
         "WrapLongLinesMode": QsciScintilla.WrapNone,
         "WrapVisualFlag": QsciScintilla.WrapFlagNone,
         "WrapIndentMode": QsciScintilla.WrapIndentFixed,
+        "WrapStartIndent": 0,
         "WarnFilesize": 512,
         "ClearBreaksOnClose": True,
         "StripTrailingWhitespace": False,
@@ -418,6 +419,7 @@
         "CaretLineVisible": False,
         "CaretLineAlwaysVisible": False,
         "CaretWidth": 1,
+        "CaretLineFrameWidth": 0,
         "ColourizeSelText": False,
         "CustomSelectionColours": False,
         "ExtendSelectionToEol": False,
@@ -2167,7 +2169,7 @@
             "Editor/" + key, prefClass.editorDefaults[key])
     elif key in ["AutosaveInterval", "TabWidth", "IndentWidth",
                  "FoldingStyle", "WarnFilesize", "EdgeMode", "EdgeColumn",
-                 "CaretWidth", "AutoCompletionSource",
+                 "CaretWidth", "CaretLineFrameWidth", "AutoCompletionSource",
                  "AutoCompletionThreshold", "AutoCompletionTimeout",
                  "AutoCompletionCacheSize", "AutoCompletionCacheTime",
                  "AutoCompletionWatchdogTime", "AutoCompletionMaxLines",
@@ -2177,7 +2179,7 @@
                  "PostScriptLevel", "EOLMode", "ZoomFactor", "WhitespaceSize",
                  "OnlineSyntaxCheckInterval", "OnlineChangeTraceInterval",
                  "WrapLongLinesMode", "WrapVisualFlag", "WrapIndentMode",
-                 "CallTipsPosition", "VirtualSpaceOptions"]:
+                 "WrapStartIndent", "CallTipsPosition", "VirtualSpaceOptions"]:
         return int(prefClass.settings.value(
             "Editor/" + key, prefClass.editorDefaults[key]))
     elif key in ["AdditionalOpenFilters", "AdditionalSaveFilters",
--- a/QScintilla/Editor.py	Tue Mar 05 19:50:32 2019 +0100
+++ b/QScintilla/Editor.py	Wed Mar 06 18:44:29 2019 +0100
@@ -29,7 +29,7 @@
 from E5Gui import E5FileDialog, E5MessageBox
 from E5Utilities.E5Cache import E5Cache
 
-from .QsciScintillaCompat import QsciScintillaCompat
+from .QsciScintillaCompat import QsciScintillaCompat, QSCINTILLA_VERSION
 from .EditorMarkerMap import EditorMarkerMap
 
 import Preferences
@@ -4343,6 +4343,9 @@
             Preferences.getEditor("CaretLineAlwaysVisible"))
         self.caretWidth = Preferences.getEditor("CaretWidth")
         self.setCaretWidth(self.caretWidth)
+        self.caretLineFrameWidth = Preferences.getEditor("CaretLineFrameWidth")
+        if QSCINTILLA_VERSION() >= 0x020B00:
+            self.setCaretLineFrameWidth(self.caretLineFrameWidth)
         self.useMonospaced = Preferences.getEditor("UseMonospacedFont")
         self.setMonospaced(self.useMonospaced)
         edgeMode = Preferences.getEditor("EdgeMode")
@@ -4356,6 +4359,7 @@
         self.setWrapMode(Preferences.getEditor("WrapLongLinesMode"))
         self.setWrapVisualFlags(wrapVisualFlag, wrapVisualFlag)
         self.setWrapIndentMode(Preferences.getEditor("WrapIndentMode"))
+        self.setWrapStartIndent(Preferences.getEditor("WrapStartIndent"))
         
         self.zoomTo(Preferences.getEditor("ZoomFactor"))
         
--- a/QScintilla/MiniEditor.py	Tue Mar 05 19:50:32 2019 +0100
+++ b/QScintilla/MiniEditor.py	Wed Mar 06 18:44:29 2019 +0100
@@ -24,7 +24,7 @@
 from E5Gui import E5MessageBox, E5FileDialog
 from E5Gui.E5MainWindow import E5MainWindow
 
-from .QsciScintillaCompat import QsciScintillaCompat
+from .QsciScintillaCompat import QsciScintillaCompat, QSCINTILLA_VERSION
 
 import UI.PixmapCache
 import UI.Config
@@ -1296,6 +1296,19 @@
         act.triggered.connect(self.esm.map)
         self.editActions.append(act)
         
+        if QSCINTILLA_VERSION() >= 0x020B00:
+            act = E5Action(
+                QCoreApplication.translate('ViewManager',
+                                           'Reverse selected lines'),
+                QCoreApplication.translate('ViewManager',
+                                           'Reverse selected lines'),
+                QKeySequence(QCoreApplication.translate('ViewManager',
+                                                        'Meta+Alt+R')),
+                0, self.editorActGrp, 'vm_edit_reverse selected_lines')
+            self.esm.setMapping(act, QsciScintilla.SCI_LINEREVERSE)
+            act.triggered.connect(self.esm.map)
+            self.editActions.append(act)
+        
         act = E5Action(
             QCoreApplication.translate('ViewManager', 'Cut current line'),
             QCoreApplication.translate('ViewManager', 'Cut current line'),
@@ -2663,6 +2676,9 @@
             Preferences.getEditor("CaretLineAlwaysVisible"))
         self.caretWidth = Preferences.getEditor("CaretWidth")
         self.__textEdit.setCaretWidth(self.caretWidth)
+        self.caretLineFrameWidth = Preferences.getEditor("CaretLineFrameWidth")
+        if QSCINTILLA_VERSION() >= 0x020B00:
+            self.__textEdit.setCaretLineFrameWidth(self.caretLineFrameWidth)
         self.useMonospaced = Preferences.getEditor("UseMonospacedFont")
         self.__setMonospaced(self.useMonospaced)
         edgeMode = Preferences.getEditor("EdgeMode")
@@ -2677,6 +2693,8 @@
         self.__textEdit.setWrapVisualFlags(wrapVisualFlag, wrapVisualFlag)
         self.__textEdit.setWrapIndentMode(
             Preferences.getEditor("WrapIndentMode"))
+        self.__textEdit.setWrapStartIndent(
+            Preferences.getEditor("WrapStartIndent"))
         
         self.searchIndicator = QsciScintilla.INDIC_CONTAINER
         self.__textEdit.indicatorDefine(
--- a/QScintilla/QsciScintillaCompat.py	Tue Mar 05 19:50:32 2019 +0100
+++ b/QScintilla/QsciScintillaCompat.py	Wed Mar 06 18:44:29 2019 +0100
@@ -1757,8 +1757,8 @@
                 self.foldLine(line)
     
     #########################################################################
-    # method below implement a compatibility variant for the findFirst()
-    # extended with version 2.11
+    ## Method below implements a compatibility variant for the findFirst()
+    ## extended with version 2.11.
     #########################################################################
 
     def findFirst(self, expression, regexp, caseSensitive, word, wrap,
@@ -1804,8 +1804,23 @@
                 forward=forward, line=line, index=index, show=show,
                 posix=posix)
     
+    #########################################################################
+    ## Methods below are missing from QScintilla.
+    #########################################################################
+
+    if "setWrapStartIndent" not in QsciScintilla.__dict__:
+        def setWrapStartIndent(self, indent):
+            """
+            Public method to set a the amount of characters wrapped sublines
+            shall be indented.
+            
+            @param indent amount of characters to indent
+            @type int
+            """
+            self.SendScintilla(QsciScintilla.SCI_SETWRAPSTARTINDENT, indent)
+    
 ##    #########################################################################
-##    # methods below have been added to QScintilla starting with version 2.x
+##    ## Methods below have been added to QScintilla starting with version 2.x.
 ##    #########################################################################
 ##
 ##    if "newMethod" not in QsciScintilla.__dict__:
--- a/ViewManager/ViewManager.py	Tue Mar 05 19:50:32 2019 +0100
+++ b/ViewManager/ViewManager.py	Wed Mar 06 18:44:29 2019 +0100
@@ -26,6 +26,7 @@
 import Preferences
 
 from QScintilla.Editor import Editor
+from QScintilla.QsciScintillaCompat import QSCINTILLA_VERSION
 
 import Utilities
 
@@ -2124,6 +2125,19 @@
         act.triggered.connect(self.esm.map)
         self.editActions.append(act)
         
+        if QSCINTILLA_VERSION() >= 0x020B00:
+            act = E5Action(
+                QCoreApplication.translate('ViewManager',
+                                           'Reverse selected lines'),
+                QCoreApplication.translate('ViewManager',
+                                           'Reverse selected lines'),
+                QKeySequence(QCoreApplication.translate('ViewManager',
+                                                        'Meta+Alt+R')),
+                0, self.editorActGrp, 'vm_edit_reverse selected_lines')
+            self.esm.setMapping(act, QsciScintilla.SCI_LINEREVERSE)
+            act.triggered.connect(self.esm.map)
+            self.editActions.append(act)
+        
         act = E5Action(
             QCoreApplication.translate('ViewManager', 'Cut current line'),
             QCoreApplication.translate('ViewManager', 'Cut current line'),
--- a/changelog	Tue Mar 05 19:50:32 2019 +0100
+++ b/changelog	Wed Mar 06 18:44:29 2019 +0100
@@ -5,6 +5,9 @@
 - Editor
   -- added extended regular expression support (C++11) as of QScintilla 2.11.0
   -- added capability to configure the subline indentation for wrapped lines
+  -- added capability to frame the line containing the cursor instead of
+     coloring it
+  -- added support for the "reverse selected lines" command (Meta+Alt+R)
 - Email
   -- changed the Google Mail interface to not use obsoleted packages anymore
 - Multi Project

eric ide

mercurial