Commit graph

3360 commits

Author SHA1 Message Date
Glenn Morris
666b903b91 Merge from emacs-24; up to 2012-04-21T14:12:27Z!sdl.web@gmail.com 2012-05-08 20:06:08 -07:00
Stefan Monnier
f0809a9d05 * lisp/buff-menu.el (list-buffers--refresh): Mark `size' as right-align.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header):
Handle new :right-align column property.
(tabulated-list-print-col): Idem, plus use `display' text-property to
try and preserve alignment for variable pitch fonts.
2012-05-07 12:29:55 -04:00
Chong Yidong
1241b724c8 Restore Buffer-menu-use-header-line functionality.
* lisp/emacs-lisp/tabulated-list.el: Add no-header-line alternative.
(tabulated-list-use-header-line): New var.
(tabulated-list-init-header): Use it.
(tabulated-list-print-fake-header): New function.
(tabulated-list-print): Use it.
(tabulated-list-sort-button-map): Add non-header-line commands.
(tabulated-list-init-header): Add column name property to basic
labels as well.
(tabulated-list-col-sort): Handle non-header-line button case.
(tabulated-list--sort-by-column-name): Fix a corner case.

* lisp/buff-menu.el (list-buffers--refresh): Handle
Buffer-menu-use-header-line.
2012-05-07 13:37:38 +08:00
Chong Yidong
e5f9458fe8 * lisp/buff-menu.el: Convert to Tabulated List mode.
(Buffer-menu-buffer+size-width): Make obsolete.
(Buffer-menu-name-width, Buffer-menu-size-width): New variables.
(Buffer-menu-mode-map): Inherit from tabulated-list-mode-map.
(Buffer-menu-mode): Derive from tabulated-list-mode.  Move command
documentation into docstring of buffer-menu.
(Buffer-menu-toggle-files-only): Add an informative message.
(Buffer-menu-sort): Convert to alias for tabulated-list-sort.
(Buffer-menu-buffer, Buffer-menu-beginning, Buffer-menu-mark)
(Buffer-menu-unmark, Buffer-menu-backup-unmark)
(Buffer-menu-delete, Buffer-menu-save, Buffer-menu-not-modified)
(Buffer-menu-execute, Buffer-menu-select)
(Buffer-menu-marked-buffers, Buffer-menu-toggle-read-only)
(Buffer-menu-bury): Use Tabulated List machinery.
(Buffer-menu-mouse-select, Buffer-menu-sort-by-column)
(Buffer-menu-sort-button-map, Buffer-menu-make-sort-button):
Deleted.
(list-buffers--refresh): New function.
(list-buffers-noselect): Use it.
(tabulated-list-entry-size->, Buffer-menu--pretty-name)
(Buffer-menu--pretty-file-name): New helper functions.

* lisp/loadup.el: Preload tabulated-list.

* lisp/emacs-lisp/tabulated-list.el (tabulated-list-sort): Rename from
tabulated-list-sort-column.
(tabulated-list-init-header): Add the initial aligning space even
if tabulated-list-padding is zero.

* src/lisp.mk (lisp): Update.
2012-05-07 00:45:46 +08:00
Christopher Schmidt
e129292c44 * lisp/emacs-lisp/cl-macs.el (cl-expr-contains): Handle cons cells
whose cdr is not a cons cell correctly.

