Emacs的24 Java模式不正確縮進新try-with-resource
結構。爲什麼嘗試與 - 資源突破缺口在Emacs?」
class X{
void foo() {
try {
check(); // ((statement-block-intro 35))
}
}
void bar() {
try (Lock l = bar()) {
check(); // ((substatement 140) (statement-block-intro 140))
}
}
}
從上面可以看出,這樣的try塊中的語句是縮進通過一個額外的4位,的c-basic-indent
值,包括右大括號。
一個try
和try-with-resource
我標識之間的區別是句法信息爲塊中的第一條語句,後者具有一個額外的(substatement)
在頭上。這可能是它打破的原因嗎?
如果我從第一行手動刪除4個空格,那麼其餘的行會正確縮進,除了最後一個大括號,這個大括號將繼續以額外的空格縮進。
這使我瘋狂。如果解決它我改變c-guess-basic-syntax
是不平凡的,也許是使用建議的解決方法?
感謝您的跟進。使用我當前的版本'24.4.1',即使使用'emacs -q',縮進似乎也能正常工作 –