Mercurial > emacs
comparison lisp/erc/erc.el @ 75092:e566d4fc8dd2
Update from erc--emacs--22
Highlights:
- New /RECONNECT command.
- Improve default method for auto-identify to nickserv.
- Fix another erc-iswitchb bug.
- Fix reconnect lockup (defaulting to twice before giving up).
- Fix reconnect on ban.
Revision: emacs@sv.gnu.org/emacs--devo--0--patch-587
Creator: Michael Olson <mwolson@gnu.org>
author | Miles Bader <miles@gnu.org> |
---|---|
date | Fri, 05 Jan 2007 02:09:07 +0000 |
parents | e6b28ccae7d8 |
children | f45c5edf0be4 |
comparison
equal
deleted
inserted
replaced
75091:2036fbeca1f2 | 75092:e566d4fc8dd2 |
---|---|
1670 (interactive "P") | 1670 (interactive "P") |
1671 (eval-when-compile | 1671 (eval-when-compile |
1672 (require 'iswitchb)) | 1672 (require 'iswitchb)) |
1673 (let ((enabled iswitchb-mode)) | 1673 (let ((enabled iswitchb-mode)) |
1674 (or enabled (iswitchb-mode 1)) | 1674 (or enabled (iswitchb-mode 1)) |
1675 (let ((iswitchb-make-buflist-hook | 1675 (unwind-protect |
1676 (lambda () | 1676 (let ((iswitchb-make-buflist-hook |
1677 (setq iswitchb-temp-buflist | 1677 (lambda () |
1678 (mapcar 'buffer-name | 1678 (setq iswitchb-temp-buflist |
1679 (erc-buffer-list | 1679 (mapcar 'buffer-name |
1680 nil | 1680 (erc-buffer-list |
1681 (when arg erc-server-process))))))) | 1681 nil |
1682 (switch-to-buffer | 1682 (when arg erc-server-process))))))) |
1683 (iswitchb-read-buffer | 1683 (switch-to-buffer |
1684 "Switch-to: " | 1684 (iswitchb-read-buffer |
1685 (if (boundp 'erc-modified-channels-alist) | 1685 "Switch-to: " |
1686 (buffer-name (caar (last erc-modified-channels-alist))) | 1686 (if (boundp 'erc-modified-channels-alist) |
1687 nil) | 1687 (buffer-name (caar (last erc-modified-channels-alist))) |
1688 t))) | 1688 nil) |
1689 (or enabled (iswitchb-mode -1)))) | 1689 t))) |
1690 (or enabled (iswitchb-mode -1))))) | |
1690 | 1691 |
1691 (defun erc-channel-list (proc) | 1692 (defun erc-channel-list (proc) |
1692 "Return a list of channel buffers. | 1693 "Return a list of channel buffers. |
1693 PROC is the process for the server connection. If PROC is nil, return | 1694 PROC is the process for the server connection. If PROC is nil, return |
1694 all channel buffers on all servers." | 1695 all channel buffers on all servers." |
1886 (string= server erc-session-server)) | 1887 (string= server erc-session-server)) |
1887 erc-server-announced-name)) | 1888 erc-server-announced-name)) |
1888 (connected-p (unless connect erc-server-connected)) | 1889 (connected-p (unless connect erc-server-connected)) |
1889 (buffer (erc-get-buffer-create server port channel)) | 1890 (buffer (erc-get-buffer-create server port channel)) |
1890 (old-buffer (current-buffer)) | 1891 (old-buffer (current-buffer)) |
1891 (old-point (point)) | 1892 old-point |
1892 continued-session) | 1893 continued-session) |
1893 (erc-update-modules) | 1894 (erc-update-modules) |
1894 (set-buffer buffer) | 1895 (set-buffer buffer) |
1896 (setq old-point (point)) | |
1895 (erc-mode) | 1897 (erc-mode) |
1896 (setq erc-server-announced-name server-announced-name) | 1898 (setq erc-server-announced-name server-announced-name) |
1897 (setq erc-server-connected connected-p) | 1899 (setq erc-server-connected connected-p) |
1898 ;; connection parameters | 1900 ;; connection parameters |
1899 (setq erc-server-process process) | 1901 (setq erc-server-process process) |
3162 (erc-server-process-alive))) | 3164 (erc-server-process-alive))) |
3163 (erc-cmd-QUIT reason))) | 3165 (erc-cmd-QUIT reason))) |
3164 | 3166 |
3165 (defalias 'erc-cmd-GQ 'erc-cmd-GQUIT) | 3167 (defalias 'erc-cmd-GQ 'erc-cmd-GQUIT) |
3166 (put 'erc-cmd-GQUIT 'do-not-parse-args t) | 3168 (put 'erc-cmd-GQUIT 'do-not-parse-args t) |
3169 | |
3170 (defun erc-cmd-RECONNECT () | |
3171 "Try to reconnect to the current IRC server." | |
3172 (setq erc-server-reconnect-count 0) | |
3173 (erc-server-reconnect) | |
3174 t) | |
3167 | 3175 |
3168 (defun erc-cmd-SERVER (server) | 3176 (defun erc-cmd-SERVER (server) |
3169 "Connect to SERVER, leaving existing connection intact." | 3177 "Connect to SERVER, leaving existing connection intact." |
3170 (erc-log (format "cmd: SERVER: %s" server)) | 3178 (erc-log (format "cmd: SERVER: %s" server)) |
3171 (condition-case nil | 3179 (condition-case nil |