1
0
mirror of https://github.com/gryf/.vim.git synced 2026-03-26 15:53:33 +01:00

Compare commits

...

4 Commits

2 changed files with 52 additions and 60 deletions

View File

@@ -7,14 +7,17 @@ of it.
It uses `vim-plug`_ plugin manager, so after cloning, just open vim, and it
will automatically install all the plugins.
Other than that, there are two additional config files which can be added to
the configuration as a local configuration files just to not mess up with main
config file. Both of them should be placed under ``$HOME/.vim`` directory.
It should be cloned as is into `$HOME`` directory, i.e:
First one is ``vimrc.local``, which might contain additional/override options
for specific machine.
.. code:: console
The other ``plugins.local`` and similarly there can be additional plugins
defined.
cd $HOME
git clone https://github.com/gryf/.vim
or in ``$XDG_COFIG_HOME`` directory, which usually is set to ``$HOME/.config``:
.. code:: console
git clone https://github.com/gryf/.vim ~/.config/vim
.. _vim-plug: https://github.com/junegunn/vim-plug

95
vimrc
View File

@@ -1,15 +1,25 @@
"Basic setup for all files {{{
set nocompatible "VIM over VI
" vimplug conf {{{
" Get the config dir, as config can be either on ~/.vim or ~/.config/vim
let s:_confdir = fnamemodify($MYVIMRC, ':h')
if empty(glob('~/.vim/autoload/plug.vim'))
silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs
\ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
" Set colorscheme depending on the environment vim is running
if $TERM == 'linux' && !has('gui_running')
" fallback to basic 8-color colorscheme
let s:_colorscheme = 'pablo'
else
let s:_colorscheme = 'wombat256grf'
endif
" vimplug conf {{{
if ! filereadable(s:_confdir . '/autoload/plug.vim')
silent exec "!curl -fLo " . s:_confdir . "/autoload/plug.vim --create-dirs"
\ "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim"
autocmd VimEnter * PlugInstall --sync | source $MYVIMRC
endif
call plug#begin('~/.vim/bundle')
call plug#begin(s:_confdir . '/bundle')
Plug 'Valloric/MatchTagAlways', { 'for': ['html', 'xml'] }
Plug 'ayuanx/vim-mark-standalone'
@@ -28,7 +38,7 @@ Plug 'gryf/pythonhelper', { 'for': 'python' }
Plug 'gryf/snipmate.vim'
Plug 'gryf/vim-latex-compiler', { 'for': 'tex' }
Plug 'gryf/wombat256grf'
Plug 'gryf/zoom.vim' " control gui font size with '+' or '-; keys.
Plug 'gryf/zoom.vim' " control gui font size with '+' or '-; keys.
Plug 'habamax/vim-rst', { 'for': 'rst' }
Plug 'honza/vim-snippets'
Plug 'kien/ctrlp.vim'
@@ -54,12 +64,7 @@ Plug 'vim-scripts/mako.vim', { 'for': 'mako' }
Plug 'vim-scripts/mako.vim--Torborg', { 'for': 'mako' }
Plug 'vimwiki/vimwiki'
Plug 'will133/vim-dirdiff'
" Custom plugins: custom plugins per machine {{{
" if filereadable($MYVIMRC . '.local')
if filereadable(fnamemodify($MYVIMRC, ':h') . '/plugins.local')
exec "source " . fnamemodify($MYVIMRC, ':h') . '/plugins.local'
endif
Plug 'thinca/vim-localrc'
call plug#end()
" }}}
@@ -122,7 +127,7 @@ set softtabstop=4
"spell options
set spelllang=pl,en
let &spellfile=expand('~/.vim/spell/pl.utf-8.add')
let &spellfile=expand(s:_confdir . '/spell/pl.utf-8.add')
set splitbelow "Create new window below current one
set swapfile "Use swap file
@@ -151,7 +156,7 @@ set noswapfile
"set undodir=~/.cache
" Strip trailing whitespace option
let stripTrailingWhitespace = 1
let stripTrailingWhitespace = 0
" Ignore missing spell files
let loaded_spellfile_plugin = 1
@@ -201,6 +206,12 @@ map <F3> :call <SID>CycleDiffAlgorithm()<cr>
map <F4> :call <SID>ToggleHex()<cr>
" }}}
"FileTypes: specific vim behaviour {{{
function s:SetAsciiDoc() "{{{2
" AsciiDoc specific options
setlocal makeprg=asciidoc\ -b\ html5\ \"%\"
map <S-F5> :ShowInBrowser<CR>
endfunction
"}}}
function s:SetPythonSettings() "{{{2
" Python specific options
setlocal cinkeys-=0#
@@ -247,18 +258,7 @@ function s:SetMarkdownSettings() "{{{2
setlocal autoindent
setlocal formatoptions=tcq "set VIms default
function! <SID>ShowInBrowser()
let l:uri = expand("%:p:r") . ".html"
call system(g:browser . " " . l:uri)
echohl Statement
echo "Opened '" . l:uri ."' in " . g:browser
echohl None
endfunction
if !exists(":ShowInBrowser")
command ShowInBrowser call s:ShowInBrowser()
map <S-F5> :ShowInBrowser<CR>
endif
map <S-F5> :ShowInBrowser<CR>
" autocmd BufWritePost *.md :silent make
endfunction
@@ -307,20 +307,7 @@ function s:SetRestSettings() "{{{2
setlocal formatoptions=tcq "set VIms default
syn spell toplevel
function! <SID>ShowInBrowser()
let l:uri = expand("%:p:r") . ".html"
silent make
call system(g:browser . " " . l:uri)
echohl Statement
echo "Opened '" . l:uri ."' in " . g:browser
echohl None
endfunction
if !exists(":ShowInBrowser")
command ShowInBrowser call s:ShowInBrowser()
map <S-F5> :ShowInBrowser<CR>
endif
map <S-F5> :ShowInBrowser<CR>
function! WordFrequency() range
let all = split(join(getline(a:firstline, a:lastline)), '\k\+')
@@ -368,9 +355,6 @@ function s:SetGitcommitSettings() "{{{2
endfunction
"}}}
"remove all trailing whitespace for specified files before write
autocmd BufWritePre * :call <SID>StripTrailingWhitespaces(0, 'n')
autocmd BufRead *.mako set filetype=mako
autocmd BufRead *.ass, *asm set filetype=kickass
@@ -378,6 +362,7 @@ autocmd BufRead *.ass, *asm set filetype=kickass
autocmd WinEnter * setlocal cursorline
autocmd WinLeave * setlocal nocursorline
autocmd FileType asciidoc call <SID>SetAsciiDoc()
autocmd FileType python call <SID>SetPythonSettings()
autocmd FileType json call <SID>SetJavaScriptSettings()
autocmd FileType javascript call <SID>SetJavaScriptSettings()
@@ -575,6 +560,19 @@ endfunction
"}}}
" FUNCTIONS: usefull functions for all of the files {{{
" open file in a browser. Usefull for documentation filetypes like reST, md or
" asciidoc
function! <SID>ShowInBrowser()
let l:uri = expand("%:p:r") . ".html"
silent make
call system(g:browser . " " . l:uri)
echohl Statement
echo "Opened '" . l:uri ."' in " . g:browser
echohl None
endfunction
command ShowInBrowser call s:ShowInBrowser()
" Simple wrapper for :make command
function <SID>Make()
echohl Statement
@@ -767,16 +765,7 @@ if has('gui_running')
au GUIEnter * set vb t_vb=
endif
silent! colorscheme wombat256grf
silent! exec 'colorscheme ' . s:_colorscheme
if $TERM == 'linux' && !has('gui_running')
" fallback to basic 8-color colorscheme
colorscheme pablo
endif
"}}}
" Custom: custom config per machine {{{
if filereadable($MYVIMRC . '.local')
exec "source " . $MYVIMRC . '.local'
endif
"}}}
" vim:ts=4:sw=4:wrap:fdm=marker: