Files
files/vimrc
T

109 lines
3.0 KiB
VimL

" Use Vim settings, rather then Vi settings (much better!).
" This must be first, because it changes other options as a side effect.
set nocompatible
" Only do this part when compiled with support for autocommands.
if has("autocmd")
" Enable file type detection.
" Use the default filetype settings, so that mail gets 'tw' set to 72,
" 'cindent' is on in C files, etc.
" Also load indent files, to automatically do language-dependent indenting.
filetype plugin indent on
" Put these in an autocmd group, so that we can delete them easily.
augroup vimrcEx
au!
" For all text files set 'textwidth' to 78 characters.
autocmd FileType text setlocal textwidth=78
" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid or when inside an event handler
" (happens when dropping a file on gvim).
autocmd BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif
augroup END
else
set autoindent " always set autoindenting on
endif " has("autocmd")
set ruler
set expandtab
set tabstop=4
set shiftwidth=4
set softtabstop=4
set autoindent
set copyindent
set cindent
set backspace=indent,eol,start
set mouse=a
syntax on
set hlsearch
set showmatch
set incsearch
set tags=./tags;/
let Tlist_WinWidth = 40
" GUI settings
set background=dark
set showtabline=2
set nomousehide
if has("gui_running")
colorscheme ir_black
runtime ftplugin/man.vim
nmap K :Man <cword><CR>
set lines=50
map ,w :winpos 769 153
set scrolloff=8
if &diff
set columns=175
endif
else
set scrolloff=4
endif
" mappings
map ,# :set paste
O75A#yypO#73A A#0ll:set nopaste
R
map ,p :set paste
o#73A A#0ll:set nopaste
R
map ,* :set paste
O/74A*o *72A A*o 73A*A/0klll:set nopaste
R
map ,; :set paste
O;74A*o;*72A A*o;74A*0klll:set nopaste
R
map ,c :set paste
o *72A A*0lll:set nopaste
R
map ,8 :set paste
o20A-A8<20A-:set nopaste
0
map ,m mz:%s/
//g
:noh
'z
map ,t :tabn
map ,T :tabp
map ,s mz:%s/\v\s+$//
'z
map ,f :set ts=8
:retab
:set ts=4
map ,C ggVGc
" jump to tag in a new tab
"map  :tab :tag 
nnoremap <silent> <F8> :TlistToggle<CR>
" highlight characters past column 80
map ,L :highlight TooLong guibg=lightyellow
:match TooLong '\%>80v.*.$'
" flag more than 80 characters in a row as an error
" 3match error '\%>80v.\+'
if has("autocmd")
autocmd FileType text setlocal noautoindent
" autocmd FileType c match error /\v\s+$/
" autocmd FileType c 2match error /\t/
" autocmd FileType cpp 2match error /\t/
autocmd FileType c syn match Constant display "\<_*[A-Z][A-Z0-9_]*\>"
autocmd FileType cpp syn match Constant display "\<_*[A-Z][A-Z0-9_]*\>"
autocmd FileType dosbatch syn match Comment "^@rem\($\|\s.*$\)"lc=4 contains=dosbatchTodo,@dosbatchNumber,dosbatchVariable,dosbatchArgument
au BufRead,BufNewFile *.dxl set filetype=dxl
autocmd FileType dxl set syntax=cpp
" open all buffers in a new tab
" au BufAdd,BufNewFile * nested tab sball
endif " has("autocmd")