aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--migemized_find.js26
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) {