X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Friece-lsdb.el;h=22bbbeda0f86af0424c84b66774e70ae5feff33d;hb=c431782a8f156d15c3f6c6eda3faedf0f3d2e9a8;hp=bec570125310a50c461ed0ad057916fced656e29;hpb=dd2c976135cefa739cf397bcc9f7aff7dce3bbaa;p=elisp%2Friece.git diff --git a/lisp/riece-lsdb.el b/lisp/riece-lsdb.el index bec5701..22bbbed 100644 --- a/lisp/riece-lsdb.el +++ b/lisp/riece-lsdb.el @@ -1,4 +1,4 @@ -;;; riece-lsdb.el --- interface to LSDB +;;; riece-lsdb.el --- help register nicknames in LSDB rolodex program ;; Copyright (C) 1998-2003 Daiki Ueno ;; Author: Daiki Ueno @@ -19,17 +19,17 @@ ;; You should have received a copy of the GNU General Public License ;; along with GNU Emacs; see the file COPYING. If not, write to the -;; Free Software Foundation, Inc., 59 Temple Place - Suite 330, -;; Boston, MA 02111-1307, USA. +;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, +;; Boston, MA 02110-1301, USA. ;;; Commentary: -;; To use, add the following line to your ~/.riece/init.el: -;; (add-to-list 'riece-addons 'riece-lsdb) +;; NOTE: This is an add-on module for Riece. ;;; Code: (require 'riece-identity) +(require 'riece-misc) (eval-when-compile (autoload 'lsdb-maybe-load-hash-tables "lsdb") @@ -43,10 +43,8 @@ (defvar riece-lsdb-cache nil) -(defvar riece-lsdb-enabled nil) - (defconst riece-lsdb-description - "Use LSDB (Lovely Sister Database)") + "Help register nicknames in LSDB rolodex program.") (defun riece-lsdb-update-cache (record) (let ((irc (cdr (assq 'irc record)))) @@ -117,6 +115,9 @@ (list (cons 'irc (cons irc old))))))) (defvar riece-command-mode-map) +(defvar lsdb-secondary-hash-tables) +(defvar lsdb-after-update-record-functions) +(defvar lsdb-after-delete-record-functions) (defun riece-lsdb-insinuate () (require 'lsdb) (add-to-list 'lsdb-secondary-hash-tables @@ -126,19 +127,25 @@ (add-to-list 'lsdb-after-delete-record-functions 'riece-lsdb-delete-cache)) +(defun riece-lsdb-uninstall () + (setq lsdb-secondary-hash-tables + (delq 'riece-lsdb-cache lsdb-secondary-hash-tables) + lsdb-after-update-record-functions + (delq 'riece-lsdb-update-cache lsdb-after-update-record-functions) + lsdb-after-delete-record-functions + (delq 'riece-lsdb-delete-cache lsdb-after-delete-record-functions))) + (defun riece-lsdb-enable () (define-key riece-command-mode-map "\C-c\C-ll" 'riece-lsdb-display-records) (define-key riece-command-mode-map - "\C-c\C-la" 'riece-lsdb-add-user) - (setq riece-lsdb-enabled t)) + "\C-c\C-la" 'riece-lsdb-add-user)) (defun riece-lsdb-disable () (define-key riece-command-mode-map "\C-c\C-ll" nil) (define-key riece-command-mode-map - "\C-c\C-la" nil) - (setq riece-lsdb-enabled nil)) + "\C-c\C-la" nil)) (provide 'riece-lsdb)