diff options
author | anekos | 2010-08-03 10:51:13 +0000 |
---|---|---|
committer | anekos | 2010-08-03 10:51:13 +0000 |
commit | 8d02144f739bed8a68c85b9e23c31849e67a9ce7 (patch) | |
tree | 8022089899554652b664a5e1d3dac4e6f2cfef36 /twittperator.js | |
parent | 108b9803480e12ced50cabbe9beebd6b4355b805 (diff) | |
download | vimperator-plugins-8d02144f739bed8a68c85b9e23c31849e67a9ce7.tar.bz2 |
複数の @ 補完に対応
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@38155 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'twittperator.js')
-rwxr-xr-x | twittperator.js | 16 |
1 files changed, 15 insertions, 1 deletions
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); } |