]> code.delx.au - gnu-emacs/commitdiff
Merged from miles@gnu.org--gnu-2005 (patch 681)
authorKaroly Lorentey <lorentey@elte.hu>
Thu, 29 Dec 2005 04:46:59 +0000 (04:46 +0000)
committerKaroly Lorentey <lorentey@elte.hu>
Thu, 29 Dec 2005 04:46:59 +0000 (04:46 +0000)
Patches applied:

 * miles@gnu.org--gnu-2005/emacs--cvs-trunk--0--patch-681
   Update from CVS

git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-469

51 files changed:
etc/ChangeLog
etc/NEWS
etc/e/eterm-color
etc/e/eterm-color.ti
lisp/ChangeLog
lisp/apropos.el
lisp/button.el
lisp/cus-start.el
lisp/descr-text.el
lisp/files.el
lisp/help-mode.el
lisp/mail/sendmail.el
lisp/mail/smtpmail.el
lisp/mh-e/ChangeLog
lisp/mh-e/mh-comp.el
lisp/mh-e/mh-utils.el
lisp/mouse.el
lisp/paren.el
lisp/progmodes/cc-defs.el
lisp/progmodes/gdb-ui.el
lisp/progmodes/glasses.el
lisp/progmodes/gud.el
lisp/progmodes/make-mode.el
lisp/replace.el
lisp/simple.el
lisp/startup.el
lisp/subr.el
lisp/textmodes/bibtex.el
lisp/textmodes/flyspell.el
lisp/url/ChangeLog
lisp/url/url-cache.el
lisp/url/url.el
lisp/vc.el
lispref/ChangeLog
lispref/minibuf.texi
man/ChangeLog
man/frames.texi
man/org.texi
src/ChangeLog
src/Makefile.in
src/charset.c
src/commands.h
src/eval.c
src/fns.c
src/gtkutil.c
src/keyboard.c
src/keyboard.h
src/lread.c
src/minibuf.c
src/undo.c
src/xfns.c

