5 ms·
Split screen with same file :vsp Syntax highlighting :syntax on Tabs :tabnew Bracket matching :inoremap ( () :inoremap [ [] :inoremap { {} And so many
by tmallen 18y ago
Split screen with same file
:vsp
Syntax highlighting
:syntax on
Tabs
:tabnew
Bracket matching
:inoremap ( ()
:inoremap [ []
:inoremap { {}
And so many built-in tools...you really should take another look. I use TextMate on my Mac to churn out massive amounts of HTML, but any other editing happens in (G)Vim.
- avinashv 18y agoBefore you go overwriting pretty useful default functionality, check Vim's manual for what those do to see if it isn't more useful (I prefer the defaults).
- thomasmallen 18y agoWhat part of the help docs is about brace/parentheses matching? Everything I've seen online uses a simple key mapping like the ones I posted.
- coliveira 18y agouse :set showmatch
- thomasmallen 18y agoShowmatch is there to highlight matching braces, not to insert them. The mappings actually match your braces by writing the close brace/parens/bracket. Here are the coding aids from my vimrc. They're pretty simple, as I don't like to change how Vim works too much: " Coding aids set undolevels=5000 set backspace=indent,eol,start vnoremap < <gv vnoremap > >gv " Braces, etc. inoremap ( ()<LEFT> inoremap (<CR> (<CR>)<ESC>O inoremap () () inoremap { {}<LEFT> inoremap {<CR> {<CR>}<Esc>O inoremap {{ { inoremap [ []<LEFT> inoremap [<CR> [<CR>]<Esc>O inoremap [] [] " Wrap in braces, etc. vnoremap -( <ESC>`>a)<ESC>`<i(<ESC> vnoremap -[ <ESC>`>a]<ESC>`<i[<ESC> vnoremap -{ <ESC>`>a}<ESC>`<i{<ESC> vnoremap -" <ESC>`>a"<ESC>`<i"<ESC> vnoremap -' <ESC>`>a'<ESC>`<i'<ESC> " End the line, adding a semicolon inoremap <S-CR> <ESC>A;<ESC>o noremap <S-CR> A;<ESC>j I also use NERDCommenter for quick commenting, an XML tag wrapper script, and a tag closer script. As you can see above, typing the open/close pair doesn't result in "())", and typing an open brace plus a carriage return automatically adds the close brace to the line below, in the format: function hello($name) { // Insertion point } Edit: Of course, that isn't my entire .vimrc
- avinashv 18y agoNo idea, but I don't find that useful. I use :set showmatch, and a plugin called UnMtchBracket.vim (IIRC) that highlights any currently unmatched brackets. This is pretty personal, so I guess it's something you may want to at least give a try.