1
0
mirror of https://git.savannah.gnu.org/git/emacs/org-mode.git synced 2024-12-12 09:28:11 +00:00
Commit Graph

310 Commits

Author SHA1 Message Date
Dan Davison
ba4d698fa1 babel: Provide notification of errors during code execution
This deals with external process :results value mode for R, ruby,
python, perl and clojure: if the shell process has a non-zero exit
code, a buffer containing stderr is displayed.
2010-03-05 11:32:18 +00:00
Dan Davison
4e9a2d4efd babel: Fix bug in shell-command-on-region
Prior to this commit,

OUTPUT-BUFFER nil
REPLACE 'replace
ERROR-BUFFER 'current-buffer

resulted in stdout going with stderr to the current buffer, contra the
docstring. With this change stdout is discarded in this case. The
docstring does stipulate that stdout always should go to *Shell
Command Output*; this change does not make that happen in this case.
2010-03-05 11:32:11 +00:00
Dan Davison
05986e95ea babel: Introduce org-babel copy of shell-command-on-region
At this commit, org-babel-shell-command-on-region is a direct copy of
shell-command-on-region. In addition to switching to use the org-babel
version, we change the argument passed so that they agree with the
docstring of s-c-o-r.

Despite the change in arguments, the same behaviour results because
s-c-o-r does not behave as documented in emacs23. Future commits will
be able to fix these bugs in the org-babel version, as necessary.
2010-03-05 11:32:04 +00:00
Dan Davison
ed7b8bfcca babel: clojure: read results remotely when necessary 2010-03-03 22:00:08 +00:00
Dan Davison
54c7b04734 babel: clojure: use shell-command-on-region 2010-03-03 21:59:32 +00:00
Dan Davison
a8c1a49b77 babel: Read perl results remotely when necessary. 2010-03-03 16:11:04 +00:00
Dan Davison
9c36b20a25 babel: make output file links track changed directory 2010-03-02 14:51:01 +00:00
Dan Davison
486bc2fe64 babel: Use file-name-as-directory to form default-directory 2010-03-02 14:51:01 +00:00
Eric Schulte
f0f511916a babel: org-babel-oz.el now uses unix-style newline characters 2010-03-01 08:31:05 -07:00
Dan Davison
44c8487e2d babel: fix bug with remote working directory
This change fixes a bug in the remote execution branch, involving the
way that org-babel-tramp-handle-call-process-region is used
to (conditionally) handle calls to call-process-region. When
org-babel-execute-src-block called itself recursively (e.g. when
resolving a reference to another src block), a circular binding of
symbols and values resulted.
2010-02-27 18:19:18 -05:00
Dan Davison
322fe431c5 babel: Write R input data remotely when necessary. 2010-02-27 18:19:09 -05:00
Eric Schulte
a705bf5925 babel: wrapped org-babel-make-remote-file-name' in conditional as org-babel-maybe-remote-file' 2010-02-27 18:18:37 -05:00
Dan Davison
24cdeea122 babel: read remote results from remote files
When using ':results value' in certain situations, results are written
to file by the foreign language process and subsequently read from
file by emacs into an elisp table structure. If the foreign language
process is running remotely, then the results are written
remotely. These changes ensure that in that case, an appropriate
remote file name is constructed to read the remote data.
2010-02-27 14:14:08 -05:00
Dan Davison
2056d7d419 babel: Allow shell-command-on-region to execute remotely
These changes solve two problems: both are discussed in the following thread

http://lists.gnu.org/archive/html/tramp-devel/2010-02/msg00025.html

of which a summary follows.

Firstly, shell-command-on-region does not work with tramp in the same
way that shell-command does. I.e. whereas

(let ((default-directory "/user@remote-host:"))
  (shell-command "hostname" t))

gives the remote hostname,

(let ((default-directory "/user@remote-host:"))
  (shell-command-on-region (point) (mark) "hostname" t))

does not.

The reason is that shell-command-on-region calls call-process-region,
which does not use a tramp handler for remote files. However, such a
file handler does exist (unused) in the tramp sources:
tramp-handle-call-process-region. There is a slight problem in that
there is a bug in that function definition in current tramp (which has
persisted because the function is not normally used).

Therefore, we define an org-babel version of
tramp-handle-call-process-region which fixes the bug, and we bind
call-process-region to org-babel-tramp-handle-call-process-region for
the duration of org-babel-execute-src-block.
2010-02-27 14:14:08 -05:00
Dan Davison
b3d5a1eb39 babel: working directories and remote execution
This introduces a new header argument :dir. For the duration of source
block execution, default-directory is set to the value of this header
argument. Consequences include:

- external interpreter processes run in that directory
- new session processes run in that directory (but existing ones are unaffected)
- relative paths for file output are relative to that directory

