# HG changeset patch # User Miles Bader # Date 1139616679 0 # Node ID 4b3d3945115054276670b934ddb7f68675a05217 # Parent c5406394f567f774c0d7c0e01efdedd776c52c28# Parent b3bce12214a9108aa0517149b899bba82ae2b212 Revision: emacs@sv.gnu.org/emacs--unicode--0--patch-14 Merge from emacs--devo--0 Patches applied: * emacs--devo--0 (patch 58-65) - Update from CVS - Merge from gnus--rel--5.10 * gnus--rel--5.10 (patch 22-28) - Update from CVS - Merge from emacs--devo--0 - Update from CVS: lisp/gnus.el: Remove bogus comment. diff -r c5406394f567 -r 4b3d39451150 MAINTAINERS --- a/MAINTAINERS Wed Feb 08 04:26:44 2006 +0000 +++ b/MAINTAINERS Sat Feb 11 00:11:19 2006 +0000 @@ -65,6 +65,12 @@ lisp/minibuf-eldef.el lisp/rfn-eshadow.el +Jay Belanger + Calc + lisp/calc/* + etc/calccard.tex + man/calc.texi + ============================================================================== 2. ============================================================================== diff -r c5406394f567 -r 4b3d39451150 admin/FOR-RELEASE --- a/admin/FOR-RELEASE Wed Feb 08 04:26:44 2006 +0000 +++ b/admin/FOR-RELEASE Sat Feb 11 00:11:19 2006 +0000 @@ -69,7 +69,7 @@ lib-src done ttn lisp done ttn lisp/calc done Jay Belanger -lisp/calendar working Glenn Morris +lisp/calendar done Glenn Morris lisp/emacs-lisp done ttn lisp/emulation done ttn lisp/eshell done ttn @@ -81,7 +81,7 @@ lisp/net done ttn lisp/obsolete done ttn lisp/play done Romain Francoise -lisp/progmodes working Nick Roberts +lisp/progmodes done Nick Roberts lisp/term done ttn lisp/textmodes done ttn lisp/url done ttn diff -r c5406394f567 -r 4b3d39451150 etc/ChangeLog --- a/etc/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/etc/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,3 +1,11 @@ +2006-02-10 YAMAMOTO Mitsuharu + + * PROBLEMS (Mac OS X): Add QuickTime 7.0.4 / Mac OS X 10.3.9 breakage. + +2006-02-09 Mathias Dahl + + * NEWS: New key bindings for Tumme in Dired. + 2006-02-05 Jay Belanger * calccard.tex: Update copyright year. diff -r c5406394f567 -r 4b3d39451150 etc/NEWS --- a/etc/NEWS Wed Feb 08 04:26:44 2006 +0000 +++ b/etc/NEWS Sat Feb 11 00:11:19 2006 +0000 @@ -1908,6 +1908,12 @@ * Changes in Specialized Modes and Packages in Emacs 22.1: +** Changes in Dired +*** Bindings for Tumme added +Several new keybindings, all starting with the C-t prefix, have been +added to Dired. They are all bound to commands in Tumme. As a starting +point, mark some image files in a dired buffer and do C-t d to display +thumbnails of them in a separate buffer. ** Changes in Hi Lock: +++ diff -r c5406394f567 -r 4b3d39451150 etc/PROBLEMS --- a/etc/PROBLEMS Wed Feb 08 04:26:44 2006 +0000 +++ b/etc/PROBLEMS Sat Feb 11 00:11:19 2006 +0000 @@ -1778,6 +1778,13 @@ Mac OS X that causes process output to be truncated. To avoid this, leave process-connection-type set to its default value of nil. +*** Mac OS X 10.3.9 (Carbon): QuickTime 7.0.4 updater breaks build. + +On the above environment, build fails at the link stage with the +message like "Undefined symbols: _HICopyAccessibilityActionDescription +referenced from QuickTime expected to be defined in Carbon". A +workaround is to use QuickTime 7.0.1 reinstaller. + ** FreeBSD *** FreeBSD 2.1.5: useless symbolic links remain in /tmp or other diff -r c5406394f567 -r 4b3d39451150 lisp/ChangeLog --- a/lisp/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,3 +1,109 @@ +2006-02-10 Juanma Barranquero + + * desktop.el (desktop-outvar): Fix typo. + (desktop-save-buffer-p): Doc fix. + + * subr.el (substitute-key-definition): Fix typo. + +2006-02-10 YAMAMOTO Mitsuharu + + * frame.el (select-frame-set-input-focus): Call x-focus-frame also + when window-system is mac. + + * term/mac-win.el (fontset-standard): Rename from "fontset-mac". + +2006-02-10 Kim F. Storm + + * subr.el (substitute-key-definition-key): Pass t for NOERROR to + indirect-function instead of using condition-case. + +2006-02-10 Mathias Dahl + + * tumme.el (tumme-copy-with-exif-file-name): Tried to make + docstring less `colloquial'... + +2006-02-09 Mathias Dahl + + * tumme.el: Added a couple of todo items. + +2006-02-09 Lars Hansen + + * hilit-chg.el: Add highlight-changes-mode to desktop-locals-to-save. + (highlight-changes-mode): Don't change desktop-locals-to-save. + +2006-02-09 Chong Yidong + + * image-mode.el (image-toggle-display): Clear image cache if using + filename. + +2006-02-09 Masatake YAMATO + + * dired-x.el (dired-guess-shell-alist-default): Add .man as + a `dired-man' target. + + * progmodes/autoconf.el (autoconf-font-lock-keywords): Check start + boundary of symbols. + +2006-02-08 Peter Doornbosch (tiny change) + + * vc-svn.el (vc-svn-print-log): Show recent commits as well. + +2006-02-09 Juanma Barranquero + + * hilit-chg.el (hilit-chg-update-all-buffers): Use `mapc' instead of + `mapcar'; return nil. + +2006-02-08 Chong Yidong + + * mouse.el (mouse-drag-track): Don't change window if we rebind to + some other event. + +2006-02-08 Ryan Yeske + + * net/rcirc.el (rcirc-startup-channels-alist): + Add irc.freenode.net and #emacs as defaults. + (rcirc-ignore-all-activity-flag): Remove variable. + (rcirc-authinfo): New variable. + (rcirc-authinfo-filename): Remove variable. + (rcirc-always-use-server-buffer-flag): New flag. + (rcirc): M-x rcirc will automatically connect without prompting. + C-u M-x rcirc will prompt. Use rcirc-connect to create a + connection in lisp. + (rcirc-process-server-response-1): Remove everything but the nick + portion of the sender so it doesn't need to be done everywhere + else. Update related code. + (global-map): Remove global keybindings. + (rcirc-get-buffer-create): Make sure rcirc-topic is set. + (rcirc-send-input): Split into several functions. + (rcirc-process-input-line, rcirc-process-message) + (rcirc-process-command): New functions. + (rcirc-target-buffer): New function to determine where to route + messages. + (rcirc-user-nick): Save match data. + (rcirc-toggle-ignore-buffer-activity) + (rcirc-update-activity-string): Remove global ignore functionality, + which can be done now by toggling rcirc-track-minor-mode. + (rcirc-track-minor-mode-map): New keymap. + (rcirc-track-minor-mode): New minor-mode. + (ignore): Make the ignore output nicer. Always print it when + adding or removing nicks. + (rcirc-url-regexp): Improve. + (rcirc-mangle-text): Remove properties before using text in the + modeline. + (rcirc-authenticate): Authentication data comes from + rcirc-authinfo, not the file pointed to by rcirc-authinfo-file. + (rcirc-server-prefix): Inherit from rcirc-server. + +2006-02-08 Mathias Megyei (tiny change) + + * Makefile.in (compile): Append "|| true" to the end of the `find' + command, like compile-always does. + +2006-02-08 Sam Steingold + + * net/tramp.el (tramp-maybe-open-connection): Do not wait for + output from a dead connection. + 2006-02-07 Mathias Dahl * dired.el (dired-mode-map): Add more bindings for tumme. @@ -351,7 +457,7 @@ * international/latexenc.el: Add a suitable `coding:' tag. (latexenc-find-file-coding-system): Undo last change. -2006-01-27 Arne J,bx(Brgensen +2006-01-27 Arne J,Ax(Brgensen * international/latexenc.el (latexenc-find-file-coding-system): Make sure latexenc-main-file is a regular file and is readable. diff -r c5406394f567 -r 4b3d39451150 lisp/Makefile.in --- a/lisp/Makefile.in Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/Makefile.in Sat Feb 11 00:11:19 2006 +0000 @@ -155,8 +155,10 @@ # subdirectories, to make sure require's and load's in the files being # compiled find the right files. +# `|| true' below prevents old Bash versions from getting confused +# by an error. compile: $(lisp)/subdirs.el mh-autoloads doit - find $(lisp) -name "*.elc" -print | xargs chmod +w >/dev/null 2>&1; \ + find $(lisp) -name "*.elc" -print | xargs chmod +w >/dev/null 2>&1 || true; \ wd=$(lisp); $(setwins); \ els=`echo $$wins | tr ' \011' '\012\012' | \ sed -e 's|\(.\)$$|\1/|' -e 's|^\./||' -e 's|$$|*.el|'`; \ diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/appt.el --- a/lisp/calendar/appt.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/appt.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; appt.el --- appointment notification functions -;; Copyright (C) 1989, 1990, 1994, 1998, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1989, 1990, 1994, 1998, 2001, 2002, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Neil Mager ;; Maintainer: Glenn Morris diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-bahai.el --- a/lisp/calendar/cal-bahai.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-bahai.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,7 @@ ;;; cal-bahai.el --- calendar functions for the Baha'i calendar. -;; Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Author: John Wiegley ;; Keywords: calendar diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-china.el --- a/lisp/calendar/cal-china.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-china.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-china.el --- calendar functions for the Chinese calendar -;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-coptic.el --- a/lisp/calendar/cal-coptic.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-coptic.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-coptic.el --- calendar functions for the Coptic/Ethiopic calendars -;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-dst.el --- a/lisp/calendar/cal-dst.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-dst.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cal-dst.el --- calendar functions for daylight savings rules -;; Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1993, 1994, 1995, 1996, 2001, 2002, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Paul Eggert ;; Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-french.el --- a/lisp/calendar/cal-french.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-french.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cal-french.el --- calendar functions for the French Revolutionary calendar ;; Copyright (C) 1988, 1989, 1992, 1994, 1995, 1997, 2001, 2002, 2003, -;; 2004, 2005 Free Software Foundation, Inc. +;; 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Edward M. Reingold ;; Maintainer: Glenn Morris diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-hebrew.el --- a/lisp/calendar/cal-hebrew.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-hebrew.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-hebrew.el --- calendar functions for the Hebrew calendar -;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Nachum Dershowitz diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-islam.el --- a/lisp/calendar/cal-islam.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-islam.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-islam.el --- calendar functions for the Islamic calendar -;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-iso.el --- a/lisp/calendar/cal-iso.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-iso.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-iso.el --- calendar functions for the ISO calendar -;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-julian.el --- a/lisp/calendar/cal-julian.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-julian.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-julian.el --- calendar functions for the Julian calendar -;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-mayan.el --- a/lisp/calendar/cal-mayan.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-mayan.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cal-mayan.el --- calendar functions for the Mayan calendars -;; Copyright (C) 1992, 1993, 1995, 1997, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1992, 1993, 1995, 1997, 2001, 2002, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Stewart M. Clamen ;; Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-move.el --- a/lisp/calendar/cal-move.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-move.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-move.el --- calendar functions for movement in the calendar -;; Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-persia.el --- a/lisp/calendar/cal-persia.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-persia.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-persia.el --- calendar functions for the Persian calendar -;; Copyright (C) 1996, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1996, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Edward M. Reingold diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-tex.el --- a/lisp/calendar/cal-tex.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-tex.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-tex.el --- calendar functions for printing calendars with LaTeX -;; Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1995, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Steve Fisk diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/cal-x.el --- a/lisp/calendar/cal-x.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/cal-x.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cal-x.el --- calendar windows in dedicated frames in X -;; Copyright (C) 1994, 1995, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1994, 1995, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Michael Kifer diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/diary-lib.el --- a/lisp/calendar/diary-lib.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/diary-lib.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; diary-lib.el --- diary functions ;; Copyright (C) 1989, 1990, 1992, 1993, 1994, 1995, 2001, 2002, 2003, -;; 2004, 2005 Free Software Foundation, Inc. +;; 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Edward M. Reingold ;; Maintainer: Glenn Morris diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/holidays.el --- a/lisp/calendar/holidays.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/holidays.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; holidays.el --- holiday functions for the calendar package ;; Copyright (C) 1989, 1990, 1992, 1993, 1994, 1997, 2001, 2002, 2003, -;; 2004, 2005 Free Software Foundation, Inc. +;; 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Edward M. Reingold ;; Maintainer: Glenn Morris diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/icalendar.el --- a/lisp/calendar/icalendar.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/icalendar.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; icalendar.el --- iCalendar implementation -*-coding: utf-8 -*- -;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Ulf Jasper ;; Created: August 2002 diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/lunar.el --- a/lisp/calendar/lunar.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/lunar.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; lunar.el --- calendar functions for phases of the moon -;; Copyright (C) 1992, 1993, 1995, 1997, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1992, 1993, 1995, 1997, 2001, 2002, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Edward M. Reingold ;; Maintainer: Glenn Morris diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/parse-time.el --- a/lisp/calendar/parse-time.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/parse-time.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; parse-time.el --- parsing time strings -;; Copyright (C) 1996, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1996, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Erik Naggum diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/solar.el --- a/lisp/calendar/solar.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/solar.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; solar.el --- calendar functions for solar events -;; Copyright (C) 1992, 1993, 1995, 1997, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1992, 1993, 1995, 1997, 2001, 2002, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Edward M. Reingold ;; Denis B. Roegel diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/time-date.el --- a/lisp/calendar/time-date.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/time-date.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; time-date.el --- Date and time handling functions -;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Lars Magne Ingebrigtsen diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/timeclock.el --- a/lisp/calendar/timeclock.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/timeclock.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; timeclock.el --- mode for keeping track of how much you work -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: John Wiegley diff -r c5406394f567 -r 4b3d39451150 lisp/calendar/todo-mode.el --- a/lisp/calendar/todo-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/calendar/todo-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; todo-mode.el --- major mode for editing TODO list files -;; Copyright (C) 1997, 1999, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1997, 1999, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Oliver Seidel diff -r c5406394f567 -r 4b3d39451150 lisp/desktop.el --- a/lisp/desktop.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/desktop.el Sat Feb 11 00:11:19 2006 +0000 @@ -57,17 +57,17 @@ ;; are supplied to handle special major and minor modes respectively. ;; `desktop-buffer-mode-handlers' is an alist of major mode specific functions ;; to restore a desktop buffer. Elements must have the form -;; +;; ;; (MAJOR-MODE . RESTORE-BUFFER-FUNCTION). -;; +;; ;; Functions listed are called by `desktop-create-buffer' when `desktop-read' ;; evaluates the desktop file. Buffers with a major mode not specified here, ;; are restored by the default handler `desktop-restore-file-buffer'. ;; `desktop-minor-mode-handlers' is an alist of functions to restore ;; non-standard minor modes. Elements must have the form -;; +;; ;; (MINOR-MODE . RESTORE-FUNCTION). -;; +;; ;; Functions are called by `desktop-create-buffer' to restore minor modes. ;; Minor modes not specified here, are restored by the standard minor mode ;; function. If you write a module that defines a major or minor mode that @@ -661,7 +661,7 @@ (defun desktop-outvar (varspec) "Output a setq statement for variable VAR to the desktop file. The argument VARSPEC may be the variable name VAR (a symbol), -or a cons cell of the form (VAR . MAX-SIZE), +or a cons cell of the form (VAR . MAX-SIZE), which means to truncate VAR's value to at most MAX-SIZE elements \(if the value is a list) before saving the value." (let (var size) @@ -684,7 +684,8 @@ (defun desktop-save-buffer-p (filename bufname mode &rest dummy) "Return t if buffer should have its state saved in the desktop file. FILENAME is the visited file name, BUFNAME is the buffer name, and -MODE is the major mode." +MODE is the major mode. +\n\(fn FILENAME BUFNAME MODE)" (let ((case-fold-search nil)) (and (not (string-match desktop-buffers-not-to-save bufname)) (not (memq mode desktop-modes-not-to-save)) diff -r c5406394f567 -r 4b3d39451150 lisp/dired-x.el --- a/lisp/dired-x.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/dired-x.el Sat Feb 11 00:11:19 2006 +0000 @@ -1027,11 +1027,11 @@ " " dired-guess-shell-znew-switches)) ;; The following four extensions are useful with dired-man ("N" key) - (list "\\.[0-9]$" '(progn (require 'man) + (list "\\.\\(?:[0-9]\\|man\\)$" '(progn (require 'man) (if (Man-support-local-filenames) "man -l" "cat * | tbl | nroff -man -h"))) - (list "\\.[0-9]\\.g?z$" '(progn (require 'man) + (list "\\.\\(?:[0-9]\\|man\\)\\.g?z$" '(progn (require 'man) (if (Man-support-local-filenames) "man -l" "gunzip -qc * | tbl | nroff -man -h")) diff -r c5406394f567 -r 4b3d39451150 lisp/frame.el --- a/lisp/frame.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/frame.el Sat Feb 11 00:11:19 2006 +0000 @@ -695,7 +695,7 @@ (select-frame frame) (raise-frame frame) ;; Ensure, if possible, that frame gets input focus. - (cond ((eq window-system 'x) + (cond ((memq window-system '(x mac)) (x-focus-frame frame)) ((eq window-system 'w32) (w32-focus-frame frame))) diff -r c5406394f567 -r 4b3d39451150 lisp/gnus/ChangeLog --- a/lisp/gnus/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/gnus/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,3 +1,41 @@ +2006-02-10 Reiner Steib + + * gnus.el: Remove bogus comment. + +2006-02-09 Daiki Ueno + + * pgg-gpg.el (pgg-gpg-encrypt-region): Don't convert line-endings + in elisp. + (pgg-gpg-encrypt-symmetric-region): Ditto. + (pgg-gpg-sign-region): Ditto. + + * pgg-def.el (pgg-text-mode): New variable. + + * mml2015.el (mml2015-pgg-sign): Enable pgg-text-mode. + (mml2015-pgg-encrypt): Ditto. + + * mml1991.el (mml1991-pgg-sign): Enable pgg-text-mode. + (mml1991-pgg-encrypt): Ditto. + +2006-02-08 Katsumi Yamaoka + + * nnfolder.el (nnfolder-insert-newsgroup-line): Use + message-make-date instead of current-time-string. + + * mm-view.el (mm-inline-message): Don't set gnus-newsgroup-charset + to gnus-decoded which mm-uu might set. + +2006-02-08 Katsumi Yamaoka + + * rfc2231.el (rfc2231-parse-string): Sort segmented parameters; + don't decode quoted parameters; remove misimported Emacs code. + Suggested by ARISAWA Akihiro . + (rfc2231-decode-encoded-string): Don't use split-string which + behaves differently according to Emacs version; use + mm-decode-coding-region to convert charset to coding-system. + Suggested by ARISAWA Akihiro . + (rfc2231-encode-string): Remove misimported Emacs code. + 2006-02-07 Katsumi Yamaoka * gnus-art.el (article-decode-charset): Don't use ignore-errors @@ -50,7 +88,7 @@ * gnus-util.el (gnus-error): Describe `args'. -2006-02-03 Andreas Seltenreich +2006-02-03 Andreas Seltenreich * nnweb.el (nnweb-request-group): Avoid growing overview files. @@ -67,7 +105,7 @@ * mml.el (mml-generate-mime-1): Correct the order of inline signed parts. -2006-01-31 Andreas Seltenreich +2006-01-31 Andreas Seltenreich * nnweb.el (nnweb-group-alist): Use defvar instead of defvoo, there's only one active file for all servers. @@ -108,7 +146,7 @@ * nnweb.el (nnweb-google-parse-1): Clarify some comments. -2006-01-30 Andreas Seltenreich +2006-01-30 Andreas Seltenreich * nnweb.el (nnweb-type-definition, nnweb-google-parse-1) (nnweb-google-create-mapping, nnweb-google-search): Adapt to @@ -466,6 +504,98 @@ as a buffer-local variable. This avoids creating truncated dribble files as a result of a hang up, eg. +2005-11-04 Ken Manheimer + + * 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' + 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-add-passphrase-to-cache function. + + * 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' + 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 + function. + +2005-10-29 Ken Manheimer + + * pgg-gpg.el (pgg-gpg-select-matching-key): Fix: look at the right + part of the decoded armor to find the key-identifier. + (pgg-gpg-lookup-key-owner): New function to return the + human-readable identifier of a key owner. + (pgg-gpg-lookup-id-from-key-owner): Make it easy to identify the + key itself. + (pgg-gpg-decrypt-region): Prompt with the key owner (rather than + the key value) if we have a key and can match it against a secret + 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-decrypt-region. + (pgg-pending-timers): A new hash for tracking the passphrase cache + timers, so that new ones supercede old ones. + (pgg-add-passphrase-to-cache): Rename from + `pgg-add-passphrase-cache' to reduce confusion (all callers + changed). Modified to cancel old timers when new ones are added. + (pgg-remove-passphrase-from-cache): Rename from + `pgg-remove-passphrase-cache' to reduce confusion (all callers + changed). Modified to cancel old timers when their keys are + removed from the cache. + (pgg-cancel-timer): In Emacs, an alias for cancel-timer; in + XEmacs, an indirection to delete-itimer. + (pgg-read-passphrase-from-cache, pgg-read-passphrase): + Extract pgg-read-passphrase-from-cache from pgg-read-passphrase so + users can only check cache without risk of prompting. Correct bug in + notruncate behavior. + (pgg-read-passphrase-from-cache, pgg-read-passphrase) + (pgg-add-passphrase-cache, pgg-remove-passphrase-cache): + Add informative docstrings. + (pgg-decrypt): Convey provided passphrase in subordinate call to + pgg-decrypt-region. + +2005-10-20 Ken Manheimer + + * pgg.el (pgg-encrypt-region, pgg-encrypt-symmetric-region) + (pgg-encrypt-symmetric, pgg-encrypt, pgg-decrypt-region) + (pgg-decrypt, pgg-sign-region, pgg-sign): Add optional + 'passphrase' argument, so the passphrase can be managed externally + and then passed in to the system. + + * pgg.el (pgg-read-passphrase, pgg-add-passphrase-cache) + (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' + argument to all these routines, so the passphrase can be managed + externally and passed in to the system. + + * pgg-gpg.el (pgg-gpg-possibly-cache-passphrase): Add optional + 'notruncate' argument, so the passphrase cache can be used + reliably with identifiers besides a pgp packet's key id. + +2005-10-29 Sascha Wilde + + * pgg-gpg.el (pgg-gpg-encrypt-symmetric-region): New function for + symmetric encryption. + (pgg-gpg-symmetric-key-p): New function to check for an symmetric + encrypted session key. + (pgg-gpg-decrypt-region): When decrypting a symmetric encrypted + message ask for the passphrase in a proper way. + + * pgg.el (pgg-encrypt-symmetric, pgg-encrypt-symmetric-region): + New user commands for symmetric encryption. + 2005-11-30 Stefan Monnier * gnus-delay.el (gnus-delay-group): Don't autoload. diff -r c5406394f567 -r 4b3d39451150 lisp/gnus/gnus.el --- a/lisp/gnus/gnus.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/gnus/gnus.el Sat Feb 11 00:11:19 2006 +0000 @@ -4257,9 +4257,6 @@ (delete-frame gnus-other-frame-object)) (setq gnus-other-frame-object nil))))))) -;;(setq thing ? ; this is a comment -;; more 'yes) - ;;;###autoload (defun gnus (&optional arg dont-connect slave) "Read network news. diff -r c5406394f567 -r 4b3d39451150 lisp/gnus/mm-view.el --- a/lisp/gnus/mm-view.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/gnus/mm-view.el Sat Feb 11 00:11:19 2006 +0000 @@ -486,7 +486,8 @@ ;; disable prepare hook gnus-article-prepare-hook (gnus-newsgroup-charset - (or charset gnus-newsgroup-charset))) + (unless (eq charset 'gnus-decoded) ;; mm-uu might set it. + (or charset gnus-newsgroup-charset)))) (let ((gnus-original-article-buffer (mm-handle-buffer handle))) (run-hooks 'gnus-article-decode-hook)) (gnus-article-prepare-display) diff -r c5406394f567 -r 4b3d39451150 lisp/gnus/mml1991.el --- a/lisp/gnus/mml1991.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/gnus/mml1991.el Sat Feb 11 00:11:19 2006 +0000 @@ -229,7 +229,8 @@ (defvar pgg-output-buffer)) (defun mml1991-pgg-sign (cont) - (let (headers cte) + (let ((pgg-text-mode t) + headers cte) ;; Don't sign headers. (goto-char (point-min)) (while (not (looking-at "^$")) @@ -261,7 +262,8 @@ t)) (defun mml1991-pgg-encrypt (cont &optional sign) - (let (cte) + (let ((pgg-text-mode t) + cte) ;; Strip MIME Content[^ ]: headers since it will be ASCII ARMOURED (goto-char (point-min)) (while (looking-at "^Content[^ ]+:") diff -r c5406394f567 -r 4b3d39451150 lisp/gnus/mml2015.el --- a/lisp/gnus/mml2015.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/gnus/mml2015.el Sat Feb 11 00:11:19 2006 +0000 @@ -814,6 +814,7 @@ (boundary (mml-compute-boundary cont)) (pgg-default-user-id (or (message-options-get 'mml-sender) pgg-default-user-id)) + (pgg-text-mode t) entry) (unless (pgg-sign-region (point-min) (point-max)) (pop-to-buffer mml2015-result-buffer) @@ -841,6 +842,7 @@ (defun mml2015-pgg-encrypt (cont &optional sign) (let ((pgg-errors-buffer mml2015-result-buffer) + (pgg-text-mode t) (boundary (mml-compute-boundary cont))) (unless (pgg-encrypt-region (point-min) (point-max) (split-string diff -r c5406394f567 -r 4b3d39451150 lisp/gnus/nnfolder.el --- a/lisp/gnus/nnfolder.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/gnus/nnfolder.el Sat Feb 11 00:11:19 2006 +0000 @@ -826,7 +826,7 @@ (insert "\n")) (forward-char -1) (insert (format (concat nnfolder-article-marker "%d %s\n") - (cdr group-art) (current-time-string))))) + (cdr group-art) (message-make-date))))) (defun nnfolder-active-number (group) ;; Find the next article number in GROUP. diff -r c5406394f567 -r 4b3d39451150 lisp/gnus/rfc2231.el --- a/lisp/gnus/rfc2231.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/gnus/rfc2231.el Sat Feb 11 00:11:19 2006 +0000 @@ -52,14 +52,8 @@ (let ((ttoken (ietf-drums-token-to-list ietf-drums-text-token)) (stoken (ietf-drums-token-to-list ietf-drums-tspecials)) (ntoken (ietf-drums-token-to-list "0-9")) - (prev-value "") - display-name mailbox c display-string parameters - attribute value type subtype number encoded - prev-attribute prev-encoded) - ;; Some mailer (e.g. Thunderbird 1.5) doesn't terminate each - ;; line with semicolon when folding a long parameter value. - (while (string-match "\\([^\t\n\r ;]\\)[\t ]*\r?\n[\t ]+" string) - (setq string (replace-match "\\1;\n " nil nil string))) + c type attribute encoded number prev-attribute vals + prev-encoded parameters value) (ietf-drums-init (mail-header-remove-whitespace (mail-header-remove-comments string))) (let ((table (copy-syntax-table ietf-drums-syntax-table))) @@ -97,31 +91,36 @@ (point) (progn (forward-sexp 1) (point)))))) (error "Invalid header: %s" string)) (setq c (char-after)) - (when (eq c ?*) - (forward-char 1) - (setq c (char-after)) - (if (not (memq c ntoken)) - (setq encoded t - number nil) - (setq number - (string-to-number - (buffer-substring - (point) (progn (forward-sexp 1) (point))))) - (setq c (char-after)) - (when (eq c ?*) - (setq encoded t) + (if (eq c ?*) + (progn (forward-char 1) - (setq c (char-after))))) + (setq c (char-after)) + (if (not (memq c ntoken)) + (setq encoded t + number nil) + (setq number + (string-to-number + (buffer-substring + (point) (progn (forward-sexp 1) (point))))) + (setq c (char-after)) + (when (eq c ?*) + (setq encoded t) + (forward-char 1) + (setq c (char-after))))) + (setq number nil + encoded nil)) ;; See if we have any previous continuations. (when (and prev-attribute (not (eq prev-attribute attribute))) + (setq vals + (mapconcat 'cdr (sort vals 'car-less-than-car) "")) (push (cons prev-attribute (if prev-encoded - (rfc2231-decode-encoded-string prev-value) - prev-value)) + (rfc2231-decode-encoded-string vals) + vals)) parameters) (setq prev-attribute nil - prev-value "" + vals nil prev-encoded nil)) (unless (eq c ?=) (error "Invalid header: %s" string)) @@ -132,7 +131,10 @@ (setq value (buffer-substring (1+ (point)) (progn (forward-sexp 1) - (1- (point)))))) + (1- (point))))) + (when encoded + (setq value (mapconcat (lambda (c) (format "%%%02x" c)) + value "")))) ((and (or (memq c ttoken) ;; EXTENSION: Support non-ascii chars. (> c ?\177)) @@ -153,9 +155,10 @@ (t (error "Invalid header: %s" string))) (if number - (setq prev-attribute attribute - prev-value (concat prev-value value) - prev-encoded encoded) + (progn + (push (cons number value) vals) + (setq prev-attribute attribute + prev-encoded encoded)) (push (cons attribute (if encoded (rfc2231-decode-encoded-string value) @@ -164,10 +167,11 @@ ;; Take care of any final continuations. (when prev-attribute + (setq vals (mapconcat 'cdr (sort vals 'car-less-than-car) "")) (push (cons prev-attribute (if prev-encoded - (rfc2231-decode-encoded-string prev-value) - prev-value)) + (rfc2231-decode-encoded-string vals) + vals)) parameters))) (error (setq parameters nil) @@ -181,25 +185,27 @@ (defun rfc2231-decode-encoded-string (string) "Decode an RFC2231-encoded string. -These look like \"us-ascii'en-us'This%20is%20%2A%2A%2Afun%2A%2A%2A\"." - (with-temp-buffer - (let ((elems (split-string string "'"))) - ;; The encoded string may contain zero to two single-quote - ;; marks. This should give us the encoded word stripped - ;; of any preceding values. - (insert (car (last elems))) +These look like: + \"us-ascii'en-us'This%20is%20%2A%2A%2Afun%2A%2A%2A\", + \"us-ascii''This%20is%20%2A%2A%2Afun%2A%2A%2A\", + \"'en-us'This%20is%20%2A%2A%2Afun%2A%2A%2A\", + \"''This%20is%20%2A%2A%2Afun%2A%2A%2A\", or + \"This is ***fun***\"." + (string-match "\\`\\(\\([^']+\\)?'\\([^']+\\)?'\\)?\\(.+\\)" string) + (let ((coding-system (mm-charset-to-coding-system (match-string 2 string))) + ;;(language (match-string 3 string)) + (value (match-string 4 string))) + (mm-with-multibyte-buffer + (insert value) (goto-char (point-min)) (while (search-forward "%" nil t) (insert (prog1 (string-to-number (buffer-substring (point) (+ (point) 2)) 16) (delete-region (1- (point)) (+ (point) 2))))) - ;; Encode using the charset, if any. - (when (and (mm-multibyte-p) - (> (length elems) 1) - (not (equal (intern (downcase (car elems))) 'us-ascii))) - (mm-decode-coding-region (point-min) (point-max) - (intern (downcase (car elems))))) + ;; Decode using the charset, if any. + (unless (memq coding-system '(nil ascii)) + (mm-decode-coding-region (point-min) (point-max) coding-system)) (buffer-string)))) (defun rfc2231-encode-string (param value) @@ -263,12 +269,12 @@ (forward-line 1)))) (spacep (goto-char (point-min)) - (insert "\n " param "=\"") + (insert param "=\"") (goto-char (point-max)) (insert "\"")) (t (goto-char (point-min)) - (insert "\n " param "="))) + (insert param "="))) (buffer-string)))) (provide 'rfc2231) diff -r c5406394f567 -r 4b3d39451150 lisp/hilit-chg.el --- a/lisp/hilit-chg.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/hilit-chg.el Sat Feb 11 00:11:19 2006 +0000 @@ -521,7 +521,7 @@ This allows you to manually remove highlighting from uninteresting changes." (interactive "r") (let ((after-change-functions nil)) - (remove-text-properties beg end '(hilit-chg nil)) + (remove-text-properties beg end '(hilit-chg nil)) (hilit-chg-fixup beg end))) (defun hilit-chg-set-face-on-change (beg end leng-before @@ -662,7 +662,7 @@ ;; an argument is given ((eq arg 'active) 'active) - ((eq arg 'passive) + ((eq arg 'passive) 'passive) ((> (prefix-numeric-value arg) 0) 'active) @@ -673,7 +673,6 @@ (if new-highlight-changes-mode ;; mode is turned on -- but may be passive (progn - (add-to-list 'desktop-locals-to-save 'highlight-changes-mode) (hilit-chg-set new-highlight-changes-mode) (or was-on ;; run highlight-changes-enable-hook once @@ -960,9 +959,9 @@ ;; which calls this function as a hook (defvar x) ;; placate the byte-compiler (defvar y) - (setq e (current-buffer)) + (setq e (current-buffer)) (let ((n 0) extent p va vb a b) - (setq x nil y nil) ;; x and y are bound by hilit-chg-get-diff-info + (setq x nil y nil) ;; x and y are bound by hilit-chg-get-diff-info (while (< n ediff-number-of-differences) (ediff-make-fine-diffs n) (setq va (ediff-get-fine-diff-vector n 'A)) @@ -1085,7 +1084,7 @@ (progn (if (eq arg 'active) (setq highlight-changes-global-initial-state 'active) - (if (eq arg 'passive) + (if (eq arg 'passive) (setq highlight-changes-global-initial-state 'passive))) (setq global-highlight-changes t) (message "Turning ON Global Highlight Changes mode in %s state" @@ -1131,7 +1130,7 @@ (memq major-mode highlight-changes-global-modes))) (t (and - (not (string-match "^[ *]" (buffer-name))) + (not (string-match "^[ *]" (buffer-name))) (buffer-file-name)))) (progn (hilit-chg-set value) @@ -1146,14 +1145,15 @@ (defun hilit-chg-update-all-buffers (value) - (mapcar + (mapc (function (lambda (buffer) (with-current-buffer buffer (if value (hilit-chg-turn-on-maybe value) (hilit-chg-turn-off-maybe)) ))) - (buffer-list))) + (buffer-list)) + nil) ;;;; Desktop support. @@ -1165,6 +1165,8 @@ (add-to-list 'desktop-minor-mode-handlers '(highlight-changes-mode . hilit-chg-desktop-restore)) +(add-to-list 'desktop-locals-to-save 'highlight-changes-mode) + ;; ===================== debug ================== ;; For debug & test use: ;; diff -r c5406394f567 -r 4b3d39451150 lisp/image-mode.el --- a/lisp/image-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/image-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -140,7 +140,8 @@ (let* ((image (if (and (buffer-file-name) (not (buffer-modified-p))) - (create-image (buffer-file-name)) + (progn (clear-image-cache) + (create-image (buffer-file-name))) (create-image (string-make-unibyte (buffer-substring-no-properties (point-min) (point-max))) diff -r c5406394f567 -r 4b3d39451150 lisp/mh-e/ChangeLog --- a/lisp/mh-e/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/mh-e/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,3 +1,22 @@ +2006-02-10 Bill Wohler + + * mh-search.el (mh-search): Wrap code in (block mh-search ...) + rather than use defun*. XEmacs cannot create a proper autoload for + a defun*. + +2006-02-09 Bill Wohler + + * mh-utils.el (mh-folder-list): Don't replace "/*$" with "/" since + that causes an infinite loop on XEmacs. + + * mh-compat.el(mh-replace-regexp-in-string): Add missing regexp + argument. + +2006-02-08 Peter S Galbraith + + * mh-e.el (mh-invisible-header-fields-internal): Added entries + "X-BrightmailFiltered:", "X-Brightmail-Tracker:" and "X-Hashcash" + 2006-02-04 Bill Wohler * mh-e.el (mh-inc-spool-list): Update example for Emacs 22 which diff -r c5406394f567 -r 4b3d39451150 lisp/mh-e/mh-compat.el --- a/lisp/mh-e/mh-compat.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/mh-e/mh-compat.el Sat Feb 11 00:11:19 2006 +0000 @@ -144,7 +144,7 @@ (match-beginning num) (match-end num))) (mh-defun-compat mh-replace-regexp-in-string replace-regexp-in-string - (rep string &optional fixedcase literal subexp start) + (regexp rep string &optional fixedcase literal subexp start) "Replace REGEXP with REP everywhere in STRING and return result. This function is used by XEmacs that lacks `replace-regexp-in-string'. The function `replace-in-string' is used instead. diff -r c5406394f567 -r 4b3d39451150 lisp/mh-e/mh-e.el --- a/lisp/mh-e/mh-e.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/mh-e/mh-e.el Sat Feb 11 00:11:19 2006 +0000 @@ -2306,6 +2306,8 @@ "X-Authentication-Warning:" ; sendmail "X-Beenthere:" ; Mailman mailing list manager "X-Bogosity:" ; bogofilter + "X-BrightmailFiltered:" ; Brightmail + "X-Brightmail-Tracker:" ; Brightmail "X-Bugzilla-*" ; Bugzilla "X-Complaints-To:" "X-ContentStamp:" ; NetZero @@ -2333,6 +2335,7 @@ "X-Habeas-SWE-7:" ; Spam "X-Habeas-SWE-8:" ; Spam "X-Habeas-SWE-9:" ; Spam + "X-Hashcash:" ; hashcash "X-Info:" ; NTMail "X-Juno-" ; Juno "X-List-Host:" ; Unknown mailing list managers diff -r c5406394f567 -r 4b3d39451150 lisp/mh-e/mh-search.el --- a/lisp/mh-e/mh-search.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/mh-e/mh-search.el Sat Feb 11 00:11:19 2006 +0000 @@ -81,8 +81,8 @@ ;;; MH-Folder Commands ;;;###mh-autoload -(defun* mh-search (folder search-regexp - &optional redo-search-flag window-config) +(defun mh-search (folder search-regexp + &optional redo-search-flag window-config) "Search your MH mail. This command helps you find messages in your entire corpus of @@ -230,96 +230,98 @@ mh-search-regexp-builder) (current-window-configuration) nil))) - ;; Redoing a sequence search? - (when (and redo-search-flag mh-index-data mh-index-sequence-search-flag - (not mh-flists-called-flag)) - (let ((mh-flists-called-flag t)) - (apply #'mh-index-sequenced-messages mh-index-previous-search)) - (return-from mh-search)) - ;; We have fancy query parsing. - (when (symbolp search-regexp) - (mh-search-folder folder window-config) - (return-from mh-search)) - ;; Begin search proper. - (mh-checksum-choose) - (let ((result-count 0) - (old-window-config (or window-config mh-previous-window-config)) - (previous-search mh-index-previous-search) - (index-folder (format "%s/%s" mh-index-folder - (mh-index-generate-pretty-name search-regexp)))) - ;; Create a new folder for the search results or recreate the old one... - (if (and redo-search-flag mh-index-previous-search) - (let ((buffer-name (buffer-name (current-buffer)))) - (mh-process-or-undo-commands buffer-name) - (save-excursion (mh-exec-cmd-quiet nil "rmf" buffer-name)) - (mh-exec-cmd-quiet nil "folder" "-create" "-fast" buffer-name) - (setq index-folder buffer-name)) - (setq index-folder (mh-index-new-folder index-folder search-regexp))) + (block mh-search + ;; Redoing a sequence search? + (when (and redo-search-flag mh-index-data mh-index-sequence-search-flag + (not mh-flists-called-flag)) + (let ((mh-flists-called-flag t)) + (apply #'mh-index-sequenced-messages mh-index-previous-search)) + (return-from mh-search)) + ;; We have fancy query parsing. + (when (symbolp search-regexp) + (mh-search-folder folder window-config) + (return-from mh-search)) + ;; Begin search proper. + (mh-checksum-choose) + (let ((result-count 0) + (old-window-config (or window-config mh-previous-window-config)) + (previous-search mh-index-previous-search) + (index-folder (format "%s/%s" mh-index-folder + (mh-index-generate-pretty-name search-regexp)))) + ;; Create a new folder for the search results or recreate the old one... + (if (and redo-search-flag mh-index-previous-search) + (let ((buffer-name (buffer-name (current-buffer)))) + (mh-process-or-undo-commands buffer-name) + (save-excursion (mh-exec-cmd-quiet nil "rmf" buffer-name)) + (mh-exec-cmd-quiet nil "folder" "-create" "-fast" buffer-name) + (setq index-folder buffer-name)) + (setq index-folder (mh-index-new-folder index-folder search-regexp))) - (let ((folder-path (format "%s%s" mh-user-path (substring folder 1))) - (folder-results-map (make-hash-table :test #'equal)) - (origin-map (make-hash-table :test #'equal))) - ;; Run search program... - (message "Executing %s... " mh-searcher) - (funcall mh-search-function folder-path search-regexp) + (let ((folder-path (format "%s%s" mh-user-path (substring folder 1))) + (folder-results-map (make-hash-table :test #'equal)) + (origin-map (make-hash-table :test #'equal))) + ;; Run search program... + (message "Executing %s... " mh-searcher) + (funcall mh-search-function folder-path search-regexp) - ;; Parse searcher output. - (message "Processing %s output... " mh-searcher) - (goto-char (point-min)) - (loop for next-result = (funcall mh-search-next-result-function) - while next-result - do (unless (eq next-result 'error) - (unless (gethash (car next-result) folder-results-map) - (setf (gethash (car next-result) folder-results-map) - (make-hash-table :test #'equal))) - (setf (gethash (cadr next-result) - (gethash (car next-result) folder-results-map)) - t))) + ;; Parse searcher output. + (message "Processing %s output... " mh-searcher) + (goto-char (point-min)) + (loop for next-result = (funcall mh-search-next-result-function) + while next-result + do (unless (eq next-result 'error) + (unless (gethash (car next-result) folder-results-map) + (setf (gethash (car next-result) folder-results-map) + (make-hash-table :test #'equal))) + (setf (gethash (cadr next-result) + (gethash (car next-result) folder-results-map)) + t))) - ;; Copy the search results over. - (maphash #'(lambda (folder msgs) - (let ((cur (car (mh-translate-range folder "cur"))) - (msgs (sort (loop for msg being the hash-keys of msgs - collect msg) - #'<))) - (mh-exec-cmd "refile" msgs "-src" folder - "-link" index-folder) - ;; Restore cur to old value, that refile changed - (when cur - (mh-exec-cmd-quiet nil "mark" folder "-add" "-zero" - "-sequence" "cur" (format "%s" cur))) - (loop for msg in msgs - do (incf result-count) - (setf (gethash result-count origin-map) - (cons folder msg))))) - folder-results-map) + ;; Copy the search results over. + (maphash #'(lambda (folder msgs) + (let ((cur (car (mh-translate-range folder "cur"))) + (msgs (sort (loop for msg being the hash-keys of msgs + collect msg) + #'<))) + (mh-exec-cmd "refile" msgs "-src" folder + "-link" index-folder) + ;; Restore cur to old value, that refile changed + (when cur + (mh-exec-cmd-quiet nil "mark" folder "-add" "-zero" + "-sequence" + "cur" (format "%s" cur))) + (loop for msg in msgs + do (incf result-count) + (setf (gethash result-count origin-map) + (cons folder msg))))) + folder-results-map) - ;; Vist the results folder. - (mh-visit-folder index-folder () (list folder-results-map origin-map)) + ;; Vist the results folder. + (mh-visit-folder index-folder () (list folder-results-map origin-map)) - (goto-char (point-min)) - (forward-line) - (mh-update-sequences) - (mh-recenter nil) + (goto-char (point-min)) + (forward-line) + (mh-update-sequences) + (mh-recenter nil) - ;; Update the speedbar, if needed. - (when (mh-speed-flists-active-p) - (mh-speed-flists t mh-current-folder)) + ;; Update the speedbar, if needed. + (when (mh-speed-flists-active-p) + (mh-speed-flists t mh-current-folder)) - ;; Maintain history. - (when (or (and redo-search-flag previous-search) window-config) - (setq mh-previous-window-config old-window-config)) - (setq mh-index-previous-search (list folder mh-searcher search-regexp)) + ;; Maintain history. + (when (or (and redo-search-flag previous-search) window-config) + (setq mh-previous-window-config old-window-config)) + (setq mh-index-previous-search (list folder mh-searcher search-regexp)) - ;; Write out data to disk. - (unless mh-flists-called-flag (mh-index-write-data)) + ;; Write out data to disk. + (unless mh-flists-called-flag (mh-index-write-data)) - (message "%s found %s matches in %s folders" - (upcase-initials (symbol-name mh-searcher)) - (loop for msg-hash being hash-values of mh-index-data - sum (hash-table-count msg-hash)) - (loop for msg-hash being hash-values of mh-index-data - count (> (hash-table-count msg-hash) 0)))))) + (message "%s found %s matches in %s folders" + (upcase-initials (symbol-name mh-searcher)) + (loop for msg-hash being hash-values of mh-index-data + sum (hash-table-count msg-hash)) + (loop for msg-hash being hash-values of mh-index-data + count (> (hash-table-count msg-hash) 0))))))) ;; Shush compiler. (eval-when-compile (mh-do-in-xemacs (defvar pick-folder))) diff -r c5406394f567 -r 4b3d39451150 lisp/mh-e/mh-utils.el --- a/lisp/mh-e/mh-utils.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/mh-e/mh-utils.el Sat Feb 11 00:11:19 2006 +0000 @@ -516,13 +516,15 @@ the sub-folders have not been explicitly viewed, then they will not be returned." (let ((folder-list)) - ;; Normalize folder. Strip leading +. Add trailing slash. If no - ;; folder is specified, ensure it is nil to ensure we get the - ;; top-level folders; otherwise mh-sub-folders returns all the - ;; files in / if given an empty string or +. + ;; Normalize folder. Strip leading +. Add trailing slash (done in + ;; two steps to avoid infinite loops when replacing "/*$" with "/" + ;; in XEmacs). If no folder is specified, ensure it is nil to + ;; ensure we get the top-level folders; otherwise mh-sub-folders + ;; returns all the files in / if given an empty string or +. (when folder (setq folder (mh-replace-regexp-in-string "^\+" "" folder)) - (setq folder (mh-replace-regexp-in-string "/*$" "/" folder)) + (setq folder (mh-replace-regexp-in-string "/+$" "" folder)) + (setq folder (concat folder "/")) (if (equal folder "") (setq folder nil))) (loop for f in (mh-sub-folders folder) do diff -r c5406394f567 -r 4b3d39451150 lisp/mouse.el --- a/lisp/mouse.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/mouse.el Sat Feb 11 00:11:19 2006 +0000 @@ -1036,13 +1036,13 @@ (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, + ;; If we rebind to mouse-2, 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)) + (select-window original-window) (setcar event 'mouse-2) ;; If this mouse click has never been done by ;; the user, it doesn't have the necessary diff -r c5406394f567 -r 4b3d39451150 lisp/net/rcirc.el --- a/lisp/net/rcirc.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/net/rcirc.el Sat Feb 11 00:11:19 2006 +0000 @@ -79,7 +79,7 @@ :type 'string :group 'rcirc) -(defcustom rcirc-startup-channels-alist nil +(defcustom rcirc-startup-channels-alist '(("^irc.freenode.net$" "#emacs")) "Alist of channels to join at startup. Each element looks like (SERVER-REGEXP . CHANNEL-LIST)." :type '(alist :key-type string :value-type (repeat string)) @@ -111,11 +111,6 @@ "If non-nil, ignore activity in this buffer.") (make-variable-buffer-local 'rcirc-ignore-buffer-activity-flag) -(defcustom rcirc-ignore-all-activity-flag nil - "*Non-nil means do not indicate any activity in the modeline." - :type 'boolean - :group 'rcirc) - (defcustom rcirc-time-format "%H:%M " "*Describes how timestamps are printed. Used as the first arg to `format-time-string'." @@ -140,29 +135,42 @@ (integer :tag "Number of lines")) :group 'rcirc) -(defcustom rcirc-authinfo-file-name - "~/.rcirc-authinfo" - "File containing rcirc authentication passwords. -The file consists of a single list, with each element itself a -list with a SERVER-REGEXP string, a NICK-REGEXP string, a METHOD -and the remaining method specific ARGUMENTS. The valid METHOD -symbols are `nickserv', `chanserv' and `bitlbee'. +(defcustom rcirc-authinfo nil + "List of authentication passwords. +Each element of the list is a list with a SERVER-REGEXP string +and a method symbol followed by method specific arguments. + +The valid METHOD symbols are `nickserv', `chanserv' and +`bitlbee'. The required ARGUMENTS for each METHOD symbol are: - `nickserv': PASSWORD - `chanserv': CHANNEL PASSWORD - `bitlbee': PASSWORD + `nickserv': NICK PASSWORD + `chanserv': NICK CHANNEL PASSWORD + `bitlbee': NICK PASSWORD Example: - ((\"freenode\" \"bob\" nickserv \"p455w0rd\") - (\"freenode\" \"bob\" chanserv \"#bobland\" \"passwd99\") - (\"bitlbee\" \"robert\" bitlbee \"sekrit\"))" - :type 'string + ((\"freenode\" nickserv \"bob\" \"p455w0rd\") + (\"freenode\" chanserv \"bob\" \"#bobland\" \"passwd99\") + (\"bitlbee\" bitlbee \"robert\" \"sekrit\"))" + :type '(alist :key-type (string :tag "Server") + :value-type (choice (list :tag "NickServ" + (const nickserv) + (string :tag "Nick") + (string :tag "Password")) + (list :tag "ChanServ" + (const chanserv) + (string :tag "Nick") + (string :tag "Channel") + (string :tag "Password")) + (list :tag "BitlBee" + (const bitlbee) + (string :tag "Nick") + (string :tag "Password")))) :group 'rcirc) -(defcustom rcirc-auto-authenticate-flag (file-readable-p rcirc-authinfo-file-name) +(defcustom rcirc-auto-authenticate-flag t "*Non-nil means automatically send authentication string to server. -See also `rcirc-authinfo-file-name'." +See also `rcirc-authinfo'." :type 'boolean :group 'rcirc) @@ -199,6 +207,11 @@ :type 'hook :group 'rcirc) +(defcustom rcirc-always-use-server-buffer-flag nil + "Non-nil means messages without a channel target will go to the server buffer." + :type 'boolean + :group 'rcirc) + (defvar rcirc-prompt-start-marker nil) (defvar rcirc-prompt-end-marker nil) @@ -238,37 +251,35 @@ (defvar rcirc-startup-channels nil) ;;;###autoload -(defun rcirc (&optional server port nick channels) +(defun rcirc (arg) "Connect to IRC. - -If any of the the optional SERVER, PORT, NICK or CHANNELS are not -supplied, they are taken from the variables `rcirc-server', -`rcirc-port', `rcirc-nick', and `rcirc-startup-channels-alist', -respectively." - (interactive (list (read-string "IRC Server: " rcirc-server) - (read-string "IRC Port: " (number-to-string rcirc-port)) - (read-string "IRC Nick: " rcirc-nick))) - (or server (setq server rcirc-server)) - (or port (setq port rcirc-port)) - (or nick (setq nick rcirc-nick)) - (or channels - (setq channels - (if (interactive-p) - (split-string - (read-string "Channels: " - (mapconcat 'identity - (rcirc-startup-channels server) - " ")) - "[, ]+" t) - (rcirc-startup-channels server)))) - (or global-mode-string (setq global-mode-string '(""))) - (and (not (memq 'rcirc-activity-string global-mode-string)) - (setq global-mode-string - (append global-mode-string '(rcirc-activity-string)))) - (add-hook 'window-configuration-change-hook - 'rcirc-window-configuration-change) - (rcirc-connect server port nick rcirc-user-name rcirc-user-full-name - channels)) +If ARG is non-nil, prompt for a server to connect to." + (interactive "P") + (if arg + (let* ((server (read-string "IRC Server: " rcirc-server)) + (port (read-string "IRC Port: " (number-to-string rcirc-port))) + (nick (read-string "IRC Nick: " rcirc-nick)) + (channels (split-string + (read-string "IRC Channels: " + (mapconcat 'identity + (rcirc-startup-channels server) + " ")) + "[, ]+" t))) + (rcirc-connect server port nick rcirc-user-name rcirc-user-full-name + channels)) + ;; make new connection using defaults unless already connected to + ;; the default rcirc-server + (let ((default-server (default-value 'rcirc-server)) + connected) + (dolist (p (rcirc-process-list)) + (when (string= default-server (process-name p)) + (setq connected p))) + (if (not connected) + (rcirc-connect rcirc-server rcirc-port rcirc-nick + rcirc-user-name rcirc-user-full-name + (rcirc-startup-channels rcirc-server)) + (switch-to-buffer (process-buffer connected)) + (message "Connected to %s" rcirc-server))))) ;;;###autoload (defalias 'irc 'rcirc) @@ -279,11 +290,9 @@ (defvar rcirc-keepalive-timer nil) (defvar rcirc-last-server-message-time nil) (defun rcirc-connect (server port nick user-name full-name startup-channels) - "Return a connection to SERVER on PORT. + (add-hook 'window-configuration-change-hook + 'rcirc-window-configuration-change) -User will identify using the values of NICK, USER-NAME and -FULL-NAME. The variable list of channel names in -STARTUP-CHANNELS will automatically be joined on startup." (save-excursion (message "Connecting to %s..." server) (let* ((inhibit-eol-conversion) @@ -377,13 +386,13 @@ (rcirc-debug process (format "SENTINEL: %S %S\n" process sentinel)) (with-rcirc-process-buffer process (dolist (buffer (cons nil (mapcar 'cdr rcirc-buffer-alist))) - (rcirc-print process "rcirc.el" "ERROR" buffer - (format "%s: %s (%S)" - (process-name process) - sentinel - (process-status process)) t) - ;; remove the prompt from buffers (with-current-buffer (or buffer (current-buffer)) + (rcirc-print process "rcirc.el" "ERROR" rcirc-target + (format "%s: %s (%S)" + (process-name process) + sentinel + (process-status process)) t) + ;; remove the prompt from buffers (let ((inhibit-read-only t)) (delete-region rcirc-prompt-start-marker rcirc-prompt-end-marker))))) @@ -428,7 +437,8 @@ (defun rcirc-process-server-response-1 (process text) (if (string-match "^\\(:\\([^ ]+\\) \\)?\\([^ ]+\\) \\(.+\\)$" text) - (let* ((sender (match-string 2 text)) + (let* ((user (match-string 2 text)) + (sender (rcirc-user-nick user)) (cmd (match-string 3 text)) (args (match-string 4 text)) (handler (intern-soft (concat "rcirc-handler-" cmd)))) @@ -487,12 +497,10 @@ text)) (more (if oversize (substring message rcirc-max-message-length)))) - (rcirc-print process (rcirc-nick process) response - (rcirc-get-buffer-create process target) - text) + (rcirc-get-buffer-create process target) + (rcirc-print process (rcirc-nick process) response target text) (rcirc-send-string process (concat response " " target " :" text)) - (if more - (rcirc-send-message process target more noticep)))) + (when more (rcirc-send-message process target more noticep)))) (defvar rcirc-input-ring nil) (defvar rcirc-input-ring-index 0) @@ -582,10 +590,6 @@ (define-key rcirc-mode-map (kbd "C-c C-s") 'rcirc-switch-to-server-buffer) (define-key rcirc-mode-map (kbd "C-c C-a") 'rcirc-jump-to-first-unread-line) -(define-key global-map (kbd "C-c `") 'rcirc-next-active-buffer) -(define-key global-map (kbd "C-c C-@") 'rcirc-next-active-buffer) -(define-key global-map (kbd "C-c C-SPC") 'rcirc-next-active-buffer) - (defvar rcirc-browse-url-map (make-sparse-keymap) "Keymap used for browsing URLs in `rcirc-mode'.") @@ -730,8 +734,6 @@ (defun rcirc-get-buffer (process target &optional server) "Return the buffer associated with the PROCESS and TARGET. -If TARGET is nil, return the server buffer. - If optional argument SERVER is non-nil, return the server buffer if there is no existing buffer for TARGET, otherwise return nil." (with-rcirc-process-buffer process @@ -744,7 +746,11 @@ "Return the buffer associated with the PROCESS and TARGET. Create the buffer if it doesn't exist." (let ((buffer (rcirc-get-buffer process target))) - (or buffer + (if buffer + (progn + (when (not rcirc-target) + (setq rcirc-target target)) + buffer) ;; create the buffer (with-rcirc-process-buffer process (let ((new-buffer (get-buffer-create @@ -781,36 +787,45 @@ (delete-backward-char 1)) (let ((input (buffer-substring-no-properties rcirc-prompt-end-marker (point)))) - ;; process a /cmd - (if (string-match "^/\\([^ ]+\\) ?\\(.*\\)$" input) - (let* ((command (match-string 1 input)) - (fun (intern-soft (concat "rcirc-cmd-" command))) - (args (match-string 2 input))) - (newline) - (with-current-buffer (current-buffer) - (delete-region rcirc-prompt-end-marker (point)) - (if (string= command "me") - (rcirc-print rcirc-process (rcirc-nick rcirc-process) - "ACTION" (current-buffer) args) - (rcirc-print rcirc-process (rcirc-nick rcirc-process) - "COMMAND" (current-buffer) input)) - (set-marker rcirc-prompt-end-marker (point)) - (if (fboundp fun) - (funcall fun args rcirc-process target) - (rcirc-send-string rcirc-process - (concat command " " args))))) - ;; send message to server - (if (not rcirc-target) - (message "Not joined") - (delete-region rcirc-prompt-end-marker (point)) - (mapc (lambda (message) - (rcirc-send-message rcirc-process target message)) - (split-string input "\n")))) + (dolist (line (split-string input "\n")) + (rcirc-process-input-line rcirc-process target line)) ;; add to input-ring (save-excursion (ring-insert rcirc-input-ring input) (setq rcirc-input-ring-index 0))))))) +(defun rcirc-process-input-line (process target line) + (if (string-match "^/\\([^ ]+\\) ?\\(.*\\)$" line) + (rcirc-process-command (match-string 1 line) + (match-string 2 line) + line) + (rcirc-process-message line))) + +(defun rcirc-process-message (line) + (if (not rcirc-target) + (message "Not joined") + (delete-region rcirc-prompt-end-marker (point)) + (rcirc-send-message rcirc-process rcirc-target line))) + +(defun rcirc-process-command (command args line) + (if (eq (aref command 0) ?/) + ;; "//text" will send "/text" as a message + (rcirc-process-message (substring line 1)) + (let* ((fun (intern-soft (concat "rcirc-cmd-" command)))) + (newline) + (with-current-buffer (current-buffer) + (delete-region rcirc-prompt-end-marker (point)) + (if (string= command "me") + (rcirc-print rcirc-process (rcirc-nick rcirc-process) + "ACTION" rcirc-target args) + (rcirc-print rcirc-process (rcirc-nick rcirc-process) + "COMMAND" rcirc-target line)) + (set-marker rcirc-prompt-end-marker (point)) + (if (fboundp fun) + (funcall fun args rcirc-process rcirc-target) + (rcirc-send-string rcirc-process + (concat command " " args))))))) + (defvar rcirc-parent-buffer nil) (defvar rcirc-window-configuration nil) (defun rcirc-edit-multiline () @@ -828,7 +843,8 @@ (setq rcirc-parent-buffer parent) (setq rcirc-process process) (insert text) - (and (> pos 0) (goto-char pos))))) + (and (> pos 0) (goto-char pos)) + (message "Type C-c C-c to return text to %s, or C-c C-k to cancel" parent)))) (define-derived-mode rcirc-multiline-edit-mode text-mode "rcirc multi" @@ -894,13 +910,15 @@ (t (setq first "[" middle " " end "]"))) (concat first - (rcirc-facify (rcirc-user-nick sender) + (rcirc-facify (concat + sender + (when target (concat "," target))) (if (string= sender (rcirc-nick process)) 'rcirc-my-nick 'rcirc-other-nick)) - middle - (rcirc-mangle-text process text) + middle + (rcirc-mangle-text process text) end))) ((string= response "COMMAND") text) @@ -914,31 +932,41 @@ (rcirc-facify (concat (when (not (string= sender (rcirc-server process))) - (concat (rcirc-user-nick sender) " ")) + (concat sender " ")) (when (zerop (string-to-number response)) (concat response " ")) text) 'rcirc-server))))))) +(defun rcirc-target-buffer (process sender response target text) + "Return a buffer to print the server response." + (assert (not (bufferp target))) + (with-rcirc-process-buffer process + (cond ((not target) + (if rcirc-always-use-server-buffer-flag + (process-buffer process) + (rcirc-get-any-buffer process))) + ((not (rcirc-channel-p target)) + ;; message from another user + (if (string= response "PRIVMSG") + (rcirc-get-buffer-create process (if (string= sender rcirc-nick) + target + sender)) + (rcirc-get-buffer process target t))) + ((or (rcirc-get-buffer process target) + (rcirc-get-any-buffer process)))))) + (defvar rcirc-activity-type nil) (make-variable-buffer-local 'rcirc-activity-type) (defun rcirc-print (process sender response target text &optional activity) "Print TEXT in the buffer associated with TARGET. Format based on SENDER and RESPONSE. If ACTIVITY is non-nil, record activity." - (unless (or (member (rcirc-user-nick sender) rcirc-ignore-list) + (unless (or (member sender rcirc-ignore-list) (member (with-syntax-table rcirc-nick-syntax-table (when (string-match "^\\([^/]\\w*\\)[:,]" text) (match-string 1 text))) rcirc-ignore-list)) - (let* ((buffer (cond ((bufferp target) - target) - ((not target) - (rcirc-get-any-buffer process)) - ((not (rcirc-channel-p target)) - (rcirc-get-buffer-create process - (rcirc-user-nick sender))) - ((or (rcirc-get-buffer process target) - (rcirc-get-any-buffer process))))) + (let* ((buffer (rcirc-target-buffer process sender response target text)) (inhibit-read-only t)) (with-current-buffer buffer (let ((moving (= (point) rcirc-prompt-end-marker)) @@ -961,7 +989,7 @@ (set-marker-insertion-type rcirc-prompt-start-marker t) (set-marker-insertion-type rcirc-prompt-end-marker t) (insert - (rcirc-format-response-string process sender response target text) + (rcirc-format-response-string process sender response nil text) (propertize "\n" 'hard t)) (set-marker-insertion-type rcirc-prompt-start-marker nil) (set-marker-insertion-type rcirc-prompt-end-marker nil) @@ -978,10 +1006,10 @@ 0) (cond ((or (string= response "PRIVMSG") (string= response "NOTICE")) - (+ (length (rcirc-user-nick sender)) + (+ (length sender) 2)) ; <> ((string= response "ACTION") - (+ (length (rcirc-user-nick sender)) + (+ (length sender) 1)) ; [ (t 3)) ; *** 1) @@ -1056,17 +1084,17 @@ (defun rcirc-join-channels (process channels) "Join CHANNELS." (save-window-excursion - (mapc (lambda (channel) - (with-rcirc-process-buffer process - (rcirc-cmd-join channel process))) - channels))) + (dolist (channel channels) + (with-rcirc-process-buffer process + (rcirc-cmd-join channel process))))) ;;; nick management (defun rcirc-user-nick (user) "Return the nick from USER. Remove any non-nick junk." - (if (string-match "^[@%+]?\\([^! ]+\\)!?" (or user "")) - (match-string 1 user) - user)) + (save-match-data + (if (string-match "^[@%+]?\\([^! ]+\\)!?" (or user "")) + (match-string 1 user) + user))) (defun rcirc-user-non-nick (user) "Return the non-nick portion of USER." @@ -1076,17 +1104,15 @@ (defun rcirc-nick-channels (process nick) "Return list of channels for NICK." - (let ((nick (rcirc-user-nick nick))) - (with-rcirc-process-buffer process - (mapcar (lambda (x) (car x)) - (gethash nick rcirc-nick-table))))) + (with-rcirc-process-buffer process + (mapcar (lambda (x) (car x)) + (gethash nick rcirc-nick-table)))) (defun rcirc-put-nick-channel (process nick channel) "Add CHANNEL to list associated with NICK." (with-rcirc-process-buffer process - (let* ((nick (rcirc-user-nick nick)) - (chans (gethash nick rcirc-nick-table)) - (record (assoc-string channel chans t))) + (let* ((chans (gethash nick rcirc-nick-table)) + (record (assoc-string channel chans t))) (if record (setcdr record (current-time)) (puthash nick (cons (cons channel (current-time)) @@ -1101,8 +1127,7 @@ (defun rcirc-remove-nick-channel (process nick channel) "Remove the CHANNEL from list associated with NICK." (with-rcirc-process-buffer process - (let* ((nick (rcirc-user-nick nick)) - (chans (gethash nick rcirc-nick-table)) + (let* ((chans (gethash nick rcirc-nick-table)) (newchans ;; instead of assoc-string-delete-all: (let ((record (assoc-string channel chans t))) @@ -1136,28 +1161,44 @@ (delete nick rcirc-ignore-list)))) ;;; activity tracking +(defvar rcirc-track-minor-mode-map (make-sparse-keymap) + "Keymap for rcirc track minor mode.") + +(define-key rcirc-track-minor-mode-map (kbd "C-c `") 'rcirc-next-active-buffer) +(define-key rcirc-track-minor-mode-map (kbd "C-c C-@") 'rcirc-next-active-buffer) +(define-key rcirc-track-minor-mode-map (kbd "C-c C-SPC") 'rcirc-next-active-buffer) + +;;; FIXME: the code to insert `rcirc-activity-string' into +;;; `global-mode-string' isn't called when the mode is activated by +;;; customize. I don't know how to set that up. +(define-minor-mode rcirc-track-minor-mode + "Global minor mode for tracking activity in rcirc buffers." + :init-value nil + :lighter "" + :keymap rcirc-track-minor-mode-map + :global t + :group 'rcirc + (or global-mode-string (setq global-mode-string '(""))) + ;; toggle the mode-line channel indicator + (if rcirc-track-minor-mode + (and (not (memq 'rcirc-activity-string global-mode-string)) + (setq global-mode-string + (append global-mode-string '(rcirc-activity-string)))) + (setq global-mode-string + (delete 'rcirc-activity-string global-mode-string)))) + (or (assq 'rcirc-ignore-buffer-activity-flag minor-mode-alist) (setq minor-mode-alist (cons '(rcirc-ignore-buffer-activity-flag " Ignore") minor-mode-alist))) -(defun rcirc-toggle-ignore-buffer-activity (&optional all) - "Toggle the value of `rcirc-ignore-buffer-activity-flag'. -If ALL is non-nil, instead toggle the value of -`rcirc-ignore-all-activity-flag'." - (interactive "P") - (if all - (progn - (setq rcirc-ignore-all-activity-flag - (not rcirc-ignore-all-activity-flag)) - (message (if rcirc-ignore-all-activity-flag - "Hide all buffer activity" - "Display buffer activity")) - (rcirc-update-activity-string)) - (setq rcirc-ignore-buffer-activity-flag - (not rcirc-ignore-buffer-activity-flag)) - (message (if rcirc-ignore-buffer-activity-flag - "Ignore activity in this buffer" - "Notice activity in this buffer"))) +(defun rcirc-toggle-ignore-buffer-activity () + "Toggle the value of `rcirc-ignore-buffer-activity-flag'." + (interactive) + (setq rcirc-ignore-buffer-activity-flag + (not rcirc-ignore-buffer-activity-flag)) + (message (if rcirc-ignore-buffer-activity-flag + "Ignore activity in this buffer" + "Notice activity in this buffer")) (force-mode-line-update)) (defvar rcirc-switch-to-buffer-function 'switch-to-buffer @@ -1229,21 +1270,18 @@ (defun rcirc-update-activity-string () "Update mode-line string." (setq rcirc-activity-string - (cond (rcirc-ignore-all-activity-flag - " DND") - ((not rcirc-activity) - "") - (t - (concat " [" - (mapconcat - (lambda (b) - (let ((s (rcirc-short-buffer-name b))) - (with-current-buffer b - (if (not (eq rcirc-activity-type 'nick)) - s - (rcirc-facify s 'rcirc-mode-line-nick))))) - rcirc-activity ",") - "]"))))) + (if (not rcirc-activity) + "" + (concat " [" + (mapconcat + (lambda (b) + (let ((s (rcirc-short-buffer-name b))) + (with-current-buffer b + (if (not (eq rcirc-activity-type 'nick)) + s + (rcirc-facify s 'rcirc-mode-line-nick))))) + rcirc-activity ",") + "]")))) (defun rcirc-short-buffer-name (buffer) "Return a short name for BUFFER to use in the modeline indicator." @@ -1488,23 +1526,22 @@ nicks when no NICK is given. When listing ignored nicks, the ones added to the list automatically are marked with an asterisk." (interactive "sToggle ignoring of nick: ") - (if (string= "" nick) - (rcirc-print process (rcirc-nick process) "NOTICE" target - (mapconcat - (lambda (nick) - (concat nick - (if (member nick rcirc-ignore-list-automatic) - "*" ""))) - rcirc-ignore-list " ")) + (when (not (string= "" nick)) (if (member nick rcirc-ignore-list) (setq rcirc-ignore-list (delete nick rcirc-ignore-list)) - (setq rcirc-ignore-list (cons nick rcirc-ignore-list))))) - + (setq rcirc-ignore-list (cons nick rcirc-ignore-list)))) + (rcirc-print process (rcirc-nick process) "IGNORE" target + (mapconcat + (lambda (nick) + (concat nick + (if (member nick rcirc-ignore-list-automatic) + "*" ""))) + rcirc-ignore-list " "))) (defun rcirc-message-leader (sender face) "Return a string with SENDER propertized with FACE." - (rcirc-facify (concat "<" (rcirc-user-nick sender) "> ") face)) + (rcirc-facify (concat "<" sender "> ") face)) (defun rcirc-facify (string face) "Return a copy of STRING with FACE property added." @@ -1518,8 +1555,8 @@ "://" (1+ (char "a-zA-Z0-9_.")) (optional ":" (1+ (char "0-9"))))) - (1+ (char "-a-zA-Z0-9_=!?#$\@~`%&*+|\\/:;.,")) - (char "-a-zA-Z0-9_=!?#$\@~`%&*+|\\/:;")) + (1+ (char "-a-zA-Z0-9_=!?#$\@~`%&*+|\\/:;.,{}[]")) + (char "-a-zA-Z0-9_=#$\@~`%&*+|\\/:;{}[]")) "Regexp matching URLs. Set to nil to disable URL features in rcirc.") (defun rcirc-browse-url (&optional arg) @@ -1603,7 +1640,7 @@ 'mouse-face 'highlight 'keymap rcirc-browse-url-map) string)) - (push (substring string start end) rcirc-urls)) + (push (substring-no-properties string start end) rcirc-urls)) rcirc-url-regexp text)) text) @@ -1627,7 +1664,7 @@ (defun rcirc-handler-PRIVMSG (process sender args text) (let ((target (if (rcirc-channel-p (car args)) (car args) - (rcirc-user-nick sender))) + sender)) (message (or (cadr args) ""))) (if (string-match "^\C-a\\(.*\\)\C-a$" message) (rcirc-handler-CTCP process target sender (match-string 1 message)) @@ -1650,25 +1687,21 @@ (match-string 1 message)) (sender (if (string= sender (rcirc-server process)) - (process-buffer process) - (rcirc-user-nick sender)))) + nil ; server notice + sender))) message t)))) - ;; do we need this: - ;;(and sender (rcirc-put-nick-channel process sender target)))) (defun rcirc-handler-WALLOPS (process sender args text) - (let ((target (rcirc-user-nick sender))) - (rcirc-print process sender "WALLOPS" target (car args) t))) + (rcirc-print process sender "WALLOPS" sender (car args) t)) (defun rcirc-handler-JOIN (process sender args text) - (let ((channel (car args)) - (nick (rcirc-user-nick sender))) + (let ((channel (car args))) (rcirc-get-buffer-create process channel) (rcirc-print process sender "JOIN" channel "") ;; print in private chat buffer if it exists - (when (rcirc-get-buffer rcirc-process nick) - (rcirc-print process sender "JOIN" nick channel)) + (when (rcirc-get-buffer rcirc-process sender) + (rcirc-print process sender "JOIN" sender channel)) (rcirc-put-nick-channel process sender channel))) @@ -1695,9 +1728,9 @@ (setq rcirc-target nil)))))) (defun rcirc-handler-PART (process sender args text) - (rcirc-ignore-update-automatic (rcirc-user-nick sender)) + (rcirc-ignore-update-automatic sender) (rcirc-handler-PART-or-KICK process "PART" - (car args) sender (rcirc-user-nick sender) + (car args) sender sender (cadr args))) (defun rcirc-handler-KICK (process sender args text) @@ -1705,21 +1738,19 @@ (caddr args))) (defun rcirc-handler-QUIT (process sender args text) - (rcirc-ignore-update-automatic (rcirc-user-nick sender)) - (let ((nick (rcirc-user-nick sender))) - (mapc (lambda (channel) - (rcirc-print process sender "QUIT" channel (apply 'concat args))) - (rcirc-nick-channels process nick)) + (rcirc-ignore-update-automatic sender) + (mapc (lambda (channel) + (rcirc-print process sender "QUIT" channel (apply 'concat args))) + (rcirc-nick-channels process sender)) - ;; print in private chat buffer if it exists - (let ((buffer (rcirc-get-buffer rcirc-process nick))) - (when buffer - (rcirc-print process sender "QUIT" buffer (apply 'concat args)))) + ;; print in private chat buffer if it exists + (when (rcirc-get-buffer rcirc-process sender) + (rcirc-print process sender "QUIT" sender (apply 'concat args))) - (rcirc-nick-remove process nick))) + (rcirc-nick-remove process sender)) (defun rcirc-handler-NICK (process sender args text) - (let* ((old-nick (rcirc-user-nick sender)) + (let* ((old-nick sender) (new-nick (car args)) (channels (rcirc-nick-channels process old-nick))) ;; update list of ignored nicks @@ -1796,9 +1827,8 @@ ;; print in private chat buffers if they exist (mapc (lambda (nick) - (let ((existing-buffer (rcirc-get-buffer process nick))) - (when existing-buffer - (rcirc-print process sender "MODE" existing-buffer msg)))) + (when (rcirc-get-buffer process nick) + (rcirc-print process sender "MODE" nick msg))) (cddr args)))) (defun rcirc-get-temp-buffer-create (process channel) @@ -1834,40 +1864,35 @@ (defun rcirc-authenticate () "Send authentication to process associated with current buffer. -Passwords are read from `rcirc-authinfo-file-name' (which see)." +Passwords are stored in `rcirc-authinfo' (which see)." (interactive) - (let ((password-alist - (with-temp-buffer - (insert-file-contents-literally rcirc-authinfo-file-name) - (goto-char (point-min)) - (read (current-buffer))))) - (with-rcirc-process-buffer rcirc-process - (dolist (i password-alist) - (let ((server (car i)) - (nick (cadr i)) - (method (caddr i)) - (args (cdddr i))) - (when (and (string-match server rcirc-server) - (string-match nick rcirc-nick)) - (cond ((equal method 'nickserv) - (rcirc-send-string - rcirc-process - (concat - "PRIVMSG nickserv :identify " - (car args)))) - ((equal method 'chanserv) - (rcirc-send-string - rcirc-process - (concat - "PRIVMSG chanserv :identify " - (car args) " " (cadr args)))) - ((equal method 'bitlbee) - (rcirc-send-string - rcirc-process - (concat "PRIVMSG #bitlbee :identify " (car args)))) - (t - (message "No %S authentication method defined" - method))))))))) + (with-rcirc-process-buffer rcirc-process + (dolist (i rcirc-authinfo) + (let ((server (car i)) + (nick (caddr i)) + (method (cadr i)) + (args (cdddr i))) + (when (and (string-match server rcirc-server) + (string-match nick rcirc-nick)) + (cond ((equal method 'nickserv) + (rcirc-send-string + rcirc-process + (concat + "PRIVMSG nickserv :identify " + (car args)))) + ((equal method 'chanserv) + (rcirc-send-string + rcirc-process + (concat + "PRIVMSG chanserv :identify " + (cadr args) " " (car args)))) + ((equal method 'bitlbee) + (rcirc-send-string + rcirc-process + (concat "PRIVMSG &bitlbee :identify " (car args)))) + (t + (message "No %S authentication method defined" + method)))))))) (defun rcirc-handler-INVITE (process sender args text) (rcirc-print process sender "INVITE" nil (mapconcat 'identity args " ") t)) @@ -1879,22 +1904,19 @@ (if (string-match "^\\([^ ]+\\) *\\(.*\\)$" text) (let* ((request (upcase (match-string 1 text))) (args (match-string 2 text)) - (nick (rcirc-user-nick sender)) (handler (intern-soft (concat "rcirc-handler-ctcp-" request)))) (if (not (fboundp handler)) - (rcirc-print process sender "ERROR" - (rcirc-get-buffer process target) - (format "%s sent unsupported ctcp: %s" nick text) + (rcirc-print process sender "ERROR" target + (format "%s sent unsupported ctcp: %s" sender text) t) (funcall handler process target sender args) (if (not (string= request "ACTION")) - (rcirc-print process sender "CTCP" - (rcirc-get-buffer process target) + (rcirc-print process sender "CTCP" target (format "%s" text) t)))))) (defun rcirc-handler-ctcp-VERSION (process target sender args) (rcirc-send-string process - (concat "NOTICE " (rcirc-user-nick sender) + (concat "NOTICE " sender " :\C-aVERSION " rcirc-id-string "\C-a"))) @@ -1903,7 +1925,7 @@ (defun rcirc-handler-ctcp-TIME (process target sender args) (rcirc-send-string process - (concat "NOTICE " (rcirc-user-nick sender) + (concat "NOTICE " sender " :\C-aTIME " (current-time-string) "\C-a"))) (defun rcirc-handler-CTCP-response (process target sender message) @@ -1960,7 +1982,7 @@ :group 'rcirc-faces) (defface rcirc-server-prefix ; font-lock-comment-delimiter-face - '((default :inherit font-lock-comment-face) + '((default :inherit rcirc-server) (((class grayscale))) (((class color) (min-colors 16))) (((class color) (min-colors 8) (background light)) diff -r c5406394f567 -r 4b3d39451150 lisp/net/tramp.el --- a/lisp/net/tramp.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/net/tramp.el Sat Feb 11 00:11:19 2006 +0000 @@ -6482,7 +6482,8 @@ p (processp p) (memq (process-status p) '(run open))) (tramp-send-command multi-method method user host "echo are you awake" nil t) - (unless (tramp-wait-for-output 10) + (unless (and (memq (process-status p) '(run open)) + (tramp-wait-for-output 10)) (delete-process p) (setq p nil)) (erase-buffer))) diff -r c5406394f567 -r 4b3d39451150 lisp/pgg-def.el --- a/lisp/pgg-def.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/pgg-def.el Sat Feb 11 00:11:19 2006 +0000 @@ -83,6 +83,9 @@ (defvar pgg-scheme nil "Current scheme of PGP implementation.") +(defvar pgg-text-mode nil + "If t, inform the recipient that the input is text.") + (defmacro pgg-truncate-key-identifier (key) `(if (> (length ,key) 8) (substring ,key 8) ,key)) diff -r c5406394f567 -r 4b3d39451150 lisp/pgg-gpg.el --- a/lisp/pgg-gpg.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/pgg-gpg.el Sat Feb 11 00:11:19 2006 +0000 @@ -87,7 +87,9 @@ (buffer-disable-undo) (erase-buffer) (if (file-exists-p output-file-name) - (let ((coding-system-for-read 'raw-text-dos)) + (let ((coding-system-for-read (if pgg-text-mode + 'raw-text + 'binary))) (insert-file-contents output-file-name))) (set-buffer errors-buffer) (if (not (equal exit-status 0)) @@ -187,7 +189,8 @@ pgg-gpg-user-id)))) (args (append - (list "--batch" "--textmode" "--armor" "--always-trust" "--encrypt") + (list "--batch" "--armor" "--always-trust" "--encrypt") + (if pgg-text-mode (list "--textmode")) (if sign (list "--sign" "--local-user" pgg-gpg-user-id)) (if recipients (apply #'nconc @@ -196,8 +199,7 @@ (append recipients (if pgg-encrypt-for-me (list pgg-gpg-user-id))))))))) - (pgg-as-lbt start end 'CRLF - (pgg-gpg-process-region start end passphrase pgg-gpg-program args)) + (pgg-gpg-process-region start end passphrase pgg-gpg-program args) (when sign (with-current-buffer pgg-errors-buffer ;; Possibly cache passphrase under, e.g. "jas", for future sign. @@ -215,9 +217,9 @@ (pgg-read-passphrase "GnuPG passphrase for symmetric encryption: "))) (args - (append (list "--batch" "--textmode" "--armor" "--symmetric" )))) - (pgg-as-lbt start end 'CRLF - (pgg-gpg-process-region start end passphrase pgg-gpg-program args)) + (append (list "--batch" "--armor" "--symmetric" ) + (if pgg-text-mode (list "--textmode"))))) + (pgg-gpg-process-region start end passphrase pgg-gpg-program args) (pgg-process-when-success))) (defun pgg-gpg-decrypt-region (start end &optional passphrase) @@ -279,13 +281,13 @@ (format "GnuPG passphrase for %s: " pgg-gpg-user-id) pgg-gpg-user-id))) (args - (list (if cleartext "--clearsign" "--detach-sign") - "--armor" "--batch" "--verbose" - "--local-user" pgg-gpg-user-id)) + (append (list (if cleartext "--clearsign" "--detach-sign") + "--armor" "--batch" "--verbose" + "--local-user" pgg-gpg-user-id) + (if pgg-text-mode (list "--textmode")))) (inhibit-read-only t) buffer-read-only) - (pgg-as-lbt start end 'CRLF - (pgg-gpg-process-region start end passphrase pgg-gpg-program args)) + (pgg-gpg-process-region start end passphrase pgg-gpg-program args) (with-current-buffer pgg-errors-buffer ;; Possibly cache passphrase under, e.g. "jas", for future sign. (pgg-gpg-possibly-cache-passphrase passphrase pgg-gpg-user-id) diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ada-mode.el --- a/lisp/progmodes/ada-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ada-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; ada-mode.el --- major-mode for editing Ada sources ;; Copyright (C) 1994, 1995, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, -;; 2005 Free Software Foundation, Inc. +;; 2005, 2006 Free Software Foundation, Inc. ;; Author: Rolf Ebert ;; Markus Heritsch diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ada-prj.el --- a/lisp/progmodes/ada-prj.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ada-prj.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; ada-prj.el --- easy editing of project files for the ada-mode -;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Emmanuel Briot diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ada-stmt.el --- a/lisp/progmodes/ada-stmt.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ada-stmt.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; ada-stmt.el --- an extension to Ada mode for inserting statement templates ;; Copyright(C) 1987, 1993, 1994, 1996, 1997, 1998, 1999, 2000, 2001, 2002, -;; 2003, 2004, 2005 Free Software Foundation, Inc. +;; 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; This file is part of GNU Emacs. diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ada-xref.el --- a/lisp/progmodes/ada-xref.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ada-xref.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; ada-xref.el --- for lookup and completion in Ada mode ;; Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, -;; 2004, 2005 Free Software Foundation, Inc. +;; 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Markus Heritsch ;; Rolf Ebert diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/antlr-mode.el --- a/lisp/progmodes/antlr-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/antlr-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; antlr-mode.el --- major mode for ANTLR grammar files -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; ;; Author: Christoph.Wedler@sap.com diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/asm-mode.el --- a/lisp/progmodes/asm-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/asm-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; asm-mode.el --- mode for editing assembler code -;; Copyright (C) 1991, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1991, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Eric S. Raymond diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/autoconf.el --- a/lisp/progmodes/autoconf.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/autoconf.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; autoconf.el --- mode for editing Autoconf configure.in files -;; Copyright (C) 2000, 2001, 2002 2003, 2004, 2005 +;; Copyright (C) 2000, 2001, 2002 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Dave Love @@ -52,7 +52,7 @@ "AC_\\(SUBST\\|DEFINE\\(_UNQUOTED\\)?\\)(\\(\\sw+\\)") (defvar autoconf-font-lock-keywords - `(("A[CHMS]_\\sw+" . font-lock-keyword-face) + `(("\\_ (originally based on awk-mode.el) ;; Maintainer: FSF diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-bytecomp.el --- a/lisp/progmodes/cc-bytecomp.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-bytecomp.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-bytecomp.el --- compile time setup for proper compilation -;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Author: Martin Stjernholm ;; Maintainer: bug-cc-mode@gnu.org diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-cmds.el --- a/lisp/progmodes/cc-cmds.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-cmds.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-cmds.el --- user level commands for CC Mode -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1992-1999 Barry A. Warsaw diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-compat.el --- a/lisp/progmodes/cc-compat.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-compat.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-compat.el --- cc-mode compatibility with c-mode.el confusion -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1994-1999 Barry A. Warsaw diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-defs.el --- a/lisp/progmodes/cc-defs.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-defs.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-defs.el --- compile time definitions for CC Mode -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1992-1999 Barry A. Warsaw diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-engine.el --- a/lisp/progmodes/cc-engine.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-engine.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-engine.el --- core syntax guessing engine for CC mode -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1992-1999 Barry A. Warsaw diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-fonts.el --- a/lisp/progmodes/cc-fonts.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-fonts.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cc-fonts.el --- font lock support for CC Mode -;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; Authors: 2003- Alan Mackenzie ;; 2002- Martin Stjernholm diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-langs.el --- a/lisp/progmodes/cc-langs.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-langs.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-langs.el --- language specific settings for CC Mode -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1992-1999 Barry A. Warsaw @@ -258,9 +258,12 @@ (c-fn-region-is-active-p)])) "----" ("Toggle..." - ["Syntactic indentation" c-toggle-syntactic-indentation t] - ["Auto newline" c-toggle-auto-newline t] - ["Hungry delete" c-toggle-hungry-state t]))) + ["Syntactic indentation" c-toggle-syntactic-indentation + :style toggle :selected c-syntactic-indentation] + ["Auto newline" c-toggle-auto-newline + :style toggle :selected c-auto-newline] + ["Hungry delete" c-toggle-hungry-state + :style toggle :selected c-hungry-delete-key]))) ;;; Syntax tables. diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-menus.el --- a/lisp/progmodes/cc-menus.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-menus.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-menus.el --- imenu support for CC Mode -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1992-1999 Barry A. Warsaw diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-mode.el --- a/lisp/progmodes/cc-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-mode.el --- major mode for editing C and similar languages -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 2003- Alan Mackenzie ;; 1998- Martin Stjernholm diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-styles.el --- a/lisp/progmodes/cc-styles.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-styles.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-styles.el --- support for styles in CC Mode -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software Foundation, -;; Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1992-1999 Barry A. Warsaw diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-subword.el --- a/lisp/progmodes/cc-subword.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-subword.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cc-subword.el --- Handling capitalized subwords in a nomenclature -;; Copyright (C) 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Masatake YAMATO diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cc-vars.el --- a/lisp/progmodes/cc-vars.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cc-vars.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cc-vars.el --- user customization variables for CC Mode -;; Copyright (C) 1985,1987,1992-2003, 2004, 2005 Free Software -;; Foundation, Inc. +;; Copyright (C) 1985,1987,1992-2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: 1998- Martin Stjernholm ;; 1992-1999 Barry A. Warsaw diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cfengine.el --- a/lisp/progmodes/cfengine.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cfengine.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,7 @@ ;;; cfengine.el --- mode for editing Cfengine files -;; Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Author: Dave Love ;; Keywords: languages diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cmacexp.el --- a/lisp/progmodes/cmacexp.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cmacexp.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cmacexp.el --- expand C macros in a region -;; Copyright (C) 1992, 1994, 1996, 2000, 2001, 2002, 2003, 2004 +;; Copyright (C) 1992, 1994, 1996, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Francesco Potorti` diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/compile.el --- a/lisp/progmodes/compile.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/compile.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; compile.el --- run compiler as inferior of Emacs, parse error messages ;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -;; 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; Authors: Roland McGrath , ;; Daniel Pfeiffer diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cperl-mode.el --- a/lisp/progmodes/cperl-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cperl-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; cperl-mode.el --- Perl code editing commands for Emacs ;; Copyright (C) 1985, 1986, 1987, 1991, 1992, 1993, 1994, 1995, 1996, 1997, -;; 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Ilya Zakharevich and Bob Olson diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cpp.el --- a/lisp/progmodes/cpp.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cpp.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cpp.el --- highlight or hide text according to cpp conditionals -;; Copyright (C) 1994, 1995, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1994, 1995, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation ;; Author: Per Abrahamsen diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/cwarn.el --- a/lisp/progmodes/cwarn.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/cwarn.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; cwarn.el --- highlight suspicious C and C++ constructions -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Anders Lindgren diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/dcl-mode.el --- a/lisp/progmodes/dcl-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/dcl-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; dcl-mode.el --- major mode for editing DCL command files -;; Copyright (c) 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (c) 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Odd Gripenstam diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/delphi.el --- a/lisp/progmodes/delphi.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/delphi.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; delphi.el --- major mode for editing Delphi source (Object Pascal) in Emacs -;; Copyright (C) 1998, 1999, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1998, 1999, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Ray Blaak diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf-abn.el --- a/lisp/progmodes/ebnf-abn.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf-abn.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,7 @@ ;;; ebnf-abn.el --- parser for ABNF (Augmented BNF) -;; Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Sofware Foundation, Inc. +;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Sofware Foundation, Inc. ;; Author: Vinicius Jose Latorre ;; Maintainer: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf-bnf.el --- a/lisp/progmodes/ebnf-bnf.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf-bnf.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; ebnf-bnf.el --- parser for EBNF -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Sofware Foundation, Inc. ;; Author: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf-dtd.el --- a/lisp/progmodes/ebnf-dtd.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf-dtd.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,7 @@ ;;; ebnf-dtd.el --- parser for DTD (Data Type Description for XML) -;; Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Sofware Foundation, Inc. +;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Sofware Foundation, Inc. ;; Author: Vinicius Jose Latorre ;; Maintainer: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf-ebx.el --- a/lisp/progmodes/ebnf-ebx.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf-ebx.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,7 @@ ;;; ebnf-ebx.el --- parser for EBNF used to specify XML (EBNFX) -;; Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Sofware Foundation, Inc. +;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Sofware Foundation, Inc. ;; Author: Vinicius Jose Latorre ;; Maintainer: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf-iso.el --- a/lisp/progmodes/ebnf-iso.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf-iso.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; ebnf-iso.el --- parser for ISO EBNF -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf-otz.el --- a/lisp/progmodes/ebnf-otz.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf-otz.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; ebnf-otz.el --- syntactic chart OpTimiZer -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Sofware Foundation, Inc. ;; Author: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf-yac.el --- a/lisp/progmodes/ebnf-yac.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf-yac.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; ebnf-yac.el --- parser for Yacc/Bison -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Sofware Foundation, Inc. ;; Author: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebnf2ps.el --- a/lisp/progmodes/ebnf2ps.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebnf2ps.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; ebnf2ps.el --- translate an EBNF to a syntactic chart on PostScript -;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Vinicius Jose Latorre diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ebrowse.el --- a/lisp/progmodes/ebrowse.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ebrowse.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; ebrowse.el --- Emacs C++ class browser & tags facility ;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, -;; 2002, 2003, 2004, 2005 +;; 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation Inc. ;; Author: Gerd Moellmann diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/etags.el --- a/lisp/progmodes/etags.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/etags.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; etags.el --- etags facility for Emacs ;; Copyright (C) 1985, 1986, 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1998, -;; 2000, 2001, 2002, 2003, 2004, 2005 +;; 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Roland McGrath diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/executable.el --- a/lisp/progmodes/executable.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/executable.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; executable.el --- base functionality for executable interpreter scripts -*- byte-compile-dynamic: t -*- -;; Copyright (C) 1994, 1995, 1996, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1994, 1995, 1996, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Daniel Pfeiffer diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/f90.el --- a/lisp/progmodes/f90.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/f90.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; f90.el --- Fortran-90 mode (free format) -;; Copyright (C) 1995, 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1995, 1996, 1997, 2000, 2001, 2002, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Torbj\"orn Einarsson ;; Maintainer: Glenn Morris diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/gdb-ui.el --- a/lisp/progmodes/gdb-ui.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/gdb-ui.el Sat Feb 11 00:11:19 2006 +0000 @@ -4,7 +4,8 @@ ;; Maintainer: FSF ;; Keywords: unix, tools -;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; This file is part of GNU Emacs. @@ -2968,6 +2969,35 @@ (gdb-invalidate-assembler)) +;; For debugging Emacs only (assumes that usual stack buffer already exists). +(defun gdb-xbacktrace () + "Generate a full lisp level backtrace with arguments." + (interactive) + (setq my-frames nil) + (with-current-buffer (get-buffer-create "xbacktrace") + (erase-buffer)) + (let (frame-number gdb-frame-number) + (with-current-buffer (gdb-get-buffer 'gdb-stack-buffer) + (save-excursion + (goto-char (point-min)) + (while (search-forward "in Ffuncall " nil t) + (goto-char (line-beginning-position)) + (looking-at "^#\\([0-9]+\\)") + (push (match-string-no-properties 1) my-frames) + (forward-line 1)))) + (dolist (frame my-frames) + (gdb-enqueue-input (list (concat "server frame " frame "\n") + 'ignore)) +; (gdb-enqueue-input (list "server ppargs\n" 'gdb-get-arguments)) + (gud-basic-call "server ppargs") +) + (gdb-enqueue-input (list (concat "server frame " frame-number "\n") + 'ignore)))) + +(defun gdb-get-arguments () + (with-current-buffer "xbacktrace" + (insert-buffer-substring (gdb-get-buffer 'gdb-partial-output-buffer)))) + ;; Code specific to GDB 6.4 (defconst gdb-source-file-regexp-1 "fullname=\"\\(.*?\\)\"") diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/glasses.el --- a/lisp/progmodes/glasses.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/glasses.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; glasses.el --- make cantReadThis readable -;; Copyright (C) 1999, 2000, 2001, 2005 Free Software Foundation, Inc. +;; Copyright (C) 1999, 2000, 2001, 2005, 2006 Free Software Foundation, Inc. ;; Author: Milan Zamazal ;; Maintainer: Milan Zamazal diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/grep.el --- a/lisp/progmodes/grep.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/grep.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; grep.el --- run Grep as inferior of Emacs, parse match messages ;; Copyright (C) 1985, 1986, 1987, 1993, 1994, 1995, 1996, 1997, 1998, 1999, -;; 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc. +;; 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Roland McGrath ;; Maintainer: FSF diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/gud.el --- a/lisp/progmodes/gud.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/gud.el Sat Feb 11 00:11:19 2006 +0000 @@ -5,7 +5,7 @@ ;; Keywords: unix, tools ;; Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 2000, 2001, 2002, 2003, -;; 2004, 2005 Free Software Foundation, Inc. +;; 2004, 2005, 2006 Free Software Foundation, Inc. ;; This file is part of GNU Emacs. diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/hideif.el --- a/lisp/progmodes/hideif.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/hideif.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; hideif.el --- hides selected code within ifdef -;; Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004 2005 +;; Copyright (C) 1988, 1994, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Daniel LaLiberte diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/hideshow.el --- a/lisp/progmodes/hideshow.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/hideshow.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; hideshow.el --- minor mode cmds to selectively display code/comment blocks ;; Copyright (C) 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003 -;; 2004, 2005 Free Software Foundation, Inc. +;; 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Thien-Thi Nguyen ;; Dan Nicolaescu diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/icon.el --- a/lisp/progmodes/icon.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/icon.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; icon.el --- mode for editing Icon code -;; Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1989, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Chris Smith diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/idlw-complete-structtag.el --- a/lisp/progmodes/idlw-complete-structtag.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/idlw-complete-structtag.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,5 +1,6 @@ ;;; idlw-complete-structtag.el --- Completion of structure tags. -;; Copyright (c) 2001, 2002, 2003, 2004, 2005 Free Software Foundation +;; Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Author: Carsten Dominik ;; Maintainer: J.D. Smith diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/idlw-help.el --- a/lisp/progmodes/idlw-help.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/idlw-help.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; idlw-help.el --- HTML Help code for IDLWAVE ;; Copyright (c) 2000 Carsten Dominik ;; Copyright (c) 2001, 2002 J.D. Smith -;; Copyright (c) 2003, 2004, 2005, Free Software Foundation +;; Copyright (c) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; ;; Authors: J.D. Smith ;; Carsten Dominik diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/idlw-rinfo.el --- a/lisp/progmodes/idlw-rinfo.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/idlw-rinfo.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; idlw-rinfo.el --- Routine Information for IDLWAVE ;; Copyright (c) 1999 Carsten Dominik -;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation +;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Author: J.D. Smith ;; Version: 5.7_22 diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/idlw-shell.el --- a/lisp/progmodes/idlw-shell.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/idlw-shell.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;; idlw-shell.el --- run IDL as an inferior process of Emacs. -;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation +;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: J.D. Smith ;; Carsten Dominik diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/idlw-toolbar.el --- a/lisp/progmodes/idlw-toolbar.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/idlw-toolbar.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; idlw-toolbar.el --- a debugging toolbar for IDLWAVE -;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation +;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Author: Carsten Dominik ;; Maintainer: J.D. Smith diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/idlwave.el --- a/lisp/progmodes/idlwave.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/idlwave.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;; idlwave.el --- IDL editing mode for GNU Emacs -;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation +;; Copyright (c) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Authors: J.D. Smith ;; Carsten Dominik diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/inf-lisp.el --- a/lisp/progmodes/inf-lisp.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/inf-lisp.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; inf-lisp.el --- an inferior-lisp mode -;; Copyright (C) 1988, 1993, 1994, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1988, 1993, 1994, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Olin Shivers diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ld-script.el --- a/lisp/progmodes/ld-script.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ld-script.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,7 @@ ;;; ld-script.el --- GNU linker script editing mode for Emacs -;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. +;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 +;; Free Software Foundation, Inc. ;; Author: Masatake YAMATO ;; Keywords: languages, faces diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/m4-mode.el --- a/lisp/progmodes/m4-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/m4-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; m4-mode.el --- m4 code editing commands for Emacs -;; Copyright (C) 1996, 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1996, 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Andrew Csillag diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/make-mode.el --- a/lisp/progmodes/make-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/make-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; make-mode.el --- makefile editing commands for Emacs -;; Copyright (C) 1992, 1994, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1992, 1994, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Thomas Neumann diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/mantemp.el --- a/lisp/progmodes/mantemp.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/mantemp.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; mantemp.el --- create manual template instantiations from g++ 2.7.2 output -;; Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1996, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Tom Houlder diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/meta-mode.el --- a/lisp/progmodes/meta-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/meta-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; meta-mode.el --- major mode for editing Metafont or MetaPost sources -;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Ulrik Vieth diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/mixal-mode.el --- a/lisp/progmodes/mixal-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/mixal-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; mixal-mode.el --- Major mode for the mix asm language. -;; Copyright (C) 2003, 2004, 2005 Free Software Foundation +;; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation ;; This program is free software; you can redistribute it and/or ;; modify it under the terms of the GNU General Public License as diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/octave-hlp.el --- a/lisp/progmodes/octave-hlp.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/octave-hlp.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; octave-hlp.el --- getting help on Octave symbols using info -;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Kurt Hornik diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/octave-inf.el --- a/lisp/progmodes/octave-inf.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/octave-inf.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; octave-inf.el --- running Octave as an inferior Emacs process -;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Kurt Hornik diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/octave-mod.el --- a/lisp/progmodes/octave-mod.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/octave-mod.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; octave-mod.el --- editing Octave source files under Emacs -;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1997, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Kurt Hornik diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/pascal.el --- a/lisp/progmodes/pascal.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/pascal.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; pascal.el --- major mode for editing pascal source in Emacs ;; Copyright (C) 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000, 2001, 2002 -;; 2003, 2004, 2005 Free Software Foundation, Inc. +;; 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Espen Skoglund ;; Keywords: languages diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/perl-mode.el --- a/lisp/progmodes/perl-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/perl-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; perl-mode.el --- Perl code editing commands for GNU Emacs -;; Copyright (C) 1990, 1994, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1990, 1994, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: William F. Mann diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/prolog.el --- a/lisp/progmodes/prolog.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/prolog.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; prolog.el --- major mode for editing and running Prolog under Emacs -;; Copyright (C) 1986, 1987, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1986, 1987, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Masanobu UMEDA diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/ps-mode.el --- a/lisp/progmodes/ps-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/ps-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; ps-mode.el --- PostScript mode for GNU Emacs -;; Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Peter Kleiweg diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/python.el --- a/lisp/progmodes/python.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/python.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; python.el --- silly walks for Python -;; Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; Author: Dave Love ;; Maintainer: FSF diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/scheme.el --- a/lisp/progmodes/scheme.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/scheme.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; scheme.el --- Scheme (and DSSSL) editing mode -;; Copyright (C) 1986, 1987, 1988, 1997, 1998, 2001, 2002, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1986, 1987, 1988, 1997, 1998, 2001, 2002, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Bill Rozas ;; Adapted-by: Dave Love diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/sh-script.el --- a/lisp/progmodes/sh-script.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/sh-script.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,7 @@ ;;; sh-script.el --- shell-script editing commands for Emacs -;; Copyright (C) 1993, 1994, 1995, 1996, 1997, 1999, 2001, 2003, 2004, 2005 -;; Free Software Foundation, Inc. +;; Copyright (C) 1993, 1994, 1995, 1996, 1997, 1999, 2001, 2003, 2004, 2005, +;; 2006 Free Software Foundation, Inc. ;; Author: Daniel Pfeiffer ;; Version: 2.0f diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/simula.el --- a/lisp/progmodes/simula.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/simula.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; simula.el --- SIMULA 87 code editing commands for Emacs -;; Copyright (C) 1992, 1994, 1996 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1992, 1994, 1996 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Hans Henrik Eriksen diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/sql.el --- a/lisp/progmodes/sql.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/sql.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; sql.el --- specialized comint.el for SQL interpreters -;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Alex Schroeder diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/vhdl-mode.el --- a/lisp/progmodes/vhdl-mode.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/vhdl-mode.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; vhdl-mode.el --- major mode for editing VHDL code -;; Copyright (C) 1992-2003, 2004, 2005 Free Software Foundation, Inc. +;; Copyright (C) 1992-2003, 2004, 2005, 2006 Free Software Foundation, Inc. ;; Authors: Reto Zimmermann ;; Rodney J. Whitby diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/which-func.el --- a/lisp/progmodes/which-func.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/which-func.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; which-func.el --- print current function in mode line -;; Copyright (C) 1994, 1997, 1998, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1994, 1997, 1998, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Author: Alex Rezinsky diff -r c5406394f567 -r 4b3d39451150 lisp/progmodes/xscheme.el --- a/lisp/progmodes/xscheme.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/progmodes/xscheme.el Sat Feb 11 00:11:19 2006 +0000 @@ -1,6 +1,6 @@ ;;; xscheme.el --- run MIT Scheme under Emacs -;; Copyright (C) 1986, 1987, 1989, 1990, 2001, 2002, 2003, 2004, 2005 +;; Copyright (C) 1986, 1987, 1989, 1990, 2001, 2002, 2003, 2004, 2005, 2006 ;; Free Software Foundation, Inc. ;; Maintainer: FSF diff -r c5406394f567 -r 4b3d39451150 lisp/subr.el --- a/lisp/subr.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/subr.el Sat Feb 11 00:11:19 2006 +0000 @@ -561,7 +561,7 @@ Alternatively, if optional fourth argument OLDMAP is specified, we redefine in KEYMAP as NEWDEF those keys which are defined as OLDDEF in OLDMAP. -For most uses, it is simpler and safer to use command remappping like this: +For most uses, it is simpler and safer to use command remapping like this: \(define-key KEYMAP [remap OLDDEF] NEWDEF)" ;; Don't document PREFIX in the doc string because we don't want to ;; advertise it. It's meant for recursive calls only. Here's its @@ -607,8 +607,7 @@ (nconc (nreverse skipped) newdef))) ;; Look past a symbol that names a keymap. (setq inner-def - (and defn - (condition-case nil (indirect-function defn) (error defn)))) + (or (indirect-function defn t) defn)) ;; For nested keymaps, we use `inner-def' rather than `defn' so as to ;; avoid autoloading a keymap. This is mostly done to preserve the ;; original non-autoloading behavior of pre-map-keymap times. diff -r c5406394f567 -r 4b3d39451150 lisp/term/mac-win.el --- a/lisp/term/mac-win.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/term/mac-win.el Sat Feb 11 00:11:19 2006 +0000 @@ -1817,7 +1817,7 @@ ;; more Latin characters) are displayed by a mac-roman font. (create-fontset-from-mac-roman-font "-*-Monaco-*-*-*-*-12-*-*-*-*-*-mac-roman" nil - "-apple-Monaco-normal-r-*-*-12-*-*-*-*-*-fontset-mac") + "-apple-Monaco-normal-r-*-*-12-*-*-*-*-*-fontset-standard") ;; Create fontset specified in X resources "Fontset-N" (N is 0, 1, ...). (create-fontset-from-x-resource) diff -r c5406394f567 -r 4b3d39451150 lisp/tumme.el --- a/lisp/tumme.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/tumme.el Sat Feb 11 00:11:19 2006 +0000 @@ -524,10 +524,16 @@ ;; files. ;; ;; * From thumbs.el: Add an option for clean-up/max-size functionality -;; for thumbnail directory. +;; for thumbnail directory. ;; ;; * From thumbs.el: Add setroot function. ;; +;; * From thumbs.el: Add image resizing, if useful (tumme's automatic +;; "image fit" might be enough) +;; +;; * From thumbs.el: Add the "modify" commands (emboss, negate, +;; monochrome etc). +;; ;; * Asynchronous creation of thumbnails. ;; ;; * Add `tumme-display-thumbs-ring' and functions to cycle that. Find @@ -841,7 +847,7 @@ (defcustom tumme-show-all-from-dir-max-files 50 "*Maximum number of files to show using`tumme-show-all-from-dir'. - before warning the user." +before warning the user." :type 'integer :group 'tumme) @@ -1019,8 +1025,8 @@ - Set `truncate-lines' to t After the command has finished, you would typically mark some -image files in dired and call `tumme-display-thumbs' (by default -bound to C-t d). +image files in dired and type +\\[tumme-display-thumbs] (`tumme-display-thumbs'). If called with prefix argument ARG, skip splitting of windows. @@ -1113,7 +1119,7 @@ (and (> (length files) tumme-show-all-from-dir-max-files) (y-or-n-p (format - "Directory contains more than %d image files. Proceed? " + "Directory contains more than %d image files. Proceed? " tumme-show-all-from-dir-max-files)))) (progn (tumme-display-thumbs) @@ -1826,7 +1832,7 @@ (defun tumme-create-thumbs (&optional arg) "Create thumbnail images for all marked files in dired. With prefix argument ARG, create thumbnails even if they already exist -\(i.e. use this to refresh your thumbnails)." +\(i.e. use this to refresh your thumbnails)." (interactive "P") (let (curr-file thumb-name files count) (setq files (dired-get-marked-files)) @@ -2242,21 +2248,17 @@ (defun tumme-copy-with-exif-file-name () "Copy file with unique name to main image directory. -Copy current or all marked files in dired to a new file in your main -image directory, using a file name generated by -`tumme-get-exif-file-name'. This might or might not be useful for -other people, but I use it each time I fetch images from my digital -camera, for copying the images into my main image directory. +Copy current or all marked files in dired to a new file in your +main image directory, using a file name generated by +`tumme-get-exif-file-name'. A typical usage for this if when +copying images from a digital camera into the image directory. -Typically I open up the folder where I store my incoming digital -images, with file names like dscn0319.jpg, dscn0320.jpg etc., mark the -files I want to copy into my main image directory, and execute this + Typically, you would open up the folder with the incoming +digital images, mark the files to be copied, and execute this function. The result is a couple of new files in -`tumme-main-image-directory' called 2005_05_08_12_52_00_dscn0319.jpg, -2005_05_08_14_27_45_dscn0320.jpg etc. - -When the images are safely in my main image directory I start to -browse and tag them using rest of the functionality in `tumme'." +`tumme-main-image-directory' called +2005_05_08_12_52_00_dscn0319.jpg, +2005_05_08_14_27_45_dscn0320.jpg etc." (interactive) (let (new-name (files (dired-get-marked-files))) @@ -2599,7 +2601,7 @@ ;; Make sure gallery root exist (if (file-exists-p tumme-gallery-dir) (if (not (file-directory-p tumme-gallery-dir)) - (error "tumme-gallery-dir is not a directory")) + (error "Variable tumme-gallery-dir is not a directory")) (make-directory tumme-gallery-dir)) ;; Open index file (setq index-buf (find-file diff -r c5406394f567 -r 4b3d39451150 lisp/vc-svn.el --- a/lisp/vc-svn.el Wed Feb 08 04:26:44 2006 +0000 +++ b/lisp/vc-svn.el Sat Feb 11 00:11:19 2006 +0000 @@ -370,7 +370,11 @@ (vc-svn-command buffer (if (and (vc-stay-local-p file) (fboundp 'start-process)) 'async 0) - file "log"))) + file "log" + ;; By default Subversion only shows the log upto the working version, + ;; whereas we also want the log of the subsequent commits. At least + ;; that's what the vc-cvs.el code does. + "-rHEAD:0"))) (defun vc-svn-diff (file &optional oldvers newvers buffer) "Get a difference report using SVN between two versions of FILE." diff -r c5406394f567 -r 4b3d39451150 lispref/ChangeLog --- a/lispref/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/lispref/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,3 +1,12 @@ +2006-02-10 Kim F. Storm + + * eval.texi (Function Indirection): Add NOERROR to indirect-function. + +2006-02-08 Juanma Barranquero + + * modes.texi (%-Constructs): Remove obsolete info about + `global-mode-string'. + 2006-02-07 Richard M. Stallman * commands.texi (Prefix Command Arguments): Minor cleanup. diff -r c5406394f567 -r 4b3d39451150 lispref/eval.texi --- a/lispref/eval.texi Wed Feb 08 04:26:44 2006 +0000 +++ b/lispref/eval.texi Sat Feb 11 00:11:19 2006 +0000 @@ -314,16 +314,20 @@ perform symbol function indirection explicitly. @c Emacs 19 feature -@defun indirect-function function +@defun indirect-function function &optional noerror @anchor{Definition of indirect-function} This function returns the meaning of @var{function} as a function. If @var{function} is a symbol, then it finds @var{function}'s function definition and starts over with that value. If @var{function} is not a symbol, then it returns @var{function} itself. -This function signals a @code{void-function} error if the final -symbol is unbound and a @code{cyclic-function-indirection} error if -there is a loop in the chain of symbols. +This function signals a @code{void-function} error if the final symbol +is unbound and optional argument @var{noerror} is @code{nil} or +omitted. Otherwise, if @var{noerror} is non-@code{nil}, it returns +@code{nil} if the final symbol is unbound. + +It signals a @code{cyclic-function-indirection} error if there is a +loop in the chain of symbols. Here is how you could define @code{indirect-function} in Lisp: diff -r c5406394f567 -r 4b3d39451150 lispref/modes.texi --- a/lispref/modes.texi Wed Feb 08 04:26:44 2006 +0000 +++ b/lispref/modes.texi Sat Feb 11 00:11:19 2006 +0000 @@ -2012,8 +2012,7 @@ The value of @code{mode-name}. @item %M -The value of @code{global-mode-string}. Currently, only -@code{display-time} modifies the value of @code{global-mode-string}. +The value of @code{global-mode-string}. @end table @node Properties in Mode diff -r c5406394f567 -r 4b3d39451150 mac/ChangeLog --- a/mac/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/mac/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,3 +1,8 @@ +2006-02-10 YAMAMOTO Mitsuharu + + * makefile.MPW (shortlisp, SOME_MACHINE_LISP): Sync with + src/Makefile.in. + 2005-12-19 YAMAMOTO Mitsuharu * makefile.MPW (macselect.c.x): Depend on keymap.h. diff -r c5406394f567 -r 4b3d39451150 mac/makefile.MPW --- a/mac/makefile.MPW Wed Feb 08 04:26:44 2006 +0000 +++ b/mac/makefile.MPW Sat Feb 11 00:11:19 2006 +0000 @@ -1024,6 +1024,7 @@ {Lisp}help.elc ¶ {Lisp}indent.elc ¶ {Lisp}isearch.elc ¶ + {Lisp}rfn-eshadow.elc ¶ {Lisp}loadup.el ¶ {Lisp}loaddefs.el ¶ {Lisp}bindings.elc ¶ @@ -1098,9 +1099,13 @@ {Lisp}ls-lisp.elc {Lisp}dos-fns.elc ¶ {Lisp}w32-fns.elc {Lisp}dos-w32.elc ¶ {Lisp}disp-table.elc {Lisp}dos-vars.elc ¶ - {Lisp}tooltip.elc ¶ + {Lisp}tooltip.elc {Lisp}image.elc ¶ + {Lisp}dnd.elc {Lisp}mwheel.elc ¶ + {Lisp}tool-bar.elc ¶ + {Lisp}x-dnd.elc ¶ {Lisp}international:ccl.elc ¶ - {Lisp}international:codepage.elc + {Lisp}international:codepage.elc ¶ + {Lisp}international:fontset.elc Doc Ä {DocTarget}DOC diff -r c5406394f567 -r 4b3d39451150 man/ChangeLog --- a/man/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/man/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,3 +1,25 @@ +2006-02-10 YAMAMOTO Mitsuharu + + * macos.texi (Mac International): Rename "fontset-mac" to + "fontset-standard". + +2006-02-09 Reiner Steib + + * gnus.texi (Gnus Versions): Add history beyond start of Oort. + +2006-02-09 Mathias Dahl + + * dired.texi (Tumme): Basic documentation for Tumme added. + +2006-02-08 Romain Francoise + + * faq.texi (Top): Remove paragraph about the FAQ being a + transitional document, etc. + (Searching for/replacing newlines): New node. + (Yanking text in isearch): New node. + (Inserting text at the beginning of each line): Rename and make + more general, mention `M-;' in Message mode. + 2006-02-07 Luc Teirlinck * mule.texi (International): diff -r c5406394f567 -r 4b3d39451150 man/dired.texi --- a/man/dired.texi Wed Feb 08 04:26:44 2006 +0000 +++ b/man/dired.texi Sat Feb 11 00:11:19 2006 +0000 @@ -40,6 +40,8 @@ * Updating: Dired Updating. Discarding lines for files of no interest. * Find: Dired and Find. Using `find' to choose the files for Dired. * Wdired:: Operating on files by editing the Dired buffer. +* Tumme:: Image file and thumbnail viewing and + manipulation from the Dired buffer. * Misc: Misc Dired Features. Various other features. @end menu @@ -1140,6 +1142,52 @@ world-writable. These changes also take effect when you type @kbd{C-c C-c}. +@node Tumme +@section Thumbnail and image file viewing and manipulation + +@cindex tumme mode + Tumme provides for simple viewing of thumbnails if image files. It +also provides viewing of the original file, sized or in full size, +inside Emacs or in an external viewer. + + Tumme aims to be both easy to use for a beginner but also powerful +and useful for an experienced user. + + To try out Tumme, mark some image files in Dired and type @kbd{C-t +d} (@code{tumme-display-thumbs}). With point in the thumbnail buffer, +type @kbd{RET} (@code{tumme-display-thumbnail-original-image}) to +display a sized version of it. Use the keys to move around in the +buffer. For easy browing, type @kbd{SPC} +(@code{tumme-display-next-thumbnail-original}) to advance and display +the next image. Typing @kbd{SPC} +(@code{tumme-display-previous-thumbnail-original}) backs up to the +previous thumbnail and displays the image. + + If you want to see the image in its original size, either provide a +prefix argument (@kbd{C-u}) before pressing @kbd{RET}, or type +@kbd{C-return} (@code{tumme-thumbnail-display-external}) to display +the image in an external viewer. + + If you find in image that you want to delete, type @kbd{d} +(@code{tumme-flag-thumb-original-file}) and the file will be flagged +for deletion in the dired buffer. If you just want to delete the +thumbnail image from the thumbnail buffer, type @kbd{C-d} +(@code{tumme-delete-char}). + + More advanced features include commands for using ``tags'' (labels, +or categories) to tag image files and to search for image files with a +certain tag. + + The tags put on image files are stored in a database file and can be +used for marking image files. For example, you can let Tumme mark all +files in the current directory tagged with the tag `flowers'. To tag +image files, mark them in the dired buffer and type @kbd{C-t t} +(@code{tumme-tag-files}). To mark files having a certain tag, type +@kbd{C-t f} (@code{tumme-mark-tagged-files}). + + Tumme also provide simple image manipulation commands, like rotating +thumbnails and original image files. + @node Misc Dired Features @section Other Dired Features diff -r c5406394f567 -r 4b3d39451150 man/faq.texi --- a/man/faq.texi Wed Feb 08 04:26:44 2006 +0000 +++ b/man/faq.texi Sat Feb 11 00:11:19 2006 +0000 @@ -59,12 +59,9 @@ This is the GNU Emacs FAQ, last updated on @today{}. -The FAQ is maintained as a Texinfo document, allowing us to create HTML, -Info, and TeX documents from a single source file, and is slowly but -surely being improved. Please bear with us as we improve on this -format. This FAQ is maintained as a part of GNU Emacs. If you find -any errors, or have any suggestions, please use @kbd{M-x report-emacs-bug} -to report them. +This FAQ is maintained as a part of GNU Emacs. If you find any errors, +or have any suggestions, please use @kbd{M-x report-emacs-bug} to report +them. @menu * FAQ notation:: @@ -1177,6 +1174,8 @@ * Highlighting a region:: * Controlling case sensitivity:: * Wrapping words automatically:: +* Searching for/replacing newlines:: +* Yanking text in isearch:: * Spell-checkers:: * Checking TeX and *roff documents:: * Changing load-path:: @@ -1195,7 +1194,7 @@ * Valid X resources:: * Evaluating Emacs Lisp code:: * Changing the length of a Tab:: -* Inserting > at the beginning of each line:: +* Inserting text at the beginning of each line:: * Underlining paragraphs:: * Repeating a command as many times as possible:: * Forcing the cursor to remain in the same column:: @@ -1534,7 +1533,7 @@ in your @file{.emacs} file. (Also see @ref{Turning on syntax highlighting}.) -@node Controlling case sensitivity, Wrapping words automatically, Highlighting a region, Common requests +@node Controlling case sensitivity, Searching for/replacing newlines, Highlighting a region, Common requests @section How do I control Emacs's case-sensitivity when searching/replacing? @cindex @code{case-fold-search} @cindex Case sensitivity of searches @@ -1566,7 +1565,23 @@ (setq case-fold-search nil))) @end lisp -@node Wrapping words automatically, Spell-checkers, Controlling case sensitivity, Common requests +@node Searching for/replacing newlines, Yanking text in isearch, Controlling case sensitivity, Common requests +@section How do I input a newline character in isearch or query-replace? +@cindex Searching for newlines +@cindex Replacing newlines + +Use @kbd{C-q C-j}. For more information, see @inforef{Special Isearch, +Special Input for Incremental Search, emacs}. + + +@node Yanking text in isearch, Wrapping words automatically, Searching for/replacing newlines, Common requests +@section How do I copy text from the kill ring into the search string? +@cindex Yanking text into the search string +@cindex isearch yanking + +Use @kbd{M-y}. @inforef{Isearch Yank, Isearch Yanking, emacs}. + +@node Wrapping words automatically, Spell-checkers, Yanking text in isearch, Common requests @section How do I make Emacs wrap words for me? @cindex Wrapping word automatically @cindex Wrapping lines @@ -2102,7 +2117,7 @@ @end itemize -@node Changing the length of a Tab, Inserting > at the beginning of each line, Evaluating Emacs Lisp code, Common requests +@node Changing the length of a Tab, Inserting text at the beginning of each line, Evaluating Emacs Lisp code, Common requests @section How do I change Emacs's idea of the @key{TAB} character's length? @cindex Tab length @cindex Length of tab character @@ -2121,8 +2136,9 @@ @key{TAB} characters. The latter controls what characters are inserted when you press the @key{TAB} character in certain modes. -@node Inserting > at the beginning of each line, Underlining paragraphs, Changing the length of a Tab, Common requests -@section How do I insert @samp{>} at the beginning of every line? +@node Inserting text at the beginning of each line, Underlining paragraphs, Changing the length of a Tab, Common requests +@section How do I insert at the beginning of every line? +@cindex Prefixing a region with some text @cindex Prefix character, inserting in mail/news replies @cindex Replies to mail/news, inserting a prefix character @cindex @code{mail-yank-prefix} @@ -2130,7 +2146,7 @@ @cindex News replies, inserting a prefix character To do this to an entire buffer, type @kbd{M-< M-x replace-regexp -@key{RET} ^ @key{RET} > @key{RET}}. +@key{RET} ^ @key{RET} your text @key{RET}}. To do this to a region, use @code{string-insert-rectangle}. Set the mark (@kbd{C-@key{SPC}}) at the beginning of the first line you @@ -2139,13 +2155,12 @@ buffer, type @kbd{C-x h M-x string-insert-rectangle @key{RET}}. If you are trying to prefix a yanked mail message with @samp{>}, you -might want to set the variable @code{mail-yank-prefix}. Better yet, use -the Supercite package (@pxref{Supercite}), which provides flexible -citation for yanked mail and news messages; it is included in Emacs -since version 19.20. @xref{Changing the included text prefix}, for -additional information. - -@node Underlining paragraphs, Repeating a command as many times as possible, Inserting > at the beginning of each line, Common requests +might want to set the variable @code{mail-yank-prefix}. In Message +buffers, you can even use @kbd{M-;} to cite yanked messages (@kbd{M-;} +runs the function @code{comment-region}, it is a general-purpose +mechanism to comment regions). + +@node Underlining paragraphs, Repeating a command as many times as possible, Inserting text at the beginning of each line, Common requests @section How do I insert @samp{_^H} before each character in a region to get an underlined paragraph? @cindex Underlining a region of text @cindex @code{underline-region} diff -r c5406394f567 -r 4b3d39451150 man/gnus.texi --- a/man/gnus.texi Wed Feb 08 04:26:44 2006 +0000 +++ b/man/gnus.texi Sat Feb 11 00:11:19 2006 +0000 @@ -24547,14 +24547,17 @@ ``Gnus 5.8'' (after 99 releases and a CVS repository) on December 3rd 1999. -On the 26th of October 2000, Oort Gnus was begun. +On the 26th of October 2000, Oort Gnus was begun and was released as +Gnus 5.10 on May 1st 2003 (24 releases). + +On the January 4th 2004, No Gnus was begun. If you happen upon a version of Gnus that has a prefixed name -- ``(ding) Gnus'', ``September Gnus'', ``Red Gnus'', ``Quassia Gnus'', -``Pterodactyl Gnus'', ``Oort Gnus'' -- don't panic. Don't let it know -that you're frightened. Back away. Slowly. Whatever you do, don't -run. Walk away, calmly, until you're out of its reach. Find a proper -released version of Gnus and snuggle up to that instead. +``Pterodactyl Gnus'', ``Oort Gnus'', ``No Gnus'' -- don't panic. +Don't let it know that you're frightened. Back away. Slowly. Whatever +you do, don't run. Walk away, calmly, until you're out of its reach. +Find a proper released version of Gnus and snuggle up to that instead. @node Other Gnus Versions diff -r c5406394f567 -r 4b3d39451150 man/macos.texi --- a/man/macos.texi Wed Feb 08 04:26:44 2006 +0000 +++ b/man/macos.texi Sat Feb 11 00:11:19 2006 +0000 @@ -104,12 +104,12 @@ @code{mac-roman}, @code{mac-centraleurroman}, and @code{mac-cyrillic} are used to represent these Mac encodings. - The fontset @code{fontset-mac} is created automatically when Emacs -is run on Mac, and used by default. It displays as many kinds of -characters as possible using 12-point Monaco as a base font. If you -see some character as a hollow box with this fontset, then it's almost -impossible to display it only by customizing font settings (@pxref{Mac -Font Specs}). + The fontset @code{fontset-standard} is created automatically when +Emacs is run on Mac, and used by default. It displays as many kinds +of characters as possible using 12-point Monaco as a base font. If +you see some character as a hollow box with this fontset, then it's +almost impossible to display it only by customizing font settings +(@pxref{Mac Font Specs}). You can use input methods provided either by LEIM (@pxref{Input Methods}) or Mac OS to enter international characters. To use the diff -r c5406394f567 -r 4b3d39451150 src/ChangeLog --- a/src/ChangeLog Wed Feb 08 04:26:44 2006 +0000 +++ b/src/ChangeLog Sat Feb 11 00:11:19 2006 +0000 @@ -1,7 +1,58 @@ +2006-02-10 Thien-Thi Nguyen + + * data.c (Findirect_function): Rewrite docstring. + Fix omission bug: Declare new arg NOERROR. + +2006-02-10 YAMAMOTO Mitsuharu + + * macfns.c (x_set_mouse_color): Don't call rif->define_frame_cursor + if window_desc is not set yet. + (Fx_create_frame): Remove variable x_frame_name. Apply 2005-12-07 + and 2006-01-26 changes for xfns.c. Call x_iconify_frame if frame + parameter `visibility' is `icon'. + (Fx_create_frame, x_create_tip_frame): Use "fontset-standard" + instead of "fontset-mac". + (Fx_focus_frame): New defun. + (syms_of_macfns): Defsubr it. + + * macterm.c (mac_define_frame_cursor): Don't change pointer shape + for unfocused frame. + (x_raise_frame): Call BringToFront instead of SelectWindow. + (x_lower_frame): Use NULL instead of nil. + (x_make_frame_visible): Don't call SelectWindow. + (XTread_socket): Increment handling_signal at the start, decrement + it at the end. + [USE_CG_TEXT_DRAWING] (init_cg_text_anti_aliasing_threshold): Use + CFPreferencesGetAppIntegerValue instead of Fmac_get_preference. + +2006-02-10 Kim F. Storm + + * data.c (Findirect_function): Add NOERROR arg. All callers changed + to pass Qnil for NOERROR. + + * keymap.c (current_minor_maps_error): Remove. + (current_minor_maps): Pass Qt for NOERROR to Findirect_function + instead of using internal_condition_case_1+current_minor_maps_error. + +2006-02-09 Jan Dj,Ad(Brv + + * xterm.c (handle_one_xevent): Must note mouse movement even for nil + frames for GTK, in that case it is the tool bar. This is so that + highlighted text get reset properly. + +2006-02-09 Juanma Barranquero + + * alloc.c (Fmake_bool_vector, Fpurecopy): Doc fixes. + +2006-02-08 Jan Dj,Ad(Brv + + * window.c (adjust_window_trailing_edge): Check that shrinking + does not set a window to size zero or less. + 2006-02-08 Miles Bader * editfns.c (Fconstrain_to_field): Use Fget_char_property instead - of Fget_text_property (other field functions word with overlays as + of Fget_text_property (other field functions work with overlays as well as text-properties). 2006-02-07 Kenichi Handa diff -r c5406394f567 -r 4b3d39451150 src/alloc.c --- a/src/alloc.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/alloc.c Sat Feb 11 00:11:19 2006 +0000 @@ -2299,7 +2299,7 @@ DEFUN ("make-bool-vector", Fmake_bool_vector, Smake_bool_vector, 2, 2, 0, - doc: /* Return a new bool-vector of length LENGTH, using INIT for as each element. + doc: /* Return a new bool-vector of length LENGTH, using INIT for each element. LENGTH must be a number. INIT matters only in whether it is t or nil. */) (length, init) Lisp_Object length, init; @@ -4768,7 +4768,7 @@ DEFUN ("purecopy", Fpurecopy, Spurecopy, 1, 1, 0, - doc: /* Make a copy of OBJECT in pure storage. + doc: /* Make a copy of object OBJ in pure storage. Recursively copies contents of vectors and cons cells. Does not copy symbols. Copies strings without text properties. */) (obj) diff -r c5406394f567 -r 4b3d39451150 src/data.c --- a/src/data.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/data.c Sat Feb 11 00:11:19 2006 +0000 @@ -1927,23 +1927,26 @@ return hare; } -DEFUN ("indirect-function", Findirect_function, Sindirect_function, 1, 1, 0, +DEFUN ("indirect-function", Findirect_function, Sindirect_function, 1, 2, 0, doc: /* Return the function at the end of OBJECT's function chain. -If OBJECT is a symbol, follow all function indirections and return the final -function binding. -If OBJECT is not a symbol, just return it. -Signal a void-function error if the final symbol is unbound. +If OBJECT is not a symbol, just return it. Otherwise, follow all +function indirections to find the final function binding and return it. +If the final symbol in the chain is unbound, signal a void-function error. +Optional arg NOERROR non-nil means to return nil instead of signalling. Signal a cyclic-function-indirection error if there is a loop in the function chain of symbols. */) - (object) + (object, noerror) register Lisp_Object object; + Lisp_Object noerror; { Lisp_Object result; result = indirect_function (object); if (EQ (result, Qunbound)) - return Fsignal (Qvoid_function, Fcons (object, Qnil)); + return (NILP (noerror) + ? Fsignal (Qvoid_function, Fcons (object, Qnil)) + : Qnil); return result; } diff -r c5406394f567 -r 4b3d39451150 src/doc.c --- a/src/doc.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/doc.c Sat Feb 11 00:11:19 2006 +0000 @@ -386,7 +386,7 @@ !NILP (tem))) return Fdocumentation_property (function, Qfunction_documentation, raw); - fun = Findirect_function (function); + fun = Findirect_function (function, Qnil); if (SUBRP (fun)) { if (XSUBR (fun)->doc == 0) diff -r c5406394f567 -r 4b3d39451150 src/eval.c --- a/src/eval.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/eval.c Sat Feb 11 00:11:19 2006 +0000 @@ -618,7 +618,7 @@ /* If this isn't a byte-compiled function, there may be a frame at the top for Finteractive_p. If so, skip it. */ - fun = Findirect_function (*btp->function); + fun = Findirect_function (*btp->function, Qnil); if (SUBRP (fun) && (XSUBR (fun) == &Sinteractive_p || XSUBR (fun) == &Scalled_interactively_p)) btp = btp->next; @@ -639,7 +639,7 @@ a special form, ignoring frames for Finteractive_p and/or Fbytecode at the top. If this frame is for a built-in function (such as load or eval-region) return nil. */ - fun = Findirect_function (*btp->function); + fun = Findirect_function (*btp->function, Qnil); if (exclude_subrs_p && SUBRP (fun)) return 0; @@ -2079,7 +2079,7 @@ Vautoload_queue = Qt; unbind_to (count, Qnil); - fun = Findirect_function (fun); + fun = Findirect_function (fun, Qnil); if (!NILP (Fequal (fun, fundef))) error ("Autoloading failed to define function %s", @@ -2142,7 +2142,7 @@ /* At this point, only original_fun and original_args have values that will be used below */ retry: - fun = Findirect_function (original_fun); + fun = Findirect_function (original_fun, Qnil); if (SUBRP (fun)) { @@ -2841,7 +2841,7 @@ fun = args[0]; - fun = Findirect_function (fun); + fun = Findirect_function (fun, Qnil); if (SUBRP (fun)) { diff -r c5406394f567 -r 4b3d39451150 src/keyboard.c --- a/src/keyboard.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/keyboard.c Sat Feb 11 00:11:19 2006 +0000 @@ -9698,7 +9698,7 @@ while (1) { - final = Findirect_function (cmd); + final = Findirect_function (cmd, Qnil); if (CONSP (final) && (tem = Fcar (final), EQ (tem, Qautoload))) { diff -r c5406394f567 -r 4b3d39451150 src/keymap.c --- a/src/keymap.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/keymap.c Sat Feb 11 00:11:19 2006 +0000 @@ -69,7 +69,7 @@ /* keymap used for minibuffers when doing completion in filenames */ Lisp_Object Vminibuffer_local_filename_completion_map; -/* keymap used for minibuffers when doing completion in filenames +/* keymap used for minibuffers when doing completion in filenames with require-match*/ Lisp_Object Vminibuffer_local_must_match_filename_map; @@ -1403,13 +1403,6 @@ static Lisp_Object *cmm_modes = NULL, *cmm_maps = NULL; static int cmm_size = 0; -/* Error handler used in current_minor_maps. */ -static Lisp_Object -current_minor_maps_error () -{ - return Qnil; -} - /* Store a pointer to an array of the keymaps of the currently active minor modes in *buf, and return the number of maps it contains. @@ -1511,9 +1504,7 @@ } /* Get the keymap definition--or nil if it is not defined. */ - temp = internal_condition_case_1 (Findirect_function, - XCDR (assoc), - Qerror, current_minor_maps_error); + temp = Findirect_function (XCDR (assoc), Qt); if (!NILP (temp)) { cmm_modes[i] = var; @@ -3753,11 +3744,11 @@ Vminibuffer_local_completion_map = Fmake_sparse_keymap (Qnil); Fset_keymap_parent (Vminibuffer_local_completion_map, Vminibuffer_local_map); - DEFVAR_LISP ("minibuffer-local-filename-completion-map", + DEFVAR_LISP ("minibuffer-local-filename-completion-map", &Vminibuffer_local_filename_completion_map, doc: /* Local keymap for minibuffer input with completion for filenames. */); Vminibuffer_local_filename_completion_map = Fmake_sparse_keymap (Qnil); - Fset_keymap_parent (Vminibuffer_local_filename_completion_map, + Fset_keymap_parent (Vminibuffer_local_filename_completion_map, Vminibuffer_local_completion_map); @@ -3767,11 +3758,11 @@ Fset_keymap_parent (Vminibuffer_local_must_match_map, Vminibuffer_local_completion_map); - DEFVAR_LISP ("minibuffer-local-must-match-filename-map", + DEFVAR_LISP ("minibuffer-local-must-match-filename-map", &Vminibuffer_local_must_match_filename_map, doc: /* Local keymap for minibuffer input with completion for filenames with exact match. */); Vminibuffer_local_must_match_filename_map = Fmake_sparse_keymap (Qnil); - Fset_keymap_parent (Vminibuffer_local_must_match_filename_map, + Fset_keymap_parent (Vminibuffer_local_must_match_filename_map, Vminibuffer_local_must_match_map); DEFVAR_LISP ("minor-mode-map-alist", &Vminor_mode_map_alist, diff -r c5406394f567 -r 4b3d39451150 src/lisp.h --- a/src/lisp.h Wed Feb 08 04:26:44 2006 +0000 +++ b/src/lisp.h Sat Feb 11 00:11:19 2006 +0000 @@ -2189,7 +2189,7 @@ EXFUN (Fsymbol_plist, 1); EXFUN (Fsymbol_name, 1); extern Lisp_Object indirect_function P_ ((Lisp_Object)); -EXFUN (Findirect_function, 1); +EXFUN (Findirect_function, 2); EXFUN (Ffset, 2); EXFUN (Fsetplist, 2); EXFUN (Fsymbol_value, 1); diff -r c5406394f567 -r 4b3d39451150 src/macfns.c --- a/src/macfns.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/macfns.c Sat Feb 11 00:11:19 2006 +0000 @@ -1448,7 +1448,8 @@ BLOCK_INPUT; - rif->define_frame_cursor (f, cursor); + if (FRAME_MAC_WINDOW (f) != 0) + rif->define_frame_cursor (f, cursor); f->output_data.mac->text_cursor = cursor; f->output_data.mac->nontext_cursor = nontext_cursor; @@ -2398,11 +2399,12 @@ struct mac_display_info *dpyinfo = NULL; Lisp_Object parent; struct kboard *kb; - char x_frame_name[10]; static int x_frame_count = 2; /* begins at 2 because terminal frame is F1 */ check_mac (); + parms = Fcopy_alist (parms); + /* Use this general default value to start with until we know if this frame has a specified name. */ Vx_resource_name = Vinvocation_name; @@ -2452,18 +2454,6 @@ else f = make_frame (1); - if (EQ (name, Qunbound) || NILP (name)) - { - sprintf (x_frame_name, "F%d", x_frame_count++); - f->name = build_string (x_frame_name); - f->explicit_name = 0; - } - else - { - f->name = name; - f->explicit_name = 1; - } - XSETFRAME (frame, f); /* Note that X Windows does support scroll bars. */ @@ -2544,7 +2534,7 @@ font = x_new_font (f, "-ETL-fixed-medium-r-*--*-160-*-*-*-*-iso8859-1"); /* If those didn't work, look for something which will at least work. */ if (! STRINGP (font)) - font = x_new_fontset (f, build_string ("fontset-mac")); + font = x_new_fontset (f, build_string ("fontset-standard")); if (! STRINGP (font)) font = x_new_font (f, "-*-monaco-*-12-*-mac-roman"); if (! STRINGP (font)) @@ -2679,17 +2669,28 @@ if (EQ (visibility, Qunbound)) visibility = Qt; -#if 0 /* MAC_TODO: really no iconify on Mac */ if (EQ (visibility, Qicon)) x_iconify_frame (f); - else -#endif - if (! NILP (visibility)) + else if (! NILP (visibility)) x_make_frame_visible (f); else /* Must have been Qnil. */ ; } + + /* Initialize `default-minibuffer-frame' in case this is the first + frame on this display device. */ + if (FRAME_HAS_MINIBUF_P (f) + && (!FRAMEP (kb->Vdefault_minibuffer_frame) + || !FRAME_LIVE_P (XFRAME (kb->Vdefault_minibuffer_frame)))) + kb->Vdefault_minibuffer_frame = frame; + + /* All remaining specified parameters, which have not been "used" + by x_get_arg and friends, now go in the misc. alist of the frame. */ + for (tem = parms; !NILP (tem); tem = XCDR (tem)) + if (CONSP (XCAR (tem)) && !NILP (XCAR (XCAR (tem)))) + f->param_alist = Fcons (XCAR (tem), f->param_alist); + UNGCPRO; /* Make sure windows on this frame appear in calls to next-window @@ -2699,9 +2700,11 @@ return unbind_to (count, frame); } + /* FRAME is used only to get a handle on the X display. We don't pass the display info directly because we're called from frame.c, which doesn't know about that structure. */ + Lisp_Object x_get_focus_frame (frame) struct frame *frame; @@ -2714,6 +2717,39 @@ XSETFRAME (xfocus, dpyinfo->x_focus_frame); return xfocus; } + + +DEFUN ("x-focus-frame", Fx_focus_frame, Sx_focus_frame, 1, 1, 0, + doc: /* Set the input focus to FRAME. +FRAME nil means use the selected frame. */) + (frame) + Lisp_Object frame; +{ + struct frame *f = check_x_frame (frame); + struct mac_display_info *dpyinfo = FRAME_MAC_DISPLAY_INFO (f); + + if (dpyinfo->x_focus_frame != f) + { + BLOCK_INPUT; +#ifdef MAC_OSX + ActivateWindow (ActiveNonFloatingWindow (), false); + ActivateWindow (FRAME_MAC_WINDOW (f), true); +#else +#if !TARGET_API_MAC_CARBON + /* SelectWindow (Non-Carbon) does not issue deactivate events if + the possibly inactive window that is to be selected is + already the frontmost one. */ + SendBehind (FRAME_MAC_WINDOW (f), NULL); +#endif + /* This brings the window to the front. */ + SelectWindow (FRAME_MAC_WINDOW (f)); +#endif + UNBLOCK_INPUT; + } + + return Qnil; +} + DEFUN ("xw-color-defined-p", Fxw_color_defined_p, Sxw_color_defined_p, 1, 2, 0, doc: /* Internal function called by `color-defined-p', which see. */) @@ -3664,7 +3700,7 @@ font = x_new_font (f, "-ETL-fixed-medium-r-*--*-160-*-*-*-*-iso8859-1"); /* If those didn't work, look for something which will at least work. */ if (! STRINGP (font)) - font = x_new_fontset (f, build_string ("fontset-mac")); + font = x_new_fontset (f, build_string ("fontset-standard")); if (! STRINGP (font)) font = x_new_font (f, "-*-monaco-*-12-*-mac-roman"); if (! STRINGP (font)) @@ -4513,6 +4549,7 @@ defsubr (&Sx_close_connection); defsubr (&Sx_display_list); defsubr (&Sx_synchronize); + defsubr (&Sx_focus_frame); /* Setting callback functions for fontset handler. */ get_font_info_func = x_get_font_info; diff -r c5406394f567 -r 4b3d39451150 src/macterm.c --- a/src/macterm.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/macterm.c Sat Feb 11 00:11:19 2006 +0000 @@ -1028,12 +1028,15 @@ static void init_cg_text_anti_aliasing_threshold () { - Lisp_Object val = - Fmac_get_preference (build_string ("AppleAntiAliasingThreshold"), - Qnil, Qnil, Qnil); - - if (INTEGERP (val)) - cg_text_anti_aliasing_threshold = XINT (val); + int threshold; + Boolean valid_p; + + threshold = + CFPreferencesGetAppIntegerValue (CFSTR ("AppleAntiAliasingThreshold"), + kCFPreferencesCurrentApplication, + &valid_p); + if (valid_p) + cg_text_anti_aliasing_threshold = threshold; } static int @@ -5301,7 +5304,10 @@ struct frame *f; Cursor cursor; { - SetThemeCursor (cursor); + struct mac_display_info *dpyinfo = FRAME_MAC_DISPLAY_INFO (f); + + if (dpyinfo->x_focus_frame == f) + SetThemeCursor (cursor); } @@ -5856,7 +5862,7 @@ if (f->async_visible) { BLOCK_INPUT; - SelectWindow (FRAME_MAC_WINDOW (f)); + BringToFront (FRAME_MAC_WINDOW (f)); UNBLOCK_INPUT; } } @@ -5870,7 +5876,7 @@ if (f->async_visible) { BLOCK_INPUT; - SendBehind (FRAME_MAC_WINDOW (f), nil); + SendBehind (FRAME_MAC_WINDOW (f), NULL); UNBLOCK_INPUT; } } @@ -5983,7 +5989,6 @@ f->output_data.mac->asked_for_visible = 1; - SelectWindow (FRAME_MAC_WINDOW (f)); CollapseWindow (FRAME_MAC_WINDOW (f), false); ShowWindow (FRAME_MAC_WINDOW (f)); } @@ -9602,6 +9607,8 @@ /* So people can tell when we have read the available input. */ input_signal_count++; + ++handling_signal; + #if USE_CARBON_EVENTS toolbox_dispatcher = GetEventDispatcherTarget (); @@ -10242,6 +10249,7 @@ } #endif + --handling_signal; UNBLOCK_INPUT; return count; } diff -r c5406394f567 -r 4b3d39451150 src/window.c --- a/src/window.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/window.c Sat Feb 11 00:11:19 2006 +0000 @@ -4284,6 +4284,14 @@ { if (!NILP (XWINDOW (window)->next)) { + /* This may happen for the minibuffer. In that case + the window_deletion_count check below does not work. */ + if (XINT (CURSIZE (p->next)) - delta <= 0) + { + Fset_window_configuration (old_config); + error ("Cannot adjust window size as specified"); + } + XSETINT (CURBEG (p->next), XINT (CURBEG (p->next)) + delta); size_window (p->next, XINT (CURSIZE (p->next)) - delta, diff -r c5406394f567 -r 4b3d39451150 src/xterm.c --- a/src/xterm.c Wed Feb 08 04:26:44 2006 +0000 +++ b/src/xterm.c Sat Feb 11 00:11:19 2006 +0000 @@ -6475,6 +6475,12 @@ so update things that depend on mouse position. */ if (f && !f->output_data.x->hourglass_p) note_mouse_movement (f, &event.xmotion); +#ifdef USE_GTK + /* We may get an EnterNotify on the buttons in the toolbar. In that + case we moved out of any highlighted area and need to note this. */ + if (!f && last_mouse_glyph_frame) + note_mouse_movement (last_mouse_glyph_frame, &event); +#endif goto OTHER; case FocusIn: @@ -6502,6 +6508,11 @@ if (any_help_event_p) do_help = -1; } +#ifdef USE_GTK + /* See comment in EnterNotify above */ + else if (last_mouse_glyph_frame) + note_mouse_movement (last_mouse_glyph_frame, &event); +#endif goto OTHER; case FocusOut: