1b38911c40
Fixes #185 Vim does not allow escaping some characters in commands that can be chained. In particular bars are disallowed and double quotes begin code comments. Both of these things are regular features in shell command strings. I'm disallowing chaining for the two commands that take shell commands as arguments so they can be used sensibly again. One solution to allow this might be to have a ...Bar version of each. It might also be possible to work around this with `:call` and functions instead of commands. |
||
---|---|---|
.github/workflows | ||
doc | ||
plugin | ||
.gitignore | ||
.vintrc.yaml | ||
LICENSE | ||
README.md |
Vimux: easily interact with tmux from vim
Vimux was originally inspired by tslime.vim, a plugin that lets you send input to tmux. While tslime.vim works well, it wasn't optimized for the use case of having a smaller tmux pane used to run tests or play with a REPL. The goal of 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 the focus on vim. Once that pane exists, whenever you call VimuxRunCommand
again the command will be executed in that pane. A frequent use case is wanting to rerun commands over and over. An example of this is running the current file through rspec. Rather than typing that over and over VimuxRunLastCommand
will execute the last command called with VimuxRunCommand
.
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 reasonably new version of tmux. Some older versions might work but it is recommended to use the latest stable release.
Usage
The full documentation is available online and accessible inside vim via :help vimux
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