+(defun murk-command-me (params)
+ (let* ((ctx (murk-current-context))
+ (server (murk-context-server ctx)))
+ (if (and ctx (not (murk-server-context-p ctx)))
+ (if params
+ (let* ((channel (murk-context-channel ctx))
+ (my-nick (murk-connection-nick server))
+ (action (string-join params " "))
+ (ctcp-text (concat "\01ACTION " action "\01")))
+ (murk-send-msg server
+ (murk-msg nil nil "PRIVMSG"
+ (list channel ctcp-text)))
+ (murk-display-action server my-nick channel action))
+ (murk-display-notice nil "Usage: /me <action>"))
+ (murk-display-notice nil "No current channel."))))
+
+(defun murk-command-version (params)
+ (let ((ctx (murk-current-context)))
+ (if ctx
+ (if params
+ (let ((server (murk-context-server ctx))
+ (nick (car params)))
+ (murk-send-msg server
+ (lurk-msg nil nil "PRIVMSG"
+ (list nick "\01VERSION\01")))
+ (murk-display-notice ctx "CTCP version request sent to "
+ nick " on " server))
+ (murk-display-notice ctx "Usage: /version <nick>"))
+ (murk-display-notice nil "No current channel."))))
+
+(defun murk-command-users (_params)
+ (let ((ctx (murk-current-context)))
+ (if (and ctx (not (murk-server-context-p ctx)))
+ (let ((channel (murk-context-channel ctx))
+ (server (murk-context-server ctx))
+ (users (murk-context-users ctx)))
+ (murk-display-notice ctx "Users in " channel " on " server ":")
+ (murk-display-notice ctx (string-join users " ")))
+ (murk-display-notice nil "No current channel."))))
+
+