diff options
Diffstat (limited to 'lisp/org/org-pcomplete.el')
-rw-r--r-- | lisp/org/org-pcomplete.el | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/lisp/org/org-pcomplete.el b/lisp/org/org-pcomplete.el index d1172d8988e..5e5e48d3f42 100644 --- a/lisp/org/org-pcomplete.el +++ b/lisp/org/org-pcomplete.el @@ -5,7 +5,7 @@ ;; Author: Carsten Dominik <carsten.dominik@gmail.com> ;; John Wiegley <johnw at gnu dot org> ;; Keywords: outlines, hypermedia, calendar, wp -;; Homepage: https://orgmode.org +;; URL: https://orgmode.org ;; ;; This file is part of GNU Emacs. ;; @@ -27,15 +27,18 @@ ;;;; Require other packages (require 'org-macs) +(org-assert-version) + +(require 'org-macs) (require 'org-compat) (require 'pcomplete) (declare-function org-at-heading-p "org" (&optional ignored)) (declare-function org-babel-combine-header-arg-lists "ob-core" (original &rest others)) -(declare-function org-babel-get-src-block-info "ob-core" (&optional light datum)) +(declare-function org-babel-get-src-block-info "ob-core" (&optional no-eval datum)) (declare-function org-before-first-heading-p "org" ()) (declare-function org-buffer-property-keys "org" (&optional specials defaults columns)) -(declare-function org-element-at-point "org-element" ()) +(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)) (declare-function org-end-of-meta-data "org" (&optional full)) @@ -47,6 +50,7 @@ (declare-function org-get-tags "org" (&optional pos local)) (declare-function org-link-heading-search-string "ol" (&optional string)) (declare-function org-tag-alist-to-string "org" (alist &optional skip-key)) +(declare-function org-time-stamp-format "org" (&optional with-time inactive custom)) (defvar org-babel-common-header-args-w-values) (defvar org-current-tag-alist) @@ -67,7 +71,6 @@ (defvar org-property-re) (defvar org-startup-options) (defvar org-tag-re) -(defvar org-time-stamp-formats) (defvar org-todo-keywords-1) (defvar org-todo-line-regexp) @@ -227,7 +230,7 @@ When completing for #+STARTUP, for example, this function returns (defun pcomplete/org-mode/file-option/date () "Complete arguments for the #+DATE file option." - (pcomplete-here (list (format-time-string (car org-time-stamp-formats))))) + (pcomplete-here (list (format-time-string (org-time-stamp-format))))) (defun pcomplete/org-mode/file-option/email () "Complete arguments for the #+EMAIL file option." @@ -361,7 +364,11 @@ This needs more work, to handle headings with lots of spaces in them." (pcomplete-uniquify-list tbl))) ;; When completing a bracketed link, i.e., "[[*", argument ;; starts at the star, so remove this character. - (substring pcomplete-stub 1)))) + ;; Also, if the completion is done inside [[*head<point>]], + ;; drop the closing parentheses. + (replace-regexp-in-string + "\\]+$" "" + (substring pcomplete-stub 1))))) (defun pcomplete/org-mode/tag () "Complete a tag name. Omit tags already set." @@ -421,7 +428,7 @@ switches." (symbol-plist 'org-babel-load-languages) 'custom-type))))))) - (let* ((info (org-babel-get-src-block-info 'light)) + (let* ((info (org-babel-get-src-block-info 'no-eval)) (lang (car info)) (lang-headers (intern (concat "org-babel-header-args:" lang))) (headers (org-babel-combine-header-arg-lists |