mirror of
https://git.savannah.gnu.org/git/emacs.git
synced 2025-01-09 15:50:21 +00:00
54a0dee573
* org-protocol.el (org-protocol-store-link) (org-protocol-remember, org-protocol-open-source): Add autoloads. * org-compat.el (org-float-time): New function. * org.el (org-clock-update-time-maybe) (org-sort-entries-or-items, org-do-sort) (org-evaluate-time-range, org-time-string-to-seconds) (org-closed-in-range): Use `org-float-time'. * org-timer.el (org-timer-start, org-timer-pause-or-continue) (org-timer-seconds): Use `org-float-time'. * org-clock.el (org-clock-get-clocked-time, org-clock-out) (org-clock-sum, org-dblock-write:clocktable) (org-clocktable-steps): Use `org-float-time'. * org-agenda.el (org-agenda-last-marker-time) (org-agenda-new-marker, org-diary): Use `org-float-time'. * org-compat.el (w32-focus-frame): Declare the w32-focus-frame function. * org-exp.el (org-get-file-contents): Only protect lines that really need it. * org-html.el (require): Require cl for compilation. * org.el: Avoid using `default-major-mode'. * org-plot.el (require): Require CL only at compile time. * org-exp.el (require): Require CL only at compile time. * org-agenda.el (org-agenda-quit): When the agenda window is dedicated, remove other windows before exiting, so that the frame really will be killed. * org-exp.el (org-export-handle-include-files): Reset START and END for each loop cycle. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-eval-in-calendar): Use `org-select-frame-set-input-focus'. * org-compat.el (org-select-frame-set-input-focus): New function. * org.el (org-update-statistics-cookies): New function. (org-mode-map): Bind `C-c #' to `org-update-statistics-cookies'. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-src.el (org-edit-fixed-width-region): Set org-src-mode only after the local variables are set. * org-latex.el (org-export-latex-protect-amp): New function. (org-export-latex-links): Protect link ampersands in tables. * org-exp.el (org-export-select-backend-specific-text): Match in two steps, to avoid regexp problems. * org.el (org-offer-links-in-entry): Improve working with many and duplicate links. * org-agenda.el (org-agenda-show-1): Make more consistent with normal cycling. (org-agenda-cycle-show): Make more consistent with normal cycling. * org-gnus.el (org-gnus-store-link): Restore the linking to a website. 2009-09-02 Bastien Guerry <bzg@altern.org> * org-latex.el (org-export-latex-first-lines): Bugfix. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-clock.el (org-clock-modify-effort-estimate): Emit message about new effort. * org.el (org-set-effort): New function. (org-mode-map): New key for effort setting command. * org-agenda.el (org-agenda): Keep window setup when calling agenda from within agenda window. (org-agenda-mode-map): New keys for effort setting commands. (org-agenda-menu): Add effort setting commands to menu. (org-agenda-set-property, org-agenda-set-effort): New functions. * org-latex.el (org-export-latex-tables): Fix `org-table-last-alignment' and `org-table-last-column-widths' if the first column has been removed. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-remove-timestamp-with-keyword): Only remove in entry, not in subtree. * org-src.el (org-src-lang-modes): Add abbreviation elisp for emacs lisp. * org.el (org-open-at-point): When on headline, offer all strings in entry. * org-remember.el (org-remember-templates): Documentation fix. * org.el (org-move-subtree-down): Use `org-get-next-sibling' and `org-get-last-sibling' instead of the outline versions of these functions. (org-get-last-sibling): New function. (org-refile): Use `org-get-next-sibling' instead of the outline version of this function. (org-clean-visibility-after-subtree-move): Use `org-get-next-sibling' and `org-get-last-sibling' instead of the outline versions of these functions. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-agenda.el (org-prepare-agenda): When creating a new frame for the agenda, make the window dedicated. * org-agenda.el (org-agenda-mode-map): New keys for time motion. * org-table.el (org-table-align): Change the order of reinsertion and deletion, to avoid problems with overlays following the table. * org.el (org-parse-time-string): Better error message. (org-show-subtree): Use org-end-of-subtree. * org-macs.el (org-goto-line): New defsubst. * org.el (org-open-file, org-change-tag-in-region) (org-fast-tag-show-exit): Don't use `goto-line'. * org-table.el (org-table-align, org-table-insert-column) (org-table-delete-column, org-table-move-column) (org-table-sort-lines, org-table-copy-region) (org-table-paste-rectangle, org-table-wrap-region) (org-table-get-specials, org-table-rotate-recalc-marks) (org-table-get-range, org-table-recalculate) (org-table-edit-formulas, org-table-fedit-convert-buffer) (org-table-show-reference, org-table-highlight-rectangle): Don't use `goto-line'. * org-src.el (org-edit-src-code, org-edit-fixed-width-region) (org-edit-src-exit): Don't use `goto-line'. * org-macs.el (org-preserve-lc): Don't use `goto-line'. * org-list.el (org-renumber-ordered-list, org-fix-bullet-type): Don't use `goto-line'. * org-exp.el (org-export-number-lines): Don't use `goto-line'. * org-colview.el (org-columns, org-columns-redo) (org-agenda-columns): Don't use `goto-line'. * org-colview-xemacs.el (org-columns, org-agenda-columns): Don't use `goto-line'. * org-agenda.el (org-agenda-mode): Force visual line motion off. (org-agenda-add-entry-text-maxlines): Improve docstring. (org-agenda-start-with-entry-text-mode): New option. (org-agenda-entry-text-maxlines): New option. (org-agenda-entry-text-mode): New variable. (org-agenda-mode): Set initial value of `org-agenda-entry-text-mode'. (org-agenda-mode-map): Add the `E' key. (org-agenda-menu): Add entry text mode to the menu. (org-agenda-get-some-entry-text): Fix line count bug. (org-finalize-agenda): Apply entry text mode if appropriate. (org-agenda-entry-text-show-here): New function. (org-agenda-entry-text-show): New function. (org-agenda-entry-text-hide): New function. (org-agenda-view-mode-dispatch): Add entry text mode to the view key menu. (org-agenda-entry-text-mode): New command. (org-agenda-set-mode-name): Add entry text mode to the mode line string. (org-agenda-undo, org-agenda-get-restriction-and-command) (org-agenda-get-some-entry-text, org-agenda-redo): Don't use `goto-line'. 2009-09-02 Bernt Hansen <bernt@norang.ca> * org-clock.el (org-notify): Bugfix. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-agenda.el (org-agenda-open-link): Handle multiple links and check for after-string. * org-gnus.el (org-gnus-store-link): Simplify. * org.el (org-latex-regexps): Don't add extra empty lines for display formulas. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-agenda.el (org-agenda-get-some-entry-text): New function. (org-agenda-add-entry-text): Use `org-agenda-get-some-entry-text'. * org.el (org-cycle-separator-lines): Update docstring. (org-cycle-show-empty-lines): Handle negative values for `org-cycle-show-empty-lines'. * org-exp.el (org-export-protect-sub-super): New function. (org-export-normalize-links): Protect the url of plain links from supscript and superscript processing. * org-remember.el (org-remember-escaped-%): New function. (org-remember-apply-template): Use `org-remember-escaped-%' to detect escaped % signs. 2009-09-02 Bastien Guerry <bzg@altern.org> * org-timer.el (org-timer-set-timer): Use `org-notify' and play a sound when showing the notification. * org-clock.el (org-notify): New function. (org-clock-notify-once-if-expired): Use `org-notify'. * org-gnus.el (org-gnus-store-link): Handle `gnus-summary-mode' and `gnus-article-mode' separately. (gnus-summary-article-header): Fix the declare-function. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-exp.el (org-export-format-source-code-or-example): Translate language. * org-src.el (org-src-lang-modes): New variable (org-edit-src-code): Translate language. * org-exp.el (org-export-format-source-code-or-example): Deal wit the new structure of the `org-export-latex-listings-langs' variable. * org-latex.el (org-export-latex-listings-langs): Change structure of the variable from plist to alist. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-in-commented-line): New function. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-hide-block-toggle): Make folded blocks searchable. 2009-09-02 Friedrich Delgado Friedrichs <friedel@nomaden.org> (tiny change) * org.el (org-flag-drawer): More useful error. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-remember.el (org-remember-apply-template): Use org-icompleting-read. * org-publish.el (org-publish): Use org-icompleting-read. * org-colview.el (org-columns-edit-value, org-columns-new) (org-insert-columns-dblock): Use org-icompleting-read. * org-colview-xemacs.el (org-columns-edit-value) (org-columns-new, org-insert-columns-dblock): Use org-icompleting-read. * org-attach.el (org-attach-delete-one, org-attach-open): Use org-icompleting-read. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-hierarchical-todo-statistics): Improve docstring. (org-version): Return the version text. (org-org-menu): Add a menu entry for the new bug reporter. (org-submit-bug-report): New command. * org-list.el (org-hierarchical-checkbox-statistics): Improve docstring. * org.el (org-emphasis-regexp-components): Add "`" to set of pre-emphasis characters. * org-latex.el (org-export-latex-classes): Always include the soul package. (org-export-latex-emphasis-alist): Use \st for strikethough. * org-exp-blocks.el (org-export-blocks-preprocess): Use `indent-code-rigidly' to indent. * org-agenda.el (org-agenda-get-restriction-and-command): Remove properties only if MATCH really is a string. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-latex.el (org-export-latex-packages-alist): Fix customization type. * org.el (org-create-formula-image): Also use `org-export-latex-packages-alist'. * org-html.el (org-export-as-html): Fix bug in footnote regexp. (org-export-as-html): Format footnotes correctly. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-fast-tag-selection): Avoid text properties on tags in the alist. * org-agenda.el (org-agenda-get-restriction-and-command): Avoid text properties on the match element. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-set-regexps-and-options): Make sure the list of done keywords is not invalid. * org-exp.el (org-export-interpolate-newlines): New function. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-format-latex): Avoid nested overlays. * org-latex.el (org-export-latex-listings-langs): Add a few more languages. * org-exp.el (org-export-preprocess-apply-macros): Make sure to ignore newlines and space before the first macro argument. * org-latex.el (org-export-latex-tables): Remove save-excursion around `org-table-align'. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-export-html-special-string-regexps): Definition moved into org.el * org-exp.el (org-export-preprocess-apply-macros): Allow newlines in macro calls. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-latex.el (org-export-latex-listings) (org-export-latex-listings-langs): New options. * org-exp.el (org-export-format-source-code-or-example): Use listing package if requested by the user. 2009-09-02 Bastien Guerry <bzg@altern.org> * org.el (org-iswitchb): Fix bug when aborting the `org-iswitchb' command before actually switching to a buffer. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org-exp.el (org-get-file-contents): Only quote org lines when the markup is src or example. * org-agenda.el (org-agenda-skip-scheduled-if-deadline-is-shown): New option (org-agenda-get-day-entries): Remember deadline results and pass them on into the function getting the scheduling information. (org-agenda-get-scheduled): Accept deadline results as parameters and maybe skip some entries. (org-agenda-skip-scheduled-if-deadline-is-shown): New option. * org.el (org-insert-heading): When respecting content, do not convert current line to headline. * org-clock.el (org-clock-save-markers-for-cut-and-paste): Also cheeeeeck the hd marker (org-clock-in): Also set the hd marker. (org-clock-out): Also set the hd marker. (org-clock-cancel): Reset markers. * org.el (org-clock-hd-marker): New marker. * org-faces.el (org-agenda-clocking): New face. * org-agenda.el (org-agenda-mark-clocking-task): New function. (org-finalize-agenda): call `org-agenda-mark-clocking-task'. * org.el (org-modules): Add org-track.el. * org-agenda.el (org-agenda-bulk-marked-p): New function. (org-agenda-bulk-mark, org-agenda-bulk-unmark): Use `org-agenda-bulk-marked-p'. (org-agenda-bulk-toggle): New command. 2009-09-02 Carsten Dominik <carsten.dominik@gmail.com> * org.el (org-move-subtree-down): Hide subtree if it was folded, not just the body. * org-remember.el (org-remember-finalize): Avoid buffer-modified messages.
641 lines
26 KiB
EmacsLisp
641 lines
26 KiB
EmacsLisp
;;; org-faces.el --- Face definitions for Org-mode.
|
|
|
|
;; Copyright (C) 2004, 2005, 2006, 2007, 2008, 2009
|
|
;; Free Software Foundation, Inc.
|
|
|
|
;; Author: Carsten Dominik <carsten at orgmode dot org>
|
|
;; Keywords: outlines, hypermedia, calendar, wp
|
|
;; Homepage: http://orgmode.org
|
|
;; Version: 6.30c
|
|
;;
|
|
;; This file is part of GNU Emacs.
|
|
;;
|
|
;; GNU Emacs is free software: you can redistribute it and/or modify
|
|
;; it under the terms of the GNU General Public License as published by
|
|
;; the Free Software Foundation, either version 3 of the License, or
|
|
;; (at your option) any later version.
|
|
|
|
;; GNU Emacs is distributed in the hope that it will be useful,
|
|
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
;; GNU General Public License for more details.
|
|
|
|
;; You should have received a copy of the GNU General Public License
|
|
;; along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>.
|
|
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
;;
|
|
;;; Commentary:
|
|
|
|
;; This file contains the face definitions for Org.
|
|
|
|
;;; Code:
|
|
|
|
(require 'org-macs)
|
|
(require 'org-compat)
|
|
|
|
(defgroup org-faces nil
|
|
"Faces in Org-mode."
|
|
:tag "Org Faces"
|
|
:group 'org-font-lock)
|
|
|
|
(defface org-hide
|
|
'((((background light)) (:foreground "white"))
|
|
(((background dark)) (:foreground "black")))
|
|
"Face used to hide leading stars in headlines.
|
|
The foreground color of this face should be equal to the background
|
|
color of the frame."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-1 ;; originally copied from font-lock-function-name-face
|
|
(org-compatible-face 'outline-1
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Blue1"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 16) (background light)) (:foreground "Blue"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 8)) (:foreground "blue" :bold t))
|
|
(t (:bold t))))
|
|
"Face used for level 1 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-2 ;; originally copied from font-lock-variable-name-face
|
|
(org-compatible-face 'outline-2
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "DarkGoldenrod"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightGoldenrod"))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "yellow"))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "yellow" :bold t))
|
|
(t (:bold t))))
|
|
"Face used for level 2 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-3 ;; originally copied from font-lock-keyword-face
|
|
(org-compatible-face 'outline-3
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Purple"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "Cyan1"))
|
|
(((class color) (min-colors 16) (background light)) (:foreground "Purple"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "Cyan"))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "purple" :bold t))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "cyan" :bold t))
|
|
(t (:bold t))))
|
|
"Face used for level 3 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-4 ;; originally copied from font-lock-comment-face
|
|
(org-compatible-face 'outline-4
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Firebrick"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "chocolate1"))
|
|
(((class color) (min-colors 16) (background light)) (:foreground "red"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "red1"))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "red" :bold t))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "red" :bold t))
|
|
(t (:bold t))))
|
|
"Face used for level 4 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-5 ;; originally copied from font-lock-type-face
|
|
(org-compatible-face 'outline-5
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "ForestGreen"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "PaleGreen"))
|
|
(((class color) (min-colors 8)) (:foreground "green"))))
|
|
"Face used for level 5 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-6 ;; originally copied from font-lock-constant-face
|
|
(org-compatible-face 'outline-6
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "CadetBlue"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "Aquamarine"))
|
|
(((class color) (min-colors 8)) (:foreground "magenta"))))
|
|
"Face used for level 6 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-7 ;; originally copied from font-lock-builtin-face
|
|
(org-compatible-face 'outline-7
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "Orchid"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSteelBlue"))
|
|
(((class color) (min-colors 8)) (:foreground "blue"))))
|
|
"Face used for level 7 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-level-8 ;; originally copied from font-lock-string-face
|
|
(org-compatible-face 'outline-8
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "RosyBrown"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSalmon"))
|
|
(((class color) (min-colors 8)) (:foreground "green"))))
|
|
"Face used for level 8 headlines."
|
|
:group 'org-faces)
|
|
|
|
(defface org-special-keyword ;; originally copied from font-lock-string-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "RosyBrown"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSalmon"))
|
|
(t (:italic t))))
|
|
"Face used for special keywords."
|
|
:group 'org-faces)
|
|
|
|
(defface org-drawer ;; originally copied from font-lock-function-name-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Blue1"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 16) (background light)) (:foreground "Blue"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 8)) (:foreground "blue" :bold t))
|
|
(t (:bold t))))
|
|
"Face used for drawers."
|
|
:group 'org-faces)
|
|
|
|
(defface org-property-value nil
|
|
"Face used for the value of a property."
|
|
:group 'org-faces)
|
|
|
|
(defface org-column
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light))
|
|
(:background "grey90" :weight normal :slant normal :strike-through nil
|
|
:underline nil))
|
|
(((class color) (min-colors 16) (background dark))
|
|
(:background "grey30" :weight normal :slant normal :strike-through nil
|
|
:underline nil))
|
|
(((class color) (min-colors 8))
|
|
(:background "cyan" :foreground "black"
|
|
:weight normal :slant normal :strike-through nil
|
|
:underline nil))
|
|
(t (:inverse-video t))))
|
|
"Face for column display of entry properties.
|
|
This is actually only part of the face definition for the text in column view.
|
|
The following faces apply, with this priority.
|
|
|
|
1. The color of the reference face. This is normally the level fact that
|
|
is used in the outline. In agenda-mode, it will be the face of the
|
|
first character in the line. The color is explicitly retained to
|
|
make sure that the column line still looks a bit like the structure
|
|
line it is masking.
|
|
|
|
2. The `org-column' face.
|
|
|
|
3. The remaining properties of the reference face.
|
|
|
|
Since column view works by putting overlays with a display property
|
|
over individual characters in the buffer, the face of the underlining
|
|
character (this might for example be the a TODO keyword) might still
|
|
shine through in some properties. So when your column view looks
|
|
funny, with \"random\" colors, weight, strike-through, try to explicitly
|
|
set the properties in the `org-column' face. For example, set
|
|
:underline to nil, or the :slant to `normal'.
|
|
|
|
Under XEmacs, the rules are simpler, because the XEmacs version of
|
|
column view defines special faces for each outline level. See the file
|
|
`org-colview-xemacs.el' for details."
|
|
:group 'org-faces)
|
|
|
|
(defface org-column-title
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light))
|
|
(:background "grey90" :underline t :weight bold))
|
|
(((class color) (min-colors 16) (background dark))
|
|
(:background "grey30" :underline t :weight bold))
|
|
(((class color) (min-colors 8))
|
|
(:background "cyan" :foreground "black" :underline t :weight bold))
|
|
(t (:inverse-video t))))
|
|
"Face for column display of entry properties."
|
|
:group 'org-faces)
|
|
|
|
(when (fboundp 'set-face-attribute)
|
|
;; Make sure that a fixed-width face is used when we have a column table.
|
|
(set-face-attribute 'org-column nil
|
|
:height (face-attribute 'default :height)
|
|
:family (face-attribute 'default :family)))
|
|
|
|
(defface org-agenda-column-dateline
|
|
(org-compatible-face 'org-column
|
|
'((t nil)))
|
|
"Face used in agenda column view for datelines with summaries."
|
|
:group 'org-faces)
|
|
|
|
(defface org-warning
|
|
(org-compatible-face 'font-lock-warning-face
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "Red1" :bold t))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "Pink" :bold t))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "red" :bold t))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "red" :bold t))
|
|
(t (:bold t))))
|
|
"Face for deadlines and TODO keywords."
|
|
:group 'org-faces)
|
|
|
|
(defface org-archived ; similar to shadow
|
|
(org-compatible-face 'shadow
|
|
'((((class color grayscale) (min-colors 88) (background light))
|
|
(:foreground "grey50"))
|
|
(((class color grayscale) (min-colors 88) (background dark))
|
|
(:foreground "grey70"))
|
|
(((class color) (min-colors 8) (background light))
|
|
(:foreground "green"))
|
|
(((class color) (min-colors 8) (background dark))
|
|
(:foreground "yellow"))))
|
|
"Face for headline with the ARCHIVE tag."
|
|
:group 'org-faces)
|
|
|
|
(defface org-link
|
|
'((((class color) (background light)) (:foreground "Purple" :underline t))
|
|
(((class color) (background dark)) (:foreground "Cyan" :underline t))
|
|
(t (:underline t)))
|
|
"Face for links."
|
|
:group 'org-faces)
|
|
|
|
(defface org-footnote
|
|
'((((class color) (background light)) (:foreground "Purple" :underline t))
|
|
(((class color) (background dark)) (:foreground "Cyan" :underline t))
|
|
(t (:underline t)))
|
|
"Face for links."
|
|
:group 'org-faces)
|
|
|
|
(defface org-ellipsis
|
|
'((((class color) (background light)) (:foreground "DarkGoldenrod" :underline t))
|
|
(((class color) (background dark)) (:foreground "LightGoldenrod" :underline t))
|
|
(t (:strike-through t)))
|
|
"Face for the ellipsis in folded text."
|
|
:group 'org-faces)
|
|
|
|
(defface org-target
|
|
'((((class color) (background light)) (:underline t))
|
|
(((class color) (background dark)) (:underline t))
|
|
(t (:underline t)))
|
|
"Face for link targets."
|
|
:group 'org-faces)
|
|
|
|
(defface org-date
|
|
'((((class color) (background light)) (:foreground "Purple" :underline t))
|
|
(((class color) (background dark)) (:foreground "Cyan" :underline t))
|
|
(t (:underline t)))
|
|
"Face for date/time stamps."
|
|
:group 'org-faces)
|
|
|
|
(defface org-sexp-date
|
|
'((((class color) (background light)) (:foreground "Purple"))
|
|
(((class color) (background dark)) (:foreground "Cyan"))
|
|
(t (:underline t)))
|
|
"Face for diary-like sexp date specifications."
|
|
:group 'org-faces)
|
|
|
|
(defface org-tag
|
|
'((t (:bold t)))
|
|
"Default face for tags.
|
|
Note that the variable `org-tag-faces' can be used to overrule this face for
|
|
specific tags."
|
|
:group 'org-faces)
|
|
|
|
(defface org-todo ; font-lock-warning-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "Red1" :bold t))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "Pink" :bold t))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "red" :bold t))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "red" :bold t))
|
|
(t (:inverse-video t :bold t))))
|
|
"Face for TODO keywords."
|
|
:group 'org-faces)
|
|
|
|
(defface org-done ;; originally copied from font-lock-type-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "ForestGreen" :bold t))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "PaleGreen" :bold t))
|
|
(((class color) (min-colors 8)) (:foreground "green"))
|
|
(t (:bold t))))
|
|
"Face used for todo keywords that indicate DONE items."
|
|
:group 'org-faces)
|
|
|
|
(defface org-agenda-done ;; originally copied from font-lock-type-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "ForestGreen"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "PaleGreen"))
|
|
(((class color) (min-colors 8)) (:foreground "green"))
|
|
(t (:bold nil))))
|
|
"Face used in agenda, to indicate lines switched to DONE.
|
|
This face is used to de-emphasize items that where brightly colord in the
|
|
agenda because they were things to do, or overdue. The DONE state itself
|
|
is of course immediately visible, but for example a passed deadline is
|
|
\(by default) very bright read. This face could be simply the default face
|
|
of the frame, for example."
|
|
:group 'org-faces)
|
|
|
|
(defface org-headline-done ;; originally copied from font-lock-string-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "RosyBrown"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSalmon"))
|
|
(((class color) (min-colors 8) (background light)) (:bold nil))))
|
|
"Face used to indicate that a headline is DONE.
|
|
This face is only used if `org-fontify-done-headline' is set. If applies
|
|
to the part of the headline after the DONE keyword."
|
|
:group 'org-faces)
|
|
|
|
(defcustom org-todo-keyword-faces nil
|
|
"Faces for specific TODO keywords.
|
|
This is a list of cons cells, with TODO keywords in the car
|
|
and faces in the cdr. The face can be a symbol, or a property
|
|
list of attributes, like (:foreground \"blue\" :weight bold :underline t)."
|
|
:group 'org-faces
|
|
:group 'org-todo
|
|
:type '(repeat
|
|
(cons
|
|
(string :tag "keyword")
|
|
(sexp :tag "face"))))
|
|
|
|
(defcustom org-priority-faces nil
|
|
"Faces for specific Priorities.
|
|
This is a list of cons cells, with priority character in the car
|
|
and faces in the cdr. The face can be a symbol, or a property
|
|
list of attributes, like (:foreground \"blue\" :weight bold :underline t)."
|
|
:group 'org-faces
|
|
:group 'org-todo
|
|
:type '(repeat
|
|
(cons
|
|
(character :tag "Priority")
|
|
(sexp :tag "face"))))
|
|
|
|
(defvar org-tags-special-faces-re nil)
|
|
(defun org-set-tag-faces (var value)
|
|
(set var value)
|
|
(if (not value)
|
|
(setq org-tags-special-faces-re nil)
|
|
(setq org-tags-special-faces-re
|
|
(concat ":\\(" (mapconcat 'car value "\\|") "\\):"))))
|
|
|
|
(defface org-checkbox
|
|
(org-compatible-face 'bold
|
|
'((t (:bold t))))
|
|
"Face for checkboxes"
|
|
:group 'org-faces)
|
|
|
|
(unless (facep 'org-checkbox-statistics-todo)
|
|
(copy-face 'org-todo 'org-checkbox-statistics-todo)
|
|
(set-face-doc-string 'org-checkbox-statistics-todo
|
|
"Face used for unfinished checkbox statistics."))
|
|
|
|
(unless (facep 'org-checkbox-statistics-done)
|
|
(copy-face 'org-done 'org-checkbox-statistics-done)
|
|
(set-face-doc-string 'org-checkbox-statistics-done
|
|
"Face used for finished checkbox statistics."))
|
|
|
|
(defcustom org-tag-faces nil
|
|
"Faces for specific tags.
|
|
This is a list of cons cells, with tags in the car and faces in the cdr.
|
|
The face can be a symbol, or a property list of attributes,
|
|
like (:foreground \"blue\" :weight bold :underline t).
|
|
If you set this variable through customize, it will immediately be effective
|
|
in new buffers and in modified lines.
|
|
If you set it with Lisp, a restart of Emacs is required to activate the
|
|
changes."
|
|
:group 'org-faces
|
|
:group 'org-tags
|
|
:set 'org-set-tag-faces
|
|
:type '(repeat
|
|
(cons
|
|
(string :tag "Tag")
|
|
(sexp :tag "Face"))))
|
|
|
|
(defface org-table ;; originally copied from font-lock-function-name-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Blue1"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 16) (background light)) (:foreground "Blue"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "blue"))
|
|
(((class color) (min-colors 8) (background dark)))))
|
|
"Face used for tables."
|
|
:group 'org-faces)
|
|
|
|
(defface org-formula
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Firebrick"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "chocolate1"))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "red"))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "red"))
|
|
(t (:bold t :italic t))))
|
|
"Face for formulas."
|
|
:group 'org-faces)
|
|
|
|
(defface org-code
|
|
(org-compatible-face 'shadow
|
|
'((((class color grayscale) (min-colors 88) (background light))
|
|
(:foreground "grey50"))
|
|
(((class color grayscale) (min-colors 88) (background dark))
|
|
(:foreground "grey70"))
|
|
(((class color) (min-colors 8) (background light))
|
|
(:foreground "green"))
|
|
(((class color) (min-colors 8) (background dark))
|
|
(:foreground "yellow"))))
|
|
"Face for fixed-with text like code snippets."
|
|
:group 'org-faces
|
|
:version "22.1")
|
|
|
|
(defface org-meta-line
|
|
(org-compatible-face 'font-lock-comment-face nil)
|
|
"Face for meta lines startin with \"#+\"."
|
|
:group 'org-faces
|
|
:version "22.1")
|
|
|
|
(defface org-block
|
|
(org-compatible-face 'shadow
|
|
'((((class color grayscale) (min-colors 88) (background light))
|
|
(:foreground "grey50"))
|
|
(((class color grayscale) (min-colors 88) (background dark))
|
|
(:foreground "grey70"))
|
|
(((class color) (min-colors 8) (background light))
|
|
(:foreground "green"))
|
|
(((class color) (min-colors 8) (background dark))
|
|
(:foreground "yellow"))))
|
|
"Face text in #+begin ... #+end blocks."
|
|
:group 'org-faces
|
|
:version "22.1")
|
|
|
|
(defface org-verbatim
|
|
(org-compatible-face 'shadow
|
|
'((((class color grayscale) (min-colors 88) (background light))
|
|
(:foreground "grey50" :underline t))
|
|
(((class color grayscale) (min-colors 88) (background dark))
|
|
(:foreground "grey70" :underline t))
|
|
(((class color) (min-colors 8) (background light))
|
|
(:foreground "green" :underline t))
|
|
(((class color) (min-colors 8) (background dark))
|
|
(:foreground "yellow" :underline t))))
|
|
"Face for fixed-with text like code snippets."
|
|
:group 'org-faces
|
|
:version "22.1")
|
|
|
|
(defface org-clock-overlay ;; copied from secondary-selection
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light))
|
|
(:background "yellow1"))
|
|
(((class color) (min-colors 88) (background dark))
|
|
(:background "SkyBlue4"))
|
|
(((class color) (min-colors 16) (background light))
|
|
(:background "yellow"))
|
|
(((class color) (min-colors 16) (background dark))
|
|
(:background "SkyBlue4"))
|
|
(((class color) (min-colors 8))
|
|
(:background "cyan" :foreground "black"))
|
|
(t (:inverse-video t))))
|
|
"Basic face for displaying the secondary selection."
|
|
:group 'org-faces)
|
|
|
|
(defface org-agenda-structure ;; originally copied from font-lock-function-name-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Blue1"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 16) (background light)) (:foreground "Blue"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightSkyBlue"))
|
|
(((class color) (min-colors 8)) (:foreground "blue" :bold t))
|
|
(t (:bold t))))
|
|
"Face used in agenda for captions and dates."
|
|
:group 'org-faces)
|
|
|
|
(unless (facep 'org-agenda-date)
|
|
(copy-face 'org-agenda-structure 'org-agenda-date)
|
|
(set-face-doc-string 'org-agenda-date
|
|
"Face used in agenda for normal days."))
|
|
|
|
(unless (facep 'org-agenda-date-today)
|
|
(copy-face 'org-agenda-date 'org-agenda-date-today)
|
|
(set-face-doc-string 'org-agenda-date-today
|
|
"Face used in agenda for today.")
|
|
(when (fboundp 'set-face-attribute)
|
|
(set-face-attribute 'org-agenda-date-today nil :weight 'bold :italic 't)))
|
|
|
|
(unless (facep 'org-agenda-clocking)
|
|
(copy-face 'secondary-selection 'org-agenda-clocking)
|
|
(set-face-doc-string 'org-agenda-clocking
|
|
"Face marking the current clock item in the agenda."))
|
|
|
|
(unless (facep 'org-agenda-date-weekend)
|
|
(copy-face 'org-agenda-date 'org-agenda-date-weekend)
|
|
(set-face-doc-string 'org-agenda-date-weekend
|
|
"Face used in agenda for weekend days.
|
|
See the variable `org-agenda-weekend-days' for a definition of which days
|
|
belong to the weekend.")
|
|
(when (fboundp 'set-face-attribute)
|
|
(set-face-attribute 'org-agenda-date-weekend nil :weight 'bold)))
|
|
|
|
(defface org-scheduled
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "DarkGreen"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "PaleGreen"))
|
|
(((class color) (min-colors 8)) (:foreground "green"))
|
|
(t (:bold t :italic t))))
|
|
"Face for items scheduled for a certain day."
|
|
:group 'org-faces)
|
|
|
|
(defface org-scheduled-today
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "DarkGreen"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "PaleGreen"))
|
|
(((class color) (min-colors 8)) (:foreground "green"))
|
|
(t (:bold t :italic t))))
|
|
"Face for items scheduled for a certain day."
|
|
:group 'org-faces)
|
|
|
|
(defface org-agenda-dimmed-todo-face
|
|
'((((background light)) (:foreground "grey50"))
|
|
(((background dark)) (:foreground "grey50")))
|
|
"Face used to dimm blocked tasks in the agenda."
|
|
:group 'org-faces)
|
|
|
|
(defface org-scheduled-previously
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Firebrick"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "chocolate1"))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "red"))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "red" :bold t))
|
|
(t (:bold t))))
|
|
"Face for items scheduled previously, and not yet done."
|
|
:group 'org-faces)
|
|
|
|
(defface org-upcoming-deadline
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:foreground "Firebrick"))
|
|
(((class color) (min-colors 88) (background dark)) (:foreground "chocolate1"))
|
|
(((class color) (min-colors 8) (background light)) (:foreground "red"))
|
|
(((class color) (min-colors 8) (background dark)) (:foreground "red" :bold t))
|
|
(t (:bold t))))
|
|
"Face for items scheduled previously, and not yet done."
|
|
:group 'org-faces)
|
|
|
|
(defcustom org-agenda-deadline-faces
|
|
'((1.0 . org-warning)
|
|
(0.5 . org-upcoming-deadline)
|
|
(0.0 . default))
|
|
"Faces for showing deadlines in the agenda.
|
|
This is a list of cons cells. The cdr of each cell is a face to be used,
|
|
and it can also just be like '(:foreground \"yellow\").
|
|
Each car is a fraction of the head-warning time that must have passed for
|
|
this the face in the cdr to be used for display. The numbers must be
|
|
given in descending order. The head-warning time is normally taken
|
|
from `org-deadline-warning-days', but can also be specified in the deadline
|
|
timestamp itself, like this:
|
|
|
|
DEADLINE: <2007-08-13 Mon -8d>
|
|
|
|
You may use d for days, w for weeks, m for months and y for years. Months
|
|
and years will only be treated in an approximate fashion (30.4 days for a
|
|
month and 365.24 days for a year)."
|
|
:group 'org-faces
|
|
:group 'org-agenda-daily/weekly
|
|
:type '(repeat
|
|
(cons
|
|
(number :tag "Fraction of head-warning time passed")
|
|
(sexp :tag "Face"))))
|
|
|
|
(defface org-agenda-restriction-lock
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 88) (background light)) (:background "yellow1"))
|
|
(((class color) (min-colors 88) (background dark)) (:background "skyblue4"))
|
|
(((class color) (min-colors 16) (background light)) (:background "yellow1"))
|
|
(((class color) (min-colors 16) (background dark)) (:background "skyblue4"))
|
|
(((class color) (min-colors 8)) (:background "cyan" :foreground "black"))
|
|
(t (:inverse-video t))))
|
|
"Face for showing the agenda restriction lock."
|
|
:group 'org-faces)
|
|
|
|
(defface org-time-grid ;; originally copied from font-lock-variable-name-face
|
|
(org-compatible-face nil
|
|
'((((class color) (min-colors 16) (background light)) (:foreground "DarkGoldenrod"))
|
|
(((class color) (min-colors 16) (background dark)) (:foreground "LightGoldenrod"))
|
|
(((class color) (min-colors 8)) (:foreground "yellow" :weight light))))
|
|
"Face used for time grids."
|
|
:group 'org-faces)
|
|
|
|
(defconst org-level-faces
|
|
'(org-level-1 org-level-2 org-level-3 org-level-4
|
|
org-level-5 org-level-6 org-level-7 org-level-8
|
|
))
|
|
|
|
(defcustom org-n-level-faces (length org-level-faces)
|
|
"The number of different faces to be used for headlines.
|
|
Org-mode defines 8 different headline faces, so this can be at most 8.
|
|
If it is less than 8, the level-1 face gets re-used for level N+1 etc."
|
|
:type 'integer
|
|
:group 'org-faces)
|
|
|
|
(defface org-latex-and-export-specials
|
|
(let ((font (cond ((assq :inherit custom-face-attributes)
|
|
'(:inherit underline))
|
|
(t '(:underline t)))))
|
|
`((((class grayscale) (background light))
|
|
(:foreground "DimGray" ,@font))
|
|
(((class grayscale) (background dark))
|
|
(:foreground "LightGray" ,@font))
|
|
(((class color) (background light))
|
|
(:foreground "SaddleBrown"))
|
|
(((class color) (background dark))
|
|
(:foreground "burlywood"))
|
|
(t (,@font))))
|
|
"Face used to highlight math latex and other special exporter stuff."
|
|
:group 'org-faces)
|
|
|
|
(unless (facep 'org-mode-line-clock)
|
|
(copy-face 'modeline 'org-mode-line-clock)
|
|
(set-face-doc-string 'org-agenda-date
|
|
"Face used for clock display in mode line."))
|
|
|
|
(provide 'org-faces)
|
|
|
|
;; arch-tag: 9dab5f91-c4b9-4d6f-bac3-1f6211ad0a04
|
|
|
|
;;; org-faces.el ends here
|