index 7c3283d24ffacfddd91db63d8d8fe0c2f98604a0..4fcfeaf3842bb79df9d888de70f1a9c3d463db36 100644 (file)
@@ -1,3 +1,8 @@
+2005-12-28  Dan Nicolaescu  <dann@ics.uci.edu>
+
+       * e/eterm-color.ti: Temporarily disable the ri entry.
+       * e/eterm-color: Regenerate.
+       
 2005-12-21  L\e$,1 q\e(Brentey K\e,Aa\e(Broly  <lorentey@elte.hu>
 
        * TODO: Add note on the multi-tty branch.
index 45ef93a9ae43d08e5233dea10de0ca72e71677b9..5d49a5d91b626a4f82d9a4c261b8af3184cd1280 100644 (file)
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -4214,13 +4214,13 @@ entered.  `dynamic-completion-table' then computes the completion.
 *** The new macro `lazy-completion-table' initializes a variable
 as a lazy completion table.
 
-  (lazy-completion-table VAR FUN &rest ARGS)
+  (lazy-completion-table VAR FUN)
 
 If the completion table VAR is used for the first time (e.g., by passing VAR
-as an argument to `try-completion'), the function FUN is called with arguments
-ARGS. FUN must return the completion table that will be stored in VAR. If
-completion is requested in the minibuffer, FUN will be called in the buffer
-from which the minibuffer was entered. The return value of
+as an argument to `try-completion'), the function FUN is called with no
+arguments.  FUN must return the completion table that will be stored in VAR.
+If completion is requested in the minibuffer, FUN will be called in the buffer
+from which the minibuffer was entered.  The return value of
 `lazy-completion-table' must be used to initialize the value of VAR.
 
 +++
index c9b87e5854f7bbf2ee01af7236df2da223f2095c..de84f4c909c7dc14d92e78582a5ea5bdf952f099 100644 (file)
Binary files a/etc/e/eterm-color and b/etc/e/eterm-color differ
index ae38c10014c1cd985ee842fe1ee74accbc8c7f9b..bb066ca9bd58abf1b351eb5eec250a9faa912019 100644 (file)
@@ -52,7 +52,7 @@ eterm-color|Emacs term.el terminal emulator term-protocol-version 0.96,
        op=\E[39;49m,
        rc=\E8,
        rev=\E[7m,
-       ri=\EM,
+#      ri=\EM, #temporarily disable, it causes problems for mutt
        rmir=\E[4l,
        rmso=\E[27m,
        rmul=\E[24m,
index c1cb1296b216ccce43c30f59c435854d00b06bc4..288e4d7ed44b1abef58833def98311b26703fd3d 100644 (file)
@@ -1,5 +1,153 @@
+2005-12-29  Nick Roberts  <nickrob@snap.net.nz>
+
+       * progmodes/gdb-ui.el (gdb-tooltip-print, gdb-tooltip-print-1):
+       Display name of expression instead of convenience variable.
+       (gdb-post-prompt): Only call gdb-get-changed-registers if needed.
+
+       * progmodes/gud.el (gud-tooltip-dereference): Rename from
+       toggle-gud-tooltip-dereference.
+       (gud-tooltip-print-command): Move concatenation of "*" to expr to...
+       (gud-tooltip-tips): ...here when dereferencing..
+
+2005-12-28  Bill Wohler  <wohler@newt.com>
+
+       * simple.el (mh-e-user-agent): Move to mh-e/mh-comp.el and
+       autoload.
+
+2005-12-28  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * vc.el (vc-annotate-display): Replace optional arg `color-map' with
+       compulsory arg `ratio'.  Inline body of vc-annotate-time-span.
+       (vc-annotate-display-autoscale): Adjust call.
+       (vc-annotate-display-default): Adjust call.  Make arg compulsory.
+       Fix interactive spec.
+       (vc-annotate-time-span): Remove.
+       (vc-annotate-oldest-in-map): Rename from vc-annotate-car-last-cons.
+       (vc-annotate-mode-menu, vc-annotate-display-autoscale)
+       (vc-annotate-display-select): Use new name.
+
+       * vc.el (vc-annotate-mode-map): Remove obsolete binding.
+       (vc-annotate-mode-menu): Remove left-over redundant declaration.
+       Correct the construction of span entries.  Simplify.
+       (vc-annotate-display-select): Fix the nil case.
+       (vc-annotate): Remove obsolete (and now broken) code.
+       (vc-annotate-extract-revision-at-line): Remove obsolete code.
+       (vc-annotate-time-span): Remove unused arg `quantize'.  Simplify.
+
+2005-12-28  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * subr.el (lazy-completion-table): Correct typo in docstring.
+
+       * startup.el (command-line): Use `custom-reevaluate-setting' for
+       `send-mail-function'.
+
+       * mail/sendmail.el (send-mail-function): Autoload the standard-value.
+
+2005-12-05  Ralf Angeli  <angeli@iwi.uni-sb.de>
+
+       * mail/smtpmail.el (smtpmail-try-auth-methods):
+       Send credentials together with "AUTH PLAIN" command.
+
+2005-12-27  Richard M. Stallman  <rms@gnu.org>
+
+       * mouse.el (mouse-drag-region-1): When remapping mouse-1 to
+       mouse-2, go back to previously selected window, so it's selected
+       when mouse-2 command runs.
+
+2005-12-27  Juri Linkov  <juri@jurta.org>
+
+       * descr-text.el (describe-text-sexp): Use square brackets for
+       button [Show] to distinguish it from the property value `show'.
+       (describe-property-list): Use `insert-text-button' with
+       `help-face' type instead of putting face in quotes, because button
+       is not created automatically for a list of faces.
+       (describe-text-properties-1): Put button-type value in quotes to
+       distinguish from plain text "button".
+       (describe-char): Display code point values in hex.  Don't use
+       `symbol-name' for `current-input-method' because it is a string.
+       Use `insert-text-button' with `help-face' type instead of putting
+       hardcoded face in quotes, because button is not created automatically.
+
+2005-12-27  Richard M. Stallman  <rms@gnu.org>
+
+       * progmodes/glasses.el (glasses-face): More specific custom type.
+
+       * files.el (set-visited-file-name): Doc fix.
+
+       * textmodes/flyspell.el (flyspell-external-point-words):
+       Use local var buffer-scan-pos to advance scan for next misspelling.
+       Advance it only after we find the misspelling.
+
+2005-12-27  Agustin Martin  <agustin.martin@hispalinux.es>
+
+       * textmodes/flyspell.el (flyspell-external-point-words):
+       New criteria for finding the misspelling in the buffer.
+
+2005-12-27  Nick Roberts  <nickrob@snap.net.nz>
+
+       * help-mode.el (help-insert-string): Set help-xref-stack-item
+       rather than call help-setup-xref.
+
+       * descr-text.el (describe-char): Revert previous changes for
+       optional buffer argument.
+
+2005-12-27  Juri Linkov  <juri@jurta.org>
+
+       * help-mode.el (help-insert-string): New function.  Save buffer
+       contents in cases where it is impossible to recompute the old contents.
+
+       * descr-text.el (describe-char): Set help-xref-stack-item
+       explicitly after buffer has been generated.
+
+2005-12-27  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * cus-start.el (all): Add x-gtk-show-hidden-files.
+
+2005-12-26  Richard M. Stallman  <rms@gnu.org>
+
+       * replace.el (perform-replace): Calculate match-again
+       before skipping read-only matches.
+
+       * paren.el (paren-showing-faces): New group.
+       (show-paren-match, show-paren-mismatch): Move to that group.
+
+       * button.el (button): Put into group `basic-faces'.
+
+       * progmodes/make-mode.el: Remove faces from group `faces'.
+
+       * apropos.el (apropos, apropos-value): Doc fix.
+       (apropos-documentation): Doc fix.
+
+2005-12-26  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * subr.el (lazy-completion-table): Remove argument `args'.
+
+       * textmodes/bibtex.el (bibtex-strings, bibtex-reference-keys):
+       Don't use the `args' argument of lazy-completion-table.
+
+2005-12-26  Nick Roberts  <nickrob@snap.net.nz>
+
+       * descr-text.el (describe-char): Add optional argument for buffer.
+       Set buffer appropriately.  Call help-setup-xref.
+       Suggested by Stefan Monnier.
+
+2005-12-26  Juri Linkov  <juri@jurta.org>
+
+       * descr-text.el: Require `help-fns' at runtime.  Don't require
+       `button' for byte compilation.
+       (describe-text-widget): Add `help-echo' for first button.
+       Use `help-info' for second.
+       (describe-property-list): Use `help-argument-name' instead of `italic'.
+       (describe-text-category): Add prompt to interactive spec.
+       Call `help-setup-xref'.
+       (describe-char): Use `help-character-set'.  Add `help-echo' for
+       code point.  Use `help-input-method'.  Remove superfluous insert.
+
 2005-12-25  Richard M. Stallman  <rms@gnu.org>
 
+       * progmodes/cc-defs.el (c-emacs-features): Do parse-partial-sexp
+       at point, in case of narrowing.
+
        * progmodes/delphi.el (delphi-other-face): Allow nil in type.
 
        * locate.el (locate-header-face): Allow nil in type.
 
        * custom.el (custom-push-theme): Fix docstring.
 
-       * cus-edit.el (custom-variable-set, custom-variable-save,
-       custom-variable-save): Custom-quote widget values.
+       * cus-edit.el (custom-variable-set, custom-variable-save)
+       (custom-variable-save): Custom-quote widget values.
        (customize-save-variable): Fix custom-push-theme call.
 
 2005-12-24  Eli Zaretskii  <eliz@gnu.org>
 
        * w32-fns.el (w32-batch-update-autoloads): New function.
 
-       * makefile.w32-in (autoloads, $(lisp)/mh-e/mh-loaddefs.el): Use
-       w32-batch-update-autoloads, and don't setq generated-autoload-file
+       * makefile.w32-in (autoloads, $(lisp)/mh-e/mh-loaddefs.el):
+       Use w32-batch-update-autoloads, and don't setq generated-autoload-file
        from the command line.
 
 2005-12-23  Chong Yidong  <cyd@stupidchicken.com>
        customization" button one line up.
        (custom-themed): New face.
        (custom-magic-alist): New value, THEMED, for theme settings.
-       (custom-variable-state-set, custom-face-state-set): Check
-       theme-value instead of saved-value.
+       (custom-variable-state-set, custom-face-state-set):
+       Check theme-value instead of saved-value.
        (custom-variable-reset-standard, custom-face-reset-standard):
        Remove theme setting entirely.  Recalculate new values.
        (custom-variable-set, custom-variable-set)
        (custom-variable-reset-saved, custom-variable-reset-backup)
        (custom-face-set, custom-face-reset-saved): Update `user' theme.
        (custom-variable-save): Fix typos.
-       
+
 2005-12-23  Juri Linkov  <juri@jurta.org>
 
        * emacs-lisp/edebug.el (edebug-all-defs, edebug-all-forms):
        5D.1 and 5D.2 removed since they aren't trigged anymore (case 5B.1
        covers all cases now).
 
-       * progmodes/cc-defs.el (c-point): Added 'bosws and 'eosws.
+       * progmodes/cc-defs.el (c-point): Added `bosws' and `eosws'.
 
 2005-12-08  Alan Mackenzie  <bug-cc-mode@gnu.org>
 
        * progmodes/cc-engine.el, cc-fonts.el (c-forward-keyword-clause):
        Specify which submatch to use.
 
-       * progmodes/cc-langs.el (c-symbol-start): Include '@' in ObjC.
+       * progmodes/cc-langs.el (c-symbol-start): Include `@' in ObjC.
 
        (c-decl-start-re): No no longer any need for special treatment of
        ObjC due to the above.
 
        (c-decl-start-re): New language variable to make
        `c-font-lock-declarations' stop for the special protection labels
-       in Objective-C that start with '@'.
+       in Objective-C that start with `@'.
 
        (c-label-key): Removed since it's no longer used.
 
        has now taken the place of this function.
 
        * progmodes/cc-vars.el (c-emacs-features): Removed compatibility
-       with older emacsen: We now require 'pps-extended-state.
+       with older emacsen: We now require `pps-extended-state'.
 
 2005-12-08  Alan Mackenzie  <bug-cc-mode@gnu.org>
 
        (cua-rectangle-modifier-key): ... this.  New defcustom.  Can now
        select either meta, hyper, or super modifier for rectangle commands.
        (cua--rectangle-modifier-key): New defvar.
-       (cua--M/H-key): Use it.  Remove special case for 'space.
+       (cua--M/H-key): Use it.  Remove special case for `space'.
        (cua--init-keymaps): Initialize it from cua-rectangle-modifier-key
        on X, to meta otherwise.  Always bind C-return to toggle
-       rectangle.  Pass ?\s instead of 'space to cua--M/H-key.
+       rectangle.  Pass ?\s instead of `space' to cua--M/H-key.
 
        * emulation/cua-rect.el (cua-help-for-rectangle): Use
        cua--rectangle-modifier-key.  Handle super modifier too.
        (cua--init-rectangles): Always bind C-return to toggle rectangle.
-       Pass ?\s instead of 'space to cua--M/H-key and cua--rect-M/H-key.
+       Pass ?\s instead of `space' to cua--M/H-key and cua--rect-M/H-key.
 
        * ido.el: Move Acknowledgements and History after Commentary.
        Minor changes to Commentary.
 
        * emulation/cua-base.el (cua--select-keymaps): Enable repeat
-       keymap if cua--prefix-override-timer equals 'shift.
+       keymap if cua--prefix-override-timer is `shift'.
        (cua--shift-control-prefix): New function; emulate "type prefix
        key twice" functionality to handle shifted prefix key override.
        (cua--shift-control-c-prefix, cua--shift-control-x-prefix): New
 
 2005-12-02  Ken Manheimer  <ken.manheimer@gmail.com>
 
-       * allout.el:(eval-when-compile): Remove unnecessary load of 'cl.
+       * allout.el:(eval-when-compile): Remove unnecessary load of cl.
        Add fset of allout-real-isearch-abort during compile to fix
        byte-compilation warnings.
        (allout-mode-p): Move definition of this macro above all uses, or
        * jka-cmpr-hook.el (jka-compr-install): Use push and dolist.
        Add jka-compr-load-suffixes to load-suffixes.
 
-       * jka-compr.el: Require 'jka-cmpr-hook.
+       * jka-compr.el: Require jka-cmpr-hook.
        (jka-compr-info-compress-message, jka-compr-info-compress-program)
        (jka-compr-info-compress-args, jka-compr-info-uncompress-message)
        (jka-compr-info-uncompress-program, jka-compr-info-uncompress-args)
        * pgg-pgp.el (pgg-pgp-encrypt-region, pgg-pgp-decrypt-region)
        (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric)
        (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt)
-       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional 'passphrase'
+       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE
        argument to all these routines, so the passphrase can be managed
        externally and passed in to the system.
        (pgg-pgp-decrypt-region, pgg-pgp-sign-region): Use new name for
        * pgg-pgp5.el (pgg-pgp5-encrypt-region, pgg-pgp5-decrypt-region)
        (pgg-pgp5-encrypt-symmetric-region, pgg-pgp5-encrypt-symmetric)
        (pgg-pgp5-encrypt, pgg-pgp5-decrypt-region, pgg-pgp5-decrypt)
-       (pgg-pgp5-sign-region, pgg-pgp5-sign): Add optional 'passphrase'
+       (pgg-pgp5-sign-region, pgg-pgp5-sign): Add optional PASSPHRASE
        argument to all these routines, so the passphrase can be managed
        externally and passed in to the system.
        (pgg-pgp5-sign-region): Use new name of pgg-add-passphrase-to-cache
        Change defvar to defcustom.
        (rcirc-update-prompt): Add optional ALL arg, which will update
        prompts in all rcirc buffers.  Regexp quote replacement text.
-       (rcirc-fill-column): Accept 'frame-width as a value.
+       (rcirc-fill-column): Accept frame-width as a value.
        (rcirc-set-changed): Add function.
        (rcirc-next-active-buffer): Write more meaningful messages.
        (rcirc-faces): Add customization group.
        (rcirc-debug-buffer): Rename from `rcirc-log-buffer'.
        (rcirc-debug-flag): Rename from `rcirc-log-p'.
        (rcirc-debug): Rename from `rcirc-log'.
-       (rcirc-format-response-string): Do not print '-' chars for a
+       (rcirc-format-response-string): Do not print `-' chars for a
        NOTICE with no sender.  Simplify output of server responses.
 
 2005-11-04  Henrik Enberg  <henrik.enberg@telia.com>
        * pgg-pgp.el (pgg-pgp-encrypt-region, pgg-pgp-decrypt-region)
        (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric)
        (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt)
-       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional 'passphrase'
+       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE
        argument to all these routines, so the passphrase can be managed
        externally and passed in to the system.
        (pgg-pgp-decrypt-region, pgg-pgp-sign-region): Use new name for
        * pgg-pgp5.el (pgg-pgp5-encrypt-region, pgg-pgp5-decrypt-region)
        (pgg-pgp5-encrypt-symmetric-region, pgg-pgp5-encrypt-symmetric)
        (pgg-pgp5-encrypt, pgg-pgp5-decrypt-region, pgg-pgp5-decrypt)
-       (pgg-pgp5-sign-region, pgg-pgp5-sign): Add optional 'passphrase'
+       (pgg-pgp5-sign-region, pgg-pgp5-sign): Add optional PASSPHRASE
        argument to all these routines, so the passphrase can be managed
        externally and passed in to the system.
        (pgg-pgp5-sign-region): Use new name of pgg-add-passphrase-to-cache
 
        * textmodes/org.el (org-read-date, org-goto-calendar)
        (org-recenter-calendar, org-agenda-goto-calendar):
-       Temporarily clear 'calendar-move-hook'.
+       Temporarily clear `calendar-move-hook'.
 
 2005-11-04  Michael Kifer  <kifer@cs.stonybrook.edu>
 
        key.  Also, added a note pointing out fact that the prompt only
        indicates the first matching key.
 
-       * pgg.el (pgg-decrypt): Passing along 'passphrase' in call to
+       * pgg.el (pgg-decrypt): Passing along PASSPHRASE in call to
        pgg-decrypt-region.
        (pgg-pending-timers): A new hash for tracking the passphrase cache
        timers, so that new ones supercede old ones.
        and then passed in to the system.
 
        * pgg.el (pgg-read-passphrase, pgg-add-passphrase-cache)
-       (pgg-remove-passphrase-cache): Add optional 'notruncate' argument,
+       (pgg-remove-passphrase-cache): Add optional NOTRUNCATE argument,
        so the passphrase cache can be used reliably with identifiers
        besides a pgp packet's key id.
 
        * pgg-gpg.el (pgg-pgp-encrypt-region)
        (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric)
        (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt)
-       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional 'passphrase'
+       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE
        argument to all these routines, so the passphrase can be managed
        externally and passed in to the system.
 
        key.  Also, added a note pointing out fact that the prompt only
        indicates the first matching key.
 
-       * pgg.el (pgg-decrypt): Passing along 'passphrase' in call to
+       * pgg.el (pgg-decrypt): Passing along PASSPHRASE in call to
        pgg-decrypt-region.
        (pgg-pending-timers): A new hash for tracking the passphrase cache
        timers, so that new ones supercede old ones.
        and then passed in to the system.
 
        * pgg.el (pgg-read-passphrase, pgg-add-passphrase-cache)
-       (pgg-remove-passphrase-cache): Add optional 'notruncate' argument,
+       (pgg-remove-passphrase-cache): Add optional NOTRUNCATE argument,
        so the passphrase cache can be used reliably with identifiers
        besides a pgp packet's key id.
 
        * pgg-gpg.el (pgg-pgp-encrypt-region)
        (pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric)
        (pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt)
-       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional 'passphrase'
+       (pgg-pgp-sign-region, pgg-pgp-sign): Add optional PASSPHRASE
        argument to all these routines, so the passphrase can be managed
        externally and passed in to the system.
 
        * allout.el: Add autoloads of crypt++ and mailcrypt routines, all
        for encryption functionality.
        Move allout customization subgroup from `editing' to `outlines' group.
-       Fix commentary 'keywords' to legitimate ones.
+       Fix commentary keywords to legitimate ones.
        Update author info (using my current email address, obscurified).
        (allout-encrypt-string, allout-encryption-produce-work-buffer)
        (allout-encrypted-topic-p, allout-encrypted-text-type)
        any universal argument provokes now prompt for bullet, defaulting
        to the bullet of the previous topic.
        (allout-plain-bullets-string, allout-distinctive-bullets-string):
-       Plain bullet alternates '.' period and ',' comma only.  All other
+       Plain bullet alternates `.' period and `,' comma only.  All other
        bullets are relegated to special status (but customizable).
-       (allout-end-of-entry): Rename from 'allout-end-of-current-entry
+       (allout-end-of-entry): Rename from allout-end-of-current-entry
        since it actually operates w.r.t. most immediately containing
        entry, visible or not.
        (allout-hide-current-entry, allout-show-current-entry): Use the
        (allout-isearch-rectification): Refine condition for isearching.
        (allout-isearch-abort, allout-enwrap-isearch)
        (allout-flag-region, my-region-active-p): Relocate some macros.
-       (allout-title): Fallback title is '(buffer-name)', not
-       non-existing '(current-buffer-name)'.
+       (allout-title): Fallback title is (buffer-name), not
+       non-existing (current-buffer-name).
        (subst-char-in-string): Define if absent (for some XEmacs versions).
 
 2005-10-20  Jari Aalto  <jari.aalto@cante.net>
        (math-super-types): Add sqmatrix type.
 
        * calc/calc-mode.el (calc-matrix-mode, math-get-modes-vec): Change the
-       mode name `square' to 'sqmatrix'.
+       mode name `square' to `sqmatrix'.
 
        * calc/calc.el (calc-matrix-mode, calc-set-mode-line): Change the
-       mode name `square' to 'sqmatrix'.
+       mode name `square' to `sqmatrix'.
 
 2005-10-10  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        (vhdl-trailer-re): Add "record" keyword (better indentation).
        (vhdl-fixup-whitespace-region): "[^ \t\"-]+" instead of
        "[^ \t-\"]+".
-       (vhdl-font-lock-keywords-2): Not highlight formal parameter after '|'.
+       (vhdl-font-lock-keywords-2): Not highlight formal parameter after `|'.
        (vhdl-testbench-entity-file-name)
        (vhdl-testbench-architecture-file-name): Allow separate
        customization of testbench file names.
        * subr.el (insert-for-yank-1): Doc fix.
 
        * ido.el (ido-enter-matching-directory): Rename from
-       ido-enter-single-matching-directory.  Change 'slash choice to
-       'only.  Add 'first choice.
+       ido-enter-single-matching-directory.  Change `slash' choice to
+       `only'.  Add `first' choice.
        (ido-exhibit): Adapt to above changes.
 
 2005-08-16  Luc Teirlinck  <teirllm@auburn.edu>
        included diary buffer if it was not already being visited.
        Reported by Stephen Berman <Stephen.Berman@gmx.net>.
 
-       * calendar/icalendar.el (top-level): Do not require 'appt.
+       * calendar/icalendar.el (top-level): Do not require appt.
 
        * mail/supercite.el (sc-select-attribution): Only use a list
        element from sc-attrib-selection-list if it returns a string.
 
        * calendar/cal-x.el (calendar-one-frame-setup)
        (calendar-only-one-frame-setup, calendar-two-frame-setup): Use t
-       rather than 'symbol for set-window-dedicated-p.
+       rather than `symbol' for set-window-dedicated-p.
 
        * calendar/appt.el (appt-buffer-name): Make it a constant.
        (appt-add): Doc fix.
        (reftex-index-region-phrases): Add slave parameter to call of
        `reftex-index-this-phrase'.
        (reftex-display-index): New argument redo.
-       (reftex-index-rescan): Add 'redo to arguments of
+       (reftex-index-rescan): Add `redo' to arguments of
        `reftex-display-index'.
        (reftex-index-Rescan, reftex-index-revert)
-       (reftex-index-switch-index-tag): Add 'redo to arguments of
+       (reftex-index-switch-index-tag): Add `redo' to arguments of
        `reftex-display-index'.
        (reftex-index-make-phrase-regexp): Fix bug with case-sensitive
        indexing.  Fix bug with matching is there is a quote before or
 
        * xt-mouse.el (xterm-mouse-translate, xterm-mouse-event):
        Enable mouse clicks on mode-line, header-line and margin.
-       (event-type): Give mouse event symbols an 'event-kind property
-       with value 'mouse-click.
+       (event-type): Give mouse event symbols an `event-kind' property
+       with value `mouse-click'.
 
 2005-01-12  Juri Linkov  <juri@jurta.org>
 
index 4e5109c1efb17c4f405c356c7427a28e4a447368..c8201de492a1d439818dee15794a39983112ad3a 100644 (file)
@@ -502,27 +502,31 @@ while a list of strings is used as a word list."
 
 ;;;###autoload
 (defun apropos (pattern &optional do-all)
-  "Show all bound symbols whose names match PATTERN.
+  "Show all meaningful Lisp symbols whose names match PATTERN.
+Symbols are shown if they are defined as functions, variables, or
+faces, or if they have nonempty property lists.
+
 PATTERN can be a word, a list of words (separated by spaces),
 or a regexp (using some regexp special characters).  If it is a word,
 search for matches for that word as a substring.  If it is a list of words,
 search for matches for any two (or more) of those words.
 
-With \\[universal-argument] prefix, or if `apropos-do-all' is non-nil, also
-show unbound symbols and key bindings, which is a little more
-time-consuming.  Returns list of symbols and documentation found."
+With \\[universal-argument] prefix, or if `apropos-do-all' is non-nil,
+consider all symbols (if they match PATTERN).
+
+Returns list of symbols and documentation found."
   (interactive (list (apropos-read-pattern "symbol")
                     current-prefix-arg))
   (apropos-parse-pattern pattern)
   (apropos-symbols-internal
    (apropos-internal apropos-regexp
-                         (and (not do-all)
-                              (not apropos-do-all)
-                              (lambda (symbol)
-                                (or (fboundp symbol)
-                                    (boundp symbol)
-                                    (facep symbol)
-                                    (symbol-plist symbol)))))
+                    (and (not do-all)
+                         (not apropos-do-all)
+                         (lambda (symbol)
+                           (or (fboundp symbol)
+                               (boundp symbol)
+                               (facep symbol)
+                               (symbol-plist symbol)))))
    (or do-all apropos-do-all)))
 
 (defun apropos-symbols-internal (symbols keys &optional text)
@@ -571,7 +575,7 @@ time-consuming.  Returns list of symbols and documentation found."
 
 ;;;###autoload
 (defun apropos-value (pattern &optional do-all)
-  "Show all symbols whose value's printed image matches PATTERN.
+  "Show all symbols whose value's printed representation matches PATTERN.
 PATTERN can be a word, a list of words (separated by spaces),
 or a regexp (using some regexp special characters).  If it is a word,
 search for matches for that word as a substring.  If it is a list of words,
@@ -616,7 +620,7 @@ Returns list of symbols and values found."
 
 ;;;###autoload
 (defun apropos-documentation (pattern &optional do-all)
-  "Show symbols whose documentation contain matches for PATTERN.
+  "Show symbols whose documentation contains matches for PATTERN.
 PATTERN can be a word, a list of words (separated by spaces),
 or a regexp (using some regexp special characters).  If it is a word,
 search for matches for that word as a substring.  If it is a list of words,
index 375182dd36bad36181ba555ef6678abe68ac01eb..d50452fc97a9916b04a3bfdf1e7485a583931722 100644 (file)
@@ -55,7 +55,7 @@
                   (:foreground "lightblue"))
                  (t :underline t))
   "Default face used for buttons."
-  :group 'faces)
+  :group 'basic-faces)
 
 ;;;###autoload
 (defvar button-map
index 991ff24058adf5f2b8ce33cd0379b95795205309..a851d32d296ef0fadee1cc5ec3f9d82831e585b1 100644 (file)
@@ -356,6 +356,7 @@ since it could result in memory overflow and make Emacs crash."
             (x-bitmap-file-path installation
                                 (repeat (directory :format "%v")))
             (x-use-old-gtk-file-dialog menu boolean "22.1")
+            (x-gtk-show-hidden-files menu boolean "22.1")
             ;; xterm.c
              (mouse-autoselect-window display boolean "21.3")
             (x-use-underline-position-properties display boolean "21.3")
index 76d6ae6be095e99005d4c2f459080acde0c6c5b5..550268ac1d9b4343a33de7fd7d269ccb6fac12d4 100644 (file)
@@ -30,7 +30,8 @@
 
 ;;; Code:
 
-(eval-when-compile (require 'button) (require 'quail))
+(eval-when-compile (require 'quail))
+(require 'help-fns)
 
 ;;; Describe-Text Utilities.
 
   (insert-text-button
    (symbol-name (if (symbolp widget) widget (car widget)))
    'action `(lambda (&rest ignore)
-             (widget-browse ',widget)))
+             (widget-browse ',widget))
+   'help-echo "mouse-2, RET: browse this widget")
   (insert " ")
-  (insert-text-button "(widget)Top"
-                     'action (lambda (&rest ignore) (info "(widget)Top"))
-                     'help-echo "mouse-2, RET: read this Info node"))
+  (insert-text-button
+   "(widget)Top" 'type 'help-info 'help-args '("(widget)Top")))
 
 (defun describe-text-sexp (sexp)
   "Insert a short description of SEXP in the current buffer."
@@ -59,7 +60,7 @@
              (t t))
        (insert pp)
       (insert-text-button
-       "show" 'action `(lambda (&rest ignore)
+       "[Show]" 'action `(lambda (&rest ignore)
                        (with-output-to-temp-buffer
                            "*Pp Eval Output*"
                          (princ ',pp)))
@@ -81,15 +82,17 @@ into help buttons that call `describe-text-category' or
     (let ((key (nth 0 elt))
          (value (nth 1 elt)))
       (insert (propertize (format "  %-20s " key)
-                         'face 'italic))
+                         'face 'help-argument-name))
       (cond ((eq key 'category)
-            (insert-text-button (symbol-name value)
-                                'action `(lambda (&rest ignore)
-                                           (describe-text-category ',value))
-                                'help-echo
-                                "mouse-2, RET: describe this category"))
+            (insert-text-button
+             (symbol-name value)
+             'action `(lambda (&rest ignore)
+                        (describe-text-category ',value))
+             'help-echo "mouse-2, RET: describe this category"))
             ((memq key '(face font-lock-face mouse-face))
-            (insert (concat "`" (format "%S" value) "'")))
+            (insert-text-button
+             (format "%S" value)
+             'type 'help-face 'help-args (list value)))
             ((widgetp value)
             (describe-text-widget value))
            (t
@@ -100,7 +103,8 @@ into help buttons that call `describe-text-category' or
 
 (defun describe-text-category (category)
   "Describe a text property category."
-  (interactive "S")
+  (interactive "SCategory: ")
+  (help-setup-xref (list #'describe-text-category category) (interactive-p))
   (save-excursion
     (with-output-to-temp-buffer "*Help*"
       (set-buffer standard-output)
@@ -159,8 +163,8 @@ otherwise."
       ;; Buttons
       (when (and button (not (widgetp wid-button)))
        (newline)
-       (insert "Here is a " (format "%S" button-type)
-               " button labeled `" button-label "'.\n\n"))
+       (insert "Here is a `" (format "%S" button-type)
+               "' button labeled `" button-label "'.\n\n"))
       ;; Overlays
       (when overlays
        (newline)
@@ -428,13 +432,13 @@ as well as widgets, buttons, overlays, and text properties."
                                 (single-key-description char)
                               (string-to-multibyte
                                (char-to-string char)))))
-         (text-props-desc
-          (let ((tmp-buf (generate-new-buffer " *text-props*")))
-            (unwind-protect
-                (progn
-                  (describe-text-properties pos tmp-buf)
-                  (with-current-buffer tmp-buf (buffer-string)))
-              (kill-buffer tmp-buf))))
+        (text-props-desc
+         (let ((tmp-buf (generate-new-buffer " *text-props*")))
+           (unwind-protect
+               (progn
+                 (describe-text-properties pos tmp-buf)
+                 (with-current-buffer tmp-buf (buffer-string)))
+             (kill-buffer tmp-buf))))
         item-list max-width unicode)
 
     (if (or (< char 256)
@@ -444,36 +448,36 @@ as well as widgets, buttons, overlays, and text properties."
                          (encode-char char 'ucs))))
     (setq item-list
          `(("character"
-           ,(format "%s (%d, #o%o, #x%x%s)"
-                    (apply 'propertize char-description
-                           (text-properties-at pos))
-                    char char char
-                    (if unicode
-                        (format ", U+%04X" unicode)
-                      "")))
+            ,(format "%s (%d, #o%o, #x%x%s)"
+                     (apply 'propertize char-description
+                            (text-properties-at pos))
+                     char char char
+                     (if unicode
+                         (format ", U+%04X" unicode)
+                       "")))
            ("charset"
             ,`(insert-text-button
-               (symbol-name charset)
-               'action `(lambda (&rest ignore)
-                          (describe-character-set ',charset))
-               'help-echo
-               "mouse-2, RET: describe this character set")
+               ,(symbol-name charset)
+               'type 'help-character-set 'help-args '(,charset))
             ,(format "(%s)" (charset-description charset)))
            ("code point"
             ,(let ((split (split-char char)))
-               `(insert-text-button ,(if (= (charset-dimension charset) 1)
-                                         (format "%d" (nth 1 split))
-                                       (format "%d %d" (nth 1 split)
-                                               (nth 2 split)))
-                'action (lambda (&rest ignore)
-                          (list-charset-chars ',charset)
-                          (with-selected-window
-                              (get-buffer-window "*Character List*" 0)
-                            (goto-char (point-min))
-                              (forward-line 2) ;Skip the header.
-                              (let ((case-fold-search nil))
-                                (search-forward ,(char-to-string char)
-                                                nil t)))))))
+               `(insert-text-button
+                 ,(if (= (charset-dimension charset) 1)
+                      (format "#x%02X" (nth 1 split))
+                    (format "#x%02X #x%02X" (nth 1 split)
+                            (nth 2 split)))
+                 'action (lambda (&rest ignore)
+                           (list-charset-chars ',charset)
+                           (with-selected-window
+                               (get-buffer-window "*Character List*" 0)
+                             (goto-char (point-min))
+                             (forward-line 2) ;Skip the header.
+                             (let ((case-fold-search nil))
+                               (search-forward ,(char-to-string char)
+                                               nil t))))
+                 'help-echo
+                 "mouse-2, RET: show this character in its character set")))
            ("syntax"
             ,(let ((syntax (syntax-after pos)))
                (with-temp-buffer
@@ -503,10 +507,9 @@ as well as widgets, buttons, overlays, and text properties."
                                      key-list " or ")
                           "with"
                           `(insert-text-button
-                            (symbol-name current-input-method)
-                            'action (lambda (&rest ignore)
-                                      (describe-input-method
-                                       ',current-input-method)))))))
+                            ,current-input-method
+                            'type 'help-input-method
+                            'help-args '(,current-input-method))))))
            ("buffer code"
             ,(encoded-string-description
               (string-as-unibyte (char-to-string char)) nil))
@@ -575,8 +578,9 @@ as well as widgets, buttons, overlays, and text properties."
                          ((and (< char 32) (not (memq char '(9 10))))
                           'escape-glyph)))))
                (if face (list (list "hardcoded face"
-                                    '(insert
-                                      (concat "`" (symbol-name face) "'"))))))
+                                    `(insert-text-button
+                                      ,(symbol-name face)
+                                      'type 'help-face 'help-args '(,face))))))
            ,@(let ((unicodedata (and unicode
                                      (describe-char-unicode-data unicode))))
                (if unicodedata
@@ -687,6 +691,7 @@ as well as widgets, buttons, overlays, and text properties."
                  "the meaning of the rule.\n"))
 
         (if text-props-desc (insert text-props-desc))
+       (setq help-xref-stack-item (list 'help-insert-string (buffer-string)))
        (toggle-read-only 1)
        (print-help-return-message)))))
 
index f886b8e0ad09bd53e673f1ef9cc7f2375df17833..8b8a1444ba673ab921ed98339f4e070a7aa6e21a 100644 (file)
@@ -2565,8 +2565,9 @@ However, the mode will not be changed if
 
 (defun set-visited-file-name (filename &optional no-query along-with-file)
   "Change name of file visited in current buffer to FILENAME.
+This also renames the buffer to correspond to the new file.
 The next time the buffer is saved it will go in the newly specified file.
-FILENAME nil or an empty string means make buffer not be visiting any file.
+FILENAME nil or an empty string means mark buffer as not visiting any file.
 Remember to delete the initial contents of the minibuffer
 if you wish to pass an empty string as the argument.
 
index 9941f0604bd640fc6c9c4f3202537b151ccdff81..2e5bbb9315bfc625354656eed758bfeab7323f90 100644 (file)
@@ -648,6 +648,15 @@ For the cross-reference format, see `help-make-xrefs'."
                (fboundp sym) (facep sym))
        (help-do-xref pos #'help-xref-interned (list sym))))))
 
+(defun help-insert-string (string)
+  "Insert STRING to the help buffer and install xref info for it.
+This function can be used to restore the old contents of the help buffer
+when going back to the previous topic in the xref stack.  It is needed
+in case when it is impossible to recompute the old contents of the
+help buffer by other means."
+  (setq help-xref-stack-item (list #'help-insert-string string))
+  (with-output-to-temp-buffer (help-buffer)
+    (insert string)))
 
 (provide 'help-mode)
 
index 40e678aa1303feb1d2014ec025c19aff7a7cc5c7..a03209e5dc983ccb55176fe66d1aca5e2a696d8b 100644 (file)
@@ -123,6 +123,15 @@ nil means let mailer mail back a message to report errors."
   :type 'regexp
   :group 'sendmail)
 
+;; Prevent problems with `window-system' not having the correct value
+;; when loaddefs.el is loaded. `custom-reevaluate-setting' needs the
+;; standard value.
+;;;###autoload
+(put 'send-mail-function 'standard-value
+     '((if (and window-system (memq system-type '(darwin windows-nt)))
+          'mailclient-send-it
+        'sendmail-send-it)))
+
 ;; Useful to set in site-init.el
 ;;;###autoload
 (defcustom send-mail-function
index 0eb956981ce5105fe151271848f945e05262bccd..76598ab8a8d44a73958ee7b6f33e8a5f9b19bcae 100644 (file)
@@ -560,16 +560,13 @@ This is relative to `smtpmail-queue-dir'.")
                (>= (car ret) 400))
            (throw 'done nil)))
        ((eq mech 'plain)
-       (smtpmail-send-command process "AUTH PLAIN")
-       (if (or (null (car (setq ret (smtpmail-read-response process))))
-               (not (integerp (car ret)))
-               (not (equal (car ret) 334)))
-           (throw 'done nil))
-       (smtpmail-send-command process (base64-encode-string
+       (smtpmail-send-command process
+                              (concat "AUTH PLAIN "
+                                      (base64-encode-string
                                        (concat "\0"
                                                (smtpmail-cred-user cred)
                                                "\0"
-                                               passwd)))
+                                               passwd))))
        (if (or (null (car (setq ret (smtpmail-read-response process))))
                (not (integerp (car ret)))
                (not (equal (car ret) 235)))
index 01ebde5bba320b1f4b483306ecf11176148702ee..74fd15a2c197457f7a225e90a62983b78457beff 100644 (file)
@@ -1,3 +1,17 @@
+2005-12-28  Bill Wohler  <wohler@newt.com>
+
+       * mh-comp.el (mh-e-user-agent): Move here from simple.el. Use
+       mh-user-agent-compose instead of mh-smail-batch.
+
+2005-12-27  Bill Wohler  <wohler@newt.com>
+
+       * mh-utils.el (mh-prompt-for-folder): Use can-create argument to
+       suppress creation of folder if it doesn't exist.
+
+2005-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * mh-utils.el (mh-process-daemon): Don't change buffer in proc-filter.
+
 2005-12-23  Bill Wohler  <wohler@newt.com>
 
        * mh-e.el (mh-folders-changed): Fix typo in docstring.
        hyperlinks such as symbols, Info nodes, or URLs. Use \" quotes for
        everything else. Otherwise, you can accidently get links to
        nonsense symbols.
-       
+
 2005-12-22  Bill Wohler  <wohler@newt.com>
 
        Follow Emacs coding conventions. Use default setting of
        emacs-lisp-docstring-fill-column which is 65.
-       
+
        * mh-alias.el (mh-alias-reload): Sync docstrings with manual.
 
        * mh-comp.el (mh-letter-mode): Use 60 column width.
@@ -50,8 +64,8 @@
        (mh-index-data, mh-first-msg-num, mh-last-msg-num)
        (mh-mode-line-annotation, mh-sequence-notation-history)
        (mh-colors-available-flag): Move comment into docstring.
-       (mh-delete-msg, mh-execute-commands, mh-inc-folder, mh-quit,
-       mh-process-commands): Sync docstrings with manual.
+       (mh-delete-msg, mh-execute-commands, mh-inc-folder, mh-quit)
+       (mh-process-commands): Sync docstrings with manual.
        (mh-refile-msg): Small doc edit.
        (mh-delete-a-msg, mh-refile-a-msg): Sync docstrings with manual.
        Rename msg argument to message.
@@ -62,7 +76,7 @@
        `foo-hook' is a list of functions to be called, with no arguments,
        ...," but rather just "The hook foo-hook is called...".
 
-       * mh-mime.el (mh-mh-to-mime): Ditto
+       * mh-mime.el (mh-mh-to-mime): Ditto.
 
        * mh-pick.el (mh-pick-mode): Ditto.
 
        (mh-show-mode, mh-show-msg, mh-find-path): Sync docstrings with
        manual.
 
-2005-12-19  Stephen Gildea
+2005-12-19  Stephen Gildea  <gildea@stop.mail-abuse.org>
 
-       * mh-customize.el (mh-after-commands-processed-hook): New variable.
-       (mh-before-commands-processed-hook): mh-folder-updated-hook, renamed.
+       * mh-customize.el (mh-after-commands-processed-hook): New
+       variable.
+       (mh-before-commands-processed-hook): Rename
+       mh-folder-updated-hook.
 
-       * mh-e.el (mh-process-commands): Rename mh-folder-updated-hook 
-       to mh-before-commands-processed-hook, call new
+       * mh-e.el (mh-process-commands): Rename mh-folder-updated-hook to
+       mh-before-commands-processed-hook, call new
        mh-after-commands-processed-hook.
        (mh-folders-changed): New variable (for use in
        mh-after-commands-processed-hook).
        to nil. Sync docstrings with manual.
        (mh-tool-bar-define): Replace toolbar with tool-bar or tool bar
        depending on context.
-       (mh-toolbar-init): Rename to mh-tool-bar-init. Simplified
-       condition for calling set-specifier. Only look at the value of
+       (mh-toolbar-init): Rename to mh-tool-bar-init. Simplify condition
+       for calling set-specifier. Only look at the value of
        mh-xemacs-use-tool-bar-flag.
        (mh-tool-bar-folder-buttons, mh-tool-bar-letter-buttons): Sync
        docstrings with manual.
        * mh-customize.el (mh-sortm-args): Sync docstrings with manual.
        (mh-invisible-header-fields-internal): Add X-Bugzilla-* and
        X-Virus-Scanned.
-       
+
        * mh-customize.el (mh-insert-signature-hook): Rename
        mh-letter-insert-signature-hook to mh-insert-signature-hook.
 
        mh-index-new-messages-folders.
        (mh-ticked-messages-folders): Rename from
        mh-index-ticked-messages-folders.
-       
+
        * mh-index.el (mh-index-sequenced-messages)
        (mh-index-new-messages): Ditto.
 
        * mh-seq.el (mh-put-msg-in-seq, mh-range-to-msg-list)
        (mh-narrow-to-range, mh-toggle-tick): Ditto.
 
-
 2005-12-01  Bill Wohler  <wohler@newt.com>
 
        Rewrote Reading Mail chapter in manual which affected mh-show
        customization group and related functions.
-       
+
        * mh-comp.el (mh-letter-mode): Use mh-highlight-citation-style
        instead of mh-highlight-citation-p.
        (mh-letter-toggle-header-field-display): "Ellipsed" isn't a word,
        (mh-show-use-xface-flag, mh-store-default-directory)
        (mh-summary-height, mh-delete-msg-hook
        (mh-show-hook, mh-show-mode-hook): Sync docstrings with manual.
-       
+
        * mh-e.el
        (mh-scan-format-mh, mh-scan-good-msg-regexp)
        (mh-scan-deleted-msg-regexp, mh-scan-refiled-msg-regexp)
        to no-header. Sync docstrings with manual.
        (mh-ps-print-map): Delete keybindings for deleted commands
        mh-ps-print-toggle-mime and mh-ps-print-msg-show.
-       (mh-help-messages): Updated printing help.
+       (mh-help-messages): Update printing help.
        (mh-delete-msg, mh-delete-msg-no-motion, mh-first-msg)
        (mh-last-msg, mh-previous-unread-msg, mh-next-button)
        (mh-prev-button, mh-folder-toggle-mime-part)
        (mh-next-unread-msg, mh-toggle-mime-buttons): Sync docstrings with
        manual.
 
-       * mh-funcs.el (mh-sortm-args): Now a customization option and
-       in mh-customize.el.
+       * mh-funcs.el (mh-sortm-args): Now a customization option and in
+       mh-customize.el.
        (mh-pipe-msg): Rename include-headers to include-header. Sync
        docstrings with manual.
        (mh-burst-digest, mh-page-digest, mh-page-digest-backwards)
        minibuffer. Sync docstrings with manual.
 
        * mh-print.el: (mh-ps-print-mime, mh-ps-print-toggle-mime):
-       Deleted.
+       Delete.
        (mh-ps-print-color-option): Incorporate docstring from
        ps-print-color-p.
        (mh-ps-spool-buffer): Remove unused code. Fix indent. Slimline
        docstring.
        (mh-ps-spool-msg): Slimline docstring. Rename from
-       mh-ps-spool-a-msg. Rewrote to use existing show buffer when
+       mh-ps-spool-a-msg. Rewrite to use existing show buffer when
        available.
        (mh-ps-print-range): Extract method from common code in
        mh-ps-print-msg and mh-ps-print-msg-file.
        (mh-ps-print-toggle-faces, mh-ps-print-toggle-color): Sync
        docstrings with manual.
        
-       * mh-utils.el (mh-show-ps-print-msg-show,
+       * mh-utils.el (mh-show-ps-print-msg-show)
        mh-show-ps-print-toggle-mime): Delete.
-       (mh-show-ps-print-map): Updated accordingly.
+       (mh-show-ps-print-map): Update accordingly.
        (mh-show-mode): Use mh-highlight-citation-style instead of
        mh-highlight-citation-p.
        (mh-show-xface, mh-display-msg): Use mh-mhl-format-file instead of
 
        * mh-init.el: Modify commentary since file is used for load and
        initialization as well as setting and getting the variant.
-       (mh-min-colors-defined-flag, mh-defface-compat): Move
-       here from mh-customize.el. 
+       (mh-min-colors-defined-flag, mh-defface-compat): Move here from
+       mh-customize.el.
 
        * mh-customize.el: Refactor faces. Move grayscale requirements
        last before t. Use uniform line breaks.
        (mh-min-colors-defined-flag): New variable.
        (mh-defface-compat): New function. Provides backward compatibility
        for face specs.
-       (mh-show-header, mh-show-date, mh-show-cc, mh-folder-to) 
-       (mh-folder-refiled, mh-folder-cur-msg-number, mh-folder-cur-msg) 
+       (mh-show-header, mh-show-date, mh-show-cc, mh-folder-to)
+       (mh-folder-refiled, mh-folder-cur-msg-number, mh-folder-cur-msg)
        (mh-folder-body): Use mh-defface-compat.
 
 2005-11-03  Dan Nicolaescu  <dann@ics.uci.edu>
 
        * mh-e.el (mh-update-sequences): Sync docstrings with manual.
 
-       * mh-seq.el (mh-delete-seq, mh-list-sequences, mh-narrow-to-seq) 
+       * mh-seq.el (mh-delete-seq, mh-list-sequences, mh-narrow-to-seq)
        (mh-widen, mh-toggle-tick, mh-narrow-to-tick): Sync docstrings
        with manual.
 
        (mh-reply-show-message-flag, mh-letter-mode-hook): Sync docstrings
        with manual.
 
-       * mh-print.el (mh-ps-spool-buffer, mh-ps-spool-a-msg) 
+       * mh-print.el (mh-ps-spool-buffer, mh-ps-spool-a-msg)
        (mh-ps-print-msg): Remove debugging messages.
-       (mh-ps-print-msg-show, mh-ps-print-msg-show) 
+       (mh-ps-print-msg-show, mh-ps-print-msg-show)
        (mh-ps-print-toggle-color, mh-ps-print-toggle-mime): Remove period
        after message per conventions.
 
 2005-10-30  Bill Wohler  <wohler@newt.com>
 
-       * mh-e.el (mh-scan-good-msg-regexp, mh-scan-deleted-msg-regexp) 
+       * mh-e.el (mh-scan-good-msg-regexp, mh-scan-deleted-msg-regexp)
        (mh-scan-refiled-msg-regexp, mh-scan-cur-msg-number-regexp): Sync
        docstrings with manual.
 
        column, not a width.
        (mh-add-sequence-notation, mh-remove-sequence-notation): Use new
        variable mh-scan-field-destination-offset rather than hard-coding
-       1. 
+       1.
 
        * mh-utils.el (mh-cmd-note) Synced docstring with manual.
        (mh-notate): Use new variable mh-scan-field-destination-offset
        * mh-customize.el (mh-x-face-file, mh-show-use-xface-flag)
        (mail-citation-hook): Quote URLs in docstrings and precede with
        `URL'. The former will suppress checkdoc warnings, the latter will
-       turn them into hyperlinks in Emacs 22 (I just added the code
-       to do that today).
+       turn them into hyperlinks in Emacs 22 (I just added the code to do
+       that today).
        (mh-scan-format-file): Checkdoc fix.
 
 2005-10-27  Bill Wohler  <wohler@newt.com>
        Checkdoc fixes.
 
        * mh-customize.el (mh-compose-insertion, mh-x-face-file): Ditto.
-       
-       * mh-mime.el (mh-mh-to-mime, mh-mml-attach-file) 
-       (mh-mml-secure-message-sign, mh-mml-secure-message-encrypt) 
-       (mh-mml-secure-message-signencrypt): Ditto
+
+       * mh-mime.el (mh-mh-to-mime, mh-mml-attach-file)
+       (mh-mml-secure-message-sign, mh-mml-secure-message-encrypt)
+       (mh-mml-secure-message-signencrypt): Ditto.
 
 2005-10-24  Bill Wohler  <wohler@newt.com>
 
        (mh-yank-from-start-of-msg): Rename to mh-yank-behavior.
        (mh-compose-insertion): Rename values from 'gnus and 'mhn to 'mh
        and user-visible values from mhn and Gnus to MH and MML.
-       (mh-before-send-letter-hook): Added 'ispell-message option.
+       (mh-before-send-letter-hook): Add 'ispell-message option.
        (mh-mml-method-default): Rename mh-gnus-pgp-support-flag to
        mh-pgp-support-flag.
        (mh-compose-insertion, mh-compose-space-does-completion-flag)
        (mh-mh-compose-external-type, mh-mh-forward-message)
        (mh-mml-attach-file): Use mml-minibuffer-read-description,
        mh-minibuffer-read-type.
-       (mh-mime-content-types): Moved comment about only being used in
+       (mh-mime-content-types): Move comment about only being used in
        Emacs 20 to docstring.
        (mh-mh-compose-external-type): Rename extra-param argument to
        parameters.
-       (mh-mml-to-mime, mh-secure-message)
-       (mh-mml-unsecure-message, mh-mime-display-part)
-       (mh-mime-display-single): Rename mh-gnus-pgp-support-flag to
-       mh-pgp-support-flag.
+       (mh-mml-to-mime, mh-secure-message, mh-mml-unsecure-message)
+       (mh-mime-display-part, mh-mime-display-single): Rename
+       mh-gnus-pgp-support-flag to mh-pgp-support-flag.
        (mh-compose-insertion): Rename mh-mhn-compose-insertion to
        mh-mh-attach-file.
        (mh-compose-forward): Rename mh-mhn-compose-forw to
        (mh-mh-compose-anon-ftp, mh-mh-compose-external-compressed-tar)
        (mh-mh-compose-external-compressed-tar)
        (mh-mh-compose-external-type, mh-mh-forward-message)
-       (mh-mh-to-mime, mh-mh-quote-unescaped-sharp,
+       (mh-mh-to-mime, mh-mh-quote-unescaped-sharp)
        (mh-mh-to-mime-undo, mh-mh-directive-present-p, mh-mml-to-mime)
        (mh-mml-attach-file, mh-secure-message, mh-mml-unsecure-message)
        (mh-mml-secure-message-sign, mh-mml-secure-message-encrypt)
 
 2005-10-17  Bill Wohler  <wohler@newt.com>
 
-       * mh-customize.el (mh-folder-tool-bar-map): Renamed image file
+       * mh-customize.el (mh-folder-tool-bar-map): Rename image file
        left_arrow to left-arrow, right_arrow to right-arrow, mail_compose
        to mail/compose, fld_open to fld-open.
-       (mh-letter-tool-bar-map): Renamed image file mail_send to
+       (mh-letter-tool-bar-map): Rename image file mail_send to
        mail/send.
 
 2005-10-16  Bill Wohler  <wohler@newt.com>
 
 2005-10-16  Masatake YAMATO  <jet@gyve.org>
 
-       * mh-comp.el (mh-complete-word): Pass the common
-       prefix substring of completion to `display-completion-list'.
+       * mh-comp.el (mh-complete-word): Pass the common prefix substring
+       of completion to `display-completion-list'.
 
 2005-10-15  Satyaki Das  <satyaki@theforce.stanford.edu>
 
        * mh-init.el (mh-image-load-path-called-flag): New variable which
        is used by mh-image-load-path so that it runs only once.
-       (mh-image-load-path): Modified so that it gets run only once. Also
+       (mh-image-load-path): Modify so that it gets run only once. Also
        flatten out heavily nested if statements to make it clearer.
 
        * mh-e.el (mh-folder-mode): Call mh-image-load-path to allow Emacs
 
 2005-10-14  Bill Wohler  <wohler@newt.com>
 
-       * mh-e.el (Version, mh-version): Added +cvs to version.
+       * mh-e.el (Version, mh-version): Add +cvs to version.
 
 2005-10-14  Bill Wohler         <wohler@newt.com>
 
        Released MH-E version 7.85.
-         
-       * mh-e.el (Version, mh-version): Updated for release 7.85.
-       
+
+       * mh-e.el (Version, mh-version): Update for release 7.85.
+
 2005-10-14  Bill Wohler  <wohler@newt.com>
 
-       * mh-e.el, mh-funcs.el, mh-init.el, mh-mime.el, mh-pick.el:
-       mh-seq.el, mh-utils.el: Ran mh-unit. Continued copyright lines
-       need to be indented. 
-       
+       * mh-e.el, mh-funcs.el, mh-init.el, mh-mime.el, mh-pick.el: *
+       mh-seq.el, mh-utils.el: Ran mh-unit. Continued copyright lines
+       need to be indented.
+
        * mh-e.el: mh-folder-tick-face had been renamed to mh-folder-tick
        but the code that invoked the face had not been updated. Tick
        highlighting working again.
 
-       * mh-seq.el (mh-non-seq-mode-line-annotation): Moved
+       * mh-seq.el (mh-non-seq-mode-line-annotation): Move
        make-variable-buffer-local call to top level to avoid warnings in
        CVS Emacs.
 
-       * mh-comp.el (mh-insert-letter): Replaced deprecated read-input
+       * mh-comp.el (mh-insert-letter): Replace deprecated read-input
        with read-string.
 
 2005-10-09  Bill Wohler  <wohler@newt.com>
 
 2005-10-04  Bill Wohler  <wohler@newt.com>
 
-       * ChangeLog: Moved contents into ChangeLog.1 and trimmed.
-       
+       * ChangeLog: Move contents into ChangeLog.1 and trim.
+
        * ChangeLog.1: New file. Contains old ChangeLog.
 
 
   are permitted in any medium without royalty provided the copyright
   notice and this notice are preserved.
 
+;; Local Variables:
+;; sentence-end-double-space: nil
+;; End:
+
 ;;; arch-tag: 87324964-69b6-4925-a3c2-9c1df53d7d51
index 898f24dccb714f07df8e3cd6eb4923021c21c865..113572153af466e0b949f24f6e6b498367464068 100644 (file)
@@ -228,18 +228,28 @@ thus is suitable for use by programs that want to create a mail
 buffer. Users should use \\[mh-smail] to compose mail.
 
 Optional arguments for setting certain fields include TO,
-SUBJECT, and OTHER-HEADERS. Additional arguments are IGNORED."
+SUBJECT, and OTHER-HEADERS. Additional arguments are IGNORED.
+
+This function remains for Emacs 21 compatibility. New
+applications should use `mh-user-agent-compose'."
   (mh-find-path)
   (let ((mh-error-if-no-draft t))
     (mh-send (or to "") "" (or subject ""))))
 
-;; XEmacs needs this:
+;;;###autoload
+(define-mail-user-agent 'mh-e-user-agent
+  'mh-user-agent-compose 'mh-send-letter 'mh-fully-kill-draft
+  'mh-before-send-letter-hook)
+
 ;;;###autoload
 (defun mh-user-agent-compose (&optional to subject other-headers continue
                                         switch-function yank-action
                                         send-actions)
   "Set up mail composition draft with the MH mail system.
-This is `mail-user-agent' entry point to MH-E.
+This is the `mail-user-agent' entry point to MH-E. This function
+conforms to the contract specified by `define-mail-user-agent'
+which means that this function should accept the same arguments
+as `compose-mail'.
 
 The optional arguments TO and SUBJECT specify recipients and the
 initial Subject field, respectively.
index ca51f59bc3f3d092dad4be7474a140944d9a798b..b5d97a2be0508ae65bcd24202e2f550d6c03e69c 100644 (file)
@@ -2312,7 +2312,7 @@ three arguments so we bind this variable to t or nil.
 This variable should never be set.")
 
 (defvar mh-folder-completion-map (copy-keymap minibuffer-local-completion-map))
-(define-key mh-folder-completion-map " " 'minibuffer-complete)
+(define-key mh-folder-completion-map " " 'minibuffer-complete)  ;Why???
 
 (defvar mh-speed-flists-inhibit-flag nil)
 
@@ -2416,6 +2416,7 @@ used in searching."
     (let ((new-file-flag
            (not (file-exists-p (mh-expand-file-name folder-name)))))
       (cond ((and new-file-flag
+                  can-create
                   (y-or-n-p
                    (format "Folder %s does not exist.  Create it? "
                            folder-name)))
@@ -2426,7 +2427,7 @@ used in searching."
                (mh-speed-add-folder folder-name))
              (message "Creating %s...done" folder-name))
             (new-file-flag
-             (error "Folder %s is not created" folder-name))
+             (error "Folder %s does not exist" folder-name))
             ((not (file-directory-p (mh-expand-file-name folder-name)))
              (error "\"%s\" is not a directory"
                     (mh-expand-file-name folder-name)))))
@@ -2532,9 +2533,9 @@ ARGS are passed to COMMAND as command line arguments."
   "PROCESS daemon that puts OUTPUT into a temporary buffer.
 Any output from the process is displayed in an asynchronous
 pop-up window."
-  (set-buffer (get-buffer-create mh-log-buffer))
-  (insert-before-markers output)
-  (display-buffer mh-log-buffer))
+  (with-current-buffer (get-buffer-create mh-log-buffer)
+    (insert-before-markers output)
+    (display-buffer mh-log-buffer)))
 
 (defun mh-exec-cmd-quiet (raise-error command &rest args)
   "Signal RAISE-ERROR if COMMAND with ARGS fails.
index b92413f73836ff1215022606c2d80b790c66743b..186fa438b35256b7e7ff86b20cfe0473d0f86c32 100644 (file)
@@ -1002,25 +1002,30 @@ at the same position."
                          (or end-point
                              (= (window-start start-window)
                                 start-window-start)))
-                (if (and on-link
-                         (or (not end-point) (= end-point start-point))
-                         (consp event)
-                         (or remap-double-click
-                             (and
-                              (not (eq mouse-1-click-follows-link 'double))
-                              (= click-count 0)
-                              (= (event-click-count event) 1)
-                              (not (input-pending-p))
-                              (or (not (integerp mouse-1-click-follows-link))
-                                  (let ((t0 (posn-timestamp (event-start start-event)))
-                                        (t1 (posn-timestamp (event-end event))))
-                                    (and (integerp t0) (integerp t1)
-                                         (if (> mouse-1-click-follows-link 0)
-                                             (<= (- t1 t0) mouse-1-click-follows-link)
-                                           (< (- t0 t1) mouse-1-click-follows-link))))))))
-                   (if (or (vectorp on-link) (stringp on-link))
-                       (setq event (aref on-link 0))
-                     (setcar event 'mouse-2)))
+                (when (and on-link
+                          (or (not end-point) (= end-point start-point))
+                          (consp event)
+                          (or remap-double-click
+                              (and
+                               (not (eq mouse-1-click-follows-link 'double))
+                               (= click-count 0)
+                               (= (event-click-count event) 1)
+                               (not (input-pending-p))
+                               (or (not (integerp mouse-1-click-follows-link))
+                                   (let ((t0 (posn-timestamp (event-start start-event)))
+                                         (t1 (posn-timestamp (event-end event))))
+                                     (and (integerp t0) (integerp t1)
+                                          (if (> mouse-1-click-follows-link 0)
+                                              (<= (- t1 t0) mouse-1-click-follows-link)
+                                            (< (- t0 t1) mouse-1-click-follows-link))))))))
+                 ;; Reselect previous selected window,
+                 ;; so that the mouse-2 event runs in the same
+                 ;; situation as if user had clicked it directly.
+                 ;; Fixes the bug reported by juri@jurta.org on 2005-12-27.
+                 (select-window original-window)
+                 (if (or (vectorp on-link) (stringp on-link))
+                     (setq event (aref on-link 0))
+                   (setcar event 'mouse-2)))
                (push event unread-command-events))))
 
         ;; Case where the end-event is not a cons cell (it's just a boring
index 2164ac72d394b4ef42e89dc6f848f192539e9864..f5327c3b3445df9e34909bbc982590dd5aa94adb 100644 (file)
@@ -72,6 +72,12 @@ otherwise)."
   :group 'paren-showing
   :version "20.3")
 
+(defgroup paren-showing-faces ()
+  "Group for faces of Show Paren mode"
+  :group 'paren-showing
+  :group 'faces
+  :version "22.1")
+
 (defface show-paren-match
   '((((class color) (background light))
      :background "turquoise")          ; looks OK on tty (becomes cyan)
@@ -82,8 +88,7 @@ otherwise)."
     (t
      :background "gray"))
   "Show Paren mode face used for a matching paren."
-  :group 'faces
-  :group 'paren-showing)
+  :group 'show-paren-faces)
 ;; backward-compatibility alias
 (put 'show-paren-match-face 'face-alias 'show-paren-match)
 
@@ -91,8 +96,7 @@ otherwise)."
   '((((class color)) (:foreground "white" :background "purple"))
     (t (:inverse-video t)))
   "Show Paren mode face used for a mismatching paren."
-  :group 'faces
-  :group 'paren-showing)
+  :group 'show-paren-faces)
 ;; backward-compatibility alias
 (put 'show-paren-mismatch-face 'face-alias 'show-paren-mismatch)
 
index 1bb76c170dc5aa0f1bf9980529378af266304c4d..b237dd9a5987ee4236f4eb3e7e9d84ad921dd412 100644 (file)
@@ -1464,7 +1464,8 @@ non-nil, a caret is prepended to invert the set."
       (kill-buffer buf))
 
     ;; See if `parse-partial-sexp' returns the eighth element.
-    (if (c-safe (>= (length (save-excursion (parse-partial-sexp 1 1))) 10))
+    (if (c-safe (>= (length (save-excursion (parse-partial-sexp (point) (point))))
+                   10))
        (setq list (cons 'pps-extended-state list))
       (error (concat
              "CC Mode is incompatible with this version of Emacs - "
index 002bae1b01996f327751577539ac2f325b26e19d..e7bda34e080f11606385d2c74dd156f7f9452625 100644 (file)
@@ -331,10 +331,14 @@ With arg, use separate IO iff arg is positive."
       (setq name (nth 1 (split-string define "[( ]")))
       (push (cons name define) gdb-define-alist))))
 
-(defun gdb-tooltip-print ()
+(defun gdb-tooltip-print (expr)
   (tooltip-show
    (with-current-buffer (gdb-get-buffer 'gdb-partial-output-buffer)
-     (let ((string (buffer-string)))
+     (goto-char (point-min))
+     (let ((string
+           (if (search-forward "=" nil t)
+               (concat expr (buffer-substring (- (point) 2) (point-max)))
+             (buffer-string))))
        ;; remove newline for gud-tooltip-echo-area
        (substring string 0 (- (length string) 1))))
    (or gud-tooltip-echo-area tooltip-use-echo-area)))
@@ -349,7 +353,7 @@ With arg, use separate IO iff arg is positive."
        (unless (looking-at "\\S-+.*(.*).*")
          (gdb-enqueue-input
           (list  (concat gdb-server-prefix "print " expr "\n")
-                 'gdb-tooltip-print))))))
+                 `(lambda () (gdb-tooltip-print ,expr))))))))
 
 (defconst gdb-source-file-regexp "\\(.+?\\), \\|\\([^, \n].*$\\)")
 
@@ -541,7 +545,8 @@ With arg, use separate IO iff arg is positive."
   :version "22.1")
 
 (defun gdb-speedbar-auto-raise (arg)
-  "Toggle automatic raising of the speedbar for watch expressions."
+  "Toggle automatic raising of the speedbar for watch expressions.
+With arg, automatically raise speedbar iff arg is positive."
   (interactive "P")
   (setq gdb-speedbar-auto-raise
        (if (null arg)
@@ -1194,7 +1199,7 @@ happens to be appropriate."
 
     (if (string-equal gdb-version "pre-6.4")
        (gdb-invalidate-registers)
-      (gdb-get-changed-registers)
+      (if (gdb-get-buffer 'gdb-registers-buffer) (gdb-get-changed-registers))
       (gdb-invalidate-registers-1))
 
     (gdb-invalidate-memory)
index 2733cb407a4334f649756c757be4fcc495be7bc2..18f744e81c8f156db72ec80d5302dab7346b5251 100644 (file)
@@ -82,7 +82,7 @@ For example, you can set `glasses-separator' to an empty string and
 `glasses-face' to `bold'.  Then unreadable identifiers will have no separators,
 but will have their capitals in bold."
   :group 'glasses
-  :type 'symbol
+  :type '(choice face (const nil))
   :set 'glasses-custom-set
   :initialize 'custom-initialize-default)
 
index 5b1edbe89bed3d3daf3504ad92bd9f33df7f3d9c..a9ccdf38442afb6ac15e5344b6fe7d755eaa2757 100644 (file)
@@ -3343,16 +3343,19 @@ For C this would dereference a pointer expression.")
   "The mouse movement event that led to a tooltip display.
 This event can be examined by forms in GUD-TOOLTIP-DISPLAY.")
 
-(defun toggle-gud-tooltip-dereference ()
-  "Toggle whether tooltips should show `* expr' or `expr'."
-  (interactive)
-  (setq gud-tooltip-dereference (not gud-tooltip-dereference))
-  (when (interactive-p)
-    (message "Dereferencing is now %s."
-            (if gud-tooltip-dereference "on" "off"))))
+(defun gud-tooltip-dereference ()
+  "Toggle whether tooltips should show `* expr' or `expr'.
+With arg, dereference expr iff arg is positive."
+ (interactive "P")
+  (setq gud-tooltip-dereference
+       (if (null arg)
+           (not gud-tooltip-dereference)
+         (> (prefix-numeric-value arg) 0)))
+  (message "Dereferencing is now %s."
+          (if gud-tooltip-dereference "on" "off")))
 
 (define-obsolete-function-alias 'tooltip-gud-toggle-dereference
-                                'toggle-gud-tooltip-dereference "22.1")
+                                'gud-tooltip-dereference "22.1")
 
 ; This will only display data that comes in one chunk.
 ; Larger arrays (say 400 elements) are displayed in
@@ -3367,10 +3370,7 @@ This event can be examined by forms in GUD-TOOLTIP-DISPLAY.")
                (or gud-tooltip-echo-area tooltip-use-echo-area)))
 
 (defun gud-tooltip-print-command (expr)
-  "Return a suitable command to print the expression EXPR.
-If GUD-TOOLTIP-DEREFERENCE is t, also prepend a `*' to EXPR."
-  (when gud-tooltip-dereference
-    (setq expr (concat "*" expr)))
+  "Return a suitable command to print the expression EXPR."
   (case gud-minor-mode
        (gdba (concat "server print " expr))
        ((dbx gdbmi) (concat "print " expr))
@@ -3412,6 +3412,8 @@ This function must return nil if it doesn't handle EVENT."
                       (cdr define-elt)
                       (or gud-tooltip-echo-area tooltip-use-echo-area))
                      expr))))
+           (when gud-tooltip-dereference
+             (setq expr (concat "*" expr)))
            (let ((cmd (gud-tooltip-print-command expr)))
              (when (and gud-tooltip-mode (eq gud-minor-mode 'gdb))
                (gud-tooltip-mode -1)
index fa481a233cd1430001ef63e9bfc9cde799a0bbf6..4665e2cb7c00102b124a9ca640d56963d7bc489c 100644 (file)
   '((((class color)) (:background  "hotpink"))
     (t (:reverse-video t)))
   "Face to use for highlighting leading spaces in Font-Lock mode."
-  :group 'faces
   :group 'makefile)
 (put 'makefile-space-face 'face-alias 'makefile-space)
 
   ;; This needs to go along both with foreground and background colors (i.e. shell)
   '((t (:inherit font-lock-function-name-face)))
   "Face to use for additionally highlighting rule targets in Font-Lock mode."
-  :group 'faces
   :group 'makefile
   :version "22.1")
 
   ;;'((((class color) (min-colors 88) (background light)) (:background  "seashell1"))
   ;;  (((class color) (min-colors 88) (background dark)) (:background  "seashell4")))
   "Face to use for additionally highlighting Shell commands in Font-Lock mode."
-  :group 'faces
   :group 'makefile
   :version "22.1")
 
     (((class color) (background dark)) (:background  "DarkBlue"))
     (t (:reverse-video t)))
   "Face to use for additionally highlighting Perl code in Font-Lock mode."
-  :group 'faces
   :group 'makefile
   :version "22.1")
 
index 8229eda85a469b8e9e253a7e76b498796998da8c..46f672a8d1a761791ba806cb891ab76418812609 100644 (file)
@@ -1474,32 +1474,33 @@ make, or the user didn't cancel the call."
                                 ;; For speed, use only integers and
                                 ;; reuse the list used last time.
                                 (replace-match-data t real-match-data)))))
+         
+         ;; Record whether the match is nonempty, to avoid an infinite loop
+         ;; repeatedly matching the same empty string.
+         (setq nonempty-match
+               (/= (nth 0 real-match-data) (nth 1 real-match-data)))
+
+         ;; If the match is empty, record that the next one can't be
+         ;; adjacent.
+
+         ;; Otherwise, if matching a regular expression, do the next
+         ;; match now, since the replacement for this match may
+         ;; affect whether the next match is adjacent to this one.
+         ;; If that match is empty, don't use it.
+         (setq match-again
+               (and nonempty-match
+                    (or (not regexp-flag)
+                        (and (looking-at search-string)
+                             (let ((match (match-data)))
+                               (and (/= (nth 0 match) (nth 1 match))
+                                    match))))))
+
          ;; Optionally ignore matches that have a read-only property.
          (unless (and query-replace-skip-read-only
                       (text-property-not-all
-                       (match-beginning 0) (match-end 0)
+                       (nth 0 real-match-data) (nth 1 real-match-data)
                        'read-only nil))
 
-           ;; Record whether the match is nonempty, to avoid an infinite loop
-           ;; repeatedly matching the same empty string.
-           (setq nonempty-match
-                 (/= (nth 0 real-match-data) (nth 1 real-match-data)))
-
-           ;; If the match is empty, record that the next one can't be
-           ;; adjacent.
-
-           ;; Otherwise, if matching a regular expression, do the next
-           ;; match now, since the replacement for this match may
-           ;; affect whether the next match is adjacent to this one.
-           ;; If that match is empty, don't use it.
-           (setq match-again
-                 (and nonempty-match
-                      (or (not regexp-flag)
-                          (and (looking-at search-string)
-                               (let ((match (match-data)))
-                                 (and (/= (nth 0 match) (nth 1 match))
-                                      match))))))
-
            ;; Calculate the replacement string, if necessary.
            (when replacements
              (set-match-data real-match-data)
index 47047d9ef6d90eb43fa7f2e373ffbec456123910..c55c759662441b29013790ce8e1d2e089deb215e 100644 (file)
@@ -4561,10 +4561,6 @@ See also `read-mail-command' concerning reading mail."
        (insert body))
       t)))
 
-(define-mail-user-agent 'mh-e-user-agent
-  'mh-smail-batch 'mh-send-letter 'mh-fully-kill-draft
-  'mh-before-send-letter-hook)
-
 (defun compose-mail (&optional to subject other-headers continue
                               switch-function yank-action send-actions)
   "Start composing a mail message to send.
index 533f9dbeaaead0e961589da02aa375ed2a1e0f2a..155ef1d3e792951391e041f1cb8e279933d3ae20 100644 (file)
@@ -781,6 +781,7 @@ opening the first frame (e.g. open a connection to an X server).")
   (custom-reevaluate-setting 'mouse-wheel-down-event)
   (custom-reevaluate-setting 'mouse-wheel-up-event)
   (custom-reevaluate-setting 'file-name-shadow-mode)
+  (custom-reevaluate-setting 'send-mail-function)
 
   (normal-erase-is-backspace-setup-frame)
 
index 01444481b2272d7140835f360e0e09e68b573aff..c03fa3be5a07cb76dc17e36d77836291811de704 100644 (file)
@@ -2268,20 +2268,33 @@ that can be used as the ALIST argument to `try-completion' and
           ((not ,mode) (try-completion ,string (,fun ,string) ,predicate))
           (t (test-completion ,string (,fun ,string) ,predicate)))))))
 
-(defmacro lazy-completion-table (var fun &rest args)
+(defmacro lazy-completion-table (var fun)
+  ;; We used to have `&rest args' where `args' were evaluated late (at the
+  ;; time of the call to `fun'), which was counter intuitive.  But to get
+  ;; them to be evaluated early, we have to either use lexical-let (which is
+  ;; not available in subr.el) or use `(lambda (,str) ...) which prevents the use
+  ;; of lexical-let in the callers.
+  ;; So we just removed the argument.  Callers can then simply use either of:
+  ;;   (lazy-completion-table var (lambda () (fun x y)))
+  ;; or
+  ;;   (lazy-completion-table var `(lambda () (fun ',x ',y)))
+  ;; or
+  ;;   (lexical-let ((x x)) ((y y))
+  ;;     (lazy-completion-table var (lambda () (fun x y))))
+  ;; depending on the behavior they want.
   "Initialize variable VAR as a lazy completion table.
 If the completion table VAR is used for the first time (e.g., by passing VAR
-as an argument to `try-completion'), the function FUN is called with arguments
-ARGS.  FUN must return the completion table that will be stored in VAR.
+as an argument to `try-completion'), the function FUN is called with no
+arguments.  FUN must return the completion table that will be stored in VAR.
 If completion is requested in the minibuffer, FUN will be called in the buffer
 from which the minibuffer was entered.  The return value of
 `lazy-completion-table' must be used to initialize the value of VAR."
-  (declare (debug (symbol lambda-expr def-body)))
+  (declare (debug (symbol lambda-expr)))
   (let ((str (make-symbol "string")))
     `(dynamic-completion-table
       (lambda (,str)
         (when (functionp ,var)
-          (setq ,var (,fun ,@args)))
+          (setq ,var (,fun)))
         ,var))))
 
 (defmacro complete-in-turn (a b)
index 82c79ae256946750eb1830e7967aa9695b5d0344..161b5fbc126fda6d091c2e480254505c4e797956 100644 (file)
@@ -1044,13 +1044,15 @@ At most `bibtex-entry-kill-ring-max' items are kept here.")
 
 (defvar bibtex-strings
   (lazy-completion-table bibtex-strings
-                         bibtex-parse-strings (bibtex-string-files-init))
+                         (lambda ()
+                           (bibtex-parse-strings (bibtex-string-files-init))))
   "Completion table for BibTeX string keys.
 Initialized from `bibtex-predefined-strings' and `bibtex-string-files'.")
 (make-variable-buffer-local 'bibtex-strings)
 
 (defvar bibtex-reference-keys
-  (lazy-completion-table bibtex-reference-keys bibtex-parse-keys nil t)
+  (lazy-completion-table bibtex-reference-keys
+                         (lambda () (bibtex-parse-keys nil t)))
   "Completion table for BibTeX reference keys.
 The CDRs of the elements are t for header keys and nil for crossref keys.")
 (make-variable-buffer-local 'bibtex-reference-keys)
index cad65b3b59dc81115e57000865deebbd1ef76b65..33582af28b996e6aeb55a9dca706cca694df27a5 100644 (file)
@@ -1308,10 +1308,12 @@ The list of incorrect words should be in `flyspell-external-ispell-buffer'.
 \(We finish by killing that buffer and setting the variable to nil.)
 The buffer to mark them in is `flyspell-large-region-buffer'."
   (let (words-not-found
-       (ispell-otherchars (ispell-get-otherchars)))
+       (ispell-otherchars (ispell-get-otherchars))
+       (buffer-scan-pos flyspell-large-region-beg))
     (with-current-buffer flyspell-external-ispell-buffer
       (goto-char (point-min))
-      ;; Loop over incorrect words.
+      ;; Loop over incorrect words, in the order they were reported,
+      ;; which is also the order they appear in the buffer being checked.
       (while (re-search-forward "\\([^\n]+\\)\n" nil t)
        ;; Bind WORD to the next one.
        (let ((word (match-string 1)) (wordpos (point)))
@@ -1325,43 +1327,53 @@ The buffer to mark them in is `flyspell-large-region-buffer'."
                       (* 100 (/ (float (point)) (point-max)))
                       word))
          (with-current-buffer flyspell-large-region-buffer
-           (goto-char flyspell-large-region-beg)
+           (goto-char buffer-scan-pos)
            (let ((keep t))
              ;; Iterate on string search until string is found as word,
              ;; not as substring
              (while keep
                (if (search-forward word
                                    flyspell-large-region-end t)
-                   (save-excursion
-                     (goto-char (- (point) 1))
-                     (let* ((flyword-prev-l (flyspell-get-word nil))
-                            (flyword-prev (car flyword-prev-l))
-                            (size-match (= (length flyword-prev) (length word))))
-                       (when (or
-                              ;; size matches, we are done
-                              size-match
-                              ;; Matches as part of a boundary-char separated word
-                              (member word
-                                      (split-string flyword-prev ispell-otherchars))
-                              ;; ispell treats beginning of some TeX
-                              ;; commands as nroff control sequences
-                              ;; and strips them in the list of
-                              ;; misspelled words thus giving a
-                              ;; non-existent word.  Skip if ispell
-                              ;; is used, string is a TeX command
-                              ;; (char before beginning of word is
-                              ;; backslash) and none of the previous
-                              ;; contitions match
-                              (and (not ispell-really-aspell)
-                                   (save-excursion
-                                     (goto-char (- (nth 1 flyword-prev-l) 1))
-                                     (if (looking-at "[\\]" )
-                                         t
-                                       nil))))
-                         (setq keep nil)
-                         (flyspell-word)
-                         ;; Next search will begin from end of last match
-                         )))
+                   (let* ((found-list
+                           (save-excursion
+                             ;; Move back into the match
+                             ;; so flyspell-get-word will find it.
+                             (forward-char -1)
+                             (flyspell-get-word nil)))
+                          (found (car found-list))
+                          (found-length (length found))
+                          (misspell-length (length word)))
+                     (when (or
+                            ;; Size matches, we really found it.
+                            (= found-length misspell-length)
+                            ;; Matches as part of a boundary-char separated word
+                            (member word
+                                    (split-string found ispell-otherchars))
+                            ;; Misspelling has higher length than
+                            ;; what flyspell considers the
+                            ;; word.  Caused by boundary-chars
+                            ;; mismatch.  Validating seems safe.
+                            (< found-length misspell-length)
+                            ;; ispell treats beginning of some TeX
+                            ;; commands as nroff control sequences
+                            ;; and strips them in the list of
+                            ;; misspelled words thus giving a
+                            ;; non-existent word.  Skip if ispell
+                            ;; is used, string is a TeX command
+                            ;; (char before beginning of word is
+                            ;; backslash) and none of the previous
+                            ;; contitions match
+                            (and (not ispell-really-aspell)
+                                 (save-excursion
+                                   (goto-char (- (nth 1 found-list) 1))
+                                   (if (looking-at "[\\]" )
+                                       t
+                                     nil))))
+                       (setq keep nil)
+                       (flyspell-word)
+                       ;; Search for next misspelled word will begin from
+                       ;; end of last validated match.
+                       (setq buffer-scan-pos (point))))
                  ;; Record if misspelling is not found and try new one
                  (add-to-list 'words-not-found
                               (concat " -> " word " - "
index 9abb65d389df11caf26d6c987010ec7037150e47..ac6afe4560842f10b74d67affa28029acc3e3f48 100644 (file)
@@ -1,3 +1,10 @@
+2005-12-27  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * url-cache.el (url-store-in-cache): Use save-current-buffer.
+
+       * url.el (url-configuration-directory): Don't autoload because the
+       default value needs to be computed at run-time, not dump-time.
+
 2005-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
 
        * url-cookie.el (url-cookie-write-file): Create parent dir.
index 40967446dd7ee35d7a459a2b92583ca80300ac69..b8c2b063adcb52ec4f18e9045c089243ca001ef4 100644 (file)
@@ -65,7 +65,7 @@ FILE can be created or overwritten."
   "Store buffer BUFF in the cache."
   (if (not (and buff (get-buffer buff)))
       nil
-    (save-excursion
+    (save-current-buffer
       (and buff (set-buffer buff))
       (let* ((fname (url-cache-create-filename (url-view-url t))))
        (if (url-cache-prepare fname)
@@ -202,5 +202,5 @@ Very fast if you have an `md5' primitive function, suitably fast otherwise."
 
 (provide 'url-cache)
 
-;;; arch-tag: 95b050a6-8e81-4f23-8e63-191b9d1d657c
+;; arch-tag: 95b050a6-8e81-4f23-8e63-191b9d1d657c
 ;;; url-cache.el ends here
index 296b2b9f868b88e7fbdab78311b9284e8ecbc97c..6d6540ac82a70da4d6bfbf3db85014683f69e363 100644 (file)
@@ -47,7 +47,6 @@
 (require 'url-util)
 
 ;; Fixme: customize? convert-standard-filename?
-;;;###autoload
 (defvar url-configuration-directory
   (cond
    ((file-directory-p "~/.url") "~/.url")
index ed6b13ac2ec730ceb018d2668d8ba9c2203f7082..bf3486a9b6746a9afb6a304233f06ffef4ee08df 100644 (file)
@@ -659,7 +659,6 @@ List of factors, used to expand/compress the time scale.  See `vc-annotate'."
 
 (defvar vc-annotate-mode-map
   (let ((m (make-sparse-keymap)))
-    (define-key m [menu-bar] (make-sparse-keymap "VC-Annotate"))
     (define-key m "A" 'vc-annotate-revision-previous-to-line)
     (define-key m "D" 'vc-annotate-show-diff-revision-at-line)
     (define-key m "J" 'vc-annotate-revision-at-line)
@@ -670,9 +669,6 @@ List of factors, used to expand/compress the time scale.  See `vc-annotate'."
     m)
   "Local keymap used for VC-Annotate mode.")
 
-(defvar vc-annotate-mode-menu nil
-  "Local keymap used for VC-Annotate mode's menu bar menu.")
-
 ;; Header-insertion hair
 
 (defcustom vc-static-header-alist
@@ -2926,19 +2922,19 @@ menu items."
        '(vc-annotate-font-lock-keywords t))
   (view-mode 1))
 
-(defun vc-annotate-display-default (&optional ratio)
+(defun vc-annotate-display-default (ratio)
   "Display the output of \\[vc-annotate] using the default color range.
-The color range is given by `vc-annotate-color-map', scaled by RATIO
-if present.  The current time is used as the offset."
-  (interactive "e")
+The color range is given by `vc-annotate-color-map', scaled by RATIO.
+The current time is used as the offset."
+  (interactive (progn (kill-local-variable 'vc-annotate-color-map) '(1.0)))
   (message "Redisplaying annotation...")
-  (vc-annotate-display
-   (if ratio (vc-annotate-time-span vc-annotate-color-map ratio)))
+  (vc-annotate-display ratio)
   (message "Redisplaying annotation...done"))
 
-(defun vc-annotate-car-last-cons (a-list)
-  "Return car of last cons in association list A-LIST."
-  (caar (last a-list)))
+(defun vc-annotate-oldest-in-map (color-map)
+  "Return the oldest time in the COLOR-MAP."
+  ;; Since entries should be sorted, we can just use the last one.
+  (caar (last color-map)))
 
 (defun vc-annotate-display-autoscale (&optional full)
   "Highlight the output of \\[vc-annotate] using an autoscaled color map.
@@ -2962,10 +2958,8 @@ cover the range from the oldest annotation to the newest."
        (if (< date oldest)
            (setq oldest date))))
     (vc-annotate-display
-     (vc-annotate-time-span            ;return the scaled colormap.
-      vc-annotate-color-map
-      (/ (-  (if full newest current) oldest)
-        (vc-annotate-car-last-cons vc-annotate-color-map)))
+     (/ (- (if full newest current) oldest)
+        (vc-annotate-oldest-in-map vc-annotate-color-map))
      (if full newest))
     (message "Redisplaying annotation...done \(%s\)"
             (if full
@@ -2982,22 +2976,17 @@ cover the range from the oldest annotation to the newest."
                  (setq vc-annotate-display-mode nil)
                  (vc-annotate-display-select))
      :style toggle :selected (null vc-annotate-display-mode)]
-    ,@(let ((oldest-in-map (vc-annotate-car-last-cons vc-annotate-color-map)))
+    ,@(let ((oldest-in-map (vc-annotate-oldest-in-map vc-annotate-color-map)))
         (mapcar (lambda (element)
                   (let ((days (* element oldest-in-map)))
-                    `([,(format "Span %.1f days" days)
-                       (unless (and (numberp vc-annotate-display-mode)
-                                    (= vc-annotate-display-mode ,days))
-                         (vc-annotate-display-select nil ,days))
-                       :style toggle :selected
-                       (and (numberp vc-annotate-display-mode)
-                            (= vc-annotate-display-mode ,days)) ])))
+                    `[,(format "Span %.1f days" days)
+                      (vc-annotate-display-select nil ,days)
+                      :style toggle :selected
+                      (eql vc-annotate-display-mode ,days) ]))
                 vc-annotate-menu-elements))
     ["Span ..."
-     (let ((days
-            (float (string-to-number
-                    (read-string "Span how many days? ")))))
-       (vc-annotate-display-select nil days)) t]
+     (vc-annotate-display-select
+      nil (float (string-to-number (read-string "Span how many days? "))))]
     "--"
     ["Span to Oldest"
      (unless (eq vc-annotate-display-mode 'scale)
@@ -3031,23 +3020,21 @@ use; you may override this using the second optional arg MODE."
   (if (not vc-annotate-parent-rev)
       (vc-annotate-mode))
   (cond ((null vc-annotate-display-mode)
-        (vc-annotate-display-default vc-annotate-ratio))
-       ;; One of the auto-scaling modes
+         ;; The ratio is global, thus relative to the global color-map.
+         (kill-local-variable 'vc-annotate-color-map)
+        (vc-annotate-display-default (or vc-annotate-ratio 1.0)))
+        ;; One of the auto-scaling modes
        ((eq vc-annotate-display-mode 'scale)
         (vc-annotate-display-autoscale))
        ((eq vc-annotate-display-mode 'fullscale)
         (vc-annotate-display-autoscale t))
        ((numberp vc-annotate-display-mode) ; A fixed number of days lookback
         (vc-annotate-display-default
-         (/ vc-annotate-display-mode (vc-annotate-car-last-cons
-                                      vc-annotate-color-map))))
+         (/ vc-annotate-display-mode
+             (vc-annotate-oldest-in-map vc-annotate-color-map))))
        (t (error "No such display mode: %s"
                  vc-annotate-display-mode))))
 
-;;;; (defun vc-BACKEND-annotate-command (file buffer) ...)
-;;;;  Execute "annotate" on FILE by using `call-process' and insert
-;;;;  the contents in BUFFER.
-
 ;;;###autoload
 (defun vc-annotate (file rev &optional display-mode buf)
   "Display the edit history of the current file using colors.
@@ -3100,9 +3087,6 @@ colors. `vc-annotate-background' specifies the background color."
              (rename-buffer temp-buffer-name t)
              ;; In case it had to be uniquified.
              (setq temp-buffer-name (buffer-name))))
-    (if (not (vc-find-backend-function vc-annotate-backend 'annotate-command))
-       (error "Sorry, annotating is not implemented for %s"
-              vc-annotate-backend))
     (with-output-to-temp-buffer temp-buffer-name
       (vc-call annotate-command file (get-buffer temp-buffer-name) rev))
     (with-current-buffer temp-buffer-name
@@ -3143,9 +3127,6 @@ versions after."
 (defun vc-annotate-extract-revision-at-line ()
   "Extract the revision number of the current line."
   ;; This function must be invoked from a buffer in vc-annotate-mode
-  (save-window-excursion
-    (vc-ensure-vc-buffer)
-    (setq vc-annotate-backend (vc-backend buffer-file-name)))
   (vc-call-backend vc-annotate-backend 'annotate-extract-revision-at-line))
 
 (defun vc-annotate-revision-at-line ()
@@ -3243,18 +3224,6 @@ revision."
                                       (previous-line)
                                       (line-number-at-pos))))))))
 
-(defun vc-annotate-time-span (a-list span &optional quantize)
-  "Apply factor SPAN to the time-span of association list A-LIST.
-Return the new alist.
-Optionally quantize to the factor of QUANTIZE."
-  ;; Apply span to each car of every cons
-  (if (not (eq nil a-list))
-      (append (list (cons (* (car (car a-list)) span)
-                         (cdr (car a-list))))
-             (vc-annotate-time-span (nthcdr (or quantize ; optional
-                                                1) ; Default to cdr
-                                            a-list) span quantize))))
-
 (defun vc-annotate-compcar (threshold a-list)
   "Test successive cons cells of A-LIST against THRESHOLD.
 Return the first cons cell with a car that is not less than THRESHOLD,
@@ -3289,12 +3258,14 @@ or OFFSET if present."
 
 (defvar vc-annotate-offset nil)
 
-(defun vc-annotate-display (&optional color-map offset)
+(defun vc-annotate-display (ratio &optional offset)
   "Highlight `vc-annotate' output in the current buffer.
-COLOR-MAP, if present, overrides `vc-annotate-color-map'.
+RATIO, is the expansion that should be applied to `vc-annotate-color-map'.
 The annotations are relative to the current time, unless overridden by OFFSET."
-  (if (and color-map (not (eq color-map vc-annotate-color-map)))
-      (set (make-local-variable 'vc-annotate-color-map) color-map))
+  (if (/= ratio 1.0)
+      (set (make-local-variable 'vc-annotate-color-map)
+           (mapcar (lambda (elem) (cons (* (car elem) ratio) (cdr elem)))
+                   vc-annotate-color-map)))
   (set (make-local-variable 'vc-annotate-offset) offset)
   (font-lock-mode 1))
 
index 0f350aa4480d629596a0bc9f77cca84303190892..e812c834c013dda7b2e905f76429cd6c3378c0cc 100644 (file)
@@ -1,3 +1,8 @@
+2005-12-28  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * minibuf.texi (Basic Completion): Update lazy-completion-table
+       examples for removal of ARGS argument.
+
 2005-12-23  Richard M. Stallman  <rms@gnu.org>
 
        * text.texi (Undo): Restore some explanation from the version
index 3517cb8092b91138cae38867f574944bac84148a..6f98785f69ffde0b31830f18832d2bf6ec165fc5 100644 (file)
@@ -768,22 +768,19 @@ in this list, with @code{case-fold-search} (@pxref{Searching and Case})
 bound to the value of @code{completion-ignore-case}.
 @end defvar
 
-@defmac lazy-completion-table var fun &rest args
+@defmac lazy-completion-table var fun
 This macro provides a way to initialize the variable @var{var} as a
 collection for completion in a lazy way, not computing its actual
 contents until they are first needed.  You use this macro to produce a
 value that you store in @var{var}.  The actual computation of the
 proper value is done the first time you do completion using @var{var}.
-It is done by calling @var{fun} with the arguments @var{args}.  The
+It is done by calling @var{fun} with no arguments.  The
 value @var{fun} returns becomes the permanent value of @var{var}.
 
-Here are two examples of use:
+Here is an example of use:
 
 @smallexample
-(defvar foo (lazy-completion-table foo make-my-alist 'global))
-
-(make-local-variable 'bar)
-(setq bar (lazy-completion-table foo make-my-alist 'local)
+(defvar foo (lazy-completion-table foo make-my-alist))
 @end smallexample
 @end defmac
 
@@ -954,7 +951,7 @@ uses this to highlight text in the completion list for better visual
 feedback.  This is not needed in the minibuffer; for minibuffer
 completion, you can pass @code{nil}.
 
-This function is called by @code{minibuffer-completion-help}.  The 
+This function is called by @code{minibuffer-completion-help}.  The
 most common way to use it is together with
 @code{with-output-to-temp-buffer}, like this:
 
index a5774d68c87a0b07b26c34da69bd35d4e4a78488..3c4b718c796d8ce5c1ab795c8d7426e75272ef8e 100644 (file)
@@ -1,3 +1,13 @@
+2005-12-28  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * org.texi: Remove blank line in @direntry.  It is non-standard
+       and recursively produces blank lines all over the dir file (when
+       using Texinfo 4.8).
+
+2005-12-27  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * frames.texi (Dialog Boxes): Add x-gtk-show-hidden-files.
+
 2005-12-24  Chong Yidong  <cyd@stupidchicken.com>
 
        * custom.texi (Custom Themes): `load-theme' always loads.
index 9d24f5ca90e6de98841c63b9399ca295b97921fb..dd076262e820f5fd2abde2718e1ffe4e0b6e09f5 100644 (file)
@@ -994,6 +994,12 @@ by setting the variable @code{x-use-old-gtk-file-dialog} to a non-@code{nil}
 value.  If Emacs is built with a Gtk+ version that has only one file dialog,
 the setting of this variable has no effect.
 
+@vindex x-gtk-show-hidden-files
+  For Gtk+ version 2.4 and newer, Emacs use the Gtk+ file chooser dialog.
+Emacs adds a toggle button that enables and disables showing of hidden files
+(files starting with a dot) in that dialog.  This variable controls if
+hidden files should be shown by default or not.
+
 @node Tooltips
 @section Tooltips
 @cindex tooltips
index 5056119b3b2501c0660567f3fb134158c0110ea0..6d7d831a98f2033eadd089b9778ed2025d70175d 100644 (file)
@@ -9,8 +9,7 @@
 
 @dircategory Emacs
 @direntry
-* Org Mode: (org).     outline-based notes management and organizer
-
+* Org Mode: (org).     outline-based notes management and organizer.
 @end direntry
 
 @c Version and Contact Info
index f14f216f1d33fdc5393a32ab513db00b0b37cd34..4f6cb895004ede17a7fb17e34b3d1dc10970b2c1 100644 (file)
@@ -1,3 +1,69 @@
+2005-12-28  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * gtkutil.c (xg_get_file_with_chooser): Changed message shown
+       in file chooser.
+
+2005-12-27  Richard M. Stallman  <rms@gnu.org>
+
+       * lread.c (readevalloop): Set PT and ZV in the proper buffer,
+       not the current one.
+
+       * minibuf.c (Fminibuffer_message): Doc fix.
+       (read_minibuf): Set current_buffer->enable_multibyte_characters sooner.
+
+       * eval.c (do_autoload): Ignore elements of Vautoload_queue
+       where car is not symbol.
+
+2005-12-27  Kenichi Handa  <handa@m17n.org>
+
+       * charset.c (lisp_string_width): Check multibyteness of STRING.
+
+2005-12-27  Jan Dj\e,Ad\e(Brv  <jan.h.d@swipnet.se>
+
+       * xfns.c: x_show_hidden_files, new variable.
+       (syms_of_xfns): Defvar it.
+
+       * gtkutil.c (xg_toggle_visibility_cb): New function.
+       (xg_get_file_with_chooser): Add toggle hidden files and a message
+       to the new file chooser dialog.  Show hidden files if
+       x_show_hidden_files is non-zero.
+
+2005-12-26  Richard M. Stallman  <rms@gnu.org>
+
+       * keyboard.h: Undo previous change.
+
+       * Makefile.in (undo.o): Undo previous change.
+
+       * undo.c: Undo previous change.
+
+2005-12-26  Luc Teirlinck  <teirllm@auburn.edu>
+
+       * keyboard.h: extern last_point_position_window.
+
+       * undo.c: include keyboard.h.
+
+       * Makefile.in (undo.o): Depend on keyboard.h.
+
+2005-12-26  Richard M. Stallman  <rms@gnu.org>
+
+       * commands.h (last_point_position_window): Declare.
+
+       * undo.c: Depend on window.h.
+       (record_point): Save old point from the correct window.
+
+       * keyboard.c (last_point_position_window): New variable.
+       (command_loop_1): Set last_point_position_window.
+       (syms_of_keyboard): Init it.
+
+       * Makefile.in (undo.o): Depend on window.h.
+
+2005-12-25  Richard M. Stallman  <rms@gnu.org>
+
+       * eval.c (un_autoload): Expect (0 . OFEATURES) in Vautoload_queue
+       to undo a `provide'.
+
+       * fns.c (Fprovide): Store (0 . OFEATURES) in Vautoload_queue.
+
 2005-12-25  Giorgos Keramidas  <keramida@ceid.upatras.gr>
 
        * m/amdx86-64.h [__FreeBSD__] (START_FILES, LIB_STANDARD):
index 1054b76ac143de4b8c38bed0ed333223d23a02f7..4b40e5acecbaecc3d794696f60137b163cdfab09 100644 (file)
@@ -1175,7 +1175,7 @@ terminal.o: terminal.c frame.h termchar.h termhooks.h charset.h coding.h \
    keyboard.h $(config_h)
 terminfo.o: terminfo.c $(config_h)
 tparam.o: tparam.c $(config_h)
-undo.o: undo.c buffer.h commands.h $(config_h)
+undo.o: undo.c buffer.h commands.h window.h $(config_h)
 /* This hack is to discard any space that cpp might put at the beginning
    of UNEXEC when substituting it in.  */
 UNEXEC_ALIAS=UNEXEC
index 2c985b14dbc777f0835ee012e56ebbc02210cd11..fb9804c03060f4b76dbf34352836866822bf8823 100644 (file)
@@ -1344,6 +1344,10 @@ lisp_string_width (string, precision, nchars, nbytes)
 {
   int len = SCHARS (string);
   int len_byte = SBYTES (string);
+  /* This set multibyte to 0 even if STRING is multibyte when it
+     contains only ascii and eight-bit-graphic, but that's
+     intentional.  */
+  int multibyte = len < len_byte;
   const unsigned char *str = SDATA (string);
   int i = 0, i_byte = 0;
   int width = 0;
@@ -1366,8 +1370,12 @@ lisp_string_width (string, precision, nchars, nbytes)
        }
       else if (dp)
        {
-         int c = STRING_CHAR_AND_LENGTH (str + i_byte, len - i_byte, bytes);
+         int c;
 
+         if (multibyte)
+           c = STRING_CHAR_AND_LENGTH (str + i_byte, len - i_byte, bytes);
+         else
+           c = str[i_byte], bytes = 1;
          chars = 1;
          val = DISP_CHAR_VECTOR (dp, c);
          if (VECTORP (val))
@@ -1378,7 +1386,10 @@ lisp_string_width (string, precision, nchars, nbytes)
       else
        {
          chars = 1;
-         PARSE_MULTIBYTE_SEQ (str + i_byte, len_byte - i_byte, bytes);
+         if (multibyte)
+           PARSE_MULTIBYTE_SEQ (str + i_byte, len_byte - i_byte, bytes);
+         else
+           bytes = 1;
          thiswidth = ONE_BYTE_CHAR_WIDTH (str[i_byte]);
        }
 
index c1330af273efca5241c99a15b4a40b9d13cb5c04..ed46141bf11ce5c682d2331c3ec5a610cfd8738c 100644 (file)
@@ -75,12 +75,15 @@ extern Lisp_Object Vthis_command;
    events until a non-ASCII event is acceptable as input.  */
 extern Lisp_Object unread_switch_frame;
 
-/* The value of point when the last command was executed.  */
+/* The value of point when the last command was started.  */
 extern int last_point_position;
 
 /* The buffer that was current when the last command was started.  */
 extern Lisp_Object last_point_position_buffer;
 
+/* The window that was selected when the last command was started.  */
+extern Lisp_Object last_point_position_window;
+
 /* Nonzero means ^G can quit instantly */
 extern int immediate_quit;
 
index 86859e4ddae72c9931c94f87b684a9300cc7e63b..a6c58bc2425930a7370c1557ddf07bac1b925af7 100644 (file)
@@ -103,7 +103,7 @@ Lisp_Object Vrun_hooks;
 /* Non-nil means record all fset's and provide's, to be undone
    if the file being autoloaded is not fully loaded.
    They are recorded by being consed onto the front of Vautoload_queue:
-   (FUN . ODEF) for a defun, (OFEATURES . nil) for a provide.  */
+   (FUN . ODEF) for a defun, (0 . OFEATURES) for a provide.  */
 
 Lisp_Object Vautoload_queue;
 
@@ -2022,8 +2022,8 @@ un_autoload (oldqueue)
       first = XCAR (queue);
       second = Fcdr (first);
       first = Fcar (first);
-      if (EQ (second, Qnil))
-       Vfeatures = first;
+      if (EQ (first, make_number (0)))
+       Vfeatures = second;
       else
        Ffset (first, second);
       queue = XCDR (queue);
@@ -2069,7 +2069,7 @@ do_autoload (fundef, funname)
       second = Fcdr (first);
       first = Fcar (first);
 
-      if (CONSP (second) && EQ (XCAR (second), Qautoload))
+      if (SYMBOLP (first) && CONSP (second) && EQ (XCAR (second), Qautoload))
        Fput (first, Qautoload, (XCDR (second)));
 
       queue = XCDR (queue);
index d30d49a80c724dae228019d3bcd4821ecad3505f..70b9cf0d30f39b738cc5ba13d49bba3ddbc32eda 100644 (file)
--- a/src/fns.c
+++ b/src/fns.c
@@ -3519,7 +3519,8 @@ particular subfeatures supported in this version of FEATURE.  */)
   CHECK_SYMBOL (feature);
   CHECK_LIST (subfeatures);
   if (!NILP (Vautoload_queue))
-    Vautoload_queue = Fcons (Fcons (Vfeatures, Qnil), Vautoload_queue);
+    Vautoload_queue = Fcons (Fcons (make_number (0), Vfeatures),
+                            Vautoload_queue);
   tem = Fmemq (feature, Vfeatures);
   if (NILP (tem))
     Vfeatures = Fcons (feature, Vfeatures);
index 9da3c5bf45728cbefe1e4ebf53acb266103e9e04..cb8e5a21860cb87e2552293381a52392eee150df 100644 (file)
@@ -1220,6 +1220,19 @@ xg_get_file_name_from_chooser (w)
   return gtk_file_chooser_get_filename (GTK_FILE_CHOOSER (w));
 }
 
+static void
+xg_toggle_visibility_cb (widget, data)
+     GtkWidget *widget;
+     gpointer data;
+{
+  GtkFileChooser *dialog = GTK_FILE_CHOOSER (data);
+  gboolean visible;
+  extern int x_gtk_show_hidden_files;
+  g_object_get (G_OBJECT (dialog), "show-hidden", &visible, NULL);
+  g_object_set (G_OBJECT (dialog), "show-hidden", !visible, NULL);
+  x_gtk_show_hidden_files = !visible;
+}
+
 /* Read a file name from the user using a file chooser dialog.
    F is the current frame.
    PROMPT is a prompt to show to the user.  May not be NULL.
@@ -1239,11 +1252,14 @@ xg_get_file_with_chooser (f, prompt, default_filename,
      int mustmatch_p, only_dir_p;
      xg_get_file_func *func;
 {
-  GtkWidget *filewin;
+  char message[1024];
+
+  GtkWidget *filewin, *wtoggle, *wbox, *wmessage;
   GtkWindow *gwin = GTK_WINDOW (FRAME_GTK_OUTER_WIDGET (f));
   GtkFileChooserAction action = (mustmatch_p ?
                                  GTK_FILE_CHOOSER_ACTION_OPEN :
                                  GTK_FILE_CHOOSER_ACTION_SAVE);
+  extern int x_gtk_show_hidden_files;
 
   if (only_dir_p)
     action = GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER;
@@ -1256,6 +1272,31 @@ xg_get_file_with_chooser (f, prompt, default_filename,
                                          NULL);
   gtk_file_chooser_set_local_only (GTK_FILE_CHOOSER (filewin), TRUE);
 
+  wbox = gtk_vbox_new (FALSE, 0);
+  gtk_widget_show (wbox);
+  wtoggle = gtk_check_button_new_with_label ("Show hidden files.");
+  
+  if (x_gtk_show_hidden_files) 
+    {
+      g_object_set (G_OBJECT (filewin), "show-hidden", TRUE, NULL);
+      gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (wtoggle), TRUE);
+    }
+  gtk_widget_show (wtoggle);
+  g_signal_connect (G_OBJECT (wtoggle), "clicked",
+                    G_CALLBACK (xg_toggle_visibility_cb), G_OBJECT(filewin));
+
+  message[0] = '\0';
+  if (action != GTK_FILE_CHOOSER_ACTION_SAVE)
+    strcat (message, "\nType C-l to display a file name text entry box.\n");
+  strcat (message, "\nIf you don't like this file selector, customize "
+          "use-file-dialog\nto turn it off, or type C-x C-f to visit files.");
+
+  wmessage = gtk_label_new (message);
+  gtk_widget_show (wmessage);
+  gtk_box_pack_start (GTK_BOX (wbox), wtoggle, FALSE, FALSE, 0);
+  gtk_box_pack_start (GTK_BOX (wbox), wmessage, FALSE, FALSE, 0);
+  gtk_file_chooser_set_extra_widget (GTK_FILE_CHOOSER (filewin), wbox);
+
   if (default_filename)
     {
       Lisp_Object file;
index 76ff053410e6e4b6b815691773696e357e06da19..c47fda8223c2087a777c5af097267970c2e5afa3 100644 (file)
@@ -377,12 +377,15 @@ Lisp_Object real_this_command;
    command is stored in this-original-command.  It is nil otherwise.  */
 Lisp_Object Vthis_original_command;
 
-/* The value of point when the last command was executed.  */
+/* The value of point when the last command was started.  */
 int last_point_position;
 
 /* The buffer that was current when the last command was started.  */
 Lisp_Object last_point_position_buffer;
 
+/* The window that was selected when the last command was started.  */
+Lisp_Object last_point_position_window;
+
 /* The frame in which the last input event occurred, or Qmacro if the
    last event came from a macro.  We use this to determine when to
    generate switch-frame events.  This may be cleared by functions
@@ -1619,6 +1622,7 @@ command_loop_1 ()
       prev_buffer = current_buffer;
       prev_modiff = MODIFF;
       last_point_position = PT;
+      last_point_position_window = selected_window;
       XSETBUFFER (last_point_position_buffer, prev_buffer);
 
       /* By default, we adjust point to a boundary of a region that
@@ -11298,6 +11302,7 @@ syms_of_keyboard ()
   Fset (Qinput_method_use_echo_area, Qnil);
 
   last_point_position_buffer = Qnil;
+  last_point_position_window = Qnil;
 
   {
     struct event_head *p;
index 48801dff2168a9bdae37d4ad3a0d323502fe6c08..45dbd495d288f28843ecf720bbfdbff38baf6689 100644 (file)
@@ -312,7 +312,6 @@ extern Lisp_Object Vfunction_key_map;
 /* Parent keymap of terminal-local key-translation-map instances.  */
 extern Lisp_Object Vkey_translation_map;
 
-
 extern int parse_menu_item P_ ((Lisp_Object, int, int));
 
 extern void echo_now P_ ((void));
index e6f1987a50b4d30a3feeb1567c2b6929bce16ea4..6555737fa55990a8ace97f3ce12d5fba753e060f 100644 (file)
@@ -1345,10 +1345,20 @@ readevalloop (readcharfun, stream, sourcename, evalfun,
       if (b != 0 && NILP (b->name))
        error ("Reading from killed buffer");
 
+
       if (!NILP (start))
        {
+         /* Switch to the buffer we are reading from.  */
+         record_unwind_protect (save_excursion_restore, save_excursion_save ());
+         set_buffer_internal (b);
+
+         /* Save point in it.  */
          record_unwind_protect (save_excursion_restore, save_excursion_save ());
+         /* Save ZV in it.  */
          record_unwind_protect (save_restriction_restore, save_restriction_save ());
+         /* Those get unbound after we read one expression.  */
+
+         /* Set point and ZV around stuff to be read.  */
          Fgoto_char (start);
          Fnarrow_to_region (make_number (BEGV), end);
        }
index af7fa60aba48e9cc67aea199d2e2bbabe94666d6..4025226574d7f2e727b569e2d230dd37b7c0177f 100644 (file)
@@ -602,6 +602,10 @@ read_minibuf (map, initial, prompt, backup_n, expflag,
   minibuffer = get_minibuffer (minibuf_level);
   Fset_buffer (minibuffer);
 
+  /* If appropriate, copy enable-multibyte-characters into the minibuffer.  */
+  if (inherit_input_method)
+    current_buffer->enable_multibyte_characters = enable_multibyte;
+
   /* The current buffer's default directory is usually the right thing
      for our minibuffer here.  However, if you're typing a command at
      a minibuffer-only frame when minibuf_level is zero, then buf IS
@@ -673,10 +677,6 @@ read_minibuf (map, initial, prompt, backup_n, expflag,
 
   minibuf_prompt_width = (int) current_column (); /* iftc */
 
-  /* If appropriate, copy enable-multibyte-characters into the minibuffer.  */
-  if (inherit_input_method)
-    current_buffer->enable_multibyte_characters = enable_multibyte;
-
   /* Put in the initial input.  */
   if (!NILP (initial))
     {
@@ -1244,11 +1244,11 @@ is used to further constrain the set of candidates.  */)
   int bestmatchsize = 0;
   /* These are in bytes, too.  */
   int compare, matchsize;
-  int type = HASH_TABLE_P (alist) ? 3
-    : VECTORP (alist) ? 2
-    : NILP (alist) || (CONSP (alist)
-                      && (!SYMBOLP (XCAR (alist))
-                          || NILP (XCAR (alist))));
+  int type = (HASH_TABLE_P (alist) ? 3
+             : VECTORP (alist) ? 2
+             : NILP (alist) || (CONSP (alist)
+                                && (!SYMBOLP (XCAR (alist))
+                                    || NILP (XCAR (alist)))));
   int index = 0, obsize = 0;
   int matchcount = 0;
   int bindcount = -1;
@@ -2692,7 +2692,7 @@ temp_echo_area_glyphs (string)
 DEFUN ("minibuffer-message", Fminibuffer_message, Sminibuffer_message,
        1, 1, 0,
        doc: /* Temporarily display STRING at the end of the minibuffer.
-The text is displayed for two seconds,
+The text is displayed for a period controlled by `minibuffer-message-timeout',
 or until the next input event arrives, whichever comes first.  */)
      (string)
      Lisp_Object string;
index ecbb714fddd4cde10a15198d4c9c3a36748013b5..bf774affac5d1204e4c3fffeaf7d7eacf476b0e8 100644 (file)
@@ -24,6 +24,7 @@ Boston, MA 02110-1301, USA.  */
 #include "lisp.h"
 #include "buffer.h"
 #include "commands.h"
+#include "window.h"
 
 /* Limits controlling how much undo information to keep.  */
 
@@ -100,12 +101,19 @@ record_point (pt)
   /* If we are just after an undo boundary, and
      point wasn't at start of deleted range, record where it was.  */
   if (at_boundary
-      && last_point_position != pt
-      /* If we're called from batch mode, this could be nil.  */
       && BUFFERP (last_point_position_buffer)
+      /* If we're called from batch mode, this could be nil.  */
       && current_buffer == XBUFFER (last_point_position_buffer))
-    current_buffer->undo_list
-      = Fcons (make_number (last_point_position), current_buffer->undo_list);
+    {
+      /* If we have switched windows, use the point value
+        from the window we are in.  */
+      if (! EQ (last_point_position_window, selected_window))
+       last_point_position = marker_position (XWINDOW (selected_window)->pointm);
+
+      if (last_point_position != pt)
+       current_buffer->undo_list
+         = Fcons (make_number (last_point_position), current_buffer->undo_list);
+    }
 }
 
 /* Record an insertion that just happened or is about to happen,
index 2aa237ec549738de2f7e844a0908120082a23040..7bf302594be0da51db2475a672edf51f108b46d5 100644 (file)
@@ -155,6 +155,10 @@ int display_hourglass_p;
 
 int x_use_old_gtk_file_dialog;
 
+/* If non-zero, by default show hidden files in the GTK file chooser.  */
+
+int x_gtk_show_hidden_files;
+
 /* The background and shape of the mouse pointer, and shape when not
    over text or in the modeline.  */
 
@@ -5790,6 +5794,12 @@ chooser is used instead.  To turn off all file dialogs set the
 variable `use-file-dialog'.  */);
   x_use_old_gtk_file_dialog = 0;
 
+  DEFVAR_BOOL ("x-gtk-show-hidden-files", &x_gtk_show_hidden_files,
+    doc: /* *If non-nil, the GTK file chooser will by default show hidden files.
+Note that this is just the default, there is a toggle button on the file
+chooser to show or not show hidden files on a case by case basis.  */);
+  x_gtk_show_hidden_files = 0;
+
   Fprovide (intern ("x"), Qnil);
 
 #ifdef USE_X_TOOLKIT