BrettRS /.vimrc

My .vimrc file, made by looking at other's and at the vim resources, also used vim tips wiki. My complete .vim directory can be downloaded at this url: http://www.bigbrett.net/vim.tar.bz2 . It includes all my scripts, plugins, indents, syntax, etc..
" ViM Config File   
" Created by Brett Stover
" 
" Last modified: Sat Dec 22, 2007  03:31

" VIM compatibility only
set nocompatible

" Enable syntax highlighting
syntax   enable

" Detect filetype and enable indents + plugins
filetype on
filetype plugin on
filetype indent on

" Set the history to a higher number
set history=1000

" Show line numbers
set number

" Set the colorscheme and the background
set background=dark
colorscheme jhdark

" Autoindent and Smartindent on
set autoindent
set smartindent

" Show the cursor position at all times
set ruler

" enable code folding if using vim above version 6
if version >= 600
     set foldenable
     set foldmethod=marker
endif

" Enable Mouse Usage (all modes) in terminal
set mouse=a

" Insert spaces when hitting  & the number of spaces to move
set expandtab
set tabstop=5
set shiftwidth=5
set smarttab

" Sse "[RO]" for "[readonly]" to save space in the message line
set shortmess+=r

" Set the statusbar height to two lines
set cmdheight=2

" No beeps on error messages
set noerrorbells

" Don't create back-up files
set nobackup

" Enable backspacing over everything
set bs=2

" Set the encoding to UTF-8
set encoding=utf-8

" Search for text as you type
set incsearch

" Source filetype plugins.
runtime! ftdetect/*.vim

" Set the status line format.
set laststatus=2
if has("statusline")
     set statusline=%F%m%r%h%w\ [%p%%]\ %{strftime(\"%d/%m/%y\ -\ %H:%M\")} 
endif

" Enable line wrapping.
set wrap

" Source changes done to .vimrc when it's saved
au BufWritePost ~/.vimrc :source ~/.vimrc

" Read MS-Word documents, requires antiword
au BufReadPre *.doc set ro
au BufReadPre *.doc set hlsearch
au BufReadPost *.doc %!antiword "%"

" Indicates a fast terminal connection
set ttyfast

" Set the shortmess options
set shortmess=atI

" Set the number of undo levels
set undolevels=1000

" Autocommands used for *.txt files
augroup Txt
     autocmd BufNewFile,BufRead *.txt   setf txt
augroup END

" Autowrite on swap
set autowrite
set noshowcmd

" Auto Update a line containing Last Modified
function! LastMod()
    if line("$") > 20
let l = 20
    else
let l = line("$")
    endif
    exe "1," . l . "g/Last modified: /s/Last modified: .*/Last modified: " .
\ strftime("%a %b %d, %Y  %H:%M")
endfun 

" Call the LastMod() Function everytime we save a file
autocmd BufWrite *   ks|call LastMod()|'s

" Setup the menu stuff
set wildmenu
set cpo-=<
set wcm=
map  :emenu 
set wildmode=list:longest,full 

" Copy + Paste(enables the use of ctrl-v, c and x to paste, copy and cut
nnoremap  Paste :call Paste()
vnoremap  "+x
vnoremap  "+y
map  "+gP
cmap  +
func! Paste()
    let ove = &ve
    set ve=all
    normal `^
    if @+ != ''
        normal "+gP
    endif
    let c = col(".")
    normal i
    if col(".") < c
        normal l
    endif
    let &ve = ove
endfunc
inoremap