Neil Hodgson | 18 Jun 2013 07:25

Line wrapping changes

   There are some inefficiencies in the line wrapping code with lines outside the wrap-needed range being
wrapped and lines being wrapped multiple times. Some improvements were just committed that should
optimise the more common cases. In particular, most typing or deletion within a line should only cause
that line to be rewrapped.

   A bug was introduced earlier this year that led to lines being wrapped shorter than they should and this has
been fixed.

   The change sets are
http://sourceforge.net/p/scintilla/code/ci/9df53cc033e271f72fa37095a3f23f8aa3fa8006/
http://sourceforge.net/p/scintilla/code/ci/3e8191a68112e2b2cfbd7c5f5d2fab42fa70858c/
http://sourceforge.net/p/scintilla/code/ci/7bd094bcb7bada19de54aec108b50ba25e03d395/

   Its possible that there are new bugs in these changes so watch out for painting and wrapping problems.

   Neil

--

-- 
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest.
For more options, visit https://groups.google.com/groups/opt_out.

Florian Balmer | 5 Jun 2013 21:46
Picon

Last (sub)-line in document displayed repetitively with word wrap

I'd like to report an issue posted to me by a mindful user of Notepad2. I'm able to reproduce the problem with SciTE 3.3.3 on Windows (any version, Direct2D disabled):

