576b24c7a0
* feat: Make s:VimuxOption (was _VimuxOption) public VimuxOption * refactor: Simplify script-local private function names * style: Format each function as a paragraph with no blanks * feat: Make s:tmuxExec (was _VimuxTmux) public VimuxTmux |
||
---|---|---|
.github/workflows | ||
doc | ||
plugin | ||
.gitignore | ||
.vintrc.yaml | ||
LICENSE | ||
README.md |
Vimux: easily interact with tmux from vim
What inspired me to write vimux was 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 below with a full description and example key binds for your vimrc.
Installation
With vim-bundle: vim-bundle install preservim/vimux
With Vundle: Plugin 'preservim/vimux'
in your .vimrc
Otherwise download the latest tarball, extract it and move plugin/vimux.vim
inside ~/.vim/plugin
. If you're using 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 recommended to use at least version 1.5.
Platform-specific Plugins
- vim-vroom runner for rspec, cucumber and test/unit; vimux support via
g:vroom_use_vimux
- vimux-ruby-test a set of commands to easily run ruby tests
- vimux-cucumber run Cucumber Features through Vimux
- vim-turbux Turbo Ruby testing with tmux
- vimux-pyutils A set of functions for vimux that allow to run code blocks in ipython
- vimux-nose-test Run nose tests in vimux
- vimux-golang Run go tests in vimux
- vimux-zeus Run zeus commands in vimux
- vimix Run Elixir mix commands in vimux
- vimux-cargo run rust tests and projects using cargo and vimux
- vimux-bazel-test Run bazel tests in vimux
- vimux-jest-test Run jest tests in vimux
Usage
The full documentation is available online and accessible inside vim :help vimux