* bug#71985: Lexical directives at start of file
@ 2024-07-07 18:45 Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-07 19:02 ` Eli Zaretskii
0 siblings, 1 reply; 9+ messages in thread
From: Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-07-07 18:45 UTC (permalink / raw)
To: 71985
I was curious whether the -*- lexical-binding: t -*- directive is effective
when there is an arbitrary number of comment characters before it.
For instance, in file.el:
;;; file.el -*- lexical-binding: t -*-
This is the first line from git-rebase.el in the Magit package:
;;; git-rebase.el --- Edit Git rebase files -*- lexical-binding:t -*-
This suggests that some characters can precede the variable list. However,
it's unclear if the number of characters can be arbitrary. I couldn't find
a clear explanation in either the Emacs or Elisp manuals. The Emacs manual
mentions that it can be placed on the second line of a shell script, but
doesn't provide much detail on the format. The Elisp manual does not describe
the appearance of this directive at all.
I was wondering whether the "-*- lexical-binding: t -*-" applies when
there is an arbitrary number of comment characters.
;;; file.el -*- lexical-binding: t -*-
This is the first line from `git-rebase.el` from magit.
;;; git-rebase.el --- Edit Git rebase files -*- lexical-binding:t -*-
So one can have some characters in front of the actually var list. But not
sure if it's arbitrary. I don't see it mentioned anywhere in both Emacs and
Elisp manual. In Emacs manual, it only mentions that it can be placed on the
second line of a shell script. Elisp manual doesn't even mention how it should
look like.
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-07 18:45 bug#71985: Lexical directives at start of file Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-07-07 19:02 ` Eli Zaretskii
2024-07-07 19:19 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2024-07-07 19:02 UTC (permalink / raw)
To: Heime; +Cc: 71985
> Date: Sun, 07 Jul 2024 18:45:12 +0000
> From: Heime via "Bug reports for GNU Emacs,
> the Swiss army knife of text editors" <bug-gnu-emacs@gnu.org>
>
> I was curious whether the -*- lexical-binding: t -*- directive is effective
> when there is an arbitrary number of comment characters before it.
Why do you need to know this detail?
> For instance, in file.el:
>
> ;;; file.el -*- lexical-binding: t -*-
>
> This is the first line from git-rebase.el in the Magit package:
>
> ;;; git-rebase.el --- Edit Git rebase files -*- lexical-binding:t -*-
>
> This suggests that some characters can precede the variable list. However,
> it's unclear if the number of characters can be arbitrary.
Above you mention "comment characters". Here you are talking only
about "characters" in general. I'm confused by what you are asking
about.
> I couldn't find
> a clear explanation in either the Emacs or Elisp manuals. The Emacs manual
> mentions that it can be placed on the second line of a shell script, but
> doesn't provide much detail on the format. The Elisp manual does not describe
> the appearance of this directive at all.
The above is incorrect. The ELisp manual shows how this line should
look in the nose "selecting Lisp Dialect". I think that node answers
your questions.
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-07 19:02 ` Eli Zaretskii
@ 2024-07-07 19:19 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-08 2:27 ` Eli Zaretskii
0 siblings, 1 reply; 9+ messages in thread
From: Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-07-07 19:19 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 71985
On Sunday, July 7th, 2024 at 7:02 PM, Eli Zaretskii <eliz@gnu.org> wrote:
> > Date: Sun, 07 Jul 2024 18:45:12 +0000
> > From: Heime via "Bug reports for GNU Emacs,
> > the Swiss army knife of text editors" bug-gnu-emacs@gnu.org
> >
> > I was curious whether the -- lexical-binding: t -- directive is effective
> > when there is an arbitrary number of comment characters before it.
>
>
> Why do you need to know this detail?
Because I use ;;; as highlight when using outlines.
> > For instance, in file.el:
> >
> > ;;; file.el -- lexical-binding: t --
> >
> > This is the first line from git-rebase.el in the Magit package:
> >
> > ;;; git-rebase.el --- Edit Git rebase files -- lexical-binding:t --
> >
> > This suggests that some characters can precede the variable list. However,
> > it's unclear if the number of characters can be arbitrary.
>
>
> Above you mention "comment characters". Here you are talking only
> about "characters" in general. I'm confused by what you are asking
> about.
Yes about the starting ;;;. But then I have also seen additional non-directive
descriptions before the -*- lexical-binding:t -*- directive.
As the lexical definition will be around a while, it would be good to know what
would be valid.
> > I couldn't find
> > a clear explanation in either the Emacs or Elisp manuals. The Emacs manual
> > mentions that it can be placed on the second line of a shell script, but
> > doesn't provide much detail on the format. The Elisp manual does not describe
> > the appearance of this directive at all.
>
>
> The above is incorrect. The ELisp manual shows how this line should
> look in the nose "selecting Lisp Dialect". I think that node answers
> your questions.
>
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-07 19:19 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-07-08 2:27 ` Eli Zaretskii
2024-07-08 12:44 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2024-07-08 2:27 UTC (permalink / raw)
To: Heime; +Cc: 71985
> Date: Sun, 07 Jul 2024 19:19:41 +0000
> From: Heime <heimeborgia@protonmail.com>
> Cc: 71985@debbugs.gnu.org
>
> On Sunday, July 7th, 2024 at 7:02 PM, Eli Zaretskii <eliz@gnu.org> wrote:
>
> > > Date: Sun, 07 Jul 2024 18:45:12 +0000
> > > From: Heime via "Bug reports for GNU Emacs,
> > > the Swiss army knife of text editors" bug-gnu-emacs@gnu.org
> > >
> > > I was curious whether the -- lexical-binding: t -- directive is effective
> > > when there is an arbitrary number of comment characters before it.
> >
> >
> > Why do you need to know this detail?
>
> Because I use ;;; as highlight when using outlines.
>
> > > For instance, in file.el:
> > >
> > > ;;; file.el -- lexical-binding: t --
> > >
> > > This is the first line from git-rebase.el in the Magit package:
> > >
> > > ;;; git-rebase.el --- Edit Git rebase files -- lexical-binding:t --
> > >
> > > This suggests that some characters can precede the variable list. However,
> > > it's unclear if the number of characters can be arbitrary.
> >
> >
> > Above you mention "comment characters". Here you are talking only
> > about "characters" in general. I'm confused by what you are asking
> > about.
>
> Yes about the starting ;;;. But then I have also seen additional non-directive
> descriptions before the -*- lexical-binding:t -*- directive.
>
> As the lexical definition will be around a while, it would be good to know what
> would be valid.
Then the ELisp manual provides this information, I think.
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-08 2:27 ` Eli Zaretskii
@ 2024-07-08 12:44 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-08 13:21 ` Eli Zaretskii
0 siblings, 1 reply; 9+ messages in thread
From: Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-07-08 12:44 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 71985
On Monday, July 8th, 2024 at 2:27 AM, Eli Zaretskii <eliz@gnu.org> wrote:
> > Date: Sun, 07 Jul 2024 19:19:41 +0000
> > From: Heime heimeborgia@protonmail.com
> > Cc: 71985@debbugs.gnu.org
> >
> > On Sunday, July 7th, 2024 at 7:02 PM, Eli Zaretskii eliz@gnu.org wrote:
> >
> > > > Date: Sun, 07 Jul 2024 18:45:12 +0000
> > > > From: Heime via "Bug reports for GNU Emacs,
> > > > the Swiss army knife of text editors" bug-gnu-emacs@gnu.org
> > > >
> > > > I was curious whether the -- lexical-binding: t -- directive is effective
> > > > when there is an arbitrary number of comment characters before it.
> > >
> > > Why do you need to know this detail?
> >
> > Because I use ;;; as highlight when using outlines.
> >
> > > > For instance, in file.el:
> > > >
> > > > ;;; file.el -- lexical-binding: t --
> > > >
> > > > This is the first line from git-rebase.el in the Magit package:
> > > >
> > > > ;;; git-rebase.el --- Edit Git rebase files -- lexical-binding:t --
> > > >
> > > > This suggests that some characters can precede the variable list. However,
> > > > it's unclear if the number of characters can be arbitrary.
> > >
> > > Above you mention "comment characters". Here you are talking only
> > > about "characters" in general. I'm confused by what you are asking
> > > about.
> >
> > Yes about the starting ;;;. But then I have also seen additional non-directive
> > descriptions before the -- lexical-binding:t -- directive.
> >
> > As the lexical definition will be around a while, it would be good to know what
> > would be valid.
>
>
> Then the ELisp manual provides this information, I think.
It could be there. But, where is it ?
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-08 12:44 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-07-08 13:21 ` Eli Zaretskii
2024-07-08 13:36 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2024-07-08 13:21 UTC (permalink / raw)
To: Heime; +Cc: 71985
> Date: Mon, 08 Jul 2024 12:44:26 +0000
> From: Heime <heimeborgia@protonmail.com>
> Cc: 71985@debbugs.gnu.org
>
> > > Yes about the starting ;;;. But then I have also seen additional non-directive
> > > descriptions before the -- lexical-binding:t -- directive.
> > >
> > > As the lexical definition will be around a while, it would be good to know what
> > > would be valid.
> >
> >
> > Then the ELisp manual provides this information, I think.
>
> It could be there. But, where is it ?
I told you before: in the node called "Selecting Lisp Dialect".
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-08 13:21 ` Eli Zaretskii
@ 2024-07-08 13:36 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-08 14:16 ` Eli Zaretskii
0 siblings, 1 reply; 9+ messages in thread
From: Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors @ 2024-07-08 13:36 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 71985
Sent with Proton Mail secure email.
On Monday, July 8th, 2024 at 1:21 PM, Eli Zaretskii <eliz@gnu.org> wrote:
> > Date: Mon, 08 Jul 2024 12:44:26 +0000
> > From: Heime heimeborgia@protonmail.com
> > Cc: 71985@debbugs.gnu.org
> >
> > > > Yes about the starting ;;;. But then I have also seen additional non-directive
> > > > descriptions before the -- lexical-binding:t -- directive.
> > > >
> > > > As the lexical definition will be around a while, it would be good to know what
> > > > would be valid.
> > >
> > > Then the ELisp manual provides this information, I think.
> >
> > It could be there. But, where is it ?
>
>
> I told you before: in the node called "Selecting Lisp Dialect".
Have gone through the GNU Emacs Lisp Reference Manual corresponding to
Emacs version 29.1.90. There is no such node.
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-08 13:36 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
@ 2024-07-08 14:16 ` Eli Zaretskii
2024-09-30 1:43 ` Stefan Kangas
0 siblings, 1 reply; 9+ messages in thread
From: Eli Zaretskii @ 2024-07-08 14:16 UTC (permalink / raw)
To: Heime; +Cc: 71985
> Date: Mon, 08 Jul 2024 13:36:36 +0000
> From: Heime <heimeborgia@protonmail.com>
> Cc: 71985@debbugs.gnu.org
>
>
>
>
>
>
> Sent with Proton Mail secure email.
>
> On Monday, July 8th, 2024 at 1:21 PM, Eli Zaretskii <eliz@gnu.org> wrote:
>
> > > Date: Mon, 08 Jul 2024 12:44:26 +0000
> > > From: Heime heimeborgia@protonmail.com
> > > Cc: 71985@debbugs.gnu.org
> > >
> > > > > Yes about the starting ;;;. But then I have also seen additional non-directive
> > > > > descriptions before the -- lexical-binding:t -- directive.
> > > > >
> > > > > As the lexical definition will be around a while, it would be good to know what
> > > > > would be valid.
> > > >
> > > > Then the ELisp manual provides this information, I think.
> > >
> > > It could be there. But, where is it ?
> >
> >
> > I told you before: in the node called "Selecting Lisp Dialect".
>
> Have gone through the GNU Emacs Lisp Reference Manual corresponding to
> Emacs version 29.1.90. There is no such node.
It was added in the current release branch, and will be in Emacs 30.1.
Meanwhile you can look at it here:
https://git.savannah.gnu.org/cgit/emacs.git/tree/doc/lispref/variables.texi?h=emacs-30#n1287
^ permalink raw reply [flat|nested] 9+ messages in thread
* bug#71985: Lexical directives at start of file
2024-07-08 14:16 ` Eli Zaretskii
@ 2024-09-30 1:43 ` Stefan Kangas
0 siblings, 0 replies; 9+ messages in thread
From: Stefan Kangas @ 2024-09-30 1:43 UTC (permalink / raw)
To: Eli Zaretskii; +Cc: 71985-done, Heime
Eli Zaretskii <eliz@gnu.org> writes:
>> Date: Mon, 08 Jul 2024 13:36:36 +0000
>> From: Heime <heimeborgia@protonmail.com>
>> Cc: 71985@debbugs.gnu.org
>>
>>
>>
>>
>>
>>
>> Sent with Proton Mail secure email.
>>
>> On Monday, July 8th, 2024 at 1:21 PM, Eli Zaretskii <eliz@gnu.org> wrote:
>>
>> > > Date: Mon, 08 Jul 2024 12:44:26 +0000
>> > > From: Heime heimeborgia@protonmail.com
>> > > Cc: 71985@debbugs.gnu.org
>> > >
>> > > > > Yes about the starting ;;;. But then I have also seen additional non-directive
>> > > > > descriptions before the -- lexical-binding:t -- directive.
>> > > > >
>> > > > > As the lexical definition will be around a while, it would be good to know what
>> > > > > would be valid.
>> > > >
>> > > > Then the ELisp manual provides this information, I think.
>> > >
>> > > It could be there. But, where is it ?
>> >
>> >
>> > I told you before: in the node called "Selecting Lisp Dialect".
>>
>> Have gone through the GNU Emacs Lisp Reference Manual corresponding to
>> Emacs version 29.1.90. There is no such node.
>
> It was added in the current release branch, and will be in Emacs 30.1.
> Meanwhile you can look at it here:
>
> https://git.savannah.gnu.org/cgit/emacs.git/tree/doc/lispref/variables.texi?h=emacs-30#n1287
I don't see a bug here, so I'm closing this bug report.
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2024-09-30 1:43 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-07 18:45 bug#71985: Lexical directives at start of file Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-07 19:02 ` Eli Zaretskii
2024-07-07 19:19 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-08 2:27 ` Eli Zaretskii
2024-07-08 12:44 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-08 13:21 ` Eli Zaretskii
2024-07-08 13:36 ` Heime via Bug reports for GNU Emacs, the Swiss army knife of text editors
2024-07-08 14:16 ` Eli Zaretskii
2024-09-30 1:43 ` Stefan Kangas
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).