sourrust / jim

Vim mode for Ace (Github & Cloud9's editor)

Home Page:http://misfo.github.com/jim

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Jim is a JavaScript library that adds a Vim mode to the excellent in-browser editor Ace. Github uses Ace for its editor, so you can use the Jim bookmarklet to Jimmy rig it with Vim-ness.

Try it out

misfo.github.com/jim

Embed Jim with Ace in your app

<script src="ace.js" type="text/javascript"></script>
<script src="jim-ace.min.js" type="text/javascript"></script>

<script type="text/javascript">
  $(document).ready(function() {
    var editor = ace.edit('editor');
    // configure Ace
    Jim.aceInit(editor);
  });
</script>

Annotated source

What works so far

  • modes: normal, visual (characterwise and linewise), insert, replace
  • operators: c, d, y, >, and < in normal and visual modes (double operators work as linewise commands in normal mode, too)
  • motions (can be used with counts and/or operators, and in visual mode)
    • h, j, k, l
    • W, E, B, w, e, b
    • 0, ^, $
    • G, gg
    • H, M, L
    • /, ?, n, N, *, #
    • f, F, t, T
  • other commands
    • insert switches: i, a, o, O, I, A, and C
    • commands: D, gJ, J, p, P, r, s, x, X, u, and .
    • visual mode commands: gJ, J, p and P
  • default register (operations yank text in the register for pasting)
  • u works as it does in Vim (Cmd-z and Cmd-y still work as they do in Ace)

If you have a feature request create an issue

Known issues

Take a gander at the issue tracker

Hack

git clone git://github.com/misfo/jim.git
cd jim
git submodule update --init

Then just open index.html and you're good to go.

Chrome needs a special command line argument to allow XHRs to files: google-chrome --allow-file-access-from-files

To keep the development js file built while you develop, you'll need CoffeeScript:

npm install coffee-script

Then build your files in the background:

cake build:ace:watch

Open test/test.html to run the tests

Thanks!

Thanks to all contributors. In other words: thanks sourrust.

About

Vim mode for Ace (Github & Cloud9's editor)

http://misfo.github.com/jim

License:MIT License


Languages

Language:CoffeeScript 55.9%Language:JavaScript 44.1%