1
0
mirror of https://github.com/gryf/pentadactyl-pm.git synced 2025-12-19 23:07:58 +01:00

Replace asciidoc with native XSLT transforms.

--HG--
branch : xslt
rename : common/Makefile.common => common/Makefile
rename : vimperator/components/about-handler.js => common/components/about-handler.js
rename : vimperator/components/chrome-data.js => common/components/chrome-data.js
rename : vimperator/components/commandline-handler.js => common/components/commandline-handler.js
This commit is contained in:
Kris Maglione
2009-10-21 04:46:29 -04:00
parent 2add32c3f2
commit 0d44d919bc
75 changed files with 7363 additions and 5466 deletions

View File

@@ -6,8 +6,7 @@ BUILD_DATE = $(shell date "+%Y/%m/%d %H:%M:%S")
BASE = $(TOP)/../common
LOCALEDIR = locale
DOC_SRC_FILES = $(wildcard $(LOCALEDIR)/*/*.txt)
LOCALES = $(shell ls $(LOCALEDIR))
DOC_FILES = $(wildcard $(LOCALEDIR)/*/*.xml)
MAKE_JAR = VERSION="$(VERSION)" DATE="$(BUILD_DATE)" sh $(BASE)/make_jar.sh
@@ -34,14 +33,13 @@ RDF_IN = $(RDF).in
BUILD_DIR = build.$(VERSION).$(OS)
ASCIIDOC = asciidoc
AWK = awk
.SILENT:
#### rules
TARGETS = all help info doc jar xpi install clean distclean $(JAR)
TARGETS = all help info jar xpi install clean distclean $(JAR)
$(TARGETS:%=\%.%):
echo MAKE $* $(@:$*.%=%)
$(MAKE) -C $* $(@:$*.%=%)
@@ -54,7 +52,6 @@ help:
@echo
@echo " make help - display this help"
@echo " make info - show some info about the system"
@echo " make doc - build doc files"
@echo " make jar - build a JAR ($(JAR))"
@echo " make xpi - build an XPI ($(XPI_NAME))"
@echo " make release - updates update.rdf (this is not for you)"
@@ -66,7 +63,7 @@ help:
info:
@echo "version $(VERSION)"
@echo "release file $(XPI)"
@echo "doc files $(DOC_SRC_FILES)"
@echo "doc files $(DOC_FILES)"
@echo "xpi files $(XPI_FILES)"
xpi: $(XPI)
@@ -81,11 +78,11 @@ $(RDF): $(RDF_IN) Makefile
< $< > $@
@echo "SUCCESS: $@"
clean: $(LOCALEDIR)/$(LOCALES:%=%.clean)
clean:
@echo "General $(NAME) cleanup..."
rm -f $(JAR) $(XPI)
distclean: $(LOCALEDIR)/$(LOCALES:%=%.distclean) clean
distclean:
@echo "More $(NAME) cleanup..."
rm -rf $(BUILD_DIR)
@@ -100,12 +97,8 @@ $(XPI): $(JAR)
#### jar
$(JAR): doc
$(JAR):
@echo "Building JAR..."
$(MAKE_JAR) "$(JAR)" "$(JAR_BASES)" "$(JAR_DIRS)" "$(JAR_TEXTS)" "$(JAR_BINS)" "$(JAR_FILES)"
@echo "SUCCESS: $@"
#### doc (see Makefile.doc)
doc: $(LOCALES:%=$(LOCALEDIR)/%.doc) ;

View File

@@ -1,68 +0,0 @@
# Symlink me to (or include me from) locale/*/Makefile
#### configuration
ASCIIDOC = asciidoc
AWK = awk
LOCALE = $(shell basename `pwd`)
DOCLANG = $(shell basename `pwd` | $(AWK) -F- '{ print ($$1 ~ /^[a-z][a-z]$$/) ? $$1 : "en" }')
SRC_FILES = $(wildcard *.txt)
FILES = $(SRC_FILES:%.txt=%.html)
DEPS = $(wildcard lang-$(DOCLANG).conf) ${BASE}/asciidoc.conf $(BASE)/Makefile.doc
DOC_FILES = $(FILES) version.html
.SILENT:
#### rules
.PHONY: all help doc asciidoc check-asciidoc clean distclean
all: doc
doc: asciidoc
help:
@echo "$(NAME) $(VERSION) build"
@echo
@echo " make help - display this help"
@echo " make doc - build doc files"
@echo " make clean - clean up"
@echo " make distclean - clean up more"
clean:
@echo "Cleanup of $(LOCALE) documentation..."
distclean: clean
@echo "More cleanup of $(LOCALE) documentation..."
rm -f $(DOC_FILES)
#### Makes single-file makes easier to type
%: %.html %.txt ;
#### asciidoc
asciidoc: check-asciidoc $(DOC_FILES)
check-asciidoc:
@$(ASCIIDOC) --version | $(AWK) '{ exit $$2 !~ /^8\.4\./ }' || \
echo >&2 "Warning: asciidoc versions other than 8.4.x are unsupported"
all.html: $(SRC_FILES)
version.html: ../../NEWS $(DEPS)
@echo "DOC locale/$(LOCALE)/$@"
# NOTE: asciidoc doesn't source the conf file implicitly when processing stdin
sed -e '1i\
heading::Version{nbsp}information[version-information]' \
-e '/^[0-9]/d' \
-e '/^ \+\* version /s/.*version \+\([0-9.]\+\).*/section::Version{nbsp}\1[version-\1]\
/' ../../NEWS | \
${ASCIIDOC} -f $(BASE)/asciidoc.conf -a doctitle=version.html -o version.html -
$(FILES): %.html: %.txt $(DEPS)
@echo "DOC locale/$(LOCALE)/$@"
$(ASCIIDOC) -f $(BASE)/asciidoc.conf -a configname=$(NAME) --unsafe -a linkcss -a quirks! -a lang=$(DOCLANG) -a doctitle="$$(basename $@)" -o $@ $<

View File

@@ -0,0 +1,206 @@
// Copyright (c) 2008-2009 Kris Maglione <maglione.k at Gmail>
//
// This work is licensed for reuse under an MIT license. Details are
// given in the LICENSE.txt file included with this file.
/* Adds support for data: URIs with chrome privileges
* and fragment identifiers.
*
* "chrome-data:" <content-type> [; <flag>]* "," [<data>]
*
* By Kris Maglione, ideas from Ed Anuff's nsChromeExtensionHandler.
*/
const Ci = Components.interfaces, Cc = Components.classes;
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
const NS_BINDING_ABORTED = 0x804b0002;
const nsIProtocolHandler = Components.interfaces.nsIProtocolHandler;
const ioService = Cc["@mozilla.org/network/io-service;1"].getService(Ci.nsIIOService);
let channel = Components.classesByID["{61ba33c0-3031-11d3-8cd0-0060b0fc14a3}"]
.getService(Ci.nsIProtocolHandler)
.newChannel(ioService.newURI("chrome://liberator/content/data", null, null))
.QueryInterface(Ci.nsIRequest);
const systemPrincipal = channel.owner;
channel.cancel(NS_BINDING_ABORTED);
delete channel;
function makeChannel(url, orig)
{
let uri = ioService.newURI(url, null, null);
let channel = ioService.newChannelFromURI(uri);
channel.owner = systemPrincipal;
channel.originalURI = orig;
return channel;
}
function fakeChannel(orig)
makeChannel("chrome://does/not/exist/in/any/reasonable/configuration", orig);
function redirect(to, orig)
{
let html = <html><head><meta http-equiv="Refresh" content={"0;" + to}/></head></html>.toXMLString();
return makeChannel('data:text/html,' + escape(html), orig);
}
function ChromeData() {}
ChromeData.prototype = {
contractID: "@mozilla.org/network/protocol;1?name=chrome-data",
classID: Components.ID("{c1b67a07-18f7-4e13-b361-2edcc35a5a0d}"),
classDescription: "Data URIs with chrome privileges",
QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsIProtocolHandler]),
_xpcom_factory: {
createInstance: function (outer, iid)
{
if (!ChromeData.instance)
ChromeData.instance = new ChromeData();
if (outer != null)
throw Components.results.NS_ERROR_NO_AGGREGATION;
return ChromeData.instance.QueryInterface(iid);
}
},
scheme: "chrome-data",
defaultPort: -1,
allowPort: function (port, scheme) false,
protocolFlags: nsIProtocolHandler.URI_NORELATIVE
| nsIProtocolHandler.URI_NOAUTH
| nsIProtocolHandler.URI_IS_UI_RESOURCE,
newURI: function (spec, charset, baseURI)
{
var uri = Components.classes["@mozilla.org/network/standard-url;1"]
.createInstance(Components.interfaces.nsIStandardURL)
.QueryInterface(Components.interfaces.nsIURI);
uri.init(uri.URLTYPE_STANDARD, this.defaultPort, spec, charset, null);
return uri;
},
newChannel: function (uri)
{
try
{
if (uri.scheme == this.scheme)
return makeChannel(uri.spec.replace(/^.*?:\/*(.*)(?:#.*)?/, "data:$1"), uri);
}
catch (e) {}
return fakeChannel();
}
};
function Liberator()
{
this.wrappedJSObject = this;
this.__defineGetter__("helpFiles", function () HELP_FILES ? HELP_FILES.slice() : null);
this.__defineSetter__("helpFiles", function (files) {
if (!HELP_FILES)
parseHelpTags(files);
});
function xpath(doc, expression)
{
let result = doc.evaluate(expression, doc,
function lookupNamespaceURI(prefix) ({
xhtml: "http://www.w3.org/1999/xhtml",
liberator: "http://vimperator.org/namespaces/liberator",
}[prefix] || null),
5, null);
result.__iterator__ = function () { let elem; while ((elem = this.iterateNext())) yield elem; };
return result;
}
function httpGet(url)
{
try
{
let xmlhttp = Cc["@mozilla.org/xmlextras/xmlhttprequest;1"].createInstance(Ci.nsIXMLHttpRequest);
xmlhttp.open("GET", url, false);
xmlhttp.send(null);
return xmlhttp;
}
catch (e) {}
}
const HELP_TAGS = {};
this.HELP_TAGS = HELP_TAGS;
var HELP_FILES = null;
function parseHelpTags(files)
{
const XSLT = Cc["@mozilla.org/document-transformer;1?type=xslt"].createInstance(Ci.nsIXSLTProcessor);
XSLT.importStylesheet(httpGet("chrome://liberator/content/help.xsl").responseXML);
for each (let file in files)
{
let res = httpGet("liberator://help/" + file);
if (res)
{
let doc = XSLT.transformToDocument(res.responseXML);
for (let elem in xpath(doc, "//liberator:tag/text()"))
HELP_TAGS[elem.textContent] = file;
}
}
HELP_FILES = Array.slice(files);
}
}
Liberator.prototype = {
contractID: "@mozilla.org/network/protocol;1?name=liberator",
classID: Components.ID("{9c8f2530-51c8-4d41-b356-319e0b155c44}"),
classDescription: "Liberator utility protocol",
QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsIProtocolHandler]),
_xpcom_factory: {
createInstance: function (outer, iid)
{
if (!Liberator.instance)
Liberator.instance = new Liberator();
if (outer != null)
throw Components.results.NS_ERROR_NO_AGGREGATION;
return Liberator.instance.QueryInterface(iid);
}
},
scheme: "liberator",
defaultPort: -1,
allowPort: function (port, scheme) false,
protocolFlags: 0
| nsIProtocolHandler.URI_IS_UI_RESOURCE
| nsIProtocolHandler.URI_IS_LOCAL_RESOURCE,
newURI: function (spec, charset, baseURI)
{
var uri = Components.classes["@mozilla.org/network/standard-url;1"]
.createInstance(Components.interfaces.nsIStandardURL)
.QueryInterface(Components.interfaces.nsIURI);
uri.init(uri.URLTYPE_STANDARD, this.defaultPort, spec, charset, baseURI);
return uri;
},
newChannel: function (uri)
{
try
{
switch(uri.host)
{
case "help":
return makeChannel("chrome://liberator/locale" + uri.path.replace(/#.*/, "") + ".xml", uri);
case "help-tag":
let tag = uri.path.substr(1);
if (tag in this.HELP_TAGS)
return redirect("liberator://help/" + this.HELP_TAGS[tag] + "#" + tag, uri);
}
}
catch (e) { dump(e + "\n"); dump(e.stack); }
return fakeChannel(uri);
}
};
var components = [ChromeData, Liberator];
function NSGetModule(compMgr, fileSpec)
{
return XPCOMUtils.generateModule(components);
}
// vim: set fdm=marker sw=4 ts=4 et:

View File

@@ -233,7 +233,10 @@ CompletionContext.prototype = {
if (!context.hasItems)
return [];
let prefix = self.value.substring(minStart, context.offset);
return context.items.map(function makeItem(item) ({ text: prefix + item.text, item: item.item }));
return context.items.map(function (item) {
item.text = prefix + item.text;
return item;
});
});
return { start: minStart, items: util.Array.flatten(items), longestSubstring: this.longestAllSubstring };
}

View File

@@ -1,17 +1,22 @@
// Copyright (c) 2009 by Kris Maglione <maglione.k at Gmail>
// Copyright (c) 2009 by Kris Maglione <kris@vimperator.org>
//
// This work is licensed for reuse under an MIT license. Details are
// given in the LICENSE.txt file included with this file.
const win = Components.classes["@mozilla.org/embedcomp/window-watcher;1"]
.getService(Ci.nsIWindowWatcher)
.activeWindow;
const liberator = win.liberator;
function checkFragment()
{
document.title = document.getElementsByTagNameNS("http://www.w3.org/1999/xhtml", "title")[0].textContent;
var frag = document.location.hash.substr(1);
var elem = document.getElementById(frag);
if (elem)
window.content.scrollTo(0, window.content.scrollY + elem.getBoundingClientRect().top - 10); // 10px context
}
let page = liberator.findHelp(decodeURIComponent(document.location.search.substr(1)));
let url = page ? "chrome://liberator/locale/" + page : content.history.previous;
win.getBrowser().loadURIWithFlags(url, Components.interfaces.nsIWebNavigation.LOAD_FLAGS_REPLACE_HISTORY, null, null, null);
document.addEventListener("load", checkFragment, true);
window.addEventListener("message", function (event) {
if (event.data == "fragmentChange")
checkFragment();
}, true);
// vim: set fdm=marker sw=4 ts=4 et:

143
common/content/help.xsl Normal file
View File

@@ -0,0 +1,143 @@
<xsl:stylesheet version="1.0"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:liberator="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml"
xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
xmlns:str="http://exslt.org/strings"
extension-element-prefixes="str">
<xsl:output method="xml"/>
<xsl:template match="liberator:document">
<html:html liberator:highlight="Help">
<html:head>
<html:title><xsl:value-of select="@title"/></html:title>
<html:base href="liberator://help/{@name}"/>
<html:script type="text/javascript"
src="chrome://liberator/content/help.js"/>
</html:head>
<html:body liberator:highlight="HelpBody">
<html:div class="liberator-logo"/>
<xsl:call-template name="parse-tags">
<xsl:with-param name="text" select="concat(@name, '.html')"/>
</xsl:call-template>
<xsl:apply-templates/>
</html:body>
</html:html>
</xsl:template>
<xsl:template match="liberator:include">
<xsl:apply-templates select="document(@href)/liberator:document/node()"/>
</xsl:template>
<xsl:template match="liberator:dl">
<xsl:copy>
<column/>
<column/>
<xsl:for-each select="liberator:dt">
<tr>
<xsl:apply-templates select="."/>
<xsl:apply-templates select="following-sibling::liberator:dd[position()=1]"/>
</tr>
</xsl:for-each>
</xsl:copy>
</xsl:template>
<xsl:template match="liberator:tags">
<xsl:call-template name="parse-tags">
<xsl:with-param name="text" select="."/>
</xsl:call-template>
</xsl:template>
<xsl:template name="parse-tags">
<xsl:param name="text"/>
<tags>
<xsl:for-each select="str:tokenize($text)">
<html:a id="{.}"><tag><xsl:value-of select="."/></tag></html:a>
</xsl:for-each>
</tags>
</xsl:template>
<xsl:template match="liberator:default[not(@type='plain')]">
<xsl:variable name="type" select="preceding-sibling::liberator:type[1] | following-sibling::liberator:type[1]"/>
<xsl:copy>
<xsl:choose>
<xsl:when test="starts-with($type, 'string')">
<str><xsl:apply-templates/></str>
</xsl:when>
<xsl:otherwise>
<span>
<xsl:choose>
<xsl:when test="$type = 'boolean'">
<xsl:attribute name="highlight" namespace="http://vimperator.org/namespaces/liberator">Boolean</xsl:attribute>
</xsl:when>
<xsl:when test="$type = 'number'">
<xsl:attribute name="highlight" namespace="http://vimperator.org/namespaces/liberator">Number</xsl:attribute>
</xsl:when>
<xsl:when test="$type = 'charlist'">
<xsl:attribute name="highlight" namespace="http://vimperator.org/namespaces/liberator">String</xsl:attribute>
</xsl:when>
</xsl:choose>
<xsl:apply-templates/>
</span>
</xsl:otherwise>
</xsl:choose>
</xsl:copy>
</xsl:template>
<xsl:template name="linkify-tag">
<xsl:param name="contents"/>
<xsl:variable name="tag" select="str:tokenize($contents, ' [')[1]"/>
<html:a href="liberator://help-tag/{$tag}" style="color: inherit">
<xsl:if test="
//liberator:tags[contains(concat(' ', ., ' '), concat(' ', $tag, ' '))] |
//liberator:tag[contains(concat(' ', ., ' '), concat(' ', $tag, ' '))] |
//@tag[contains(concat(' ', ., ' '), concat(' ', $tag, ' '))]">
<xsl:attribute name="href">#<xsl:value-of select="$tag"/></xsl:attribute>
</xsl:if>
<xsl:value-of select="$contents"/>
</html:a>
</xsl:template>
<xsl:template match="liberator:o">
<xsl:copy>
<xsl:call-template name="linkify-tag">
<xsl:with-param name="contents" select='concat("&#39;", text(), "&#39;")'/>
</xsl:call-template>
</xsl:copy>
</xsl:template>
<xsl:template match="liberator:k">
<xsl:copy>
<xsl:call-template name="linkify-tag">
<xsl:with-param name="contents" select="text()"/>
</xsl:call-template>
</xsl:copy>
</xsl:template>
<xsl:template match="liberator:k[@name]">
<xsl:copy>
<xsl:call-template name="linkify-tag">
<xsl:with-param name="contents" select="concat('&lt;', @name, '>', .)"/>
</xsl:call-template>
</xsl:copy>
</xsl:template>
<xsl:template match="liberator:ex">
<xsl:copy>
<xsl:call-template name="linkify-tag">
<xsl:with-param name="contents" select="."/>
</xsl:call-template>
</xsl:copy>
</xsl:template>
<xsl:template match="liberator:tag|@tag">
<xsl:call-template name="parse-tags">
<xsl:with-param name="text"><xsl:value-of select="."/></xsl:with-param>
</xsl:call-template>
</xsl:template>
<xsl:template match="@*|node()">
<xsl:copy>
<xsl:apply-templates select="@*|node()"/>
</xsl:copy>
</xsl:template>
</xsl:stylesheet>
<!-- vim:se ft=xslt sts=4 sw=4 et: -->

View File

@@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<window xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
<script type="application/x-javascript;version=1.8"
src="chrome://liberator/content/help.js"/>
</window>

View File

@@ -310,8 +310,7 @@ const liberator = (function () //{{{
function ()
{
liberator.open("chrome://mozapps/content/extensions/extensions.xul",
(options["newtab"] && options.get("newtab").has("all", "addons"))
? liberator.NEW_TAB: liberator.CURRENT_TAB);
{ from: "addons" });
},
{ argCount: "0" });
@@ -487,9 +486,7 @@ const liberator = (function () //{{{
if (args.bang)
window.openDialog(extension.options, "_blank", "chrome");
else
liberator.open(extension.options,
options.get("newtab").has("all", "extoptions")
? liberator.NEW_TAB : liberator.CURRENT_TAB);
liberator.open(extension.options, { from: "extoptions" });
},
{
argCount: "1",
@@ -577,8 +574,7 @@ const liberator = (function () //{{{
if (args.bang) // open JavaScript console
{
liberator.open("chrome://global/content/console.xul",
(options["newtab"] && options.get("newtab").has("all", "javascript"))
? liberator.NEW_TAB : liberator.CURRENT_TAB);
{ from: "javascript" });
}
else
{
@@ -848,19 +844,9 @@ const liberator = (function () //{{{
context.title = ["Help"];
context.anchored = false;
context.key = unchunked;
context.generate = function ()
{
let files = unchunked ? ["all.html"] : config.helpFiles;
let res = files.map(function (file) {
let resp = util.httpGet("chrome://liberator/locale/" + file);
if (!resp)
return [];
let doc = resp.responseXML;
return Array.map(doc.getElementsByClassName("tag"),
function (elem) [elem.textContent, file]);
});
return util.Array.flatten(res);
};
context.completions = services.get("liberator:").HELP_TAGS;
if (unchunked)
context.keys = { text: "text", description: function () "all" };
};
completion.menuItem = function menuItem(context) {
@@ -941,10 +927,10 @@ const liberator = (function () //{{{
getExtension: function (name) this.extensions.filter(function (e) e.name == name)[0],
// Global constants
CURRENT_TAB: 1,
NEW_TAB: 2,
NEW_BACKGROUND_TAB: 3,
NEW_WINDOW: 4,
CURRENT_TAB: [],
NEW_TAB: [],
NEW_BACKGROUND_TAB: [],
NEW_WINDOW: [],
forceNewTab: false,
forceNewWindow: false,
@@ -1371,22 +1357,21 @@ const liberator = (function () //{{{
findHelp: function (topic, unchunked)
{
unchunked = !!unchunked;
let items = completion.runCompleter("help", topic, null, unchunked);
let items = completion._runCompleter("help", topic, null, unchunked).items;
let partialMatch = null;
function format(item) item[1] + "#" + encodeURIComponent(item[0]);
function format(item) item.description + "#" + encodeURIComponent(item.text);
for (let [i, item] in Iterator(items))
{
if (item[0] == topic)
if (item.text == topic)
return format(item);
else if (!partialMatch && item[0].indexOf(topic) > -1)
else if (!partialMatch && topic)
partialMatch = item;
}
if (partialMatch)
return format(partialMatch);
else
return null;
},
@@ -1400,15 +1385,11 @@ const liberator = (function () //{{{
*/
help: function (topic, unchunked)
{
let where = (options["newtab"] && options.get("newtab").has("all", "help"))
? liberator.NEW_TAB : liberator.CURRENT_TAB;
if (!topic && !unchunked)
{
let helpFile = options["helpfile"];
if (config.helpFiles.indexOf(helpFile) != -1)
liberator.open("chrome://liberator/locale/" + helpFile, where);
liberator.open("liberator://help/" + helpFile, { from: "help" });
else
liberator.echomsg("Sorry, help file " + helpFile.quote() + " not found");
return;
@@ -1418,8 +1399,8 @@ const liberator = (function () //{{{
if (page == null)
return void liberator.echoerr("E149: Sorry, no help for " + topic);
liberator.open("chrome://liberator/locale/" + page, where);
if (where == this.CURRENT_TAB)
liberator.open("liberator://help/" + page, { from: "help" });
if (options.get("activate").has("all", "help"))
content.postMessage("fragmentChange", "*");
},
@@ -1550,12 +1531,16 @@ const liberator = (function () //{{{
}
let flags = 0;
if (where instanceof Object)
if (where && !(where instanceof Array))
{
for (let [opt, flag] in Iterator({ replace: "REPLACE_HISTORY", hide: "BYPASS_HISTORY" }))
if (where[opt])
flags |= Ci.nsIWebNavigation["LOAD_FLAGS_" + flag];
where = liberator.CURRENT_TAB;
if ("from" in where)
where = (options["newtab"] && options.get("newtab").has("all", where.from))
? liberator.NEW_TAB : liberator.CURRENT_TAB;
else
where = where.where || liberator.CURRENT_TAB;
}
if (urls.length == 0)
@@ -1739,6 +1724,8 @@ const liberator = (function () //{{{
let start = Date.now();
liberator.log("Initializing liberator object...", 0);
services.get("liberator:").helpFiles = config.helpFiles.map(function (f) f.replace(/\..*/, ""));
config.features.push(getPlatformFeature());
try
@@ -1965,29 +1952,6 @@ const liberator = (function () //{{{
window.liberator = liberator;
// FIXME: Ugly, etc.
window.addEventListener("liberatorHelpLink", function (event) {
let elem = event.target;
if (/^(option|mapping|command|jump)$/.test(elem.className))
var tag = elem.textContent.replace(/\s.*/, "");
if (/^(mapping|command)$/.test(elem.className))
tag = tag.replace(/^\d+/, "");
if (elem.className == "command")
tag = tag.replace(/\[.*?\]/g, "").replace(/(\w+)!$/, "$1");
if (tag)
{
let page = liberator.findHelp(tag, /\/all.html($|#)/.test(elem.ownerDocument.location.href));
if (page)
elem.href = "chrome://liberator/locale/" + page;
}
// TODO: use HashChange event in Gecko 1.9.2
if (elem.href)
setTimeout(function () { content.postMessage("fragmentChange", "*"); }, 0);
}, true, true);
// called when the chrome is fully loaded and before the main window is shown
window.addEventListener("load", liberator.startup, false);
window.addEventListener("unload", liberator.shutdown, false);

View File

@@ -22,17 +22,19 @@ function Services()
function create(classes, ifaces, meth)
{
ifaces = Array.concat(ifaces);
try
{
let res = Cc[classes][meth || "getService"](ifaces.shift());
let res = Cc[classes][meth || "getService"]();
if (!ifaces)
return res.wrappedJSObject;
ifaces = Array.concat(ifaces);
ifaces.forEach(function (iface) res.QueryInterface(iface));
return res;
}
catch (e)
{
// liberator.log() is not defined at this time, so just dump any error
dump("Service creation failed for '" + classes + "': " + e);
dump("Service creation failed for '" + classes + "': " + e + "\n");
}
}
@@ -97,6 +99,7 @@ function Services()
self.add("extensionManager", "@mozilla.org/extensions/manager;1", Ci.nsIExtensionManager);
self.add("favicon", "@mozilla.org/browser/favicon-service;1", Ci.nsIFaviconService);
self.add("json", "@mozilla.org/dom/json;1", Ci.nsIJSON, "createInstance");
self.add("liberator:", "@mozilla.org/network/protocol;1?name=liberator");
self.add("livemark", "@mozilla.org/browser/livemark-service;2", Ci.nsILivemarkService);
self.add("observer", "@mozilla.org/observer-service;1", Ci.nsIObserverService);
self.add("io", "@mozilla.org/network/io-service;1", Ci.nsIIOService);

View File

@@ -121,12 +121,79 @@ Highlights.prototype.CSS = <![CDATA[
HintActive,,* background-color: #88FF00; color: black;
HintImage,,* opacity: .5;
Help font-size: 8pt; line-height: 1.4em; font-family: -moz-fixed;
HelpArg,liberator|a color: #6A97D4;
HelpArg::before content: "{";
HelpArg::after content: "}";
HelpOptionalArg,liberator|oa color: #6A97D4;
HelpOptionalArg::before content: "[";
HelpOptionalArg::after content: "]";
HelpBody display: block; margin: 1em auto; max-width: 100ex;
HelpBorder,liberator|* border-color: silver; border-width: 0px; border-style: solid;
HelpCode,liberator|code display: block; white-space: pre; margin-left: 2em; font-family: courier, monospace;
HelpDefault,liberator|default display: block; float: left; margin-right: 1ex; margin-bottom: 1em; white-space: pre;
HelpDefault::after content: ")"
HelpDefault::before content: "(default: ";
HelpDescription,liberator|description display: block; clear: both;
HelpEm,liberator|em font-weight: bold;
HelpEx,liberator|ex display: inline-block; color: #527BBD; font-weight: bold;
HelpEx:hover text-decoration: underline; cursor: pointer;
HelpExample,liberator|example display: block; margin: 1em 0;
HelpExample::before content: "Example: "; font-weight: bold;
HelpHead,liberator|h1 display: block; margin: 1em 0; padding-bottom: .2ex; border-bottom-width: 1px; font-size: 2em; font-weight: bold; color: #527BBD; clear: both;
HelpItem,liberator|item display: block; margin: 1em 1em 1em 10em;
HelpKey,liberator|k color: #102663;
HelpLink,liberator|*>html|a text-decoration: none;
HelpLink:hover text-decoration: underline;
HelpList,liberator|ul display: block; list-style: outside disc;
HelpOrderedList,liberator|ol display: block; list-style: outside numeric;
HelpListItem,liberator|li display: list-item; margin-left: 1.5em;
HelpNote,liberator|note display: block; margin: 1em 0em;
HelpNote::before content: "Note: "; color: red; font-weight: bold;
HelpOpt,liberator|o color: #106326;
HelpOpt:hover text-decoration: underline; cursor: pointer;
HelpParagraph,liberator|p display: block; margin: 1em 0em; clear: right;
HelpSpec,liberator|spec display: block; margin: 0 2em 0 -10em; float: left; clear: left; color: #527BBD;
HelpString,liberator|str display: inline-block; color: green; font-weight: normal;
HelpString::before content: '"';
HelpString::after content: '"';
HelpSubhead,liberator|h2 display: block; margin: 1em 0; padding-bottom: .2ex; border-bottom-width: 1px; font-size: 1.2em; font-weight: bold; color: #527BBD; clear: both;
HelpSubsubhead,liberator|h3 display: block; margin: 1em 0; padding-bottom: .2ex; font-size: 1.1em; font-weight: bold; color: #527BBD; clear: both;
HelpTab,liberator|dl display: table; width: 100%; margin: 1em 0; border-bottom-width: 1px; border-top-width: 1px; padding: .5ex 0; table-layout: fixed;
HelpTabColumn,liberator|column display: table-column;
HelpTabColumn1,liberator|column:nth-of-type(1) display: table-column; width: 25%;
HelpTabColumn2,liberator|column:nth-of-type(2) display: table-column; width: 75%;
HelpTabTitle,liberator|dt display: table-cell; padding: .1ex 1ex; font-weight: bold;
HelpTabDescription,liberator|dd display: table-cell; padding: .1ex 1ex;
HelpTabRow,liberator|dl>* display: table-row;
HelpTag,liberator|tag display: inline-block; color: #527BBD; margin-left: 1ex; font-size: 8pt; font-weight: bold;
HelpTags,liberator|tags display: block; float: right; clear: right;
HelpType,liberator|type display: block; float: left; margin-right: 1ex; margin-bottom: 1em;
HelpWarning,liberator|warning display: block; margin: 1em 0em;
HelpWarning::before content: "Warning: "; color: red; font-weight: bold;
Search,,* {
font-size: inherit;
padding: 0;
color: black;
background-color: yellow;
padding: 0;
}
]]>.toString();
@@ -142,10 +209,18 @@ function Highlights(name, store)
let highlight = {};
let styles = storage.styles;
const Highlight = Struct("class", "selector", "filter", "default", "value");
Highlight.defaultValue("filter", function () ["chrome://liberator/content/buffer.xhtml"].concat(config.styleableChrome).join(","));
const Highlight = Struct("class", "selector", "filter", "default", "value", "base");
Highlight.defaultValue("filter", function ()
this.base ? this.base.filter :
["chrome://liberator/*",
"liberator:*",
"file://*"].concat(config.styleableChrome).join(","));
Highlight.defaultValue("selector", function () self.selector(this.class));
Highlight.defaultValue("value", function () this.default);
Highlight.defaultValue("base", function () {
let base = this.class.match(/^(\w*)/)[0];
return base != this.class && base in highlight ? highlight[base] : null;
});
Highlight.prototype.toString = function () "Highlight(" + this.class + ")\n\t" + [k + ": " + util.escapeString(v || "undefined") for ([k, v] in this)].join("\n\t");
function keys() [k for ([k, v] in Iterator(highlight))].sort();
@@ -185,7 +260,7 @@ function Highlights(name, store)
{
css = style.selector + " { " + css + " }";
let error = styles.addSheet(true, style.selector, style.filter, css, true);
let error = styles.addSheet(true, "highlight:" + style.class, style.filter, css, true);
if (error)
return error;
}
@@ -201,7 +276,10 @@ function Highlights(name, store)
this.selector = function (class)
{
let [, hl, rest] = class.match(/^(\w*)(.*)/);
return "[liberator|highlight~=" + hl + "]" + rest;
let class = "[liberator|highlight~=" + hl + "]"
if (highlight[hl] && highlight[hl].class != class)
class = highlight[hl].selector;
return class + rest;
};
/**
@@ -221,13 +299,13 @@ function Highlights(name, store)
*/
this.loadCSS = function (css)
{
css.replace(/\{((?:.|\n)*?)\}/g, function (_, _1) _1.replace(/\n\s*/g, " "))
css.replace(/^(\s*\S*\s+)\{((?:.|\n)*?)\}\s*$/gm, function (_, _1, _2) _1 + _2.replace(/\n\s*/g, " "))
.split("\n").filter(function (s) /\S/.test(s))
.forEach(function (style)
{
style = Highlight.apply(Highlight, Array.slice(style.match(/^\s*([^,\s]+)(?:,([^,\s]+)?)?(?:,([^,\s]+))?\s*(.*)$/), 1));
if (/^[>+ ]/.test(style.selector))
style.selector = self.selector(style.class + style.selector);
style.selector = self.selector(style.class) + style.selector;
let old = highlight[style.class];
highlight[style.class] = style;

View File

@@ -15,7 +15,7 @@ mkdir -p $stage
getfiles () {
filter="\.($(echo $1 | tr ' ' '|'))$"; shift
find "$@" -not -path '*CVS*' 2>/dev/null | grep -E "$filter" || true
find "$@" -not -path '*\.hg*' 2>/dev/null | grep -E "$filter" || true
}
copytext () {
sed -e "s,###VERSION###,$VERSION,g" \

View File

@@ -3,4 +3,4 @@
VERSION = 0.6a1pre
NAME = muttator
include ../common/Makefile.common
include ../common/Makefile

1
muttator/components Symbolic link
View File

@@ -0,0 +1 @@
../common/components

View File

@@ -1,89 +0,0 @@
// Copyright (c) 2008-2009 Kris Maglione <maglione.k at Gmail>
//
// This work is licensed for reuse under an MIT license. Details are
// given in the LICENSE.txt file included with this file.
/* Adds support for data: URIs with chrome privileges
* and fragment identifiers.
*
* "chrome-data:" <content-type> [; <flag>]* "," [<data>]
*
* By Kris Maglione, ideas from Ed Anuff's nsChromeExtensionHandler.
*/
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
const NS_BINDING_ABORTED = 0x804b0002;
const nsIProtocolHandler = Components.interfaces.nsIProtocolHandler;
const ioService = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
let channel = Components.classesByID["{61ba33c0-3031-11d3-8cd0-0060b0fc14a3}"]
.getService(Components.interfaces.nsIProtocolHandler)
.newChannel(ioService.newURI("chrome://liberator/content/data", null, null))
.QueryInterface(Components.interfaces.nsIRequest);
const systemPrincipal = channel.owner;
channel.cancel(NS_BINDING_ABORTED);
delete channel;
var instance;
function ChromeData() {}
ChromeData.prototype = {
contractID: "@mozilla.org/network/protocol;1?name=chrome-data",
classID: Components.ID("{c1b67a07-18f7-4e13-b361-2edcc35a5a0d}"),
classDescription: "Data URIs with chrome privileges",
QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsIProtocolHandler]),
_xpcom_factory: {
createInstance: function (outer, iid)
{
if (!instance)
instance = new ChromeData();
if (outer != null)
throw Components.results.NS_ERROR_NO_AGGREGATION;
return instance.QueryInterface(iid);
}
},
scheme: "chrome-data",
defaultPort: -1,
allowPort: function (port, scheme) false,
protocolFlags: nsIProtocolHandler.URI_NORELATIVE
| nsIProtocolHandler.URI_NOAUTH
| nsIProtocolHandler.URI_IS_UI_RESOURCE,
newURI: function (spec, charset, baseURI)
{
var uri = Components.classes["@mozilla.org/network/standard-url;1"]
.createInstance(Components.interfaces.nsIStandardURL)
.QueryInterface(Components.interfaces.nsIURI);
uri.init(1, -1, spec, charset, null);
return uri;
},
newChannel: function (uri)
{
try
{
if (uri.scheme == this.scheme)
{
let newURI = ioService.newURI(uri.spec.replace(/^.*?:\/*(.*)(?:#.*)?/, "data:$1"), null, null);
let channel = ioService.newChannelFromURI(newURI);
channel.owner = systemPrincipal;
channel.originalURI = uri;
return channel;
}
}
catch (e) {}
throw Components.results.NS_ERROR_FAILURE;
}
};
var components = [ChromeData];
function NSGetModule(compMgr, fileSpec)
{
return XPCOMUtils.generateModule(components);
}
// vim: set fdm=marker sw=4 ts=4 et:

View File

@@ -1,45 +0,0 @@
// Copyright (c) 2009 by Doug Kearns
//
// This work is licensed for reuse under an MIT license. Details are
// given in the LICENSE.txt file included with this file.
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
function CommandLineHandler()
{
this.wrappedJSObject = this;
}
CommandLineHandler.prototype = {
classDescription: "Muttator Command-line Handler",
classID: Components.ID("{6e03e01a-3e2c-4a59-ac45-f1b4efb02ddb}"),
contractID: "@mozilla.org/commandlinehandler/general-startup;1?type=muttator",
_xpcom_categories: [{
category: "command-line-handler",
entry: "m-muttator"
}],
QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsICommandLineHandler]),
handle: function (commandLine)
{
// TODO: handle remote launches differently?
try
{
this.optionValue = commandLine.handleFlagWithParam("muttator", false);
}
catch (e)
{
//"muttator: option -muttator requires an argument"
}
}
};
function NSGetModule(compMgr, fileSpec) XPCOMUtils.generateModule([CommandLineHandler]);
// vim: set fdm=marker sw=4 ts=4 et:

View File

@@ -3,4 +3,4 @@
VERSION = 2.2b1
NAME = vimperator
include ../common/Makefile.common
include ../common/Makefile

1
vimperator/components Symbolic link
View File

@@ -0,0 +1 @@
../common/components

View File

@@ -1,109 +0,0 @@
// Copyright (c) 2008-2009 Kris Maglione <maglione.k at Gmail>
//
// This work is licensed for reuse under an MIT license. Details are
// given in the LICENSE.txt file included with this file.
/* Adds support for data: URIs with chrome privileges
* and fragment identifiers.
*
* "chrome-data:" <content-type> [; <flag>]* "," [<data>]
*
* By Kris Maglione, ideas from Ed Anuff's nsChromeExtensionHandler.
*
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
const NS_BINDING_ABORTED = 0x804b0002;
const nsIProtocolHandler = Components.interfaces.nsIProtocolHandler;
const ioService = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
let channel = Components.classesByID["{61ba33c0-3031-11d3-8cd0-0060b0fc14a3}"]
.getService(Components.interfaces.nsIProtocolHandler)
.newChannel(ioService.newURI("chrome://liberator/content/data", null, null))
.QueryInterface(Components.interfaces.nsIRequest);
const systemPrincipal = channel.owner;
channel.cancel(NS_BINDING_ABORTED);
delete channel;
var instance;
function ChromeData() {}
ChromeData.prototype = {
contractID: "@mozilla.org/network/protocol;1?name=chrome-data",
classID: Components.ID("{c1b67a07-18f7-4e13-b361-2edcc35a5a0d}"),
classDescription: "Data URIs with chrome privileges",
QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsIProtocolHandler]),
_xpcom_factory: {
createInstance: function (outer, iid)
{
if (!instance)
instance = new ChromeData();
if (outer != null)
throw Components.results.NS_ERROR_NO_AGGREGATION;
return instance.QueryInterface(iid);
}
},
scheme: "chrome-data",
defaultPort: -1,
allowPort: function (port, scheme) false,
protocolFlags: nsIProtocolHandler.URI_NORELATIVE
| nsIProtocolHandler.URI_NOAUTH
| nsIProtocolHandler.URI_IS_UI_RESOURCE,
newURI: function (spec, charset, baseURI)
{
var uri = Components.classes["@mozilla.org/network/standard-url;1"]
.createInstance(Components.interfaces.nsIStandardURL)
.QueryInterface(Components.interfaces.nsIURI);
uri.init(1, -1, spec, charset, null);
return uri;
},
newChannel: function (uri)
{
try
{
if (uri.scheme == this.scheme)
{
let newURI = ioService.newURI(uri.spec.replace(/^.*?:\/*(.*)(?:#.*)?/, "data:$1"), null, null);
let channel = ioService.newChannelFromURI(newURI);
channel.owner = systemPrincipal;
channel.originalURI = uri;
return channel;
}
}
catch (e) {}
throw Components.results.NS_ERROR_FAILURE;
}
};
var components = [ChromeData];
function NSGetModule(compMgr, fileSpec)
{
return XPCOMUtils.generateModule(components);
}
// vim: set fdm=marker sw=4 ts=4 et:

View File

@@ -169,7 +169,7 @@ const config = { //{{{
img.src = "chrome://vimperator/content/logo.png";
img.onload = function () {
styles.addSheet(true, "logo", "chrome://liberator/locale/*",
".vimperator-logo {" + <>
".liberator-logo {" + <>
display: inline-block;
background: url({img.src});
width: {img.width}px;

View File

@@ -1,3 +0,0 @@
NAME = vimperator
BASE = ../../../common
include $(BASE)/Makefile.doc

View File

@@ -1,102 +0,0 @@
|all| +
// TODO: this should be generated by the Makefile in the same order as
// config.helpFiles
|intro.html|
include::intro.txt[]
|tutorial.html|
include::tutorial.txt[]
|starting.html|
include::starting.txt[]
|browsing.html|
include::browsing.txt[]
|buffer.html|
include::buffer.txt[]
|cmdline.html|
include::cmdline.txt[]
|insert.html|
include::insert.txt[]
|options.html|
include::options.txt[]
|pattern.html|
include::pattern.txt[]
|tabs.html|
include::tabs.txt[]
|hints.html|
include::hints.txt[]
|map.html|
include::map.txt[]
|eval.html|
include::eval.txt[]
|marks.html|
include::marks.txt[]
|repeat.html|
include::repeat.txt[]
|autocommands.html|
include::autocommands.txt[]
|print.html|
include::print.txt[]
|gui.html|
include::gui.txt[]
|styling.html|
include::styling.txt[]
|message.html|
include::message.txt[]
|developer.html|
include::developer.txt[]
|various.html|
include::various.txt[]
//|version.html|
//
//include::version.txt[]
|index.html|
include::index.txt[]
// vim: set syntax=asciidoc:

View File

@@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="all"
title="&appname; All"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<tags>all</tags> +
<!-- TODO: this should be generated by the Makefile in the same order as
config.helpFiles -->
<tags>intro.html</tags>
<include href="intro"/>
<tags>tutorial.html</tags>
<include href="tutorial"/>
<tags>starting.html</tags>
<include href="starting"/>
<tags>browsing.html</tags>
<include href="browsing"/>
<tags>buffer.html</tags>
<include href="buffer"/>
<tags>cmdline.html</tags>
<include href="cmdline"/>
<tags>insert.html</tags>
<include href="insert"/>
<tags>options.html</tags>
<include href="options"/>
<tags>pattern.html</tags>
<include href="pattern"/>
<tags>tabs.html</tags>
<include href="tabs"/>
<tags>hints.html</tags>
<include href="hints"/>
<tags>map.html</tags>
<include href="map"/>
<tags>eval.html</tags>
<include href="eval"/>
<tags>marks.html</tags>
<include href="marks"/>
<tags>repeat.html</tags>
<include href="repeat"/>
<tags>autocommands.html</tags>
<include href="autocommands"/>
<tags>print.html</tags>
<include href="print"/>
<tags>gui.html</tags>
<include href="gui"/>
<tags>styling.html</tags>
<include href="styling"/>
<tags>message.html</tags>
<include href="message"/>
<tags>developer.html</tags>
<include href="developer"/>
<tags>various.html</tags>
<include href="various"/>
<tags>index.html</tags>
<include href="index"/>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,97 +0,0 @@
heading::Automatic{nbsp}commands[autocommands]
Autocommands are a way to automatically execute code when certain events
happen.
|:au| |:autocmd| +
||:au[tocmd]||
________________________________________________________________________________
Execute commands automatically on events.
[c]:au[tocmd][c] {event} {pat} {cmd}
If the *-javascript* (short name *-js*) option is specified, {cmd} is executed
as JavaScript code, with any supplied arguments available as variables.
Add {cmd} to the list of commands Vimperator will execute on {event} for a URL matching {pat}:
* [c]:autocmd[!][c] {events} {pat}: list/remove autocommands filtered by {events} and {pat}
* [c]:autocmd[!][c] {events}: list/remove autocommands matching {events}
* [c]:autocmd[!][c] * {pat}: list/remove autocommands matching {pat}
* [c]:autocmd[!][c]: list/remove all autocommands
Available {events}:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*BookmarkAdd* |Triggered after a page is bookmarked
|*ColorScheme* |Triggered after a color scheme has been loaded
|*DOMLoad* |Triggered when a page's DOM content has fully loaded
|*DownloadPost* |Triggered when a download has completed
|*Fullscreen* |Triggered when the browser's fullscreen state changes
|*LocationChange* |Triggered when changing tabs or when navigating to a new location
|*PageLoadPre* |Triggered after a page load is initiated
|*PageLoad* |Triggered when a page gets (re)loaded/opened
|*PrivateMode* |Triggered when private mode is activated or deactivated
|*Sanitize* |Triggered when privata data are sanitized
|*ShellCmdPost* |Triggered after executing a shell command with [c]:![c]{cmd}
|*VimperatorEnter* |Triggered after Firefox starts
|*VimperatorLeavePre*|Triggered before exiting Firefox, just before destroying each module
|*VimperatorLeave* |Triggered before exiting Firefox
|===============================================================================
{pat} is a regular expression, use .* if you want to match all URLs.
Note: This differs from Vim which uses a glob rather than a regex for {pat}.
The following keywords are available where relevant:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*<url>* |The URL against which the event was selected.
|*<title>* |The page, bookmark or download title.
|*<doc>* |The document for which the event occurred. Only for *DOMLoad*, *PageLoad* and *PageLoadPre*.
|*<tab>* |The tab in which the event occurred. Only for *DOMLoad*, *PageLoad* and *PageLoadPre*.
|*<tags>* |The tags applied to <url>. Only for *BookmarkAdd*.
|*<keyword>*|The keywords applied to the bookmark. Only for *BookmarkAdd*.
|*<icon>* |The icon associated with <url>. Only for *BookmarkAdd*.
|*<size>* |The size of a downloaded file. Only for *DownloadPost*.
|*<file>* |The target destination of a download. Only for *DownloadPost*.
|*<state>* |The new state. Only for *Fullscreen* and *PrivateMode*.
|*<name>* |The name of the item. Only for *ColorScheme* and *Sanitize*.
|===============================================================================
________________________________________________________________________________
|:doautoa| |:doautoall|
||:doautoa[ll] {event} [a][url][a]|| +
________________________________________________________________________________
Apply the autocommands matching the specified URL to all buffers. If no
[a][url][a] is specified use the current URL.
________________________________________________________________________________
|:do| |:doautocmd|
||:do[autocmd] {event} [a][url][a]|| +
________________________________________________________________________________
Apply the autocommands matching the specified URL to the current buffer. If no
[a][url][a] is specified use the current URL.
________________________________________________________________________________
section::Examples[autocmd-examples]
Enable _passthrough_ mode on all Google sites:
\{nbsp}[c]:autocmd LocationChange .* js modes.passAllKeys = /google\.com/.test(buffer.URL)[c]
Enable _passthrough_ mode on *some* Google sites:
\{nbsp}[c]:autocmd LocationChange .* js modes.passAllKeys = /(www|mail)\.google\.com/.test(buffer.URL)[c]
Set the filetype to mail when editing email at Gmail:
\{nbsp}[c]:autocmd LocationChange .* :set editor=gvim\ -f[c] +
\{nbsp}[c]:autocmd LocationChange mail\.google\.com :set editor="gvim -f -c $$'set ft=mail'$$"[c]
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,132 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="autocommands"
title="&appname; Autocommands"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h2 tag="autocommands">Automatic commands</h2>
<p>
Autocommands are a way to automatically execute code when
certain events happen.
</p>
<item>
<tags>:au :autocmd</tags>
<spec>:au[tocmd]</spec>
<description>
<p>Execute commands automatically on events.</p>
<p><ex>:au[tocmd]</ex> <a>event</a> <a>pat</a> <a>cmd</a></p>
<p>
If the <em>-javascript</em> (short name <em>-js</em>)
option is specified, <a>cmd</a> is executed as JavaScript
code, with any supplied arguments available as
variables.
</p>
<p>Add <a>cmd</a> to the list of commands Vimperator will execute on <a>event</a> for a URL matching <a>pat</a>:</p>
<ul>
<li><ex>:autocmd[!]</ex> <a>events</a> <a>pat</a>: list/remove autocommands filtered by <a>events</a> and <a>pat</a></li>
<li><ex>:autocmd[!]</ex> <a>events</a>: list/remove autocommands matching <a>events</a></li>
<li><ex>:autocmd[!]</ex> <a>pat</a>: list/remove autocommands matching <a>pat</a></li>
<li><ex>:autocmd[!]</ex>: list/remove all autocommands</li>
</ul>
<p>Available <a>events</a>:</p>
<dl>
<dt>BookmarkAdd</dt> <dd>Triggered after a page is bookmarked</dd>
<dt>ColorScheme</dt> <dd>Triggered after a color scheme has been loaded</dd>
<dt>DOMLoad</dt> <dd>Triggered when a page's DOM content has fully loaded</dd>
<dt>DownloadPost</dt> <dd>Triggered when a download has completed</dd>
<dt>Fullscreen</dt> <dd>Triggered when the browser's fullscreen state changes</dd>
<dt>LocationChange</dt> <dd>Triggered when changing tabs or when navigating to a new location</dd>
<dt>PageLoadPre</dt> <dd>Triggered after a page load is initiated</dd>
<dt>PageLoad</dt> <dd>Triggered when a page gets (re)loaded/opened</dd>
<dt>PrivateMode</dt> <dd>Triggered when private mode is activated or deactivated</dd>
<dt>Sanitize</dt> <dd>Triggered when privata data are sanitized</dd>
<dt>ShellCmdPost</dt> <dd>Triggered after executing a shell command with <ex>:!</ex><a>cmd</a></dd>
<dt>VimperatorEnter</dt> <dd>Triggered after Firefox starts</dd>
<dt>VimperatorLeavePre</dt><dd>Triggered before exiting Firefox, just before destroying each module</dd>
<dt>VimperatorLeave</dt> <dd>Triggered before exiting Firefox</dd>
</dl>
<p><a>pat</a> is a regular expression, use .* if you want to match all URLs.</p>
<note>This differs from Vim which uses a glob rather than a regex for <a>pat</a>.</note>
<p>The following keywords are available where relevant:</p>
<dl>
<dt>&lt;url></dt> <dd>The URL against which the event was selected.</dd>
<dt>&lt;title></dt> <dd>The page, bookmark or download title.</dd>
<dt>&lt;doc></dt> <dd>The document for which the event occurred. Only for <em>DOMLoad</em>, <em>PageLoad</em> and <em>PageLoadPre</em>.</dd>
<dt>&lt;tab></dt> <dd>The tab in which the event occurred. Only for <em>DOMLoad</em>, <em>PageLoad</em> and <em>PageLoadPre</em>.</dd>
<dt>&lt;tags></dt> <dd>The tags applied to &lt;url>. Only for <em>BookmarkAdd</em>.</dd>
<dt>&lt;keyword></dt> <dd>The keywords applied to the bookmark. Only for <em>BookmarkAdd</em>.</dd>
<dt>&lt;icon></dt> <dd>The icon associated with &lt;url>. Only for <em>BookmarkAdd</em>.</dd>
<dt>&lt;size></dt> <dd>The size of a downloaded file. Only for <em>DownloadPost</em>.</dd>
<dt>&lt;file></dt> <dd>The target destination of a download. Only for <em>DownloadPost</em>.</dd>
<dt>&lt;state></dt> <dd>The new state. Only for "Fullscreen" and <em>PrivateMode</em>.</dd>
<dt>&lt;name></dt> <dd>The name of the item. Only for <em>ColorScheme</em> and <em>Sanitize</em>.</dd>
</dl>
</description>
</item>
<item>
<tags>:doautoa :doautoall</tags>
<spec>:doautoa[ll] <a>event</a> <oa>url</oa></spec>
<description>
<p>
Apply the autocommands matching the specified URL to all buffers. If no
<oa>url</oa> is specified use the current URL.
</p>
</description>
</item>
<item>
<tags>:do :doautocmd</tags>
<spec>:do[autocmd] <a>event</a> <oa>url</oa></spec>
<description>
<p>
Apply the autocommands matching the specified URL to the current buffer. If no
<oa>url</oa> is specified use the current URL.
</p>
</description>
</item>
<h2 tag="autocmd-examples">Examples</h2>
<p>Enable _passthrough_ mode on all Google sites:</p>
<p>
<ex>:autocmd LocationChange .* js modes.passAllKeys = /google\.com/.test(buffer.URL)</ex>
</p>
<p>Enable _passthrough_ mode on *some* Google sites:</p>
<p>
<ex>:autocmd LocationChange .* js modes.passAllKeys = /(www|mail)\.google\.com/.test(buffer.URL)</ex>
</p>
<p>
Set the filetype to mail when editing email at Gmail:
</p>
<p>
<ex>:autocmd LocationChange .* :set editor=<str>gvim -f</str></ex>
</p>
<p>
<ex>:autocmd LocationChange mail\.google\.com :set editor=<str>gvim -f -c 'set ft=mail'</str></ex>
</p>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,373 +0,0 @@
heading::Browsing[surfing,browsing]
Vimperator overrides nearly all Firefox keys in order to make browsing more
pleasant for Vim users. On the rare occasions when you want to pass a keystroke
to Firefox, or to the web page, and have it retain its original meaning you
have 2 possibilities:
|pass-through| |<C-z>| |CTRL-Z| +
||CTRL-Z||
________________________________________________________________________________
Disable all Vimperator keys except [m]<Esc>[m] and pass them to the next event
handler. This is especially useful if JavaScript controlled forms (e.g., the
RichEdit form fields of Gmail) don't work anymore. To exit this mode, press
[m]<Esc>[m]. If you also need to pass [m]<Esc>[m] in this mode to the web page,
prepend it with [m]<C-v>[m].
________________________________________________________________________________
|send-key| |<C-v>| |CTRL-V| +
||CTRL-V||
________________________________________________________________________________
If you only need to pass a single key to a JavaScript form field or another
extension prefix the key with [m]<C-v>[m]. Also works to unshadow Firefox
shortcuts like [m]<C-o>[m] which are otherwise hidden in Vimperator. When
Vimperator mode is temporarily disabled with [m]<C-z>[m], [m]<C-v>[m] will pass
the next key to Vimperator instead of the web page.
________________________________________________________________________________
section::Opening{nbsp}web{nbsp}pages[opening]
|o| |:o| |:open|
||:o[pen] [a][arg1][a], [a][arg2][a], ...|| +
||o||
________________________________________________________________________________
Open one or more URLs in the current tab.
Multiple URLs can be separated with 'urlseparator' (default: ", " Note that the
space after the comma is required.)
The first URL is opened in the current tab, and all other URLs are
opened in new tabs.
Each token is analyzed and in this order:
1. Opened as a local file if it is an existing relative or absolute filename.
- [c]:open /etc/fstab[c] shows the file system table.
- [c]:open ../other/foo.html[c] in your home directory opens
[a]/home/other/foo.html[a]
2. Opened with the specified search engine if the token looks like a search
string and the first word is the name of a search engine ([c]:open wikipedia
linus torvalds[c] opens the Wikipedia entry for linus torvalds). The short
name of a search engine is automatically guessed from its name. If you want
to set a custom name, you can change it with [c]:dialog searchengines[c].
3. Opened with the default search engine or keyword (specified with the
'defsearch' option) if the first word is no search engine ([c]:open linus
torvalds[c] opens a Google search for linus torvalds).
4. Passed directly to Firefox in all other cases ([c]:open www.osnews.com,
www.slashdot.org[c] opens OSNews in the current, and Slashdot in a new
background tab).
You can use [c]:open -tags linux torvalds<Tab>[c] to complete bookmarks with
tag "linux" and which contain "torvalds". Note that -tags support is only
available for tab completion, not for the actual command.
The items which are completed on [m]<Tab>[m] are specified in the 'complete'
option.
Sometimes, you might not be aware if you already have a certain page loaded in
some background tab or not. Therefore you can just type [c]:open facebook<Tab>[c]
and switch to it if Facebook is already open, or otherwise open it (if you
have Facebook in your bookmarks or history cache). This behavior can be turned
off by removing "t" from your 'complete' option.
________________________________________________________________________________
|t| |:t| |:tabopen| |:tabnew| |:tabe| |:tabedit|
||:tabopen[!] [a][arg1][a], [a][arg2][a], ...|| +
||t||
________________________________________________________________________________
Just like [c]:open[c] but also uses a new tab for the first URL. When
used with [!], the *tabopen* value of the 'activate' option is negated.
________________________________________________________________________________
|T| +
||T||
________________________________________________________________________________
Show a [c]:tabopen[c] prompt containing the current URL. Useful if you want to
go somewhere by editing the URL of the current page.
________________________________________________________________________________
|:tabdu| |:tabduplicate|
||:[count]tabdu[plicate][!]|| +
________________________________________________________________________________
Duplicates current tab [count] times. Uses *tabopen* value of the 'activate'
option to determine if the last cloned tab should be activated. When used with
[!], *tabopen* value is negated.
________________________________________________________________________________
|O| +
||O||
________________________________________________________________________________
Show an [c]:open[c] prompt containing the current URL. Useful if you want to
go somewhere by editing the URL of the current page.
________________________________________________________________________________
|w| |:winopen| |:wopen| |:winedit|
||:wino[pen][!] [a][arg1][a], [a][arg2][a], ...|| +
||w||
________________________________________________________________________________
Just like [c]:tabopen[c] but opens the resulting web page(s) in a new window.
________________________________________________________________________________
|W| +
||W||
________________________________________________________________________________
Open one or more URLs in a new window based on current location. Works like
[m]w[m] but preselects current URL in the [c]:winopen[c] query.
________________________________________________________________________________
|<MiddleMouse>| |p| +
||p||
________________________________________________________________________________
Open (put) a URL based on the current clipboard contents in the current buffer.
You can also just select (for non-X11 users: copy) some non-URL text, and
search for it with the default search engine or keyword (specified by the
'defsearch' option) with [m]p[m].
________________________________________________________________________________
|P| +
||P||
________________________________________________________________________________
Open (put) a URL based on the current clipboard contents in a new buffer. Works
like [m]p[m] but opens a new tab. +
Whether the new buffer is activated, depends on the 'activate' option.
________________________________________________________________________________
|gP| +
||gP||
________________________________________________________________________________
Open (put) a URL based on the current clipboard contents in a new buffer.
Works like [m]P[m] but inverts the 'activate' option.
________________________________________________________________________________
|<C-x>|
||[count]<C-x>||
________________________________________________________________________________
Decrements the last number in URL by 1, or by [count] if given. Negative
numbers are not supported, as this is not generally useful, so the number cannot
be decremented past 0.
________________________________________________________________________________
|<C-a>|
||[count]<C-a>||
________________________________________________________________________________
Increments the last number in URL by 1, or by [count] if given.
________________________________________________________________________________
|$$~$$| +
||$$~$$||
________________________________________________________________________________
Open home directory. You can also use the hints and have the probably fastest
file browser on earth. :)
________________________________________________________________________________
section::Navigating[navigating]
|H| |<C-o>| |CTRL-O| |:ba| |:back|
||:[count]ba[ck] [a][url][a]|| +
||:ba[ck]!|| +
||CTRL-o||
________________________________________________________________________________
Go [count] pages back in the browser history. If [url] is specified go back to
the first matching URL. The special version [c]:back![c] goes to the beginning
of the browser history.
________________________________________________________________________________
|L| |<C-i>| |CTRL-i| |:fo| |:fw| |:forward|
||:[count]fo[rward] [a][url][a]|| +
||:fo[rward]!|| +
||CTRL-i||
________________________________________________________________________________
Go [count] pages forward in the browser history. If [url] is specified go
forward to the first matching URL. The special version [c]:forward![c] goes to
the end of the browser history.
________________________________________________________________________________
|:ju| |:jumps|
||:ju[mps]||
________________________________________________________________________________
List all jumps aka current tab's history aka session history.
Current history position is marked with >, jump numbers are counters to be used
with [c]:back[c] (above zero record) or [c]:forward[c] (below zero record).
________________________________________________________________________________
|gh|
||gh||
________________________________________________________________________________
Go home. Opens the homepage in the current tab.
________________________________________________________________________________
|gH| +
||gH||
________________________________________________________________________________
Go home in a new tab. Opens the homepage in a new tab. Whether the new tab is
activated or not depends on the 'activate' option.
________________________________________________________________________________
|gu|
||[count]gu||
________________________________________________________________________________
Go to [count]th parent directory. +
[m]2gu[m] on _http://www.example.com/dir1/dir2/file.htm_ opens
_http://www.example.com/dir1/_.
________________________________________________________________________________
|gU|
||gU||
________________________________________________________________________________
Go to the root of the web site. +
[m]gU[m] on _http://www.example.com/dir1/dir2/file.htm_ opens
_http://www.example.com/_.
When browsing a local directory, it goes to the root directory.
________________________________________________________________________________
section::Reloading[reloading]
|r|
||r||
________________________________________________________________________________
Force reloading of the current web page.
________________________________________________________________________________
|R|
||R||
________________________________________________________________________________
Force reloading of the current web page skipping the cache.
________________________________________________________________________________
|:re| |:reload| +
||:re[load][!]||
________________________________________________________________________________
Reload current web page. Forces reloading of the current page. If [!] is given,
skip the cache.
________________________________________________________________________________
|:reloada| |:reloadall| +
||:reloada[ll][!]||
________________________________________________________________________________
Reload all pages. Forces reloading of all pages. If [!] is given, skip the cache.
________________________________________________________________________________
section::Stopping[stopping]
|<C-c>|
||<C-c>||
________________________________________________________________________________
Stop loading the current web page.
________________________________________________________________________________
|:st| |:stop|
||:st[op]||
________________________________________________________________________________
Stop loading the current web page.
________________________________________________________________________________
|:stopa| |:stopall| +
||:stopa[ll]||
________________________________________________________________________________
Stop loading all web pages.
________________________________________________________________________________
section::Writing[writing,save-file]
|:w| |:write| |:sav| |:saveas| +
||:sav[eas][!] [a][file][a]||
________________________________________________________________________________
Save current web page to disk. If [a][file][a] is omitted, save to the page's
default filename. Existing documents will only be overwritten if [!] is given.
________________________________________________________________________________
section::Quitting[quitting,save-session]
|:q| |:quit| +
||:q[uit]||
________________________________________________________________________________
Quit current tab. If this is the last tab in the window, close the window. If
this was the last window, close Vimperator. When quitting Vimperator, the
session is not stored.
________________________________________________________________________________
|:qa| |:qall| |:quita| |:quitall| +
||:quita[ll]||
________________________________________________________________________________
Quit Vimperator. Quit Vimperator, no matter how many tabs/windows are open.
The session is not stored.
________________________________________________________________________________
|:wc| |:wclose| |:winc| |:winclose|
||:winc[lose]|| +
________________________________________________________________________________
Close window.
________________________________________________________________________________
|:winon| |:winonly|
||:winon[ly]||
________________________________________________________________________________
Close all other windows.
________________________________________________________________________________
|:xa| |:xall| |:wq| |:wqa| |:wqall|
||:wqa[ll]|| +
||:xa[ll]||
________________________________________________________________________________
Save the session and quit. Quit Vimperator, no matter how many tabs/windows
are open. The session is stored. [c]:wq[c] is different from Vim, as it
closes the window instead of just one tab by popular demand. Complain on the
mailing list if you want to change that.
________________________________________________________________________________
|ZQ|
||ZQ||
________________________________________________________________________________
Quit and don't save the session. Works like [c]:qall[c].
________________________________________________________________________________
|ZZ|
||ZZ||
________________________________________________________________________________
Quit and save the session. Quit Vimperator, no matter how many tabs/windows
are open. The session is stored. Works like [c]:xall[c].
________________________________________________________________________________
section::The{nbsp}current{nbsp}directory[current-directory]
|:chd| |:chdir| |:cd|
||:cd [-|path]||
________________________________________________________________________________
Change the current directory. [c]:cd -[c] changes to the last directory.
________________________________________________________________________________
|:pw| |:pwd|
||:pw[d]||
________________________________________________________________________________
Print the current directory name.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,546 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="browsing"
title="&appname; Browsing"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h2 tag="surfing browsing">Browsing</h2>
Vimperator overrides nearly all Firefox keys in order to make browsing more
pleasant for Vim users. On the rare occasions when you want to pass a keystroke
to Firefox, or to the web page, and have it retain its original meaning you
have 2 possibilities:
<item>
<tags><![CDATA[pass-through <C-z> CTRL-Z]]></tags>
<spec>CTRL-Z</spec>
<description>
<p>
Disable all Vimperator keys except <k name="Esc"/> and pass them to the next event
handler. This is especially useful if JavaScript controlled forms (e.g., the
RichEdit form fields of Gmail) don't work anymore. To exit this mode, press
<k name="Esc"/>. If you also need to pass <k name="Esc"/> in this mode to the web page,
prepend it with <k name="C-v"/>.
</p>
</description>
</item>
<item>
<tags><![CDATA[send-key <C-v> CTRL-V]]></tags>
<spec>CTRL-V</spec>
<description>
<p>
If you only need to pass a single key to a JavaScript form field or another
extension prefix the key with <k name="C-v"/>. Also works to unshadow Firefox
shortcuts like <k name="C-o"/> which are otherwise hidden in Vimperator. When
Vimperator mode is temporarily disabled with <k name="C-z"/>, <k name="C-v"/> will pass
the next key to Vimperator instead of the web page.
</p>
</description>
</item>
<h2 tag="opening">Opening web pages</h2>
<item>
<tags>o :o :open</tags>
<spec>:o<oa>pen</oa> <oa>arg1</oa>, <oa>arg2</oa>, …</spec>
<spec>o</spec>
<description>
<p>
Open one or more URLs in the current tab.
Multiple URLs can be separated with <o>urlseparator</o> (default: ", " Note that the
space after the comma is required.)
The first URL is opened in the current tab, and all other URLs are
opened in new tabs.
Each token is analyzed and in this order:
</p>
<ol>
<li>
Opened as a local file if it is an existing relative or absolute filename.
<ul>
<li><ex>:open /etc/fstab</ex> shows the file system table.</li>
<li><ex>:open ../other/foo.html</ex> in your home directory opens <tt>/home/other/foo.html</tt></li>
</ul>
</li>
<li>
Opened with the specified search engine if the
token looks like a search string and the first word
is the name of a search engine (
<ex>:open wikipedia linus torvalds</ex> opens the Wikipedia entry for
linus torvalds). The short name of a search engine
is automatically guessed from its name. If you want
to set a custom name, you can change it with
<ex>:dialog searchengines</ex>.
</li>
<li>
Opened with the default search engine or keyword
(specified with the <o>defsearch</o> option) if the first
word is no search engine (<ex>:open linus torvalds</ex>
opens a Google search for linus torvalds).
</li>
<li>
Passed directly to Firefox in all other cases
(<ex>:open www.osnews.com, www.slashdot.org</ex>
opens OSNews in the current, and Slashdot in a new
background tab).
</li>
</ol>
<p>
You can use <ex>:open -tags linux torvalds<k name="Tab"/></ex> to complete bookmarks with
tag "linux" and which contain "torvalds". Note that -tags support is only
available for tab completion, not for the actual command.
The items which are completed on <k name="Tab"/> are specified in the <o>complete</o>
option.
</p>
<p>
Sometimes, you might not be aware if you already have a certain page loaded in
some background tab or not. Therefore you can just type <ex>:open facebook<k name="Tab"/></ex>
and switch to it if Facebook is already open, or otherwise open it (if you
have Facebook in your bookmarks or history cache). This behavior can be turned
off by removing "t" from your <o>complete</o> option.
</p>
</description>
</item>
<item>
<tags>t :t :tabopen :tabnew :tabe :tabedit</tags>
<spec>:tabopen<oa>!</oa> <oa>arg1</oa>, <oa>arg2</oa>, …</spec>
<spec>t</spec>
<description>
<p>
Just like <ex>:open</ex> but also uses a new tab for the first URL. When
used with <oa>!</oa>, the <em>tabopen</em> value of the <o>activate</o> option is negated.
</p>
</description>
</item>
<item>
<tags>T</tags>
<spec>T</spec>
<description>
<p>
Show a <ex>:tabopen</ex> prompt containing the current URL. Useful if you want to
go somewhere by editing the URL of the current page.
</p>
</description>
</item>
<item>
<tags>:tabdu :tabduplicate</tags>
<spec>:<oa>count</oa>tabdu<oa>plicate</oa><oa>!</oa></spec>
<description>
<p>
Duplicates current tab <oa>count</oa> times. Uses <em>tabopen</em> value of the <o>activate</o>
option to determine if the last cloned tab should be activated. When used with
<oa>!</oa>, <em>tabopen</em> value is negated.
</p>
</description>
</item>
<item>
<tags>O</tags>
<spec>O</spec>
<description>
<p>
Show an <ex>:open</ex> prompt containing the current URL. Useful if you want to
go somewhere by editing the URL of the current page.
</p>
</description>
</item>
<item>
<tags>w :winopen :wopen :winedit</tags>
<spec>:wino<oa>pen</oa><oa>!</oa> <oa>arg1</oa>, <oa>arg2</oa>, …</spec>
<spec>w</spec>
<description>
<p>Just like <ex>:tabopen</ex> but opens the resulting web page(s) in a new window.</p>
</description>
</item>
<item>
<tags>W</tags>
<spec>W</spec>
<description>
<p>
Open one or more URLs in a new window based on current location. Works like
<k>w</k> but preselects current URL in the <ex>:winopen</ex> query.
</p>
</description>
</item>
<item>
<tags><![CDATA[<MiddleMouse> p]]></tags>
<spec>p</spec>
<description>
<p>
Open (put) a URL based on the current clipboard contents in the current buffer.
You can also just select (for non-X11 users: copy) some non-URL text, and
search for it with the default search engine or keyword (specified by the
<o>defsearch</o> option) with <k>p</k>.
</p>
</description>
</item>
<item>
<tags>P</tags>
<spec>P</spec>
<description>
<p>
Open (put) a URL based on the current clipboard contents in a new buffer. Works
like <k>p</k> but opens a new tab.
</p>
<p>
Whether the new buffer is activated, depends on the <o>activate</o> option.
</p>
</description>
</item>
<item>
<tags>gP</tags>
<spec>gP</spec>
<description>
<p>
Open (put) a URL based on the current clipboard contents in a new buffer.
Works like <k>P</k> but inverts the <o>activate</o> option.
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-x>]]></tags>
<spec><oa>count</oa>&lt;C-x></spec>
<description>
<p>
Decrements the last number in URL by 1, or by <oa>count</oa> if given. Negative
numbers are not supported, as this is not generally useful, so the number cannot
be decremented past 0.
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-a>]]></tags>
<spec><oa>count</oa>&lt;C-a></spec>
<description>
<p>Increments the last number in URL by 1, or by <oa>count</oa> if given.</p>
</description>
</item>
<item>
<tags>~</tags>
<spec>~</spec>
<description>
<p>
Open home directory. You can also use the hints and have the probably fastest
file browser on earth. :)
</p>
</description>
</item>
<h2 tag="navigating">Navigating</h2>
<item>
<tags><![CDATA[H <C-o> CTRL-O :ba :back]]></tags>
<spec>:<oa>count</oa>ba<oa>ck</oa> <oa>url</oa></spec>
<spec>:ba<oa>ck</oa>!</spec>
<spec>CTRL-o</spec>
<description>
<p>
Go <oa>count</oa> pages back in the browser history. If <oa>url</oa> is specified go back to
the first matching URL. The special version <ex>:back!</ex> goes to the beginning
of the browser history.
</p>
</description>
</item>
<item>
<tags><![CDATA[L <C-i> CTRL-i :fo :fw :forward]]></tags>
<spec>:<oa>count</oa>fo<oa>rward</oa> <oa>url</oa></spec>
<spec>:fo<oa>rward</oa>!</spec>
<spec>CTRL-i</spec>
<description>
<p>
Go <oa>count</oa> pages forward in the browser history. If <oa>url</oa> is specified go
forward to the first matching URL. The special version <ex>:forward!</ex> goes to
the end of the browser history.
</p>
</description>
</item>
<item>
<tags>:ju :jumps</tags>
<spec>:ju<oa>mps</oa></spec>
<description>
<p>List all jumps aka current tab's history aka session history.</p>
<p>
Current history position is marked with >, jump numbers are counters to be used
with <ex>:back</ex> (above zero record) or <ex>:forward</ex> (below zero record).
</p>
</description>
</item>
<item>
<tags>gh</tags>
<spec>gh</spec>
<description>
<p>Go home. Opens the homepage in the current tab.</p>
</description>
</item>
<item>
<tags>gH</tags>
<spec>gH</spec>
<description>
<p>
Go home in a new tab. Opens the homepage in a new tab. Whether the new tab is
activated or not depends on the <o>activate</o> option.
</p>
</description>
</item>
<item>
<tags>gu</tags>
<spec><oa>count</oa>gu</spec>
<description>
<p>Go to <oa>count</oa>th parent directory.</p>
<p>
<k>2gu</k> on
<tt>http://www.example.com/dir1/dir2/file.htm</tt> opens
<tt>http://www.example.com/dir1/</tt>.
</p>
</description>
</item>
<item>
<tags>gU</tags>
<spec>gU</spec>
<description>
<p>Go to the root of the web site.</p>
<p>
<k>gU</k> on <tt>http://www.example.com/dir1/dir2/file.htm</tt> opens
<tt>http://www.example.com/</tt>.
When browsing a local directory, it goes to the root directory.
</p>
</description>
</item>
<h2 tag="reloading">Reloading</h2>
<item>
<tags>r</tags>
<spec>r</spec>
<description>
<p>Force reloading of the current web page.</p>
</description>
</item>
<item>
<tags>R</tags>
<spec>R</spec>
<description>
<p>Force reloading of the current web page skipping the cache.</p>
</description>
</item>
<item>
<tags>:re :reload</tags>
<spec>:re<oa>load</oa><oa>!</oa></spec>
<description>
<p>
Reload current web page. Forces reloading of the current page. If <oa>!</oa> is given,
skip the cache.
</p>
</description>
</item>
<item>
<tags>:reloada :reloadall</tags>
<spec>:reloada<oa>ll</oa><oa>!</oa></spec>
<description>
<p>Reload all pages. Forces reloading of all pages. If <oa>!</oa> is given, skip the cache.</p>
</description>
</item>
<h2 tag="stopping">Stopping</h2>
<item>
<tags><![CDATA[<C-c>]]></tags>
<spec>&lt;C-c></spec>
<description>
<p>Stop loading the current web page.</p>
</description>
</item>
<item>
<tags>:st :stop</tags>
<spec>:st<oa>op</oa></spec>
<description>
<p>Stop loading the current web page.</p>
</description>
</item>
<item>
<tags>:stopa :stopall</tags>
<spec>:stopa<oa>ll</oa></spec>
<description>
<p>Stop loading all web pages.</p>
</description>
</item>
<h2 tag="writing save-file">Writing</h2>
<item>
<tags>:w :write :sav :saveas</tags>
<spec>:sav<oa>eas</oa><oa>!</oa> <oa>file</oa></spec>
<description>
<p>
Save current web page to disk. If <oa>file</oa> is omitted, save to the page's
default filename. Existing documents will only be overwritten if <oa>!</oa> is given.
</p>
</description>
</item>
<h2 tag="quitting save-session">Quitting</h2>
<item>
<tags>:q :quit</tags>
<spec>:q<oa>uit</oa></spec>
<description>
<p>
Quit current tab. If this is the last tab in the window, close the window. If
this was the last window, close Vimperator. When quitting Vimperator, the
session is not stored.
</p>
</description>
</item>
<item>
<tags>:qa :qall :quita :quitall</tags>
<spec>:quita<oa>ll</oa></spec>
<description>
<p>
Quit Vimperator. Quit Vimperator, no matter how many tabs/windows are open.
The session is not stored.
</p>
</description>
</item>
<item>
<tags>:wc :wclose :winc :winclose</tags>
<spec>:winc<oa>lose</oa></spec>
<description>
<p>Close window.</p>
</description>
</item>
<item>
<tags>:winon :winonly</tags>
<spec>:winon<oa>ly</oa></spec>
<description>
<p>Close all other windows.</p>
</description>
</item>
<item>
<tags>:xa :xall :wq :wqa :wqall</tags>
<spec>:wqa<oa>ll</oa></spec>
<spec>:xa<oa>ll</oa></spec>
<description>
<p>
Save the session and quit. Quit Vimperator, no matter how many tabs/windows
are open. The session is stored. <ex>:wq</ex> is different from Vim, as it
closes the window instead of just one tab by popular demand. Complain on the
mailing list if you want to change that.
</p>
</description>
</item>
<item>
<tags>ZQ</tags>
<spec>ZQ</spec>
<description>
<p>Quit and don't save the session. Works like <ex>:qall</ex>.</p>
</description>
</item>
<item>
<tags>ZZ</tags>
<spec>ZZ</spec>
<description>
<p>
Quit and save the session. Quit Vimperator, no matter how many tabs/windows
are open. The session is stored. Works like <ex>:xall</ex>.
</p>
</description>
</item>
<h2 tag="current-directory">The current directory</h2>
<item>
<tags>:chd :chdir :cd</tags>
<spec>:cd <oa>-|path</oa></spec>
<description>
<p>Change the current directory. <ex>:cd -</ex> changes to the last directory.</p>
</description>
</item>
<item>
<tags>:pw :pwd</tags>
<spec>:pw<oa>d</oa></spec>
<description>
<p>Print the current directory name.</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,378 +0,0 @@
heading::Buffer[buffer,document]
Vimperator holds exactly one buffer object for each tab. It is usually an
(X)HTML document with advanced features.
section::Buffer{nbsp}information[buffer-information]
|<C-g>| +
||<C-g>||
________________________________________________________________________________
Print the current file name. Also shows some additional file information like
file size or the last modified date.
________________________________________________________________________________
|g<C-g>| +
||g<C-g>||
________________________________________________________________________________
Print file information. Same as [c]:pa[geinfo][c].
________________________________________________________________________________
|:pa| |:pageinfo| +
||:pa[geinfo]||
________________________________________________________________________________
Show various page information. See [c]:help $$'pageinfo'$$[c] for available options.
________________________________________________________________________________
|gf| +
||gf||
________________________________________________________________________________
View source. Opens the source code of the current web site with the internal
editor in the current tab.
________________________________________________________________________________
|gF| +
||gF||
________________________________________________________________________________
View source with an external editor. Opens the source code of the current web
site with the external editor specified by the 'editor' option. For now the
external editor must be able to download and open files from a remote URL.
________________________________________________________________________________
|:vie| |:viewsource|
||:vie[wsource][!] [a][url][a]|| +
________________________________________________________________________________
View source code of current document. If [a][url][a] is specified then view the
source of that document. When [!] is given, it is opened with the external
editor.
________________________________________________________________________________
|$$|$$| +
|||||
________________________________________________________________________________
Toggle between rendered and source view. Alternates the page in the current tab
between a normally rendered view and the internal editor source view.
________________________________________________________________________________
section::Motion{nbsp}commands[motion,scrolling]
|^| |0| +
||0||
________________________________________________________________________________
Scroll to the absolute left of the document. Unlike in Vim, [m]0[m] and [m]^[m]
work exactly the same way.
________________________________________________________________________________
|$| +
||$||
________________________________________________________________________________
Scroll to the absolute right of the document
________________________________________________________________________________
|<Home>| |gg| +
||[count]gg||
________________________________________________________________________________
Go to the top of the document. When used with [count] like in [m]35gg[m], it
scrolls to 35% of the document.
________________________________________________________________________________
|<End>| |G| +
||[count]G||
________________________________________________________________________________
Go to the end of the document. When used with [count] like in [m]35G[m], it
scrolls to 35% of the document.
________________________________________________________________________________
|N%| +
||{count}%||
________________________________________________________________________________
Scroll to {count} percent of the document.
________________________________________________________________________________
|<Left>| |h| +
||[count]h||
________________________________________________________________________________
Scroll document to the left. If [count] is specified then move [count] times as
much to the left. +
If the document cannot scroll more, a beep is emitted (unless 'visualbell' is
set).
________________________________________________________________________________
|<C-e>| |<Down>| |j| +
||[count]j||
________________________________________________________________________________
Scroll document down. If [count] is specified then move [count] times as much
down. +
If the document cannot scroll more, a beep is emitted (unless 'visualbell' is
set).
________________________________________________________________________________
|<C-y>| |<Up>| |k| +
||[count]k||
________________________________________________________________________________
Scroll document up. If [count] is specified then move [count] times as much up. +
If the document cannot scroll more, a beep is emitted (unless 'visualbell' is
set).
________________________________________________________________________________
|<Right>| |l| +
||[count]l||
________________________________________________________________________________
Scroll document to the right. If [count] is specified then move [count] times
as much to the right. +
If the document cannot scroll more, a beep is emitted (unless 'visualbell' is
set).
________________________________________________________________________________
|<C-d>| +
||[count]<C-d>||
________________________________________________________________________________
Scroll window downwards in the buffer. The number of lines is set by the
'scroll' option which defaults to half a page. If [count] is given 'scroll' is
first set to this value.
________________________________________________________________________________
|<C-u>| +
||[count]<C-u>||
________________________________________________________________________________
Scroll window upwards in the buffer. The number of lines is set by the
'scroll' option which defaults to half a page. If [count] is given 'scroll' is
first set to this value.
________________________________________________________________________________
|<S-Space>| |<PageUp>| |<C-b>| +
||[count]<C-b>||
________________________________________________________________________________
Scroll up a full page. Scroll window [count] pages Backwards (upwards) in the buffer.
________________________________________________________________________________
|<Space>| |<PageDown>| |<C-f>| +
||[count]<C-f>||
________________________________________________________________________________
Scroll down a full page. Scroll window [count] pages Forwards (downwards) in the buffer.
________________________________________________________________________________
section::Jumping{nbsp}to{nbsp}elements[jumping]
|<Tab>| +
||<Tab>||
________________________________________________________________________________
Advance keyboard focus to the next element.
________________________________________________________________________________
|<S-Tab>| +
||<S-Tab>||
________________________________________________________________________________
Rewind keyboard focus to the previous element.
________________________________________________________________________________
|gi| +
||[count]gi||
________________________________________________________________________________
Focus last used input field. If there is no last input field, it focuses the
first input field. When used with [count] it directly jumps to the [count]th input
field.
________________________________________________________________________________
|]f| +
||[count]]f||
________________________________________________________________________________
Focus next frame. Transfer keyboard focus to the [count]th next frame in
order. The newly focused frame is briefly colored red. Does not wrap.
________________________________________________________________________________
|[f| +
||[count][f||
________________________________________________________________________________
Focus previous frame. Transfer keyboard focus to the [count]th previous frame
in order. The newly focused frame is briefly colored red. Does not wrap.
________________________________________________________________________________
|]]| +
||[count]]]||
________________________________________________________________________________
Follow the link labeled \'next' or \'>' if it exists. Useful when browsing
forums or documentation. Change 'nextpattern' to modify its behavior. It
follows relations between files too.
________________________________________________________________________________
|[[| +
||[count][[||
________________________________________________________________________________
Follow the link labeled \'prev', \'previous' or \'<' if it exists. Useful when
browsing forums or documentation. Change 'previouspattern' to modify its
behavior. It follows relations between files too.
________________________________________________________________________________
section::Zooming[zooming,zoom]
The zooming commands are dependent on two properties -- a zoom range and a
series of levels within that range.
The absolute value of the page zoom is limited to a value within the configured
zoom range (default: 30%--300%). The zoom levels are used by
[m]zi[m]/[m]zo[m], and similar commands, to change the zoom value in steps. The
default zoom levels are 30%, 50%, 67%, 80%, 90%, 100%, 110%, 120%, 133%, 150%,
170%, 200%, 240%, 300%.
The available zoom range can be changed by setting the
\'http://kb.mozillazine.org/Zoom.minPercent[zoom.minPercent]' and
\'http://kb.mozillazine.org/Zoom.maxPercent[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
between 0 and 1, not as a percentage.
|+| |zi| +
||[count]zi||
________________________________________________________________________________
Enlarge text zoom of current web page. Mnemonic: zoom in.
________________________________________________________________________________
|zm| +
||[count]zm||
________________________________________________________________________________
Enlarge text zoom of current web page by a larger amount. Mnemonic: zoom more.
________________________________________________________________________________
|-| |zo| +
||[count]zo||
________________________________________________________________________________
Reduce text zoom of current web page. Mnemonic: zoom out.
________________________________________________________________________________
|zr| +
||[count]zr||
________________________________________________________________________________
Reduce text zoom of current web page by a larger amount. Mnemonic: zoom reduce.
________________________________________________________________________________
|zz| +
||[count]zz||
________________________________________________________________________________
Set text zoom value of current web page. Zoom value can be between 30% and 300%.
If it is omitted, text zoom is reset to 100%.
________________________________________________________________________________
|zI| +
||[count]zI||
________________________________________________________________________________
Enlarge full zoom of current web page. Mnemonic: zoom in.
________________________________________________________________________________
|zM| +
||[count]zM||
________________________________________________________________________________
Enlarge full zoom of current web page by a larger amount. Mnemonic: zoom more.
________________________________________________________________________________
|zO| +
||[count]zO||
________________________________________________________________________________
Reduce full zoom of current web page. Mnemonic: zoom out.
________________________________________________________________________________
|zR| +
||[count]zR||
________________________________________________________________________________
Reduce full zoom of current web page by a larger amount. Mnemonic: zoom reduce.
________________________________________________________________________________
|zZ| +
||[count]zZ||
________________________________________________________________________________
Set full zoom value of current web page. Zoom value can be between 30 and
300%. If it is omitted, full zoom is reset to 100%.
________________________________________________________________________________
|:zo| |:zoom|
||:zo[om][!] [a][value][a]|| +
||:zo[om][!] +{value} | -{value}|| +
________________________________________________________________________________
Set zoom value of current web page. [a][value][a] can be an absolute value
between 30% and 300% or a relative value if prefixed with "-" or "+". If
[a][value][a] is omitted, zoom is reset to 100%.
Normally this command operates on the text zoom; if used with [!], it
operates on full zoom.
________________________________________________________________________________
section::Working{nbsp}with{nbsp}frames[frames]
|:frameo| |:frameonly|
||:frameo[nly]|| +
________________________________________________________________________________
Show only the current frame's page.
________________________________________________________________________________
section::Copying{nbsp}text[copying,yanking]
When running in X11, the text of the following commands is not only
copied to the clipboard but is also put into the X11 selection, which
can be pasted with the middle mouse button:
|y| +
||y||
________________________________________________________________________________
Yank current location to the clipboard. When running in X11 the location is
also put into the selection, which can be pasted with the middle mouse button.
________________________________________________________________________________
|Y| +
||Y||
________________________________________________________________________________
Copy currently selected text to the system clipboard.
________________________________________________________________________________
section::Alternate{nbsp}style{nbsp}sheets[alternate-stylesheet]
Page authors may specify alternate style sheets for an HTML document. Users can
then switch between these various style sheets, selecting their favorite.
|:pagest| |:pagestyle|
||:pagest[yle] [a][stylesheet][a]|| +
________________________________________________________________________________
Select the author style sheet to apply. If [a][stylesheet][a] is not specified
the page's default style sheet is used.
All author styling can be removed by setting the 'usermode' option.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,536 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="buffer"
title="&appname; Buffer"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h2 tag="buffer document">Buffer</h2>
Vimperator holds exactly one buffer object for each tab. It is usually an
(X)HTML document with advanced features.
<h2 tag="buffer-information">Buffer information</h2>
<item>
<tags><![CDATA[<C-g>]]></tags>
<spec>&lt;C-g></spec>
<description>
<p>
Print the current file name. Also shows some additional file information like
file size or the last modified date.
</p>
</description>
</item>
<item>
<tags><![CDATA[g<C-g>]]></tags>
<spec>g&lt;C-g></spec>
<description>
<p>Print file information. Same as <ex>:pa<oa>geinfo</oa></ex>.</p>
</description>
</item>
<item>
<tags>:pa :pageinfo</tags>
<spec>:pa<oa>geinfo</oa></spec>
<description>
<p>Show various page information. See <ex>:help <o>pageinfo</o></ex> for available options.</p>
</description>
</item>
<item>
<tags>gf</tags>
<spec>gf</spec>
<description>
<p>
View source. Opens the source code of the current web site with the internal
editor in the current tab.
</p>
</description>
</item>
<item>
<tags>gF</tags>
<spec>gF</spec>
<description>
<p>
View source with an external editor. Opens the source code of the current web
site with the external editor specified by the <o>editor</o> option. For now the
external editor must be able to download and open files from a remote URL.
</p>
</description>
</item>
<item>
<tags>:vie :viewsource</tags>
<spec>:vie<oa>wsource</oa><oa>!</oa> <oa>url</oa></spec>
<description>
<p>
View source code of current document. If <oa>url</oa> is specified then view the
source of that document. When <oa>!</oa> is given, it is opened with the external
editor.
</p>
</description>
</item>
<item>
<tags>|</tags>
<spec>|</spec>
<description>
<p>
Toggle between rendered and source view. Alternates the page in the current tab
between a normally rendered view and the internal editor source view.
</p>
</description>
</item>
<h2 tag="motion scrolling">Motion commands</h2>
<item>
<tags>^ 0</tags>
<spec>0</spec>
<description>
<p>
Scroll to the absolute left of the document. Unlike in Vim, <k>0</k> and <k>^</k>
work exactly the same way.
</p>
</description>
</item>
<item>
<tags>$</tags>
<spec>$</spec>
<description>
<p>Scroll to the absolute right of the document</p>
</description>
</item>
<item>
<tags><![CDATA[<Home> gg]]></tags>
<spec><oa>count</oa>gg</spec>
<description>
<p>
Go to the top of the document. When used with <oa>count</oa> like in <k>35gg</k>, it
scrolls to 35% of the document.
</p>
</description>
</item>
<item>
<tags><![CDATA[<End> G]]></tags>
<spec><oa>count</oa>G</spec>
<description>
<p>
Go to the end of the document. When used with <oa>count</oa> like in <k>35G</k>, it
scrolls to 35% of the document.
</p>
</description>
</item>
<item>
<tags>N%</tags>
<spec><a>count</a>%</spec>
<description>
<p>Scroll to <a>count</a> percent of the document.</p>
</description>
</item>
<item>
<tags><![CDATA[<Left> h]]></tags>
<spec><oa>count</oa>h</spec>
<description>
<p>
Scroll document to the left. If <oa>count</oa> is specified then move <oa>count</oa> times as
much to the left. +
If the document cannot scroll more, a beep is emitted (unless <o>visualbell</o> is
set).
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-e> <Down> j]]></tags>
<spec><oa>count</oa>j</spec>
<description>
<p>
Scroll document down. If <oa>count</oa> is specified then move <oa>count</oa> times as much
down. +
If the document cannot scroll more, a beep is emitted (unless <o>visualbell</o> is
set).
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-y> <Up> k]]></tags>
<spec><oa>count</oa>k</spec>
<description>
<p>
Scroll document up. If <oa>count</oa> is specified then move <oa>count</oa> times as much up. +
If the document cannot scroll more, a beep is emitted (unless <o>visualbell</o> is
set).
</p>
</description>
</item>
<item>
<tags><![CDATA[<Right> l]]></tags>
<spec><oa>count</oa>l</spec>
<description>
<p>
Scroll document to the right. If <oa>count</oa> is specified then move <oa>count</oa> times
as much to the right. +
If the document cannot scroll more, a beep is emitted (unless <o>visualbell</o> is
set).
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-d>]]></tags>
<spec><oa>count</oa>&lt;C-d></spec>
<description>
<p>
Scroll window downwards in the buffer. The number of lines is set by the
<o>scroll</o> option which defaults to half a page. If <oa>count</oa> is given <o>scroll</o> is
first set to this value.
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-u>]]></tags>
<spec><oa>count</oa>&lt;C-u></spec>
<description>
<p>
Scroll window upwards in the buffer. The number of lines is set by the
<o>scroll</o> option which defaults to half a page. If <oa>count</oa> is given <o>scroll</o> is
first set to this value.
</p>
</description>
</item>
<item>
<tags><![CDATA[<S-Space> <PageUp> <C-b>]]></tags>
<spec><oa>count</oa>&lt;C-b></spec>
<description>
<p>Scroll up a full page. Scroll window <oa>count</oa> pages Backwards (upwards) in the buffer.</p>
</description>
</item>
<item>
<tags><![CDATA[<Space> <PageDown> <C-f>]]></tags>
<spec><oa>count</oa>&lt;C-f></spec>
<description>
<p>Scroll down a full page. Scroll window <oa>count</oa> pages Forwards (downwards) in the buffer.</p>
</description>
</item>
<h2 tag="jumping">Jumping to elements</h2>
<item>
<tags><![CDATA[<Tab>]]></tags>
<spec>&lt;Tab></spec>
<description>
<p>Advance keyboard focus to the next element.</p>
</description>
</item>
<item>
<tags><![CDATA[<S-Tab>]]></tags>
<spec>&lt;S-Tab></spec>
<description>
<p>Rewind keyboard focus to the previous element.</p>
</description>
</item>
<item>
<tags>gi</tags>
<spec><oa>count</oa>gi</spec>
<description>
<p>
Focus last used input field. If there is no last input field, it focuses the
first input field. When used with <oa>count</oa> it directly jumps to the <oa>count</oa>th input
field.
</p>
</description>
</item>
<item>
<tags>]f</tags>
<spec><oa>count</oa>]f</spec>
<description>
<p>
Focus next frame. Transfer keyboard focus to the <oa>count</oa>th next frame in
order. The newly focused frame is briefly colored red. Does not wrap.
</p>
</description>
</item>
<item>
<tags>[f</tags>
<spec><oa>count</oa>[f</spec>
<description>
<p>
Focus previous frame. Transfer keyboard focus to the <oa>count</oa>th previous frame
in order. The newly focused frame is briefly colored red. Does not wrap.
</p>
</description>
</item>
<item>
<tags>]]</tags>
<spec><oa>count</oa>]]</spec>
<description>
<p>
Follow the link labeled <str>next</str> or <str>></str>
if it exists. Useful when browsing forums or
documentation. Change <o>nextpattern</o> to modify its
behavior. It follows relations between files too.
</p>
</description>
</item>
<item>
<tags>[[</tags>
<spec><oa>count</oa>[[</spec>
<description>
<p>
Follow the link labeled <str>prev</str>,
<str>previous</str> or <str>&lt;</str> if it exists. Useful
when browsing forums or documentation. Change
<o>previouspattern</o> to modify its behavior. It
follows relations between files too.
</p>
</description>
</item>
<h2 tag="zooming zoom">Zooming</h2>
The zooming commands are dependent on two properties -- a zoom range and a
series of levels within that range.
The absolute value of the page zoom is limited to a value within the configured
zoom range (default: 30%--300%). The zoom levels are used by
<k>zi</k>/<k>zo</k>, and similar commands, to change the zoom value in steps. The
default zoom levels are 30%, 50%, 67%, 80%, 90%, 100%, 110%, 120%, 133%, 150%,
170%, 200%, 240%, 300%.
The available zoom range can be changed by setting the
<html:a href="http://kb.mozillazine.org/Zoom.minPercent">'zoom.minPercent'</html:a> and
<html:a href="http://kb.mozillazine.org/Zoom.maxPercent">'zoom.maxPercent'</html:a> Firefox
preferences. The zoom levels can be changed using the
<html:a href="http://kb.mozillazine.org/Toolkit.zoomManager.zoomValues">'toolkit.ZoomManager.zoomLevels'</html:a>
preference.
<note>
'toolkit.ZoomManager.zoomLevels' is specified as a list of
values between 0 and 1, not as a percentage.
</note>
<item>
<tags>+ zi</tags>
<spec><oa>count</oa>zi</spec>
<description>
<p>Enlarge text zoom of current web page. Mnemonic: zoom in.</p>
</description>
</item>
<item>
<tags>zm</tags>
<spec><oa>count</oa>zm</spec>
<description>
<p>Enlarge text zoom of current web page by a larger amount. Mnemonic: zoom more.</p>
</description>
</item>
<item>
<tags>- zo</tags>
<spec><oa>count</oa>zo</spec>
<description>
<p>Reduce text zoom of current web page. Mnemonic: zoom out.</p>
</description>
</item>
<item>
<tags>zr</tags>
<spec><oa>count</oa>zr</spec>
<description>
<p>Reduce text zoom of current web page by a larger amount. Mnemonic: zoom reduce.</p>
</description>
</item>
<item>
<tags>zz</tags>
<spec><oa>count</oa>zz</spec>
<description>
<p>
Set text zoom value of current web page. Zoom value can be between 30% and 300%.
If it is omitted, text zoom is reset to 100%.
</p>
</description>
</item>
<item>
<tags>zI</tags>
<spec><oa>count</oa>zI</spec>
<description>
<p>Enlarge full zoom of current web page. Mnemonic: zoom in.</p>
</description>
</item>
<item>
<tags>zM</tags>
<spec><oa>count</oa>zM</spec>
<description>
<p>Enlarge full zoom of current web page by a larger amount. Mnemonic: zoom more.</p>
</description>
</item>
<item>
<tags>zO</tags>
<spec><oa>count</oa>zO</spec>
<description>
<p>Reduce full zoom of current web page. Mnemonic: zoom out.</p>
</description>
</item>
<item>
<tags>zR</tags>
<spec><oa>count</oa>zR</spec>
<description>
<p>Reduce full zoom of current web page by a larger amount. Mnemonic: zoom reduce.</p>
</description>
</item>
<item>
<tags>zZ</tags>
<spec><oa>count</oa>zZ</spec>
<description>
<p>
Set full zoom value of current web page. Zoom value can be between 30 and
300%. If it is omitted, full zoom is reset to 100%.
</p>
</description>
</item>
<item>
<tags>:zo :zoom</tags>
<spec>:zo<oa>om</oa><oa>!</oa> <oa>value</oa></spec>
<spec>:zo<oa>om</oa><oa>!</oa> +<a>value</a> | -<a>value</a></spec>
<description>
<p>
Set zoom value of current web page. <oa>value</oa> can be an absolute value
between 30% and 300% or a relative value if prefixed with "-" or "+". If
<oa>value</oa> is omitted, zoom is reset to 100%.
</p>
<p>
Normally this command operates on the text zoom; if used with <oa>!</oa>, it
operates on full zoom.
</p>
</description>
</item>
<h2 tag="frames">Working with frames</h2>
<item>
<tags>:frameo :frameonly</tags>
<spec>:frameo<oa>nly</oa></spec>
<description>
<p>Show only the current frame's page.</p>
</description>
</item>
<h2 tag="copying yanking">Copying text</h2>
When running in X11, the text of the following commands is not only
copied to the clipboard but is also put into the X11 selection, which
can be pasted with the middle mouse button:
<item>
<tags>y</tags>
<spec>y</spec>
<description>
<p>
Yank current location to the clipboard. When running in X11 the location is
also put into the selection, which can be pasted with the middle mouse button.
</p>
</description>
</item>
<item>
<tags>Y</tags>
<spec>Y</spec>
<description>
<p>Copy currently selected text to the system clipboard.</p>
</description>
</item>
<h2 tag="alternate-stylesheet">Alternate style sheets</h2>
Page authors may specify alternate style sheets for an HTML document. Users can
then switch between these various style sheets, selecting their favorite.
<item>
<tags>:pagest :pagestyle</tags>
<spec>:pagest<oa>yle</oa> <oa>stylesheet</oa></spec>
<description>
<p>
Select the author style sheet to apply. If <oa>stylesheet</oa> is not specified
the page's default style sheet is used.
</p>
<p>All author styling can be removed by setting the <o>usermode</o> option.</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,78 +0,0 @@
heading::Command-line{nbsp}mode[Command-line-mode,Command-line,mode-cmdline]
Command-line mode is used to enter Ex commands ("[m]:[m]") and text search patterns
("[m]/[m]" and "[m]?[m]").
|:| +
||:||
________________________________________________________________________________
Start Command-line mode. In Command-line mode, you can perform extended
commands, which may require arguments.
________________________________________________________________________________
section::Command-line{nbsp}editing[cmdline-editing]
|c_<C-c>| +
||<C-c>||
________________________________________________________________________________
Quit Command-line mode without executing.
________________________________________________________________________________
|c_<C-]>| +
||<C-]>||
________________________________________________________________________________
Expand a command-line abbreviation.
________________________________________________________________________________
|c_<Up>| +
||<Up>||
________________________________________________________________________________
Recall the previous command line from the history list which matches the
current command line.
________________________________________________________________________________
|c_<Down>| +
||<Down>||
________________________________________________________________________________
Recall the next command line from the history list which matches the current
command line.
________________________________________________________________________________
|c_<S-Up>| |c_<PageUp>|
||<S-Up>|| +
||<PageUp>||
________________________________________________________________________________
Recall the previous command line from the history list.
________________________________________________________________________________
|c_<S-Down>| |c_<PageDown>|
||<S-Down>|| +
||<PageDown>||
________________________________________________________________________________
Recall the next command line from the history list.
________________________________________________________________________________
section::Command-line{nbsp}completion[cmdline-completion]
|c_<Tab>| +
||<Tab>||
________________________________________________________________________________
Complete the word in front of the cursor according to the behavior specified in
'wildmode'. If 'wildmode' contains "list" and there are multiple matches then
the completion menu window is opened.
________________________________________________________________________________
|c_<S-Tab>| +
||<S-Tab>||
________________________________________________________________________________
Complete the previous full match when 'wildmode' contains "full".
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,119 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="cmdline"
title="&appname; Command-line"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h2 tag="Command-line-mode Command-line mode-cmdline">Command-line mode</h2>
Command-line mode is used to enter Ex commands (<k>:</k>) and text search patterns
(<k>/</k> and <k>?</k>).
<item>
<tags>:</tags>
<spec>:</spec>
<description>
<p>
Start Command-line mode. In Command-line mode, you can perform extended
commands, which may require arguments.
</p>
</description>
</item>
<h2 tag="cmdline-editing">Command-line editing</h2>
<item>
<tags><![CDATA[c_<C-c>]]></tags>
<spec>&lt;C-c></spec>
<description>
<p>Quit Command-line mode without executing.</p>
</description>
</item>
<item>
<tags><![CDATA[c_<C-]>]]></tags>
<spec>&lt;C-]></spec>
<description>
<p>Expand a command-line abbreviation.</p>
</description>
</item>
<item>
<tags><![CDATA[c_<Up>]]></tags>
<spec>&lt;Up></spec>
<description>
<p>
Recall the previous command line from the history list which matches the
current command line.
</p>
</description>
</item>
<item>
<tags><![CDATA[c_<Down>]]></tags>
<spec>&lt;Down></spec>
<description>
<p>
Recall the next command line from the history list which matches the current
command line.
</p>
</description>
</item>
<item>
<tags><![CDATA[c_<S-Up> c_<PageUp>]]></tags>
<spec>&lt;S-Up></spec>
<spec>&lt;PageUp></spec>
<description>
<p>Recall the previous command line from the history list.</p>
</description>
</item>
<item>
<tags><![CDATA[c_<S-Down> c_<PageDown>]]></tags>
<spec>&lt;S-Down></spec>
<spec>&lt;PageDown></spec>
<description>
<p>Recall the next command line from the history list.</p>
</description>
</item>
<h2 tag="cmdline-completion">Command-line completion</h2>
<item>
<tags><![CDATA[c_<Tab>]]></tags>
<spec>&lt;Tab></spec>
<description>
<p>
Complete the word in front of the cursor according to the behavior specified in
<o>wildmode</o>. If <o>wildmode</o> contains "list" and there are multiple matches then
the completion menu window is opened.
</p>
</description>
</item>
<item>
<tags><![CDATA[c_<S-Tab>]]></tags>
<spec>&lt;S-Tab></spec>
<description>
<p>Complete the previous full match when <o>wildmode</o> contains "full".</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,88 +0,0 @@
heading::Developer{nbsp}information[developer-information]
section::Writing{nbsp}documentation[writing-docs,documentation]
For every new feature, writing documentation is _mandatory_ for the patch to
be accepted. The docs are written in
http://www.methods.co.nz/asciidoc/index.html[asciidoc] version 8.4.x.
They are placed in the _src/locale/en-US/_ directory and compiled with
_make doc_. Please refer to the
http://www.methods.co.nz/asciidoc/userguide.html[asciidoc documentation] above
for details. Usually you can just write text as is, and mostly it will be
interpreted correctly. The only difficult part is to write special sections
like for help::help[various.html,online-help].
----------------------------------------------------------------------------------
|<F1>| |:help| |:h| |help|
||:h[elp] {subject}|| +
||<F1>||
____________________________________________________________________________
Open help window.
The default section is shown unless {subject} is specified.
If you need help for a specific topic, try [c]:help overview[c].
____________________________________________________________________________
----------------------------------------------------------------------------------
is displayed as:
++++++++++++++++++++++++++++++++++++++++
<p><span class="hiddentag">&lt;F1&gt;</span> <span
class="hiddentag">:help</span> <span class="hiddentag">:h</span> <span
class="hiddentag">help</span>
<span class="key">:h[elp] <span class="argument">&#123;subject&#125;</span></span><br />
<span class="key">&lt;F1&gt;</span></p>
<div class="quoteblock">
<div class="quoteblock-content">
<p>Open help window.
The default section is shown unless <span class="argument">&#123;subject&#125;</span> is specified.
If you need help for a specific topic, try <span class="command">:help overview</span>.</p>
</div></div>
+++++++++++++++++++++++++++++++++++++++
Some notes about the code above:
- *$$|<F1>|$$* defines a _tag_. A tag is written at the right in magenta and let's
you jump to a topic with [c]:help <F1>[c]. Note that you must write it from
right to left, so in the above example $$|help|$$ will be the most left tag,
and $$|<F1>|$$ the most right one.
- *$$||:h[elp] {subject}|| +$$* and *$$||<F1>||$$* define command or mapping
names and are printed on the left side. Note the + at the end of one
command, that indicates a new line. There is no general rule when a new line
is needed and when not, just try it out and see what looks better.
- The actual help code for this command is embedded in at least 4 underscores
(_). This generates a quoteblock and indents the text so it is more clear
that it belongs to the command.
- Wrap things in *$$[c]$$* and they are drawn like a :command. Also *$$[o]$$*,
*$$[m]$$* and *$$[a]$$* are available to markup options, mappings, and
arguments.
- As a convenience, any string within \{...\} and $$[count]$$ and $$[!]$$ are
automatically marked up as an argument.
There are also some additional asciidoc commands specifically for writing
Vimperator documentation:
- *$$section::Writing{nbsp}documentation[writing-docs,documentation]$$* Creates
a new section like _Writing Documentation_ in this help file with 2 tags.
- *$$help:developer{nbsp}information[developer.html,documentation]$$* creates
a link with text _developer information_ to the tag _documentation_ in
the file _developer.html_.
If you don't know in which file/section you should put some documentation, ask
on the mailing list or on #vimperator. Usually help should be grouped together
in logically connected subject areas like
help:opening{nbsp}web{nbsp}pages[browsing.html,opening].
section::Generating{nbsp}documentation[generating-docs]
You can also autogenerate most of the asciidoc help after you have written a
new command, mapping or option. For this, use:
:echo util.generateHelp(commands.get("addons"), "Extra text")
Now you can copy the asciidoc text but always make sure it looks OK after
you compile the help file with "make doc", as the auto-generation might
not work correctly for all special cases.
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,72 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="developer"
title="&appname; Developer information"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h2 tag="developer-information">Developer information</h2>
<h2 tag="writing-docs documentation">Writing documentation</h2>
<p>
For every new feature, writing documentation is <em>mandatory</em> for the
patch to be accepted. The docs are written in an XML dialect similar to
XHTML, with a few tags specific to our documentation. For example:
</p>
<code><![CDATA[
<item>
<tags><![CDATA[<F1> :help :h help]]]]><![CDATA[></tags>
<spec>:h<oa>elp</oa> <a>subject</a></spec>
<spec><![CDATA[<F1>]]]]><![CDATA[></spec>
<description>
<p>
Open help window.
The default section is shown unless <a>subject</a> is specified.
If you need help for a specific topic, try <ex>:help overview</ex>.
</p>
</description>
</item>
]]></code>
<p>
creates a new help section for the command <ex>:help</ex> and for
the related key binding, <k name="F1"/>. It also creates help tags
for the command, its shortcuts, the key binding, and the general
topic, 'help'. These tags enable linking to this section when from
other mentions of the topic and from the <ex>:help</ex> command.
The above code displays as:
</p>
<html:div style="margin: 2em;">
<item>
<tags><![CDATA[<F1> :help :h help]]></tags>
<spec>:h<oa>elp</oa> <a>subject</a></spec>
<spec><![CDATA[<F1>]]></spec>
<description>
<p>
Open help window.
The default section is shown unless <a>subject</a> is specified.
If you need help for a specific topic, try <ex>:help overview</ex>.
</p>
</description>
</item>
</html:div>
If you don't know in which file/section you should put some
documentation, ask on the mailing list or on #vimperator.
<h2 tag="generating-docs">Generating documentation</h2>
You can also autogenerate most of the XML help after you have
written a new command, mapping or option. For this, use:
:echo util.generateHelp(commands.get("addons"), "Extra text")
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,82 +0,0 @@
heading::Expression{nbsp}evaluation[expression,expr,eval]
//INTRO TO BE WRITTEN...
|:ec| |:echo| +
||:ec[ho] {expr}||
________________________________________________________________________________
Echo the expression. Useful for showing informational messages. Multiple lines
can be separated by \n. {expr} can either be a quoted string, or any expression
which can be fed to eval() like 4+5. You can also view the source code of
objects and functions if the return value of {expr} is an object or function.
________________________________________________________________________________
|:echoe| |:echoerr|
||:echoe[rr] {expr}|| +
________________________________________________________________________________
Echo the expression as an error message. Just like [c]:ec[ho][c] but echoes
the result highlighted as ErrorMsg and saves it to the message history.
________________________________________________________________________________
|:echom| |:echomsg|
||:echom[sg] {expr}|| +
________________________________________________________________________________
Echo the expression as an informational message. Just like [c]:ec[ho][c] but
also saves the message in the message history.
________________________________________________________________________________
|:exe| |:execute|
||:exe[cute] {expr}|| +
________________________________________________________________________________
Execute the string that results from the evaluation of {expr} as an Ex command.
Example: [c]:execute "source " + io.getRCFile().path[c] sources the appropriate
RC file.
Note: Unlike Vim this currently only supports a single argument.
________________________________________________________________________________
|:js| |:javas| |:javascript|
||:javas[cript] {cmd}|| +
||:javascript <<{endpattern}\n{empty}{script}\n{empty}{endpattern}|| +
||:javascript[!]||
________________________________________________________________________________
Run any JavaScript command through eval(). Acts as a JavaScript interpreter by
passing the argument to `eval()`.
[c]:javascript alert("Hello world")[c] shows a dialog box with the text "Hello world".
[c]:javascript <<EOF[c] reads all the lines until a line starting with "EOF"
is found, and interpret them with the JavaScript _eval()_ function.
The special version [c]:javascript![c] opens the JavaScript console of
Firefox.
[m]<Tab>[m] completion is available for [c]:javascript {cmd}<Tab>[c] (but not
yet for the [c]:js <<EOF[c] multiline widget). Be aware that Vimperator needs
to run {cmd} through eval() to get the completions, which could have unwanted
side effects.
________________________________________________________________________________
// >> To make the syntax highlighting happy
|:let|
||:let {var-name} [+-.]= {expr1}|| +
||:let {var-name}|| +
||:let||
________________________________________________________________________________
Sets or lists a variable. Sets the variable {var-name} to the value of the
expression {expr1}. If no expression is given, the value of the variable is
displayed. Without arguments, displays a list of all variables.
________________________________________________________________________________
|:unl| |:unlet|
||:unl[et][!] {name} ...|| +
________________________________________________________________________________
Deletes the variable {name}. Several variable names can be given. When used
with [!] no error message is output for non-existing variables.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,127 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="eval"
title="&appname; Expression Evaluation"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="expression expr eval">Expression evaluation</h1>
<!-- INTRO TO BE WRITTEN… -->
<item>
<tags>:ec :echo</tags>
<spec>:ec<oa>ho</oa> <a>expr</a></spec>
<description>
<p>
Echo the expression. Useful for showing informational messages. Multiple lines
can be separated by \n. <a>expr</a> can either be a quoted string, or any expression
which can be fed to eval() like 4+5. You can also view the source code of
objects and functions if the return value of <a>expr</a> is an object or function.
</p>
</description>
</item>
<item>
<tags>:echoe :echoerr</tags>
<spec>:echoe<oa>rr</oa> <a>expr</a></spec>
<description>
<p>
Echo the expression as an error message. Just like <ex>:ec<oa>ho</oa></ex> but echoes
the result highlighted as ErrorMsg and saves it to the message history.
</p>
</description>
</item>
<item>
<tags>:echom :echomsg</tags>
<spec>:echom<oa>sg</oa> <a>expr</a></spec>
<description>
<p>
Echo the expression as an informational message. Just like <ex>:ec<oa>ho</oa></ex> but
also saves the message in the message history.
</p>
</description>
</item>
<item>
<tags>:exe :execute</tags>
<spec>:exe<oa>cute</oa> <a>expr</a></spec>
<description>
<p>
Execute the string that results from the evaluation of <a>expr</a> as an Ex command.
Example: <ex>:execute "source " + io.getRCFile().path</ex> sources the appropriate
RC file.
</p>
<p>Note: Unlike Vim this currently only supports a single argument.</p>
</description>
</item>
<item>
<tags>:js :javas :javascript</tags>
<spec>:javas<oa>cript</oa> <a>cmd</a></spec>
<spec>:javascript &lt;&lt;<a>endpattern</a>\n<a>empty</a><a>script</a>\n<a>empty</a><a>endpattern</a></spec>
<spec>:javascript<oa>!</oa></spec>
<description>
<p>
Run any JavaScript command through eval(). Acts as a JavaScript interpreter by
passing the argument to <tt>eval()</tt>.
<ex>:javascript alert(<str>Hello world</str>)</ex> shows
a dialog box with the text "Hello world".
<ex>:javascript &lt;&lt;EOF</ex> reads all the lines
until a line starting with "EOF"
is found, and interpret them with the JavaScript <em>eval()</em> function.
</p>
<p>
The special version <ex>:javascript!</ex> opens the JavaScript console of
Firefox.
</p>
<p>
<k name="Tab"/> completion is available for <ex>:javascript <a>cmd</a><k name="Tab"/></ex> (but not
yet for the <ex>:js &lt;&lt;EOF</ex> multiline widget). Be aware that Vimperator needs
to run <a>cmd</a> through eval() to get the completions, which could have unwanted
side effects.
</p>
</description>
</item>
<item>
<tags>:let</tags>
<spec>:let <a>var-name</a> [+-.]= <a>expr1</a></spec>
<spec>:let <a>var-name</a></spec>
<spec>:let</spec>
<description>
<p>
Sets or lists a variable. Sets the variable {var-name} to the value of the
expression <a>expr1</a>. If no expression is given, the value of the variable is
displayed. Without arguments, displays a list of all variables.
</p>
</description>
</item>
<item>
<tags>:unl :unlet</tags>
<spec>:unl<oa>et</oa><oa>!</oa> <a>name</a></spec>
<description>
<p>
Deletes the variable <a>name</a>. Several variable names can be given. When used
with <oa>!</oa> no error message is output for non-existing variables.
</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,192 +0,0 @@
heading::Vimperator's{nbsp}GUI[gui]
Although Vimperator offers the most frequently used Firefox functionality via
Ex and Normal mode commands there may be times when directly accessing the GUI
is required. There are commands for accessing the menu system, standard dialogs
and the sidebar.
section::Menus[menu]
|:emenu| +
||:emenu {menu}||
________________________________________________________________________________
Execute {menu} from the command line. This command provides command-line access
to all menu items available from the main Firefox menubar. {menu} is a
hierarchical path to the menu item with each submenu separated by a period.
E.g. [c]:emenu File.Open File...[c]
________________________________________________________________________________
section::Dialogs[dialogs]
|:addo| |:addons| +
||:addo[ns]||
________________________________________________________________________________
Show available Firefox Extensions and Themes.
You can add/remove/disable browser extensions from this dialog.
Be aware that not all Firefox extensions work, because Vimperator overrides
some key bindings and changes Firefox's GUI.
________________________________________________________________________________
|:dia| |:dialog|
||:dia[log] [a][firefox-dialog][a]|| +
________________________________________________________________________________
Open a Firefox dialog.
Available dialogs:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*about* |About Mozilla Firefox
|*addbookmark* |Add bookmark for the current page
|*addons* |Manage Add-ons
|*bookmarks* |List your bookmarks
|*checkupdates* |Check for updates
|*cleardata* |Clear private data
|*cookies* |List your cookies
|*console* |JavaScript console
|*customizetoolbar*|Customize the Toolbar
|*dominspector* |DOM Inspector
|*downloads* |Manage Downloads
|*history* |List your history
|*import* |Import Preferences, Bookmarks, History, etc. from other browsers
|*openfile* |Open the file selector dialog
|*pageinfo* |Show information about the current page
|*pagesource* |View page source
|*places* |Places Organizer: Manage your bookmarks and history
|*preferences* |Show Firefox preferences dialog
|*printpreview* |Preview the page before printing
|*printsetup* |Setup the page size and orientation before printing
|*print* |Show print dialog
|*saveframe* |Save frame to disk
|*savepage* |Save page to disk
|*searchengines* |Manage installed search engines
|*selectionsource* |View selection source
|===============================================================================
________________________________________________________________________________
|:dl| |:downl| |:downloads| +
||:downl[oads]||
________________________________________________________________________________
Show progress of current downloads. Open the original Firefox download dialog
in a new tab. Here, downloads can be paused, canceled and resumed.
________________________________________________________________________________
section::Add-ons[extensions,add-ons]
|:exta| |:extadd| +
||:exta[dd] {file}||
________________________________________________________________________________
Install an extension. {file} is an extension XPInstall file (*.xpi).
________________________________________________________________________________
|:extde| |:extdelete| +
||:extde[lete] {extension}|| +
||:extde[lete]!||
________________________________________________________________________________
Uninstall an extension. {extension} is the extension's name. When [!] is given
all extensions are uninstalled.
________________________________________________________________________________
|:extd| |:extdisable| +
||:extd[isable] {extension}|| +
||:extd[isable]!||
________________________________________________________________________________
Disable an extension. {extension} is the extension's name. When [!] is given
all extensions are disabled.
________________________________________________________________________________
|:exte| |:extenable| +
||:exte[nable] {extension}|| +
||:exte[nable]!||
________________________________________________________________________________
Enable an extension. {extension} is the extension's name. When [!] is given all
extensions are enabled.
________________________________________________________________________________
|:extens| |:extensions| +
||:extens[ions]||
________________________________________________________________________________
List all installed extensions.
________________________________________________________________________________
|:exto| |:extoptions| +
|:extp| |:extpreferences| +
||:exto[ptions][!] {extension}|| +
||:extp[references][!] {extension}|| +
________________________________________________________________________________
Open the preferences dialog for an extension. If [!] is given, open a dialog,
otherwise open a buffer. See also 'newtab'.
________________________________________________________________________________
section::Sidebar[sidebar]
|:sbcl| |:sbclose| +
||:sbcl[ose]||
________________________________________________________________________________
Close the sidebar window.
________________________________________________________________________________
|:sbope| |:sbopen| |:sb| |:sbar| |:sideb| |:sidebar| +
||:sidebar {name}||
________________________________________________________________________________
Open the sidebar window. {name} is any of the menu items listed under the
standard Firefox View->Sidebar menu. Add-ons, Preferences and Downloads are
also available in the sidebar.
________________________________________________________________________________
section::Status{nbsp}line[status-line,status-bar]
The status line appears at the bottom of each window. The 'laststatus' option
can be used to specify when the status line appears.
The status line contains several fields that provide information about the
state of the current buffer. These are, in order:
* URL: The URL of the currently loaded page. While the page is loading progress
messages are also output to this field.
* History and bookmark status ([+-❤]): The position of the current page in
the tab's session history; + and - indicate that it's possible to move
backwards and forwards through the history respectively. ❤ indicates that
the current page is bookmarked.
* Tab index ([N/M]): N is the index of the currently selected tab and M is the
total number of tabs in the current window.
* Vertical scroll: The vertical scroll percentage of the current buffer. This
is a percentage or Top for 0% and Bot for 100%.
* Security: The security information button is displayed when appropriate as
per Firefox. The color of the status bar also changes to reflect the current
security status of the loaded page.
- black - the site's identity is unverified and the connection is unencrypted
- blue - the site's domain has been verified and the connection is encrypted
- green - the site's domain and owner have been fully verified via an
Extended Validation certificate and the connection is encrypted
* Extensions: Any extension buttons that would normally be installed to the
Firefox status bar are appended to the end of the status line.
section::Toolbars[toolbar]
|:tbs| |:tbshow| |:toolbars| |:toolbarshow| +
||:toolbarshow {name}||
________________________________________________________________________________
Shows the named toolbar.
________________________________________________________________________________
|:tbh| |:tbhide| |:toolbarh| |:toolbarhide| +
||:toolbarhide {name}||
________________________________________________________________________________
Hides the named toolbar.
________________________________________________________________________________
|:tbt| |:tbtoggle| |:toolbart| |:toolbartoggle| +
||:toolbartoggle {name}||
________________________________________________________________________________
Toggles the named toolbar.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,278 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="gui"
title="&appname; GUI"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h2 tag="gui">&appname;'s GUI</h2>
<p>
Although &appname; offers the most frequently used &hostapp; functionality via
Ex and Normal mode commands there may be times when directly accessing the GUI
is required. There are commands for accessing the menu system, standard dialogs
and the sidebar.
</p>
<h2 tag="menu">Menus</h2>
<item>
<tags>:emenu</tags>
<spec>:emenu <a>menu</a></spec>
<description>
<p>
Execute <a>menu</a> from the command line. This command provides command-line access
to all menu items available from the main &hostapp; menubar. <a>menu</a> is a
hierarchical path to the menu item with each submenu separated by a period.
E.g. <ex>:emenu File.Open File…</ex>
</p>
</description>
</item>
<h2 tag="dialogs">Dialogs</h2>
<item>
<tags>:addo :addons</tags>
<spec>:addo<oa>ns</oa></spec>
<description>
<p>
Show available &hostapp; Extensions and Themes.
You can add/remove/disable browser extensions from this dialog.
Be aware that not all &hostapp; extensions work, because &appname; overrides
some key bindings and changes &hostapp;'s GUI.
</p>
</description>
</item>
<item>
<tags>:dia :dialog</tags>
<spec>:dia<oa>log</oa> <oa>firefox-dialog</oa></spec>
<description>
<p>Open a &hostapp; dialog.</p>
<p>Available dialogs:</p>
<dl>
<dt>about</dt> <dd>About Mozilla &hostapp;;</dd>
<dt>addbookmark</dt> <dd>Add bookmark for the current page</dd>
<dt>addons</dt> <dd>Manage Add-ons</dd>
<dt>bookmarks</dt> <dd>List your bookmarks</dd>
<dt>checkupdates</dt> <dd>Check for updates</dd>
<dt>cleardata</dt> <dd>Clear private data</dd>
<dt>cookies</dt> <dd>List your cookies</dd>
<dt>console</dt> <dd>JavaScript console</dd>
<dt>customizetoolbar</dt><dd>Customize the Toolbar</dd>
<dt>dominspector</dt> <dd>DOM Inspector</dd>
<dt>downloads</dt> <dd>Manage Downloads</dd>
<dt>history</dt> <dd>List your history</dd>
<dt>import</dt> <dd>Import Preferences, Bookmarks, History, etc. from other browsers</dd>
<dt>openfile</dt> <dd>Open the file selector dialog</dd>
<dt>pageinfo</dt> <dd>Show information about the current page</dd>
<dt>pagesource</dt> <dd>View page source</dd>
<dt>places</dt> <dd>Places Organizer: Manage your bookmarks and history</dd>
<dt>preferences</dt> <dd>Show &hostapp; preferences dialog</dd>
<dt>printpreview</dt> <dd>Preview the page before printing</dd>
<dt>printsetup</dt> <dd>Setup the page size and orientation before printing</dd>
<dt>print</dt> <dd>Show print dialog</dd>
<dt>saveframe</dt> <dd>Save frame to disk</dd>
<dt>savepage</dt> <dd>Save page to disk</dd>
<dt>searchengines</dt> <dd>Manage installed search engines</dd>
<dt>selectionsource</dt> <dd>View selection source</dd>
</dl>
</description>
</item>
<item>
<tags>:dl :downl :downloads</tags>
<spec>:downl<oa>oads</oa></spec>
<description>
<p>
Show progress of current downloads. Open the original &hostapp; download dialog
in a new tab. Here, downloads can be paused, canceled and resumed.
</p>
</description>
</item>
<h2 tag="extensions add-ons">Add-ons</h2>
<item>
<tags>:exta :extadd</tags>
<spec>:exta<oa>dd</oa> <a>file</a></spec>
<description>
<p>Install an extension. <a>file</a> is an extension XPInstall file (*.xpi).</p>
</description>
</item>
<item>
<tags>:extde :extdelete</tags>
<spec>:extde<oa>lete</oa> <a>extension</a></spec>
<spec>:extde<oa>lete</oa>!</spec>
<description>
<p>
Uninstall an extension. <a>extension</a> is the extension's name. When <oa>!</oa> is given
all extensions are uninstalled.
</p>
</description>
</item>
<item>
<tags>:extd :extdisable</tags>
<spec>:extd<oa>isable</oa> <a>extension</a></spec>
<spec>:extd<oa>isable</oa>!</spec>
<description>
<p>
Disable an extension. <a>extension</a> is the extension's name. When <oa>!</oa> is given
all extensions are disabled.
</p>
</description>
</item>
<item>
<tags>:exte :extenable</tags>
<spec>:exte<oa>nable</oa> <a>extension</a></spec>
<spec>:exte<oa>nable</oa>!</spec>
<description>
<p>
Enable an extension. <a>extension</a> is the extension's name. When <oa>!</oa> is given all
extensions are enabled.
</p>
</description>
</item>
<item>
<tags>:extens :extensions</tags>
<spec>:extens<oa>ions</oa></spec>
<description>
<p>List all installed extensions.</p>
</description>
</item>
<item>
<tags>:exto :extoptions</tags>
<tags>:extp :extpreferences</tags>
<spec>:exto<oa>ptions</oa><oa>!</oa> <a>extension</a></spec>
<spec>:extp<oa>references</oa><oa>!</oa> <a>extension</a></spec>
<description>
<p>
Open the preferences dialog for an extension. If <oa>!</oa> is given, open a dialog,
otherwise open a buffer. See also <o>newtab</o>.
</p>
</description>
</item>
<h2 tag="sidebar">Sidebar</h2>
<item>
<tags>:sbcl :sbclose</tags>
<spec>:sbcl<oa>ose</oa></spec>
<description>
<p>Close the sidebar window.</p>
</description>
</item>
<item>
<tags>:sbope :sbopen :sb :sbar :sideb :sidebar</tags>
<spec>:sidebar <a>name</a></spec>
<description>
<p>
Open the sidebar window. <a>name</a> is any of the menu items listed under the
standard &hostapp; View->Sidebar menu. Add-ons, Preferences and Downloads are
also available in the sidebar.
</p>
</description>
</item>
<h2 tag="status-line status-bar">Status line</h2>
<p>
The status line appears at the bottom of each window. The <o>laststatus</o>
option can be used to specify when the status line appears.
</p>
<p>
The status line contains several fields that provide information about the
state of the current buffer. These are, in order:
</p>
<ul>
<li>
URL: The URL of the currently loaded page. While the page is loading
progress messages are also output to this field.
</li>
<li>
History and bookmark status ([+-❤]): The position of the current page in
the tab's session history; + and - indicate that it's possible to move
backwards and forwards through the history respectively. ❤ indicates that
the current page is bookmarked.
</li>
<li>
Tab index ([N/M]): N is the index of the currently selected tab and M is
the total number of tabs in the current window.
</li>
<li>
Vertical scroll: The vertical scroll percentage of the current buffer.
This is a percentage or Top for 0% and Bot for 100%.
</li>
<li>
Security: The security information button is displayed when appropriate
as per &hostapp;. The color of the status bar also changes to reflect the
current security status of the loaded page.
<ul>
<li>black the site's identity is unverified and the connection is unencrypted</li>
<li>blue the site's domain has been verified and the connection is encrypted</li>
<li>green the site's domain and owner have been fully verified via an</li>
</ul>
Extended Validation certificate and the connection is encrypted
</li>
<li>
Extensions: Any extension buttons that would normally be installed to the
&hostapp; status bar are appended to the end of the status line.
</li>
</ul>
<h2 tag="toolbar">Toolbars</h2>
<item>
<tags>:tbs :tbshow :toolbars :toolbarshow</tags>
<spec>:toolbarshow <a>name</a></spec>
<description>
<p>Shows the named toolbar.</p>
</description>
</item>
<item>
<tags>:tbh :tbhide :toolbarh :toolbarhide</tags>
<spec>:toolbarhide <a>name</a></spec>
<description>
<p>Hides the named toolbar.</p>
</description>
</item>
<item>
<tags>:tbt :tbtoggle :toolbart :toolbartoggle</tags>
<spec>:toolbartoggle <a>name</a></spec>
<description>
<p>Toggles the named toolbar.</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,76 +0,0 @@
heading::Hints[quick-hints,hints]
Hints are the way in which Vimperator allows you to follow links on a page. By
providing each link with a suitable hint, you can access all links with a
similar amount of minimal effort. This contrasts strongly with the traditional
approaches offered by the mouse, in which you must first find and then aim for
the link you would like, and by using repeated tabbing which quickly becomes
tedious unless you always visit the first link on a page.
|f| +
||#f#{hint}||
________________________________________________________________________________
Start QuickHint mode. In QuickHint mode, every hintable item (according to the
'hinttags' XPath query) is assigned a unique number. You can either type
this number or type part of the link text as specified by the 'hintmatching'
option, and it is followed as soon as it can be uniquely identified. Often it
can be useful to combine these techniques to narrow down results with some
letters, and then typing a single digit to make the match unique. Pressing
[m]<Leader>[m] (defaults to [c]:let mapleader = "\"[c]) toggles "escape-mode",
where numbers are treated as normal text. + [m]<Esc>[m] stops this mode at any
time.
________________________________________________________________________________
|F| +
||#F#{hint}||
________________________________________________________________________________
Start QuickHint mode, but open link in a new tab. Like normal QuickHint
mode (activated with [m]f[m]) but opens the link in a new tab. The new
tab will be loaded in background according to the
\'browser.tabs.loadInBackground' Firefox preference.
________________________________________________________________________________
|extended-hints| +
|;| +
||#;#{mode}{empty}{hint}||
________________________________________________________________________________
Start an extended hint mode. ExtendedHint mode is useful for performing
operations on hinted elements other than the default left mouse click. For
example, you can yank link locations, open them in a new window or save images.
If you want to yank the location of hint [a]24[a], press [m];y[m] to start this
hint mode. Then press [a]24[a] to copy the hint location.
{mode} can be one of: +
* |;;| [m];[m] to focus a link and hover it with the mouse
* |;?| [m]?[m] to show information about the element (incomplete)
* |;s| [m]s[m] to save its destination
* |;a| [m]a[m] to save its destination (prompting for save location)
* |;f| [m]f[m] to focus a frame
* |;o| [m]o[m] to open its location in the current tab
* |;t| [m]t[m] to open its location in a new tab
* |;b| [m]b[m] to open its location in a new background tab
* |;w| [m]w[m] to open its destination in a new window
* |;F| [m]F[m] to follow a sequence of [m]<CR>[m]-delimited hints in background tabs
* |;O| [m]O[m] to generate an [c]:open[c] with hint's URL (like [m]O[m])
* |;T| [m]T[m] to generate a [c]:tabopen[c] with hint's URL (like [m]T[m])
* |;W| [m]W[m] to generate a [c]:winopen[c] with hint's URL
* |;v| [m]v[m] to view its destination source
* |;V| [m]V[m] to view its destination source in the external editor
* |;y| [m]y[m] to yank its destination location
* |;Y| [m]Y[m] to yank its text description
* |;c| [m]c[m] to open its context menu
* |;i| [m]i[m] to open an image
* |;I| [m]I[m] to open an image in a new tab.
Depending on the value of 'complete', you can get a list of extended hint
modes by pressing [m]<Tab>[m] from the [m];[m] prompt.
Hintable elements for all extended hint modes can be set in the
'extendedhinttags' XPath string.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="hints"
title="&appname; Hints"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="quick-hints hints">Hints</h1>
Hints are the way in which Vimperator allows you to follow links on a page. By
providing each link with a suitable hint, you can access all links with a
similar amount of minimal effort. This contrasts strongly with the traditional
approaches offered by the mouse, in which you must first find and then aim for
the link you would like, and by using repeated tabbing which quickly becomes
tedious unless you always visit the first link on a page.
<item>
<tags>f</tags>
<spec>f<a>hint</a></spec>
<description>
<p>
Start QuickHint mode. In QuickHint mode, every hintable item
(according to the <o>hinttags</o> XPath query) is assigned a
unique number. You can either type this number or type part of the
link text as specified by the <o>hintmatching</o> option, and it
is followed as soon as it can be uniquely identified. Often it can
be useful to combine these techniques to narrow down results with
some letters, and then typing a single digit to make the match
unique. Pressing <k name="Leader"/> (defaults to
<ex>:let mapleader = "\"</ex>) toggles "escape-mode", where numbers are
treated as normal text. <k name="Esc"/> stops this mode at any
time.
</p>
</description>
</item>
<item>
<tags>F</tags>
<spec>F<a>hint</a></spec>
<description>
<p>
Start QuickHint mode, but open link in a new tab. Like normal QuickHint
mode (activated with <k>f</k>) but opens the link in a new tab. The new
tab will be loaded in background according to the
<str>browser.tabs.loadInBackground</str> Firefox preference.
</p>
</description>
</item>
<tags>extended-hints</tags>
<item>
<tags>;</tags>
<spec>;<a>mode</a><a>empty</a><a>hint</a></spec>
<description>
<p>
Start an extended hint mode. ExtendedHint mode is useful for
performing operations on hinted elements other than the default
left mouse click. For example, you can yank link locations, open
them in a new window or save images. If you want to yank the
location of hint <em>24</em>, press <k>;y</k> to start this hint
mode. Then press <em>24</em> to copy the hint location.
</p>
<p><a>mode</a> can be one of:</p>
<ul>
<li><tag>;;</tag> <em>;</em> to focus a link and hover it with the mouse</li>
<li><tag>;?</tag> <em>?</em> to show information about the element (incomplete)</li>
<li><tag>;s</tag> <em>s</em> to save its destination</li>
<li><tag>;a</tag> <em>a</em> to save its destination (prompting for save location)</li>
<li><tag>;f</tag> <em>f</em> to focus a frame</li>
<li><tag>;o</tag> <em>o</em> to open its location in the current tab</li>
<li><tag>;t</tag> <em>t</em> to open its location in a new tab</li>
<li><tag>;b</tag> <em>b</em> to open its location in a new background tab</li>
<li><tag>;w</tag> <em>w</em> to open its destination in a new window</li>
<li><tag>;F</tag> <em>F</em> to follow a sequence of <k name="CR"/>-delimited hints in background tabs</li>
<li><tag>;O</tag> <em>O</em> to generate an <ex>:open</ex> with hint's URL (like <k>O</k>)</li>
<li><tag>;T</tag> <em>T</em> to generate a <ex>:tabopen</ex> with hint's URL (like <k>T</k>)</li>
<li><tag>;W</tag> <em>W</em> to generate a <ex>:winopen</ex> with hint's URL</li>
<li><tag>;v</tag> <em>v</em> to view its destination source</li>
<li><tag>;V</tag> <em>V</em> to view its destination source in the external editor</li>
<li><tag>;y</tag> <em>y</em> to yank its destination location</li>
<li><tag>;Y</tag> <em>Y</em> to yank its text description</li>
<li><tag>;c</tag> <em>c</em> to open its context menu</li>
<li><tag>;i</tag> <em>i</em> to open an image</li>
<li><tag>;I</tag> <em>I</em> to open an image in a new tab.</li>
</ul>
<p>
Depending on the value of <o>complete</o>, you can get a list of
extended hint modes by pressing <k name="Tab"/> from the <k>;</k>
prompt.
</p>
<p>
Hintable elements for all extended hint modes can be set in the
<o>extendedhinttags</o> XPath string.
</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,358 +0,0 @@
heading::Index[index]
This file contains a list of all available commands, mappings and options.
section::Insert{nbsp}mode[insert-index]
||[m]<C-i>[m]|| Launch the external editor +
||[m]<C-]>[m]|| Expand an Insert-mode abbreviation +
section::Normal{nbsp}mode[normal-index]
||[m]<C-^>[m]|| Select the alternate tab or the [count]th tab +
||[m]<C-a>[m]|| Increment last number in URL +
||[m]<C-b>[m]|| Scroll up a full page +
||[m]<C-c>[m]|| Stop loading the current web page +
||[m]<C-d>[m]|| Scroll window downwards in the buffer +
||[m]<C-f>[m]|| Scroll down a full page +
||[m]<C-g>[m]|| Print the current file name +
||[m]<C-i>[m]|| Go to a newer position in the jump list +
||[m]<C-l>[m]|| Redraw the screen +
||[m]<C-o>[m]|| Go to an older position in the jump list +
||[m]<C-u>[m]|| Scroll window upwards in the buffer +
||[m]<C-v>[m]|| Pass through next key +
||[m]<C-x>[m]|| Decrement last number in URL +
||[m]<C-z>[m]|| Temporarily ignore all Vimperator key bindings +
||[m]<Esc>[m]|| Focus content +
||[m]<F1>[m]|| Open help window +
||[m]<S-Tab>[m]|| Rewind keyboard focus +
||[m]<Tab>[m]|| Advance keyboard focus +
||[m]0[m]|| Scroll to the absolute left of the document +
||[m]$[m]|| Scroll to the absolute right of the document +
||[m]A[m]|| Toggle bookmarked state of current URL +
||[m]B[m]|| Show buffer list +
||[m]D[m]|| Delete current buffer, focus tab to the left +
||[m]F[m]|| Start QuickHint mode, but open link in a new tab +
||[m]G[m]|| Go to the end of the document +
||[m]H[m]|| Go back in the browser history +
||[m]L[m]|| Go forward in the browser history +
||[m]M[m]|| Add new QuickMark for current URL +
||[m]N[m]|| Find previous +
||[m]O[m]|| Open one or more URLs, based on current location +
||[m]P[m]|| Open (put) a URL based on the current clipboard contents in a new buffer +
||[m]R[m]|| Reload while skipping the cache +
||[m]T[m]|| Open one or more URLs in a new tab, based on current location +
||[m]Y[m]|| Copy selected text or current word +
||[m]W[m]|| Open one or more URLs in a new window, based on current location +
||[m]a[m]|| Open a prompt to bookmark the current URL +
||[m]b[m]|| Open a prompt to switch buffers +
||[m]d[m]|| Delete current buffer +
||[m]f[m]|| Start QuickHint mode +
||[m]h[m]|| Scroll document to the left +
||[m]i[m]|| Start Caret mode +
||[m]j[m]|| Scroll document down +
||[m]k[m]|| Scroll document up +
||[m]l[m]|| Scroll document to the right +
||[m]m[m]|| Set mark at the cursor position +
||[m]n[m]|| Find next +
||[m]o[m]|| Open one or more URLs +
||[m]p[m]|| Open (put) a URL based on the current clipboard contents in the current buffer +
||[m]q[m]|| Record a key sequence into a macro +
||[m]r[m]|| Reload the current web page +
||[m]t[m]|| Open one or more URLs in a new tab +
||[m]u[m]|| Undo closing of a tab +
||[m]y[m]|| Yank current location to the clipboard +
||[m]w[m]|| Open one or more URLs in a new window +
||[m];[m]|| Start an extended hint mode +
||[m]:[m]|| Enter Command-line mode +
||[m]~[m]|| Open home directory +
||[m]\[m]|| Toggle between rendered and source view +
||[m]/[m]|| Search forward for a pattern +
||[m]?[m]|| Search backwards for a pattern +
||[m]*[m]|| Find word under cursor +
||[m]#[m]|| Find word under cursor backwards +
||[m]N%[m]|| Scroll to {count} percent of the document +
||[m]'[m]|| Jump to the mark +
||[m]@[m]|| Play a macro +
||[m].[m]|| Repeat the last keyboard command +
||[m]@:[m]|| Repeat the last Ex command [count] times +
||[m]]f[m]|| Focus next frame +
||[m][f[m]|| Focus previous frame +
||[m]]] [m]|| Follow the link labeled \'next' or \'>' if it exists +
||[m][[ [m]|| Follow the link labeled \'prev', \'previous' or \'<' if it exists +
||[m]g$[m]|| Go to the last tab +
||[m]g<[m]|| Redisplay the last command output +
||[m]g0[m]|| Go to the first tab +
||[m]g<C-g>[m]|| Print file information +
||[m]gB[m]|| Repeat last [c]:buffer[!][c] command in reverse direction +
||[m]gF[m]|| View source with an external editor +
||[m]gH[m]|| Open homepage in a new tab +
||[m]gP[m]|| Open (put) a URL based on the current clipboard contents in a new buffer +
||[m]gT[m]|| Go to previous tab +
||[m]gU[m]|| Go to the root of the website +
||[m]gb[m]|| Repeat last [c]:buffer[!][c] command +
||[m]gf[m]|| View source +
||[m]gg[m]|| Go to the top of the document +
||[m]gh[m]|| Open homepage +
||[m]gi[m]|| Focus last used input field +
||[m]gn[m]|| Jump to a QuickMark in a new tab +
||[m]go[m]|| Jump to a QuickMark +
||[m]gt[m]|| Go to the next tab +
||[m]gu[m]|| Go to parent directory +
||[m]ZQ[m]|| Quit and don't save the session +
||[m]ZZ[m]|| Quit and save the session +
||[m]zI[m]|| Enlarge full zoom of current web page +
||[m]zM[m]|| Enlarge full zoom of current web page by a larger amount +
||[m]zO[m]|| Reduce full zoom of current web page +
||[m]zR[m]|| Reduce full zoom of current web page by a larger amount +
||[m]zZ[m]|| Set full zoom value of current web page +
||[m]zi[m]|| Enlarge text zoom of current web page +
||[m]zm[m]|| Enlarge text zoom of current web page by a larger amount +
||[m]zo[m]|| Reduce text zoom of current web page +
||[m]zr[m]|| Reduce text zoom of current web page by a larger amount +
||[m]zz[m]|| Set text zoom value of current web page +
section::Command-line{nbsp}editing[ex-edit-index]
||[m]<C-c>[m]|| Quit Command-line mode without executing +
||[m]<C-]>[m]|| Expand a command-line abbreviation +
||[m]<Up>[m]|| Recall the previous command line from the history list which matches the current command line +
||[m]<Down>[m]|| Recall the next command line from the history list which matches the current command line +
||[m]<Tab>[m]|| Complete the word in front of the cursor according to the behavior specified in 'wildmode' +
||[m]<S-Tab>[m]|| Complete the previous full match when 'wildmode' contains "full" +
section::Ex{nbsp}commands[ex-cmd-index,:index]
||[c]:![c]|| Run a command +
||[c]:!![c]|| Repeat last [c]:!{cmd}[c] +
||[c]:abbreviate[c]|| Abbreviate a key sequence +
||[c]:abclear[c]|| Remove all abbreviations +
||[c]:addons[c]|| Manage available Extensions and Themes +
||[c]:autocmd[c]|| Execute commands automatically on events +
||[c]:back[c]|| Go back in the browser history +
||[c]:bdelete[c]|| Delete current buffer +
||[c]:beep[c]|| Play a system beep +
||[c]:bmark[c]|| Add a bookmark +
||[c]:bmarks[c]|| List or open multiple bookmarks +
||[c]:buffer[c]|| Switch to a buffer +
||[c]:buffers[c]|| Show a list of all buffers +
||[c]:cabbrev[c]|| Abbreviate a key sequence in Command-line mode +
||[c]:cabclear[c]|| Remove all abbreviations in Command-line mode +
||[c]:cd[c]|| Change the current directory +
||[c]:cmap[c]|| Map a key sequence in Command-line mode +
||[c]:cmapclear[c]|| Remove all mappings in Command-line mode +
||[c]:cnoremap[c]|| Map a key sequence without remapping keys in Command-line mode +
||[c]:colorscheme[c]|| Load a color scheme +
||[c]:comclear[c]|| Delete all user-defined commands +
||[c]:command[c]|| List and define commands +
||[c]:cunabbrev[c]|| Remove an abbreviation in Command-line mode +
||[c]:cunmap[c]|| Remove a mapping in Command-line mode +
||[c]:delbmarks[c]|| Delete a bookmark +
||[c]:delcommand[c]|| Delete the specified user-defined command +
||[c]:delmacros[c]|| Delete macros +
||[c]:delmarks[c]|| Delete the specified marks +
||[c]:delqmarks[c]|| Delete the specified QuickMarks +
||[c]:delstyle[c]|| Delete any matching styles +
||[c]:dialog[c]|| Open a Firefox dialog +
||[c]:doautoall[c]|| Apply the autocommands matching the specified URL to all buffers +
||[c]:doautocmd[c]|| Apply the autocommands matching the specified URL to the current buffer +
||[c]:downloads[c]|| Show progress of current downloads +
||[c]:echo[c]|| Echo the expression +
||[c]:echoerr[c]|| Echo the expression as an error message +
||[c]:echomsg[c]|| Echo the expression as an informational message +
||[c]:emenu[c]|| Execute the specified menu item from the command line +
||[c]:execute[c]|| Execute the argument as an Ex command +
||[c]:extadd[c]|| Install an extension +
||[c]:extdelete[c]|| Uninstall an extension +
||[c]:extdisable[c]|| Disable an extension +
||[c]:extenable[c]|| Enable an extension +
||[c]:extensions[c]|| List all installed extensions +
||[c]:extoptions[c]|| Open an extension's preference dialog +
||[c]:exusage[c]|| List all Ex commands with a short description +
||[c]:finish[c]|| Stop sourcing a script file +
||[c]:forward[c]|| Go forward in the browser history +
||[c]:frameonly[c]|| Show only the current frame's page +
||[c]:hardcopy[c]|| Print current document +
||[c]:help[c]|| Open the help page +
||[c]:helpall[c]|| Open the single unchunked help page +
||[c]:highlight[c]|| Style Vimperator +
||[c]:history[c]|| Show recently visited URLs +
||[c]:iabbrev[c]|| Abbreviate a key sequence in Insert mode +
||[c]:iabclear[c]|| Remove all abbreviations in Insert mode +
||[c]:imap[c]|| Map a key sequence in Insert mode +
||[c]:imapclear[c]|| Remove all mappings in Insert mode +
||[c]:inoremap[c]|| Map a key sequence without remapping keys in Insert mode +
||[c]:iunabbrev[c]|| Remove an abbreviation in Insert mode +
||[c]:iunmap[c]|| Remove a mapping in Insert mode +
||[c]:javascript[c]|| Run a JavaScript command through eval() +
||[c]:jumps[c]|| Show jumplist +
||[c]:keepalt[c]|| Execute a command without changing the current alternate buffer +
||[c]:let[c]|| Set or list a variable +
||[c]:loadplugins[c]|| Immediately load all unloaded plugins +
||[c]:macros[c]|| List all macros +
||[c]:map[c]|| Map a key sequence +
||[c]:mapclear[c]|| Remove all mappings +
||[c]:mark[c]|| Mark current location within the web page +
||[c]:marks[c]|| Show all location marks of current web page +
||[c]:messages[c]|| Display previously given messages +
||[c]:messclear[c]|| Clear the message history +
||[c]:mkvimperatorrc[c]|| Write current key mappings and changed options to the config file +
||[c]:nmap[c]|| Map a key sequence in Normal mode +
||[c]:nmapclear[c]|| Remove all mappings in Normal mode +
||[c]:nnoremap[c]|| Map a key sequence without remapping keys in Normal mode +
||[c]:nohlsearch[c]|| Remove the search highlighting +
||[c]:noremap[c]|| Map a key sequence without remapping keys +
||[c]:normal[c]|| Execute Normal mode commands +
||[c]:nunmap[c]|| Remove a mapping in Normal mode +
||[c]:open[c]|| Open one or more URLs in the current tab +
||[c]:optionusage[c]|| List all options with a short description +
||[c]:pageinfo[c]|| Show various page information +
||[c]:pagestyle[c]|| Select the author style sheet to apply +
||[c]:play[c]|| Replay a recorded macro +
||[c]:preferences[c]|| Show Firefox preferences dialog +
||[c]:pwd[c]|| Print the current directory name +
||[c]:qmark[c]|| Mark a URL with a letter for quick access +
||[c]:qmarks[c]|| Show all QuickMarks +
||[c]:quit[c]|| Quit current tab +
||[c]:quitall[c]|| Quit Vimperator +
||[c]:redraw[c]|| Redraw the screen +
||[c]:reload[c]|| Reload the current web page +
||[c]:reloadall[c]|| Reload all tab pages +
||[c]:restart[c]|| Force the browser to restart +
||[c]:runtime[c]|| Source the specified file from each directory in 'runtimepath' +
||[c]:sanitize[c]|| Clear private data +
||[c]:saveas[c]|| Save current document to disk +
||[c]:sbclose[c]|| Close the sidebar window +
||[c]:scriptnames[c]|| List all sourced script names +
||[c]:set[c]|| Set an option +
||[c]:setglobal[c]|| Set global option +
||[c]:setlocal[c]|| Set local option +
||[c]:sidebar[c]|| Open the sidebar window +
||[c]:silent[c]|| Execute a command silently +
||[c]:source[c]|| Read Ex commands from a file +
||[c]:stop[c]|| Stop loading the current web page +
||[c]:stopall[c]|| Stop loading all tab pages +
||[c]:style[c]|| Style Vimperator and web sites +
||[c]:styledisable[c]|| Disable a user style sheet +
||[c]:styleenable[c]|| Enable a user style sheet +
||[c]:styletoggle[c]|| Toggle a user style sheet +
||[c]:tab[c]|| Execute a command and tell it to output in a new tab +
||[c]:tabattach[c]|| Attach the current tab to another window +
||[c]:tabdetach[c]|| Detach current tab to its own window +
||[c]:tabdo[c]|| Execute a command in each tab +
||[c]:tabduplicate[c]|| Duplicate current tab +
||[c]:tablast[c]|| Switch to the last tab +
||[c]:tabmove[c]|| Move the current tab after tab N +
||[c]:tabnext[c]|| Switch to the next or [count]th tab +
||[c]:tabonly[c]|| Close all other tabs +
||[c]:tabopen[c]|| Open one or more URLs in a new tab +
||[c]:tabprevious[c]|| Switch to the previous tab or go [count] tabs back +
||[c]:tabrewind[c]|| Switch to the first tab +
||[c]:time[c]|| Profile a piece of code or run a command multiple times +
||[c]:toolbarhide[c]|| Hide the named toolbar +
||[c]:toolbarshow[c]|| Show the named toolbar +
||[c]:toolbartoggle[c]|| Toggle the named toolbar +
||[c]:unabbreviate[c]|| Remove an abbreviation +
||[c]:undo[c]|| Undo closing of a tab +
||[c]:undoall[c]|| Undo closing of all closed tabs +
||[c]:unlet[c]|| Delete a variable +
||[c]:unmap[c]|| Remove a mapping +
||[c]:verbose[c]|| Execute a command with 'verbose' set +
||[c]:version[c]|| Show version information +
||[c]:viewsource[c]|| View source code of current document +
||[c]:viusage[c]|| List all mappings with a short description +
||[c]:vmap[c]|| Map a key sequence in Visual mode +
||[c]:vmapclear[c]|| Remove all mappings in Visual mode +
||[c]:vnoremap[c]|| Map a key sequence without remapping keys in Visual mode +
||[c]:vunmap[c]|| Remove a mapping in Visual mode +
||[c]:winclose[c]|| Close window +
||[c]:window[c]|| Execute a command and tell it to output in a new window +
||[c]:winonly[c]|| Close all other windows +
||[c]:winopen[c]|| Open one or more URLs in a new window +
||[c]:wqall[c]|| Save the session and quit +
||[c]:zoom[c]|| Set zoom value of current web page +
section::Options[option-index]
||'activate'|| Define when tabs are automatically activated +
||'cdpath'|| List of directories searched when executing [c]:cd[c] +
||'complete'|| Items which are completed at the [c]:open[c] prompts +
||'defsearch'|| Set the default search engine +
||'editor'|| Set the external text editor +
||'encoding'|| Changes the character encoding of the current buffer +
||'errorbells'|| Ring the bell when an error message is displayed +
||'eventignore'|| List of autocommand event names which should be ignored +
||'exrc'|| Allow reading of an RC file in the current directory +
||'extendedhinttags'|| XPath string of hintable elements activated by [m];[m] +
||'fileencoding'|| Changes the character encoding that Vimperator uses to read and write files +
||'focuscontent'|| Try to stay in Normal mode after loading a web page +
||'followhints'|| Change the behaviour of [m]<Return>[m] in Hints mode +
||'fullscreen'|| Show the current window fullscreen +
||'guioptions'|| Show or hide certain GUI elements like the menu or toolbar +
||'helpfile'|| Name of the main help file +
||'hintinputs'|| How text input fields are hinted +
||'hintmatching'|| How links are matched +
||'hinttags'|| XPath string of hintable elements activated by [m]f[m] and [m]F[m] +
||'hinttimeout'|| Timeout before automatically following a non-unique numerical hint +
||'history'|| Number of Ex commands and search patterns to store in the command-line history +
||'hlsearch'|| Highlight previous search pattern matches +
||'ignorecase'|| Ignore case in search patterns +
||'incsearch'|| Show where the search pattern matches as it is typed +
||'insertmode'|| Use Insert mode as the default for text areas +
||'laststatus'|| Show the status line +
||'linksearch'|| Limit the search to hyperlink text +
||'loadplugins'|| Load plugin scripts when starting up +
||'maxitems'|| Maximum number of items to display at once in a listing +
||'messages'|| Number of messages to store in the message history +
||'more'|| Pause the message list window when more than one screen of listings is displayed +
||'newtab'|| Define which commands should output in a new tab by default +
||'nextpattern'|| Patterns to use when guessing the \'next' page in a document sequence +
||'online'|| Set the \'work offline' option +
||'pageinfo'|| Desired info in the [c]:pageinfo[c] output +
||'popups'|| Where to show requested popup windows +
||'previouspattern'|| Patterns to use when guessing the \'previous' page in a document sequence +
||'private'|| Set the 'private browsing' option +
||'runtimepath'|| List of directories searched for runtime files +
||'sanitizeitems'|| The default list of private items to sanitize +
||'sanitizetimespan'|| The default sanitizer time span +
||'scroll'|| Number of lines to scroll with [m]<C-u>[m] and [m]<C-d>[m] commands +
||'shell'|| Shell to use for executing [c]:![c] and [c]:run[c] commands +
||'shellcmdflag'|| Flag passed to shell when executing [c]:![c] and [c]:run[c] commands +
||'showmode'|| Show the current mode in the command line +
||'showstatuslinks'|| Show the destination of the link under the cursor in the status bar +
||'showtabline'|| Control when to show the tab bar of opened web pages +
||'smartcase'|| Override the 'ignorecase' option if the pattern contains uppercase characters +
||'suggestengines'|| Engine Alias which has a feature of suggest +
||'titlestring'|| Change the title of the window +
||'urlseparator'|| Set the separator regex used to separate multiple URL args +
||'usermode'|| Show current website with a minimal style sheet to make it easily accessible +
||'verbose'|| Define which info messages are displayed +
||'visualbell'|| Use visual bell instead of beeping on errors +
||'wildcase'|| Completion case matching mode +
||'wildignore'|| List of file patterns to ignore when completing files +
||'wildmode'|| Define how command-line completion works +
||'wildoptions'|| Change how command-line completion is done +
||'wordseparators'|| How words are split for hintmatching +
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,447 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="index"
title="&appname; Index"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="index">Index</h1>
This file contains a list of all available commands, mappings and options.
<h2 tag="insert-index">Insert mode</h2>
<dl>
<dt><k name="C-i"/></dt> <dd>Launch the external editor</dd>
<dt><k name="C-]"/></dt> <dd>Expand an Insert-mode abbreviation</dd>
</dl>
<h2 tag="normal-index">Normal mode</h2>
<dl>
<dt><k name="C-^"/></dt> <dd>Select the alternate tab or the <oa>count</oa>th tab</dd>
<dt><k name="C-a"/></dt> <dd>Increment last number in URL</dd>
<dt><k name="C-b"/></dt> <dd>Scroll up a full page</dd>
<dt><k name="C-c"/></dt> <dd>Stop loading the current web page</dd>
<dt><k name="C-d"/></dt> <dd>Scroll window downwards in the buffer</dd>
<dt><k name="C-f"/></dt> <dd>Scroll down a full page</dd>
<dt><k name="C-g"/></dt> <dd>Print the current file name</dd>
<dt><k name="C-i"/></dt> <dd>Go to a newer position in the jump list</dd>
<dt><k name="C-l"/></dt> <dd>Redraw the screen</dd>
<dt><k name="C-o"/></dt> <dd>Go to an older position in the jump list</dd>
<dt><k name="C-u"/></dt> <dd>Scroll window upwards in the buffer</dd>
<dt><k name="C-v"/></dt> <dd>Pass through next key</dd>
<dt><k name="C-x"/></dt> <dd>Decrement last number in URL</dd>
<dt><k name="C-z"/></dt> <dd>Temporarily ignore all &appname; key bindings</dd>
</dl>
<dl>
<dt><k name="Esc"/></dt> <dd>Focus content</dd>
</dl>
<dl>
<dt><k name="F1"/></dt> <dd>Open help window</dd>
</dl>
<dl>
<dt><k name="S-Tab"/></dt> <dd>Rewind keyboard focus</dd>
<dt><k name="Tab"/></dt> <dd>Advance keyboard focus</dd>
</dl>
<dl>
<dt><k>0</k></dt> <dd>Scroll to the absolute left of the document</dd>
<dt><k>$</k></dt> <dd>Scroll to the absolute right of the document</dd>
</dl>
<dl>
<dt><k>A</k></dt> <dd>Toggle bookmarked state of current URL</dd>
<dt><k>B</k></dt> <dd>Show buffer list</dd>
<dt><k>D</k></dt> <dd>Delete current buffer, focus tab to the left</dd>
<dt><k>F</k></dt> <dd>Start QuickHint mode, but open link in a new tab</dd>
<dt><k>G</k></dt> <dd>Go to the end of the document</dd>
<dt><k>H</k></dt> <dd>Go back in the browser history</dd>
<dt><k>L</k></dt> <dd>Go forward in the browser history</dd>
<dt><k>M</k></dt> <dd>Add new QuickMark for current URL</dd>
<dt><k>N</k></dt> <dd>Find previous</dd>
<dt><k>O</k></dt> <dd>Open one or more URLs, based on current location</dd>
<dt><k>P</k></dt> <dd>Open (put) a URL based on the current clipboard contents in a new buffer</dd>
<dt><k>R</k></dt> <dd>Reload while skipping the cache</dd>
<dt><k>T</k></dt> <dd>Open one or more URLs in a new tab, based on current location</dd>
<dt><k>Y</k></dt> <dd>Copy selected text or current word</dd>
<dt><k>W</k></dt> <dd>Open one or more URLs in a new window, based on current location</dd>
</dl>
<dl>
<dt><k>a</k></dt> <dd>Open a prompt to bookmark the current URL</dd>
<dt><k>b</k></dt> <dd>Open a prompt to switch buffers</dd>
<dt><k>d</k></dt> <dd>Delete current buffer</dd>
<dt><k>f</k></dt> <dd>Start QuickHint mode</dd>
<dt><k>h</k></dt> <dd>Scroll document to the left</dd>
<dt><k>i</k></dt> <dd>Start Caret mode</dd>
<dt><k>j</k></dt> <dd>Scroll document down</dd>
<dt><k>k</k></dt> <dd>Scroll document up</dd>
<dt><k>l</k></dt> <dd>Scroll document to the right</dd>
<dt><k>m</k></dt> <dd>Set mark at the cursor position</dd>
<dt><k>n</k></dt> <dd>Find next</dd>
<dt><k>o</k></dt> <dd>Open one or more URLs</dd>
<dt><k>p</k></dt> <dd>Open (put) a URL based on the current clipboard contents in the current buffer</dd>
<dt><k>q</k></dt> <dd>Record a key sequence into a macro</dd>
<dt><k>r</k></dt> <dd>Reload the current web page</dd>
<dt><k>t</k></dt> <dd>Open one or more URLs in a new tab</dd>
<dt><k>u</k></dt> <dd>Undo closing of a tab</dd>
<dt><k>y</k></dt> <dd>Yank current location to the clipboard</dd>
<dt><k>w</k></dt> <dd>Open one or more URLs in a new window</dd>
</dl>
<dl>
<dt><k>;</k></dt> <dd>Start an extended hint mode</dd>
</dl>
<dl>
<dt><k>:</k></dt> <dd>Enter Command-line mode</dd>
</dl>
<dl>
<dt><k>~</k></dt> <dd>Open home directory</dd>
</dl>
<dl>
<dt><k>\</k></dt> <dd>Toggle between rendered and source view</dd>
</dl>
<dl>
<dt><k>/</k></dt> <dd>Search forward for a pattern</dd>
<dt><k>?</k></dt> <dd>Search backwards for a pattern</dd>
<dt><k>*</k></dt> <dd>Find word under cursor</dd>
<dt><k>#</k></dt> <dd>Find word under cursor backwards</dd>
</dl>
<dl>
<dt><k>N%</k></dt> <dd>Scroll to <a>count</a> percent of the document</dd>
</dl>
<dl>
<dt><k>'</k></dt> <dd>Jump to the mark</dd>
</dl>
<dl>
<dt><k>@</k></dt> <dd>Play a macro</dd>
</dl>
<dl>
<dt><k>.</k></dt> <dd>Repeat the last keyboard command</dd>
<dt><k>@:</k></dt> <dd>Repeat the last Ex command <oa>count</oa> times</dd>
</dl>
<dl>
<dt><k>]f</k></dt> <dd>Focus next frame</dd>
<dt><k>[f</k></dt> <dd>Focus previous frame</dd>
<dt><k>]] </k></dt> <dd>Follow the link labeled 'next' or '>' if it exists</dd>
<dt><k>[[ </k></dt> <dd>Follow the link labeled 'prev', 'previous' or '&lt;' if it exists</dd>
</dl>
<dl>
<dt><k>g$</k></dt> <dd>Go to the last tab</dd>
<dt><k>g&lt;</k></dt> <dd>Redisplay the last command output</dd>
<dt><k>g0</k></dt> <dd>Go to the first tab</dd>
<dt><k>g&lt;C-g></k></dt> <dd>Print file information</dd>
<dt><k>gB</k></dt> <dd>Repeat last <ex>:buffer<oa>!</oa></ex> command in reverse direction</dd>
<dt><k>gF</k></dt> <dd>View source with an external editor</dd>
<dt><k>gH</k></dt> <dd>Open homepage in a new tab</dd>
<dt><k>gP</k></dt> <dd>Open (put) a URL based on the current clipboard contents in a new buffer</dd>
<dt><k>gT</k></dt> <dd>Go to previous tab</dd>
<dt><k>gU</k></dt> <dd>Go to the root of the website</dd>
<dt><k>gb</k></dt> <dd>Repeat last <ex>:buffer<oa>!</oa></ex> command</dd>
<dt><k>gf</k></dt> <dd>View source</dd>
<dt><k>gg</k></dt> <dd>Go to the top of the document</dd>
<dt><k>gh</k></dt> <dd>Open homepage</dd>
<dt><k>gi</k></dt> <dd>Focus last used input field</dd>
<dt><k>gn</k></dt> <dd>Jump to a QuickMark in a new tab</dd>
<dt><k>go</k></dt> <dd>Jump to a QuickMark</dd>
<dt><k>gt</k></dt> <dd>Go to the next tab</dd>
<dt><k>gu</k></dt> <dd>Go to parent directory</dd>
</dl>
<dl>
<dt><k>ZQ</k></dt> <dd>Quit and don't save the session</dd>
<dt><k>ZZ</k></dt> <dd>Quit and save the session</dd>
<dt><k>zI</k></dt> <dd>Enlarge full zoom of current web page</dd>
<dt><k>zM</k></dt> <dd>Enlarge full zoom of current web page by a larger amount</dd>
<dt><k>zO</k></dt> <dd>Reduce full zoom of current web page</dd>
<dt><k>zR</k></dt> <dd>Reduce full zoom of current web page by a larger amount</dd>
<dt><k>zZ</k></dt> <dd>Set full zoom value of current web page</dd>
<dt><k>zi</k></dt> <dd>Enlarge text zoom of current web page</dd>
<dt><k>zm</k></dt> <dd>Enlarge text zoom of current web page by a larger amount</dd>
<dt><k>zo</k></dt> <dd>Reduce text zoom of current web page</dd>
<dt><k>zr</k></dt> <dd>Reduce text zoom of current web page by a larger amount</dd>
<dt><k>zz</k></dt> <dd>Set text zoom value of current web page</dd>
</dl>
<h2 tag="ex-edit-index">Command-line editing</h2>
<dl>
<dt><k name="C-c"/></dt> <dd>Quit Command-line mode without executing</dd>
</dl>
<dl>
<dt><k name="C-]"/></dt> <dd>Expand a command-line abbreviation</dd>
</dl>
<dl>
<dt><k name="Up"/></dt> <dd>Recall the previous command line from the history list which matches the current command line</dd>
<dt><k name="Down"/></dt> <dd>Recall the next command line from the history list which matches the current command line</dd>
</dl>
<dl>
<dt><k name="Tab"/></dt> <dd>Complete the word in front of the cursor according to the behavior specified in <o>wildmode</o></dd>
<dt><k name="S-Tab"/></dt> <dd>Complete the previous full match when <o>wildmode</o> contains "full"</dd>
</dl>
<h2 tag="ex-cmd-index :index">Ex commands</h2>
<dl>
<dt><ex>:!</ex></dt> <dd>Run a command</dd>
<dt><ex>:!!</ex></dt> <dd>Repeat last <ex>:!<a>cmd</a></ex></dd>
<dt><ex>:abbreviate</ex></dt> <dd>Abbreviate a key sequence</dd>
<dt><ex>:abclear</ex></dt> <dd>Remove all abbreviations</dd>
<dt><ex>:addons</ex></dt> <dd>Manage available Extensions and Themes</dd>
<dt><ex>:autocmd</ex></dt> <dd>Execute commands automatically on events</dd>
<dt><ex>:back</ex></dt> <dd>Go back in the browser history</dd>
<dt><ex>:bdelete</ex></dt> <dd>Delete current buffer</dd>
<dt><ex>:beep</ex></dt> <dd>Play a system beep</dd>
<dt><ex>:bmark</ex></dt> <dd>Add a bookmark</dd>
<dt><ex>:bmarks</ex></dt> <dd>List or open multiple bookmarks</dd>
<dt><ex>:buffer</ex></dt> <dd>Switch to a buffer</dd>
<dt><ex>:buffers</ex></dt> <dd>Show a list of all buffers</dd>
<dt><ex>:cabbrev</ex></dt> <dd>Abbreviate a key sequence in Command-line mode</dd>
<dt><ex>:cabclear</ex></dt> <dd>Remove all abbreviations in Command-line mode</dd>
<dt><ex>:cd</ex></dt> <dd>Change the current directory</dd>
<dt><ex>:cmap</ex></dt> <dd>Map a key sequence in Command-line mode</dd>
<dt><ex>:cmapclear</ex></dt> <dd>Remove all mappings in Command-line mode</dd>
<dt><ex>:cnoremap</ex></dt> <dd>Map a key sequence without remapping keys in Command-line mode</dd>
<dt><ex>:colorscheme</ex></dt> <dd>Load a color scheme</dd>
<dt><ex>:comclear</ex></dt> <dd>Delete all user-defined commands</dd>
<dt><ex>:command</ex></dt> <dd>List and define commands</dd>
<dt><ex>:cunabbrev</ex></dt> <dd>Remove an abbreviation in Command-line mode</dd>
<dt><ex>:cunmap</ex></dt> <dd>Remove a mapping in Command-line mode</dd>
<dt><ex>:delbmarks</ex></dt> <dd>Delete a bookmark</dd>
<dt><ex>:delcommand</ex></dt> <dd>Delete the specified user-defined command</dd>
<dt><ex>:delmacros</ex></dt> <dd>Delete macros</dd>
<dt><ex>:delmarks</ex></dt> <dd>Delete the specified marks</dd>
<dt><ex>:delqmarks</ex></dt> <dd>Delete the specified QuickMarks</dd>
<dt><ex>:delstyle</ex></dt> <dd>Delete any matching styles</dd>
<dt><ex>:dialog</ex></dt> <dd>Open a &hostapp; dialog</dd>
<dt><ex>:doautoall</ex></dt> <dd>Apply the autocommands matching the specified URL to all buffers</dd>
<dt><ex>:doautocmd</ex></dt> <dd>Apply the autocommands matching the specified URL to the current buffer</dd>
<dt><ex>:downloads</ex></dt> <dd>Show progress of current downloads</dd>
<dt><ex>:echo</ex></dt> <dd>Echo the expression</dd>
<dt><ex>:echoerr</ex></dt> <dd>Echo the expression as an error message</dd>
<dt><ex>:echomsg</ex></dt> <dd>Echo the expression as an informational message</dd>
<dt><ex>:emenu</ex></dt> <dd>Execute the specified menu item from the command line</dd>
<dt><ex>:execute</ex></dt> <dd>Execute the argument as an Ex command</dd>
<dt><ex>:extadd</ex></dt> <dd>Install an extension</dd>
<dt><ex>:extdelete</ex></dt> <dd>Uninstall an extension</dd>
<dt><ex>:extdisable</ex></dt> <dd>Disable an extension</dd>
<dt><ex>:extenable</ex></dt> <dd>Enable an extension</dd>
<dt><ex>:extensions</ex></dt> <dd>List all installed extensions</dd>
<dt><ex>:extoptions</ex></dt> <dd>Open an extension's preference dialog</dd>
<dt><ex>:exusage</ex></dt> <dd>List all Ex commands with a short description</dd>
<dt><ex>:finish</ex></dt> <dd>Stop sourcing a script file</dd>
<dt><ex>:forward</ex></dt> <dd>Go forward in the browser history</dd>
<dt><ex>:frameonly</ex></dt> <dd>Show only the current frame's page</dd>
<dt><ex>:hardcopy</ex></dt> <dd>Print current document</dd>
<dt><ex>:help</ex></dt> <dd>Open the help page</dd>
<dt><ex>:helpall</ex></dt> <dd>Open the single unchunked help page</dd>
<dt><ex>:highlight</ex></dt> <dd>Style &appname;</dd>
<dt><ex>:history</ex></dt> <dd>Show recently visited URLs</dd>
<dt><ex>:iabbrev</ex></dt> <dd>Abbreviate a key sequence in Insert mode</dd>
<dt><ex>:iabclear</ex></dt> <dd>Remove all abbreviations in Insert mode</dd>
<dt><ex>:imap</ex></dt> <dd>Map a key sequence in Insert mode</dd>
<dt><ex>:imapclear</ex></dt> <dd>Remove all mappings in Insert mode</dd>
<dt><ex>:inoremap</ex></dt> <dd>Map a key sequence without remapping keys in Insert mode</dd>
<dt><ex>:iunabbrev</ex></dt> <dd>Remove an abbreviation in Insert mode</dd>
<dt><ex>:iunmap</ex></dt> <dd>Remove a mapping in Insert mode</dd>
<dt><ex>:javascript</ex></dt> <dd>Run a JavaScript command through eval()</dd>
<dt><ex>:jumps</ex></dt> <dd>Show jumplist</dd>
<dt><ex>:keepalt</ex></dt> <dd>Execute a command without changing the current alternate buffer</dd>
<dt><ex>:let</ex></dt> <dd>Set or list a variable</dd>
<dt><ex>:loadplugins</ex></dt> <dd>Immediately load all unloaded plugins</dd>
<dt><ex>:macros</ex></dt> <dd>List all macros</dd>
<dt><ex>:map</ex></dt> <dd>Map a key sequence</dd>
<dt><ex>:mapclear</ex></dt> <dd>Remove all mappings</dd>
<dt><ex>:mark</ex></dt> <dd>Mark current location within the web page</dd>
<dt><ex>:marks</ex></dt> <dd>Show all location marks of current web page</dd>
<dt><ex>:messages</ex></dt> <dd>Display previously given messages</dd>
<dt><ex>:messclear</ex></dt> <dd>Clear the message history</dd>
<dt><ex>:mkvimperatorrc</ex></dt> <dd>Write current key mappings and changed options to the config file</dd>
<dt><ex>:nmap</ex></dt> <dd>Map a key sequence in Normal mode</dd>
<dt><ex>:nmapclear</ex></dt> <dd>Remove all mappings in Normal mode</dd>
<dt><ex>:nnoremap</ex></dt> <dd>Map a key sequence without remapping keys in Normal mode</dd>
<dt><ex>:nohlsearch</ex></dt> <dd>Remove the search highlighting</dd>
<dt><ex>:noremap</ex></dt> <dd>Map a key sequence without remapping keys</dd>
<dt><ex>:normal</ex></dt> <dd>Execute Normal mode commands</dd>
<dt><ex>:nunmap</ex></dt> <dd>Remove a mapping in Normal mode</dd>
<dt><ex>:open</ex></dt> <dd>Open one or more URLs in the current tab</dd>
<dt><ex>:optionusage</ex></dt> <dd>List all options with a short description</dd>
<dt><ex>:pageinfo</ex></dt> <dd>Show various page information</dd>
<dt><ex>:pagestyle</ex></dt> <dd>Select the author style sheet to apply</dd>
<dt><ex>:play</ex></dt> <dd>Replay a recorded macro</dd>
<dt><ex>:preferences</ex></dt> <dd>Show &hostapp; preferences dialog</dd>
<dt><ex>:pwd</ex></dt> <dd>Print the current directory name</dd>
<dt><ex>:qmark</ex></dt> <dd>Mark a URL with a letter for quick access</dd>
<dt><ex>:qmarks</ex></dt> <dd>Show all QuickMarks</dd>
<dt><ex>:quit</ex></dt> <dd>Quit current tab</dd>
<dt><ex>:quitall</ex></dt> <dd>Quit &appname;</dd>
<dt><ex>:redraw</ex></dt> <dd>Redraw the screen</dd>
<dt><ex>:reload</ex></dt> <dd>Reload the current web page</dd>
<dt><ex>:reloadall</ex></dt> <dd>Reload all tab pages</dd>
<dt><ex>:restart</ex></dt> <dd>Force the browser to restart</dd>
<dt><ex>:runtime</ex></dt> <dd>Source the specified file from each directory in <o>runtimepath</o></dd>
<dt><ex>:sanitize</ex></dt> <dd>Clear private data</dd>
<dt><ex>:saveas</ex></dt> <dd>Save current document to disk</dd>
<dt><ex>:sbclose</ex></dt> <dd>Close the sidebar window</dd>
<dt><ex>:scriptnames</ex></dt> <dd>List all sourced script names</dd>
<dt><ex>:set</ex></dt> <dd>Set an option</dd>
<dt><ex>:setglobal</ex></dt> <dd>Set global option</dd>
<dt><ex>:setlocal</ex></dt> <dd>Set local option</dd>
<dt><ex>:sidebar</ex></dt> <dd>Open the sidebar window</dd>
<dt><ex>:silent</ex></dt> <dd>Execute a command silently</dd>
<dt><ex>:source</ex></dt> <dd>Read Ex commands from a file</dd>
<dt><ex>:stop</ex></dt> <dd>Stop loading the current web page</dd>
<dt><ex>:stopall</ex></dt> <dd>Stop loading all tab pages</dd>
<dt><ex>:style</ex></dt> <dd>Style &appname; and web sites</dd>
<dt><ex>:styledisable</ex></dt> <dd>Disable a user style sheet</dd>
<dt><ex>:styleenable</ex></dt> <dd>Enable a user style sheet</dd>
<dt><ex>:styletoggle</ex></dt> <dd>Toggle a user style sheet</dd>
<dt><ex>:tab</ex></dt> <dd>Execute a command and tell it to output in a new tab</dd>
<dt><ex>:tabattach</ex></dt> <dd>Attach the current tab to another window</dd>
<dt><ex>:tabdetach</ex></dt> <dd>Detach current tab to its own window</dd>
<dt><ex>:tabdo</ex></dt> <dd>Execute a command in each tab</dd>
<dt><ex>:tabduplicate</ex></dt> <dd>Duplicate current tab</dd>
<dt><ex>:tablast</ex></dt> <dd>Switch to the last tab</dd>
<dt><ex>:tabmove</ex></dt> <dd>Move the current tab after tab N</dd>
<dt><ex>:tabnext</ex></dt> <dd>Switch to the next or <oa>count</oa>th tab</dd>
<dt><ex>:tabonly</ex></dt> <dd>Close all other tabs</dd>
<dt><ex>:tabopen</ex></dt> <dd>Open one or more URLs in a new tab</dd>
<dt><ex>:tabprevious</ex></dt> <dd>Switch to the previous tab or go <oa>count</oa> tabs back</dd>
<dt><ex>:tabrewind</ex></dt> <dd>Switch to the first tab</dd>
<dt><ex>:time</ex></dt> <dd>Profile a piece of code or run a command multiple times</dd>
<dt><ex>:toolbarhide</ex></dt> <dd>Hide the named toolbar</dd>
<dt><ex>:toolbarshow</ex></dt> <dd>Show the named toolbar</dd>
<dt><ex>:toolbartoggle</ex></dt> <dd>Toggle the named toolbar</dd>
<dt><ex>:unabbreviate</ex></dt> <dd>Remove an abbreviation</dd>
<dt><ex>:undo</ex></dt> <dd>Undo closing of a tab</dd>
<dt><ex>:undoall</ex></dt> <dd>Undo closing of all closed tabs</dd>
<dt><ex>:unlet</ex></dt> <dd>Delete a variable</dd>
<dt><ex>:unmap</ex></dt> <dd>Remove a mapping</dd>
<dt><ex>:verbose</ex></dt> <dd>Execute a command with <o>verbose</o> set</dd>
<dt><ex>:version</ex></dt> <dd>Show version information</dd>
<dt><ex>:viewsource</ex></dt> <dd>View source code of current document</dd>
<dt><ex>:viusage</ex></dt> <dd>List all mappings with a short description</dd>
<dt><ex>:vmap</ex></dt> <dd>Map a key sequence in Visual mode</dd>
<dt><ex>:vmapclear</ex></dt> <dd>Remove all mappings in Visual mode</dd>
<dt><ex>:vnoremap</ex></dt> <dd>Map a key sequence without remapping keys in Visual mode</dd>
<dt><ex>:vunmap</ex></dt> <dd>Remove a mapping in Visual mode</dd>
<dt><ex>:winclose</ex></dt> <dd>Close window</dd>
<dt><ex>:window</ex></dt> <dd>Execute a command and tell it to output in a new window</dd>
<dt><ex>:winonly</ex></dt> <dd>Close all other windows</dd>
<dt><ex>:winopen</ex></dt> <dd>Open one or more URLs in a new window</dd>
<dt><ex>:wqall</ex></dt> <dd>Save the session and quit</dd>
<dt><ex>:zoom</ex></dt> <dd>Set zoom value of current web page</dd>
</dl>
<h2 tag="option-index">Options</h2>
<dl>
<dt><o>activate</o></dt> <dd>Define when tabs are automatically activated</dd>
<dt><o>cdpath</o></dt> <dd>List of directories searched when executing <ex>:cd</ex></dd>
<dt><o>complete</o></dt> <dd>Items which are completed at the <ex>:open</ex> prompts</dd>
<dt><o>defsearch</o></dt> <dd>Set the default search engine</dd>
<dt><o>editor</o></dt> <dd>Set the external text editor</dd>
<dt><o>encoding</o></dt> <dd>Changes the character encoding of the current buffer</dd>
<dt><o>errorbells</o></dt> <dd>Ring the bell when an error message is displayed</dd>
<dt><o>eventignore</o></dt> <dd>List of autocommand event names which should be ignored</dd>
<dt><o>exrc</o></dt> <dd>Allow reading of an RC file in the current directory</dd>
<dt><o>extendedhinttags</o></dt> <dd>XPath string of hintable elements activated by <k>;</k></dd>
<dt><o>fileencoding</o></dt> <dd>Changes the character encoding that &appname; uses to read and write files</dd>
<dt><o>focuscontent</o></dt> <dd>Try to stay in Normal mode after loading a web page</dd>
<dt><o>followhints</o></dt> <dd>Change the behaviour of <k name="Return"/> in Hints mode</dd>
<dt><o>fullscreen</o></dt> <dd>Show the current window fullscreen</dd>
<dt><o>guioptions</o></dt> <dd>Show or hide certain GUI elements like the menu or toolbar</dd>
<dt><o>helpfile</o></dt> <dd>Name of the main help file</dd>
<dt><o>hintinputs</o></dt> <dd>How text input fields are hinted</dd>
<dt><o>hintmatching</o></dt> <dd>How links are matched</dd>
<dt><o>hinttags</o></dt> <dd>XPath string of hintable elements activated by <k>f</k> and <k>F</k></dd>
<dt><o>hinttimeout</o></dt> <dd>Timeout before automatically following a non-unique numerical hint</dd>
<dt><o>history</o></dt> <dd>Number of Ex commands and search patterns to store in the command-line history</dd>
<dt><o>hlsearch</o></dt> <dd>Highlight previous search pattern matches</dd>
<dt><o>ignorecase</o></dt> <dd>Ignore case in search patterns</dd>
<dt><o>incsearch</o></dt> <dd>Show where the search pattern matches as it is typed</dd>
<dt><o>insertmode</o></dt> <dd>Use Insert mode as the default for text areas</dd>
<dt><o>laststatus</o></dt> <dd>Show the status line</dd>
<dt><o>linksearch</o></dt> <dd>Limit the search to hyperlink text</dd>
<dt><o>loadplugins</o></dt> <dd>Load plugin scripts when starting up</dd>
<dt><o>maxitems</o></dt> <dd>Maximum number of items to display at once in a listing</dd>
<dt><o>messages</o></dt> <dd>Number of messages to store in the message history</dd>
<dt><o>more</o></dt> <dd>Pause the message list window when more than one screen of listings is displayed</dd>
<dt><o>newtab</o></dt> <dd>Define which commands should output in a new tab by default</dd>
<dt><o>nextpattern</o></dt> <dd>Patterns to use when guessing the 'next' page in a document sequence</dd>
<dt><o>online</o></dt> <dd>Set the 'work offline' option</dd>
<dt><o>pageinfo</o></dt> <dd>Desired info in the <ex>:pageinfo</ex> output</dd>
<dt><o>popups</o></dt> <dd>Where to show requested popup windows</dd>
<dt><o>previouspattern</o></dt> <dd>Patterns to use when guessing the 'previous' page in a document sequence</dd>
<dt><o>private</o></dt> <dd>Set the 'private browsing' option</dd>
<dt><o>runtimepath</o></dt> <dd>List of directories searched for runtime files</dd>
<dt><o>sanitizeitems</o></dt> <dd>The default list of private items to sanitize</dd>
<dt><o>sanitizetimespan</o></dt> <dd>The default sanitizer time span</dd>
<dt><o>scroll</o></dt> <dd>Number of lines to scroll with <k name="C-u"/> and <k name="C-d"/> commands</dd>
<dt><o>shell</o></dt> <dd>Shell to use for executing <ex>:!</ex> and <ex>:run</ex> commands</dd>
<dt><o>shellcmdflag</o></dt> <dd>Flag passed to shell when executing <ex>:!</ex> and <ex>:run</ex> commands</dd>
<dt><o>showmode</o></dt> <dd>Show the current mode in the command line</dd>
<dt><o>showstatuslinks</o></dt> <dd>Show the destination of the link under the cursor in the status bar</dd>
<dt><o>showtabline</o></dt> <dd>Control when to show the tab bar of opened web pages</dd>
<dt><o>smartcase</o></dt> <dd>Override the <o>ignorecase</o> option if the pattern contains uppercase characters</dd>
<dt><o>suggestengines</o></dt> <dd>Engine Alias which has a feature of suggest</dd>
<dt><o>titlestring</o></dt> <dd>Change the title of the window</dd>
<dt><o>urlseparator</o></dt> <dd>Set the separator regex used to separate multiple URL args</dd>
<dt><o>usermode</o></dt> <dd>Show current website with a minimal style sheet to make it easily accessible</dd>
<dt><o>verbose</o></dt> <dd>Define which info messages are displayed</dd>
<dt><o>visualbell</o></dt> <dd>Use visual bell instead of beeping on errors</dd>
<dt><o>wildcase</o></dt> <dd>Completion case matching mode</dd>
<dt><o>wildignore</o></dt> <dd>List of file patterns to ignore when completing files</dd>
<dt><o>wildmode</o></dt> <dd>Define how command-line completion works</dd>
<dt><o>wildoptions</o></dt> <dd>Change how command-line completion is done</dd>
<dt><o>wordseparators</o></dt> <dd>How words are split for hintmatching</dd>
</dl>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,28 +0,0 @@
heading::Insert{nbsp}mode[Insert-mode,Insert,mode-insert]
Insert mode is used to enter text in text boxes and text areas. When
'insertmode' is set, focusing on a text area immediately switches to
Insert mode.
|i_i| +
||i_i||
________________________________________________________________________________
Starts Insert mode in text areas when 'insertmode' is not set.
________________________________________________________________________________
section::Insert-mode{nbsp}special{nbsp}keys[ins-special-keys]
|i_<C-i>| +
||<C-i>||
________________________________________________________________________________
Launch the external editor. See the 'editor' option.
________________________________________________________________________________
|i_<C-]>| +
||<C-]>||
________________________________________________________________________________
Expand an Insert-mode abbreviation.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,50 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="insert"
title="&appname; Insert Mode"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h2 tag="Insert-mode Insert mode-insert">Insert mode</h2>
<p>
Insert mode is used to enter text in text boxes and text areas. When
<o>insertmode</o> is set, focusing on a text area immediately switches to
Insert mode.
</p>
<item>
<tags>i_i</tags>
<spec>i_i</spec>
<description>
<p>Starts Insert mode in text areas when <o>insertmode</o> is not set.</p>
</description>
</item>
<h2 tag="ins-special-keys">Insert-mode special keys</h2>
<item>
<tags><![CDATA[i_<C-i>]]></tags>
<spec>&lt;C-i></spec>
<description>
<p>Launch the external editor. See the <o>editor</o> option.</p>
</description>
</item>
<item>
<tags><![CDATA[i_<C-]>]]></tags>
<spec>&lt;C-]></spec>
<description>
<p>Expand an Insert-mode abbreviation.</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,138 +0,0 @@
logo:[]
++++++
<p style="text-align: center; font-weight: bold;">
First there was a Navigator, then there was an Explorer.
Later it was time for a Konqueror. Now it's time for an Imperator, the
VIMperator :)
</p>
++++++
heading::Introduction[intro]
http://vimperator.org/vimperator[Vimperator] is a free browser add-on for
Firefox, which makes it look and behave like the http://www.vim.org[Vim] text
editor. It has similar key bindings, and you could call it a modal web browser,
as key bindings differ according to which mode you are in.
|warning| +
Warning:
To provide the most authentic Vim experience, the Firefox menubar and toolbar
are hidden. +
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
[c]:extdelete Vimperator[c] or [c]:extdisable Vimperator[c] to disable it. +
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.
|author| |donation| |sponsor| +
Vimperator was initially written by mailto:stubenschrott@vimperator.org[Martin
Stubenschrott] but has found many other
http://vimperator-labs.googlecode.com/hg/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-labs.googlecode.com/hg/vimperator/Donors[these
people] who already did):
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
<!-- the PAYPAL code -->
<form style="text-align: center;" action="https://www.paypal.com/cgi-bin/webscr" method="post"><fieldset class="paypal">
<input type="hidden" name="cmd" value="_s-xclick"/>
<input type="image" src="chrome://liberator/content/x-click-but21.gif" name="submit" alt="Make payments with PayPal - it\'s fast, free and secure!"/>
<input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----MIIHPwYJKoZIhvcNAQcEoIIHMDCCBywCAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20CAQAwDQYJKoZIhvcNAQEBBQAEgYBDDJfc+lXLBSAM9XSWv/ebzG/L7PTqYiIXaWVg8pfinDsfYaAcifcgCTuApg4v/VaZIQ/hLODzQu2EvmjGXP0twErA/Q8G5gx0l197PJSyVXb1sLwd1mgOdLF4t0HmDCdEI9z3H6CMhsb3xVwlfpzllSfCIqzlSpx4QtdzEZGzLDELMAkGBSsOAwIaBQAwgbwGCSqGSIb3DQEHATAUBggqhkiG9w0DBwQI8ZOwn5QkHgaAgZjjtPQxB7Vw2rS7Voap9y+xdVLoczUQ97hw+bOdZLcGykBtfoVjdn76MS51QKjGp1fEmxkqTuQ+Fxv8+OVtHu0QF/qlrhmC3fJBRJ0IFWxKdXS+Wod4615BDaG2X1hzvCL443ffka8XlLSiFTuW43BumQs/O+6Jqsk2hcReP3FIQOvtWMSgGTALnZx7x5c60u/3NSKW5qvyWKCCA4cwggODMIIC7KADAgECAgEAMA0GCSqGSIb3DQEBBQUAMIGOMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxFDASBgNVBAoTC1BheVBhbCBJbmMuMRMwEQYDVQQLFApsaXZlX2NlcnRzMREwDwYDVQQDFAhsaXZlX2FwaTEcMBoGCSqGSIb3DQEJARYNcmVAcGF5cGFsLmNvbTAeFw0wNDAyMTMxMDEzMTVaFw0zNTAyMTMxMDEzMTVaMIGOMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxFDASBgNVBAoTC1BheVBhbCBJbmMuMRMwEQYDVQQLFApsaXZlX2NlcnRzMREwDwYDVQQDFAhsaXZlX2FwaTEcMBoGCSqGSIb3DQEJARYNcmVAcGF5cGFsLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwUdO3fxEzEtcnI7ZKZL412XvZPugoni7i7D7prCe0AtaHTc97CYgm7NsAtJyxNLixmhLV8pyIEaiHXWAh8fPKW+R017+EmXrr9EaquPmsVvTywAAE1PMNOKqo2kl4Gxiz9zZqIajOm1fZGWcGS0f5JQ2kBqNbvbg2/Za+GJ/qwUCAwEAAaOB7jCB6zAdBgNVHQ4EFgQUlp98u8ZvF71ZP1LXChvsENZklGswgbsGA1UdIwSBszCBsIAUlp98u8ZvF71ZP1LXChvsENZklGuhgZSkgZEwgY4xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEUMBIGA1UEChMLUGF5UGFsIEluYy4xEzARBgNVBAsUCmxpdmVfY2VydHMxETAPBgNVBAMUCGxpdmVfYXBpMRwwGgYJKoZIhvcNAQkBFg1yZUBwYXlwYWwuY29tggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAgV86VpqAWuXvX6Oro4qJ1tYVIT5DgWpE692Ag422H7yRIr/9j/iKG4Thia/Oflx4TdL+IFJBAyPK9v6zZNZtBgPBynXb048hsP16l2vi0k5Q2JKiPDsEfBhGI+HnxLXEaUWAcVfCsQFvd2A1sxRr67ip5y2wwBelUecP3AjJ+YcxggGaMIIBlgIBATCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20CAQAwCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTA3MDMyMTIyMzI1OFowIwYJKoZIhvcNAQkEMRYEFCirrvlwYVHQiNEEbM6ikfx9+Dm5MA0GCSqGSIb3DQEBAQUABIGAtbsR8GdCdURLziozXLSdtY+zJZUPPeQFXXy2V1S/3ldiN+pRvd4HI7xz8mOY1UaKJZpwZnOosy9MflL1/hbiEtEyQ2Dm/s4jnTcJng/NjLIZu+0NYxXRJhB+zMJubnMMMjzNrGlqI4F2HAB/bCA1eOJ5B83Of3dA4rk/T/8GoSQ=-----END PKCS7-----"/>
</fieldset></form>
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
If you prefer getting some nice products for your money, you can also support
us by buying some cool http://www.zazzle.com/maxauthority*[merchandise] like
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]
- help:Quick-start{nbsp}tutorial[tutorial.html]: A quick-start tutorial for new
users.
- help:Starting{nbsp}Vimperator[starting.html]: How Vimperator starts up, where
it reads the config file...
- help:Browsing[browsing.html]: Basic mappings and commands needed for a
browsing session (how to open a web page or go back in history).
- help:Buffer[buffer.html]: Operations on the current document like scrolling
or copying text.
- help:Command-line{nbsp}mode[cmdline.html]: Command-line editing.
- help:Insert{nbsp}mode[insert.html]: Insert-mode editing.
- help:Options[options.html]: A description of all options.
- help:Text{nbsp}search{nbsp}commands[pattern.html]: Searching for text in the
current buffer.
- help:Tabs[tabs.html]: Managing your tabbed browsing session.
- help:Hints[hints.html]: Selecting hyperlinks and other page elements.
- help:Key{nbsp}mappings,{nbsp}abbreviations,{nbsp}and{nbsp}user-defined{nbsp}commands[map.html]:
Defining new key mappings, abbreviations and user commands.
- help:Expression{nbsp}evaluation[eval.html]: Executing JavaScript.
- help:Marks[marks.html]: Using bookmarks, QuickMarks, history and local marks.
- help:Repeating{nbsp}commands[repeat.html]: Using macros to repeat recurring workflows.
- help:Automatic{nbsp}commands[autocommands.html]: Automatically executing code
on certain events.
- help:Printing[print.html]: Printing pages.
- help:Vimperator's{nbsp}GUI[gui.html]: Accessing Firefox menus, dialogs and the sidebar.
- help:Styling{nbsp}the{nbsp}GUI{nbsp}and{nbsp}web{nbsp}pages[styling.html]:
Changing the styling of content pages and Vimperator itself.
- help:Error{nbsp}and{nbsp}informational{nbsp}messages[message.html]: A
description of messages and error messages.
- help:Developer{nbsp}information[developer.html]: How to write docs or
plugins.
- help:Various{nbsp}commands[various.html]: Other help which didn't fit into
any other category.
- help:Index[index.html]: An index of all commands and options.
You can also jump directly to the help of a specific command with [c]:help o[c]
or [c]:help :set[c].
section::Features[features]
* Vim-like keybindings ([m]h[m], [m]j[m], [m]k[m], [m]l[m], [m]gg[m], [m]G[m],
[m]0[m], [m]$[m], [m]ZZ[m], [m]<C-f>[m], etc.)
* Ex commands ([c]:quit[c], [c]:open www.foo.com[c], ...)
* Tab completion available for all commands with support for "longest" matching
when set in 'wildmode'
* Hit-a-hint like navigation of links (start with [m]f[m] to follow a link)
* Advanced completion of bookmark and history URLs (searching also in title,
not only URL)
* Vim-like statusline with a Wget-like progress bar
* Minimal GUI (easily hide useless menubar and toolbar with
[c]:set guioptions=[c])
* Ability to [c]:source[c] JavaScript files, and to use a [a]~/.vimperatorrc[a]
file with syntax highlighting if you install
http://code.google.com/p/vimperator-labs/issues/detail?id=7[vimperator.vim]
* Easy quick searches ([c]:open foo[c] will search for "foo" in google,
[c]:open ebay terminator[c] will search for "terminator" on ebay)
with support for Firefox keyword bookmarks and search engines
* Count supported for many commands ([m]3<C-o>[m] will go back 3 pages)
* Beep on errors
* 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])
* [c]:map[c] and [c]:command[c] support (and feedkeys() for script writers)
* [c]:time[c] support for profiling
* Move the text cursor and select text with Vim keys and a Visual mode
* External editor support
* Macros to replay key strokes
* AutoCommands to execute actions on certain events
* A comprehensive help system, explaining all commands, mappings and options
section::Contact[contact]
Please send comments/bug reports/patches to the mailing list, where we will
properly answer any questions. You can also join the
+++<a href="irc://irc.freenode.net/vimperator">#vimperator</a>+++ IRC channel
on http://www.freenode.net/[Freenode] or check the
http://code.google.com/p/vimperator-labs/w/list?q=label%3Aproject-vimperator[Wiki]
for
http://code.google.com/p/vimperator-labs/wiki/VimperatorFAQ[frequently asked
questions (FAQ)]. Make sure, you have read the
http://vimperator-labs.googlecode.com/hg/vimperator/TODO[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:

View File

@@ -0,0 +1,206 @@
<?xml version="1.0" encoding="UTF-8"?>
<document
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<logo/>
<html:div>
<p style="text-align: center; font-weight: bold;">
First there was a Navigator, then there was an Explorer.
Later it was time for a Konqueror. Now it's time for an Imperator, the
VIMperator :)
</html:div>
<h1 tag="intro">Introduction</h1>
<link href="http://vimperator.org">&appname;</link> is a free browser add-on for &hostapp;,
which makes it look and behave like the
<link href="http://www.vim.org">Vim</link>
text editor. It has similar key bindings, and you could call it a modal
web browser, as key bindings differ according to which mode you are in.
<warning tag="warning">
To provide the most authentic Vim experience, the &hostapp; menubar and toolbar are hidden.
</warning>
<p>If you really need them, type: [c]:set guioptions+=mT[c] to get them back.</p>
<p>
If you don't like &appname; at all, you can uninstall it by typing
<ex>:extdelete &appname;</ex> or <ex>:extdisable &appname;</ex> to disable it.
</p>
<p>
If you like it but can't remember the shortcuts, then press
<key name="F1"/> or <ex>:help</ex> to get this help window back.
</p>
<tags>author donaton sponsor</tags>
<p>
&appname; was initially written by
<link href="mailto:stubenschrott@vimperator.org">Martin
Stubenschrott</link> but has found many other
<link href="http://vimperator.org/trac/wiki/&appname;/Authors">contributors</link>
in the meanwhile. If you appreciate the work on &appname; and want to
encourage us working on it more, you can send us greetings, patches, or
donations (thanks a lot to
<link href="http://vimperator.org/trac/wiki/&appname;/Donors">these
people</link>
who already did):
</p>
<html:form style="text-align: center;" action="https://www.paypal.com/cgi-bin/webscr" method="post"><fieldset class="paypal">
<input type="hidden" name="cmd" value="_s-xclick"/>
<input type="image" src="chrome://liberator/content/x-click-but21.gif" name="submit" alt="Make payments with PayPal - it\'s fast, free and secure!"/>
<input type="hidden" name="encrypted" value="-----BEGIN PKCS7-----MIIHPwYJKoZIhvcNAQcEoIIHMDCCBywCAQExggEwMIIBLAIBADCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20CAQAwDQYJKoZIhvcNAQEBBQAEgYBDDJfc+lXLBSAM9XSWv/ebzG/L7PTqYiIXaWVg8pfinDsfYaAcifcgCTuApg4v/VaZIQ/hLODzQu2EvmjGXP0twErA/Q8G5gx0l197PJSyVXb1sLwd1mgOdLF4t0HmDCdEI9z3H6CMhsb3xVwlfpzllSfCIqzlSpx4QtdzEZGzLDELMAkGBSsOAwIaBQAwgbwGCSqGSIb3DQEHATAUBggqhkiG9w0DBwQI8ZOwn5QkHgaAgZjjtPQxB7Vw2rS7Voap9y+xdVLoczUQ97hw+bOdZLcGykBtfoVjdn76MS51QKjGp1fEmxkqTuQ+Fxv8+OVtHu0QF/qlrhmC3fJBRJ0IFWxKdXS+Wod4615BDaG2X1hzvCL443ffka8XlLSiFTuW43BumQs/O+6Jqsk2hcReP3FIQOvtWMSgGTALnZx7x5c60u/3NSKW5qvyWKCCA4cwggODMIIC7KADAgECAgEAMA0GCSqGSIb3DQEBBQUAMIGOMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxFDASBgNVBAoTC1BheVBhbCBJbmMuMRMwEQYDVQQLFApsaXZlX2NlcnRzMREwDwYDVQQDFAhsaXZlX2FwaTEcMBoGCSqGSIb3DQEJARYNcmVAcGF5cGFsLmNvbTAeFw0wNDAyMTMxMDEzMTVaFw0zNTAyMTMxMDEzMTVaMIGOMQswCQYDVQQGEwJVUzELMAkGA1UECBMCQ0ExFjAUBgNVBAcTDU1vdW50YWluIFZpZXcxFDASBgNVBAoTC1BheVBhbCBJbmMuMRMwEQYDVQQLFApsaXZlX2NlcnRzMREwDwYDVQQDFAhsaXZlX2FwaTEcMBoGCSqGSIb3DQEJARYNcmVAcGF5cGFsLmNvbTCBnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwUdO3fxEzEtcnI7ZKZL412XvZPugoni7i7D7prCe0AtaHTc97CYgm7NsAtJyxNLixmhLV8pyIEaiHXWAh8fPKW+R017+EmXrr9EaquPmsVvTywAAE1PMNOKqo2kl4Gxiz9zZqIajOm1fZGWcGS0f5JQ2kBqNbvbg2/Za+GJ/qwUCAwEAAaOB7jCB6zAdBgNVHQ4EFgQUlp98u8ZvF71ZP1LXChvsENZklGswgbsGA1UdIwSBszCBsIAUlp98u8ZvF71ZP1LXChvsENZklGuhgZSkgZEwgY4xCzAJBgNVBAYTAlVTMQswCQYDVQQIEwJDQTEWMBQGA1UEBxMNTW91bnRhaW4gVmlldzEUMBIGA1UEChMLUGF5UGFsIEluYy4xEzARBgNVBAsUCmxpdmVfY2VydHMxETAPBgNVBAMUCGxpdmVfYXBpMRwwGgYJKoZIhvcNAQkBFg1yZUBwYXlwYWwuY29tggEAMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADgYEAgV86VpqAWuXvX6Oro4qJ1tYVIT5DgWpE692Ag422H7yRIr/9j/iKG4Thia/Oflx4TdL+IFJBAyPK9v6zZNZtBgPBynXb048hsP16l2vi0k5Q2JKiPDsEfBhGI+HnxLXEaUWAcVfCsQFvd2A1sxRr67ip5y2wwBelUecP3AjJ+YcxggGaMIIBlgIBATCBlDCBjjELMAkGA1UEBhMCVVMxCzAJBgNVBAgTAkNBMRYwFAYDVQQHEw1Nb3VudGFpbiBWaWV3MRQwEgYDVQQKEwtQYXlQYWwgSW5jLjETMBEGA1UECxQKbGl2ZV9jZXJ0czERMA8GA1UEAxQIbGl2ZV9hcGkxHDAaBgkqhkiG9w0BCQEWDXJlQHBheXBhbC5jb20CAQAwCQYFKw4DAhoFAKBdMBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTA3MDMyMTIyMzI1OFowIwYJKoZIhvcNAQkEMRYEFCirrvlwYVHQiNEEbM6ikfx9+Dm5MA0GCSqGSIb3DQEBAQUABIGAtbsR8GdCdURLziozXLSdtY+zJZUPPeQFXXy2V1S/3ldiN+pRvd4HI7xz8mOY1UaKJZpwZnOosy9MflL1/hbiEtEyQ2Dm/s4jnTcJng/NjLIZu+0NYxXRJhB+zMJubnMMMjzNrGlqI4F2HAB/bCA1eOJ5B83Of3dA4rk/T/8GoSQ=-----END PKCS7-----"/>
</fieldset>
</html:form>
<p>
If you prefer getting some nice products for your money, you can also support
us by buying some cool
<link href="http://www.zazzle.com/maxauthority*">merchandise</link> like
t-shirts or mugs. Of course, as we believe in free, open source software, only
support us financially if you really like &appname; and the money doesn't hurt
— otherwise just use it, recommend it, and like it :)
</p>
section::Help{nbsp}topics[overview]
<h2 tag="overview">Help topics</h2>
<ol>
<li>
<link topic="tutorial.html">Quick-start tutorial</link>:
A quick-start tutorial for new users.
</li>
<li>
<link topic="starting.html">Starting &appname;</link>:
How &appname; starts up, where it reads the config file…
</li>
<li>
<link topic="browsing.html">Browsing</link>:
Basic mappings and commands needed for a browsing session (how to open
a web page or go back in history).
</li>
<li>
<link topic="buffer.html">Buffer</link>:
Operations on the current document like scrolling or copying text.
</li>
<li>
<link topic="cmdline.html">Command-line mode</link>:
Command-line editing.
</li>
<li>
<link topic="insert.html">Insert mode</link>:
Insert-mode editing.
</li>
<li>
<link topic="options.html">Options</link>:
A description of all options.
</li>
<li>
<link topic="pattern.html">Text search commands</link>:
Searching for text in the current buffer.
</li>
<li>
<link topic="tabs.html">Tabs</link>:
Managing your tabbed browsing session.
</li>
<li>
<link topic="hints.html">Hints</link>:
Selecting hyperlinks and other page elements.
</li>
<li>
<link topic="">Key mappings, abbreviations, and user-defined commands</link>:
Defining new key mappings, abbreviations and user commands.
</li>
<li>
<link topic="eval.html">Expression evaluation</link>:
Executing JavaScript.
</li>
<li>
<link topic="marks.html">Marks</link>:
Using bookmarks, QuickMarks, history and local marks.
</li>
<li>
<link topic="repeat.html">Repeating commands</link>:
Using macros to repeat recurring workflows.
</li>
<li>
<link topic="autocommands.html">Automatic commands</link>:
Automatically executing code on certain events.
</li>
<li>
<link topic="print.html">Printing</link>:
Printing pages.
</li>
<li>
<link topic="gui.html">&appname;'s GUI</link>:
Accessing &hostapp; menus, dialogs and the sidebar.
</li>
<li>
<link topic="styling.html">Styling the GUI and web pages</link>:
Changing the styling of content pages and &appname; itself.
</li>
<li>
<link topic="message.html">Error and informational messages</link>:
A description of messages and error messages.
</li>
<li>
<link topic="developer.html">Developer information</link>:
How to write docs or plugins.
</li>
<li>
<link topic="various.html">Various commands</link>:
Other help which didn't fit into any other category.
</li>
<li>
<link topic="index.html">Index</link>:
An index of all commands and options.
</li>
</ol>
<p>
You can also jump directly to the help of a specific command with <ex>:help o</ex>
or <ex>:help :set</ex>.
</p>
<h2 tag="features">Features</h2>
<ul>
<li>Vim-like keybindings ([m]h[m], [m]j[m], [m]k[m], [m]l[m], [m]gg[m], [m]G[m], [m]0[m], [m]$[m], [m]ZZ[m], [m]<C-f>[m], etc.)</li>
<li>Ex commands (<ex>:quit</ex>, <ex>:open www.foo.com</ex>, …)</li>
<li>Tab completion available for all commands with support for "longest" matching when set in 'wildmode'</li>
<li>Hit-a-hint like navigation of links (start with [m]f[m] to follow a link)</li>
<li>Advanced completion of bookmark and history URLs (searching also in title, not only URL)</li>
<li>Vim-like statusline with a Wget-like progress bar</li>
<li>Minimal GUI (easily hide useless menubar and toolbar with <ex>:set guioptions=</ex>)</li>
<li>Ability to <ex>:source</ex> JavaScript files, and to use a [a]~/.vimperatorrc[a] file with syntax highlighting if you install http://vimperator.org/trac/ticket/26[vimperator.vim]</li>
<li>Easy quick searches (<ex>:open foo</ex> will search for "foo" in google, <ex>:open ebay terminator</ex> will search for "terminator" on ebay) with support for &hostapp; keyword bookmarks and search engines</li>
<li>Count supported for many commands ([m]3<C-o>[m] will go back 3 pages)</li>
<li>Beep on errors</li>
<li>Marks support ([m]m[m][a]a[a] to set mark a on a web page, [m]'[m][a]a[a] to go there)</li>
<li>QuickMarks support (quickly go to previously marked web pages with [m]go[m][a]{a-zA-Z0-9}[a])</li>
<li><ex>:map</ex> and <ex>:command</ex> support (and feedkeys() for script writers)</li>
<li><ex>:time</ex> support for profiling</li>
<li>Move the text cursor and select text with Vim keys and a Visual mode</li>
<li>External editor support</li>
<li>Macros to replay key strokes</li>
<li>AutoCommands to execute actions on certain events</li>
<li>A comprehensive help system, explaining all commands, mappings and options</li>
</ul>
<h2 tag="contact">Contact</h2>
<p>
Please send comments/bug reports/patches to the mailing list, where we will
properly answer any questions. You can also join the
<link href="irc://irc.freenode.net/vimperator">#vimperator</a> IRC channel
on <link href="http://www.freenode.net/">Freenode</link> or check the
<link href="http://vimperator.org/trac/wiki/&appname;/Wiki">Wiki</link> for
<link href="http://vimperator.org/trac/wiki/&appname;/FAQ">
frequently asked questions (FAQ)
</link>. 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.
</p>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -0,0 +1,5 @@
<!ENTITY appname "Vimperator">
<!ENTITY hostapp "Firefox">
<!ELEMENT default (#PCDATA)>

View File

@@ -1,457 +0,0 @@
heading::Key{nbsp}mappings,{nbsp}abbreviations,{nbsp}and{nbsp}user-defined{nbsp}commands[]
section::Key{nbsp}mapping[key-mapping,mapping,map,macro]
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 [j]key-sequence[j],
which is translated to a string of characters. Example:
\{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.
|:map-modes| +
Keys can be mapped in four distinct modes:
* Normal mode: When browsing normally --
* Visual mode: When selecting text with the cursor keys --
* Insert mode: When interacting with text fields on a website --
* Command-line mode: When typing into the Vimperator command line --
Warning: Mappings are NOT saved between sessions, make sure you put them in your
vimperatorrc file!
subsection::Map{nbsp}commands[:map-commands]
|:map|
||:map {lhs} {rhs}|| +
|:nm| |:nmap|
||:nm[ap] {lhs} {rhs}|| +
|:vm| |:vmap|
||:vm[ap] {lhs} {rhs}|| +
|:im| |:imap|
||:im[ap] {lhs} {rhs}|| +
|:cm| |:cmap|
||:cm[ap] {lhs} {rhs}|| +
________________________________________________________________________________
Map the [j]key-sequence[j] {lhs} to {rhs} for the applicable mode(s). The {rhs} is
remapped, allowing for nested and recursive mappings.
________________________________________________________________________________
|:no| |:noremap|
||:no[remap] {lhs} {rhs}|| +
|:nn| |:nnoremap|
||:nn[oremap] {lhs} {rhs}|| +
|:vn| |:vnoremap|
||:vn[oremap] {lhs} {rhs}|| +
|:ino| |:inoremap|
||:ino[remap] {lhs} {rhs}|| +
|:cno| |:cnoremap|
||:cno[remap] {lhs} {rhs}|| +
________________________________________________________________________________
Map the [j]key-sequence[j] {lhs} to {rhs} for the applicable mode(s). No remapping of
the {rhs} is performed.
________________________________________________________________________________
|:unm| |:unmap|
||:map {lhs} {rhs}|| +
|:nun| |:nunmap|
||:nun[map] {lhs} {rhs}|| +
|:vun| |:vunmap|
||:vun[map] {lhs} {rhs}|| +
|:iu| |:iunmap|
||:iu[nmap] {lhs} {rhs}|| +
|:cu| |:cunmap|
||:cu[nmap] {lhs} {rhs}|| +
________________________________________________________________________________
Remove the mapping of {lhs} for the applicable mode(s).
________________________________________________________________________________
|:mapc| |:mapclear|
||:mapc[lear]|| +
|:nmapc| |:nmapclear|
||:nmapc[lear]|| +
|:vmapc| |:vmapclear|
||:vmapc[lear]|| +
|:imapc| |:imapclear|
||:imapc[lear]|| +
|:cmapc| |:cmapclear|
||:cmapc[lear]|| +
________________________________________________________________________________
Remove all mappings for the applicable mode(s). All user-defined mappings are
cleared.
________________________________________________________________________________
||:map|| +
||:nm[ap]|| +
||:vm[ap]|| +
||:im[ap]|| +
||:cm[ap]|| +
________________________________________________________________________________
List all mappings for the applicable mode(s).
________________________________________________________________________________
|:map_l|
||:map {lhs}|| +
|:nmap_l|
||:nm[ap] {lhs}|| +
|:vmap_l|
||:vm[ap] {lhs}|| +
|:imap_l|
||:im[ap] {lhs}|| +
|:cmap_l|
||:cm[ap] {lhs}|| +
________________________________________________________________________________
List all mappings starting with {lhs} for the applicable mode(s).
________________________________________________________________________________
subsection::Special{nbsp}arguments{nbsp}[:map-arguments]
|:map-<silent>| +
When the first argument to one of the mapping commands is [c]<silent>[c], {rhs}
is not echoed to the command line, nor, for that matter, anything else until
the command has completed.
Below is an overview of which modes each map command applies to:
// TODO: table format
:map :noremap :unmap :mapclear - both Normal and Visual modes
:nmap :nnoremap :nunmap :nmapclear - Normal mode
:vmap :vnoremap :vunmap :vmapclear - Visual mode
:imap :inoremap :iunmap :imapclear - Insert mode
:cmap :cnoremap :cunmap :cmapclear - Command-line mode
// |<>| breaks doc validation
subsection::Key{nbsp}sequences[key-notation,key-sequence]
For most keys, the key-sequence is the same as the character you see when you
type that key, however there are some exceptions which allow for a much larger
number of keys to be used in mappings.
* *<lt>*, *\<*, *<Space>*, *$$\ $$* allow a literal *<* or space character.
* *\'*, *\"* and *\\* must be used to avoid escaping issues when mapping a quote or backslash.
* *<Left>* *<Right>* *<Up>* *<Down>* *<PageUp>* *<PageDown>* *<Esc>* *<CR>* (for carriage return/enter)
* *<CapsLock>* *<NumLock>* *<Ins>* *<Del>* *<Tab>* *<BS>* (for a backspace)
* *<F1>* through *<F12>* work as expected
Most keyboards have some modifiers such as the control, alt or meta keys. In
order to create a mapping that uses these keys the correct prefix must be used
within the angle brackets.
* *<C-x>*: The control or ctrl key.
* *<A-x>*: The alt key.
* *<M-x>*: The meta key, windows key, or command key
* *<S-x>*: The shift key.
These prefixes can be combined however you see fit, though you should note that
within angle brackets all alphabetic characters are read as lowercase. In order
to force them to be uppercase, you must specify the S- prefix as well.
Additionally, you should never use the S- prefix with a number or piece of
punctuation, even if you require a shift to type that character; doing so will
give you a mapping that cannot be typed. With non-character keys, tab and
space, the S- modifier works just like C- A- and M-. Some examples may clarify
the situation:
* *xc*: type x, and then type c
* *<C-x>c*: hold control and type x, then type c without control
* *<C-2>*: type 2 while holding control
* *<C-@>*: type @ while holding control
* *<S-Space>*: press space while holding shift
* *<C-A-j>*: press j while holding control and alt
* *<C-A-J>*: exactly the same as above
* *<C-A-S-j>*: press J while holding control and alt
subsection::Special{nbsp}characters[:map-special-chars]
|<Nop>| +
||<Nop>||
________________________________________________________________________________
Do nothing. This command is useful for disabling a specific mapping. [c]:map
<C-n> <Nop>[c] will prevent [m]<C-n>[m] from doing anything.
________________________________________________________________________________
|<CR>| |map_return| +
||<CR>||
________________________________________________________________________________
Expand to a line terminator in a key mapping. An Ex command in the {rhs} of a
mapping requires a line terminator after it so that it is executed when the
mapping is expanded. [m]<CR>[m] should be used for this purpose.
________________________________________________________________________________
|<Leader>| |mapleader| +
||<Leader>||
________________________________________________________________________________
Expands to the value of the "mapleader" variable in key mapping. If
"mapleader" is unset or empty then "\" is used. Example: +
\{nbsp}[c]:map <Leader>h :echo "Hello"<CR>[c] +
works like +
\{nbsp}[c]:map \h :echo "Hello"<CR>[c] +
but after +
\{nbsp}[c]let mapleader = ","[c] +
it works like +
\{nbsp}[c]:map ,h :echo "Hello"<CR>[c]
________________________________________________________________________________
section::Abbreviations[abbreviations]
Vimperator can automatically replace words identified as abbreviations,
which may be used to save typing or to correct commonly misspelled
words. An abbreviation can be one of three types that are defined by the
types of constituent characters. Whitespace and quotes are non-keyword
types, and all other characters are keyword types.
1. A "full-id" abbreviation consists entirely of keyword characters
(e.g., "teh", "msoft").
2. An "end-id" abbreviation ends in keyword character but otherwise
contains all non-keyword characters (e.g., "'i").
3. A "non-id" abbreviation ends in a non-keyword character but otherwise
contains any non-whitespace character (e.g., "def'").
Strings that cannot be abbreviations include "a'b" and "a b".
An abbreviation is recognized when a space, quote character, or
[m]<C-]>[m] is typed after the abbreviation. There are no default
abbreviations, and abbreviations are never recursive.
|:ab| |:abbreviate|
||:ab[breviate] {lhs} {rhs}|| +
||:ab[breviate] {lhs}|| +
||:ab[breviate]||
________________________________________________________________________________
Abbreviate a key sequence. Abbreviate {lhs} to {rhs}. If only {lhs} is given,
list all abbreviations that start with {lhs}. If no arguments are given,
list all abbreviations.
________________________________________________________________________________
|:ca| |:cabbrev|
||:ca[bbrev] {lhs} {rhs}|| +
||:ca[bbrev] {lhs}|| +
||:ca[bbrev]||
________________________________________________________________________________
Abbreviate a key sequence for Command-line mode. Same as [c]:ab[breviate][c],
but for Command-line mode only.
________________________________________________________________________________
|:ia| |:iabbrev|
||:ia[bbrev] {lhs} {rhs}|| +
||:ia[bbrev] {lhs}|| +
||:ia[bbrev]||
________________________________________________________________________________
Abbreviate a key sequence for Insert mode. Same as [c]:ab[breviate][c] but
for Insert mode only.
________________________________________________________________________________
|:una| |:unabbreviate|
||:una[bbreviate] {lhs}|| +
________________________________________________________________________________
Remove an abbreviation.
________________________________________________________________________________
|:cuna| |:cunabbrev|
||:cuna[bbrev] {lhs}|| +
________________________________________________________________________________
Remove an abbreviation for Command-line mode. Same as [c]:una[bbreviate][c],
but for Command-line mode only.
________________________________________________________________________________
|:iuna| |:iunabbrev|
||:iuna[bbrev] {lhs}|| +
________________________________________________________________________________
Remove an abbreviation for Insert mode. Same as [c]:una[bbreviate][c] but for
Insert mode only.
________________________________________________________________________________
|:abc| |:abclear| +
||:abc[lear]||
________________________________________________________________________________
Remove all abbreviations.
________________________________________________________________________________
|:cabc| |:cabclear| +
||:cabc[lear]||
________________________________________________________________________________
Remove all abbreviations for Command-line mode.
________________________________________________________________________________
|:iabc| |:iabclear| +
||:iabc[lear]||
________________________________________________________________________________
Remove all abbreviations for Insert mode.
________________________________________________________________________________
section::User-defined{nbsp}commands[user-commands]
|:com| |:command|
||:com[mand]|| +
________________________________________________________________________________
List all user-defined commands.
________________________________________________________________________________
||:com[mand] {cmd}|| +
________________________________________________________________________________
List all user-defined commands that start with {cmd}.
________________________________________________________________________________
||:com[mand][!] [{attr}...] {cmd} {rep}|| +
________________________________________________________________________________
Define a new user command. The name of the command is {cmd} and its replacement
text is {rep}. The command's attributes are {attr}. If a command with this name
already exists an error is reported unless [!] is specified, in which case the
command is redefined. Unlike Vim, the command may start with a lowercase
letter.
The command's behavior can be specified by providing attributes when the
command is defined.
|E175| |E176| |:command-nargs| +
Argument handling
By default user commands accept no arguments. This can be changed by specifying
the -nargs attribute.
The valid values are:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*-nargs=0*|No arguments are allowed (default)
|*-nargs=1*|One argument is allowed
|*-nargs=**|Zero or more arguments are allowed
|*-nargs=?*|Zero or one argument is allowed
|*-nargs=+*|One or more arguments are allowed
|===============================================================================
|E180| |E181| |:command-complete| +
Argument completion
Completion for arguments to user defined commands is not available by default.
Completion can be enabled by specifying one of the following arguments to the
-complete option when defining the command.
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*altstyle* |alternate author style sheets
|*bookmark* |bookmarks
|*buffer* |buffers
|*color* |color schemes
|*command* |Ex commands
|*dialog* |Firefox dialogs
|*dir* |directories
|*environment* |environment variables
|*event* |autocommand events
|*file* |files
|*help* |help tags
|*highlight* |highlight groups
|*javascript* |JavaScript expressions
|*macro* |named macros
|*mapping* |user mappings
|*menu* |menu items
|*option* |Vimperator options
|*preference* |Firefox preferences
|*search* |search engines and keywords
|*shellcmd* |shell commands
|*sidebar* |sidebar panels
|*url* |URLs
|*usercommand* |user commands
|*custom,{func}*|custom completion, provided by {func}
|===============================================================================
|E467| |E468| |:command-completion-custom| +
Custom completion
Custom completion can be provided by specifying the "custom,{func}" argument to
-complete. The {func} is called with two arguments, a completion context, and
an object describing the command's arguments. It should set the context's
\'completions' property, or return an object, with \'items' and \'start'
properties, describing the completions and where the replacement is to start.
*start* is the index into the word being completed at which the returned values
should be applied and *completions* is a two dimensional array of the form:
[[arg1, description1], [arg2, description2], ...]
// TODO: add examples
|E177| |E178| |:command-count| +
Count handling
By default user commands do not accept a count. Use the -count attribute if
you'd like to have a count passed to your user command. This will then be
available for expansion as <count> in the argument.
|:command-bang| +
Special cases
By default a user command does not have a special version, i.e. a version
executed with the ! modifier. Providing the -bang attribute will enable this
and <bang> will be available in the argument.
|:command-description| +
Command description
The command's description text can be set with -description. Otherwise it will
default to "User-defined command".
|:command-replacement-text| +
Replacement text
The replacement text {rep} is scanned for escape sequences and these are
replaced with values from the user-entered command line. The resulting string
is then executed as an Ex command.
The valid escape sequences are:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*<args>* |The command arguments exactly as supplied
|*<count>*|Any supplied count, e.g. 5
|*<bang>* |! if the command was executed with the ! modifier
|*<lt>* |A literal '<' character to allow for a literal copy of one of the escape sequences. E.g. <lt>args> will expand to a literal <args>
|===============================================================================
"q-" can be prefixed to the escape sequence so that the value is quoted, making
it suitable for expression evaluation. Example: <q-args>
________________________________________________________________________________
|:comc| |:comclear| +
||:comc[lear]||
________________________________________________________________________________
Delete all user-defined commands.
________________________________________________________________________________
|:delc| |:delcommand|
||:delc[ommand] {cmd}|| +
________________________________________________________________________________
Delete the user-defined command {cmd}.
________________________________________________________________________________
section::Examples[command-examples]
Add a :Google command to search via google:
\{nbsp}[c]:command -nargs=* Google open google <args>[c]
// TODO: add decent examples
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,605 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="map"
title="&appname; Key Mappings"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1>Key mappings, abbreviations, and user-defined commands</h1>
<h2 tag="key-mapping mapping map macro">Key mapping</h2>
<p>
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 [j]key-sequence[j],
which is translated to a string of characters. Example:
</p>
<code><ex>:map <k name="F2"/> :echo new Date().toDateString()<k name="CR"/></ex></code>
<p>
will echo the current date to the command line when <k name="F2"/> is pressed.
</p>
<tags>:map-modes</tags>
<p>
Keys can be mapped in four distinct modes:
</p>
<ul>
<li>Normal mode: When browsing normally</li>
<li>Visual mode: When selecting text with the cursor keys</li>
<li>Insert mode: When interacting with text fields on a website</li>
<li>Command-line mode: When typing into the &appname; command line</li>
</ul>
<warning>
Mappings are NOT saved between sessions, make sure you put them in your
vimperatorrc file!
</warning>
<h3 tag=":map-commands">Map commands</h3>
<item>
<tags>:map</tags>
<spec>:map <a>lhs</a> <a>rhs</a></spec>
<tags>:nm :nmap</tags>
<spec>:nm<oa>ap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:vm :vmap</tags>
<spec>:vm<oa>ap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:im :imap</tags>
<spec>:im<oa>ap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:cm :cmap</tags>
<spec>:cm<oa>ap</oa> <a>lhs</a> <a>rhs</a></spec>
<description>
<p>
Map the [j]key-sequence[j] <a>lhs</a> to <a>rhs</a> for the applicable mode(s). The <a>rhs</a> is
remapped, allowing for nested and recursive mappings.
</p>
</description>
</item>
<item>
<tags>:no :noremap</tags>
<spec>:no<oa>remap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:nn :nnoremap</tags>
<spec>:nn<oa>oremap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:vn :vnoremap</tags>
<spec>:vn<oa>oremap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:ino :inoremap</tags>
<spec>:ino<oa>remap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:cno :cnoremap</tags>
<spec>:cno<oa>remap</oa> <a>lhs</a> <a>rhs</a></spec>
<description>
<p>
Map the [j]key-sequence[j] <a>lhs</a> to <a>rhs</a> for the applicable mode(s). No remapping of
the <a>rhs</a> is performed.
</p>
</description>
</item>
<item>
<tags>:unm :unmap</tags>
<spec>:map <a>lhs</a> <a>rhs</a></spec>
<tags>:nun :nunmap</tags>
<spec>:nun<oa>map</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:vun :vunmap</tags>
<spec>:vun<oa>map</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:iu :iunmap</tags>
<spec>:iu<oa>nmap</oa> <a>lhs</a> <a>rhs</a></spec>
<tags>:cu :cunmap</tags>
<spec>:cu<oa>nmap</oa> <a>lhs</a> <a>rhs</a></spec>
<description>
<p>Remove the mapping of <a>lhs</a> for the applicable mode(s).</p>
</description>
</item>
<item>
<tags>:mapc :mapclear</tags>
<spec>:mapc<oa>lear</oa></spec>
<tags>:nmapc :nmapclear</tags>
<spec>:nmapc<oa>lear</oa></spec>
<tags>:vmapc :vmapclear</tags>
<spec>:vmapc<oa>lear</oa></spec>
<tags>:imapc :imapclear</tags>
<spec>:imapc<oa>lear</oa></spec>
<tags>:cmapc :cmapclear</tags>
<spec>:cmapc<oa>lear</oa></spec>
<description>
<p>
Remove all mappings for the applicable mode(s). All user-defined mappings are
cleared.
</p>
</description>
</item>
<item>
<spec>:map</spec>
<spec>:nm<oa>ap</oa></spec>
<spec>:vm<oa>ap</oa></spec>
<spec>:im<oa>ap</oa></spec>
<spec>:cm<oa>ap</oa></spec>
<description>
<p>List all mappings for the applicable mode(s).</p>
</description>
</item>
<item>
<tags>:map_l</tags>
<spec>:map <a>lhs</a></spec>
<tags>:nmap_l</tags>
<spec>:nm<oa>ap</oa> <a>lhs</a></spec>
<tags>:vmap_l</tags>
<spec>:vm<oa>ap</oa> <a>lhs</a></spec>
<tags>:imap_l</tags>
<spec>:im<oa>ap</oa> <a>lhs</a></spec>
<tags>:cmap_l</tags>
<spec>:cm<oa>ap</oa> <a>lhs</a></spec>
<description>
<p>List all mappings starting with <a>lhs</a> for the applicable mode(s).</p>
</description>
</item>
<h3 tag=":map-arguments">Special arguments</h3>
<tags>:map-&lt;silent></tags>
<p>
When the first argument to one of the mapping commands is <k name="silent"/>,
<a>rhs</a> is not echoed to the command line, nor, for that matter, anything
else until the command has completed.
</p>
<p>
Below is an overview of which modes each map command applies to:
</p>
<!-- TODO: table format -->
<code>
:map :noremap :unmap :mapclear both Normal and Visual modes
:nmap :nnoremap :nunmap :nmapclear Normal mode
:vmap :vnoremap :vunmap :vmapclear Visual mode
:imap :inoremap :iunmap :imapclear Insert mode
:cmap :cnoremap :cunmap :cmapclear Command-line mode
</code>
<h3 tag="key-notation,key-sequence">Key sequences</h3>
<p>
For most keys, the key-sequence is the same as the character you see when you
type that key, however there are some exceptions which allow for a much larger
number of keys to be used in mappings.
</p>
<ul>
<li><k name="lt"/>, <k>&lt;</k>, <k name="Space"/>, <k>\ </k> allow a literal &lt; or space character.</li>
<li>', " and \ must be used to avoid escaping issues when mapping a quote or backslash.</li>
<li>
<k name="Left"/> <k name="Right"/> <k name="Up"/>
<k name="Down"/> <k name="PageUp"/> <k name="PageDown"/>
<k name="Esc"/> <k name="CR"/> (for carriage return/enter)
</li>
<li><k name="CapsLock"/> <k name="NumLock"/> <k name="Ins"/> <k name="Del"/> <k name="Tab"/> <k name="BS"/> (for a backspace)</li>
<li><k name="F1"/> through <k name="F12"/> work as expected</li>
</ul>
<p>
Most keyboards have some modifiers such as the control, alt or meta keys. In
order to create a mapping that uses these keys the correct prefix must be used
within the angle brackets.
</p>
<ol>
<li><k name="C-x"/>: The control or ctrl key.</li>
<li><k name="A-x"/>: The alt key.</li>
<li><k name="M-x"/>: The meta key, windows key, or command key</li>
<li><k name="S-x"/>: The shift key.</li>
</ol>
<p>
These prefixes can be combined however you see fit, though you should note that
within angle brackets all alphabetic characters are read as lowercase. In order
to force them to be uppercase, you must specify the S- prefix as well.
Additionally, you should never use the S- prefix with a number or piece of
punctuation, even if you require a shift to type that character; doing so will
give you a mapping that cannot be typed. With non-character keys, tab and
space, the S- modifier works just like C- A- and M-. Some examples may clarify
the situation:
</p>
<ol>
<li><k>xc</k>: type x, and then type c</li>
<li><k name="C-x">c</k>: hold control and type x, then type c without control</li>
<li><k name="C-2"/>: type 2 while holding control</li>
<li><k name="C-@"/>: type @ while holding control</li>
<li><k name="S-Space"/>: press space while holding shift</li>
<li><k name="C-A-j"/>: press j while holding control and alt</li>
<li><k name="C-A-J"/>: exactly the same as above</li>
<li><k name="C-A-S-j"/>: press J while holding control and alt</li>
</ol>
<h3 tag=":map-special-chars">Special characters</h3>
<item>
<tags><![CDATA[<Nop>]]></tags>
<spec>&lt;Nop></spec>
<description>
<p>
Do nothing. This command is useful for disabling a specific mapping.
<ex>:map <k name="C-n"/> <k name="Nop"/></ex> will prevent <k name="C-n"/> from doing anything.
</p>
</description>
</item>
<item>
<tags><![CDATA[<CR> map_return]]></tags>
<spec>&lt;CR></spec>
<description>
<p>
Expand to a line terminator in a key mapping. An Ex command in the <a>rhs</a> of a
mapping requires a line terminator after it so that it is executed when the
mapping is expanded. <k name="CR"/> should be used for this purpose.
</p>
</description>
</item>
<item>
<tags><![CDATA[<Leader> mapleader]]></tags>
<spec>&lt;Leader></spec>
<description>
<p>
Expands to the value of the "mapleader" variable in key mapping. If
"mapleader" is unset or empty then <str>\</str> is used. Example:
</p>
<code><ex>:map <k name="Leader"/>h :echo <str>Hello</str><k name="CR"/></ex></code>
<p>works like</p>
<code><ex>:map \h :echo <str>Hello</str><k name="CR"/></ex></code>
<p>but after</p>
<code><ex>let mapleader = <str>,</str></ex></code>
<p>it works like</p>
<code><ex>:map ,h :echo <str>Hello</str><k name="CR"/></ex></code>
</description>
</item>
<h2 tag="abbreviations">Abbreviations</h2>
<p>
&appname; can automatically replace words identified as abbreviations,
which may be used to save typing or to correct commonly misspelled
words. An abbreviation can be one of three types that are defined by the
types of constituent characters. Whitespace and quotes are non-keyword
types, and all other characters are keyword types.
</p>
<ol>
<li>A "full-id" abbreviation consists entirely of keyword characters (e.g., "teh", "msoft").</li>
<li>An "end-id" abbreviation ends in keyword character but otherwise contains all non-keyword characters (e.g., "'i").</li>
<li>A "non-id" abbreviation ends in a non-keyword character but otherwise contains any non-whitespace character (e.g., "def'").</li>
</ol>
<p>
Strings that cannot be abbreviations include "a'b" and "a b".
</p>
<p>
An abbreviation is recognized when a space, quote character, or
<k name="C-]"/> is typed after the abbreviation. There are no default
abbreviations, and abbreviations are never recursive.
</p>
<item>
<tags>:ab :abbreviate</tags>
<spec>:ab<oa>breviate</oa> <a>lhs</a> <a>rhs</a></spec>
<spec>:ab<oa>breviate</oa> <a>lhs</a></spec>
<spec>:ab<oa>breviate</oa></spec>
<description>
<p>
Abbreviate a key sequence. Abbreviate <a>lhs</a> to <a>rhs</a>. If only <a>lhs</a> is given,
list all abbreviations that start with <a>lhs</a>. If no arguments are given,
list all abbreviations.
</p>
</description>
</item>
<item>
<tags>:ca :cabbrev</tags>
<spec>:ca<oa>bbrev</oa> <a>lhs</a> <a>rhs</a></spec>
<spec>:ca<oa>bbrev</oa> <a>lhs</a></spec>
<spec>:ca<oa>bbrev</oa></spec>
<description>
<p>
Abbreviate a key sequence for Command-line mode. Same as <ex>:ab<oa>breviate</oa></ex>,
but for Command-line mode only.
</p>
</description>
</item>
<item>
<tags>:ia :iabbrev</tags>
<spec>:ia<oa>bbrev</oa> <a>lhs</a> <a>rhs</a></spec>
<spec>:ia<oa>bbrev</oa> <a>lhs</a></spec>
<spec>:ia<oa>bbrev</oa></spec>
<description>
<p>
Abbreviate a key sequence for Insert mode. Same as <ex>:ab<oa>breviate</oa></ex> but
for Insert mode only.
</p>
</description>
</item>
<item>
<tags>:una :unabbreviate</tags>
<spec>:una<oa>bbreviate</oa> <a>lhs</a></spec>
<description>
<p>Remove an abbreviation.</p>
</description>
</item>
<item>
<tags>:cuna :cunabbrev</tags>
<spec>:cuna<oa>bbrev</oa> <a>lhs</a></spec>
<description>
<p>
Remove an abbreviation for Command-line mode. Same as <ex>:una<oa>bbreviate</oa></ex>,
but for Command-line mode only.
</p>
</description>
</item>
<item>
<tags>:iuna :iunabbrev</tags>
<spec>:iuna<oa>bbrev</oa> <a>lhs</a></spec>
<description>
<p>
Remove an abbreviation for Insert mode. Same as <ex>:una<oa>bbreviate</oa></ex> but for
Insert mode only.
</p>
</description>
</item>
<item>
<tags>:abc :abclear</tags>
<spec>:abc<oa>lear</oa></spec>
<description>
<p>Remove all abbreviations.</p>
</description>
</item>
<item>
<tags>:cabc :cabclear</tags>
<spec>:cabc<oa>lear</oa></spec>
<description>
<p>Remove all abbreviations for Command-line mode.</p>
</description>
</item>
<item>
<tags>:iabc :iabclear</tags>
<spec>:iabc<oa>lear</oa></spec>
<description>
<p>Remove all abbreviations for Insert mode.</p>
</description>
</item>
<h2 tag="user-commands">User-defined commands</h2>
<item>
<tags>:com :command</tags>
<spec>:com<oa>mand</oa></spec>
<description>
<p>List all user-defined commands.</p>
</description>
</item>
<item>
<spec>:com<oa>mand</oa> <a>cmd</a></spec>
<description>
<p>List all user-defined commands that start with <a>cmd</a>.</p>
</description>
</item>
<item>
<spec>:com<oa>mand</oa><oa>!</oa> <oa><a>attr</a></oa> <a>cmd</a> <a>rep</a></spec>
<description>
<p>
Define a new user command. The name of the command is <a>cmd</a> and its replacement
text is <a>rep</a>. The command's attributes are <a>attr</a>. If a command with this name
already exists an error is reported unless <oa>!</oa> is specified, in which case the
command is redefined. Unlike Vim, the command may start with a lowercase
letter.
</p>
<p>
The command's behavior can be specified by providing attributes when the
command is defined.
</p>
<p tag="E175 E176 :command-nargs">
Argument handling
</p>
<p>
By default user commands accept no arguments. This can be changed by specifying
the -nargs attribute.
</p>
<p>The valid values are:</p>
<dl>
<dt>-nargs=0</dt><dd>No arguments are allowed (default)</dd>
<dt>-nargs=1</dt><dd>One argument is allowed</dd>
<dt>-nargs=*</dt><dd>Zero or more arguments are allowed</dd>
<dt>-nargs=?</dt><dd>Zero or one argument is allowed</dd>
<dt>-nargs=+</dt><dd>One or more arguments are allowed</dd>
</dl>
<p tag="E180 E181 :command-complete">
Argument completion
</p>
<p>
Completion for arguments to user defined commands is not available by default.
Completion can be enabled by specifying one of the following arguments to the
-complete option when defining the command.
</p>
<dl>
<dt>altstyle</dt> <dd>alternate author style sheets</dd>
<dt>bookmark</dt> <dd>bookmarks</dd>
<dt>buffer</dt> <dd>buffers</dd>
<dt>color</dt> <dd>color schemes</dd>
<dt>command</dt> <dd>Ex commands</dd>
<dt>dialog</dt> <dd>&hostapp; dialogs</dd>
<dt>dir</dt> <dd>directories</dd>
<dt>environment</dt> <dd>environment variables</dd>
<dt>event</dt> <dd>autocommand events</dd>
<dt>file</dt> <dd>files</dd>
<dt>help</dt> <dd>help tags</dd>
<dt>highlight</dt> <dd>highlight groups</dd>
<dt>javascript</dt> <dd>JavaScript expressions</dd>
<dt>macro</dt> <dd>named macros</dd>
<dt>mapping</dt> <dd>user mappings</dd>
<dt>menu</dt> <dd>menu items</dd>
<dt>option</dt> <dd>&appname; options</dd>
<dt>preference</dt> <dd>&hostapp; preferences</dd>
<dt>search</dt> <dd>search engines and keywords</dd>
<dt>shellcmd</dt> <dd>shell commands</dd>
<dt>sidebar</dt> <dd>sidebar panels</dd>
<dt>url</dt> <dd>URLs</dd>
<dt>usercommand</dt> <dd>user commands</dd>
<dt>custom,<a>func</a></dt><dd>custom completion, provided by <a>func</a></dd>
</dl>
<p tag="E467 E468 :command-completion-custom">
Custom completion
</p>
<p>
Custom completion can be provided by specifying the <str>custom,<a>func</a></str> argument to
-complete. The <a>func</a> is called with two arguments, a completion context, and
an object describing the command's arguments. It should set the context's
<str>completions</str> property, or return an object, with <str>items</str> and <str>start</str>
properties, describing the completions and where the replacement is to start.
</p>
<p>
<em>start</em> is the index into the word being completed at which the returned values
should be applied and <em>completions</em> is a two dimensional array of the form:
[[arg1, description1], [arg2, description2], …]
</p>
<!-- TODO: add examples -->
<p tag="E177 E178 :command-count">
Count handling
</p>
<p>
By default user commands do not accept a count. Use the -count attribute if
you'd like to have a count passed to your user command. This will then be
available for expansion as &lt;count> in the argument.
</p>
<p tag=":command-bang">
Special cases
</p>
<p>
By default a user command does not have a special version, i.e. a version
executed with the ! modifier. Providing the -bang attribute will enable this
and &lt;bang> will be available in the argument.
</p>
<p tag=":command-description">
Command description
</p>
<p>
The command's description text can be set with -description. Otherwise it will
default to "User-defined command".
</p>
<p tag=":command-replacement-text">
Replacement text
</p>
<p>
The replacement text <a>rep</a> is scanned for escape sequences and these are
replaced with values from the user-entered command line. The resulting string
is then executed as an Ex command.
</p>
<p>The valid escape sequences are:</p>
<dl>
<dt>&lt;args></dt> <dd>The command arguments exactly as supplied</dd>
<dt>&lt;count></dt><dd>Any supplied count, e.g. 5</dd>
<dt>&lt;bang></dt> <dd>! if the command was executed with the ! modifier</dd>
<dt>&lt;lt></dt>
<dd>
A literal '&lt;' character to allow for a literal copy of one
of the escape sequences. E.g., &lt;lt>args> will expand to a
literal &lt;args>
</dd>
</dl>
<p>
"q-" can be prefixed to the escape sequence so that the value is quoted, making
it suitable for expression evaluation. Example: &lt;q-args>
</p>
</description>
</item>
<item>
<tags>:comc :comclear</tags>
<spec>:comc<oa>lear</oa></spec>
<description>
<p>Delete all user-defined commands.</p>
</description>
</item>
<item>
<tags>:delc :delcommand</tags>
<spec>:delc<oa>ommand</oa> <a>cmd</a></spec>
<description>
<p>Delete the user-defined command <a>cmd</a>.</p>
</description>
</item>
<h2 tag="command-examples">Examples</h2>
<p>Add a :Google command to search via google:</p>
<code><ex>:command -nargs=* Google open google &lt;args></ex></code>
<!-- TODO: add decent examples -->
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,251 +0,0 @@
heading::Marks[different-marks,marks]
Vimperator supports a number of different marks:
- Bookmarks which allow you to mark a web page as one of your favorites for
easy access.
- QuickMarks allow you to define up to 62 (a-zA-Z0-9) web sites (or groups of
web sites) which you visit most often.
- Local marks to store the position within a web page.
- History is also a special type of marks, as Vimperator automatically
remembers sites which you have visited in the past.
section::Bookmarks[bookmarks]
|a| |:bma| |:bmark|
||:bma[rk][!] [a][-title=title][a] [a][-keyword=kw][a] [a][-tags=tag1,tag2][a] [a][url][a]|| +
||a||
____________________________________________________________________________
Add a bookmark. +
The following options are interpreted:
- -title="custom title" (short option: -t)
- -tags=comma,separated,tag,list (short option: -T)
- -keyword=keyword (short option: -k)
If [!] is present, a new bookmark is always added. Otherwise, the first
bookmark matching [a][url][a] is updated.
When creating a new bookmark, if [a][-title][a] isn't given, either the web
page's title or URL is used. You can omit the optional [a][url][a] argument, so
just do [c]:bmark[c] to bookmark the currently loaded web page with a default
title and without any tags.
____________________________________________________________________________
|A| +
||A||
________________________________________________________________________________
Toggle bookmarked state of current URL. Add/remove a bookmark for the current
location, depending on if it is already bookmarked or not. In contrast to the
[c]:bmark[c] command, the bookmark is just _starred_ which means it is placed
in the _Unfiled Bookmarks Folder_ instead of the bookmarks menu.
________________________________________________________________________________
|:bmarks|
||:bmarks[!] [a][filter][a]|| +
________________________________________________________________________________
List or open multiple bookmarks. Open the message window at the bottom of the
screen with all bookmarks which match [a][filter][a] either in the title or
URL. You can then use extended hint commands like [m];o[m] to open the desired
bookmark.
The special version [c]:bmarks![c] works the same as [c]:bmarks[c] except it
opens all the found bookmarks in new tabs.
Filter can also contain the following options: +
-tags=comma,separated,tag,list (short option: -T) +
-max=N (short options: -m)
________________________________________________________________________________
|:delbm| |:delbmarks|
||:delbm[arks] [a][url][a]|| +
||:delbm[arks]!||
________________________________________________________________________________
Delete a bookmark. Deletes *all* bookmarks which match the [a][url][a]. If
omitted, [a][url][a] defaults to the URL of the current buffer. Use [m]<Tab>[m]
key on a string to complete the URL which you want to delete.
If ! is specified then all bookmarks will be deleted.
________________________________________________________________________________
// TODO: why is this duplicated in browsing?
section::History[history]
|<C-o>| +
||[count]<C-o>||
________________________________________________________________________________
Go to an older position in the jump list. The jump list is just the browser
history for now. If [count] is specified go back [count] pages.
________________________________________________________________________________
|<C-i>| +
||[count]<C-i>||
________________________________________________________________________________
Go to a newer position in the jump list. The jump list is just the browser
history for now. If [count] is specified go forward [count] pages.
________________________________________________________________________________
|<M-Left>| |<A-Left>| |H| +
||[count]H||
________________________________________________________________________________
Go back in the browser history. If [count] is specified go back [count] pages.
________________________________________________________________________________
|<M-Right>| |<A-Right>| |L| +
||[count]L||
________________________________________________________________________________
Go forward in the browser history. If [count] is specified go forward [count]
pages.
________________________________________________________________________________
|:ba| |:back|
||:[count]ba[ck] [a][url][a]|| +
||:[count]ba[ck]!|| +
________________________________________________________________________________
Go back in the browser history. If [count] is specified go back [count] pages. +
The special version [c]:back![c] goes to the beginning of the browser history.
________________________________________________________________________________
|:fw| |:fo| |:forward|
||:[count]fo[rward] [a][url][a]|| +
||:[count]fo[rward]!|| +
________________________________________________________________________________
Go forward in the browser history. If [count] is specified go forward [count]
pages. +
The special version [c]:forward![c] goes to the end of the browser history.
________________________________________________________________________________
|:hs| |:hist| |:history|
||:hist[ory][!] [a][filter][a]|| +
________________________________________________________________________________
Show recently visited URLs. Open the message window at the bottom of the screen
with all history items which match [a][filter][a] either in the title or URL.
The special version [c]:history![c] works the same as [c]:history[c] except
it opens all the found items in new tabs.
Filter can also contain the following options: +
-max=N (short options: -m)
________________________________________________________________________________
section::QuickMarks[quickmarks]
|go| +
||go[a]{a-zA-Z0-9}[a]||
________________________________________________________________________________
Jump to a QuickMark in the current tab. Open any QuickMark in the current tab.
You can mark any URLs with [m]M[m][a]{a-zA-Z0-9}[a]. These QuickMarks are
persistent across browser sessions.
________________________________________________________________________________
|gn| +
||gn[a]{a-zA-Z0-9}[a]||
________________________________________________________________________________
Jump to a QuickMark in a new tab. Works like [m]go[m][a]{a-zA-Z0-9}[a] but
opens the QuickMark in a new tab. Whether the new tab is activated or not
depends on the 'activate' option. +
Mnemonic: Go in a new tab. [m]gt[m] would make more sense but is already
taken.
________________________________________________________________________________
|M| +
||M[a]{a-zA-Z0-9}[a]||
________________________________________________________________________________
Add new QuickMark for current URL. You can go to a marked URL in the current
tab with [m]go[m][a]{a-zA-Z0-9}[a] or in a new tab with
[m]gn[m][a]{a-zA-Z0-9}[a]. These QuickMarks are persistent across browser
sessions.
________________________________________________________________________________
|:delqm| |:delqmarks|
||:delqm[arks] {marks}|| +
||:delqm[arks]!||
________________________________________________________________________________
Delete the specified QuickMarks. QuickMarks are presented as a list.
Examples:
* [c]:delqmarks Aa b p[c] deletes QuickMarks A, a, b and p +
* [c]:delqmarks b-p[c] deletes all QuickMarks in the range b to p +
* [c]:delqmarks![c] deletes all QuickMarks
________________________________________________________________________________
|:qma| |:qmark|
||:qma[rk] {a-zA-Z0-9} [a][url][a]|| +
________________________________________________________________________________
Mark a URL with a letter for quick access. You can also mark whole groups
like this: +
[c]:qmark f +++http://forum1.com+++, +++http://forum2.com+++, imdb some artist[c]
________________________________________________________________________________
|:qmarks|
||:qmarks [a][arg][a]||
________________________________________________________________________________
Show all QuickMarks. If [a][arg][a] is specified then limit the list to those
QuickMarks mentioned.
________________________________________________________________________________
section::Local{nbsp}marks[localmarks]
|m| +
||m[a]{a-zA-Z}[a]||
________________________________________________________________________________
Set mark at the cursor position. Marks a-z are local to the buffer, whereas
A-Z are valid between buffers.
________________________________________________________________________________
|$$`$$| |$$'$$| +
||'[a]{a-zA-Z}[a]||
________________________________________________________________________________
Jump to the mark. Marks a-z are local to the buffer, whereas A-Z are valid
between buffers.
________________________________________________________________________________
|:delm| |:delmarks|
||:delm[arks] {marks}|| +
||:delm[arks]!||
________________________________________________________________________________
Delete the specified marks. Marks are presented as a list.
Examples:
* [c]:delmarks Aa b p[c] deletes marks A, a, b and p +
* [c]:delmarks b-p[c] deletes all marks in the range b to p +
* [c]:delmarks![c] deletes all marks for the current buffer
________________________________________________________________________________
|:ma| |:mark|
||:ma[rk] {a-zA-Z}||
________________________________________________________________________________
Mark current location within the web page.
________________________________________________________________________________
|:marks| +
||:marks [a][arg][a]||
________________________________________________________________________________
Show all location marks of the current web page. If [a][arg][a] is specified then
limit the list to those marks mentioned.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,353 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="marks"
title="&appname; Marks"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="different-marks marks">Marks</h1>
<p>
Vimperator supports a number of different marks:
</p>
<ul>
<li>Bookmarks which allow you to mark a web page as one of your favorites for easy access.</li>
<li>QuickMarks allow you to define up to 62 (a-zA-Z0-9) web sites (or groups of web sites) which you visit most often.</li>
<li>Local marks to store the position within a web page.</li>
<li>History is also a special type of marks, as Vimperator automatically remembers sites which you have visited in the past.</li>
</ul>
<h1 tag="bookmarks">Bookmarks</h1>
<item>
<tags>a :bma :bmark</tags>
<spec>:bma[rk][!] <oa>-title=title</oa> <oa>-keyword=kw</oa> <oa>-tag=tag1,tag2</oa> <oa>url</oa></spec>
<spec>a</spec>
<description>
<p>Add a bookmark.</p>
<p>The following options are interpreted:</p>
<ul>
<li>-title="custom title" (short option: -t)</li>
<li>-tag=comma,separated,tag,list (short option: -T)</li>
<li>-keyword=keyword (short option: -k)</li>
</ul>
<p>
If [!] is present, a new bookmark is always added. Otherwise, the first
bookmark matching <oa>url</oa> is updated.
</p>
<p>
When creating a new bookmark, if <oa>-title</oa> isn't given, either the web
page's title or URL is used. You can omit the optional <oa>url</oa> argument, so
just do <ex>:bmark</ex> to bookmark the currently loaded web page with a default
title and without any tags.
</p>
</description>
</item>
<item>
<tags>A</tags>
<spec>A</spec>
<description>
<p>
Toggle bookmarked state of current URL. Add/remove a bookmark for the current
location, depending on if it is already bookmarked or not. In contrast to the
<ex>:bmark</ex> command, the bookmark is just _starred_ which means it is placed
in the _Unfiled Bookmarks Folder_ instead of the bookmarks menu.
</p>
</description>
</item>
<item>
<tags>:bmarks</tags>
<spec>:bmarks[!] <oa>filter</oa></spec>
<description>
<p>
List or open multiple bookmarks. Open the message window at the bottom of the
screen with all bookmarks which match <oa>filter</oa> either in the title or
URL. You can then use extended hint commands like <k>;o</k> to open the desired
bookmark.
</p>
<p>
The special version <ex>:bmarks!</ex> works the same as <ex>:bmarks</ex> except it
opens all the found bookmarks in new tabs.
</p>
<p>Filter can also contain the following options:</p>
<ul>
<li>-tag=comma,separated,tag,list (short option: -T)</li>
<li>-max=N (short options: -m)</li>
</ul>
</description>
</item>
<item>
<tags>:delbm :delbmarks</tags>
<spec>:delbm[arks] <oa>url</oa></spec>
<spec>:delbm[arks]!</spec>
<description>
<p>
Delete a bookmark. Deletes *all* bookmarks which match the <oa>url</oa>. If
omitted, <oa>url</oa> defaults to the URL of the current buffer. Use <k name="Tab"/>
key on a string to complete the URL which you want to delete.
</p>
<p>If ! is specified then all bookmarks will be deleted.</p>
</description>
</item>
<!-- TODO: why is this duplicated in browsing? -->
<h1 tag="history">History</h1>
<item>
<tags><![CDATA[<C-o>]]></tags>
<spec><![CDATA[[count]<C-o>]]></spec>
<description>
<p>
Go to an older position in the jump list. The jump list is just the browser
history for now. If <oa>count</oa> is specified go back <oa>count</oa> pages.
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-i>]]></tags>
<spec><![CDATA[[count]<C-i>]]></spec>
<description>
<p>
Go to a newer position in the jump list. The jump list
is just the browser history for now. If <oa>count</oa>
is specified go forward <oa>count</oa> pages.
</p>
</description>
</item>
<item>
<tags><![CDATA[<M-Left> <A-Left> H]]></tags>
<spec>[count]H</spec>
<description>
<p>Go back in the browser history. If <oa>count</oa> is specified go back <oa>count</oa> pages.</p>
</description>
</item>
<item>
<tags><![CDATA[<M-Right> <A-Right> L]]></tags>
<spec>[count]L</spec>
<description>
<p>
Go forward in the browser history. If <oa>count</oa> is specified go forward <oa>count</oa>
pages.
</p>
</description>
</item>
<item>
<tags>:ba :back</tags>
<spec>:[count]ba[ck] <oa>url</oa></spec>
<spec>:[count]ba[ck]!</spec>
<description>
<p>
Go back in the browser history. If <oa>count</oa> is specified go back <oa>count</oa> pages.
</p>
<p>
The special version <ex>:back!</ex> goes to the beginning of the browser history.
</p>
</description>
</item>
<item>
<tags>:fw :fo :forward</tags>
<spec>:[count]fo[rward] <oa>url</oa></spec>
<spec>:[count]fo[rward]!</spec>
<description>
<p>
Go forward in the browser history. If <oa>count</oa> is specified go forward <oa>count</oa>
pages.
</p>
<p>
The special version <ex>:forward!</ex> goes to the end of the browser history.
</p>
</description>
</item>
<item>
<tags>:hs :hist :history</tags>
<spec>:hist[ory][!] <oa>filter</oa></spec>
<description>
<p>
Show recently visited URLs. Open the message window at the bottom of the screen
with all history items which match <oa>filter</oa> either in the title or URL.
</p>
<p>
The special version <ex>:history!</ex> works the same as <ex>:history</ex> except
it opens all the found items in new tabs.
</p>
<p>Filter can also contain the following options:</p>
<ul>
<li>-max=N (short options: -m)</li>
</ul>
</description>
</item>
<h1 tag="quickmarks">QuickMarks</h1>
<item>
<tags>go</tags>
<spec>a-zA-Z0-9</spec>
<description>
<p>
Jump to a QuickMark in the current tab. Open any QuickMark in the current tab.
You can mark any URLs with <k>M</k><a>a-zA-Z0-9</a>. These QuickMarks are
persistent across browser sessions.
</p>
</description>
</item>
<item>
<tags>gn</tags>
<spec>a-zA-Z0-9</spec>
<description>
<p>
Jump to a QuickMark in a new tab. Works like
<k>go</k><a>a-zA-Z0-9</a> but opens the QuickMark in a
new tab. Whether the new tab is activated or not depends
on the <o>activate</o> option.
</p>
<p>
Mnemonic: Go in a new tab. <k>gt</k> would make more
sense but is already taken.
</p>
</description>
</item>
<item>
<tags>M</tags>
<spec>a-zA-Z0-9</spec>
<description>
<p>
Add new QuickMark for current URL. You can go to a
marked URL in the current tab with
<k>go</k><a>a-zA-Z0-9</a> or in a new tab with
<k>gn</k><a>a-zA-Z0-9</a>. These QuickMarks are
persistent across browser sessions.
</p>
</description>
</item>
<item>
<tags>:delqm :delqmarks</tags>
<spec>marks</spec>
<spec>:delqm[arks]!</spec>
<description>
<p>Delete the specified QuickMarks. QuickMarks are presented as a list.</p>
<p>Examples:</p>
<ul>
<li><ex>:delqmarks Aa b p</ex> deletes QuickMarks A, a, b and p</li>
<li><ex>:delqmarks b-p</ex> deletes all QuickMarks in the range b to p</li>
<li><ex>:delqmarks!</ex> deletes all QuickMarks</li>
</ul>
</description>
</item>
<item>
<tags>:qma :qmark</tags>
<spec>a-zA-Z0-9</spec>
<description>
<p>
Mark a URL with a letter for quick access. You can also mark whole groups
like this:
</p>
<p>
<ex>:qmark f http://forum1.com, http://forum2.com, imdb some artist</ex>
</p>
</description>
</item>
<item>
<tags>:qmarks</tags>
<spec>:qmarks <oa>arg</oa></spec>
<description>
<p>
Show all QuickMarks. If <oa>arg</oa> is specified then
limit the list to those QuickMarks mentioned.
</p>
</description>
</item>
<h1 tag="localmarks">Local marks</h1>
<item>
<tags>m</tags>
<spec>a-zA-Z</spec>
<description>
<p>
Set mark at the cursor position. Marks a-z are local to the buffer, whereas
A-Z are valid between buffers.
</p>
</description>
</item>
<item>
<tags>` '</tags>
<spec>a-zA-Z</spec>
<description>
<p>
Jump to the mark. Marks a-z are local to the buffer, whereas A-Z are valid
between buffers.
</p>
</description>
</item>
<item>
<tags>:delm :delmarks</tags>
<spec>marks</spec>
<spec>:delm[arks]!</spec>
<description>
<p>Delete the specified marks. Marks are presented as a list.</p>
<p>Examples:</p>
<ul>
<li><ex>:delmarks Aa b p</ex> deletes marks A, a, b and p</li>
<li><ex>:delmarks b-p</ex> deletes all marks in the range b to p</li>
<li><ex>:delmarks!</ex> deletes all marks for the current buffer</li>
</ul>
</description>
</item>
<item>
<tags>:ma :mark</tags>
<spec>a-zA-Z</spec>
<description>
<p>Mark current location within the web page.</p>
</description>
</item>
<item>
<tags>:marks</tags>
<spec>:marks <oa>arg</oa></spec>
<description>
<p>
Show all location marks of the current web page. If
<oa>arg</oa> is specified then limit the list to those
marks mentioned.
</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,59 +0,0 @@
heading::Error{nbsp}and{nbsp}informational{nbsp}messages[messages]
|message-history| +
Vimperator stores all info and error messages in a message history. The type of
info messages output can be controlled by the 'verbose' option. The number of
stored messages can be set with the 'messages' option.
|:mes| |:messages| +
||:mes[sages]||
________________________________________________________________________________
Display previously given messages.
________________________________________________________________________________
|:messc| |:messclear| +
||:messc[lear]||
________________________________________________________________________________
Clear the message history.
________________________________________________________________________________
|g<| +
||g<||
________________________________________________________________________________
Redisplay the last command output. Only the most recent command's output is
available.
________________________________________________________________________________
|pager| |more-prompt| +
-- More --
-- More -- SPACE/d/j: screen/page/line down, b/u/k: up, q: quit
This message is given when the message window is filled with messages. It is
only given when the 'more' option is on. It is highlighted with the *MoreMsg*
group.
[frame="none",grid="none",cols="1,2",options="header"]
|===============================================================================
|Type |effect
|<CR> or j or <Down> |one more line
|d |down a page (half a screen)
|<Space> or <PageDown> |down a screen
|G |down all the way, until the hit-enter prompt
|
|<BS> or k or <Up> |one line back
|u |up a page (half a screen)
|b or <PageUp> |back a screen
|g |back to the start
|
|q, <Esc> or CTRL-C |stop the listing
|: |stop the listing and enter a command-line
|; |start an [j]extended-hints[j] command
|<C-Y> |yank (copy) a modeless selection to the clipboard
|===============================================================================
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="message"
title="&appname; Messages"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="messages">Error and informational messages</h1>
<tags>message-history</tags>
<p>
&appname; stores all info and error messages in a message
history. The type of info messages output can be controlled by
the <o>verbose</o> option. The number of stored messages can be set
with the <o>messages</o> option.
</p>
<item>
<tags>:mes :messages</tags>
<spec>:mes<oa>sages</oa></spec>
<description>
<p>Display previously given messages.</p>
</description>
</item>
<item>
<tags>:messc :messclear</tags>
<spec>:messc<oa>lear</oa></spec>
<description>
<p>Clear the message history.</p>
</description>
</item>
<item>
<tags><![CDATA[g<]]></tags>
<spec>g&lt;</spec>
<description>
<p>
Redisplay the last command output. Only the most recent command's output is
available.
</p>
</description>
</item>
<tags>pager more-prompt</tags>
<code>
-- More --
-- More -- SPACE/d/j: screen/page/line down, b/u/k: up, q: quit
</code>
<p>
This message is given when the message window is filled with messages. It is
only given when the <o>more</o> option is on. It is highlighted with the <em>MoreMsg</em>
group.
</p>
<dl>
<dt><k name="CR"/> or j or <k name="Down"/> </dt><dd>one more line</dd>
<dt>d </dt><dd>down a page (half a screen)</dd>
<dt><k name="Space"/> or <k name="PageDown"/></dt><dd>down a screen</dd>
<dt>G </dt><dd>down all the way, until the hit-enter prompt</dd>
<dt/><dd/>
<dt><k name="BS"/> or k or <k name="Up"/> </dt><dd>one line back</dd>
<dt>u </dt><dd>up a page (half a screen)</dd>
<dt>b or <k name="PageUp"/> </dt><dd>back a screen</dd>
<dt>g </dt><dd>back to the start</dd>
<dt/><dd/>
<dt>q, <k name="Esc"/> or CTRL-C </dt><dd>stop the listing</dd>
<dt>: </dt><dd>stop the listing and enter a command-line</dd>
<dt>; </dt><dd>start an [j]extended-hints[j] command</dd>
<dt><k name="C-Y"/> </dt><dd>yank (copy) a modeless selection to the clipboard</dd>
</dl>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,934 +0,0 @@
heading::Options[options]
Vimperator has a number of internal variables and switches which can be set to
achieve special effects. These options come in 5 forms:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*boolean* |can only be on or off
|*number* |has a numeric value
|*string* |has a string value
|*charlist* |like a string but with unique characters
|*stringlist*|a comma-separated list of strings
|===============================================================================
section::Setting{nbsp}options[set-option,E764]
|:set| |:se| +
||:se[t]||
____
Show all options that differ from their default value.
____
||:se[t] all||
____
Show all options.
____
|E518| |E519|
||:se[t] {option}?|| +
____
Show value of {option}.
____
||:se[t] {option} [...]|| +
____
Toggle option: set, switch it on. +
Number option: show value. +
String option: show value.
____
||:se[t] no[a]{option}[a] [...]|| +
____
Toggle option: Reset, switch it off.
____
||:se[t] {option}! [...]|| +
||:se[t] inv[a]{option}[a] [...]|| +
____
Toggle option: Invert value.
____
||:se[t] inv[a]{option}[a]={value} [...]|| +
||:se[t] {option}!={value} [...]|| +
____
For list options, toggle the specified values.
If the option is a list, the given values are toggled. Given +
\{nbsp}[c]:set opt=foo,bar[c] +
then, +
\{nbsp}[c]:set opt!=foo,baz[c] +
results in +
\{nbsp}opt=bar,baz
____
|:set-default|
||:se[t] {option}& [...]|| +
____
Reset option to its default value.
____
||:se[t] all&||
____
Set all options to their default value.
____
|:set-args| |E487| |E521|
||:se[t] {option}={value} [...]|| +
____
Set string or number option to {value}. +
For numeric options the value must be given in decimal.
The old value can be inserted by typing [m]<Tab>[m].
____
|:set+=|
||:se[t] {option}+={value} [...]|| +
____
Add the {value} to a number option, or append the {value} to a string option.
When the option is a comma separated list, a comma is added, unless the value
was empty. If the option is a list of flags, superfluous flags are removed.
When adding a flag that was already present the option value doesn't change.
____
|:set^=|
||:se[t] {option}^={value} [...]|| +
____
Multiply the {value} to a number option, or prepend the {value} to a string
option. When the option is a comma separated list, a comma is added, unless the
value was empty.
____
|:set-=|
||:se[t] {option}-={value} [...]|| +
____
Subtract the {value} from a number option, or remove the {value} from a string
option if it is there. If the {value} is not found in a string option, there
is no error or warning. When the option is a comma separated list, a comma is
deleted, unless the option becomes empty. When the option is a list of flags,
{value} must be exactly as they appear in the option. Remove flags one by one
to avoid problems.
____
|:setlocal| |:setl|
||:setl[ocal]|| +
||:setl[ocal] all|| +
||:setl[ocal] {option}?|| +
||:setl[ocal] {option}|| +
||:setl[ocal] no[a]{option}[a]|| +
||:setl[ocal] inv[a]{option}[a]|| +
||:setl[ocal] {option}&|| +
||:setl[ocal] all&|| +
||:setl[ocal] {option}={value}|| +
||:setl[ocal] {option}+={value}|| +
||:setl[ocal] {option}^={value}|| +
||:setl[ocal] {option}-={value}|| +
____
The same as [c]:set[c] command, but operates on current tab options
only. See [c]:set[c] for details.
____
|:setglobal| |:setg|
||:setg[lobal]|| +
||:setg[lobal] all|| +
||:setg[lobal] {option}?|| +
||:setg[lobal] {option}|| +
||:setg[lobal] no[a]{option}[a]|| +
||:setg[lobal] inv[a]{option}[a]|| +
||:setg[lobal] {option}&|| +
||:setg[lobal] all&|| +
||:setg[lobal] {option}={value}|| +
||:setg[lobal] {option}+={value}|| +
||:setg[lobal] {option}^={value}|| +
||:setg[lobal] {option}-={value}|| +
____
The same as [c]:set[c] command, but operates on global options only.
See [c]:set[c] for details.
____
|expand-environment-var| |expand-env| |:set_env| +
Environment variables are expanded for path options like 'cdpath' and
'runtimepath'. The variable notation is _$VAR_ (terminated by a non-word
character) or _$\\{VAR}_. _%VAR%_ is also supported on Windows.
section::Setting{nbsp}Firefox{nbsp}options[firefox-options,preferences]
Firefox options can be viewed and set with the following commands:
|:prefs| |:preferences| +
||:pref[erences]||
________________________________________________________________________________
Show the Firefox preferences dialog. You can change the browser preferences
from this dialog. Be aware that not all Firefox preferences work, because
Vimperator overrides some key bindings and changes Firefox's GUI.
________________________________________________________________________________
|:prefs!| |:preferences!| +
||:pref[erences]!||
________________________________________________________________________________
Opens about:config in the current tab where you can change advanced Firefox
preferences.
________________________________________________________________________________
|:set!| |:set-!|
||:se[t]! {preference}={value}|| +
________________________________________________________________________________
Change any Firefox {preference} (those in the about:config window). You can also
reset/delete those preferences with [c]:set! {preference}&[c].
________________________________________________________________________________
|overridden-preferences| +
Vimperator sets several Firefox preferences at startup. If this is undesirable,
they can be changed to a different value in your RC file using
[c]:set! {preference}={value}[c]
The following preferences are set:
* http://kb.mozillazine.org/Dom.popup_allowed_events[dom.popup_allowed_events]
* http://kb.mozillazine.org/Accessibility.typeaheadfind.autostart[accessibility.typeaheadfind.autostart]
* http://kb.mozillazine.org/Accessibility.typeaheadfind[accessibility.typeaheadfind]
// TODO: others?
section::List{nbsp}of{nbsp}options[list-options]
|\'act'| |\'activate'| +
||'activate' 'act'|| stringlist (default: "homepage,quickmark,tabopen,paste")
____
Define when tabs are automatically activated. Available items:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*homepage* |[m]gH[m] mapping
|*quickmark*|[m]go[m] and [m]gn[m] mappings
|*tabopen* |[c]:tabopen[!][c] command
|*paste* |[m]P[m] and [m]gP[m] mappings
|===============================================================================
____
|$CDPATH|
|\'cd'| |\'cdpath'| +
||'cdpath' 'cd'|| string (default: equivalent to _$CDPATH_ or ",,")
____
List of directories searched when executing the [c]:cd[c] command. This is
only used for relative paths; for absolute paths the option is ignored. An
empty string between two commas (,,) means to search in the current directory.
____
|\'cpt'| |\'complete'| +
||'complete' 'cpt'|| charlist (default: slf)
____
Items which are completed at the [c]:open[c] prompts. Available items:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*s*|Search engines and keyword URLs
|*f*|Local files
|*l*|Firefox location bar entries (bookmarks and history sorted in an intelligent way)
|*b*|Bookmarks
|*h*|History
|*S*|Search engine suggestions
|*t*|Open tabs
|===============================================================================
The order is important, so [c]:set complete=bs[c] would list bookmarks first,
and then any available quick searches.
Warning: Using *b* and *h* can make completion very slow if there are many
items.
____
|\'ds'| |\'defsearch'| +
||'defsearch' 'ds'|| string (default: "google")
____
Sets the default search engine. The default search engine name is used in the
[c]:open [arg][c] command if [a][arg][a] neither looks like a URL nor like a
specified search engine/keyword.
This means that if you set 'defsearch' to "youtube", then [c]:open arnold
schwarzenegger[c] will be exactly the same as [c]:open youtube arnold
schwarzenegger[c]. Therefore, you need to add a keyword or search engine
"youtube" first.
If 'defsearch' is empty, then Firefox will always attempt to open the
raw [a][arg][a].
____
|\'editor'| +
||'editor'|| string (default: "gvim -f")
____
Set the external text editor.
Sets the editor to run when [m]<C-i>[m] is pressed in Insert and TextArea
modes.
Warning: Vimperator will not behave correctly if the editor forks its own
process, such as with gvim without the -f argument.
____
|\'noex'| |\'noexrc'| |\'ex'| |\'exrc'| +
||'exrc' 'ex'|| boolean (default: off)
____
Allow reading of an RC file in the current directory. This file is sourced in
addition to, and after, your default RC file.
____
|\'eht'| |\'extendedhinttags'| +
||'extendedhinttags' 'eht'|| string
____
(default: +++//*[@onclick or @onmouseover or @onmousedown or @onmouseup or
@oncommand or @class='lk' or @role='link'] | //input[not(@type='hidden')] | //a
| //area | //iframe | //textarea | //button | //select |
//xhtml:input[not(@type='hidden')] | //xhtml:a | //xhtml:area | //xhtml:iframe
| //xhtml:textarea | //xhtml:button | //xhtml:select+++)
The XPath string of hintable elements activated by [m];[m].
____
|\'noeb'| |\'noerrorbells'| |\'eb'| |\'errorbells'| +
||'errorbells' 'eb'|| boolean (default: off)
____
Ring the bell when an error message is displayed.
____
|\'ei'| |\'eventignore'| +
||'eventignore'|| stringlist (default: "")
____
A list of autocommand event names which should be ignored. If the list contains
the value "all" then all events are ignored.
____
|\'enc'| |\'encoding'| +
||'encoding'|| string (default: "UTF-8")
____
Changes the character encoding of the current buffer. Valid only for the
current page.
____
|\'fenc'| |\'fileencoding'| +
||'fileencoding'|| string (default: "UTF-8")
____
Changes the character encoding that Vimperator uses to read and write files.
____
|\'nofc'| |\'nofocuscontent'| |\'fc'| |\'focuscontent'| +
||'focuscontent' 'fc'|| boolean (default: off)
____
Focus the content after a page has loaded. This is useful if you always
want to stay in Normal mode when browsing between web sites. When "on", it
blurs any textbox which often is automatically focused on page load.
If you usually like 'focuscontent' but sometimes you'd like to focus the
first input field, you can use [m]gi[m] to jump to it.
____
|\'fh'| |\'followhints'| +
||'followhints' 'fh'|| number (default: 0)
____
Change the behaviour of [m]<Return>[m] in Hints mode. Possible values:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*0*|Follow the first hint as soon as typed text uniquely identifies it.
|*1*|Follow the selected hint on [m]<Return>[m].
|*2*|Follow the selected hint on [m]<Return>[m] only if it's been [m]<Tab>[m]-selected.
|===============================================================================
____
|\'nofs'| |\'nofullscreen'| |\'fs'| |\'fullscreen'| +
||'fullscreen' 'fs'|| boolean (default: off)
____
Show the current window fullscreen. Also hide certain GUI elements like the
statusline.
____
|\'go'| |\'guioptions'| +
||'guioptions' 'go'|| charlist (default: "")
____
Show or hide certain GUI elements like the menu or toolbar. Supported characters:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*m*|Menubar
|*T*|Toolbar
|*B*|Bookmark bar
|*n*|Tab number
|*N*|Tab number over image
|*b*|Bottom scrollbar
|*r*|Right scrollbar
|*l*|Left scrollbar (*l* and *r* are mutually exclusive)
|===============================================================================
You can also hide the tab bar with [c]:set showtabline=0[c].
Note: scrollbar changes require a page reload to take effect.
____
|\'hf'| |\'helpfile'| +
||'helpfile' 'hf'|| string (default: "intro.html")
____
Name of the main help file. This is the tail component of the chrome URL as
displayed in the status line when viewing the page.
____
|\'hin'| |\'hintinputs'| +
||'hintinputs' 'hin'|| stringlist (default: "label,value")
____
When generating hints for input elements that do not have an explicit caption,
this specifies the methods to try and generate a textual hint. It tries the
options in the order that you give, and uses the first that it finds.
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*value*|The hint is the value displayed in a text input, or the selected option for a dropdown.
|*label*|The value of an explicit label for the input, this will not match most manually added labels that are found on sites.
|*name* |The name of the input will be used, although the name is not designed for user consumption, it is frequently very similar to the label.
|===============================================================================
____
|\'hm'| |\'hintmatching'| +
||'hintmatching' 'hm'|| string (default: contains)
____
Change the hint matching algorithm during Hints mode. Possible values:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*contains* |The typed characters are split on whitespace, and these character groups have to match anywhere inside the text of the link.
|*wordstartswith*|The typed characters are matched with the beginning of the first word (see 'wordseparators') in the link as long as possible. If no matches occur in the current word, then the matching is continued at the beginning of the next word. The words are worked through in the order they appear in the link. If the typed characters contain spaces, then the characters are split on whitespace. These character groups are then matched with the beginning of the words, beginning at the first one and continuing with the following words in the order they appear in the link.
|*firstletters* |Behaves like wordstartswith, but non-matching words aren't overleaped.
|*custom* |Delegate to a custom function: liberator.plugins.customHintMatcher(hintString)
|===============================================================================
____
|\'ht'| |\'hinttags'| +
||'hinttags' 'ht'|| string
____
(default: +++//*[@onclick or @onmouseover or @onmousedown or @onmouseup or
@oncommand or @class='lk' or @role='link'] | //input[not(@type='hidden')] | //a
| //area | //iframe | //textarea | //button | //select |
//xhtml:input[not(@type='hidden')] | //xhtml:a | //xhtml:area | //xhtml:iframe
| //xhtml:textarea | //xhtml:button | //xhtml:select+++)
XPath string of hintable elements activated by [m]f[m] and [m]F[m]
____
|\'hto'| |\'hinttimeout'| +
||'hinttimeout' 'hto'|| number (default: 0)
____
Timeout before automatically following a non-unique numerical hint. Set to 0
(the default) to only follow numeric hints after pressing [m]<Return>[m] or
when the hint is unique.
____
|\'hi'| |\'history'| +
||'history' 'hi'|| number (default: 500)
____
Number of Ex commands and search patterns to store in the command-line history.
____
|\'nohls'| |\'nohlsearch'| |\'hls'| |\'hlsearch'| +
||'hlsearch' 'hls'|| boolean (default: off)
____
Highlight previous search pattern matches
____
|\'noic'| |\'noignorecase'| |\'ic'| |\'ignorecase'| +
||'ignorecase' 'ic'|| boolean (default: on)
____
Ignore case in search patterns.
____
|\'nois'| |\'noincsearch'| |\'is'| |\'incsearch'| +
||'incsearch' 'is'|| boolean (default: on)
____
Show where the search pattern matches as it is typed.
Note: Incremental searching currently only works in the forward direction.
____
|\'noim'| |\'noinsertmode'| |\'im'| |\'insertmode'| +
||'insertmode' 'im'|| boolean (default: on)
____
Use Insert mode as the default for text areas. This is useful if you want to
use the known Firefox interface for editing text areas. Input fields default to
this behaviour irrespective of this option's setting.
Textarea mode can be entered with *<C-t>* from Insert mode.
____
// TODO: <C-t> is not hyperlinked as it's not documented yet.
|\'ls'| |\'laststatus'| +
||'laststatus' 'ls'|| number (default: 2)
____
Determines when the last window will have a status line. Possible values:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*0*|Never
|*1*|Only if there are multiple windows
|*2*|Always
|===============================================================================
Note: laststatus=1 not implemented yet.
____
|\'nolks'| |\'nolinksearch'| |\'lks'| |\'linksearch'| +
||'linksearch' 'lks'|| boolean (default: off)
____
Limit the search to hyperlink text.
This includes (X)HTML elements with an "href" atrribute and XLink "simple" links.
____
|\'nolpl'| |\'lpl'| |\'noloadplugins'| |\'loadplugins'| +
||'loadplugins' 'lpl'|| boolean (default: on)
____
Load plugin scripts when starting up. When on, yet unloaded plugins are
automatically loaded after the vimperatorrc file has been sourced. To
load plugins earlier, use the [c]:loadplugins[c] command within the
vimperatorrc.
____
|\'maxitems'| +
||'maxitems'|| number (default: 20)
____
Maximum number of items to display at once in a listing.
____
|\'msgs'| |\'messages'| +
||'messages' 'msgs'|| number (default: 100)
____
Number of messages to store in the message history.
____
|\'nomore'| |\'more'| +
||'more'|| boolean (default: on)
____
Pause the message list window when more than one screen of listings is displayed.
____
|\'nextpattern'| +
||'nextpattern'|| stringlist (default: \bnext,^>$,^(>>|»)$,^(>|»),(>|»)$,\bmore\b)
____
Patterns to use when guessing the \'next' page in a document sequence when the
user hits [c]]][c]. Each pattern, in order, is matched against all links in the
page with the first match being used. The patterns are case insensitive regular
expressions and the link elements are those defined by 'hinttags'.
____
|\'newtab'| +
||'newtab'|| stringlist (default: "")
____
Define which Ex commands output the result in a new tab automatically. You can
also use [c]:tab command[c] to manually output a command in a new tab.
The possible values:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*all* |All commands
|*addons* |[c]:addo[ns][c] command
|*downloads* |[c]:downl[oads][c] command
|*extoptions*|[c]:exto[ptions][c] command
|*help* |[c]:h[elp][c] command
|*javascript*|[c]:javascript![c] or [c]:js![c] command
|*prefs* |[c]:pref[erences]![c] or [c]:prefs![c] command
|===============================================================================
____
|\'noonline'| |\'online'| +
||'online'|| boolean (default: on)
____
Show and set the \'work offline' behavior.
____
|\'pageinfo' \'pa'| +
||'pageinfo' 'pa'||
charlist (default: gfm)
____
Desired info in the [c]:pageinfo[c] output. Available items:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*g*|General info
|*f*|Feeds
|*m*|Meta tags
|===============================================================================
The order matters.
____
|\'pps'| |\'popups'| +
||'popups' 'pps'|| stringlist (default: tab)
____
Define where to show requested popup windows.
Does not apply to windows which are opened by middle clicking a link,
they always open in a new tab. Possible values:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*tab* | Open popups in a new tab
|*window* | Open popups in a new window
|*resized* | Open resized popups in a new window
|===============================================================================
If neither *tab* nor *window* is provided, all popups open in the current tab.
*tab* and *window* are mutually exclusive, and the last one listed is
effective.
Note: This option does not change the popup blocker of Firefox in any way.
____
|\'previouspattern'| +
||'previouspattern'|| stringlist (default: \bprev|previous\b,^<$,^(<<|«)$,^(<|«),(<|«)$)
____
Patterns to use when guessing the \'previous' page in a document sequence when
the user hits [c][[[c]. Each pattern, in order, is matched against all links
in the page with the first match being used. The patterns are case insensitive
regular expressions and the link elements are those defined by 'hinttags'.
____
|\'noprivate'| |\'private'| +
||'private'|| boolean (default: off)
____
Set the "private browsing" option. In private browsing mode history, cache
files, cookies, form data, passwords, download list entries, local and URL
marks, command-line history and macros are available only for the duration of
the private browsing session and deleted when returning to normal browsing
mode.
____
|$VIMPERATOR_RUNTIME|
|\'rtp'| |\'runtimepath'| +
||'runtimepath' 'rtp'|| stringlist
____
(default: _$VIMPERATOR_RUNTIME_ or $$Unix, Mac: "~/.vimperator", Windows: "~/vimperator"$$)
List of directories searched for runtime files: +
colors/ +
macros/ +
plugin/ +
Example: [c]:set runtimepath=$$~/myvimperator,~/.vimperator$$[c] +
This will search for plugins in both $$"~/myvimperator/plugin" and
"~/.vimperator/plugin"$$
On startup, if the environment variable _$VIMPERATOR_RUNTIME_ does not
exist, Vimperator will set it to match this value.
____
|\'si'| |\'sanitizeitems'| +
||'sanitizeitems' 'si'|| stringlist
____
(default: "cache,commandline,cookies,formdata,history,marks,sessions")
The default list of private items to sanitize.
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*cache* |Cache
|*commandline* |Command-line history
|*cookies* |Cookies
|*downloads* |Download history
|*formdata* |Saved form and search history
|*history* |Browsing history
|*marks* |Local and URL marks
|*macros* |Saved macros
|*offlineapps* |Offline website data
|*passwords* |Saved passwords
|*sessions* |Authenticated sessions
|*sitesettings*|Site preferences
|===============================================================================
When history items are sanitized [c]:open[c], [c]:tabopen[c] and [c]:winopen[c]
command-line history entries are also removed.
____
|\'sts'| |\'sanitizetimespan'| +
||'sanitizetimespan' 'sts'|| number (default: 1)
____
The default sanitizer time span. Only items created within this timespan are
deleted.
Note: This only applies to *cookies*, *history*, *formdata*, and *downloads*.
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*0*|Everything
|*1*|Last hour
|*2*|Last two hours
|*3*|Last four hours
|*4*|Today
|===============================================================================
____
|\'scr'| |\'scroll'| +
||'scroll' 'scr'|| number (default: 0)
____
Number of lines to scroll with [m]<C-u>[m] and [m]<C-d>[m] commands.
The number of lines scrolled defaults to half the window size.
When a [count] is specified to the [m]<C-u>[m] or [m]<C-d>[m] commands this is
used to set the value of 'scroll' and also used for the current command. The
value can be reset to half the window height with [c]:set scroll=0[c].
____
|\'shell'| |\'sh'| +
||'shell' 'sh'|| string (default: _$SHELL_ or "sh", Win32: "cmd.exe")
____
Shell to use for executing [c]:![c] and [c]:run[c] commands.
____
|\'shellcmdflag'| |\'shcf'| +
||'shellcmdflag' 'shcf'|| string (default: "-c", Win32: "/c")
____
Flag passed to shell when executing [c]:![c] and [c]:run[c] commands.
E.g. "bash -c gvim"
____
|\'nosmd'| |\'noshowmode'| |\'smd'| |\'showmode'| +
||'showmode' 'smd'|| boolean (default: on)
____
Show the current mode in the command line.
____
|\'ssli'| |\'showstatuslinks'| +
||'showstatuslinks' 'ssli'|| number (default: 1)
____
Show the destination of the link under the cursor in the status bar.
Also links which are focused by keyboard commands like [m]<Tab>[m] are shown. Possible values:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*0*|Don't show link destination
|*1*|Show the link in the status line
|*2*|Show the link in the command line
|===============================================================================
____
|\'stal'| |\'showtabline'| +
||'showtabline' 'stal'|| number (default: 2)
____
Control when to show the tab bar of opened web pages. Possible values:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*0*|Never show tab bar
|*1*|Show tab bar only if more than one tab is open
|*2*|Always show tab bar
|===============================================================================
____
|\'noscs'| |\'nosmartcase'| |\'scs'| |\'smartcase'| +
||'smartcase' 'scs'|| boolean (default: on)
____
Override the 'ignorecase' option if the pattern contains uppercase characters.
This is only used if the 'ignorecase' option is set.
____
|\'suggestengines'| +
||'suggestengines'|| stringlist (default: "google")
____
Set the search engines which can be used for completion suggestions.
Add "S" to the 'complete' option if you want to use this feature.
Warning: This feature could make tab-completion slower because it needs to
wait for changes, so use it only if you have a fast internet connection.
____
|\'titlestring'| +
||'titlestring'|| string (default: "Vimperator")
____
Change the title of the browser window.
Vimperator changes the browser title from "Title of web page - Mozilla Firefox" to
"Title of web page - Vimperator". +
If you don't like that, you can restore it with:
[c]:set titlestring=Mozilla\ Firefox[c].
____
|\'noum'| |\'nousermode'| |\'um'| |\'usermode'| +
||'usermode' 'um'|| boolean (default: off)
____
Show current website with a minimal style sheet to make it easily accessible.
Note: this is a local option for now, a global value may be supported in the
future.
____
|\'urlseparator'| +
||'urlseparator'|| string (default: ",\s")
____
Set the separator regex used to separate multiple URL args. Multiple arguments
can be specified for [c]:open[c], and similar commands, using this regex as
the separator. Using whitespace alone is not generally useful since it is often
contained in a single argument. E.g. [c]:open linus torvalds[c] should perform
a single search for the key words "linus" and "torvalds". If this is set to the
empty string then these arguments will never be split.
____
|\'verbose', \'vbs'| +
||'verbose' 'vbs'|| number (default: 1)
____
Define which info messages are displayed.
When bigger than zero, Vimperator will give messages about what it is doing.
These can be viewed at any time with the [c]:messages[c] command. The highest
value is 15, being the most verbose mode.
TODO: list levels and associated messages
____
|\'novb'| |\'novisualbell'| |\'vb'| |\'visualbell'| +
||'visualbell' 'vb'|| boolean (default: off)
____
Use visual bell instead of beeping on errors. The visual bell style is
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]
____
|\'wildcase'| |\'wic'| +
||'wildcase' 'wic'|| string (default: "smart")
____
Defines how completions are matched with regard to character case. Possible values:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|"smart" |Case is significant when capital letters are typed
|"match" |Case is always significant
|"ignore"|Case is never significant
|===============================================================================
____
|\'wildignore'| |\'wig'| +
||'wildignore' 'wig'|| stringlist (default: "")
____
List of file patterns to ignore when completing files. E.g. to ignore object
files and Vim swap files [c]:set wildignore=".*\.o,\..*\.s[a-z]\\{2}"[c]
Note: Unlike Vim each pattern is a regex rather than a glob.
____
|\'wim'| |\'wildmode'| +
||'wildmode' 'wim'|| stringlist (default: "list:full")
____
Defines how command-line completion works.
It is a comma-separated list of parts, where each part specifies
what to do for each consecutive use of the completion key.
The first part specifies the behavior for the first use of the completion key,
the second part for the second use, etc.
These are the possible values for each part:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|"" |Complete only the first match.
|"full" |Complete the next full match. After the last, the original string is used.
|"longest" |Complete till the longest common string.
|"list" |When more than one match, list all matches.
|"list:full" |When more than one match, list all matches and complete the first match.
|"list:longest" |When more than one match, list all matches and complete till
the longest common string. When there is only a single match,
it is fully completed regardless of the case.
|===============================================================================
____
|\'wop'| |\'wildoptions'| +
||'wildoptions' 'wop'|| stringlist (default: "")
____
A list of words that change how command-line completion is done.
Possible words:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*auto*|Automatically show completions while you are typing.
|*sort*|Always sort the completion list, overriding the 'complete' option.
|===============================================================================
____
|\'wsp'| |\'wordseparators'| +
||'wordseparators' 'wsp'|| string (default: [\.,!\?:;/\\"\^\$%&?\(\)\[\]\\{\\}<>#\\*\+\\|=~ _\\-])
____
A regex which defines the word separators which are used for the
'hintmatching' types "wordstartswith" and "firstletters" to split the words in
the text of a link.
____
// vim: set filetype=asciidoc:

File diff suppressed because it is too large Load Diff

View File

@@ -1,68 +0,0 @@
heading::Text{nbsp}search{nbsp}commands[text-search-commands]
Vimperator provides a Vim-like interface to Firefox's standard text search
functionality. There is no support for using regular expressions in search
commands as Firefox does not provide native regex support. It is unlikely that
this will ever be available.
|/| +
||/{pattern}[/]<CR>|| +
________________________________________________________________________________
Search forward for the first occurrence of {pattern}.
If "\c" appears anywhere in the pattern the whole pattern is handled as though
'ignorecase' is on. "\C" forces case-sensitive matching for the whole pattern. +
If "\l" appears in the pattern only the text of links is searched for a
match as though 'linksearch' is on. "\L" forces the entire page to be searched
for a match.
________________________________________________________________________________
|?| +
||?{pattern}[?]<CR>|| +
________________________________________________________________________________
Search backwards for {pattern}.
{pattern} can use the same modifiers as for [m]/[m]. +
Note: incremental searching currently only works in the forward direction.
________________________________________________________________________________
|n| +
||n||
________________________________________________________________________________
Find next. Repeat the last search 1 time (until count is supported).
________________________________________________________________________________
|N| +
||N||
________________________________________________________________________________
Find previous. Repeat the last search 1 time (until count is supported) in the
opposite direction.
________________________________________________________________________________
|$$*$$| +
||$$*$$||
________________________________________________________________________________
Search forward for the next word under the cursor.
________________________________________________________________________________
|$$#$$| +
||$$#$$||
________________________________________________________________________________
Search backward for the previous word under the cursor.
________________________________________________________________________________
|:noh| |:nohlsearch| +
||:noh[lsearch]||
________________________________________________________________________________
Remove the search highlighting. The document highlighting is turned back on
when another search command is used or the 'hlsearch' option is set.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,103 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="pattern"
title="&appname; Patterns"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="text-search-commands">Text search commands</h1>
<p>
&appname; provides a Vim-like interface to &hostapp;'s standard text search
functionality. There is no support for using regular expressions in search
commands as &hostapp; does not provide native regex support. It is unlikely that
this will ever be available.
</p>
<item>
<tags>/</tags>
<spec>/<a>pattern</a>[/]&lt;CR></spec>
<description>
<p>Search forward for the first occurrence of <a>pattern</a>.</p>
<p>
If <str>\c</str> appears anywhere in the pattern the whole pattern is handled as though
<o>ignorecase</o> is on. <str>\C</str> forces case-sensitive matching for the whole pattern.
</p>
<p>
If <str>\l</str> appears in the pattern only the text of links is searched for a
match as though <o>linksearch</o> is on. <str>\L</str> forces the entire page to be searched
for a match.
</p>
</description>
</item>
<item>
<tags>?</tags>
<spec>?<a>pattern</a>[?]&lt;CR></spec>
<description>
<p>Search backwards for <a>pattern</a>.</p>
<p><a>pattern</a> can use the same modifiers as for <k>/</k>.</p>
<note>Incremental searching currently only works in the forward direction.</note>
</description>
</item>
<item>
<tags>n</tags>
<spec>n</spec>
<description>
<p>Find next. Repeat the last search 1 time (until count is supported).</p>
</description>
</item>
<item>
<tags>N</tags>
<spec>N</spec>
<description>
<p>
Find previous. Repeat the last search 1 time (until count is supported) in the
opposite direction.
</p>
</description>
</item>
<item>
<tags>*</tags>
<spec>*</spec>
<description>
<p>Search forward for the next word under the cursor.</p>
</description>
</item>
<item>
<tags>#</tags>
<spec>#</spec>
<description>
<p>Search backward for the previous word under the cursor.</p>
</description>
</item>
<item>
<tags>:noh :nohlsearch</tags>
<spec>:noh<oa>lsearch</oa></spec>
<description>
<p>
Remove the search highlighting. The document highlighting is turned back on
when another search command is used or the <o>hlsearch</o> option is set.
</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,32 +0,0 @@
heading::Printing[printing]
|:ha| |:hardcopy| +
||:ha[rdcopy][!]||
________________________________________________________________________________
Print current document. Open a GUI dialog where you can select the printer,
number of copies, orientation, etc. When used with [!], the dialog is skipped
and the default printer used.
________________________________________________________________________________
||:ha[rdcopy][!] >{filename}|| +
________________________________________________________________________________
As above, but write the output to {filename}.
Note: Not available on Windows.
________________________________________________________________________________
section::Firefox{nbsp}printing{nbsp}dialogs[firefox-print-dialogs]
The "Print Preview" and "Page Setup" dialogs can be opened via the [c]:dialog[c]
command
\{nbsp}[c]:dialog printpreview[c]
and
\{nbsp}[c]:dialog printsetup[c]
respectively.
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="print"
title="&appname; Printing"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="printing">Printing</h1>
<item>
<tags>:ha :hardcopy</tags>
<spec>:ha<oa>rdcopy</oa><oa>!</oa></spec>
<description>
<p>
Print current document. Open a GUI dialog where you can select the printer,
number of copies, orientation, etc. When used with <oa>!</oa>, the dialog is skipped
and the default printer used.
</p>
</description>
</item>
<item>
<spec>:ha<oa>rdcopy</oa><oa>!</oa> ><a>filename</a></spec>
<description>
<p>As above, but write the output to <a>filename</a>.</p>
<note>Not available on Windows.</note>
</description>
</item>
<h2 tag="firefox-print-dialogs">&hostapp; printing dialogs</h2>
<p>
The "Print Preview" and "Page Setup" dialogs can be opened via the <ex>:dialog</ex>
command
</p>
<code><ex>:dialog printpreview</ex></code>
<p>
and
</p>
<code><ex>:dialog printsetup</ex></code>
<p>
respectively.
</p>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,152 +0,0 @@
heading::Repeating{nbsp}commands[repeating]
Vimperator can repeat a number of commands and record macros.
section::Single{nbsp}repeats[single-repeat]
|.|
||[count].||
____________________________________________________________________________
Repeat the last keyboard mapping [count] times. Note that, unlike in Vim, this
does not apply solely to editing commands, mainly because Vimperator doesn't
have them.
____________________________________________________________________________
|@:|
||[count]@:||
____________________________________________________________________________
Repeat the last Ex command [count] times.
____________________________________________________________________________
section::Macros[macros,complex-repeat]
|q|
||q\\{0-9a-zA-Z}|| +
____________________________________________________________________________
Record a key sequence into a macro.
Available macros are {0-9a-zA-Z} (uppercase to append).
Type [m]q[m] to stop recording.
____________________________________________________________________________
|:macros|
||:mac[ros] [a][pat][a]|| +
________________________________________________________________________________
List recorded macros matching the optional regular expression [a][pat][a]. If
no regex is given, list all macros.
________________________________________________________________________________
|:delmac| |:delmacros|
||:delmac[ros] {args}|| +
||:delmac[ros]!||
________________________________________________________________________________
Delete recorded macros matching the regular expression {args}. If [!] is given
all macros are deleted.
________________________________________________________________________________
|@| |:play|
||:pl[ay] {arg}|| +
||[count]@{arg}||
____________________________________________________________________________
Plays the contents of macro with name {arg} [count] times. The [m]@[m] mapping
only accepts {0-9a-z} as {arg}.
____________________________________________________________________________
|@@|
||[count]@@||
____________________________________________________________________________
Replay the last executed macro [count] times.
____________________________________________________________________________
section::Using{nbsp}scripts[using-scripts]
|:so| |:source|
||:so[urce][!] {file}|| +
________________________________________________________________________________
Read Ex commands, JavaScript, or CSS from {file}. You can either source files
which mostly contain Ex commands like [c]map < gt[c] and put JavaScript code
within a:
--------------------------------------------------------------------------------
js <<EOF
hello = function () {
alert("Hello world");
}
EOF
--------------------------------------------------------------------------------
Or you can alternatively source a file which ends in _.js_. These files are
automatically sourced as pure JavaScript files.
Note: In both cases you must add functions to the global window object like
shown above, functions written as:
--------------------------------------------------------------------------------
function hello2() {
alert("Hello world");
}
--------------------------------------------------------------------------------
are only available within the scope of the script.
The _.vimperatorrc_ file in your home directory and any files in
_$$~/.vimperator/plugin/$$_ are always sourced at startup. $$~$$ is supported as a
shortcut for the _$HOME_ directory. If [!] is specified, errors are not
printed.
________________________________________________________________________________
|:lpl| |:loadplugins|
||:loadplugins|| +
________________________________________________________________________________
Load all unloaded plugins immediately. Because plugins are automatically
loaded after vimperatorrc is sourced, this command must be placed early
in the vimperatorrc file if vimperatorrc also includes commands that are
implemented by plugins. Additionally, this command allows for sourcing
new plugins without restarting Vimperator.
________________________________________________________________________________
|:ru| |:runtime|
||:runt[ime][!] {file} ...|| +
________________________________________________________________________________
Source the specified file from each directory in 'runtimepath'. Example: +
[c]:runtime plugin/foobar.vimp[c] +
Only the first found file is sourced. When [!] is given, all found files are
sourced.
________________________________________________________________________________
|:scrip| |:scriptnames|
||:scrip[tnames]|| +
________________________________________________________________________________
List all sourced script names, in the order they were first sourced.
________________________________________________________________________________
|:fini| |:finish|
||:fini[sh]|| +
________________________________________________________________________________
Stop sourcing a script file. This can only be called from within a Vimperator
script file.
________________________________________________________________________________
section::Profiling[profile,profiling]
|:time|
||:[count]time[!] {code|:command}|| +
________________________________________________________________________________
Profile a piece of code or a command. Run {code} [count] times (default: 1)
and returns the elapsed time. {code} is always passed to JavaScript's eval(),
which might be slow, so take the results with a grain of salt.
If {code} starts with a [c]:[c], it is executed as a Vimperator command.
Use the special version with [!] if you just want to run any command multiple
times without showing profiling statistics.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,225 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="repeat"
title="&appname; Repeating Commands"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="repeating">Repeating commands</h1>
<p>&appname; can repeat a number of commands and record macros.</p>
<h2 tag="single-repeat">Single repeats</h2>
<item>
<tags>.</tags>
<spec><oa>count</oa>.</spec>
<description>
<p>
Repeat the last keyboard mapping <oa>count</oa> times. Note that, unlike in Vim, this
does not apply solely to editing commands, mainly because &appname; doesn't
have them.
</p>
</description>
</item>
<item>
<tags>@:</tags>
<spec><oa>count</oa>@:</spec>
<description>
<p>Repeat the last Ex command <oa>count</oa> times.</p>
</description>
</item>
<h2 tag="macros complex-repeat">Macros</h2>
<item>
<tags>q</tags>
<spec>q<a>0-9a-zA-Z</a></spec>
<description>
<p>
Record a key sequence into a macro.
Available macros are {0-9a-zA-Z} (uppercase to append).
Type <k>q</k> to stop recording.
</p>
</description>
</item>
<item>
<tags>:macros</tags>
<spec>:mac<oa>ros</oa> <oa>pat</oa></spec>
<description>
<p>
List recorded macros matching the optional regular expression <oa>pat</oa>. If
no regex is given, list all macros.
</p>
</description>
</item>
<item>
<tags>:delmac :delmacros</tags>
<spec>:delmac<oa>ros</oa> <a>args</a></spec>
<spec>:delmac<oa>ros</oa>!</spec>
<description>
<p>
Delete recorded macros matching the regular expression <a>args</a>. If <oa>!</oa> is given
all macros are deleted.
</p>
</description>
</item>
<item>
<tags>@ :play</tags>
<spec>:pl<oa>ay</oa> <a>arg</a></spec>
<spec><oa>count</oa>@<a>arg</a></spec>
<description>
<p>
Plays the contents of macro with name <a>arg</a> <oa>count</oa> times. The <k>@</k> mapping
only accepts {0-9a-z} as <a>arg</a>.
</p>
</description>
</item>
<item>
<tags>@@</tags>
<spec><oa>count</oa>@@</spec>
<description>
<p>Replay the last executed macro <oa>count</oa> times.</p>
</description>
</item>
<h2 tag="using-scripts">Using scripts</h2>
<item>
<tags>:so :source</tags>
<spec>:so<oa>urce</oa><oa>!</oa> <a>file</a></spec>
<description>
<p>
Read Ex commands, JavaScript, or CSS from <a>file</a>. You can either source files
which mostly contain Ex commands like <ex>map &lt; gt</ex> and put JavaScript code
within a:
</p>
<code><![CDATA[
js <<EOF
hello = function () {
alert("Hello world");
}
EOF
]]></code>
<p>
Or you can alternatively source a file which ends in <tt>.js</tt>. These files are
automatically sourced as pure JavaScript files.
</p>
<p>
Note: In both cases you must add functions to the global window object like
shown above, functions written as:
</p>
<code><![CDATA[
function hello2() {
alert("Hello world");
}
]]></code>
<p>are only available within the scope of the script.</p>
<p>
The <tt>.vimperatorrc</tt> file in your home directory and any
files in <tt>~/.vimperator/plugin/</tt> are always
sourced at startup. <tt>~</tt> is supported as a
shortcut for the <tt>$HOME</tt> directory. If <oa>!</oa> is
specified, errors are not printed.
</p>
</description>
</item>
<item>
<tags>:lpl :loadplugins</tags>
<spec>:loadplugins</spec>
<description>
<p>
Load all unloaded plugins immediately. Because plugins are automatically
loaded after vimperatorrc is sourced, this command must be placed early
in the vimperatorrc file if vimperatorrc also includes commands that are
implemented by plugins. Additionally, this command allows for sourcing
new plugins without restarting &appname;.
</p>
</description>
</item>
<item>
<tags>:ru :runtime</tags>
<spec>:runt<oa>ime</oa><oa>!</oa> <a>file</a></spec>
<description>
<p>
Source the specified file from each directory in <o>runtimepath</o>. Example:
</p>
<code><ex>:runtime plugin/foobar.vimp</ex></code>
<p>
Only the first found file is sourced. When <oa>!</oa> is given, all found files are
sourced.
</p>
</description>
</item>
<item>
<tags>:scrip :scriptnames</tags>
<spec>:scrip<oa>tnames</oa></spec>
<description>
<p>List all sourced script names, in the order they were first sourced.</p>
</description>
</item>
<item>
<tags>:fini :finish</tags>
<spec>:fini<oa>sh</oa></spec>
<description>
<p>
Stop sourcing a script file. This can only be called from within a &appname;
script file.
</p>
</description>
</item>
<h2 tag="profile profiling">Profiling</h2>
<item>
<tags>:time</tags>
<spec>:<oa>count</oa>time<oa>!</oa> <a>code|:command</a></spec>
<description>
<p>
Profile a piece of code or a command. Run <a>code</a> <oa>count</oa> times (default: 1)
and returns the elapsed time. <a>code</a> is always passed to JavaScript's eval(),
which might be slow, so take the results with a grain of salt.
</p>
<p>If <a>code</a> starts with a <ex>:</ex>, it is executed as a &appname; command.</p>
<p>
Use the special version with <oa>!</oa> if you just want to run any command multiple
times without showing profiling statistics.
</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,105 +0,0 @@
heading::Starting{nbsp}Vimperator[starting]
|startup-options| +
Command-line options can be passed to Vimperator via the -vimperator Firefox
option. These are passed as single string argument.
E.g firefox -vimperator "$$++cmd 'set exrc' +u 'tempRcFile' ++noplugin$$"
|+c| +
||+c {command}||
________________________________________________________________________________
Execute a single Ex command after all initialization has been performed. See
[j]initialization[j].
This option can be specified multiple times.
________________________________________________________________________________
|$$++cmd$$| +
||$$++cmd {command}$$||
________________________________________________________________________________
Execute a single Ex command before any initialization has been performed. See
[j]initialization[j].
This option can be specified multiple times.
________________________________________________________________________________
|+u| +
||+u {rcfile}||
________________________________________________________________________________
The file {rcfile} is used for user initialization commands. If {rcfile} is
"NORC" then no startup initialization is performed except for the loading of
plugins, i.e. steps 1. and 2. in [j]initialization[j] are skipped. If {rcfile}
is "NONE" then plugin loading is also skipped.
________________________________________________________________________________
|$$++noplugin$$| +
||$$++noplugin$$||
________________________________________________________________________________
Prevents plugin scripts from being loaded at startup. See 'loadplugins'.
________________________________________________________________________________
section::Initialization[initialization,startup]
At startup, Vimperator completes the following tasks in order.
1. Vimperator can perform user initialization commands. When
one of the following is successfully located, it is executed, and no
further locations are tried.
a. |$VIMPERATOR_INIT|
_$VIMPERATOR_INIT_ -- May contain a single Ex command (e.g.,
"[c]:source {file}[c]").
b. _$$~/_vimperatorrc$$_ -- Windows only. If this file exists, its contents
are executed and _$MY_VIMPERATORRC_ set to its path.
c. _$$~/.vimperatorrc$$_ -- If this file exists, its contents are executed.
2. If 'exrc' is set and the +u command-line option was not specified, then any
RC file in the current directory is also sourced.
3. All directories in 'runtimepath' are searched for a "plugin"
subdirectory and all yet unloaded plugins are loaded. For each
plugin directory, all *.\{js,vimp} files (including those in further
subdirectories) are sourced alphabetically. No plugins will be sourced
if:
* 'noloadplugins' is set.
* the $$++noplugin$$ command-line option was specified.
* the +u=NONE command-line option specified set.
Any particular plugin will not be loaded if it has already been loaded (e.g.,
by an earlier [c]:loadplugins[c] command).
The user's ~ (i.e., "home") directory is determined as follows:
* On Unix and Mac, the environment variable _$HOME_ is used.
* On Windows, Vimperator checks for the existence of _%HOME%_, then
_%USERPROFILE%_, and then _%HOMEDRIVE%%HOMEPATH%_. It uses the first one
it finds.
section::Saving{nbsp}settings[save-settings]
|:mkv| |:mkvimperatorrc|
||:mkv[imperatorrc][!] [a][file][a]|| +
________________________________________________________________________________
Write current key mappings and changed options to [a][file][a]. If no
[a][file][a] is specified then _~/.vimperatorrc_ is written unless this file
already exists. The special version [c]:mkvimperatorrc![c] will overwrite
[a][file][a] if it exists.
Warning: this differs from Vim's behavior which defaults to writing the file
in the current directory.
________________________________________________________________________________
section::Restarting[restarting]
|:res| |:restart| +
||:res[tart]||
________________________________________________________________________________
Force Firefox to restart. Useful when installing extensions.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,159 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="starting"
title="&appname; Starting"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="starting">Starting &appname;</h1>
<tags>startup-options</tags>
<p>
Command-line options can be passed to &appname; via the -vimperator &hostapp;
option. These are passed as single string argument.
E.g., firefox -vimperator <str>++cmd 'set exrc' +u 'tempRcFile' ++noplugin</str>
</p>
<item>
<tags>+c</tags>
<spec>+c <a>command</a></spec>
<description>
<p>
Execute a single Ex command after all initialization has been performed. See
[j]initialization[j].
</p>
<p>This option can be specified multiple times.</p>
</description>
</item>
<item>
<tags>++cmd</tags>
<spec>++cmd <a>command</a></spec>
<description>
<p>
Execute a single Ex command before any initialization has been performed. See
[j]initialization[j].
</p>
<p>This option can be specified multiple times.</p>
</description>
</item>
<item>
<tags>+u</tags>
<spec>+u <a>rcfile</a></spec>
<description>
<p>
The file <a>rcfile</a> is used for user initialization commands. If <a>rcfile</a> is
"NORC" then no startup initialization is performed except for the loading of
plugins, i.e., steps 1. and 2. in [j]initialization[j] are skipped. If <a>rcfile</a>
is "NONE" then plugin loading is also skipped.
</p>
</description>
</item>
<item>
<tags>++noplugin</tags>
<spec>++noplugin</spec>
<description>
<p>Prevents plugin scripts from being loaded at startup. See <o>loadplugins</o>.</p>
</description>
</item>
<h2 tag="initialization startup">Initialization</h2>
<p>At startup, &appname; completes the following tasks in order. </p>
<ol>
<li> &appname; can perform user initialization commands. When
one of the following is successfully located, it is executed,
and no further locations are tried.
<ol>
<li tag="$VIMPERATOR_INIT">
<em>$VIMPERATOR_INIT</em> — May contain a single Ex command (e.g.,
"<ex>:source <a>file</a></ex>").
</li>
<li tag="$MY_VIMPERATORRC">
<em>~/vimperatorrc</em> — Windows only. If this file exists, its contents
are executed and <em>$MY_VIMPERATORRC</em> set to its path.
</li>
<li>
<em>~/.vimperatorrc</em> — If this file exists, its contents are executed.
</li>
</ol>
</li>
<li>
If <o>exrc</o> is set and the +u command-line option was not
specified, then any RC file in the current directory is also
sourced.
</li>
<li>
All directories in <o>runtimepath</o> are searched for a
"plugin" subdirectory and all yet unloaded plugins are loaded.
For each plugin directory, all *.{js,vimp} files (including
those in further subdirectories) are sourced alphabetically. No
plugins will be sourced if:
<ul>
<li><o>noloadplugins</o> is set.</li>
<li>the ++noplugin command-line option was specified.</li>
<li>the +u=NONE command-line option specified set.</li>
</ul>
Any particular plugin will not be loaded if it has already been
loaded (e.g., by an earlier <ex>:loadplugins</ex> command).
</li>
</ol>
The user's ~ (i.e., "home") directory is determined as follows:
* On Unix and Mac, the environment variable <em>$HOME</em> is used.
* On Windows, &appname; checks for the existence of <em>%HOME%</em>, then
<em>%USERPROFILE%</em>, and then <em>%HOMEDRIVE%%HOMEPATH%</em>. It uses the first one
it finds.
<h2 tag="save-settings">Saving settings</h2>
<item>
<tags>:mkv :mkvimperatorrc</tags>
<spec>:mkv<oa>imperatorrc</oa><oa>!</oa> <oa>file</oa></spec>
<description>
<p>
Write current key mappings and changed options to <oa>file</oa>. If no
<oa>file</oa> is specified then <em>~/.vimperatorrc</em> is written unless this file
already exists. The special version <ex>:mkvimperatorrc!</ex> will overwrite
<oa>file</oa> if it exists.
</p>
<p>
Warning: this differs from Vim's behavior which defaults to writing the file
in the current directory.
</p>
</description>
</item>
<h2 tag="restarting">Restarting</h2>
<item>
<tags>:res :restart</tags>
<spec>:res<oa>tart</oa></spec>
<description>
<p>Force &hostapp; to restart. Useful when installing extensions.</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,157 +0,0 @@
heading::Styling{nbsp}the{nbsp}GUI{nbsp}and{nbsp}web{nbsp}pages[styling]
Vimperator allows you to style both the browser and any web pages you view. All
styling is specified via CSS. Although you may style any user interface element
via the [c]:style[c] command, most Vimperator elements can be styled with the
[c]:highlight[c] command, for convenience.
|E185| |:colo| |:colorscheme| +
||:colo[rscheme] {name}|| +
________________________________________________________________________________
Load a color scheme. {name} is found by searching the 'runtimepath' for the
first file matching colors/{name}.vimp.
The ColorScheme autocommand is triggered after the color scheme has been
sourced.
________________________________________________________________________________
|:hi| |:highlight| +
||:hi[ghlight][!] [-append] {group} [[{selector}] {css}]|| +
________________________________________________________________________________
Highlight {group} with {css}. {css} is one or more comma separated CSS
declarations (E.g. *color: blue; background-color: red*). Normally, {css} is
checked for valid syntax before it's applied. Once you're certain it's valid,
[!] can be used to skip the check to speed up Vimperator startup. {selector}
can be any valid CSS selector, such as [c]:hover[c], and, if provided, will
restrict the match to matching elements.
Valid groups are:
[frame="topbot",grid="none",cols="1,4"]
|===============================================================================
|*Bell* |Vimperator's visual bell
|*Boolean* |A JavaScript Boolean object
|*CmdLine* |The command line
|*CmdOutput* |
|*CompDesc* |The description column of the completion list
|*CompGroup* |
|*CompIcon* |The favicon of a completion row
|*CompItem* |A row of completion list
|*CompItem[selected]*|A selected row of completion list
|*CompLess* |The indicator shown when completions may be scrolled up
|*CompLess::after* |The character of indicator shown when completions may be scrolled up
|*CompMore* |The indicator shown when completions may be scrolled down
|*CompMore::after* |The character of indicator shown when completions may be scrolled down
|*CompMsg* |
|*CompResult* |The result column of the completion list
|*CompTitle* |Completion row titles
|*ErrorMsg* |Error messages
|*Filter* |The matching text in a completion list
|*FrameIndicator* |The indicator shown when a new frame is selected
|*Function* |A JavaScript Function object
|*Gradient* |
|*GradientLeft* |
|*GradientRight* |
|*Hint* |A hint indicator. See [c]:help hints[c]
|*HintActive* |The hint element of link which will be followed by <Enter>
|*HintElem* |The hintable element
|*HintImage* |The indicator which floats above hinted images
|*Indicator* |
|*InfoMsg* |Information messages
|*Keyword* |A bookmark keyword for a URL
|*LineNr* |The line number of an error
|*Message* |
|*ModeMsg* |The mode indicator in the command line
|*MoreMsg* |The indicator that there is more text to view
|*NonText* |
|*Normal* |Normal text in the command line
|*Null* |A JavaScript Null object
|*Number* |A JavaScript Number object
|*Object* |A JavaScript Object
|*Preview* |
|*Question* |A prompt for a decision
|*Search* |Highlighted search results in a web page
|*StatusLine* |The status bar
|*StatusLineBroken* |The status bar for a broken web page
|*StatusLineSecure* |The status bar for a secure web page
|*StatusLineExtended*|The status bar for a secure web page with an Extended Validation(EV) certificate
|*String* |A JavaScript String object
|*TabClose* |The close button of a browser tab
|*TabIcon* |The icon of a browser tab
|*TabIconNumber* |The number of a browser tab, over its icon
|*TabNumber* |The number of a browser tab, next to its icon
|*TabText* |The text of a browser tab
|*Tag* |A bookmark tag for a URL
|*Title* |The title of a listing, including [c]:pageinfo[c], [c]:jumps[c]
|*URL* |A URL
|*WarningMsg* |A warning message
|===============================================================================
Every invocation completely replaces the styling of any previous invocation,
unless *-append* (short option: *-a*) is provided, in which case {css} is
appended to its current value. If {css} is not provided, any styles matching
{group} are listed, or all styles if no {group} provided.
________________________________________________________________________________
|:highlight-clear| +
||:hi[ghlight] clear [{group} [{selector}]]|| +
________________________________________________________________________________
Reset the highlighting for {group} to its default value. If
{group} is not given, reset all highlighting groups.
________________________________________________________________________________
|:sty| |:style| +
||:sty[le][!] [-name={name}] [-append] {filter} [{css}]|| +
________________________________________________________________________________
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 prefixes, URLs not
containing any *:* or */* characters are matched as domains. {css} is a full
CSS rule set (E.g. *body { color: blue; }*).
If {name} (short option: *-n*) is provided, any existing style with the same
name is overridden, and the style may later be deleted using {name}. If
*-append* (short option: *-a*) is provided along with *-name*, {css} and
{filter} are appended to its current value.
If {css} isn't provided, matching styles are listed.
________________________________________________________________________________
|:dels| |:delstyle| +
||:dels[tyle] [-name={name}] [-index={index}] [{filter}] [{css}]|| +
________________________________________________________________________________
Delete any matching styles. If {filter} is provided, only matching elements of
the filter are disabled. For instance, a filter [a]mozilla.org[a], given a
style for [a]www.google.com,mozilla.org[a], will result in a style for
[a]www.google.com[a]. The available options are:
* *-name*: The name provided to [c]:style[c] (short option: *-n*)
* *-index*: For unnamed styles, the index listed by [c]:style[c]
(short option: *-i*)
________________________________________________________________________________
|:styleenable| |:stylee| +
|:styenable| |:stye| +
||:styled[isable] [-name={name} [-index={index}] [{filter}] [{css}]|| +
________________________________________________________________________________
Enable any matching styles. Arguments are the same as for [c]:delstyle[c].
________________________________________________________________________________
|:styledisable| |:styled| +
|:stydisable| |:styd| +
||:stylee[nable] [-name={name} [-index={index}] [{filter}] [{css}]|| +
________________________________________________________________________________
Disable any matching styles. Arguments are the same as for [c]:delstyle[c].
________________________________________________________________________________
|:styletoggle| |:stylet| +
|:stytoggle| |:styt| +
||:stylet[oggle] [-name={name} [-index={index}] [{filter}] [{css}]|| +
________________________________________________________________________________
Toggle any matching styles. Arguments are the same as for [c]:delstyle[c].
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,208 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="styling"
title="&appname; Styling"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="styling">Styling the GUI and web pages</h1>
<p>
&appname; allows you to style both the browser and any web pages you view. All
styling is specified via CSS. Although you may style any user interface element
via the <ex>:style</ex> command, most &appname; elements can be styled with the
<ex>:highlight</ex> command, for convenience.
</p>
<item>
<tags>E185 :colo :colorscheme</tags>
<spec>:colo<oa>rscheme</oa> <a>name</a></spec>
<description>
<p>
Load a color scheme. <a>name</a> is found by searching the <o>runtimepath</o> for the
first file matching colors/<a>name</a>.vimp.
</p>
<p>
The ColorScheme autocommand is triggered after the color scheme has been
sourced.
</p>
</description>
</item>
<item>
<tags>:hi :highlight</tags>
<spec>:hi<oa>ghlight</oa><oa>!</oa> <oa>-append</oa> <a>group</a> [[<a>selector</a>] <a>css</a>]</spec>
<description>
<p>
Highlight <a>group</a> with <a>css</a>. <a>css</a> is one or more comma separated CSS
declarations (E.g. <em>color: blue; background-color: red</em>). Normally, <a>css</a> is
checked for valid syntax before it's applied. Once you're certain it's valid,
<oa>!</oa> can be used to skip the check to speed up &appname; startup. <a>selector</a>
can be any valid CSS selector, such as <ex>:hover</ex>, and, if provided, will
restrict the match to matching elements.
</p>
<p>Valid groups are:</p>
<dl>
<dt>Bell</dt> <dd>&appname;'s visual bell</dd>
<dt>Boolean</dt> <dd>A JavaScript Boolean object</dd>
<dt>CmdLine</dt> <dd>The command line</dd>
<dt>CmdOutput</dt> <dd></dd>
<dt>CompDesc</dt> <dd>The description column of the completion list</dd>
<dt>CompGroup</dt> <dd></dd>
<dt>CompIcon</dt> <dd>The favicon of a completion row</dd>
<dt>CompItem</dt> <dd>A row of completion list</dd>
<dt>CompItem[selected]</dt><dd>A selected row of completion list</dd>
<dt>CompLess</dt> <dd>The indicator shown when completions may be scrolled up</dd>
<dt>CompLess::after</dt> <dd>The character of indicator shown when completions may be scrolled up</dd>
<dt>CompMore</dt> <dd>The indicator shown when completions may be scrolled down</dd>
<dt>CompMore::after</dt> <dd>The character of indicator shown when completions may be scrolled down</dd>
<dt>CompMsg</dt> <dd></dd>
<dt>CompResult</dt> <dd>The result column of the completion list</dd>
<dt>CompTitle</dt> <dd>Completion row titles</dd>
<dt>ErrorMsg</dt> <dd>Error messages</dd>
<dt>Filter</dt> <dd>The matching text in a completion list</dd>
<dt>FrameIndicator</dt> <dd>The indicator shown when a new frame is selected</dd>
<dt>Function</dt> <dd>A JavaScript Function object</dd>
<dt>Gradient</dt> <dd></dd>
<dt>GradientLeft</dt> <dd></dd>
<dt>GradientRight</dt> <dd></dd>
<dt>Hint</dt> <dd>A hint indicator. See <ex>:help hints</ex></dd>
<dt>HintActive</dt> <dd>The hint element of link which will be followed by <k name="Return"/></dd>
<dt>HintElem</dt> <dd>The hintable element</dd>
<dt>HintImage</dt> <dd>The indicator which floats above hinted images</dd>
<dt>Indicator</dt> <dd></dd>
<dt>InfoMsg</dt> <dd>Information messages</dd>
<dt>Keyword</dt> <dd>A bookmark keyword for a URL</dd>
<dt>LineNr</dt> <dd>The line number of an error</dd>
<dt>Message</dt> <dd></dd>
<dt>ModeMsg</dt> <dd>The mode indicator in the command line</dd>
<dt>MoreMsg</dt> <dd>The indicator that there is more text to view</dd>
<dt>NonText</dt> <dd></dd>
<dt>Normal</dt> <dd>Normal text in the command line</dd>
<dt>Null</dt> <dd>A JavaScript Null object</dd>
<dt>Number</dt> <dd>A JavaScript Number object</dd>
<dt>Object</dt> <dd>A JavaScript Object</dd>
<dt>Preview</dt> <dd></dd>
<dt>Question</dt> <dd>A prompt for a decision</dd>
<dt>Search</dt> <dd>Highlighted search results in a web page</dd>
<dt>StatusLine</dt> <dd>The status bar</dd>
<dt>StatusLineBroken</dt> <dd>The status bar for a broken web page</dd>
<dt>StatusLineSecure</dt> <dd>The status bar for a secure web page</dd>
<dt>StatusLineExtended</dt><dd>The status bar for a secure web page with an Extended Validation(EV) certificate</dd>
<dt>String</dt> <dd>A JavaScript String object</dd>
<dt>TabClose</dt> <dd>The close button of a browser tab</dd>
<dt>TabIcon</dt> <dd>The icon of a browser tab</dd>
<dt>TabIconNumber</dt> <dd>The number of a browser tab, over its icon</dd>
<dt>TabNumber</dt> <dd>The number of a browser tab, next to its icon</dd>
<dt>TabText</dt> <dd>The text of a browser tab</dd>
<dt>Tag</dt> <dd>A bookmark tag for a URL</dd>
<dt>Title</dt> <dd>The title of a listing, including <ex>:pageinfo</ex>, <ex>:jumps</ex></dd>
<dt>URL</dt> <dd>A URL</dd>
<dt>WarningMsg</dt> <dd>A warning message</dd>
</dl>
<p>
Every invocation completely replaces the styling of any previous invocation,
unless <em>-append</em> (short option: <em>-a</em>) is provided, in which case <a>css</a> is
appended to its current value. If <a>css</a> is not provided, any styles matching
<a>group</a> are listed, or all styles if no <a>group</a> provided.
</p>
</description>
</item>
<item>
<tags>:highlight-clear</tags>
<spec>:hi<oa>ghlight</oa> clear <oa><a>group</a> <oa><a>selector</a></oa></oa></spec>
<description>
<p>
Reset the highlighting for <a>group</a> to its default value. If
<a>group</a> is not given, reset all highlighting groups.
</p>
</description>
</item>
<item>
<tags>:sty :style</tags>
<spec>:sty<oa>le</oa><oa>!</oa> <oa>-name=<a>name</a></oa> <oa>-append</oa> <a>filter</a> [<a>css</a>]</spec>
<description>
<p>
Add CSS styles to the browser or to web pages. <a>filter</a> is a comma separated
list of URLs to match. URLs ending with <em>*</em> are matched as prefixes, URLs not
containing any <em>:</em> or <em>/</em> characters are matched as domains. <a>css</a> is a full
CSS rule set (e.g., <tt>body { color: blue; }</tt>).
</p>
<p>
If <a>name</a> (short option: *-n*) is provided, any existing style with the same
name is overridden, and the style may later be deleted using <a>name</a>. If
*-append* (short option: *-a*) is provided along with *-name*, <a>css</a> and
<a>filter</a> are appended to its current value.
</p>
<p>If <a>css</a> isn't provided, matching styles are listed.</p>
</description>
</item>
<item>
<tags>:dels :delstyle</tags>
<spec>:dels<oa>tyle</oa> [-name=<a>name</a>] [-index=<a>index</a>] [<a>filter</a>] [<a>css</a>]</spec>
<description>
<p>
Delete any matching styles. If <a>filter</a> is provided, only matching elements of
the filter are disabled. For instance, a filter <str>mozilla.org</str>, given a
style for <str>www.google.com,mozilla.org</str>, will result in a style for
<str>www.google.com</str>. The available options are:
</p>
<ul>
<li><em>-name</em>: The name provided to <ex>:style</ex> (short option: *-n*)</li>
<li><em>-index</em>: For unnamed styles, the index listed by <ex>:style</ex>
(short option: *-i*)</li>
</ul>
</description>
</item>
<item>
<tags>:styleenable :stylee</tags>
<tags>:styenable :stye</tags>
<spec>:styled<oa>isable</oa> <oa>-name=<a>name</a></oa> <oa>-index=<a>index</a></oa> <a>filter</a> <a>css</a></spec>
<description>
<p>Enable any matching styles. Arguments are the same as for <ex>:delstyle</ex>.</p>
</description>
</item>
<item>
<tags>:styledisable :styled</tags>
<tags>:stydisable :styd</tags>
<spec>:stylee<oa>nable</oa> <oa>-name=<a>name</a></oa> <oa>-index=<a>index</a></oa> <a>filter</a> <a>css</a></spec>
<description>
<p>Disable any matching styles. Arguments are the same as for <ex>:delstyle</ex>.</p>
</description>
</item>
<item>
<tags>:styletoggle :stylet</tags>
<tags>:stytoggle :styt</tags>
<spec>:stylet<oa>oggle</oa> <oa>-name=<a>name</a></oa> <oa>-index=<a>index</a></oa> <a>filter</a> <a>css</a></spec>
<description>
<p>Toggle any matching styles. Arguments are the same as for <ex>:delstyle</ex>.</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,269 +0,0 @@
heading::Tabs[tabs]
Tabs are used to be able to view many web pages at the same time. Each tab
contains exactly one buffer -- multiple buffers per tab are not supported. As a
result many buffer and tab commands are interchangeable.
section::Listing{nbsp}tabs[listing-tabs]
|B| |:tabs| |:ls| |:files| |:buffers|
||:buffers [a][filter][a]|| +
||B||
________________________________________________________________________________
Show a list of buffers (=tabs) matching [a][filter][a]. Without [a][filter][a]
list all tabs.
A buffer may be marked with one of the following indicators:
[frame="topbot",grid="none",cols="1,10"]
|===============================================================================
|*%*|The current buffer
|*#*|The alternate buffer for [c]:e #[c] and [m]<C-^>[m]
|===============================================================================
________________________________________________________________________________
|:keepa| |:keepalt| +
||:keepa[lt] {cmd}||
________________________________________________________________________________
Execute a command without changing the current alternate buffer.
________________________________________________________________________________
section::Opening{nbsp}tabs[opening-tabs]
|:tab| +
||:tab {cmd}||
________________________________________________________________________________
Execute {cmd} and tell it to output in a new tab. Works only for commands that
support it, currently:
* [c]:tab addons[c]
* [c]:tab downloads[c]
* [c]:tab extoptions[c]
* [c]:tab help[c]
* [c]:tab javascript![c]
* [c]:tab preferences![c]
________________________________________________________________________________
// TODO: move this somewhere more appropriate
|:window| |:wind| +
||:wind[ow] {cmd}||
________________________________________________________________________________
Execute {cmd} and tell it to output in a new window. See [c]:tab[c] for the
list of supported commands.
________________________________________________________________________________
|:tabdu| |:tabduplicate|
||:[count]tabdu[plicate]|| +
________________________________________________________________________________
Duplicate the current tab and switch to the duplicate. If [count] is given,
duplicate the tab [count] times.
________________________________________________________________________________
//TODO: should the tab commands be moved back here?
See [j]opening[j] for other ways to open new tabs.
section::Changing{nbsp}tabs[changing-tabs]
|gb| +
||[count]gb||
________________________________________________________________________________
Repeat last [c]:buffer[!][c] command. This is useful to quickly jump between
buffers which have a similar URL or title.
________________________________________________________________________________
|gB| +
||[count]gB||
________________________________________________________________________________
Repeat last [c]:buffer[!][c] command in reverse direction. Just like [m]gb[m]
but in the other direction.
________________________________________________________________________________
|gt| +
||[count]gt||
________________________________________________________________________________
Go to the next tab. Cycles to the first tab when the last is selected. +
If [count] is specified go to the [count]th tab.
________________________________________________________________________________
|<C-PageDown>| |<C-Tab>| |<C-n>| +
||[count]<C-n>||
________________________________________________________________________________
Go to the next tab. Cycles to the first tab when the last is selected. +
If [count] is specified go to the [count]th next tab.
________________________________________________________________________________
|<C-PageUp>| |<C-S-Tab>| |<C-p>| |gT| +
||[count]gT||
________________________________________________________________________________
Go to the previous tab. Cycles to the last tab when the first is selected. +
If [count] is specified go to the [count]th previous tab.
________________________________________________________________________________
|:bn| |:bnext| |:tn| |:tnext| |:tabn| |:tabnext|
||:[count]tabn[ext] [count]|| +
||:[count]tn[ext] [count]|| +
||:[count]bn[ext] [count]|| +
________________________________________________________________________________
Switch to the next or [count]th tab. Cycles to the first tab when the last is
selected and [count] is not specified.
________________________________________________________________________________
|:bN| |:bNext| |:bp| |:bprevious| |:tN| |:tNext| |:tabN| |:tabNext| |:tp| |:tprevious| |:tabp| |:tabprevious| +
||:[count]tabp[revious] [count]|| +
||:[count]tp[revious] [count]|| +
||:[count]tabN[ext] [count]|| +
||:[count]bp[revious] [count]|| +
||:[count]bN[ext] [count]|| +
________________________________________________________________________________
Switch to the previous tab or go [count] tabs back. Wraps around from the
first tab to the last tab.
________________________________________________________________________________
|<C-6>| |<C-^>| +
||[count]<C-^>||
________________________________________________________________________________
Select the previously selected tab. This provides a quick method of toggling
between two tabs. If [count] is specified, go to the [count]th tab.
________________________________________________________________________________
|b| |:b| |:buffer|
||:[count]b[uffer][!] [a][url|index][a]|| +
||[count]b||
________________________________________________________________________________
Go to the specified buffer from the buffer list. Argument can be either the
buffer index or the full URL. If [count] is given, go to the [count]th buffer.
If argument is neither a full URL nor an index but uniquely identifies a
buffer, it is selected. With [!] the next buffer matching the argument is
selected, even if it cannot be identified uniquely. Use [m]b[m] as a
shortcut to open this prompt.
If argument is [a]#[a], the alternate buffer will be selected (see [m]<C-^>[m]).
If no argument is given the current buffer remains current.
________________________________________________________________________________
|g^| |g0| |:bf| |:bfirst| |:br| |:brewind| |:tabfir| |:tabfirst| |:tabr| |:tabrewind|
||:tabr[ewind]|| +
||:tabfir[st]|| +
||:br[ewind]|| +
||:bf[irst]|| +
||g0|| +
||g^||
________________________________________________________________________________
Switch to the first tab.
________________________________________________________________________________
|g$| |:bl| |:blast| |:tabl| |:tablast|
||:tabl[ast]|| +
||:bl[ast]|| +
||g$||
________________________________________________________________________________
Switch to the last tab.
________________________________________________________________________________
|:tabde| |:tabdetach| +
||:tabde[tach]||
________________________________________________________________________________
Detach the current tab, and open it in its own window. As each window must
contain at least one tab it is not possible to detach the only tab in a window.
Use [c]:tabduplicate[c] to copy the tab then call [c]:tabdetach[c].
________________________________________________________________________________
|:taba| |:tabattach|
||:taba[ttach] {window-index} [tab-index]|| +
________________________________________________________________________________
Attach the current tab to another window. {window-index} is an index into the
list of open windows and [a][tab-index][a] is the index at which to insert the
tab in the other window's tab list. If this is the last tab in a window, the
window will be closed.
________________________________________________________________________________
section::Reordering{nbsp}tabs[reordering-tabs]
|:tabm| |:tabmove|
||:tabm[ove] [a][N][a]|| +
||:tabm[ove][!] [a]+N[a] | [a]-N[a]|| +
________________________________________________________________________________
Move the current tab to a position after tab [a]N[a]. When [a]N[a] is 0, the
current tab is made the first one. Without [a]N[a] the current tab is made the
last one. [a]N[a] can also be prefixed with "+" or "-" to indicate a relative
movement. If [!] is specified the movement wraps around the start or end of the
tab list.
________________________________________________________________________________
section::Closing{nbsp}tabs[closing-tabs]
|d| |:tabc| |:tabclose| |:bun| |:bunload| |:bw| |:bwipeout| |:bd| |:bdelete|
||:[count]bd[elete][!] [a][arg][a]|| +
||[count]d||
________________________________________________________________________________
Delete current buffer (=tab). If [count] is specified then [count] tabs are
removed. Afterwards, the tab to the right of the deleted tab(s) is selected.
When used with [a][arg][a], remove all tabs which contain [a][arg][a] in the
hostname. [!] forces this command to also search for [a][arg][a] in the full
URL and also the title of the tab. Use with care.
________________________________________________________________________________
|D|
||[count]D||
________________________________________________________________________________
Like [m]d[m] but selects the tab to the left of the deleted tab.
________________________________________________________________________________
|:tabo| |:tabonly|
||:tabo[nly]||
________________________________________________________________________________
Close all other tabs.
________________________________________________________________________________
|u| |:u| |:undo|
||:[count]u[ndo] [a][url][a]|| +
||[count]u||
________________________________________________________________________________
Undo closing of a tab. If a count is given, don't undo the last but the
[count]th last closed tab. With [a][url][a] restores the tab matching the URL.
________________________________________________________________________________
|:undoa| |:undoall| +
||:undoa[ll]||
________________________________________________________________________________
Undo closing of all closed tabs. Firefox stores up to 10 closed tabs, even
after a browser restart.
________________________________________________________________________________
section::Looping{nbsp}over{nbsp}tabs[looping-over-tabs]
|:tabd| |:tabdo| |:bufd| |:bufdo| +
||:tabd[o] {cmd}||
________________________________________________________________________________
Execute {cmd} in each tab. {cmd} is executed in each tab starting with the
first and ending with the last which becomes the current tab.
{cmd} should not alter the tab list state by adding, removing or reordering
tabs.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,385 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="tabs"
title="&appname; Tabs"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1 tag="tabs">Tabs</h1>
<p>
Tabs are used to be able to view many web pages at the same time. Each tab
contains exactly one buffer—multiple buffers per tab are not supported. As a
result many buffer and tab commands are interchangeable.
</p>
<h2 tag="listing-tabs">Listing tabs</h2>
<item>
<tags>B :tabs :ls :files :buffers</tags>
<spec>:buffers <oa>filter</oa></spec>
<spec>B</spec>
<description>
<p>
Show a list of buffers (=tabs) matching <oa>filter</oa>. Without <oa>filter</oa>
list all tabs.
</p>
<p>A buffer may be marked with one of the following indicators:</p>
<dl>
<dt>%</dt><dd>The current buffer</dd>
<dt>#</dt><dd>The alternate buffer for <ex>:e #</ex> and <k name="C-^"/></dd>
</dl>
</description>
</item>
<item>
<tags>:keepa :keepalt</tags>
<spec>:keepa<oa>lt</oa> <a>cmd</a></spec>
<description>
<p>Execute a command without changing the current alternate buffer.</p>
</description>
</item>
<h2 tag="opening-tabs">Opening tabs</h2>
<item>
<tags>:tab</tags>
<spec>:tab <a>cmd</a></spec>
<description>
<p>
Execute <a>cmd</a> and tell it to output in a new tab. Works only for commands that
support it, currently:
</p>
<p>
* <ex>:tab addons</ex>
* <ex>:tab downloads</ex>
* <ex>:tab extoptions</ex>
* <ex>:tab help</ex>
* <ex>:tab javascript!</ex>
* <ex>:tab preferences!</ex>
</p>
</description>
</item>
<item>
<!-- TODO: move this somewhere more appropriate -->
<tags>:window :wind</tags>
<spec>:wind<oa>ow</oa> <a>cmd</a></spec>
<description>
<p>
Execute <a>cmd</a> and tell it to output in a new window. See <ex>:tab</ex> for the
list of supported commands.
</p>
</description>
</item>
<item>
<tags>:tabdu :tabduplicate</tags>
<spec>:<oa>count</oa>tabdu<oa>plicate</oa></spec>
<description>
<p>
Duplicate the current tab and switch to the duplicate. If <oa>count</oa> is given,
duplicate the tab <oa>count</oa> times.
</p>
</description>
</item>
<!-- TODO: should the tab commands be moved back here? -->
See [j]opening[j] for other ways to open new tabs.
<h2 tag="changing-tabs">Changing tabs</h2>
<item>
<tags>gb</tags>
<spec><oa>count</oa>gb</spec>
<description>
<p>
Repeat last <ex>:buffer<oa>!</oa></ex> command. This is useful to quickly jump between
buffers which have a similar URL or title.
</p>
</description>
</item>
<item>
<tags>gB</tags>
<spec><oa>count</oa>gB</spec>
<description>
<p>
Repeat last <ex>:buffer<oa>!</oa></ex> command in reverse direction. Just like <k>gb</k>
but in the other direction.
</p>
</description>
</item>
<item>
<tags>gt</tags>
<spec><oa>count</oa>gt</spec>
<description>
<p>
Go to the next tab. Cycles to the first tab when the last is selected. +
If <oa>count</oa> is specified go to the <oa>count</oa>th tab.
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-PageDown> <C-Tab> <C-n>]]></tags>
<spec><oa>count</oa>&lt;C-n></spec>
<description>
<p>
Go to the next tab. Cycles to the first tab when the last is selected. +
If <oa>count</oa> is specified go to the <oa>count</oa>th next tab.
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-PageUp> <C-S-Tab> <C-p> gT]]></tags>
<spec><oa>count</oa>gT</spec>
<description>
<p>
Go to the previous tab. Cycles to the last tab when the first is selected. +
If <oa>count</oa> is specified go to the <oa>count</oa>th previous tab.
</p>
</description>
</item>
<item>
<tags>:bn :bnext :tn :tnext :tabn :tabnext</tags>
<spec>:<oa>count</oa>tabn<oa>ext</oa> <oa>count</oa></spec>
<spec>:<oa>count</oa>tn<oa>ext</oa> <oa>count</oa></spec>
<spec>:<oa>count</oa>bn<oa>ext</oa> <oa>count</oa></spec>
<description>
<p>
Switch to the next or <oa>count</oa>th tab. Cycles to the first tab when the last is
selected and <oa>count</oa> is not specified.
</p>
</description>
</item>
<item>
<tags>:bN :bNext :bp :bprevious :tN :tNext :tabN :tabNext :tp :tprevious :tabp :tabprevious</tags>
<spec>:<oa>count</oa>tabp<oa>revious</oa> <oa>count</oa></spec>
<spec>:<oa>count</oa>tp<oa>revious</oa> <oa>count</oa></spec>
<spec>:<oa>count</oa>tabN<oa>ext</oa> <oa>count</oa></spec>
<spec>:<oa>count</oa>bp<oa>revious</oa> <oa>count</oa></spec>
<spec>:<oa>count</oa>bN<oa>ext</oa> <oa>count</oa></spec>
<description>
<p>
Switch to the previous tab or go <oa>count</oa> tabs back. Wraps around from the
first tab to the last tab.
</p>
</description>
</item>
<item>
<tags><![CDATA[<C-6> <C-^>]]></tags>
<spec><oa>count</oa>&lt;C-^></spec>
<description>
<p>
Select the previously selected tab. This provides a quick method of toggling
between two tabs. If <oa>count</oa> is specified, go to the <oa>count</oa>th tab.
</p>
</description>
</item>
<item>
<tags>b :b :buffer</tags>
<spec>:<oa>count</oa>b<oa>uffer</oa><oa>!</oa> <oa>url|index</oa></spec>
<spec><oa>count</oa>b</spec>
<description>
<p>
Go to the specified buffer from the buffer list. Argument can be either the
buffer index or the full URL. If <oa>count</oa> is given, go to the <oa>count</oa>th buffer.
</p>
<p>
If argument is neither a full URL nor an index but uniquely identifies a
buffer, it is selected. With <oa>!</oa> the next buffer matching the argument is
selected, even if it cannot be identified uniquely. Use <k>b</k> as a
shortcut to open this prompt.
</p>
<p>If argument is [a]#[a], the alternate buffer will be selected (see <k name="C-^"/>).</p>
<p>If no argument is given the current buffer remains current.</p>
</description>
</item>
<item>
<tags>g^ g0 :bf :bfirst :br :brewind :tabfir :tabfirst :tabr :tabrewind</tags>
<spec>:tabr<oa>ewind</oa></spec>
<spec>:tabfir<oa>st</oa></spec>
<spec>:br<oa>ewind</oa></spec>
<spec>:bf<oa>irst</oa></spec>
<spec>g0</spec>
<spec>g^</spec>
<description>
<p>Switch to the first tab.</p>
</description>
</item>
<item>
<tags>g$ :bl :blast :tabl :tablast</tags>
<spec>:tabl<oa>ast</oa></spec>
<spec>:bl<oa>ast</oa></spec>
<spec>g$</spec>
<description>
<p>Switch to the last tab.</p>
</description>
</item>
<item>
<tags>:tabde :tabdetach</tags>
<spec>:tabde<oa>tach</oa></spec>
<description>
<p>
Detach the current tab, and open it in its own window. As each window must
contain at least one tab it is not possible to detach the only tab in a window.
Use <ex>:tabduplicate</ex> to copy the tab then call <ex>:tabdetach</ex>.
</p>
</description>
</item>
<item>
<tags>:taba :tabattach</tags>
<spec>:taba<oa>ttach</oa> <a>window-index</a> <oa>tab-index</oa></spec>
<description>
<p>
Attach the current tab to another window. {window-index} is an index into the
list of open windows and <oa>tab-index</oa> is the index at which to insert the
tab in the other window's tab list. If this is the last tab in a window, the
window will be closed.
</p>
</description>
</item>
<h2 tag="reordering-tabs">Reordering tabs</h2>
<item>
<tags>:tabm :tabmove</tags>
<spec>:tabm<oa>ove</oa> <oa>N</oa></spec>
<spec>:tabm<oa>ove</oa><oa>!</oa> <oa>+N</oa> | <oa>-N</oa></spec>
<description>
<p>
Move the current tab to a position after tab <oa>N</oa>. When <oa>N</oa> is 0, the
current tab is made the first one. Without <oa>N</oa> the current tab is made the
last one. <oa>N</oa> can also be prefixed with "+" or "-" to indicate a relative
movement. If <oa>!</oa> is specified the movement wraps around the start or end of the
tab list.
</p>
</description>
</item>
<h2 tag="closing-tabs">Closing tabs</h2>
<item>
<tags>d :tabc :tabclose :bun :bunload :bw :bwipeout :bd :bdelete</tags>
<spec>:<oa>count</oa>bd<oa>elete</oa><oa>!</oa> <oa>arg</oa></spec>
<spec><oa>count</oa>d</spec>
<description>
<p>
Delete current buffer (=tab). If <oa>count</oa> is specified then <oa>count</oa> tabs are
removed. Afterwards, the tab to the right of the deleted tab(s) is selected.
</p>
<p>
When used with <oa>arg</oa>, remove all tabs which contain <oa>arg</oa> in the
hostname. <oa>!</oa> forces this command to also search for <oa>arg</oa> in the full
URL and also the title of the tab. Use with care.
</p>
</description>
</item>
<item>
<tags>D</tags>
<spec><oa>count</oa>D</spec>
<description>
<p>Like <k>d</k> but selects the tab to the left of the deleted tab.</p>
</description>
</item>
<item>
<tags>:tabo :tabonly</tags>
<spec>:tabo<oa>nly</oa></spec>
<description>
<p>Close all other tabs.</p>
</description>
</item>
<item>
<tags>u :u :undo</tags>
<spec>:<oa>count</oa>u<oa>ndo</oa> <oa>url</oa></spec>
<spec><oa>count</oa>u</spec>
<description>
<p>
Undo closing of a tab. If a count is given, don't undo the last but the
<oa>count</oa>th last closed tab. With <oa>url</oa> restores the tab matching the URL.
</p>
</description>
</item>
<item>
<tags>:undoa :undoall</tags>
<spec>:undoa<oa>ll</oa></spec>
<description>
<p>
Undo closing of all closed tabs. &hostapp; stores up to 10 closed tabs, even
after a browser restart.
</p>
</description>
</item>
<h2 tag="looping-over-tabs">Looping over tabs</h2>
<item>
<tags>:tabd :tabdo :bufd :bufdo</tags>
<spec>:tabd<oa>o</oa> <a>cmd</a></spec>
<description>
<p>
Execute <a>cmd</a> in each tab. <a>cmd</a> is executed in each tab starting with the
first and ending with the last which becomes the current tab.
</p>
<p>
<a>cmd</a> should not alter the tab list state by adding, removing or reordering
tabs.
</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,255 +0,0 @@
// Initial revision: Sun Jun 8 10:07:05 UTC 2008 (penryu)
heading::Quick-start{nbsp}tutorial[tutorial]
++++++
<p style="text-align: center; font-weight: bold;">
This is a quickstart tutorial to help get new users up and running in
Vimperator. It is not intended as a full reference explaining all features.
</p>
++++++
If you've started using Vimperator from scratch (i.e., without any
customization), you should be looking at this help page in a relatively
bare-looking window. The menubar, navigation bar, and bookmark bars are hidden.
In case you missed the notice in the help:Introduction[intro.html], you can
regain these by issuing the command
\{nbsp}[c]:set go+=mTB<CR>[c]
where [m]<CR>[m] represents pressing the <Enter> or <Return> key.
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
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 'guioptions' in
help:options[options.html] for more information on this.
section::Vimperator's{nbsp}modal{nbsp}interface[modal]
Vimperator's power, like Vim's, comes from it's modal interface. Keys have
different meanings depending on which mode the browser is in. Vimperator has
several modes, but the 2 most important are ``Normal'' mode and
``Command-line'' mode.
When Vimperator starts, it is in Normal mode by default. This is probably where
you will spend the majority of your time.
The other core mode of Vimperator, Command-line mode, can be entered from
Normal mode by typing a \'[m]:[m]' (colon). You will frequently see Vimperator
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
[m]<Esc>[m] will also return you to Normal mode from most other modes in
Vimperator.
section::Getting{nbsp}help[getting-help]
Vim is a great editor but it's not much of a web browser. So even seasoned Vim
users will probably have to look at Vimperator documentation sooner or later.
Most of the documentation for Vimperator's features are easily found using the
[c]:help[c] command. For example, you can find help on the [c]:help[c] command
by typing
\{nbsp}[c]:help :help<CR>[c]
Similarly, help on configurable options is available with [c]:help
$$'{option_name}'$$[c]. (Note the single quotes around the option name as in
Vim.) Information on all available options is, predictably, [c]:help
options[c].
And you can find out about the [m]gt[m] and [m]gT[m] mapping with
\{nbsp}[c]:help gt<CR>[c] +
\{nbsp}[c]:help gT<CR>[c]
Finally, in addition to the help system itself, [c]:exusage[c], [c]:viusage[c]
and [c]:optionusage[c] are useful quick-reference commands.
section::Mouseless[living-mouseless]
*-- or how I learned to stop worrying and love the 80+ buttons I already have.*
The efficiency of Vimperator, as with the legendary editor it was inspired by,
relies on the user being able to keep his fingers on the keyboard where they
can do the most good. While there are some areas where the mouse is clearly
superior at, such as GUI design or some games, Vimperator acts on the
assumption that a web browser doesn't have to be one of those.
Here are some areas where the mouse is typically considered indisposable, and
how Vimperator challenges this preconception.
section::Scrolling[keyboard-scrolling]
Scrolling the browser window is done with simple keystrokes:
* [m]j[m]/[m]k[m] --
scroll window down/up by one line, respectively
* [m]h[m]/[m]l[m] --
scroll window left/right
* [m]<Space>[m]/[m]<C-b>[m] --
scroll down/up by one page
* [m]<C-d>[m]/[m]<C-u>[m] --
scroll down/up by 1/2 page
Your standard buttons ([m]<Up>[m]/[m]<Down>[m]/[m]<PgUp>[m]/[m]<PgDn>[m]) will
also work as expected.
section::History{nbsp}and{nbsp}tabs[history-navigation,tab-navigation]
History navigation (e.g., ``Back'', ``Forward'') are done similarly to
scrolling.
* [m]<C-o>[m]/[m]<C-i>[m] --
move Back/Forward in the current window/tab's history, respectively
Move between tabs using these keystrokes which may also be familiar to tabbing
Vimmers.
* [m]gt[m]/[m]<C-n>[m] --
go to the next tab
* [m]gT[m]/[m]<C-p>[m] --
go to the previous tab
* [m]g0[m]/[m]g$[m] --
go to the first/last tab
* [m]d[m] --
close the active tab (delete the buffer)
To open a web page in a new tab, use the [c]:tabopen {url}[c]. To open a URL in
the current tab, use [c]:open[c]. The Normal mode mappings [m]t[m] and [m]o[m],
respectively, map to these commands, so the following pairs of sequences are
equivalent:
\{nbsp}[c]:open my.webmail.com<CR>[c] +
\{nbsp}[m]omy.webmail.com<CR>[m]
\{nbsp}[c]:tabopen vimperator.org<CR>[c] +
\{nbsp}[m]tvimperator.org<CR>[m]
section::Some{nbsp}hints{nbsp}about{nbsp}surfing...[hints-tutorial]
So now you can navigate around in Vimperator. But wait... how do you *open* a
page or tab linked in a web page? How do you ``click'' on all those links
without your tailed friend?
The answer is ``hints''. Activating hints displays a number next to every link
Vimperator can find. To follow the link, simply type the number corresponding
to the hint, a white number inside a red square by default.
For text links, there's an additional shortcut; you can type some text
contained in the link and Vimperator will search all the links it can find and
only hint the matching links, further narrowing down the list. If the text you
type uniquely identifies any given link, Vimperator will follow that link
immediately without any further user input.
Whichever way you choose to indicate your target link, once Vimperator has
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].
To activate QuickHint mode, press either [m]f[m] or [m]F[m]. The lower-case
[m]f[m] will open the resulting link in the current tab, while the upper-case
[m]F[m] will open it in a new tab.
To test it, try this link: http://vimperator.org/[Vimperator Homepage].
Activate QuickHint mode with [m]f[m] or [m]F[m] to highlight all currently
visible links. Then start typing the text of the link. The link should be
uniquely identified soon, and Vimperator will open it. Once you're done,
remember to use [m]<C-o>[m] (``History Back'') or [m]d[m] (``Delete Buffer'')
to return here, depending on which key you used to activate QuickHint mode.
section::Common{nbsp}issues[common-issues]
Say you get half-way done typing in a new URL, only to remember that you've
already got that page open in the previous tab. Your command line might look
something like this:
\{nbsp}[c]:open my.partial.url/fooba[c]
You can exit the command line and access the already loaded page with the
following:
\{nbsp}[m]<Esc>gT[m]
section::Saving{nbsp}for{nbsp}posterity{nbsp}-{nbsp}vimperatorrc[vimperatorrc]
Once you get Vimperator set up with your desired options, maps, and commands,
you'll probably want them to be available the next time you open Vimperator.
Continuing the Vim theme, this is done with a vimperatorrc file.
To save your current settings and allow them to be loaded automatically
next time you start Vimperator, issue the [c]:mkv[c] command.
This will create the file *_$HOME_/.vimperatorrc* containing your settings.
It is a simple text file, just like a vimrc file and can be easily
edited to suit your preferences.
section::Find{nbsp}the{nbsp}exit{nbsp}nearest{nbsp}you[quitting-without-menus]
Vimperator supports all of Vim's classic methods of exiting.
* [c]:xall[c] -- command to quit and save the current browsing
session for next time; the default.
* [c]:qall[c] -- command to quit _without_ saving the session
* [m]ZZ[m] -- Normal mode mapping equivalent to [c]:xall[c]
* [m]ZQ[m] -- Normal mode mapping equivalent to [c]:qall[c]
section::Where{nbsp}did{nbsp}Firefox{nbsp}go?[whither-firefox]
You might feel pretty disoriented now. Don't worry. This is still Firefox
underneath. Here are some ways Vimperator allows Firefox to shine through. See
the [c]:help[c] for these commands and mappings for more information on how to
make the best use of them.
* [c]:dialog[c] --
To access some of Firefox's many dialog windows, you can use the
[c]:dialog[c] command. See [c]:help :dialog[c].
* [c]:bmarks[c] --
Vimperator provides a new interface to bookmarks, but they're still your
standard Firefox bookmarks under the hood. [c]:bmark[c] will add a new
bookmark, while [c]:bmarks[c] will list the bookmarks currently defined.
* [c]:history[c] --
It's exactly what it sounds like. This command will display a colorized,
scrollable and clickable list of the locations in Vimperator's history.
* [c]:emenu[c] --
Access the Firefox menus through the Vimperator command line.
Feel free to explore at this point. If you use the [c]:tabopen[c] command,
remember to use the [m]gt[m]/[m]gT[m] mappings to get back to this page. If
using the [c]:open[c] command, use the history keys (e.g., [m]H[m]) to return.
If you get hopelessly lost, just type [c]:help<CR>[c] and click the
``Tutorial'' link to return.
// TODO: other sections?
section::Get{nbsp}me{nbsp}out{nbsp}of{nbsp}here![removal]
If you've given it a fair shot and determined ... TODO
The Vimperator way to do this is with the command [c]:addons[c]. Issuing this
command brings up the Firefox Add-ons dialog window; you can then remove it as
normal, selecting Vimperator from the list and clicking (yes, clicking)
*Uninstall*.
Alternatively, you can do this the old-fashioned way: re-enable the menubar,
as above, with [c]:set go+=m[c], and select *Add-ons* from the *Tools* menu.
section::I'm{nbsp}interested...but{nbsp}lost![support]
Vimperator has an energetic and growing user base. If you've run into a problem
that you can't seem to solve with Vimperator, or if you think you might have
found a bug, please let us know! There is support available on the
http://code.google.com/p/vimperator-labs/w/list?q=label%3Aproject-vimperator[wiki],
or in the +++<a href="irc://irc.freenode.net/vimperator">#vimperator</a>+++ IRC
channel on http://freenode.net/[freenode].
If you have any feature requests or (even better) offers to help, we'd love to
hear from you as well. Developers work on Vimperator whenever possible, but we
are neither infinite nor omnipotent; please bear with us. If you can't wait for
us to get around to it, rest assured patches are welcome! See the
help:Developer[developer.html] page for more information.
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,369 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="tutorial"
title="&appname; Tutorial"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<!-- Initial revision: Sun Jun 8 10:07:05 UTC 2008 (penryu) -->
<h1 tag="tutorial">Quick-start tutorial</h1>
<html:p style="text-align: center">
This is a quickstart tutorial to help get new users up and running
in &appname;. It is not intended as a full reference explaining all
features.
</html:p>
<p>
If you've started using &appname; from scratch (i.e., without any
customization), you should be looking at this help page in a relatively
bare-looking window. The menubar, navigation bar, and bookmark bars are hidden.
In case you missed the notice in the help:Introduction[intro.html], you can
regain these by issuing the command
</p>
<code><ex>:set go+=mTB<key name="CR"/></ex></code>
<p>
where <k name="CR"/> represents pressing the <key name="Enter"/> or <key name="Return"/> key.
If you're a veteran Vim user, this may look familiar. It should.
</p>
<p>
However, in this author's opinion, the best way to get familiar with
&appname; is to leave these disabled for now. (The above action can be
reversed with <ex>:set go=<key name="CR"/></ex>) You can look at the entry for <o>guioptions</o> in
help:options[options.html] for more information on this.
</p>
<h2 tag="modal">&appname;'s modal interface</h2>
<p>
&appname;'s power, like Vim's, comes from it's modal interface. Keys have
different meanings depending on which mode the browser is in. &appname; has
several modes, but the 2 most important are ``Normal'' mode and
``Command-line'' mode.
</p>
<p>
When &appname; starts, it is in Normal mode by default. This is probably where
you will spend the majority of your time.
</p>
<p>
The other core mode of &appname;, Command-line mode, can be entered from
Normal mode by typing a \'<k>:</k>' (colon). You will frequently see &appname;
commands start with a \'<k>:</k>', indicating that what follows is a command.
</p>
<p>
To return to Normal mode from Command-line mode, type <k name="Esc"/>. Pressing
<k name="Esc"/> will also return you to Normal mode from most other modes in
&appname;.
</p>
<h2 tag="getting-help">Getting help</h2>
<p>
Vim is a great editor but it's not much of a web browser. So even seasoned Vim
users will probably have to look at &appname; documentation sooner or later.
Most of the documentation for &appname;'s features are easily found using the
<ex>:help</ex> command. For example, you can find help on the <ex>:help</ex> command
by typing
</p>
<code><ex>:help :help<key name="CR"/></ex></code>
<p>
Similarly, help on configurable options is available with
<ex>:help '<a>option_name</a>'</ex>. (Note the single quotes
around the option name as in Vim.) Information on all available
options is, predictably, <ex>:help options</ex>.
</p>
<p>
And you can find out about the <k>gt</k> and <k>gT</k> mapping with
</p>
<code>
<ex>:help gt<key name="CR"/></ex>
<ex>:help gT<key name="CR"/></ex>
</code>
<p>
Finally, in addition to the help system itself, <ex>:exusage</ex>, <ex>:viusage</ex>
and <ex>:optionusage</ex> are useful quick-reference commands.
</p>
<h2 tag="living-mouseless">Mouseless</h2>
<em> or how I learned to stop worrying and love the 80+ buttons I already have.</em>
<p>
The efficiency of &appname;, as with the legendary editor it was inspired by,
relies on the user being able to keep his fingers on the keyboard where they
can do the most good. While there are some areas where the mouse is clearly
superior at, such as GUI design or some games, &appname; acts on the
assumption that a web browser doesn't have to be one of those.
</p>
<p>
Here are some areas where the mouse is typically considered indisposable, and
how &appname; challenges this preconception.
</p>
<h2 tag="keyboard-scrolling">Scrolling</h2>
<p>
Scrolling the browser window is done with simple keystrokes:
</p>
<ul>
<li><k>j</k>/<k>k</k>
scroll window down/up by one line, respectively
</li>
<li><k>h</k>/<k>l</k>
scroll window left/right
</li>
<li><k name="Space"/>/<k name="C-b"/>
scroll down/up by one page
</li>
<li><k name="C-d"/>/<k name="C-u"/>
scroll down/up by 1/2 page
</li>
</ul>
<p>
Your standard buttons (<k name="Up"/>/<k name="Down"/>/<k name="PgUp"/>/<k name="PgDn"/>) will
also work as expected.
</p>
<h2 tag="history-navigation tab-navigation">History and tabs</h2>
<p>
History navigation (e.g., ``Back'', ``Forward'') are done similarly to
scrolling.
</p>
<ul>
<li><k name="C-o"/>/<k name="C-i"/>
move Back/Forward in the current window/tab's history, respectively
</li>
</ul>
<p>
Move between tabs using these keystrokes which may also be familiar to tabbing
Vimmers.
</p>
<ul>
<li><k>gt</k>/<k name="C-n"/>
go to the next tab
</li>
<li><k>gT</k>/<k name="C-p"/>
go to the previous tab
</li>
<li><k>g0</k>/<k>g$</k>
go to the first/last tab
</li>
<li><k>d</k>
close the active tab (delete the buffer)
</li>
</ul>
<p>
To open a web page in a new tab, use the <ex>:tabopen <a>url</a></ex>. To open a URL in
the current tab, use <ex>:open</ex>. The Normal mode mappings <k>t</k> and <k>o</k>,
respectively, map to these commands, so the following pairs of sequences are
equivalent:
</p>
<code>
<ex>:open my.webmail.com<key name="CR"/></ex>
<k>o</k>my.webmail.com<key name="CR"/>
<ex>:tabopen vimperator.org<key name="CR"/></ex>
<k>t</k>vimperator.org<key name="CR"/>
</code>
<h2 tag="hints-tutorial">Some hints about surfing…</h2>
<p>
So now you can navigate around in &appname;. But wait… how do you <em>open</em> a
page or tab linked in a web page? How do you ``click'' on all those links
without your tailed friend?
</p>
<p>
The answer is ``hints''. Activating hints displays a number next to every link
&appname; can find. To follow the link, simply type the number corresponding
to the hint, a white number inside a red square by default.
</p>
<p>
For text links, there's an additional shortcut; you can type some text
contained in the link and &appname; will search all the links it can find and
only hint the matching links, further narrowing down the list. If the text you
type uniquely identifies any given link, &appname; will follow that link
immediately without any further user input.
</p>
<p>
Whichever way you choose to indicate your target link, once &appname; has
highlighted the link you want, simply hit <k name="Enter"/> to open it.
</p>
<p>
The most common hint mode is called help:QuickHint mode[various.html,f].
To activate QuickHint mode, press either <k>f</k> or <k>F</k>. The lower-case
<k>f</k> will open the resulting link in the current tab, while the upper-case
<k>F</k> will open it in a new tab.
</p>
<p>
To test it, try this link: http://vimperator.org/[&appname; Homepage].
Activate QuickHint mode with <k>f</k> or <k>F</k> to highlight all currently
visible links. Then start typing the text of the link. The link should be
uniquely identified soon, and &appname; will open it. Once you're done,
remember to use <k name="C-o"/> (``History Back'') or <k>d</k> (``Delete Buffer'')
to return here, depending on which key you used to activate QuickHint mode.
</p>
<h2 tag="common-issues">Common issues</h2>
<p>
Say you get half-way done typing in a new URL, only to remember that you've
already got that page open in the previous tab. Your command line might look
something like this:
</p>
<code><ex>:open my.partial.url/fooba</ex></code>
<p>
You can exit the command line and access the already loaded page with the
following:
</p>
<code><k name="Esc">Esc</k></code>
<h2 tag="vimperatorrc">Saving for posterity - vimperatorrc</h2>
<p>
Once you get &appname; set up with your desired options, maps, and commands,
you'll probably want them to be available the next time you open &appname;.
Continuing the Vim theme, this is done with a vimperatorrc file.
</p>
<p>
To save your current settings and allow them to be loaded automatically
next time you start &appname;, issue the <ex>:mkv</ex> command.
</p>
<p>
This will create the file <em>$HOME/.vimperatorrc</em> containing your settings.
It is a simple text file, just like a vimrc file and can be easily
edited to suit your preferences.
</p>
<h2 tag="quitting-without-menus">Find the exit nearest you</h2>
<p>
&appname; supports all of Vim's classic methods of exiting.
</p>
<ul>
<li><ex>:xall</ex> command to quit and save the current browsing
session for next time; the default.
</li>
<li><ex>:qall</ex> command to quit <em>without</em> saving the session
</li>
<li><k>ZZ</k> Normal mode mapping equivalent to <ex>:xall</ex>
</li>
<li><k>ZQ</k> Normal mode mapping equivalent to <ex>:qall</ex>
</li>
</ul>
<h2 tag="whither-firefox">Where did &hostapp; go?</h2>
<p>
You might feel pretty disoriented now. Don't worry. This is still &hostapp;
underneath. Here are some ways &appname; allows &hostapp; to shine through. See
the <ex>:help</ex> for these commands and mappings for more information on how to
make the best use of them.
</p>
<ul>
<li><ex>:dialog</ex>
To access some of &hostapp;'s many dialog windows, you can use the
<ex>:dialog</ex> command. See <ex>:help :dialog</ex>.
</li>
<li><ex>:bmarks</ex>
&appname; provides a new interface to bookmarks, but they're still your
standard &hostapp; bookmarks under the hood. <ex>:bmark</ex> will add a new
bookmark, while <ex>:bmarks</ex> will list the bookmarks currently defined.
</li>
<li><ex>:history</ex>
It's exactly what it sounds like. This command will display a colorized,
scrollable and clickable list of the locations in &appname;'s history.
</li>
<li><ex>:emenu</ex>
Access the &hostapp; menus through the &appname; command line.
</li>
</ul>
<p>
Feel free to explore at this point. If you use the <ex>:tabopen</ex> command,
remember to use the <k>gt</k>/<k>gT</k> mappings to get back to this page. If
using the <ex>:open</ex> command, use the history keys (e.g., <k>H</k>) to return.
If you get hopelessly lost, just type <ex>:help<key name="CR"/></ex> and click the
``Tutorial'' link to return.
</p>
<!-- TODO: other sections? -->
<h2 tag="removal">Get me out of here!</h2>
<p>
If you've given it a fair shot and determined … TODO
</p>
<p>
The &appname; way to do this is with the command <ex>:addons</ex>. Issuing this
command brings up the &hostapp; Add-ons dialog window; you can then remove it as
normal, selecting &appname; from the list and clicking (yes, clicking)
<em>Uninstall</em>.
</p>
<p>
Alternatively, you can do this the old-fashioned way: re-enable the menubar,
as above, with <ex>:set go+=m</ex>, and select <em>Add-ons</em> from the <em>Tools</em> menu.
</p>
<h2 tag="support">I'm interested…but lost!</h2>
<p>
&appname; has an energetic and growing user base. If you've run into a problem
that you can't seem to solve with &appname;, or if you think you might have
found a bug, please let us know! There is support available on the
http://code.google.com/p/vimperator-labs/w/list?q=label%3Aproject-vimperator[wiki],
or in the <html:a href="irc://irc.freenode.net/vimperator">#vimperator</html:a> IRC
channel on http://freenode.net/[freenode].
</p>
<p>
If you have any feature requests or (even better) offers to help, we'd love to
hear from you as well. Developers work on &appname; whenever possible, but we
are neither infinite nor omnipotent; please bear with us. If you can't wait for
us to get around to it, rest assured patches are welcome! See the
help:Developer[developer.html] page for more information.
</p>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -1,161 +0,0 @@
heading::Other{nbsp}help[]
section::Various{nbsp}commands[various]
|:beep| +
||:beep||
________________________________________________________________________________
Play a system beep.
________________________________________________________________________________
|<C-l>| |CTRL-L| |:redr| |:redraw| +
||:redr[aw]||
________________________________________________________________________________
Redraws the screen. Useful to update the screen halfway executing a script or function.
________________________________________________________________________________
|:norm| |:normal|
||:norm[al][!] {commands}|| +
________________________________________________________________________________
Execute Normal mode commands {commands}. This makes it possible to execute
Normal mode commands typed on the command line. {commands} is executed like it
is typed. If the [!] is given, mappings will not be used. {commands} should be
a complete command. {commands} cannot start with a space. Put 1 space before
it, 1 space is one space.
________________________________________________________________________________
|:run| |:!| |:!cmd| +
||:!{cmd}||
________________________________________________________________________________
Run a command. Runs {cmd} through system() and displays its output. Any \'!' in
{cmd} is replaced with the previous external command, but not when there is a
backslash before the \'!', then the backslash is removed.
Warning: Input redirection (< foo) not done, also do not run commands which
require stdin or it will hang Firefox! It is possible to launch background
processes, though (e.g. [c]:! xterm &[c]).
________________________________________________________________________________
|:!!| +
||:!!||
________________________________________________________________________________
Repeat last [c]:!{cmd}[c].
________________________________________________________________________________
|:sa| |:sanitize| +
||:sa[nitize] [-timespan={timespan}] {item} ...|| +
||:sa[nitize]! [-timespan={timespan}]|| +
________________________________________________________________________________
Clear private data items. Where {item} ... is a list of private items to
delete. These may be any of the items valid for 'sanitizeitems'.
If [!] is specified then 'sanitizeitems' is used for the list of items to
delete.
If {timespan} is specified then only items within that timespan are deleted,
otherwise the value of 'sanitizetimespan' is used.
________________________________________________________________________________
|:sil| |:silent|
||:sil[ent] {command}|| +
________________________________________________________________________________
Execute a command silently. Normal messages and error messages generated by the
command invocation will not be given and will not be added to the message
history.
________________________________________________________________________________
|:verb| |:verbose|
||:[count]verb[ose] {command}|| +
________________________________________________________________________________
Execute a command with 'verbose' set to [count]. If [count] is not specified
then 1 is used as the value.
________________________________________________________________________________
|:ve| |:version| +
||:ve[rsion][!]||
________________________________________________________________________________
Show version information. You can show the Firefox version page with
[c]:version![c].
________________________________________________________________________________
section::Online{nbsp}help[online-help]
|<F1>| |:help| |:h| |help|
||:h[elp] [a][subject][a]|| +
||<F1>||
________________________________________________________________________________
Open the help page. The default page, as specified by 'helpfile' is shown
unless [a][subject][a] is specified. If you need help for a specific topic, try
[c]:help overview[c].
________________________________________________________________________________
|:helpall| |:helpa| |help-all|
||:helpa[ll] [a][subject][a]|| +
________________________________________________________________________________
Open the single unchunked help page.
See [c]:help[c].
________________________________________________________________________________
|:exu| |:exusage| +
||:exu[sage][!]||
________________________________________________________________________________
Show help on Ex commands. If [!] is given then the help is listed in the
command output window.
________________________________________________________________________________
|:optionu| |:optionusage|
||:optionu[sage][!]|| +
________________________________________________________________________________
Show help on options. If [!] is given then the help is listed in the command
output window.
________________________________________________________________________________
|:viu| |:viusage| +
||:viu[sage][!]||
________________________________________________________________________________
Show help on Normal mode commands. If [!] is given then the help is listed in
the command output window.
________________________________________________________________________________
|42| +
What is the meaning of life, the universe and everything?
Douglas Adams, the only person who knew what this question really was about is
now dead, unfortunately. So now you might wonder what the meaning of death
is...
section::Uncategorized{nbsp}help[uncategorized]
|<C-[>| |<Esc>| +
||<Esc>||
________________________________________________________________________________
Focus content. Exits Command-line or Hints mode and returns to Normal
mode. Also focuses the web page in case a form field has focus and eats
our key presses.
________________________________________________________________________________
|<Insert>| |i| +
||i||
________________________________________________________________________________
Start caret mode. This mode resembles the Vim's Normal mode where you see a
text cursor and can move around. If you want to select text in this mode, press
[m]v[m] to start its Visual mode.
________________________________________________________________________________
// vim: set filetype=asciidoc:

View File

@@ -0,0 +1,237 @@
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="chrome://liberator/content/help.xsl"?>
<!DOCTYPE document SYSTEM "chrome://liberator/locale/liberator.dtd">
<document
name="various"
title="&appname; Other"
xmlns="http://vimperator.org/namespaces/liberator"
xmlns:html="http://www.w3.org/1999/xhtml">
<h1>Other help</h1>
<h2 tag="various">Various commands</h2>
<item>
<tags>:beep</tags>
<spec>:beep</spec>
<description>
<p>Play a system beep.</p>
</description>
</item>
<item>
<tags><![CDATA[<C-l> CTRL-L :redr :redraw]]></tags>
<spec>:redr<oa>aw</oa></spec>
<description>
<p>Redraws the screen. Useful to update the screen halfway executing a script or function.</p>
</description>
</item>
<item>
<tags>:norm :normal</tags>
<spec>:norm<oa>al</oa><oa>!</oa> <a>commands</a></spec>
<description>
<p>
Execute Normal mode commands <a>commands</a>. This makes it possible to execute
Normal mode commands typed on the command line. <a>commands</a> is executed like it
is typed. If the <oa>!</oa> is given, mappings will not be used. <a>commands</a> should be
a complete command. <a>commands</a> cannot start with a space. Put 1 space before
it, 1 space is one space.
</p>
</description>
</item>
<item>
<tags>:run :! :!cmd</tags>
<spec>:!<a>cmd</a></spec>
<description>
<p>
Run a command. Runs <a>cmd</a> through system() and displays its output. Any '!' in
<a>cmd</a> is replaced with the previous external command, but not when there is a
backslash before the '!', then the backslash is removed.
</p>
<p>
Warning: Input redirection (&lt; foo) not done, also do not run commands which
require stdin or it will hang &hostapp;! It is possible to launch background
processes, though (e.g. <ex>:! xterm &amp;</ex>).
</p>
</description>
</item>
<item>
<tags>:!!</tags>
<spec>:!!</spec>
<description>
<p>Repeat last <ex>:!<a>cmd</a></ex>.</p>
</description>
</item>
<item>
<tags>:sa :sanitize</tags>
<spec>:sa<oa>nitize</oa> [-timespan=<a>timespan</a>] <a>item</a></spec>
<spec>:sa<oa>nitize</oa>! [-timespan=<a>timespan</a>]</spec>
<description>
<p>
Clear private data items. Where <a>item</a> … is a list of private items to
delete. These may be any of the items valid for <o>sanitizeitems</o>.
</p>
<p>
If <oa>!</oa> is specified then <o>sanitizeitems</o> is used for the list of items to
delete.
</p>
<p>
If <a>timespan</a> is specified then only items within that timespan are deleted,
otherwise the value of <o>sanitizetimespan</o> is used.
</p>
</description>
</item>
<item>
<tags>:sil :silent</tags>
<spec>:sil<oa>ent</oa> <a>command</a></spec>
<description>
<p>
Execute a command silently. Normal messages and error messages generated by the
command invocation will not be given and will not be added to the message
history.
</p>
</description>
</item>
<item>
<tags>:verb :verbose</tags>
<spec>:<oa>count</oa>verb<oa>ose</oa> <a>command</a></spec>
<description>
<p>
Execute a command with <o>verbose</o> set to <oa>count</oa>. If <oa>count</oa> is not specified
then 1 is used as the value.
</p>
</description>
</item>
<item>
<tags>:ve :version</tags>
<spec>:ve<oa>rsion</oa><oa>!</oa></spec>
<description>
<p>
Show version information. You can show the &hostapp; version page with
<ex>:version!</ex>.
</p>
</description>
</item>
<h2 tag="online-help">Online help</h2>
<item>
<tags><![CDATA[<F1> :help :h help]]></tags>
<spec>:h<oa>elp</oa> <oa>subject</oa></spec>
<spec>&lt;F1></spec>
<description>
<p>
Open the help page. The default page, as specified by <o>helpfile</o> is shown
unless <oa>subject</oa> is specified. If you need help for a specific topic, try
<ex>:help overview</ex>.
</p>
</description>
</item>
<item>
<tags>:helpall :helpa help-all</tags>
<spec>:helpa<oa>ll</oa> <oa>subject</oa></spec>
<description>
<p>Open the single unchunked help page.</p>
<p>See <ex>:help</ex>.</p>
</description>
</item>
<item>
<tags>:exu :exusage</tags>
<spec>:exu<oa>sage</oa><oa>!</oa></spec>
<description>
<p>
Show help on Ex commands. If <oa>!</oa> is given then the help is listed in the
command output window.
</p>
</description>
</item>
<item>
<tags>:optionu :optionusage</tags>
<spec>:optionu<oa>sage</oa><oa>!</oa></spec>
<description>
<p>
Show help on options. If <oa>!</oa> is given then the help is listed in the command
output window.
</p>
</description>
</item>
<item>
<tags>:viu :viusage</tags>
<spec>:viu<oa>sage</oa><oa>!</oa></spec>
<description>
<p>
Show help on Normal mode commands. If <oa>!</oa> is given then the help is listed in
the command output window.
</p>
</description>
</item>
<tags>42</tags>
What is the meaning of life, the universe and everything?
Douglas Adams, the only person who knew what this question really was about is
now dead, unfortunately. So now you might wonder what the meaning of death
is…
<h2 tag="uncategorized">Uncategorized help</h2>
<item>
<tags><![CDATA[<C-[> <Esc>]]></tags>
<spec>&lt;Esc></spec>
<description>
<p>
Focus content. Exits Command-line or Hints mode and returns to Normal
mode. Also focuses the web page in case a form field has focus and eats
our key presses.
</p>
</description>
</item>
<item>
<tags><![CDATA[<Insert> i]]></tags>
<spec>i</spec>
<description>
<p>
Start caret mode. This mode resembles the Vim's Normal mode where you see a
text cursor and can move around. If you want to select text in this mode, press
<k>v</k> to start its Visual mode.
</p>
</description>
</item>
</document>
<!-- vim:se sts=4 sw=4 et: -->

View File

@@ -3,4 +3,4 @@
VERSION = 0.2a1pre
NAME = xulmus
include ../common/Makefile.common
include ../common/Makefile

1
xulmus/components Symbolic link
View File

@@ -0,0 +1 @@
../common/components

View File

@@ -1,110 +0,0 @@
// Copyright (c) 2008-2009 by Kris Maglione <maglione.k at Gmail>
//
// This work is licensed for reuse under an MIT license. Details are
// given in the LICENSE.txt file included with this file.
/* Adds support for data: URIs with chrome privileges
* and fragment identifiers.
*
* "chrome-data:" <content-type> [; <flag>]* "," [<data>]
*
* By Kris Maglione, ideas from Ed Anuff's nsChromeExtensionHandler.
*
* ©2008-2009 Kris Maglione <maglione.k at Gmail>
*
* Permission is hereby granted, free of charge, to any person obtaining a
* copy of this software and associated documentation files (the "Software"),
* to deal in the Software without restriction, including without limitation
* the rights to use, copy, modify, merge, publish, distribute, sublicense,
* and/or sell copies of the Software, and to permit persons to whom the
* Software is furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
* THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
* FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
* DEALINGS IN THE SOFTWARE.
*/
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
const NS_BINDING_ABORTED = 0x804b0002;
const nsIProtocolHandler = Components.interfaces.nsIProtocolHandler;
const ioService = Components.classes["@mozilla.org/network/io-service;1"]
.getService(Components.interfaces.nsIIOService);
let channel = Components.classesByID["{61ba33c0-3031-11d3-8cd0-0060b0fc14a3}"]
.getService(Components.interfaces.nsIProtocolHandler)
.newChannel(ioService.newURI("chrome://liberator/content/data", null, null))
.QueryInterface(Components.interfaces.nsIRequest);
const systemPrincipal = channel.owner;
channel.cancel(NS_BINDING_ABORTED);
delete channel;
var instance;
function ChromeData() {}
ChromeData.prototype = {
contractID: "@mozilla.org/network/protocol;1?name=chrome-data",
classID: Components.ID("{c1b67a07-18f7-4e13-b361-2edcc35a5a0d}"),
classDescription: "Data URIs with chrome privileges",
QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsIProtocolHandler]),
_xpcom_factory: {
createInstance: function (outer, iid)
{
if (!instance)
instance = new ChromeData();
if (outer != null)
throw Components.results.NS_ERROR_NO_AGGREGATION;
return instance.QueryInterface(iid);
}
},
scheme: "chrome-data",
defaultPort: -1,
allowPort: function (port, scheme) false,
protocolFlags: nsIProtocolHandler.URI_NORELATIVE
| nsIProtocolHandler.URI_NOAUTH
| nsIProtocolHandler.URI_IS_UI_RESOURCE,
newURI: function (spec, charset, baseURI)
{
var uri = Components.classes["@mozilla.org/network/standard-url;1"]
.createInstance(Components.interfaces.nsIStandardURL)
.QueryInterface(Components.interfaces.nsIURI);
uri.init(1, -1, spec, charset, null);
return uri;
},
newChannel: function (uri)
{
try
{
if (uri.scheme == this.scheme)
{
let newURI = ioService.newURI(uri.spec.replace(/^.*?:\/*(.*)(?:#.*)?/, "data:$1"), null, null);
let channel = ioService.newChannelFromURI(newURI);
channel.owner = systemPrincipal;
channel.originalURI = uri;
return channel;
}
}
catch (e) {}
throw Components.results.NS_ERROR_FAILURE;
}
};
var components = [ChromeData];
function NSGetModule(compMgr, fileSpec)
{
return XPCOMUtils.generateModule(components);
}
// vim: set fdm=marker sw=4 ts=4 et:

View File

@@ -1,45 +0,0 @@
// Copyright (c) 2009 by Doug Kearns <dougkearns@gmail.com>
//
// This work is licensed for reuse under an MIT license. Details are
// given in the LICENSE.txt file included with this file.
Components.utils.import("resource://gre/modules/XPCOMUtils.jsm");
function CommandLineHandler()
{
this.wrappedJSObject = this;
}
CommandLineHandler.prototype = {
classDescription: "Xulmus Command-line Handler",
classID: Components.ID("{155807a6-02da-4812-981c-e910aa7eba42}"),
contractID: "@mozilla.org/commandlinehandler/general-startup;1?type=xulmus",
_xpcom_categories: [{
category: "command-line-handler",
entry: "m-xulmus"
}],
QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsICommandLineHandler]),
handle: function (commandLine)
{
// TODO: handle remote launches differently?
try
{
this.optionValue = commandLine.handleFlagWithParam("xulmus", false);
}
catch (e)
{
//"xulmus: option -xulmus requires an argument"
}
}
};
function NSGetModule(compMgr, fileSpec) XPCOMUtils.generateModule([CommandLineHandler]);
// vim: set fdm=marker sw=4 ts=4 et: