(defvar riece-ctcp-ping-time nil)
-(add-hook 'riece-privmsg-hook 'riece-handle-ctcp-request)
-(add-hook 'riece-notice-hook 'riece-handle-ctcp-response)
-
(defvar riece-dialogue-mode-map)
-(eval-after-load "riece"
- '(progn
- (define-key riece-dialogue-mode-map "\C-cv" 'riece-command-ctcp-version)
- (define-key riece-dialogue-mode-map "\C-cp" 'riece-command-ctcp-ping)))
+(defun riece-ctcp-insinuate ()
+ (add-hook 'riece-privmsg-hook 'riece-handle-ctcp-request)
+ (add-hook 'riece-notice-hook 'riece-handle-ctcp-response)
+ (define-key riece-dialogue-mode-map "\C-cv" 'riece-command-ctcp-version)
+ (define-key riece-dialogue-mode-map "\C-cp" 'riece-command-ctcp-ping))
(defun riece-handle-ctcp-request (prefix string)
(when (and prefix string
(riece-prefix-nickname prefix))
- (let* ((user (riece-prefix-nickname prefix))
- (parameters (riece-split-parameters string))
- (targets (split-string (pop parameters) ","))
- (message (pop parameters)))
+ (let* ((parameters (riece-split-parameters string))
+ (targets (split-string (car parameters) ","))
+ (message (nth 1 parameters)))
(if (string-match "\1\\([^ ]+\\)\\( .+\\)?\1" message)
(let ((request (downcase (match-string 1 message))))
(if (match-beginning 2)
(defun riece-handle-ctcp-response (prefix string)
(when (and prefix string
(riece-prefix-nickname prefix))
- (let* ((user (riece-prefix-nickname prefix))
- (parameters (riece-split-parameters string))
- (targets (split-string (pop parameters) ","))
- (message (pop parameters)))
+ (let* ((parameters (riece-split-parameters string))
+ (targets (split-string (car parameters) ","))
+ (message (nth 1 parameters)))
(if (string-match "\1\\([^ ]+\\)\\( .+\\)?\1" message)
(let ((response (downcase (match-string 1 message))))
(if (match-beginning 2)