[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] Changes to emacs/lisp/erc/erc-log.el,v
From: |
Miles Bader |
Subject: |
[Emacs-diffs] Changes to emacs/lisp/erc/erc-log.el,v |
Date: |
Mon, 20 Nov 2006 06:50:30 +0000 |
CVSROOT: /cvsroot/emacs
Module name: emacs
Changes by: Miles Bader <miles> 06/11/20 06:50:29
Index: lisp/erc/erc-log.el
===================================================================
RCS file: /cvsroot/emacs/emacs/lisp/erc/erc-log.el,v
retrieving revision 1.5
retrieving revision 1.6
diff -u -b -r1.5 -r1.6
--- lisp/erc/erc-log.el 7 Aug 2006 07:43:25 -0000 1.5
+++ lisp/erc/erc-log.el 20 Nov 2006 06:50:28 -0000 1.6
@@ -43,14 +43,6 @@
;;
;; (require 'erc-log)
;;
-;; You may optionally want the following code, to save all ERC buffers
-;; without confirmation when exiting emacs:
-;;
-;; (defadvice save-buffers-kill-emacs (before save-logs (&rest args) activate)
-;; (save-some-buffers t (lambda ()
-;; (when (and (eq major-mode 'erc-mode)
-;; (not (null buffer-file-name))) t))))
-;;
;; If you only want to save logs for some buffers, customise the
;; variable `erc-enable-logging'.
@@ -213,6 +205,7 @@
(add-hook 'erc-send-post-hook 'erc-save-buffer-in-logs))
(add-hook 'erc-kill-buffer-hook 'erc-save-buffer-in-logs)
(add-hook 'erc-kill-channel-hook 'erc-save-buffer-in-logs)
+ (add-hook 'kill-emacs-hook 'erc-log-save-all-buffers)
(add-hook 'erc-quit-hook 'erc-conditional-save-queries)
(add-hook 'erc-part-hook 'erc-conditional-save-buffer)
;; append, so that 'erc-initialize-log-marker runs first
@@ -225,6 +218,7 @@
(remove-hook 'erc-send-post-hook 'erc-save-buffer-in-logs)
(remove-hook 'erc-kill-buffer-hook 'erc-save-buffer-in-logs)
(remove-hook 'erc-kill-channel-hook 'erc-save-buffer-in-logs)
+ (remove-hook 'kill-emacs-hook 'erc-log-save-all-buffers)
(remove-hook 'erc-quit-hook 'erc-conditional-save-queries)
(remove-hook 'erc-part-hook 'erc-conditional-save-buffer)
(remove-hook 'erc-connect-pre-hook 'erc-log-setup-logging)
@@ -263,7 +257,7 @@
(not (erc-server-buffer-p)))))
(defun erc-save-query-buffers (process)
- "Save all buffers process."
+ "Save all buffers of the given PROCESS."
(erc-with-all-buffers-of-server process
nil
(erc-save-buffer-in-logs)))
@@ -278,6 +272,12 @@
(when erc-save-queries-on-quit
(erc-save-query-buffers process)))
+;; Make sure that logs get saved, even if someone overrides the active
+;; process prompt for a quick exit from Emacs
+(defun erc-log-save-all-buffers ()
+ (dolist (buffer (erc-buffer-list))
+ (erc-save-buffer-in-logs buffer)))
+
;;;###autoload
(defun erc-logging-enabled (&optional buffer)
"Return non-nil if logging is enabled for BUFFER.
@@ -309,7 +309,7 @@
(erc-log-standardize-name
(funcall erc-generate-log-file-name-function
(or buffer (current-buffer))
- (or (erc-default-target) (buffer-name buffer))
+ (or (buffer-name buffer) (erc-default-target))
(erc-current-nick)
erc-session-server erc-session-port))
erc-log-channels-directory))
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Emacs-diffs] Changes to emacs/lisp/erc/erc-log.el,v,
Miles Bader <=