Если у вас уже есть дескриптор в текущем редакторе, то вы можете сделать:
editor.getSourceViewer().setSelectedRange(offset, length);
Если у вас нет дескриптора в текущем редакторе, то вам нужно выполнить некоторую работу, чтобы получитьтам (при условии текстового редактора):
TextEditor editor = (TextEditor) PlatformUI.getWorkbench().getActiveWorkbenchWindow()
.getActivePage().getActiveEditor();
Хотя это будет работать, я упростил несколько вещей.
- Вы должны убедиться, что активный редактор действительноa
TextEditor
, поэтому вы захотите выполнить экземпляр теста - Иногда различные части длинной фразы выше могут быть нулевыми (например, при запуске или завершении работы).Я склоняюсь к тому, чтобы просто обернуть выражение в блок try-catch (NPE) и предположить, что если выбрасывается NPE, то редактор недоступен.