Aloha Lawrence,

You probably want (org-babel-lob-ingest &optional FILE)

All the best,

Lawrence Bottorff writes:

Thanks for the help. However, one mystery still remains: Why is this

'(org-babel-lob-files (quote ("~/org/worg/")))

in my init.el's custom-set-variables not getting handled? I always have to do an org-babel-lob-ingest to actually get loaded.

On Fri, Apr 6, 2018 at 10:38 PM, Berry, Charles <> wrote:

> On Apr 6, 2018, at 4:59 PM, Thomas S. Dye <> > wrote:

[Tom's response covering the main issues deleted]

> hth,
> Tom
> Lawrence Bottorff writes:
>> I guess I need more information. For example, what is C-c >> C-v v doing >> exactly? Then C-x C-e? And M-x (symbol-function >> 'myelsquare) doesn't

`C-h k' is really your friend here. If you do not know it, try typing it
twice `C-h k C-h k'.

As for the specific keystrokes mentioned above:

,----[ C-h k C-c C-v v ]
| C-c C-v v runs the command org-babel-expand-src-block (found in | org-mode-map), which is an interactive autoloaded compiled Lisp
| function in ‘ob-core.el’.
| It is bound to C-c C-v v, C-c C-v C-v.
| (org-babel-expand-src-block &optional ARG INFO PARAMS)
| Expand the current source code block.
| Expand according to the source code block’s header
| arguments and pop open the results in a preview buffer.
| [back]

In your case, it shows that the `mtelsquare' src block expands to:

| (let ((x (quote 0)))
| (defun myelsquare (x)
|   (* x x))
| )

,----[ C-h k C-x C-e ]
| C-x C-e runs the command eval-last-sexp (found in global-map), which
| is an interactive compiled Lisp function in ‘elisp-mode.el’.
| It is bound to C-x C-e.
| (eval-last-sexp EVAL-LAST-SEXP-ARG-INTERNAL)
| Evaluate sexp before point; print value in the echo area.
| Interactively, with prefix argument, print output into current buffer.
| Normally, this function truncates long output according to the value
| of the variables ‘eval-expression-print-length’ and
| ‘eval-expression-print-level’. With a prefix argument of zero,
| however, there is no such truncation.  Such a prefix argument
| also causes integers to be printed in several additional formats
| (octal, hexadecimal, and character).
| If ‘eval-expression-debug-on-error’ is non-nil, which is the default,
| this command arranges for all errors to enter the debugger.
| [back]

So with point at the end of the preview buffer for myelsquare (which has
one `let' expression it it) it has the same effect as running
`eval-buffer'. viz, the elisp function `myelsquare' is created.

If you have gotten this far, there is an lisp function called `myelsquare' and the `symbol-function' expression will return its value when properly
`eval'ed. I misspoke before. I should have said

        M-: (symbol-function 'myelsquare) RET

And that value is `(lambda (x) (* x x))'. Which simply shows you have
defun'ed a function and what it is.

Once you have an elisp function, the natural way to call it is
src_emacs-lisp{(myelsquare 1.5)}.

One thing you can do with LOB blocks is use them in header args of src
blocks just as you would use calls to ordinary src blocks.



Thomas S. Dye

Reply via email to