我目前正在为Eclipse开发自定义编辑器插件。我已经像这样覆盖了getAutoEditStrategies:

public IAutoEditStrategy[] getAutoEditStrategies(
  ISourceViewer sourceViewer, String contentType) {
  return new IAutoEditStrategy[] { new KRLAutoEditStrategy() };
}


并编写了如下的最小策略:

public class KRLAutoEditStrategy implements IAutoEditStrategy {
  public void customizeDocumentCommand(IDocument d, DocumentCommand c) {
    System.out.println("Called.");
  }
}


现在,customizeDocumentCommand仅在我按退格键时才调用,而不是其他任何字符。我想念什么?我还应该如何实现自动缩进?

最佳答案

您的自定义策略看不到任何问题(几乎相同的代码对我来说也可以正常工作),但是要实现一些基本的自动缩进,您可以使用DefaultIndentLineAutoEditStrategy(将其添加到getAutoEditStrategies返回的数组中)

07-26 07:49