2010-09-16 43 views
10

Emacs代碼/包是否已準備好根據正在訪問的文件自動設置縮進標籤模式?也就是說,如果當前訪問的文件使用製表符縮進,indent-tabs-mode應該設置爲buffer-locally爲true。相應地,如果使用空格,indent-tabs-mode應該設置爲false。這樣做的目的是自動檢測並使用現有項目的選項卡模式(不需要Emacs特定的文件變量註釋),以保持與現有代碼的選項卡樣式一致。Emacs代碼根據現有代碼自動設置縮進標籤模式

此檢測的更高級版本可能適用於單個文件可能具有混合選項卡和空格的事實。在這種情況下,一個明智的啓發式可能是在縮進時使用前一行的製表模式,而不是決定整個文件的全局製表模式。

+0

http://www.emacswiki.org/emacs/FuzzyFormat – 2010-09-16 12:02:05

回答

7

您可能還會對dtrt-indent感興趣,它會檢測空格用於縮進時的偏移量,以及是否使用製表符。

http://savannah.nongnu.org/projects/dtrt-indent/

+1

Emacs24現在配備了M-X C-猜包括在內。這似乎正確地猜測縮進,但它沒有啓用選項卡與空格。 – maxy 2014-08-02 19:27:21