1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-20 22:38:00 +01:00

Merge branch 'master' into vimperator-2.1

This commit is contained in:
Doug Kearns
2009-03-11 00:02:00 +11:00
17 changed files with 136 additions and 111 deletions

View File

@@ -658,7 +658,6 @@ CompletionContext.prototype = {
this.tabPressed = false; this.tabPressed = false;
this.title = ["Completions"]; this.title = ["Completions"];
this.updateAsync = false; this.updateAsync = false;
this.waitingForTab = false;
this.cancelAll(); this.cancelAll();
@@ -677,7 +676,6 @@ CompletionContext.prototype = {
for each (let context in this.contexts) for each (let context in this.contexts)
{ {
context.hasItems = false; context.hasItems = false;
context.incomplete = false;
} }
}, },

View File

@@ -639,7 +639,7 @@ function Events() //{{{
{ {
for (let [,dir] in Iterator(dirs)) for (let [,dir] in Iterator(dirs))
{ {
liberator.echomsg('Searching for "macros/*" in ' + dir.path.quote(), 2); liberator.echomsg('Searching for "macros/*" in "' + dir.path + '"', 2);
liberator.log("Sourcing macros directory: " + dir.path + "...", 3); liberator.log("Sourcing macros directory: " + dir.path + "...", 3);

View File

@@ -245,7 +245,7 @@ function IO() //{{{
if (!found) if (!found)
{ {
liberator.echoerr("E344: Can't find directory " + arg.quote() + " in cdpath\n" liberator.echoerr("E344: Can't find directory \"" + arg + "\" in cdpath\n"
+ "E472: Command failed"); + "E472: Command failed");
} }
} }
@@ -278,7 +278,7 @@ function IO() //{{{
if (file.exists() && !args.bang) if (file.exists() && !args.bang)
{ {
liberator.echoerr("E189: " + filename.quote() + " exists (add ! to override)"); liberator.echoerr("E189: \"" + filename + "\" exists (add ! to override)");
return; return;
} }
@@ -297,7 +297,7 @@ function IO() //{{{
} }
catch (e) catch (e)
{ {
liberator.echoerr("E190: Cannot open " + filename.quote() + " for writing"); liberator.echoerr("E190: Cannot open \"" + filename + "\" for writing");
liberator.log("Could not write to " + file.path + ": " + e.message); // XXX liberator.log("Could not write to " + file.path + ": " + e.message); // XXX
} }
}, },
@@ -514,7 +514,7 @@ function IO() //{{{
if (!dir.exists() || !dir.isDirectory()) if (!dir.exists() || !dir.isDirectory())
{ {
liberator.echoerr("E344: Can't find directory " + dir.path.quote() + " in path"); liberator.echoerr("E344: Can't find directory \"" + dir.path + "\" in path");
return null; return null;
} }
@@ -835,7 +835,7 @@ lookup:
let found = false; let found = false;
// FIXME: should use original arg string // FIXME: should use original arg string
liberator.echomsg("Searching for " + paths.join(" ").quote() + " in " + options["runtimepath"].quote(), 2); liberator.echomsg("Searching for \"" + paths.join(" ") + "\" in \"" + options["runtimepath"] + "\"", 2);
outer: outer:
for (let [,dir] in Iterator(dirs)) for (let [,dir] in Iterator(dirs))
@@ -844,7 +844,7 @@ lookup:
{ {
let file = joinPaths(dir, path); let file = joinPaths(dir, path);
liberator.echomsg("Searching for " + file.path.quote(), 3); liberator.echomsg("Searching for \"" + file.path + "\"", 3);
if (file.exists() && file.isFile() && file.isReadable()) if (file.exists() && file.isFile() && file.isReadable())
{ {
@@ -858,7 +858,7 @@ lookup:
} }
if (!found) if (!found)
liberator.echomsg("not found in 'runtimepath': " + paths.join(" ").quote(), 1); // FIXME: should use original arg string liberator.echomsg("not found in 'runtimepath': \"" + paths.join(" ") + "\"", 1); // FIXME: should use original arg string
return found; return found;
}, },
@@ -885,9 +885,9 @@ lookup:
if (!silent) if (!silent)
{ {
if (file.exists() && file.isDirectory()) if (file.exists() && file.isDirectory())
liberator.echomsg("Cannot source a directory: " + filename.quote(), 0); liberator.echomsg("Cannot source a directory: \"" + filename + "\"", 0);
else else
liberator.echomsg("could not source: " + filename.quote(), 1); liberator.echomsg("could not source: \"" + filename + "\"", 1);
liberator.echoerr("E484: Can't open file " + filename); liberator.echoerr("E484: Can't open file " + filename);
} }
@@ -895,7 +895,7 @@ lookup:
return; return;
} }
liberator.echomsg("sourcing " + filename.quote(), 2); liberator.echomsg("sourcing \"" + filename + "\"", 2);
let str = self.readFile(file); let str = self.readFile(file);
let uri = services.get("io").newFileURI(file); let uri = services.get("io").newFileURI(file);
@@ -1005,7 +1005,7 @@ lookup:
if (scriptNames.indexOf(file.path) == -1) if (scriptNames.indexOf(file.path) == -1)
scriptNames.push(file.path); scriptNames.push(file.path);
liberator.echomsg("finished sourcing " + filename.quote(), 2); liberator.echomsg("finished sourcing \"" + filename + "\"", 2);
liberator.log("Sourced: " + filename, 3); liberator.log("Sourced: " + filename, 3);
} }

