/browser-connect.vim

Live browser interaction for VIM.

Primary LanguageVimLMIT LicenseMIT

This plugin implements a VIM interface for browser-connect-server in order to provide a live coding environment similar to the one currently available in LightTable.

If you would like to see it in action, a (very crude) demo video is available here.

Installation

Use pathogen (or Vundle) and clone this repository into your ~/.vim/bundle directory. That's it, you're good to go.

Usage

Copy the following code snippet into your template and open it inside of a (modern) browser. Make sure that you have VIM running before you do so.

<script src="http://localhost:9001/ws"></script>

After doing so, you should be able to evaluate CSS buffers and JS buffers using <LocalLeader>be as well as selections of JS. The changes should be instantly reflected in your browser. Whenever you save a JS file or an HTML page, the template will be fully refreshed, you can also refresh the template without having to save the file using <LocalLeader>br.

Notes

If you installed the plugin someplace other than ~/.vim/bundle/browser-connect.vim you will have to paste the following snippet into your .vimrc file and update the path to reflect the actual location of the browser-connect.vim folder.

let g:bc_server_path = "/home/me/.vim/bundle/browser-connect.vim/server"

To disable the plugin from setting its own mappings, paste the following into your .vimrc file:

let g:bc_no_mappings = 1

You can set your LocalLeader key to be , by doing:

let maplocalleader = ","

If you would like to map your own keys to evaluate buffers, map them to the following commands:

vmap <silent><LocalLeader>be :BCEvaluateSelection<CR>
nmap <silent><LocalLeader>be :BCEvaluateBuffer<CR>
nmap <silent><LocalLeader>br :BCReloadPage<CR>

To disable automatic behavior on save add the following to your .vimrc file:

let g:bc_no_au = 1

Windows

To run the plugin on Windows you must start the server yourself by going into the browser-connect.vim/server folder and running the following command: start.bat "-Dhttp.port=9001".

Requirements

  • VIM 7.0+ compiled with +python
  • Python 2.6+
  • Java 7+