Commit graph

2862 commits

Author SHA1 Message Date
Chong Yidong
2ec1b5ee34 Merge changes from emacs-23 branch. 2010-07-10 14:52:53 -04:00
Leo Liu
a354ac6a0c emacs-lisp/rx.el (rx): Doc fix. (Bug#6537) 2010-06-29 14:09:07 +02:00
Andreas Schwab
15b72850c1 Update cl-loaddefs.el 2010-06-26 20:49:18 +02:00
Chong Yidong
8adb4c33da Tweaks to package list UI.
* help-mode.el (help-package): New button type.

* emacs-lisp/package.el (package-print-package): Add link to
package description via describe-package.
(describe-package-1): List package requirements.  Add button to
perform installation.
(package-menu-describe-package): New command.
2010-06-20 00:55:14 -04:00
Chong Yidong
cced75847f Add preliminary describe-package functionality, and some cleanup.
* help-mode.el (help-package-def): New button type.

* menu-bar.el: Move package-list-packages binding here from
package.el.

* emacs-lisp/package.el: Move package-list-packages binding to
menu-bar.el.
(describe-package, describe-package-1, package--dir): New funs.
(package-activate-1): Use package--dir.

* emacs-lisp/package-x.el (gnus-article-buffer): Require package.
2010-06-19 18:36:51 -04:00
Stefan Monnier
b1a03ef6bf * lisp/emacs-lisp/edebug.el (edebug-read-list): Phase out old-style backquotes. 2010-06-18 10:05:43 -04:00
Dan Nicolaescu
64eba874f5 * lisp/emacs-lisp/package.el (package-menu-mode-map): Add a menu. 2010-06-17 09:41:13 -07:00
Juanma Barranquero
54ea2a0d41 emacs-lisp/package.el (package-menu-mode-map): Move initialization into declaration. 2010-06-17 13:02:42 +02:00
Chong Yidong
44198b6ee9 Merge package.el, written by Tom Tromey <tromey@redhat.com>.
Changes relative to version 0.9 of package.el are listed below:

* emacs-lisp/package-x.el: New file.  Package uploading
functionality split out from package.el.

* emacs-lisp/package.el (package-archive-base): Point to
elpa.gnu.org.
(package-enable, package-load-list): New defcustoms.
(package-user-dir, package-directory-list): Turn into defcustoms.
Don't include package-user-dir in package-directory-list.
(package--builtins-base): Don't include Emacs as a "package".
(package-subdirectory-regexp): New var.
(package-load-all-descriptors, package-compute-transaction)
(package-download-transaction): Obey package-load-list.
(package-activate-1): Rename from package-do-activate.
(package-list-packages-internal): Check package-load-list.
(package-load-descriptor, package-generate-autoloads)
(package-unpack, package-unpack-single)
(package--read-archive-file, package-delete): Use
expand-file-name.

* startup.el (command-line): Load packages after reading init
file.
2010-06-16 22:08:10 -04:00
Stefan Monnier
e20f04215a * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Put back special
handling for `lambda' (misunderstanding).
2010-06-16 20:17:22 -04:00
Stefan Monnier
49b2e83db4 * lisp/emacs-lisp/macroexp.el (macroexpand-all-1): Don't handle `lambda'
specially, since it's a macro.  Fix up wrong hint passed to maybe-cons.
2010-06-16 17:11:06 -04:00
Stefan Monnier
2a64315a11 Merge from emacs-23 2010-06-16 16:08:41 -04:00
Helmut Eller
37a7e764e8 Close bug#6408.
* lisp/emacs-lisp/cl-macs.el (destructuring-bind): Bind `bind-enquote',
used by cl-do-arglist.
2010-06-12 00:06:15 -07:00
Glenn Morris
46e6650e09 Minor authors.el update.
* lisp/emacs-lisp/authors.el (authors-ignored-files)
(authors-valid-file-names): Add some files.
2010-06-09 22:39:03 -07:00
Andreas Schwab
639b2760f1 Merge from emacs-23 2010-06-10 00:08:50 +02:00
Juanma Barranquero
ee8359ba5a * emacs-lisp/smie.el (comment-string-strip): Declare function.
(smie-precs-precedence-table): Fix typo in docstring.
2010-06-09 13:40:50 +02:00
Stefan Monnier
e7d67e73b2 * lisp/emacs-lisp/smie.el (smie-indent-keyword): Remove special case that
can be handled with a ((:before "fn") (:prev "=>" parent)) rule.
2010-06-08 22:58:26 -04:00
Stefan Monnier
989bc97f04 * lisp/emacs-lisp/advice.el (ad-compile-function):
Define warning-suppress-types before we let-bind it.

Fixes: debbugs:6275
2010-06-08 21:18:31 -04:00
Stefan Monnier
83156c183f * lisp/emacs-lisp/smie.el (smie-indent-offset-rule): Rename from
smie-indent-offset-after.  Add :prev case.  Make a bit more generic.
(smie-indent-virtual): Remove `virtual' arg.  Update callers.
(smie-indent-keyword): Add handling of open-paren keywords.
(smie-indent-comment-continue): Don't assume comment-continue.
2010-06-07 15:37:50 -04:00
Stefan Monnier
c2ea581076 Make (after keyword) indent-rules more flexible.
* lisp/emacs-lisp/smie.el (smie-indent-offset-after)
(smie-indent-forward-token, smie-indent-backward-token): New functions.
(smie-indent-after-keyword): Use them.
(smie-indent-fixindent): Only applies to the indentation of the BOL.
(smie-indent-keyword): Tweak the black magic.
(smie-indent-comment-continue): Strip comment-continue before use.
(smie-indent-functions): Indent comments before keywords.
2010-06-06 22:10:19 -04:00
Juanma Barranquero
e2d2a205a5 * emacs-lisp/smie.el (comment-continue): Declare for byte-compiler. 2010-06-03 18:59:29 +02:00
Stefan Monnier
dd2c3c9241 Split smie-indent-calculate into more manageable chunks.
* lisp/emacs-lisp/smie.el (smie-indent-virtual, smie-indent-fixindent)
(smie-indent-comment, smie-indent-after-keyword, smie-indent-keyword)
(smie-indent-close, smie-indent-comment-continue, smie-indent-bob)
(smie-indent-exps): Extract from smie-indent-calculate.
(smie-indent-functions): New var.
(smie-indent-functions): Use them.
2010-06-02 21:48:10 -04:00
Stefan Monnier
927c346bd6 * lisp/emacs-lisp/smie.el (smie-indent-calculate): Simplify and cleanup.
(smie-indent-hanging-p): Use smie-bolp.
* test/indent: New dir.
2010-06-02 16:13:11 -04:00
Juanma Barranquero
24f574a964 Fix bug#6265: * eldoc.el: Add completions for new commands left-* and right-*. 2010-06-01 15:47:14 +02:00
Stefan Monnier
11e4d8c0d3 Provide hooks to use a different tokenizer in SMIE.
* lisp/emacs-lisp/smie.el (smie-forward-token-function)
(smie-backward-token-function): New vars.
(smie-backward-sexp, smie-forward-sexp)
(smie-indent-hanging-p, smie-indent-calculate): Use them.
(smie-default-backward-token): Rename from smie-backward-token and
skip comments.
(smie-default-forward-token): Rename from smie-forward-token and
skip comments.
(smie-next-sexp): Handle nil results from next-token.
(smie-indent-calculate): Add a new case for special `fixindent' comments.
2010-05-27 00:41:36 -04:00
Stefan Monnier
f5228f8490 * emacs-lisp/smie.el (smie-set-prec2tab): Check override before use.
(smie-merge-prec2s): Pass the tables as separate args.
(smie-bnf-precedence-table): Adjust call accordingly.
(smie-prec2-levels): Set levels at the end.
2010-05-24 22:32:40 -04:00
Stefan Monnier
d355a0b791 Replace Lisp calls to delete-backward-char by delete-char.
* bs.el, expand.el, ido.el, image-dired.el, lpr.el, pcomplete.el,
skeleton.el, term.el, time.el, wid-edit.el, woman.el,
calc/calc-graph.el, calc/calc-help.el, calc/calc-incom.el,
calc/calc.el, emacs-cl-extra.el, emacs-cl-loaddefs.el,
emulation/cua-rect.el, emulation/viper-ex.el, eshell/esh-test.el,
eshell/eshell.el, gnus/gnus-uu.el, gnus/nndoc.el, gnus/nnrss.el,
gnus/rfc2047.el, gnus/utf7.el, international/utf-7.el,
language/ethio-util.el, mh-e/mh-alias.el, mh-e/mh-search.el,
net/imap.el, net/rcirc.el, obsolete/complete.el, play/decipher.el,
progmodes/ada-mode.el, progmodes/cc-awk.el, progmodes/dcl-mode.el,
progmodes/ps-mode.el, progmodes/verilog-mode.el,
progmodes/vhdl-mode.el, textmodes/bibtex.el, textmodes/fill.el,
textmodes/reftex-auc.el, textmodes/rst.el, textmodes/sgml-mode.el,
textmodes/table.el, textmodes/texinfmt.el: Replace Lisp calls to
delete-backward-char by calls to delete-char.
2010-05-24 22:11:08 -04:00
Stefan Monnier
171eda5358 Merge from emacs-23 2010-05-24 20:54:13 -04:00
Stefan Monnier
dd9b52a693 * emacs-lisp/bytecomp.el (byte-compile-interactive-only-functions):
Add delete-backward-char.
2010-05-24 17:01:10 -04:00
Juanma Barranquero
49a817b3b3 * emacs-lisp/cl-loaddefs.el: Update autoload checksum. 2010-05-20 03:32:08 +02:00
Juri Linkov
7bce851099 * emacs-lisp/cl-macs.el (window-parameter): Add defsetf with
set-window-parameter.
2010-05-19 23:37:57 +03:00
Stefan Monnier
224b70cbc5 * emacs-lisp/smie.el (smie-next-sexp): Break inf-loop at BOB.
(smie-backward-sexp, smie-forward-sexp): Remove boundary condition now
handled in smie-next-sexp.
(smie-indent-calculate): Provide a starting indentation (so the
recursion is well-founded ;-).
2010-05-18 15:24:24 -04:00
Stefan Monnier
472e7ec1e1 Fix handling of non-associative equal levels.
* emacs-lisp/smie.el (smie-prec2-levels): Choose distinct levels even
when it's not needed.
(smie-op-left, smie-op-right): New functions.
(smie-next-sexp): New function, extracted from smie-backward-sexp.
Better handle equal levels to distinguish the associative case from
the "multi-keyword construct" case.
(smie-backward-sexp, smie-forward-sexp): Use it.
2010-05-18 12:03:51 -04:00
Juanma Barranquero
35e53abd43 * emacs-lisp/smie.el: Fix typos in docstrings. 2010-05-18 09:44:07 +02:00
Stefan Monnier
5ad4bef575 Provide a simple generic indentation engine and use it for Prolog.
* emacs-lisp/smie.el: New file.
* progmodes/prolog.el (prolog-smie-op-levels)
(prolog-smie-indent-rules): New var.
(prolog-mode-variables): Use them to configure SMIE.
(prolog-indent-line, prolog-indent-level): Remove.
2010-05-17 15:27:26 -04:00
Stefan Monnier
10dcc5612a * simple.el (prog-mode): New (abstract) major mode.
* emacs-lisp/lisp-mode.el (emacs-lisp-mode, lisp-mode): Use it.
* progmodes/sh-script.el (sh-mode): Remove redundant var assignment.
2010-05-14 12:41:01 -04:00
Stefan Monnier
0235128c15 Merge from emacs-23 2010-05-08 14:47:07 -04:00
Stefan Monnier
0c495c215a Define auto-save-mode with define-minor-mode.
* emacs-lisp/easy-mmode.el (define-minor-mode):
Make :variable more flexible.
* files.el (auto-save-mode): Use it to define using define-minor-mode.
2010-05-05 22:53:56 -04:00
Stefan Monnier
80ac5d4d34 Use define-minor-mode in more cases.
* term/tvi970.el (tvi970-set-keypad-mode):
* simple.el (auto-fill-mode, overwrite-mode, binary-overwrite-mode)
(normal-erase-is-backspace-mode):
* scroll-bar.el (scroll-bar-mode): Use it and define-minor-mode.
(set-scroll-bar-mode-1): (Re)move to its sole caller.
(get-scroll-bar-mode): New function.
* emacs-lisp/cl-macs.el (eq): Handle a non-variable first arg.
2010-05-04 23:45:21 -04:00
Stefan Monnier
f44379e7fe Use define-minor-mode for less obvious cases.
* emacs-lisp/easy-mmode.el (define-minor-mode): Add :variable keyword.
* emacs-lisp/cl-macs.el (terminal-parameter, eq): Add setf method.
* international/iso-ascii.el (iso-ascii-mode):
* frame.el (auto-raise-mode, auto-lower-mode):
* composite.el (global-auto-composition-mode): Use define-minor-mode.
2010-05-04 22:08:25 -04:00
Stefan Monnier
f3a4700281 * emacs-lisp/lisp-mode.el (lisp-mode): Use define-derived-mode.
Set find-tag-default-function as a variable rather than a property.
2010-04-30 21:29:12 -04:00
Stefan Monnier
56924d996f Make it possible to locally disable a globally enabled mode.
* simple.el (fundamental-mode): Run fundamental-mode-hook.
* emacs-lisp/derived.el (define-derived-mode): Use fundamental-mode
rather than kill-all-local-variables so it runs fundamental-mode-hook.
* emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Use fundamental-mode-hook to run MODE-enable-in-buffers earlier, so
that subsequent hooks get a chance to disable it.
2010-04-28 11:18:37 -04:00
Stefan Monnier
17818d7152 Let the user turn off locally a globalized minor mode
* emacs-lisp/easy-mmode.el (define-globalized-minor-mode):
Avoid re-enabling a minor mode after the user turned the minor mode
off if MODE-enable-in-buffers is run twice (typically once from
fundamental-mode's after-change-major-mode-hook and a second time from
run-mode-hook's own after-change-major-mode-hook).
2010-04-27 14:14:16 -04:00
Stefan Monnier
ccaa47655d * emacs-lisp/lisp.el (lisp-complete-symbol): Fail gracefully. 2010-04-27 13:57:32 -04:00
Glenn Morris
fea1add448 Minor authors.el updates.
* emacs-lisp/authors.el (authors-obsolete-files-regexps):
Ignore VCS-ignore files, and deleted nextstep preferences files.
(authors-ignored-files): Ignore deleted cedet test files, and "*.el".
(authors-ambiguous-files): New list.
(authors-valid-file-names): Add some deleted files.
(authors-renamed-files-alist): Add font-setting.el, edt-user.doc.
(authors-disambiguate-file-name): New function.  (Bug#5501)
(authors-canonical-file-name): Doc fix.
Don't warn about obsolete files.
(authors-canonical-file-name, authors-scan-el):
Use authors-disambiguate-file-name.
2010-04-23 19:16:13 -07:00
Stefan Monnier
9ae0c31028 Provide byte-compiler warnings when set-default a read-only var.
* emacs-lisp/bytecomp.el (byte-compile-set-default): New function.
(byte-compile-setq-default): Optimize for the
single-var case and don't call byte-compile-form in this case to avoid
inf-loop with byte-compile-set-default.
2010-04-23 12:26:11 -04:00
Stefan Monnier
62c5b459af (lisp-completion-at-point): Try and handle errors. 2010-04-21 13:53:03 -04:00
Stefan Monnier
e97a42c15b Make the log-edit comments use RFC822 format throughout.
* vc.el (vc-checkin, vc-modify-change-comment):
Adjust to new vc-start/finish-logentry.
(vc-find-conflicted-file): New command.
(vc-transfer-file): Adjust to new vc-checkin.
(vc-next-action): Improve scoping.

* vc-hg.el (vc-hg-log-edit-mode): Remove.
(vc-hg-checkin): Remove extra arg.  Use log-edit-extract-headers.

* vc-git.el (vc-git-log-edit-mode): Remove.
(vc-git-checkin): Remove extra arg.  Use log-edit-extract-headers.
(vc-git-commits-coding-system): Rename from git-commits-coding-system.

* vc-dispatcher.el (vc-log-edit): Shorten names for log-edit-show-files.
(vc-start-logentry): Remove argument `extra'.
(vc-finish-logentry): Remove extra args.

* vc-bzr.el (vc-bzr-log-edit-mode): Remove.
(vc-bzr-checkin): Remove extra arg.  Use log-edit-extract-headers.
(vc-bzr-conflicted-files): New function.

* log-edit.el (log-edit-extra-flags)
(log-edit-before-checkin-process): Remove.
(log-edit-summary, log-edit-header, log-edit-unknown-header): New faces.
(log-edit-headers-alist): New var.
(log-edit-header-contents-regexp): New const.
(log-edit-match-to-eoh): New function.
(log-edit-font-lock-keywords): Use them.
(log-edit): Insert a "Summary:" header as default.
(log-edit-mode): Mark font-lock rules as case-insensitive.
(log-edit-done): Cleanup headers.
(log-view-process-buffer): Remove.
(log-edit-extract-headers): New function to replace it.
2010-04-20 22:05:24 -04:00
Stefan Monnier
6e610c7261 (lisp-completion-at-point): Complete around point.
I.e. include text after point in the completion region.
Also, return nil when we're not after/in a symbol.
2010-04-20 12:37:31 -04:00
Glenn Morris
0ca1259846 * emacs-lisp/lisp.el (lisp-completion-at-point): Give it a doc string. 2010-04-20 00:54:28 -07:00