Code::Blocks Forums

Developer forums (C::B DEVELOPMENT STRICTLY!) => Development => Topic started by: sethjackson on January 10, 2006, 02:54:24 am

Title: wxScintilla
Post by: sethjackson on January 10, 2006, 02:54:24 am
Hi new version of wxScintilla is out.

http://wxcode.sourceforge.net/components/wxscintilla/

Scintilla home page

http://www.scintilla.org/

says

"Version 1.67 enhances some lexers and fixes bugs."

Where is the full changelog....... I can't seem to find it.  :P

Would it be possible to update wxScintilla in C::B?
Title: Re: wxScintilla
Post by: takeshimiya on January 10, 2006, 03:13:07 am
well, if the wxScintilla is stored in a SVN repository, it could be included in the SVN externals of C::B, so it will be automatically updated.
Or I'm missing something? I wonder if SVN externals works with CVS repositories.

Quote
Scintilla and SciTE changes
Changelog: Release 1.67
    * Released on 17 December 2005.
    * Scintilla checks the paint region more accurately when seeing if an area is being repainted. Platform layer implementations may need to change for this to take effect. This fixes some drawing and styling bugs. Also optimized some parts of marker code to only redraw the line of the marker rather than whole of the margin.
    * Quoted identifier style for SQL. SQL folding performed more simply.
    * Ruby lexer improved to better handle here documents and non-ASCII characters.
    * Lua lexer supports long string and block comment syntax from Lua 5.1.
    * Bash lexer handles here documents better.
    * JavaScript lexing recognises regular expressions more accurately and includes flag characters in the regular expression style. This is both in JavaScript files and when JavaScript is embedded in HTML.
    * Scintilla API provided to reveal how many style bits are needed for the current lexer.
    * Selection duplicate added.
    * Scintilla API for adding a set of markers to a line.
    * DBCS encodings work on Windows 9x.
    * Convention defined for property names to be used by lexers and folders so they can be automatically discovered and forwarded from containers.
    * Default bookmark in SciTE changed to a blue sphere image.
    * SciTE stores the time of last asking for a save separately for each buffer which fixes bugs with automatic reloading.
    * On Windows, pasted text has line ends converted to current preference. GTK+ already did this.
    * Kid template language better handled by HTML lexer by finishing ASP Python mode when a ?> is found.
    * SciTE counts number of characters in a rectangular selection correctly.
    * 64-bit compatibility improved. One change that may affect user code is that the notification message header changed to include a pointer-sized id field to match the current Windows definition.
    * Empty ranges can no longer be dragged.
    * Crash fixed when calls made that use layout inside the painted notification.
    * Bug fixed where Scintilla created pixmap buffers that were too large leading to failures when many instances used.
    * SciTE sets the directory of a new file to the directory of the currently active file.
    * SciTE allows choosing a code page for the output pane.
    * SciTE HTML exporter no longer honours monospaced font setting.
    * Line layout cache in page mode caches the line of the caret. An assertion is now used to ensure that the layout reentrancy problem that caused this is easier to find.
    * Speed optimized for long lines and lines containing many control characters.
    * Bug fixed in brace matching in DBCS files where byte inside character is same as brace.
    * Indent command does not indent empty lines.
    * SciTE bug fixed for commands that operate on files with empty extensions.
    * SciTE bug fixed where monospaced option was copied for subsequently opened files.
    * SciTE on Windows bug fixed in the display of a non-ASCII search string which can not be found.
    * Bugs fixed with nested calls displaying a new calltip while one is already displayed.
    * Bug fixed when styling PHP strings.
    * Bug fixed when styling C++ continued preprocessor lines.
    * SciTE bug fixed where opening file from recently used list reset choice of language.
    * SciTE bug fixed when compiled with NO_EXTENSIONS and closing one file closes the application.
    * SciTE crash fixed for error messages that look like Lua messages but aren't in the same order.
    * Remaining fold box support deprecated. The symbols SC_FOLDLEVELBOXHEADERFLAG, SC_FOLDLEVELBOXFOOTERFLAG, SC_FOLDLEVELCONTRACTED, SC_FOLDLEVELUNINDENT, and SC_FOLDFLAG_BOX are deprecated.
Title: Re: wxScintilla
Post by: 280Z28 on January 10, 2006, 03:55:46 am
All those fixes and they can't make rectangular copy/paste work  :?

 :? Even more since I posted a patch for it on the wxcode patches page on Sourceforge.....

