Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
894e369d
Commit
894e369d
authored
Jun 18, 2010
by
Stefan Monnier
Browse files
Merge from trunk
parents
4a330052
b1a03ef6
Changes
47
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
20 changed files
with
14782 additions
and
14605 deletions
+14782
-14605
ChangeLog
ChangeLog
+10
-1
INSTALL
INSTALL
+149
-196
doc/emacs/ChangeLog
doc/emacs/ChangeLog
+6
-0
doc/emacs/basic.texi
doc/emacs/basic.texi
+6
-5
doc/misc/ChangeLog
doc/misc/ChangeLog
+5
-0
doc/misc/idlwave.texi
doc/misc/idlwave.texi
+1
-1
doc/misc/org.texi
doc/misc/org.texi
+1
-1
etc/ChangeLog
etc/ChangeLog
+4
-0
etc/NEWS
etc/NEWS
+17
-0
etc/NEWS.1-17
etc/NEWS.1-17
+5
-5
etc/NEWS.23
etc/NEWS.23
+4
-0
etc/tutorials/TUTORIAL.bg
etc/tutorials/TUTORIAL.bg
+1
-1
etc/tutorials/TUTORIAL.es
etc/tutorials/TUTORIAL.es
+1
-1
lisp/ChangeLog
lisp/ChangeLog
+234
-14118
lisp/ChangeLog.lexbind
lisp/ChangeLog.lexbind
+0
-256
lisp/ChangeLog.trunk
lisp/ChangeLog.trunk
+14293
-0
lisp/calc/calc-poly.el
lisp/calc/calc-poly.el
+1
-1
lisp/calendar/appt.el
lisp/calendar/appt.el
+42
-17
lisp/emacs-lisp/cl-loaddefs.el
lisp/emacs-lisp/cl-loaddefs.el
+1
-1
lisp/emacs-lisp/cl-macs.el
lisp/emacs-lisp/cl-macs.el
+1
-1
No files found.
ChangeLog
View file @
894e369d
2010-06-16 Chong Yidong <cyd@stupidchicken.com>
* INSTALL: Update font information (Bug#6389).
2010-06-16 Glenn Morris <rgm@gnu.org>
* INSTALL: General update.
2010-06-12 Glenn Morris <rgm@gnu.org>
* Makefile.in (install-arch-indep): Delete any old info .gz files first.
* Makefile.in (install-arch-indep): Delete any old info .gz files
first.
2010-06-11 Glenn Morris <rgm@gnu.org>
...
...
INSTALL
View file @
894e369d
This diff is collapsed.
Click to expand it.
doc/emacs/ChangeLog
View file @
894e369d
2010-06-10 Glenn Morris <rgm@gnu.org>
* basic.texi (Inserting Text): Minor clarification. (Bug#6374)
* basic.texi (Inserting Text): Fix typo.
2010-06-10 Glenn Morris <rgm@gnu.org>
* ack.texi (Acknowledgments):
...
...
doc/emacs/basic.texi
View file @
894e369d
@c This is part of the Emacs manual.
@c Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1997, 2000, 2001,
@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010 Free Software Foundation, Inc.
@c 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
@c Free Software Foundation, Inc.
@c See file emacs.texi for copying conditions.
@node Basic, Minibuffer, Exiting, Top
@chapter Basic Editing Commands
...
...
@@ -92,9 +93,9 @@ of overwriting with it.
@vindex read-quoted-char-radix
@noindent
To use decimal or hexadecimal instead of octal, set the variable
@code{read-quoted-char-radix} to 10 or 16. If the radix is
greater
th
an 10, some letters starting with
@kbd{
a
} serve as part of a
character code,
just like digits.
@code{read-quoted-char-radix} to 10 or 16. If the radix is
16,
th
e letters @kbd{a} to
@kbd{
f
} serve as part of a
character code,
just like digits.
Case is ignored.
A numeric argument tells @kbd{C-q} how many copies of the quoted
character to insert (@pxref{Arguments}).
...
...
@@ -104,7 +105,7 @@ character to insert (@pxref{Arguments}).
@cindex Unicode
Instead of @kbd{C-q}, you can use @kbd{C-x 8 @key{RET}}
(@code{ucs-insert}) to insert a character based on its Unicode name or
code-point. This command
s
prompts for a character to insert, using
code-point. This command prompts for a character to insert, using
the minibuffer; you can specify the character using either (i) the
character's name in the Unicode standard, or (ii) the character's
code-point in the Unicode standard. If you specify the character's
...
...
doc/misc/ChangeLog
View file @
894e369d
2010-06-10 Glenn Morris <rgm@gnu.org>
* idlwave.texi (Load-Path Shadows):
* org.texi (Handling links): Fix typos.
2010-06-07 Teodor Zlatanov <tzz@lifelogs.com>
* gnus.texi (Interactive): Explain effect of gnus-expert-user better.
...
...
doc/misc/idlwave.texi
View file @
894e369d
...
...
@@ -3717,7 +3717,7 @@ C-i}. Here are the different routines (also available in the Menu
@table @asis
@item @kbd
{
M-x idlwave-list-buffer-load-path-shadows
}
This command
s
checks the names of all routines defined in the current
This command checks the names of all routines defined in the current
buffer for shadowing conflicts with other routines accessible to
IDLWAVE. The command also has a key binding: @kbd
{
C-c C-b
}
@item @kbd
{
M-x idlwave-list-shell-load-path-shadows
}
.
...
...
doc/misc/org.texi
View file @
894e369d
...
...
@@ -2978,7 +2978,7 @@ link and description parts of the link.
Open link at point. This will launch a web browser for URLs (using
@command{browse-url-at-point}), run VM/MH-E/Wanderlust/Rmail/Gnus/BBDB for
the corresponding links, and execute the command in a shell link. When the
cursor is on an internal link, this command
s
runs the corresponding search.
cursor is on an internal link, this command runs the corresponding search.
When the cursor is on a TAG list in a headline, it creates the corresponding
TAGS view. If the cursor is on a timestamp, it compiles the agenda for that
date. Furthermore, it will visit text and remote files in @samp{file:} links
...
...
etc/ChangeLog
View file @
894e369d
2010-06-12 Glenn Morris <rgm@gnu.org>
* tutorials/TUTORIAL.bg, tutorials/TUTORIAL.es: Fix typos.
2010-06-09 Michael Albinus <michael.albinus@gmx.de>
* NEWS: Add notifications.el.
...
...
etc/NEWS
View file @
894e369d
...
...
@@ -125,6 +125,19 @@ trashing. This avoids inadvertently trashing temporary files.
*** Calling `delete-file' or `delete-directory' with a prefix argument
now forces true deletion, regardless of `delete-by-moving-to-trash'.
** New option `list-colors-sort' defines the color sort order
for `list-colors-display'.
** An Emacs Lisp package manager is now included.
This is a convenient way to download and install additional packages,
from elpa.gnu.org. `M-x package-list-packages' shows a list of
packages, which can be selected for installation.
*** By default, all installed packages are loaded and activated
automatically when Emacs starts up. To disable this, set
`package-enable-at-startup' to nil. To change which packages are
loaded, customize `package-load-list'.
* Editing Changes in Emacs 24.1
...
...
@@ -254,7 +267,11 @@ Notifications API. It requires D-Bus for communication.
* Incompatible Lisp Changes in Emacs 24.1
** A backquote not followed by a space is now always treated as new-style.
** Test for special mode-class was moved from view-file to view-buffer.
FIXME: This only says what was changed, but not what are the
programmer-visible consequences.
** Passing a nil argument to a minor mode function now turns the mode
ON unconditionally.
...
...
etc/NEWS.1-17
View file @
894e369d
...
...
@@ -760,7 +760,7 @@ not try to give commands in it when no longer really in the debugger.
* New function `switch-to-buffer-other-window'.
This is the new primitive to select a specified buffer (the
argument)
in another window. It is not quite the same as
argument) in another window. It is not quite the same as
`pop-to-buffer', because it is guaranteed to create another
window (assuming there is room on the screen) so that it can
leave the current window's old buffer displayed as well.
...
...
@@ -971,7 +971,7 @@ once again "unmodified".
This command creates an inferior Lisp process whose input and output
appear in the Emacs buffer named `*lisp*'. That buffer uses a major mode
called inferior-lisp-mode, which has many of the commands of lisp-mode
and those of shell-mode.
Calls the value of shell-mode-hook and
and those of shell-mode. Calls the value of shell-mode-hook and
lisp-mode-hook, in that order, if non-nil.
Meanwhile, in lisp-mode, the command C-M-x is defined to
...
...
@@ -1421,7 +1421,7 @@ Changes in Emacs 15
of the executing emacs, for use in run-time conditionalization.
The function featurep of one argument may be used to test for the
presence of a feature. It is just the same as
presence of a feature.
It is just the same as
(not (null (memq FEATURE features))) where FEATURE is its argument.
For example, (if (featurep 'magic-window-hack)
(transmogrify-window 'vertical)
...
...
@@ -1541,13 +1541,13 @@ Changes in Emacs 15
This function returns a cons cell whose car is the object produced
by reading from the string and whose cdr is a number giving the
index in the string of the first character not read. That index may
index in the string of the first character not read.
That index may
be passed as the second argument to a later call to read-from-string
to read the next form represented by the string.
In addition, the function read now accepts a string as its argument.
In this case, it calls read-from-string on the whole string, and
returns the car of the result
.
(ie the actual object read.)
returns the car of the result (ie the actual object read.)
...
...
etc/NEWS.23
View file @
894e369d
...
...
@@ -27,6 +27,10 @@ with a prefix argument or by typing C-u C-h C-n.
* Changes in Specialized Modes and Packages in Emacs 23.3
---
** The appt-add command takes an optional argument for the warning time.
This can be used in place of the default appt-message-warning-time.
* New Modes and Packages in Emacs 23.3
...
...
etc/tutorials/TUTORIAL.bg
View file @
894e369d
...
...
@@ -625,7 +625,7 @@ C-f.
.
>> C-x b *Messages* <Return>,
. C-x
C-
b TUTORIAL <Return>,
. C-x b TUTORIAL <Return>,
.
...
...
etc/tutorials/TUTORIAL.es
View file @
894e369d
...
...
@@ -630,7 +630,7 @@ contiene los mensajes que han aparecido en la l
su sesión de Emacs.
>> Teclee C-x b *Messages* <Return> para ver el buffer de mensajes.
Luego teclee C-b TUTORIAL <Return> para regresar a este tutorial.
Luego teclee C-
x
b TUTORIAL <Return> para regresar a este tutorial.
Si hace cambios al texto de un archivo, y luego encuentra otro
archivo, esto no guarda el primer archivo. Sus cambios permanecerán
...
...
lisp/ChangeLog
View file @
894e369d
This diff is collapsed.
Click to expand it.
lisp/ChangeLog.lexbind
deleted
100644 → 0
View file @
4a330052
2006-12-04 Miles Bader <miles@gnu.org>
* Makefile.in (COMPILE_FIRST_STACK_DEPTH): New variable.
(compile, compile-always): Use it.
2005-10-24 Miles Bader <miles@gnu.org>
* subr.el (functionp): Re-remove.
* emacs-lisp/bytecomp.el (byte-compile-closure): Add optional
ADD-LAMBDA argument, which we just pass to `byte-compile-lambda'.
(byte-compile-defun): Use ADD-LAMBDA arg to `byte-compile-closure'
instead of adding lambda ourselves.
2004-08-09 Miles Bader <miles@gnu.org>
Changes from merging the funvec patch:
* emacs-lisp/bytecomp.el (byte-compile-make-closure): Use `curry'
instead of `vector' to create compiled closures.
Merge funvec patch.
2004-04-29 Miles Bader <miles@gnu.org>
* emacs-lisp/bytecomp.el (byte-compile-top-level): Add new entries
to `byte-compile-lexical-environment' at the start, not end.
(byte-compile-delay-out): Correctly default STACK-ADJUST to zero.
* emacs-lisp/byte-opt.el (byte-opt-update-stack-params): Don't
crash on no-op lapcode entries (car is nil).
* emacs-lisp/byte-lexbind.el (byte-compile-make-lambda-lexenv):
Push a lexvar onto lexenv, not a vinfo!
2004-04-11 Miles Bader <miles@gnu.org>
* emacs-lisp/bytecomp.el (byte-compile-top-level): Correctly
analyze lexically-bound arguments.
* emacs-lisp/byte-lexbind.el (byte-compile-lforminfo-analyze):
Use `append' instead of `nconc'.
* emacs-lisp/byte-lexbind.el (byte-compile-make-lvarinfo): Don't
use backquote to make a mutable data-structure.
(byte-compile-lvarinfo-num-refs, byte-compile-lvarinfo-num-sets):
Renamed to use `num-' instead of `num'.
(byte-compile-make-lambda-lexenv): Adjusted accordingly.
2004-04-10 Miles Bader <miles@gnu.org>
* emacs-lisp/byte-lexbind.el (byte-compile-compute-lforminfo):
Look at variable's global specialp state too.
2004-04-09 Miles Bader <miles@gnu.org>
* emacs-lisp/byte-opt.el (byte-optimize-lapcode): Default
initial-stack-depth to 0.
(byte-optimize-lapcode): Discard the right number of values in
the stack-set+discard-->discard optimization.
2004-04-02 Miles Bader <miles@gnu.org>
* emacs-lisp/lisp-mode.el (eval-last-sexp-1): Setup the lexical
environment if lexical-binding is enabled.
2003-10-14 Miles Bader <miles@gnu.org>
* emacs-lisp/macroexp.el (macroexpand-all-1): Special-case
`backquote-list*' to avoid stack overflows.
2003-04-04 Miles Bader <miles@gnu.org>
* help-fns.el (help-function-arglist): Handle interpreted closures.
2002-11-20 Miles Bader <miles@gnu.org>
* emacs-lisp/bytecomp.el (byte-compile-stack-adjustment):
Correctly handle discardN* operators.
* emacs-lisp/byte-opt.el (byte-optimize-lapcode): Fix stack-depth
tracking errors.
2002-08-26 Miles Bader <miles@gnu.org>
* international/mule.el (make-char): Macroexpand call to
charset-id constructed by `byte-compile' hook.
* emacs-lisp/macroexp.el (macroexpand-all-1): Expand defconst value.
* emacs-lisp/byte-opt.el (byte-opt-update-stack-params): New macro.
(byte-optimize-lapcode): Keep track of stack-depth in final pass too.
Add more optimizations for lexical binding.
(byte-compile-inline-expand): Macroexpand result of inlining.
* emacs-lisp/bytecomp.el (byte-compile-lambda): Update call to
byte-compile-closure-initial-lexenv-p.
(byte-discardN-preserve-tos): Alias to byte-discardN.
(byte-compile-push-binding-init): Don't push unused variables on
init-lexenv.
(byte-compile-push-binding-init): Don't use LFORMINFO if it's nil.
(byte-compile-lambda): Don't look at lexical environment unless
we're using lexical binding.
(byte-compile-defmacro): Correctly generate macros.
* emacs-lisp/byte-lexbind.el (byte-compile-unbind): Optimize the
dynamic-bindings-only case.
(byte-compile-bind): Don't special-case unused lexical variables.
* emacs-lisp/disass.el (disassemble-1): Print arg for discardN ops.
2002-08-19 Miles Bader <miles@gnu.org>
* emacs-lisp/byte-opt.el (byte-decompile-bytecode-1): Handle
`byte-discardN-preserve-tos' pseudo-op.
(byte-compile-side-effect-and-error-free-ops): Add `byte-stack-ref'.
(byte-compile-side-effect-free-ops): Add `byte-vec-ref'.
(byte-optimize-lapcode): Add some cases for stack-set/ref ops.
Add tracking of stack-depth. Unfinished code to collapse
lexical-unbinding sequences.
* emacs-lisp/bytecomp.el (byte-compile-lapcode): Handle
`byte-discardN-preserve-tos' pseudo-op.
(byte-compile-top-level): If there are lexical args, output a TAG
op to record the initial stack-depth for the optimizer.
2002-08-17 Miles Bader <miles@gnu.org>
* emacs-lisp/bytecomp.el (byte-discardN): Add byte-defop.
(byte-compile-lapcode): Include byte-discardN.
(byte-compile-lambda): Fixup closure detection.
(byte-compile-top-level): Handle arguments for a lexical lambda.
(byte-compile-lexical-variable-ref, byte-compile-variable-ref)
(byte-compile-variable-set): Use byte-compile-stack-set/ref.
(byte-compile-discard): Add new parameters NUM and PRESERVE-TOS.
(byte-compile-stack-ref, byte-compile-stack-set): New functions.
(byte-compile-push-binding-init): Get the variable list properly
from LFORMINFO.
* emacs-lisp/byte-lexbind.el (byte-compile-lforminfo-analyze):
Ignore setq'd variables we're not interested in.
(byte-compile-make-lambda-lexenv): Add assertion that closed-over
variables be heap allocated.
(byte-compile-closure-initial-lexenv-p): Renamed from
byte-compile-closure-lexenv-p.
(byte-compile-non-stack-bindings-p): Get the variable list
properly from LFORMINFO.
(byte-compile-maybe-push-heap-environment): Handle the
no-closed-over-variables case correctly.
(byte-compile-bind): Use byte-compile-stack-set/ref.
Don't bother modifying INIT-LEXENV as no one will see the changes.
(byte-compile-unbind): Call `byte-compile-discard' to handle
unbinding lexical bindings.
* emacs-lisp/disass.el (disassemble-internal): Handle closures.
(disassemble-1): Handle new bytecodes.
* emacs-lisp/byte-opt.el (disassemble-offset): Handle new bytecodes.
2002-06-16 Miles Bader <miles@gnu.org>
* emacs-lisp/macroexp.el (macroexp-accumulate): New macro.
(macroexpand-all-forms, macroexpand-all-clauses): Use it.
* Makefile.in (compile): Undo previous change.
2002-06-14 Miles Bader <miles@gnu.org>
* Makefile.in (COMPILE_FIRST): Add `emacs-lisp/macroexp.el'.
(compile): Add a special case that compiles `emacs-lisp/macroexp.el'
with an increased max-lisp-eval-depth.
* emacs-lisp/bytecomp.el: Provide `bytecomp-preload', at the
beginning of the file. Require `byte-lexbind' at compile time.
Add a few doc string.
(byte-compile-push-bytecodes)
(byte-compile-push-bytecode-const2): New macros.
(byte-compile-lapcode): Use them. Do general code cleanup.
(byte-compile-initial-macro-environment): Expand macros in
byte-compile-eval before passing to byte-compile-top-level.
(byte-compile): Use the `byte-compile-initial-macro-environment'.
* emacs-lisp/byte-lexbind.el: Require `bytecomp-preload' instead of
`bytecomp'.
(byte-compile-bind): Use `byte-compile-dynamic-variable-bind' to bind
dynamic variables.
(byte-compile-maybe-push-heap-environment): Fix function name typo.
2002-06-13 Miles Bader <miles@gnu.org>
Byte compiler lexical binding support (not finished yet):
* emacs-lisp/bytecomp.el: Require `macroexp'.
(byte-compile-lexical-environment)
(byte-compile-current-heap-environment)
(byte-compile-current-num-closures): New variables.
(0, 178, 179, 180, 181): New byte-opcodes.
(byte-compile-lapcode): Handle stack-ref/set opcodes. Signal an
error if a delay-output placeholder is not filled in yet.
(byte-compile-file-form, byte-compile): Expand all macros with
`macroexpand-all'.
(byte-compile-file-form-defsubst, byte-compile-form): Don't expand
macros here.
(byte-compile-make-lambda-lexenv): Autoload.
(byte-compile-lambda): Initial code for handling lexically-bound
arguments and closures; doesn't work yet.
(byte-compile-closure-code-p, byte-compile-make-closure)
(byte-compile-closure): New functions.
(byte-compile-check-variable, byte-compile-dynamic-variable-op)
(byte-compile-dynamic-variable-bind)
(byte-compile-lexical-variable-ref, byte-compile-variable-set):
New functions.
(byte-compile-variable-ref): Remove second argument. Now only
handles real variable references (not setting or binding).
(byte-compile-push-unknown-constant)
(byte-compile-resolve-unknown-constant): New functions.
(byte-compile-funarg, byte-compile-funarg-2): Functions removed.
(byte-compile-function-form): Use either `byte-compile-constant'
or `byte-compile-closure'.
(byte-compile-setq): Use `byte-compile-variable-set' instead of
`byte-compile-variable-ref'.
(apply, mapcar, mapatoms, mapconcat, mapc, sort):
`byte-defop-compiler-1's removed.
(byte-compile-while): Make sure lexically-bound variables inside
the loop don't get stored in an environment outside the loop.
(byte-compile-compute-lforminfo): Autoload.
(byte-compile-push-binding-init): New function.
(byte-compile-let, byte-compile-let*): Handle lexical binding.
(byte-compile-defun): Use `byte-compile-closure' to do the work.
(byte-compile-defmacro): Use `byte-compile-make-closure'.
(byte-compile-defvar): Expand the generated call to `push' since
we're past macroexpansion already.
(byte-compile-stack-adjustment): New function.
(byte-compile-out): Make second arg optional. Rewrite for clarity.
(byte-compile-delay-out, byte-compile-delayed-out): New functions.
* emacs-lisp/byte-opt.el (byte-optimize-form-code-walker): Don't
expand macros here.
* emacs-lisp/macroexp.el (macroexpand-all-1): Expand defmacro forms.
* emacs-lisp/byte-lexbind.el (byte-compile-make-lvarinfo)
(byte-compile-lforminfo-add-var)
(byte-compile-lforminfo-note-closure)
(byte-compile-compute-lforminfo)
(byte-compile-lforminfo-from-lambda)
(byte-compile-lforminfo-analyze)
(byte-compile-heapenv-add-accessible-env)
(byte-compile-heapenv-ensure-access)
(byte-compile-rearrange-let-clauses, byte-compile-bind)
(byte-compile-unbind): Fix a bunch of typos.
2002-06-12 Miles Bader <miles@gnu.org>
* emacs-lisp/byte-lexbind.el, emacs-lisp/macroexp.el: New files.
* subr.el (functionp): Function removed (now a subr).
* help-fns.el (describe-function-1): Handle interpreted closures.
;; arch-tag: bd1b5b8b-fdb2-425d-9ac2-20689fb0ee70
lisp/ChangeLog.trunk
0 → 100644
View file @
894e369d
This diff is collapsed.
Click to expand it.
lisp/calc/calc-poly.el
View file @
894e369d
...
...
@@ -663,7 +663,7 @@
(
cons
'vec
(
cons
(
nth
1
facs
)
(
cons
(
list
'vec
fac
pow
)
(
cdr
(
cdr
facs
)))))
(
cons
'vec
(
cons
(
list
'vec
fac
pow
)
(
cdr
facs
))))))))
(
math-mul
(
math-pow
fac
pow
)
facs
)))
(
math-mul
(
math-pow
fac
pow
)
(
math-factor-protect
facs
)))
)
(
defun
math-factor-poly-coefs
(
p
&optional
square-free
)
; uses "x"
(
let
(
t1
t2
temp
)
...
...
lisp/calendar/appt.el
View file @
894e369d
...
...
@@ -183,16 +183,25 @@ Only relevant if reminders are being displayed in a window."
(defconst appt-buffer-name "
*appt-buf*
"
"
Name
of
the
appointments
buffer.
")
;; TODO Turn this into an alist? It would be easier to add more
;; optional elements.
;; TODO There should be a way to set WARNTIME (and other properties)
;; from the diary-file. Implementing that would be a good reason
;; to change this to an alist.
(defvar appt-time-msg-list nil
"
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]
)
; where
MINUTES
is
the
time
in
minutes
of
the
appointment
after
midnight,
and
STRING
is
the
description
of
the
appointment.
FLAG,
if
non-nil,
says
that
the
element
was
made
with
`
appt-add
'
so
calling
`
appt-make-list
'
again
should
preserve
it.
")
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
can
only
be
present
if
the
element
was
made
with
`
appt-add
'.
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
'.
")
(defconst appt-max-time (1- (* 24 60))
"
11:59pm
in
minutes
-
number
of
minutes
in
a
day
minus
1.
")
...
...
@@ -313,7 +322,7 @@ displayed in a window:
(zerop (mod prev-appt-display-count appt-display-interval))))
;; Non-nil means only update the interval displayed in the mode line.
(mode-line-only (unless full-check appt-now-displayed))
now cur-comp-time appt-comp-time)
now cur-comp-time appt-comp-time
appt-warn-time
)
(when (or full-check mode-line-only)
(save-excursion
;; Convert current time to minutes after midnight (12.01am = 1).
...
...
@@ -353,6 +362,8 @@ displayed in a window:
;; calculate the number of minutes until the appointment.
(when (and appt-issue-message appt-time-msg-list)
(setq appt-comp-time (caar (car appt-time-msg-list))
appt-warn-time (or (nth 3 (car appt-time-msg-list))
appt-message-warning-time)
min-to-app (- appt-comp-time cur-comp-time))
(while (and appt-time-msg-list
(< appt-comp-time cur-comp-time))
...
...
@@ -360,21 +371,21 @@ displayed in a window:
(if appt-time-msg-list
(setq appt-comp-time (caar (car appt-time-msg-list)))))
;; If we have an appointment between midnight and
;; `appt-
message-
warn
ing
-time' minutes after midnight, we
;; `appt-warn-time' minutes after midnight, we
;; must begin to issue a message before midnight. Midnight
;; is considered 0 minutes and 11:59pm is 1439
;; minutes. Therefore we must recalculate the minutes to
;; appointment variable. It is equal to the number of
;; minutes before midnight plus the number of minutes after
;; midnight our appointment is.
(if (and (< appt-comp-time appt-
message-
warn
ing
-time)
(> (+ cur-comp-time appt-
message-
warn
ing
-time)
(if (and (< appt-comp-time appt-warn-time)
(> (+ cur-comp-time appt-warn-time)
appt-max-time))
(setq min-to-app (+ (- (1+ appt-max-time) cur-comp-time)
appt-comp-time)))
;; Issue warning if the appointment time is within
;; appt-message-warning time.
(when (and (<= min-to-app appt-
message-
warn
ing
-time)
(when (and (<= min-to-app appt-warn-time)
(>= min-to-app 0))
(setq appt-now-displayed t
appt-display-count (1+ prev-appt-display-count))
...
...
@@ -470,14 +481,28 @@ Usually just deletes the appointment buffer."
"
[0-9]?[0-9]\\
(
h\\
(
[0-9][0-9]\\
)
?\\|[:.][0-9][0-9]\\)\\(am\\|pm\\
)
?
")
;;;###autoload
(defun appt-add (new-appt-time new-appt-msg)
"
Add
an
appointment
for
today
at
NEW-APPT-TIME
with
message
NEW-APPT-MSG.
The
time
should
be
in
either
24
hour
format
or
am/pm
format.
"
(interactive "
sTime
(
hh:mm[am/pm]
)
:
\nsMessage:
")
(unless (string-match appt-time-regexp new-appt-time)
(defun appt-add (time msg &optional warntime)
"
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
'.
"
(interactive "
sTime
(
hh:mm[am/pm]
)
:
\nsMessage:
sMinutes
before
the
appointment
to
start
warning:
")
(unless (string-match appt-time-regexp time)
(error "
Unacceptable
time-string
"))
(let ((time-msg (list (list (appt-convert-time new-appt-time))
(concat new-appt-time "
" new-appt-msg) t)))
(and (stringp warntime)
(setq warntime (unless (string-equal warntime "")
(string-to-number warntime))))
(and warntime
(not (integerp warntime))
(error "
Argument
WARNTIME
must
be
an
integer,
or
nil
"))
(let ((time-msg (list (list (appt-convert-time time))
(concat time "
" msg) t)))
;; It is presently non-sensical to have multiple warnings about
;; the same appointment with just different delays, but it might
;; not always be so. TODO
(if warntime (setq time-msg (append time-msg (list warntime))))
(unless (member time-msg appt-time-msg-list)
(setq appt-time-msg-list
(appt-sort-list (nconc appt-time-msg-list (list time-msg)))))))
...
...
lisp/emacs-lisp/cl-loaddefs.el
View file @
894e369d
...
...
@@ -282,7 +282,7 @@ Not documented
;;;;;; flet progv psetq do-all-symbols do-symbols dotimes dolist
;;;;;; do* do loop return-from return block etypecase typecase ecase
;;;;;; case load-time-value eval-when destructuring-bind function*
;;;;;; defmacro* defun* gentemp gensym) "
cl-macs
" "
cl-macs.el
" "
fbeedbf769c72fee9b4e0671957c1077
")
;;;;;; defmacro* defun* gentemp gensym) "
cl-macs
" "
cl-macs.el
" "
36cafd5054969b5bb0b1ce6a21605fed
")
;;; Generated autoloads from cl-macs.el
(autoload 'gensym "
cl-macs
" "
\
...
...
lisp/emacs-lisp/cl-macs.el
View file @
894e369d
...
...
@@ -438,7 +438,7 @@ It is a list of elements of the form either:
;;;###autoload
(
defmacro
destructuring-bind
(
args
expr
&rest
body
)
(
let*
((
bind-lets
nil
)
(
bind-forms
nil
)
(
bind-inits
nil
)
(
bind-defs
nil
)
(
bind-block
'cl-none
))
(
bind-defs
nil
)
(
bind-block
'cl-none
)
(
bind-enquote
nil
)
)
(
cl-do-arglist
(
or
args
'
(
&aux
))
expr
)
(
append
'
(
progn
)
bind-inits
(
list
(
nconc
(
list
'let*
(
nreverse
bind-lets
))
...
...
Prev
1
2
3
Next
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment