Ludovic Courtès (2017-01-19 12:51 +0100) wrote:

> Alex Kost <alez...@gmail.com> skribis:
>
>> Ludovic Courtès (2017-01-15 23:11 +0100) wrote:
>>
[...]
>>> I see.  So maybe we should just add a rule for ‘match’ in
>>> .dir-locals.el; any downside to that?
>>
>> I'm against it, as I think ".dir-locals.el" should contain only elisp
>> stuff *specific* to a project.  So I would rather do an opposite, i.e. I
>> would remove 'lambda*', 'eval-when', 'call-with-prompt',
>> 'call-with-input-string' and 'test-*' from the .dir-locals (all of these
>> keywords are handled by Geiser but not by scheme-mode).
>
> Yeah.
>
>> But if you consider to add it, then also add 'when', 'unless',
>> 'match-lambda', 'case-lambda', 'and-let*', 'with-output-to-string',
>> 'with-input-from-string' 'call-with-output-string'.  All these are not
>> handled by scheme-mode (but handled by Geiser).
>
> I don’t know, do you think we should put these in a different file?  How
> would that work?

As I said, my opinion is that ".dir-locals.el" shouldn't contain any
keyword that is not specific to Guix, so...

> The problem is that people using indent-code.el typically have raw Emacs
> with scheme-mode, but most likely without Geiser and Emacs-Guix.  So we
> need a mechanism that works in that case.

... I see 2 ways:

- either using "guix environment emacs-guix" as Ricardo proposed
  initially,

- or simply by adding the required indentation rules for all the missing
  keywords directly into "indent-code.el".

I prefer the latter as it seems simple and clean.

-- 
Alex

Reply via email to