(It's a bug in wxScintilla, not in Scintilla)
Title: Re: wxScintilla
Post by: thomas on January 10, 2006, 02:28:18 pm
... it could be included in the SVN externals of C::B...
This does not work, as they do not offer svn access.
Even if it did, it would be questionable whether it would be wise in that particular case anyway.
Title: Re: wxScintilla
Post by: mandrav on January 10, 2006, 03:07:30 pm
wxScintilla 1.67 is now used (revision 1701). Thanks for the heads-up.
Title: Re: wxScintilla
Post by: Pecan on January 10, 2006, 03:23:02 pm
Just upudated to 1701 and get the following
Code
-------------- Build: AutoRevision in Code::Blocks (wx2.6) ---------------
Compiling: tools\autorevision\autorevision.cpp
Execution of 'mingw32-g++.exe -Wall -g -pipe -mthreads -fmessage-length=0 -fexceptions -Winvalid-pch -DHAVE_W32API_H -D__WXMSW__ -DWXUSINGDLL -DcbDEBUG -DTIXML_USE_STL -DCB_PRECOMP -DWX_PRECOMP -DwxUSE_UNICODE  -IC:\Usr\Proj\wxWidgets262\include -IC:\Usr\Proj\wxWidgets262\lib\gcc_dll\mswu -IC:\Usr\Proj\wxWidgets262\lib\gcc_dll\mswu -IC:\Usr\Proj\wxWidgets262\contrib\include -Isdk\wxscintilla\include -Isdk\propgrid\include -IC:\MinGW\include  -c tools\autorevision\autorevision.cpp -o .objs\2.6\tools\autorevision\autorevision.o' in 'C:\Usr\Proj\cbBeta\trunk\src' failed.
Nothing to be done.

How do I get past this

thanks
pecan
Title: Re: wxScintilla
Post by: mandrav on January 10, 2006, 03:27:38 pm
Quote
How do I get past this

You have a compiler problem here.
It seems mingw32-g++.exe can't be found. Check your settings...
Title: Re: wxScintilla
Post by: Pecan on January 10, 2006, 03:37:37 pm
Quote
You have a compiler problem here.
It seems mingw32-g++.exe can't be found. Check your settings...

yup! Thats it. When I run from the command line with
a path set, it's compiling. When I just start /output/codeblocks.exe
from the start menu, it fails.

How did I f%$k this up??

thanks
peacan
Title: Re: wxScintilla
Post by: mandrav on January 10, 2006, 03:42:32 pm
Quote
How did I f%$k this up??

Check "Settings->Compiler->Programs" and particularly the master path.
Title: Re: wxScintilla
Post by: sethjackson on January 10, 2006, 06:38:15 pm
All those fixes and they can't make rectangular copy/paste work  :?

 :? Even more since I posted a patch for it on the wxcode patches page on Sourceforge.....

(It's a bug in wxScintilla, not in Scintilla)


I saw that patch.... I hope it gets added next wxScintilla release.  :P

wxScintilla 1.67 is now used (revision 1701). Thanks for the heads-up.

Yup anytime. :) Thanks for adding it so fast.  8)
Title: Re: wxScintilla
Post by: heromyth on February 01, 2007, 05:54:58 am
Scintilla 1.72 is out.
wxScintilla is still 1.69.2. Of course, it is updating to 1.71 in SVN depository.

Today, I have successfully updated the scintilla in Code::Blocks svn 3555 from 1.67 to 1.72. The whole process is painless. :lol: I just did some simple tests and didn't find any problem. After a little longer test and not finding any problem, I'll submit my patches (In fact, they are just some little patches to wxScintilla 1.71 and Scintilla 1.72).

Title: Re: wxScintilla
Post by: joubertdj on February 01, 2007, 06:28:51 am
 :lol: Super!!!
Title: Re: wxScintilla
Post by: arst on February 01, 2007, 02:33:03 pm
About wxScintilla: I just posted a patch on BerliOS with script Squirrel bindings for wxScintilla:

  local ed = GetEditorManager().GetActiveEditor()
  if( ed.GetStyle()==2 )   // 2 is a comment line in Scintilla
    ed.InsertText(_T("This appears inside a comment"))

So, now one can make scripts that navigate and edit in open text files.

It's convenient to use the style information from Scintilla, one can
know what element (comment, identifier, reserved word,...) one is
dealing with.

I'm looking at doing wxEventHandler macro insertion this way.

OK!
// Arst

