Skip to content

Commit d4a9c3f

Browse files
add other characters
1 parent 11ac736 commit d4a9c3f

File tree

1 file changed

+10
-2
lines changed

1 file changed

+10
-2
lines changed

bundles/org.eclipse.ui.workbench.texteditor/src/org/eclipse/ui/internal/texteditor/codemining/ZeroWidthSpaceLineContentCodeMiningProvider.java

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@
1616
import java.util.ArrayList;
1717
import java.util.Collections;
1818
import java.util.List;
19+
import java.util.Set;
1920
import java.util.concurrent.CompletableFuture;
2021

2122
import org.eclipse.core.runtime.IProgressMonitor;
@@ -35,7 +36,13 @@
3536
public class ZeroWidthSpaceLineContentCodeMiningProvider extends AbstractCodeMiningProvider
3637
implements IPropertyChangeListener {
3738

38-
private static final char ZWSP_SIGN = '\u200b';
39+
private static final char ZW_SPACE = '\u200b';
40+
private static final char ZW_NON_JOINER = '\u200c';
41+
private static final char ZW_JOINER = '\u200d';
42+
private static final char ZW_NO_BREAK_SPACE = '\ufeff';
43+
44+
private static final Set<Character> ZW_CHARACTERS = Set.of(ZW_SPACE, ZW_NON_JOINER, ZW_JOINER, ZW_NO_BREAK_SPACE);
45+
3946
private IPreferenceStore store;
4047
private boolean showZwsp = false;
4148

@@ -53,7 +60,8 @@ public CompletableFuture<List<? extends ICodeMining>> provideCodeMinings(ITextVi
5360
List<ICodeMining> list = new ArrayList<>();
5461
String content = viewer.getDocument().get();
5562
for (int i = 0; i < content.length(); i++) {
56-
if (content.charAt(i) == ZWSP_SIGN) {
63+
boolean isZwCharacter = ZW_CHARACTERS.contains(content.charAt(i));
64+
if (isZwCharacter) {
5765
list.add(createCodeMining(i));
5866
}
5967
}

0 commit comments

Comments
 (0)