Merge branch 'origin-maint'
Conflicts: contrib/lisp/org-mac-link-grabber.el doc/org.texi lisp/org-odt.el testing/lisp/test-ob.el
This commit is contained in:
commit
3de3c470d8
|
@ -46,6 +46,18 @@
|
|||
(goto-char org-lparse-dyn-first-heading-pos)))
|
||||
(insert (org-odt-format-toc)))
|
||||
|
||||
(defun org-odt-insert-toc ()
|
||||
(goto-char (point-min))
|
||||
(cond
|
||||
((re-search-forward
|
||||
"\\(<text:p [^>]*>\\)?\\s-*\\[TABLE-OF-CONTENTS\\]\\s-*\\(</text:p>\\)?"
|
||||
nil t)
|
||||
(goto-char (match-beginning 0))
|
||||
(replace-match ""))
|
||||
(t
|
||||
(goto-char org-lparse-dyn-first-heading-pos))
|
||||
(insert (org-odt-format-toc))))
|
||||
|
||||
(defun org-odt-end-export ()
|
||||
(org-odt-insert-toc)
|
||||
(org-odt-fixup-label-references)
|
||||
|
@ -2169,6 +2181,7 @@ CATEGORY-HANDLE is used. See
|
|||
(setq org-odt-manifest-file-entries nil
|
||||
org-odt-embedded-images-count 0
|
||||
org-odt-embedded-formulas-count 0
|
||||
org-odt-section-count 0
|
||||
org-odt-entity-labels-alist nil
|
||||
org-odt-list-stack-stashed nil
|
||||
org-odt-automatic-styles nil
|
||||
|
|
|
@ -869,65 +869,194 @@ Line 3\"
|
|||
test-line
|
||||
(forward-char 1)
|
||||
(org-ctrl-c-ctrl-c)
|
||||
(should (string= (concat test-line " =\"x\"=")
|
||||
(buffer-substring-no-properties
|
||||
(point-min) (point-max)))))))
|
||||
(should (re-search-forward "\\#\\+results:" nil t))
|
||||
(forward-line)
|
||||
(should
|
||||
(string=
|
||||
""
|
||||
(buffer-substring-no-properties (point-at-bol) (point-at-eol))))))
|
||||
(org-test-with-temp-text-in-file "
|
||||
#+begin_src emacs-lisp
|
||||
\"some text\";;
|
||||
#+end_src"
|
||||
|
||||
(ert-deftest test-org-babel/inline-src-block-preceded-by-equality ()
|
||||
(let ((test-line "=src_emacs-lisp[ :results verbatim ]{ \"x\" }"))
|
||||
(org-test-with-temp-text
|
||||
test-line
|
||||
(forward-char 1)
|
||||
(progn
|
||||
(org-babel-next-src-block)
|
||||
(org-ctrl-c-ctrl-c)
|
||||
(should (string= (concat test-line " =\"x\"=")
|
||||
(buffer-substring-no-properties
|
||||
(point-min) (point-max)))))))
|
||||
(should (re-search-forward "\\#\\+results:" nil t))
|
||||
(forward-line)
|
||||
(should
|
||||
(string=
|
||||
": some text"
|
||||
(buffer-substring-no-properties (point-at-bol) (point-at-eol)))))))
|
||||
|
||||
(ert-deftest test-org-babel/inline-src-block-enclosed-within-parenthesis ()
|
||||
(let ((test-line "(src_emacs-lisp[ :results verbatim ]{ \"x\" }"))
|
||||
(org-test-with-temp-text
|
||||
(concat test-line ")")
|
||||
(forward-char 1)
|
||||
(ert-deftest test-ob/commented-last-block-line-with-var ()
|
||||
(org-test-with-temp-text-in-file "
|
||||
#+begin_src emacs-lisp :var a=1
|
||||
;;
|
||||
#+end_src"
|
||||
(progn
|
||||
(org-babel-next-src-block)
|
||||
(org-ctrl-c-ctrl-c)
|
||||
(should (string= (concat test-line " =\"x\"=)" )
|
||||
(buffer-substring-no-properties
|
||||
(point-min) (point-max)))))))
|
||||
|
||||
(ert-deftest test-org-babel/inline-src-block-enclosed-within-parenthesis ()
|
||||
(let ((test-line "{src_emacs-lisp[ :results verbatim ]{ \"x\" }"))
|
||||
(org-test-with-temp-text
|
||||
(concat test-line "}")
|
||||
(forward-char 1)
|
||||
(re-search-forward "\\#\\+results:" nil t)
|
||||
(forward-line)
|
||||
(should (string=
|
||||
""
|
||||
(buffer-substring-no-properties (point-at-bol) (point-at-eol))))))
|
||||
(org-test-with-temp-text-in-file "
|
||||
#+begin_src emacs-lisp :var a=2
|
||||
2;;
|
||||
#+end_src"
|
||||
(progn
|
||||
(org-babel-next-src-block)
|
||||
(org-ctrl-c-ctrl-c)
|
||||
(should (string= (concat test-line " =\"x\"=}")
|
||||
(buffer-substring-no-properties
|
||||
(point-min) (point-max)))))))
|
||||
(re-search-forward "\\#\\+results:" nil t)
|
||||
(forward-line)
|
||||
(should (string=
|
||||
": 2"
|
||||
(buffer-substring-no-properties (point-at-bol) (point-at-eol)))))))
|
||||
|
||||
(ert-deftest test-org-babel/inline-src_blk-preceded-by-letter ()
|
||||
"Test inline source block invalid where preceded by letter"
|
||||
(defun test-ob-verify-result-and-removed-result (result buffer-text)
|
||||
"Test helper function to test `org-babel-remove-result'.
|
||||
A temp buffer is populated with BUFFER-TEXT, the first block is executed,
|
||||
and the result of execution is verified against RESULT.
|
||||
|
||||
;; inline-src-blk preceded by letter
|
||||
The block is actually executed /twice/ to ensure result
|
||||
replacement happens correctly."
|
||||
(org-test-with-temp-text
|
||||
"asrc_emacs-lisp[ :results verbatim ]{ \"x\" }"
|
||||
(forward-char 1)
|
||||
(let ((error-result
|
||||
(should-error
|
||||
(org-ctrl-c-ctrl-c))))
|
||||
(should (equal `(error "C-c C-c can do nothing useful at this location")
|
||||
error-result)))))
|
||||
buffer-text
|
||||
(progn
|
||||
(org-babel-next-src-block) (org-ctrl-c-ctrl-c) (org-ctrl-c-ctrl-c)
|
||||
(should (re-search-forward "\\#\\+results:" nil t))
|
||||
(forward-line)
|
||||
(should (string= result
|
||||
(buffer-substring-no-properties
|
||||
(point-at-bol)
|
||||
(- (point-max) 16))))
|
||||
(org-babel-previous-src-block) (org-babel-remove-result)
|
||||
(should (string= buffer-text
|
||||
(buffer-substring-no-properties
|
||||
(point-min) (point-max)))))))
|
||||
|
||||
(ert-deftest test-org-babel/inline-src_blk-preceded-by-number ()
|
||||
"Test inline source block invalid where preceded by number"
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-default ()
|
||||
"Test `org-babel-remove-result' with default :results."
|
||||
(mapcar (lambda (language)
|
||||
(test-ob-verify-result-and-removed-result
|
||||
"\n"
|
||||
(concat
|
||||
"* org-babel-remove-result
|
||||
#+begin_src " language "
|
||||
#+end_src
|
||||
|
||||
;; inline-src-blk preceded by number
|
||||
(org-test-with-temp-text
|
||||
"0src_emacs-lisp[ :results verbatim ]{ \"x\" }"
|
||||
(forward-char 1)
|
||||
(let ((error-result
|
||||
(should-error
|
||||
(org-ctrl-c-ctrl-c))))
|
||||
(should (equal `(error "C-c C-c can do nothing useful at this location")
|
||||
error-result)))))
|
||||
* next heading")))
|
||||
'("sh" "emacs-lisp")))
|
||||
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-list ()
|
||||
"Test `org-babel-remove-result' with :results list."
|
||||
(test-ob-verify-result-and-removed-result
|
||||
"- 1
|
||||
- 2
|
||||
- 3
|
||||
- (quote (4 5))"
|
||||
|
||||
"* org-babel-remove-result
|
||||
#+begin_src emacs-lisp :results list
|
||||
'(1 2 3 '(4 5))
|
||||
#+end_src
|
||||
|
||||
* next heading"))
|
||||
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-wrap ()
|
||||
"Test `org-babel-remove-result' with :results wrap."
|
||||
(test-ob-verify-result-and-removed-result
|
||||
":RESULTS:
|
||||
hello there
|
||||
:END:"
|
||||
|
||||
"* org-babel-remove-result
|
||||
|
||||
#+begin_src emacs-lisp :results wrap
|
||||
\"hello there\"
|
||||
#+end_src
|
||||
|
||||
* next heading"))
|
||||
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-org ()
|
||||
"Test `org-babel-remove-result' with :results org."
|
||||
(test-ob-verify-result-and-removed-result
|
||||
"#+BEGIN_ORG
|
||||
* heading
|
||||
** subheading
|
||||
content
|
||||
#+END_ORG"
|
||||
|
||||
"* org-babel-remove-result
|
||||
#+begin_src emacs-lisp :results org
|
||||
\"* heading
|
||||
** subheading
|
||||
content\"
|
||||
#+end_src
|
||||
|
||||
* next heading"))
|
||||
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-html ()
|
||||
"Test `org-babel-remove-result' with :results html."
|
||||
(test-ob-verify-result-and-removed-result
|
||||
"#+BEGIN_HTML
|
||||
<head><body></body></head>
|
||||
#+END_HTML"
|
||||
|
||||
"* org-babel-remove-result
|
||||
#+begin_src emacs-lisp :results html
|
||||
\"<head><body></body></head>\"
|
||||
#+end_src
|
||||
|
||||
* next heading"))
|
||||
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-latex ()
|
||||
"Test `org-babel-remove-result' with :results latex."
|
||||
(test-ob-verify-result-and-removed-result
|
||||
"#+BEGIN_LaTeX
|
||||
Line 1
|
||||
Line 2
|
||||
Line 3
|
||||
#+END_LaTeX"
|
||||
|
||||
"* org-babel-remove-result
|
||||
#+begin_src emacs-lisp :results latex
|
||||
\"Line 1
|
||||
Line 2
|
||||
Line 3\"
|
||||
#+end_src
|
||||
|
||||
* next heading"))
|
||||
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-code ()
|
||||
"Test `org-babel-remove-result' with :results code."
|
||||
|
||||
(test-ob-verify-result-and-removed-result
|
||||
"#+BEGIN_SRC emacs-lisp
|
||||
\"I am working!\"
|
||||
#+END_SRC"
|
||||
|
||||
"* org-babel-remove-result
|
||||
#+begin_src emacs-lisp :results code
|
||||
(message \"I am working!\")
|
||||
#+end_src
|
||||
|
||||
* next heading"))
|
||||
|
||||
(ert-deftest test-ob/org-babel-remove-result--results-pp ()
|
||||
"Test `org-babel-remove-result' with :results pp."
|
||||
(test-ob-verify-result-and-removed-result
|
||||
": \"I /am/ working!\""
|
||||
|
||||
"* org-babel-remove-result
|
||||
#+begin_src emacs-lisp :results pp
|
||||
\"I /am/ working!\")
|
||||
#+end_src
|
||||
|
||||
* next heading"))
|
||||
|
||||
(provide 'test-ob)
|
||||
|
||||
|
|
Loading…
Reference in New Issue