(riece-read-variables-files): Re-evaluate custom settings.
[riece] / lisp / COMPILE
index aecda24..3721354 100644 (file)
@@ -1,65 +1,66 @@
 ;;; -*- Emacs-Lisp -*-
 
-(require 'riece-addon-modules)
-
 (defvar riece-modules
-  (nconc
-   (cons 'riece-compat
-        (cons (if (featurep 'xemacs)
-                  'riece-xemacs
-                'riece-emacs)
-              '(riece-globals
-                riece-options
-                riece-debug
-                riece-version
-                riece-coding
-                riece-complete
-                riece-addon-modules
-                riece-addon
-                riece-ruby
-
-                riece-mode
-                ;; riece-identity -+-> riece-channel
-                ;;                 +-> riece-user
-                riece-identity
-                riece-channel
-                riece-user
-
-                riece-misc
-                riece-signal
-
-                ;; riece-layout ---> riece-display
-                riece-layout
-                riece-display
-                riece-server
-
-                ;; riece-channel -+-> riece-naming
-                ;; riece-user    -+
-                riece-naming
-                riece-message
-
-                ;; riece-filter calls riece-{handle,000,200,300,400,500}
-                riece-filter
-                riece-handle
-                riece-000
-                riece-200
-                riece-300
-                riece-400
-                riece-500
-
-                riece-commands
-                riece-irc
-                riece)))
-   (mapcar #'car riece-addon-modules)))
+  (cons 'riece-compat
+       (cons (if (featurep 'xemacs)
+                 'riece-xemacs
+               'riece-emacs)
+             '(riece-globals
+               riece-options
+               riece-debug
+               riece-package-info
+               riece-version
+               riece-coding
+               riece-complete
+               riece-mcat
+               riece-addon-modules
+               riece-addon
+               riece-ruby
+               riece-cache
+
+               riece-mode
+               ;; riece-identity -+-> riece-channel
+               ;;                 +-> riece-user
+               riece-identity
+               riece-channel
+               riece-user
+
+               riece-misc
+               riece-signal
+
+               ;; riece-layout ---> riece-display
+               riece-layout
+               riece-display
+               riece-server
+
+               ;; riece-channel -+-> riece-naming
+               ;; riece-user    -+
+               riece-naming
+               riece-message
+
+               ;; riece-filter calls riece-{handle,000,200,300,400,500}
+               riece-filter
+               riece-handle
+               riece-000
+               riece-200
+               riece-300
+               riece-400
+               riece-500
+
+               riece-commands
+               riece-irc
+               riece))))
+
+(defvar riece-mcat-modules
+  '(riece-mcat-japanese))
 
 (defvar riece-icons
-  '("riece-command-quit.xpm"
-    "riece-command-join.xpm"
-    "riece-command-part.xpm"
-    "riece-command-previous-channel.xpm"
+  '("riece-command-previous-channel.xpm"
     "riece-command-next-channel.xpm"
-    "riece-command-change-layout.xpm"
-    "riece-submit-bug-report.xpm"))
+    "riece-command-configure-windows.xpm"
+    "riece-command-list-addons.xpm"
+    "riece-command-join.xpm"
+    "riece-command-part.xpm"))
 
 (defvar riece-scripts
   '("server.rb"
     (if flag
        (string-match "^\\(\\(--[^ ]+ \\)+-\\|[^ =-]\\)*n" flag))))
 
+(defun riece-examine-modules ()
+  (let ((load-path (cons nil load-path)))
+    (require 'riece-mcat)
+    (require 'riece-addon-modules)
+    (append riece-modules
+           riece-mcat-modules
+           (mapcar #'car riece-addon-modules))))
+
 (defun riece-examine ()
-  (princ (mapconcat #'symbol-name riece-modules " ")))
+  (princ (mapconcat #'symbol-name (riece-examine-modules) " ")))
+
+(defun riece-update-mcat ()
+  (let ((modules (riece-examine-modules))
+       (pointer riece-mcat-modules)
+       files)
+    (while pointer
+      (setq modules (delq (car pointer) modules)
+           pointer (cdr pointer)))
+    (setq files (mapcar (lambda (module)
+                         (concat (symbol-name module) ".el"))
+                       modules)
+         pointer riece-mcat-modules)
+    (while pointer
+      (riece-mcat-update files (concat (symbol-name (car pointer)) ".el")
+                        (intern (concat (symbol-name (car pointer))
+                                        "-alist")))
+      (setq pointer (cdr pointer)))))
 
 (defun riece-compile ()
-  (riece-compile-modules riece-modules))
+  (riece-compile-modules (riece-examine-modules)))
 
 (defun riece-install ()
   (riece-install-modules
-   riece-modules
+   (riece-examine-modules)
    (expand-file-name "riece" (car command-line-args-left))
    (riece-install-just-print-p))
   (riece-install-icons
   (add-to-list 'command-line-args-left ".")
   (Custom-make-dependencies)
   (riece-compile-modules
-   (append riece-modules
+   (append (riece-examine-modules)
           '(auto-autoloads custom-load))))
 
 (defun riece-install-package ()
   (riece-install-modules
-   (append riece-modules
+   (append (riece-examine-modules)
           '(auto-autoloads custom-load))
    (expand-file-name "lisp/riece" (car command-line-args-left))
    (riece-install-just-print-p))