Fixes: debbugs:11038
2012-05-06 11:38:30 -04:00
Chong Yidong
6632d36111 Improvements for Tabulated List mode.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-format): Accept
additional plist in column descriptors.
(tabulated-list-init-header): Obey it.
(tabulated-list-get-entry): New function.
(tabulated-list-put-tag): Use it.  Use string-width instead of
length.
(tabulated-list--column-number): New function.
(tabulated-list-print): Use it.
(tabulated-list-print-col): New function.  Set
`tabulated-list-column-name' property on each column's text.
(tabulated-list-print-entry): Use it.
(tabulated-list-delete-entry, tabulated-list-set-col): New
functions.
(tabulated-list-sort-column): New command.

Fixes: debbugs:11337
2012-05-06 16:32:37 +08:00
Chong Yidong
25f292cd48 * emacs-lisp/package.el (package-built-in-p): Handle `emacs' package.
Fixes: debbugs:11410
2012-05-06 12:05:43 +08:00
Chong Yidong
f677562b6c Fix package.el handling of local variables on first line.
* lisp/emacs-lisp/package.el (package-buffer-info): Avoid putting
local variables into description.
2012-05-05 13:13:27 +08:00
Stefan Monnier
5342bb062f * lisp/emacs-lisp/pcase.el (pcase--let*): New function.
(pcase--expand, pcase-codegen, pcase--q1): Use it to reduce nesting
a bit more.
(pcase--split-pred): Be more clever about ruling out overlap between
a predicate and some constant pattern.
(pcase--q1): Use `null' instead of (eq foo nil).
2012-05-04 22:05:49 -04:00
Stefan Monnier
71873e2b33 Add new error and function `user-error'.
* lisp/subr.el (user-error): New function.
* lisp/window.el (switch-to-buffer):
* lisp/vc/smerge-mode.el (smerge-resolve-function, smerge-resolve)
(smerge-match-conflict):
* lisp/simple.el (previous-matching-history-element)
(next-matching-history-element, goto-history-element, undo-more)
(undo-start):
* lisp/progmodes/etags.el (visit-tags-table-buffer, find-tag-tag)
(find-tag-noselect, find-tag-in-order, etags-goto-tag-location)
(next-file, tags-loop-scan, list-tags, complete-tag):
* lisp/progmodes/compile.el (compilation-loop):
* lisp/mouse.el (mouse-minibuffer-check):
* lisp/man.el (Man-bgproc-sentinel, Man-goto-page):
* lisp/info.el (Info-find-node-2, Info-extract-pointer, Info-history-back)
(Info-history-forward, Info-follow-reference, Info-menu)
(Info-extract-menu-item, Info-extract-menu-counting)
(Info-forward-node, Info-backward-node, Info-next-menu-item)
(Info-last-menu-item, Info-next-preorder, Info-last-preorder)
(Info-next-reference, Info-prev-reference, Info-index)
(Info-index-next, Info-follow-nearest-node)
(Info-copy-current-node-name):
* lisp/imenu.el (imenu--make-index-alist)
(imenu-default-create-index-function, imenu-add-to-menubar):
* lisp/files.el (basic-save-buffer, recover-file):
* lisp/emacs-lisp/easy-mmode.el (easy-mmode-define-navigation):
* lisp/emacs-lisp/checkdoc.el (checkdoc-continue, checkdoc-comments)
(checkdoc-message-text, checkdoc-defun):
* lisp/dabbrev.el (dabbrev-completion, dabbrev--abbrev-at-point):
* lisp/cus-edit.el (customize-changed-options, customize-rogue)
(customize-saved, custom-variable-set, custom-variable-mark-to-save)
(custom-variable-mark-to-reset-standard)
(custom-variable-reset-backup, custom-face-mark-to-reset-standard)
(custom-file):
* lisp/completion.el (check-completion-length):
* lisp/comint.el (comint-search-arg)
(comint-previous-matching-input-string-position)
(comint-previous-matching-input)
(comint-replace-by-expanded-history-before-point, comint-send-input)
(comint-copy-old-input, comint-backward-matching-input)
(comint-goto-process-mark, comint-set-process-mark):
* lisp/calendar/calendar.el (calendar-cursor-to-date): Use it.
* lisp/bindings.el (debug-ignored-errors): Remove regexps, add `user-error'.
* src/data.c (PUT_ERROR): New macro.
(syms_of_data): Use it.  Add new error type `user-error'.
* src/undo.c (user_error): New function.
(Fprimitive_undo): Use it.
* src/print.c (print_error_message): Adjust print style for `user-error'.
* src/keyboard.c (user_error): New function.
(Fexit_recursive_edit, Fabort_recursive_edit): Use it.
2012-05-04 19:16:47 -04:00
Paul Eggert
0bfcf5c598 Fix minor Y10k bugs.
* lisp/arc-mode.el (archive-unixdate):
* lisp/autoinsert.el (auto-insert-alist):
* lisp/calc/calc-forms.el (math-this-year):
* lisp/gnus/nnweb.el (nnweb-google-parse-1):
* lisp/emacs-lisp/copyright.el (copyright-current-year)
(copyright-update-year, copyright):
* lisp/tar-mode.el (tar-clip-time-string):
* lisp/time.el (display-time-update):
Don't assume years have 4 digits.
2012-05-03 23:13:18 -07:00
Chong Yidong
78f3273aab Convert more defvars to defcustoms.
* dos-w32.el (file-name-buffer-file-type-alist)
(direct-print-region-use-command-dot-com):
* ffap.el (ffap-menu-regexp):
* follow.el (follow-debug):
* forms.el (forms--debug):
* iswitchb.el (iswitchb-all-frames):
* ido.el (ido-all-frames):
* mail/feedmail.el (feedmail-mail-send-hook)
(feedmail-mail-send-hook-queued):
* mail/footnote.el (footnote-signature-separator):
* mail/mailabbrev.el (mail-alias-separator-string)
(mail-abbrev-mode-regexp):
* mail/rmail.el (rmail-speedbar-match-folder-regexp):
* progmodes/idlwave.el (idlwave-libinfo-file)
(idlwave-default-completion-case-is-down)
(idlwave-library-routines): Convert defvars to defcustoms.

* mail/rmail.el (rmail-decode-mime-charset):
* progmodes/idlw-shell.el (idlwave-shell-print-expression-function)
(idlwave-shell-fix-inserted-breaks)
(idlwave-shell-activate-alt-keybindings)
(idlwave-shell-use-breakpoint-glyph):
* facemenu.el (facemenu-unlisted-faces): Delete obsolete vars.

* doc/lispref/os.texi (Timers): Use defopt for timer-max-repeats.
2012-05-04 13:14:14 +08:00
Stefan Monnier
2bd785a208 * lisp/emacs-lisp/bytecomp.el
(byte-compile-file-form-custom-declare-variable): Compile all elements,
since cconv.el might have introduced :fun-body, internal-make-closure,
and friends for bytecomp to handle.
* lisp/custom.el (defcustom): Avoid ((λ ..) ..).

Fixes: debbugs:11391
2012-05-02 22:39:23 -04:00
Chong Yidong
a8e7d6d783 Merge changes from emacs-24 branch 2012-04-27 11:10:38 +08:00
Stefan Monnier
797e6e88e9 * emacs-lisp/assoc.el: Move to obsolete/. 2012-04-26 20:30:56 -04:00
Stefan Monnier
657c21e46b * lisp/emacs-lisp/assoc.el (aget): Fix dynamic-scoping issue.
Fixes: debbugs:11352
2012-04-26 14:21:03 -04:00
Stefan Monnier
e95a67dc75 Replace lexical-let by lexical-binding (except Gnus, CEDET, ERT).
* lisp/term/ns-win.el (ns-define-service):
* lisp/progmodes/pascal.el (pascal-goto-defun):
* lisp/progmodes/js.el (js--read-tab):
* lisp/progmodes/etags.el (tags-lazy-completion-table):
* lisp/emacs-lisp/syntax.el (syntax-propertize-via-font-lock):
* lisp/emacs-lisp/ewoc.el (ewoc--wrap):
* lisp/emacs-lisp/assoc.el (aput, adelete, amake):
* lisp/doc-view.el (doc-view-convert-current-doc):
* lisp/url/url.el (url-retrieve-synchronously):
* lisp/vc/diff.el (diff-no-select): Replace lexical-let by lexical-binding.
2012-04-26 08:43:28 -04:00
Stefan Monnier
0d42eb3e96 * lisp/vc/vc-mtn.el:
* lisp/vc/vc-hg.el:
* lisp/vc/vc-git.el:
* lisp/vc/vc-dir.el:
* lisp/vc/vc-cvs.el:
* lisp/vc/vc-bzr.el:
* lisp/vc/vc-arch.el:
* lisp/vc/vc.el: Replace lexical-let by lexical-binding.
* lisp/minibuffer.el (lazy-completion-table): Avoid ((λ ...) ...).
* lisp/emacs-lisp/cl-macs.el (lexical-let): Fix use in lexical-binding.
* lisp/emacs-lisp/cconv.el (cconv-analyse-form): Warn use of ((λ ...) ...).
2012-04-25 23:18:47 -04:00
Glenn Morris
ed99f8ff2e Comment fix 2012-04-20 20:32:15 -04:00
Chong Yidong
c07a4c0b59 Merge from emacs-24 branch 2012-04-20 16:48:50 +08:00
Eli Zaretskii
539aa51394 Doc fixes for emacs-bzr-* facilities.
lisp/version.el (emacs-bzr-version, emacs-bzr-get-version): Doc fixes.
2012-04-20 08:47:55 +03:00
Juanma Barranquero
4d6769e1bb lisp/*: Add declarations, remove unused bindings, mark unused args.
* lisp/avoid.el (mouse-avoidance-mode): Mark unused arg.
  (mouse-avoidance-nudge-mouse): Remove unused binding.

* lisp/imenu.el (imenu-default-goto-function): Mark unused args.
  (imenu-progress-message): Remove obsolete macro; all callers changed.

* lisp/mouse.el (mouse-menu-major-mode-map):
* lisp/emacs-lisp/authors.el (authors-scan-change-log)
  (authors-add-to-author-list):
* lisp/emacs-lisp/avl-tree.el (avl-tree--enter-balance):
* lisp/emacs-lisp/smie.el (smie-auto-fill):
* lisp/mail/sendmail.el (mail-bury):
* lisp/mail/unrmail.el (unrmail):
* lisp/net/tls.el (open-tls-stream):
* lisp/textmodes/picture.el (picture-mouse-set-point):
  Remove unused bindings.

* lisp/subr.el (keymap-canonicalize): Remove unused binding.
  (read-passwd): Mark unused arg.

* lisp/tutorial.el (tutorial--display-changes): Remove unused binding.
  (tutorial--save-tutorial-to): Remove unused variable.

* lisp/emacs-lisp/package.el (define-package, package-menu-mark-delete)
  (package-menu-mark-install, package-menu-mark-unmark): Mark unused args.
  (package-generate-autoloads, package-menu--generate)
  (package-menu--find-upgrades): Remove unused bindings.

* lisp/emulation/cua-rect.el (cua-restrict-regexp-rectangle)
  (cua-restrict-prefix-rectangle): Doc fixes.  Remove unused bindings.
  (cua--mouse-ignore, cua--delete-rectangle, cua--extract-rectangle)
  (cua--indent-rectangle, cua-open-rectangle, cua-close-rectangle)
  (cua-blank-rectangle, cua-string-rectangle, cua-replace-in-rectangle)
  (cua-incr-rectangle, cua-sequence-rectangle, cua--convert-rectangle-as)
  (cua--rectangle-aux-replace, cua--left-fill-rectangle)
  (cua-scroll-rectangle-up, cua-scroll-rectangle-down)
  (cua-delete-char-rectangle): Mark unused args.
  (cua-align-rectangle): Remove unused binding.

* lisp/mail/rmail.el (compilation--message->loc)
  (epa--find-coding-system-for-mime-charset): Declare.

* lisp/net/dbus.el (dbus-register-service): Declare.
  (dbus-name-owner-changed-handler): Remove unused binding.

* lisp/nxml/nxml-mode.el (nxml-electric-slash, nxml-in-mixed-content-p)
  (nxml-compute-indent-from-matching-start-tag): Remove unused variables.
  (nxml-scan-backward-within): Mark unused arg.
  (nxml-dynamic-markup-word): Remove unused binding.
2012-04-19 19:20:26 +02:00
Chong Yidong
2c070447bf * emacs-lisp/tabulated-list.el (tabulated-list-print): Fix typos. 2012-04-17 23:07:21 +08:00
Glenn Morris
d96a4f8829 Auto-commit of loaddefs files. 2012-04-17 06:21:15 -04:00
Glenn Morris
2311d8e5a6 Merge from pending; try to fix-up suboptimal ses ChangeLog. 2012-04-16 20:06:56 -07:00
Glenn Morris
099e72021d * eieio-opt.el (describe-class, describe-generic): Autoload trivia. 2012-04-16 15:25:59 -04:00
Glenn Morris
389c3aa7b2 Header comment trivial fix 2012-04-16 15:21:32 -04:00
Glenn Morris
bf350d6a59 * lisp/emacs-lisp/cl-extra.el (*random-state*): Remove unnecessary declaration. 2012-04-16 15:20:42 -04:00
Chong Yidong
c505aaeb00 Call imagemagick-register-types automatically.
* lisp/image.el (imagemagick--extension-regexp): New variable.
(imagemagick-register-types): Use it.
(imagemagick-types-inhibit): Add :set function.  Allow new value
of t to inhibit all types.

* lisp/loadup.el (fboundp): Preload regexp-opt, needed by
imagemagick-register-types.

* lisp/emacs-lisp/regexp-opt.el (regexp-opt-charset): Avoid cl macros,
so we can preload it.
2012-04-16 11:47:43 +08:00
Chong Yidong
e6fd457e01 Merge from emacs-24 branch 2012-04-15 15:28:01 +08:00
Stefan Monnier
9c2d6a4ab2 Avoid the use of ((lambda ...) ...) in lexical-binding code.
* emacs-lisp/easy-mmode.el (define-minor-mode): Use funcall.

Fixes: debbugs:11241
2012-04-14 08:48:27 -04:00
Lennart Borgman
050cc68b40 `narrow-to-defun' fixup
* emacs-lisp/lisp.el (narrow-to-defun): `beginning-of-defun' goes
to previous function when point is on the first character of a
function. Take care of that in `narrow-to-defun'.

