

Web Vi - robertmrangel
http://code.google.com/p/webvi/

======
thristian
I had a brief play around with the example, and pretty quickly came across
bugs and unimplemented commands (for example: 'b', 'e' and 'O' are missing,
but 'o' acts like 'O'). I like the way the cursor changes colour to hint at
the current mode.

However, what I'd _really_ love would be a bookmarklet I could click to Vi-ify
every <textarea> on the current page. I've got "It's All Text" set up in
Firefox to open <textearea>s in gvim, but it's still clunkier than editing
right there in the page.

~~~
tmhedberg
The Pentadactyl plugin for Firefox
(<http://dactyl.sourceforge.net/pentadactyl/>), which is a better-maintained
fork of the well-known Vimperator, allows you to hit <C-T> in any textarea or
text input to enable Vim-style keybindings inline. <C-I> opens the text for
editing in an actual Vim instance, like the plugin you mentioned.

Of course, Pentadactyl changes a lot about how the browser works beyond just
text editing, so it may not be for everyone.

~~~
mahcuz
I can't live without pentadactyl.

------
nddrylliog
Wait, are you kidding? It looks a hell of a lot less convincing than, say,
jim: <https://github.com/misfo/jim>

edit: For example, 'A' doesn't work.

------
growt
The one thing that most vi-mode implementations don't get is that vi(m) is
really about the possibility to configure every keystroke. Its not about "j"
is "up" and "dd" deletes the current line.

~~~
Aga
Absolutely not, as "j" is down.. ;-)

But in seriousness, although I agree about the importance of configurability,
I still find that things like "j is down" and "dd deletes the current line"
are an important, integral part of the vi-philosophy.

Placing the most common tasks behind the easiest key-bindings for maximum
efficiency and ergonomy is the idea that got me to try out vim in the first
place.

I like that someone (Bill Joy and Bram Molenaar) has solved the most common
issues in editor-usage in a great way leaving me to configure only some
special cases.

------
jarek-foksa
I'm rather skeptical about text editors implemented on top of the canvas
element. Mozilla has already tried that with Bespin project and it failed
miserably (huge code base, poor performance, limited accessibility).

Wouldn't it be easier to just use div element with contentEditable attribute?
Currently contentEditable has limited API and a lot of inconstancies across
browsers, but in the longer run it seems to be the way to go:
<http://ehsanakhgari.org/blog/2011-08-31/future-editing-web>

~~~
geocar
contentEditable isn't very cross-platform, comes with its own set of
keybindings, and it's difficult to decorate the text you're working on as you
type without glitching things.

I'm also skeptical about canvas, so when I implemented my own jsvi years ago
(at <http://src.internetconnection.net/vi> and now at
<http://geocar.sdf1.org/vi> ) I didn't use canvas. It works everywhere but
chrome (which won't let me capture escape), and it produces the same results
all the way back to MSIE6.

In retrospect, I would've had an easier time overriding keystrokes on a
textarea.

------
cdelahousse
Here's another example of vi being completely exported to Javascript, but
without the canvas element.

<http://gpl.internetconnection.net/vi/>

What disappoints me about all these implementations is the absence of text
objects, though. I love getting edition words or parentheses using commands
such as caw and ci"

~~~
geocar
Hi there.

I'm the author of that vi.

What are "text objects"?

PS: "caw" and "ci" aren't in vi.

------
friggeri
Keybindings are way off on non-qwerty keyboards.

~~~
norswap
Second that. With my belgian-french keyboard, some keys are correct, some
aren't. I can't even refer to an online picture of a qwerty keyboard. Very
confusing.

I also tried switching to a qwerty keyboard layout on my computer, but then
I'm told that ':' is not a valid command (this might have to do with my lack
of vi-savyness, so I'm taking tips - but using ':' to enter some commands is
how it works on my linux box anyway).

------
masonforest
The the ACE editor behind cloud9ide.com seems to be undergoing pretty active
development (<https://github.com/ajaxorg/ace>).

There is also a vim mode under development. <https://github.com/Gozala/vice>

------
ByteMuse
This is neat. Although, I can't get by without some VIM commands and is there
a way to export text?

------
rnadna
0 (zero) does not work.

