aboutsummaryrefslogtreecommitdiffstats
path: root/twittperator
diff options
context:
space:
mode:
authoranekos2011-03-30 23:28:33 +0900
committeranekos2011-03-30 23:28:33 +0900
commitdcbd3878a940f7375fed3037cd5a44f12dbbdb55 (patch)
treecdd997df7b19e5c3fe94b4a05ca6941e13d1ec4f /twittperator
parent10013f2ef76c005bccdbee31ed7793172dc9f1c5 (diff)
downloadvimperator-plugins-dcbd3878a940f7375fed3037cd5a44f12dbbdb55.tar.bz2
超反応プラグイン。
Diffstat (limited to 'twittperator')
-rw-r--r--twittperator/pong.tw37
1 files changed, 37 insertions, 0 deletions
diff --git a/twittperator/pong.tw b/twittperator/pong.tw
new file mode 100644
index 0000000..4f21b7e
--- /dev/null
+++ b/twittperator/pong.tw
@@ -0,0 +1,37 @@
+/*
+ * Please write the below line into .vimperatorrc.
+ * let g:twittperator_plugin_pong = 1
+ * let g:twittperator_screen_name = "<YOUR_SCREEN_NAME>"
+ */
+
+(function () {
+ let screenName = liberator.globalVariables.twittperator_screen_name;
+ if (!screenName)
+ return liberator.echoerr('please. let g:twittperator_screen_name = "<YOUR_SCREEN_NAME>"');
+
+ plugins.twittperator.ChirpUserStream.addListener(
+ function onMsg (msg, raw) {
+ if (!(msg.text && msg.user))
+ return;
+
+ if (msg.text.trim() === ('@' + screenName))
+ return plugins.twittperator.Twitter.say('@' + msg.user.screen_name, msg.id_str);
+
+ if (RegExp('^\\s*@' + screenName + '\\s+ping\s*$')(msg.text.trim()))
+ return plugins.twittperator.Twitter.say('@' + msg.user.screen_name + ' pong', msg.id_str);
+
+ if (RegExp('^\\s*@' + screenName + '\\s+pong\s*$')(msg.text.trim()))
+ return plugins.twittperator.Twitter.say('@' + msg.user.screen_name + ' pang', msg.id_str);
+
+ if (RegExp('^\\s*@' + screenName + '\\s+pang\s*$')(msg.text.trim()))
+ return plugins.twittperator.Twitter.say('@' + msg.user.screen_name + ' bang', msg.id_str);
+
+ if (RegExp('^\\s*@' + screenName + '\\s+bang\s*$')(msg.text.trim()))
+ return plugins.twittperator.Twitter.say('@' + msg.user.screen_name + ' ( \u25D5 \u203F\u203F \u25D5 )', msg.id_str);
+ }
+ );
+})();
+
+// vim: sw=2 ts=2 et fdm=marker ft=javascript:
+
+