Fixes: debbugs:6157
2012-04-11 04:12:20 +02:00
Stefan Monnier
2a718f6fbc * lisp/emacs-lisp/autoload.el (autoload-make-program): Remove, unused. 2012-04-10 16:15:08 -04:00
Chong Yidong
fb7ada5f94 Remove * characters from the front of variable docstrings. 2012-04-09 21:05:48 +08:00
Chong Yidong
b4d3bc10dc Remove defining user variables via * in docstring.
* lisp/apropos.el (apropos-variable):
* lisp/files-x.el (read-file-local-variable):
* lisp/simple.el (set-variable):
* lisp/woman.el (woman-mini-help):
* lisp/emacs-lisp/byte-opt.el (side-effect-free-fns): Callers changed.

* lisp/custom.el (custom-variable-p): Return nil for non-symbol
arguments instead of signaling an error.
(user-variable-p): Obsolete alias for custom-variable-p.

* lisp/erc/erc.el (erc-cmd-SET): Call custom-variable-p instead of
user-variable-p.

* src/callint.c (Finteractive, Fcall_interactively):
* src/minibuf.c (Fread_variable): Callers changed.

* src/eval.c (Fuser_variable_p, user_variable_p_eh)
(lisp_indirect_variable): Functions deleted.
(Fdefvar): Caller changed.

