%PDF- %PDF-
Direktori : /usr/local/share/emacs/27.2/lisp/calendar/ |
Current File : //usr/local/share/emacs/27.2/lisp/calendar/diary-lib.elc |
;ELC ;;; Compiled ;;; in Emacs version 27.2 ;;; with all optimizations. ;;; This file contains utf-8 non-ASCII characters, ;;; and so cannot be loaded into Emacs 22 or earlier. (and (boundp 'emacs-version) (< (aref emacs-version (1- (length emacs-version))) ?A) (string-lessp emacs-version "23") (error "`%s' was compiled for Emacs 23 or later" #$)) ;;;;;;;;;;;;;;;;;;;;;;;;;;;;; (byte-code "\300\301!\210\302\303\304\305#\210\306\307\304\310\311\312\313\301&\210\314\315\316\317\320DD\321\322\323\313\307&\210\314\324\316\317\325DD\326\322\327\313\307&\210\330\331\332\333\334\335\313\336&\210\330\337\340\341\334\335\313\336&\210\330\342\343\344\334\335\313\336&\210\314\345\316\317\346DD\347\322\350\313\307&\210\314\351\316\317\352DD\353\322\354\313\307&\210\314\355\316\317\356DD\357\322\327\313\307&\210\314\360\316\317\361DD\362\322\317\313\307&\210\314\363\316\317\364DD\365\322\323\313\307&\210\314\366\316\317\367DD\370\334\371\322\372\313\307& \210\314\373\316\317\374DD\375\334\371\322\323\313\307& \210\314\376\316\317\377DD\201@ \322\201A \313\307&\210\314\201B \316\317\201C DD\201D \322\201E \201F \201G \201H \201I \334\201J \313\307& \210\314\201K \316\317\201L DD\201M \322\201A \201N \201O \313\307& \210\314\201P \316\317\201Q DD\201R \322\201A \201N \201S \313\307& \210\314\201T \316\317\201U DD\201V \322\201A \201N \201W \313\307& \210\314\201X \316\317\201Y DD\201Z \322\201A \201N \201[ \313\307& \210\314\201\\ \316\317\201] DD\201^ \322\201A \313\307&\210\314\201_ \316\317\201` DD\201a \322\201b \313\307\334\201c & \210\314\201d \316\317\201e DD\201f \313\307\322\323\334\201c & \210\314\201g \316\317\201h DD\201i \313\307\322\201b \334\201c & \210\314\201j \316\317\201k DD\201l \322\201m \201n \305\313\307& \210\314\201o \316\317\201p DD\201q \322\327\313\307&\207" [require calendar load "diary-loaddefs" nil t custom-declare-group diary "Emacs diary." :prefix "diary-" :group custom-declare-variable diary-include-string funcall function #[0 "\300\207" [#1="#include"] 1 #1#] "The string indicating inclusion of another file of diary entries.\nSee the documentation for the function `diary-include-other-diary-files'." :type string diary-list-include-blanks #[0 "\300\207" [nil] 1] "If nil, do not include days with no diary entry in the list of diary entries.\nSuch days will then not be shown in the fancy diary buffer, even if they\nare holidays." boolean custom-declare-face diary-anniversary ((t :inherit font-lock-keyword-face)) "Face used for anniversaries in the fancy diary display." :version "22.1" calendar-faces diary-time ((t :inherit font-lock-variable-name-face)) "Face used for times of day in the fancy diary display." diary-button ((((type pc) (class color)) (:foreground "lightblue"))) "Face used for buttons in the fancy diary display." diary-face-attrs #[0 "\300\207" [((" *\\[foreground:\\([-a-z]+\\)\\]$" 1 :foreground string) (" *\\[background:\\([-a-z]+\\)\\]$" 1 :background string) (" *\\[width:\\([-a-z]+\\)\\]$" 1 :width symbol) (" *\\[height:\\([.0-9]+\\)\\]$" 1 :height int) (" *\\[weight:\\([-a-z]+\\)\\]$" 1 :weight symbol) (" *\\[slant:\\([-a-z]+\\)\\]$" 1 :slant symbol) (" *\\[underline:\\([-a-z]+\\)\\]$" 1 :underline stringtnil) (" *\\[overline:\\([-a-z]+\\)\\]$" 1 :overline stringtnil) (" *\\[strike-through:\\([-a-z]+\\)\\]$" 1 :strike-through stringtnil) (" *\\[inverse-video:\\([-a-z]+\\)\\]$" 1 :inverse-video tnil) (" *\\[face:\\([-0-9a-z]+\\)\\]$" 1 :face string) (" *\\[font:\\([-a-z0-9]+\\)\\]$" 1 :font string))] 1] "Alist of (REGEXP SUBEXP ATTRIBUTE TYPE) elements.\nThis is used by `diary-pull-attrs' to fontify certain diary\nelements. REGEXP is a regular expression to for, and SUBEXP is\nthe numbered sub-expression to extract. `diary-glob-file-regexp-prefix'\nis pre-pended to REGEXP for file-wide specifiers. ATTRIBUTE\nspecifies which face attribute (e.g. `:foreground') to modify, or\nthat this is a face (`:face') to apply. TYPE is the type of\nattribute being applied. Available TYPES (see `diary-attrtype-convert')\nare: `string', `symbol', `int', `tnil', `stringtnil'." (repeat (list (string :tag "Regular expression") (integer :tag "Sub-expression") (symbol :tag "Attribute (e.g. :foreground)") (choice (const string :tag "A string") (const symbol :tag "A symbol") (const int :tag "An integer") (const tnil :tag "t or nil") (const stringtnil :tag "A string, t, or nil")))) diary-glob-file-regexp-prefix #[0 "\300\207" [#2="^#"] 1 #2#] "Regular expression pre-pended to `diary-face-attrs' for file-wide specifiers." regexp diary-file-name-prefix #[0 "\300\207" [nil] 1] "Non-nil means prefix each diary entry with the name of the file defining it." diary-file-name-prefix-function #[0 "\300\207" [identity] 1] "The function that will take a diary file name and return the desired prefix." diary-sexp-entry-symbol #[0 "\300\207" [#3="%%"] 1 #3#] "The string used to indicate a sexp diary entry in `diary-file'.\nSee the documentation for the function `diary-list-sexp-entries'." diary-comment-start #[0 "\300\207" [nil] 1] "String marking the start of a comment in the diary, or nil.\nNil means there are no comments. The diary does not display\nparts of entries that are inside comments. You can use comments\nfor whatever you like, e.g. for meta-data that packages such as\n`appt.el' can use. Comments may not span multiple lines, and there\ncan be only one comment on any line.\nSee also `diary-comment-end'." "24.1" (choice (const :tag "No comment" nil) string) diary-comment-end #[0 "\300\207" [#4=""] 1 #4#] "String marking the end of a comment in the diary.\nThe empty string means comments finish at the end of a line.\nSee also `diary-comment-start'." diary-hook #[0 "\300\207" [nil] 1] "Hook run after displaying the diary.\nUsed for example by the appointment package - see `appt-activate'.\nThe variables `number' and `original-date' are dynamically bound around\nthe call." hook diary-display-function #[0 "\300\207" [diary-fancy-display] 1] "Function used to display the diary.\nThe two standard options are `diary-fancy-display' and `diary-simple-display'.\n\nWhen this function is called, the variable `diary-entries-list'\nis a list, in order by date, of all relevant diary entries in the\nform of ((MONTH DAY YEAR) STRING), where string is the diary\nentry for the given date. This can be used, for example, to\nproduce a different buffer for display (perhaps combined with\nholidays), or hard copy output." (choice (const diary-fancy-display :tag "Fancy display") (const diary-simple-display :tag "Basic display") (const :tag "No display" ignore) (function :tag "User-specified function")) :initialize custom-initialize-default :set diary-set-maybe-redraw "23.2" diary-list-entries-hook #[0 "\300\207" [nil] 1] "Hook run after diary file is culled for relevant entries.\n\nIf you add `diary-include-other-diary-files' to this hook, you\nwill probably also want to add `diary-mark-included-diary-files'\nto `diary-mark-entries-hook'. For example, to cause the fancy\ndiary buffer to be displayed with diary entries from various\nincluded files, each day's entries sorted into lexicographic\norder, add the following to your init file:\n\n (setq diary-display-function #\\='diary-fancy-display)\n (add-hook \\='diary-list-entries-hook #\\='diary-include-other-diary-files)\n (add-hook \\='diary-list-entries-hook #\\='diary-sort-entries t)\n\nNote how the sort function is placed last, so that it can sort\nthe entries included from other files.\n\nThis hook runs after `diary-nongregorian-listing-hook'. These two hooks\ndiffer only if you are using included diary files. In that case,\n`diary-nongregorian-listing-hook' runs for each file, whereas\n`diary-list-entries-hook' only runs once, for the main diary file.\nSo for example, to sort the complete list of diary entries you would\nuse the list-entries hook, whereas to process e.g. Islamic entries in\nthe main file and all included files, you would use the nongregorian hook." :options (diary-include-other-diary-files diary-sort-entries) diary-mark-entries-hook #[0 "\300\207" [nil] 1] "List of functions called after marking diary entries in the calendar.\nYou might wish to add `diary-mark-included-diary-files', in which case\nyou will probably also want to add `diary-include-other-diary-files' to\n`diary-list-entries-hook'.\n\nThis hook runs after `diary-nongregorian-marking-hook'. These two hooks\ndiffer only if you are using included diary files. In that case,\n`diary-nongregorian-marking-hook' runs for each file, whereas\n`diary-mark-entries-hook' only runs once, for the main diary file.\n\n`displayed-year' and `displayed-month' are dynamically bound when\nthis hook is called." (diary-mark-included-diary-files) diary-nongregorian-listing-hook #[0 "\300\207" [nil] 1] "List of functions called for listing diary file and included files.\nAs the files are processed for diary entries, these functions are used\nto cull relevant entries. You can use any or all of\n`diary-bahai-list-entries', `diary-hebrew-list-entries', and\n`diary-islamic-list-entries'. The documentation for these functions\ndescribes the style of such diary entries.\n\nYou can use this hook for other functions as well, if you want them to\nbe run on the main diary file and any included diary files. Otherwise,\nuse `diary-list-entries-hook', which runs only for the main diary file." (diary-bahai-list-entries diary-hebrew-list-entries diary-islamic-list-entries) diary-nongregorian-marking-hook #[0 "\300\207" [nil] 1] "List of functions called for marking diary file and included files.\nAs the files are processed for diary entries, these functions are used\nto cull relevant entries. You can use any or all of\n`diary-bahai-mark-entries', `diary-hebrew-mark-entries' and\n`diary-islamic-mark-entries'. The documentation for these functions\ndescribes the style of such diary entries.\n\nYou can use this hook for other functions as well, if you want them to\nbe run on the main diary file and any included diary files. Otherwise,\nuse `diary-mark-entries-hook', which runs only for the main diary file." (diary-bahai-mark-entries diary-hebrew-mark-entries diary-islamic-mark-entries) diary-print-entries-hook #[0 "\300\207" [lpr-buffer] 1] "Run by `diary-print-entries' after preparing a temporary diary buffer.\nThe buffer shows only the diary entries currently visible in the\ndiary buffer. The default just does the printing. Other uses\nmight include, for example, rearranging the lines into order by\nday and time, saving the buffer instead of deleting it, or\nchanging the function used to do the printing." diary-unknown-time #[0 "\300\207" [-9999] 1] "Value returned by `diary-entry-time' when no time is found.\nThe default value -9999 causes entries with no recognizable time\nto be placed before those with times; 9999 would place entries\nwith no recognizable time after those with times." integer "20.3" diary-mail-addr #[0 "\301\300!\203\n \206 \302\207" [user-mail-address boundp #4#] 2] "Email address that `diary-mail-entries' will send email to." diary-mail-days #[0 "\300\207" [7] 1] "Default number of days for `diary-mail-entries' to check." diary-remind-message #[0 "\300\207" [("Reminder: Only " (if (zerop (% days 7)) (format "%d week%s" (/ days 7) (if (= 7 days) #4# "s")) (format "%d day%s" days (if (= 1 days) #4# "s"))) " until " diary-entry)] 1] "Pseudo-pattern giving form of reminder messages in the fancy diary display.\n\nUsed by the function `diary-remind', a pseudo-pattern is a list of\nexpressions that can involve the keywords `days' (a number), `date'\n(a list of month, day, year), and `diary-entry' (a string)." sexp :risky diary-abbreviated-year-flag #[0 "\300\207" [t] 1] "Interpret a two-digit year DD in a diary entry as either 19DD or 20DD.\nThis applies to the Gregorian, Hebrew, Islamic, and Bahá’í calendars.\nWhen the current century is added to a two-digit year, if the result\nis more than 50 years in the future, the previous century is assumed.\nIf the result is more than 50 years in the past, the next century is assumed.\nIf this variable is nil, years must be written in full."] 14) #@279 Return a replace-match template for an element of `diary-outlook-formats'. Returns a string using match elements 1-5, where: 1 = month name, 2 = day, 3 = year, 4 = time, 5 = location; also uses %s = message subject. BODY is the string from which the matches derive. (fn BODY) (defalias 'diary-outlook-format-1 #[257 "\302\303\"\302\304\"\302\305\"\30625 G\307\211W\2031 \211H\230\203) \310\306T\"\210\210\211T\262\202 \266\3110\211\203H \312\313!\313!E\311\314#\202W \315\267\202V \316\202W \317\202W \320\321P\207" [calendar-month-name-array calendar-date-style match-string 1 2 3 found 0 throw nil calendar-date-string string-to-number t #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (iso 78 european 82)) "\\3 \\1 \\2" "\\2 \\1 \\3" "\\1 \\2 \\3" "\n \\4 %s, \\5"] 10 (#$ . 12192)]) (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313& \207" [custom-declare-variable diary-outlook-formats funcall function #[0 "\300\207" [(("[ \n]*When: [[:alpha:]]+, \\([[:alpha:]]+\\) \\([0-9][0-9]*\\), \\([0-9]\\{4\\}\\),? \\(.+\\)\n\\(?:Where: \\(.+\n\\)\\)?" . diary-outlook-format-1))] 1] "Alist of regexps matching message text and replacement text.\n\nThe regexp must match the start of the message text containing an\nappointment, but need not include a leading `^'. If it matches the\ncurrent message, a diary entry is made from the corresponding\ntemplate. If the template is a string, it should be suitable for\npassing to `replace-match', and so will have occurrences of `\\D' to\nsubstitute the match for the Dth subexpression. It must also contain\na single `%s' which will be replaced with the text of the message's\nSubject field. Any other `%' characters must be doubled, so that the\ntemplate can be passed to `format'.\n\nIf the template is actually a function, it is called with the message\nbody text as argument, and may use `match-string' etc. to make a\ntemplate following the rules above." :type (alist :key-type (regexp :tag "Regexp matching time/place") :value-type (choice (string :tag "Template for entry") (function :tag "Unary function providing template"))) :version "22.1" :group diary] 10) #@91 Set SYMBOL's value to VALUE, and redraw the diary header if necessary. (fn SYMBOL VALUE) (defalias 'diary-set-header #[514 "J\205 \305!\306\"\210\211\205+ \232?\205+ r\211q\210 \307=\205* \n\205( \211)\207" [diary-file major-mode diary-header-line-flag diary-header-line-format header-line-format find-buffer-visiting custom-set-default diary-mode] 7 (#$ . 14384)]) (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313\314\315\316\317& \207" [custom-declare-variable diary-header-line-flag funcall function #[0 "\300\207" [t] 1] "Non-nil means `diary-simple-display' will show a header line.\nThe format of the header is specified by `diary-header-line-format'." :group diary :type boolean :initialize custom-initialize-default :set diary-set-header :version "22.1"] 14) #@64 Internal diary variable; non-nil if some diary text is hidden. (defvar diary-selective-display nil (#$ . 15182)) (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313\314\315\316\317\320\321&\207" [custom-declare-variable diary-header-line-format funcall function #[0 "\300\207" [(:eval (calendar-string-spread (list (if diary-selective-display "Some text is hidden - press \"C-c C-s\" before edit/copy" "Diary")) 32 (window-width)))] 1] "Format of the header line displayed by `diary-simple-display'.\nOnly used if `diary-header-line-flag' is non-nil." :group diary :type sexp :risky t :initialize custom-initialize-default :set diary-set-header :version "23.3"] 16) #@92 Return non-nil if the diary is being displayed. The actual return value is a diary buffer. (defalias 'diary-live-p #[0 "\302!\206 \205 \303 !\207" [diary-fancy-buffer diary-file get-buffer find-buffer-visiting] 2 (#$ . 15866)]) #@227 Set SYMBOL's value to VALUE, and redraw the diary if necessary. Redraws the diary if it is being displayed (note this is not the same as just visiting the `diary-file'), and SYMBOL's value is to be changed. (fn SYMBOL VALUE) (defalias 'diary-set-maybe-redraw #[514 "J\300\"\210\232?\205 \301 \205 \302 \207" [custom-set-default diary-live-p diary] 6 (#$ . 16105)]) (byte-code "\300\301\302\303\304DD\305\306\307\310\311\312\313\314\315&\207" [custom-declare-variable diary-number-of-entries funcall function #[0 "\300\207" [1] 1] "Specifies how many days of diary entries are to be displayed initially.\nThis variable affects the diary display when the command \\[diary] is\nused, or if the value of the variable `calendar-view-diary-initially-flag'\nis non-nil. For example, if the default value 1 is used, then only the\ncurrent day's diary entries will be displayed. If the value 2 is used,\nthen both the current day's and the next day's entries will be displayed.\n\nThe value can also be a vector such as [0 2 2 2 2 4 1]; this value says\nto display no diary entries on Sunday, the entries for the current date\nand the day after on Monday through Thursday, Friday through Monday's\nentries on Friday, and only Saturday's entries on Saturday.\n\nThis variable does not affect the diary display with the `d' command\nfrom the calendar; in that case, the prefix argument controls the number\nof days of diary entries displayed." :type (choice (integer :tag "Entries") (vector :value [0 0 0 0 0 0 0] (integer :tag "Sunday") (integer :tag "Monday") (integer :tag "Tuesday") (integer :tag "Wednesday") (integer :tag "Thursday") (integer :tag "Friday") (integer :tag "Saturday"))) :initialize custom-initialize-default :set diary-set-maybe-redraw :group diary] 12) #@136 Check that the file specified by `diary-file' exists and is readable. If so, return the expanded file name, otherwise signal an error. (defalias 'diary-check-diary-file #[0 "\203 \301!\203 \302!\203 \207\303\304\"\207\303\305\"\207" [diary-file file-exists-p file-readable-p error "Diary file `%s' is not readable" "Diary file `%s' does not exist"] 3 (#$ . 17888)]) #@311 Generate the diary window for ARG days starting with the current date. If no argument is provided, the number of days of diary entries is governed by the variable `diary-number-of-entries'. A value of ARG less than 1 does nothing. This function is suitable for execution in an init file. (fn &optional ARG) (defalias 'diary #[256 "\300 \210\301\302 \205 \303!\"\207" [diary-check-diary-file diary-list-entries calendar-current-date prefix-numeric-value] 5 (#$ . 18270) "P"]) #@237 Prepare and display a buffer with diary entries. Searches the file named in `diary-file' for entries that match ARG days starting with the date indicated by the cursor position in the displayed three-month calendar. (fn &optional ARG) (defalias 'diary-view-entries #[256 "\300 \210\301\302\303!\"\207" [diary-check-diary-file diary-list-entries calendar-cursor-to-date t] 4 (#$ . 18758) "p"]) #@281 Prepare and display buffer of diary entries from an alternative diary file. Searches for entries that match ARG days, starting with the date indicated by the cursor position in the displayed three-month calendar. DFILE specifies the file to use as the diary file. (fn ARG DFILE) (defalias 'diary-view-other-diary-entries #[514 "\211\301!)\207" [diary-file diary-view-entries] 4 (#$ . 19160) (byte-code "\302!\303\304 \305\306$D\207" [current-prefix-arg default-directory prefix-numeric-value read-file-name "Enter diary file name: " nil t] 6)]) #@187 The syntax table used when parsing dates in the diary file. It is the standard syntax table used in Fundamental mode, but with the syntax of `*' and `:' changed to be word constituents. (defvar diary-syntax-table (byte-code "\300\301 !\302\303\304#\210\302\305\304#\210\211\207" [copy-syntax-table standard-syntax-table modify-syntax-entry 42 "w" 58] 5) (#$ . 19716)) #@147 Convert string ATTRVALUE to TYPE appropriate for a face description. Valid TYPEs are: string, symbol, int, stringtnil, tnil. (fn ATTRVALUE TYPE) (defalias 'diary-attrtype-convert #[514 "\211\300\267\202&