%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /usr/local/share/emacs/27.2/lisp/calendar/
Upload File :
Create Path :
Current File : //usr/local/share/emacs/27.2/lisp/calendar/appt.elc

;ELC
;;; Compiled
;;; in Emacs version 27.2
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


(byte-code "\300\301!\210\302\303\304\305\306\307\310\311&\210\312\313\314\315\316DD\317\320\321\310\303&\210\312\322\314\315\323DD\324\325\326\320\327\310\303&	\210\312\330\314\315\331DD\332\320\333\310\303&\210\312\334\314\315\335DD\336\320\337\310\303\325\326&	\210\312\340\314\315\341DD\342\320\333\310\303&\210\312\343\314\315\344DD\345\320\321\310\303&\210\312\346\314\315\347DD\350\320\333\310\303&\210\312\351\314\315\352DD\353\320\321\310\303&\210\312\354\314\315\355DD\356\320\315\310\303&\210\312\357\314\315\360DD\361\320\315\310\303&\207" [require diary-lib custom-declare-group appt nil "Appointment notification." :prefix "appt-" :group calendar custom-declare-variable appt-message-warning-time funcall function #[0 "\300\207" [12] 1] "Default time in minutes before an appointment that the warning begins.\nYou probably want to make `appt-display-interval' a factor of this." :type integer appt-warning-time-regexp #[0 "\300\207" [#1="warntime \\([0-9]+\\)"] 1 #1#] "Regexp matching a string giving the warning time for an appointment.\nThe first subexpression matches the time in minutes (an integer).\nThis overrides the default `appt-message-warning-time'.\nYou may want to put this inside a diary comment (see `diary-comment-start').\nFor example, to be warned 30 minutes in advance of an appointment:\n   2011/06/01 12:00 Do something ## warntime 30" :version "24.1" regexp appt-audible #[0 "\300\207" [t] 1] "Non-nil means beep to indicate appointment." boolean appt-display-format #[0 "\300\207" [window] 1] "How appointment reminders should be displayed.\nThe options are:\n   window - use a separate window\n   echo   - use the echo area\n   nil    - no visible reminder.\nSee also `appt-audible' and `appt-display-mode-line'." (choice (const :tag "Separate window" window) (const :tag "Echo-area" echo) (const :tag "No visible display" nil)) appt-display-mode-line #[0 "\300\207" [t] 1] "Non-nil means display minutes to appointment and time on the mode line.\nThis is in addition to any other display of appointment messages.\nThe mode line updates every minute, independent of the value of\n`appt-display-interval'." appt-display-duration #[0 "\300\207" [10] 1] "The number of seconds an appointment message is displayed.\nOnly relevant if reminders are to be displayed in their own window." appt-display-diary #[0 "\300\207" [t] 1] "Non-nil displays the diary when the appointment list is first initialized.\nThis occurs when this package is first activated, and then at\nmidnight when the appointment list updates." appt-display-interval #[0 "\300\207" [3] 1] "Interval in minutes at which to display appointment reminders.\nOnce an appointment becomes due, Emacs displays reminders every\n`appt-display-interval' minutes.  You probably want to make\n`appt-message-warning-time' be a multiple of this, so that you get\na final message displayed precisely when the appointment is due.\n\nNote that this variable controls the interval at which\n`appt-display-message' is called.  The mode line display (if active)\nalways updates every minute." appt-disp-window-function #[0 "\300\207" [appt-disp-window] 1] "Function called to display appointment window.\nOnly relevant if reminders are being displayed in a window.\nIt should take three string arguments: the number of minutes till\nthe appointment, the current time, and the text of the appointment.\nEach argument may also be a list, if multiple appointments are\nrelevant at any one time." appt-delete-window-function #[0 "\300\207" [appt-delete-window] 1] "Function called to remove appointment window and buffer.\nOnly relevant if reminders are being displayed in a window."] 10)
#@34 Name of the appointments buffer.
(defconst appt-buffer-name "*appt-buf*" (#$ . 4083))
#@686 The list of appointments for today.
Use `appt-add' and `appt-delete' to add and delete appointments.
The original list is generated from today's `diary-entries-list', and
can be regenerated using the function `appt-check'.
Each element of the generated list has the form
((MINUTES) STRING [FLAG] [WARNTIME])
where MINUTES is the time in minutes of the appointment after midnight,
and STRING is the description of the appointment.
FLAG and WARNTIME are not always present.  A non-nil FLAG
indicates that the element was made with `appt-add', so calling
`appt-make-list' again should preserve it.  If WARNTIME is non-nil,
it is an integer to use in place of `appt-message-warning-time'.
(defvar appt-time-msg-list nil (#$ . 4176))
#@58 11:59pm in minutes - number of minutes in a day minus 1.
(defconst appt-max-time 1439 (#$ . 4911))
#@191 String being displayed in the mode line saying you have an appointment.
The actual string includes the amount of time till the appointment.
Only used if `appt-display-mode-line' is non-nil.
(defvar appt-mode-string nil (#$ . 5017))
(put 'appt-mode-string 'risky-local-variable t)
#@74 Time of day (mins since midnight) at which we last checked appointments.
(defvar appt-prev-comp-time nil (#$ . 5303))
#@66 Internal variable used to count number of consecutive reminders.
(defvar appt-display-count 0 (#$ . 5427))
#@116 Timer used for diary appointment notifications (`appt-check').
If this is non-nil, appointment checking is active.
(defvar appt-timer nil (#$ . 5541))
#@376 Display a reminder about an appointment.
The string STRING describes the appointment, due in integer MINS minutes.
The arguments may also be lists, where each element relates to a
separate appointment.  The variable `appt-display-format' controls
the format of the visible reminder.  If `appt-audible' is non-nil,
also calls `beep' for an audible reminder.

(fn STRING MINS)
(defalias 'appt-display-message #[514 "\203\305\306!\210\211<\203\211G\306U\203\211@\262@\262	\307\267\202{\310\311!\3121@\n<\2036\313\314\"\2029\314!#0\202^<\204N\315@A\"\202\\\316\317!\210\n\314@!@#\262\266\320\321\322\"\323\f#\207\316\324<\203x\325\326\327#\202y\"\207\323\207" [appt-audible appt-display-format appt-disp-window-function appt-display-duration appt-delete-window-function beep 1 #s(hash-table size 2 test eq rehash-size 1.5 rehash-threshold 0.8125 purecopy t data (window 34 echo 105)) format-time-string "%a %b %e " (wrong-type-argument) mapcar number-to-string signal message "Argtype error in `appt-disp-window-function' - update it for multiple appts?" run-at-time format "%d sec" nil "%s" mapconcat identity "\n"] 8 (#$ . 5699)])
#@189 Return an appointment string suitable for use in the mode-line.
MIN-TO-APP is a list of minutes, as strings.
If ABBREV is non-nil, abbreviates some text.

(fn MIN-TO-APP &optional ABBREV)
(defalias 'appt-mode-line #[513 "G\300V\211\203\301@\"?\205@\302\303\203\304\202\305\203&\306\202'\307\310\232\2031\311\202W\302\312\206>\313\314\315#	\203G\316\202V\302\317	\320\232\203T\307\202U\306\"#$\207" [1 delete format "%s%s %s" "App't" "Appointment" "s" "" "0" "now" "in %s %s" mapconcat identity "," "min." "minute%s" "1"] 15 (#$ . 6872)])
#@1729 Check for an appointment and update any reminder display.
If optional argument FORCE is non-nil, reparse the diary file for
appointments.  Otherwise the diary file is only parsed once per day,
or when it (or a file it includes) is saved.

Note: the time must be the first thing in the line in the diary
for a warning to be issued.  The format of the time can be either
24 hour or am/pm.  For example:

              02/23/89
                18:00 Dinner

              Thursday
                11:45am Lunch meeting.

Appointments are checked every `appt-display-interval' minutes.
The following variables control appointment notification:

`appt-display-format'
        Controls the format in which reminders are displayed.

`appt-audible'
        Non-nil means there is an audible component to reminders.

`appt-message-warning-time'
        The default number of minutes in advance at which reminders
        should start.

`appt-display-mode-line'
        Non-nil means show in the mode line a countdown to the
        time of each appointment, once reminders start.

`appt-display-interval'
        Interval in minutes at which to display appointment messages.

`appt-display-diary'
        Non-nil means display the diary whenever the appointment list is
        initialized (e.g. the first time we check for appointments each day).

The following variables are only relevant if reminders are being
displayed in a window:

`appt-display-duration'
        Number of seconds for which an appointment message is displayed.

`appt-disp-window-function'
        Function called to display appointment window.

`appt-delete-window-function'
        Function called to remove appointment window and buffer.

(fn &optional FORCE)
(defalias 'appt-check #[256 "	\306 \307\3108_A@\\\311\211\211\211\211\212	\204\"\n\203\"\nW\203M\3121H\313>\2030\2023\313B\f\203=\314 \202C\315\316 \317\320#)0\202L\210\202M\210\311\321
\211\203\306\211@\211@@\211\262W\203l
A\202\277\3228\206t \262Z\262W\203\233\\!V\203\233!TZ\\\262X\203\277\321Y\203\277B\262\211A@B\262\321U\203\277\323
\"A\266\202\202T\210\203\237\262\211\237\262\324\"\"\321U\203\343\325\"\210#\203\367\326\327\330\331\332\"\320\"\333\334#P\335=\203\321\202T#\205	\230?\205\336\320!\210\205\337\321!)\207" [appt-mode-string appt-display-count appt-prev-comp-time diary-hook appt-display-diary appt-time-msg-list decode-time 60 2 nil (error) appt-make-list diary diary-list-entries calendar-current-date 1 t 0 3 delete mod appt-display-message " " propertize appt-mode-line mapcar number-to-string face mode-line-emphasis (0) force-mode-line-update sit-for appt-message-warning-time appt-max-time appt-display-interval appt-display-mode-line] 16 (#$ . 7448) "P"])
#@291 Display appointment due in MIN-TO-APP (a string) minutes.
NEW-TIME is a string giving the current date.
Displays the appointment message APPT-MSG in a separate buffer.
The arguments may also be lists, where each element relates to a
separate appointment.

(fn MIN-TO-APP NEW-TIME APPT-MSG)
(defalias 'appt-disp-window #[771 "\304 \305!\306 \203\307\310!\210\306 \203\311 \203\312\310!\210\313\314 \236A\203.\211q\210\315!\210\202S\316\317!!\204O\320\317!!\204O\321 \210\322 \323	_Y\203O\324\325 !\210\326!\210<\204`C\262C\262<\204iC\262\327\330\331\332!\333\334	\335##!\210\336\337\340 \210G\310U\204\220\341@\"\204\232\333\334\342#c\210\202\306G\343\211W\203\304\211\330\344\343V\203\260\342\202\261\3458\n8$c\266\211T\262\202\235\266\346\347\337\"!\210\350\336!\210\337\351 \210\324!\207" [appt-buffer-name window-min-height buffer-read-only buffer-undo-list selected-window get-buffer-create minibufferp other-window 1 display-multi-frame-p other-frame unsplittable frame-parameters display-buffer special-display-p buffer-name same-window-p appt-select-lowest-window window-height 2 select-window split-window switch-to-buffer calendar-set-mode-line format " %s. %s" appt-mode-line mapconcat identity ", " nil t erase-buffer delete "\n" 0 "%s%sm: %s" "" shrink-window-if-larger-than-buffer get-buffer-window set-buffer-modified-p raise-frame] 14 (#$ . 10275)])
#@97 Function called to undisplay appointment messages.
Usually just deletes the appointment buffer.
(defalias 'appt-delete-window #[0 "\302\303\"\211\203\211\304\305!!=\204\306!\210\210\307!\211\203\"\310!\210\210	\205*\311\312!\207" [appt-buffer-name appt-audible get-buffer-window t frame-root-window window-frame delete-window get-buffer kill-buffer beep 1] 5 (#$ . 11703)])
#@40 Select the lowest window on the frame.
(defalias 'appt-select-lowest-window #[0 "\300 C\301\302 8C\303C\304\305\306\307\310\311#\312\"\313\314%\315\"\210\316\242!\207" [selected-window 3 window-edges nil walk-windows make-byte-code 257 "\301\242\302\303\304!8\240W\205\301\302\242\240\210\300\240\207" vconcat vector [3 window-edges] 6 "\n\n(fn W)" nomini select-window] 12 (#$ . 12094)])
(defconst appt-time-regexp "[0-9]?[0-9]\\(h\\([0-9][0-9]\\)?\\|[:.][0-9][0-9]\\)\\(am\\|pm\\)?")
#@327 Add an appointment for today at TIME with message MSG.
The time should be in either 24 hour format or am/pm format.
Optional argument WARNTIME is an integer (or string) giving the number
of minutes before the appointment at which to start warning.
The default is `appt-message-warning-time'.

(fn TIME MSG &optional WARNTIME)
(defalias 'appt-add #[770 "\303\"\204\304\305!\210\211;\203\211\306\230?\205\307!\262\211\203)\211\250\204)\304\310!\210	\2040\311 \210\312!C\313Q\314E\203E\315C\"\262\211\n\235?\205T\316\nC\244!\211\207" [appt-time-regexp appt-timer appt-time-msg-list string-match user-error "Unacceptable time-string" "" string-to-number "Argument WARNTIME must be an integer, or nil" appt-activate appt-convert-time " " t append appt-sort-list] 7 (#$ . 12598) "sTime (hh:mm[am/pm]): \nsMessage: \nsMinutes before the appointment to start warning: "])
#@54 Delete an appointment from the list of appointments.
(defalias 'appt-delete #[0 "\211\211\203$\211@\301\302\303\304A@\305\"!\306Q!\203\307\"A\266\202\202\266\310 \210\311\312!\207" [appt-time-msg-list y-or-n-p "Delete " prin1-to-string substring-no-properties 0 " from list? " delq appt-check message ""] 9 (#$ . 13492) nil])
#@464 Update the appointments list from today's diary buffer.
The time must be at the beginning of a line for it to be
put in the appointments list (see examples in documentation of
the function `appt-check').  We assume that the variables `original-date' and
`number' hold the arguments that `diary-list-entries' received.
They specify the range of dates that the diary is being processed for.

Any appointments made with `appt-add' are not affected by this function.
(defalias 'appt-make-list #[0 "\306\307 CC\"?\205\224\306\307 C\310\211\3118\262\312\313U\203$\314\315!\202d\313V\203\232S\262\316\211\211@\262\211A@\262\3118\262\317S_\\\311V\203\205\211\320\321_\\\322\245Z\262\211\313W\203f\323!S\262\211\321\246\313U\205|\211\324\246\313U?\206|\211\325\246\313U\262\203\205\211T\262\266\203\262\326_\321\245\324\245[\325\245%\202d\323T!\262\327\211\211@\262\211A@\262\3118\262\317S_\\\311V\203\367\211\320\321_\\\322\245Z\262\211\313W\203\330\323!S\262\211\321\246\313U\205\356\211\324\246\313U?\206\356\211\325\246\313U\262\203\367\211T\262\266\203\262\326_\321\245\324\245[\325\245\330\211\211@\262\211A@\262\3118\262\317S_\\\311V\203^\211\320\321_\\\322\245Z\262\211\313W\203?\323!S\262\211\321\246\313U\205U\211\324\246\313U?\206U\211\325\246\313U\262\203^\211T\262\266\203\262&\266\202\262	\\!C\"\205\224\212\n\211\203\212\211@\3118\204\203\331\n\"A\266\202\202r\210\203m\312\211\f\203\260
\203\260,\332=\204\260\333\f!@\334>\204\260\335\336\"\262\203\305\306@\307 C\"\203\305A\262\202\260\203k\337\307 @@\"\203k@A@\262\311\340@88\206\343\262\341-\"\203d\313\224\342\313\"\341\343-P\313\225#\341.\"\205\344\342\332\"!\345#\346!C\347D\205 \312D\"\nC\244\2033\345	\"\2024\350\262	G\313V\203_\341-	\"\203_\341\343-P	\313\225#\211\262\203_\345\"\262\266\202\345A\262\202\305\266\351\n!\352 \353\3118_A@\\\n\205\221\n@@@W\205\221\nA\211\204\200\312\266\202)\207" [original-date number appt-time-msg-list diary-entries-list diary-list-entries-hook appt-display-diary calendar-date-compare calendar-current-date calendar-gregorian-from-absolute 2 nil 0 user-error "There was no year zero" + 31 23 4 10 abs 100 400 365 - (12 31 -1) delq 1 last (diary-sort-entries sort-diary-entries) sort diary-entry-compare calendar-date-equal 3 string-match match-string "\n[ 	]*" string-to-number substring appt-convert-time append "" appt-sort-list decode-time 60 diary-number-of-entries appt-time-regexp appt-warning-time-regexp] 22 (#$ . 13837)])
#@143 Sort an appointment list, putting earlier items at the front.
APPT-LIST is a list of the same format as `appt-time-msg-list'.

(fn APPT-LIST)
(defalias 'appt-sort-list #[257 "\300\301\"\207" [sort #[514 "@@@@W\207" [] 4 "\n\n(fn E1 E2)"]] 4 (#$ . 16467)])
#@171 Convert hour:min[am/pm] format TIME2CONV to minutes from midnight.
A period (.) can be used instead of a colon (:) to separate the
hour and minute parts.

(fn TIME2CONV)
(defalias 'appt-convert-time #[257 "\300\301\"\203\302\303\304\"!\202\305\300\306\"\203!\302\303\305\"!\202\"\305\300\307\"\2037\211\310W\2037\310\\\262\202G\300\311\"\203G\211\310U\203G\305\262\211\312_\\\207" [string-match "[h:.]\\([0-9][0-9]\\)" string-to-number match-string 1 0 "[0-9]*[0-9]" "pm" 12 "am" 60] 6 (#$ . 16733)])
#@189 If the current buffer is visiting the diary, update appointments.
This function also acts on any file listed in `diary-included-files'.
It is intended for use with `write-file-functions'.
(defalias 'appt-update-list #[0 "\305	\306\n!C\"\235\203\203\307\310\311!\210)\307\207" [buffer-file-name diary-included-files diary-file appt-timer appt-display-diary append expand-file-name nil appt-check t] 5 (#$ . 17262)])
#@154 Toggle checking of appointments.
With optional numeric argument ARG, turn appointment checking on if
ARG is positive, otherwise off.

(fn &optional ARG)
(defalias 'appt-activate #[256 "\203
\302!\303V\202\211?\262\304\305\306\"\210	\204\307\310\311	\"\210\203+\312!\210\313\211\203_\314\305\306\"\210\315\316\317\320#\321	\322\"\320\316!\210\323\324\3251O\326 0\202S\210\202Z\203Z\327\202[\330\"\202b\323\331!\207" [appt-timer global-mode-string prefix-numeric-value 0 remove-hook write-file-functions appt-update-list (#1="") delq appt-mode-string cancel-timer nil add-hook run-at-time t 60 appt-check append (appt-mode-string) message "Appointment reminders enabled%s" (error) diary-check-diary-file #1# " (no diary file found)" "Appointment reminders disabled"] 6 (#$ . 17691) "P"])
(provide 'appt)

Zerion Mini Shell 1.0