Ok, I am giving it a shot. Here is my setup: ;;;;;;; org path (defvar org-load-path (list (file-name-as-directory (expand-file-name "org" starter-kit-dir))) "List of directories to find org-files that `org-babel-load-file' can load code from") (defun org-require (feature) "Load a FEATURE from an org-file. FEATURE is a symbol, and it is loaded from an org-file by the name of FEATURE.org, that is in the `org-load-path'. The FEATURE is loaded from `org-babel-load-file'." (let ((org-file (concat (symbol-name feature) ".org")) (path)) ;; find the org-file (catch 'result (loop for dir in org-load-path do (when (file-exists-p (setq path (expand-file-name org-file dir))) (throw 'result path)))) (let ((default-directory (file-name-directory path))) (org-babel-load-file path)))) (org-require 'org-ref) (org-require 'doi-utils) (org-require 'org-show) In the only directory I define in org-load-path, I put org-show.org, org-ref.org, and doi-utils.org, and the code above is in an init file. When I load emacs, for these files, so far, it works great. They are simple files that only tangle to one .el file so far. John ----------------------------------- John Kitchin Professor Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 http://kitchingroup.cheme.cmu.edu On Sun, Jul 27, 2014 at 5:50 PM, Bastien wrote: > Hi John and Rainer, > > Rainer M Krug writes: > > >> What if we created a new directory in the repository called "org" which > >> contains these kinds of files? It would be analogous to the "lisp" > >> directory. I don't think we need to have both ob-R.org and ob-R.el in > the > >> repository. > > > > I think that would be a very good idea for certain modules like your > > org-ref and ob-R I am working on. > > Maybe you could use such a "load-flow" for a while, see if it is > robust enough, and if so, we could move on and have it in the repo? > > My gut feeling is that it will bring some issues, so experimenting > before would be nice. > > -- > Bastien >