我现在正在编写一个小型Eclipse插件。
在插件中,程序会在这个.java文件中获取.java和行号
我的问题是如何使用文件名和行号来突出显示整行并跳转到该行?
如何在eclipse中突出显示或添加注释?(java)
例如,程序获取template.java和第38行,如何突出显示template.java中的第38行并跳转到第38行?
我是新来的eclipse插件。
请帮助
感谢很多
我现在正在编写一个小型Eclipse插件。
在插件中,程序会在这个.java文件中获取.java和行号
我的问题是如何使用文件名和行号来突出显示整行并跳转到该行?
如何在eclipse中突出显示或添加注释?(java)
例如,程序获取template.java和第38行,如何突出显示template.java中的第38行并跳转到第38行?
我是新来的eclipse插件。
请帮助
感谢很多
这是改编自标准Goto Line
动作代码:
private void gotoLine(int line) {
ITextEditor editor = getTextEditor();
// TODO check for null editor
IDocumentProvider provider = editor.getDocumentProvider();
IDocument document = provider.getDocument(editor.getEditorInput());
try {
int start = document.getLineOffset(line);
int length = document.getLineLength(line);
editor.selectAndReveal(start, length);
// Ensure editor is active - you may not need this
IWorkbenchPage page = editor.getSite().getPage();
page.activate(editor);
} catch (BadLocationException x) {
// ignore
}
}
这需要getTextEditor()
方法,这可能是像
ITextEditor getTextEditor()
{
IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage();
IEditorPart editor = page.getActiveEditor();
if (editor instanceof ITextEditor) {
return (ITextEditor)editor;
}
return null;
}
取决于你的插件如何运行,可能有更好的方法来确定文本编辑器。
欢迎来到SO!你有没有尝试过特别的东西?如果包含迄今为止获得的代码,获得帮助可能会更容易。 – ATG