mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2025-12-23 04:07:58 +01:00
added google suggestions to tab completion
This commit is contained in:
1
NEWS
1
NEWS
@@ -11,6 +11,7 @@
|
|||||||
of bringing up the bookmarks/history window
|
of bringing up the bookmarks/history window
|
||||||
* IMPORTANT: "B" mapping now works just like :buffers, old bufferwindow will be removed
|
* IMPORTANT: "B" mapping now works just like :buffers, old bufferwindow will be removed
|
||||||
at some time. Use B5gt to jump to the 5th tab.
|
at some time. Use B5gt to jump to the 5th tab.
|
||||||
|
* new "g" flag for "complete" to list google suggestions in :open vimp and pressing tab (disabled by default)
|
||||||
* gi accepts now a count to jump to the nth input field
|
* gi accepts now a count to jump to the nth input field
|
||||||
* ctrl-t on input fields starts a very basic vi-mode
|
* ctrl-t on input fields starts a very basic vi-mode
|
||||||
* :play for playing a recorded macro
|
* :play for playing a recorded macro
|
||||||
|
|||||||
@@ -177,6 +177,23 @@ liberator.Completion = function () //{{{
|
|||||||
});
|
});
|
||||||
return [0, buildLongestCommonSubstring(mapped, filter)];
|
return [0, buildLongestCommonSubstring(mapped, filter)];
|
||||||
},
|
},
|
||||||
|
|
||||||
|
googleSuggest: function(filter)
|
||||||
|
{
|
||||||
|
const endPoint = "http://suggestqueries.google.com/complete/search?output=firefox&client=firefox&hl=" +
|
||||||
|
liberator.options.getPref("font.language.group", "en") + "&qu=";
|
||||||
|
var xhr = new XMLHttpRequest();
|
||||||
|
var completions = [];
|
||||||
|
|
||||||
|
xhr.open("GET", endPoint + encodeURIComponent(filter), false);
|
||||||
|
xhr.send(null);
|
||||||
|
var response = window.eval(xhr.responseText)[1];
|
||||||
|
|
||||||
|
for each (var item in response)
|
||||||
|
completions.push([item, "Google Suggestion"]);
|
||||||
|
return [0, completions];
|
||||||
|
},
|
||||||
|
|
||||||
// filter a list of urls
|
// filter a list of urls
|
||||||
//
|
//
|
||||||
// may consist of search engines, filenames, bookmarks and history,
|
// may consist of search engines, filenames, bookmarks and history,
|
||||||
@@ -207,6 +224,8 @@ liberator.Completion = function () //{{{
|
|||||||
completions = completions.concat(liberator.bookmarks.get(filter));
|
completions = completions.concat(liberator.bookmarks.get(filter));
|
||||||
else if (cpt[i] == "h")
|
else if (cpt[i] == "h")
|
||||||
completions = completions.concat(liberator.history.get(filter));
|
completions = completions.concat(liberator.history.get(filter));
|
||||||
|
else if (cpt[i] == "g")
|
||||||
|
completions = completions.concat(this.googleSuggest(filter)[1]);
|
||||||
}
|
}
|
||||||
|
|
||||||
return [start, completions];
|
return [start, completions];
|
||||||
|
|||||||
@@ -903,8 +903,9 @@ liberator.Events = function () //{{{
|
|||||||
// dump("=+++++++++=\n" + liberator.util.objectToString(event.target) + "\n")
|
// dump("=+++++++++=\n" + liberator.util.objectToString(event.target) + "\n")
|
||||||
// dump (elem + ": " + win + "\n");//" - target: " + event.target + " - origtarget: " + event.originalTarget + " - expltarget: " + event.explicitOriginalTarget + "\n");
|
// dump (elem + ": " + win + "\n");//" - target: " + event.target + " - origtarget: " + event.originalTarget + " - expltarget: " + event.explicitOriginalTarget + "\n");
|
||||||
|
|
||||||
if (elem && elem instanceof HTMLInputElement &&
|
if (win == window.content && // don't store it if e.g. the command line has focus
|
||||||
(elem.type.toLowerCase() == "text" || elem.type.toLowerCase() == "password"))
|
elem && elem instanceof HTMLInputElement &&
|
||||||
|
(elem.type.toLowerCase() == "text" || elem.type.toLowerCase() == "password"))
|
||||||
{
|
{
|
||||||
this.wantsModeReset = false;
|
this.wantsModeReset = false;
|
||||||
liberator.mode = liberator.modes.INSERT;
|
liberator.mode = liberator.modes.INSERT;
|
||||||
|
|||||||
@@ -286,7 +286,7 @@ liberator.CommandLine = function () //{{{
|
|||||||
"Items which are completed at the :[tab]open prompt",
|
"Items which are completed at the :[tab]open prompt",
|
||||||
"charlist", "sfbh",
|
"charlist", "sfbh",
|
||||||
{
|
{
|
||||||
validator: function (value) { return !/[^sfbh]/.test(value); }
|
validator: function (value) { return !/[^sfbhg]/.test(value); }
|
||||||
});
|
});
|
||||||
|
|
||||||
liberator.options.add(["showmode", "smd"],
|
liberator.options.add(["showmode", "smd"],
|
||||||
|
|||||||
@@ -129,6 +129,7 @@ Items which are completed at the [c]:[tab]open[c] prompt. Available items:
|
|||||||
*f* Local files
|
*f* Local files
|
||||||
*b* Bookmarks
|
*b* Bookmarks
|
||||||
*h* History
|
*h* History
|
||||||
|
*g* Google Suggestions
|
||||||
-------------------------------------
|
-------------------------------------
|
||||||
|
|
||||||
The order is important, so [c]:set complete=bs[c] would list bookmarks first,
|
The order is important, so [c]:set complete=bs[c] would list bookmarks first,
|
||||||
|
|||||||
Reference in New Issue
Block a user