From 8d02144f739bed8a68c85b9e23c31849e67a9ce7 Mon Sep 17 00:00:00 2001 From: anekos Date: Tue, 3 Aug 2010 10:51:13 +0000 Subject: 複数の @ 補完に対応 git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@38155 d0d07461-0603-4401-acd4-de1884942a52 --- twittperator.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/twittperator.js b/twittperator.js index 100ab82..d773dc0 100755 --- a/twittperator.js +++ b/twittperator.js @@ -1483,6 +1483,20 @@ function loadPlugins() { // {{{ } } + function tailMatch(re, str) { + let result, m; + let head = 0; + let len = 0; + while (str && (m = str.match(re))) { + head += len; + len = m.index + m[0].length; + str = str.slice(len); + result = m; + } + result.index += head; + return result; + } + function commandCompelter(context, args) { function statusObjectFilter(item) let (desc = item.description) @@ -1518,7 +1532,7 @@ function loadPlugins() { // {{{ let m; if (m = args.literalArg.match(/(RT\s+)@.*$/)) { Completers.name_id_text(context, args); - } else if (m = args.literalArg.match(/(^|\b)@.*$/)) { + } else if (m = tailMatch(/(^|\b)@[^@]*/, args.literalArg)) { Completers.name_id(context, args); } -- cgit v1.2.3