From ee94dc4bdba3fd5b0458bfd61f5638444a379618 Mon Sep 17 00:00:00 2001 From: Johannes Date: Sat, 23 Apr 2016 19:24:08 +0200 Subject: split vimrc in different files and added/reordered configuration --- .vim/vimrc_files/colors.vim | 1 + .vim/vimrc_files/functions.vim | 18 ++++++++ .vim/vimrc_files/highlight.vim | 10 +++++ .vim/vimrc_files/keymaps.vim | 49 ++++++++++++++++++++++ .vimrc | 93 ++++++++++++++++++++++++++++-------------- 5 files changed, 140 insertions(+), 31 deletions(-) create mode 100644 .vim/vimrc_files/colors.vim create mode 100644 .vim/vimrc_files/functions.vim create mode 100644 .vim/vimrc_files/highlight.vim create mode 100644 .vim/vimrc_files/keymaps.vim diff --git a/.vim/vimrc_files/colors.vim b/.vim/vimrc_files/colors.vim new file mode 100644 index 0000000..678e440 --- /dev/null +++ b/.vim/vimrc_files/colors.vim @@ -0,0 +1 @@ +hi x226_Yellow1 ctermfg=226 guifg=#ffff00 "rgb=255,255,0 diff --git a/.vim/vimrc_files/functions.vim b/.vim/vimrc_files/functions.vim new file mode 100644 index 0000000..a2c0f9a --- /dev/null +++ b/.vim/vimrc_files/functions.vim @@ -0,0 +1,18 @@ +" Split Window and scroll down +fu! SplitScroll() + :wincmd v + :wincmd w + execute "normal! \" + :set scrollbind + :wincmd w + :set scrollbind +endfu + +" toggle relative line number mode +function! ToggleRelativeNumber() + if(&relativenumber == 1) + set norelativenumber + else + set relativenumber + endif +endfunc diff --git a/.vim/vimrc_files/highlight.vim b/.vim/vimrc_files/highlight.vim new file mode 100644 index 0000000..768708e --- /dev/null +++ b/.vim/vimrc_files/highlight.vim @@ -0,0 +1,10 @@ +" hi clear CursorLine +" augroup CLClear +" autocmd! ColorScheme * hi clear CursorLine +" augroup END + +" Highlight color of current line +hi CursorLineNR cterm=bold ctermfg=226 +augroup CLNRSet + autocmd! ColorScheme * hi CursorLineNR cterm=bold ctermfg=226 +augroup END diff --git a/.vim/vimrc_files/keymaps.vim b/.vim/vimrc_files/keymaps.vim new file mode 100644 index 0000000..75dffca --- /dev/null +++ b/.vim/vimrc_files/keymaps.vim @@ -0,0 +1,49 @@ +let ArrowDisableMessage = "Arrow Keys disabled! Better learn hjkl ;)" + +" Disable arrow keys -- train jklh +nnoremap :echo ArrowDisableMessage +nnoremap :echo ArrowDisableMessage +nnoremap :echo ArrowDisableMessage +nnoremap :echo ArrowDisableMessage + +vnoremap :echo ArrowDisableMessage +vnoremap :echo ArrowDisableMessage +vnoremap :echo ArrowDisableMessage +vnoremap :echo ArrowDisableMessage + +inoremap :echo ArrowDisableMessage +inoremap :echo ArrowDisableMessage +inoremap :echo ArrowDisableMessage +inoremap :echo ArrowDisableMessage + +" ctrl-jklm move to different splits +map j +map k +map l +map h + +" ctrl-hjkl move in insert mode +inoremap +inoremap +inoremap +inoremap + +" ctrl-jk movement in command window +cnoremap +cnoremap +cnoremap +cnoremap + +" shift-hl change to left/right Tab +nnoremap :tabprev +nnoremap :tabnext + +" ctrl-ae jump to line start/end +nnoremap 0 +nnoremap $d + +inoremap 0 +inoremap $ + +" Shortcut to toggle relative numbering mode +nnoremap :call ToggleRelativeNumber() diff --git a/.vimrc b/.vimrc index 577da88..02ba97e 100644 --- a/.vimrc +++ b/.vimrc @@ -1,6 +1,14 @@ runtime! debian.vim -set nocompatible +set nocompatible " make Vim less Vi + +" +----------------------------+ +" | Source Extrenal Files | +" +----------------------------+ +source ~/.vim/vimrc_files/colors.vim +source ~/.vim/vimrc_files/highlight.vim +source ~/.vim/vimrc_files/keymaps.vim +source ~/.vim/vimrc_files/functions.vim " +----------------------------+ " | Color Settings | @@ -16,39 +24,62 @@ colorscheme solarized "colorscheme buddy "colorscheme gruvbox -set autoindent "Copy indent from current line when starting a new line -set showcmd " Show (partial) command in status line. -set showmatch " Show matching brackets. -set ignorecase " Do case insensitive matching -set smartcase " Do smart case matching -set incsearch " Incremental search -set mouse=a " Enable mouse usage (all modes) -set encoding=utf-8 " Set default encoding to UTF-8. -set history=1000 " Sets how many lines of history VIM has to remember + +" +----------------------------+ +" | Basic Settings | +" +----------------------------+ +filetype on " try to detect filetypes +filetype plugin indent on " enable loading indent file for filetype +set ffs=unix,dos,mac " Try recognizing dos, unix, and mac line endings. + +set number " Display line numbers +set relativenumber " Display relative line numbers +set title " show title in console title bar +set cursorline " cursor line highlighting +set cursorcolumn " cursor column highlighting +set confirm " Y-N-C prompt if closing with unsaved changes. + +set mouse=a " Enable mouse usage (all modes) +set encoding=utf-8 " Set default encoding to UTF-8. +set history=1000 " Sets how many lines of history VIM has to remember +set tabpagemax=100 " Sets how many tabs will be opened +set scrolloff=7 " set vertical scroll distance to 7 lines +set tabstop=4 " set Tab-length +set expandtab " expand tabs to spaces +set shiftwidth=4 " but an indent level is 2 spaces wide. +set softtabstop=4 " over an autoindent deletes both spaces. +set shiftround " rounds indent to a multiple of shiftwidth + +set nowrap " don't wrap text +set noautowrite " Never write a file unless I request it. +set noautowriteall " NEVER. +set noautoread " Don't automatically re-read changed files. +set shortmess+=a " Use [+]/[RO]/[w] for modified/readonly/written. + +set smarttab " Handle tabs more intelligently +set smartcase " Do smart case matching +set autoindent "Copy indent from current line when starting a new line +set smartindent " use smart indent if there is no indent file +set showmatch " Show matching brackets. +set mat=2 " how many tenths of a second to blink when matching brackets +set matchpairs+=<:> " show matching <> as well +set hlsearch " highlight search results +set ignorecase " Do case insensitive matching +set incsearch " Incremental search +set magic " for regular expressions turn magic on + + set ruler " display cursor position set laststatus=2 " always show status line -set wildignore=*.o,*~,*.pyc " ignore compiled files -set scrolloff=7 " set vertical scroll distance to 7 lines -set wildmenu " turn on the wild menu -set hlsearch " highlight search results -set magic " for regular expressions turn magic on -set mat=2 " how many tenths of a second to blink when matching brackets +set showcmd " Show (partial) command in status line. + + +set wildmenu " turn on the wild menu +set wildmode=full " cycles between all matching choices. +" Ignore these files when completing +set wildignore+=*.o,*.obj,.git,*.pyc,*~ + " No annoying sound on errors set noerrorbells set novisualbell set tm=500 - -set number " Display line numbers -set tabstop=4 " set Tab-length -set expandtab " expand tabs to spaces -set tabpagemax=100 " Sets how many tabs will be opened - -" +----------------------------+ -" | Own Functions and Key Maps | -" +----------------------------+ - -function! ToggleRelativeNumber() - set invrelativenumber -endfunc - -nnoremap :call ToRelativeNumber() -- cgit v1.2.3