【问题标题】:Emacs fix the indentation of the java-modeEmacs 修复 java-mode 的缩进
【发布时间】:2011-10-01 09:35:38
【问题描述】:

假设代码:

  Command provisionHostCommand = new Command() {
      @Override
      public void execute() {
        final List<Host> hosts = new ArrayList<Host>(display.getSelectionModel().getSelectedSet());
        eventBus.fireEvent(new ProvisioningHostEvent(hosts));
      }
    };

看一下缩进。 Command 匿名类有 4 个空格。我的 c-basic-offset 设置为 2。如何减少匿名类中的缩进空间?

谢谢。

【问题讨论】:

    标签: emacs


    【解决方案1】:

    嗯,这似乎对我有用:

    (c-set-offset 'inexpr-class 0)
    

    我不太清楚为什么,不过,我查看了documentation,似乎暗示匿名类只能缩进c-basic-offset。也许是因为左大括号而缩进了两次?

    编辑http://www.mail-archive.com/jde@sunsite.auc.dk/msg01159.html 的解决方法怎么样?

    (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))))
    

    【讨论】:

    • 是的。我尝试将 c-basic-offset 设置为 3,并且该行缩进两次(6 个空格)。我该如何修复这个错误?
    猜你喜欢
    • 1970-01-01
    • 2012-10-05
    • 2011-11-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多