普通方式安裝javascript
sudo apt-get install vimphp
sudo apt-get install vim-gtk vim-doc cscopehtml
編譯安裝7.3穩定版:www.kukaka.org/home/showonews/344java
編譯安裝7.3最新版:www.kukaka.org/home/showonews/370vim
普通安裝方式卸載eclipse
sudo apt-get remove --purge vim (--purge 是徹底刪除,會連配置文件一塊兒刪除)編輯器
sudo apt-get remove --purge vim-gtk vim-doc cscopesvn
sudo apt-get clean函數
編譯安裝方式卸載工具
進入以前編譯安裝時的目錄:make uninstall
Linux 下 vim 默認配置文件 /etc/vim/vimrc
用戶默認配置文件 ~/.vimrc
若是想一次配置,全部用戶都能使用,那就修改 /etc/vim/vimrc,若是隻想當前用戶可使用,則修改 ~/.vimrc
在進行PHP應用開發時,同時編輯多個文件是很正常的事情。因此必須有一個方便的目錄導航工具,以便在目錄結構間快速切換,找到須要編輯的文件。
vim中提供該類功能的插件不少,比較知名的有project、winmanager等。但筆者我的認爲最好用的仍是The NERD Tree這個插件。NERDTree不但能夠顯示完整的目錄樹結構,還能夠將任何一個目錄設置爲根目錄。而且提供了目錄導航的書籤功能,可謂很是方便。
下載地址:http://www.vim.org/scripts/script.php?script_id=1658
下載文件:NERD_tree.zip
解壓縮時,要把壓縮包中的目錄結構完整的解壓縮到 ~/.vim/ 目錄中。完成後,應該分別找到 ~/.vim/doc/NERD_tree.txt 文件和 ~/.vim/plugin/NERD_tree.vim 文件。而後在vim中輸入命令: helptags ~/.vim/doc,將NERDTree的幫助文檔添加到vim中。
如今,命令模式下輸入:NERDTreeToggle即可打開或關閉NERDTree
注意:使用過程當中,你可能會由於刪除一個文件夾,而沒有刪除這個文件夾所綁定的標籤,出現如下錯誤
NERDTree: 1 invalid bookmarks w...
解決:打開~/.vim/.NERDTreeBookmarks,刪除裏面無用的標籤便可。
解決了目錄和文件導航問題,咱們還要爲代碼之間的跳轉提供輔助手段,taglist就是這樣一個插件。taglist能夠列出已打開文件中定義的類、函數、常量,甚至變量。
下載地址:http://www.vim.org/scripts/script.php?script_id=273
下載文件:taglist_45.zip
壓縮包須要完整解壓縮到 ~/.vim/ 目錄,而且用:helptags ~/.vim/doc命令索引taglist插件的幫助文檔。
taglist插件須要依賴ctags程序才能工做。目前經常使用的ctags版本是Exuberant Ctags。
下載地址:http://ctags.sourceforge.net/
下載文件:ctags-5.8.tar.gz
解壓ctags:tar -zxcf ctags-5.8.tar.gz
進入ctags:cd ctags-5.8
打上PHP補丁(不然按下ctrl+n,連基本的function include等函數都出不來):
wget http://svn.bitflux.ch/repos/public/misc/ctags-php5.patch
編譯安裝:
./configure
make
sudo make install
通過這三步後就生成 /usr/local/bin/ctags
繼續回來修改~/.vim/plugin/taglist.vim
在 if !exists('loaded_taglist')上面加入
let Tlist_Ctags_Cmd="/usr/local/bin/ctags"
或加在~/.vim/.vimrc文件,只要能讓vim開啓時加載的*.vim文件便可
此時Ctags和Taglist已經結合起來,再用vim編輯php文件, 執行 :TlistToggle 就會在右邊出現一個當前文件的 類 函數 變量 等東西
還記得咱們使用netbeans eclipse等大型開發工具的時候嗎,按着 ctrl + 鼠標左鍵 點擊一個函數,就會跳轉到該函數定義處,他其實也是使用的tags跟蹤跳轉,只不過他們會自動去掃描源碼目錄,生成一個tags文件(是否曾經爲netbeans沒完沒了的掃描崩潰過?),而vim須要咱們本身去生成這個tags。這個功能對代碼跟蹤很是有好處,下面咱們就來實現他
在相應的源碼目錄運行ctags -R產生相應的tags文件
cd ~/www/mysite
ctags -R *
打開vim
:cd ~/www/mysite
:set tags=tags
如今,咱們設置好了tags選項,接下來咱們使用它,咱們先來查找一個名叫make_html的方法:
方法一:
:tag make_html
若是make_html方法的定義只存在一個文件中你會看到VIM打開了該文件,並把光標定位到make_html方法所在行上。
若是make_html方法的定義存在多個文件中,會提示:
找到 tag:1 / 14 或更多
這時咱們能夠列出保護這個方法的全部文件
:tselect "顯示列表
這時會列出全部文件,讓咱們選擇一個文件打開
# pri kind tag 文件
> 1 F C f make_html function/my_function.php
2 F f make_html xxx/xxx.php
鍵入數字和回車(empty cacels) :
根據提示輸入咱們想查看的文件對應的序號而後回車就能夠了。
:tn "顯示後一個tag到的PHP文件
:tp "顯示前一個tag到的PHP文件
:tags "顯示標籤棧
咱們還能夠把鼠標停留在想要跳轉的 類 函數 變量 上面,而後按 ctrl + ] ,回到原來位置是 ctrl + t
方法二:
把鼠標停留在 make_html 上面,而後按ctrl+],怎麼樣,和直接輸入:tag make_html 是如出一轍的吧
如今,咱們已經跳轉到make_html函數的定義處,看到了函數的詳細定義,明確知道如何使用這個函數了,那怎麼回到原來的位置呢,答案是按 ctrl+o 返回。
細心的朋友可能會發現,做爲一個強大的IDE,還應該解決如下幾個問題:
1.左邊目錄樹結構不變。
2.代碼塊註釋,刪除註釋。
3.代碼塊縮進,刪除縮進。
解決問題:
1.通常狀況下,咱們會以標籤的方式打開一個文件(讓光標停留在一個要打開的文件上,按 t ),此時左邊沒有目錄樹,輸入 :NERDTreeToggle打開目錄樹,此目錄樹爲新建的,和第一個文件的目錄樹結構不一樣,這不符合咱們普通IDE的習慣,還記得咱們用 Netbeans之類的編輯器嗎?左邊的目錄書結構一直沒變,實際上是全部文件共享一顆樹的緣由,NERDTree也容許咱們共享樹,命令是 :NERDTreeMirror,結合Tlist,個人快捷方式定義以下:
如今,看看我寫代碼的習慣:
首先,打開vi編輯器。
按 F2 打開目錄樹
把光標停留在須要創建標籤的文件夾上, :Bookmark 收藏名。
之後只須要 打開目錄樹,Shift+B打開收藏標籤,雙擊一下想打開的標籤,再按一次Shift+B關閉收藏標籤。
鼠標選中須要打開的文件,按 F4 快捷鍵 ,此時,vi會先執行 t (標籤方式打開文件),再執行:NERDTreeMirror共享第一棵樹,後面一串是爲了保持以前打開的文件便籤仍是顯示文件名用的。
怎麼樣,效果和大型IDE差很少了吧。
2.代碼塊註釋,刪除註釋
註釋:ctrl+v 進入列編輯模式,向上或向下移動光標,把須要註釋的行的開頭標記起來,而後按大寫的I,再插入註釋符,好比"//",再按Esc,就會所有註釋了。
刪除:ctrl+v 進入列編輯模式,選中註釋部分,而後按d,就會刪除註釋符號。
3.代碼塊縮進,刪除縮進。
縮進:選擇須要縮進的代碼行(鍵盤鼠標均可以,選中了就行),>(shift+.)
刪除:選擇須要縮進的代碼行(鍵盤鼠標均可以,選中了就行),<(shift+,)
下面兩個放在~/.vim/plugin/下
MY_keymap.vim 鍵盤映射
MY_taglist.vim taglist插件配置