" An example for a vimrc file. " " Maintainer: Bram Moolenaar " 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 noexpandtab set expandtab set shiftwidth=3 set tabstop=3 set softtabstop=3 " Round indent to multiple of 'shiftwidth' for > and < commands set shiftround "set number " 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 :let current_reg = @"gvdi=current_reg " 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(""), expand(":r")) == 0 execute "!" . a:cmd . " :r" endif endfun " Before appending to compressed file: Uncompress file with "cmd" fun! GZIP_appre(cmd) execute "!" . a:cmd . " " call rename(expand(":r"), expand("")) 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 :if exists("syntax_on") syntax off else syntax on endif map :nohls " use to toggle line numbers nmap :set number! " 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 " 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 colorscheme PaperColor