add vim-shell

This commit is contained in:
AJ ONeal
2021-03-22 05:52:50 +00:00
parent 541bf110df
commit 68bf91b6c8
2 changed files with 53 additions and 0 deletions
+25
View File
@@ -0,0 +1,25 @@
---
title: vim-shell
homepage: https://webinstall.dev/vim-spell
tagline: |
vim shell sets the default shell for vim
---
To update (replacing the current version) run `webi vim-shell`.
## Cheat Sheet
> `set shell=bash`, always
Especially if you use a non-bash-compatible shell, such as [fish](/fish), you
should set `set shell=bash` as the **first line** in your `~/.vimrc`.
This script does that for you.
### Why set bash as your vim shell?
Any vim plugin that uses shell scripting will assume _bash_ - just because
that's the way the world is.
Even if you have a mostly-bash-compatible shell, such as _zsh_, it's a good idea
to set the vim shell to bash, just to avoid any compatibility issues.
+28
View File
@@ -0,0 +1,28 @@
#!/bin/bash
function __init_vim_shell() {
set -e
set -u
mkdir -p "$HOME/.vim/plugins"
rm -rf "$HOME/.vim/plugins/shell.vim"
echo ""
if [ ! -e "$HOME/.vimrc" ]; then
touch "$HOME/.vimrc"
fi
if ! grep 'shell=' -r ~/.vimrc > /dev/null 2> /dev/null; then
printf '" bash set as default shell (for compatibility) by webinstall.dev/vim-shell\n' >> ~/.vimrc.new.1
printf 'set shell=bash\n' >> ~/.vimrc.new.1
printf '\n' >> ~/.vimrc.new.1
cat ~/.vimrc >> ~/.vimrc.new.1
mv ~/.vimrc.new.1 ~/.vimrc
fi
echo ""
echo "Vim default shell is set. Edit with 'vim ~/.vimrc'"
}
__init_vim_shell