emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Major mode of orgweb/publish.sh?


From: Ruijie Yu
Subject: Re: Major mode of orgweb/publish.sh?
Date: Fri, 14 Apr 2023 16:19:26 +0800
User-agent: mu4e 1.9.22; emacs 30.0.50

Ihor Radchenko <yantar92@posteo.net> writes:

> Ruijie Yu via "General discussions about Org-mode."
> <emacs-orgmode@gnu.org> writes:
>
>> What is the expected major mode for orgweb/publish.sh?  When I open it,
>> I see it is in `shell-script-mode'.  This is what I see in
>> orgweb/publish.sh:
>>
>> --8<---------------cut here---------------start------------->8---
>> #!/usr/bin/env sh
>>
>> ":" ; exec emacs --quick --script "$0" -- "$@" # -*- mode: emacs-lisp; 
>> lexical-binding: t; -*-
>> ...
>
> The mode is technically shell-script. The file is using shell script
> magic to write foreign language (Elisp) script inline.
>
>> When I remove the empty line 2 and run `normal-mode', the file now opens
>> in `emacs-lisp-mode'.  I have a sneaking suspicion that
>> `emacs-lisp-mode' is the expected major mode for this file, because
>> there is also the `lexical-binding' variable declaration on the property
>> line, which has no effects when the major mode is shell.
>
> You can do either way, depending on which part of the script you want to edit.

I tried to actually compare the two versions, and found out that the
lexical-binding does nothing at all during the script execution,
regardless of whether there is an empty line or not.  Is this a bug or
an expected behavior?

FTR, when opening the file in a buffer, the property line in a file
without empty line is properly recognized, whereas in the file with
empty line it is not recognized.

-- 
Best,


RY



reply via email to

[Prev in Thread] Current Thread [Next in Thread]