Well.. Recently i haven't been able to spend as much time here at DC as i'd like to. That's because i've had an humongous amount of work to do lately.
The up side on this, is that i've been intensively using
VIM. This resulted in learning a few tricks, and making a few improvements on what already is possibly the best editor around.
So, i'd like to share them with you.
Actually, i won't share them all, they are too many, but i'll give you the best pointers

I started by making a
google search about
vimrc. It's vim's configuration and startup file, the place to put all your configs. The google link i mentioned was where i learned the most, because it had other people's vimrc files, and the big majority of them are very well commented, which is a big help in understanding what each of the commands does.
After, i found that there's a small url in vim's page that links to
vim tips. It's amazing the quantity of fantastic stuff available there, not only on the topics itself but also on the comments. Be sure to search for the top rated first, as those are the most interesting advices, and some sum lots of topics into a single one. This will require that you know something about vim already, though. That's why i recomend you do the vim tutor first.
Well... That sums it up. I know it doesn't looks like much, but there's material for about 2-3 weeks worth of reading material

I leave you with my vimrc file, with the options i consider most important. (awaiting editing to add the file)
my vimrc
"added by jgpaiva
syntax on
"set
set hlsearch
set ignorecase smartcase
set incsearch
set infercase
set shiftwidth=3
set expandtab
set softtabstop=2
set wrap
set ruler
set foldcolumn=1
set smartindent
set backspace=2
set shiftwidth=2
set virtualedit=all
set wildmenu
set number
set hidden
set showbreak=\ +\
set mouse=ar
set showmatch
set gdefault
set fillchars=vert:\ ,fold:-
set foldenable " Turn on folding
set foldmethod=indent " Make folding indent sensitive
set foldlevel=100 " Don't autofold anything (but I can still fold manually)
set laststatus=2
set splitright
set viminfo=s1,<1024,'1024,/1024,:1024,@1024,f1,%
set showcmd
set nostartofline
set suffixes+=.out,.in
set showcmd
"colorscheme
colorscheme asmanian2
"imap
imap <c-s>:update<BR>i<Right>
imap <F9> <esc>:update<BR>:make clean<BR>:make
imap <C-BS> <c-left>vboldi
inoremap <tab> <c-r>=InsertTabWrapper()<cr>
"vmap
vmap <tab> >gv
vmap <s-tab> <gv
vmap <c-s>:update<BR>gv
"nmap
nmap <F9> :update<BR>:make clean<BR>:make
nmap <c-s> :update
nmap <Space> <PageDown>
nmap <BS> <PageUp>
nmap <c-p> :bnext
nmap <c-n> :bprevious
nmap -cd :cd%:h<CR>
nmap -lcd :lcd%:h<CR>
nmap <c-f4> :bdel<cr>
nmap ð :cprev<CR>
nmap <c-tab> :tabnext<CR>
nmap <c-s-tab> :tabprev<CR>
nmap <C-J> gj
nmap <C-K> gk
"nmap :W :w
"set statusline=%f%m%r%h%w\ [%03l,%03v][%p%%]\ [LEN=%L]
if has('syntax') && (&t_Co > 2)
syntax on
endif
function InsertTabWrapper()
let col = col('.') - 1
if !col || getline('.')[col - 1] !~ '\k'
return "\<tab>"
else
return "\<c-p>"
endif
endfunction