emacs-devel
[Top][All Lists]
Advanced

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

Re: [ELPA] New package: ob-haxe


From: Stefan Monnier
Subject: Re: [ELPA] New package: ob-haxe
Date: Mon, 18 Jan 2021 11:31:50 -0500
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/28.0.50 (gnu/linux)

>> I'd be happy to do that, but just to be sure, I'd like to understand
>> something first.  AFAICT, all other `ob-<LANG>.el` files are currently
>> bundled with Org.
>
> Thanks for responding. No, actually there are many that are maintained
> outside of Org.  If you search github for "org babel" some will come
> up. I see 46 packages that start with "ob-" in my `list-packages'.
>
> Of the ones that are bundled with Org, there are some that are
> considered "core" and others that are "contrib." I offered ob-haxe on
> the Org list and the maintainers said they didn't think it was
> appropriate for core and also that they were moving to shift more of
> the "contrib" language integrations out of the Org repo and into
> separate packages and suggested GNU ELPA for this.

Good, thanks.

>> Personally, I'd tend to consider that the
>> language-specific info for org-babel should belong with the major mode
>> (just like the language-specific support for indentation, highlighting,
>> flymake, imenu, etc.. belong to it).
>> [ Side note: I'm not sufficiently familiar with org-babel to know if
>>   bundling the info with the major mode is currently technically
>>   realistic.  ]
>
> I don't know if there's a technical problem with that approach, but
> I'm not aware of any case where it's done that way. All of the Org
> Babel language integrations I've seen have been bundled with Org or
> distributed as a separate package.
>
> I wasn't aware that usually language major modes came with more than
> indentation and highlighting.

Historically, major modes came with very little support, and over time
this set of supported facilities grows.

E.g. font-lock came with its own support for some major modes, and then
it quickly became clear that font-lock support for a particular language
is better placed in the major mode than in font-lock.el.

The same applies to most other such features: it's impractical for
flymake/flycheck/company/org-babel/... to come with support for all
languages, but it's also inconvenient for the user to have to install

    FOO
    ob-FOO
    company-FOO
    flymake-FOO
    younameit-FOO

before Emacs provides adequate support for the language FOO.  So as much
as possible, I think it makes sense to include those things along with
the language's major mode.

> If there's more than one package to choose from for a language's major
> mode, would the Org Babel functions have to be included in both of
> them?

Good question.  As a general rule "more than one package to choose from
for a language's major mode" is itself a problem (especially because
more often than not, it means none of the options are really maintained
and the choice is really between different sets of shortcomings).

So, IIUC you're saying that there is no main `haxe-mode` anyway into
which we could integrate `ob-haxe`?  If so, and since Org doesn't want
it, we should add it as a separate package, indeed.

[ Side note: if noone has come up to develop&maintain "the one and only"
  haxe-mode (which combines the good parts of the existing haxe modes),
  would you be willing to do that?  ]


        Stefan




reply via email to

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