[beirc-cvs] CVS update: beirc/application.lisp beirc/package.lisp beirc/variables.lisp

Andreas Fuchs afuchs at common-lisp.net
Sun Oct 2 09:30:21 UTC 2005


Update of /project/beirc/cvsroot/beirc
In directory common-lisp.net:/tmp/cvs-serv7060

Modified Files:
	application.lisp package.lisp variables.lisp 
Log Message:
add variable *nickserv-password-alist* and command /identify. export variable names.

Date: Sun Oct  2 11:30:19 2005
Author: afuchs

Index: beirc/application.lisp
diff -u beirc/application.lisp:1.24 beirc/application.lisp:1.25
--- beirc/application.lisp:1.24	Sun Oct  2 11:14:16 2005
+++ beirc/application.lisp	Sun Oct  2 11:30:19 2005
@@ -283,6 +283,17 @@
 (define-beirc-command (com-reload :name t) ()
   (load-user-init-file))
 
+(define-beirc-command (com-identify :name t) (&key
+                                              (password 'string :prompt "Password"
+                                                        :default (cdr (assoc (irc:server-name (current-connection *application-frame*))
+                                                                             *nickserv-password-alist*
+                                                                             :test #'equal)))
+                                              (who 'nickname :prompt "Target" :default "NickServ"))
+  (when (null password)
+    (accept 'string :prompt "Password"))
+  (irc:privmsg (current-connection *application-frame*) who
+               (format nil "IDENTIFY ~A" password)))
+
 (define-beirc-command (com-query :name t) ((nick 'nickname :prompt "who"))
   (raise-receiver (intern-receiver nick *application-frame* :query nick)))
 
@@ -396,7 +407,7 @@
       (current-channel)))
 
 (define-beirc-command (com-say :name t) ((what 'mumble))
-  (unless (string= what "")
+  (unless (or (string= what "") (null (target)))
     (post-message *application-frame*
                   (make-fake-irc-message 'irc:irc-privmsg-message
                                          :trailing-argument what


Index: beirc/package.lisp
diff -u beirc/package.lisp:1.3 beirc/package.lisp:1.4
--- beirc/package.lisp:1.3	Sun Sep 25 14:55:10 2005
+++ beirc/package.lisp	Sun Oct  2 11:30:19 2005
@@ -1,4 +1,7 @@
 (cl:defpackage :beirc
     (:use :clim :clim-lisp :clim-sys :tab-layout)
     (:export #:beirc
-             #:*hyperspec-base-url* #:*default-fill-column* #:*timestamp-column-orientation*))
+             #:*beirc-user-init-file*
+             #:*hyperspec-base-url* #:*default-fill-column* #:*timestamp-column-orientation*
+             #:*default-nick* #:*nickserv-password-alist* #:*default-web-browser
+             #:*auto-join-alist*))


Index: beirc/variables.lisp
diff -u beirc/variables.lisp:1.6 beirc/variables.lisp:1.7
--- beirc/variables.lisp:1.6	Sun Oct  2 10:59:23 2005
+++ beirc/variables.lisp	Sun Oct  2 11:30:19 2005
@@ -7,9 +7,13 @@
 (defvar *default-web-browser* #+darwin "/usr/bin/open"
                               ;; assuming a debian system running X:
                               #+linux  "/usr/bin/x-www-browser")
-(defvar *auto-join-alist* (("irc.freenode.net" . ("#beirc")))
+(defvar *auto-join-alist* '(("irc.freenode.net" . ("#beirc")))
   "An alist mapping irc server name to a list of channels to
   automatically join on connect.")
+
+(defvar *nickserv-password-alist* '()
+  "Default password to send to the NickServ authentication bot")
+
 
 (defvar *beirc-user-init-file* (merge-pathnames (make-pathname :name ".beirc.lisp")
                                                 (user-homedir-pathname)))




More information about the Beirc-cvs mailing list