* riece-foolproof.el: New add-on.
[riece] / lisp / riece.el
index d096215..cbafff5 100644 (file)
@@ -155,6 +155,7 @@ If optional argument SAFE is nil, overwrite previous definitions."
     "/" riece-command-raw
     ">" end-of-buffer
     "<" beginning-of-buffer
+    "^" riece-command-list-addons
     "\C-ta" riece-command-toggle-away
     "c" riece-command-select-command-buffer
     "f" riece-command-finger
@@ -274,7 +275,6 @@ If optional argument CONFIRM is non-nil, ask which IRC server to connect."
       (let ((pointer riece-addons))
        (while pointer
          (riece-insinuate-addon (car pointer) riece-debug)
-         (riece-enable-addon (car pointer) riece-debug)
          (setq pointer (cdr pointer))))
       (setq riece-addons-insinuated t))
     (if (or confirm (null riece-server))
@@ -303,6 +303,11 @@ If optional argument CONFIRM is non-nil, ask which IRC server to connect."
       (while server-list
        (riece-command-open-server (car server-list))
        (setq server-list (cdr server-list))))
+    (let ((pointer riece-addons))
+      (while pointer
+       (unless (get (car pointer) 'riece-addon-default-disabled)
+         (riece-enable-addon (car pointer) riece-debug))
+       (setq pointer (cdr pointer))))
     (run-hooks 'riece-startup-hook)
     (message "%s" (substitute-command-keys
                   "Type \\[describe-mode] for help"))))
@@ -380,7 +385,7 @@ For a list of the generic commands type \\[riece-command-generic] ? RET.
      "^[]{}'`"))
 
   (run-hooks 'riece-command-mode-hook))
-  
+
 (defun riece-dialogue-mode ()
   "Major mode for displaying the IRC dialogue.
 All normal editing commands are turned off.
@@ -421,6 +426,7 @@ Instead, these commands are available:
 All normal editing commands are turned off.
 Instead, these commands are available:
 \\{riece-channel-mode-map}"
+  (make-local-variable 'riece-channel-buffer-window-point)
   (setq mode-line-buffer-identification
        (riece-mode-line-buffer-identification
         '("Riece: "
@@ -436,7 +442,7 @@ All normal editing commands are turned off."
   (kill-all-local-variables)
   (buffer-disable-undo)
   (setq major-mode 'riece-channel-list-mode
-        mode-name "Channels"
+       mode-name "Channels"
        mode-line-buffer-identification
        (riece-mode-line-buffer-identification '("Riece: "))
        truncate-lines t
@@ -455,7 +461,7 @@ Instead, these commands are available:
   (kill-all-local-variables)
   (buffer-disable-undo)
   (setq major-mode 'riece-user-list-mode
-        mode-name "Users"
+       mode-name "Users"
        mode-line-buffer-identification
        (riece-mode-line-buffer-identification
         '("Riece: " riece-long-channel-indicator " "))
@@ -480,7 +486,7 @@ Instead, these commands are available:
                    (eq major-mode (nth 2 (car alist))))
          (funcall (nth 2 (car alist))))
        (setq alist (cdr alist))))))
-      
+
 (provide 'riece)
 
 ;;; riece.el ends here