GNU bug report logs - #34130
Specifying File Variables: mention why can't specify "current file"

Previous Next

Package: emacs;

Reported by: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>

Date: Sat, 19 Jan 2019 06:38:01 UTC

Severity: wishlist

Merged with 6615, 29451, 35373

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

Full log


Message #26 received at 34130 <at> debbugs.gnu.org (full text, mbox):

From: Robert Pluim <rpluim <at> gmail.com>
To: 積丹尼 Dan Jacobson <jidanni <at> jidanni.org>
Cc: 34130 <at> debbugs.gnu.org, Lars Ingebrigtsen <larsi <at> gnus.org>,
 6615 <at> debbugs.gnu.org
Subject: Re: bug#6615: bug#34130: Specifying File Variables: mention why
 can't specify "current file"
Date: Wed, 02 Oct 2019 13:48:28 +0200
>>>>> On Wed, 02 Oct 2019 03:44:37 +0800, 積丹尼 Dan Jacobson <jidanni <at> jidanni.org> said:

>>>>> "LI" == Lars Ingebrigtsen <larsi <at> gnus.org> writes:
    LI> Eli Zaretskii <eliz <at> gnu.org> writes:

    >>>> On (info "(emacs) Specifying File Variables")
    >>>> at
    >>>> 
    >>>> # Local Variables:
    >>>> # compile-command: "cc foo.c -Dfoo=bar -Dhack=whatever \
    >>>> #   -Dmumble=blaah"
    >>>> # End:
    >>>> 
    >>>> do also mention why there is absolutely no way to say "<<<current file>>>",
    >>>> $$$${current_file} etc. if one wanted to, instead of needing to hardwire
    >>>> the filename (foo.c) of the file (foo.c) into the file (foo.c) itself! Thanks.
    >>> 
    >>> Is something wrong with using buffer-file-name?  You could create
    >>> compile-command by using 'eval', which can accept Emacs functions.

    LI> Indeed, so I don't think there's anything here to be fixed.  Closing.

    積丹尼> eval needs to be whitelisted as a safe local variable, creating a security hole.

How about this instead:

    before-hack-local-variables-hook is a variable defined in `files.el'.
    Its value is (c-before-hack-hook)

      This variable may be risky if used as a file-local variable.
      Probably introduced at or before Emacs version 23.1.

    Documentation:
    Normal hook run before setting file-local variables.
    It is called after checking for unsafe/risky variables and
    setting `file-local-variables-alist', and before applying the
    variables stored in `file-local-variables-alist'.  A hook
    function is allowed to change the contents of this alist.

    This hook is called only if there is at least one file-local
    variable to set.




This bug report was last modified 5 years and 291 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.