"Select a layout-name from all current available layouts and change
the layout to the selected layout-name."
(interactive (list (completing-read "Layout: " riece-layout-alist)))
- (setq riece-layout name)
+ (setq riece-layout name
+ riece-save-variables-are-dirty t)
(riece-command-configure-windows))
(defun riece-command-toggle-channel-buffer-mode ()
(defun riece-command-finger (user &optional recurse)
(interactive
(let* ((completion-ignore-case t)
- (user (completing-read
+ (user (riece-completing-read-identity
"User: "
- (mapcar #'list (riece-get-users-on-server)))))
+ (riece-get-users-on-server (riece-current-server-name)))))
(list user current-prefix-arg)))
(if recurse
- (riece-send-string (format "WHOIS %s %s\r\n" user user))
- (riece-send-string (format "WHOIS %s\r\n" user))))
+ (riece-send-string (format "WHOIS %s %s\r\n"
+ (riece-identity-prefix user)
+ (riece-identity-prefix user)))
+ (riece-send-string (format "WHOIS %s\r\n" (riece-identity-prefix user)))))
(defun riece-command-topic (topic)
(interactive
(interactive
(let ((completion-ignore-case t))
(riece-check-channel-commands-are-usable t)
- (list (completing-read
+ (list (riece-completing-read-identity
"User: "
- (mapcar #'list (riece-get-users-on-server))))))
+ (riece-get-users-on-server (riece-current-server-name))))))
(riece-send-string (format "INVITE %s %s\r\n"
- user (riece-identity-prefix
- riece-current-channel))))
+ (riece-identity-prefix user)
+ (riece-identity-prefix riece-current-channel))))
(defun riece-command-kick (user &optional message)
(interactive
(riece-check-channel-commands-are-usable t)
(list (completing-read
"User: "
- (mapcar #'list
- (riece-with-server-buffer
- (riece-identity-server riece-current-channel)
- (riece-channel-get-users
- (riece-identity-prefix riece-current-channel)))))
+ (riece-with-server-buffer
+ (riece-identity-server riece-current-channel)
+ (riece-channel-get-users (riece-identity-prefix
+ riece-current-channel))))
(if current-prefix-arg
(read-string "Message: ")))))
(riece-send-string
(interactive
(progn
(riece-check-channel-commands-are-usable t)
- (let ((operators
- (riece-with-server-buffer
- (riece-identity-server riece-current-channel)
- (riece-channel-get-operators
- (riece-identity-prefix riece-current-channel))))
- (completion-ignore-case t)
- users)
- (if current-prefix-arg
- (setq users (riece-completing-read-multiple
- "Users"
- (mapcar #'list operators)))
- (setq users (riece-completing-read-multiple
- "Users"
- (delq nil (mapcar
- (lambda (user)
- (unless (member user operators)
- (list user)))
- (riece-with-server-buffer
- (riece-identity-server
- riece-current-channel)
- (riece-channel-get-users
- (riece-identity-prefix
- riece-current-channel))))))))
- (list users current-prefix-arg))))
+ (let ((completion-ignore-case t))
+ (list (riece-completing-read-multiple
+ "Users"
+ (riece-with-server-buffer
+ (riece-identity-server riece-current-channel)
+ (riece-channel-get-users (riece-identity-prefix
+ riece-current-channel)))
+ (if current-prefix-arg
+ (lambda (user)
+ (memq ?o (cdr user)))
+ (lambda (user)
+ (not (memq ?o (cdr user))))))
+ current-prefix-arg))))
(let (group)
(while users
(setq group (cons (car users) group)
(interactive
(progn
(riece-check-channel-commands-are-usable t)
- (let ((speakers
- (riece-with-server-buffer
- (riece-identity-server riece-current-channel)
- (riece-channel-get-speakers
- (riece-identity-prefix riece-current-channel))))
- (completion-ignore-case t)
- users)
- (if current-prefix-arg
- (setq users (riece-completing-read-multiple
- "Users"
- (mapcar #'list speakers)))
- (setq users (riece-completing-read-multiple
- "Users"
- (delq nil (mapcar
- (lambda (user)
- (unless (member user speakers)
- (list user)))
- (riece-with-server-buffer
- (riece-identity-server
- riece-current-channel)
- (riece-channel-get-users
- (riece-identity-prefix
- riece-current-channel))))))))
- (list users current-prefix-arg))))
+ (let ((completion-ignore-case t))
+ (list (riece-completing-read-multiple
+ "Users"
+ (riece-with-server-buffer
+ (riece-identity-server riece-current-channel)
+ (riece-channel-get-users (riece-identity-prefix
+ riece-current-channel)))
+ (if current-prefix-arg
+ (lambda (user)
+ (memq ?v (cdr user)))
+ (lambda (user)
+ (not (memq ?v (cdr user))))))
+ current-prefix-arg))))
(let (group)
(while users
(setq group (cons (car users) group)
"Send the current line to USER."
(interactive
(let ((completion-ignore-case t))
- (list (completing-read
+ (list (riece-completing-read-identity
"User: "
- (mapcar #'list (riece-get-users-on-server))))))
+ (riece-get-users-on-server (riece-current-server-name))))))
(let ((text (buffer-substring
(riece-line-beginning-position)
(riece-line-end-position))))
(riece-send-string
- (format "PRIVMSG %s :%s\r\n" user text))
+ (format "PRIVMSG %s :%s\r\n" (riece-identity-prefix user) text))
(riece-display-message
- (riece-make-message (riece-current-nickname)
- (riece-make-identity user (riece-current-server-name))
- text nil t)))
+ (riece-make-message (riece-current-nickname) user text nil t)))
(let ((next-line-add-newlines t))
(next-line 1)))