diff options
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) { | 
