Browse Source

More notes on org-src-mode patch and ESS

Dan Davison 16 years ago
parent
commit
a79a7f9e6a
1 changed files with 22 additions and 1 deletions
  1. 22 1
      org-babel.org

+ 22 - 1
org-babel.org

@@ -391,7 +391,7 @@ org-feed.el has a (require 'sha1) and org-publish.el uses it too.
 -- Bernt
 #+end_quote
 
-** TODO support for working with =*Org Edit Src Example*= buffers [4/6]
+** TODO support for working with =*Org Edit Src Example*= buffers [4/7]
 *** STARTED Patch against org source. 
     I've worked on several related changes to source code edit buffer
     behaviour in the org core.  My current patch (below) does the
@@ -502,6 +502,27 @@ org-feed.el has a (require 'sha1) and org-publish.el uses it too.
       a good thing, because one should not leave active edit buffers
       around: you should always have exited with C-c ' first.
 
+**** TODO Doesn't currently work with ess-load-file
+     ess-load-file contains these two lines
+#+begin_src emacs-lisp
+  (let ((source-buffer (get-file-buffer filename)))
+    (if (ess-check-source filename)
+	(error "Buffer %s has not been saved" (buffer-name source-buffer)))
+#+end_src
+
+which have the effect of, in the course of saving, deleting the buffer
+`source-buffer', and then attempting to use it subsequently. The only
+solution I have thought of so far is submitting a patch to ess which
+would, e.g. reverse the order of those two lines (perform the error
+check outside the let binding).
+
+In fact, even after doing that there are further problems generated by
+the fact that the edit buffer has an associated filename for which the
+file doesn't exist. I think this worked OK in the past when the edit
+buffer had no associated filename. So this is a problem which needs
+addressing. Maybe defadvice could be used on ess functions where
+necessary to make org/org-babel play nicely with ess?
+
 *** DONE name edit buffer according to #+srcname (and language?)
     See above patch agains org.
 *** DONE optionally evaluate header references when we switch to =*Org Edit Src*= buffer