Hi,
I use QScintilla in essentially two modes: with and without a lexer. In the case where there is no lexer, QsciScintilla::replace() works as I would expect (i.e. it replaces the selected with whatever text I want to replace it with). However, if there is a lexer, then QsciScintilla::replace() just doesn't work for me. For example, say that I have the following text in an instance of QScintilla: --------- <math xmlns="http://www.w3.org/1998/Math/MathML"> <apply> <eq/> <apply> <diff/> <bvar> <ci>time</ci> </bvar> <ci>V</ci> </apply> <apply> <divide/> <apply> <minus/> <apply> <plus/> <ci>i_Na</ci> <ci>i_K</ci> <ci>i_Leak</ci> </apply> </apply> <ci>Cm</ci> </apply> </apply> </math> --------- Now, say that I want to replace all occurrences of "apply" with "SOME_TEXT", then I will get: --------- <math xmlns="http://www.w3.org/1998/Math/MathML"> <SOME_TEXT> <eq/> <SOME_TEXT> <diff/> <bvar> <ci>time</ci> </bvar> <ci>V</ci> </SOME_TEXT> <SOME_TEXT> <divide/> <SOME_TEXT> <minus/> <SOME_TEXT> <plus/> <ci>i_Na</ci> <ci>i_K</ci> <ci>i_Leak</ci> </SOME_TEXT> </SOME_TEXT> <ci>Cm</ci> </SOME_TEXT> </SOME_TEXT> </math> --------- Which is indeed what I would expect. However, if I do the same as above but using an instance of QScintilla that has syntax highlighting, then I will get: --------- <math xmlns="http://www.w3.org/1998/Math/MathML"> <> <eq/> <> <diff/> <bvar> <ci>time</ci> </bvar> <ci>V</ci> </> <> <divide/> <> <minus/> <> <plus/> <ci>i_Na</ci> <ci>i_K</ci> <ci>i_Leak</ci> </> </> <ci>Cm</ci> </> </> SOME_TEXTSOME_TEXTSOME_TEXTSOME_TEXTSOME_TEXTSOME_TEXTSOME_TEXTSOME_TEXTSOME _TEXTSOME_TEXT</math> --------- Which is clearly not what I would expect. So, is there anything special with find/replace and lexers that I should be aware of? Cheers, Alan.
_______________________________________________ QScintilla mailing list [email protected] http://www.riverbankcomputing.com/mailman/listinfo/qscintilla
