Nếu bạn muốn tùy chỉnh biến cho mỗi dự án chứ không phải trên toàn cầu. Bạn có thể sử dụng biến thư mục . Điều này cho phép bạn áp dụng một số tùy chỉnh nhất định chỉ cho các tệp trong thư mục nhất định và thư mục con của nó.
Vì vậy, ví dụ bạn muốn sử dụng lệnh make package installas compile chỉ trong dự án A, bạn sẽ cần tạo một tệp có tên .dir-locals.eltrong thư mục gốc của dự án và thêm một cái gì đó như sau
((nil . ((compile-command . "make package install"))))
Cú pháp được giải thích chi tiết trong liên kết đến hướng dẫn sử dụng emacs ở trên. Như được chỉ ra bởi @hatschipuh, bạn có thể sử dụng các lệnh add-dir-local-variablevà delete-dir-local-variableđể dễ dàng thêm và xóa các giá trị cục bộ dir.
compilation-read-commandcái gì? Nếu biến này được đặt thànhnilgiá trị không ,M-x compilesẽ nhắc bạn sử dụng lệnh biên dịch. Ngoài ra, bạn có thể làmC-u M-x compile; trong trường hợp này, bạn sẽ được nhắc lệnh bất kể giá trị củacompilation-read-command.