X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Friece-commands.el;h=5241a68cb57919b64358ed84c54722fe78769179;hb=f35da0cebf7d30363e0df9a2473cbf23965f9254;hp=116d58a0e9c7db55520c872e0f2684e941259c8c;hpb=db33cfdd5cabbc8dac9474d0ebd6cae41d99500e;p=elisp%2Friece.git diff --git a/lisp/riece-commands.el b/lisp/riece-commands.el index 116d58a..5241a68 100644 --- a/lisp/riece-commands.el +++ b/lisp/riece-commands.el @@ -19,8 +19,8 @@ ;; 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. ;;; Code: @@ -32,6 +32,7 @@ (require 'riece-misc) (require 'riece-identity) (require 'riece-message) +(require 'riece-mcat) (autoload 'derived-mode-class "derived") @@ -205,7 +206,7 @@ the layout to the selected layout-name." "Invite user: " (riece-get-users-on-server (riece-current-server-name)) nil nil nil nil nil t)))) - (riece-send-string (format "INVITE %s %s\r\n" + (riece-send-string (format "INVITE %s :%s\r\n" (riece-identity-prefix user) (riece-identity-prefix riece-current-channel)))) @@ -443,17 +444,16 @@ the layout to the selected layout-name." (next-line 1))) (defun riece-command-join-channel (target key) - (let ((process (riece-server-process (riece-identity-server target)))) - (unless process - (error "%s" (substitute-command-keys - "Type \\[riece-command-open-server] to open server."))) - (riece-send-string (if key - (format "JOIN %s :%s\r\n" - (riece-identity-prefix target) - key) - (format "JOIN %s\r\n" - (riece-identity-prefix target))) - target))) + (unless (riece-server-opened (riece-identity-server target)) + (error "%s" (substitute-command-keys + "Type \\[riece-command-open-server] to open server."))) + (riece-send-string (if key + (format "JOIN %s :%s\r\n" + (riece-identity-prefix target) + key) + (format "JOIN %s\r\n" + (riece-identity-prefix target))) + target)) (defun riece-command-join-partner (target) (let ((pointer (riece-identity-member target riece-current-channels))) @@ -484,14 +484,16 @@ the layout to the selected layout-name." (riece-command-join-partner target))))) (defun riece-command-part-channel (target message) - (let ((process (riece-server-process (riece-identity-server target)))) - (riece-send-string (if message - (format "PART %s :%s\r\n" - (riece-identity-prefix target) - message) - (format "PART %s\r\n" - (riece-identity-prefix target))) - target))) + (unless (riece-server-opened (riece-identity-server target)) + (error "%s" (substitute-command-keys + "Type \\[riece-command-open-server] to open server."))) + (riece-send-string (if message + (format "PART %s :%s\r\n" + (riece-identity-prefix target) + message) + (format "PART %s\r\n" + (riece-identity-prefix target))) + target)) (defun riece-command-part (target &optional message) (interactive @@ -632,7 +634,7 @@ If prefix argument ARG is non-nil, toggle frozen status." (progn (message "No server process") (ding)) - (if (y-or-n-p "Really quit IRC? ") + (if (y-or-n-p (riece-mcat "Really quit IRC? ")) (let ((message (if arg (read-string "Message: ") @@ -719,7 +721,10 @@ If prefix argument ARG is non-nil, toggle frozen status." (if current-prefix-arg (read-string "Message: ") riece-quit-message))) - (riece-quit-server-process (riece-server-process server-name) message)) + (let ((process (riece-server-process server-name))) + (unless process + (error "%s is not opened" server-name)) + (riece-quit-server-process process message))) (defun riece-command-universal-server-name-argument () (interactive) @@ -732,6 +737,15 @@ If prefix argument ARG is non-nil, toggle frozen status." (message "") (call-interactively command))) +(eval-when-compile + (autoload 'riece-save-variables-files "riece")) +(defun riece-command-save-variables () + "Save `riece-variables-file'." + (interactive) + (if (or riece-save-variables-are-dirty + (y-or-n-p "No changes made. Save anyway? ")) + (riece-save-variables-files))) + (provide 'riece-commands) ;;; riece-commands.el ends here