1. Create a new document in SciTE
2. Enable word wrap (Options, Wrap)
3. Type some text, until the line is long enough to get wrapped
4. Insert two line breaks (hit Enter twice)
5. Type a shorter line of text (that won't wrap)
6. Move the caret to the end of the wrapped line typed in step 3
7. Hit Delete twice to join the two lines
8. Hit Ctrl+Z to undo the last action

The last (short) line is now visible two or more times (possibly depending on the number of sub-lines ("display lines") occupied by the longer, wrapped line typed in step 3). Once the text is modified again, the SciTE window is resized, or the word wrap option is changed, anything is fine, so this seems to be a display-only problem.

The problem does not appear if the shorter line typed in step 5 is not at the end of the document (i.e. followed by at least one line break). If the shorter line from step 5 is long enough to be wrapped, too, only the last sub-line will be repeated.

--Florian

--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Neil Hodgson | 5 Jun 2013 12:06

Does anyone use Digital Mars C++?

   There are some conditionally compiled sections of ScintillaWin.cxx that work around some problems with
Digital Mars C++ from 11 years ago. Its likely that Digital Mars now supports the Imm32 library (needed for
Asian language input) and zmouse.h header (mouse wheel definitions) so it should be possible to remove
these preprocessor checks.

   If anyone is using Digital Mars C++, could you please try inverting the __DMC__ checks to see if they are
still needed. If this is OK or no one responds then I'll remove the checks for DMC.

   Neil

--

-- 
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.

Neil Hodgson | 2 Jun 2013 03:01

Scintilla 3.3.3 released

   Scintilla 3.3.3 is now available from the scintilla.org web site.

   Scintilla 3.3.3 is a bug fix release, mostly for the GTK+ platform. The previous release 3.3.2 contained bugs with copy, paste and drag and drop leading to invalid memory reads and spurious characters.

   Other changes were made and bugs fixed. A detailed list of changes is available on the history page.
http://www.scintilla.org/ScintillaHistory.html

   Scintilla uses Mercurial (Hg) for source code control. The repository can be cloned with

   Thanks to the contributors of code and documentation and to the testers.

   Neil

--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Paul K | 30 May 2013 21:00
Picon

SetBufferedDraw(false) removes additional selection indication (and some other indicators) on OSX (Scintilla 3.2.3)

Neil:
 
I just noticed that I don't see any color on additional selections on OSX (Scintilla 3.2.3). On Windows the same code shows the same selection by default and when I adjust SetAdditionalSelAlpha I get a proper change in additional selection.
 
It turned out to be related to SetBufferedDraw(false) call I added on OSX to enable Retina support. When I set it to false, I see additional selection indication disappearing as well as some other indicators disappearing (for example, INDIC_ROUNDBOX); other indicators (PLAIN, DOTS, DASH) don't seem to be affected.
 
Is this a known issue? Is there a workaround?
 
Paul.

--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Neil Hodgson | 26 May 2013 12:05

Changes to text selection, copy/paste, and drag'n'drop. Change will impact platform layers.

   There are some problems on GTK+ with text selection for the 3.3.2 release with crashes easily produced on
Windows and access outside memory bounds on Linux. These were dues to recent changes which omitted NUL
terminators in some cases. Some fixes for these have been committed.

   To try to simplify selection handling, the SelectionText class is now using a std::string to hold the text
and access methods are used to reach this text. The API of SelectionText has changed which will require
changes to platform layers maintained by other people. All the core platform layers have been updated.
This change is here:
http://sourceforge.net/p/scintilla/code/ci/46b68a5a53ea8c7fea44fd3119601a8559014613/
   Since SelectionText:: FixSelectionForClipboard uses std::replace, files that include Editor.h
should now #include <algorithm>.

   The cut, copy, paste and drag & drop operations are very common but include optional conversions of
encoding and line ends, so there is a good chance I haven't tested all possibilities. If others could check
out and run the code, it would help ensure the next version is less buggy than 3.3.2.

   Since there are crashing bugs in 3.3.2, its likely I'll make a new release in around a week if no further
problems are found.

   Neil

--

-- 
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.

Gary Beene | 24 May 2013 17:19

Getting Re-Acquainted with Scintilla

I wrote an app in 2010, using v2.12 of Scintilla.  I'd like to revise the app using the latest version of Scintilla.

Are there any words of wisdom appropriate for learning to use, or migrating to, the newer version?

I'll start with the documentation and the history files, of course, but just wondered if there were any high level comments that would help me get back into using Scintilla and avoid taking any wrong paths?  Perhaps any major new features that I should be sure and watch out for or any major differences in how Scintilla is used vs the older version?

--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Greg | 23 May 2013 17:00
Picon
Favicon

Auto selection of folded text

As you have now allowed Scintilla to do much of the folding work that previously needed container action, would it be easy to make Scintilla select all folded code automatically when you click in a margin on a folded fold header line? At the moment, clicking in a gap margin or in a line number margin selects the current line without requiring you to make the margin active. However, it pays no attention to the fold state of the line, which feels wrong... or am I missing something?

--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Neil Hodgson | 23 May 2013 12:02

Font smoothing on OS X

   About a week ago I noticed that the text drawn in Apple's Mail.app often looked better than in SciTE. Here's
an image of this comparing, from top to bottom, Mail, TextEdit and SciTE:
http://www.scintilla.org/CocoaFontSmoothing.png

   Zooming in shows that it is only Mail that has the coloured fringes associated with LCD sub-pixel
anti-aliasing. I far prefer the appearance of Mail so examined the possible calls and found that this call
would enable the appearance in SciTE.
    CGContextSetAllowsFontSmoothing((CGContextRef)gc, YES);
   There are 4 independent boolean choices available from Quartz: FontSubpixelQuantization,
FontSubpixelPositioning, FontSmoothing, and Antialiasing.  There are also two calls for each setting
(Allows..., and SetShould...) where both must be true for the effect with the SetShould... derived from
system settings.

   Others may want to experiment with the permutations possible with this set of calls and suggest a different
way of mapping Scintilla's current font quality state to the calls or adding additional font quality
states. It appears to me that it would be best to allow font smoothing for Scintilla's
SC_EFF_QUALITY_LCD_OPTIMIZED state and leave the SC_EFF_QUALITY_DEFAULT state the same as now since
this matches the appearance of TextEdit.

   Here's a with/without smoothing image of SciTE:
http://www.scintilla.org/SciTESmoothing.png
   One effect of the smoothing is to make the text darker.

   Neil

--

-- 
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.

Neil Hodgson | 22 May 2013 02:04

Scintilla 3.3.2 released

   Scintilla 3.3.2 is now available from the scintilla.org web site.

   Scintilla 3.3.2 is a minor feature and bug fix release.

   Common folding operations are available in a packaged form so that applications can more easily add folding that works similar to SciTE.

   Input composition was improved on Cocoa.

   Qt 5.0 is supported.

   Scintilla no longer builds with Visual C++ 6.0.

   The Haskell lexer and folder were improved and the Literate Haskell language was added.

   Other changes were made and bugs fixed. A detailed list of changes is available on the history page.
http://www.scintilla.org/ScintillaHistory.html

   Scintilla uses Mercurial (Hg) for source code control. The repository can be cloned with

   Thanks to the contributors of code and documentation and to the testers.

   Neil

--
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.
 
 
Andreas Tscharner | 21 May 2013 08:59
Picon

Error compiling d887fce163757c50ec95ed204d50b02675db830c

Hello World,

If I try to compile scintilla (r4571, 
d887fce163757c50ec95ed204d50b02675db830c), I get the following error 
when linking SciLexer.dll:

         link -OPT:REF -LTCG -DEBUG -DEF:Scintilla.def -DLL 
-OUT:..\bin\SciLexer.
dll .\Accessor.obj .\AutoComplete.obj .\CallTip.obj .\Catalogue.obj 
.\CellBuffer
.obj .\CharacterSet.obj .\CharClassify.obj .\ContractionState.obj 
.\Decoration.o
bj .\Document.obj .\Editor.obj .\ExternalLexer.obj .\Indicator.obj 
.\KeyMap.obj
.\LexerBase.obj .\LexerModule.obj .\LexerSimple.obj .\LineMarker.obj 
.\PerLine.o
bj .\PlatWin.obj .\PositionCache.obj .\PropSetSimple.obj .\RESearch.obj 
.\RunSty
les.obj .\ScintillaBaseL.obj .\ScintillaWinL.obj .\Selection.obj 
.\Style.obj .\S
tyleContext.obj .\UniConversion.obj .\ViewStyle.obj .\WordList.obj 
.\XPM.obj .\L
exA68k.obj .\LexAbaqus.obj .\LexAda.obj .\LexAPDL.obj .\LexAsm.obj 
.\LexAsn1.obj
  .\LexASY.obj .\LexAU3.obj .\LexAVE.obj .\LexAVS.obj .\LexBaan.obj 
.\LexBash.obj
  .\LexBasic.obj .\LexBullant.obj .\LexCaml.obj .\LexCLW.obj 
.\LexCmake.obj .\Lex
COBOL.obj .\LexCoffeeScript.obj .\LexConf.obj .\LexCPP.obj 
.\LexCrontab.obj .\Le
xCsound.obj .\LexCSS.obj .\LexD.obj .\LexECL.obj .\LexEiffel.obj 
.\LexErlang.obj
  .\LexEScript.obj .\LexFlagship.obj .\LexForth.obj .\LexFortran.obj 
.\LexGAP.obj
  .\LexGui4Cli.obj .\LexHaskell.obj .\LexHTML.obj .\LexInno.obj 
.\LexKix.obj .\Le
xLaTeX.obj .\LexLisp.obj .\LexLout.obj .\LexLua.obj .\LexMagik.obj 
.\LexMarkdown
.obj .\LexMatlab.obj .\LexMetapost.obj .\LexMMIXAL.obj .\LexModula.obj 
.\LexMPT.
obj .\LexMSSQL.obj .\LexMySQL.obj .\LexNimrod.obj .\LexNsis.obj 
.\LexOpal.obj .\
LexOScript.obj .\LexOthers.obj .\LexPascal.obj .\LexPB.obj .\LexPerl.obj 
.\LexPL
M.obj .\LexPO.obj .\LexPOV.obj .\LexPowerPro.obj .\LexPowerShell.obj 
.\LexProgre
ss.obj .\LexPS.obj .\LexPython.obj .\LexR.obj .\LexRebol.obj 
.\LexRuby.obj .\Lex
Scriptol.obj .\LexSmalltalk.obj .\LexSML.obj .\LexSorcus.obj 
.\LexSpecman.obj .\
LexSpice.obj .\LexSQL.obj .\LexTACL.obj .\LexTADS3.obj .\LexTAL.obj 
.\LexTCL.obj
  .\LexTCMD.obj .\LexTeX.obj .\LexTxt2tags.obj .\LexVB.obj 
.\LexVerilog.obj .\Lex
VHDL.obj .\LexVisualProlog.obj .\LexYAML.obj .\ScintRes.res KERNEL32.lib 
USER32.
lib GDI32.lib IMM32.lib OLE32.LIB
Microsoft (R) Incremental Linker Version 11.00.60315.1
Copyright (C) Microsoft Corporation.  All rights reserved.

WordList.obj : error LNK2005: "public: __thiscall 
WordList::~WordList(void)" (??
1WordList <at>  <at> QAE <at> XZ) already defined in LexerBase.obj
WordList.obj : error LNK2005: "public: __thiscall 
WordList::WordList(bool)" (??0
WordList <at>  <at> QAE <at> _N <at> Z) already defined in LexerBase.obj
    Creating library ..\bin\SciLexer.lib and object ..\bin\SciLexer.exp
..\bin\SciLexer.dll : fatal error LNK1169: one or more multiply defined 
symbols
found
NMAKE : fatal error U1077: '"C:\Program Files (x86)\Microsoft Visual 
Studio 11.0
\VC\BIN\link.EXE"' : return code '0x491'
Stop.

Windows 7 Professional, all patches applied
Visual Studio 12 (NMAKE respectively)

Best regards
	Andreas
-- 
Andreas Tscharner                             <sternenfeuer <at> gmail.com>
----------------------------------------------------------------------
"Intruder on level one. All Aliens please proceed to level one."
                                       -- Call in "Alien: Resurrection"

--

-- 
You received this message because you are subscribed to the Google Groups "scintilla-interest" group.
To unsubscribe from this group and stop receiving emails from it, send an email to scintilla-interest+unsubscribe <at> googlegroups.com.
To post to this group, send email to scintilla-interest <at> googlegroups.com.
Visit this group at http://groups.google.com/group/scintilla-interest?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Gmane