Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling

Re: Vim configs (slightly OT)

by andreychek (Parson)
on May 16, 2002 at 01:53 UTC ( #166899=note: print w/replies, xml ) Need Help??

in reply to Vim configs (slightly OT)

Here is my current vimrc. Some highlights of what all these settings do:

  • Turn on some nifty colors, for syntax highlighting and on the status bar
  • Don't use real tabs, instead, use 4 spaces whenever you hit the tab key
  • Handles indentation of curlies
  • Uses upper ascii characters to represent real tabs, as well as showing you when there are spaces at the end of your lines
  • If you're typing out comments, and the text gets to the end of the line, make it wrap, and make sure it adds a comment for you at the beginning of the next line
  • Turn off all the noisy beeping, so the terminal won't beep every time you press the cursor in the wrong direction, or make some other simple mistake
    And my all-time favorite:

  • Tab completion of variable names! If you hit tab with no characters before your curser, you get a normal 4 space tab. If there are characters before you cursor, it performs completion on them, allowing you to scroll forward through the options with tab, or backwards through the options with shift-tab.

    " Eric Andreychek's .vimrc set nocompatible " turn these ON: set digraph esckeys hidden ruler showcmd wildmenu smartindent expandta +b set visualbell showmatch title " turn these OFF: set noerrorbells nostartofline nohlsearch " non-toggles: set backspace=2 formatoptions=cqrt laststatus=2 shortmess=at textwidth +=79 set whichwrap=<,>,h,l shiftwidth=4 softtabstop=4 set comments=b:#,:%,fb:-,n:>,n:) set list listchars=tab:,trail: set viminfo=%,'50,\"100,:100,n~/.viminfo " mappings: map Q gq map K <NUL> map <C-Z> :shell<CR> map ,v :e ~/.vimrc<CR> map ,F :view $VIMRUNTIME/filetype.vim map ,SO :source $VIMRUNTIME/syntax/ map ,V :view $VIMRUNTIME/syntax/ map <C-A> <Home> map <C-E> <End> " syntax coloring!! :-) syntax on " some colors: "white on black" hi comment ctermfg=darkgreen ctermbg=black guifg=darkgreen guibg=bla +ck " Make the status bar blue set t_mr=^[[0;1;37;44m " The bottom line is bold-white set t_me=^[[m " Shhhhh! set t_vb= " Mmmmm... tab completetion function! InsertTabWrapper(direction) let col = col('.') - 1 if !col || getline('.')[col - 1] !~ '\k' return "\<tab>" elseif "backward" == a:direction return "\<c-p>" else return "\<c-n>" endif endfunction inoremap <S-tab> <c-r>=InsertTabWrapper ("backward")<cr> inoremap <tab> <c-r>=InsertTabWrapper ("forward")<cr>

    There are some control/escape characters in this vimrc file. If you really want to use the whole thing, don't try to copy and paste this, just snag it from my website: Eric's vimrc.

    Have fun,

    Update: Oh yeah, and vim rules :-)

    Lucy: "What happens if you practice the piano for 20 years and then end up not being rich and famous?"
    Schroeder: "The joy is in the playing."
  • Log In?

    What's my password?
    Create A New User
    Domain Nodelet?
    Node Status?
    node history
    Node Type: note [id://166899]
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others having an uproarious good time at the Monastery: (5)
    As of 2022-05-26 15:37 GMT
    Find Nodes?
      Voting Booth?
      Do you prefer to work remotely?

      Results (93 votes). Check out past polls.