Kyle Meyer
d4f48821c1
Merge branch 'maint' into master
2020-09-05 23:41:50 -04:00
Kyle Meyer
e535da6e4f
ob-core: Avoid duplicate body expansion logic
...
* lisp/ob-core.el (org-babel--expand-body): New function.
(org-babel-check-confirm-evaluate):
(org-babel-execute-src-block): Use org-babel--expand-body.
As of 727c6d7fe (lisp/ob-core.el: org-babel-check-confirm-evaluate
strip coderefs, 2020-09-04), org-babel-check-confirm-evaluate and
org-babel-execute-src-block use the same logic to expand the body and
strip coderefs. Move that code to a helper function.
This patch is functionally equivalent to the patch originally proposed
by Tom Gillespie at
https://orgmode.org/list/CA+G3_PNi3uMvBiWgBdKuC3C6VJt1T1j-RKH43LRqYbr+4NS8ZA@mail.gmail.com
2020-09-05 23:39:08 -04:00
Tom Gillespie
3e1c0b0f44
lisp/ob-core.el: org-babel-check-confirm-evaluate strip coderefs
...
* lisp/ob-core.el (org-babel-check-confirm-evaluate): strip coderefs
before passing the body of the block to org-confirm-babel-evaluate
using the same let block as is used in org-babel-execute-src-block.
2020-09-05 23:38:35 -04:00
Bastien
479e09a8e2
Merge branch 'maint'
2020-09-05 16:41:03 +02:00
Ihor Radchenko
f45591630f
ob-core.el: Use `buffer-base-buffer' where needed
...
* lisp/ob-core.el (org-babel-result-to-file): Use
`buffer-base-buffer' so that `buffer-file-name' returns correct
results in indirect buffers too.
See <https://orgmode.org/list/87eeos3w7v.fsf@localhost >
TINYCHANGE
2020-09-05 16:40:45 +02:00
Kyle Meyer
7bc18ebbed
ob-core: Avoid table conversion warning for empty results
...
* lisp/ob-core.el (org-babel-import-elisp-from-file): Don't try to
convert empty file to a table.
* testing/lisp/test-ob.el (test-ob/import-elisp-from-file): Add tests.
If org-babel-import-elisp-from-file is called with an empty file
(which many ob- libraries do when there are no results), feeding that
to org-table-import leads to a beginning-of-buffer error. Before
14878f3f9
(ob-core: Display warning on failure to read results,
2020-05-21), this error was hard to notice because, after catching it,
it was reported as a quickly buried message. After that commit, it is
displayed as a warning, which is not appropriate for the common and
unproblematic case of empty results.
Avoid the warning by only doing the table conversion if the file has
content. Another option would be to do the table conversion but add a
beginning-of-buffer arm to the surrounding condition-case. However,
that risks swallowing other sources of that error.
Reported-by: Colin Baxter <m43cap@yandex.com>
<https://orgmode.org/list/878se3nhbj.fsf@yandex.com >
2020-09-01 00:02:49 -04:00
John Herrlin
ea946353aa
ob-core: file-mode option in source code block arguments
...
* ob-core.el (org-babel-execute-src-block): Source code block header
argument `:file-mode' can set file permissions if `:file' argument is
provided.
(org-babel-common-header-args-w-values): Add `:file-mode' to common
header arguments.
TINYCHANGE
2020-08-02 22:59:25 -04:00
Kyle Meyer
a103f3f3ee
Merge branch 'maint'
2020-08-02 22:56:03 -04:00
Kyle Meyer
df5a836375
ob-core: Call org-confirm-babel-evaluate with expanded noweb refs
...
* lisp/ob-core.el (org-babel-check-confirm-evaluate): Expand noweb
references in the body passed to org-confirm-babel-evaluate.
* testing/lisp/test-ob.el (test-ob/check-eval-noweb-expanded): New
test.
When noweb references are set to be expanded for evaluation,
org-confirm-babel-evaluate should receive the expanded body so that it
can make its decision based on what actually will be evaluated
(without resorting to calling org-babel-get-src-block-info itself).
Note that this results in up to three calls to
org-babel-expand-noweb-references. Possible ways to avoid this are
discussed at the thread referenced below.
Reported-by: Tom Gillespie <tgbugs@gmail.com>
https://orgmode.org/list/CA+G3_PNi3uMvBiWgBdKuC3C6VJt1T1j-RKH43LRqYbr+4NS8ZA@mail.gmail.com/
2020-08-02 22:55:16 -04:00
stardiviner
758b039c04
fix 5f0a9cca3
missing space
...
* lisp/ob-core.el (org-babel-demarcate-block): Replace wrong newline
with missing space.
2020-06-01 15:50:19 +02:00
Bastien
5f0a9cca3d
lisp/ob-core.el: Use lower-case by default for block keywords
...
* lisp/ob-core.el (org-babel-demarcate-block): Use lower-case
by default.
2020-05-25 11:51:57 +02:00
Kyle Meyer
14878f3f9a
ob-core: Display warning on failure to read results
...
* lisp/ob-core.el (org-babel-import-elisp-from-file): Show handled
errors with display-warning rather than a message because the latter
is quickly overridden by subsequent messages, making it difficult if
not impossible for the user to spot.
The scope of the save-window-excursion call would need to be reduced
for the display-warning buffer to be shown, but nothing appears to
change the window configuration, so just drop the
save-window-excursion call.
Reported-by: Greg Minshall <minshall@umich.edu>
<2449663.1588516024@apollo2.minshall.org>
2020-05-24 11:56:43 -04:00
Nicolas Goaziou
c76bacc483
ob: Ignore RESULTS keyword case
...
* lisp/ob-core.el (org-babel-current-result-hash):
(org-babel-hide-hash):
(org-babel-hide-all-hashes):
(org-babel-result-hide-all):
(org-babel-hide-result-toggle-maybe):
(org-babel-hide-result-toggle):
(org-babel--clear-results-maybe):
(org-babel-remove-result): Bind `case-fold-search' to t before looking
for `org-babel-result-regexp'.
2020-05-13 18:13:18 +02:00
Nicolas Goaziou
89c759f3ad
ob: Replace angle brackets with parenthesis in Babel hashes
...
* lisp/ob-core.el (org-babel-hash-show-time): Remove
unnecessary :version keyword.
(org-babel-result-regexp):
(org-babel--insert-results-keyword): Remove angle brackets from time
stamp in hash.
* testing/lisp/test-ob.el (test-ob/where-is-src-block-result): Update
test.
Reported-by: stardiviner <numbchild@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2020-05/msg00198.html >
2020-05-13 15:35:56 +02:00
Nicolas Goaziou
e68ae40bdb
babel: Remove unneeded declare function
2020-04-28 09:51:20 +02:00
Mattias Engdegård
989a51105c
Backport commit d5a7df8c0 from Emacs
...
* lisp/ob-core.el (org-babel-remove-temporary-directory): Use
directory-files-no-dot-files-regexp.
Use directory-files-no-dot-files-regexp wherever possible
d5a7df8c02f04102d50a5cd2290262f59f2b1415
Mattias Engdegård
Thu Apr 16 12:14:38 2020 +0200
2020-04-20 00:42:44 -04:00
Kyle Meyer
b359de549e
Merge branch 'maint'
2020-04-20 00:42:38 -04:00
Mattias Engdegård
bf99b6dc11
Backport commit 4acdd7fe5 from Emacs
...
* lisp/ob-core.el (org-babel-remove-temporary-directory):
Use (rx (or (not ".") "...")), translated into "[^.]\\|\\.\\.\\.", to
match anything but "." and "..".
Fix edge case errors in filename-matching regexps
4acdd7fe58ae9f94102afeca67b0383141d597da
Mattias Engdegård
Tue Apr 14 12:25:16 2020 +0200
Note(km): Replaced bare "." with (any ".") for Emacs < 27
compatibility. 4acdd7fe5 was on the emacs-27 branch, but a commit on
their master (d5a7df8c0) will supersede this.
2020-04-20 00:41:39 -04:00
Kyle Meyer
9e385d1bab
Merge branch 'maint'
2020-04-09 22:29:48 -04:00
Kyle Meyer
6f1b837492
Silence byte-compiler
...
These both show up when compiling files separately (e.g., 'make
single').
ob-core already assumes ob-tangle is loaded based on declared
functions, presumably because ob.el is given responsibility for
collectively loading these pieces. org.el loads org-attach within the
body of a function before calling org-attach-dir.
2020-04-09 22:27:06 -04:00
Nicolas Goaziou
06fe9d6b05
ob: Improve handling of :wrap header
...
* lisp/ob-core.el (org-babel-insert-result): Improve handling of :wrap
header.
* testing/lisp/test-ob.el (test-ob/inline-src_blk-wrap): New test.
(test-ob/preserve-comma-escape): Add test.
2020-04-07 01:42:35 +02:00
Nicolas Goaziou
0a7e382c27
Merge branch 'maint'
2020-04-07 01:22:18 +02:00
Nicolas Goaziou
e3373f4beb
ob-core: Properly replace results in special blocks
...
* lisp/ob-core.el (org-babel-result-end): Handle results in special
blocks.
* testing/lisp/test-ob.el (test-ob/replace-special-block-result): New
test.
2020-04-07 01:21:33 +02:00
Mattias Engdegård
b78583a1c1
Backport commit 770f76f05 from Emacs
...
Make regexps smaller and faster by removing terms that are superfluous
by virtue of standing next to another term that matches more. See
https://lists.gnu.org/archive/html/emacs-devel/2020-01/msg00949.html
for details.
* lisp/ob-core.el (org-babel-remove-result):
* lisp/ob-fortran.el (org-babel-fortran-ensure-main-wrap):
* lisp/org-capture.el (org-capture-set-target-location):
* lisp/org-compat.el (org-maybe-keyword-time-regexp):
* lisp/org-table.el (org-table-expand-lhs-ranges):
Remove subsumed repetitions.
Remove subsumed repetitions in regexps
770f76f050376bbd77a3cc8cf44db57cf855a27c
Mattias Engdegård
Thu Feb 20 16:05:18 2020 +0100
2020-03-15 22:51:31 -04:00
Nicolas Goaziou
e18415d02c
ob: Fix case when replacing Noweb reference
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Use FIXEDCASE.
* testing/lisp/test-ob.el (test-ob/noweb-expansion): Add test.
Reported-by: Sebastian Miele <sebastian.miele@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2020-03/msg00070.html >
2020-03-09 23:10:04 +01:00
Bastien
4150832d43
Merge branch 'maint'
2020-02-19 10:56:20 +01:00
Bastien
d0018ce62c
ob-core.el: Fix `org-babel--string-to-number'
...
* lisp/ob-core.el (org-babel--string-to-number): Prevent
strings containing whitespaces after being trimmed to be
interpreted as numbers.
2020-02-19 10:55:36 +01:00
Bastien
09877e5be2
Merge branch 'maint'
2020-02-19 10:39:51 +01:00
Bastien
6b2a7cb20b
ob-core.el: Correctly interpret all numbers
...
* lisp/ob-core.el (org-babel--string-to-number): Correctly
interpret all numbers.
Thanks to Vladimir Nikishkin for reporting this.
2020-02-19 10:39:37 +01:00
Bastien
6a1f6ee1f8
Tiny formatting fixes
...
* lisp/ox.el (org-export-table-dimensions):
* lisp/ox-texinfo.el (org-texinfo-template):
* lisp/ox-md.el (org-md-link):
* lisp/ox-icalendar.el (org-icalendar-use-UTC-date-time-p):
* lisp/ox-ascii.el (org-ascii-fixed-width):
* lisp/org.el (org-context):
* lisp/org-table.el (org-table-eval-formula)
(org-table-export):
* lisp/org-refile.el:
* lisp/org-plot.el (org-plot/gnuplot-to-grid-data):
* lisp/org-num.el (org-num):
* lisp/org-mouse.el (org-mouse-popup-global-menu)
(org-mouse-context-menu):
* lisp/org-macro.el (org-macro):
* lisp/org-lint.el (org-lint):
* lisp/org-keys.el (org-keys):
* lisp/org-duration.el:
* lisp/org-clock.el (org-clock-get-last-clock-out-time)
(org-clock-update-mode-line, org-find-open-clocks):
* lisp/org-agenda.el (org-diary)
(org-agenda-check-for-timestamp-as-reason-to-ignore-todo-item)
(org-agenda-highlight-todo, org-cmp-alpha)
(org-agenda-filter-by-category):
* lisp/ol.el (org-link-expand-abbrev, ol):
* lisp/ol-docview.el (ol-docview):
* lisp/ol-bibtex.el (org-execute-file-search-in-bibtex)
(org-bibtex, org-bibtex-read):
* lisp/ol-bbdb.el (org-bbdb-anniversary-description):
* lisp/ob-tangle.el (org-babel-tangle-jump-to-org):
* lisp/ob-table.el (org-babel-table-truncate-at-newline):
* lisp/ob-stan.el:
* lisp/ob-sqlite.el (org-babel-sqlite-table-or-scalar):
* lisp/ob-sql.el:
* lisp/ob-shen.el:
* lisp/ob-shell.el (org-babel-prep-session:shell)
(org-babel-prep-session:shell):
* lisp/ob-sed.el (org-babel-execute:sed)
(org-babel-execute:sed):
* lisp/ob-screen.el:
* lisp/ob-sass.el:
* lisp/ob-ruby.el (org-babel-prep-session:ruby)
(org-babel-prep-session:ruby):
* lisp/ob-ref.el (org-babel-ref-resolve, ob-ref):
* lisp/ob-python.el (org-babel-prep-session:python)
(org-babel-prep-session:python):
* lisp/ob-plantuml.el:
* lisp/ob-picolisp.el:
* lisp/ob-perl.el:
* lisp/ob-org.el:
* lisp/ob-octave.el (org-babel-prep-session:octave)
(org-babel-prep-session:octave)
(org-babel-octave-evaluate-session):
* lisp/ob-ocaml.el:
* lisp/ob-mscgen.el (org-babel-execute:mscgen)
(org-babel-execute:mscgen):
* lisp/ob-maxima.el:
(ob-maxima):
* lisp/ob-matlab.el:
* lisp/ob-makefile.el:
* lisp/ob-lua.el (org-babel-prep-session:lua)
(org-babel-prep-session:lua):
* lisp/ob-lisp.el:
* lisp/ob-ledger.el:
* lisp/ob-latex.el (org-babel-expand-body:latex)
(org-babel-expand-body:latex, ob-latex):
* lisp/ob-js.el:
* lisp/ob-java.el:
* lisp/ob-io.el (org-babel-prep-session:io)
(org-babel-prep-session:io):
* lisp/ob-hledger.el:
* lisp/ob-haskell.el:
* lisp/ob-groovy.el (org-babel-groovy-wrapper-method)
(org-babel-groovy-evaluate):
* lisp/ob-gnuplot.el:
* lisp/ob-fortran.el (org-babel-expand-body:fortran)
(org-babel-expand-body:fortran):
* lisp/ob-forth.el (org-babel-forth-session-execute):
* lisp/ob-exp.el (ob-exp):
* lisp/ob-eval.el:
* lisp/ob-emacs-lisp.el:
* lisp/ob-ebnf.el:
* lisp/ob-dot.el:
* lisp/ob-ditaa.el:
* lisp/ob-css.el:
* lisp/ob-core.el (org-babel-put-rownames):
* lisp/ob-coq.el:
* lisp/ob-comint.el:
* lisp/ob-calc.el:
* lisp/ob-awk.el:
* lisp/ob-asymptote.el:
* lisp/ob-abc.el:
* lisp/ob-R.el (org-babel-prep-session:R): Formatting fixes.
2020-02-18 22:57:37 +01:00
Bastien
20ab65482a
Merge branch 'maint'
2020-02-11 14:40:17 +01:00
Bastien
713c8d5aba
ob-core.el: Respect `org-babel-tangle-uncomment-comments'
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Respect
`org-babel-tangle-uncomment-comments'.
Thanks to Immanuel Litzroth for reporting this.
2020-02-11 14:35:30 +01:00
Nicolas Goaziou
c1aed9f809
ob-core: Refactor `org-babel-expand-noweb-references'
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Refactor code.
Improve cache handling.
2020-01-12 11:38:04 +01:00
Nicolas Goaziou
894189fa72
ob-core: Optimize multiple :noweb-ref expansions in a source block
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Optimize
multiple :noweb-ref expansions in a source block.
2020-01-08 23:08:47 +01:00
Kyle Meyer
ff5fc050d3
Update copyright year to 2020
2020-01-01 13:38:46 -05:00
Sebastian Miele
0e70e2a42b
ob-core: Respect COMMENTed headlines when expanding noweb references
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Add calls to
org-in-commented-heading-p where appropriate.
2019-11-24 10:27:35 +01:00
Kyle Meyer
a01a8f55d8
Merge branch 'maint'
2019-10-27 15:55:30 -04:00
Juanma Barranquero
9c611fd8ac
Backport commit 41ba8231e from Emacs
...
* lisp/ob-scheme.el (org-babel-scheme-get-buffer-impl):
* lisp/ob-shell.el (org-babel--variable-assignments:sh-generic)
(org-babel--variable-assignments:bash_array)
(org-babel--variable-assignments:bash_assoc)
(org-babel--variable-assignments:bash):
* lisp/org-clock.el (org-day-of-week):
(table--put-cell-valign-property): Fix typos.
* lisp/ob-core.el (org-babel-named-src-block-regexp-for-name)
(org-babel-named-data-regexp-for-name): Doc fix.
(org-babel-src-block-names, org-babel-result-names): Fix typos.
lisp/*.el: Fix typos and improve some docstrings
41ba8231ef072571e1a6feabc15d113e5cf57556
Juanma Barranquero
Sun Oct 20 12:12:27 2019 +0200
2019-10-27 15:54:59 -04:00
Kyle Meyer
d215c3a8c0
Merge branch 'maint'
2019-09-29 15:49:08 -04:00
Juanma Barranquero
97feee0469
Backport commit 114323226 from Emacs
...
* lisp/ob-C.el (org-babel-prep-session:C)
(org-babel-load-session:C):
* lisp/ob-J.el (org-babel-execute:J):
* lisp/ob-asymptote.el (org-babel-prep-session:asymptote):
* lisp/ob-awk.el (org-babel-execute:awk):
* lisp/ob-core.el (org-babel-process-file-name):
* lisp/ob-ebnf.el (org-babel-execute:ebnf):
* lisp/ob-forth.el (org-babel-execute:forth):
* lisp/ob-fortran.el (org-babel-execute:fortran)
(org-babel-prep-session:fortran, org-babel-load-session:fortran):
* lisp/ob-groovy.el (org-babel-execute:groovy):
* lisp/ob-io.el (org-babel-execute:io):
* lisp/ob-js.el (org-babel-execute:js):
* lisp/ob-lilypond.el (org-babel-default-header-args:lilypond)
(org-babel-lilypond-compile-post-tangle)
(org-babel-lilypond-display-pdf-post-tangle)
(org-babel-lilypond-tangle)
(org-babel-lilypond-execute-tangled-ly)
(org-babel-lilypond-compile-lilyfile)
(org-babel-lilypond-check-for-compile-error)
(org-babel-lilypond-process-compile-error)
(org-babel-lilypond-mark-error-line)
(org-babel-lilypond-parse-error-line)
(org-babel-lilypond-attempt-to-open-pdf)
(org-babel-lilypond-attempt-to-play-midi)
(org-babel-lilypond-switch-extension)
(org-babel-lilypond-set-header-args):
* lisp/ob-lua.el (org-babel-prep-session:lua):
* lisp/ob-picolisp.el (org-babel-execute:picolisp):
* lisp/ob-processing.el (org-babel-prep-session:processing):
* lisp/ob-python.el (org-babel-prep-session:python):
* lisp/ob-scheme.el (org-babel-scheme-capture-current-message)
(org-babel-scheme-execute-with-geiser, org-babel-execute:scheme):
* lisp/ob-shen.el (org-babel-execute:shen):
* lisp/org-agenda.el (org-agenda-entry-types)
(org-agenda-move-date-from-past-immediately-to-today)
(org-agenda-time-grid, org-agenda-sorting-strategy)
(org-agenda-filter-by-category, org-agenda-forward-block):
* lisp/org-faces.el (org-verbatim, org-cycle-level-faces):
* lisp/org-indent.el (org-indent-set-line-properties):
* lisp/org-macs.el (org-get-limited-outline-regexp):
* lisp/org-mobile.el (org-mobile-files):
* lisp/org.el (org-use-fast-todo-selection)
(org-extend-today-until, org-use-property-inheritance)
(org-refresh-effort-properties)
(org-track-ordered-property-with-tag, org-shiftright):
* lisp/ox-html.el (org-html-checkbox-type):
* lisp/ox-man.el (org-man-source-highlight)
(org-man-verse-block):
* lisp/ox-publish.el (org-publish-sitemap-default): Assorted
docfixes.
lisp/*.el: Fix typos and other trivial doc fixes
11432322650830fe9ae365f4113733a79226056d
Juanma Barranquero
Sat Sep 21 00:27:53 2019 +0200
2019-09-29 15:47:58 -04:00
Nicolas Goaziou
df30a056b2
Fix tangling bug when major mode for LANGUAGE is not `LANGUAGE-mode'
...
* lisp/ob-core.el (org-babel-expand-noweb-references):
* lisp/ob-tangle.el (org-babel-tangle): Use `org-src-get-lang-mode' so
as to use proper major mode.
Reported-by: immanuel <immanuel.litzroth@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2019-08/msg00272.html >
2019-08-30 23:36:00 +02:00
Nicolas Goaziou
4848b8b9aa
ob: Preserve comma escaping when inserting results
...
* lisp/ob-core.el (org-babel-insert-result): Fix typo
* testing/lisp/test-ob.el (test-ob/preserve-comma-escape): New test.
Reported-by: "Berry, Charles" <ccberry@ucsd.edu>
<http://lists.gnu.org/r/emacs-orgmode/2019-08/msg00250.html >
2019-08-22 10:03:56 +02:00
Joaquín Aguirrezabalaga
4939b41750
ob-core: Fix :dir when :mkdirp is not defined
...
* lisp/ob-core.el (org-babel-execute-src-block): Fix behaviour of
":dir path" when ":mkdirp" is not defined.
* testing/lisp/test-ob.el (test-ob-core/dir-mkdirp): Add a test case.
TINYCHANGE
2019-04-25 10:36:40 +02:00
Nicolas Goaziou
64f36561ef
Merge branch 'maint'
2019-03-21 21:51:36 +01:00
Sebastian Miele
719887958d
ob-core: Add edit-prep in org-babel-make-language-alias
...
Nicolas Goaziou <mail@nicolasgoaziou.fr> writes:
> Could you provide a commit message for your patch?
* lisp/ob-core.el (org-babel-make-language-alias): Add edit-prep to
the list of defalias'ed functions.
2019-03-21 21:51:12 +01:00
Kyle Meyer
c2f3f1912e
Merge branch 'maint'
2019-03-17 22:56:24 -04:00
Paul Eggert
602f2280e3
Backport commit 3c94c7bc0 and db9c924d3 from Emacs
...
* lisp/ob-core.el (org-babel-string-read):
* lisp/org-agenda.el:
(org-agenda-add-entry-to-org-agenda-diary-file):
* lisp/org-element.el (org-element-keyword-parser):
* lisp/org-list.el (org-list-indent-item-generic):
* lisp/org-mhe.el (org-mhe-get-message-folder-from-index):
* lisp/org-mobile.el (org-mobile-apply):
* lisp/org-mouse.el (org-mouse-context-menu):
* lisp/org-plot.el (org-plot/gnuplot):
* lisp/org-protocol.el (org-protocol-flatten-greedy):
* lisp/org-table.el (org-table-copy-down)
(org-table-formula-make-cmp-string)
(org-table-get-stored-formulas, org-table-recalculate)
(org-table-edit-formulas):
* lisp/org.el (org-translate-link-from-planner)
(org-fill-line-break-nobreak-p):
* lisp/ox-ascii.el (org-ascii-item):
* lisp/ox-latex.el (org-latex-clean-invalid-line-breaks):
* lisp/ox.el (org-export-expand-include-keyword):
Fix regular-expression infelicities and typos.
Fix regular-expression glitches and typos
3c94c7bc02fcacb4a101188dddb0c44d53444178
Paul Eggert
Mon Mar 4 18:00:58 2019 -0800
More regexp corrections and tweaks
db9c924d3d53f46846ad8fd74a5d08f4586a520e
Paul Eggert
Fri Mar 8 09:09:40 2019 -0800
Note(km): These two commits are ported together because, with respect
to Org files, db9c924d3 is a fix of an error from 3c94c7bc0.
2019-03-17 22:52:27 -04:00
Nicolas Goaziou
a486d9cbd7
Move link-related core functions out of "org.el"
...
* contrib/lisp/org-wl.el (org-wl-store-link-message):
* lisp/Makefile (clean-install):
* lisp/ob-core.el (org-link-bracket-re):
(org-babel-open-src-block-result):
(org-babel-read-element):
(org-babel-read-link):
(org-babel-result-end):
* lisp/ob-tangle.el (org-link-bracket-re):
(org-babel-tangle-single-block):
(org-link-analytic-bracket-re):
(org-babel-detangle):
(org-babel-tangle-jump-to-org):
* lisp/ol.el:
* lisp/org-agenda.el (org-agenda-get-some-entry-text):
(org-diary):
(org-agenda-format-item):
(org-agenda-open-link):
(org-agenda-switch-to):
(org-agenda-to-appt):
* lisp/org-bbdb.el (org-bbdb-store-link):
* lisp/org-bibtex.el (org-bibtex-store-link):
* lisp/org-capture.el (org-capture-fill-template):
* lisp/org-clock.el (org-clocktable-write-default):
(org-clock-get-table-data):
* lisp/org-compat.el (org-doi-server-url):
(org-email-link-description-format):
(org-make-link-description-function):
(org-from-is-user-regexp):
(org-descriptive-links):
(org-url-hexify-p):
(org-context-in-file-links):
(org-keep-stored-link-after-insertion):
(org-display-internal-link-with-indirect-buffer):
(org-confirm-shell-link-function):
(org-confirm-shell-link-not-regexp):
(org-confirm-elisp-link-function):
(org-confirm-elisp-link-not-regexp):
(org-file-complete-link):
(org-email-link-description):
(org-make-link-string):
(org-store-link-props):
(org-add-link-props):
(org-make-link-regexps):
(org-angle-link-re):
(org-plain-link-re):
(org-bracket-link-regexp):
(org-bracket-link-analytic-regexp):
(org-any-link-re):
* lisp/org-docview.el (org-docview-store-link):
(org-docview-complete-link):
* lisp/org-element.el (org-element-link-parser):
* lisp/org-eshell.el (org-eshell-store-link):
* lisp/org-eww.el (org-eww-store-link):
(org-eww-copy-for-org-mode):
* lisp/org-footnote.el (org-footnote-next-reference-or-definition):
* lisp/org-gnus.el (org-gnus-article-link):
(org-gnus-store-link):
* lisp/org-id.el (org-id-store-link):
* lisp/org-info.el (org-info-store-link):
* lisp/org-irc.el (org-irc-erc-store-link):
* lisp/org-mhe.el (org-mhe-store-link):
* lisp/org-pcomplete.el (pcomplete/org-mode/searchhead):
* lisp/org-protocol.el (org-protocol-do-capture):
* lisp/org-rmail.el (org-rmail-store-link):
* lisp/org-w3m.el (org-w3m-store-link):
(org-w3m-copy-for-org-mode):
2019-03-10 18:00:27 +01:00
stardiviner
8b5941330b
ob-core: Make :mkdirp work for :dir too
...
* lisp/ob-core.el (org-babel-execute-src-block): Make directory if
":dir path" does not exist when ":mkdirp yes" exist.
* doc/org-manual.org (Header arguments): Document it.
* testing/lisp/test-ob.el: Add a specific testing file for ob-core.el,
and add a testing for ":mkdir yes" work with :dir header argument
usage.
2019-03-04 22:25:48 +01:00
Nicolas Goaziou
0e5e01ba76
Merge branch 'maint'
2019-02-04 18:02:54 +01:00
Nicolas Goaziou
70dde3f617
ob-core: Fix Noweb reference regexp
...
* lisp/ob-core.el (org-babel-noweb-wrap): Fix regexp, which could not
match 2 character long references. Add docstring.
2019-02-04 18:02:38 +01:00
Kyle Meyer
ba321d0e44
Merge branch 'maint'
2019-01-13 15:14:37 -05:00
Basil L. Contovounesios
ede0d19feb
Backport commit 2fde6275b from Emacs
...
* lisp/ob-core.el (org-babel-insert-result): Use proper-list-p.
Add predicate proper-list-p
2fde6275b69fd113e78243790bf112bbdd2fe2bf
Basil L. Contovounesios
Mon Jul 9 19:00:43 2018 -0700
2019-01-13 12:43:04 -05:00
Bastien
7a22b8f93b
Merge branch 'maint'
2019-01-01 11:54:01 +01:00
Bastien
f584d37a67
Update copyright year
2019-01-01 11:50:56 +01:00
Gong Qijian
2b96fc9171
ob-core: Fix `org-babel--string-to-number'
...
* lisp/ob-core.el (org-babel--string-to-number): Fix the regular expression.
* testing/lisp/test-ob.el (test-ob/string-to-number): Test cases.
If people write the data in the form "0001"", it means that he wants to
treat it as a string.
TINYCHANGE
> #+name: TBL
> | id | name | age |
> |------|--------|-----|
> | 0001 | Apollo | 16 |
> | 0002 | Bmw | 16 |
>
> #+BEGIN_SRC emacs-lisp :results value pp :var tbl=TBL
> (mapc 'print tbl)
> #+END_SRC
>
> #+RESULTS:
> : (("0001" "Apollo" 16)
> : ("0002" "Bmw" 16))
TINYCHANGE
2018-10-13 23:22:05 +02:00
Nicolas Goaziou
1b62a56498
Merge branch 'master' into next
2018-10-06 09:42:04 +02:00
Nicolas Goaziou
5cc69a9ebf
Deprecate `org-babel-strip-quotes' in favor of `org-strip-quotes'
...
* lisp/ob-core.el (org-babel-strip-quotes): Remove function.
* lisp/org-macs.el (org-strip-quotes): New function.
* lisp/org-compat.el (org-babel-strip-quotes): Alias for new function.
* lisp/ob-haskell.el (org-babel-execute:haskell):
* lisp/ob-octave.el (org-babel-octave-evaluate-session): Use new function.
2018-10-06 09:40:33 +02:00
Nicolas Goaziou
26ed66b233
ob: :file and :file-ext no longer imply :results file
...
* lisp/ob-core.el (org-babel-execute-src-block): ":results file" must
be specified in order to return a file.
(org-babel-merge-params): :file and :file-ext no longer imply :results
file.
* testing/lisp/test-ob.el (test-ob/indented-cached-org-bracket-link):
(test-ob/result-file-link-type-header-argument):
(test-ob/result-graphics-link-type-header-argument): Update tests.
Deducing the results from some other arguments is not obvious.
Moreover, it prevents users from setting, e.g., :file-ext, in a node
property, as every block would then create a file.
Reported-by: Alex Fenton <alex@pressure.to>
<http://lists.gnu.org/r/emacs-orgmode/2018-05/msg00469.html >
2018-10-06 08:56:05 +02:00
Nicolas Goaziou
bfd481be42
ob-core: Remove `org-babel-set-current-result-hash'
...
* lisp/ob-core.el (org-babel-set-current-result-hash): Remove
function, unused through the code base.
2018-10-03 18:44:34 +02:00
Nicolas Goaziou
17edaf8c14
"src block" -> "source block" in documentation and comments
...
* etc/ORG-NEWS (Maxima: new headers ~:prologue~ and ~:epilogue~):
(Texinfo exports inline source blocks as ~@code{}~):
(Default lexical evaluation of emacs-lisp source blocks):
* lisp/ob-clojure.el (org-babel-clojure-default-ns):
* lisp/ob-core.el (org-babel-named-src-block-regexp-for-name):
(org-babel-current-src-block-location):
(org-babel-mark-block):
(org-babel-insert-result):
* lisp/ob-emacs-lisp.el (org-babel-default-header-args:emacs-lisp):
* lisp/ob-exp.el (org-babel-exp-process-buffer):
* lisp/ob-lob.el (org-babel-lob-ingest):
* lisp/ob-ref.el:
* lisp/org-element.el (org-element-object-restrictions):
(org-element-src-block-parser):
(org-element-inline-src-block-parser):
* lisp/org-lint.el:
(org-lint--checkers):
* lisp/org-pcomplete.el (pcomplete/org-mode/block-option/src):
* lisp/org-src.el (org-edit-inline-src-code):
* lisp/org.el (org-ctrl-c-ctrl-c):
(org-in-src-block-p):
(org-fill-element):
* lisp/ox-html.el (org-html--textarea-block):
(org-html-format-code):
* lisp/ox-latex.el (org-latex-minted-options):
(org-latex-custom-lang-environments):
* lisp/ox-md.el:
* lisp/ox-odt.el (org-odt-format-code):
* lisp/ox.el (org-export-collect-listings):
* testing/lisp/test-ob-exp.el (ob-exp/src-block-with-affiliated-keyword):
* testing/lisp/test-ob.el (test-ob/preserve-results-indentation):
Correct "src block" occurrences when they do not specifically refer
to the element type `src-block'.
2018-09-20 11:23:49 +02:00
Nicolas Goaziou
318d5bab64
Fix failing test
...
* lisp/ob-core.el (org-babel-import-elisp-from-file): Refactor code.
Fix error when `org-table-to-lisp' return value contains `hline'.
2018-08-30 23:48:41 +02:00
Nicolas Goaziou
120f871f41
Small refactoring
...
* lisp/ob-core.el (org-babel-open-src-block-result): Fix docstring,
refactor code.
* lisp/org.el (org-open-at-point): Refactor so as to not call
`org-babel-open-src-block-result' unconditionally.
2018-07-05 13:15:30 +02:00
Nicolas Goaziou
8e54cafeb2
Fix noweb expansion during export
...
* lisp/ob-core.el (org-babel-sha1-hash): Add optional argument to
specify context.
(org-babel-execute-src-block): Use new argument.
* lisp/ob-exp.el (org-babel-exp-src-block): Use new argument.
(org-babel-exp-results): Fix context.
Reported-by: Ken Mankoff <mankoff@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-06/msg00117.html >
2018-06-23 23:04:45 +02:00
Aaron Ecay
4afb7f747b
Update declare-function calls for functions that have moved.
...
In cases where functions have moved from org.el into org-macs.el, it
is often possible to replace declare-function by (require 'org-macs)
2018-05-10 01:04:12 +01:00
Nicolas Goaziou
0dda9bf1c1
Mark `org-get-indentation' as obsolete
...
* lisp/org-macs.el (org-get-indentation): Move function...
* lisp/org-compat: ... here.
* lisp/ob-core.el (org-babel-demarcate-block):
(org-babel-insert-result):
(org-babel-update-block-body):
* lisp/ob-exp.el (org-babel-exp-process-buffer):
* lisp/org-agenda.el (org-agenda-get-some-entry-text):
* lisp/org-capture.el (org-capture-place-item):
* lisp/org-clock.el (org-clock-in):
* lisp/org-element.el (org-element-swap-A-B):
* lisp/org-feed.el (org-feed-format-entry):
* lisp/org-indent.el (org-indent-add-properties):
* lisp/org-list.el (org-in-item-p):
(org-list-struct):
(org-list-struct-apply-struct):
(org-list-item-body-column):
(org-toggle-item):
* lisp/org-src.el (org-src--edit-element):
* lisp/org.el (org-fixup-indentation):
(org-cdlatex-environment-indent):
(org--get-expected-indentation):
(org-indent-region):
(org-toggle-fixed-width):
* lisp/ox.el (org-export-expand-include-keyword): Use
`current-indentation' instead.
2018-05-09 01:26:31 +02:00
stardiviner
b088389c6b
ob-core: Add document and test for "graphics" format
...
* doc/org-manual.org: Document value.
* lisp/ob-core.el (org-babel-common-header-args-w-values): Handle
symbol "graphics".
* testing/lisp/test-ob.el (test-ob/result-graphics-link-type-header-argument):
New test.
2018-04-12 15:16:04 +02:00
stardiviner
296b0de4e8
ob-core: Add "link" results format
...
* lisp/ob-core.el (org-babel-execute-src-block): Handle "link" :results
format.
* doc/org-manual.org: Add document for new result format "link".
* testing/lisp/test-ob.el (test-ob/result-file-link-type-header-argument):
New test.
2018-04-12 15:15:59 +02:00
Nicolas Goaziou
003af466c5
ob-core: Fix failing tests.
...
* lisp/ob-core.el (org-babel-result-to-file): Do not assume current
buffer is visiting a file.
2018-04-03 00:11:14 +02:00
Nicolas Goaziou
bc7b24d0d0
ob-core: Silence byte-compiler
2018-03-13 09:29:50 +01:00
stardiviner
49a8de4ffd
* ob-core.el (org-babel-result-to-file): relative file link result.
...
Respect option `org-link-file-path-type`.
2018-03-06 14:43:22 +08:00
Nicolas Goaziou
b420c8e290
ob-core: Fix last commit
...
* lisp/ob-core.el (org-babel-execute-src-block): Fix thinko in commit
122bf2997
.
2018-03-05 14:34:28 +01:00
Nicolas Goaziou
122bf29974
ob-core: Tiny refactoring
...
* lisp/ob-core.el (org-babel-execute-src-block): Tiny refactoring.
Keep lines under 80 columns.
2018-03-03 10:07:21 +01:00
stardiviner
39bd69b08d
* ob-core.el: (org-babel-execute-src-block) handle :results graphics :file case.
...
Don't write result to file if result is graphics.
2018-03-02 14:22:52 +08:00
Kyle Meyer
47908228e7
Merge branch 'maint'
2018-02-18 16:33:04 -05:00
Glenn Morris
4ddfc6bd69
Backport commit 66a4e651f from Emacs
...
; Fix doc typos related to indefinite articles
66a4e651f3cf38c320d1a9d5ae6f88dcc641792b
Glenn Morris
Fri Feb 16 15:16:15 2018 -0500
2018-02-18 16:32:41 -05:00
Nicolas Goaziou
013941de86
`org-save-outline-visibility' preserve outline, blocks and drawers
...
* lisp/org-macs.el (org-save-outline-visibility): Also preserve blocks
and drawers visibility. Re-implement without helper functions.
(org-outline-overlay-data):
(org-set-outline-overlay-data): Remove functions.
2018-02-11 11:37:50 +01:00
Nicolas Goaziou
e490d2766f
Merge branch 'maint'
2018-02-01 15:51:28 +01:00
Nicolas Goaziou
b4cc12fc32
ob-core: Fix infloop when filling a region with a source block
...
* lisp/ob-core.el (org-babel-do-in-edit-buffer): Do not move point.
Reported-by: Yasushi SHOJI <yasushi.shoji@gmail.com>
<http://lists.gnu.org/r/emacs-orgmode/2018-02/msg00006.html >
2018-02-01 15:40:51 +01:00
Nicolas Goaziou
0155441358
Merge branch 'maint'
2018-01-19 18:22:00 +01:00
Tim Landscheidt
b289a65be7
Use https for links to orgmode.org
...
TINYCHANGE
2018-01-19 18:14:58 +01:00
Nicolas Goaziou
000b943ebd
Re-order visibility functions in "org.el"
...
* lisp/org-macs.el (org-outline-overlay-data):
(org-set-outline-overlay-data): Moved from "org.el".
* lisp/org.el (org-remove-empty-overlays-at):
(org-show-empty-lines-in-parent):
(org-files-list):
(org-entry-beginning-position):
(org-entry-end-position):
(org-subtree-end-visible-p):
(org-first-headline-recenter):
(org-flag-region):
(org-show-entry):
(org-show-children):
(org-show-subtree):
(org-hide-block-toggle-maybe):
(org-hide-block-toggle):
(org-hide-block-toggle-all):
(org-hide-block-all):
(org-cycle-hide-drawers):
(org-flag-drawer):
(org-previous-block):
(org-next-block): Move functions.
2018-01-13 14:15:53 +01:00
Nicolas Goaziou
4dbb4a76a7
Implement `org-show-all'
...
* lisp/org.el (org-show-all): New function.
(org-cycle):
(org-cycle-internal-global):
(org-global-cycle):
(org-set-startup-visibility):
(org-set-outline-overlay-data):
(org-hide-block-all):
(org-mode-hook):
(org-tree-to-indirect-buffer):
(org-sort-entries):
(org-mode-map):
(org-org-menu):
* lisp/ob-lilypond.el (org-babel-lilypond-mark-error-line):
* lisp/org-archive.el (org-archive-subtree):
* lisp/org-capture.el (org-capture-place-template):
* lisp/org-mouse.el (org-mouse-popup-global-menu):
* lisp/ox-org.el (org-org-publish-to-org):
* testing/org-test.el (org-test-at-id):
(org-test-in-example-file): Use new function.
* lisp/org-compat.el (org-show-block-all): Mark as obsolete.
2018-01-10 15:58:21 +01:00
Kyle Meyer
d94f7024bc
Merge branch 'maint'
2018-01-07 00:28:35 -05:00
Kyle Meyer
3e1641ef0a
Update copyright years
2018-01-07 00:27:54 -05:00
Nicolas Goaziou
e9f30779de
Merge branch 'maint'
2017-12-31 15:49:55 +01:00
Nicolas Goaziou
af58a6dbf7
Change Org-mode into Org mode
...
* lisp/ob-core.el (org-babel-result-to-file):
* lisp/ob-picolisp.el:
* lisp/org-agenda.el (org-check-for-org-mode):
(org-search-view):
(org-tags-view):
(org-agenda-cleanup-fancy-diary):
(org-agenda-get-day-entries):
* lisp/org-table.el (orgtbl-mode):
* lisp/org-w3m.el (org-w3m-copy-for-org-mode):
* lisp/org.el (org-modules):
(org-startup-options):
(org-fontify-meta-lines-and-blocks):
* mk/default.mk:
* mk/manfull.pl:
* mk/org-fixup.el (org-make-org-version):
(org-make-org-loaddefs):
* mk/orgcard2txt.pl (rep_esc):
* mk/targets.mk ($(info):
* testing/README:
(Example):
* testing/examples/no-heading.org:
* testing/examples/normal.org: Change Org-mode into Org mode
2017-12-31 15:48:09 +01:00
Nicolas Goaziou
4d3e7a2a57
ob-core: All Noweb parameters are read at point of definition
...
* lisp/ob-core.el (org-babel-params-from-properties): Do not force
using `org-babel-current-src-block-location'. Extract properties
from point.
(org-babel--noweb-reference): Remove function.
(org-babel-expand-noweb-references): Apply function removal. Small
refactoring.
* lisp/ob-lob.el (org-babel-lob-get-info): Small refactoring.
2017-12-23 15:56:53 +01:00
Nicolas Goaziou
38be851245
ob-core: Do not always evaluate Lisp code in parameters
...
* lisp/ob-core.el (org-babel-get-src-block-info):
(org-babel-params-from-properties):
(org-babel-parse-header-arguments): Add optional argument disabling
Lisp evaluation in parameters.
2017-12-23 15:45:03 +01:00
Nicolas Goaziou
1e40dd6486
ob-core: Tiny refactoring
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Tiny
refactoring.
2017-12-23 14:03:52 +01:00
Nicolas Goaziou
774e553f11
Merge branch 'maint'
2017-12-23 14:03:47 +01:00
Nicolas Goaziou
d9125e435f
Fix recursive Noweb expansion
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Recursive Noweb
expansion obey to :noweb parameter.
* testing/lisp/test-ob.el (test-ob/noweb-expansion): Add tests.
Fixes: 17523
2017-12-23 13:58:25 +01:00
Nicolas Goaziou
3acc212c8f
ob-core: Get :noweb-ref from definition instead of point of call
...
* lisp/ob-core.el (org-babel-expand-noweb-references): Get :noweb-ref
from definition instead of point of call.
* testing/lisp/test-ob.el (test-ob/noweb-expansion-1):
(test-ob/noweb-expansion-2): Merge tests. Add test.
2017-12-20 13:15:08 +01:00
Nicolas Goaziou
291d90c53e
ob-core: Correctly find Noweb reference
...
* lisp/ob-core.el (org-babel--noweb-reference): New function.
(org-babel-expand-noweb-references): Use new function.
2017-12-20 13:01:53 +01:00
Nicolas Goaziou
2646271789
Merge branch 'maint'
2017-12-15 22:26:01 +01:00
Nicolas Goaziou
46124812d2
Fix function declarations
...
Fixes: 29722
2017-12-15 22:24:44 +01:00
Nicolas Goaziou
fc5abc2d55
ob-core: Insert lowercase results
...
* lisp/ob-core.el (org-babel-insert-result): Insert lower case blocks
and drawers.
* testing/lisp/test-ob.el (test-ob/org-babel-remove-result--results-wrap):
(test-ob/org-babel-remove-result--results-org):
(test-ob/org-babel-remove-result--results-html):
(test-ob/org-babel-remove-result--results-latex):
(test-ob/org-babel-remove-result--results-code): Update tests.
2017-12-10 23:05:32 +01:00
Nicolas Goaziou
819b2a1a3d
Merge branch 'maint'
2017-11-28 23:59:21 +01:00
Nicolas Goaziou
b4b2809eb1
ob-core: Fix `org-babel-src-block-names'
...
* lisp/ob-core.el (org-babel-src-block-names): Do not change
visibility or windows when called.
2017-11-28 23:57:18 +01:00
Nicolas Goaziou
e92732efd0
Merge branch 'maint'
2017-11-28 23:35:44 +01:00