如何在嵌入式编辑器中显示 print margin/vertical 行?

How to show print margin/vertical line in EmbeddedEditor?

我想在我的 org.eclipse.xtext.ui.editor.embedded.EmbeddedEditor 中的 120 个字符后显示一条垂直线(在 eclipse 措辞中打印边距)。这是否以某种方式得到支持,或者是否有一些可用的底层编辑器,我可以在其中创建这样的一行?

来自 greg-449s 评论的回答:

    final EmbeddedEditor editor = ...;
    editor.createPartialEditor();

    MarginPainter marginPainter = new MarginPainter(editor.getViewer());
    marginPainter.setMarginRulerColumn(120);
    marginPainter.setMarginRulerColor(Display.getDefault().getSystemColor(SWT.COLOR_GRAY));
    editor.getViewer().addPainter(marginPainter);

你必须设置颜色,否则下一次调用 paint() 会抛出错误。