From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Sebastien Vauban" Subject: Re: [babel] Specified colnames Date: Sat, 27 Apr 2013 18:06:51 +0200 Message-ID: <86li84vtyc.fsf@somewhere.org> References: <86y5cuxfro.fsf@somewhere.org> <87obdp0ybb.fsf@gmail.com> <86ip3w957l.fsf@somewhere.org> <87fvz0zslt.fsf@gmail.com> <86a9p8928u.fsf@somewhere.org> <871uaffk5g.fsf@gmail.com> <86sj2nv8de.fsf@somewhere.org> <878v4c7pwp.fsf@gmail.com> <86wqrq4u3r.fsf@somewhere.org> <87txms2f0f.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Return-path: List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org-mXXj517/zsQ@public.gmane.org To: emacs-orgmode-mXXj517/zsQ@public.gmane.org Eric, Eric Schulte wrote: >> Here the patch you asked for. > > I've applied this patch. Thanks a lot for reviewing my test, and fixing it! > Please review the changes I had to make for it to work correctly. Your > version wasn't working because when org-babel-execute-src-block was called > the point was not inside of the code block. Isn't there something to fix, in order to avoid an uncontrolled error to be generated, such as the one I had? > My changes search forward in the text to place the point at the beginning of > the code block before executing. OK! > I also had to uppercase RESULTS for the string equality to return true. OK. That's true I've set: --8<---------------cut here---------------start------------->8--- ;; keep lower-case (setq org-babel-results-keyword "results") --8<---------------cut here---------------end--------------->8--- since we've got nice keyword fontification -- as Carsten once said, he only choose uppercase keywords, a while ago, when it was much more difficult to clearly view the distinction between text, code and results (before the nice fontification we now have). Otherwise, he'd have chosen lower-case keywords. Because of that feature, which I completely had out of my mind, I'm thinking at another thing that could help reduce the size of the tests. Currently, we copy once the code block, and once the code block + its results. Maybe we could have a function to locate (via a regexp for #+results/#+RESULTS) the results, and only check (for strict or loose equality [1]) on the results. So, something along those lines: --8<---------------cut here---------------start------------->8--- (should (equal (results-part (org-babel-execute-src-block "code block only")) "results only")) --8<---------------cut here---------------end--------------->8--- No duplication of the input... Does this make sense? > In the future more flexible tests (such as regular expression searches) > rather than strict equality should be preferable. > > Thanks for contributing this test! My pleasure. Best regards, Seb [1] Regexp match -- Sebastien Vauban