Don't always log RCIRC process buffers to disk (Bug#6828).
authorDeniz Dogan <deniz.a.m.dogan@gmail.com>
Mon, 16 Aug 2010 03:34:10 +0000 (23:34 -0400)
committerChong Yidong <cyd@stupidchicken.com>
Mon, 16 Aug 2010 03:34:10 +0000 (23:34 -0400)
* lisp/net/rcirc.el (rcirc-log-process-buffers): New option.
(rcirc-print): Use it.
(rcirc-generate-log-filename): New function.
(rcirc-log-filename-function): Change default to
rcirc-generate-log-filename (Bug#6828).

lisp/ChangeLog
lisp/net/rcirc.el

index aad8186..2694427 100644 (file)
@@ -1,3 +1,11 @@
+2010-08-16  Deniz Dogan  <deniz.a.m.dogan@gmail.com>
+
+       * net/rcirc.el (rcirc-log-process-buffers): New option.
+       (rcirc-print): Use it.
+       (rcirc-generate-log-filename): New function.
+       (rcirc-log-filename-function): Change default to
+       rcirc-generate-log-filename (Bug#6828).
+
 2010-08-16  Chong Yidong  <cyd@stupidchicken.com>
 
        * simple.el (deactivate-mark): If select-active-regions is `only',
index 76fc1cd..b4a7b31 100644 (file)
@@ -1342,6 +1342,12 @@ Logfiles are kept in `rcirc-log-directory'."
   :type 'integer
   :group 'rcirc)
 
+(defcustom rcirc-log-process-buffers nil
+  "Non-nil if rcirc process buffers should be logged to disk."
+  :group 'rcirc
+  :type 'boolean
+  :version "24.1")
+
 (defun rcirc-last-quit-line (process nick target)
   "Return the line number where NICK left TARGET.
 Returns nil if the information is not recorded."
@@ -1507,14 +1513,21 @@ record activity."
                                     (when (not (rcirc-channel-p rcirc-target))
                                       'nick)))
 
-       (when rcirc-log-flag
+       (when (and rcirc-log-flag
+                  (or target
+                      rcirc-log-process-buffers))
          (rcirc-log process sender response target text))
 
        (sit-for 0)                     ; displayed text before hook
        (run-hook-with-args 'rcirc-print-hooks
                            process sender response target text)))))
 
-(defcustom rcirc-log-filename-function 'rcirc-generate-new-buffer-name
+(defun rcirc-generate-log-filename (process target)
+  (if target
+      (rcirc-generate-new-buffer-name process target)
+    (process-name process)))
+
+(defcustom rcirc-log-filename-function 'rcirc-generate-log-filename
   "A function to generate the filename used by rcirc's logging facility.
 
 It is called with two arguments, PROCESS and TARGET (see