Function: org-agenda-manipulate-query

org-agenda-manipulate-query is a byte-compiled function defined in org-agenda.el.gz.

Signature

(org-agenda-manipulate-query CHAR)

Source Code

;; Defined in /usr/src/emacs/lisp/org/org-agenda.el.gz
(defun org-agenda-manipulate-query (char)
  (cond
   ((eq org-agenda-type 'agenda)
    (let ((org-agenda-include-inactive-timestamps t))
      (org-agenda-redo))
    (message "Display now includes inactive timestamps as well"))
   ((eq org-agenda-type 'search)
    ;; Previous calls to `org-agenda-manipulate-query' could already
    ;; add trailing text to the query.  Prevent duplicating it.
    ;; Trim the trailing spaces and +/.
    (setq org-agenda-query-string
          (replace-regexp-in-string
           (rx (or (1+ " ") (seq (1+ " ") (any "+-") (opt "{}"))) eos)
           ""
           org-agenda-query-string))
    (org-add-to-string
     'org-agenda-query-string
     (if org-agenda-last-search-view-search-was-boolean
	 (cdr (assoc char '((?\[ . " +") (?\] . " -")
			    (?\{ . " +{}") (?\} . " -{}"))))
       " "))
    (setq org-agenda-redo-command
	  (list 'org-search-view
		(car (get-text-property (min (1- (point-max)) (point))
					'org-last-args))
		org-agenda-query-string
		(+ (length org-agenda-query-string)
		   (if (member char '(?\{ ?\})) 0 1))))
    (set-register org-agenda-query-register org-agenda-query-string)
    (let ((org-agenda-overriding-arguments
	   (cdr org-agenda-redo-command)))
      (org-agenda-redo)))
   (t (error "Cannot manipulate query for %s-type agenda buffers"
	     org-agenda-type))))