Title: Re: wxScintilla
Post by: heromyth on February 04, 2007, 03:18:41 pm
The steps of upgrading wxscintilla to the newest

1) downloading wxscintilla files

These files locate at http://wxcode.cvs.sourceforge.net/wxcode/wxCode/components/wxscintilla/

They are including :
    src/PlatWX.cpp
    src/PlatWX.h
    src/ScintillaWX.cpp
    src/ScintillaWX.h
    src/wxscintilla.cpp
    build/Makefile
    include/wx/wxscintilla.h

Overwriting these files in codeblocks/src/sdk/wxscintilla/.

2) patching wxscintilla

Using these patch files:
wxscintilla.h.patch
ScintillaWX.h.patch
Makefile.wxScintilla.patch


3) downloading scintilla

It's at here:
http://prdownloads.sourceforge.net/scintilla/scintilla172.zip?download

Place all the files into codeblocks/src/sdk/wxscintilla/src/scintilla/.

4) patching scintilla

Using this patch file:

ExternalLexer.h.patch

This patch has been taken into scintilla cvs.

4) patching CB

Using these patch files:

CodeBlocks.cbp.wxscintilla.patch
CodeBlocks-unix.cbp.wxscintilla.patch
Makefile.am.wxScintilla.patch

5) rebuilding CB

Now enjoy it!

All the patch files are in the attachment.


I have tested it with CB SVN 3566 under WinXP SP2, and haven't found any problem.

I have also submitted this patch at https://developer.berlios.de/patch/index.php?func=detailpatch&patch_id=1871&group_id=5358



[attachment deleted by admin]
Title: Re: wxScintilla
Post by: MortenMacFly on February 04, 2007, 04:16:21 pm
The steps of upgrading wxscintilla to the newest
[...]
It's not quite as simple as that. These patches do not include the C::B changes to wxScintilla. These need to be merged, too (at least verified if they are still relevant). In addition please keep in mind that this is a major change to C::B as wxScintilla is a core component of C::B. I'm using an up-to-date version of wxScintilla myself (including the patches ;-)) but I am not sure if this is compatible with all platforms C::B is used with.
...just for the record.
With regards, Morten.
Title: Re: wxScintilla
Post by: heromyth on February 04, 2007, 05:29:25 pm
It's not quite as simple as that. These patches do not include the C::B changes to wxScintilla.
Until now, I haven't found any places in C::B should be pached. Maybe more tests are needed. If we didn't upgrade it, we won't find what should be pached. No patches for C::B is a good thing. That's to say, C::B hasn't depend on some special features of wxScintilla.


Quote
but I am not sure if this is compatible with all platforms C::B is used with.
I'll try to test it in FreeBSD.
Title: Re: wxScintilla
Post by: stahta01 on February 12, 2007, 06:35:01 am
I suggest that you use unified diff patch files.

http://wiki.codeblocks.org/index.php?title=Creating_a_patch_to_submit_to_BerliOS_%28Patch_Tracker%29

Tim S
Title: Re: wxScintilla
Post by: pauliusz on February 22, 2007, 05:05:07 pm
It would be very nice to have updated version of wxScintilla...
Currently there are some annoying bugs in it and hopefully they got fixed in new release.
Title: Re: wxScintilla
Post by: heromyth on April 20, 2007, 05:27:46 am
The steps of upgrading wxscintilla to the newest


Sorry for this patch. I have found a bug after upgrading.  The bug is that:

I can input non-ascii characters like Chinese without any problem.  However, when I paste these characters which I have just copied,  I'll lost nearly 70% of them :(.

For example, I have just copied two Chinese characters. But I only get one when I paste them.

Of course, all of the things have been done in CB.

Here are some other cases:
Copied in CB, and pasted into other application like notepad. It's no problem.

Copied in other application like notepad, and pasted into CB. It's no problem.


I have test these using SciTE.exe, and don't found this bug.

Is this because of CB or wxScintilla. Thanks for any suggestions.
Title: Re: wxScintilla
Post by: heromyth on May 11, 2007, 10:18:40 am
The steps of upgrading wxscintilla to the newest


Is this because of CB or wxScintilla. Thanks for any suggestions.

Now, this problem has been fixed :P. It's because of wxScintilla.

I have submitted a patch at http://sourceforge.net/tracker/index.php?func=detail&aid=1716953&group_id=51305&atid=462818.

Here, I have attached a patch which has also included some CB's fixes for wxScintilla.

This patch works well for the wxScintilla CVS.


[attachment deleted by admin]