• <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>
            面對現實,超越自己
            逆水行舟,不進則退
            posts - 269,comments - 32,trackbacks - 0
              1 #=============================================================================
              2  本文轉自: http://blog.csdn.net/tge7618291


                 下載地址1:http://www.vim.org/scripts/script_search_results.php
                 下載地址2:http://www.vim.org/scripts/index.php

              8
            #=============================================================================
              9 1. 查看 key 相關信息說明的命令  :help keycodes
             10
             11 #=============================================================================
             12 2. ctags
             13 (1). 幫助手冊查看
             14     :help usr_29
             15
             16 (2). 功能
             17     ctags的功能, 只要在unix/linux環境編程過的人都知道它的歷害! 我在這也作個小
             18     小介紹吧ndow=0: 對瀏覽代碼非常的方便, 可以在函數, 變量之間跳來跳去等等.(注
             19             意: 我這里說到的僅是小小的一部分!).
             20
             21 (3). 安裝
             22     首先, 下載ctags安裝包, 然后解壓并安裝, 命令如下:
             23     $ tar -xzvf ctags-5.6.tar.gz
             24     $ cd ctags-5.6
             25     $ make
             26     # make install   // 需要root權限
             27         或:
             28         $ tar -xzvf ctags-5.7.tar.gz
             29         $ cd ctags-5.7
             30         $ ./configure
             31         # make
             32         # make install
             33
             34
             35 (4). 使用方法
             36     然后去你的源碼目錄, 如果你的源碼是多層的目錄, 就去最上層的目錄, 在該目錄下
             37     運行命令: ctags -R
             38     我現在以 vim71 的源碼目錄做演示
             39     $ cd /home/nuoerll/vim71
             40     $ ctags -R
             41     
             42     此時在/home/nuoerll/vim71目錄下會生成一個 tags 文件, 現在用vim打開
             43     /home/nuoerll/vim71/src/main.c
             44     $ vim /home/nuoerll/vim71/src/main.c
             45     
             46     再在vim中運行命令:
             47     :set tags=/home/nuoerll/vim71/tags
             48     該命令將tags文件加入到vim中來, 你也可以將這句話放到~/.vimrc中去, 如果你經
             49     常在這個工程編程的話.
             50     對于經常在不同工程間編程, 可以在.vimrc中設置:
             51         set tags=tags;    // ; 不能沒有
             52         set autochdir
             53
             54 (5). 使用例子
             55     把光標定位到某一函數名上, 按下 Ctar + ], vim就可以自動切換到該函數定義處!
             56     要返回只需要按下Ctrl + t .
             57     更多用法, 在vim命令模式輸入 :help usr_29 查看即可.
             58
             59
             60 #=============================================================================
             61 3. TagList 插件
             62 (1). 幫助手冊查看
             63     :help taglist.txt
             64
             65 (2). 功能
             66     高效地瀏覽源碼, 其功能就像vc中的workpace, 那里面列出了當前文件中的所有宏,
             67     全局變量, 函數名等.
             68
             69 (3). 安裝
             70     下載taglist壓縮包, 然后把解壓的兩個文件taglist.vim 和 taglist.txt 分別放到
             71     $HOME/.vim/plugin 和 $HOME/.vim/doc 目錄中.
             72
             73 (4). 使用方法
             74     首先請先在你的~/.vimrc文件中添加下面語句:
             75         let Tlist_Ctags_Cmd='/bin/ctags'   // 若在windows中應寫成: let/
             76                             Tlist_Ctags_Cmd='ctags.exe'
             77         let Tlist_Show_One_File=1
             78         let Tlist_OnlyWindow=1
             79         let Tlist_Use_Right_Window=0
             80         let Tlist_Sort_Type='name'
             81         let Tlist_Exit_OnlyWindow=1
             82         let Tlist_Show_Menu=1
             83         let Tlist_Max_Submenu_Items=10
             84         let Tlist_Max_Tag_length=20
             85         let Tlist_Use_SingleClick=0
             86         let Tlist_Auto_Open=0
             87         let Tlist_Close_On_Select=0
             88         let Tlist_File_Fold_Auto_Close=1
             89         let Tlist_GainFocus_On_ToggleOpen=0
             90         let Tlist_Process_File_Always=1
             91         let Tlist_WinHeight=10
             92         let Tlist_WinWidth=18
             93         let Tlist_Use_Horiz_Window=0
             94
             95     
             96     此時用vim打開一個c源文件試試:
             97     $ vim ~/vim/src/main.c
             98     
             99     進入vim后用下面的命令打開taglist窗口.
            100     :Tlist
            101
            102     為了更方便地使用, 可以在.vimrc文件中加入:
            103         map <silent> <leader>tl :TlistToggle<CR>
            104     這樣就可以用 ",tl" 命令進行taglist窗口的打開和關閉之間方便切換了. // 這里
            105     的","是我.vimrc設置的leader, 你也可以設置成別的, 在.vimrc中修改即可, 如我
            106     的: let mapleader=","
            107         
            108     
            109 #=============================================================================
            110 4. WinManager 插件
            111 (1). 幫助手冊查看
            112     :help winmanager
            113
            114 (2). 功能
            115     管理各個窗口, 或者說整合各個窗口.
            116
            117 (3). 安裝
            118     下載WinManager.zip壓縮包, 解壓后把*.vim文件放到 $HOME/.vim/plugin 目錄中,
            119     把*.txt文件放到 $HOME/.vim/doc 目錄中.
            120
            121 (4). 使用方法
            122     在.vimrc中加入如下設置:
            123     let g:winManagerWindowLayout='FileExplorer|BufExplorer'  // 這里可以設置/
            124     為多個窗口, 如'FileExplorer|BufExplorer|TagList'
            125     let g:persistentBehaviour=0             // 只剩一個窗口時, 退出vim.
            126     let g:winManagerWidth=20
            127     let g:defaultExplorer=1
            128     nmap <silent> <leader>fir :FirstExplorerWindow<cr>
            129     nmap <silent> <leader>bot :BottomExplorerWindow<cr>
            130     nmap <silent> <leader>wm :WMToggle<cr>
            131
            132 (5). 使用例子
            133     在終端輸入vim啟動vim:
            134     $vim
            135     在正常模式下, 敲入 ",wm" 即可看到, vim的左側新建了兩個窗口:FileExplorer和
            136     BufExplorer, 這樣我們即可在FileExplorer窗口很方便地對目錄進行查看, 編輯等
            137     操作; 在BufExplorer窗口中查看當前vim已經打開那些文件.
            138
            139
            140 #=============================================================================
            141 5. cscope
            142 (1). 幫助手冊查看
            143     :help if_cscop.txt
            144
            145 (2). 功能
            146     用Cscope自己的話說 - "你可以把它當做是超過頻的ctags", 其功能和強大程度可見
            147     一斑吧, 關于它的介紹我就不詳細說了, 如果你安裝好了前文介紹的幫助手冊.
            148
            149 (3). 安裝
            150     如果是在linux環境中, cscope一般都會隨系統一起安裝了; 在windows環境中, 則需
            151     要下載windows版本的(cscope.exe), 然后把它放到path環境變量所設
            152     置的目錄中(如: C:/Program Files/Vim/vim72).
            153
            154 (4). 使用方法
            155     在.vimrc中增加如下設置, 就可以利用相應的快捷鍵進行不同的查找了.
            156         if has("cscope")
            157             set cscopetag   " 使支持用 Ctrl+]  和 Ctrl+t 快捷鍵在代碼間跳來跳去
            158             " check cscope for definition of a symbol before checking ctags:
            159             " set to 1 if you want the reverse search order.
            160             set csto=1
            161
            162             " add any cscope database in current directory
            163             if filereadable("cscope.out")
            164                 cs add cscope.out
            165             " else add the database pointed to by environment variable
            166             elseif $CSCOPE_DB !=""
            167                 cs add $CSCOPE_DB
            168             endif
            169
            170             " show msg when any other cscope db added
            171             set cscopeverbose
            172
            173             nmap <C-/>s :cs find s <C-R>=expand("<cword>")<CR><CR>
            174             nmap <C-/>g :cs find g <C-R>=expand("<cword>")<CR><CR>
            175             nmap <C-/>c :cs find c <C-R>=expand("<cword>")<CR><CR>
            176             nmap <C-/>t :cs find t <C-R>=expand("<cword>")<CR><CR>
            177             nmap <C-/>e :cs find e <C-R>=expand("<cword>")<CR><CR>
            178             nmap <C-/>f :cs find f <C-R>=expand("<cfile>")<CR><CR>
            179             nmap <C-/>i :cs find i ^<C-R>=expand("<cfile>")<CR>$<CR>
            180             nmap <C-/>d :cs find d <C-R>=expand("<cword>")<CR><CR>
            181         endif
            182
            183 (5). 使用例子
            184     首先進入源碼目錄, 在linux終端中輸入以下命令以創建cscope數據庫:
            185         $ find ~/work/..Project/ -name "*.h" -o -name "*.cpp" > cscope.files
            186         $ cscope -bkq -i cscope.files
            187     如果是在windows環境中, 則換成如下命令:
            188         dir /s /b *.cpp *.h > cscope.files
            189         cscope -b -q -k -i cscope.files
            190
            191     然后, 用vim打開一個源文件(如: vim main.cpp),
            192     打開后, 第一件事就是導入cscope數據庫了:
            193         :cs add /home/yourname/workpace/cscope.out /home/yourname/workpace
            194
            195     cscope數據庫導入成功后, 就可以利用"步驟(4)"中定義的快捷鍵進行相關的查找,
            196     瀏覽等操作了(當然也可以直接利用相關命令, 嘿嘿).
            197
            198 #=============================================================================
            199 5. c.vim 插件
            200 (1). 幫助手冊查看
            201     help csupport
            202
            203 (2). 功能
            204     C/C++-IDE for Vim/gVim. 簡單的說, 就是如果安裝配置好后, vim/gvim就是一個
            205     c/c++編程的一個IDE, 其功能堪比windows里常用的vc.
            206
            207 (3). 安裝
            208     下載cvim.zip壓縮包后, 把壓縮包copy到 $HOME/.vim 目錄(windows下, copy 到
            209             C:/Program Files/Vim/vimfiles)下解壓, 即可.
            210         unzip cvim.zip    // 解壓命令
            211         
            212 (4). 使用方法
            213     安裝好后就可以直接用了, 具體例子看"使用例子".
            214     
            215 (5). 使用例子
            216     在終端用vim打開一個c文件:
            217         $vim hello.c
            218     進入vim, 敲入 "/im" 即可發現一個main函數框架就這樣快捷簡單完美地寫出.    
            219
            220     我比效常用的的操作有(第一列為命令, 第二列為說明, 第三列為該命令所支持的模
            221             式(n:普通模式, v:可視模式, i:插入模式):
            222           -- Help -----------------------------------------------
            223           /hm       show manual for word under the cursor(n,i)
            224           /hp       show plugin help                      (n,i)
            225
            226           -- Comments -------------------------------------------
            227           /cl       end-of-line comment                 (n,v,i)
            228           /cj       adjust end-of-line comment(s)      (n,v,i)
            229           /cs       set end-of-line comment column      (n)
            230           /c*       code -> comment /* */               (n,v)
            231           /cc       code -> comment //                  (n,v)
            232           /co       comment -> code                     (n,v)
            233           /cfr      frame comment                       (n,i)
            234           /cfu      function comment                    (n,i)
            235           /cme      method description                  (n,i)
            236           /ccl      class description                  (n,i)
            237           /cd       date                                (n,v,i)
            238           /ct       date /& time                        (n,v,i)
            239
            240           -- Statements ------------------------------------------
            241           /sd       do { } while                        (n,v,i)
            242           /sfo      for { }                            (n,v,i)
            243           /sife     if { } else { }                    (n,v,i)
            244           /se       else { }                            (n,v,i)
            245           /swh      while { }                          (n,v,i)
            246           /ss       switch                              (n,v,i)
            247
            248           -- Preprocessor -----------------------------------------
            249           /p<       #include <>                        (n,i)
            250           /p''      #include ""                        (n,i)
            251           /pd       #define                            (n,i)
            252           /pu       #undef                              (n,i)
            253           /pie      #if  #else #endif                  (n,v,i)
            254           /pid      #ifdef #else #endif                (n,v,i)
            255           /pin      #ifndef #else #endif                (n,v,i)
            256           /pind     #ifndef #def #endif                (n,v,i)
            257           /pi0      #if 0 #endif                        (n,v,i)
            258           /pr0      remove #if 0 #endif                (n,i)
            259           /pe       #error                              (n,i)
            260           /pl       #line                              (n,i)
            261           /pp       #pragma                            (n,i)
            262
            263           -- Idioms ------------------------------------------------
            264           /if       function                            (n,v,i)
            265           /isf      static function                    (n,v,i)
            266           /im       main()                              (n,v,i)
            267           /i0       for( x=0; x<n; x+=1 )              (n,v,i)
            268           /in       for( x=n-1; x>=0; x-=1 )            (n,v,i)
            269           /ie       enum   + typedef                    (n,i)
            270           /is       struct + typedef                    (n,i)
            271           /iu       union  + typedef                    (n,i)
            272           /ip       printf()                            (n,i)
            273           /isc      scanf()                            (n,i)
            274           /ica      p=calloc()                          (n,i)
            275           /ima      p=malloc()                          (n,i)
            276           /isi      sizeof()                            (n,v,i)
            277           /ias      assert()                            (n,v)
            278           /ii       open input file                    (n,i)
            279           /io       open output file                    (n,i)
            280
            281           -- Snippets ------------------------------------------------
            282           /nr       read code snippet                  (n,i)
            283           /nw       write code snippet                  (n,v,i)
            284           /ne       edit code snippet                  (n,i)
            285           /np       pick up prototype                  (n,v,i)
            286           /ni       insert prototype(s)                (n,i)
            287           /nc       clear  prototype(s)                (n,i)
            288           /ns       show   prototype(s)                (n,i)
            289           /ntl      edit local templates                (n,i)
            290           /ntg      edit global templates              (n,i)
            291           /ntr      rebuild templates                  (n,i)
            292
            293           -- C++ ----------------------------------------------------
            294           /+co      cout  <<  << endl;                  (n,i)
            295           /+c       class                              (n,i)
            296           /+cn      class (using new)                   (n,i)
            297           /+ci      class implementation                (n,i)
            298           /+cni     class (using new) implementation    (n,i)
            299           /+mi      method implementation              (n,i)
            300           /+ai      accessor implementation            (n,i)
            301
            302           /+tc      template class                      (n,i)
            303           /+tcn     template class (using new)          (n,i)
            304           /+tci     template class implementation      (n,i)
            305           /+tcni    template class (using new) impl.    (n,i)
            306           /+tmi     template method implementation      (n,i)
            307           /+tai     template accessor implementation    (n,i)
            308
            309           /+tf      template function                  (n,i)
            310           /+ec      error class                        (n,i)
            311           /+tr      try ... catch                      (n,v,i)
            312           /+ca      catch                              (n,v,i)
            313           /+c.      catch(...)                          (n,v,i)
            314
            315           -- Run ---------------------------------------------------
            316           /rc       save and compile                    (n,i)
            317           /rl       link                                (n,i)
            318           /rr       run                                (n,i)
            319           /ra       set comand line arguments          (n,i)
            320           /rm       run make                            (n,i)
            321           /rg       cmd. line arg. for make            (n,i)
            322           /rp       run splint                          (n,i)
            323           /ri       cmd. line arg. for splint          (n,i)
            324           /rk       run CodeCheck (TM)                  (n,i)
            325           /re       cmd. line arg. for CodeCheck(TM)   (n,i)
            326           /rd       run indent                          (n,v,i)
            327           /rh       hardcopy buffer                    (n,v,i)
            328           /rs       show plugin settings                (n,i)
            329           /rx       set xterm size                      (n, only Linux/UNIX & GUI)
            330           /ro       change output destination          (n,i)
            331                 
            332     關于此插件的更多功能和各種說明, 請查看幫助手冊, help csupport.
            333
            334             
            335 #=============================================================================
            336 6. omnicppcoplete 插件
            337 (1). 幫助手冊查看
            338     :help omnicppcoplete
            339 (2). 功能
            340     實現像vc那樣的代碼自動補全功能, 比如 this-><Ctrl+X><Ctrl+O> 后, 將出現一個
            341     提示框, 其中包含了this指針所有可以接收的函數或數據成員等.
            342 (3). 安裝
            343     把下載下來的 omnicppcoplete-0.41.zip 壓縮包copy到 $HOME/.vim/(windows 復
            344             制到 C:/Program Files/Vim/vimfiles ), 然后解壓, 即可.
            345 (4). 使用方法
            346     在.vimrc中添加以下兩條語句:
            347         set nocp   "不兼容vi
            348         filetype plugin on  "開啟文件類型識別功能
            349     進入c++源碼目錄, 在終端執行命令 ctags -R --c++-kinds=+p --fields=+iaS
            350     --extra=+q .
            351 (5). 使用例子
            352     編寫c++代碼時, 如要自動補全, 敲入 Ctrl+X Ctrl+O, 即可在出現的提示框中用
            353     Ctrl+N 選擇符合要求的.
            354
            355
            356 #=============================================================================
            357 7. a.vim插件
            358 (1). 幫助手冊查看
            359     這個插件沒有幫助手冊, 不過大可放心使用, 其提供的功能也不是很多, 就幾條命令
            360     , 但是用起來真的是很方便.
            361 (2). 功能
            362     在 .h 和 .c/.cpp 文件中切換. (英文原句 "A few of quick commands to swtich
            363             between source files and header files quickly.")
            364 (3). 安裝
            365     把下載到的a.vim插件放到 $HOME/.vim/plugin 目錄下, 即可.
            366 (4). 使用方法
            367     只要在vim中輸入以下命令即可完成相應的功能:
            368         :A switches to the header file corresponding to the current file being
            369             edited (or vise versa)
            370         :AS splits and switches
            371         :AV vertical splits and switches
            372         :AT new tab and switches
            373         :AN cycles through matches
            374         :IH switches to file under cursor
            375         :IHS splits and switches
            376         :IHV vertical splits and switches
            377         :IHT new tab and switches
            378         :IHN cycles through matches
            379         <Leader>ih switches to file under cursor
            380         <Leader>is switches to the alternate file of file under cursor(e.g.
            381                 on  <foo.h> switches to foo.cpp)
            382         <Leader>ihn cycles through matches
            383
            384 #=============================================================================
            385 8. VisualMark.vim插件
            386 (1). 幫助手冊查看
            387     這個插件沒有幫助手冊, 不過大可放心使用, 其提供的功能也不是很多, 就幾條命令
            388     , 但是用起來真的是很方便.
            389 (2). 功能
            390     高亮書簽.
            391 (3). 安裝
            392     把下載好的VisualMark.vim插件放到 $HOME/.vim/plugin 目錄下, 即可.
            393 (4). 使用方法
            394     只要在vim中執行以下命令即可完成相應的功能:
            395          1.  For gvim, use "Ctrl + F2" to toggle a visual mark.
            396              For both vim and gvim, use "mm" to toggle a visual mark.
            397          2.  Use "F2" to navigate through the visual marks forward in the
            398          file.
            399          3.  Use "Shift + F2" to navigate backwards.
            400
            401 #=============================================================================
            402 9. Mark.vim插件
            403 (1). 幫助手冊查看
            404      這個插件沒有幫助手冊, 不過大可放心使用, 其提供的功能也不是很多, 就幾條命
            405      令, 但是用起來真的是很方便.
            406
            407 (2). 功能
            408      這個插件與vim中自帶的'*'與'#'非常相像. 不同之處是: vim中的'*'與'#'命令只
            409      能同時高亮一個同類詞組(或正則表達式的搜索結果), 而Mark.vim插件可以同時高
            410      亮多個.
            411
            412 (3). 安裝
            413     把下載好的Mark.vim插件放到 $HOME/.vim/plugin 目錄中, 即可.
            414
            415 (4). 使用方法
            416     /m      mark or unmark the word under (or before) the cursor
            417     /r      manually input a regular expression. 用于搜索.
            418     /n      clear this mark (i.e. the mark under the cursor), or clear all
            419             highlighted marks .
            420     /*      把光標向前切換到當前被Mark的MarkWords中的下一個MarkWord.
            421     /#      把光標向后切換到當前被Mark的MarkWords中的上一個MarkWord.
            422     //      把光標向前切換到所有被Mark的MarkWords中的下一個MarkWord.
            423     /?      把光標向后切換到所有被Mark的MarkWords中的上一個MarkWord.
            424
            425         說明: 這些命令中的 '/' 是 vim 中的 mapleader, 你也可以設置為別的: 如,
            426         若要設置為 ',', 把下面這條語句加到.vimrc文件中, 即可,
            427             let mapleader=","
            428
            429
            430 #=============================================================================
            431 10. code_complete.vim插件
            432 (1). 幫助手冊查看
            433 (2). 功能
            434      函數參數提示.
            435
            436 (3). 安裝
            437      下載code_complete.vim插件放到 C:/Program Files/Vim/vimfiles 目錄中, 即可.
            438
            439 (4). 使用方法
            440      進入源碼目錄, 執行如下命令:
            441      ctags -R --c-kinds=+p --fields=+S .
            442
            443 (5). 使用例子
            444 " Usage:
            445 "           hotkey:
            446 "              "<tab>" (default value of g:completekey)
            447 "               Do all the jobs with this key, see
            448 "           example:
            449 "               press <tab> after function name and (
            450 "                 foo ( <tab>
            451 "               becomes:
            452 "                 foo ( /<first param>`,/<second param>` )
            453 "               press <tab> after code template
            454 "                 if <tab>
            455 "               becomes:
            456 "                 if( /<...>` )
            457 "                 {
            458 "                     /<...>`
            459 "                 }
            460
            461
            462 #=============================================================================
            463 11. autoproto.vim
            464 Using this script, typing ``(`` will result in (|), where | is the cursor
            465         position and the double backticks are just marking input. Typing a
            466         ``)`` will move the cursor outside the parens. This moving outside
            467 works even in nested scenarios. Typing ``if(my_array['key`` results in
            468         if(my_array['key|']) and ``)`` gets you if(my_array['key'])|.
            469
            470 The paired characters are: [, (, {, ", ';   //"
            471
            472 If you like this script, you should also check out surround.vim
            473
            474
            475
            476
            477 #=============================================================================
            478 12. pyclewn
            479 pyclewn在unix, windows下的安裝方法:
            480 http://pyclewn.wiki.sourceforge.net/install+
            481
            482 下載安裝python
            483 http://www.python.org/download/
            484
            485 python補丁(pywin32-212.win32-py2.6.txt)(對pyclewn)下載安裝
            486 http://sourceforge.net/project/platformdownload.php?group_id=78018
            487
            488 下載安裝MimGW或Cywin
            489
            490 下載安裝pyclewn
            491 http://sourceforge.net/project/showfiles.php?group_id=212808
            492
            493 (1). 幫助手冊查看
            494 (2). 功能
            495 (3). 安裝
            496 (4). 使用方法
            497 (5). 使用例子
            498
            499
            500 #=============================================================================
            501 13. project.vim
            502 (1). 幫助手冊查看
            503     :help project.txt
            504
            505 (2). 功能
            506     組織管理工程, 方便于瀏覽, 打開, 查找文件等.
            507
            508 (3). 安裝
            509     下載project.vim壓縮包(如: project.gz), 然后把解壓的兩個文件project.vim 和
            510     project.txt 分別放到 $HOME/.vim/plugin 和 $HOME/.vim/doc 目錄中.
            511
            512 (4). 使用方法
            513     在.vimrc中加入以下設置:
            514         // 切換打開和關閉project窗口
            515         nmap <silent> <Leader>P <Plug>ToggleProject
            516         //插件項目窗口寬度.    默認值: 24
            517         let g:proj_window_width=20 //當按空格鍵 <space> 或者單擊鼠標左鍵/
            518                                 <LeftMouse>時項目窗口寬度增加量,默認值:100
            519         let g:proj_window_increment=90
            520         let g:proj_flags='i'    //當選擇打開一個文件時會在命令行顯示文件名和當
            521                                 前工作路徑.
            522         let g:proj_flags='m'    //在常規模式下開啟 |CTRL-W_o| 和
            523                                 |CTRL-W_CTRL_O| 映射, 使得當前緩沖區成為唯一可
            524                                 見的緩沖區, 但是項目窗口仍然可見.
            525         let g:proj_flags='s'    //開啟語法高亮.
            526         let g:proj_flags='t'    //用按 <space> 進行窗口加寬.
            527         let g:proj_flags='c'    //設置后, 在項目窗口中打開文件后會自動關閉項目
            528                                 窗口.
            529         //let g:proj_flags='F'   //顯示浮動項目窗口. 關閉窗口的自動調整大小和窗
            530                                 口替換.
            531         let g:proj_flags='L'    //自動根據CD設置切換目錄.
            532         //let g:proj_flags='n'    //顯示行號.
            533         let g:proj_flags='S'    //啟用排序.
            534         let g:proj_flags='T'    //子項目的折疊在更新時會緊跟在當前折疊下方顯示(
            535                                 而不是其底部).
            536         let g:proj_flags='v'    //設置后將, 按 /G 搜索時用 :vimgrep 取代 :grep.
            537         //let g:proj_run1='!p4 edit %f'    //g:proj_run1 ...  g:proj_run9 用法.
            538         let g:proj_run3='silent !gvim %f'
            539
            540 (5). 使用例子
            541     1. 在源碼目錄下建立一個工程文件: exampleProject
            542         $ gvim exampleProject
            543
            544     2. 在exampleProject文件中定入:
            545        MyProject="E:/desktop_item/tmp/0virtual/nehe2/LVHM/test" CD=. flag=r
            546        filter="*akefile*" {
            547         Header file=. CD=. flag=r filter="*.h" {
            548         }
            549         Source file=. CD=. flag=r filter="*.cpp" {
            550         }
            551        }
            552
            553     3. 在光標定位到第一行, 敲入:
            554         /R
            555        exampleProject文件改變, 如下:
            556              MyProject="E:/desktop_item/tmp/0virtual/nehe2/LVHM/test" CD=./
            557                              flag=r filter="*akefile*" {
            558               makefile
            559               Header file=. CD=. flag=r filter="*.h" {
            560                MainFrm.h
            561                Resource.h
            562                StdAfx.h
            563                test.h
            564                testDoc.h
            565                testView.h
            566               }
            567               Source file=. CD=. flag=r filter="*.cpp" {
            568                MainFrm.cpp
            569                StdAfx.cpp
            570                test.cpp
            571                testDoc.cpp
            572                testView.cpp
            573               }
            574              }
            575
            576     4. 小測一下:
            577         把光標某個文件名上, 敲下 Enter 可以看到, 對應的文件在左邊的窗口顯示出
            578         來.
            579
            580     5. 更多用法參考.vimrc的相關設置的說明或 help project.txt 查找幫助.
            581
            582
            583 #=============================================================================
            584 14. NERD_tree.vim
            585 (1). 幫助手冊查看
            586     help NERD_tree
            587
            588 (2). 功能
            589     目錄樹, 同時還可以對文件進行打開操作等.
            590
            591 (3). 安裝
            592     下載NERD_tree壓縮包, 然后把解壓的兩個文件NERD_tree.vim 和 NERD_tree.txt 分
            593     別放到$HOME/.vim/plugin 和 $HOME/.vim/doc 目錄中.
            594
            595 (4). 使用方法
            596
            597 (5). 使用例子
            598     // let loaded_nerd_tree=1    // 禁用所有與NERD_tree有關的命令
            599     nmap <silent> <leader>tto :NERDTreeToggle<cr>
            600     let NERDTreeIgnore=['/.vim$','/~$']    // 不顯示指定的類型的文件
            601     let NERDTreeShowHidden=0    // 不顯示隱藏文件(好像只在linux環境中有效)
            602     let NERDTreeSortOrder=['//$','/.cpp$','/.c$','/.h$', '*']    // 排序
            603     let NERDTreeCaseSensitiveSort=0     // 不分大小寫排序
            604     let NERDTreeWinSize=30
            605     // let NERDTreeShowLineNumbers=1
            606     let NERDTreeShowBookmarks=1
            607     let NERDTreeQuitOnOpen=1    // 打開文件后, 關閉NERDTrre窗口
            608     // let NERDTreeHighlightCursorline=1     // 高亮NERDTrre窗口的當前行
            609     // nmap <silent> <leader>tmk :Bookmark expand(/"<cword>/")<cr>
            610
            611
            612 #=============================================================================
            613 15. NERD_commenter.vim
            614 (1). 幫助手冊查看
            615     help NERD_commenter.
            616
            617 (2). 功能
            618     源碼文檔注釋.
            619
            620 (3). 安裝
            621     下載NERD_commenter壓縮包, 然后把解壓的兩個文件NERD_commenter.vim 和
            622     NERD_commenter.txt 分別放到$HOME/.vim/plugin 和 $HOME/.vim/doc 目錄中.
            623
            624 (4). 使用方法
            625 (5). 使用例子
            626     " let NERD_java_alt_style=1
            627     " Default mapping: [count],cc  " 以行為單位進行注釋.
            628     " ,c<space>    " comment <--> uncomment.
            629     " ,cm          " 以段作為單位進行注釋.
            630     " ,cs          " 簡潔美觀式注釋.
            631     " ,cy          " Same as ,cc except that the commented line(s) are yanked first.
            632     " ,c$          " 注釋當前光標到行未的內容.
            633     " ,cA          " 在行尾進行手動輸入注釋內容.
            634     " ,ca          " 切換注釋方式(/**/ <--> //).
            635     " ,cl          " Same cc, 并且左對齊.
            636     " ,cb          " Same cc, 并且兩端對齊.
            637     " ,cu          " Uncomments the selected line(s).
            638
            639
            640 #=============================================================================
            641 16. sketch.vim   用鼠標作畫
            642 map <silent> <leader>ske :call ToggleSketch()<CR>
            643
            644
            645
            646
            647 #=============================================================================
            648 17. Calendar.vim
            649 map <silent> <leader>cal :Calendar<cr>
            650 map <silent> <leader>cah :CalendarH<cr>
            651
            652
            653
            654 #=============================================================================
            655 18. DoxygenToolkit.vim
            656 (1). 代碼文檔工具
            657 let g:DoxygenToolkit_commentType = "C"
            658 let g:DoxygenToolkit_briefTag_pre="@Synopsis  "
            659 let g:DoxygenToolkit_paramTag_pre="@Param"
            660 let g:DoxygenToolkit_returnTag="@Returns  "
            661 let g:DoxygenToolkit_blockHeader="--------------------------------------------------------------------------"
            662 let g:DoxygenToolkit_blockFooter="----------------------------------------------------------------------------"
            663 let g:DoxygenToolkit_authorName="Mathias Lorente"
            664 let g:DoxygenToolkit_licenseTag="My own license"
            665
            666
            667
            668 #=============================================================================
            669 19. cpp.vim
            670 (1). c/c++類名, 函數等高亮
            671 install details
            672 Make a backup copy of syntax/vim.cpp and overwrite syntax/vim.cpp with this file.
            673
            674
            675
            676 #=============================================================================
            677 20. javacomplete.vim
            678 (1). 幫助手冊查看
            679     :help javacomplete.txt
            680 (2). 功能
            681     進行java類, 包, 方法等補全.
            682 (3). 安裝
            683     1. 下載, 解壓, 把相應的文件copy到相應的目錄下.
            684     2. 對Reflection.java進行編譯, 編譯命令為:
            685         javac -source 1.4 Reflection.java
            686     3. 把編譯生成的Reflection.class文件移動到vim的$HOME目錄下.(注意是移動, 而
            687             不是復制, 最好保證系統中只有一個Reflection.class文件, 且在vim的
            688             $HOME目錄下.)
            689     4. 在.vimrc中加入:
            690         setlocal completefunc=javacomplete#CompleteParamsInfo
            691         autocmd FileType c set omnifunc=ccomplete#Complete
            692         autocmd FileType css set omnifunc=csscomplete#CompleteCSS
            693         autocmd FileType html set omnifunc=htmlcomplete#CompleteTags
            694         autocmd FileType java set omnifunc=javacomplete#Complete
            695         autocmd FileType javascript set omnifunc=javascriptcomplete#CompleteJS
            696         autocmd FileType php set omnifunc=phpcomplete#CompletePHP
            697         autocmd FileType python set omnifunc=pythoncomplete#Complete
            698         autocmd FileType xml set omnifunc=xmlcomplete#CompleteTags
            699 (4). 使用方法
            700 (5). 使用例子
            701      Math.<C-X><C-O>
            702
            703
            704
            705 #=============================================================================
            706 21. JumpInCode_Plus.vim
            707 (1). 幫助手冊查看
            708     http://www.vim.org/scripts/script.php?script_id=2862
            709
            710 (2). 功能
            711     <leader>jc  Generate tags and cscope database from current directory to :
            712                    CurrentDirectory/OutDB/cscope.out,tags
            713     <leader>jst       list existed tags full name and choose tags
            714     <leader>jsc      list existed cscope database full name and choose cscope.out
            715
            716 (3). 安裝
            717     把JumpInCode_Plus.vim 放到 $VIM/vimfiles/plugin
            718
            719 (4). 使用方法
            720 (5). 使用例子
            721
            722
            723
            724 #=============================================================================
            725 22. txtbrowser.zip
            726 (1). 幫助手冊查看
            727     http://www.vim.org/scripts/script.php?script_id=2899
            728     http://guoyoooping.blog.163.com/blog/static/1357051832009112910162389/
            729     :help txtbrowser
            730
            731 (2). 功能
            732        show the document map and syntax highlight in plain text.
            733
            734 (3). 安裝
            735     :help txtbrowser
            736     1. 請首先安裝taglist插件(http://www.vim.org/scripts/script.php?script_id=273),
            737     我相信玩Vim的沒有幾個人沒有安裝這個插件吧.
            738
            739     2. 下載插件后解壓縮到目錄$HOME/.vim(或$HOME/vimfiles, $VIM/vimfiles). 然后將解壓后
            740     的.ctag, 剪切到$HOME目錄下即可, 安裝完成后你的文件夾下應該有下面的幾個文件(請
            741     注意目錄結構):
            742         $HOME/.ctags - 用于標題標簽的生成.
            743         $HOME/.vim/syntax/txt.vim - .txt文件的語法高亮文件.
            744         $HOME/.vim/plugin/txtbrowser.vim - 瀏覽工具.
            745         $HOME/.vim/doc/txtbrowser.txt - 英文幫助文檔.
            746         $HOME/.vim/doc/txtbrowser.cnx - 中文幫助文檔.(別忘了打開然后執行
            747                           ":helptags ."生成標簽)
            748     由于版本1.1.1之前采用老的插件名, 請在安裝前先刪除低版本插件(主要是幫助文件, 原來的
            749     名字叫txt.txt和txt_cn.txt), 否則在安裝新的幫助文檔時會提示標簽已經存在..
            750
            751     3. 在你的.vimrc文件里加入下面三行, 然后重啟你的Vim:
            752         syntax on
            753         let tlist_txt_settings = 'txt;c:content;f:figures;t:tables'
            754         au BufRead,BufNewFile *.txt setlocal ft=txt
            755
            756     4. 本插件所有文件以fenc=utf8發布. 簽于taglist對中文的支持有限, 你需要保證你的文
            757     檔的enc值和fenc的值相等(例如, enc=cp936, fenc=cp936). 如果不等請將fenc的值設為
            758     相應的enc的值保(如:set fenc=cp936)存后并刷新(:TlistUpdate).
            759
            760 (4). 使用方法
            761     :help txtbrowser
            762 (5). 使用例子
            763
            764
            765
            766 #=============================================================================
            767 23.  FindMate.vim
            768 (1). 幫助手冊查看
            769     help FindMate
            770     http://www.vim.org/scripts/script.php?script_id=2871
            771
            772 (2). 功能
            773     快速查找文件
            774
            775 (3). 安裝
            776     下載FindMate壓縮包, 然后把解壓的兩個文件FindMate.vim 和 FindMate.txt 分別放到
            777     $HOME/.vim/plugin 和 $HOME/.vim/doc 目錄中.
            778
            779 (4). 使用方法
            780         You can launch FindMate by typing:
            781               ,, File_name
            782         Or
            783               :FindMate File_name
            784         The shortcut can be redefined by using:
            785               map your_shortcut   <Plug>FindMate
            786         In your .vimrc file
            787
            788 (5). 使用例子
            789
            790
            791
            792
            793 #=============================================================================
            794 24. ZoomWin.vim
            795 (1). 幫助手冊查看
            796     http://www.vim.org/scripts/script.php?script_id=508
            797
            798 (2). 功能
            799     Press <c-w>o : the current window zooms into a full screen
            800     Press <c-w>o again: the previous set of windows is restored
            801
            802 (3). 安裝
            803     Press <c-w>o : the current window zooms into a full screen
            804     Press <c-w>o again: the previous set of windows is restored
            805
            806 (4). 使用方法
            807 (5). 使用例子
            808
            809
            810
            811 #=============================================================================
            812 25. cpp_src.tar.bz2
            813     tags for std c++ (STL, streams, ...) : Modified libstdc++ headers for use with ctags
            814 (1). 幫助手冊查看
            815     http://www.vim.org/scripts/script.php?script_id=2358
            816
            817 (2). 功能
            818 (3). 安裝
            819     install details:
            820     1. unpack
            821     2. run
            822         $ ctags -R --c++-kinds=+p --fields=+iaS --extra=+q --language-force=C++ cpp_src
            823         $ mv tags cpp # or whatever
            824     3. In Vim:
            825         set tags+=/my/path/to/tags/cpp
            826
            827 (4). 使用方法
            828 (5). 使用例子
            829
            830
            831
            832
            833 #=============================================================================
            834 26. grep.vim
            835 (1). 幫助手冊查看
            836     http://www.vim.org/scripts/script.php?script_id=311
            837
            838 (2). 功能
            839     The grep plugin integrates the grep, fgrep, egrep, and agrep tools with
            840     Vim and allows you to search for a pattern in one or more files and jump
            841     to them.
            842
            843 (3). 安裝
            844     1).
            845     To use this plugin, you need the grep, fgrep, egrep, agrep, find and
            846     xargs utilities. These tools are present in most of the Unix installations.
            847     For MS-Windows systems, you can download the GNU grep and find utilities
            848     from the following sites:
            849        http://gnuwin32.sourceforge.net/packages/grep.htm
            850        http://gnuwin32.sourceforge.net/packages/findutils.htm 
            851     2).
            852     把下載得到的grep.vim復制到 $HOME/plugin 目錄中.
            853
            854 (4). 使用方法
            855     :Grep
            856
            857 (5). 使用例子
            858
            859 #=============================================================================
            860 27. autocomplpop.zip
            861 (1). 幫助手冊查看
            862     :help acp
            863     http://www.vim.org/scripts/script.php?script_id=1879
            864
            865 (2). 功能
            866     With this plugin, your vim comes to automatically opens popup menu for
            867     completions when you enter characters or move the cursor in Insert mode. It
            868     won't prevent you continuing entering characters.
            869
            870 (3). 安裝
            871     autocomplpop.zip
            872     mv plugin/acp.vim $HOME/.vim/plugin/acp.vim
            873     mv autoload/acp.vim $HOME/.vim/autoload/acp.vim
            874     mv doc/acp.jax $HOME/.vim/doc/acp.jax
            875     mv doc/acp.txt $HOME/.vim/doc/acp.txt
            876     
            877 (4). 使用方法
            878     Once this plugin is installed, auto-popup is enabled at startup by default.
            879     Which completion method is used depends on the text before the cursor. The
            880     default behavior is as follows:
            881         kind      filetype    text before the cursor ~
            882         Keyword   *           two keyword characters
            883         Filename  *           a filename character + a path separator
            884                               +0 or more filename character
            885         Omni      ruby        ".", "::" or non-word character + ":"
            886                               (|+ruby| required.)
            887         Omni      python      "."(|+python| required.)
            888         Omni      xml         "<", "</" or("<" + non-">" characters + " ")
            889         Omni      html/xhtml  "<", "</" or("<" + non-">" characters + " ")
            890         Omni      css         (":", ";", "{", "^", "@", or "!")
            891                               +0 or 1 space
            892
            893 (5). 使用例子
            894
            895
            896
            897
            898
            899
            900
            901
            902
            903
            904
            905
            906
            907
            908
            909
            910
            911 #=============================================================================
            912 " http://www.vim.org/scripts/script.php?script_id=1638  " SourceCodeObedience
            913 " http://www.vim.org/scripts/script.php?script_id=1581  " lookupfile
            914 " http://insenvim.sourceforge.net/index.php  

            posted on 2012-11-09 13:59 王海光 閱讀(955) 評論(0)  編輯 收藏 引用 所屬分類: Linux
            久久久久久久久久久精品尤物| 99久久99久久久精品齐齐 | 久久电影网2021| 久久天天日天天操综合伊人av| 狠狠色丁香婷婷久久综合| MM131亚洲国产美女久久| 久久国产乱子伦精品免费午夜| 亚洲中文字幕久久精品无码喷水| 久久婷婷国产麻豆91天堂| 久久人人爽人人人人片av| 91超碰碰碰碰久久久久久综合| 中文字幕无码久久人妻| 亚洲一区二区三区日本久久九| 97精品国产97久久久久久免费| 久久国产成人精品国产成人亚洲| 亚洲va国产va天堂va久久| 久久99久久成人免费播放| 国产婷婷成人久久Av免费高清| 99久久综合国产精品免费 | 国内精品久久国产| 久久se精品一区二区影院| 俺来也俺去啦久久综合网| 无码久久精品国产亚洲Av影片| 日日狠狠久久偷偷色综合96蜜桃 | 久久久国产视频| 欧美午夜A∨大片久久 | 久久精品国产久精国产一老狼| 99久久精品久久久久久清纯| 久久国产亚洲精品无码| 日日躁夜夜躁狠狠久久AV| 伊人久久大香线蕉亚洲五月天 | 26uuu久久五月天| 国产高潮久久免费观看| 国产激情久久久久影院小草| 中文字幕一区二区三区久久网站| 久久精品国产免费一区| 日本久久久精品中文字幕| 国产69精品久久久久9999| 久久精品成人| 久久婷婷五月综合97色直播| 久久天天躁狠狠躁夜夜不卡|