Emacs修复了java模式的缩进

Emacs修复了java模式的缩进,emacs,Emacs,假设代码: Command provisionHostCommand = new Command() { @Override public void execute() { final List<Host> hosts = new ArrayList<Host>(display.getSelectionModel().getSelectedSet()); eventBus.fireEvent(new Provis

假设代码:

  Command provisionHostCommand = new Command() {
      @Override
      public void execute() {
        final List<Host> hosts = new ArrayList<Host>(display.getSelectionModel().getSelectedSet());
        eventBus.fireEvent(new ProvisioningHostEvent(hosts));
      }
    };
Command provisionHostCommand=new Command(){
@凌驾
public void execute(){
最终列表主机=新的ArrayList(display.getSelectionModel().getSelectedSet());
fireEvent(新的ProvisioningHostEvent(主机));
}
};
看一下缩进。命令匿名类有4个空格。我的c-basic-offset设置为2。如何减少匿名类中的缩进空间


谢谢。

好吧,这似乎对我有用:

(c-set-offset 'inexpr-class 0)
不过,我不太清楚为什么,我已经看过了,它似乎建议匿名类应该只缩进
c-basic-offset
。也许是因为开口的大括号,它们缩进了两次

编辑:这个变通方法如何


没错。我尝试将c-basic-offset设置为3,行缩进两次(6个空格)。如何修复该错误?
(add-hook 'c-mode-common-hook
              '(lambda ()
                     (c-set-offset 'substatement-open 0)
                     (if (assoc 'inexpr-class c-offsets-alist)
                             (c-set-offset 'inexpr-class 0))))