aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorStephen Blott2015-05-11 14:37:57 +0100
committerStephen Blott2015-05-11 14:43:29 +0100
commit3975c13fe040639beb56582e50d951ad4839afbb (patch)
tree9e6086f5d416c142837868178d55955bd34ca0c2
parent212a47dca607983f424a59da3b5ab915f3aff403 (diff)
downloadvimium-3975c13fe040639beb56582e50d951ad4839afbb.tar.bz2
Search completion; add weigthing option.
-rw-r--r--background_scripts/completion.coffee6
-rw-r--r--background_scripts/settings.coffee1
-rw-r--r--pages/options.coffee1
-rw-r--r--pages/options.css5
-rw-r--r--pages/options.html27
5 files changed, 36 insertions, 4 deletions
diff --git a/background_scripts/completion.coffee b/background_scripts/completion.coffee
index 25fdf44e..23526f85 100644
--- a/background_scripts/completion.coffee
+++ b/background_scripts/completion.coffee
@@ -416,7 +416,9 @@ class SearchEngineCompleter
return onComplete [] unless custom or 0 < queryTerms.length
query = queryTerms.join " "
+ factor = Settings.get "omniSearchWeight"
haveCompletionEngine = CompletionSearch.haveCompletionEngine searchUrl
+ haveCompletionEngine = false unless 0.0 < factor
# Relevancy:
# - Relevancy does not depend upon the actual suggestion (so, it does not depend upon word
@@ -429,7 +431,7 @@ class SearchEngineCompleter
# a useful suggestion from another completer.
#
characterCount = query.length - queryTerms.length + 1
- relavancy = 0.6 * (Math.min(characterCount, 10.0)/10.0)
+ relavancy = factor * (Math.min(characterCount, 10.0)/10.0)
# This distinguishes two very different kinds of vomnibar baviours, the newer bahviour (true) and the
# legacy behavior (false). We retain the latter for the default search engine, and for custom search
@@ -478,7 +480,7 @@ class SearchEngineCompleter
# Post suggestions and bail if we already have all of the suggestions, or if there is no prospect of
# adding further suggestions.
if queryTerms.length == 0 or cachedSuggestions? or not haveCompletionEngine
- if cachedSuggestions?
+ if cachedSuggestions? and 0 < factor
console.log "cached suggestions:", cachedSuggestions.length, query if SearchEngineCompleter.debug
suggestions.push cachedSuggestions.map(mkSuggestion)...
return onComplete suggestions, { filter, continuation: null }
diff --git a/background_scripts/settings.coffee b/background_scripts/settings.coffee
index 11f492d7..e042eded 100644
--- a/background_scripts/settings.coffee
+++ b/background_scripts/settings.coffee
@@ -43,6 +43,7 @@ root.Settings = Settings =
# or strings
defaults:
scrollStepSize: 60
+ omniSearchWeight: 0.6
smoothScroll: true
keyMappings: "# Insert your preferred key mappings here."
linkHintCharacters: "sadfjklewcmpgh"
diff --git a/pages/options.coffee b/pages/options.coffee
index b3ecf69a..18ff226d 100644
--- a/pages/options.coffee
+++ b/pages/options.coffee
@@ -261,6 +261,7 @@ initOptionsPage = ->
searchEngines: TextOption
searchUrl: NonEmptyTextOption
userDefinedLinkHintCss: TextOption
+ omniSearchWeight: NumberOption
# Populate options. The constructor adds each new object to "Option.all".
for name, type of options
diff --git a/pages/options.css b/pages/options.css
index 5b098c8f..1a3ff757 100644
--- a/pages/options.css
+++ b/pages/options.css
@@ -107,9 +107,10 @@ input#linkHintNumbers {
input#linkHintCharacters {
width: 100%;
}
-input#scrollStepSize {
- width: 40px;
+input#scrollStepSize, input#omniSearchWeight {
+ width: 50px;
margin-right: 3px;
+ padding-left: 3px;
}
textarea#userDefinedLinkHintCss, textarea#keyMappings, textarea#searchEngines {
width: 100%;;
diff --git a/pages/options.html b/pages/options.html
index f89ddcbb..75089d75 100644
--- a/pages/options.html
+++ b/pages/options.html
@@ -233,6 +233,33 @@ b: http://b.com/?q=%s description
<div class="nonEmptyTextOption">
</td>
</tr>
+
+ <!-- Vimium Labs -->
+ <tr>
+ <td colspan="2"><header>Vimium Labs</header></td>
+ </tr>
+ <tr>
+ <td class="caption"></td>
+ <td>
+ <div class="help">
+ <div class="example">
+ </div>
+ </div>
+ These features are experimental and may be changed or removed in future releases.
+ </td>
+ </tr>
+ <tr>
+ <td class="caption">Search weighting</td>
+ <td>
+ <div class="help">
+ <div class="example">
+ How prominent should suggestions be in the vomnibar?
+ <tt>0</tt> disables suggestions altogether.
+ </div>
+ </div>
+ <input id="omniSearchWeight" type="number" min="0.0" max="1.0" step="0.05" />(0 to 1)
+ </td>
+ </tr>
</tbody>
</table>
</div>