Merge branch 'master' of orgmode.org:org-mode

This commit is contained in:
David Arroyo Menendez 2014-04-23 20:28:21 +02:00
commit 7bfdadc601
11 changed files with 53 additions and 51 deletions

View File

@ -2,6 +2,7 @@
#+TITLE: Org maintainer tasks
#+STARTUP: noindent
#+OPTIONS: ^:nil
This document describes the tasks the Org-mode maintainer has to do
and how they are performed.

View File

@ -96,7 +96,7 @@ this variable.")
(defun org-babel-expand-body:R (body params &optional graphics-file)
"Expand BODY according to PARAMS, return the expanded body."
(let ((graphics-file
(or graphics-file (org-babel-R-graphical-output-file params))))
(or graphics-file (org-babel-graphical-output-file params))))
(mapconcat #'identity
(append
(when (cdr (assoc :prologue params))
@ -117,7 +117,7 @@ This function is called by `org-babel-execute-src-block'."
(cdr (assoc :session params)) params))
(colnames-p (cdr (assoc :colnames params)))
(rownames-p (cdr (assoc :rownames params)))
(graphics-file (org-babel-R-graphical-output-file params))
(graphics-file (org-babel-graphical-output-file params))
(full-body
(let ((inside
(list (org-babel-expand-body:R body params graphics-file))))
@ -251,11 +251,6 @@ current code buffer."
(process-name (get-buffer-process session)))
(ess-make-buffer-current))
(defun org-babel-R-graphical-output-file (params)
"Name of file to which R should send graphical output."
(and (member "graphics" (cdr (assq :result-params params)))
(cdr (assq :file params))))
(defvar org-babel-R-graphics-devices
'((:bmp "bmp" "filename")
(:jpg "jpeg" "filename")

View File

@ -1591,7 +1591,7 @@ shown below.
;; row and column names
(defun org-babel-del-hlines (table)
"Remove all 'hlines from TABLE."
(remove 'hline table))
(remq 'hline table))
(defun org-babel-get-colnames (table)
"Return the column names of TABLE.
@ -2890,6 +2890,13 @@ For the format of SAFE-LIST, see `org-babel-safe-header-args'."
(member (cdr pair) (cdr entry)))
(t nil)))))))
;;; Used by backends: R, Maxima, Octave.
(defun org-babel-graphical-output-file (params)
"File where a babel block should send graphical output, per PARAMS."
(and (member "graphics" (cdr (assq :result-params params)))
(cdr (assq :file params))))
(provide 'ob-core)
;; Local variables:

View File

@ -52,7 +52,7 @@
(mapconcat 'identity
(list
;; graphic output
(let ((graphic-file (org-babel-maxima-graphical-output-file params)))
(let ((graphic-file (org-babel-graphical-output-file params)))
(if graphic-file
(format
"set_plot_option ([gnuplot_term, png]); set_plot_option ([gnuplot_out_file, %S]);"
@ -113,11 +113,6 @@ of the same value."
(format "%S: %s$" var
(org-babel-maxima-elisp-to-maxima val))))
(defun org-babel-maxima-graphical-output-file (params)
"Name of file to which maxima should send graphical output."
(and (member "graphics" (cdr (assq :result-params params)))
(cdr (assq :file params))))
(defun org-babel-maxima-elisp-to-maxima (val)
"Return a string of maxima code which evaluates to VAL."
(if (listp val)

View File

@ -84,16 +84,16 @@ end")
body params (org-babel-variable-assignments:octave params)))
(result (org-babel-octave-evaluate
session
(if (org-babel-octave-graphical-output-file params)
(if (org-babel-graphical-output-file params)
(mapconcat 'identity
(list
"set (0, \"defaultfigurevisible\", \"off\");"
full-body
(format "print -dpng %s" (org-babel-octave-graphical-output-file params)))
(format "print -dpng %s" (org-babel-graphical-output-file params)))
"\n")
full-body)
result-type matlabp)))
(if (org-babel-octave-graphical-output-file params)
(if (org-babel-graphical-output-file params)
nil
(org-babel-reassemble-table
result
@ -268,11 +268,6 @@ This removes initial blank and comment lines and then calls
(match-string 1 string)
string))
(defun org-babel-octave-graphical-output-file (params)
"Name of file to which maxima should send graphical output."
(and (member "graphics" (cdr (assq :result-params params)))
(cdr (assq :file params))))
(provide 'ob-octave)

View File

@ -650,7 +650,7 @@ of custom agenda commands."
:tag "Org Agenda Match View"
:group 'org-agenda)
(defgroup org-agenda-search-view nil
"Options concerning the general tags/property/todo match agenda view."
"Options concerning the search agenda view."
:tag "Org Agenda Search View"
:group 'org-agenda)
@ -3752,6 +3752,9 @@ generating a new one."
(delete-dups
(mapcar 'downcase (org-get-tags-at))))))))))
(run-hooks 'org-agenda-finalize-hook)
(when org-agenda-top-headline-filter
(org-agenda-filter-top-headline-apply
org-agenda-top-headline-filter))
(when org-agenda-tag-filter
(org-agenda-filter-apply org-agenda-tag-filter 'tag))
(when (get 'org-agenda-tag-filter :preset-filter)

View File

@ -5451,9 +5451,13 @@ The following commands are available:
;; Initialize cache.
(org-element-cache-reset)
;; Beginning/end of defun
(org-set-local 'beginning-of-defun-function 'org-back-to-heading)
(org-set-local 'beginning-of-defun-function 'org-backward-element)
(org-set-local 'end-of-defun-function
(lambda () (interactive) (org-end-of-subtree nil t)))
(lambda ()
(if (not (org-at-heading-p))
(org-forward-element)
(org-forward-element)
(forward-char -1))))
;; Next error for sparse trees
(org-set-local 'next-error-function 'org-occur-next-match)
;; Make sure dependence stuff works reliably, even for users who set it
@ -7740,7 +7744,7 @@ command."
pos hide-previous previous-pos)
;; If we insert after content, move there and clean up whitespace
(when respect-content
(when (and respect-content (not (org-on-heading-p)))
(org-end-of-subtree nil t)
(skip-chars-backward " \r\n")
(and (not (looking-back "^\\*+"))
@ -8589,11 +8593,11 @@ and still retain the repeater to cover future instances of the task."
beg end template task idprop
shift-n shift-what doshift nmin nmax)
(if (not (and (integerp n) (> n 0)))
(error "Invalid number of replications %s" n))
(user-error "Invalid number of replications %s" n))
(if (and (setq doshift (and (stringp shift) (string-match "\\S-" shift)))
(not (string-match "\\`[ \t]*\\+?\\([0-9]+\\)\\([hdwmy]\\)[ \t]*\\'"
shift)))
(error "Invalid shift specification %s" shift))
(user-error "Invalid shift specification %s" shift))
(when doshift
(setq shift-n (string-to-number (match-string 1 shift))
shift-what (cdr (assoc (match-string 2 shift)
@ -10627,7 +10631,7 @@ is used internally by `org-open-link-from-string'."
(setq clean-buffer-list-kill-buffer-names
(cons buf
clean-buffer-list-kill-buffer-names))))
(error "Abort"))))
(user-error "Abort"))))
((equal type "elisp")
(let ((cmd path))
(if (or (and (org-string-nw-p
@ -10643,7 +10647,7 @@ is used internally by `org-open-link-from-string'."
(if (eq (string-to-char cmd) ?\()
(eval (read cmd))
(call-interactively (read cmd))))
(error "Abort"))))
(user-error "Abort"))))
((equal type "id")
(require 'ord-id)
(funcall (nth 1 (assoc "id" org-link-protocols)) path))
@ -10735,7 +10739,7 @@ there is one, return it."
(message "Select link to open, RET to open all:")
(setq c (read-char-exclusive))
(and (get-buffer "*Select Link*") (kill-buffer "*Select Link*"))))
(when (equal c ?q) (error "Abort"))
(when (equal c ?q) (user-error "Abort"))
(if (equal c ?\C-m)
(setq link links)
(setq nth (- c ?0))
@ -13036,7 +13040,7 @@ This function is run automatically after each state change to a DONE state."
(time-to-days (current-time))))
(when (= (incf nshift) nshiftmax)
(or (y-or-n-p (message "%d repeater intervals were not enough to shift date past today. Continue? " nshift))
(error "Abort")))
(user-error "Abort")))
(org-timestamp-change n (cdr (assoc what whata)))
(org-at-timestamp-p t)
(setq ts (match-string 1))
@ -13720,7 +13724,7 @@ starting point when no match is found."
(while (setq p1 (funcall search-func (point) 'org-type))
(when (equal p1 limit)
(goto-char pos)
(error "No more matches"))
(user-error "No more matches"))
(when (equal (get-char-property p1 'org-type) 'org-occur)
(setq n (1- n))
(when (= n 0)
@ -13728,7 +13732,7 @@ starting point when no match is found."
(throw 'exit (point))))
(goto-char p1))
(goto-char p1)
(error "No more matches"))))
(user-error "No more matches"))))
(defun org-show-context (&optional key)
"Make sure point and context are visible.
@ -18151,11 +18155,12 @@ Optional argument FILE means use this file instead of the current."
((equal r ?r)
(org-remove-file file)
(throw 'nextfile t))
(t (error "Abort"))))))
(t (user-error "Abort"))))))
(defun org-get-agenda-file-buffer (file)
"Get a buffer visiting FILE. If the buffer needs to be created, add
it to the list of buffers which might be released later."
"Get an agenda buffer visiting FILE.
If the buffer needs to be created, add it to the list of buffers
which might be released later."
(let ((buf (org-find-base-buffer-visiting file)))
(if buf
buf ; just return it
@ -18577,7 +18582,7 @@ inspection."
(buffer-substring-no-properties
(region-beginning) (region-end)))))
(read-string "LaTeX Fragment: " frag nil frag))))
(unless latex-frag (error "Invalid LaTeX fragment"))
(unless latex-frag (user-error "Invalid LaTeX fragment"))
(let* ((tmp-in-file (file-relative-name
(make-temp-name (expand-file-name "ltxmathml-in"))))
(ignore (write-region latex-frag nil tmp-in-file))
@ -23011,7 +23016,7 @@ package ox-bibtex by Taru Karttunen."
(if (not (save-excursion
(or (re-search-forward re nil t)
(re-search-backward re nil t))))
(error "No bibliography defined in file")
(user-error "No bibliography defined in file")
(setq bib (concat (match-string 1) ".bib")
rds (list (list 'bib bib)))))))
(call-interactively 'reftex-citation)))
@ -23604,7 +23609,8 @@ When BLOCK-REGEXP is non-nil, use this regexp to find blocks."
(if (looking-at re) (forward-char 1))
(condition-case nil
(funcall re-search-fn re nil nil arg)
(error (error "No %s code blocks" (if backward "previous" "further" ))))
(error (user-error "No %s code blocks"
(if backward "previous" "further" ))))
(goto-char (match-beginning 0)) (org-show-context)))
(defun org-previous-block (arg &optional block-regexp)

View File

@ -454,6 +454,7 @@ export back-end currently used."
(not org-html-use-infojs)
(and (eq org-html-use-infojs 'when-configured)
(or (not (plist-get exp-plist :infojs-opt))
(string= "" (plist-get exp-plist :infojs-opt))
(string-match "\\<view:nil\\>"
(plist-get exp-plist :infojs-opt)))))
(let* ((template org-html-infojs-template)

View File

@ -85,10 +85,11 @@ keyword."
(defcustom org-icalendar-use-deadline '(event-if-not-todo todo-due)
"Contexts where iCalendar export should use a deadline time stamp.
This is a list with several symbols in it. Valid symbol are:
This is a list with possibly several symbols in it. Valid symbols are:
`event-if-todo' Deadlines in TODO entries become calendar events.
`event-if-not-todo' Deadlines in non-TODO entries become calendar events.
`todo-due' Use deadlines in TODO entries as due-dates"
`todo-due' Use deadlines in TODO entries as due-dates."
:group 'org-export-icalendar
:type '(set :greedy t
(const :tag "Deadlines in non-TODO entries become events"
@ -101,7 +102,8 @@ This is a list with several symbols in it. Valid symbol are:
(defcustom org-icalendar-use-scheduled '(todo-start)
"Contexts where iCalendar export should use a scheduling time stamp.
This is a list with several symbols in it. Valid symbol are:
This is a list with possibly several symbols in it. Valid symbols are:
`event-if-todo' Scheduling time stamps in TODO entries become an event.
`event-if-not-todo' Scheduling time stamps in non-TODO entries become an event.
`todo-start' Scheduling time stamps in TODO entries become start date.

View File

@ -752,7 +752,7 @@ e.g. \"tasks:nil\"."
(defcustom org-export-time-stamp-file t
"Non-nil means insert a time stamp into the exported file.
The time stamp shows when the file was created. This option can
The time stamp shows when the file was created. This option can
also be set with the OPTIONS keyword, e.g. \"timestamp:nil\"."
:group 'org-export-general
:type 'boolean)

View File

@ -488,15 +488,12 @@
(org-test-with-temp-text "* H1\n Body"
(org-insert-todo-heading-respect-content)
(nth 2 (org-heading-components))))
;; Add headline after body of current subtree.
;; Add headline at the end of the first subtree
(should
(org-test-with-temp-text "* H1\nBody"
(org-test-with-temp-text "* H1\nH1Body\n** H2\nH2Body"
(search-forward "H1Body")
(org-insert-todo-heading-respect-content)
(eobp)))
(should
(org-test-with-temp-text "* H1\n** H2\nBody"
(org-insert-todo-heading-respect-content)
(eobp)))
(and (eobp) (org-at-heading-p))))
;; In a list, do not create a new item.
(should
(org-test-with-temp-text "* H\n- an item\n- another one"