[PyKDE] QScintilla snapshot not auto-indenting anymore
Andreas Pakulat
apaku at gmx.de
Mon Jul 17 20:57:25 BST 2006
On 17.07.06 21:37:59, Andreas Pakulat wrote:
> On 17.07.06 19:04:21, Detlev Offenbach wrote:
> > PS: For those of you, who are willing to patch it themselves. In the Editor
> > methods "bindLexer" and "readSettings" (Editor.py) make the lines dealing
> > with autoindentation settings for Python read
>
> Thanks, I would have asked for it else ;-)
>
> For those who are not brave enough to edit the files themselves I attach
> a patch which changes the 2 methods accordingly.
>
> While we're at it: Using the patch needs a qscintilla snapshot, which
> needs a pyqt3 snapshot (not sure wether that needs a sip snapshot). This
> in turn means hacking install.py because the format of the pyqt
> version string changed in the current snapshots (it's 3-snapshot-date
> now). I hacked my install.py by replacing the pyqtVersion[:9] with
> pyqtVersion[2:11] (and the same for the qscintilla check) but this is
> not really nice. Detlev would you be so kind to post the proper change
> for this?
Forgot to attach the patch and one also needs to change
eric/QScintilla/QextScintillaCompat's QSCINTILLA_VERSION function to use
if 'snapshot' in QSCINTILLA_VERSION_STR:
instead of the .startsWith()
Andreas
--
Everything will be just tickety-boo today.
-------------- next part --------------
diff -ur eric-3.9.1/eric/QScintilla/Editor.py eric-3.9.1.new/eric/QScintilla/Editor.py
--- eric-3.9.1/eric/QScintilla/Editor.py 2006-06-16 16:24:38.000000000 +0200
+++ eric-3.9.1.new/eric/QScintilla/Editor.py 2006-07-17 21:24:33.000000000 +0200
@@ -809,7 +809,10 @@
self.lexer.setFoldComments(Preferences.getEditor("PythonFoldComment"))
self.lexer.setFoldQuotes(Preferences.getEditor("PythonFoldString"))
if Preferences.getEditor("PythonAutoIndent"):
- self.lexer.setAutoIndentStyle(0)
+ if QSCINTILLA_VERSION() > 0x010600:
+ self.lexer.setAutoIndentStyle(QextScintilla.AiOpening)
+ else:
+ self.lexer.setAutoIndentStyle(0)
else:
self.lexer.setAutoIndentStyle(QextScintilla.AiMaintain)
elif self.apiLanguage in ["C++", "C#", "IDL", "Java", "JavaScript"]:
@@ -2032,7 +2035,10 @@
self.lexer.readSettings(Preferences.Prefs.settings, "/eric3/Scintilla")
if self.lexer.language() == 'Python':
if Preferences.getEditor("PythonAutoIndent"):
- self.lexer.setAutoIndentStyle(0)
+ if QSCINTILLA_VERSION() > 0x010600:
+ self.lexer.setAutoIndentStyle(QextScintilla.AiOpening)
+ else:
+ self.lexer.setAutoIndentStyle(0)
else:
self.lexer.setAutoIndentStyle(QextScintilla.AiMaintain)
elif self.lexer.language() in ['C++', 'C#', 'IDL', 'Java', 'JavaScript']:
More information about the PyQt
mailing list