Я знаю, что об этом спрашивали некоторое время назад, но если кто-то ищет другое решение, я подумал, что выложу следующее:
Поскольку вы можете использовать метод setTextColor, вы также должны использовать метод changeTextPresentation.
В случае с моим плагином у меня есть TextListener, который вызывает метод TextChanged, который я переписал. Я сделал следующее, чтобы добавить цвет фона, используя метод changeTextPresentation. При этом мне удалось получить зеленый фон с черным передним планом. Не то чтобы я хотел этого, конечно, но только для целей тестирования.
public void TextChanged(TextEvent event){
...
TextPresentation presentation = new TextPresentation();
TextAttribute attr = new TextAttribute(new ColorManager().getColor(MyConstants.BLACK),
new ColorManager().getColor(MyConstants.GREEN), style);
presentation.addStyleRange(new StyleRange(startOffset, tokLength, attr.getForeground(),
attr.getBackground());
sourceViewer.changeTextPresentation(presentation, true); //sourceViewer is a global variable passed to my TextListener class constructor.
}