From 043740fd638717fb4bd088d57df27ca87f7ddd49 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20Lov=C3=A9n?= Date: Wed, 18 Oct 2017 15:50:04 +0200 Subject: [PATCH] Begun vim configuring --- dev/setup.sh | 1 - helpers.sh | 2 +- terminal/fish/config.fish | 4 +- terminal/setup.sh | 1 + terminal/vim/keys.vim | 4 ++ terminal/vim/packages.vim | 10 +++++ terminal/vim/setup.sh | 27 ++++++++++++ terminal/vim/vimrc | 93 +++++++++++++++++++++++++++++++++++++++ 8 files changed, 138 insertions(+), 4 deletions(-) create mode 100644 terminal/vim/keys.vim create mode 100644 terminal/vim/packages.vim create mode 100755 terminal/vim/setup.sh create mode 100644 terminal/vim/vimrc diff --git a/dev/setup.sh b/dev/setup.sh index 6cb6da9..be9fdb1 100755 --- a/dev/setup.sh +++ b/dev/setup.sh @@ -10,7 +10,6 @@ function main() ${scriptdir}/git/setup.sh - brewget vim --with-override-system-vi caskget docker makedir ${HOME}/code diff --git a/helpers.sh b/helpers.sh index bc46738..66644a6 100644 --- a/helpers.sh +++ b/helpers.sh @@ -50,6 +50,6 @@ function makedir() { if [ ! -d $@ ]; then print_info "Making directory $@" - mkdir $@ + mkdir -p $@ fi } diff --git a/terminal/fish/config.fish b/terminal/fish/config.fish index 685f69d..31ed5fb 100755 --- a/terminal/fish/config.fish +++ b/terminal/fish/config.fish @@ -17,7 +17,7 @@ end set -x LANG sv_SE.UTF-8 set -x LC_ALL sv_SE.UTF-8 -set -x EDITOR nvim -alias v nvim +set -x EDITOR vim +alias v vim eval (python3 -m virtualfish) diff --git a/terminal/setup.sh b/terminal/setup.sh index c246108..0baaa8e 100755 --- a/terminal/setup.sh +++ b/terminal/setup.sh @@ -8,6 +8,7 @@ function main() ${scriptdir}/kitty/setup.sh ${scriptdir}/fish/setup.sh + ${scriptdir}/vim/setup.sh print_info "Installing terminal applications" brewget tmux diff --git a/terminal/vim/keys.vim b/terminal/vim/keys.vim new file mode 100644 index 0000000..7d00921 --- /dev/null +++ b/terminal/vim/keys.vim @@ -0,0 +1,4 @@ +nnoremap h +nnoremap j +nnoremap k +nnoremap l diff --git a/terminal/vim/packages.vim b/terminal/vim/packages.vim new file mode 100644 index 0000000..0870d18 --- /dev/null +++ b/terminal/vim/packages.vim @@ -0,0 +1,10 @@ +command! PackUpdate packadd minpac | source $MYVMRC | redraw | call minpac#update() +command! PackClean packadd minpac | source $MYVIMRC | call minpac#clean() + +if !exists('*minpac#init') + finish +endif + +call minpac#init() + +call minpac#add('k-takata/minpac', {'type': 'opt'}) diff --git a/terminal/vim/setup.sh b/terminal/vim/setup.sh new file mode 100755 index 0000000..dd53acd --- /dev/null +++ b/terminal/vim/setup.sh @@ -0,0 +1,27 @@ +#!/usr/bin/env bash + +source ${DOTFILES}/helpers.sh + +function main() +{ + local scriptdir="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)" + + brewget vim --with-override-system-vi + + makedir "${HOME}/.vim" + if [ ! -f "${HOME}/.vim/vimrc" ]; then + cat << EOF > "${HOME}/.vim/vimrc" +source ${scriptdir}/vimrc +EOF + fi + + if [ ! -d "${HOME}/.vim/pack/minpac/opt" ]; then + makedir "${HOME}/.vim/pack/minpac/opt" + pushd "${HOME}/.vim/pack/minpac/opt" + git clone https://github.com/k-takata/minpac.git + popd + fi + +} + +main "$@" diff --git a/terminal/vim/vimrc b/terminal/vim/vimrc new file mode 100644 index 0000000..1e73cae --- /dev/null +++ b/terminal/vim/vimrc @@ -0,0 +1,93 @@ +" Start with some stuff copied from the default vimrc included with vim 8 +" by Bram Moolenaar + +if v:progname =~? "evim" + finish +endif + +if exists('skip_defaults_vim') + finish +endif + +if &compatible + set nocompatible +endif + +silent! while 0 + set nocompatible +silent! endwhile + +set backspace=indent,eol,start + +set history=200 " keep 200 lines of command line history +set ruler " show the cursor position all the time +set showcmd " display incomplete commands +set wildmenu " display completion matches in a status line + +set ttimeout " time out for key codes +set ttimeoutlen=100 " wait up to 100ms after Esc for special key + +set display=truncate + +set scrolloff=5 + +if has('reltime') + set incsearch +endif + +set nrformats-=octal + +if has('win32') + set guioptions-=t +endif + +map Q gq + +inoremap u + +if has('mouse') + set mouse=a +endif + +if &t_Co > 2 || has("gui_running") + syntax on + + let c_comment_strings=1 +endif + +if has("autocmd") + + filetype plugin indent on + + augroup vimStartup + au! + + autocmd BufReadPost * + \ if line("'\"") >= 1 && line("'\"") <= line("$") && &ft !~# 'commit' + \ | exe "normal! g`\"" + \ | endif + + augroup END + +endif " has("autocmd") + +if !exists(":DiffOrig") + command DiffOrig vert new | set bt=nofile | r ++edit # | 0d_ | diffthis + \ | wincmd p | diffthis +endif + +if has('langmap') && exists('+langremap') + set nolangremap +endif + +" ----------------------------------- +" End of default vimrc +" ----------------------------------- + + +let g:dotfiles_vim = expand(':p:h') + +execute 'source ' . g:dotfiles_vim . '/packages.vim' +execute 'source ' . g:dotfiles_vim . '/keys.vim' + +