Nick Dokos <nicholas.do...@hp.com> schrieb:
>Tom Regner <t...@goochesa.de> wrote: > >> Hi, >> >> Panruo Wu <p...@mymail.mines.edu> writes: >> >> > Dear list, >> > >> > >> > #+begin_src sh=C2=A0 >> > for np in {1..32} >> > do >> > =C2=A0 =C2=A0 echo $np >> > done >> > #+end_src >> > >> > when executing, the output only shows >> > {1..32} >> > which is clearly not I want.. >> > >> > After some investigation, I found that orgmode >> > uses "sh" that cannot understand the for loop above. >> > >> > My question is, how can I suggest orgmode to use >> > "bash" to execute shell script? >> > >> > I tried :shebang #!/bin/bash but it does not work >> >> I have the following in my config: >> >> --------------------%<-------------------------- >> I really like org-babel to use zsh >> #+begin_src emacs-lisp >> (setq org-babel-sh-command "zsh") >> #+end_src >> --------------------%<-------------------------- >> >> It is apparently not possible to set this variable via #+BIND: to >only >> change this for one code block, at least I did not succeed to do so >in >> my attempts to do so -- but maybe I just didn't read enough of the >> documentation to /get it right/. >> > >You are right that it is not possible: #+BIND is effective only when >you >are exporting - basically, people wanted to change various setting on >export, and adding options for each and every one was too much, so >Carsten implemented BIND as a general mechanism for that. But it does >not apply to anything else; in particular, code block evaluation is >completely separate. > >But you can use general emacs mechanisms to set it for a particular >file: >that's what file local variables are all about: > >(info "(emacs)Local Variables in Files") > >Nick Ah, I didn't know that about BIND; but I do know file local variables. I don't need them in this case, as I always want to use zsh. And the OP asked for a different shell for one code block only, not the whole file. But I'm often bitten by the distinction between export and tangling -- :padline, :shebang come to mind, where I expected org-babel to honour the setting in both cases. well you live and learn: -) And org-mode truly is a joy to use, a marvelous piece of software, without which I couldn't do all my work im emacs. Tom > >> I don't know, if zsh||bash instead of sh breaks any assumptions >org-mode >> makes about the environment in which sh code blocks are executed; up >> until now it works like a charm. >> >> Kind regards, >> Tom >> -- http://www.tomsdiner.de xmpp: t...@sec.goochesa.de