Bastien writes: >> Can we have some sort of a check while loading Org that picks up these >> shadowed variables and "deletes" them? > > I think Achim has been thinking about some incantation for this > (at install time). Maybe if this can be done after installation, > we could document it somewhere... not really sure.
It would have to be done each time Org is loaded. Unfortunately Emacs doesn't provide an interface for removing such definitions, so you'd have to traverse a number of not-too-well documented data structures to get rid of them. I'm still not sure I found all of these nor if there are adverse effects of doing that. Eric Frage (IIRC) was testing a rough version of what I was trying to do, he reported he was seeing problems that he wanted to investigate further. Now, with the dust from all the other changes settling, we might pick up where we left before: --8<---------------cut here---------------start------------->8--- ;; ;; Kill our ancestors ;; ;; clean load-path (setq load-path (delq nil (mapcar (function (lambda (p) (unless (string-match "lisp/org$" p) p)) load-path))) ;; remove property list to defeat cus-load and remove autoloads (mapatoms (function (lambda (s) (let ((sn (symbol-name s))) (when (string-match "^\\(org\\|ob\\|ox\\)-?" sn) (setplist s nil) (when (autoloadp s) (unintern s))))))) (add-to-list 'load-path "/path/to/org") (load "org-loaddefs.el" nil nil 'nosuffix) --8<---------------cut here---------------end--------------->8--- This assumes it is run before any Org functions have been used and makes no attempt to check if that's true. Another unverified assumption is that nothing has polluted the namespaces that Org uses. Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Wavetables for the Terratec KOMPLEXER: http://Synth.Stromeko.net/Downloads.html#KomplexerWaves