mirror of
https://github.com/gryf/pentadactyl-pm.git
synced 2025-12-23 00:27:57 +01:00
add "s" and "a" mappings to extended hints mode for saving hint targets
This commit is contained in:
2
NEWS
2
NEWS
@@ -2,6 +2,8 @@
|
|||||||
2007-xx-xx:
|
2007-xx-xx:
|
||||||
* version 0.6
|
* version 0.6
|
||||||
* THIS VERSION ONLY WORKS WITH FIREFOX 3.0
|
* THIS VERSION ONLY WORKS WITH FIREFOX 3.0
|
||||||
|
* added "s" and "a" mappings to extended hints mode for saving hint
|
||||||
|
targets
|
||||||
* "d", "D" and :bdelete support count now
|
* "d", "D" and :bdelete support count now
|
||||||
* :back/:forward can use tabcompletion
|
* :back/:forward can use tabcompletion
|
||||||
* :undoall support, and tabcompletion for :undo <tab>
|
* :undoall support, and tabcompletion for :undo <tab>
|
||||||
|
|||||||
@@ -452,6 +452,8 @@ function Hints() //{{{
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
// TODO: move these functions somewhere more general
|
||||||
|
|
||||||
// this function 'click' an element, which also works
|
// this function 'click' an element, which also works
|
||||||
// for javascript links
|
// for javascript links
|
||||||
this.openHints = function(new_tab, new_window)
|
this.openHints = function(new_tab, new_window)
|
||||||
@@ -546,6 +548,28 @@ function Hints() //{{{
|
|||||||
vimperator.echo("Yanked " + loc, vimperator.commandline.FORCE_SINGLELINE);
|
vimperator.echo("Yanked " + loc, vimperator.commandline.FORCE_SINGLELINE);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
this.saveHints = function(skip_prompt)
|
||||||
|
{
|
||||||
|
var elems = this.hintedElements();
|
||||||
|
|
||||||
|
for (var i = 0; i < elems.length; i++)
|
||||||
|
{
|
||||||
|
var doc = elems[i].ownerDocument;
|
||||||
|
var url = makeURLAbsolute(elems[i].refElem.baseURI, elems[i].refElem.href);
|
||||||
|
var text = elems[i].refElem.textContent;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
urlSecurityCheck(url, doc.nodePrincipal);
|
||||||
|
saveURL(url, text, null, true, skip_prompt, makeURI(url, doc.characterSet));
|
||||||
|
}
|
||||||
|
catch (e)
|
||||||
|
{
|
||||||
|
vimperator.echoerr(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
function setMouseOverElement(elem)
|
function setMouseOverElement(elem)
|
||||||
{
|
{
|
||||||
var doc = window.document;
|
var doc = window.document;
|
||||||
|
|||||||
@@ -1033,7 +1033,8 @@ function Mappings() //{{{
|
|||||||
"<li><code class=\"mapping\">t</code> to open its location in a new tab</li>" +
|
"<li><code class=\"mapping\">t</code> to open its location in a new tab</li>" +
|
||||||
"<li><code class=\"mapping\">O</code> to open its location in an <code class=\"command\">:open</code> query (not implemented yet)</li>" +
|
"<li><code class=\"mapping\">O</code> to open its location in an <code class=\"command\">:open</code> query (not implemented yet)</li>" +
|
||||||
"<li><code class=\"mapping\">T</code> to open its location in an <code class=\"command\">:tabopen</code> query (not implemented yet)</li>" +
|
"<li><code class=\"mapping\">T</code> to open its location in an <code class=\"command\">:tabopen</code> query (not implemented yet)</li>" +
|
||||||
"<li><code class=\"mapping\">s</code> to save its destination (not implemented yet)</li>" +
|
"<li><code class=\"mapping\">s</code> to save its destination</li>" +
|
||||||
|
"<li><code class=\"mapping\">a</code> to save its destination (prompting for save location)</li>" +
|
||||||
"<li><code class=\"mapping\"><C-w></code> to open its destination in a new window</li>" +
|
"<li><code class=\"mapping\"><C-w></code> to open its destination in a new window</li>" +
|
||||||
"</ul>" +
|
"</ul>" +
|
||||||
"Multiple hints can be separated by commas where it makes sense. <code class=\"mapping\">;ab,ac,adt</code> opens <code>AB</code>, <code>AC</code> and <code>AD</code> in a new tab.<br/>" +
|
"Multiple hints can be separated by commas where it makes sense. <code class=\"mapping\">;ab,ac,adt</code> opens <code>AB</code>, <code>AC</code> and <code>AD</code> in a new tab.<br/>" +
|
||||||
@@ -1110,7 +1111,14 @@ function Mappings() //{{{
|
|||||||
}
|
}
|
||||||
));
|
));
|
||||||
addDefaultMap(new Map([vimperator.modes.HINTS], ["s"],
|
addDefaultMap(new Map([vimperator.modes.HINTS], ["s"],
|
||||||
function() { vimperator.echoerr('Saving of links not yet implemented'); },
|
function() { vimperator.hints.saveHints(true); },
|
||||||
|
{
|
||||||
|
cancel_mode: true,
|
||||||
|
always_active: false
|
||||||
|
}
|
||||||
|
));
|
||||||
|
addDefaultMap(new Map([vimperator.modes.HINTS], ["a"],
|
||||||
|
function() { vimperator.hints.saveHints(false); },
|
||||||
{
|
{
|
||||||
cancel_mode: true,
|
cancel_mode: true,
|
||||||
always_active: false
|
always_active: false
|
||||||
|
|||||||
Reference in New Issue
Block a user