5 ms·
I usually use :!command to run a command real quick from within vim, where I also have access to the current filename and contents. A classic gem is ":w !diff
by hultner 10y ago
I usually use :!command to run a command real quick from within vim, where I also have access to the current filename and contents.
A classic gem is ":w !diff % -" to see what I've changed since the last save.
- bphogan 10y agoThat's what I've done for years too. I didn't know about the diff, but I love that - thank you.
- name_for_now 10y agoI used to run more commands from vim, but now I personally find Ctrl-Z is usually more convenient for all the one-off commands. If I do run stuff from inside of vim, it's now usually ":w !" or ":r !" (or some custom command wrapper around those).
- sergiosgc 10y agoOh! Ctrl-Z! I've been calling !zsh all these years, for quick shell access, and never thought of suspending vim. Thanks for the nugget.
- NocturnalWaffle 10y agoPut this in your zshrc, and Ctrl-Z will also resume the most recently suspended process. Really handy to just Ctrl-Z in and out of Vim. # Make Ctrl-z also resume background process fancy-ctrl-z () { if [[ $#BUFFER -eq 0 ]]; then BUFFER="fg" zle accept-line else zleush-input zle clear-screen fi } zle -N fancy-ctrl-z bindkey '^Z' fancy-ctrl-z
- mrkgnao 10y agoI don't really know zsh, but that looks like it should be zle flush-input
- erikb 10y agoAnd as many other cool vim features, you can even extend that usage by combining it with other features. For instance, you can read the output of a command into the current buffer by ":r !command".