* doc/lispref/commands.texi (Interactive Codes):
* doc/lispref/help.texi (Accessing Documentation):
* doc/lispref/minibuf.texi (High-Level Completion): Callers changed.

* doc/lispref/customize.texi (Variable Definitions): Remove user-variable-p.
2012-04-09 20:36:01 +08:00
Glenn Morris
c0ea195db9 * emacs-lisp/authors.el (authors-aliases): Another addition. 2012-04-02 09:32:06 -07:00
Glenn Morris
0b0210946b Edebug doc fixes
* doc/lispref/edebug.texi (Instrumenting Macro Calls):
Mention defining macros at instrumentation time.
(Edebug Options): Mention edebug-unwrap-results.

* lisp/emacs-lisp/edebug.el (edebug-unwrap-results): Doc fix.
Comments.

* admin/FOR-RELEASE: Markup.
2012-03-31 12:58:05 -07:00
Stefan Monnier
b973155e95 * lisp/emacs-lisp/avl-tree.el (avl-tree--enter-balance): Fix paren typo.
(avl-tree--check, avl-tree--check-node): New funs.

Fixes: debbugs:11077
2012-03-27 16:43:09 -04:00
Stefan Monnier
f9210e18be * emacs-lisp/bytecomp.el (byte-compile-constants-vector): Allow more
than 197 variables.
2012-03-26 15:10:00 -04:00
Stefan Monnier
699c782b76 Merge from trunk 2012-03-25 16:37:21 -04:00
Chong Yidong
f0bcceb995 Improve column width calculation in tabulated-list.el.
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-print-entry): Use
string-width and truncate-string-width to handle arbitrary
characters.
2012-03-20 23:44:45 +08:00
Leo Liu
e2b5bdd73a * lisp/emacs-lisp/copyright.el (copyright-year-ranges): Fix typo. 2012-03-17 00:36:27 +08:00
Chong Yidong
3f2eafd1fb Fix ring extension code in ring.el, and tweak comint-input-ring handling.
* lisp/emacs-lisp/ring.el (ring-extend): New function.
(ring-insert+extend): Extend the ring correctly.

