mirror of
https://github.com/preservim/vimux
synced 2024-11-16 12:12:44 +00:00
38 lines
2.7 KiB
Markdown
38 lines
2.7 KiB
Markdown
# vimux
|
|
|
|
Easily interact with tmux from vim.
|
|
|
|
![vimux](https://www.braintreepayments.com/assets/images/blog/vimux3.png)
|
|
|
|
What inspired me to write vimux was [tslime.vim](https://github.com/kikijump/tslime.vim), a plugin that lets you send input to tmux. While tslime.vim works well, I felt it wasn't optimized for my primary use case which was having a smaller tmux pane that I would use to run tests or play with a REPL.
|
|
|
|
My goal with vimux is to make interacting with tmux from vim effortless. By default when you call `VimuxRunCommand` vimux will create a 20% tall horizontal pane under your current tmux pane and execute a command in it without losing focus of vim. Once that pane exists whenever you call `VimuxRunCommand` again the command will be executed in that pane. As I was using vimux myself I wanted to rerun commands over and over. An example of this was running the current file through rspec. Rather than typing that over and over I wrote `VimuxRunLastCommand` that will execute the last command you called with `VimuxRunCommand`.
|
|
|
|
Other auxiliary functions and the ones I talked about above can be found bellow with a full description and example key binds for your vimrc.
|
|
|
|
## Installation
|
|
|
|
With **[vim-bundle](https://github.com/benmills/vim-bundle)**: `vim-bundle install benmills/vimux`
|
|
|
|
Otherwise download the latest [tarball](https://github.com/benmills/vimux/tarball/master), extract it and move `plugin/vimux.vim` inside `~/.vim/plugin`. If you're using [pathogen](https://github.com/tpope/vim-pathogen), then move the entire folder extracted from the tarball into `~/.vim/bundle`.
|
|
|
|
_Notes:_
|
|
|
|
* Vimux assumes a tmux version >= 1.5. Some older versions might work but it is recommeded to use at least version 1.5.
|
|
|
|
## Platform-specific Plugins
|
|
|
|
* [vim-vroom](https://github.com/skalnik/vim-vroom) runner for rspec, cucumber and test/unit; vimux support via `g:vroom_use_vimux`
|
|
* [vimux-ruby-test](https://github.com/pgr0ss/vimux-ruby-test) a set of commands to easily run ruby tests
|
|
* [vimux-cucumber](https://github.com/cloud8421/vimux-cucumber) run Cucumber Features through Vimux
|
|
* [vim-turbux](https://github.com/jgdavey/vim-turbux) Turbo Ruby testing with tmux
|
|
* [vimux-pyutils](https://github.com/julienr/vimux-pyutils) A set of functions for vimux that allow to run code blocks in ipython
|
|
* [vimux-nose-test](https://github.com/pitluga/vimux-nose-test) Run nose tests in vimux
|
|
* [vimux-golang](https://github.com/benmills/vimux-golang) Run go tests in vimux
|
|
* [vimux-zeus](https://github.com/jingweno/vimux-zeus) Run zeus commands in vimux
|
|
* [vimix](https://github.com/spiegela/vimix) Run Elixir mix commands in vimux
|
|
|
|
## Usage
|
|
|
|
The full documentation is available [online](https://raw.github.com/benmills/vimux/master/doc/vimux.txt) and accessible inside vim `:help vimux`
|