Pracuję nad niektórymi projektami ze stylami wcięć, które uważam za naprawdę irytujące. Chciałbym wyświetlić kod z pewnym stylem wcięcia, ale zawsze zapisz na dysku w zalecanym stylu wcięcia.
W szczególności podoba mi się domyślny styl wcięcia emacsa w argumentach funkcji wieloliniowych ...
void foo(int a, int b,
string c)
Ale projekt jest tylko tabulator, jedno wcięcie na wszystko ...
void foo(int a, int b,
string c)
Czy mogę zobaczyć pierwszy przypadek, ale udostępnić drugi?
indentation
Spacemoose
źródło
źródło
astyle
), Które formatuje plik do stylu Twojego zespołu wafter-save-hook
Odpowiedzi:
Oczywistym podejściem byłoby to
c-mode
; i wtedyUwaga 1: Zaimplementowanie tego przy jednoczesnym zachowaniu możliwości edycji bufora może być koszmarem, więc uczynię bufor tylko do odczytu.
Uwaga 2: Właściwości tekstu są znacznie szybsze niż nakładki, więc użyłbym ich. Chyba że w nieparzystym przypadku, gdy wcięcie bufora oryginalnego wynosi 0, a
c-mode
nie jest.źródło