diff options
author | anekos | 2008-08-21 08:33:04 +0000 |
---|---|---|
committer | anekos | 2008-08-21 08:33:04 +0000 |
commit | 1570f104aa9b383a7ee46a3318678a93c7f437e9 (patch) | |
tree | a84f6939a449d32921706f402fc94d7ad8545691 /migemized_find.js | |
parent | adfacf089ef973e240f23684bd1c5e1c0b009703 (diff) | |
download | vimperator-plugins-1570f104aa9b383a7ee46a3318678a93c7f437e9.tar.bz2 |
検索開始を遅延することで取りこぼしにくくした。
git-svn-id: http://svn.coderepos.org/share/lang/javascript/vimperator-plugins/trunk@17953 d0d07461-0603-4401-acd4-de1884942a52
Diffstat (limited to 'migemized_find.js')
-rw-r--r-- | migemized_find.js | 26 |
1 files changed, 20 insertions, 6 deletions
diff --git a/migemized_find.js b/migemized_find.js index 0da0f04..2709576 100644 --- a/migemized_find.js +++ b/migemized_find.js @@ -11,6 +11,10 @@ // '?' => Migemo検索 // 以外 => Migemo検索 // +// Setting: +// let g:migemized_find_delay = "0" +// 検索開始の遅延時間 +// // Author: // anekos // @@ -18,7 +22,9 @@ // http://d.hatena.ne.jp/nokturnalmortum/20080805#1217941126 // // TODO: -// FIND_MODE_NATIVE のときうまく動かない。XUL/Migemoの問題? +// FIND_MODE_NATIVE のときうまく動かない。XUL/Migemoの問題? +// 検索時に取りこぼさないようにする。 +// (とりあえず検索開始を遅延することで取りこぼしにくくした) (function () { @@ -57,13 +63,21 @@ return [str, XMigemoFind.FIND_MODE_MIGEMO]; } + let timer = null; + let migemized = { find: function find (str, backwards) { - let [word, mode] = getFindMode(str); - if (!word) - return; - XMigemoFind.findMode = mode; - XMigemoFind.find(backwards, lastKeyword = word, true); + let f = function () { + liberator.log('called '); + let [word, mode] = getFindMode(str); + if (!word) + return; + XMigemoFind.findMode = mode; + XMigemoFind.find(backwards, lastKeyword = word, true); + }; + if (timer) + clearTimeout(timer); + timer = setTimeout(f, parseInt(liberator.globalVariables.migemized_find_delay || '300')); }, findAgain: function findAgain (reverse) { |