From: "João Távora" <joaotavora@gmail.com>
To: Eli Zaretskii <eliz@gnu.org>
Cc: "Clément Pit-Claudel" <cpitclaudel@gmail.com>,
emacs-devel <emacs-devel@gnu.org>
Subject: Re: Add a separate mode for .dir-locals.el
Date: Thu, 17 Oct 2019 15:00:48 +0100 [thread overview]
Message-ID: <CALDnm51E+UMo8uHD3YvwEvKg=rHi14w9aSxK8S0C7DPnfMQg0g@mail.gmail.com> (raw)
In-Reply-To: <83ftjrbjhm.fsf@gnu.org>
[-- Attachment #1: Type: text/plain, Size: 2177 bytes --]
[Sorry for the double mail, Eli]
On Thu, Oct 17, 2019 at 2:16 PM Eli Zaretskii <eliz@gnu.org> wrote:
>
> > From: João Távora <joaotavora@gmail.com>
> > Date: Thu, 17 Oct 2019 13:21:37 +0100
> > Cc: emacs-devel@gnu.org
> >
> > I don't know who proposed it, or what it meant exactly, but solving this
> > in Flymake directly sounds like hack.
>
> Why is that a hack? Shouldn't Flymake "understand" the file it is
> working on, including its syntax etc.?
In fact, no. Not the new Flymake at least (and even in the old one I
have my doubts). That is a job for mode-specific functions that hook
onto Flymake's interfaces. They are known as Flymake backends and
usually place themselves in the local value of the
flymake-diagnostic-functions hook. For lisp/elisp-mode.el, there are
two backends: elisp-flymake-byte-compile and elisp-flymake-checkdoc.
Maybe I misunderstood your suggestion: if you meant changing _those_ two
backends so that they notice they are in a dir-locals file and disable
themselves, then it's less bad. But I you'd probably be adding more
complexity to progmodes/elisp-mode.el than you would (to the same file,
I guess) by setting up a trivial derived dir-locals-mode. And having a
function that silently becomes a noop (the so-called "maybe" idiom) is
slightly hacky IMO. But sometimes it's half-decent, I guess.
João
BTW, and on a tangent, a derived dir-locals-mode isn't the
bestoption. In OO, a derivation that _removes_functionality is a
no-no,it breaks "is a". A better option would be to have a base
`lisp-prog-mode` and hen derive emacs-lisp-mode from it. But that is
maybe impractical for other reasons and not justified by this case.
On Thu, Oct 17, 2019 at 2:16 PM Eli Zaretskii <eliz@gnu.org> wrote:
> > From: João Távora <joaotavora@gmail.com>
> > Date: Thu, 17 Oct 2019 13:21:37 +0100
> > Cc: emacs-devel@gnu.org
> >
> > I don't know who proposed it, or what it meant exactly, but solving this
> > in Flymake directly sounds like hack.
>
> Why is that a hack? Shouldn't Flymake "understand" the file it is
> working on, including its syntax etc.?
>
--
João Távora
[-- Attachment #2: Type: text/html, Size: 3051 bytes --]
next prev parent reply other threads:[~2019-10-17 14:00 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-10-17 2:07 Add a separate mode for .dir-locals.el Clément Pit-Claudel
2019-10-17 2:20 ` Lars Ingebrigtsen
2019-10-17 7:53 ` Eli Zaretskii
2019-10-17 11:51 ` Clément Pit-Claudel
2019-10-17 12:21 ` João Távora
2019-10-17 13:16 ` Eli Zaretskii
2019-10-17 13:51 ` Clément Pit-Claudel
2019-10-17 15:45 ` Yuri Khan
2019-10-17 15:47 ` Clément Pit-Claudel
2019-10-17 16:55 ` Amin Bandali
2019-10-17 14:00 ` João Távora [this message]
2019-10-17 15:12 ` Dmitry Gutov
2019-10-17 15:32 ` Stefan Monnier
2019-10-17 15:41 ` João Távora
2019-10-17 15:47 ` Clément Pit-Claudel
2019-10-17 16:37 ` Stefan Monnier
2019-10-17 17:04 ` João Távora
2019-10-17 17:35 ` Eli Zaretskii
2019-10-17 17:42 ` João Távora
2019-10-17 17:52 ` Eli Zaretskii
2019-10-17 18:09 ` João Távora
2019-10-17 18:28 ` Eli Zaretskii
2019-10-17 19:00 ` João Távora
2019-10-17 19:21 ` Eli Zaretskii
2019-10-17 19:53 ` Stefan Monnier
2019-10-18 7:39 ` Eli Zaretskii
2019-10-18 12:56 ` Stefan Monnier
2019-10-17 21:35 ` João Távora
2019-10-18 8:00 ` Eli Zaretskii
2019-10-18 8:38 ` Juanma Barranquero
2019-10-18 13:14 ` Stefan Monnier
2019-10-18 10:25 ` João Távora
2019-10-18 12:33 ` Eli Zaretskii
2019-10-18 13:43 ` João Távora
2019-10-18 14:07 ` Dmitry Gutov
2019-10-19 9:52 ` Eli Zaretskii
2019-10-19 11:00 ` João Távora
2019-10-19 11:08 ` João Távora
2019-10-19 11:56 ` Eli Zaretskii
2019-10-19 12:55 ` Clément Pit-Claudel
2019-10-19 13:36 ` João Távora
2019-10-19 14:03 ` Eli Zaretskii
2019-10-19 16:13 ` João Távora
2019-10-19 12:53 ` Clément Pit-Claudel
2019-10-19 14:14 ` Eli Zaretskii
2019-10-19 16:51 ` Clément Pit-Claudel
2019-10-19 20:41 ` Dmitry Gutov
2019-10-19 21:35 ` Alan Mackenzie
2019-10-19 22:01 ` Dmitry Gutov
2019-10-20 5:45 ` Eli Zaretskii
2019-10-20 8:17 ` João Távora
2019-10-20 15:40 ` Juri Linkov
2019-10-20 19:29 ` João Távora
2019-10-21 12:43 ` Dmitry Gutov
2019-10-21 13:15 ` Eli Zaretskii
2019-10-21 13:34 ` Dmitry Gutov
2019-10-21 13:41 ` João Távora
2019-10-21 13:48 ` Eli Zaretskii
2019-10-19 20:38 ` Dmitry Gutov
2019-10-20 5:38 ` Eli Zaretskii
2019-10-20 20:21 ` Dmitry Gutov
2019-10-21 6:24 ` Eli Zaretskii
2019-10-21 7:05 ` João Távora
2019-10-21 7:15 ` Eli Zaretskii
2019-10-21 8:25 ` João Távora
2019-10-21 10:09 ` Eli Zaretskii
2019-10-21 10:28 ` João Távora
2019-10-21 10:59 ` Eli Zaretskii
2019-10-21 11:22 ` João Távora
2019-10-21 11:32 ` Eli Zaretskii
2019-10-21 11:39 ` João Távora
2019-10-21 12:26 ` Dmitry Gutov
2019-10-17 19:50 ` Stefan Monnier
2019-10-17 19:59 ` Eli Zaretskii
2019-10-17 20:32 ` Stefan Monnier
2019-10-18 7:34 ` Michael Albinus
2019-10-18 7:52 ` Eli Zaretskii
2019-10-18 13:11 ` Stefan Monnier
2019-10-19 10:00 ` Eli Zaretskii
2019-10-19 14:05 ` Stefan Monnier
2019-10-17 16:36 ` Eli Zaretskii
2019-10-17 17:47 ` Alan Mackenzie
2019-10-17 18:08 ` Stefan Monnier
2019-10-17 19:46 ` Alan Mackenzie
2019-10-17 20:19 ` Stefan Monnier
2019-10-17 18:19 ` João Távora
2019-10-17 19:38 ` Alan Mackenzie
[not found] ` <CALDnm50Q+QuhYRqZxV4-YzAAqhmU05+nOS3Oh1wvcJsYEX+sbg@mail.gmail.com>
2019-10-17 14:12 ` Eli Zaretskii
2019-10-17 15:31 ` João Távora
2019-10-17 8:55 ` Andreas Schwab
2019-10-17 11:48 ` Clément Pit-Claudel
2019-10-17 12:03 ` Andreas Schwab
2019-10-17 12:10 ` Clément Pit-Claudel
2019-10-18 3:14 ` Richard Stallman
2019-10-17 13:40 ` Stefan Monnier
2019-10-19 12:28 ` Why we SHOULDN'T add " Alan Mackenzie
2019-10-19 12:59 ` Clément Pit-Claudel
2019-10-19 22:04 ` Dmitry Gutov
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='CALDnm51E+UMo8uHD3YvwEvKg=rHi14w9aSxK8S0C7DPnfMQg0g@mail.gmail.com' \
--to=joaotavora@gmail.com \
--cc=cpitclaudel@gmail.com \
--cc=eliz@gnu.org \
--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).