GNU bug report logs -
#19007
24.4; copy-file-locals-to-dir-locals generates malformed expression
Previous Next
Reported by: Alain Kalker <a.c.kalker <at> gmail.com>
Date: Mon, 10 Nov 2014 01:14:01 UTC
Severity: normal
Found in version 24.4
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 19007 in the body.
You can then email your comments to 19007 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#19007
; Package
emacs
.
(Mon, 10 Nov 2014 01:14:01 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Alain Kalker <a.c.kalker <at> gmail.com>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Mon, 10 Nov 2014 01:14:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
Short description: M-x copy-file-locals-to-dir-locals generates
".dir-locals.el" containing a malformed expression. The syntax of the
expression doesn't match the documentation, and although it appears to
work well for variables with simple values, using more complex
expressions often results in errors when visiting files in the directory.
Steps to reproduce:
* Ensure that directory "~/tmp" exists
* Create test file: `C-x C-f ~/tmp/test-local-vars.c`
Add local variable: `M-x add-file-local-variable <RET> tab-width <RET>
4 <RET>`
* Buffer contents now should be:
---cut here---
/* Local Variables: */
/* tab-width: 4 */
/* End: */
---cut here---
* Save buffer: `C-x C-s`
* Revert buffer as instructed: `M-x revert-buffer`
* M-x copy-file-locals-to-dir-locals <RET>
* Buffer ".dir-locals.el" created with contents:
---cut here---
((c-mode
(tab-width . 4)))
---cut here---
* Note that the expression doesn't conform to the syntax described in
the documentation "49.2.5 Per-Directory Local Variables".
* (If installed, Flycheck will report an error: Invalid function: (c-mode
(tab-width . 4))
* Save directory locals file: `C-x C-s`
* Switch back to test file: `C-x b test-local-vars.c <RET>`
* Edit buffer to remove local variables block
* Save buffer: `C-x C-s`
* Revert buffer to apply directory local variables: `M-x revert-buffer
<RET>`
* Note that Emacs does not report any errors about the malformed expression.
In GNU Emacs 24.4.1 (x86_64-unknown-linux-gnu, GTK+ Version 3.14.3)
of 2014-10-21 on bitzer.hoetzel.info
Windowing system distributor `The X.Org Foundation', version 11.0.11601000
System Description: Arch Linux
Configured using:
`configure --prefix=/usr --sysconfdir=/etc --libexecdir=/usr/lib
--localstatedir=/var --with-x-toolkit=gtk3 --with-xft
'CFLAGS=-march=x86-64 -mtune=generic -O2 -pipe -fstack-protector-strong
--param=ssp-buffer-size=4' CPPFLAGS=-D_FORTIFY_SOURCE=2
LDFLAGS=-Wl,-O1,--sort-common,--as-needed,-z,relro'
Important settings:
value of $LANG: en_US.utf8
locale-coding-system: utf-8-unix
Major mode: Fundamental
Minor modes in effect:
delete-selection-mode: t
yas-global-mode: t
show-paren-mode: t
global-flycheck-mode: t
cua-mode: t
global-auto-complete-mode: t
tooltip-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
buffer-read-only: t
column-number-mode: t
line-number-mode: t
transient-mark-mode: t
Recent input:
M-x r e p o r t - e m a <tab> <return>
Recent messages:
[yas] Prepared just-in-time loading for ~/.emacs.d/snippets
[yas] Reloaded everything (snippets will load just-in-time)....
[yas] Loading for `lisp-interaction-mode', just-in-time: (lambda nil (yas--load-directory-1 (quote /home/miki/.emacs.d/elpa/yasnippet-20141102.1554/snippets/lisp-interaction-mode) (quote lisp-interaction-mode)))!
[yas] Loading compiled snippets from /home/miki/.emacs.d/elpa/yasnippet-20141102.1554/snippets/lisp-interaction-mode
[yas] Loading for `emacs-lisp-mode', just-in-time: (lambda nil (yas--load-directory-1 (quote /home/miki/.emacs.d/elpa/yasnippet-20141102.1554/snippets/emacs-lisp-mode) (quote emacs-lisp-mode)))!
[yas] Loading compiled snippets from /home/miki/.emacs.d/elpa/yasnippet-20141102.1554/snippets/emacs-lisp-mode
[yas] Loading for `prog-mode', just-in-time: (lambda nil (yas--load-directory-1 (quote /home/miki/.emacs.d/elpa/yasnippet-20141102.1554/snippets/prog-mode) (quote prog-mode)))!
[yas] Loading compiled snippets from /home/miki/.emacs.d/elpa/yasnippet-20141102.1554/snippets/prog-mode
Loading /home/miki/.emacs.d/elpa/yasnippet-20141102.1554/snippets/prog-mode/.yas-setup...done
For information about GNU Emacs and the GNU system, type C-h C-a.
Load-path shadows:
/usr/share/emacs/site-lisp/SuperCollider/tree-widget hides /usr/share/emacs/24.4/lisp/tree-widget
Features:
(shadow sort gnus-util mail-extr emacsbug message idna cl-macs
format-spec rfc822 mml mml-sec mm-decode mm-bodies mm-encode mail-parse
rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045
ietf-drums mm-util mail-prsvr mail-utils advice eldoc help-fns imenu
.emacs tsdh-dark-theme delsel yasnippet cl gv paren flycheck find-func
help-mode rx pcase subr-x dash cua-base cus-start cus-load ix grapnel
flymake compile comint ansi-color ring auto-complete-clang-async
auto-complete-config auto-complete edmacro kmacro popup cl-loaddefs
cl-lib ac-cider-autoloads info easymenu pkg-info-autoloads epl-autoloads
queue-autoloads sly-autoloads popup-autoloads package epg-config
time-date tooltip electric uniquify ediff-hook vc-hooks lisp-float-type
mwheel x-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment lisp-mode prog-mode register page menu-bar
rfn-eshadow timer select scroll-bar mouse jit-lock font-lock syntax
facemenu font-core frame cham georgian utf-8-lang misc-lang vietnamese
tibetan thai tai-viet lao korean japanese hebrew greek romanian slovak
czech european ethiopic indian cyrillic chinese case-table epa-hook
jka-cmpr-hook help simple abbrev minibuffer nadvice loaddefs button
faces cus-face macroexp files text-properties overlay sha1 md5 base64
format env code-pages mule custom widget hashtable-print-readable
backquote make-network-process dbusbind gfilenotify dynamic-setting
system-font-setting font-render-setting move-toolbar gtk x-toolkit x
multi-tty emacs)
Memory information:
((conses 16 138761 8646)
(symbols 48 24706 0)
(miscs 40 81 115)
(strings 32 29397 5044)
(string-bytes 1 843125)
(vectors 16 16816)
(vector-slots 8 504577 7812)
(floats 8 412 77)
(intervals 56 215 0)
(buffers 960 13)
(heap 1024 44346 1095))
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#19007
; Package
emacs
.
(Sat, 03 Aug 2019 14:54:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 19007 <at> debbugs.gnu.org (full text, mbox):
Alain Kalker <a.c.kalker <at> gmail.com> writes:
> ((c-mode
> (tab-width . 4)))
> ---cut here---
> * Note that the expression doesn't conform to the syntax described in
> the documentation "49.2.5 Per-Directory Local Variables".
(I'm going through old bug reports that unfortunately have not received
any responses yet.)
Looks like this has been fixed in the intervening years. This now
creates a .dir-locals file with:
((c-mode . ((tab-width . 4))))
--
(domestic pets only, the antidote for overdose, milk.)
bloggy blog: http://lars.ingebrigtsen.no
bug closed, send any further explanations to
19007 <at> debbugs.gnu.org and Alain Kalker <a.c.kalker <at> gmail.com>
Request was from
Lars Ingebrigtsen <larsi <at> gnus.org>
to
control <at> debbugs.gnu.org
.
(Sat, 03 Aug 2019 14:54:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Sun, 01 Sep 2019 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 5 years and 296 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.