View File

@@ -1029,11 +1029,11 @@ const liberator = (function () //{{{
return; return;
} }
liberator.echomsg('Searching for "plugin/**/*.{js,vimp}" in ' liberator.echomsg('Searching for "plugin/**/*.{js,vimp}" in "'
+ [dir.path.replace(/.plugin$/, "") for each (dir in dirs)].join(",").quote(), 2); + [dir.path.replace(/.plugin$/, "") for each (dir in dirs)].join(",") + '"', 2);
dirs.forEach(function (dir) { dirs.forEach(function (dir) {
liberator.echomsg("Searching for " + (dir.path + "/**/*.{js,vimp}").quote(), 3); liberator.echomsg("Searching for \"" + (dir.path + "/**/*.{js,vimp}") + "\"", 3);
sourceDirectory(dir); sourceDirectory(dir);
}); });
}, },
@@ -1426,16 +1426,24 @@ window.liberator = liberator;
// FIXME: Ugly, etc. // FIXME: Ugly, etc.
window.addEventListener("liberatorHelpLink", function (event) { window.addEventListener("liberatorHelpLink", function (event) {
let elem = event.target; let elem = event.target;
if (/^(option|mapping|command)$/.test(elem.className)) if (/^(option|mapping|command)$/.test(elem.className))
var tag = elem.textContent.replace(/\s.*/, ""); var tag = elem.textContent.replace(/\s.*/, "");
if (/^(mapping|command)$/.test(elem.className))
tag = tag.replace(/^\d+/, "");
if (elem.className == "command") if (elem.className == "command")
tag = tag.replace(/\[.*?\]/g, ""); tag = tag.replace(/\[.*?\]/g, "").replace(/!$/, "");
if (tag) if (tag)
var page = liberator.findHelp(tag); var page = liberator.findHelp(tag);
if (page) if (page)
{
elem.href = "chrome://liberator/locale/" + page; elem.href = "chrome://liberator/locale/" + page;
}, if (buffer.URL.replace(/#.*/, "") == elem.href.replace(/#.*/, "")) // XXX
true, true); setTimeout(function () { content.postMessage("fragmentChange", "*"); }, 0);
}
}, true, true);
// called when the chrome is fully loaded and before the main window is shown // called when the chrome is fully loaded and before the main window is shown
window.addEventListener("load", liberator.startup, false); window.addEventListener("load", liberator.startup, false);

View File

@@ -224,6 +224,7 @@ const template = {
return s + <>{str.substr(start)}</>; return s + <>{str.substr(start)}</>;
}, },
// FIXME: why is href="#"?
highlightURL: function highlightURL(str, force) highlightURL: function highlightURL(str, force)
{ {
if (force || /^[a-zA-Z]+:\/\//.test(str)) if (force || /^[a-zA-Z]+:\/\//.test(str))
@@ -263,7 +264,7 @@ const template = {
<td class="indicator">{idx == index ? ">" : ""}</td> <td class="indicator">{idx == index ? ">" : ""}</td>
<td>{Math.abs(idx - index)}</td> <td>{Math.abs(idx - index)}</td>
<td style="width: 250px; max-width: 500px; overflow: hidden;">{val.title}</td> <td style="width: 250px; max-width: 500px; overflow: hidden;">{val.title}</td>
<td><a href="#" highlight="URL jump-list">{val.URI.spec}</a></td> <td><a href={val.URI.spec} highlight="URL jump-list">{val.URI.spec}</a></td>
</tr>) </tr>)
} }
</table>); </table>);

