final EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(caret - 2); IElementType tokenType = iterator.getTokenType(); final EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(caret - 1); IElementType tokenType = iterator.getTokenType(); final EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(caret - 2); final EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(caret - 1); IElementType tokenType = iterator.getTokenType(); final EditorHighlighter highlighter = ((EditorEx) editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(caret - 1); IElementType tokenType = iterator.getTokenType();
private boolean isLBraceTokenBrace() { int offset = myFixture.getCaretOffset(); Editor editor = myFixture.getEditor(); CharSequence text = editor.getDocument().getCharsSequence(); FileType fileType = ElixirFileType.INSTANCE; HighlighterIterator iterator = ((EditorEx) editor).getHighlighter().createIterator(offset); return BraceMatchingUtil.isLBraceToken(iterator, text, fileType); } }
@NotNull IElementType leftType, @NotNull IElementType rightType) { HighlighterIterator highlighterIterator = editor.getHighlighter().createIterator(0); int level = 0; while (!highlighterIterator.atEnd()) {
@Nullable @Contract("null -> null") public static IElementType getLastOpenMarker(@Nullable Editor editor) { if (editor == null) { return null; } int offset = editor.getCaretModel().getOffset(); HighlighterIterator iterator = ((EditorEx)editor).getHighlighter().createIterator(offset); while (!iterator.atEnd()) { IElementType tokenType = iterator.getTokenType(); if (TemplateToolkitSyntaxElements.OPEN_TAGS.contains(tokenType)) { return tokenType; } iterator.retreat(); } return null; } }
HighlighterIterator highlighterIterator = ((EditorEx)editor).getHighlighter().createIterator(currentOffset); if (highlighterIterator.atEnd()) { return Result.Continue;
EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(currentOffset); IElementType nextTokenType = iterator.atEnd() ? null : iterator.getTokenType();
EditorHighlighter editorHighlighter = ((EditorEx)editor).getHighlighter(); Document document = editor.getDocument(); CharSequence documentChars = document.getCharsSequence();
final EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); final HighlighterIterator iterator = highlighter.createIterator(caretOffset.get() - 1); final IElementType type = getNonWhitespaceElementType(iterator, lineStartOffset1, prevLineStartOffset);
EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(offset); IElementType elementTokenType = iterator.getTokenType();
public BracePair findClosetBracePairInStringSymbols(int offset) { if (offset < 0 || this.fileText == null || this.fileText.length() == 0) return EMPTY_BRACE_PAIR; EditorHighlighter editorHighlighter = ((EditorEx) editor).getHighlighter(); HighlighterIterator iterator = editorHighlighter.createIterator(offset); IElementType type = iterator.getTokenType(); boolean isBlockCaret = this.isBlockCaret(); if (!BraceMatchingUtilAdapter.isStringToken(type)) return EMPTY_BRACE_PAIR; int leftOffset = iterator.getStart(); int rightOffset = iterator.getEnd() - 1; if (!isBlockCaret && leftOffset == offset) return EMPTY_BRACE_PAIR; return new BracePair.BracePairBuilder(). leftType(DOUBLE_QUOTE). rightType(DOUBLE_QUOTE). leftOffset(leftOffset). rightOffset(rightOffset).build(); }
final int prevLineStartOffset = lineNumber > 0 ? document.getLineStartOffset(lineNumber - 1) : lineStartOffset; final EditorHighlighter highlighter = ((EditorEx) editor).getHighlighter(); final HighlighterIterator iterator = highlighter.createIterator(caretOffset.get() - 1); final IElementType type = getNonWhitespaceElementType(iterator, lineStartOffset, prevLineStartOffset);
return; EditorHighlighter highlighter = ((EditorEx)editor).getHighlighter(); HighlighterIterator iterator = highlighter.createIterator(currentOffset); IElementType tokenToDelete = iterator.atEnd() ? null : iterator.getTokenType();
public BracePair findClosetBracePairInBraceTokens(int offset) { EditorHighlighter editorHighlighter = ((EditorEx) editor).getHighlighter(); boolean isBlockCaret = this.isBlockCaret(); List<Pair<IElementType, IElementType>> braceTokens = this.getSupportedBraceToken(); for (Pair<IElementType, IElementType> braceTokenPair : braceTokens) { HighlighterIterator leftTraverseIterator = editorHighlighter.createIterator(offset); HighlighterIterator rightTraverseIterator = editorHighlighter.createIterator(offset); int leftBraceOffset = BraceMatchingUtilAdapter.findLeftLParen( leftTraverseIterator, braceTokenPair.getLeft(), this.fileText, this.fileType, isBlockCaret); int rightBraceOffset = BraceMatchingUtilAdapter.findRightRParen( rightTraverseIterator, braceTokenPair.getRight(), this.fileText, this.fileType, isBlockCaret); if (leftBraceOffset != NON_OFFSET && rightBraceOffset != NON_OFFSET) { return new BracePair.BracePairBuilder(). leftType(braceTokenPair.getLeft()). rightType(braceTokenPair.getRight()). leftIterator(leftTraverseIterator). rightIterator(rightTraverseIterator).build(); } } return EMPTY_BRACE_PAIR; }