Glenn Morris [Sun, 7 Nov 2010 01:56:09 +0000 (18:56 -0700)]
Minor esh-util changes.
* lisp/eshell/esh-util.el (subst-char-in-string)
(directory-files-and-attributes): These compatibility definitions are
not needed on any version of Emacs since at least 21.4.
Glenn Morris [Sun, 7 Nov 2010 01:44:13 +0000 (18:44 -0700)]
Minor checkdoc simplifications.
* lisp/emacs-lisp/checkdoc.el (checkdoc-this-string-valid-engine):
Use end-of-line N.
(checkdoc-this-string-valid-engine, checkdoc-file-comments-engine):
Use line-end-position.
Glenn Morris [Sun, 7 Nov 2010 01:06:37 +0000 (18:06 -0700)]
Replace more speedbar uses of end-of-line etc with line-end-position.
* lisp/speedbar.el (speedbar-generic-item-info)
(speedbar-item-info-tag-helper, speedbar-change-expand-button-char)
(speedbar-add-indicator, speedbar-check-vc-this-line)
(speedbar-check-obj-this-line, speedbar-extract-one-symbol)
(speedbar-buffers-line-directory, speedbar-buffer-revert-buffer):
Replace more uses of end-of-line etc with line-end-position.
Gnus developers [Sun, 7 Nov 2010 00:22:06 +0000 (00:22 +0000)]
gnus-int.el, nnimap.el, nnir.el: More improvements to thread-referral.
message.el (message-send-mail): Don't insert courtesy messages if the message already has List-Post and List-ID messages.
gnus-ems.el (gnus-put-image): Use a blank text as the insertion string to avoid making the From headers syntactically invalid.
Glenn Morris [Sat, 6 Nov 2010 19:55:44 +0000 (12:55 -0700)]
Minor idlwave change.
* lisp/progmodes/idlwave.el (idlwave-routine-entry-compare-twins):
(idlwave-study-twins): Prefix dynamic local `class'.
(idlwave-routine-twin-compare): Update for above name change.
Glenn Morris [Sat, 6 Nov 2010 19:47:42 +0000 (12:47 -0700)]
Minor eieio-comp changes.
* lisp/emacs-lisp/eieio-comp.el (byte-compile-file-form-defmethod):
Use boundp tests to silence compiler. Update for changed name of
bytecomp-filename variable.
Glenn Morris [Sat, 6 Nov 2010 19:35:19 +0000 (12:35 -0700)]
Silence gnus-art compilation.
* lisp/gnus/gnus-art.el (gnus-treat-article): Give dynamic local variables
`condition', `type', `length' a prefix.
(gnus-treat-predicate): Update for above name changes.
Glenn Morris [Sat, 6 Nov 2010 19:28:44 +0000 (12:28 -0700)]
Silence mail-extr compilation.
* lisp/mail/mail-extr.el (mail-extract-address-components): Give dynamic
local variables `cbeg' and `cend' a prefix.
(mail-extr-voodoo): Update for above name change.
Glenn Morris [Sat, 6 Nov 2010 19:11:38 +0000 (12:11 -0700)]
Silence reftex compilation.
* lisp/textmodes/reftex-toc.el (reftex-toc-do-promote)
(reftex-toc-promote-prepare): Pass `delta' as an explicit argument.
(reftex-toc-promote-action): Doc fix.
* lisp/textmodes/reftex-sel.el (reftex-select-item): Give local variables
`prompt', `data' a prefix.
(reftex-select-post-command-hook, reftex-select-callback)
(reftex-select-mouse-accept, reftex-select-read-cite):
Update for above name changes.
* lisp/textmodes/reftex-ref.el (reftex-reference): Rename local variable
`refstyle' to reftex-refstyle.
(reftex-offer-label-menu): Update for above name change.
* lisp/textmodes/reftex-sel.el (reftex-select-toggle-varioref): Update for
`refstyle' name change.
Glenn Morris [Sat, 6 Nov 2010 18:51:11 +0000 (11:51 -0700)]
Minor emerge changes.
* lisp/vc/emerge.el (emerge-eval-in-buffer): Remove, and replace all uses
with with-current-buffer.
(diff, template): Give dynamic local variables a prefix.
(emerge-line-numbers): Rename local `diff' to emerge-line-diff.
(emerge-line-number-in-buf): Update for above name change.
(emerge-combine-versions-internal): Rename local `template' to
emerge-combine-template.
(emerge-combine-versions-edit): Update for above name change.
Eli Zaretskii [Sat, 6 Nov 2010 13:45:37 +0000 (15:45 +0200)]
Support R2L lines in tool-tip text.
xfns.c (Fx_show_tip): If any of the tool-tip text lines is R2L,
adjust width of tool-tip frame to the width of text, excluding the
stretch glyph at the beginning of R2L glyph rows.
w32fns.c (Fx_show_tip): Likewise.
Eli Zaretskii [Sat, 6 Nov 2010 08:28:31 +0000 (10:28 +0200)]
Unify mouse-highlight code for all GUI and TTY sessions.
term.c: Remove static mouse_face_* variables. All users
changed.
(term_show_mouse_face, term_clear_mouse_face)
(fast_find_position, term_mouse_highlight): Functions deleted.
(tty_draw_row_with_mouse_face): New function.
(term_mouse_movement): Call note_mouse_highlight instead of
term_mouse_highlight.
nsterm.m (ns_update_window_begin, ns_update_window_end)
(ns_update_end, x_destroy_window, ns_frame_up_to_date)
(ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
(ns_dumpglyphs_image, ns_dumpglyphs_stretch)
(ns_initialize_display_info, keyDown, mouseMoved, mouseExited):
Replace Display_Info with Mouse_HLInfo everywhere where
mouse_face_* members were accessed for mouse highlight purposes.
xterm.c (x_update_window_begin, x_update_window_end)
(x_update_end, XTframe_up_to_date, x_set_mouse_face_gc)
(handle_one_xevent, x_free_frame_resources, x_term_init): Replace
Display_Info with Mouse_HLInfo everywhere where mouse_face_*
members were accessed for mouse highlight purposes.
w32term.c (x_update_window_begin, x_update_window_end)
(x_update_end, w32_read_socket, x_free_frame_resources)
(w32_initialize_display_info): Replace Display_Info with
Mouse_HLInfo everywhere where mouse_face_* members were accessed
for mouse highlight purposes.
xdisp.c (show_mouse_face, note_mode_line_or_margin_highlight)
(note_mouse_highlight) [HAVE_WINDOW_SYSTEM]: Don't run GUI code
unless the frame is on a window-system.
(get_tool_bar_item, handle_tool_bar_click)
(note_tool_bar_highlight, draw_glyphs, erase_phys_cursor)
(show_mouse_face, clear_mouse_face, coords_in_mouse_face_p)
(note_mode_line_or_margin_highlight, note_mouse_highlight)
(x_clear_window_mouse_face, cancel_mouse_face, expose_frame):
Replace Display_Info with Mouse_HLInfo everywhere where
mouse_face_* members were accessed for mouse highlight purposes.
(coords_in_mouse_face_p): Move prototype out of the
HAVE_WINDOW_SYSTEM conditional.
(x_y_to_hpos_vpos, frame_to_window_pixel_xy): Move out of the
HAVE_WINDOW_SYSTEM block.
(try_window_id) [HAVE_GPM || MSDOS]: Call
x_clear_window_mouse_face.
(draw_row_with_mouse_face): Implementation for HAVE_WINDOW_SYSTEM
systems. Call tty_draw_row_with_mouse_face for TTY systems.
(show_mouse_face): Call draw_row_with_mouse_face, instead of
calling draw_glyphs directly.
(show_mouse_face, clear_mouse_face, coords_in_mouse_face_p)
(cursor_in_mouse_face_p, rows_from_pos_range)
(mouse_face_from_buffer_pos, mouse_face_from_string_pos)
(note_mode_line_or_margin_highlight, note_mouse_highlight)
(x_clear_window_mouse_face, cancel_mouse_face): Move out of the
HAVE_WINDOW_SYSTEM block. Ifdef away window-system specific
fragments.
(note_mouse_highlight): Call popup_activated for MSDOS as well.
Clear mouse highlight if pointer is over glyphs whose OBJECT is an
integer.
(mouse_face_from_buffer_pos): Add parentheses around && within ||.
(x_consider_frame_title, tool_bar_lines_needed): Move
prototypes to HAVE_WINDOW_SYSTEM-only part.
(get_window_cursor_type): Move inside a HAVE_WINDOW_SYSTEM-only
part. Remove "#ifdef HAVE_WINDOW_SYSTEM" from body of function.
(null_glyph_slice): Move declaration into HAVE_WINDOW_SYSTEM-only
part.
dispnew.c (mirror_make_current): Set Y coordinate of the
mode-line and header-line rows.
(init_display): Setup initial frame's output_data for text
terminal frames.
xmenu.c (popup_activated): Don't define on MSDOS, which now has
its own definition on msdos.c.
msdos.c (show_mouse_face, clear_mouse_face)
(fast_find_position, IT_note_mode_line_highlight)
(IT_note_mouse_highlight): Functions deleted.
(IT_frame_up_to_date, dos_rawgetc): Call note_mouse_highlight
instead of IT_note_mouse_highlight.
(draw_row_with_mouse_face, popup_activated): New functions.
(dos_set_window_size, draw_row_with_mouse_face, IT_update_begin)
(IT_update_end, IT_frame_up_to_date, internal_terminal_init)
(dos_rawgetc): Replace Display_Info with Mouse_HLInfo everywhere
where mouse_face_* members were accessed for mouse highlight
purposes.
msdos.h (initialize_msdos_display): Add prototype.
frame.h (MOUSE_HL_INFO): New macro.
lisp.h (Mouse_HLInfo): New data type.
xterm.h (struct x_display_info):
w32term.h (struct w32_display_info):
nsterm.h (struct ns_display_info):
termchar.h (struct tty_display_info): Use it instead of
mouse_face_* members.
dispextern.h (show_mouse_face, clear_mouse_face): Update type of
1st argument.
(frame_to_window_pixel_xy, note_mouse_highlight)
(x_clear_window_mouse_face, cancel_mouse_face, clear_mouse_face)
(show_mouse_face, cursor_in_mouse_face_p): Move prototypes out of
HAVE_WINDOW_SYSTEM conditional.
(draw_row_with_mouse_face): Declare prototype.
(tty_draw_row_with_mouse_face): Declare prototype.
Eli Zaretskii [Fri, 5 Nov 2010 21:47:58 +0000 (23:47 +0200)]
Cleanup -Wall warnings.
xdisp.c (get_window_cursor_type): Move inside a HAVE_WINDOW_SYSTEM-only
part. Remove "#ifdef HAVE_WINDOW_SYSTEM" from body of function.
(null_glyph_slice): Move declaration into HAVE_WINDOW_SYSTEM-only part.
Eli Zaretskii [Fri, 5 Nov 2010 18:07:42 +0000 (20:07 +0200)]
Fix unified mouse highlight after compiling on Unix.
xdisp.c (x_consider_frame_title, tool_bar_lines_needed): Move
prototypes to HAVE_WINDOW_SYSTEM-only part.
frame.h (MOUSE_HL_INFO): Fix definition to work both for
TTY-only and GUI builds.
Eli Zaretskii [Fri, 5 Nov 2010 10:03:17 +0000 (12:03 +0200)]
Cleanup fallout from redesigning mouse highlight.
dispextern.h (tty_draw_row_with_mouse_face): Add prototype.
xdisp.c (draw_row_with_mouse_face): Don't #ifdef away on MSDOS.
Call tty_draw_row_with_mouse_face on MSDOS as well.
msdos.c (tty_draw_row_with_mouse_face): Renamed from
draw_row_with_mouse_face. Make the argument list identical to the
GPM implementation.
msdos.h (Display_Info): Restore typedef.
Glenn Morris [Fri, 5 Nov 2010 08:16:55 +0000 (01:16 -0700)]
Quiet, woman. (Sorry...).
* lisp/woman.el (woman0-roff-buffer, woman1-roff-buffer)
(woman2-roff-buffer): Give local variable `request' a prefix.
(woman0-macro): Rename argument `request' in the same way.
(woman-request): New name for `request' dynamic variable.
(woman-unquote, woman-forward-arg): Update for above name change.
(woman1-roff-buffer): Give local variable `unquote' a prefix.
(woman1-unquote): New name for `unquote' dynamic variable.
(woman1-B-or-I, woman1-alt-fonts): Update for above name change.
(woman-translations): Rename from `translations'. No longer global.
(woman2-tr, woman-translate): Update for above name change.
(woman-translate): Check for bound variable.
(woman2-roff-buffer): Give local variable `translations' a prefix.
Glenn Morris [Fri, 5 Nov 2010 07:34:45 +0000 (00:34 -0700)]
Silence cl-macs.el compilation.
* lisp/emacs-lisp/cl-macs.el (loop): Give local variable args a prefix.
(cl-parse-loop-clause, cl-loop-handle-accum): Update for above change.
Glenn Morris [Fri, 5 Nov 2010 07:32:16 +0000 (00:32 -0700)]
Silence byte-opt.el compilation.
* lisp/emacs-lisp/byte-opt.el (byte-decompile-bytecode-1): Give local
variables bytes, ptr, op a prefix.
(disassemble-offset): Update for above change.
Gnus developers [Thu, 4 Nov 2010 22:18:09 +0000 (22:18 +0000)]
Merge changes made in Gnus trunk.
mm-decode.el (mm-save-part): Put the entire path in the `M-n' slot.
nnimap.el (nnimap-find-article-by-message-id): Don't EXAMINE a group if it's already selected.
gnus.texi (Customizing the IMAP Connection): Document `nnimap-expunge' and remove `nnimap-expunge-inbox' from example.
gnus.texi (Customizing the IMAP Connection): Remove nnir mention, since that works by default.
gnus-sum.el (gnus-summary-show-article): Take `t' as the arg to mean "raw".
gnus-html.el (gnus-html-browse-url): Implement mailto: URLs.
shr.el (shr-browse-url): Implement mailto: URLs.
nnir.el, gnus-sum.el: Improve thread-referral.
message.el (message-send-mail): Use the value of message-courtesy-message from the message buffer.
Michael Albinus [Thu, 4 Nov 2010 13:30:20 +0000 (14:30 +0100)]
* tramp.texi (Remote shell setup): New item "Interactive shell
prompt". Reported by Christian Millour <cm@abtela.com>.
(Remote shell setup, Remote processes): Use @code{} for
environment variables.
Chong Yidong [Wed, 3 Nov 2010 23:21:51 +0000 (19:21 -0400)]
* emacs-lisp/package.el (package-unpack): Remove no-op.
(package--builtins, package--dir): Doc fix.
(package-activate-1, package-activate, package-install)
(package-compute-transaction): Fix error message.
(package-delete): Use delete-directory. Omit system packages.
(package-initialize): Set package-alist to nil first.
(package-menu-mark-delete, package-menu-mark-install): Don't add
symbols that are inconsistent with the package state.
(package-menu-execute): Perform deletions and installations as
single batch operations.
Glenn Morris [Wed, 3 Nov 2010 08:03:42 +0000 (01:03 -0700)]
reftex-toc trivia.
* lisp/textmodes/reftex-toc.el (reftex-toc-do-promote): Remove unused
local `mpos'.
(reftex-toc-restore-region): Make `mpos' local to this function.
Chong Yidong [Wed, 3 Nov 2010 03:25:36 +0000 (23:25 -0400)]
Separate built-in packages from elpa packages, for efficiency.
* emacs-lisp/package.el: Don't put built-in packages in
package-alist, to avoid loading inefficiencies.
(package-built-in-p): Make VERSION optional, and treat it as a
minimum acceptable version.
(package-activate): Search separately for built-in packages. Emit
a warning if a dependency fails.
(define-package): Handle most common case, where there is no
obsolete package, first.
(package-compute-transaction): Print required version in error.
(package--initialized): New variable.
(list-packages): Use it.
(package-initialize): Optional arg NO-ACTIVATE. Don't put
built-in packages in packages-alist; keep it separate. Set
package--initialized.
(describe-package): Avoid activating packages as a side-effect.
Search separately for built-in packages.
(describe-package-1): Handle the case where an elpa package is
simultaneously built-in and available/installed.
(package-installed-p, package--generate-package-list): Search
separately for built-in packages.
(package-load-descriptor): Doc fix.
Katsumi Yamaoka [Tue, 2 Nov 2010 02:19:52 +0000 (02:19 +0000)]
gnus-cite.el (gnus-article-fill-cited-article): Make fill work properly for XEmacs as well.
gnus-cite.el (gnus-article-fill-cited-article, gnus-article-foldable-buffer, gnus-article-natural-long-line-p): Use window-width rather than frame-width.
Chong Yidong [Tue, 2 Nov 2010 01:50:26 +0000 (21:50 -0400)]
Two fixes for elpa packages overriding built-in ones.
* emacs-lisp/package.el (package-initialize): Ensure that
obsoleted built-in packages are not in package-activated-list
during activation.
(describe-package-1): Make the "installed" status override
"built-in".
gnus-sum.el (gnus-print-buffer): Rewrite to use with-temp-buffer.
gnus-sum.el (gnus-print-buffer): Just print the buffer as is.
gnus-cite.el (gnus-article-foldable-buffer): Protect against degenerate articles.
nnimap.el (nnimap-parse-line): Don't bug out oddly formed replies (bug #7311).
gnus-cite.el (gnus-article-fill-cited-article): Minimize the long-lines case by only filling the long lines.
gnus-start.el (gnus-ask-server-for-new-groups): Return the new groups.
gnus-group.el (gnus-group-find-new-groups): Display all the new groups.
gnus-start.el (gnus-find-new-newsgroups): Return the list of new groups.
nnimap.el (nnimap-request-group): Store the new updated info.
nnimap.el (nnimap-request-group): Select the group when we don't know whether it exists or not.
Eli Zaretskii [Mon, 1 Nov 2010 20:19:17 +0000 (22:19 +0200)]
REALLY finish coding portable mouse highlight.
msdos.c (dos_set_window_size, draw_row_with_mouse_face)
(IT_update_begin, IT_update_end, IT_frame_up_to_date)
(internal_terminal_init, dos_rawgetc): Replace Display_Info with
Mouse_HLInfo everywhere where mouse_face_* members were accessed
for mouse highlight purposes.
Eli Zaretskii [Mon, 1 Nov 2010 20:09:03 +0000 (22:09 +0200)]
Finish coding mouse highlight redesigned for portability.
Not compiled yet.
nsterm.m (ns_update_window_begin, ns_update_window_end)
(ns_update_end, x_destroy_window, ns_frame_up_to_date)
(ns_dumpglyphs_box_or_relief, ns_maybe_dumpglyphs_background)
(ns_dumpglyphs_image, ns_dumpglyphs_stretch)
(ns_initialize_display_info, keyDown, mouseMoved, mouseExited):
Replace Display_Info with Mouse_HLInfo everywhere where
mouse_face_* members were accessed for mouse highlight purposes.
xterm.c (x_update_window_begin, x_update_window_end)
(x_update_end, XTframe_up_to_date, x_set_mouse_face_gc)
(handle_one_xevent, x_free_frame_resources, x_term_init): Replace
Display_Info with Mouse_HLInfo everywhere where mouse_face_*
members were accessed for mouse highlight purposes.
w32term.c (x_update_window_begin, x_update_window_end)
(x_update_end, w32_read_socket, x_free_frame_resources)
(w32_initialize_display_info): Replace Display_Info with
Mouse_HLInfo everywhere where mouse_face_* members were accessed
for mouse highlight purposes.
xdisp.c (show_mouse_face, note_mode_line_or_margin_highlight)
(note_mouse_highlight) [HAVE_WINDOW_SYSTEM]: Don't run GUI code
unless the frame is on a window-system.
Glenn Morris [Mon, 1 Nov 2010 07:40:11 +0000 (00:40 -0700)]
Reposition some aliases in holidays.el.
* lisp/calendar/holidays.el (general-holidays, oriental-holidays)
(local-holidays, other-holidays, hebrew-holidays, christian-holidays)
(islamic-holidays, bahai-holidays, solar-holidays): Move aliases before
the definitions of their targets.
(The position doesn't actually matter so long as the aliases are autoloaded).