View File

@@ -1221,7 +1221,7 @@ function CommandLine() //{{{
submit: callback, submit: callback,
change: extra.onChange, change: extra.onChange,
complete: extra.completer, complete: extra.completer,
cancel: extra.onCancel, cancel: extra.onCancel
}; };
modes.push(modes.COMMAND_LINE, modes.PROMPT); modes.push(modes.COMMAND_LINE, modes.PROMPT);
@@ -1423,25 +1423,53 @@ function CommandLine() //{{{
let closeWindow = false; let closeWindow = false;
let passEvent = false; let passEvent = false;
function isScrollable() !win.scrollMaxY == 0; let key = events.toString(event);
function atEnd() win.scrollY / win.scrollMaxY >= 1;
if (event.type == "click") // TODO: Wouldn't multiple handlers be cleaner? --djk
if (event.type == "click" && event.target instanceof HTMLAnchorElement)
{ {
if (event.target instanceof HTMLAnchorElement && event.button < 2) function openLink(where)
{ {
event.preventDefault(); event.preventDefault();
let target = event.button == 0 ? liberator.CURRENT_TAB : liberator.NEW_TAB; // FIXME: Why is this needed? --djk
if (event.target.getAttribute("href") == "#") if (event.target.getAttribute("href") == "#")
liberator.open(event.target.textContent, target); liberator.open(event.target.textContent, where);
else else
liberator.open(event.target.href, target); liberator.open(event.target.href, where);
} }
switch (key)
{
case "<LeftMouse>":
// FIXME: the :ls output no longer wraps the buffer URL in an anchor element
if (event.originalTarget.getAttributeNS(NS.uri, "highlight") == "URL buffer-list")
{
event.preventDefault();
tabs.select(parseInt(event.originalTarget.parentNode.parentNode.firstChild.textContent, 10) - 1);
}
else
{
openLink(liberator.CURRENT_TAB);
}
break;
case "<MiddleMouse>":
case "<C-LeftMouse>":
case "<C-M-LeftMouse>":
openLink(liberator.NEW_BACKGROUND_TAB);
break;
case "<S-MiddleMouse>":
case "<C-S-LeftMouse>":
case "<C-M-S-LeftMouse>":
openLink(liberator.NEW_TAB);
break;
case "<S-LeftMouse>":
openLink(liberator.NEW_WINDOW);
break;
}
return; return;
} }
let key = events.toString(event);
if (startHints) if (startHints)
{ {
statusline.updateInputBuffer(""); statusline.updateInputBuffer("");
@@ -1450,6 +1478,9 @@ function CommandLine() //{{{
return; return;
} }
function isScrollable() !win.scrollMaxY == 0;
function atEnd() win.scrollY / win.scrollMaxY >= 1;
switch (key) switch (key)
{ {
case "<Esc>": case "<Esc>":
@@ -1499,34 +1530,6 @@ function CommandLine() //{{{
break; break;
// TODO: <LeftMouse> on the prompt line should scroll one page // TODO: <LeftMouse> on the prompt line should scroll one page
case "<LeftMouse>":
if (event.originalTarget.getAttributeNS(NS.uri, "highlight") == "URL buffer-list")
{
tabs.select(parseInt(event.originalTarget.parentNode.parentNode.firstChild.textContent, 10) - 1);
closeWindow = true;
break;
}
else if (event.originalTarget.localName.toLowerCase() == "a")
{
liberator.open(event.originalTarget.textContent);
break;
}
case "<A-LeftMouse>": // for those not owning a 3-button mouse
case "<MiddleMouse>":
if (event.originalTarget.localName.toLowerCase() == "a")
{
let where = /\btabopen\b/.test(options["activate"]) ?
liberator.NEW_TAB : liberator.NEW_BACKGROUND_TAB;
liberator.open(event.originalTarget.textContent, where);
}
break;
// let Firefox handle those to select table cells or show a context menu
case "<C-LeftMouse>":
case "<RightMouse>":
case "<C-S-LeftMouse>":
break;
// page down // page down
case "f": case "f":
if (options["more"] && isScrollable()) if (options["more"] && isScrollable())
@@ -1617,7 +1620,7 @@ function CommandLine() //{{{
if (passEvent) if (passEvent)
events.onKeyPress(event); events.onKeyPress(event);
} }
else // set update the prompt string else
{ {
commandline.updateMorePrompt(showMorePrompt, showMoreHelpPrompt); commandline.updateMorePrompt(showMorePrompt, showMoreHelpPrompt);
} }
@@ -1721,7 +1724,7 @@ function ItemList(id) //{{{
if (!iframe) if (!iframe)
{ {
liberator.log("No iframe with id: " + id + " found, strange things may happen!"); // "The truth is out there..." -- djk liberator.log("No iframe with id: " + id + " found, strange things may happen!"); // "The truth is out there..." -- djk
return; return; // XXX
} }
function dom(xml, map) util.xmlToDom(xml, doc, map); function dom(xml, map) util.xmlToDom(xml, doc, map);

