下面列出了怎么用com.intellij.psi.PsiPlainText的API类实例代码及写法,或者点击链接到github查看源代码。
public CurrentBranchCompletionContributor() {
extend(CompletionType.BASIC, PlatformPatterns.psiElement(PsiPlainText.class),
new CurrentBranchCompletionProvider());
}
@Override
public boolean canSelect(PsiElement e) {
return e instanceof PsiPlainText || e instanceof PsiComment;
}
@Override
public boolean canSelect(PsiElement e) {
return e instanceof PsiPlainText;
}
public GitCommitEmojiEngine() throws IOException {
HashMap<String, String> data = DataProcess.getData();
extend(CompletionType.BASIC, PlatformPatterns.psiElement(PsiPlainText.class), new CompletionProvider<CompletionParameters>() {
@Override
protected void addCompletions(@NotNull CompletionParameters completionParameters, ProcessingContext processingContext, @NotNull CompletionResultSet completionResultSet) {
if (completionParameters.getEditor().isOneLineMode()) {
return;
}
String message = completionParameters.getEditor().getDocument().getCharsSequence().toString();
List<LookupElement> result = new LinkedList<LookupElement>();
for (String key : data.keySet()) {
if (key.contains(message)) {
result.add(LookupElementBuilder.create(data.get(key) + " " + key + ":"));
completionResultSet.addElement(LookupElementBuilder.create(data.get(key) + " " + key + ":"));
}
}
}
});
}