(find-lisp-object-file-name): When looking for autoloaded
variables, also consider the .elc files, since the .el files are
normally gzipped (subsequent code locates the .el.gz from the .elc).
(byte-compile-keep-pending, byte-compile-file-form, byte-compile-lambda)
(byte-compile-top-level-body, byte-compile-form)
(byte-compile-variable-ref, byte-compile-setq)
(byte-compile-setq-default, byte-compile-body)
(byte-compile-body-do-effect, byte-compile-and, byte-compile-or)
(batch-byte-compile): Give some more local variables with common names
a "bytecomp-" prefix to avoid masking warnings about free variables.
(rmail-mime-save): If file exists, don't try to be clever and add a
suffix to make a unique name, just let the user decide whether or not
to overwrite it. If the input is a directory, write the default
filename to that directory. (Bug#4388)
(rmail-mime-bulk-handler): Ensure the save button's 'directory property
is a filename-as-a-directory.
* functions.texi (Anonymous Functions): Rearrange discussion,
giving usage of unquoted lambda forms first. Mention that
`function' and `#'' are no longer required (Bug#4290).
Stefan Monnier [Sat, 12 Sep 2009 19:03:49 +0000 (19:03 +0000)]
(mouse-wheel-mode): Make sure the new defvar doesn't
actually define the variable, but only silences the byte-compiler.
(mouse-wheel-change-button): Check whether mouse-wheel-mode is bound
before looking it up.
(mouse-wheel-scroll-amount): Also reset the bindings if this value is changed.
(elint-file): Make max-lisp-eval-depth at least 1000.
(elint-add-required-env): Don't beep on error.
(elint-forms): In case of error, return ENV unchanged.
Stefan Monnier [Sat, 12 Sep 2009 04:38:03 +0000 (04:38 +0000)]
* mwheel.el (mwheel-installed-bindings): New var.
(mouse-wheel-mode): Use it, so as to make sure we really remove all
the bindings we set last time. Use custom-initialize-delay.
* loadup.el: Load mwheel after term/*-win.el.
* startup.el (command-line): Don't reevaluate mouse-wheel-down-event
and mouse-wheel-up-event now that their first evaluation is done
sufficiently late to be correct.
Stefan Monnier [Sat, 12 Sep 2009 03:55:46 +0000 (03:55 +0000)]
* startup.el (tutorial-directory): Make it a defcustom.
Use custom-initialize-delay rather than eval-at-startup to set it.
* image.el (image-load-path): Make it a defcustom.
Use custom-initialize-delay rather than eval-at-startup to set it.
* subr.el (eval-at-startup): Remove.
* font-lock.el (lisp-font-lock-keywords-2): Remove eval-at-startup.
Stefan Monnier [Sat, 12 Sep 2009 03:35:40 +0000 (03:35 +0000)]
* lread.c (Fload): Don't output a message after loading an obsolete
package any more (done in Lisp now).
* subr.el (do-after-load-evaluation): Warn the user after loading an
obsolete package.
(elint-file, elint-directory): New autoloaded commands.
(elint-current-buffer): Set mode-line-process.
(elint-init-env): Handle define-derived-mode.
Fix declare-function with unspecified arglist. Guard against odd
defalias statements (eg iso-insert's 8859-1-map).
(elint-add-required-env): Use a temp buffer.
(elint-form): Just print the function/macro name, not the whole form.
Return env unchanged if we fail to parse a macro.
(elint-forms): Guard against parse errors.
(elint-output): New function, to handle batch mode.
(elint-log-message): Add optional argument. Use elint-output.
(elint-set-mode-line): New function.
* url-methods.el (url-scheme--registering-proxy): New variable.
(url-scheme-register-proxy, url-scheme-get-property): Avoid
calling url-scheme-register-proxy in an infloop (Bug#4191).
Stefan Monnier [Fri, 11 Sep 2009 21:25:44 +0000 (21:25 +0000)]
* custom.el (custom-delayed-init-variables): New var.
(custom-initialize-delay): New function.
* startup.el (command-line): "Re"evaluate all vars in
custom-delayed-init-variables. Don't reevaluate abbrev-file-name
explicitly any more.
* abbrev.el (abbrev-file-name): Use custom-initialize-delay
to avoid creating a ~/.emacs.d at build-time (bug#4347).
(apropos-documentation-check-doc-file): Exclude unbound functions and
variables, since they must be stuff specific to some other platform.
(apropos-print): Make mouse-click message less specific about button.
Simon South [Fri, 11 Sep 2009 02:28:50 +0000 (02:28 +0000)]
(delphi-tab): Indent region when Transient Mark mode is enabled and
region is active; otherwise indent or insert TAB as usual.
(delphi-mode): Update description of TAB-key binding.
Stefan Monnier [Fri, 11 Sep 2009 00:58:59 +0000 (00:58 +0000)]
* keymap.c (QCadvertised_binding): New constant.
(syms_of_keymap): Initialize it.
(Fwhere_is_internal): Try and use bindings from :advertised-binding
if applicable.
* progmodes/xscheme.el (xscheme-evaluation-commands):
Put a :advertised-binding property rather than using
advertised-xscheme-send-previous-expression.
(advertised-xscheme-send-previous-expression): Declare obsolete.
* emulation/crisp.el (crisp-mode-map): Use `undo' rather than
`advertised-undo'.
(crisp-mode): Add corresponding bindings to
undo's :advertised-binding instead.
* dired.el (dired-mode-map): Put a :advertised-binding property rather
than using dired-advertised-find-file.
(dired-advertised-find-file):
* simple.el (advertised-undo):
* wid-edit.el (advertised-widget-backward): Declare obsolete.
(widget-keymap): Put a :advertised-binding property rather
than using advertised-widget-backward.
* bindings.el (ctl-x-map): Put a :advertised-binding property rather
than using advertised-undo.
* tutorial.el (tutorial--default-keys): Adjust accordingly.
Stefan Monnier [Thu, 10 Sep 2009 18:19:03 +0000 (18:19 +0000)]
* keyboard.c (Qmenu_alias, Vdefine_key_rebound_commands): Remove.
(parse_menu_item): Streamline since bindings are recomputed all the
time anyway. Don't bother checking Vdefine_key_rebound_commands any
more and don't support lmenu's menu-alias any more either.
* subr.el (define-key-rebound-commands): Mark obsolete.
* startup.el (precompute-menubar-bindings): Remove.
(normal-top-level): Remove obsolete code that tried to precompute
menubar bindings.
* loadup.el (define-key-rebound-commands): Don't bother fiddling with
define-key-rebound-commands and precompute-menubar-bindings.