forked from mirrors/org-mode
Merge branch 'master' into tangled-emacs-init
This commit is contained in:
commit
52570eb3c4
|
@ -1,5 +1,5 @@
|
|||
#+TITLE: org-babel --- facilitating communication between programming languages and people
|
||||
#+SEQ_TODO: TODO PROPOSED STARTED | DONE DEFERRED REJECTED
|
||||
#+SEQ_TODO: PROPOSED TODO STARTED | DONE DEFERRED REJECTED
|
||||
#+OPTIONS: H:3 num:nil toc:t
|
||||
#+STARTUP: oddeven hideblocks
|
||||
|
||||
|
@ -25,11 +25,10 @@ In this document:
|
|||
- The [[* Sandbox][Sandbox]] :: demonstrates much of the early/basic functionality
|
||||
through commented source-code blocks.
|
||||
|
||||
Also see the [[file:library-of-babel.org][Library of Babel]] an extensible collection of ready-made
|
||||
Also see the [[file:library-of-babel.org][Library of Babel]], an extensible collection of ready-made
|
||||
and easily-shortcut-callable source-code blocks for handling common
|
||||
tasks.
|
||||
|
||||
|
||||
* Introduction
|
||||
|
||||
Org-Babel enables *communication* between programming languages and
|
||||
|
@ -197,7 +196,7 @@ would then be [[#sandbox][the sandbox]].
|
|||
#+end_src
|
||||
|
||||
|
||||
* Tasks [27/42]
|
||||
* Tasks [27/43]
|
||||
** TODO support for working with =*Org Edit Src Example*= buffers [2/4]
|
||||
*** TODO optionally evaluate header references when we switch to =*Org Edit Src*= buffer
|
||||
That seems to imply that the header references need to be evaluated
|
||||
|
@ -329,6 +328,17 @@ languages which almost always produce graphical output should set
|
|||
results in the buffer. Then if there is a combination of =silent= and
|
||||
=file= =:results= headers we could drop the results to a temp buffer
|
||||
and pop open that buffer...
|
||||
** TODO =\C-c \C-o= to open results of source block
|
||||
by adding a =defadvice= to =org-open-at-point= we can use the common
|
||||
=\C-c \C-o= keybinding to open the results of a source-code block.
|
||||
This would be especially useful for source-code blocks which generate
|
||||
graphical results and insert a file link as the results in the
|
||||
org-mode buffer. (see [[* figure out how to handle graphic output][TODO figure out how to handle graphic output]]).
|
||||
This could also act reasonably with other results types...
|
||||
|
||||
- file :: use org-open-at-point to open the file
|
||||
- scalar :: open results unquoted in a new buffer
|
||||
- tabular :: export the table to a new buffer and open that buffer
|
||||
|
||||
** TODO Finalise behaviour regarding vector/scalar output
|
||||
*** DONE Stop spaces causing vector output
|
||||
|
@ -1919,20 +1929,11 @@ This could probably be added to [[file:lisp/org-babel-script.el][org-babel-scrip
|
|||
(see [[* file result types][file result types]])
|
||||
|
||||
|
||||
* Bugs [17/23]
|
||||
* Bugs [18/23]
|
||||
** TODO Allow source blocks to be recognised when #+ are not first characters on the line
|
||||
I think Carsten has recently altered the core so that #+ can have
|
||||
preceding whitespace, at least for literal/code examples. org-babel
|
||||
should support this.
|
||||
** PROPOSED make :results replace the default?
|
||||
I'm tending to think that appending results to pre-existing results
|
||||
creates mess, and that the cleaner `replace' option should be the
|
||||
default. E.g. when a source block creates an image, we would want
|
||||
that to be updated, rather than have a new one be added.
|
||||
** PROPOSED external shell execution can't isolate return values
|
||||
I have no idea how to do this as of yet. The result is that when
|
||||
shell functions are run w/o a session there is no difference between
|
||||
the =output= and =value= result arguments.
|
||||
|
||||
** TODO non-orgtbl formatted lists
|
||||
for example
|
||||
|
@ -1944,10 +1945,11 @@ for example
|
|||
|
||||
#+resname: this-doesn't-match-orgtbl
|
||||
|
||||
|
||||
** TODO collapsing consecutive newlines in string output
|
||||
|
||||
#+srcname: multi-line-string-output
|
||||
#+begin_src ruby :results replace
|
||||
#+begin_src ruby :results output
|
||||
"the first line ends here
|
||||
|
||||
|
||||
|
@ -1956,15 +1958,35 @@ for example
|
|||
even a third"
|
||||
#+end_src
|
||||
|
||||
#+resname:
|
||||
: the first line ends here
|
||||
: and this is the second one
|
||||
: return even a third
|
||||
#+resname: multi-line-string-output
|
||||
|
||||
|
||||
** TODO cursor movement when evaluating source blocks
|
||||
E.g. the pie chart example. Despite the save-window-excursion in
|
||||
org-babel-execute:R. (I never learned how to do this properly: org-R
|
||||
jumps all over the place...)
|
||||
|
||||
** PROPOSED external shell execution can't isolate return values
|
||||
I have no idea how to do this as of yet. The result is that when
|
||||
shell functions are run w/o a session there is no difference between
|
||||
the =output= and =value= result arguments.
|
||||
|
||||
Yea, I don't know how to do this either. I searched extensively on
|
||||
how to isolate the *last* output of a series of shell commands (see
|
||||
[[* last command for
|
||||
shells][last command for shells]]). The results of the search were basically
|
||||
that it was not possible (or at least not accomplish-able with a
|
||||
reasonable amount of effort).
|
||||
|
||||
That fact combined with the tenancy to all ways use standard out in
|
||||
shell scripts led me to treat these two options (=output= and =value=)
|
||||
as identical in shell evaluation. Not ideal but maybe good enough for
|
||||
the moment.
|
||||
|
||||
In the `results' branch I've changed this so that they're not quite
|
||||
identical: output results in raw stdout contents, whereas value
|
||||
converts it to elisp, perhaps to a table if it looks tabular. This is
|
||||
the same for the other languages. [Dan]
|
||||
|
||||
** DEFERRED weird escaped characters in shell prompt break shell evaluation
|
||||
E.g. this doesn't work. Should the shell sessions set a sane prompt
|
||||
|
@ -1994,6 +2016,13 @@ even a third"
|
|||
the user's regular emacs init. I can't think of a way for us to
|
||||
set this automatically, and we are SOL without a regexp to match
|
||||
the prompt.
|
||||
** DONE make :results replace the default?
|
||||
I'm tending to think that appending results to pre-existing results
|
||||
creates mess, and that the cleaner `replace' option should be the
|
||||
default. E.g. when a source block creates an image, we would want
|
||||
that to be updated, rather than have a new one be added.
|
||||
|
||||
I agree.
|
||||
** DONE ruby evaluation not working under ubuntu emacs 23
|
||||
With emacs 23.0.91.1 on ubuntu, for C-h f run-ruby I have the
|
||||
following, which seems to conflict with [[file:lisp/langs/org-babel-ruby.el::let%20session%20buffer%20save%20window%20excursion%20run%20ruby%20nil%20session%20current%20buffer][this line]] in org-babel-ruby.el.
|
||||
|
@ -2652,12 +2681,14 @@ out...
|
|||
table.first.join(" - ")
|
||||
#+end_src
|
||||
|
||||
: "1 - 2 - 3"
|
||||
#+resname:
|
||||
: 1 - 2 - 3
|
||||
|
||||
#+begin_src python :var table=sandbox :results replace
|
||||
#+begin_src python :var table=sandbox
|
||||
table[0]
|
||||
#+end_src
|
||||
|
||||
#+resname:
|
||||
| 1 | 2 | 3 |
|
||||
|
||||
#+begin_src ruby :var table=sandbox :results replace
|
||||
|
|
Loading…
Reference in a new issue