W moich plikach Makefile wolę następujące wcięcie dla linii kontynuacji:
FILES:= \
file1.cpp \
file2.cpp \
fileYetAnother.cpp
LIBS:= \
libsth1.so \
libelsewhere.so
nadal tryb makefile wcina go w następujący sposób (gdy zostanie wyświetlony monit o ponowne utworzenie pliku lub regionu):
FILES:= \
file1.cpp \
file2.cpp \
fileYetAnother.cpp
LIBS:= \
libsth1.so \
libelsewhere.so
Czy można go jakoś skonfigurować, aby używał poprzedniego wariantu (= wcięcie linii kontynuacji o 4 spacje lub tabulator)?
indent-according-to-mode
dowództwem?Odpowiedzi:
Opierając się na rozwiązaniu purple_arrows:
źródło
FILES
iLIBS
są długie, a jest jeden element po:=
, a lepiej dopasować następujące elementy do pierwszego po:=
?Tak. W jakiś sposób można to skonfigurować.
(Z przeprosinami za Snarka.)
Napisz funkcję, która wcina wiersz tak, jak chcesz, a następnie ustaw tę funkcję jako wartość zmiennej
indent-line-function
dlamakefile-mode
. Coś jak:źródło
Jeśli używasz
aggressive-indent-mode
, pomogło mi to umieścićmakefile-mode
na liścieaggressive-indent-excluded-modes
:Pamiętaj, że działa to tylko przy
global-aggressive-indent-mode
włączonym.źródło