mirror of
git://git.sv.gnu.org/emacs.git
synced 2026-01-30 04:10:54 -08:00
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.
This commit is contained in:
commit
0b12547529
155 changed files with 1281 additions and 685 deletions
|
|
@ -65,6 +65,12 @@ Miles Bader
|
|||
lisp/minibuf-eldef.el
|
||||
lisp/rfn-eshadow.el
|
||||
|
||||
Jay Belanger
|
||||
Calc
|
||||
lisp/calc/*
|
||||
etc/calccard.tex
|
||||
man/calc.texi
|
||||
|
||||
==============================================================================
|
||||
2.
|
||||
==============================================================================
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@ leim working Kenichi Handa
|
|||
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/mh-e done Bill Wohler
|
|||
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
|
||||
|
|
|
|||
|
|
@ -1,3 +1,11 @@
|
|||
2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
|
||||
|
||||
* PROBLEMS (Mac OS X): Add QuickTime 7.0.4 / Mac OS X 10.3.9 breakage.
|
||||
|
||||
2006-02-09 Mathias Dahl <mathias.dahl@gmail.com>
|
||||
|
||||
* NEWS: New key bindings for Tumme in Dired.
|
||||
|
||||
2006-02-05 Jay Belanger <belanger@truman.edu>
|
||||
|
||||
* calccard.tex: Update copyright year.
|
||||
|
|
|
|||
6
etc/NEWS
6
etc/NEWS
|
|
@ -1908,6 +1908,12 @@ boundaries during scrolling.
|
|||
|
||||
* 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:
|
||||
|
||||
+++
|
||||
|
|
|
|||
|
|
@ -1778,6 +1778,13 @@ There appears to be a problem with the implementation of pty's on the
|
|||
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
|
||||
|
|
|
|||
108
lisp/ChangeLog
108
lisp/ChangeLog
|
|
@ -1,3 +1,109 @@
|
|||
2006-02-10 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* desktop.el (desktop-outvar): Fix typo.
|
||||
(desktop-save-buffer-p): Doc fix.
|
||||
|
||||
* subr.el (substitute-key-definition): Fix typo.
|
||||
|
||||
2006-02-10 YAMAMOTO Mitsuharu <mituharu@math.s.chiba-u.ac.jp>
|
||||
|
||||
* 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 <storm@cua.dk>
|
||||
|
||||
* subr.el (substitute-key-definition-key): Pass t for NOERROR to
|
||||
indirect-function instead of using condition-case.
|
||||
|
||||
2006-02-10 Mathias Dahl <mathias.dahl@gmail.com>
|
||||
|
||||
* tumme.el (tumme-copy-with-exif-file-name): Tried to make
|
||||
docstring less `colloquial'...
|
||||
|
||||
2006-02-09 Mathias Dahl <mathias.dahl@gmail.com>
|
||||
|
||||
* tumme.el: Added a couple of todo items.
|
||||
|
||||
2006-02-09 Lars Hansen <larsh@soem.dk>
|
||||
|
||||
* 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 <cyd@stupidchicken.com>
|
||||
|
||||
* image-mode.el (image-toggle-display): Clear image cache if using
|
||||
filename.
|
||||
|
||||
2006-02-09 Masatake YAMATO <jet@gyve.org>
|
||||
|
||||
* 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 <peter.doornbosch@luminis.nl> (tiny change)
|
||||
|
||||
* vc-svn.el (vc-svn-print-log): Show recent commits as well.
|
||||
|
||||
2006-02-09 Juanma Barranquero <lekktu@gmail.com>
|
||||
|
||||
* hilit-chg.el (hilit-chg-update-all-buffers): Use `mapc' instead of
|
||||
`mapcar'; return nil.
|
||||
|
||||
2006-02-08 Chong Yidong <cyd@stupidchicken.com>
|
||||
|
||||
* mouse.el (mouse-drag-track): Don't change window if we rebind to
|
||||
some other event.
|
||||
|
||||
2006-02-08 Ryan Yeske <rcyeske@gmail.com>
|
||||
|
||||
* 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 <Mathias.Megyei@micronas.com> (tiny change)
|
||||
|
||||
* Makefile.in (compile): Append "|| true" to the end of the `find'
|
||||
command, like compile-always does.
|
||||
|
||||
2006-02-08 Sam Steingold <sds@gnu.org>
|
||||
|
||||
* net/tramp.el (tramp-maybe-open-connection): Do not wait for
|
||||
output from a dead connection.
|
||||
|
||||
2006-02-07 Mathias Dahl <brakjoller@hotmail.com>
|
||||
|
||||
* 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 <arne@arnested.dk>
|
||||
2006-01-27 Arne J,Ax(Brgensen <arne@arnested.dk>
|
||||
|
||||
* international/latexenc.el (latexenc-find-file-coding-system):
|
||||
Make sure latexenc-main-file is a regular file and is readable.
|
||||
|
|
|
|||
|
|
@ -155,8 +155,10 @@ TAGS-LISP: $(lisptagsfiles1) $(lisptagsfiles2)
|
|||
# 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|'`; \
|
||||
|
|
|
|||
|
|
@ -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 <neilm@juliet.ll.mit.edu>
|
||||
;; Maintainer: Glenn Morris <rgm@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <johnw@gnu.org>
|
||||
;; Keywords: calendar
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <eggert@twinsun.com>
|
||||
;; Edward M. Reingold <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
;; Maintainer: Glenn Morris <rgm@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <nachum@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <clamen@cs.cmu.edu>
|
||||
;; Edward M. Reingold <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
|
|
|
|||
|
|
@ -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 <fisk@bowdoin.edu>
|
||||
|
|
|
|||
|
|
@ -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 <kifer@cs.sunysb.edu>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
;; Maintainer: Glenn Morris <rgm@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
;; Maintainer: Glenn Morris <rgm@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <ulf.jasper@web.de>
|
||||
;; Created: August 2002
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
;; Maintainer: Glenn Morris <rgm@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <erik@naggum.no>
|
||||
|
|
|
|||
|
|
@ -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 <reingold@cs.uiuc.edu>
|
||||
;; Denis B. Roegel <Denis.Roegel@loria.fr>
|
||||
|
|
|
|||
|
|
@ -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 <larsi@gnus.org>
|
||||
|
|
|
|||
|
|
@ -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 <johnw@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <os10000@seidel-space.de>
|
||||
|
|
|
|||
|
|
@ -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 @@ Not all types of values are supported."
|
|||
(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 @@ which means to truncate VAR's value to at most MAX-SIZE elements
|
|||
(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))
|
||||
|
|
|
|||
|
|
@ -1027,11 +1027,11 @@ dired."
|
|||
" " 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"))
|
||||
|
|
|
|||
|
|
@ -695,7 +695,7 @@ automatically."
|
|||
(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)))
|
||||
|
|
|
|||
|
|
@ -1,3 +1,41 @@
|
|||
2006-02-10 Reiner Steib <Reiner.Steib@gmx.de>
|
||||
|
||||
* gnus.el: Remove bogus comment.
|
||||
|
||||
2006-02-09 Daiki Ueno <ueno@unixuser.org>
|
||||
|
||||
* 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 <yamaoka@jpl.org>
|
||||
|
||||
* 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 <yamaoka@jpl.org>
|
||||
|
||||
* rfc2231.el (rfc2231-parse-string): Sort segmented parameters;
|
||||
don't decode quoted parameters; remove misimported Emacs code.
|
||||
Suggested by ARISAWA Akihiro <ari@mbf.ocn.ne.jp>.
|
||||
(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 <ari@mbf.ocn.ne.jp>.
|
||||
(rfc2231-encode-string): Remove misimported Emacs code.
|
||||
|
||||
2006-02-07 Katsumi Yamaoka <yamaoka@jpl.org>
|
||||
|
||||
* 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 <uwi7@stud.uni-karlsruhe.de>
|
||||
2006-02-03 Andreas Seltenreich <uwi7@stud.uni-karlsruhe.de>
|
||||
|
||||
* 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 <uwi7@stud.uni-karlsruhe.de>
|
||||
2006-01-31 Andreas Seltenreich <uwi7@stud.uni-karlsruhe.de>
|
||||
|
||||
* 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 <uwi7@stud.uni-karlsruhe.de>
|
||||
2006-01-30 Andreas Seltenreich <uwi7@stud.uni-karlsruhe.de>
|
||||
|
||||
* 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 <ken.manheimer@gmail.com>
|
||||
|
||||
* pgg-pgp.el (pgg-pgp-encrypt-region, pgg-pgp-decrypt-region)
|
||||
(pgg-pgp-encrypt-symmetric-region, pgg-pgp-encrypt-symmetric)
|
||||
(pgg-pgp-encrypt, pgg-pgp-decrypt-region, pgg-pgp-decrypt)
|
||||
(pgg-pgp-sign-region, pgg-pgp-sign): Add optional 'passphrase'
|
||||
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 <ken.manheimer@gmail.com>
|
||||
|
||||
* 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 <ken.manheimer+emacs@gmail.com>
|
||||
|
||||
* 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 <swilde@sha-bang.de>
|
||||
|
||||
* 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 <monnier@iro.umontreal.ca>
|
||||
|
||||
* gnus-delay.el (gnus-delay-group): Don't autoload.
|
||||
|
|
|
|||
|
|
@ -4257,9 +4257,6 @@ current display is used."
|
|||
(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.
|
||||
|
|
|
|||
|
|
@ -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)
|
||||
|
|
|
|||
|
|
@ -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[^ ]+:")
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -826,7 +826,7 @@ deleted. Point is left where the deleted region was."
|
|||
(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.
|
||||
|
|
|
|||
|
|
@ -52,14 +52,8 @@ function fails in parsing of parameters."
|
|||
(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 @@ function fails in parsing of parameters."
|
|||
(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 @@ function fails in parsing of parameters."
|
|||
(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 @@ function fails in parsing of parameters."
|
|||
(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 @@ function fails in parsing of parameters."
|
|||
|
||||
;; 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 @@ function fails in parsing of parameters."
|
|||
|
||||
(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 @@ the result of this function."
|
|||
(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)
|
||||
|
|
|
|||
|
|
@ -521,7 +521,7 @@ the text properties of type `hilit-chg'."
|
|||
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 @@ Hook variables:
|
|||
;; 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 @@ Hook variables:
|
|||
(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 @@ changes are made, so \\[highlight-changes-next-change] and
|
|||
;; 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 @@ variable `highlight-changes-global-changes-existing-buffers' is non-nil).
|
|||
(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 @@ from `global-highlight-changes' when turning on global Highlight Changes mode."
|
|||
(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 @@ from `global-highlight-changes' when turning on global Highlight Changes mode."
|
|||
|
||||
|
||||
(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 @@ from `global-highlight-changes' when turning on global Highlight Changes mode."
|
|||
(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:
|
||||
;;
|
||||
|
|
|
|||
|
|
@ -140,7 +140,8 @@ and showing the image as an image."
|
|||
(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)))
|
||||
|
|
|
|||
|
|
@ -1,3 +1,22 @@
|
|||
2006-02-10 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* 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 <wohler@newt.com>
|
||||
|
||||
* 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 <psg@debian.org>
|
||||
|
||||
* mh-e.el (mh-invisible-header-fields-internal): Added entries
|
||||
"X-BrightmailFiltered:", "X-Brightmail-Tracker:" and "X-Hashcash"
|
||||
|
||||
2006-02-04 Bill Wohler <wohler@newt.com>
|
||||
|
||||
* mh-e.el (mh-inc-spool-list): Update example for Emacs 22 which
|
||||
|
|
|
|||
|
|
@ -144,7 +144,7 @@ The argument STRING is ignored."
|
|||
(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.
|
||||
|
|
|
|||
|
|
@ -2306,6 +2306,8 @@ of citations entirely, choose \"None\"."
|
|||
"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 @@ of citations entirely, choose \"None\"."
|
|||
"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
|
||||
|
|
|
|||
|
|
@ -81,8 +81,8 @@ message number, and optionally the match.")
|
|||
;;; 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 @@ folder containing the index search results."
|
|||
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)))
|
||||
|
|
|
|||
|
|
@ -516,13 +516,15 @@ value of `mh-recursive-folders-flag'. If this flag is nil, and
|
|||
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
|
||||
|
|
|
|||
|
|
@ -1036,13 +1036,13 @@ should only be used by mouse-drag-region."
|
|||
(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
|
||||
|
|
|
|||
|
|
@ -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 @@ underneath each nick."
|
|||
"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 @@ number. If zero or nil, no truncating is done."
|
|||
(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 @@ Called with 5 arguments, PROCESS, SENDER, RESPONSE, TARGET and TEXT."
|
|||
: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 @@ Called with 5 arguments, PROCESS, SENDER, RESPONSE, TARGET and TEXT."
|
|||
|
||||
(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 @@ respectively."
|
|||
(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 @@ Functions are called with PROCESS and SENTINEL arguments.")
|
|||
(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 @@ Function is called with PROCESS, COMMAND, SENDER, ARGS and LINE.")
|
|||
|
||||
(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 @@ If NOTICEP is non-nil, send a notice instead of privmsg."
|
|||
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 @@ If buffer is nil, return the target of the current buffer."
|
|||
(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 @@ This is used for the initial name given to IRC buffers."
|
|||
(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 @@ if there is no existing buffer for TARGET, otherwise return nil."
|
|||
"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 @@ Create the buffer if it doesn't exist."
|
|||
(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 @@ Create the buffer if it doesn't exist."
|
|||
(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 @@ Create the buffer if it doesn't exist."
|
|||
(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 @@ Create the buffer if it doesn't exist."
|
|||
(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 @@ record activity."
|
|||
(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 @@ record activity."
|
|||
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 @@ record activity."
|
|||
(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 @@ record activity."
|
|||
|
||||
(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 @@ record activity."
|
|||
(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 @@ if NICK is also on `rcirc-ignore-list-automatic'."
|
|||
(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 @@ activity. Only run if the buffer is not visible and
|
|||
(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 @@ Ignore NICK, unignore NICK if already ignored, or list ignored
|
|||
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 @@ ones added to the list automatically are marked with an asterisk."
|
|||
"://"
|
||||
(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 @@ FUNCTION takes 3 arguments, MATCH-START, MATCH-END, and STRING."
|
|||
'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 @@ FUNCTION takes 3 arguments, MATCH-START, MATCH-END, and STRING."
|
|||
(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 @@ FUNCTION takes 3 arguments, MATCH-START, MATCH-END, and STRING."
|
|||
(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 @@ FUNCTION takes 3 arguments, MATCH-START, MATCH-END, and STRING."
|
|||
(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 @@ FUNCTION takes 3 arguments, MATCH-START, MATCH-END, and STRING."
|
|||
(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 @@ FUNCTION takes 3 arguments, MATCH-START, MATCH-END, and STRING."
|
|||
|
||||
;; 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 @@ FUNCTION takes 3 arguments, MATCH-START, MATCH-END, and STRING."
|
|||
|
||||
(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 @@ Passwords are read from `rcirc-authinfo-file-name' (which see)."
|
|||
(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 @@ Passwords are read from `rcirc-authinfo-file-name' (which see)."
|
|||
|
||||
(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 @@ Passwords are read from `rcirc-authinfo-file-name' (which see)."
|
|||
: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))
|
||||
|
|
|
|||
|
|
@ -6482,7 +6482,8 @@ connection if a previous connection has died for some reason."
|
|||
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)))
|
||||
|
|
|
|||
|
|
@ -83,6 +83,9 @@ Whether the passphrase is cached at all is controlled by
|
|||
(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))
|
||||
|
||||
|
|
|
|||
|
|
@ -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 @@ passphrase cache or user."
|
|||
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 @@ passphrase cache or user."
|
|||
(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 @@ passphrase cache or user."
|
|||
(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 @@ passphrase cache or user."
|
|||
(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)
|
||||
|
|
|
|||
|
|
@ -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 <ebert@inf.enst.fr>
|
||||
;; Markus Heritsch <Markus.Heritsch@studbox.uni-stuttgart.de>
|
||||
|
|
|
|||
|
|
@ -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 <briot@gnat.com>
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
|
||||
|
|
|
|||
|
|
@ -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 <Markus.Heritsch@studbox.uni-stuttgart.de>
|
||||
;; Rolf Ebert <ebert@inf.enst.fr>
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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 <esr@snark.thyrsus.com>
|
||||
|
|
|
|||
|
|
@ -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 <fx@gnu.org>
|
||||
|
|
@ -52,7 +52,7 @@
|
|||
"AC_\\(SUBST\\|DEFINE\\(_UNQUOTED\\)?\\)(\\(\\sw+\\)")
|
||||
|
||||
(defvar autoconf-font-lock-keywords
|
||||
`(("A[CHMS]_\\sw+" . font-lock-keyword-face)
|
||||
`(("\\_<A[CHMS]_\\sw+" . font-lock-keyword-face)
|
||||
(,autoconf-definition-regexp
|
||||
3 font-lock-function-name-face)
|
||||
;; Are any other M4 keywords really appropriate for configure.in,
|
||||
|
|
|
|||
|
|
@ -1,6 +1,7 @@
|
|||
;;; cc-align.el --- custom indentation functions 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
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
;;; cc-awk.el --- AWK specific code within cc-mode.
|
||||
|
||||
;; Copyright (C) 1988,94,96,2000, 2001, 2002, 2003, 2004, 2005 Free
|
||||
;; Software Foundation, Inc.
|
||||
;; Copyright (C) 1988,94,96,2000, 2001, 2002, 2003, 2004, 2005, 2006
|
||||
;; Free Software Foundation, Inc.
|
||||
|
||||
;; Author: Alan Mackenzie <acm@muc.de> (originally based on awk-mode.el)
|
||||
;; Maintainer: FSF
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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 @@ the evaluated constant value at compile time."
|
|||
(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.
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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 <fx@gnu.org>
|
||||
;; Keywords: languages
|
||||
|
|
|
|||
|
|
@ -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` <pot@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <roland@gnu.org>,
|
||||
;; Daniel Pfeiffer <occitan@esperanto.org>
|
||||
|
|
|
|||
|
|
@ -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
|
||||
|
|
|
|||
|
|
@ -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 <abraham@dina.kvl.dk>
|
||||
|
|
|
|||
|
|
@ -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 <andersl@andersl.com>
|
||||
|
|
|
|||
|
|
@ -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 <gripenstamol@decus.se>
|
||||
|
|
|
|||
|
|
@ -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 <blaak@infomatch.com>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
;; Maintainer: Vinicius Jose Latorre <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <viniciusjl@ig.com.br>
|
||||
|
|
|
|||
|
|
@ -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 <gerd@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <roland@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 <occitan@esperanto.org>
|
||||
|
|
|
|||
|
|
@ -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 <Torbjorn.Einarsson@era.ericsson.se>
|
||||
;; Maintainer: Glenn Morris <rgm@gnu.org>
|
||||
|
|
|
|||
|
|
@ -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 @@ BUFFER nil or omitted means use the current buffer."
|
|||
(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=\"\\(.*?\\)\"")
|
||||
|
||||
|
|
|
|||
|
|
@ -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 <pdm@zamazal.org>
|
||||
;; Maintainer: Milan Zamazal <pdm@zamazal.org>
|
||||
|
|
|
|||
|
|
@ -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 <roland@gnu.org>
|
||||
;; Maintainer: FSF
|
||||
|
|
|
|||
|
|
@ -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.
|
||||
|
||||
|
|
|
|||
|
|
@ -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 <liberte@holonexus.org>
|
||||
|
|
|
|||
|
|
@ -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 <ttn@gnu.org>
|
||||
;; Dan Nicolaescu <dann@ics.uci.edu>
|
||||
|
|
|
|||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue