emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Orgmode] [babel] Executing sh-code


From: Sébastien Vauban
Subject: [Orgmode] [babel] Executing sh-code
Date: Wed, 25 Nov 2009 15:22:07 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

Hi,

I'm trying to execute code through babel, for the first time -- I did use it
for small examples of LP, but not yet for enhanced work.

This is my first file:

--8<---------------cut here---------------start------------->8---
* Prerequisites

#+begin_src sh :session ecm
    cd ~/Personal
#+end_src
--8<---------------cut here---------------end--------------->8---

If I C-c on the command, Emacs hangs -- just doing nothing (like waiting for
something that never comes).

C-g gives this:

--8<---------------cut here---------------start------------->8---
Debugger entered--Lisp error: (quit)
  accept-process-output(#<process shell>)
  (while (progn (goto-char comint-last-input-end) (not ...)) 
(accept-process-output (get-buffer-process buffer)))
  (progn (unless (org-babel-comint-buffer-livep buffer) (error ...)) 
(set-buffer buffer) (while (progn ... ...) (accept-process-output ...)))
  (unwind-protect (progn (unless ... ...) (set-buffer buffer) (while ... ...)) 
(set-match-data save-match-data-internal (quote evaporate)))
  (let ((save-match-data-internal ...)) (unwind-protect (progn ... ... ...) 
(set-match-data save-match-data-internal ...)))
  (save-match-data (unless (org-babel-comint-buffer-livep buffer) (error ...)) 
(set-buffer buffer) (while (progn ... ...) (accept-process-output ...)))
  (save-window-excursion (save-match-data (unless ... ...) (set-buffer buffer) 
(while ... ...)))
  (org-babel-comint-in-buffer buffer (while (progn ... ...) 
(accept-process-output ...)))
  org-babel-comint-wait-for-output(#<buffer *shell*>)
  (progn (setq sh-buffer (current-buffer)) (org-babel-comint-wait-for-output 
sh-buffer))
  (if newp (progn (setq sh-buffer ...) (org-babel-comint-wait-for-output 
sh-buffer)))
  (when newp (setq sh-buffer (current-buffer)) 
(org-babel-comint-wait-for-output sh-buffer))
  (let* ((session ...) (sh-buffer ...) (newp ...)) (if (and sh-buffer ... ...) 
(setq sh-buffer nil)) (shell sh-buffer) (when newp (setq sh-buffer ...) 
(org-babel-comint-wait-for-output sh-buffer)) (setq org-babel-sh-buffers (cons 
... ...)) session)
  (save-window-excursion (let* (... ... ...) (if ... ...) (shell sh-buffer) 
(when newp ... ...) (setq org-babel-sh-buffers ...) session))
  org-babel-sh-initiate-session-by-key("ecm")
  (org-babel-sh-session-buffer (org-babel-sh-initiate-session-by-key session))
  (if (string= session "none") nil (org-babel-sh-session-buffer 
(org-babel-sh-initiate-session-by-key session)))
  (unless (string= session "none") (org-babel-sh-session-buffer 
(org-babel-sh-initiate-session-by-key session)))
  org-babel-sh-initiate-session("ecm")
  (let* ((processed-params ...) (session ...) (vars ...) (result-type ...) 
(full-body ...)) (org-babel-sh-evaluate session full-body result-type))
  org-babel-execute:sh("cd ~/Personal\n" ((:exports . "code") (:nocache) 
(:results . "replace") (:session . "ecm") (:tangle . "")))
  funcall(org-babel-execute:sh "cd ~/Personal\n" ((:exports . "code") 
(:nocache) (:results . "replace") (:session . "ecm") (:tangle . "")))
  (setq result (funcall cmd body params))
  (if (and (not arg) new-hash (equal new-hash old-hash)) (save-excursion 
(goto-char ...) (move-end-of-line 1) (forward-char 1) (setq result ...) 
(message ...) result) (setq result (funcall cmd body params)) (if (eq 
result-type ...) (setq result ...)) (org-babel-insert-result result 
result-params info new-hash) result)
  (let* ((info ...) (lang ...) (params ...) (new-hash ...) (old-hash ...) (body 
...) (result-params ...) (result-type ...) (cmd ...) result) (unless (member 
lang org-babel-interpreters) (error "Language is not in 
`org-babel-interpreters': %s" lang)) (if (and ... new-hash ...) (save-excursion 
... ... ... ... ... result) (setq result ...) (if ... ...) 
(org-babel-insert-result result result-params info new-hash) result))
  org-babel-execute-src-block(nil ("sh" "cd ~/Personal\n" ((:exports . "code") 
(:nocache) (:results . "replace") (:session . "ecm") (:tangle . "")) ""))
  (progn (org-babel-execute-src-block current-prefix-arg info) t)
  (if info (progn (org-babel-execute-src-block current-prefix-arg info) t) nil)
  (let ((info ...)) (if info (progn ... t) nil))
  org-babel-execute-src-block-maybe()
  run-hook-with-args-until-success(org-babel-execute-src-block-maybe)
  org-ctrl-c-ctrl-c(nil)
  call-interactively(org-ctrl-c-ctrl-c nil nil)
--8<---------------cut here---------------end--------------->8---

and I have an empty Shell buffer:

--8<---------------cut here---------------start------------->8---

[Wed Nov 25 15:13:10]
address@hidden ~>
--8<---------------cut here---------------end--------------->8---

What am I doing wrong?  Or have I set something wrong (or missing) in my
.emacs file?

--8<---------------cut here---------------start------------->8---
(require 'org-babel-init)

;; activate a subset of languages
(require 'org-babel-R)
(require 'org-babel-sh)

;; make pre-built helper functions available
(org-babel-load-library-of-babel)
--8<---------------cut here---------------end--------------->8---

Anything interesting in there?

BTW, my next question will be: can we have an SSH session?  Or, I guess that
it's the difficult part: is there a way to ask the password and go on with my
commands?

Best regards,
  Seb

-- 
Sébastien Vauban





reply via email to

[Prev in Thread] Current Thread [Next in Thread]