* lisp/comint.el (comint-read-input-ring)
(comint-add-to-input-history): Grow comint-input-ring lazily.

Fixes: debbugs:11019
2012-03-15 16:00:43 +08:00
Chong Yidong
292112ed3b Load a package's generated autoloads file before byte compiling it.
* lisp/emacs-lisp/package.el (package-unpack, package-unpack-single):
Load generated autoloads file before byte compiling.
(package--make-autoloads-and-compile): New helper fun.

Fixes: debbugs:10970
2012-03-12 11:03:16 +08:00
Chong Yidong
e24b21b447 * lisp/emacs-lisp/package.el: Bump package version to 1.0.
Fixes: debbugs:10838
2012-03-04 17:45:01 +08:00
Glenn Morris
44e97401cd Standardize possessive apostrophe usage in manuals, docs, and comments
Ref: http://lists.gnu.org/archive/html/emacs-devel/2012-02/msg00649.html
2012-02-28 00:17:21 -08:00
Daniel Hackney
8ac9e52930 Fix oversight in package-load-list handling.
* lisp/emacs-lisp/package.el (package-compute-transaction): Handle
holding a package version to t in package-load-list.
2012-02-27 09:57:50 +08:00
Alan Mackenzie
2cb228f753 Add new parameter :after-hook to define-minor-mode. Use this in the
definition of font-lock-mode.
2012-02-23 18:51:22 +00:00
Dmitry Gutov
8e911f6f93 * lisp/emacs-lisp/lisp.el (beginning-of-defun-raw): Don't call end-of-defun
when it might call us back infinitely.

Fixes: debbugs:10797
2012-02-23 03:13:48 -05:00
Glenn Morris
342f816360 Another authors.el alias 2012-02-22 20:58:53 -05:00