diff options
| author | Karoly Lorentey | 2006-02-16 16:18:54 +0000 |
|---|---|---|
| committer | Karoly Lorentey | 2006-02-16 16:18:54 +0000 |
| commit | 322c30faa92c5ba2accc1027893a7cc24abbde72 (patch) | |
| tree | 235c1de5e7e7b71c470b326e9480e3476c483050 /lisp/erc | |
| parent | 6213d5b33cfae99e350488ab96bfd9704e0ff834 (diff) | |
| parent | b51897597a6ab40a4772d70a23421e66b3eb5048 (diff) | |
| download | emacs-322c30faa92c5ba2accc1027893a7cc24abbde72.tar.gz emacs-322c30faa92c5ba2accc1027893a7cc24abbde72.zip | |
Merged from
Patches applied:
* emacs@sv.gnu.org/emacs--devo--0--patch-73
Merge from erc--emacs--0
* emacs@sv.gnu.org/emacs--devo--0--patch-74
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-75
Make ERC comply with the new copyright year guidelines.
* emacs@sv.gnu.org/emacs--devo--0--patch-76
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-77
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-78
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-79
(rcirc-format-response-string): Fix small bugs
* emacs@sv.gnu.org/emacs--devo--0--patch-80
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-81
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-82
Fix compiler error in erc-dcc.el.
* emacs@sv.gnu.org/emacs--devo--0--patch-83
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-84
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-85
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-86
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-87
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-88
Merge from erc--emacs--0
* emacs@sv.gnu.org/emacs--devo--0--patch-89
Update from CVS
* emacs@sv.gnu.org/emacs--devo--0--patch-90
Update from CVS
git-archimport-id: lorentey@elte.hu--2004/emacs--multi-tty--0--patch-513
Diffstat (limited to 'lisp/erc')
32 files changed, 251 insertions, 141 deletions
diff --git a/lisp/erc/ChangeLog b/lisp/erc/ChangeLog index 50b37eb044f..ec2098c7bd3 100644 --- a/lisp/erc/ChangeLog +++ b/lisp/erc/ChangeLog | |||
| @@ -1,3 +1,97 @@ | |||
| 1 | 2006-02-15 Michael Olson <mwolson@gnu.org> | ||
| 2 | |||
| 3 | * erc.el (erc): Move to the end of the buffer when a continued | ||
| 4 | session is detected. Thanks to e1f and indio for the report and | ||
| 5 | testing a potential fix. | ||
| 6 | |||
| 7 | 2006-02-14 Michael Olson <mwolson@gnu.org> | ||
| 8 | |||
| 9 | * debian/changelog: Prepare a new Debian package. | ||
| 10 | |||
| 11 | * Makefile (debprepare): New rule that creates an ERC snapshot | ||
| 12 | directory for use in both new Debian releases and revisions for | ||
| 13 | Debian packages. | ||
| 14 | (debrelease, debrevision-mwolson): Use debprepare. | ||
| 15 | |||
| 16 | * NEWS: Bring up-to-date. | ||
| 17 | |||
| 18 | * erc-stamp.el (erc-insert-timestamp-right): For now, put | ||
| 19 | timestamps before rather than after erc-fill-column when | ||
| 20 | erc-timestamp-right-column is nil. This way we won't surprise | ||
| 21 | anyone unpleasantly, or so it is hoped. | ||
| 22 | |||
| 23 | 2006-02-13 Michael Olson <mwolson@gnu.org> | ||
| 24 | |||
| 25 | * erc-dcc.el: Use (eval-when-compile (require 'cl)). | ||
| 26 | |||
| 27 | 2006-02-12 Michael Olson <mwolson@gnu.org> | ||
| 28 | |||
| 29 | * erc-autoaway.el, erc-dcc.el, erc-ezbounce.el, erc-fill.el, | ||
| 30 | erc-goodies.el, erc-hecomplete.el, erc-ibuffer.el, erc-identd.el, | ||
| 31 | erc-imenu.el, erc-join.el, erc-lang.el, erc-list.el, erc-log.el, | ||
| 32 | erc-match.el, erc-menu.el, erc-netsplit.el, erc-networks.el, | ||
| 33 | erc-notify.el, erc-page.el, erc-pcomplete.el, erc-replace.el, | ||
| 34 | erc-ring.el, erc-services.el, erc-sound.el, erc-speedbar.el, | ||
| 35 | erc-spelling.el, erc-track.el, erc-truncate.el, erc-xdcc.el: Add | ||
| 36 | 2006 to copyright years, to comply with the changed guidelines. | ||
| 37 | |||
| 38 | 2006-02-11 Michael Olson <mwolson@gnu.org> | ||
| 39 | |||
| 40 | * erc.el (erc-update-modules): Make some requirements shorter, so | ||
| 41 | that it's easier to see why they are needed. | ||
| 42 | |||
| 43 | * erc-stamp.el (erc-timestamp-use-align-to): Renamed from | ||
| 44 | `erc-timestamp-right-align-by-pixel'. Set the default based on | ||
| 45 | whether we are in Emacs 22, and using X. Improve documentation. | ||
| 46 | (erc-insert-aligned): Remove calculation of offset, since | ||
| 47 | :align-to pos works after all. Unlike the previous solution, this | ||
| 48 | one works when erc-stamp.el is compiled. | ||
| 49 | (erc-insert-timestamp-right): Don't add length of string, and then | ||
| 50 | later remove its displayed width. This puts timestamps after | ||
| 51 | erc-fill-column when erc-timestamp-right-column is nil, rather | ||
| 52 | than before it. It also fixes a subtle bug. Remove use of | ||
| 53 | `current-window', since there is no variable by that name in | ||
| 54 | Emacs21, Emacs22, or XEmacs21 beta. Check to see whether | ||
| 55 | `erc-fill-column' is non-nil before using it. | ||
| 56 | |||
| 57 | 2006-02-11 Diane Murray <disumu@x3y2z1.net> | ||
| 58 | |||
| 59 | * erc-list.el: Define `list' module which sets the alias | ||
| 60 | `erc-cmd-LIST' to `erc-list-channels' when enabled and | ||
| 61 | `erc-list-channels-simple' when disabled. | ||
| 62 | (erc-list-channels): Was `erc-cmd-LIST', renamed. | ||
| 63 | (erc-list-channels-simple): New function. | ||
| 64 | |||
| 65 | * erc.el (erc-modules): Added `list' to enabled modules. Moved | ||
| 66 | customization options left in source code. | ||
| 67 | |||
| 68 | * erc-menu.el (erc-menu-definition): Use `erc-list-channels'. | ||
| 69 | |||
| 70 | * erc-spelling.el (define-erc-module): Make sure there's a buffer | ||
| 71 | before calling `with-current-buffer'. | ||
| 72 | |||
| 73 | 2006-02-10 Michael Olson <mwolson@gnu.org> | ||
| 74 | |||
| 75 | * Makefile (debbuild): Split from debrelease. | ||
| 76 | (debrevision-mwolson): New rule that causes a Debian revision to | ||
| 77 | be built. | ||
| 78 | |||
| 79 | * erc.el (erc-migrate-modules): Use a better algorithm. Thanks to | ||
| 80 | Johan Bockgård. | ||
| 81 | (erc-modules): Change use of 'pcomplete to 'completion. | ||
| 82 | |||
| 83 | 2006-02-09 Diane Murray <disumu@x3y2z1.net> | ||
| 84 | |||
| 85 | * erc.el (erc-get-parsed-vector, erc-get-parsed-vector-nick) | ||
| 86 | (erc-get-parsed-vector-type): Moved here from erc-match.el. | ||
| 87 | |||
| 88 | * erc-match.el (erc-get-parsed-vector, erc-get-parsed-vector-nick) | ||
| 89 | (erc-get-parsed-vector-type): Moved these functions to erc.el | ||
| 90 | since they can be useful outside of the text matching module. | ||
| 91 | |||
| 92 | * erc-dcc.el, erc-stamp.el, erc-xdcc.el: Changed "Emacs IRC Client" | ||
| 93 | to "ERC". | ||
| 94 | |||
| 1 | 2006-02-07 Michael Olson <mwolson@gnu.org> | 95 | 2006-02-07 Michael Olson <mwolson@gnu.org> |
| 2 | 96 | ||
| 3 | * ChangeLog.01, ChangeLog.02, ChangeLog.03, ChangeLog.04, | 97 | * ChangeLog.01, ChangeLog.02, ChangeLog.03, ChangeLog.04, |
diff --git a/lisp/erc/erc-autoaway.el b/lisp/erc/erc-autoaway.el index 41c16b82cb1..56713cba8bf 100644 --- a/lisp/erc/erc-autoaway.el +++ b/lisp/erc/erc-autoaway.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-autoaway.el --- Provides autoaway for ERC | 1 | ;;; erc-autoaway.el --- Provides autoaway for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Jorgen Schaefer <forcer@forcix.cx> | 5 | ;; Author: Jorgen Schaefer <forcer@forcix.cx> |
| 6 | ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcAutoAway | 6 | ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcAutoAway |
diff --git a/lisp/erc/erc-dcc.el b/lisp/erc/erc-dcc.el index d5789a51708..4b9172f06d7 100644 --- a/lisp/erc/erc-dcc.el +++ b/lisp/erc/erc-dcc.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-dcc.el --- CTCP DCC module for ERC | 1 | ;;; erc-dcc.el --- CTCP DCC module for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 1993, 1994, 1995, 1998, 2002, 2003, 2004 | 3 | ;; Copyright (C) 1993, 1994, 1995, 1998, 2002, 2003, 2004, 2006 |
| 4 | ;; Free Software Foundation, Inc. | 4 | ;; Free Software Foundation, Inc. |
| 5 | 5 | ||
| 6 | ;; Author: Ben A. Mesander <ben@gnu.ai.mit.edu> | 6 | ;; Author: Ben A. Mesander <ben@gnu.ai.mit.edu> |
| @@ -29,7 +29,7 @@ | |||
| 29 | 29 | ||
| 30 | ;;; Commentary: | 30 | ;;; Commentary: |
| 31 | 31 | ||
| 32 | ;; This file provides Direct Client-to-Client support for the Emacs IRC Client. | 32 | ;; This file provides Direct Client-to-Client support for ERC. |
| 33 | ;; | 33 | ;; |
| 34 | ;; The original code was taken from zenirc-dcc.el, heavily mangled and | 34 | ;; The original code was taken from zenirc-dcc.el, heavily mangled and |
| 35 | ;; rewritten to support the way how ERC operates. Server socket support | 35 | ;; rewritten to support the way how ERC operates. Server socket support |
| @@ -55,7 +55,8 @@ | |||
| 55 | 55 | ||
| 56 | (require 'erc) | 56 | (require 'erc) |
| 57 | (eval-when-compile | 57 | (eval-when-compile |
| 58 | (require 'pcomplete)) | 58 | (require 'cl) |
| 59 | (require 'pcomplete)) | ||
| 59 | 60 | ||
| 60 | (defgroup erc-dcc nil | 61 | (defgroup erc-dcc nil |
| 61 | "DCC stands for Direct Client Communication, where you and your | 62 | "DCC stands for Direct Client Communication, where you and your |
diff --git a/lisp/erc/erc-ezbounce.el b/lisp/erc/erc-ezbounce.el index 59e80b60b8d..48395bf1dab 100644 --- a/lisp/erc/erc-ezbounce.el +++ b/lisp/erc/erc-ezbounce.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-ezbounce.el --- Handle EZBounce bouncer commands | 1 | ;;; erc-ezbounce.el --- Handle EZBounce bouncer commands |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Andreas Fuchs <asf@void.at> | 5 | ;; Author: Andreas Fuchs <asf@void.at> |
| 6 | ;; Keywords: comm | 6 | ;; Keywords: comm |
diff --git a/lisp/erc/erc-fill.el b/lisp/erc/erc-fill.el index f945d838c2a..6a5f80f7fd8 100644 --- a/lisp/erc/erc-fill.el +++ b/lisp/erc/erc-fill.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-fill.el --- Filling IRC messages in various ways | 1 | ;;; erc-fill.el --- Filling IRC messages in various ways |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Andreas Fuchs <asf@void.at> | 5 | ;; Author: Andreas Fuchs <asf@void.at> |
| 6 | ;; Mario Lang <mlang@delysid.org> | 6 | ;; Mario Lang <mlang@delysid.org> |
diff --git a/lisp/erc/erc-goodies.el b/lisp/erc/erc-goodies.el index c844af55594..f6d32ee7c06 100644 --- a/lisp/erc/erc-goodies.el +++ b/lisp/erc/erc-goodies.el | |||
| @@ -1,6 +1,7 @@ | |||
| 1 | ;; erc-goodies.el --- Collection of ERC modules | 1 | ;; erc-goodies.el --- Collection of ERC modules |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2003, 2004, 2005 Free Software Foundation | 3 | ;; Copyright (C) 2001, 2002, 2003, 2004, 2005, 2006 |
| 4 | ;; Free Software Foundation, Inc. | ||
| 4 | 5 | ||
| 5 | ;; Author: Jorgen Schaefer <forcer@forcix.cx> | 6 | ;; Author: Jorgen Schaefer <forcer@forcix.cx> |
| 6 | 7 | ||
diff --git a/lisp/erc/erc-hecomplete.el b/lisp/erc/erc-hecomplete.el index 763d75c8fc7..85a81569782 100644 --- a/lisp/erc/erc-hecomplete.el +++ b/lisp/erc/erc-hecomplete.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-hecomplete.el --- Provides Nick name completion for ERC | 1 | ;;; erc-hecomplete.el --- Provides Nick name completion for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2001, 2002, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Alex Schroeder <alex@gnu.org> | 5 | ;; Author: Alex Schroeder <alex@gnu.org> |
| 6 | ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcCompletion | 6 | ;; URL: http://www.emacswiki.org/cgi-bin/wiki.pl?ErcCompletion |
diff --git a/lisp/erc/erc-ibuffer.el b/lisp/erc/erc-ibuffer.el index a122908ed2c..7ca843d115c 100644 --- a/lisp/erc/erc-ibuffer.el +++ b/lisp/erc/erc-ibuffer.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-ibuffer.el --- ibuffer integration with ERC | 1 | ;;; erc-ibuffer.el --- ibuffer integration with ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@delysid.org> | 5 | ;; Author: Mario Lang <mlang@delysid.org> |
| 6 | ;; Keywords: comm | 6 | ;; Keywords: comm |
diff --git a/lisp/erc/erc-identd.el b/lisp/erc/erc-identd.el index 5cb179c7e22..e0ccfb40497 100644 --- a/lisp/erc/erc-identd.el +++ b/lisp/erc/erc-identd.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-identd.el --- RFC1413 (identd authentication protocol) server | 1 | ;;; erc-identd.el --- RFC1413 (identd authentication protocol) server |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2003 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2003, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: John Wiegley <johnw@gnu.org> | 5 | ;; Author: John Wiegley <johnw@gnu.org> |
| 6 | ;; Keywords: comm, processes | 6 | ;; Keywords: comm, processes |
diff --git a/lisp/erc/erc-imenu.el b/lisp/erc/erc-imenu.el index c64c9c04723..88de1cedf6e 100644 --- a/lisp/erc/erc-imenu.el +++ b/lisp/erc/erc-imenu.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-imenu.el -- Imenu support for ERC | 1 | ;;; erc-imenu.el -- Imenu support for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2001, 2002, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@delysid.org> | 5 | ;; Author: Mario Lang <mlang@delysid.org> |
| 6 | ;; Keywords: comm | 6 | ;; Keywords: comm |
diff --git a/lisp/erc/erc-join.el b/lisp/erc/erc-join.el index da41ea77374..0d2c1f98706 100644 --- a/lisp/erc/erc-join.el +++ b/lisp/erc/erc-join.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-join.el --- autojoin channels on connect and reconnects | 1 | ;;; erc-join.el --- autojoin channels on connect and reconnects |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Alex Schroeder <alex@gnu.org> | 5 | ;; Author: Alex Schroeder <alex@gnu.org> |
| 6 | ;; Keywords: irc | 6 | ;; Keywords: irc |
diff --git a/lisp/erc/erc-lang.el b/lisp/erc/erc-lang.el index 20c89a8b0b6..04cfbe9e220 100644 --- a/lisp/erc/erc-lang.el +++ b/lisp/erc/erc-lang.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-lang.el --- provide the LANG command to ERC | 1 | ;;; erc-lang.el --- provide the LANG command to ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Alex Schroeder <alex@gnu.org> | 5 | ;; Author: Alex Schroeder <alex@gnu.org> |
| 6 | ;; Maintainer: Alex Schroeder <alex@gnu.org> | 6 | ;; Maintainer: Alex Schroeder <alex@gnu.org> |
diff --git a/lisp/erc/erc-list.el b/lisp/erc/erc-list.el index 9bc561523d9..c041842429e 100644 --- a/lisp/erc/erc-list.el +++ b/lisp/erc/erc-list.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-list.el --- Provide a faster channel listing mechanism | 1 | ;;; erc-list.el --- Provide a faster channel listing mechanism |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. |
| 4 | ;; Copyright (C) 2004 Brian Palmer | 4 | ;; Copyright (C) 2004 Brian Palmer |
| 5 | 5 | ||
| 6 | ;; Author: Mario Lang <mlang@lexx.delysid.org> | 6 | ;; Author: Mario Lang <mlang@lexx.delysid.org> |
| @@ -140,12 +140,19 @@ display the channel list." | |||
| 140 | (setq truncate-lines t) | 140 | (setq truncate-lines t) |
| 141 | (add-hook 'post-command-hook 'erc-chanlist-post-command-hook 'append 'local)) | 141 | (add-hook 'post-command-hook 'erc-chanlist-post-command-hook 'append 'local)) |
| 142 | 142 | ||
| 143 | ;; Define module: | ||
| 144 | ;;;###autoload (autoload 'erc-list-mode "erc-list") | ||
| 145 | (define-erc-module list nil | ||
| 146 | "List channels nicely in a separate buffer." | ||
| 147 | ((defalias 'erc-cmd-LIST 'erc-list-channels)) | ||
| 148 | ((defalias 'erc-cmd-LIST 'erc-list-channels-simple))) | ||
| 149 | |||
| 143 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 150 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| 144 | ;; Functions. | 151 | ;; Functions. |
| 145 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; | 152 | ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;; |
| 146 | 153 | ||
| 147 | ;;;###autoload | 154 | ;;;###autoload |
| 148 | (defun erc-cmd-LIST (&rest channel) | 155 | (defun erc-list-channels (&rest channel) |
| 149 | "Display a buffer containing a list of channels on the current server. | 156 | "Display a buffer containing a list of channels on the current server. |
| 150 | Optional argument CHANNEL specifies a single channel to list (instead of every | 157 | Optional argument CHANNEL specifies a single channel to list (instead of every |
| 151 | available channel)." | 158 | available channel)." |
| @@ -163,6 +170,18 @@ available channel)." | |||
| 163 | (erc-chanlist channel)) | 170 | (erc-chanlist channel)) |
| 164 | t) | 171 | t) |
| 165 | 172 | ||
| 173 | (defun erc-list-channels-simple (&optional line) | ||
| 174 | "Send the LIST command to the current server with optional channels LINE." | ||
| 175 | (when (string-match "^\\s-*\\(.*\\)$" line) | ||
| 176 | (let ((channels (match-string 1 line))) | ||
| 177 | (erc-log (format "cmd: LIST: %s" channels)) | ||
| 178 | (erc-server-send | ||
| 179 | (if (string= channels "") | ||
| 180 | "LIST" | ||
| 181 | (concat "LIST :" channels)))) | ||
| 182 | t)) | ||
| 183 | (put 'erc-list-channels-simple 'do-not-parse-args t) | ||
| 184 | |||
| 166 | ;;;###autoload | 185 | ;;;###autoload |
| 167 | (defun erc-chanlist (&optional channels) | 186 | (defun erc-chanlist (&optional channels) |
| 168 | "Show a channel listing of the current server in a special mode. | 187 | "Show a channel listing of the current server in a special mode. |
diff --git a/lisp/erc/erc-log.el b/lisp/erc/erc-log.el index d4e6e5ad3fa..db60e5629bf 100644 --- a/lisp/erc/erc-log.el +++ b/lisp/erc/erc-log.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-log.el --- Logging facilities for ERC. | 1 | ;;; erc-log.el --- Logging facilities for ERC. |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2003, 2004, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Lawrence Mitchell <wence@gmx.li> | 5 | ;; Author: Lawrence Mitchell <wence@gmx.li> |
| 6 | ;; Keywords: IRC, chat, client, Internet, logging | 6 | ;; Keywords: IRC, chat, client, Internet, logging |
diff --git a/lisp/erc/erc-match.el b/lisp/erc/erc-match.el index a5e3bf88ccf..88c6d4c425d 100644 --- a/lisp/erc/erc-match.el +++ b/lisp/erc/erc-match.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-match.el --- Highlight messages matching certain regexps | 1 | ;;; erc-match.el --- Highlight messages matching certain regexps |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Andreas Fuchs <asf@void.at> | 5 | ;; Author: Andreas Fuchs <asf@void.at> |
| 6 | ;; Keywords: comm, faces | 6 | ;; Keywords: comm, faces |
| @@ -428,24 +428,6 @@ In any of the following situations, MSG is directed at an entry FOOL: | |||
| 428 | (or (erc-list-match fools-beg msg) | 428 | (or (erc-list-match fools-beg msg) |
| 429 | (erc-list-match fools-end msg)))) | 429 | (erc-list-match fools-end msg)))) |
| 430 | 430 | ||
| 431 | (defun erc-get-parsed-vector (point) | ||
| 432 | "Return the whole parsed vector on POINT." | ||
| 433 | (get-text-property point 'erc-parsed)) | ||
| 434 | |||
| 435 | (defun erc-get-parsed-vector-nick (vect) | ||
| 436 | "Return nickname in the parsed vector VECT." | ||
| 437 | (let* ((untreated-nick (and vect (erc-response.sender vect))) | ||
| 438 | (maybe-nick (when untreated-nick | ||
| 439 | (car (split-string untreated-nick "!"))))) | ||
| 440 | (when (and (not (null maybe-nick)) | ||
| 441 | (erc-is-valid-nick-p maybe-nick)) | ||
| 442 | untreated-nick))) | ||
| 443 | |||
| 444 | (defun erc-get-parsed-vector-type (vect) | ||
| 445 | "Return message type in the parsed vector VECT." | ||
| 446 | (and vect | ||
| 447 | (erc-response.command vect))) | ||
| 448 | |||
| 449 | (defun erc-match-message () | 431 | (defun erc-match-message () |
| 450 | "Mark certain keywords in a region. | 432 | "Mark certain keywords in a region. |
| 451 | Use this defun with `erc-insert-modify-hook'." | 433 | Use this defun with `erc-insert-modify-hook'." |
diff --git a/lisp/erc/erc-menu.el b/lisp/erc/erc-menu.el index 8e1f81adf75..7040a7baeee 100644 --- a/lisp/erc/erc-menu.el +++ b/lisp/erc/erc-menu.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;; erc-menu.el -- Menu-bar definitions for ERC | 1 | ;; erc-menu.el -- Menu-bar definitions for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2004, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2001, 2002, 2004, 2005, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@delysid.org> | 5 | ;; Author: Mario Lang <mlang@delysid.org> |
| 6 | ;; Keywords: comm, processes, menu | 6 | ;; Keywords: comm, processes, menu |
| @@ -36,8 +36,8 @@ | |||
| 36 | ["Connect to server..." erc-select t] | 36 | ["Connect to server..." erc-select t] |
| 37 | ["Disconnect from server..." erc-quit-server erc-server-connected] | 37 | ["Disconnect from server..." erc-quit-server erc-server-connected] |
| 38 | "-" | 38 | "-" |
| 39 | ["List channels..." erc-cmd-LIST | 39 | ["List channels..." erc-list-channels |
| 40 | (and erc-server-connected (fboundp 'erc-cmd-LIST))] | 40 | (and erc-server-connected (fboundp 'erc-list-channels))] |
| 41 | ["Join channel..." erc-join-channel erc-server-connected] | 41 | ["Join channel..." erc-join-channel erc-server-connected] |
| 42 | ["Start a query..." erc-cmd-QUERY erc-server-connected] | 42 | ["Start a query..." erc-cmd-QUERY erc-server-connected] |
| 43 | "-" | 43 | "-" |
diff --git a/lisp/erc/erc-netsplit.el b/lisp/erc/erc-netsplit.el index 70ec2f2fc0d..a982b5e7c7e 100644 --- a/lisp/erc/erc-netsplit.el +++ b/lisp/erc/erc-netsplit.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-netsplit.el --- Reduce JOIN/QUIT messages on netsplits | 1 | ;;; erc-netsplit.el --- Reduce JOIN/QUIT messages on netsplits |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@delysid.org> | 5 | ;; Author: Mario Lang <mlang@delysid.org> |
| 6 | ;; Keywords: comm | 6 | ;; Keywords: comm |
diff --git a/lisp/erc/erc-networks.el b/lisp/erc/erc-networks.el index b79a56a359c..c15f72e248f 100644 --- a/lisp/erc/erc-networks.el +++ b/lisp/erc/erc-networks.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-networks.el --- IRC networks | 1 | ;;; erc-networks.el --- IRC networks |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2004, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2004, 2005, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@lexx.delysid.org> | 5 | ;; Author: Mario Lang <mlang@lexx.delysid.org> |
| 6 | ;; Keywords: comm | 6 | ;; Keywords: comm |
diff --git a/lisp/erc/erc-notify.el b/lisp/erc/erc-notify.el index 1d2bdbd5f45..bb1c9cdceb3 100644 --- a/lisp/erc/erc-notify.el +++ b/lisp/erc/erc-notify.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-notify.el --- Online status change notification | 1 | ;;; erc-notify.el --- Online status change notification |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@lexx.delysid.org> | 5 | ;; Author: Mario Lang <mlang@lexx.delysid.org> |
| 6 | ;; Keywords: comm | 6 | ;; Keywords: comm |
diff --git a/lisp/erc/erc-page.el b/lisp/erc/erc-page.el index d8e677031e3..4c6b86bd564 100644 --- a/lisp/erc/erc-page.el +++ b/lisp/erc/erc-page.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;; erc-page.el - CTCP PAGE support for ERC | 1 | ;; erc-page.el - CTCP PAGE support for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2004 Free Software Foundation | 3 | ;; Copyright (C) 2002, 2004, 2006 Free Software Foundation |
| 4 | 4 | ||
| 5 | ;; This file is part of GNU Emacs. | 5 | ;; This file is part of GNU Emacs. |
| 6 | 6 | ||
diff --git a/lisp/erc/erc-pcomplete.el b/lisp/erc/erc-pcomplete.el index 110704304e2..d6d4dfdd3b3 100644 --- a/lisp/erc/erc-pcomplete.el +++ b/lisp/erc/erc-pcomplete.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-pcomplete.el --- Provides programmable completion for ERC | 1 | ;;; erc-pcomplete.el --- Provides programmable completion for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Sacha Chua <sacha@free.net.ph> | 5 | ;; Author: Sacha Chua <sacha@free.net.ph> |
| 6 | ;; Keywords: comm, convenience | 6 | ;; Keywords: comm, convenience |
diff --git a/lisp/erc/erc-replace.el b/lisp/erc/erc-replace.el index 07e8cd16138..06d3ca77f06 100644 --- a/lisp/erc/erc-replace.el +++ b/lisp/erc/erc-replace.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;; erc-replace.el -- wash and massage messages inserted into the buffer | 1 | ;; erc-replace.el -- wash and massage messages inserted into the buffer |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2001, 2002, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Andreas Fuchs <asf@void.at> | 5 | ;; Author: Andreas Fuchs <asf@void.at> |
| 6 | ;; Maintainer: Mario Lang (mlang@delysid.org) | 6 | ;; Maintainer: Mario Lang (mlang@delysid.org) |
diff --git a/lisp/erc/erc-ring.el b/lisp/erc/erc-ring.el index cabb8e2905f..87707e65faa 100644 --- a/lisp/erc/erc-ring.el +++ b/lisp/erc/erc-ring.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;; erc-ring.el -- Command history handling for erc using ring.el | 1 | ;; erc-ring.el -- Command history handling for erc using ring.el |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Alex Schroeder <alex@gnu.org> | 5 | ;; Author: Alex Schroeder <alex@gnu.org> |
| 6 | ;; Keywords: comm | 6 | ;; Keywords: comm |
diff --git a/lisp/erc/erc-services.el b/lisp/erc/erc-services.el index 676948752fd..c8bac7fe45c 100644 --- a/lisp/erc/erc-services.el +++ b/lisp/erc/erc-services.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-services.el --- Identify to NickServ | 1 | ;;; erc-services.el --- Identify to NickServ |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; This file is part of GNU Emacs. | 5 | ;; This file is part of GNU Emacs. |
| 6 | 6 | ||
diff --git a/lisp/erc/erc-sound.el b/lisp/erc/erc-sound.el index c5b0f8177f2..bbcddafc231 100644 --- a/lisp/erc/erc-sound.el +++ b/lisp/erc/erc-sound.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-sound.el --- CTCP SOUND support for ERC | 1 | ;;; erc-sound.el --- CTCP SOUND support for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; This file is part of GNU Emacs. | 5 | ;; This file is part of GNU Emacs. |
| 6 | 6 | ||
diff --git a/lisp/erc/erc-speedbar.el b/lisp/erc/erc-speedbar.el index 254d7fc5781..55e24782f77 100644 --- a/lisp/erc/erc-speedbar.el +++ b/lisp/erc/erc-speedbar.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-speedbar.el --- Speedbar support for ERC | 1 | ;;; erc-speedbar.el --- Speedbar support for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2001, 2002, 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2001, 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@delysid.org> | 5 | ;; Author: Mario Lang <mlang@delysid.org> |
| 6 | ;; Contributor: Eric M. Ludlam <eric@siege-engine.com> | 6 | ;; Contributor: Eric M. Ludlam <eric@siege-engine.com> |
diff --git a/lisp/erc/erc-spelling.el b/lisp/erc/erc-spelling.el index 41e342c0e50..3cbc786274d 100644 --- a/lisp/erc/erc-spelling.el +++ b/lisp/erc/erc-spelling.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-spelling.el --- use flyspell in ERC | 1 | ;;; erc-spelling.el --- use flyspell in ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2005, 2006 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2005, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Jorgen Schaefer <forcer@forcix.cx> | 5 | ;; Author: Jorgen Schaefer <forcer@forcix.cx> |
| 6 | ;; Keywords: irc | 6 | ;; Keywords: irc |
| @@ -41,11 +41,13 @@ | |||
| 41 | ;; called AFTER the server buffer is initialized. | 41 | ;; called AFTER the server buffer is initialized. |
| 42 | ((add-hook 'erc-connect-pre-hook 'erc-spelling-init) | 42 | ((add-hook 'erc-connect-pre-hook 'erc-spelling-init) |
| 43 | (mapc (lambda (buffer) | 43 | (mapc (lambda (buffer) |
| 44 | (with-current-buffer buffer (erc-spelling-init))) | 44 | (when buffer |
| 45 | (with-current-buffer buffer (erc-spelling-init)))) | ||
| 45 | (erc-buffer-list))) | 46 | (erc-buffer-list))) |
| 46 | ((remove-hook 'erc-connect-pre-hook 'erc-spelling-init) | 47 | ((remove-hook 'erc-connect-pre-hook 'erc-spelling-init) |
| 47 | (mapc (lambda (buffer) | 48 | (mapc (lambda (buffer) |
| 48 | (with-current-buffer buffer (flyspell-mode 0))) | 49 | (when buffer |
| 50 | (with-current-buffer buffer (flyspell-mode 0)))) | ||
| 49 | (erc-buffer-list)))) | 51 | (erc-buffer-list)))) |
| 50 | 52 | ||
| 51 | (defcustom erc-spelling-dictionaries nil | 53 | (defcustom erc-spelling-dictionaries nil |
diff --git a/lisp/erc/erc-stamp.el b/lisp/erc/erc-stamp.el index ead847ff73f..5d43baab6c9 100644 --- a/lisp/erc/erc-stamp.el +++ b/lisp/erc/erc-stamp.el | |||
| @@ -1,4 +1,4 @@ | |||
| 1 | ;;; erc-stamp.el --- Timestamping for Emacs IRC CLient | 1 | ;;; erc-stamp.el --- Timestamping for ERC messages |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| @@ -180,11 +180,17 @@ the correct column." | |||
| 180 | (integer :tag "Column number") | 180 | (integer :tag "Column number") |
| 181 | (const :tag "Unspecified" nil))) | 181 | (const :tag "Unspecified" nil))) |
| 182 | 182 | ||
| 183 | (defcustom erc-timestamp-right-align-by-pixel nil | 183 | (defcustom erc-timestamp-use-align-to (and (not (featurep 'xemacs)) |
| 184 | "*If non-nil, insert the right timestamp based on a pixel value. | 184 | (>= emacs-major-version 22) |
| 185 | This is needed when variable-width text precedes a timestamp. | 185 | (eq window-system 'x)) |
| 186 | "*If non-nil, use the :align-to display property to align the stamp. | ||
| 187 | This gives better results when variable-width characters (like | ||
| 188 | Asian language characters and math symbols) precede a timestamp. | ||
| 186 | Unfortunately, it only works in Emacs 22 and when using the X | 189 | Unfortunately, it only works in Emacs 22 and when using the X |
| 187 | Window System." | 190 | Window System. |
| 191 | |||
| 192 | A side effect of enabling this is that there will only be one | ||
| 193 | space before a right timestamp in any saved logs." | ||
| 188 | :group 'erc-stamp | 194 | :group 'erc-stamp |
| 189 | :type 'boolean) | 195 | :type 'boolean) |
| 190 | 196 | ||
| @@ -200,18 +206,15 @@ Window System." | |||
| 200 | (insert s))) | 206 | (insert s))) |
| 201 | 207 | ||
| 202 | (defun erc-insert-aligned (string pos) | 208 | (defun erc-insert-aligned (string pos) |
| 203 | "Insert STRING based on a fraction of the width of the buffer. | 209 | "Insert STRING at the POSth column. |
| 204 | Fraction is roughly (/ POS (window-width)). | ||
| 205 | 210 | ||
| 206 | If `erc-timestamp-right-align-by-pixel' is nil, insert STRING at the | 211 | If `erc-timestamp-use-align-to' is t, use the :align-to display |
| 207 | POSth column, without using pixel coordinates." | 212 | property to get to the POSth column." |
| 208 | (if (not erc-timestamp-right-align-by-pixel) | 213 | (if (not erc-timestamp-use-align-to) |
| 209 | (indent-to pos) | 214 | (indent-to pos) |
| 210 | (insert " ") | 215 | (insert " ") |
| 211 | (let ((offset (floor (* (/ (1- pos) (window-width) 1.0) | 216 | (put-text-property (1- (point)) (point) 'display |
| 212 | (nth 2 (window-inside-pixel-edges)))))) | 217 | (list 'space ':align-to pos))) |
| 213 | (put-text-property (1- (point)) (point) 'display | ||
| 214 | `(space :align-to (,offset))))) | ||
| 215 | (insert string)) | 218 | (insert string)) |
| 216 | 219 | ||
| 217 | (defun erc-insert-timestamp-right (string) | 220 | (defun erc-insert-timestamp-right (string) |
| @@ -237,31 +240,26 @@ be printed just before the window-width." | |||
| 237 | (goto-char (point-max)) | 240 | (goto-char (point-max)) |
| 238 | (forward-char -1);; before the last newline | 241 | (forward-char -1);; before the last newline |
| 239 | (let* ((current-window (get-buffer-window (current-buffer))) | 242 | (let* ((current-window (get-buffer-window (current-buffer))) |
| 243 | (str-width (string-width string)) | ||
| 240 | (pos (cond | 244 | (pos (cond |
| 241 | (erc-timestamp-right-column | 245 | (erc-timestamp-right-column erc-timestamp-right-column) |
| 242 | (+ erc-timestamp-right-column (length string))) | ||
| 243 | ((and (boundp 'erc-fill-mode) | 246 | ((and (boundp 'erc-fill-mode) |
| 244 | erc-fill-mode | 247 | erc-fill-mode |
| 245 | (boundp 'erc-fill-column)) | 248 | (boundp 'erc-fill-column) |
| 246 | (1+ erc-fill-column)) | 249 | erc-fill-column) |
| 247 | (current-window | 250 | (1+ (- erc-fill-column str-width))) |
| 248 | (- (window-width current-window) | ||
| 249 | 1)) | ||
| 250 | (fill-column | 251 | (fill-column |
| 251 | (1+ fill-column)) | 252 | (1+ (- fill-column str-width))) |
| 252 | (t | 253 | (t |
| 253 | (- (window-width) | 254 | (- (window-width) str-width 1)))) |
| 254 | 1)))) | ||
| 255 | (from (point)) | 255 | (from (point)) |
| 256 | (col (current-column)) | 256 | (col (current-column)) |
| 257 | indent) | 257 | indent) |
| 258 | ;; deal with variable-width characters | 258 | ;; The following is a kludge used to calculate whether to move |
| 259 | (setq pos (- pos (string-width string)) | 259 | ;; to the next line before inserting a stamp. It allows for |
| 260 | ;; The following is a kludge that works with most | 260 | ;; some margin of error if what is displayed on the line differs |
| 261 | ;; international input. It is now only used to calculate | 261 | ;; from the number of characters on the line. |
| 262 | ;; whether to move to the next line before inserting a | 262 | (setq col (+ col (ceiling (/ (- col (- (point) (point-at-bol))) 1.6)))) |
| 263 | ;; stamp. | ||
| 264 | col (+ col (ceiling (/ (- col (- (point) (point-at-bol))) 1.6)))) | ||
| 265 | (if (< col pos) | 263 | (if (< col pos) |
| 266 | (erc-insert-aligned string pos) | 264 | (erc-insert-aligned string pos) |
| 267 | (newline) | 265 | (newline) |
diff --git a/lisp/erc/erc-track.el b/lisp/erc/erc-track.el index 6d760d75ba2..63005678613 100644 --- a/lisp/erc/erc-track.el +++ b/lisp/erc/erc-track.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-track.el --- Track modified channel buffers | 1 | ;;; erc-track.el --- Track modified channel buffers |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2002, 2003, 2004, 2005 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2002, 2003, 2004, 2005, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@delysid.org> | 5 | ;; Author: Mario Lang <mlang@delysid.org> |
| 6 | ;; Keywords: comm, faces | 6 | ;; Keywords: comm, faces |
diff --git a/lisp/erc/erc-truncate.el b/lisp/erc/erc-truncate.el index 49cd20d759c..7a1feaaedd2 100644 --- a/lisp/erc/erc-truncate.el +++ b/lisp/erc/erc-truncate.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-truncate.el --- Functions for truncating ERC buffers | 1 | ;;; erc-truncate.el --- Functions for truncating ERC buffers |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Andreas Fuchs <asf@void.at> | 5 | ;; Author: Andreas Fuchs <asf@void.at> |
| 6 | ;; Keywords: IRC, chat, client, Internet, logging | 6 | ;; Keywords: IRC, chat, client, Internet, logging |
diff --git a/lisp/erc/erc-xdcc.el b/lisp/erc/erc-xdcc.el index 7c8ee6fff62..d00dfc5e1a0 100644 --- a/lisp/erc/erc-xdcc.el +++ b/lisp/erc/erc-xdcc.el | |||
| @@ -1,6 +1,6 @@ | |||
| 1 | ;;; erc-xdcc.el --- XDCC file-server support for ERC | 1 | ;;; erc-xdcc.el --- XDCC file-server support for ERC |
| 2 | 2 | ||
| 3 | ;; Copyright (C) 2003, 2004 Free Software Foundation, Inc. | 3 | ;; Copyright (C) 2003, 2004, 2006 Free Software Foundation, Inc. |
| 4 | 4 | ||
| 5 | ;; Author: Mario Lang <mlang@delysid.org> | 5 | ;; Author: Mario Lang <mlang@delysid.org> |
| 6 | ;; Keywords: comm, processes | 6 | ;; Keywords: comm, processes |
| @@ -24,7 +24,7 @@ | |||
| 24 | 24 | ||
| 25 | ;;; Commentary: | 25 | ;;; Commentary: |
| 26 | 26 | ||
| 27 | ;; This file provides a very simple XDCC file server for the Emacs IRC Client. | 27 | ;; This file provides a very simple XDCC file server for ERC. |
| 28 | 28 | ||
| 29 | ;;; Code: | 29 | ;;; Code: |
| 30 | 30 | ||
diff --git a/lisp/erc/erc.el b/lisp/erc/erc.el index 936fffa252f..e1dc240901b 100644 --- a/lisp/erc/erc.el +++ b/lisp/erc/erc.el | |||
| @@ -1719,22 +1719,15 @@ all channel buffers on all servers." | |||
| 1719 | (defun erc-migrate-modules (mods) | 1719 | (defun erc-migrate-modules (mods) |
| 1720 | "Migrate old names of ERC modules to new ones." | 1720 | "Migrate old names of ERC modules to new ones." |
| 1721 | ;; modify `transforms' to specify what needs to be changed | 1721 | ;; modify `transforms' to specify what needs to be changed |
| 1722 | ;; each item is in the format '(new .old) | 1722 | ;; each item is in the format '(old . new) |
| 1723 | (let ((transforms '((pcomplete . completion))) | 1723 | (let ((transforms '((pcomplete . completion)))) |
| 1724 | (modules (copy-alist mods))) | 1724 | (erc-delete-dups |
| 1725 | (dolist (transform transforms) | 1725 | (mapcar (lambda (m) (or (cdr (assoc m transforms)) m)) |
| 1726 | (let ((addp nil)) | 1726 | mods)))) |
| 1727 | (setq modules (erc-delete-if `(lambda (val) | 1727 | |
| 1728 | (and (eq val ',(car transform)) | 1728 | (defcustom erc-modules '(netsplit fill button match track completion readonly |
| 1729 | (setq addition t))) | ||
| 1730 | modules)) | ||
| 1731 | (when addp | ||
| 1732 | (add-to-list 'modules (cdr transform))))) | ||
| 1733 | (erc-delete-dups modules))) | ||
| 1734 | |||
| 1735 | (defcustom erc-modules '(netsplit fill button match track pcomplete readonly | ||
| 1736 | ring autojoin noncommands irccontrols | 1729 | ring autojoin noncommands irccontrols |
| 1737 | stamp) | 1730 | stamp list) |
| 1738 | "A list of modules which erc should enable. | 1731 | "A list of modules which erc should enable. |
| 1739 | If you set the value of this without using `customize' remember to call | 1732 | If you set the value of this without using `customize' remember to call |
| 1740 | \(erc-update-modules) after you change it. When using `customize', modules | 1733 | \(erc-update-modules) after you change it. When using `customize', modules |
| @@ -1755,40 +1748,42 @@ removed from the list will be disabled." | |||
| 1755 | ;; this test is for the case where erc hasn't been loaded yet | 1748 | ;; this test is for the case where erc hasn't been loaded yet |
| 1756 | (when (fboundp 'erc-update-modules) | 1749 | (when (fboundp 'erc-update-modules) |
| 1757 | (erc-update-modules))) | 1750 | (erc-update-modules))) |
| 1758 | :type '(set :greedy t | 1751 | :type |
| 1759 | (const :tag "Set away status automatically" autoaway) | 1752 | '(set |
| 1760 | (const :tag "Join channels automatically" autojoin) | 1753 | :greedy t |
| 1761 | (const :tag "Integrate with Big Brother Database" bbdb) | 1754 | (const :tag "Set away status automatically" autoaway) |
| 1762 | (const :tag "Buttonize URLs, nicknames, and other text" button) | 1755 | (const :tag "Join channels automatically" autojoin) |
| 1763 | (const :tag "Wrap long lines" fill) | 1756 | (const :tag "Integrate with Big Brother Database" bbdb) |
| 1764 | (const :tag "Highlight or remove IRC control characters" | 1757 | (const :tag "Buttonize URLs, nicknames, and other text" button) |
| 1765 | irccontrols) | 1758 | (const :tag "Wrap long lines" fill) |
| 1766 | (const :tag "Save buffers in logs" log) | 1759 | (const :tag "Highlight or remove IRC control characters" |
| 1767 | (const :tag "Highlight pals, fools, and other keywords" match) | 1760 | irccontrols) |
| 1768 | (const :tag "Detect netsplits" netsplit) | 1761 | (const :tag "Save buffers in logs" log) |
| 1769 | (const :tag "Don't display non-IRC commands after evaluation" | 1762 | (const :tag "Highlight pals, fools, and other keywords" match) |
| 1770 | noncommands) | 1763 | (const :tag "Detect netsplits" netsplit) |
| 1771 | (const :tag | 1764 | (const :tag "Don't display non-IRC commands after evaluation" |
| 1772 | "Notify when the online status of certain users changes" | 1765 | noncommands) |
| 1773 | notify) | 1766 | (const :tag |
| 1774 | (const :tag "Complete nicknames and commands (programmable)" | 1767 | "Notify when the online status of certain users changes" |
| 1775 | completion) | 1768 | notify) |
| 1776 | (const :tag "Complete nicknames and commands (old)" hecomplete) | 1769 | (const :tag "Complete nicknames and commands (programmable)" |
| 1777 | (const :tag "Make displayed lines read-only" readonly) | 1770 | completion) |
| 1778 | (const :tag "Replace text in messages" replace) | 1771 | (const :tag "Complete nicknames and commands (old)" hecomplete) |
| 1779 | (const :tag "Enable an input history" ring) | 1772 | (const :tag "Make displayed lines read-only" readonly) |
| 1780 | (const :tag "Scroll to the bottom of the buffer" scrolltobottom) | 1773 | (const :tag "Replace text in messages" replace) |
| 1781 | (const :tag "Identify to Nickserv (IRC Services) automatically" | 1774 | (const :tag "Enable an input history" ring) |
| 1782 | services) | 1775 | (const :tag "Scroll to the bottom of the buffer" scrolltobottom) |
| 1783 | (const :tag "Convert smileys to pretty icons" smiley) | 1776 | (const :tag "Identify to Nickserv (IRC Services) automatically" |
| 1784 | (const :tag "Play sounds when you receive CTCP SOUND requests" | 1777 | services) |
| 1785 | sound) | 1778 | (const :tag "Convert smileys to pretty icons" smiley) |
| 1786 | (const :tag "Add timestamps to messages" stamp) | 1779 | (const :tag "Play sounds when you receive CTCP SOUND requests" |
| 1787 | (const :tag "Check spelling" spelling) | 1780 | sound) |
| 1788 | (const :tag "Track channel activity in the mode-line" track) | 1781 | (const :tag "Add timestamps to messages" stamp) |
| 1789 | (const :tag "Truncate buffers to a certain size" truncate) | 1782 | (const :tag "Check spelling" spelling) |
| 1790 | (const :tag "Translate morse code in messages" unmorse) | 1783 | (const :tag "Track channel activity in the mode-line" track) |
| 1791 | (repeat :tag "Others" :inline t symbol)) | 1784 | (const :tag "Truncate buffers to a certain size" truncate) |
| 1785 | (const :tag "Translate morse code in messages" unmorse) | ||
| 1786 | (repeat :tag "Others" :inline t symbol)) | ||
| 1792 | :group 'erc) | 1787 | :group 'erc) |
| 1793 | 1788 | ||
| 1794 | (defun erc-update-modules () | 1789 | (defun erc-update-modules () |
| @@ -1799,14 +1794,11 @@ removed from the list will be disabled." | |||
| 1799 | (cond | 1794 | (cond |
| 1800 | ;; yuck. perhaps we should bring the filenames into sync? | 1795 | ;; yuck. perhaps we should bring the filenames into sync? |
| 1801 | ((string= req "erc-completion") | 1796 | ((string= req "erc-completion") |
| 1802 | (setq req "erc-pcomplete") | 1797 | (setq req "erc-pcomplete")) |
| 1803 | (setq mod 'completion)) | ||
| 1804 | ((string= req "erc-pcomplete") | 1798 | ((string= req "erc-pcomplete") |
| 1805 | (setq req "erc-pcomplete") | ||
| 1806 | (setq mod 'completion)) | 1799 | (setq mod 'completion)) |
| 1807 | ((string= req "erc-autojoin") | 1800 | ((string= req "erc-autojoin") |
| 1808 | (setq req "erc-join") | 1801 | (setq req "erc-join"))) |
| 1809 | (setq mod 'autojoin))) | ||
| 1810 | (condition-case nil | 1802 | (condition-case nil |
| 1811 | (require (intern req)) | 1803 | (require (intern req)) |
| 1812 | (error nil)) | 1804 | (error nil)) |
| @@ -1935,7 +1927,8 @@ Returns the buffer for the given server or channel." | |||
| 1935 | (goto-char (point-max)) | 1927 | (goto-char (point-max)) |
| 1936 | (insert "\n")) | 1928 | (insert "\n")) |
| 1937 | (set-marker (process-mark erc-server-process) (point)) | 1929 | (set-marker (process-mark erc-server-process) (point)) |
| 1938 | (unless continued-session | 1930 | (if continued-session |
| 1931 | (goto-char (point-max)) | ||
| 1939 | (set-marker erc-insert-marker (point)) | 1932 | (set-marker erc-insert-marker (point)) |
| 1940 | (erc-display-prompt) | 1933 | (erc-display-prompt) |
| 1941 | (goto-char (point-max))) | 1934 | (goto-char (point-max))) |
| @@ -6143,6 +6136,26 @@ This function should be on `erc-kill-channel-hook'." | |||
| 6143 | (funcall erc-part-reason nil)) | 6136 | (funcall erc-part-reason nil)) |
| 6144 | nil tgt)))) | 6137 | nil tgt)))) |
| 6145 | 6138 | ||
| 6139 | ;;; Dealing with `erc-parsed' | ||
| 6140 | |||
| 6141 | (defun erc-get-parsed-vector (point) | ||
| 6142 | "Return the whole parsed vector on POINT." | ||
| 6143 | (get-text-property point 'erc-parsed)) | ||
| 6144 | |||
| 6145 | (defun erc-get-parsed-vector-nick (vect) | ||
| 6146 | "Return nickname in the parsed vector VECT." | ||
| 6147 | (let* ((untreated-nick (and vect (erc-response.sender vect))) | ||
| 6148 | (maybe-nick (when untreated-nick | ||
| 6149 | (car (split-string untreated-nick "!"))))) | ||
| 6150 | (when (and (not (null maybe-nick)) | ||
| 6151 | (erc-is-valid-nick-p maybe-nick)) | ||
| 6152 | untreated-nick))) | ||
| 6153 | |||
| 6154 | (defun erc-get-parsed-vector-type (vect) | ||
| 6155 | "Return message type in the parsed vector VECT." | ||
| 6156 | (and vect | ||
| 6157 | (erc-response.command vect))) | ||
| 6158 | |||
| 6146 | (provide 'erc) | 6159 | (provide 'erc) |
| 6147 | 6160 | ||
| 6148 | ;;; Deprecated. We might eventually stop requiring the goodies automatically. | 6161 | ;;; Deprecated. We might eventually stop requiring the goodies automatically. |