174 lines
6.5 KiB
Plaintext
174 lines
6.5 KiB
Plaintext
" An example for a vimrc file.
|
|
"
|
|
" Maintainer: Bram Moolenaar <Bram@vim.org>
|
|
" Last change: 1999 Sep 09
|
|
"
|
|
" To use it, copy it to
|
|
" for Unix and OS/2: ~/.vimrc
|
|
" for Amiga: s:.vimrc
|
|
" for MS-DOS and Win32: $VIM\_vimrc
|
|
|
|
" This line should not be removed as it ensures that various options are
|
|
" properly set to work with the Vim-related packages available in Debian.
|
|
runtime! debian.vim
|
|
|
|
set nocompatible " Use Vim defaults (much better!)
|
|
set bs=2 " allow backspacing over everything in insert mode
|
|
set ai " always set autoindenting on
|
|
" set backup " keep a backup file
|
|
"set viminfo='20,\"50 " read/write a .viminfo file, don't store more
|
|
" than 50 lines of registers
|
|
set viminfo='20,\"50,:20,%,n~/.viminfo
|
|
set history=50 " keep 50 lines of command line history
|
|
set ruler " show the cursor position all the time
|
|
set ignorecase " suchen case-insenitiv
|
|
set showmatch " zeige passende klammern
|
|
set shell=/bin/bash " shell to start with !
|
|
set expandtab " tabs --> blanks
|
|
set showmode " anzeige INSERT/REPLACE/...
|
|
|
|
" set smartcase " Do smart case matching
|
|
|
|
set incsearch " Incremental search
|
|
" Start searching when you type the first character of
|
|
" the search string. As you type in more characters, the
|
|
" search is refined.
|
|
|
|
set t_Co=256 " To enable 256 colors in vim, put this your .vimrc before setting the colorscheme
|
|
|
|
" einrueckung
|
|
set shiftwidth=3
|
|
set tabstop=3
|
|
" Round indent to multiple of 'shiftwidth' for > and < commands
|
|
set shiftround
|
|
|
|
" For Win32 GUI: remove 't' flag from 'guioptions': no tearoff menu entries
|
|
" let &guioptions = substitute(&guioptions, "t", "", "g")
|
|
|
|
" Don't use Ex mode, use Q for formatting
|
|
map Q gq
|
|
|
|
" Make p in isual Visual mode replace the selected text with the "" register.
|
|
vnoremap p <Esc>:let current_reg = @"<CR>gvdi<C-R>=current_reg<CR><Esc>
|
|
|
|
" Switch syntax highlighting on, when the terminal has colors
|
|
" Also switch on highlighting the last used search pattern.
|
|
if &t_Co > 2 || has("gui_running")
|
|
syntax on
|
|
set hlsearch
|
|
endif
|
|
|
|
" Only do this part when compiled with support for autocommands.
|
|
if has("autocmd")
|
|
|
|
" In text files, always limit the width of text to 78 characters
|
|
autocmd BufRead *.txt set tw=78
|
|
|
|
augroup cprog
|
|
" Remove all cprog autocommands
|
|
au!
|
|
|
|
" When starting to edit a file:
|
|
" For C and C++ files set formatting of comments and set C-indenting on.
|
|
" For other files switch it off.
|
|
" Don't change the order, it's important that the line with * comes first.
|
|
autocmd FileType * set formatoptions=tcql nocindent comments&
|
|
autocmd FileType c,cpp set formatoptions=croql cindent comments=sr:/*,mb:*,el:*/,://
|
|
augroup END
|
|
|
|
augroup gzip
|
|
" Remove all gzip autocommands
|
|
au!
|
|
|
|
" Enable editing of gzipped files
|
|
" set binary mode before reading the file
|
|
autocmd BufReadPre,FileReadPre *.gz,*.bz2 set bin
|
|
autocmd BufReadPost,FileReadPost *.gz call GZIP_read("gunzip")
|
|
autocmd BufReadPost,FileReadPost *.bz2 call GZIP_read("bunzip2")
|
|
autocmd BufWritePost,FileWritePost *.gz call GZIP_write("gzip")
|
|
autocmd BufWritePost,FileWritePost *.bz2 call GZIP_write("bzip2")
|
|
autocmd FileAppendPre *.gz call GZIP_appre("gunzip")
|
|
autocmd FileAppendPre *.bz2 call GZIP_appre("bunzip2")
|
|
autocmd FileAppendPost *.gz call GZIP_write("gzip")
|
|
autocmd FileAppendPost *.bz2 call GZIP_write("bzip2")
|
|
|
|
" After reading compressed file: Uncompress text in buffer with "cmd"
|
|
fun! GZIP_read(cmd)
|
|
let ch_save = &ch
|
|
set ch=2
|
|
execute "'[,']!" . a:cmd
|
|
set nobin
|
|
let &ch = ch_save
|
|
execute ":doautocmd BufReadPost " . expand("%:r")
|
|
endfun
|
|
|
|
" After writing compressed file: Compress written file with "cmd"
|
|
fun! GZIP_write(cmd)
|
|
if rename(expand("<afile>"), expand("<afile>:r")) == 0
|
|
execute "!" . a:cmd . " <afile>:r"
|
|
endif
|
|
endfun
|
|
|
|
" Before appending to compressed file: Uncompress file with "cmd"
|
|
fun! GZIP_appre(cmd)
|
|
execute "!" . a:cmd . " <afile>"
|
|
call rename(expand("<afile>:r"), expand("<afile>"))
|
|
endfun
|
|
|
|
augroup END
|
|
|
|
" This is disabled, because it changes the jumplist. Can't use CTRL-O to go
|
|
" back to positions in previous files more than once.
|
|
if 0
|
|
" When editing a file, always jump to the last cursor position.
|
|
" This must be after the uncompress commands.
|
|
autocmd BufReadPost * if line("'\"") && line("'\"") <= line("$") | exe "normal `\"" | endif
|
|
endif
|
|
|
|
endif " has("autocmd")
|
|
|
|
" toggle syntax highlighting
|
|
map <F12> :if exists("syntax_on") <Bar> syntax off <Bar> else <Bar> syntax on <Bar> endif <CR><ESC>
|
|
map <F11> :nohls <CR>
|
|
|
|
" use <F6> to toggle line numbers
|
|
nmap <silent> <F6> :set number!<CR>
|
|
|
|
|
|
" If using a dark background within the editing area and syntax highlighting
|
|
" turn on this option as well
|
|
set background=dark
|
|
|
|
|
|
" set color for search
|
|
hi clear search
|
|
hi search term=bold,reverse cterm=bold,reverse gui=bold,reverse
|
|
|
|
" set color for Comment
|
|
hi clear Comment
|
|
"highlight Comment term=bold cterm=bold ctermfg=LightBlue guifg=#80a0ff gui=bold
|
|
"highlight Comment term=none cterm=none ctermfg=LightBlue guifg=#80a0ff gui=bold
|
|
"highlight Comment term=bold cterm=bold ctermfg=grey guifg=#80a0ff gui=bold
|
|
highlight Comment term=none cterm=none ctermfg=grey guifg=#80a0ff gui=bold
|
|
"highlight Comment term=none cterm=none ctermfg=177 guifg=#80a0ff gui=bold
|
|
"highlight Comment term=none cterm=none ctermfg=215 guifg=#80a0ff gui=bold
|
|
|
|
" Go back to the position the cursor was on the last time this file was edited
|
|
au BufReadPost * if line("'\"") > 0 && line("'\"") <= line("$")|execute("normal `\"")|endif
|
|
|
|
" visual shifting (does not exit Visual mode)
|
|
vnoremap < <gv
|
|
vnoremap > >gv
|
|
|
|
" Scroll when cursor gets within 3 characters of top/bottom edge
|
|
set scrolloff=3
|
|
|
|
" Show line, column number, and relative position within a file in the status line
|
|
" set statusline=%F%m%r%h%w\ [FORMAT=%{&ff}]\ [TYPE=%Y]\ [ASCII=\%03.3b]\ [HEX=\%02.2B]\ [POS=%04l,%04v][%p%%]\ [LEN=%L]
|
|
"set statusline=\ %F\ %(\|\ flags:\ %R%M%H%W\ %)%(\|\ type:\ %Y\ %)%(\|\ format:\ %{&ff}\ %)%(\|\ syntax:\ %{synIDattr(synID(line('.'),col('.'),0),'name')}%)\ \ %=line:\ %l/%L\ \|\ column:\ %c%V\ \|\ relative\:\ %p%%\
|
|
set statusline=\ %F\ %(\|\ flags:\ %R%M%H%W\ %)%(\|\ type:\ %Y\ %)%(\|\ format:\ %{&ff}\ %)\ \ %=line:\ %l/%L\ \|\ col:\ %c%V\ \|\ %p%%
|
|
" Always show status line, even for one window
|
|
set laststatus=2
|
|
highlight StatusLine cterm=none ctermfg=white ctermbg=blue
|
|
|