diff --git a/.gitignore b/.gitignore index 870718f0..50e5bc77 100644 --- a/.gitignore +++ b/.gitignore @@ -8,6 +8,7 @@ *.xpi */locale/*/*.html */chrome +*/contrib/vim/*.vba ## Editor backup and swap files *~ diff --git a/common/Makefile.common b/common/Makefile.common index 42c0d6e6..c1458a87 100644 --- a/common/Makefile.common +++ b/common/Makefile.common @@ -3,10 +3,11 @@ TOP = $(shell pwd) OS = $(shell uname -s) BUILD_DATE = $(shell date "+%Y/%m/%d %H:%M:%S") -BASE = $(TOP)/../common +BASE = $(TOP)/../common -DOC_SRC_FILES = $(wildcard locale/*/*.txt) -LOCALES = $(wildcard locale/*) +LOCALEDIR = locale +DOC_SRC_FILES = $(wildcard $(LOCALEDIR)/*/*.txt) +LOCALES = $(foreach locale,$(wildcard $(LOCALEDIR)/*),$(word 2,$(subst /, ,$(locale)))) MAKE_JAR = VERSION="$(VERSION)" DATE="$(BUILD_DATE)" sh $(BASE)/make_jar.sh @@ -26,7 +27,7 @@ XPI_BINS = jar XPI_NAME = $(NAME)_$(VERSION) XPI_PATH = ../downloads/$(XPI_NAME) -XPI = $(XPI_PATH).xpi +XPI = $(XPI_PATH).xpi RDF = ../downloads/update.rdf RDF_IN = $(RDF).in @@ -80,11 +81,11 @@ $(RDF): $(RDF_IN) Makefile < $< > $@ @echo "SUCCESS: $@" -clean: $(LOCALES:%=%.clean) +clean: $(LOCALEDIR)/$(LOCALES:%=%.clean) @echo "General $(NAME) cleanup..." rm -f $(JAR) $(XPI) -distclean: $(LOCALES:%=%.distclean) clean +distclean: $(LOCALEDIR)/$(LOCALES:%=%.distclean) clean @echo "More $(NAME) cleanup..." rm -rf $(BUILD_DIR) @@ -106,4 +107,4 @@ $(JAR): doc #### doc (see Makefile.doc) -doc: $(LOCALES:%=%.doc) ; +doc: $(foreach localetgt,$(LOCALES:%=%.doc),$(addprefix $(LOCALEDIR)/,$(localetgt))) ; diff --git a/common/Makefile.doc b/common/Makefile.doc index 571ec45a..9fed1d5e 100644 --- a/common/Makefile.doc +++ b/common/Makefile.doc @@ -1,4 +1,4 @@ -# Symlink or me to (or include me from) locale/*/Makefile +# Symlink me to (or include me from) locale/*/Makefile #### configuration @@ -12,7 +12,7 @@ ADC_SRC_FILES = $(wildcard *.txt) ADC_FILES = $(ADC_SRC_FILES:%.txt=%.html) ADC_DEPS = $(wildcard asciidoc.conf lang-$(LANG).conf) -DOC_FILES = $(ADC_FILES) +DOC_FILES = $(ADC_FILES) version.html .SILENT: @@ -44,7 +44,7 @@ distclean: clean #### asciidoc -asciidoc: check-asciidoc $(ADC_FILES) +asciidoc: check-asciidoc $(DOC_FILES) check-asciidoc: @$(ASCIIDOC) --version | $(AWK) '{ exit $$2 !~ /^8\.2\./ }' || \ @@ -54,3 +54,9 @@ $(ADC_FILES): %.html: %.txt $(BASE)/Makefile.doc $(ADC_DEPS) @echo "DOC locale/$(LOCALE)/$@" $(ASCIIDOC) --unsafe -a linkcss -a quirks! -a lang=$(LANG) -a doctitle="$(shell basename $@)" -o $@ $< +version.html: ../../NEWS $(BASE)/Makefile.doc $(ADC_DEPS) + @echo "DOC locale/$(LOCALE)/$@" + # NOTE: asciidoc doesn't source the conf file implicitly when processing stdin + sed -e '1i\ +HEADER' -e '/^[0-9]/d' -e '/^ \+\* version /s/.*version \+\([0-9.]\+\).*/section:Version{nbsp}\1[version-\1]\ +/' ../../NEWS | ${ASCIIDOC} -f asciidoc.conf -a doctitle=version.html -o version.html - diff --git a/common/content/buffer.js b/common/content/buffer.js index 2e0386a4..7f535692 100644 --- a/common/content/buffer.js +++ b/common/content/buffer.js @@ -1050,7 +1050,12 @@ function Buffer() //{{{ function followFrame(frame) { - function iter(elems) (e for ([i, e] in Iterator(elems)) if (e.rel.toLowerCase() == rel || e.rev.toLowerCase() == rel)); + function iter(elems) + { + for (let i = 0; i < elems.length; i++) + if (elems[i].rel.toLowerCase() == rel || elems[i].rev.toLowerCase() == rel) + yield elems[i]; + } // s have higher priority than normal hrefs let elems = frame.document.getElementsByTagName("link"); @@ -1074,13 +1079,7 @@ function Buffer() //{{{ for (let i in util.range(res.snapshotLength, 0, -1)) { let elem = res.snapshotItem(i); - if (regex.test(elem.textContent)) - { - buffer.followLink(elem, liberator.CURRENT_TAB); - return true; - } - // images with alt text being href - if (Array.some(elem.childNodes, function (child) regex.test(child.alt))) + if (regex.test(elem.textContent) || Array.some(elem.childNodes, function (child) regex.test(child.alt))) { buffer.followLink(elem, liberator.CURRENT_TAB); return true; diff --git a/common/content/editor.js b/common/content/editor.js index b24422bf..b62aad98 100644 --- a/common/content/editor.js +++ b/common/content/editor.js @@ -607,8 +607,12 @@ function Editor() //{{{ unselectText: function () { let elem = window.document.commandDispatcher.focusedElement; - if (elem && elem.selectionEnd) - elem.selectionEnd = elem.selectionStart; + // A error occurs if the element has been removed when "elem.selectionStart" is executed. + try { + if (elem && elem.selectionEnd) + elem.selectionEnd = elem.selectionStart; + } + catch (e) {} }, selectedText: function () diff --git a/common/content/events.js b/common/content/events.js index 622aacdb..5e1b7e02 100644 --- a/common/content/events.js +++ b/common/content/events.js @@ -639,7 +639,7 @@ function Events() //{{{ { for (let [,dir] in Iterator(dirs)) { - liberator.echomsg('Searching for "macros/*" in ' + dir.path.quote(), 2); + liberator.echomsg('Searching for "macros/*" in "' + dir.path + '"', 2); liberator.log("Sourcing macros directory: " + dir.path + "...", 3); @@ -932,6 +932,8 @@ function Events() //{{{ { if (!ctrl && !alt && !shift && !meta) return false; // an invalid key like + else if (shift) + keyname = keyname.toUpperCase(); charCode = keyname.charCodeAt(0); } else if (keyname.toLowerCase() == "space") @@ -1054,7 +1056,7 @@ function Events() //{{{ // else if (liberator.has("MacUnix") && event.ctrlKey && event.charCode >= 27 && event.charCode <= 31) { - if(event.charCode == 27) // [Ctrl-Bug 1/5] the bug + if (event.charCode == 27) // [Ctrl-Bug 1/5] the bug { key = "Esc"; modifier = modifier.replace("C-", ""); @@ -1373,8 +1375,11 @@ function Events() //{{{ if (key == "" && !event.isMacro) { events.feedingKeys = false; - if (lastMacro) + if (modes.isReplaying) + { + modes.isReplaying = false; setTimeout(function () { liberator.echomsg("Canceled playback of macro '" + lastMacro + "'"); }, 100); + } event.preventDefault(); event.stopPropagation(); return true; diff --git a/common/content/hints.js b/common/content/hints.js index d349ce58..cf877078 100644 --- a/common/content/hints.js +++ b/common/content/hints.js @@ -575,7 +575,7 @@ function Hints() //{{{ function (count) { extendedhintCount = count; - commandline.input(";", function (arg) { setTimeout(function () hints.show(arg), 0); }, + commandline.input(";", null, { promptHighlight: "Normal", completer: function (context) @@ -583,7 +583,8 @@ function Hints() //{{{ context.compare = function () 0; context.completions = [[k, v.prompt] for ([k, v] in Iterator(hintModes))]; }, - onChange: function () { modes.pop() } + onChange: function () { modes.pop() }, + onCancel: function (arg) { arg && setTimeout(function () hints.show(arg), 0); }, }); }, { flags: Mappings.flags.COUNT }); diff --git a/common/content/io.js b/common/content/io.js index 4acb103c..ef3c3abd 100644 --- a/common/content/io.js +++ b/common/content/io.js @@ -250,7 +250,7 @@ function IO() //{{{ if (!found) { - liberator.echoerr("E344: Can't find directory " + arg.quote() + " in cdpath\n" + liberator.echoerr("E344: Can't find directory \"" + arg + "\" in cdpath\n" + "E472: Command failed"); } } @@ -283,7 +283,7 @@ function IO() //{{{ if (file.exists() && !args.bang) { - liberator.echoerr("E189: " + filename.quote() + " exists (add ! to override)"); + liberator.echoerr("E189: \"" + filename + "\" exists (add ! to override)"); return; } @@ -302,7 +302,7 @@ function IO() //{{{ } catch (e) { - liberator.echoerr("E190: Cannot open " + filename.quote() + " for writing"); + liberator.echoerr("E190: Cannot open \"" + filename + "\" for writing"); liberator.log("Could not write to " + file.path + ": " + e.message); // XXX } }, @@ -524,7 +524,7 @@ function IO() //{{{ if (!dir.exists() || !dir.isDirectory()) { - liberator.echoerr("E344: Can't find directory " + dir.path.quote() + " in path"); + liberator.echoerr("E344: Can't find directory \"" + dir.path + "\" in path"); return null; } @@ -842,7 +842,7 @@ lookup: let found = false; // FIXME: should use original arg string - liberator.echomsg("Searching for " + paths.join(" ").quote() + " in " + options["runtimepath"].quote(), 2); + liberator.echomsg("Searching for \"" + paths.join(" ") + "\" in \"" + options["runtimepath"] + "\"", 2); outer: for (let [,dir] in Iterator(dirs)) @@ -851,7 +851,7 @@ lookup: { let file = joinPaths(dir, path); - liberator.echomsg("Searching for " + file.path.quote(), 3); + liberator.echomsg("Searching for \"" + file.path + "\"", 3); if (file.exists() && file.isFile() && file.isReadable()) { @@ -865,7 +865,7 @@ lookup: } if (!found) - liberator.echomsg("not found in 'runtimepath': " + paths.join(" ").quote(), 1); // FIXME: should use original arg string + liberator.echomsg("not found in 'runtimepath': \"" + paths.join(" ") + "\"", 1); // FIXME: should use original arg string return found; }, @@ -892,9 +892,9 @@ lookup: if (!silent) { if (file.exists() && file.isDirectory()) - liberator.echomsg("Cannot source a directory: " + filename.quote(), 0); + liberator.echomsg("Cannot source a directory: \"" + filename + "\"", 0); else - liberator.echomsg("could not source: " + filename.quote(), 1); + liberator.echomsg("could not source: \"" + filename + "\"", 1); liberator.echoerr("E484: Can't open file " + filename); } @@ -902,7 +902,7 @@ lookup: return; } - liberator.echomsg("sourcing " + filename.quote(), 2); + liberator.echomsg("sourcing \"" + filename + "\"", 2); let str = self.readFile(file); let uri = services.get("io").newFileURI(file); @@ -1012,7 +1012,7 @@ lookup: if (scriptNames.indexOf(file.path) == -1) scriptNames.push(file.path); - liberator.echomsg("finished sourcing " + filename.quote(), 2); + liberator.echomsg("finished sourcing \"" + filename + "\"", 2); liberator.log("Sourced: " + filename, 3); } diff --git a/common/content/liberator.js b/common/content/liberator.js index 66dc43bf..19fe896f 100644 --- a/common/content/liberator.js +++ b/common/content/liberator.js @@ -264,7 +264,7 @@ const liberator = (function () //{{{ for (let [,dialog] in Iterator(dialogs)) { - if (arg == dialog[0]) + if (util.compareIgnoreCase(arg, dialog[0]) == 0) { dialog[2](); return; @@ -281,7 +281,11 @@ const liberator = (function () //{{{ { argCount: "1", bang: true, - completer: function (context, args) completion.dialog(context) + completer: function (context) + { + context.ignoreCase = true; + return completion.dialog(context); + } }); commands.add(["em[enu]"], @@ -601,7 +605,7 @@ const liberator = (function () //{{{ forceNewTab: false, - // ###VERSION### and ###DATE### are replaced by the Makefile + // these VERSION and DATE tokens are replaced by the Makefile version: "###VERSION### (created: ###DATE###)", // NOTE: services.get("profile").selectedProfile.name is not rightness. @@ -842,7 +846,7 @@ const liberator = (function () //{{{ // Number else if (matches = string.match(/^(\d+)$/)) { - return parseInt(match[1], 10); + return parseInt(matches[1], 10); } let reference = this.variableReference(string); @@ -1025,11 +1029,11 @@ const liberator = (function () //{{{ return; } - liberator.echomsg('Searching for "plugin/**/*.{js,vimp}" in ' - + [dir.path.replace(/.plugin$/, "") for each (dir in dirs)].join(",").quote(), 2); + liberator.echomsg('Searching for "plugin/**/*.{js,vimp}" in "' + + [dir.path.replace(/.plugin$/, "") for each (dir in dirs)].join(",") + '"', 2); dirs.forEach(function (dir) { - liberator.echomsg("Searching for " + (dir.path + "/**/*.{js,vimp}").quote(), 3); + liberator.echomsg("Searching for \"" + (dir.path + "/**/*.{js,vimp}") + "\"", 3); sourceDirectory(dir); }); }, @@ -1417,16 +1421,24 @@ window.liberator = liberator; // FIXME: Ugly, etc. window.addEventListener("liberatorHelpLink", function (event) { let elem = event.target; + if (/^(option|mapping|command)$/.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, ""); + tag = tag.replace(/\[.*?\]/g, "").replace(/!$/, ""); + if (tag) var page = liberator.findHelp(tag); + if (page) + { elem.href = "chrome://liberator/locale/" + page; - }, - true, true); + if (buffer.URL.replace(/#.*/, "") == elem.href.replace(/#.*/, "")) // XXX + 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); diff --git a/common/content/options.js b/common/content/options.js index f997a697..1442ce23 100644 --- a/common/content/options.js +++ b/common/content/options.js @@ -335,7 +335,11 @@ function Options() //{{{ { case "string": if (type == Ci.nsIPrefBranch.PREF_INVALID || type == Ci.nsIPrefBranch.PREF_STRING) - services.get("pref").setCharPref(name, value); + { + let supportString = Cc["@mozilla.org/supports-string;1"].createInstance(Ci.nsISupportsString); + supportString.data = value; + services.get("pref").setComplexValue(name, Ci.nsISupportsString, supportString); + } else if (type == Ci.nsIPrefBranch.PREF_INT) liberator.echoerr("E521: Number required after =: " + name + "=" + value); else diff --git a/common/content/template.js b/common/content/template.js index b4f14bfd..ea6cf3a1 100644 --- a/common/content/template.js +++ b/common/content/template.js @@ -224,6 +224,7 @@ const template = { return s + <>{str.substr(start)}; }, + // FIXME: why is href="#"? highlightURL: function highlightURL(str, force) { if (force || /^[a-zA-Z]+:\/\//.test(str)) @@ -263,7 +264,7 @@ const template = { {idx == index ? ">" : ""} {Math.abs(idx - index)} {val.title} - {val.URI.spec} + {val.URI.spec} ) } ); diff --git a/common/content/ui.js b/common/content/ui.js index de7052e1..18cb7059 100644 --- a/common/content/ui.js +++ b/common/content/ui.js @@ -529,7 +529,7 @@ function CommandLine() //{{{ autocompleteTimer.tell(false); }); - liberator.registerCallback("cancel", modes.PROMPT, closePrompt); + liberator.registerCallback("cancel", modes.PROMPT, cancelPrompt); liberator.registerCallback("submit", modes.PROMPT, closePrompt); liberator.registerCallback("change", modes.PROMPT, function (str) { if (input.complete) @@ -542,6 +542,14 @@ function CommandLine() //{{{ context.fork("input", 0, commandline, input.complete); }); + function cancelPrompt(value) + { + let callback = input.cancel; + input = {}; + if (callback) + callback.call(commandline, value != null ? value : commandline.command); + } + function closePrompt(value) { let callback = input.submit; @@ -1202,6 +1210,7 @@ function CommandLine() //{{{ submit: callback, change: extra.onChange, complete: extra.completer, + cancel: extra.onCancel }; modes.push(modes.COMMAND_LINE, modes.PROMPT); @@ -1400,25 +1409,53 @@ function CommandLine() //{{{ let closeWindow = false; let passEvent = false; - function isScrollable() !win.scrollMaxY == 0; - function atEnd() win.scrollY / win.scrollMaxY >= 1; + let key = events.toString(event); - if (event.type == "click") + // TODO: Wouldn't multiple handlers be cleaner? --djk + if (event.type == "click" && event.target instanceof HTMLAnchorElement) { - if (event.target instanceof HTMLAnchorElement && event.button < 2) + function openLink(where) { event.preventDefault(); - let target = event.button == 0 ? liberator.CURRENT_TAB : liberator.NEW_TAB; + // FIXME: Why is this needed? --djk if (event.target.getAttribute("href") == "#") - liberator.open(event.target.textContent, target); + liberator.open(event.target.textContent, where); else - liberator.open(event.target.href, target); + liberator.open(event.target.href, where); } + + switch (key) + { + case "": + // FIXME: the :ls output no longer wraps the buffer URL in an anchor element + if (event.originalTarget.getAttributeNS(NS.uri, "highlight") == "URL buffer-list") + { + event.preventDefault(); + tabs.select(parseInt(event.originalTarget.parentNode.parentNode.firstChild.textContent, 10) - 1); + } + else + { + openLink(liberator.CURRENT_TAB); + } + break; + case "": + case "": + case "": + openLink(liberator.NEW_BACKGROUND_TAB); + break; + case "": + case "": + case "": + openLink(liberator.NEW_TAB); + break; + case "": + openLink(liberator.NEW_WINDOW); + break; + } + return; } - let key = events.toString(event); - if (startHints) { statusline.updateInputBuffer(""); @@ -1427,6 +1464,9 @@ function CommandLine() //{{{ return; } + function isScrollable() !win.scrollMaxY == 0; + function atEnd() win.scrollY / win.scrollMaxY >= 1; + switch (key) { case "": @@ -1476,34 +1516,6 @@ function CommandLine() //{{{ break; // TODO: on the prompt line should scroll one page - case "": - if (event.originalTarget.getAttributeNS(NS.uri, "highlight") == "URL buffer-list") - { - tabs.select(parseInt(event.originalTarget.parentNode.parentNode.firstChild.textContent, 10) - 1); - closeWindow = true; - break; - } - else if (event.originalTarget.localName.toLowerCase() == "a") - { - liberator.open(event.originalTarget.textContent); - break; - } - case "": // for those not owning a 3-button mouse - case "": - if (event.originalTarget.localName.toLowerCase() == "a") - { - let where = /\btabopen\b/.test(options["activate"]) ? - liberator.NEW_TAB : liberator.NEW_BACKGROUND_TAB; - liberator.open(event.originalTarget.textContent, where); - } - break; - - // let Firefox handle those to select table cells or show a context menu - case "": - case "": - case "": - break; - // page down case "f": if (options["more"] && isScrollable()) @@ -1594,7 +1606,7 @@ function CommandLine() //{{{ if (passEvent) events.onKeyPress(event); } - else // set update the prompt string + else { commandline.updateMorePrompt(showMorePrompt, showMoreHelpPrompt); } @@ -1698,7 +1710,7 @@ function ItemList(id) //{{{ if (!iframe) { liberator.log("No iframe with id: " + id + " found, strange things may happen!"); // "The truth is out there..." -- djk - return; + return; // XXX } function dom(xml, map) util.xmlToDom(xml, doc, map); diff --git a/common/content/util.js b/common/content/util.js index 5409d0c9..ad41bd18 100644 --- a/common/content/util.js +++ b/common/content/util.js @@ -577,7 +577,7 @@ const util = { //{{{ */ readFromClipboard: function readFromClipboard() { - let url; + let str; try { @@ -599,12 +599,12 @@ const util = { //{{{ if (data) { data = data.value.QueryInterface(Ci.nsISupportsString); - url = data.data.substring(0, dataLen.value / 2); + str = data.data.substring(0, dataLen.value / 2); } } catch (e) {} - return url; + return str; }, /** diff --git a/muttator/content/config.js b/muttator/content/config.js index 259d019d..6b1979bb 100644 --- a/muttator/content/config.js +++ b/muttator/content/config.js @@ -103,7 +103,8 @@ const config = { //{{{ ], // they are sorted by relevance, not alphabetically - helpFiles: ["intro.html"],/* "tutorial.html", "starting.html", + helpFiles: ["intro.html", "version.html"], + /* "tutorial.html", "starting.html", "browsing.html", "buffer.html", "pattern.html", "options.html", "tabs.html", "hints.html", "map.html", "eval.html", "marks.html", "repeat.html", "autocommands.html", "print.html", "developer.html", diff --git a/muttator/contrib/vim/syntax/muttator.vim b/muttator/contrib/vim/syntax/muttator.vim index 28961f19..296fbd34 100644 --- a/muttator/contrib/vim/syntax/muttator.vim +++ b/muttator/contrib/vim/syntax/muttator.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: Muttator configuration file " Maintainer: Doug Kearns -" Last Change: 2009 Jan 22 +" Last Change: 2009 Feb 19 if exists("b:current_syntax") finish @@ -46,7 +46,7 @@ syn region muttatorSet matchgroup=muttatorCommand start="\%(^\s*:\=\)\@<=\<\%(se syn keyword muttatorOption archivefolder cdpath cd complete cpt editor eventignore ei extendedhinttags eht followhints fh \ guioptions go helpfile hf hintmatching hm hinttags ht hinttimeout hto history hi laststatus ls layout messages msgs \ nextpattern pageinfo pa previouspattern runtimepath rtp scroll scr shell sh shellcmdflag shcf showstatuslinks ssli - \ showtabline stal suggestengines t_vb urlseparator verbose vbs wildcase wic wildignore wig wildmode wim wildoptions wop + \ showtabline stal suggestengines urlseparator verbose vbs wildcase wic wildignore wig wildmode wim wildoptions wop \ wordseparators wsp \ contained nextgroup=muttatorSetMod diff --git a/vimperator/AUTHORS b/vimperator/AUTHORS index 8d89467e..8d939af8 100644 --- a/vimperator/AUTHORS +++ b/vimperator/AUTHORS @@ -7,6 +7,10 @@ Developers: * Tim Hammerquist (penryu@gmail.com) * Konstantin Stepanov (milezv@yandex.ru) * Kris Maglione + * Ted Pavlic + * anekos + * teramako + * janus_wel Inactive/former developers: * Viktor Kojouharov (Виктор Кожухаров) @@ -33,3 +37,4 @@ Patches (in no special order): * Raimon Grau Cuscó (document relationship navigation - ]], [[) * Ryan Zheng (ctrl-x/a support) * Dan Boger (:set online support) + * Štěpán Němec (help copy-editing and favicon support) diff --git a/vimperator/Donors b/vimperator/Donors index 9a96542d..e94055cb 100644 --- a/vimperator/Donors +++ b/vimperator/Donors @@ -1,7 +1,13 @@ -Contiuous donations: +Continuous donations: * Daniel Bainton (web hosting) 2009: +* Gavin Sinclair +* Stephen Borchert +* Convolution +* Brian Hall +* Daniel Hahler +* Per-Henrik Lundblom * David C Foor * Oliver Schaefer * Paul Moss diff --git a/vimperator/Makefile b/vimperator/Makefile index b292b37f..639ea591 100644 --- a/vimperator/Makefile +++ b/vimperator/Makefile @@ -1,6 +1,6 @@ #### configuration -VERSION = 2.0b2pre +VERSION = 2.0b3pre NAME = vimperator include ../common/Makefile.common diff --git a/vimperator/NEWS b/vimperator/NEWS index 7a69e195..8cd7d8b1 100644 --- a/vimperator/NEWS +++ b/vimperator/NEWS @@ -1,4 +1,4 @@ -2008-XX-XX: +2009-XX-XX: * version 2.0 (probably) * IMPORTANT: For compatibility with vim, guioptions=b has been renamed 'B'. 'b' now represents the bottom scrollbar. @@ -7,7 +7,7 @@ * IMPORTANT: Due to much improved autocompletion, changed default 'complete' option value to 'sfl', listing intelligent Firefox location bar results. Removed possibility to use 'h' in 'complete'. - * IMPORTANT: AlwaysHint mode with ;F mode changed the semantics slightly + * IMPORTANT: AlwaysHint mode with ;F mode changed the semantics slightly. * IMPORTANT: command actions now take an args object, returned from commands.parseArgs, as their first argument. This will break any commands not using the args parser explicitly. The old string value is now @@ -15,10 +15,10 @@ * IMPORTANT: 'verbose' is now used for message levels. Logging is controlled by the extensions.liberator.loglevel preference. * IMPORTANT: :viusage and :exusage now jump to the help index, use the - special versions for the old behavior + special versions for the old behavior. * IMPORTANT: renamed Startup and Quit autocmd events to VimperatorEnter and - VimperatorLeave respectively - * IMPORTANT: 'verbose' is now by default at 1, set to 0 to not show any status messages + VimperatorLeave respectively. + * IMPORTANT: 'verbose' is now by default at 1, set to 0 to not show any status messages. * IMPORTANT: $VIMPERATOR_HOME is no longer used. * [count] now goes to the [count]th next tab rather than the [count]th tab. @@ -53,7 +53,7 @@ * much improved completion support, including javascript, option, and search keyword * add / and / command-line mappings for selecting the previous and next history items - * remove 'hintstyle', 'hlsearchstyle' and 'visualbellstyle' - use + * remove 'hintstyle', 'hlsearchstyle', 't_vb' and 'visualbellstyle' - use :highlight {Hint,Search,Bell} * add :highlight * add :optionusage @@ -81,6 +81,7 @@ * :qa! and :q! quit forcefully, as in vim * stop macro playback on * :bmark now updates a bookmark, if possible. :bmark! adds a new one + * :dialog and :sidebar arguments are now case-insensitive * many bug fixes 2008-08-16: @@ -146,7 +147,7 @@ 2008-05-14: * version 1.0 - * THIS VERSION ONLY WORKS WITH FIREFOX 3.0 beta3 or newer + * IMPORTANT: THIS VERSION ONLY WORKS WITH FIREFOX 3.0 beta3 or newer * IMPORTANT: Major hints rewrite read up the new help for the f, F and ; commands for details removed the following hint options: 'hintchars' 'maxhints' @@ -205,7 +206,7 @@ 2007-12-21: * version 0.5.3 - * IMPORTANT! options are no longer automatically stored - use the + * IMPORTANT: options are no longer automatically stored - use the ~/.vimperatorrc file instead for persistent options * :tabnext and :tabprevious now accept an argument * the count to gT now specifies a relative tab motion like Vim @@ -374,7 +375,7 @@ * added 'n' and 'N' to repeat a search * many small bug fixes -17/04/2007: +2007-04-17: * version 0.3 * added Ctrl-v support to pass one key to firefox (patch by Muthu Kannan) * also 'I' will go to 'ignorekeys' mode until esc is pressed, presenting a workaround @@ -387,6 +388,6 @@ * ability to use shift and ctrl with special keys like F1 in mappings * small documentation and other fixes -11/04/2007: +2007-04-11: * version 0.2 * first public release diff --git a/vimperator/TODO b/vimperator/TODO index f743c6e3..c2175204 100644 --- a/vimperator/TODO +++ b/vimperator/TODO @@ -17,15 +17,12 @@ BUGS: - insert abbreviations broken on - :sidebar improvements (:sidebar! Downloads while downloads is open should refocus the sidebar) - ;s saves the page rather than the image -- http://cgiirc.blitzed.org?chan=%23debug is unusable after login in - "g<" fails without a trailing escape because both "g<" and "g" are mapped. Vimp should recognize "" as an atom that should not be matched literally. In fact, typing "g" out literally is equivalent to typing "g" and then . (recent CVS regressions): -- :set noflashblock seems broken (= :set fb? afterwards says "fb"), let's see if that's a - plugin or a vimp issue. - visual caret mode is broken, requires a manual page focus first anyway or else it chucks, I haven't investigated --djk - messages is still broken in several ways - needs testing. @@ -33,15 +30,13 @@ BUGS: => it often overwrites the open command line while editing etc. - and autocmd 'keywords' are not available when adding a bookmark - they're being set after the observer triggers the autocmd event. -- MOW rendering is broken for multiple commands when open E.g. :ls | ls -- completion height is broken, try :a...., when it wraps it's totally off. - and even if it is not totally off, i had it jump by one pixel when wrapping around. - If that's unfixable, i propose reverting the new completion height stuff. -- Windows paths have escaped backslashes in messages - presumably due to - String#quote change. +- MOW rendering is broken for multiple commands when open (E.g. :ls | ls) This + appears to be the result of using the Message class when appending multiline + output to an open MOW. - :messages is _very_ slow for message history of several thousand lines -> Unresponsive Script: util.js:79 (sometimes xmlToDom() and elsewhere) -- :hardcopy! seems to be broken for me +- The MOW shouldn't close when executing hints and ;F isn't working. +- URLs in :ls output are no longer hyperlinks FEATURES: 9 finish :help TODOs @@ -49,8 +44,6 @@ FEATURES: 9 adaptive timeout for auto-completions, :set completions can be updated more often than :open foo 9 use the storage module for autocommands -9 the NEWS file should be more easily available for users, via :help news or something - at the moment you need to unzip the xpi or check the sources to view it, which isn't user friendly 8 support 'activate' in buffer.followLink? Leave this to the bookmarks.tabs.loadInBackground. Hint activation should be nearly equivalent to the corresponding mouse motion, and that diff --git a/vimperator/content/config.js b/vimperator/content/config.js index 7d4dd586..1a37841a 100644 --- a/vimperator/content/config.js +++ b/vimperator/content/config.js @@ -117,7 +117,7 @@ const config = { //{{{ "pattern.html", "tabs.html", "hints.html", "map.html", "eval.html", "marks.html", "repeat.html", "autocommands.html", "print.html", "gui.html", "styling.html", "message.html", "developer.html", - "various.html", "index.html" + "various.html", "index.html", "version.html" ], scripts: [ @@ -372,9 +372,10 @@ const config = { //{{{ function (args) { let arg = args.literalArg; + function compare(a, b) util.compareIgnoreCase(a, b) == 0 // focus if the requested sidebar is already open - if (document.getElementById("sidebar-title").value == arg) + if (compare(document.getElementById("sidebar-title").value, arg)) { document.getElementById("sidebar-box").focus(); return; @@ -384,7 +385,7 @@ const config = { //{{{ for (let [,panel] in Iterator(menu.childNodes)) { - if (panel.label == arg) + if (compare(panel.label, arg)) { panel.doCommand(); return; @@ -395,7 +396,11 @@ const config = { //{{{ }, { argCount: "1", - completer: function (context) completion.sidebar(context), + completer: function (context) + { + context.ignoreCase = true; + return completion.sidebar(context); + }, literal: 0 }); diff --git a/vimperator/contrib/vim/syntax/vimperator.vim b/vimperator/contrib/vim/syntax/vimperator.vim index aadf47b8..aebd6fc1 100644 --- a/vimperator/contrib/vim/syntax/vimperator.vim +++ b/vimperator/contrib/vim/syntax/vimperator.vim @@ -1,7 +1,7 @@ " Vim syntax file " Language: VIMperator configuration file " Maintainer: Doug Kearns -" Last Change: 2008 Jan 22 +" Last Change: 2009 Feb 19 if exists("b:current_syntax") finish @@ -48,7 +48,7 @@ syn region vimperatorSet matchgroup=vimperatorCommand start="\%(^\s*:\=\)\@<=\<\ syn keyword vimperatorOption activate act cdpath cd complete cpt defsearch ds editor eventignore ei extendedhinttags eht \ followhints fh guioptions go helpfile hf hintmatching hm hinttags ht hinttimeout hto history hi laststatus ls messages msgs \ newtab nextpattern pageinfo pa popups pps previouspattern runtimepath rtp scroll scr shell sh shellcmdflag shcf - \ showstatuslinks ssli showtabline stal suggestengines t_vb titlestring urlseparator verbose vbs wildcase wic wildignore wig + \ showstatuslinks ssli showtabline stal suggestengines titlestring urlseparator verbose vbs wildcase wic wildignore wig \ wildmode wim wildoptions wop wordseparators wsp \ contained nextgroup=vimperatorSetMod diff --git a/vimperator/locale/en-US/asciidoc.conf b/vimperator/locale/en-US/asciidoc.conf index ff6fda1e..4bcc4288 100644 --- a/vimperator/locale/en-US/asciidoc.conf +++ b/vimperator/locale/en-US/asciidoc.conf @@ -13,6 +13,7 @@ email=stubenschrott@gmx.net + {doctitle} @@ -27,7 +28,7 @@ HEADER=
[count] \[!\]=[!] -# [macros] +[macros] # section:Introduction[tag1,tag2] (?su)(?.+?)\|(?!\+)=section # help:helptext[href] @@ -55,6 +56,7 @@ HEADER=
&\#123;|} argument3=[|] [specialwords] -warningwords=WARNING: Warning: +warningwords=WARNING: Warning: IMPORTANT: Important: infowords=NOTE: Note: [warningwords] diff --git a/vimperator/locale/en-US/autocommands.txt b/vimperator/locale/en-US/autocommands.txt index cc5bddb3..36104b56 100644 --- a/vimperator/locale/en-US/autocommands.txt +++ b/vimperator/locale/en-US/autocommands.txt @@ -28,9 +28,9 @@ Available {events}: *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. +*PageLoadPre* Triggered after a page load is initiated *PageLoad* Triggered when a page gets (re)loaded/opened -*ShellCmdPost* Triggered after executing a shell command with [c]:![c]{cmd} +*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 @@ -45,7 +45,7 @@ The following keywords are available where relevant: `--------------`---------------------------------------------- ** The URL against which the event was selected. ** The page, bookmark or download title. -*<tab>* The index tab in which the event occurred. +*<tab>* The tab in which the event occurred. *<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*. @@ -77,15 +77,15 @@ section:Examples[autocmd-examples] Enable _passthrough_ mode on all Google sites: - :autocmd LocationChange .* js modes.passAllKeys = /google\.com/.test(buffer.URL) +\{nbsp}[c]:autocmd LocationChange .* js modes.passAllKeys = /google\.com/.test(buffer.URL)[c] Enable _passthrough_ mode on *some* Google sites: - :autocmd LocationChange .* js modes.passAllKeys = /(www|mail)\.google\.com/.test(buffer.URL) +\{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: - :autocmd LocationChange .* :set editor=gvim\ -f - :autocmd LocationChange mail\.google\.com :set editor="gvim -f -c 'set ft=mail'" +\{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: diff --git a/vimperator/locale/en-US/browsing.txt b/vimperator/locale/en-US/browsing.txt index 57f8ce84..9b44fa8a 100644 --- a/vimperator/locale/en-US/browsing.txt +++ b/vimperator/locale/en-US/browsing.txt @@ -35,7 +35,7 @@ section:Opening{nbsp}web{nbsp}pages[opening] ________________________________________________________________________________ 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.") +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: @@ -71,7 +71,7 @@ ________________________________________________________________________________ ||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. +used with [!], the *tabopen* value of the 'activate' option is negated. ________________________________________________________________________________ @@ -86,9 +86,9 @@ ________________________________________________________________________________ |:tabd| |:tabduplicate| ||:[count]tabd[uplicate][!]|| + ________________________________________________________________________________ -Duplicates current tab [count] times. Uses 'tabopen' value of the 'activate' to -determine if last cloned tab should be activated. When used with [!], 'tabopen' -value is negated. +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. ________________________________________________________________________________ @@ -138,7 +138,7 @@ ________________________________________________________________________________ ||[count]<C-x>|| ________________________________________________________________________________ Decrements the last number in URL by 1, or by [count] if given. Negative -numbers are not supported, as this not generally useful, so the number cannot +numbers are not supported, as this is not generally useful, so the number cannot be decremented past 0. ________________________________________________________________________________ @@ -160,22 +160,22 @@ ________________________________________________________________________________ section:Navigating[navigating] |H| |<C-o>| |CTRL-O| |:ba| |:back| -||:[count]ba[ck] {url}|| + +||:[count]ba[ck] [url]|| + ||:ba[ck]!|| + ||CTRL-o|| ________________________________________________________________________________ -Go [count] pages back in the browser history. If {url} is specified go back to +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] {url}|| + +||:[count]fo[rward] [url]|| + ||:fo[rward]!|| + ||CTRL-i|| ________________________________________________________________________________ -Go [count] pages forward in the browser history. If {url} is specified go +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. ________________________________________________________________________________ @@ -311,7 +311,7 @@ ________________________________________________________________________________ ||: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 as in Vim, as it +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. ________________________________________________________________________________ diff --git a/vimperator/locale/en-US/buffer.txt b/vimperator/locale/en-US/buffer.txt index 86c3c259..95d6bab0 100644 --- a/vimperator/locale/en-US/buffer.txt +++ b/vimperator/locale/en-US/buffer.txt @@ -233,9 +233,12 @@ zoom range (default: 30%--300%). The zoom levels are used by default zoom levels are 30%, 50%, 67%, 80%, 90%, 100%, 110%, 120%, 133%, 150%, 170%, 200%, 240%, 300%. -The available zoom range can be changed by setting the \'zoom.minPercent' and -\'zoom.maxPercent' Firefox preferences. The zoom levels can be changed using -the \'toolkit.ZoomManager.zoomLevels' preference. +The available zoom range can be changed by setting the +\'http://kb.mozillazine.org/Zoom.minPercent[zoom.minPercent]' and +\'http://kb.mozillazine.org/Zoom.minPercent[zoom.maxPercent]' Firefox +preferences. The zoom levels can be changed using the +\'http://kb.mozillazine.org/Toolkit.zoomManager.zoomValues[toolkit.ZoomManager.zoomLevels]' +preference. Note: \'toolkit.ZoomManager.zoomLevels' is specified as a list of values between 0 and 1, not as a percentage. @@ -243,28 +246,28 @@ between 0 and 1, not as a percentage. |+| |zi| + ||[count]zi|| ________________________________________________________________________________ -Enlarge text zoom of current web page. Mnemonic: zoom in +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 +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 +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 +Reduce text zoom of current web page by a larger amount. Mnemonic: zoom reduce. ________________________________________________________________________________ @@ -279,28 +282,28 @@ ________________________________________________________________________________ |zI| + ||[count]zI|| ________________________________________________________________________________ -Enlarge full zoom of current web page. Mnemonic: zoom in +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 +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 +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 +Reduce full zoom of current web page by a larger amount. Mnemonic: zoom reduce. ________________________________________________________________________________ diff --git a/vimperator/locale/en-US/cmdline.txt b/vimperator/locale/en-US/cmdline.txt index a0499e6e..3ee75fef 100644 --- a/vimperator/locale/en-US/cmdline.txt +++ b/vimperator/locale/en-US/cmdline.txt @@ -2,13 +2,13 @@ HEADER |Command-line-mode| |Command-line| |mode-cmdline| + -Command-line mode is used to enter Ex commands (":") and text search patterns -("/" and "?"). +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 +Start Command-line mode. In Command-line mode, you can perform extended commands, which may require arguments. ________________________________________________________________________________ @@ -18,7 +18,7 @@ section:Command-line{nbsp}editing[cmdline-editing] |c_<C-c>| + ||<C-c>|| ________________________________________________________________________________ -Quit command-line mode without executing. +Quit Command-line mode without executing. ________________________________________________________________________________ diff --git a/vimperator/locale/en-US/developer.txt b/vimperator/locale/en-US/developer.txt index 13757c3d..cf875d82 100644 --- a/vimperator/locale/en-US/developer.txt +++ b/vimperator/locale/en-US/developer.txt @@ -4,8 +4,8 @@ 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.x or -newer. The are placed in the _src/locale/en-US/_ directory and compiled with +http://www.methods.co.nz/asciidoc/index.html[asciidoc] version 8.2.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 diff --git a/vimperator/locale/en-US/gui.txt b/vimperator/locale/en-US/gui.txt index 0b1f5102..4da826c5 100644 --- a/vimperator/locale/en-US/gui.txt +++ b/vimperator/locale/en-US/gui.txt @@ -3,7 +3,7 @@ HEADER |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 +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. diff --git a/vimperator/locale/en-US/help.js b/vimperator/locale/en-US/help.js index ece4273f..27413a00 100644 --- a/vimperator/locale/en-US/help.js +++ b/vimperator/locale/en-US/help.js @@ -6,7 +6,7 @@ function checkFragment() return; let elem = document.evaluate('//*[@class="tag" and text()="' + frag + '"]', document, null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null).snapshotItem(0); if (elem) - window.content.scrollTo(0, elem.getBoundingClientRect().top - 10); // 10px context + window.content.scrollTo(0, window.content.scrollY + elem.getBoundingClientRect().top - 10); // 10px context } document.addEventListener("load", checkFragment, true); diff --git a/vimperator/locale/en-US/hints.txt b/vimperator/locale/en-US/hints.txt index 794044e2..ef3200bb 100644 --- a/vimperator/locale/en-US/hints.txt +++ b/vimperator/locale/en-US/hints.txt @@ -34,10 +34,11 @@ ________________________________________________________________________________ |;| + ||#;#{mode}{empty}{hint}|| ________________________________________________________________________________ -Start an extended hint mode. ExtendedHint mode is useful, since in this mode -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. +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: + diff --git a/vimperator/locale/en-US/index.txt b/vimperator/locale/en-US/index.txt index ceefea0b..5a6a2fbb 100644 --- a/vimperator/locale/en-US/index.txt +++ b/vimperator/locale/en-US/index.txt @@ -7,7 +7,7 @@ This file contains a list of all available commands. section:Insert{nbsp}mode[insert-index] ||[m]<C-i>[m]|| Launch the external editor + -||[m]<C-]>[m]|| Expand an insert-mode abbreviation + +||[m]<C-]>[m]|| Expand an Insert-mode abbreviation + section:Normal{nbsp}mode[normal-index] @@ -56,7 +56,7 @@ section:Normal{nbsp}mode[normal-index] ||[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]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 + @@ -72,7 +72,7 @@ section:Normal{nbsp}mode[normal-index] ||[m];[m]|| Start an extended hint mode + -||[m]:[m]|| Enter command-line mode + +||[m]:[m]|| Enter Command-line mode + ||[m]~[m]|| Open home directory + @@ -129,7 +129,7 @@ section:Normal{nbsp}mode[normal-index] section:Command-line{nbsp}editing[ex-edit-index] -||[m]<C-c>[m]|| Quit command-line mode without executing + +||[m]<C-c>[m]|| Quit Command-line mode without executing + ||[m]<C-]>[m]|| Expand a command-line abbreviation + @@ -153,17 +153,17 @@ section:Ex{nbsp}commands[ex-cmd-index,:index] ||[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]: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]: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]: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 + @@ -186,13 +186,13 @@ section:Ex{nbsp}commands[ex-cmd-index,:index] ||[c]:help[c]|| Display help + ||[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]: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]:let[c]|| Set or list a variable + @@ -268,8 +268,8 @@ section:Options[option-index] ||'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] + -||'focuscontent'|| Try to stay in normal mode after loading a web page + -||'followhints'|| Change the behaviour of [m]<Return>[m] in hint mode + +||'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 + diff --git a/vimperator/locale/en-US/insert.txt b/vimperator/locale/en-US/insert.txt index 67ff3d8c..c49d440e 100644 --- a/vimperator/locale/en-US/insert.txt +++ b/vimperator/locale/en-US/insert.txt @@ -4,12 +4,12 @@ HEADER 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. +Insert mode. |i| + ||i|| ________________________________________________________________________________ -Starts insert mode in text areas when 'insertmode' is not set. +Starts Insert mode in text areas when 'insertmode' is not set. ________________________________________________________________________________ @@ -24,7 +24,7 @@ ________________________________________________________________________________ |i_<C-]>| + ||<C-]>|| ________________________________________________________________________________ -Expand an insert-mode abbreviation. +Expand an Insert-mode abbreviation. ________________________________________________________________________________ // vim: set filetype=asciidoc: diff --git a/vimperator/locale/en-US/intro.txt b/vimperator/locale/en-US/intro.txt index 7c666295..ec5156fb 100644 --- a/vimperator/locale/en-US/intro.txt +++ b/vimperator/locale/en-US/intro.txt @@ -20,13 +20,17 @@ 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]:addons[c] and remove/disable it. + -If you like it but can't remember the shortcuts, then press [m]F1[m] or +If you like it but can't remember the shortcuts, then press [m]<F1>[m] or [c]:help[c] to get this help window back. |author| |donation| + -Vimperator was written by mailto:stubenschrott@gmx.net[Martin Stubenschrott]. -If you appreciate my work on Vimperator and want to encourage me working on it -more, you can either send me greetings, patches or make a donation: +Vimperator was initially written by mailto:stubenschrott@gmx.net[Martin +Stubenschrott] but has found many other +http://vimperator.org/trac/wiki/Vimperator/Authors[contributors] in the +meanwhile. If you appreciate the work on Vimperator and want to encourage us +working on it more, you can send us greetings, patches, or donations (thanks a +lot to http://vimperator.org/trac/wiki/Vimperator/Donors[these people] who +already did): ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ <!-- the PAYPAL code --> @@ -37,9 +41,11 @@ more, you can either send me greetings, patches or make a donation: </fieldset></form> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ -Of course as a believer in free open source software, only make a donation -if you really like Vimperator and the money doesn't hurt -- otherwise just use -it, recommend it and like it :) +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] @@ -94,11 +100,11 @@ section:Features[features] 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]ma[m] to set mark a on a web page, [m]'a[m] to go there) +* Marks support ([m]m[m][a]a[a] to set mark a on a web page, [m]'[m][a]a[a] to go there) * QuickMarks support (quickly go to previously marked web pages with [m]go[m][a]\\{a-zA-Z0-9\\}[a]) * [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 +* 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 action on certain events @@ -106,10 +112,13 @@ section:Features[features] section:Contact[contact] -Please send comments/bug reports/patches to the mailing list, where I will -properly answer any questions. You can also join the #vimperator IRC channel -on irc.freenode.net or check the Wiki for frequently asked questions. Make -sure, you have read the TODO file first, as I am aware of many things which -can be improved when I find time for it or get patches. +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://vimperator.org/trac/wiki/Vimperator/Wiki[Wiki] for +http://vimperator.org/trac/wiki/Vimperator/FAQ[frequently asked questions +(FAQ)]. Make sure, you have read the TODO file first, as we are aware of many +things which can be improved when we find time for it or receive patches. // vim: set filetype=asciidoc: diff --git a/vimperator/locale/en-US/map.txt b/vimperator/locale/en-US/map.txt index 5dcd49ae..6dce047a 100644 --- a/vimperator/locale/en-US/map.txt +++ b/vimperator/locale/en-US/map.txt @@ -8,11 +8,11 @@ The key mapping commands can be used to either redefine the standard key bindings or define new ones. A mapping consists of a key, or sequence of keys, which are translated to a string of characters. Example: - :map <F2> :echo new Date().toDateString()<CR> +\{nbsp}[c]:map <F2> :echo new Date().toDateString()<CR>[c] will echo the current date to the command line when [m]<F2>[m] is pressed. -There are separate key mapping tables for each of the Normal, Insert, +There are separate key mapping tables for each of the Normal, Insert, and Command-line modes. |:map-special-chars| + @@ -29,7 +29,7 @@ ________________________________________________________________________________ ||<CR>|| ________________________________________________________________________________ Expand to a line terminator in a key mapping. An Ex command in the {rhs} of a -mapping requires a a line terminator after it so that it is executed when the +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. ________________________________________________________________________________ @@ -57,7 +57,7 @@ ________________________________________________________________________________ Map the key sequence {lhs} to {rhs}. The {rhs} is remapped, allowing for nested and recursive mappings. -Warning: Mappings are NOT saved during sessions, make sure you put them in your +Warning: Mappings are NOT saved between sessions, make sure you put them in your vimperatorrc file! ________________________________________________________________________________ @@ -70,7 +70,7 @@ ________________________________________________________________________________ Map the key sequence {lhs} to {rhs} (in Command-line mode). The {rhs} is remapped, allowing for nested and recursive mappings. -Warning: Mappings are NOT saved during sessions, make sure you put them in your +Warning: Mappings are NOT saved between sessions, make sure you put them in your vimperatorrc file! ________________________________________________________________________________ @@ -80,10 +80,10 @@ ________________________________________________________________________________ ||:imap {lhs}|| + ||:imap|| ________________________________________________________________________________ -Map the key sequence {lhs} to {rhs} (in insert mode). The {rhs} is remapped, +Map the key sequence {lhs} to {rhs} (in Insert mode). The {rhs} is remapped, allowing for nested and recursive mappings. -Warning: Mappings are NOT saved during sessions, make sure you put them in your +Warning: Mappings are NOT saved between sessions, make sure you put them in your vimperatorrc file! ________________________________________________________________________________ @@ -107,7 +107,7 @@ ________________________________________________________________________________ |:imapc| |:imapclear| + ||:imapc[lear]|| ________________________________________________________________________________ -Remove all mappings (in insert mode). All user-defined mappings which were set +Remove all mappings (in Insert mode). All user-defined mappings which were set by [c]:imap[c] or [c]:inoremap[c] are cleared. ________________________________________________________________________________ @@ -136,7 +136,7 @@ ________________________________________________________________________________ ||:ino[remap] {lhs}|| + ||:ino[remap]|| ________________________________________________________________________________ -Map the key sequence {lhs} to {rhs} (in insert mode). No remapping of the +Map the key sequence {lhs} to {rhs} (in Insert mode). No remapping of the {rhs} is performed. ________________________________________________________________________________ @@ -167,7 +167,7 @@ ________________________________________________________________________________ |:iunm| |:iunmap| + ||:iunm[ap] {lhs}|| ________________________________________________________________________________ -Remove the mapping of {lhs} (in insert mode). +Remove the mapping of {lhs} (in Insert mode). ________________________________________________________________________________ section:Abbreviations[abbreviations] @@ -178,8 +178,8 @@ 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 characters that are not -keyword characters (e.g., "teh", "msoft"). +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"). @@ -209,7 +209,7 @@ ________________________________________________________________________________ ||:ca[bbrev] {lhs}|| + ||:ca[bbrev]|| ________________________________________________________________________________ -Abbreviate a key sequence for Command-line mode. Same as [c]:ab[reviate][c], +Abbreviate a key sequence for Command-line mode. Same as [c]:ab[breviate][c], but for Command-line mode only. ________________________________________________________________________________ @@ -304,7 +304,7 @@ The valid values are: *-nargs=1* One argument is allowed *-nargs=** Zero or more arguments are allowed *-nargs=?* Zero or one argument is allowed -*-nargs=+* One or more argument is allowd +*-nargs=+* One or more arguments are allowed -------------------------------------------------------------------------------- |E180| |E181| |:command-complete| + @@ -365,7 +365,7 @@ 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 +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. @@ -379,7 +379,7 @@ is then executed as an Ex command. The valid escape sequences are: `----------`-------------------------------------------------------------------- *<args>* The command arguments exactly as supplied -*<count>* Any supplied count E.g. 5 +*<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> -------------------------------------------------------------------------------- @@ -406,7 +406,7 @@ section:Examples[command-examples] Add a :Google command to search via google: - :command -nargs=* Google open google <args> +\{nbsp}[c]:command -nargs=* Google open google <args>[c] // TODO: add decent examples diff --git a/vimperator/locale/en-US/marks.txt b/vimperator/locale/en-US/marks.txt index 61ee2049..837268be 100644 --- a/vimperator/locale/en-US/marks.txt +++ b/vimperator/locale/en-US/marks.txt @@ -6,7 +6,7 @@ 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 group of +- 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 @@ -40,7 +40,7 @@ ____________________________________________________________________________ ||A|| ________________________________________________________________________________ Toggle bookmarked state of current URL. Add/remove a bookmark for the current -location, depending if it already is bookmarked or not. In contrast to the +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. ________________________________________________________________________________ @@ -242,7 +242,7 @@ ________________________________________________________________________________ |:marks| + ||:marks [a][arg][a]|| ________________________________________________________________________________ -Show all location marks of current web page. If [a][arg][a] is specified then +Show all location marks of the current web page. If [a][arg][a] is specified then limit the list to those marks mentioned. ________________________________________________________________________________ diff --git a/vimperator/locale/en-US/options.txt b/vimperator/locale/en-US/options.txt index d6d7b96b..2e2be474 100644 --- a/vimperator/locale/en-US/options.txt +++ b/vimperator/locale/en-US/options.txt @@ -3,7 +3,7 @@ HEADER |options| + Vimperator has a number of internal variables and switches which can be set to -achieve special effects. These options come in 5 forms: +achieve special effects. These options come in 5 forms: `------------`----------------------------------------- *boolean* can only be on or off *number* has a numeric value @@ -22,7 +22,7 @@ ____ ||:se[t] all|| ____ -Show all options. Show all options. +Show all options. ____ |E518| |E519| @@ -54,12 +54,12 @@ ____ ____ For list options, toggle the specified values. -If the option is a list, the given values are toggled. Given - :set opt=foo,bar -Then, - :set opt!=foo,baz -results in - opt=bar,baz +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| @@ -84,21 +84,17 @@ ____ |: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. +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 +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. ____ @@ -106,15 +102,12 @@ ____ ||: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. +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| @@ -132,7 +125,7 @@ ____ ||:setl[ocal] {option}-={value}|| + ____ -The same as [c]:set[c] command, but it operates for current tab options +The same as [c]:set[c] command, but operates on current tab options only. See [c]:set[c] for details. ____ @@ -151,7 +144,7 @@ ____ ||:setg[lobal] {option}-={value}|| + ____ -The same as [c]:set[c] command, but it operates on global options only. +The same as [c]:set[c] command, but operates on global options only. See [c]:set[c] for details. ____ @@ -196,10 +189,10 @@ they can be changed to a different value in your RC file using The following preferences are set: -* browser.startup.page -* dom.popup_allowed_events -* accessibility.typeaheadfind.autostart -* accessibility.typeaheadfind +* http://kb.mozillazine.org/Browser.startup.page[browser.startup.page] +* 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? @@ -240,11 +233,15 @@ Items which are completed at the [c]:[tab]open[c] prompt. Available items: *f* Local files *l* Firefox location bar entries (bookmarks and history sorted in an intelligent way) *b* Bookmarks +*h* History *S* Suggest engines ------------------------------------------------------------------------------------- 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. ____ @@ -315,7 +312,7 @@ ____ ||'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 +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. @@ -362,7 +359,7 @@ ____ ||'hintmatching' 'hm'|| string (default: contains) ____ -Change the hint matching algorithm during hint mode. Possible values: +Change the hint matching algorithm during Hints mode. Possible values: `--------------------`------------------------------------------------------------------------------------------------------------------------------- *contains* The typed characters are split on whitespace, and these character groups have to match anywhere inside the text of the link. @@ -378,13 +375,13 @@ ____ ||'followhints' 'fh'|| number (default: 0) ____ -Change the behaviour of [m]<Return>[m] in hint mode. Possible values: +Change the behaviour of [m]<Return>[m] in Hints mode. Possible values: `---------`---------------------------------------------------------- *0* Follow the first hint as soon as typed text uniquely identifies it. Follow the selected hint on [m]<Return>[m]. *1* Follow the selected hint on [m]<Return>[m]. -*2* Follow the selected hint on [m]<Return>[m] only it's been [m]<Tab>[m]-selected. +*2* Follow the selected hint on [m]<Return>[m] only if it's been [m]<Tab>[m]-selected. --------------------------------------------------------------------- ____ @@ -505,7 +502,8 @@ ____ Patterns to use when guessing the \'next' page in a document sequence. 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. +match being used. The patterns are case insensitive regular expressions and the +link elements are those defined by 'hinttags'. ____ @@ -581,15 +579,6 @@ In order to also speed up first time access, it is cached at startup, if this op ____ -//|\'pvh'| |\'previewheight'| -//||'previewheight' 'pvh'|| number (default: 10) -//____ -//Default height for preview window -// -//Value must be between 1 and 50. If the value is too high, completions may cover the command line. Close the preview window with :pclose. -//Note: Option currently disabled -//____ - |\'previouspattern'| ||'previouspattern'|| stringlist ____ @@ -597,7 +586,8 @@ ____ Patterns to use when guessing the \'previous' page in a document sequence. 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. +match being used. The patterns are case insensitive regular expressions and the +link elements are those defined by 'hinttags'. ____ @@ -658,7 +648,7 @@ ____ |\'ssli'| |\'showstatuslinks'| ||'showstatuslinks' 'ssli'|| number (default: 1) ____ -Show the destination of the link under the cursor in the status bar +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: .---`-------------------------------------- @@ -696,7 +686,7 @@ ____ ||'suggestengines' || stringlist (default: "google") ____ Set the search engines which can be used for completion suggestions. -Add "S" to the 'complete' option if you want use this feature. +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. @@ -727,11 +717,11 @@ ____ |\'urlseparator'| ||'urlseparator'|| string (default: ",\s") ____ -Set the separator regexp used to separate multiple URL args. Multiple -arguments can be specified for [c]:open[c], and similar commands, using this -regexp 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" +Set the separator regexp used to separate multiple URL args. Multiple arguments +can be specified for [c]:open[c], and similar commands, using this regexp 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" ____ @@ -750,9 +740,11 @@ ____ |\'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]. If no bell is desired use [c]:set t_vb=[c] together with -this option. +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] ____ @@ -783,7 +775,7 @@ ____ |\'wim'| |\'wildmode'| ||'wildmode' 'wim'|| stringlist (default: "list:full") ____ -Define how command-line completion works. +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, @@ -795,7 +787,7 @@ These are the possible values for each part: "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 first match. +"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. ----------------------------------------- diff --git a/vimperator/locale/en-US/pattern.txt b/vimperator/locale/en-US/pattern.txt index 33e6ac17..6462a897 100644 --- a/vimperator/locale/en-US/pattern.txt +++ b/vimperator/locale/en-US/pattern.txt @@ -8,7 +8,7 @@ commands as Firefox does not provide native regexp support. It is unlikely that this will ever be available. |/| + -||/\\{pattern\\}[/]<CR>|| + +||/{pattern}[/]<CR>|| + ________________________________________________________________________________ Search forward for the first occurrence of {pattern}. diff --git a/vimperator/locale/en-US/print.txt b/vimperator/locale/en-US/print.txt index 3254cf5b..8cf3d180 100644 --- a/vimperator/locale/en-US/print.txt +++ b/vimperator/locale/en-US/print.txt @@ -23,11 +23,11 @@ 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 - :dialog printpreview +\{nbsp}[c]:dialog printpreview[c] and - :dialog printsetup +\{nbsp}[c]:dialog printsetup[c] respectively. diff --git a/vimperator/locale/en-US/repeat.txt b/vimperator/locale/en-US/repeat.txt index 0501ba63..975cbea7 100644 --- a/vimperator/locale/en-US/repeat.txt +++ b/vimperator/locale/en-US/repeat.txt @@ -7,7 +7,7 @@ Vimperator can repeat a number of commands and record macros. section:Macros[macros,complex-repeat] |q| -||q {0-9a-zA-Z}|| + +||q\\{0-9a-zA-Z}|| + ____________________________________________________________________________ Record a key sequence into a macro. Available macros are {0-9a-zA-Z} (uppercase to append). @@ -49,7 +49,7 @@ ____________________________________________________________________________ |.| -||[count].| +||[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 @@ -99,12 +99,12 @@ 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. +new plugins without restarting Vimperator. ________________________________________________________________________________ |:ru| |:runtime| -||:runt[ime][!]| {file} ...|| + +||:runt[ime][!] {file} ...|| + ________________________________________________________________________________ Source the specified file from each directory in 'runtimepath'. Example: + [c]:runtime plugin/foobar.vimp[c] + diff --git a/vimperator/locale/en-US/starting.txt b/vimperator/locale/en-US/starting.txt index f9b30583..df384fd0 100644 --- a/vimperator/locale/en-US/starting.txt +++ b/vimperator/locale/en-US/starting.txt @@ -12,7 +12,7 @@ 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., + _$VIMPERATOR_INIT_ -- May contain a single Ex command (e.g., "[c]:source {file}[c]"). b. [a]\~/_vimperatorrc[a] -- Windows only. If this file exists, its contents are executed. diff --git a/vimperator/locale/en-US/styling.txt b/vimperator/locale/en-US/styling.txt index 2577c65e..62138ea9 100644 --- a/vimperator/locale/en-US/styling.txt +++ b/vimperator/locale/en-US/styling.txt @@ -18,7 +18,7 @@ sourced. ________________________________________________________________________________ |:hi| |:highlight| + -||:hi[ghlight] [-append] {group}[{selector}] [{css}]|| + +||:hi[ghlight][!] [-append] {group}[{selector}] [{css}]|| + ________________________________________________________________________________ Highlight {group} with {css}. Normally, {css} is checked for valid syntax before it's applied. Once you're certain it's @@ -86,7 +86,7 @@ Valid groups are: ------------------------------------------------------- Every invocation completely replaces the styling of any previous invocation, -unless [-append] (short option: -a) is provided, in which case, {css} is +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. ________________________________________________________________________________ @@ -103,12 +103,12 @@ ________________________________________________________________________________ ||: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 [c]*[c] are matched as -prefixes, URLs not containing any [c]:[c] or [c]/[c] characters are -matched as domains. If {name} (short option: [c]-n[c]) is provided, any +separated list of URLs to match. URLs ending with *\** are matched as +prefixes, URLs not containing any *:* or */* characters are +matched as domains. 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: [c]-a[c]) is provided -along with [c]-name[c], {css} and {filter} are appended to its current +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. @@ -118,14 +118,13 @@ ________________________________________________________________________________ ||: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 [c]mozilla.org[c], given a -style for [c]www.google.com,mozilla.org[c], will result in a style for -[c]www.google.com[c]. The available options are: +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: - * [c]-name[c]: The name provided to [c]:style[c] (short option: - [c]-n[c]) - * [c]-index[c]: For unnamed styles, the index listed by [c]:style[c] - (short option: [c]-i[c]) + * *-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*) ________________________________________________________________________________ // vim: set filetype=asciidoc: diff --git a/vimperator/locale/en-US/tabs.txt b/vimperator/locale/en-US/tabs.txt index 3305e05d..9ccded72 100644 --- a/vimperator/locale/en-US/tabs.txt +++ b/vimperator/locale/en-US/tabs.txt @@ -101,7 +101,7 @@ 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 argument is [a]\#[a], the alternate buffer will be selected (see [m]<C-^>[m]). If no argument is given the current buffer remains current. ________________________________________________________________________________ @@ -153,7 +153,7 @@ ________________________________________________________________________________ ||:[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. +selected and [count] is not specified. ________________________________________________________________________________ @@ -203,8 +203,8 @@ ________________________________________________________________________________ ||:[count]u[ndo] [a][url][a]|| + ||[count]u|| ________________________________________________________________________________ -Undo closing of a tab. If a count is given, don't close the last but the -[count]th last tab. With [a][url][a] restores the tab matching the URL. +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. ________________________________________________________________________________ diff --git a/vimperator/locale/en-US/tutorial.txt b/vimperator/locale/en-US/tutorial.txt index 931e39a9..21b5e285 100644 --- a/vimperator/locale/en-US/tutorial.txt +++ b/vimperator/locale/en-US/tutorial.txt @@ -15,32 +15,32 @@ 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 - :set go+=mTb<CR> +\{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 -[o]guioptions[o] in help:options[options.html] for more information on this. +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. +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 +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 \':' (colon). You will frequently see Vimperator -commands start with a \':', indicating that what follows is a command. +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 command-line mode, type [m]<Esc>[m]. Pressing -[m]<Esc>[m] will also return you to normal mode from most other modes in +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] @@ -51,7 +51,7 @@ 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 - :help :help<CR> +\{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.) @@ -59,8 +59,8 @@ 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 - :help gt<CR> - :help gT<CR> +\{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. @@ -73,7 +73,7 @@ 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 the web browser doesn't have to be one of those. +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. @@ -115,20 +115,20 @@ Vimmers. 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 sequences are +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: - :open my.webmail.com<CR> - omy.webmail.com<CR> +\{nbsp}[c]:open my.webmail.com<CR>[c] + +\{nbsp}[m]omy.webmail.com<CR>[m] - :tabopen vimperator.org<CR> - tvimperator.org<CR> +\{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 +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 @@ -142,7 +142,7 @@ 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 <Enter> to open it. +highlighted the link you want, simply hit [m]<Enter>[m] to open it. The most common hint mode is called help:QuickHint{nbsp}mode[various.html,f]. To activate QuickHint mode, press either [m]f[m] or [m]F[m]. The lower-case @@ -162,12 +162,12 @@ 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: - :open my.partial.url/fooba +\{nbsp}[c]:open my.partial.url/fooba[c] You can exit the command line and access the already loaded page with the following: - <Esc>gT +\{nbsp}[m]<Esc>gT[m] section:Saving{nbsp}for{nbsp}posterity{nbsp}-{nbsp}vimperatorrc[vimperatorrc] @@ -189,8 +189,8 @@ 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] + * [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] @@ -240,7 +240,7 @@ 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 +found a bug, please let us know! There is support available on the http://vimperator.cutup.org/index.php?title=Main_Page[wiki], or in the #vimperator IRC channel on http://freenode.net/[freenode]. diff --git a/vimperator/locale/en-US/various.txt b/vimperator/locale/en-US/various.txt index 0ace34cf..79d485dc 100644 --- a/vimperator/locale/en-US/various.txt +++ b/vimperator/locale/en-US/various.txt @@ -21,7 +21,7 @@ ________________________________________________________________________________ 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 a 1 (one) before +a complete command. {commands} cannot start with a space. Put 1 space before it, 1 space is one space. ________________________________________________________________________________ @@ -94,7 +94,7 @@ section:Uncategorized{nbsp}help[uncategorized] |<C-[>| |<Esc>| + ||<Esc>|| ________________________________________________________________________________ -Focus content. Exits command-line or hint mode and returns to browser +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. ________________________________________________________________________________ @@ -103,16 +103,9 @@ ________________________________________________________________________________ |<Insert>| |i| + ||i|| ________________________________________________________________________________ -Start caret mode. This mode resembles the Vim normal mode where you see a text -cursor and can move around. If you want to select text in this mode, press +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. ________________________________________________________________________________ - -//|:pc| |:pclose| + -//||:pc[lose]|| -//________________________________________________________________________________ -//Close preview window on bottom of screen. -//________________________________________________________________________________ - // vim: set filetype=asciidoc: diff --git a/vimperator/regressions.js b/vimperator/regressions.js index fd7f043a..36f96192 100644 --- a/vimperator/regressions.js +++ b/vimperator/regressions.js @@ -1,7 +1,7 @@ // Script to find regressions // // It should use as few liberator methods as possible, but fall back to standard mozilla/DOM methods -// The reason it, we don't want to find regressions in the regressions script, and it should survive +// The reason is, we don't want to find regressions in the regressions script, and it should survive // massive changes in the internal liberator API, but just test for functionality of // user-visible commands/mappings //