Ihor Radchenko <[email protected]> writes:

>> [...]  Would this be more complicated than `(setq-local
>> org-confirm-babel-evaluate nil)` executed when the user picks "yes
>> for all code blocks in this buffer"?
>
> I was only referring to the specific email I linked to.
> See "What we can do ..."
>
> What I proposed there is indeed more complicated - a superset of
> buffer-local org-confirm-babel-evaluate. In any case, it was about
> adding a new choice when confirming evaluation, not replacing the
> defaults.

Thanks!  I will study it in detail.

My idea was to simply add "yes to all" for the current file or session,
as a little convenience for when the Emacs config breaks, etc.  No
rocket science refactoring. :)

> Respecting disabled languages clashes with the idea of autoloads.
> On the other hand, if some third-party library does provide autoloads,
> it is already not respected anyway...

True that!

> So, we should probably deprecate org-babel-load-languages and instead
> fully switch to lazy loading. At the end, its main purpose is speeding
> up loading Org, which lazy loading achieves anyway. People generally
> ever disable languages in org-babel-load-languages when they are loaded
> by default but not being used.

Yes, yes, yes!  Ditto the `org-babel-do-load-languages' monstrosity.

> I think I prefer 2 over 1 because putting an autoload cookie on several
> defuns risks that some cookies may be forgotten, creating subtle bugs.
>
> (3) is fine.

To summarize:

Before every `org-babel-.*:LANG' call, we check if `org-babel-load:LANG'
is bound, and if so, we call it.  (Do we expect non-nil return?)  If not
bound, we try to require `ob-LANG'.  If that fails, then we error out.
Both `org-babel-load-languages' and `org-babel-do-load-languages' become
deprecated, where the latter will do nothing.

Do I have that right?

Rudy
-- 
There are only two hard things in computer science: cache invalidation,
naming things, and off-by-one errors.

--- Phil Karlton, Leon Bambrick

Rudolf Adamkovič <[email protected]> [he/him]
http://adamkovic.org

Reply via email to