View File

@@ -577,7 +577,7 @@ const util = { //{{{
*/ */
readFromClipboard: function readFromClipboard() readFromClipboard: function readFromClipboard()
{ {
let url; let str;
try try
{ {
@@ -599,12 +599,12 @@ const util = { //{{{
if (data) if (data)
{ {
data = data.value.QueryInterface(Ci.nsISupportsString); data = data.value.QueryInterface(Ci.nsISupportsString);
url = data.data.substring(0, dataLen.value / 2); str = data.data.substring(0, dataLen.value / 2);
} }
} }
catch (e) {} catch (e) {}
return url; return str;
}, },
/** /**

View File

@@ -2,10 +2,12 @@ Continuous donations:
* Daniel Bainton (web hosting) * Daniel Bainton (web hosting)
2009: 2009:
* Gavin Sinclair
* Stephen Borchert
* Convolution * Convolution
* Brian Hall * Brian Hall
* Daniel Hahler * Daniel Hahler
* Per-Henrik Persson * Per-Henrik Lundblom
* David C Foor * David C Foor
* Oliver Schaefer * Oliver Schaefer
* Paul Moss * Paul Moss

View File

@@ -17,15 +17,12 @@ BUGS:
- insert abbreviations broken on <space> - insert abbreviations broken on <space>
- :sidebar improvements (:sidebar! Downloads while downloads is open should refocus the sidebar) - :sidebar improvements (:sidebar! Downloads while downloads is open should refocus the sidebar)
- ;s saves the page rather than the image - ;s saves the page rather than the image
- http://cgiirc.blitzed.org?chan=%23debug is unusable after login in
- "g<" fails without a trailing escape because both "g<" and "g<C-g>" - "g<" fails without a trailing escape because both "g<" and "g<C-g>"
are mapped. Vimp should recognize "<C-g>" as an atom that should not are mapped. Vimp should recognize "<C-g>" as an atom that should not
be matched literally. In fact, typing "g<C-g>" out literally is be matched literally. In fact, typing "g<C-g>" out literally is
equivalent to typing "g" and then <C-g>. equivalent to typing "g" and then <C-g>.
(recent CVS regressions): (recent CVS regressions):
- :set noflashblock seems broken (= :set fb? afterwards says "fb"), let's see if that's a
plugin or a vimp issue.
- visual caret mode is broken, requires a manual page focus first anyway or - visual caret mode is broken, requires a manual page focus first anyway or
else it chucks, I haven't investigated --djk else it chucks, I haven't investigated --djk
- messages is still broken in several ways - needs testing. - messages is still broken in several ways - needs testing.
@@ -33,16 +30,13 @@ BUGS:
=> it often overwrites the open command line while editing etc. => it often overwrites the open command line while editing etc.
- <tags> and <keyword> autocmd 'keywords' are not available when adding a - <tags> and <keyword> autocmd 'keywords' are not available when adding a
bookmark - they're being set after the observer triggers the autocmd event. bookmark - they're being set after the observer triggers the autocmd event.
- MOW rendering is broken for multiple commands when open E.g. :ls | ls - MOW rendering is broken for multiple commands when open (E.g. :ls | ls) This
- completion height is broken, try :a<tab>....<tab>, when it wraps it's totally off. appears to be the result of using the Message class when appending multiline
and even if it is not totally off, i had it jump by one pixel when wrapping around. output to an open MOW.
If that's unfixable, i propose reverting the new completion height stuff.
- Windows paths have escaped backslashes in messages - presumably due to
String#quote change.
- :messages is _very_ slow for message history of several thousand lines -> - :messages is _very_ slow for message history of several thousand lines ->
Unresponsive Script: util.js:79 (sometimes xmlToDom() and elsewhere) Unresponsive Script: util.js:79 (sometimes xmlToDom() and elsewhere)
- :hardcopy! seems to be broken for me - The MOW shouldn't close when executing hints and ;F isn't working.
- some extended hint commands aren't working in the MOW (;; ;t ;b ;? ;F) - URLs in :ls output are no longer hyperlinks
FEATURES: FEATURES:
9 finish :help TODOs 9 finish :help TODOs

View File

@@ -233,9 +233,12 @@ zoom range (default: 30%--300%). The zoom levels are used by
default zoom levels are 30%, 50%, 67%, 80%, 90%, 100%, 110%, 120%, 133%, 150%, default zoom levels are 30%, 50%, 67%, 80%, 90%, 100%, 110%, 120%, 133%, 150%,
170%, 200%, 240%, 300%. 170%, 200%, 240%, 300%.
The available zoom range can be changed by setting the \'zoom.minPercent' and The available zoom range can be changed by setting the
\'zoom.maxPercent' Firefox preferences. The zoom levels can be changed using \'http://kb.mozillazine.org/Zoom.minPercent[zoom.minPercent]' and
the \'toolkit.ZoomManager.zoomLevels' preference. \'http://kb.mozillazine.org/Zoom.minPercent[zoom.maxPercent]' Firefox
preferences. The zoom levels can be changed using the
\'http://kb.mozillazine.org/Toolkit.zoomManager.zoomValues[toolkit.ZoomManager.zoomLevels]'
preference.
Note: \'toolkit.ZoomManager.zoomLevels' is specified as a list of values Note: \'toolkit.ZoomManager.zoomLevels' is specified as a list of values
between 0 and 1, not as a percentage. between 0 and 1, not as a percentage.

View File

@@ -2,8 +2,8 @@ HEADER
|Command-line-mode| |Command-line| |mode-cmdline| + |Command-line-mode| |Command-line| |mode-cmdline| +
Command-line mode is used to enter Ex commands (":") and text search patterns Command-line mode is used to enter Ex commands ("[m]:[m]") and text search patterns
("/" and "?"). ("[m]/[m]" and "[m]?[m]").
|:| + |:| +
||:|| ||:||

View File

@@ -6,7 +6,7 @@ function checkFragment()
return; return;
let elem = document.evaluate('//*[@class="tag" and text()="' + frag + '"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null).snapshotItem(0); let elem = document.evaluate('//*[@class="tag" and text()="' + frag + '"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null).snapshotItem(0);
if (elem) if (elem)
window.content.scrollTo(0, elem.getBoundingClientRect().top - 10); // 10px context window.content.scrollTo(0, window.content.scrollY + elem.getBoundingClientRect().top - 10); // 10px context
} }
document.addEventListener("load", checkFragment, true); document.addEventListener("load", checkFragment, true);

View File

@@ -20,13 +20,17 @@ are hidden. +
If you really need them, type: [c]:set guioptions+=mT[c] to get them back. + If you really need them, type: [c]:set guioptions+=mT[c] to get them back. +
If you don't like Vimperator at all, you can uninstall it by typing If you don't like Vimperator at all, you can uninstall it by typing
[c]:addons[c] and remove/disable it. + [c]:addons[c] and remove/disable it. +
If you like it but can't remember the shortcuts, then press [m]F1[m] or If you like it but can't remember the shortcuts, then press [m]<F1>[m] or
[c]:help[c] to get this help window back. [c]:help[c] to get this help window back.
|author| |donation| + |author| |donation| +
Vimperator was written by mailto:stubenschrott@gmx.net[Martin Stubenschrott]. Vimperator was initially written by mailto:stubenschrott@gmx.net[Martin
If you appreciate my work on Vimperator and want to encourage me working on it Stubenschrott] but has found many other
more, you can either send me greetings, patches or make a donation: http://vimperator.org/trac/wiki/Vimperator/Authors[contributors] in the
meanwhile. If you appreciate the work on Vimperator and want to encourage us
working on it more, you can send us greetings, patches, or donations (thanks a
lot to http://vimperator.org/trac/wiki/Vimperator/Donors[these people] who
already did):
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
<!-- the PAYPAL code --> <!-- the PAYPAL code -->
@@ -37,9 +41,11 @@ more, you can either send me greetings, patches or make a donation:
</fieldset></form> </fieldset></form>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Of course as a believer in free open source software, only make a donation If you prefer getting some nice products for your money, you can also support
if you really like Vimperator and the money doesn't hurt -- otherwise just use us by buying some cool http://www.zazzle.com/maxauthority*[merchandise] like
it, recommend it and like it :) t-shirts or mugs. Of course, as we believe in free, open source software, only
support us financially if you really like Vimperator and the money doesn't hurt
- otherwise just use it, recommend it, and like it :)
section:Help{nbsp}topics[overview] section:Help{nbsp}topics[overview]
@@ -94,7 +100,7 @@ section:Features[features]
with support for Firefox keyword bookmarks and search engines with support for Firefox keyword bookmarks and search engines
* Count supported for many commands ([m]3<C-o>[m] will go back 3 pages) * Count supported for many commands ([m]3<C-o>[m] will go back 3 pages)
* Beep on errors * Beep on errors
* Marks support ([m]ma[m] to set mark a on a web page, [m]'a[m] to go there) * Marks support ([m]m[m][a]a[a] to set mark a on a web page, [m]'[m][a]a[a] to go there)
* QuickMarks support (quickly go to previously marked web pages with [m]go[m][a]\\{a-zA-Z0-9\\}[a]) * QuickMarks support (quickly go to previously marked web pages with [m]go[m][a]\\{a-zA-Z0-9\\}[a])
* [c]:map[c] and [c]:command[c] support (and feedkeys() for script writers) * [c]:map[c] and [c]:command[c] support (and feedkeys() for script writers)
* [c]:time[c] support for profiling * [c]:time[c] support for profiling
@@ -106,10 +112,13 @@ section:Features[features]
section:Contact[contact] section:Contact[contact]
Please send comments/bug reports/patches to the mailing list, where I will Please send comments/bug reports/patches to the mailing list, where we will
properly answer any questions. You can also join the #vimperator IRC channel properly answer any questions. You can also join the
on irc.freenode.net or check the Wiki for frequently asked questions. Make +++<a href="irc://irc.freenode.net/vimperator">#vimperator</a>+++ IRC channel
sure, you have read the TODO file first, as I am aware of many things which on http://www.freenode.net/[Freenode] or check the
can be improved when I find time for it or get patches. http://vimperator.org/trac/wiki/Vimperator/Wiki[Wiki] for
http://vimperator.org/trac/wiki/Vimperator/FAQ[frequently asked questions
(FAQ)]. Make sure, you have read the TODO file first, as we are aware of many
things which can be improved when we find time for it or receive patches.
// vim: set filetype=asciidoc: // vim: set filetype=asciidoc:

View File

@@ -8,7 +8,7 @@ The key mapping commands can be used to either redefine the standard key
bindings or define new ones. A mapping consists of a key, or sequence of keys, bindings or define new ones. A mapping consists of a key, or sequence of keys,
which are translated to a string of characters. Example: which are translated to a string of characters. Example:
:map <F2> :echo new Date().toDateString()<CR> \{nbsp}[c]:map <F2> :echo new Date().toDateString()<CR>[c]
will echo the current date to the command line when [m]<F2>[m] is pressed. will echo the current date to the command line when [m]<F2>[m] is pressed.
@@ -209,7 +209,7 @@ ________________________________________________________________________________
||:ca[bbrev] {lhs}|| + ||:ca[bbrev] {lhs}|| +
||:ca[bbrev]|| ||:ca[bbrev]||
________________________________________________________________________________ ________________________________________________________________________________
Abbreviate a key sequence for Command-line mode. Same as [c]:ab[reviate][c], Abbreviate a key sequence for Command-line mode. Same as [c]:ab[breviate][c],
but for Command-line mode only. but for Command-line mode only.
________________________________________________________________________________ ________________________________________________________________________________
@@ -406,7 +406,7 @@ section:Examples[command-examples]
Add a :Google command to search via google: Add a :Google command to search via google:
:command -nargs=* Google open google <args> \{nbsp}[c]:command -nargs=* Google open google <args>[c]
// TODO: add decent examples // TODO: add decent examples

View File

@@ -189,10 +189,10 @@ they can be changed to a different value in your RC file using
The following preferences are set: The following preferences are set:
* browser.startup.page * http://kb.mozillazine.org/Browser.startup.page[browser.startup.page]
* dom.popup_allowed_events * http://kb.mozillazine.org/Dom.popup_allowed_events[dom.popup_allowed_events]
* accessibility.typeaheadfind.autostart * http://kb.mozillazine.org/Accessibility.typeaheadfind.autostart[accessibility.typeaheadfind.autostart]
* accessibility.typeaheadfind * http://kb.mozillazine.org/Accessibility.typeaheadfind[accessibility.typeaheadfind]
// TODO: others? // TODO: others?
@@ -233,11 +233,15 @@ Items which are completed at the [c]:[tab]open[c] prompt. Available items:
*f* Local files *f* Local files
*l* Firefox location bar entries (bookmarks and history sorted in an intelligent way) *l* Firefox location bar entries (bookmarks and history sorted in an intelligent way)
*b* Bookmarks *b* Bookmarks
*h* History
*S* Suggest engines *S* Suggest engines
------------------------------------------------------------------------------------- -------------------------------------------------------------------------------------
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,
and then any available quick searches. and then any available quick searches.
Warning: Using *b* and *h* can make completion very slow if there are many
items.
____ ____
@@ -738,6 +742,9 @@ ____
____ ____
Use visual bell instead of beeping on errors. The visual bell style is Use visual bell instead of beeping on errors. The visual bell style is
controlled by [c]:hi Bell[c]. controlled by [c]:hi Bell[c].
To disable both the audible and visual bells use [c]:set visualbell[c] and
[c]:hi Bell display: none;[c]
____ ____

View File

@@ -105,7 +105,7 @@ ________________________________________________________________________________
Add CSS styles to the browser or to web pages. {filter} is a comma Add CSS styles to the browser or to web pages. {filter} is a comma
separated list of URLs to match. URLs ending with *\** are matched as separated list of URLs to match. URLs ending with *\** are matched as
prefixes, URLs not containing any *:* or */* characters are prefixes, URLs not containing any *:* or */* characters are
matched as domains. If {name} (short option: [c]-n[c]) is provided, any matched as domains. If {name} (short option: *-n*) is provided, any
existing style with the same name is overridden, and the style may later existing style with the same name is overridden, and the style may later
be deleted using {name}. If *-append* (short option: *-a*) is provided be deleted using {name}. If *-append* (short option: *-a*) is provided
along with *-name*, {css} and {filter} are appended to its current along with *-name*, {css} and {filter} are appended to its current
@@ -118,9 +118,9 @@ ________________________________________________________________________________
||:dels[tyle] [-name={name}] [-index={index}] [{filter}] [{css}]|| + ||:dels[tyle] [-name={name}] [-index={index}] [{filter}] [{css}]|| +
________________________________________________________________________________ ________________________________________________________________________________
Delete any matching styles. If {filter} is provided, only matching elements of Delete any matching styles. If {filter} is provided, only matching elements of
the filter are disabled. For instance, a filter [c]mozilla.org[c], given a the filter are disabled. For instance, a filter [a]mozilla.org[a], given a
style for [c]www.google.com,mozilla.org[c], will result in a style for style for [a]www.google.com,mozilla.org[a], will result in a style for
[c]www.google.com[c]. The available options are: [a]www.google.com[a]. The available options are:
* *-name*: The name provided to [c]:style[c] (short option: *-n*) * *-name*: The name provided to [c]:style[c] (short option: *-n*)
* *-index*: For unnamed styles, the index listed by [c]:style[c] * *-index*: For unnamed styles, the index listed by [c]:style[c]

View File

@@ -22,8 +22,8 @@ If you're a veteran Vim user, this may look familiar. It should.
However, in this author's opinion, the best way to get familiar with However, in this author's opinion, the best way to get familiar with
Vimperator is to leave these disabled for now. (The above action can be Vimperator is to leave these disabled for now. (The above action can be
reversed with [c]:set go=<CR>[c]) You can look at the entry for reversed with [c]:set go=<CR>[c]) You can look at the entry for 'guioptions' in
[o]guioptions[o] in help:options[options.html] for more information on this. help:options[options.html] for more information on this.
section:Vimperator's{nbsp}modal{nbsp}interface[modal] section:Vimperator's{nbsp}modal{nbsp}interface[modal]
@@ -36,8 +36,8 @@ When Vimperator starts, it is in Normal mode by default. This is probably where
you will spend the majority of your time. you will spend the majority of your time.
The other core mode of Vimperator, Command-line mode, can be entered from The other core mode of Vimperator, Command-line mode, can be entered from
Normal mode by typing a \':' (colon). You will frequently see Vimperator Normal mode by typing a \'[m]:[m]' (colon). You will frequently see Vimperator
commands start with a \':', indicating that what follows is a command. commands start with a \'[m]:[m]', indicating that what follows is a command.
To return to Normal mode from Command-line mode, type [m]<Esc>[m]. Pressing To return to Normal mode from Command-line mode, type [m]<Esc>[m]. Pressing
[m]<Esc>[m] will also return you to Normal mode from most other modes in [m]<Esc>[m] will also return you to Normal mode from most other modes in
@@ -142,7 +142,7 @@ type uniquely identifies any given link, Vimperator will follow that link
immediately without any further user input. immediately without any further user input.
Whichever way you choose to indicate your target link, once Vimperator has Whichever way you choose to indicate your target link, once Vimperator has
highlighted the link you want, simply hit <Enter> to open it. highlighted the link you want, simply hit [m]<Enter>[m] to open it.
The most common hint mode is called help:QuickHint{nbsp}mode[various.html,f]. The most common hint mode is called help:QuickHint{nbsp}mode[various.html,f].
To activate QuickHint mode, press either [m]f[m] or [m]F[m]. The lower-case To activate QuickHint mode, press either [m]f[m] or [m]F[m]. The lower-case