• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            sunrise

            每天不斷學(xué)習(xí),才能不斷提升自己。

              C++博客 :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              64 隨筆 :: 0 文章 :: 92 評論 :: 0 Trackbacks
            超簡單的vim配置高亮

            額,開始在網(wǎng)上搜了大量的方法來配置vim高亮,但是最后都沒有效果,最后一高人指點,火速的配好了。

                 配置步驟如下:

                 1.在終端下輸入vim .vimrc

                 2.將如下的內(nèi)容復(fù)制到新建的.vimrc中,也可以根據(jù)自己的喜歡將設(shè)置寫到自己建的.vimrc中,over.復(fù)制命令:cp .

            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "          _
            "      __ | \
            "     /   | /
            "     \__ | \
            " by Amix - http://amix.dk/
            "
            " Maintainer: Amir Salihefendic <amix3k at gmail.com>
            " Version: 2.7
            " Last Change: 12/10/06 00:09:21
            "
            " Sections:
            " ----------------------
            " General
            " Colors and Fonts
            " Fileformats
            " VIM userinterface
            "    Statusline
            " Visual
            " Moving around and tabs
            " General Autocommands
            " Parenthesis/bracket expanding
            " General Abbrevs
            " Editing mappings etc.
            " Command-line config
            " Buffer realted
            " Files and backups
            " Folding
            " Text options
            "    Indent
            " Spell checking
            " Plugin configuration
            "    Yank ring
            "    File explorer
            "    Minibuffer
            "    Tag list (ctags) - not used
            "    LaTeX Suite things
            " Filetype generic
            "    Todo
            "    VIM
            "    HTML related
            "    Ruby & PHP section
            "    Python section
            "    Cheetah section
            "    Vim section
            "    Java section
            "    JavaScript section
            "    C mappings
            "    SML
            "    Scheme bindings
            " Snippets
            "    Python
            "    javaScript
            " Cope
            " MISC
            "
            "  Tip:
            "   If you find anything that you can't understand than do this:
            "   help keyword OR helpgrep keywords
            "  Example:
            "   Go into command-line mode and type helpgrep nocompatible, ie.
            "   :helpgrep nocompatible
            "   then press <leader>c to see the results, or :botright cw
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""

            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " General
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Get out of VI's compatible mode..
            set nocompatible

            function! MySys()
            return "linux"
            endfunction

            "Set encoding, by veelion
            set fileencoding=utf-8
            set fileencodings=ucs-bom,utf-8,gb18030,default

            "Sets how many lines of history VIM har to remember
            set history=400

            "Enable filetype plugin
            filetype plugin on
            filetype indent on

            "Set to auto read when a file is changed from the outside
            set autoread

            "Have the mouse enabled all the time:
            "set mouse=a

            "Set mapleader
            let mapleader = ","
            let g:mapleader = ","

            "Fast saving
            nmap <leader>w :w!<cr>
            nmap <leader>f :find<cr>

            "Fast reloading of the .vimrc
            map <leader>s :source ~/vim_local/vimrc<cr>
            "Fast editing of .vimrc
            map <leader>e :e! ~/vim_local/vimrc<cr>
            "When .vimrc is edited, reload it
            autocmd! bufwritepost vimrc source ~/vim_local/vimrc


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Colors and Fonts
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Enable syntax hl
            syntax enable

            "Set font to Monaco 10pt
            if MySys() == "mac"
              set gfn=Bitstream\ Vera\ Sans\ Mono:h14
              set nomacatsui
              set termencoding=macroman
            elseif MySys() == "linux"
              set gfn=Monospace\ 11
            endif

            "if has("gui_running")
            "  set guioptions-=T
            "  let psc_style='cool'
            "  colorscheme default
            "else
            "  set background=dark
            "  colorscheme default
            "endif

            "Some nice mapping to switch syntax (useful if one mixes different languages in one file)
            map <leader>1 :set syntax=cheetah<cr>
            map <leader>2 :set syntax=xhtml<cr>
            map <leader>3 :set syntax=python<cr>
            map <leader>4 :set ft=javascript<cr>
            map <leader>$ :syntax sync fromstart<cr>

            autocmd BufEnter * :syntax sync fromstart

            "Highlight current
            if has("gui_running")
              set cursorline
              hi cursorline guibg=#333333
              hi CursorColumn guibg=#333333
            endif

            "Omni menu colors
            hi Pmenu guibg=#333333
            hi PmenuSel guibg=#555555 guifg=#ffffff


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Fileformats
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Favorite filetypes
            set ffs=unix,dos,mac

            nmap <leader>fd :se ff=dos<cr>
            nmap <leader>fu :se ff=unix<cr>



            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " VIM userinterface
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Set 7 lines to the curors - when moving vertical..
            set so=7

            "Turn on WiLd menu
            set wildmenu

            "Always show current position
            set ruler

            "The commandbar is 2 high
            set cmdheight=2

            "Show line number
            set nu

            "Do not redraw, when running macros.. lazyredraw
            set lz

            "Change buffer - without saving
            set hid

            "Set backspace
            set backspace=eol,start,indent

            "Bbackspace and cursor keys wrap to
            set whichwrap+=<,>,h,l

            "Ignore case when searching
            "set ignorecase
            set incsearch

            "Set magic on
            set magic

            "No sound on errors.
            set noerrorbells
            set novisualbell
            set t_vb=

            "show matching bracets
            set showmatch

            "How many tenths of a second to blink
            set mat=2

            "Highlight search things
            set hlsearch

              """"""""""""""""""""""""""""""
              " Statusline
              """"""""""""""""""""""""""""""
              "Always hide the statusline
              set laststatus=2

              function! CurDir()
                 let curdir = substitute(getcwd(), '/Users/amir/', "~/", "g")
                 return curdir
              endfunction

              "Format the statusline
              set statusline=\ %F%m%r%h\ %w\ \ CWD:\ %r%{CurDir()}%h\ \ \ Line:\ %l/%L:%c



            """"""""""""""""""""""""""""""
            " Visual
            """"""""""""""""""""""""""""""
            " From an idea by Michael Naumann
            function! VisualSearch(direction) range
              let l:saved_reg = @"
              execute "normal! vgvy"
              let l:pattern = escape(@", '\\/.*$^~[]')
              let l:pattern = substitute(l:pattern, "\n$", "", "")
              if a:direction == 'b'
                execute "normal ?" . l:pattern . "^M"
              else
                execute "normal /" . l:pattern . "^M"
              endif
              let @/ = l:pattern
              let @" = l:saved_reg
            endfunction

            "Basically you press * or # to search for the current selection !! Really useful
            vnoremap <silent> * :call VisualSearch('f')<CR>
            vnoremap <silent> # :call VisualSearch('b')<CR>


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Moving around and tabs
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Map space to / and c-space to ?
            map <space> /
            map <c-space> ?

            "Smart way to move btw. windows
            map <C-j> <C-W>j
            map <C-k> <C-W>k
            map <C-h> <C-W>h
            map <C-l> <C-W>l

            "Actually, the tab does not switch buffers, but my arrows
            "Bclose function ca be found in "Buffer related" section
            map <leader>bd :Bclose<cr>
            "map <down> <leader>bd
            "Use the arrows to something usefull
            map <right> :bn<cr>
            map <left> :bp<cr>

            "Tab configuration
            map <leader>tn :tabnew %<cr>
            map <leader>te :tabedit
            map <leader>tc :tabclose<cr>
            map <leader>tm :tabmove
            try
              set switchbuf=usetab
              set stal=4
            catch
            endtry

            "Moving fast to front, back and 2 sides ;)
            imap <m-$> <esc>$a
            imap <m-0> <esc>0i
            imap <D-$> <esc>$a
            imap <D-0> <esc>0i


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " General Autocommands
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Switch to current dir
            map <leader>cd :cd %:p:h<cr>


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Parenthesis/bracket expanding
            """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            vnoremap $1 <esc>`>a)<esc>`<i(<esc>
            ")
            vnoremap $2 <esc>`>a]<esc>`<i[<esc>
            vnoremap $3 <esc>`>a}<esc>`<i{<esc>
            vnoremap $$ <esc>`>a"<esc>`<i"<esc>
            vnoremap $q <esc>`>a'<esc>`<i'<esc>
            vnoremap $w <esc>`>a"<esc>`<i"<esc>

            "Map auto complete of (, ", ', [
            inoremap $1 ()<esc>:let leavechar=")"<cr>i
            inoremap $2 []<esc>:let leavechar="]"<cr>i
            inoremap $4 {<esc>o}<esc>:let leavechar="}"<cr>O
            inoremap $3 {}<esc>:let leavechar="}"<cr>i
            inoremap $q ''<esc>:let leavechar="'"<cr>i
            inoremap $w ""<esc>:let leavechar='"'<cr>i
            au BufNewFile,BufRead *.\(vim\)\@! inoremap " ""<esc>:let leavechar='"'<cr>i
            au BufNewFile,BufRead *.\(txt\)\@! inoremap ' ''<esc>:let leavechar="'"<cr>i

            imap <m-l> <esc>:exec "normal f" . leavechar<cr>a
            imap <d-l> <esc>:exec "normal f" . leavechar<cr>a


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " General Abbrevs
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "My information
            iab xdate <c-r>=strftime("%d/%m/%y %H:%M:%S")<cr>
            iab xname Amir Salihefendic


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Editing mappings etc.
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Remap VIM 0
            map 0 ^

            "Move a line of text using control
            nmap <M-j> mz:m+<cr>`z
            nmap <M-k> mz:m-2<cr>`z
            vmap <M-j> :m'>+<cr>`<my`>mzgv`yo`z
            vmap <M-k> :m'<-2<cr>`>my`<mzgv`yo`z

            if MySys() == "mac"
              nmap <D-j> <M-j>
              nmap <D-k> <M-k>
              vmap <D-j> <M-j>
              vmap <D-k> <M-k>
            endif

            func! DeleteTrailingWS()
              exe "normal mz"
              %s/\s\+$//ge
              exe "normal `z"
            endfunc
            autocmd BufWrite *.py :call DeleteTrailingWS()

            set completeopt=menu

            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Command-line config
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            func! Cwd()
              let cwd = getcwd()
              return "e " . cwd 
            endfunc

            func! DeleteTillSlash()
              let g:cmd = getcmdline()
              if MySys() == "linux" || MySys() == "mac"
                let g:cmd_edited = substitute(g:cmd, "\\(.*\[/\]\\).*", "\\1", "")
              else
                let g:cmd_edited = substitute(g:cmd, "\\(.*\[\\\\]\\).*", "\\1", "")
              endif
              if g:cmd == g:cmd_edited
                if MySys() == "linux" || MySys() == "mac"
                  let g:cmd_edited = substitute(g:cmd, "\\(.*\[/\]\\).*/", "\\1", "")
                else
                  let g:cmd_edited = substitute(g:cmd, "\\(.*\[\\\\\]\\).*\[\\\\\]", "\\1", "")
                endif
              endif
              return g:cmd_edited
            endfunc

            func! CurrentFileDir(cmd)
              return a:cmd . " " . expand("%:p:h") . "/"
            endfunc

            "Smart mappings on the command line
            cno $h e ~/
            cno $d e ~/Desktop/
            cno $j e ./

            cno $q <C-\>eDeleteTillSlash()<cr>

            cno $c e <C-\>eCurrentFileDir("e")<cr>

            cno $tc <C-\>eCurrentFileDir("tabnew")<cr>
            cno $th tabnew ~/
            cno $td tabnew ~/Desktop/

            "Bash like
            cnoremap <C-A>    <Home>
            cnoremap <C-E>    <End>
            cnoremap <C-K>    <C-U>


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Buffer realted
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Fast open a buffer by search for a name
            map <c-q> :sb

            "Open a dummy buffer for paste
            map <leader>q :e ~/buffer<cr>

            "Restore cursor to file position in previous editing session
            set viminfo='10,\"100,:20,%,n~/.viminfo
            au BufReadPost * if line("'\"") > 0|if line("'\"") <= line("$")|exe("norm '\"")|else|exe "norm $"|endif|endif

            " Buffer - reverse everything ... :)
            map <F9> ggVGg?

            " Don't close window, when deleting a buffer
            command! Bclose call <SID>BufcloseCloseIt()

            function! <SID>BufcloseCloseIt()
               let l:currentBufNum = bufnr("%")
               let l:alternateBufNum = bufnr("#")

               if buflisted(l:alternateBufNum)
                 buffer #
               else
                 bnext
               endif

               if bufnr("%") == l:currentBufNum
                 new
               endif

               if buflisted(l:currentBufNum)
                 execute("bdelete! ".l:currentBufNum)
               endif
            endfunction


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Files and backups
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Turn backup off
            set nobackup
            set nowb
            set noswapfile


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Folding
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Enable folding, I find it very useful
            set nofen
            set fdl=0


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Text options
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            set expandtab
            set shiftwidth=4

            map <leader>t2 :set shiftwidth=2<cr>
            map <leader>t4 :set shiftwidth=4<cr>
            au FileType html,python,vim,javascript setl shiftwidth=2
            au FileType html,python,vim,javascript setl tabstop=2
            au FileType java setl shiftwidth=4
            au FileType java setl tabstop=4

            set smarttab
            set lbr
            set tw=500

               """"""""""""""""""""""""""""""
               " Indent
               """"""""""""""""""""""""""""""
               "Auto indent
               set ai

               "Smart indet
               set si

               "C-style indeting
               set cindent

               "Wrap lines
               set wrap


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Spell checking
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            map <leader>sn ]s
            map <leader>sp [s
            map <leader>sa zg
            map <leader>s? z=


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Plugin configuration
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
               """"""""""""""""""""""""""""""
               " Vim Grep
               """"""""""""""""""""""""""""""
               let Grep_Skip_Dirs = 'RCS CVS SCCS .svn'
               let Grep_Cygwin_Find = 1

               """"""""""""""""""""""""""""""
               " Yank Ring
               """"""""""""""""""""""""""""""
               map <leader>y :YRShow<cr>

               """"""""""""""""""""""""""""""
               " File explorer
               """"""""""""""""""""""""""""""
               "Split vertically
               let g:explVertical=1

               "Window size
               let g:explWinSize=35

               let g:explSplitLeft=1
               let g:explSplitBelow=1

               "Hide some files
               let g:explHideFiles='^\.,.*\.class$,.*\.swp$,.*\.pyc$,.*\.swo$,\.DS_Store$'

               "Hide the help thing..
               let g:explDetailedHelp=0


               """"""""""""""""""""""""""""""
               " Minibuffer
               """"""""""""""""""""""""""""""
               let g:miniBufExplModSelTarget = 1
               let g:miniBufExplorerMoreThanOne = 2
               let g:miniBufExplModSelTarget = 0
               let g:miniBufExplUseSingleClick = 1
               let g:miniBufExplMapWindowNavVim = 1
               let g:miniBufExplVSplit = 25
               let g:miniBufExplSplitBelow=1

               let g:bufExplorerSortBy = "name"

               autocmd BufRead,BufNew :call UMiniBufExplorer


               """"""""""""""""""""""""""""""
               " Tag list (ctags) - not used
               """"""""""""""""""""""""""""""
               "let Tlist_Ctags_Cmd = "/sw/bin/ctags-exuberant"
               "let Tlist_Sort_Type = "name"
               "let Tlist_Show_Menu = 1
               "map <leader>t :Tlist<cr>


               """"""""""""""""""""""""""""""
               " LaTeX Suite things
               """"""""""""""""""""""""""""""
               set grepprg=grep\ -nH\ $*
               let g:Tex_DefaultTargetFormat="pdf"
               let g:Tex_ViewRule_pdf='xpdf'

               "Bindings
               autocmd FileType tex map <silent><leader><space> :w!<cr> :silent! call Tex_RunLaTeX()<cr>

               "Auto complete some things ;)
               autocmd FileType tex inoremap $i \indent
               autocmd FileType tex inoremap $* \cdot
               autocmd FileType tex inoremap $i \item
               autocmd FileType tex inoremap $m \[<cr>\]<esc>O


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Filetype generic
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
               """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
               " Todo
               """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
               au BufNewFile,BufRead *.todo so ~/vim_local/syntax/amido.vim

               """"""""""""""""""""""""""""""
               " VIM
               """"""""""""""""""""""""""""""
               autocmd FileType vim map <buffer> <leader><space> :w!<cr>:source %<cr>


               """"""""""""""""""""""""""""""
               " HTML related
               """"""""""""""""""""""""""""""
               " HTML entities - used by xml edit plugin
               let xml_use_xhtml = 1
               "let xml_no_auto_nesting = 1

               "To HTML
               let html_use_css = 1
               let html_number_lines = 0
               let use_xhtml = 1


               """"""""""""""""""""""""""""""
               " Ruby & PHP section
               """"""""""""""""""""""""""""""
               autocmd FileType ruby map <buffer> <leader><space> :w!<cr>:!ruby %<cr>
               autocmd FileType php compiler php
               autocmd FileType php map <buffer> <leader><space> <leader>cd:w<cr>:make %<cr>


               """"""""""""""""""""""""""""""
               " Python section
               """"""""""""""""""""""""""""""
               "Run the current buffer in python - ie. on leader+space
               "au FileType python so ~/vim_local/syntax/python.vim
               autocmd FileType python map <buffer> <leader><space> :w!<cr>:!python %<cr>
               "autocmd FileType python so ~/vim_local/plugin/python_fold.vim

               "Set some bindings up for 'compile' of python
               autocmd FileType python set makeprg=python\ -c\ \"import\ py_compile,sys;\ sys.stderr=sys.stdout;\ py_compile.compile(r'%')\"
               autocmd FileType python set efm=%C\ %.%#,%A\ \ File\ \"%f\"\\,\ line\ %l%.%#,%Z%[%^\ ]%\\@=%m

               "Python iMaps
               au FileType python set cindent
               au FileType python inoremap <buffer> $r return
               au FileType python inoremap <buffer> $s self
               au FileType python inoremap <buffer> $c ##<cr>#<space><cr>#<esc>kla
               au FileType python inoremap <buffer> $i import
               au FileType python inoremap <buffer> $p print
               au FileType python inoremap <buffer> $d """<cr>"""<esc>O

               "Run in the Python interpreter
               function! Python_Eval_VSplit() range
                 let src = tempname()
                 let dst = tempname()
                 execute ": " . a:firstline . "," . a:lastline . "w " . src
                 execute ":!python " . src . " > " . dst
                 execute ":pedit! " . dst
               endfunction
               au FileType python vmap <F7> :call Python_Eval_VSplit()<cr>

               """"""""""""""""""""""""""""""
               " Cheetah section
               """""""""""""""""""""""""""""""
               autocmd FileType cheetah set ft=xml
               autocmd FileType cheetah set syntax=cheetah

               """""""""""""""""""""""""""""""
               " Vim section
               """""""""""""""""""""""""""""""
               autocmd FileType vim set nofen

               """""""""""""""""""""""""""""""
               " Java section
               """""""""""""""""""""""""""""""
               au FileType java inoremap <buffer> <C-t> System.out.println();<esc>hi

               "Java comments
               autocmd FileType java source ~/vim_local/macros/jcommenter.vim
               autocmd FileType java let b:jcommenter_class_author='Amir Salihefendic (amix@amix.dk)'
               autocmd FileType java let b:jcommenter_file_author='Amir Salihefendic (amix@amix.dk)'
               autocmd FileType java map <buffer> <F2> :call JCommentWriter()<cr>

               "Abbr'z
               autocmd FileType java inoremap <buffer> $pr private
               autocmd FileType java inoremap <buffer> $r return
               autocmd FileType java inoremap <buffer> $pu public
               autocmd FileType java inoremap <buffer> $i import
               autocmd FileType java inoremap <buffer> $b boolean
               autocmd FileType java inoremap <buffer> $v void
               autocmd FileType java inoremap <buffer> $s String

               "Folding
               function! JavaFold()
                 setl foldmethod=syntax
                 setl foldlevelstart=1
                 syn region foldBraces start=/{/ end=/}/ transparent fold keepend extend
                 syn match foldImports /\(\n\?import.\+;\n\)\+/ transparent fold

                 function! FoldText()
                   return substitute(getline(v:foldstart), '{.*', '{...}', '')
                 endfunction
                 setl foldtext=FoldText()
               endfunction
               au FileType java call JavaFold()
               au FileType java setl fen

               au BufEnter *.sablecc,*.scc set ft=sablecc

               """"""""""""""""""""""""""""""
               " JavaScript section
               """""""""""""""""""""""""""""""
               au FileType javascript so ~/vim_local/syntax/javascript.vim
               function! JavaScriptFold()
                 setl foldmethod=syntax
                 setl foldlevelstart=1
                 syn region foldBraces start=/{/ end=/}/ transparent fold keepend extend

                 function! FoldText()
                   return substitute(getline(v:foldstart), '{.*', '{...}', '')
                 endfunction
                 setl foldtext=FoldText()
               endfunction
               au FileType javascript call JavaScriptFold()
               au FileType javascript setl fen

               au FileType javascript imap <c-t> console.log();<esc>hi
               au FileType javascript imap <c-a> alert();<esc>hi
               au FileType javascript setl nocindent
               au FileType javascript inoremap <buffer> $r return

               au FileType javascript inoremap <buffer> $d //<cr>//<cr>//<esc>ka<space>
               au FileType javascript inoremap <buffer> $c /**<cr><space><cr>**/<esc>ka


               """"""""""""""""""""""""""""""
               " HTML
               """""""""""""""""""""""""""""""
               au FileType html,cheetah set ft=xml
               au FileType html,cheetah set syntax=html


               """"""""""""""""""""""""""""""
               " C mappings
               """""""""""""""""""""""""""""""
               autocmd FileType c map <buffer> <leader><space> :w<cr>:!gcc %<cr>


               """""""""""""""""""""""""""""""
               " SML
               """""""""""""""""""""""""""""""
               autocmd FileType sml map <silent> <buffer> <leader><space> <leader>cd:w<cr>:!sml %<cr>


               """"""""""""""""""""""""""""""
               " Scheme bidings
               """"""""""""""""""""""""""""""
               autocmd BufNewFile,BufRead *.scm map <buffer> <leader><space> <leader>cd:w<cr>:!petite %<cr>
               autocmd BufNewFile,BufRead *.scm inoremap <buffer> <C-t> (pretty-print )<esc>i
               autocmd BufNewFile,BufRead *.scm vnoremap <C-t> <esc>`>a)<esc>`<i(pretty-print <esc>


               """"""""""""""""""""""""""""""
               " SVN section
               """""""""""""""""""""""""""""""
               map <F8> :new<CR>:read !svn diff<CR>:set syntax=diff buftype=nofile<CR>gg


            """"""""""""""""""""""""""""""
            " Snippets
            """""""""""""""""""""""""""""""
               "You can use <c-j> to goto the next <++> - it is pretty smart ;)

               """""""""""""""""""""""""""""""
               " Python
               """""""""""""""""""""""""""""""
               autocmd FileType python inorea <buffer> cfun <c-r>=IMAP_PutTextWithMovement("def <++>(<++>):\n<++>\nreturn <++>")<cr>
               autocmd FileType python inorea <buffer> cclass <c-r>=IMAP_PutTextWithMovement("class <++>:\n<++>")<cr>
               autocmd FileType python inorea <buffer> cfor <c-r>=IMAP_PutTextWithMovement("for <++> in <++>:\n<++>")<cr>
               autocmd FileType python inorea <buffer> cif <c-r>=IMAP_PutTextWithMovement("if <++>:\n<++>")<cr>
               autocmd FileType python inorea <buffer> cifelse <c-r>=IMAP_PutTextWithMovement("if <++>:\n<++>\nelse:\n<++>")<cr>


               """""""""""""""""""""""""""""""
               " JavaScript
               """""""""""""""""""""""""""""""
               autocmd FileType cheetah,html,javascript inorea <buffer> cfun <c-r>=IMAP_PutTextWithMovement("function <++>(<++>) {\n<++>;\nreturn <++>;\n}")<cr>
               autocmd filetype cheetah,html,javascript inorea <buffer> cfor <c-r>=IMAP_PutTextWithMovement("for(<++>; <++>; <++>) {\n<++>;\n}")<cr>
               autocmd FileType cheetah,html,javascript inorea <buffer> cif <c-r>=IMAP_PutTextWithMovement("if(<++>) {\n<++>;\n}")<cr>
               autocmd FileType cheetah,html,javascript inorea <buffer> cifelse <c-r>=IMAP_PutTextWithMovement("if(<++>) {\n<++>;\n}\nelse {\n<++>;\n}")<cr>


               """""""""""""""""""""""""""""""
               " HTML
               """""""""""""""""""""""""""""""
               autocmd FileType cheetah,html inorea <buffer> cahref <c-r>=IMAP_PutTextWithMovement('<a href="<++>"><++></a>')<cr>
               autocmd FileType cheetah,html inorea <buffer> cbold <c-r>=IMAP_PutTextWithMovement('<b><++></b>')<cr>
               autocmd FileType cheetah,html inorea <buffer> cimg <c-r>=IMAP_PutTextWithMovement('<img src="<++>" alt="<++>" />')<cr>
               autocmd FileType cheetah,html inorea <buffer> cpara <c-r>=IMAP_PutTextWithMovement('<p><++></p>')<cr>
               autocmd FileType cheetah,html inorea <buffer> ctag <c-r>=IMAP_PutTextWithMovement('<<++>><++></<++>>')<cr>
               autocmd FileType cheetah,html inorea <buffer> ctag1 <c-r>=IMAP_PutTextWithMovement("<<++>><cr><++><cr></<++>>")<cr>


               """""""""""""""""""""""""""""""
               " Java
               """""""""""""""""""""""""""""""
               autocmd FileType java inorea <buffer> cfun <c-r>=IMAP_PutTextWithMovement("public<++> <++>(<++>) {\n<++>;\nreturn <++>;\n}")<cr>
               autocmd FileType java inorea <buffer> cfunpr <c-r>=IMAP_PutTextWithMovement("private<++> <++>(<++>) {\n<++>;\nreturn <++>;\n}")<cr>
               autocmd FileType java inorea <buffer> cfor <c-r>=IMAP_PutTextWithMovement("for(<++>; <++>; <++>) {\n<++>;\n}")<cr>
               autocmd FileType java inorea <buffer> cif <c-r>=IMAP_PutTextWithMovement("if(<++>) {\n<++>;\n}")<cr>
               autocmd FileType java inorea <buffer> cifelse <c-r>=IMAP_PutTextWithMovement("if(<++>) {\n<++>;\n}\nelse {\n<++>;\n}")<cr>
               autocmd FileType java inorea <buffer> cclass <c-r>=IMAP_PutTextWithMovement("class <++> <++> {\n<++>\n}")<cr>
               autocmd FileType java inorea <buffer> cmain <c-r>=IMAP_PutTextWithMovement("public static void main(String[] argv) {\n<++>\n}")<cr>


               "Presse c-q insted of space (or other key) to complete the snippet
               imap <C-q> <C-]>


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " Cope
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "For Cope
            map <silent> <leader><cr> :noh<cr>

            "Orginal for all
            map <leader>n :cn<cr>
            map <leader>p :cp<cr>
            map <leader>c :botright cw 10<cr>
            map <c-u> <c-l><c-j>:q<cr>:botright cw 10<cr>


            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            " MISC
            """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
            "Remove the Windows ^M
            noremap <Leader>m mmHmt:%s/<C-V><cr>//ge<cr>'tzt'm

            "Paste toggle - when pasting something in, don't indent.
            set pastetoggle=<F3>

            "Remove indenting on empty lines
            map <F2> :%s/\s*$//g<cr>:noh<cr>''

            "Super paste #veelion
            "inoremap <C-v> <esc>:set paste<cr>mui<C-R>+<esc>mv'uV'v=:set nopaste<cr>

            "A function that inserts links & anchors on a TOhtml export.
            " Notice:
            " Syntax used is:
            " Link
            " Anchor
            function! SmartTOHtml()
               TOhtml
               try
                %s/&quot;\s\+\*&gt; \(.\+\)</" <a href="#\1" style="color: cyan">\1<\/a></g
                %s/&quot;\(-\|\s\)\+\*&gt; \(.\+\)</" \&nbsp;\&nbsp; <a href="#\2" style="color: cyan;">\2<\/a></g
                %s/&quot;\s\+=&gt; \(.\+\)</" <a name="\1" style="color: #fff">\1<\/a></g
               catch
               endtry
               exe ":write!"
               exe ":bd"
            endfunction

            posted on 2012-03-15 14:12 SunRise_at 閱讀(6065) 評論(0)  編輯 收藏 引用

            只有注冊用戶登錄后才能發(fā)表評論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            香蕉久久夜色精品升级完成| 久久亚洲2019中文字幕| 久久性精品| 国产午夜精品理论片久久影视| 久久91精品国产91久| 久久国产精品99精品国产| 性欧美丰满熟妇XXXX性久久久 | 免费一级欧美大片久久网| 久久精品国产91久久综合麻豆自制| 久久超碰97人人做人人爱| 精品久久久久久亚洲精品| 国产麻豆精品久久一二三| 久久精品午夜一区二区福利| 无码国内精品久久人妻蜜桃| 色综合久久中文字幕无码| 久久婷婷国产综合精品| www.久久热.com| 久久综合狠狠色综合伊人| 国产成人精品久久亚洲高清不卡| 国产69精品久久久久99尤物| 久久99精品国产麻豆蜜芽| 伊人 久久 精品| 狠狠综合久久综合88亚洲| 午夜精品久久久久久久久| 97久久精品无码一区二区| 91秦先生久久久久久久| 午夜精品久久久内射近拍高清 | 久久天堂电影网| 国内精品伊人久久久久影院对白 | 国产精品免费久久久久电影网| 久久99精品久久久久久不卡| 国产精品成人久久久| 久久精品亚洲日本波多野结衣 | 好久久免费视频高清| 精品人妻伦九区久久AAA片69 | 久久精品国产2020| 久久AV高清无码| 无码人妻久久一区二区三区蜜桃| 久久男人Av资源网站无码软件| 精品久久人人做人人爽综合| 一本久久a久久精品vr综合|