From 5038df43beda49312e7d9c9b5c97e55616f16d1e Mon Sep 17 00:00:00 2001 From: Lennart Poettering Date: Wed, 20 Jun 2018 10:59:44 +0200 Subject: [PATCH] make dir-locals work again with emacs 26.1 After upgrading to emacs-26.1-1.fc28.x86_64 I noticed that our .dir-locals.el files weren't honoured anymore (specifically the fill column variable is not correctly set for c-mode files). I finally tracked this down to the order in which items are listed in .dir-locals.el: if the "nil" one is listed last everything works, otherwise, it's the one that is applied instead of the c-mode one. This patch simply swaps the entries, and puts the "nil" one last. My emacs lisp fu is a bit too limited to understand the full impact for this, and why emacs 26.1 changed behaviour in this regard, but from an outsider's view the order shouldn't negatively affect things otherwise, hence this patch. --- .dir-locals.el | 10 +++++----- man/.dir-locals.el | 10 +++++----- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/.dir-locals.el b/.dir-locals.el index 5ef7e11634..e3d01b28a9 100644 --- a/.dir-locals.el +++ b/.dir-locals.el @@ -9,10 +9,7 @@ ; NOTE: If you update this file make sure to update .vimrc and .editorconfig, ; too. -((nil . ((indent-tabs-mode . nil) - (tab-width . 8) - (fill-column . 79))) - (c-mode . ((fill-column . 119) +((c-mode . ((fill-column . 119) (c-basic-offset . 8) (eval . (c-set-offset 'substatement-open 0)) (eval . (c-set-offset 'statement-case-open 0)) @@ -24,4 +21,7 @@ (meson-mode . ((meson-indent-basic . 8))) (sh-mode . ((sh-basic-offset . 8) (sh-indentation . 8))) - (awk-mode . ((c-basic-offset . 8)))) + (awk-mode . ((c-basic-offset . 8))) + (nil . ((indent-tabs-mode . nil) + (tab-width . 8) + (fill-column . 79))) ) diff --git a/man/.dir-locals.el b/man/.dir-locals.el index 1c2512052d..6115b4e8cf 100644 --- a/man/.dir-locals.el +++ b/man/.dir-locals.el @@ -1,8 +1,5 @@ ; special .c mode with reduced indentation for man pages -((nil . ((indent-tabs-mode . nil) - (tab-width . 8) - (fill-column . 79))) - (c-mode . ((fill-column . 80) +((c-mode . ((fill-column . 80) (c-basic-offset . 2) (eval . (c-set-offset 'substatement-open 0)) (eval . (c-set-offset 'statement-case-open 0)) @@ -11,4 +8,7 @@ (eval . (c-set-offset 'arglist-close 0)))) (nxml-mode . ((nxml-child-indent . 2) (fill-column . 119))) - (meson-mode . ((meson-indent-basic . 8)))) + (meson-mode . ((meson-indent-basic . 8))) + (nil . ((indent-tabs-mode . nil) + (tab-width . 8) + (fill-column . 79))))