unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Vagn Johansen <gonz808@hotmail.com>
To: emacs-devel@gnu.org
Subject: Re: status of dir-vars or dir-locals inclusion in emacs?
Date: Sun, 02 Sep 2007 13:56:31 +0200	[thread overview]
Message-ID: <ufy1xe0wg.fsf@hotmail.com> (raw)
In-Reply-To: m3fy1yko15.fsf@fleche.redhat.com

Tom Tromey <tromey@redhat.com> writes:

>>>>>> "rms" == Richard Stallman <rms@gnu.org> writes:
>
> [project.el]
> rms> It looks ready to install, as far as I can see, aside from some
> rms> minor points.  Do you disagree?
>
> I do agree.  I've made the changes you suggested, and I've finally
> updated the documentation and NEWS.  Patch appended.  Let me know what
> you think; I can revise (perhaps slowly :-) if needed.


You still have a "FIXME" in a comment in
project-filter-risky-variables.

One problem is that not-safe variables are just ignored. When I first
tried project.el I could not understand why it did not work. I had to
debug to discover that lisp-indent-offset was not safe.

The obvious solution is to make it use the same UI as the existing
local variables functionality. See hack-local-variables-confirm in
files.el.


> +
> +(defun project-filter-risky-variables (alist)
> +  "Filter risky variables from the project settings ALIST.
> +This knows the expected structure of a project settings alist.
> +Actually this filters unsafe variables."
> +  (dolist (elt alist)
> +    (let ((sub-alist (cdr elt)))
> +      (if (stringp (car sub-alist))
> +	  ;; A string element maps to a secondary alist.
> +	  (setcdr sub-alist
> +		  (project-filter-risky-variables (cdr sub-alist)))
> +	;; Remove unsafe variables by setting their cars to nil.
> +	;; FIXME: or look only at risky-local-variable-p?
> +	(dolist (sub-elt sub-alist)
> +	  (unless (safe-local-variable-p (car sub-elt) (cdr sub-elt))
> +	    (setcar sub-elt nil)))
> +	;; Now remove all the deleted risky variables.
> +	(setcdr elt (assq-delete-all nil sub-alist)))))
> +  alist)
> +


-- 
Vagn Johansen

  reply	other threads:[~2007-09-02 11:56 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-03 13:48 status of dir-vars or dir-locals inclusion in emacs? joakim
2007-07-04  0:25 ` Tom Tromey
2007-07-10 22:01   ` Richard Stallman
2007-07-29 22:59     ` Tom Tromey
2007-07-30 14:45       ` Stefan Monnier
2007-07-30 15:08         ` Tom Tromey
2007-08-03 17:29           ` Vagn Johansen
2007-08-03 22:02             ` Richard Stallman
2007-08-04  7:02               ` David Kastrup
2007-08-05  3:05                 ` Richard Stallman
2007-07-31 17:05       ` Richard Stallman
2007-07-31 18:45         ` Stefan Monnier
2007-09-01 22:40         ` Tom Tromey
2007-09-02 11:56           ` Vagn Johansen [this message]
2007-09-03  3:04             ` Richard Stallman
2007-09-03 18:25           ` Richard Stallman
2007-09-04 21:53             ` Dan Nicolaescu
2007-09-05  3:16               ` Stefan Monnier
2007-09-05 17:32                 ` Dan Nicolaescu
2007-09-05 18:18                   ` Stefan Monnier
2007-09-05 18:04                     ` Tom Tromey
2007-09-05 18:28                   ` David Kastrup
2007-09-05  6:16               ` Richard Stallman
2007-09-05 14:06                 ` Stefan Monnier
2007-09-05 14:36                   ` Davis Herring
2007-09-03 18:26           ` Richard Stallman
2007-07-04 17:04 ` Vagn Johansen
2007-07-05  1:29 ` Richard Stallman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=ufy1xe0wg.fsf@hotmail.com \
    --to=gonz808@hotmail.com \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).