Dan Davison <dandavis...@gmail.com> writes:

> [...]
>>> 2. It should be possible somehow to include the options together with
>>>    the shebang, or to replace :shebang with a more general "preamble"
>>>    concept. Or to make :shebang accept a code block as its value.
>>> 
>>> --------------------------------------------
>>> #+BABEL: :var A=13
>>> #+BABEL: :var B=14
>>> 
>>> #+header: :shebang #!/bin/bash #$ -cwd
>>> #+begin_src sh :tangle script.sh
>>> # empty
>>> #+end_src
>>> --------------------------------------------
>>
>> Similar to above - should work, but now the options for torque are
>> hidden in the shebang - which is not to nice, but should work - although
>> changing the options is not nearly as nice as if the options are in the
>> source block.
>
> It seems that we should be able to put the preamble lines in a src
> block. This works, but only after making an alteration to the sbe
> function (below) so that it will allow multiple line results. Maybe Eric
> will have some ideas here.
>

I'm happy for your patch below to be applied, although maybe replace
org-babel-table-truncate-at-newline with org-babel-trim, so that
leading/trailing newlines are still removed.  It would be nice to retain
org-babel-table-truncate-at-newline if we could tell which evaluations
were headed for a variable -- although this behavior doesn't seem worth
the addition of a new argument to sbe.

>
> ---------------------------------------
> #+BABEL: :var A=13
> #+BABEL: :var B=14
>
> #+srcname: sheb
> #+begin_src sh :results output
> echo '#!/bin/bash'
> echo '#$ -cwd'
> #+end_src
>
> #+header: :shebang (sbe sheb)
> #+begin_src sh :tangle script.sh
> # empty
> #+end_src
> ---------------------------------------
>
>
>        (setq source-block (symbol-name source-block)))
> -    (org-babel-table-truncate-at-newline ;; org-table cells can't be 
> multi-line
>       (if (and source-block (> (length source-block) 0))
>           (let ((params
>                  (eval `(org-babel-parse-header-arguments
> @@ -116,7 +115,7 @@ example above."
>                                  ")")))))
>             (org-babel-execute-src-block
>              nil (list "emacs-lisp" "results" params) '((:results . 
> "silent"))))
> -       ""))))
> +       "")))
>
>
> Dan

_______________________________________________
Emacs-orgmode mailing list
Please use `Reply All' to send replies to the list.
Emacs-orgmode@gnu.org
http://lists.gnu.org/mailman/listinfo/emacs-orgmode

Reply via email to