Skip to main content
AgeCommit message (Collapse)AuthorFilesLines
9 daysBug 550471 - Improve compatibility of new TextUtilities.indexOfI20190912-1800Paul Pazderski1-4/+9
Old implementation allowed negative offsets then the improved variant must also. Change-Id: Idf732397d62419690f3f870e590178b3ff0bcbbd Signed-off-by: Paul Pazderski <>
9 daysBug 550471 - Improve and deprecate TextUtilities.indexOfI20190911-1805Alexander Kurtakov1-1/+1
Fix javadoc warning introduced with previous commit on this bug. Change-Id: Id0bdcab2ba4c39e979317db0e318b999dd9e4a9e Signed-off-by: Alexander Kurtakov <>
10 daysBug 550473 - Add faster nextDelimiter utility methodPaul Pazderski1-6/+45
TextUtilities.indexOf is quite often used to search for the default delimiters. While the new MultiStringMatcher is already fast this method can still be up to ten times faster for this special case. Change-Id: Iebd4fcc0efb0d9d1e3031954c8e640bb3a789fa1 Signed-off-by: Paul Pazderski <>
10 daysBug 550471 - Improve and deprecate TextUtilities.indexOfPaul Pazderski1-37/+38
Existing TextUtilities.indexOf got a quite ugly return value and some strange behaviour in details (e.g. how it match empty strings). It is also superseded by the new MultiStringMatcher. The implementation is slow (especially for larger inputs) but must be retained at least for some years. This change provides a faster and fully compatible reimplementation based on MultiStringMatcher. Change-Id: I54c471ddd29a6aeb111151116e392dc8b8f8033a Signed-off-by: Paul Pazderski <>
10 daysBug 550438 - MultiStringMatcher: use a Consumer to collect matchesThomas Wolf3-36/+51
Offer a method that reports matches via a Consumer instead of returning them in a list. Useful if there are lots of matches, since it enables the caller to store or otherwise process matches in any way it wants. Change-Id: I8b35056dae16d8e5eee67a35f2852677e6e56732 Signed-off-by: Thomas Wolf <>
10 daysBug 550438 - MultiStringMatcher (leftmost-longest): exit earlierThomas Wolf3-27/+34
We may return an existing sub-match right away on a failover if its offset is smaller than the start offset of the path we switched to. Store the node depth in the trie nodes; this gives us access to this information. New tests that verify where in the text searched the algorithm stops searching. scan003 is the test that motivated this change. The new code stops scanning at index 5, while the old code did this check only on the final match on the new path at index 10. Also slightly simplify the implementation of indexOf() by removing the 'failover' flag. Change-Id: I3066680450a2d5027703e06afba7833b81d12127 Signed-off-by: Thomas Wolf <>
2019-09-06Bug 550767 - POM and product version change for 4.14 releaseI20190910-0815I20190910-0145I20190909-1520I20190909-1425I20190909-0925Niraj Modi1-1/+1
Change-Id: I2c4bd92c6c1243366afa1cf5db4d5052794c66fa Signed-off-by: Niraj Modi <>
2019-08-26Bug 550438 - MultiStringMatcher: improve commentsY20190902-0900Y20190829-0900Y20190826-1000S4_13_0_RC1I20190902-1800I20190902-0805I20190902-0600I20190901-1800I20190901-0600I20190831-1800I20190831-0600I20190830-1800I20190830-0550I20190830-0440I20190828-1800I20190828-0600I20190827-1800I20190827-0600I20190826-1800Thomas Wolf1-19/+31
Changes only comments. Change-Id: I684d96db07ce5d9b6e950c087fd067c56a375f72 Signed-off-by: Thomas Wolf <>
2019-08-24Bug 545252 - ConfigurableLineTracker: use the Aho-Corasick algorithmI20190826-0640I20190826-0415Thomas Wolf4-12/+447
The ConfigurableLineTracker had quadratic performance characteristics, making line-end detection even only with the standard line terminators extremely slow already on moderately sized sources. Add an efficient MultiStringMatcher using the Aho-Corasick algorithm to efficiently find any of a fixed set of strings in a text. The algorithm is a well-described efficient general-purpose multi-string matching algorithm based on a trie. Its main search loop is very simple; the more tricky bits are in the construction of the auxiliary links in the trie. The algorithm as described in 1975 returns all matches including overlaps within a text, but it can be adapted fairly easily to support the "leftmost longest match" semantics needed by ConfigurableLineTracker. The Aho-Corasick algorithm has a complexity of O(n + m + z), where n is the text length, m the sum of the length of patterns, and z the number of matches. For line end matching, this is roughly O(n + L), where L is the number of lines. Note that it can produce a quadratic number of matches on degenerate input (patterns "x", "xx", "xxx", and so on, and a text consisting only of "x"s). Adapt ConfigurableLineTracker to use the new MultiStringMatcher. The matcher provides a find() operation to find all (possibly overlapping) occurrences of the pattern strings; this is the normal way the Aho-Corasick algorithm works. An indexOf() method provides a way to efficiently find only the leftmost longest match. Since this new matcher is generally useful and fast, provide a builder interface through which pattern strings can be added iteratively before matching. Change-Id: I3e66482cfca271248caaad79157f843bc2c819d7 Signed-off-by: Thomas Wolf <> Also-by: Paul Pazderski <>
2019-08-05Bug 549755 - Use DocumentRewriteSession for undo/redo with many changesPaul Pazderski1-2/+27
Change-Id: Iac91b58513b265b43be3bb988a78684b140cc10e Signed-off-by: Paul Pazderski <>
2019-06-18Use addAll, deleteAll instead of looping through a collectionI20190623-1800I20190621-1800I20190620-1800I20190620-0130I20190619-1820I20190619-1800Lars Vogel1-2/+2
Change-Id: I35edd6a934a0f65f357a54e710c77c190706bb45 Signed-off-by: Lars Vogel <>
2019-06-14Use isEmpty() instead of length() to check if collection is emptyI20190615-1800I20190614-1800Lars Vogel9-17/+17
Change-Id: I0106dd0c2ddfa318375877d4562068d82aa9ac5f Signed-off-by: Lars Vogel <>
2019-06-13Use jdk 5 for-each loopI20190614-0330I20190613-1800Carsten Hammer3-12/+11
Replace simple uses of Iterator with a corresponding for-each loop. Also add missing braces on loops as necessary. Change-Id: Ibde37d56a7962f432ed771f4a215f5903161bde0 Signed-off-by: Carsten Hammer <>
2019-06-12Use isEmpty() instead of size()==0 where possibleI20190613-0210I20190612-1800Carsten Hammer8-11/+11
Change-Id: Ib6c59f4c9cea396c98196d23ff9ea917e2ef4114 Signed-off-by: Carsten Hammer <>
2019-06-124.13 version updateKarsten Thoms2-2/+2
Version bumps for - org.eclipse.core.filebuffers - - org.eclipse.text - org.eclipse.ui.genericeditor - org.eclipse.ui.genericeditor.examples - org.eclipse.ui.workbench.texteditor Change-Id: I22121e709aa405ad9479934d511a34ef206f8361 Signed-off-by: Karsten Thoms <>
2019-06-07Bug 547907 - POM and product version change for 4.13 releaseNiraj Modi1-1/+1
Change-Id: I16ed9807c1390ccba626efaa09cfa80308667a26 Signed-off-by: Niraj Modi <>
2019-05-19Bug 547304 - [cleanup] Fix wrong space/tab indentationS4_12_0_RC2S4_12_0_RC1aS4_12_0_RC1S4_12_0_M3R4_12I20190605-1800I20190605-0600I20190604-1800I20190604-0600I20190603-1800I20190603-0600I20190602-1800I20190602-0600I20190601-1800I20190531-1800I20190531-0245I20190529-2005I20190529-1800I20190529-0600I20190528-1800I20190528-0915I20190528-0850I20190528-0600I20190527-1805I20190527-0600I20190526-1800I20190526-0600I20190525-1800I20190525-0600I20190524-1800I20190524-0135I20190522-1800I20190522-0600I20190521-1800I20190521-0600I20190520-1805I20190520-0600R4_12_maintenancePaul Pazderski17-238/+238
This change fixes space or mixed tab/space indentations in all Java files. This also includes two or three space indentations and even fix most stray single spaces in indentations. The change includes only whitespace formatting and no code changes. Change-Id: I3e7b6abb69a1894c402f9123417346a44fc0992a
2019-03-20Bug 545565 - ListLineTracker returns wrong results after content set toI20190321-1800I20190321-0435I20190321-0245I20190320-1800Paul Pazderski1-1/+3
null If tracked text is set to null the tracked content length was not updated. Change-Id: I26ed7b21879ff77a1e3b7828a4e4a4d969608cb8 Signed-off-by: Paul Pazderski <>
2019-03-11Revert "Revert "Bug 541404 - improve UndoableCompoundTextChange with single ↵I20190318-1800I20190314-1800I20190312-1800I20190312-0340I20190311-1800Mickael Istria3-40/+74
change"" This reverts commit b0d63d9ce8037c9f304ee2e669621266df54820c. Change-Id: I95250fbba8390e7cf01601272d21e8bc218aee75
2019-03-08Bug 545094 - POM and product version change for 4.12 releaseI20190311-0410I20190309-1830I20190308-1830I20190308-1525I20190308-1055I20190308-0740Niraj Modi1-1/+1
Change-Id: Ideffb628508e4505ec7b55afd5ba9f2c5fd75f3c Signed-off-by: Niraj Modi <>
2019-03-06Revert "Bug 541404 - improve UndoableCompoundTextChange with single change"Y20190320-2200Y20190319-2305Y20190316-1220Y20190313-2200Y20190313-0215Y20190308-0715Y20190307-1015Y20190306-2200S4_11_0_RC2R4_11I20190307-0500I20190306-2135I20190306-1800R4_11_maintenanceNoopur Gupta1-72/+38
This reverts commit dd94c4b6d3b87eb57d89f2afa3ef4dc7b96e8488. Change-Id: Ibee48390dd5f4c0a2b580972a4f7f1d2ccfdcd3f
2019-03-06Bug 541404 - improve UndoableCompoundTextChange with single changeMickael Istria1-38/+72
When the compound change has only 1 change, it can be processed as a basic change, using the "text change" strategy rather than the "text set". This goes into a simpler redraw loop, which prevent some issues with code minings. Change-Id: Ie54960195b89317e21b182e16704babd52d8d43b Signed-off-by: Mickael Istria <>
2019-02-18Bug 543933 - Build javadocs with Java 11Y20190225-0415Y20190222-0110Y20190220-2200S4_11_0_M3I20190227-0600I20190226-1800I20190226-1020I20190226-0715I20190226-0600I20190225-1800I20190225-0600I20190225-0200I20190224-1800I20190224-0930I20190224-0600I20190223-1800I20190223-0600I20190222-1800I20190222-0645I20190222-0440I20190220-1800I20190220-0600I20190219-1800I20190219-0600I20190218-1800Alexander Kurtakov2-5/+5
After fixing majority of Xdoclint:html issues there are warnings even with Xdoclint:none. Change-Id: I9be510daa74198061f829b73116c38c19dfd400f Signed-off-by: Alexander Kurtakov <>
2019-02-18Bug 543933 - Build javadocs with Java 11Alexander Kurtakov2-8/+8
Fix javadoc warnings catched by Java 11 tool with XDoclint:syntax. Change-Id: I853d804bf9d86ee16c5876478e4e40962c68d4f8 Signed-off-by: Alexander Kurtakov <>
2019-02-18Bug 543933 - Build javadocs with Java 11Alexander Kurtakov3-19/+19
Fix javadoc warnings catched by Java 11 tool with XDoclint:html. Change-Id: I361b79bda124f98380dec2c87ca41b09f4098643 Signed-off-by: Alexander Kurtakov <>
2019-02-16Bug 543933 - Build javadocs with Java 11I20190218-0600I20190217-1800I20190217-0600I20190216-1800Alexander Kurtakov2-9/+9
Fix javadoc warnings catched by Java 11 tool with XDoclint:html. Change-Id: I9d4dfa7c57b47c5d130c8d0c50069b0ed15b70fa Signed-off-by: Alexander Kurtakov <>
2019-02-16Bug 543933 - Build javadocs with Java 11I20190216-0600Alexander Kurtakov4-40/+43
Fix javadoc warnings catched by Java 11 tool with XDoclint:html. Change-Id: Iac131bfc027cf0d7de92992b6518764ce0b568d9 Signed-off-by: Alexander Kurtakov <>
2019-02-15Bug 543933 - Build javadocs with Java 11I20190215-1800Alexander Kurtakov1-1/+1
Fix javadoc warnings in Change-Id: I7de36c65ccd113d2df11d322ba1015d92f8cf932 Signed-off-by: Alexander Kurtakov <>
2019-02-15Bug 543933 - Build javadocs with Java 11Alexander Kurtakov1-5/+5
Fix warnings catched by java 11 javadoc. (take 4) Change-Id: I64da26cfb07bb1f02e18f87954b24ce93546316e Signed-off-by: Alexander Kurtakov <>
2019-02-14Bug 543933 - Build javadocs with Java 11I20190215-0630I20190215-0055I20190214-1800Alexander Kurtakov6-10/+8
Fix warnings catched by java 11 javadoc. (take 3) Change-Id: I6e7fd7d2f60b67dfdfe31e89d80c871cfd6c443f Signed-off-by: Alexander Kurtakov <>
2019-02-14Bug 543933 - Build javadocs with Java 11Alexander Kurtakov1-7/+7
Fix warnings catched by java 11 javadoc. (take 2) Change-Id: Iccf5071777c27d00d2bd06d9301e175b4ce820dc Signed-off-by: Alexander Kurtakov <>
2019-02-13Bug 543933 - Build javadocs with Java 11Y20190213-2200I20190213-1800Alexander Kurtakov3-2/+7
Fix warnings catched by java 11 javadoc. Change-Id: I9e35131d8314575d81c186d5c418b6be5137d46c Signed-off-by: Alexander Kurtakov <>
2019-02-12Remove unused problem filter.Alexander Kurtakov1-11/+0
Change-Id: I40b9ff42d261536ff653d2907da5d678b2a70029 Signed-off-by: Alexander Kurtakov <>
2019-02-10Bug 518569 - Use StandardCharset constantsI20190210-2135I20190210-1800Karsten Thoms3-3/+4
Also: version bump for 4.11 Change-Id: I7055e6a2ceb521dbe6065888b735ac62caa73ef6 Signed-off-by: Karsten Thoms <>
2018-12-07Bug 541822 - POM and product version change for 4.11 releaseY20190116-2200Y20190109-2200Y20190108-0410Y20190108-0135Y20190107-0850Y20190107-0505Y20190102-2200Y20181226-2200Y20181219-2200Y20181212-2200S4_11_0_M1I20190121-1415I20190120-1800I20190119-1800I20190118-1800I20190117-2335I20190116-1800I20190115-1800I20190114-1800I20190113-1800I20190112-1800I20190111-1800I20190111-0850I20190109-1800I20190109-0655I20190108-1800I20190108-0600I20190107-2050I20190107-1800I20190107-0600I20190106-1800I20190106-0600I20190106-0150I20190105-1800I20190105-0810I20190104-1800I20190103-1800I20190102-1800I20190101-1800I20181231-1800I20181230-1800I20181229-1800I20181228-1800I20181227-1800I20181226-1800I20181225-1800I20181224-1800I20181223-1800I20181222-1800I20181221-1800I20181220-1800I20181219-1800I20181218-1800I20181218-0120I20181217-1800I20181216-1800I20181215-1800I20181215-0340I20181214-1800I20181214-0720I20181214-0105I20181213-1800I20181212-1800I20181212-0230I20181211-1800I20181211-0230I20181210-1800I20181210-0755I20181210-0535Niraj Modi1-1/+1
Change-Id: I975429ca29af362e54dee6d31c2c7373e644f397 Signed-off-by: Niraj Modi <>
2018-09-23Bug 535964 - Move some non UI classes from jface.text to o.e.text.I20180923-1800Sebastian Ratz1-0/+45
Another update to the #equals() implementation. bb4abd131785dc66b2a4da321ded042fd4e37db1 broke equals() in other scenarios. A = org.eclipse.text.templates.TemplatePersistenceData B = org.eclipse.jface.text.templates.persistence.TemplatePersistenceData Properly implement equals() in the super class (A) and in the deprecated subclass (B), such that the symmetric property of equals holds: A.equals(B) B.equals(A) This is ensured by always using B as a dummy and delegating via "ref". In the super type A introduce a new dummy UUID just for equals. This simulates the previous object identity semantics for equals (there can exist multiple *different* templates with identical values). Change-Id: Ia34e7019a54464b6f4d95521eddea8e682e87bf1 Signed-off-by: Sebastian Ratz <>
2018-09-20Workaround for bug 539244: Adding an interface not handled" id="926941240I20180920-1800Dani Megert1-0/+11
2018-09-19Bug 539096 - org.eclipse.text version minor segment incrementY20180919-2200I20180920-0630I20180920-0430I20180919-1800Andrey Loskutov2-2/+2
See bug 539096 comment 3. Change-Id: I61856a39655d50974df0fcc7ce1eb98f6c7675d6 Signed-off-by: Andrey Loskutov <>
2018-09-18Bug 539096 - TemplateContext should implement IAdaptableI20180918-2005I20180918-1800Andrey Loskutov3-3/+14
Change-Id: Ia9af00f7380f72d89122cb2ae1e0f542fdb91a6a Signed-off-by: Andrey Loskutov <>
2018-09-04Bug 538531 - POM version change for 4.10 releaseY20180905-2200I20180906-1400I20180906-0005I20180905-1305I20180905-0410Sravan Kumar Lakkimsetti1-1/+1
Change-Id: I8ea72f1e990039ec24ce2930df788e2e199a9993 Signed-off-by: Sravan Kumar Lakkimsetti <>
2018-08-22Bug 530393 - EPL 2.0 update for platform.text plug-ins - Part 2Y20180822-2200I20180823-0100I20180822-2000Lars Vogel139-417/+834
Change-Id: Ib43818885bc5b36db7d4fc0625a125402c595b2f Signed-off-by: Lars Vogel <>
2018-08-17Remove unused api_filters.Alexander Kurtakov1-41/+0
Change-Id: I718d31b5aee785132b3e57f95e997c1e8a1ba5f4 Signed-off-by: Alexander Kurtakov <>
2018-08-07Bug 535964 - Move some non UI classes from jface.text to o.e.text.Y20180808-2200I20180811-1500I20180810-2000I20180810-0320I20180809-2000I20180808-2000Roland Grunberg8-3/+1225
- Create TemplateReaderWriter, TemplatePersistenceData, and ContextTypeRegistry in org.eclipse.text which extend the corresponding classes from org.eclipse.jface.text in order the preserve the API for the latter - Make TemplateStore extend a new class TemplateStoreCore which will be located in org.eclipse.text, and contain the non-UI functionality from TemplateStore - Introduce new constructor to the deprecated TemplatePersistenceData, that takes an org.eclipse.text.templates.TemplatePersistenceData and delegates all API calls to it, if the object was constructed in this manner. Otherwise calls are handled by the inheritted class. In some cases, even though we use the new org.eclipse.text.templates.TemplatePersistenceData, the API requires us to return the deprecated version of TemplatePersistenceData. This satisfies the requirement while also ensuring the returned object can be modified by clients (unlike a copy). Change-Id: I4315693c8c557986d922106b7c1325e23de70725 Signed-off-by: Roland Grunberg <>
2018-07-30Bug 109481 - [find/replace] replace doesn't work when using a regex withI20180730-2240I20180730-2000I20180730-0800Kalyan Prasad Tatavarthi1-7/+3
a lookahead or boundary matchers :- Reverting Changes as a result of Bug 537377 Change-Id: I975d326e67f650bc2dddac6948775b3bb3fbdf5a Signed-off-by: Kalyan Prasad Tatavarthi <>
2018-07-18Bug 536952 - Avoid QuickDiff re-enabling in DocumentRewriteSessionEventEtienne Reichenbach1-1/+1
* Only resume the DocumentLineDiffer if if was previously suspended by a DocumentRewriteSessionEvent. * Add a null check at AbstractDocument.stopRewriteSession(DocumentRewriteSession) to avoid a NullPointerException if startRewriteSession is not called before calling stopRewriteSession. The javadoc of stopRewriteSession says "This method has only any effect if startRewriteSession has been called before.", without the null-check the method had an effect if startRewriteSession was not called before, namely an NPE. Change-Id: Ia6f92c686c934e1c7cbb514e2c32ac055b557935 Signed-off-by: Etienne Reichenbach <>
2018-06-11[Sonar] Removes dead stored variablesJonas Hungershausen1-2/+0
see Change-Id: I81091332e090cd8baa36204d25256d6df77bdf42 Signed-off-by: Jonas Hungershausen <>
2018-06-05Bug 535318 - Update license to EPL-2.0 for platform.text for about.htmlI20180607-2000I20180606-1020Lars Vogel1-16/+24
Change-Id: Ie3055f2478633f5b854362b1ab8205ef6e6f28ab Signed-off-by: Lars Vogel <>
2018-06-014.9 version updates for eclipse.platform.text required for EPL 2.0I20180601-0915I20180601-0900Lars Vogel2-2/+2
update Change-Id: I2347c4e9fb76d947449865ebfb35caf759458f9c Signed-off-by: Lars Vogel <>
2018-05-30Bug 535191 - POM version change for 4.9 releaseI20180531-2125I20180531-2000I20180531-1245I20180531-0910Lars Vogel1-1/+1
eclipse.platform.text Change-Id: I424ff63453ab620a5f4461d369a06798ef1264fd Signed-off-by: Lars Vogel <>
2018-04-30Improve some constructs for performanceMickael Istria5-17/+17
Issues reported by SonarQube: * iterating on keySet() instead of entrySet() or values() * String += in a loop Change-Id: I3dec0e683305ab3382605168c0505d5ce2bcc35e Signed-off-by: Mickael Istria <>

Back to the top