emacs-elpa-diffs
[Top][All Lists]
Advanced

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

[elpa] externals/org bbec9aafee 1/2: org-babel-lob-get-info: Add no-eval


From: ELPA Syncer
Subject: [elpa] externals/org bbec9aafee 1/2: org-babel-lob-get-info: Add no-eval argument
Date: Wed, 19 Oct 2022 03:57:54 -0400 (EDT)

branch: externals/org
commit bbec9aafee8f0cd022a8e2b782ac1f3f920fdb8f
Author: fpi <git@pie.tf>
Commit: Ihor Radchenko <yantar92@posteo.net>

    org-babel-lob-get-info: Add no-eval argument
    
    * lisp/ob-lob.el (org-babel-lob-get-info): Add no-eval argument to
    prevent recursive evaluation of lisp values in parameters.
---
 lisp/ob-exp.el |  2 +-
 lisp/ob-lob.el | 13 +++++++++----
 lisp/ob-ref.el |  2 +-
 3 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/lisp/ob-exp.el b/lisp/ob-exp.el
index de7e1e3a3e..67ed22f846 100644
--- a/lisp/ob-exp.el
+++ b/lisp/ob-exp.el
@@ -29,7 +29,7 @@
 
 (require 'ob-core)
 
-(declare-function org-babel-lob-get-info "ob-lob" (&optional datum))
+(declare-function org-babel-lob-get-info "ob-lob" (&optional datum no-eval))
 (declare-function org-element-at-point "org-element" (&optional pom 
cached-only))
 (declare-function org-element-context "org-element" (&optional element))
 (declare-function org-element-property "org-element" (property element))
diff --git a/lisp/ob-lob.el b/lisp/ob-lob.el
index c6be8be809..10822accb1 100644
--- a/lisp/ob-lob.el
+++ b/lisp/ob-lob.el
@@ -119,10 +119,15 @@ after REF in the Library of Babel."
            (cdr (assoc-string ref org-babel-library-of-babel))))))))
 
 ;;;###autoload
-(defun org-babel-lob-get-info (&optional datum)
+(defun org-babel-lob-get-info (&optional datum no-eval)
   "Return internal representation for Library of Babel function call.
 
 Consider DATUM, when provided, or element at point otherwise.
+ 
+When optional argument NO-EVAL is non-nil, Babel does not resolve
+remote variable references; a process which could likely result
+in the execution of other code blocks, and do not evaluate Lisp
+values in parameters.
 
 Return nil when not on an appropriate location.  Otherwise return
 a list compatible with `org-babel-get-src-block-info', which
@@ -144,16 +149,16 @@ see."
                        org-babel-default-lob-header-args
                        (append
                         (org-with-point-at begin
-                          (org-babel-params-from-properties language))
+                          (org-babel-params-from-properties language no-eval))
                         (list
                          (org-babel-parse-header-arguments
-                          (org-element-property :inside-header context))
+                          (org-element-property :inside-header context) 
no-eval)
                          (let ((args (org-element-property :arguments 
context)))
                            (and args
                                 (mapcar (lambda (ref) (cons :var ref))
                                         (org-babel-ref-split-args args))))
                          (org-babel-parse-header-arguments
-                          (org-element-property :end-header context)))))
+                          (org-element-property :end-header context) 
no-eval))))
                 nil
                 (org-element-property :name context)
                 begin
diff --git a/lisp/ob-ref.el b/lisp/ob-ref.el
index 2b4a16aead..2bba2071ee 100644
--- a/lisp/ob-ref.el
+++ b/lisp/ob-ref.el
@@ -57,7 +57,7 @@
 (require 'org-macs)
 (require 'cl-lib)
 
-(declare-function org-babel-lob-get-info "ob-lob" (&optional datum))
+(declare-function org-babel-lob-get-info "ob-lob" (&optional datum no-eval))
 (declare-function org-element-at-point "org-element" (&optional pom 
cached-only))
 (declare-function org-element-property "org-element" (property element))
 (declare-function org-element-type "org-element" (element))



reply via email to

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