DONE Clarify situation re. org-babel-interpreters, org-babel-tangle-langs, src-lang-modes
- State "DONE" from "STARTED"
- State "STARTED" from "TODO"
- State "TODO" from ""
implementation
removed all language lists (`org-babel-interpreters' and `org-babel-tangle-langs') from Org-babel. We no longer explicitly check if languages are on lists of supported languages, but rather simply check that the appropriate functions (e.g. `org-babel-execute:sh') are defined at the times when they are needed.
changes
- Instead of adding anything to external variables, we are going to rely on the existing header argument system to hold information on commentability and tangling of languages
-
From now on users will have to explicitly request comments in
tangled code by setting the
:comments
header argument toyes
. - We still want to be able to associate languages with file extensions, now done with `org-babel-tangle-lang-exts'. This is the only remaining list of languages used by Org-babel.
requirements
It seems that this has got overly complicated; time for some simplification and harmonisation.
See also bug Language mappings in org-src-lang-modes should be honoured by babel
-Lets just subvert org-src-lang-modes and use it for everything- (not actually making any changes to this variable). It would now hold
- language major mode
- language extension
Then when we need to check whether or not the language lang
is
executable we can just see if we have a org-babel-execute:lang
function.
This can happen after the merge of our code into the main body of org-mode to make the shared variable a little bit more natural.