Merge branch 'master' of git+ssh://repo.or.cz/srv/git/org-mode
This commit is contained in:
commit
a3bf897d46
|
@ -74,8 +74,8 @@ options and are taken from `org-babel-defualt-inline-header-args'."
|
||||||
(replacement (save-match-data
|
(replacement (save-match-data
|
||||||
(org-babel-exp-do-export
|
(org-babel-exp-do-export
|
||||||
(first info) (second info) (third info) 'inline))))
|
(first info) (second info) (third info) 'inline))))
|
||||||
(setq end (+ end (- (length replacement) (length (match-string 0)))))
|
(setq end (+ end (- (length replacement) (length (match-string 1)))))
|
||||||
(replace-match replacement t t)))))
|
(replace-match replacement t t nil 1)))))
|
||||||
|
|
||||||
(defun org-babel-exp-lob-one-liners (start end)
|
(defun org-babel-exp-lob-one-liners (start end)
|
||||||
"Process #+lob (Library of Babel) calls between START and END for export.
|
"Process #+lob (Library of Babel) calls between START and END for export.
|
||||||
|
@ -104,13 +104,13 @@ options are taken from `org-babel-default-header-args'."
|
||||||
(defun org-babel-exp-do-export (lang body params type)
|
(defun org-babel-exp-do-export (lang body params type)
|
||||||
(case (intern (or (cdr (assoc :exports params)) "code"))
|
(case (intern (or (cdr (assoc :exports params)) "code"))
|
||||||
('none "")
|
('none "")
|
||||||
('code (org-babel-exp-code body lang params type))
|
('code (org-babel-exp-code lang body params type))
|
||||||
('results (org-babel-exp-results body lang params type))
|
('results (org-babel-exp-results lang body params type))
|
||||||
('both (concat (org-babel-exp-code body lang params type)
|
('both (concat (org-babel-exp-code lang body params type)
|
||||||
"\n\n"
|
"\n\n"
|
||||||
(org-babel-exp-results body lang params type)))))
|
(org-babel-exp-results lang body params type)))))
|
||||||
|
|
||||||
(defun org-babel-exp-code (body lang params type)
|
(defun org-babel-exp-code (lang body params type)
|
||||||
(case type
|
(case type
|
||||||
('inline (format "=%s=" body))
|
('inline (format "=%s=" body))
|
||||||
('block (format "#+BEGIN_SRC %s\n%s%s\n#+END_SRC" lang body
|
('block (format "#+BEGIN_SRC %s\n%s%s\n#+END_SRC" lang body
|
||||||
|
@ -120,7 +120,7 @@ options are taken from `org-babel-default-header-args'."
|
||||||
(format "#+BEGIN_SRC org-babel-lob\n%s\n#+END_SRC"
|
(format "#+BEGIN_SRC org-babel-lob\n%s\n#+END_SRC"
|
||||||
(first (org-babel-lob-get-info)))))))
|
(first (org-babel-lob-get-info)))))))
|
||||||
|
|
||||||
(defun org-babel-exp-results (body lang params type)
|
(defun org-babel-exp-results (lang body params type)
|
||||||
(let ((params
|
(let ((params
|
||||||
;; lets ensure that we lookup references in the original file
|
;; lets ensure that we lookup references in the original file
|
||||||
(mapcar (lambda (pair)
|
(mapcar (lambda (pair)
|
||||||
|
@ -143,8 +143,10 @@ options are taken from `org-babel-default-header-args'."
|
||||||
((member "code" result-params)
|
((member "code" result-params)
|
||||||
(format "src_%s{%s}" lang raw))
|
(format "src_%s{%s}" lang raw))
|
||||||
(t
|
(t
|
||||||
(if (and (stringp raw) (= 0 (length raw)))
|
(if (stringp raw)
|
||||||
" =(no results)= " (format " =%S= " raw))))))
|
(if (= 0 (length raw)) "=(no results)="
|
||||||
|
(format "=%s=" raw))
|
||||||
|
(format "=%S=" raw))))))
|
||||||
('block
|
('block
|
||||||
(save-excursion ;; org-exp-blocks places us at the end of the block
|
(save-excursion ;; org-exp-blocks places us at the end of the block
|
||||||
(re-search-backward org-babel-src-block-regexp nil t)
|
(re-search-backward org-babel-src-block-regexp nil t)
|
||||||
|
|
|
@ -109,17 +109,19 @@ then run `org-babel-pop-to-session'."
|
||||||
(defun org-babel-set-interpreters (var value)
|
(defun org-babel-set-interpreters (var value)
|
||||||
(set-default var value)
|
(set-default var value)
|
||||||
(setq org-babel-src-block-regexp
|
(setq org-babel-src-block-regexp
|
||||||
(concat "^[ \t]*#\\+begin_src \\("
|
(concat "^[ \t]*#\\+begin_src[ \t]+\\("
|
||||||
(mapconcat 'regexp-quote value "\\|")
|
(mapconcat 'regexp-quote value "\\|")
|
||||||
"\\)[ \t]*"
|
"\\)[ \t]*"
|
||||||
"\\([ \t]+\\([^\n]+\\)\\)?\n" ;; match header arguments
|
"\\([ \t]+\\([^\n]+\\)\\)?\n" ;; match header arguments
|
||||||
"\\([^\000]+?\\)#\\+end_src"))
|
"\\([^\000]+?\\)#\\+end_src"))
|
||||||
(setq org-babel-inline-src-block-regexp
|
(setq org-babel-inline-src-block-regexp
|
||||||
(concat "[ \t\n]src_\\("
|
(concat "[ \f\t\n\r\v]\\(src_" ;; (1) replacement target
|
||||||
|
"\\(" ;; (2) lang
|
||||||
(mapconcat 'regexp-quote value "\\|")
|
(mapconcat 'regexp-quote value "\\|")
|
||||||
"\\)"
|
"\\)"
|
||||||
"\\(\\|\\[\\(.*\\)\\]\\)"
|
"\\(\\|\\[\\(.*\\)\\]\\)" ;; (3,4) (unused, headers)
|
||||||
"{\\([^\n]+\\)}\\(?:[ \t\n]\\|\\'\\)")))
|
"{\\([^\f\n\r\v]+\\)}" ;; (5) body
|
||||||
|
"\\)")))
|
||||||
|
|
||||||
(defun org-babel-add-interpreter (interpreter)
|
(defun org-babel-add-interpreter (interpreter)
|
||||||
"Add INTERPRETER to `org-babel-interpreters' and update
|
"Add INTERPRETER to `org-babel-interpreters' and update
|
||||||
|
@ -333,7 +335,6 @@ of the following form. (language body header-arguments-alist)"
|
||||||
(save-excursion (goto-char head) (org-babel-parse-src-block-match))
|
(save-excursion (goto-char head) (org-babel-parse-src-block-match))
|
||||||
(if (save-excursion ;; inline source block
|
(if (save-excursion ;; inline source block
|
||||||
(re-search-backward "[ \f\t\n\r\v]" nil t)
|
(re-search-backward "[ \f\t\n\r\v]" nil t)
|
||||||
(forward-char 1)
|
|
||||||
(looking-at org-babel-inline-src-block-regexp))
|
(looking-at org-babel-inline-src-block-regexp))
|
||||||
(org-babel-parse-inline-src-block-match)
|
(org-babel-parse-inline-src-block-match)
|
||||||
nil)))) ;; indicate that no source block was found
|
nil)))) ;; indicate that no source block was found
|
||||||
|
@ -388,15 +389,15 @@ may be specified in the properties of the current outline entry."
|
||||||
(org-babel-parse-header-arguments (org-babel-clean-text-properties (or (match-string 3) "")))))))
|
(org-babel-parse-header-arguments (org-babel-clean-text-properties (or (match-string 3) "")))))))
|
||||||
|
|
||||||
(defun org-babel-parse-inline-src-block-match ()
|
(defun org-babel-parse-inline-src-block-match ()
|
||||||
(let* ((lang (org-babel-clean-text-properties (match-string 1)))
|
(let* ((lang (org-babel-clean-text-properties (match-string 2)))
|
||||||
(lang-headers (intern (concat "org-babel-default-header-args:" lang))))
|
(lang-headers (intern (concat "org-babel-default-header-args:" lang))))
|
||||||
(list lang
|
(list lang
|
||||||
(org-babel-strip-protective-commas (org-babel-clean-text-properties (match-string 4)))
|
(org-babel-strip-protective-commas (org-babel-clean-text-properties (match-string 5)))
|
||||||
(org-babel-merge-params
|
(org-babel-merge-params
|
||||||
org-babel-default-inline-header-args
|
org-babel-default-inline-header-args
|
||||||
(org-babel-params-from-properties)
|
(org-babel-params-from-properties)
|
||||||
(if (boundp lang-headers) (eval lang-headers) nil)
|
(if (boundp lang-headers) (eval lang-headers) nil)
|
||||||
(org-babel-parse-header-arguments (org-babel-clean-text-properties (or (match-string 3) "")))))))
|
(org-babel-parse-header-arguments (org-babel-clean-text-properties (or (match-string 4) "")))))))
|
||||||
|
|
||||||
(defun org-babel-parse-header-arguments (arg-string)
|
(defun org-babel-parse-header-arguments (arg-string)
|
||||||
"Parse a string of header arguments returning an alist."
|
"Parse a string of header arguments returning an alist."
|
||||||
|
|
Loading…
Reference in New Issue