我正在尝试制作一个 Netbeans 7.2 代码完成模块。我试图让这个代码完成只显示 PHP。我也试图让代码完成只显示特定的方法/功能,即x()
和z()
.
我对此很陌生。我按照本教程http://platform.netbeans.org/tutorials/nbm-code-completion.html简要了解了 API。
如何确定代码完成正在呈现的方法/功能?
如果您需要更多信息,请告诉我。
编辑
我正在尝试使代码完成位于函数的第一个参数上,x()
并且z()
更新
这是我迄今为止所拥有的:
return new AsyncCompletionTask(new AsyncCompletionQuery() {
protected void query(CompletionResultSet completionResultSet, Document document, int caretOffset) {
String filter = null;
int startOffset = caretOffset - 1;
try {
final StyledDocument bDoc = (StyledDocument) document;
final int lineStartOffset = getRowFirstNonWhite(bDoc, caretOffset);
final char[] line = bDoc.getText(lineStartOffset, caretOffset - lineStartOffset).toCharArray();
final int whiteOffset = indexOfWhite(line);
filter = new String(line, whiteOffset + 1, line.length - whiteOffset - 1);
if (whiteOffset > 0) {
startOffset = lineStartOffset + whiteOffset + 1;
} else {
startOffset = lineStartOffset;
}
} catch (BadLocationException ex) {
Exceptions.printStackTrace(ex);
}
if(filter.startsWith("x('") || filter.startsWith("z('"))
{
// This is what I would assume is the first param.
String result = filter.replaceFirst("x('|z('", "");
}
}
}, jtc);