* Doug: Might ui.js:701: elements[elements.length - 1].scrollIntoView(true);
be the problem of your very slow MOW for multiple items? I just
noticed that :echo liberator takes 0.25sec , but :echo liberator
when the MOW already displas :echo window takes 0.47 sec
See http://vimperator.org/trac/ticket/126
Using...
function (args)
{
let args = args.string;
...
was causing Firefox to complain that args was undefined. Changing the
"let" to "var" or changing the names of the variables (e.g., changing
"function (args)" to "function (arg)") fixes the problem. IMO, this
appears to be a bug in Firefox.
The short fix would be to change the formal argument from "args" to
"arg." However, that would make delmarks' implementation different from
all the rest. So changed "let args" to "let argstring" and adjusted
throughout the function.
Also added rough documentation for insert mode.
TODO: Abbreviations should also expand on <CR> and <Tab>, but right now
adding <CR> to the mappings.add() has no effect, and adding <Tab> to the
mappings.add() breaks tab completion.
TODO: Rather than listing non-keyword characters in two places (ui.js
and mappings.js), they should be specified in one location (that could
someday be trumped by an 'iskeyword' option).
For now, the internal equivalent of "iskeyword" is [^\s'"].
In the future, the internal "iskeyword" equivalent can be expanded. It may
be overboard to add an "iskeyword" option, as it applies to lots more
things than :abbr. Additionally, it's not clear why it's bad to call
keyword characters everything except whitespace and quotes.
TODO: Should abbreviations be triggered by any non-keyword character?
TODO: Should abbreviations be triggered by <CR>?
TODO: Should abbreviations be able to include <Left>, etc.?
"this.contexts = { "/": this }" in CompletionContext(...)
was causing ":set defsearch=google<cr>" (and similar) to error
with infinite recursion. Restoring to
"this.contexts = { name: this }" fixes the problem, but does it
break other things?
Please review.
a.) Cleaned up copyright language to match conventions.
(I used the memoir document class documentation as a reference, but
these conventions are common throughout publishing)
* The (c) symbol has no legal meaning. Only the word "Copyright" and
an encircled lowercase c are appropriate. So the word "Copyright"
was placed before each (c).
* Each (C) was changed to (c).
* Kris uses the correct symbols in copyright notices, but those
symbols can be problematic in terminal-mode editors. Added the word
"Copyright" as well.
* Replaced colons/spaces after years with the word "by."
b.) Added a copyright notice to common/content/template.js. It was
missing one entirely. Please correct if it doesn't need one or if the
copyright isn't held by Martin.
c.) Also added a "tildetidy" target to Makefile common that includes a
version of the find line from the existing "clean" target (however,
this version uses "rm -fv" instead of "rm -f").