From 99d01fdf53a4e111f2cafb3b6f39d841ac2553e5 Mon Sep 17 00:00:00 2001 From: Bruno Medeiros Date: Tue, 13 Sep 2016 20:14:46 +0100 Subject: [PATCH] Removed dep on org.eclipse.jface.text See: https://github.com/bruno-medeiros/MelnormeEclipse/issues/8 --- plugin_ide.core/META-INF/MANIFEST.MF | 1 - .../core/text/AbstractDocumentScanner.java | 10 +++++--- .../core/text/BlockHeuristicsScannner.java | 18 +++++++-------- .../lang/ide/core/TextSettings_Actual.java | 6 ----- .../BlockHeuristicsScannnerTest.java | 12 ++++++---- ...lockHeuristicsScannner_PartitionsTest.java | 23 ++++++++++--------- .../CharacterScanner_ReaderHelper_Test.java | 4 +++- .../ide/core_text}/FullPatternRule_Test.java | 5 ++-- .../core_text}/LangAutoEditStrategyTest.java | 8 ++++--- .../core_text}/SamplePartitionScanner.java | 2 +- .../lang/ide/core_text}/Scanner_BaseTest.java | 3 ++- .../BufferedRuleBasedScannerExt.java | 2 +- .../CharacterScanner_ReaderHelper.java | 2 +- .../ide/core_text}/DefaultPredicateRule.java | 2 +- .../lang/ide/core_text}/FullPatternRule.java | 2 +- .../LangDocumentPartitionerSetup.java | 3 ++- .../ide/core_text}/LangPartitionScanner.java | 3 ++- .../ide/core_text}/PatternRule_Fixed.java | 2 +- .../ide/core_text}/StrictDamagerRepairer.java | 2 +- .../lang/ide/core_text}/sample_block_code | 0 .../lang/ide/ui/text/AbstractLangScanner.java | 4 ++-- .../core_text}/LANGUAGE_PartitionScanner.java | 4 ++-- .../RuleBasedPartitionScannerExt.java | 3 ++- .../lang/ide/ui/LangUIPlugin_Actual.java | 8 +++++++ 24 files changed, 74 insertions(+), 55 deletions(-) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text}/BlockHeuristicsScannnerTest.java (89%) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text}/BlockHeuristicsScannner_PartitionsTest.java (88%) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text}/CharacterScanner_ReaderHelper_Test.java (92%) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text}/FullPatternRule_Test.java (94%) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/format => plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text}/LangAutoEditStrategyTest.java (95%) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text}/SamplePartitionScanner.java (98%) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text}/Scanner_BaseTest.java (94%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/BufferedRuleBasedScannerExt.java (95%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/CharacterScanner_ReaderHelper.java (94%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/DefaultPredicateRule.java (94%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/FullPatternRule.java (96%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/LangPartitionScanner.java (94%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/PatternRule_Fixed.java (94%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/StrictDamagerRepairer.java (95%) rename {plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/format => plugin_ide.ui/src-lang/melnorme/lang/ide/core_text}/sample_block_code (100%) rename {plugin_ide.core/src/LANG_PROJECT_ID/ide/core/text => plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text}/LANGUAGE_PartitionScanner.java (90%) rename {plugin_ide.core/src-lang/melnorme/lang/ide/core/text => plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text}/RuleBasedPartitionScannerExt.java (94%) diff --git a/plugin_ide.core/META-INF/MANIFEST.MF b/plugin_ide.core/META-INF/MANIFEST.MF index 10c4bbfba..c8acf06f9 100644 --- a/plugin_ide.core/META-INF/MANIFEST.MF +++ b/plugin_ide.core/META-INF/MANIFEST.MF @@ -15,7 +15,6 @@ Require-Bundle: LANG_PROJECT_ID.tooling;visibility:=reexport, org.eclipse.core.filesystem;bundle-version="1.4.0", org.eclipse.core.filebuffers;bundle-version="3.5.0", org.eclipse.core.expressions;bundle-version="3.4.0", - org.eclipse.jface.text;bundle-version="3.9.1", org.eclipse.jface;bundle-version="3.9.1", org.eclipse.debug.core;bundle-version="3.6.0", org.eclipse.text;bundle-version="3.6.0" diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/AbstractDocumentScanner.java b/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/AbstractDocumentScanner.java index 449114432..ecfaa83f4 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/AbstractDocumentScanner.java +++ b/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/AbstractDocumentScanner.java @@ -84,6 +84,10 @@ public int getPosition() { return pos; } + public int getLastToken() { + return token; + } + protected void setPosition(int pos) { this.pos = pos; } @@ -119,7 +123,7 @@ protected final int readPreviousCharacter() { } } - protected final int readNextCharacter() { + public final int readNextCharacter() { if(pos >= posLimit) { return token = TOKEN_EOF; } else { @@ -142,11 +146,11 @@ protected final int readNextCharacter() { } } - protected final void revertPreviousCharacter() { + public final void revertPreviousCharacter() { pos++; } - protected final void revertNextCharacter() { + public final void revertNextCharacter() { pos--; } diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannner.java b/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannner.java index 75a5d1bf0..22bf81bbe 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannner.java +++ b/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannner.java @@ -136,30 +136,30 @@ public BlockBalanceResult calculateBlockBalances(int beginPos, int endPos) throw return result; } - protected abstract class FnTokenAdvance { + public abstract class FnTokenAdvance { - protected abstract int advanceToken() ; + public abstract int advanceToken() ; - protected abstract void revertToken() ; + public abstract void revertToken() ; } - protected final FnTokenAdvance prevTokenFn = new FnTokenAdvance() { + public final FnTokenAdvance prevTokenFn = new FnTokenAdvance() { @Override - protected int advanceToken() { + public int advanceToken() { return readPreviousCharacter(); } @Override - protected void revertToken() { + public void revertToken() { revertPreviousCharacter(); } }; - protected final FnTokenAdvance nextTokenFn = new FnTokenAdvance() { + public final FnTokenAdvance nextTokenFn = new FnTokenAdvance() { @Override - protected int advanceToken() { + public int advanceToken() { return readNextCharacter(); } @Override - protected void revertToken() { + public void revertToken() { revertNextCharacter(); } }; diff --git a/plugin_ide.core/src/melnorme/lang/ide/core/TextSettings_Actual.java b/plugin_ide.core/src/melnorme/lang/ide/core/TextSettings_Actual.java index 64c29788d..c463f3d44 100644 --- a/plugin_ide.core/src/melnorme/lang/ide/core/TextSettings_Actual.java +++ b/plugin_ide.core/src/melnorme/lang/ide/core/TextSettings_Actual.java @@ -1,9 +1,7 @@ package melnorme.lang.ide.core; import org.eclipse.jface.text.IDocument; -import org.eclipse.jface.text.rules.IPartitionTokenScanner; -import LANG_PROJECT_ID.ide.core.text.LANGUAGE_PartitionScanner; import melnorme.utilbox.misc.ArrayUtil; @@ -29,10 +27,6 @@ public String getId() { } - public static IPartitionTokenScanner createPartitionScanner() { - return new LANGUAGE_PartitionScanner(); - } - /* ----------------- Common code ----------------- */ public static final String[] PARTITION_TYPES = ArrayUtil.map(LangPartitionTypes.values(), diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannnerTest.java b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/BlockHeuristicsScannnerTest.java similarity index 89% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannnerTest.java rename to plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/BlockHeuristicsScannnerTest.java index 0661513c3..d196d6e4f 100644 --- a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannnerTest.java +++ b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/BlockHeuristicsScannnerTest.java @@ -8,10 +8,14 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertNotNull; import static melnorme.utilbox.core.Assert.AssertNamespace.assertTrue; + +import melnorme.lang.ide.core.text.AbstractDocumentScanner; +import melnorme.lang.ide.core.text.BlockHeuristicsScannner; +import melnorme.lang.ide.core.text.TextSourceUtils; import melnorme.lang.ide.core.text.BlockHeuristicsScannner.BlockTokenRule; import org.eclipse.jface.text.BadLocationException; @@ -67,11 +71,11 @@ protected void testScanToBlockStart(String srcPre, String srcBlock, String srcAf assertTrue(balance == expecBalance); assertTrue(scanner.getPosition() == srcPre.length()); - assertTrue((scanner.token == AbstractDocumentScanner.TOKEN_INVALID) == expecInvalidLeft); + assertTrue((scanner.getLastToken() == AbstractDocumentScanner.TOKEN_INVALID) == expecInvalidLeft); if(balance == 0) { int blockEndOffset = srcBefore.length(); - if (scanner.token != AbstractDocumentScanner.TOKEN_INVALID) { + if (scanner.getLastToken() != AbstractDocumentScanner.TOKEN_INVALID) { balance = scanner.scanToBlockEnd(scanner.getPosition()); assertTrue(balance == 0); assertEquals(scanner.getPosition()-1, blockEndOffset); @@ -90,7 +94,7 @@ protected void testScanToBlockStart(String srcPre, String srcBlock, String srcAf assertTrue(balance == expecBalance); assertTrue(scanner.getPosition() == reversePosition(srcPre.length())); - assertTrue((scanner.token == AbstractDocumentScanner.TOKEN_INVALID) == expecInvalidLeft); + assertTrue((scanner.getLastToken() == AbstractDocumentScanner.TOKEN_INVALID) == expecInvalidLeft); } protected String reverse(String string) { diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannner_PartitionsTest.java b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/BlockHeuristicsScannner_PartitionsTest.java similarity index 88% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannner_PartitionsTest.java rename to plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/BlockHeuristicsScannner_PartitionsTest.java index 41a434e1b..30a00aac8 100644 --- a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/BlockHeuristicsScannner_PartitionsTest.java +++ b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/BlockHeuristicsScannner_PartitionsTest.java @@ -8,16 +8,17 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertTrue; -import melnorme.lang.ide.core.text.AbstractDocumentScanner; -import melnorme.lang.ide.core.text.BlockHeuristicsScannner; -import melnorme.lang.ide.core.text.BlockHeuristicsScannner.FnTokenAdvance; import org.eclipse.jface.text.BadLocationException; import org.junit.Test; +import melnorme.lang.ide.core.text.AbstractDocumentScanner; +import melnorme.lang.ide.core.text.BlockHeuristicsScannner; +import melnorme.lang.ide.core.text.BlockHeuristicsScannner.FnTokenAdvance; + public class BlockHeuristicsScannner_PartitionsTest extends BlockHeuristicsScannnerTest { @Override @@ -61,19 +62,19 @@ protected void testTokenizing(String[] expectedTokens, BlockHeuristicsScannner s advanceTokenFn.advanceToken(); if(bounce) { if(i != 0) { - int tokenSaved = scanner.token; - int positionSaved = scanner.pos; + int tokenSaved = scanner.getLastToken(); + int positionSaved = scanner.getPosition(); advanceTokenFn.revertToken(); advanceTokenFn.advanceToken(); - assertTrue(tokenSaved == scanner.token); - assertTrue(positionSaved == scanner.pos); + assertTrue(tokenSaved == scanner.getLastToken()); + assertTrue(positionSaved == scanner.getPosition()); } } String tokenStr = forward ? - document.get(oldPos, scanner.pos - oldPos) : - document.get(scanner.pos, oldPos - scanner.pos); + document.get(oldPos, scanner.getPosition() - oldPos) : + document.get(scanner.getPosition(), oldPos - scanner.getPosition()); assertEquals(tokenStr, expectedToken); - assertEquals(scanner.token, expectedToken.length() == 1 ? + assertEquals(scanner.getLastToken(), expectedToken.length() == 1 ? expectedToken.charAt(0) : AbstractDocumentScanner.TOKEN_OUTSIDE); } assertTrue(scanner.getPosition() == (forward ? document.getLength() : 0)); diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/CharacterScanner_ReaderHelper_Test.java b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/CharacterScanner_ReaderHelper_Test.java similarity index 92% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/CharacterScanner_ReaderHelper_Test.java rename to plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/CharacterScanner_ReaderHelper_Test.java index e07b08d8a..b754a82c3 100644 --- a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/CharacterScanner_ReaderHelper_Test.java +++ b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/CharacterScanner_ReaderHelper_Test.java @@ -8,13 +8,15 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertTrue; import org.eclipse.jface.text.Document; import org.junit.Test; +import melnorme.lang.ide.core_text.BufferedRuleBasedScannerExt; +import melnorme.lang.ide.core_text.CharacterScanner_ReaderHelper; import melnorme.lang.utils.parse.ICharSource; import melnorme.lang.utils.parse.ICharacterReader; import melnorme.lang.utils.parse.ParseSource_Test; diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/FullPatternRule_Test.java b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/FullPatternRule_Test.java similarity index 94% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/FullPatternRule_Test.java rename to plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/FullPatternRule_Test.java index 786bdb7e5..f59b5fd67 100644 --- a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/FullPatternRule_Test.java +++ b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/FullPatternRule_Test.java @@ -8,12 +8,13 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertFail; import static melnorme.utilbox.core.Assert.AssertNamespace.assertTrue; import static melnorme.utilbox.core.CoreUtil.array; -import melnorme.lang.ide.core.text.FullPatternRule; + +import melnorme.lang.ide.core_text.FullPatternRule; import melnorme.utilbox.misc.ArrayUtil; import org.eclipse.jface.text.rules.ICharacterScanner; diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/format/LangAutoEditStrategyTest.java b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/LangAutoEditStrategyTest.java similarity index 95% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/format/LangAutoEditStrategyTest.java rename to plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/LangAutoEditStrategyTest.java index d113cfe0a..e0987b799 100644 --- a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/format/LangAutoEditStrategyTest.java +++ b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/LangAutoEditStrategyTest.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text.format; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertTrue; import static melnorme.utilbox.core.CoreUtil.areEqual; @@ -21,9 +21,11 @@ import melnorme.lang.ide.core.text.BlockHeuristicsScannner; import melnorme.lang.ide.core.text.DocumentCommand2; -import melnorme.lang.ide.core.text.SamplePartitionScanner; -import melnorme.lang.ide.core.text.Scanner_BaseTest; import melnorme.lang.ide.core.text.TextSourceUtils; +import melnorme.lang.ide.core.text.format.FormatterIndentMode; +import melnorme.lang.ide.core.text.format.ILangAutoEditsPreferencesAccess; +import melnorme.lang.ide.core.text.format.ILastKeyInfoProvider; +import melnorme.lang.ide.core.text.format.LangAutoEditStrategy; import melnorme.lang.ide.core.text.format.ILastKeyInfoProvider.KeyCommand; import melnorme.utilbox.misc.MiscUtil; import melnorme.utilbox.misc.StringUtil; diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/SamplePartitionScanner.java b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/SamplePartitionScanner.java similarity index 98% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/SamplePartitionScanner.java rename to plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/SamplePartitionScanner.java index 63eac007c..e63c84c50 100644 --- a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/SamplePartitionScanner.java +++ b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/SamplePartitionScanner.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import java.util.ArrayList; import java.util.List; diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/Scanner_BaseTest.java b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/Scanner_BaseTest.java similarity index 94% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/Scanner_BaseTest.java rename to plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/Scanner_BaseTest.java index a62085a89..fa74bc459 100644 --- a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/Scanner_BaseTest.java +++ b/plugin_ide.ui.tests/src-lang/melnorme/lang/ide/core_text/Scanner_BaseTest.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertTrue; @@ -17,6 +17,7 @@ import org.eclipse.jface.text.rules.FastPartitioner; import org.eclipse.jface.text.rules.IPartitionTokenScanner; +import melnorme.lang.ide.core.text.BlockHeuristicsScannner; import melnorme.lang.ide.core.text.BlockHeuristicsScannner.BlockTokenRule; import melnorme.lang.ide.core.utils.EclipseUtils; import melnorme.utilbox.misc.ArrayUtil; diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/BufferedRuleBasedScannerExt.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/BufferedRuleBasedScannerExt.java similarity index 95% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/BufferedRuleBasedScannerExt.java rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/BufferedRuleBasedScannerExt.java index 71204c215..ac5ae2b7e 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/BufferedRuleBasedScannerExt.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/BufferedRuleBasedScannerExt.java @@ -9,7 +9,7 @@ * IBM Corporation - initial API and implementation * Bruno Medeiros - add lookahead method *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertFail; import static melnorme.utilbox.core.Assert.AssertNamespace.assertTrue; diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/CharacterScanner_ReaderHelper.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/CharacterScanner_ReaderHelper.java similarity index 94% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/CharacterScanner_ReaderHelper.java rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/CharacterScanner_ReaderHelper.java index d060479ed..31fa695d4 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/CharacterScanner_ReaderHelper.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/CharacterScanner_ReaderHelper.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import melnorme.lang.utils.parse.BasicCharSource; import melnorme.lang.utils.parse.ICharSource; diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/DefaultPredicateRule.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/DefaultPredicateRule.java similarity index 94% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/DefaultPredicateRule.java rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/DefaultPredicateRule.java index e040db855..2e5f2dca3 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/DefaultPredicateRule.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/DefaultPredicateRule.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertNotNull; diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/FullPatternRule.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/FullPatternRule.java similarity index 96% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/FullPatternRule.java rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/FullPatternRule.java index d552f61b7..3705481cd 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/FullPatternRule.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/FullPatternRule.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import java.util.function.Function; import melnorme.utilbox.misc.ArrayUtil; diff --git a/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/LangDocumentPartitionerSetup.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/LangDocumentPartitionerSetup.java index 9ec02e852..dd35fcce0 100644 --- a/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/LangDocumentPartitionerSetup.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/LangDocumentPartitionerSetup.java @@ -12,6 +12,7 @@ import melnorme.lang.ide.core.TextSettings_Actual; import melnorme.lang.ide.core.utils.EclipseUtils; +import melnorme.lang.ide.ui.LangUIPlugin_Actual; import melnorme.utilbox.misc.ArrayUtil; import org.eclipse.core.filebuffers.IDocumentSetupParticipant; @@ -45,7 +46,7 @@ public FastPartitioner setupDocument(IDocument document) { } public FastPartitioner createDocumentPartitioner() { - IPartitionTokenScanner scanner = TextSettings_Actual.createPartitionScanner(); + IPartitionTokenScanner scanner = LangUIPlugin_Actual.createPartitionScanner(); return new FastPartitioner(scanner, LEGAL_CONTENT_TYPES); } diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/LangPartitionScanner.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/LangPartitionScanner.java similarity index 94% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/LangPartitionScanner.java rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/LangPartitionScanner.java index 1c388b892..fefe3d091 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/LangPartitionScanner.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/LangPartitionScanner.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import static melnorme.utilbox.core.Assert.AssertNamespace.assertNotNull; @@ -20,6 +20,7 @@ import org.eclipse.jface.text.rules.PatternRule; import org.eclipse.jface.text.rules.Token; +import LANG_PROJECT_ID.ide.core_text.RuleBasedPartitionScannerExt; import melnorme.lang.tooling.parser.lexer.IPredicateLexingRule; import melnorme.utilbox.collections.ArrayList2; diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/PatternRule_Fixed.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/PatternRule_Fixed.java similarity index 94% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/PatternRule_Fixed.java rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/PatternRule_Fixed.java index fb2959b6e..73e9fd5fe 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/PatternRule_Fixed.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/PatternRule_Fixed.java @@ -1,4 +1,4 @@ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import org.eclipse.jface.text.rules.ICharacterScanner; import org.eclipse.jface.text.rules.IToken; diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/StrictDamagerRepairer.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/StrictDamagerRepairer.java similarity index 95% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/StrictDamagerRepairer.java rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/StrictDamagerRepairer.java index e6f7a44e9..8b5c838bf 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/StrictDamagerRepairer.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/StrictDamagerRepairer.java @@ -8,7 +8,7 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package melnorme.lang.ide.core_text; import org.eclipse.jface.text.DocumentEvent; import org.eclipse.jface.text.IRegion; diff --git a/plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/format/sample_block_code b/plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/sample_block_code similarity index 100% rename from plugin_ide.core.tests/src-lang/melnorme/lang/ide/core/text/format/sample_block_code rename to plugin_ide.ui/src-lang/melnorme/lang/ide/core_text/sample_block_code diff --git a/plugin_ide.ui/src-lang/melnorme/lang/ide/ui/text/AbstractLangScanner.java b/plugin_ide.ui/src-lang/melnorme/lang/ide/ui/text/AbstractLangScanner.java index e5f01bd23..e81eec2c6 100644 --- a/plugin_ide.ui/src-lang/melnorme/lang/ide/ui/text/AbstractLangScanner.java +++ b/plugin_ide.ui/src-lang/melnorme/lang/ide/ui/text/AbstractLangScanner.java @@ -21,8 +21,8 @@ import org.eclipse.jface.text.rules.IWordDetector; import org.eclipse.jface.text.rules.Token; -import melnorme.lang.ide.core.text.BufferedRuleBasedScannerExt; -import melnorme.lang.ide.core.text.CharacterScanner_ReaderHelper; +import melnorme.lang.ide.core_text.BufferedRuleBasedScannerExt; +import melnorme.lang.ide.core_text.CharacterScanner_ReaderHelper; import melnorme.lang.ide.ui.text.coloring.ILangTokenScanner; import melnorme.lang.ide.ui.text.coloring.ThemedTextStylingPreference; import melnorme.lang.ide.ui.text.coloring.TokenRegistry; diff --git a/plugin_ide.core/src/LANG_PROJECT_ID/ide/core/text/LANGUAGE_PartitionScanner.java b/plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text/LANGUAGE_PartitionScanner.java similarity index 90% rename from plugin_ide.core/src/LANG_PROJECT_ID/ide/core/text/LANGUAGE_PartitionScanner.java rename to plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text/LANGUAGE_PartitionScanner.java index 0bd191887..f34cfecd4 100644 --- a/plugin_ide.core/src/LANG_PROJECT_ID/ide/core/text/LANGUAGE_PartitionScanner.java +++ b/plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text/LANGUAGE_PartitionScanner.java @@ -8,12 +8,12 @@ * Contributors: * Bruno Medeiros - initial API and implementation *******************************************************************************/ -package LANG_PROJECT_ID.ide.core.text; +package LANG_PROJECT_ID.ide.core_text; import org.eclipse.jface.text.rules.IPredicateRule; import melnorme.lang.ide.core.TextSettings_Actual.LangPartitionTypes; -import melnorme.lang.ide.core.text.LangPartitionScanner; +import melnorme.lang.ide.core_text.LangPartitionScanner; import melnorme.lang.tooling.parser.lexer.CharacterLexingRule; import melnorme.utilbox.collections.ArrayList2; diff --git a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/RuleBasedPartitionScannerExt.java b/plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text/RuleBasedPartitionScannerExt.java similarity index 94% rename from plugin_ide.core/src-lang/melnorme/lang/ide/core/text/RuleBasedPartitionScannerExt.java rename to plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text/RuleBasedPartitionScannerExt.java index f99e685f7..dd18b2728 100644 --- a/plugin_ide.core/src-lang/melnorme/lang/ide/core/text/RuleBasedPartitionScannerExt.java +++ b/plugin_ide.ui/src/LANG_PROJECT_ID/ide/core_text/RuleBasedPartitionScannerExt.java @@ -9,7 +9,7 @@ * IBM Corporation - initial API and implementation *******************************************************************************/ -package melnorme.lang.ide.core.text; +package LANG_PROJECT_ID.ide.core_text; import org.eclipse.jface.text.IDocument; @@ -18,6 +18,7 @@ import org.eclipse.jface.text.rules.IRule; import org.eclipse.jface.text.rules.IToken; +import melnorme.lang.ide.core_text.BufferedRuleBasedScannerExt; import melnorme.utilbox.collections.ArrayList2; diff --git a/plugin_ide.ui/src/melnorme/lang/ide/ui/LangUIPlugin_Actual.java b/plugin_ide.ui/src/melnorme/lang/ide/ui/LangUIPlugin_Actual.java index 4b5655778..55beb76b7 100644 --- a/plugin_ide.ui/src/melnorme/lang/ide/ui/LangUIPlugin_Actual.java +++ b/plugin_ide.ui/src/melnorme/lang/ide/ui/LangUIPlugin_Actual.java @@ -2,10 +2,12 @@ import java.util.List; +import org.eclipse.jface.text.rules.IPartitionTokenScanner; import org.eclipse.ui.texteditor.ITextEditor; import LANG_PROJECT_ID.ide.core.text.LANGUAGE_AutoEditStrategy; import LANG_PROJECT_ID.ide.core_text.LANGUAGE_DocumentSetupParticipant; +import LANG_PROJECT_ID.ide.core_text.LANGUAGE_PartitionScanner; import LANG_PROJECT_ID.ide.ui.LANGUAGE_Images; import LANG_PROJECT_ID.ide.ui.editor.LANGUAGE_FormatEditorOperation; import melnorme.lang.ide.core.LangCore_Actual; @@ -33,11 +35,17 @@ public final class LangUIPlugin_Actual { protected static final Class PLUGIN_IMAGES_CLASS = LANGUAGE_Images.class; + /* ----------------- text ----------------- */ + @SuppressWarnings("unused") protected static void initTextHovers_afterProblemHover( List>> textHoverSpecifications) { } + public static IPartitionTokenScanner createPartitionScanner() { + return new LANGUAGE_PartitionScanner(); + } + public static LANGUAGE_AutoEditStrategy createAutoEditStrategy(String contentType, ILastKeyInfoProvider lastKeyInfoProvider) { return new LANGUAGE_AutoEditStrategy(contentType, new LangAutoEditsPreferencesAccess(), lastKeyInfoProvider);