aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/Document.cxx
AgeCommit message (Collapse)AuthorFilesLines
2022-07-31Added change history which can display document changes (modified, saved, ...)Neil1-2/+26
in the margin or in the text.
2022-07-18Bug [#2338] Enable multiline regex for gcc and clang when REGEX_MULTILINE ↵Jacky Yang1-0/+4
defined. This requires gcc 11.3 or clang 14.
2022-07-17Feature [feature-requests:#1441] Line state optimized to avoid excess ↵Zufu Liu1-1/+1
allocations by always allocating for every line.
2022-07-04Feature [feature-requests:#1442] Tighter checking of indices avoids handlingZufu Liu1-2/+2
out-of-bounds in lower layer. Make expressions agree in ApplyStep for clarity.
2022-05-01Optimize case where there are no annotationsNeil1-0/+6
2022-01-13Optimize GetColumn a little.Neil1-0/+3
2021-11-24For iterators, make constructors explicit, remove operators that are defaultedNeil1-72/+17
correctly and use 'using' in preference to 'typedef'.
2021-10-26Explicit constructors.Neil1-1/+1
2021-10-24Grammar in comment.Neil1-1/+1
2021-10-21Feature [feature-requests:#1417] Use backward iteration to find space / controlZufu Liu1-31/+58
character and text / punctuation boundaries in SafeSegment as will be simpler and faster in almost all cases. Simplify BreakFinder::Next calling SafeSegment.
2021-10-12Feature [feature-requests:#1416] Prevent type mismatch.Neil1-1/+1
2021-10-12Feature [feature-requests:#1416] Use nullptr.Neil1-9/+9
2021-10-05Feature [feature-requests:#1417] Consolidate character classification functionsNeil1-62/+13
in CharacterType.h, merging duplicate functions, removing unused functions and stadardizing names.
2021-09-30Feature [feature-requests:#1416] Remove extra check that is never true andZufu Liu1-3/+1
remove parameter used just for this test.
2021-09-02Bug [#2281] Fix crash with too many subexpressions in regular expression searchNeil1-1/+1
with SCFIND_CXX11REGEX.
2021-08-24Remove line end white space.Neil1-1/+1
2021-08-22Follow rule-of-zero / rule-of-5 where reasonable by removing standard operatorsNeil1-5/+0
that are not needed.
2021-08-22Encapsulate an ILexer5* in LexerInstance class to simplify client code.Neil1-0/+14
2021-07-17Fix minor inconsistency with word searching results at start and end of documentNeil1-5/+9
which were considered word start / end positions even when first or last character did not fit requirements.
2021-07-17Extract word edge detection to prepare for fixing bug.Neil1-8/+11
This change does not affect behaviour.
2021-07-15Feature [feature-requests:#1370] Implement SCI_ALLOCATELINES to allocate indicesZufu Liu1-0/+4
to hold some number of lines. This is an optimization that can decrease reallocation overhead.
2021-07-16Feature [feature-requests:#1381] Fix position returned when in 2nd segment.Neil1-1/+1
2021-07-16Feature [feature-requests:#1381] Avoid strlen and more complex comparison.Zufu Liu1-3/+3
2021-07-15Feature [feature-requests:#1381] Move SplitView to header so it can be used moreNeil1-33/+1
widely. Ensure that case where all text is after the gap is as efficient as when all text is before the gap.
2021-07-14Feature [feature-requests:#1408] More accurate handling of invalid DBCS byteNeil1-3/+13
pairs in backwards NextPosition.
2021-07-05Feature [feature-requests:#1408] Check both bytes of potential DBCS characterZufu Liu1-4/+9
before treating as a character.
2021-07-12Use SplitFindChar to rapidly seek for a byte value for case-sensitive searches.Neil1-14/+62
Averaged 2x faster for forward search "needle" in Editor.cxx as UTF-8 or Latin1.
2021-07-12Create SplitView to avoid overhead of calling CellBuffer for reading characters.Neil1-7/+44
Increases performance of search by around 25%.
2021-07-12Optimize case-insensitive DBCS search.Neil1-1/+1
2021-07-12Rearrange and reformat code to minimize variable lifetime and bracket blocks.Zufu Liu1-12/+21
2021-07-12Feature [feature-requests:#1381] Optimize case sensitive search.Zufu Liu1-4/+13
2021-07-12Feature [feature-requests:#1381] Optimize case insensitive search for ASCII ↵Zufu Liu1-25/+48
text.
2021-07-13Restrict UTF8IsAscii to char and unsigned char to avoid failures when (signed)Neil1-1/+1
char passed.
2021-07-05Feature [feature-requests:#1408] Remove IsDBCSLeadByteInvalid as only caller ↵Zufu Liu1-37/+0
removed.
2021-07-03Feature [feature-requests:#1408] Simplify code, remove IsDBCSTrailByteInvalid.Zufu Liu1-63/+13
Drop temporary test for IsDBCSTrailByteNoExcept.
2021-07-03Feature [feature-requests:#1408] Use positive IsDBCSTrailByteNoExcept functionZufu Liu1-2/+33
instead of negated IsDBCSTrailByteInvalid.
2021-07-02Feature [feature-requests:#1408] Treat valid DBCS lead byte followed by invalidZufu Liu1-6/+13
trail byte as single byte.
2021-06-05Avoid extra processing as value_or doesn't evaluate lazily.Zufu Liu1-2/+2
2021-06-04Bug [#2260]. Fix bug with SCI_GETLASTCHILD when lParam is -1.Zufu Liu1-3/+2
Fixed cast on SCI_FOLDCHILDREN to use correct type.
2021-05-30Fix GetFontQuality. Simplify code that calls FlagSet.Neil1-1/+1
2021-05-28Better exception handling for noexcept methods. More accurate noexcept marking.Neil1-6/+12
2021-05-24Define C++ version of the Scintilla API in ScintillaTypes.h, ScintillaMessages.hNeil1-151/+158
and ScintillaStructures.h using scoped enumerations. Use these headers instead of Scintilla.h internally. External definitions go in the Scintilla namespace and internal definitio0ns in Scintilla::Internal.
2021-05-20Prefer Sci::invalidPosition to INVALID_POSITION as Scintilla.h will eventuallyNeil1-4/+4
not be visible to most code.
2021-05-20Add LevelIsHeader and LevelIsWhitespace as fold levels will become enum classNeil1-11/+11
later so not work well with '&'.
2021-05-08Feature [feature-requests:1373]. Make idle actions smoother by measuringNeil1-4/+3
per-byte and allowing just one line to be processed in a time slice. Very long lines will not distort estimation or block interaction as much.
2021-05-08Feature [feature-requests:1373]. Add methods for refining idle task durations.Zufu Liu1-0/+18
2021-04-27Rename CharacterSet and CharacterCategory modules in Scintilla to CharacterTypeNeil1-2/+2
and CharacterCategoryMap to avoid clashes with Lexilla when building an executable that includes both.
2021-04-05Extract CharClassify::cc as CharacterClass and change to enum class.Neil1-25/+25
2021-04-05Change actionType to an enum class.Neil1-15/+15
2021-03-18Use unique_ptr for CaseFolderForEncoding to show transfer of ownership.Neil1-2/+2