The name of a directory on a remote machine may be specified with
tramp syntax (/user@host:path), in which case the interpreter
executable will be sought in tramp-remote-path, and if found will
execute on the remote machine in the specified remote directory.
2010-02-27 14:14:08 -05:00
Dan Davison
5f8a57ad48 babel: change implementation of external R process evaluation
Use shell-command-on-region, bringing R into line with ruby, python,
clojure, shell. In addition to consistency (and perhaps efficiency),
this will also be preferable in the case of a remote R process because
it means that transfer of the input to the remote process is dealt
with automatically by tramp.
2010-02-27 14:14:08 -05:00
Eric Schulte
522f30bc9f babel: tiny doc tweak 2010-02-27 14:14:07 -05:00
Dan Davison
cc7052540b babel: allow point to move to end of comint buffer 2010-02-27 14:14:07 -05:00
Dan Davison
283ebcb43b babel: New const variable org-babel-header-arg-names
This is used when checking for babel header args in org properties.
2010-02-27 14:14:07 -05:00
Dan Davison
82d7585810 babel: Tighten result and source line regexps
Anchored to beginning of line, with optional whitespace indenting.
2010-02-25 17:58:46 -05:00
Dan Davison
5833fbd358 babel: Make colnames header arg expect use "yes" for true. 2010-02-25 17:58:46 -05:00
Dan Davison
4064c31fa7 babel: get rid of unused variable 2010-02-25 17:58:46 -05:00
Dan Davison
fc693eb5e2 babel: treat python tuples as lists 2010-02-25 17:58:45 -05:00
Dan Davison
a95c05773e babel: Fix unquoting of strings
Before this change we have

 #+begin_src ruby :results value :session
 ["1", "3"]
 #+end_src

 #+results:
 : 1", "3

 After, we have

 #+begin_src ruby :results value :session
 ["1", "3"]
 #+end_src

 #+results:
 | 1 | 3 |
2010-02-25 17:58:45 -05:00
Dan Davison
6f62066ac6 babel: Fix export bug.
Introduced at 747f425f00
2010-02-25 15:12:47 -05:00
Dan Davison
eb521ae95e Remove org-R from contrib
org-babel should be used to execute R code from org-mode.
2010-02-24 12:42:48 -05:00
Eric Schulte
8625e5c0bc babel: gnuplot can now return it's string output -- when session is set to "none" 2010-02-23 08:16:25 -07:00
Dan Davison
a2d94ffc8e babel: prevent quoting of strings in shell variables 2010-02-23 07:31:43 -07:00
Carsten Dominik
6a5f6deaac Fix bug in org-git-link.el.
Patch by David Maus
2010-02-20 20:34:39 +01:00
Eric Schulte
753d1402d8 babel: avoid infinite loop in org-babel-execute-buffer -- Thanks to Stephan Schmitt 2010-02-16 13:34:09 -07:00
Eric Schulte
574f1b590e babel: adding support for the OZ programming language -- Thanks to Torsten Anders!
For information on the OZ programming language see
  http://www.mozart-oz.org/, for information on using Org-babel with
  OZ see the OZ specific documentation on Worg at
  http://orgmode.org/worg/org-contrib/babel/languages/org-babel-doc-oz.php
2010-02-16 13:28:08 -07:00
Dan Davison
1e96482389 babel: check pdf file existence before deleting 2010-02-15 10:29:56 -07:00
Dan Davison
747f425f00 babel: only add srcname property for source blocks which actually have names 2010-02-15 10:07:23 -07:00
Eric Schulte
692c569215 babel: smarter `org-babel-ref-split-args' -- fixes bug parsing indexed function-style args 2010-02-14 11:48:28 -07:00
Eric Schulte
25f76ffa44 babel: now including source code block arguments w/source name on export
This change provides for better export of named source-code blocks,
  with specific support for more attractive html export.  The arguments
  are included with the source code name, and both the source code name
  and code body are wrapped in a div to support styling with css.  For
  example the following CSS can be used to associate a source-code block
  name with it's code body, and to slightly indent the body.

.org-src-container {
  border-left: 4px solid gray;
  padding: 0.5em 0.5em 0.5em 1em; }
  .org-src-container pre {
    margin-left: 1em; }
2010-02-10 13:34:00 -07:00
Carsten Dominik
9196dc9bbe Fix list export in org-export-generic
Patch by Robert Goldman
2010-02-10 11:36:58 +01:00
Eric Schulte
2531d704c0 babel: now able to reference links as results 2010-02-09 20:30:28 -07:00
Eric Schulte
db1fe2a619 babel: greatly simplified block exportation 2010-02-09 19:09:19 -07:00
Eric Schulte
df418de954 babel-clojure: slight change allowing strings to be passed in as variables 2010-02-08 13:17:37 -07:00
Eric Schulte
2829f77e2b babel: org-babel-load-file no longer fails when `file-truename' returns nil 2010-02-08 13:17:06 -07:00
Eric Schulte
b59ebe6ec2 babel: org-babel-load-file will no longer strip portions of file names which appear to be extensions 2010-02-07 11:42:55 -07:00
Eric Schulte
a60a83fbb6 babel: better handling of table in shell scripts 2010-02-07 10:17:20 -07:00
Eric Schulte
047ac8ab1b babel: shell command used by org-babel-sh is now configurable using the org-babel-sh-command variable 2010-02-07 09:36:56 -07:00
Eric Schulte
e4bc599745 org-babel-latex: allow pdf/png generation directly from latex source blocks 2010-02-06 09:54:10 -07:00
Eric Schulte
3ce4962447 babel: added :shebang and :comments header arguments for finer control over tangled output 2010-02-05 19:04:50 -07:00
Eric Schulte
131441dbd2 babel: load-file works for symlinks -- Thanks to Martin Kühl 2010-02-04 09:43:11 -07:00
Carsten Dominik
fd6cc29909 Make org-export-generic.el provide org-export-generic
This is in addition to providing org-generic.
2010-02-04 07:33:27 +01:00
Christian Egli
04c86c50c7 Add more documentation and handle non-standard diary-file location 2010-02-01 10:37:19 +01:00
Carsten Dominik
9321460f3e Make org-exp-bibtex.el require org and org-exp 2010-01-31 17:53:28 +01:00
Dan Davison
21849af58b babel: can now tangle files without extensions 2010-01-28 09:58:52 -07:00