Function: org-agenda-set-mode-name

org-agenda-set-mode-name is a byte-compiled function defined in org-agenda.el.gz.

Signature

(org-agenda-set-mode-name)

Documentation

Set the mode name to indicate all the small mode settings.

Source Code

;; Defined in /usr/src/emacs/lisp/org/org-agenda.el.gz
(defun org-agenda-set-mode-name ()
  "Set the mode name to indicate all the small mode settings."
  (setq mode-name
	(list "Org-Agenda"
	      (if (get 'org-agenda-files 'org-restrict) " []" "")
	      " "
	      '(:eval (org-agenda-span-name org-agenda-current-span))
	      (if org-agenda-follow-mode     " Follow" "")
	      (if org-agenda-entry-text-mode " ETxt"   "")
	      (if org-agenda-include-diary   " Diary"  "")
	      (if org-agenda-include-deadlines " Ddl"  "")
	      (if org-agenda-use-time-grid   " Grid"   "")
	      (if (and (boundp 'org-habit-show-habits)
		       org-habit-show-habits)
		  " Habit"   "")
	      (cond
	       ((consp org-agenda-show-log) " LogAll")
	       ((eq org-agenda-show-log 'clockcheck) " ClkCk")
	       (org-agenda-show-log " Log")
	       (t ""))
	      (if (org-agenda-filter-any) " " "")
	      (if (or org-agenda-category-filter
		      (assoc-default 'category org-agenda-filters-preset))
		  '(:eval (propertize
			   (concat "["
	                           (mapconcat
                                    #'identity
	                            (append
                                     (assoc-default 'category org-agenda-filters-preset)
	                             org-agenda-category-filter)
	                            "")
				   "]")
	                   'face 'org-agenda-filter-category
                           'help-echo "Category used in filtering"))
                "")
	      (if (or org-agenda-tag-filter
		      (assoc-default 'tag org-agenda-filters-preset))
		  '(:eval (propertize
			   (concat (mapconcat
				    #'identity
				    (append
				     (assoc-default 'tag org-agenda-filters-preset)
				     org-agenda-tag-filter)
				    ""))
			   'face 'org-agenda-filter-tags
			   'help-echo "Tags used in filtering"))
		"")
	      (if (or org-agenda-effort-filter
		      (assoc-default 'effort org-agenda-filters-preset))
		  '(:eval (propertize
			   (concat (mapconcat
				    #'identity
				    (append
				     (assoc-default 'effort org-agenda-filters-preset)
				     org-agenda-effort-filter)
				    ""))
			   'face 'org-agenda-filter-effort
			   'help-echo "Effort conditions used in filtering"))
		"")
	      (if (or org-agenda-regexp-filter
		      (assoc-default 'regexp org-agenda-filters-preset))
		  '(:eval (propertize
			   (concat (mapconcat
				    (lambda (x) (concat (substring x 0 1) "/" (substring x 1) "/"))
				    (append
				     (assoc-default 'regexp org-agenda-filters-preset)
				     org-agenda-regexp-filter)
				    ""))
			   'face 'org-agenda-filter-regexp
			   'help-echo "Regexp used in filtering"))
		"")
	      (if org-agenda-archives-mode
		  (if (eq org-agenda-archives-mode t)
		      " Archives"
		    (format " :%s:" org-archive-tag))
		"")
	      (if org-agenda-clockreport-mode " Clock" "")))
  (force-mode-line-update))