• <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>

            牽著老婆滿街逛

            嚴(yán)以律己,寬以待人. 三思而后行.
            GMail/GTalk: yanglinbo#google.com;
            MSN/Email: tx7do#yahoo.com.cn;
            QQ: 3 0 3 3 9 6 9 2 0 .

            Ubuntu下的C/C++環(huán)境搭建

            我用的是Ubuntu的Server版本,安裝是很容易的,非常之簡單,不過安裝之后的操作系統(tǒng)幾乎是一個空白的操作系統(tǒng),幾乎什么都沒有,所以都得安裝好。

            因為是Dapper (6.06) 版本,所以我用以下方法更換軟件源:

            vim /etc/apt/sources.list

            用以下內(nèi)容替換文件中的所有內(nèi)容

            deb http://archive.ubuntu.com/ubuntu/ dapper main restricted universe multiverse
            deb http://archive.ubuntu.com/ubuntu/ dapper-security main restricted universe multiverse
            deb http://archive.ubuntu.com/ubuntu/ dapper-updates main restricted universe multiverse
            deb http://archive.ubuntu.com/ubuntu/ dapper-backports main restricted universe multiverse
            deb http://ubuntu.cn99.com/ubuntu-cn/ dapper main restricted universe multiverse

            這里你也可以直接使用更快速的ubuntu.cn99.com的源(推薦):
            deb http://ubuntu.cn99.com/ubuntu/ dapper main restricted universe multiverse
            deb http://ubuntu.cn99.com/ubuntu/ dapper-updates main restricted universe multiverse
            deb http://ubuntu.cn99.com/ubuntu/ dapper-security main restricted universe multiverse
            deb http://ubuntu.cn99.com/ubuntu/ dapper-backports main restricted universe multiverse
            deb http://ubuntu.cn99.com/ubuntu-cn/ dapper main restricted universe multiverse

            這里你還可以使用速度也非常快的的mirror.lupaworld.com的源:
            deb http://mirror.lupaworld.com/ubuntu/archive/ dapper main restricted universe multiverse
            deb http://mirror.lupaworld.com/ubuntu/archive/ dapper-security main restricted universe multiverse
            deb http://mirror.lupaworld.com/ubuntu/archive/ dapper-updates main restricted universe multiverse
            deb http://mirror.lupaworld.com/ubuntu/archive/ dapper-backports main restricted universe multiverse
            deb http://mirror.lupaworld.com/ubuntu/ubuntu-cn/ dapper main restricted universe multiverse

            如果是教育網(wǎng)用戶推薦使用上海交通大學(xué)的源:
            deb http://ftp.sjtu.edu.cn/ubuntu/ dapper main multiverse restricted universe
            deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-backports main multiverse restricted universe
            deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-proposed main multiverse restricted universe
            deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-security main multiverse restricted universe
            deb http://ftp.sjtu.edu.cn/ubuntu/ dapper-updates main multiverse restricted universe
            deb http://ftp.sjtu.edu.cn/ubuntu-cn/ dapper bleeding main multiverse restricted universe

            教育網(wǎng)用戶也推薦使用清華大學(xué)計算機系學(xué)生科協(xié)的源:
            deb http://mirror.net9.org/ubuntu/ dapper main multiverse restricted universe
            deb http://mirror.net9.org/ubuntu/ dapper-backports main multiverse restricted universe
            deb http://mirror.net9.org/ubuntu/ dapper-proposed main multiverse restricted universe
            deb http://mirror.net9.org/ubuntu/ dapper-security main multiverse restricted universe
            deb http://mirror.net9.org/ubuntu/ dapper-updates main multiverse restricted universe
            deb http://mirror.net9.org/ubuntu-cn/ dapper main multiverse restricted universe

            保存編輯好的文件
            sudo apt-get update


            剛裝好的系統(tǒng)的root是進不去的,需要更改密碼:
            sudo passwd root

            反正是內(nèi)網(wǎng)用,所以就直接用root了,sudo太麻煩!

            接下來安裝SSH用以遠(yuǎn)程登陸:
            apt-get install ssh

            OK,接著裝編譯器:

            apt-get install gcc
            apt-get install make
            apt-get install autoconf
            apt-get install automake
            apt-get install libtool
            apt-get install gdb
            apt-get install g++

            編輯器,我偏好使用vim,就裝上了它
            apt-get install vim
            默認(rèn)下,vim是沒有語法染色的,
            修改/etc/vim/vimrc
            只要把syntax on的注釋去掉就可以了。

            想要讓vim好用,還需要安裝一些必須的插件,這里我引用兩篇文章:

            第一部分介紹了一些基本的 Vim 使用技巧。掌握這些技巧可以很大地提高編輯效率,但是 Vim 的強大功能并不僅限于此。Vim 還可以通過“插件”來進行功能擴展。精確地說,是通過腳本來進行擴展,腳本類型有插件、語法加亮、配色方案、文件類型檢測等多種。大部分的腳本都是由 Vim 的用戶寫的,解決了用戶身邊的問題,使 Vim 變得更加有用。本章將介紹最常用的一些腳本,其中除了一個屬于“語法加亮”腳本外,其它都屬于“插件”類型。關(guān)于如何寫腳本的一些基礎(chǔ)知識將在下一部分進行一些介紹。

            2.1. gzip(壓縮文件支持)

            作者:Bram Moolenar

            網(wǎng)站腳本編號:無(包含在 Vim 的標(biāo)準(zhǔn)發(fā)布之中)

            安裝說明:

            功能說明:

            該腳本使得 Vim 可以直接打開使用 gzip [1]、bzip2 [2] 和 compress [3] 壓縮的文件(要求存在相應(yīng)的命令行工具)。后綴為“.gz”、“.bz2”和“.Z”的文件會在打開時被動態(tài)解壓縮,并在寫操作時被自動重新壓縮。

            打開壓縮文件時,屏幕上出現(xiàn)一個(不正確的)“[noeol]”的提示是正常的,不必進行理睬。

            2.2. netrw(網(wǎng)絡(luò)文件支持)

            作者:Charles E. Campbell, Jr.(綽號 Dr. Chip)

            網(wǎng)站腳本編號:1075(Vim 的標(biāo)準(zhǔn)發(fā)布之中可能包含一個較老的版本)

            安裝說明:

            Vim 6.4 的標(biāo)準(zhǔn)發(fā)布帶的版本是 42,較老、功能不齊全,但無須安裝。建議:

            1. 在 Vim 網(wǎng)站上下載版本 62(更新的版本只能用于 Vim 7);
            2. 使用“tar xvfj netrw.tar.bz2 -C ~/.vim”解開;
            3. 在Vim中運行“:helptags ~/.vim/doc”安裝文檔。

            功能說明:

            支持直接讀寫網(wǎng)絡(luò)上的文件,支持的協(xié)議有 ftp、http、rsync、scp 等。比如,使用 FTP 協(xié)議以用戶名 adah 打開服務(wù)器 server 上 ~/temp 目錄下的 test.cpp 文件,可以直接在命令行上使用:

            												
            														vim ftp://adah@server/temp/test.cpp
            
            												
            										

            Vim會自動提示用戶輸入口令,然后打開文件。

            更多的幫助內(nèi)容請參考“:help netrw”。

            2.3. engspchk(英文拼寫檢查)

            作者:Charles E. Campbell, Jr.(綽號Dr. Chip)

            網(wǎng)站腳本編號:195

            安裝說明:
            在 Vim 網(wǎng)站上下載最新版本(engspchk.tar.gz);
            使用“tar xvfz engspchk.tar.gz -C ~/.vim”解開;
            在Vim中運行“:helptags ~/.vim/doc”安裝文檔。
            提示替換拼寫功能需要 agrep [4],可能需要另外下載安裝。

            功能說明:
            一個Vim專用的拼寫檢查器,其最主要的特點是:

            • 可以通過變量 spchkdialect 選擇英語變體(英國、美國、加拿大),對于找不到的詞、不常見的詞、不在當(dāng)前英語變體中的詞以不同的方式加亮顯示;
            • 支持用戶詞典(保存在 .vim/CVIMSYN 目錄中)和項目詞典(保存在被檢查文件所在的目錄中);
            • 對于源代碼文件,只對注釋進行拼寫檢查,而不會對你的變量名稱胡亂提抗議;
            • 通過詞典文件可支持除英語以外的其它語言。

            圖 5 中的窗口里 engspchk 正在運行中。其中可以看到,紅色部分是插件所不能識別的單詞,黃色部分是當(dāng)前英文變體(缺省是美國英語)中不正確的拼法,而青色部分是很少見的單詞。圖中運行的是包含圖形界面支持的 Vim,因而還可以看到一個名為 DrChip 的菜單項(參見圖6),在其中可通過菜單選擇拼寫檢查相關(guān)的各項功能;同時還能看到快捷鍵:“\ec”開始拼寫檢查,“\ee”結(jié)束拼寫檢查,“\ea”選擇替換拼寫,等等。在文本模式的 Vim 中,我們一般就只使用這些快捷鍵了。


            圖 5
            圖 5

            圖 6
            圖 6

            更多的幫助內(nèi)容請參考“:help engspchk”。

            2.4. calendar(日歷顯示)

            作者:Yasuhiro Matsumoto

            網(wǎng)站腳本編號:52

            安裝說明:

            在 Vim 網(wǎng)站上下載文件 calendar.vim,存到 ~/.vim/plugin 目錄中。

            功能說明:

            圖 6 的下半部分就是 calendar 的運行示例,是直接在正常模式下鍵入“\caL”顯示出來的。光標(biāo)在該窗口中時,可使用左箭頭或上箭頭顯示前一個月,右箭頭或下箭頭顯示后一個月,“t”回到“今天”,“q”關(guān)閉日歷窗口。在有鼠標(biāo)支持時,也可以使用鼠標(biāo)在黃色字樣的“Prev”、“Today”、“Next”上雙擊達(dá)到類似的效果。

            除使用“\caL”外,“\cal”也可以打開一個日歷窗口,但顯示位置是在 Vim 的左側(cè)而不是下方。另外,命令“:Calendar”效果和“\cal”相同,但其后可以跟參數(shù):一個參數(shù)的話表示月份,兩個參數(shù)的話則分別表示年份和月份。“:CalendarH”與“:Calendar”類似,但日歷窗口的打開位置和“\caL”(而不是“\cal”)一樣,是在下方而不是左側(cè)。

            2.5. project(文件的“項目”管理)

            作者:Aric Blumer

            網(wǎng)站腳本編號:69

            安裝說明:

            1. 在 Vim 網(wǎng)站上下載最新版本(project-1.3.tar.gz);
            2. 使用“tar xvfz project-1.3.tar.gz -C ~/.vim”解開;
            3. 在 Vim 中運行“:helptags ~/.vim/doc”安裝文檔。

            功能說明:

            該插件可以把文件組織成一棵樹的形式,以便于查找和管理。使用命令“:Project”即可打開一個用戶的“項目文件”(~/.vimprojects)。項目文件采用普通的文本文件的形式,非常易于瀏覽和修改。圖 7 是一個示例。其中左邊窗口部分的就是一棵項目樹,完整內(nèi)容如下:


            圖 7
            圖7

            												
            														CvsMenu="~/.vim" CD=. {
             plugin/cvsmenu.vim
             doc/cvsmenu.txt
            }
            Nvwa="~/nvwa_local" CD=. {
             doc=doc {
              ChangeLog
              README
              webupdate.sh
             }
             nvwa=nvwa {
              bool_array.cpp
              debug_new.cpp
              mem_pool_base.cpp
              static_mem_pool.cpp
              bool_array.h
              class_level_lock.h
              cont_ptr_utils.h
              debug_new.h
              fast_mutex.h
              fixed_mem_pool.h
              mem_pool_base.h
              object_level_lock.h
              pctimer.h
              set_assign.h
              static_assert.h
              static_mem_pool.h
             }
            }
            
            												
            										

            在這個項目文件中存在兩個項目:CvsMenu 和 Nvwa。引號中的內(nèi)容表示路徑,“CD=.”則表示打開該項目中的文件時,當(dāng)前目錄會更改到項目所在的目錄。項目下面可以再分子項目,如 Nvwa 項目下有 doc 和 nvwa 兩個子項目,沒有“CD=.”表示打開子項目里的文件時不再更改當(dāng)前目錄。

            圖中并沒有顯示出完整的內(nèi)容,因為其中的內(nèi)容可以折疊(缺省打開項目文件時是完全折疊起來的,即在上面的例子中,只能看到兩個項目的名字“CvsMenu”和“Nvwa”)。在非文件名行上使用鼠標(biāo)雙擊或回車鍵可以進行展開或折疊,在文件名行上使用鼠標(biāo)雙擊或回車鍵則可以打開對應(yīng)的文件。

            更多的幫助內(nèi)容請參考“:help project”。

            2.6. taglist(源代碼結(jié)構(gòu)瀏覽)

            作者:Yegappan Lakshmanan

            網(wǎng)站腳本編號:273

            安裝說明:

            1. 確保機器上有一個可用的 Exuberant Ctags 的版本(可以執(zhí)行命令“ctags”)

            2. 在 Vim 網(wǎng)站上下載 taglist(假設(shè)為 taglist.zip);

            3. 使用“unzip taglist.zip -d ~/.vim”解開;

            4. 在 Vim 中運行“:helptags ~/.vim/doc”安裝文檔。

            雖然 taglist 使用 ctags,但并不要求 tags 文件的存在。

            功能說明:

            使用命令“:Tlist”啟用/關(guān)閉 taglist,效果請先看一下圖 8。Taglist 的主要特性有:


            圖 8
            圖8

            • 可以顯示宏(macro)、函數(shù)(function)、變量(variable)、類型定義(typedef)、類(class)、結(jié)構(gòu)(struct)等多種內(nèi)容信息;
            • 打開多個文件時,可以同時看到多個文件的結(jié)構(gòu)信息;
            • 在左邊的 taglist 窗口顯示的名稱上雙擊鼠標(biāo)或按回車鍵,右邊主窗口中會跳轉(zhuǎn)到相應(yīng)的定義位置;
            • 右邊窗口中光標(biāo)的位置改變,左邊的窗口也會在 4 秒內(nèi)(缺省值,參見“:help 'updatetime'”)黃色加亮顯示相應(yīng)的名稱;
            • 在啟用/關(guān)閉 taglist 時,插件能夠自動改變當(dāng)前 Vim 窗口的大小(不管是文本模式的 Vim 還是圖形界面的 Vim),除非使用“:let Tlist_Inc_Winwidth=0”關(guān)閉這一功能(當(dāng)使用這一功能導(dǎo)致兼容性問題時)。

            更多的幫助內(nèi)容請參考“:help taglist”。

            2.7. cvsmenu(CVS集成)

            作者:Thorsten Maerz/吳詠煒

            網(wǎng)站腳本編號:1245

            安裝說明:

            1. 在 Vim 網(wǎng)站上下載文件 cvsmenu.vim,存到 ~/.vim/plugin 目錄中;
            2. 啟動 gvim,在菜單中選擇“CVS-Settings-Install-Install updates”(文本模式的 Vim 可以使用快捷鍵“,cgii”),從網(wǎng)上(SourceForge)的 CVS 中安裝最新版本和幫助文檔(此步驟可選)。

            功能說明:

            在 Vim 中集成 CVS [24]版本管理功能。該插件最初由 Thorsten Maerz 編寫,在 2002 年以來沒有再得到維護。我在 2005 年初開始使用這個插件后,非常喜歡它,修正了其中存在的錯誤,并一直維護該插件。如果大家發(fā)現(xiàn)有 bug,報告給我就可以了。

            主要功能可在圖 9 的菜單中看到:


            圖 9
            圖9

            • 了解 CVS 環(huán)境的基本信息和 cvsmenu 中的變量設(shè)定(參見圖 10);
              圖 10
              圖10
            • 調(diào)整設(shè)定,安裝更新版本;
            • 插入 CVS 的可擴展關(guān)鍵字,如“$Date$”、“$Id$”;
            • 對目錄進行基本操作(cvs update 等);
            • 接受附加參數(shù)的基本操作(文件比較等);
            • 管理功能,如登錄;
            • 刪除類操作;
            • 打標(biāo)簽;
            • 觀察(跟蹤)和編輯功能;
            • 將本地文件和 CVS 中的文件進行比較(以 Vim 的分左右兩列使用顏色加亮顯示修改、增加、刪除部分的比較方式;效果參見圖 11);
              圖 11
              圖11
            • 顯示文件每一行的更改人和更改時間(cvs annotate,參見圖 12);
              圖 12
              圖12
            • 顯示庫的訪問歷史(cvs history);
            • 顯示文件修訂日志(cvs log;參見圖 13);
              圖 13
              圖13
            • 顯示文件狀態(tài);
            • 顯示較短的文件狀態(tài);
            • 根據(jù)本地信息顯示文件狀態(tài)(不訪問庫);
            • 簽出模塊(cvs checkout);
            • 查詢更新;
            • 更新,如有沖突會高亮顯示(cvs update);
            • 取消修改;
            • 添加當(dāng)前文件到 CVS 中(cvs add);
            • 簽入當(dāng)前文件(cvs commit);
            • 導(dǎo)入文件(cvs import);
            • 添加并簽入當(dāng)前文件。

            根據(jù)實際使用的需要,除了修訂錯誤之外,我加入了一些編碼相關(guān)的支持。拿一個最實際的情況,如果使用“set encoding=utf-8”,但源代碼中仍使用了 GBK 編碼的中文字符,那么,必須在 .vimrc 中加入一行“l(fā)et g:CVScvsoutputencoding='gbk'”才能保證“cvs annotate”操作的結(jié)果是正確的。

            Thorsten 把該插件的易用性設(shè)計得相當(dāng)好。舉例來說,在作文件比較時,按 Tab 可跳轉(zhuǎn)到下一個不同處,左側(cè)的比較窗口中按一下“q”即可關(guān)閉該窗口。更多的幫助內(nèi)容請參考“:help cvsmenu”。

            2.8. doxygen(文檔注釋語法加亮)

            作者:Michael Geddes

            網(wǎng)站腳本編號:5

            安裝說明:

            1. 在 Vim 網(wǎng)站上下載最新版本(doxygen.zip);
            2. 使用“unzip doxygen.zip”解開;
            3. 執(zhí)行“cp -p doxygen.vim ~/.vim/syntax”和“cp -p doxygen.txt ~/.vim/doc”復(fù)制文件到 Vim 目錄下;
            4. 在 Vim 中運行“:helptags ~/.vim/doc”安裝文檔。
            5. 如果 ~/.vim/after/syntax 目錄不存在,使用“mkdir -p ~/.vim/after/syntax”創(chuàng)建該目錄;
            6. 進入 ~/.vim/after/syntax 目錄,使用下面三行創(chuàng)建語法文件之間的關(guān)聯(lián),使得在 C、C++ 和Java 文件中可以識別文檔注釋:


            												
            														ln -s ../../syntax/doxygen.vim c.vim
            ln -s ../../syntax/doxygen.vim cpp.vim
            ln -s ../../syntax/doxygen.vim java.vim"
            
            												
            										

            6. 可選地,看一下我的個人編程網(wǎng)頁 [6] 下有沒有對 doxygen.vim 的更新(里面包含有作者尚未并入到標(biāo)準(zhǔn)發(fā)布中去的我的更改——好奇的話,你可以在 doxygen.vim 文件中數(shù)一下,看一看 Wu Yongwei 的名字出現(xiàn)了幾次:-))。

            功能說明:

            如果你用過文檔注釋,相信我不需要多說,看一下圖 14你就知道這個腳本的功能了。如果你沒有用過文檔注釋,強烈建議你到 Doxygen [7] 的網(wǎng)站上看一下,了解一下這個非常有用的工具。作為示例,可在 http://nvwa.sourceforge.net/doc/debug__new_8cpp.html#a17 看一下圖中的代碼使用 Doxygen 自動生成的 HTML 網(wǎng)頁。


            圖 14
            圖14

            2.9. matrix(!)

            作者:Don Yang

            網(wǎng)站腳本編號:1189

            安裝說明:

            在 Vim 網(wǎng)站上下載文件 matrix.vim,存到 ~/.vim/plugin 目錄中即可。

            功能說明:

            是的,說的就是電影 Matrix!Vim 的腳本并不是都干“正經(jīng)事”的。想看一下電影里那些酷酷的字符在 Vim 的窗口里翻滾嗎?發(fā)一個命令“:Matrix”即可(按任意鍵退出)。效果見圖 15。


            圖 15
            圖15




            回頁首


            參考資料

            [1] The gzip home page: http://www.gzip.org/

            [2] bzip2: http://www.bzip.org/

            [3] Compress for UNIX: http://www.answers.com/compress#Wikipedia

            [4] agrep: http://www.answers.com/agrep

            [5] CVS-Concurrent Versions System: http://www.nongnu.org/cvs/

            [6] Wu Yongwei's Programming Page: http://wyw.dcweb.cn/

            [7] Doxygen: http://www.stack.nl/~dimitri/doxygen/



            另外一片:

            以下是滇狐收集和整理的一些有用的 VIM 插件, 大部分插件都有自己詳細(xì)的說明書,因此這里就不詳細(xì)介紹每個插件的安裝和使用方法了。 通過這些插件, VIM 能夠變成一個非常強大的平臺, Happy VIMming! 如果想詳細(xì)了解默認(rèn)的插件插件安裝路徑,請看這里

            1?程序設(shè)計

            1.1?Tag List

            下載地址: 官方站點

            官方描述: The “Tag List” plugin is a source code browser plugin for Vim and provides an overview of the structure of source code files and allows you to efficiently browse through source code files for different programming languages.

            滇狐評價: 這是一個非常非常非常非常重要的插件, 有了它, 我們才能夠在 VIM 中查看一個文件中包含的函數(shù)列表, 或是一個類包含的方法列表, 為編程人員提供了極大方便。推薦大家一定要安裝!

            安裝注意事項: 有的系統(tǒng)內(nèi)置的 ctags 功能太弱, 推薦大家安裝 EXUBERANT CTAGS, 這個東西功能比較強大, 居然連 HTML 里面內(nèi)嵌的 Java Script 都能夠支持, 實在是匪疑所思!

            滇狐個人習(xí)慣: 滇狐習(xí)慣把方法列表放在屏幕的右側(cè), 于是在 .vimrc 中設(shè)置了

            								
            										let
            								 Tlist_Use_Right_Window=1

            另外, 滇狐習(xí)慣讓當(dāng)前不被編輯的文件的方法列表自動折疊起來, 這樣可以節(jié)約一些屏幕空間,于是在 .vimrc 中設(shè)置了

            								
            										let
            								 Tlist_File_Fold_Auto_Close=1

            1.2?A

            下載地址: 官方站點

            官方描述:

            A few of quick commands to swtich between source files and header files quickly.

            :A switches to the header file corresponding to the current file being edited (or vise versa)

            :AS splits and switches

            :AV vertical splits and switches

            E.g. if you are editing foo.c and need to edit foo.h simply execute :A and you will be editting foo.h, to switch back to foo.c execute :A again.

            滇狐評價: 第一眼看到這個東西時, 總覺得它功能太簡單, 似乎沒有什么用處。用過之后, 才發(fā)現(xiàn)這項功能對于一個程序員來說是如何重要!

            1.3?Win Manager

            下載地址: 官方站點

            官方描述: winmanager is a plugin which implements a classical windows type IDE in Vim-6.0. Basically, you have the directory tree and the buffer list as 2 windows which stay on the left and the editing is done in a seperate area on the left. People have already made excellent File and Buffer explorers seperately and I thought that it might be a cool idea to combine them both. winmanager.vim combines the standard File Explorer which ships with Vim 6.0 and a Buffer Explorer written by Jeff Lanzarotta into one package.

            滇狐評價: 非常好用的東西, 在屏幕上打開一個文件瀏覽器, 這樣就可以方便地選擇要編輯的文件了。

            默認(rèn)情況下, winmanager 依賴于 bufexplorer,到這里下載。如果你不喜歡 bufexplorer 插件的話 可以在你的 .vimrc 中添加這條命令禁用它:

            								
            										let
            								 g:winManagerWindowLayout ="FileExplorer"

            這樣就不需要下載該插件了。

            滇狐為 winfileexplorer.vim 加了一個補丁, 提供了使用系統(tǒng)默認(rèn)打開方式打開選中文件的功能,只要把光標(biāo)放在想要打開的文件上, 然后按“S”就可以了 (注意是大寫)。這樣以后就可以直接在 gvim 里打開 xmms, 不用再切換出來找 konqueror 了。

            1.4?gdbvim

            下載地址: 官方站點

            官方描述: You have one window with (g)vim open, other window with gdb running. When you reach source line in your code, it appears in the vim window. In the opposite direction, you can send commands from vim to gdb (e.g., set breakpoints on given line).

            滇狐評價: 該插件意義很重大, 為我們在 VIM 中調(diào)試程序提供了可能。 雖然功能還非常少,但已經(jīng)足以解決平常的大部分需求了。 原始版本問題比較多, 例如只能添加斷點,不能刪除斷點, 滇狐為該插件添加了刪除已加斷點的功能。 另外快捷鍵的設(shè)置也比較不快捷,滇狐又順便把相應(yīng)的快捷鍵修改了一下, 現(xiàn)在用起來已經(jīng)比較順暢了, 放出來給大家參觀一下,以便繼續(xù)改進。 目前只在 Linux 下調(diào)試通過, 其它平臺未經(jīng)測試, 感興趣的朋友可以在其它平臺下測試,并匯報測試結(jié)果。

            需要繼續(xù)增加的功能: 下一步滇狐準(zhǔn)備再給這個插件加上保存所有斷點的功能,這樣下次調(diào)試的時候就不用重新設(shè)置斷點了。 另外, 目前查看變量的值時,只能把結(jié)果打印到 console 窗口中, 滇狐希望在下一個版本中能夠把查看結(jié)果抓取到 VIM 中顯示。 VIM 網(wǎng)站上給出了把所有結(jié)果抓取到 VIM 中的實現(xiàn), 但那不是滇狐希望的結(jié)果。滇狐最希望得到的結(jié)果是使用 tooltip 顯示變量結(jié)果, 另外能夠再提供一個 watch 窗口, 時刻監(jiān)視變量的值, 以后慢慢實現(xiàn)吧。

            安裝注意事項: gdbvim 腳本是使用 Perl 語言編寫的, 因此需要安裝 Perl。為了方便你的使用, 建議在 $PATH 路徑下添加一個指向 plugin/gdbvim 腳本的符號鏈接, 或者直接將該文件復(fù)制到 $PATH 路徑下,滇狐推薦前者。 還有, 最好在你的 .vimrc 中 set?noshowcmd,否則大量的“請按 ENTER 繼續(xù)”會把你活活煩死。 另外, 滇狐 patch 過的腳本依賴 multvars.vim,如果你使用滇狐版的話, 需要再安裝這個插件。

            使用方法: 編譯你的程序時加上 -g 參數(shù)生成調(diào)試信息, 然后使用“gdbvim?<你的程序名>”啟動 gdbvim, gdbvim 會自動啟動一個 gvim。 將 gvim 最大化, 然后就可以使用 Gdb 菜單或快捷鍵添加斷點、 單步調(diào)試程序、 查看變量值了。

            1.5?jad

            下載地址: 無。 自己將代碼復(fù)制粘貼回去, 保存為 $HOME/.vim/plugins/jad.vim:

            								
            										augr
            								 class
            au!
            aubufreadpost,filereadpost *.class %!jad -noctor -ff -i -p %aubufreadpost,filereadpost *.class setreadonlyaubufreadpost,filereadpost *.class setft=java
            aubufreadpost,filereadpost *.class normal gg=G
            aubufreadpost,filereadpost *.class setnomodifiedaubufreadpost,filereadpost *.class setnomodifiableaugr END
            

            官方描述: (無)

            滇狐評價: 挺好玩的插件, 不過似乎也只是好玩而已。 安裝了之后可以直接雙擊打開 .class 文件, VIM 會自動調(diào)用 jad 把文件反編譯了。

            安裝注意事項:需要先安裝一份 jad

            1.6?cscope_maps

            下載地址: 官方站點

            官方描述: Cscope is a very handy tool, but it’s even better when you don’t ever have to leave the comfort of your favorite editor (i.e. Vim) to use it. Fortunately, Cscope support has been built into Vim.

            滇狐評價: 滇狐目前 cscope 用得不如 ctags 多, 許多功能都不大熟。 不過既然大家都說好,那還是裝著玩玩吧。

            安裝注意事項: 需要安裝 cscope

            1.7?project

            下載地址: 官方站點

            官方描述: You can use this plugin’s basic functionality to set up a list of frequently-accessed files for easy navigation. The list of files will be displayed in a window on the left side of the Vim window, and you can press <Return> or double-click on filenames in the list to open the files. This is similar to how some IDEs I’ve used work. I find this easier to use than having to navigate a directory hierarchy with the file-explorer. It also obviates the need for a buffer explorer because you have your list of files on the left of the Vim Window.

            滇狐評價: 食之無肉,棄之有味。

            安裝注意事項: 幾乎沒怎么用過, 所以暫時沒有發(fā)現(xiàn)需要注意的地方。

            2?文檔編寫

            2.1?VIM LaTeX Suite

            下載地址: 官方站點

            官方描述:

            Vim is undoubtedly one of the best editors ever made. LaTeX is an extremely powerful, intelligent typesetter. Vim-LaTeX aims at bringing together the best of both these worlds.

            We attempt to provide a comprehensive set of tools to view, edit and compile LaTeX documents without needing to ever quit Vim. Together, they provide tools starting from macros to speed up editing LaTeX documents to compiling tex files to forward searching .dvi documents.

            See the features page for a brief tour of the various features in LaTeX-suite. All these features can be tuned extensively using the included texrc file. The screenshots page shows you how a typical working session with LaTeX-suite might progress.

            LaTeX-suite is made for Vim versions 6.0 and above. Installation instructions are given in the download page.

            滇狐評價: 實在是非常非常非常非常好的一個插件! 用 VIM 寫 LaTeX 的朋友無論如何都要試一試,不用 VIM 寫 LaTeX 的朋友也要試一試, 說不定你會改變你的主意, 改用 VIM 寫 LaTeX。

            安裝注意事項: 如果使用 gvim 的話, 需要注意 scim 可能會和 LaTeX Suite 有沖突。 解決方法是要么把 scim 的 on the spot 功能去掉, 或者把 gtk_im_module 設(shè)為 scim。 (較新版本 scim 建議第二種方案)。

            另外, 為了提高工作效率, 強烈建議配置 VIM 的LaTeX 正向、反向搜索功能。

            2.2?sketch

            下載地址: 官方站點

            官方描述: Sketch.vim – Line drawing/painting using the mouse. Based on an idea by Morris.

            滇狐評價: 很好玩, 雖然用到的時候不多, 但真一旦用到了, 還是會覺得這個東西很有用的。

            安裝注意事項: 建議在 .vimrc 中把 call ToggleSketch() 映射為命令,方便一些:

            								
            										command
            								
            								
            										-
            								
            								nargs
            								
            										=
            								
            								
            										0
            								 ToggleSketch call ToggleSketch()
            

            3?日常生活

            3.1?Calendar

            下載地址: 官方站點

            官方描述: This script create calender window. This don’t use the external program (cal).

            滇狐評價: 安裝完畢后使用 :Calendar 命令打開一個垂直的日歷窗口, 使用 :CalendarH 命令打開水平的日歷窗口。 應(yīng)該還是比較有用的。

            安裝注意事項: 滇狐個人喜歡把日記的擴展名改成 .txt, 默認(rèn)的是 .cal。在 calendar.vim 里面查找替換一下就可以了。 另外, 可以在 .vimrc 里面修改日記所在的路徑,默認(rèn)是 ~/diary。

            								
            										let
            								 g:calendar_diary=<PATH>

            3.2?vimtips

            下載地址: 官方站點

            官方描述:

            Whenever you start Vim (but no more than daily) the script will open a help window with a Vim tip. You must download the tips separately, from 官方站點

            After installation, you can get the next tip with

            :TipOfTheDay
            

            滇狐評價: 每天看一條,慢慢就變成 VIM 牛了。

            安裝注意事項: 暫時沒發(fā)現(xiàn)。

            3.3?ViKi

            你現(xiàn)在看到的這張網(wǎng)頁就是使用 ViKi 制作的。 也許它不漂亮, 但是很清秀, 而且添加信息非常方便。 是 ViKi 將滇狐從繁重的 Html 編輯工作中解放出來, 使滇狐有足夠的勇氣重新開始制作個人主頁。 為了更好地說明 ViKi,滇狐將該插件的使用單獨放到另一張網(wǎng)頁中。

            posted on 2006-08-10 18:05 楊粼波 閱讀(17702) 評論(4)  編輯 收藏 引用 所屬分類: 學(xué)習(xí)筆記

            評論

            # re: Ubuntu下的C/C++環(huán)境搭建 2006-08-10 20:33 Stone Jiang

            非常不錯
              回復(fù)  更多評論   

            # re: Ubuntu下的C/C++環(huán)境搭建 2008-04-28 16:08 schumi

            好文,
            學(xué)習(xí)了。  回復(fù)  更多評論   

            # re: Ubuntu下的C/C++環(huán)境搭建 2011-12-16 22:23 JOJO

            初學(xué)者,還得慢慢看,謝謝!  回復(fù)  更多評論   

            # re: Ubuntu下的C/C++環(huán)境搭建 2011-12-18 17:16 楊粼波

            配置一個合適自己的編輯環(huán)境,這個是最麻煩的。別的倒還好。不過,順手的編輯環(huán)境靠的是自己慢慢的摸索,如果摸索出來了,之后再配置的話就僅僅是體力活了。

            事實上,我一直都擺脫不了VS,都是在Windows下面編輯好,然后再到非Windows平臺下編譯調(diào)試的。
            對于我這等拋棄不了鼠標(biāo)的貨來說,全鍵盤還是頗為不習(xí)慣的。  回復(fù)  更多評論   

            一本色道久久综合狠狠躁| 亚洲人成伊人成综合网久久久| 国产精品成人久久久| 久久久精品国产Sm最大网站| 99国产精品久久| 国产亚洲欧美精品久久久| 久久精品国产亚洲AV麻豆网站 | 久久精品国产99久久久古代| 久久天天日天天操综合伊人av| 国产激情久久久久影院小草| 国产精品免费久久久久影院 | 久久精品国产半推半就| 国产精品久久久久影视不卡| 久久电影网一区| 国产精品热久久毛片| 久久夜色撩人精品国产| 99久久这里只精品国产免费| 亚洲熟妇无码另类久久久| 久久精品国产亚洲av麻豆小说| 99久久无码一区人妻a黑| 中文字幕亚洲综合久久2| 久久免费视频一区| 97精品国产97久久久久久免费| 久久夜色精品国产欧美乱| 2020久久精品国产免费| 久久精品成人欧美大片| 久久久久久午夜精品| 日韩人妻无码一区二区三区久久 | 久久综合亚洲色HEZYO社区| 性欧美丰满熟妇XXXX性久久久| 精品无码久久久久久午夜| 国产福利电影一区二区三区久久久久成人精品综合 | 中文字幕久久波多野结衣av| 久久国产乱子伦精品免费强| 日本加勒比久久精品| 久久亚洲AV成人出白浆无码国产| 色综合久久中文综合网| 久久综合亚洲鲁鲁五月天| 国产精品美女久久久久AV福利| 久久精品国产2020| 久久久WWW成人免费精品|