欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費電子書(shū)等14項超值服

開(kāi)通VIP
讓Emacs功能強于source Insight
單獨的Emacs軟件的話(huà),雖然也有著(zhù)除了編輯以外的各種各樣的功能,例如Mail,網(wǎng)頁(yè)瀏覽等等,但是,僅對于我個(gè)人我還是覺(jué)得他就是個(gè)文本編輯器,因為別的功能我不用,也用不上。而且這個(gè)編輯器使用時(shí)還非常的費勁,覺(jué)不出他比微軟的記事本強在哪里。
但是,Emacs支持配置其工作環(huán)境,當結合了一些插件后,他就發(fā)揮出強大的功能了。
這個(gè)強大的功能 = SourceInsight+專(zhuān)用仿真Debug軟件之和。
還有就是,他是免費的,FreeDownload的,可自定義的。
微軟在努力讓我們告別鍵盤(pán),Linux則建議大家沒(méi)事別老碰鼠標。
Emacs + gtags + cedet + ecb + doxymas + session + GDB
Emacs:GNU Emacs
gtags:GNU GLOBAL source code tag system
cedet:Collection of Emacs Development Environment Tools
ecb:Emacs Code Browser
doxymacs:Doxygen + Emacs
Doxygen:Source code documentation generator tool
session:Session Management for Emacs
GDB:GNU Project debugger
個(gè)人環(huán)境:VMware7.0.0 + (Fedora7+Ubuntu9.10)
Fedora7:現在fedora的最高發(fā)行版是Fedora12,所以用7的話(huà),如果yum在線(xiàn)安裝,包的版本可能較低。
Ubuntu9.10:現在的最新版,apt在線(xiàn)安裝的話(huà),包版本較新。
較新不是最新,想最新的話(huà),去各自官網(wǎng)現在src安裝吧。
目標源代碼:C語(yǔ)言
如果沒(méi)有現成的代碼就下個(gè)kernel或gcc或glib的源代碼吧。
但是建議寫(xiě)個(gè)hello來(lái)試運行,因為前者的源代碼都太大了,gtags建立tags或htags創(chuàng )建HTML模式源代碼和doxygen生成文檔等的時(shí)候,花費時(shí)間極長(cháng)。
同時(shí)也寫(xiě)好hello的configure.ac和Makefile.am吧,能夠編譯后執行,以便體驗功能。
Emacs:GNU Emacs (Ver:23.1)
Emacs:Editor MACroS(宏編輯器)
HomePage:http://www.gnu.org/software/emacs/
功能和熱鍵的學(xué)習:
http://man.ddvip.com/soft/emacsuserguide/index.html
http://www.gnu.org/software/chinese/manual/TUTORIAL.cn
《學(xué)習GNU Emacs》(68元)/《GNU Emacs Lisp 編程入門(mén)》(38元)
網(wǎng)上有中文掃描版和英文版的下載,忘了在哪里下的了,搜搜吧。
掃描版不清晰,例代碼根本看不清,建議購入原書(shū)。
http://man.chinaunix.net/newsoft/Emac/book.html
下載安裝:參考上記Homepage。
http://ftp.gnu.org/gnu/emacs/
重點(diǎn):
記住個(gè)別編輯工作中常用Hotkey。
知道.emacs文件和<load-path>設置的作用和用法。
知道LISP語(yǔ)言。(但是不一定要掌握這種語(yǔ)言,抄抄網(wǎng)絡(luò )上大俠的就行,同時(shí)也希望更多的人加入到Lisp行列中)
簡(jiǎn)單說(shuō)明:
.emacs文件:是Emacs啟動(dòng)時(shí),自動(dòng)讀取用戶(hù)自定義配置的默認的配置文件
(手動(dòng)創(chuàng )建該文件,自定義配置都寫(xiě)在該文件中,LISP語(yǔ)言,"/home/yourname/"路徑下)
shell命令啟動(dòng)Emacs時(shí),如果用'emacs -q'命令,則不加載任何額外的自定義設置啟動(dòng)Emacs.
<load-path>:由'.emacs'文件中編寫(xiě)的相應的自定義配置,調用的關(guān)聯(lián)**.el文件的存放路徑。
(在.emacs中記入該路徑時(shí),建議使用絕對路徑.這樣通過(guò)shell命令無(wú)論用哪個(gè)帳戶(hù)的ENV啟動(dòng)Emacs時(shí),都能正確讀取對應的**.el文件。也就是無(wú)視'~'所代替的ENV中的$HOME的值是什么,LISP語(yǔ)言)
這個(gè)<load-path>的文件夾,可以手動(dòng)創(chuàng )建(推薦),也可以用Emacs軟件的默認路徑(/usr/local/share/emacs/site-lisp/)。
下記的.emacsLoadpath 就是手動(dòng)創(chuàng )建的一個(gè)文件夾,其中放置一些,準備使用的el文件啦,cedet啦,ecb啦,gtags.el啦等等。
例:
;load-path
(add-to-list 'load-path "/home/yourname/.emacsLoadpath")
個(gè)人.emacs文件中的內容:
(僅安裝emacs軟件后,即可完成的動(dòng)作,無(wú)需安裝其他的組件,但需要個(gè)別插件,都是參考其他大俠的)
;load-path
(add-to-list 'load-path "/home/yourname/.emacsLoadpath")
(custom-set-variables
;; custom-set-variables was added by Custom.
;; If you edit it by hand, you could mess it up, so be careful.
;; Your init file should contain only one such instance.
;; If there is more than one, they won't work right.
'(column-number-mode t);默認顯示行號的同時(shí),也顯示列號
'(display-time-mode t);顯示當前時(shí)間
'(inhibit-startup-screen t);關(guān)閉啟動(dòng)畫(huà)面
'(show-paren-mode t);顯示與當前光標所在位置的括號匹配的另一個(gè)括號
)
(setq visible-bell t);關(guān)閉出錯時(shí)的蜂鳴提示聲
(mouse-avoidance-mode'animate);當鼠標箭頭與光標相近時(shí),使鼠標箭頭自動(dòng)移開(kāi)
;(blink-cursor-mode nil);光標不閃爍
(setq-default cursor-type 'bar);光標顯示為一豎線(xiàn)
(tool-bar-mode -1);; 不顯示emcas的工具欄
(menu-bar-mode -1);; 不顯示emcas的菜單欄,按ctrl+鼠標右鍵仍能調出該菜單
(setq x-select-enable-clipboard t);; 支持emacs和外部程序之間進(jìn)行粘貼
(fset 'yes-or-no-p 'y-or-n-p);以 'y/n'字樣代替原默認的'yes/no'字樣
(setq frame-title-format "%b@emacs");在最上方的標題欄顯示當前buffer的名字
(setq make-backup-files nil);關(guān)閉自動(dòng)備份功能
(setq auto-save-mode nil);關(guān)閉自動(dòng)保存模式
(setq auto-save-default nil);不生成名為#filename# 的臨時(shí)文件
(setq require-final-newline t);; 自動(dòng)的在當前的buffer文件的最后加一個(gè)空行
(global-set-key "\r" 'align-newline-and-indent);;自動(dòng)縮進(jìn)<C-j>變?yōu)?lt;Enter>
(setq echo-keystrokes 0.1);; 盡快顯示按鍵序列提示
(global-font-lock-mode t);; 語(yǔ)法高亮
;; 用來(lái)顯示當前光標在哪個(gè)函數
;(require 'which-func)
(which-func-mode 1)
(setq which-func-unknown "unknown")
;; 用M-x執行某個(gè)命令的時(shí)候,在輸入的同時(shí)給出可選的命令名提示
(icomplete-mode 1)
(define-key minibuffer-local-completion-map (kbd "SPC") 'minibuffer-complete-word)
(global-hl-line-mode 1);;高亮當前行
;;;;;;;;;;;;;;;;;啟動(dòng)時(shí)最大化;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(require 'maxframe)
(add-hook 'window-setup-hook 'maximize-frame t)
;下載maxframe.el并放置在<load-path>中
;http://emacsblog.org/2007/02/22/maximize-on-startup-part-2/
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;web方式顯示行號;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;(set-scroll-bar-mode 'right);滾動(dòng)條在右側
(set-scroll-bar-mode nil)   ; 不顯示滾動(dòng)條, even in x-window system (recommended)
(require 'wb-line-number)
(wb-line-number-toggle)
;下載wb-line-number.el并放置在<load-path>中
;http://homepage1.nifty.com/blankspace/emacs/elisp.html
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;cc-mode;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(add-to-list 'load-path "/home/lb/.emacsLoadpath/cc-mode-5.31.3")
(require 'cc-mode)
(c-set-offset 'inline-open 0)
(c-set-offset 'friend '-)
(c-set-offset 'substatement-open 0)
;http://cc-mode.sourceforge.net/
;http://www.kklinux.com/html/linuxwangluojishu/linuxxitongguanliyuan/200902/28-3728.html
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(set-face-background 'default "gainsboro");背景設定
;顏色參考value:X界面菜單欄中[edit]->[text properties]->[Display colors]
;未完其他內容在本文的后續部分介紹
;session
;global(GNU GLOBAL source code tag system)
;##cedet(Collection of Emacs Development Environment Tools)
;##ecb(Emacs Code Browser)
;##doxymacs
;##compile
;##GDB
gtags:GNU GLOBAL source code tag system (Ver:5.7.7)
HP:http://www.gnu.org/software/global/
看看Tutorial(指導)中的Overview就知道,通過(guò)gtags能夠建立軟件工程項目。
這就說(shuō)明,Emacs+gtags的組合,就可以是能夠創(chuàng )建工程項目的編輯軟件了。
(基本等于sourceinsight,如果在加上cedet和ecb就更完美了)
還有很多人不用gtags而用的是cscope,我個(gè)人沒(méi)用過(guò)cscope,大家可嘗試使用。
支持的基本環(huán)境
Shell command line
Bash shell
Vi editor (Nvi, Elvis, vim)
Less viewer
Emacs editor (Emacs, Mule, Xemacs)
Web browser
Doxygen documentation system
基本用法:
①下載安裝gtags后,在源文件的目錄中,鍵入"gtags -v"命令,就會(huì )生成相應文件。
[xx@localhost sys]$ gtags -v
例:source code(/usr/src/sys) 123MB
GPATH 1MB `GPATH' path name database
GTAGS 26MB `GTAGS' definition database
GRTAGS 22MB `GRTAGS' reference database
GSYMS 23MB `GSYMS' symbol database
-------------------------------------
total of tag files 72MB
gtags的其他options的含義,請參考man手冊。
(輔助:http://blog.chinaunix.net/u3/98822/showart_2129660.html)
②下載安裝gtags后,會(huì )有名為gtags.el的文件,注意看安裝時(shí)make install的list,即可找到gtags.el的安裝位置(默認目錄是:/usr/local/share/gtags/)。
將gtags.el的路徑設置為Emacs的<load-path>。
例:在`$HOME/.emacs'文件中加入下記代碼例。
(setq load-path (cons "/home/owner/global" load-path));gtags.el load-path
(autoload 'gtags-mode "gtags" "" t);gtags-mode is true
從此啟動(dòng)Emacs后,及在<load-path>中load了gtags.el文件,并將gtags-mode設置為真(等同于每次啟動(dòng)后,都在Emacs中的M-x,手動(dòng)鍵入gtags-mode)。
個(gè)人.emacs文件中的內容:
;##global(GNU GLOBAL source code tag system);;;;;;;;;;;;;;;;;;;;;
;to use global from Emacs, you need to load the `gtags.el' and execute gtags-mode function in it.
;you need to add it to load-path. for `gtags.el'file.
;(add-to-list 'load-path "<path to gtags.el>");已經(jīng)在之前的代碼中load完了
(autoload 'gtags-mode "gtags" "" t);;start Emacs and execute gtags-mode function.
(setq c-mode-hook
'(lambda ()
(gtags-mode 1)));get into gtags-mode whenever you get into c-mode
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
③當源程序的源文件的內容變化了(導致行號變化),或追加刪除了源文件等等。只要有改變,就要更新gtags生成的那4個(gè)文件。
例:source code(/usr/src/sys)
[xx@localhost sys]$ gtags -vi
or
[xx@localhost sys]$ global -u (推薦)
詳細用法:
直接參考gtags的英文的Tutorial(指導)。
有很多章節可以跳過(guò),因為那是global在別的編輯軟件中的應用方法的說(shuō)明。(例如shell,vi等)
章節還是要必看的。
看了gtags的英文的Tutorial(指導)后,發(fā)現htags也蠻有用的。
$ htags -Ff -sanohIvt 'Welcome to XXX source tour!' --table-flist=1
$
注:gtags-parser和gtags-cscope沒(méi)搞明白,哪位大俠能幫幫忙解說(shuō)一下,或發(fā)個(gè)說(shuō)明鏈接什么的。
gtags會(huì )調用gtags-parser和gtags-cscope對目標代碼,進(jìn)些分析,目的為生成源碼的tags。?
gtags完成的基本動(dòng)作(具備鍵盤(pán)的快捷鍵):
鼠標滾輪鍵(下按):根據上下文,找到"函數或常量或變量"的"定義或調用"的位置。
或,按【enter】。
鼠標右鍵:返回。(就是按完滾輪鍵后,想返回到原來(lái)剛才的位置的話(huà),就按右鍵)
鼠標右鍵(返回),我想應該是emacs的功能,而不是Global的功能。
如果鍵盤(pán)操作的話(huà),應該是:
①調用處搜索關(guān)鍵字→ 結果列表→ [Enter]鍵選擇→ 被選部分的代碼表示
②被選部分處,再次搜索相同關(guān)鍵字→ 結果列表→ [Enter]鍵選擇→ 原調用處的代碼再表示
光標+Enter:當按滾輪鍵后,出現的調用位置的結果為多個(gè)時(shí),將光標調整到相應行,按下回車(chē)即可跳轉到對應位置。
(如圖,名為_(kāi)exit_ts的函數在整個(gè)項目中,有多個(gè)位置調用他)
※※※※※ 先去試試上記內容吧!如果不行,往下進(jìn)行也沒(méi)什么意義?!?div style="height:15px;">
CEDET:Collection of Emacs Development Environment Tools Ver:1.0pre6
HP:http://cedet.sourceforge.net/
安裝:http://cedet.sourceforge.net/setup.shtml  (切記看看下載后的INSTALL文件,需要make編譯)
沒(méi)有CEDET的話(huà),后續的ecb不能安裝使用。
這個(gè)組件,安裝簡(jiǎn)單,使用便利。(望大家閱讀文檔,了解他的各種功能)
我個(gè)人常用的兩個(gè)功能是,speedbar和smart code completion(自動(dòng)補全)
個(gè)人.emacs文件中的內容:
;##cedet(Collection of Emacs Development Environment Tools);;;;;;
(load-file "/home/yourname/.emacsLoadpath/cedet/common/cedet.el")
;讀取子目錄中的特別的 .el 文件
(global-ede-mode 1); Enable the Project management system
(semantic-load-enable-code-helpers); Enable prototype help and smart completion
(global-srecode-minor-mode 1); Enable template insertion menu
(global-set-key [(f4)] 'speedbar-get-focus);speedbar快捷鍵[F4]
(define-key c-mode-base-map [(control tab)] 'semantic-ia-complete-symbol-menu);自動(dòng)補全Ctrl+tab
;(control tab)(meta ?/)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
speedbar插圖:
smart code completion(自動(dòng)補全)插圖:
就是當輸入一個(gè)已有的函數名或變量常量名的時(shí)候,輸到一半時(shí)按快捷鍵自動(dòng)補全剩余的字母。
我自定義的該功能的快捷鍵是<Ctrl> + <Tab>,也有設成<Meta> + / 的,根據個(gè)人習慣,自行定義。
來(lái)自官網(wǎng)的插圖:
注:當前發(fā)布的最新版的CEDET Ver:1.0pre6,在使用的時(shí)候發(fā)現了一個(gè)問(wèn)題。
就是在執行自動(dòng)補全功能,索引tags時(shí),到LL/confname.h的10%時(shí),Linux系統會(huì )down機。
這個(gè)不幸的事情在我的電腦上發(fā)生了。
解決方法(轉載):http://hi.baidu.com/susdisk/blog/item/dceeded0278c7d85a1ec9c01.html
----轉載------
cedet索引LL/confname.h時(shí)emacs掛掉解決方案
2009年12月06日 星期日 19:11
使用cedet1.0pre6時(shí)一直有這個(gè)問(wèn)題,一旦看一個(gè)新工程時(shí),semantic進(jìn)行索引tags,到LL/confname.h的10%時(shí)就會(huì )down掉,沒(méi)有響應。在mail-list里面已經(jīng)有討論(http://www.opensource-/showthread.php?t=101444),解決方案也很簡(jiǎn)單,不用1.0pre6,使用cvs版本,如果還使用了ecb,則在重新?lián)Qcvs版本后還要重編譯ecb,否則emacs是load error的。cedet的cvs版本獲取地址:
(shell命令)
cvs -z3 -d:pserver:anonymous@cedet.cvs.sourceforge.net:/cvsroot/cedet co -P cedet
現在好了,emacs不會(huì )在看一個(gè)新工程時(shí)就掛掉了,而且聽(tīng)說(shuō)cvs版本的補全功能更完備一些。
------------
ECB:Emacs Code Browser Ver:ecb-2.40
HP:http://ecb.sourceforge.net/
安裝:http://ecb.sourceforge.net/docs/Installation.html#Installation
其中Requirements內容中的1和2還是必要的,3和4對于我來(lái)說(shuō)用不上(我的環(huán)境非XEmacs,目標代碼也不是Java)
輔助:
http://blog.csdn.net/intrepyd/archive/2009/07/09/4333893.aspx
其中在上記"輔助"的blog中設置[鼠標支持]的時(shí)候,fedora使用'鼠標滾輪下按'的方式選擇和設置。
關(guān)閉ecb的"每日提醒"和info和upgrandoption界面,請參考下記.emacs文件中的代碼。
疑問(wèn):ecb中的Methods窗口為什么有的時(shí)候是空的,什么都沒(méi)有?
有的時(shí)候能夠正確表示當前源文件中定義的函數/類(lèi)型/成員列表呢?
難道是當前的文件定義的數量太多?
貌視保存一下當前文件,就能正確表示了。(待反復確認)
個(gè)人.emacs文件中的內容:
;##ecb(Emacs Code Browser);;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(add-to-list 'load-path
"/home/lb/.emacsLoadpath/ecb")
(load-file "/home/lb/.emacsLoadpath/ecb/ecb.el")
(require 'ecb)
(require 'ecb-autoloads)
;(setq ecb-auto-activate t);自動(dòng)啟動(dòng)ecb
(setq ecb-auto-activate t;自動(dòng)啟動(dòng)ecb
ecb-tip-of-the-day nil;不顯示每日提醒
inhibit-startup-message t;不知道什么意思,望各位指導
ecb-auto-compatibility-check nil;
ecb-version-check nil;
)
(global-set-key [f8] 'ecb-activate) ;;定義F8鍵為激活ecb
(global-set-key [f7] 'ecb-deactivate) ;;定義F7為停止ecb
;;;; 各窗口間切換
(global-set-key [M-left] 'windmove-left)
(global-set-key [M-right] 'windmove-right)
(global-set-key [M-up] 'windmove-up)
(global-set-key [M-down] 'windmove-down)
;;;; 使某一ecb窗口最大化
(define-key global-map "\C-c1" 'ecb-maximize-window-directories)
(define-key global-map "\C-c2" 'ecb-maximize-window-sources)
(define-key global-map "\C-c3" 'ecb-maximize-window-methods)
(define-key global-map "\C-c4" 'ecb-maximize-window-history)
;;;; 恢復原始窗口布局
(define-key global-map "\C-c`" 'ecb-restore-default-window-sizes)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
ecb界面插圖:
ecb的Method窗口最大化:
官網(wǎng)的各種插圖:
http://ecb.sourceforge.net/screenshots/index.html
※※※※※ 到這里是不是覺(jué)得已經(jīng)可以基本完全=SourceInsight了呢?※※※※※
※※※※※   去試試上記內容吧!如果不行,往下進(jìn)行還是沒(méi)啥意思。   ※※※※※
doxymacs:Doxygen + {X}Emacs Ver:1.8.0
文檔文檔文檔,文檔是寫(xiě)給誰(shuí)的?寫(xiě)給別人看的?寫(xiě)給領(lǐng)導看的?
我覺(jué)得文檔是寫(xiě)給你自己的,為了備忘、整理思路和確認檢查。(例如本貼,望大家都來(lái)留下一筆吧)
但是寫(xiě)文檔,好像挺費勁呀。尤其是coding完成/功能實(shí)現之后,就更不愿意回過(guò)頭來(lái)寫(xiě)已經(jīng)完成的功能的設計文檔了。
其實(shí)設計文檔都應該在實(shí)際coding之前完成,而不是,之后補寫(xiě)。
那么,就用Doxygen根據代碼來(lái)生成文檔吧。不過(guò)生成的文檔,只能當做該模塊的外部規格文檔。詳細設計文檔可以在此基礎上修改做成。使得文檔的做成變得簡(jiǎn)單方便了。
那Doxymacs和Doxygen是什么關(guān)系呢?
Doxygen是根據code生成文檔的工具。
主要是根據code中的注釋內容生成文檔,這個(gè)注釋是要按照Doxygen工具中約定的寫(xiě)法格式才能夠正確的生成文檔。
他可以使你養成寫(xiě)注釋的習慣,寫(xiě)好注釋的習慣。
同時(shí)你做成的代碼,后期可維護能力也大幅提高。
如果你看到幾千行的code一行注釋都沒(méi)有,會(huì )不會(huì )有種想吐的感覺(jué)呢?
Doxymacs則是結合在Emacs中的插件。
通過(guò)快捷鍵,自動(dòng)完成符合Doxygen中要求的注釋格式。
當然注釋的具體內容是要由設計者自行添加的。
Doxymacs HP: http://doxymacs.sourceforge.net/
輔助:http://blog.chinaunix.net/u3/98822/showart_2137605.html
個(gè)人.emacs文件中的內容:
;##doxymacs;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(add-to-list 'load-path "/home/lb/share/emacs/site-lisp/");讀取安裝el的路徑
(require 'doxymacs) ;; 啟動(dòng)doxymacs
;;注釋高亮,針對C和C++程序
(defun my-doxymacs-font-lock-hook ()
(if (or (eq major-mode 'c-mode) (eq major-mode 'c++-mode))
(doxymacs-font-lock)))
(add-hook 'font-lock-mode-hook 'my-doxymacs-font-lock-hook)
(doxymacs-mode);doxymacs-mode常true
(global-set-key [(f6)] 'doxymacs-mode);doxymacs-mode快捷鍵[F6]
;(add-hook 'c-mode-common-hook 'doxymacs-mode) ;; 啟動(dòng)doxymacs-mode
;(add-hook 'c++-mode-common-hook 'doxymacs-mode) ;; 啟動(dòng)doxymacs-mode
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
Doxygen:Source code documentation generator tool Ver:1.6.2
HP:http://www.stack.nl/~dimitri/doxygen/index.html
安裝方法和使用方法,看看Manual吧。
輔助:
http://myfaq.com.cn/2005September/2005-09-13/200335.html
http://blog.csdn.net/SigmaSys/
http://blog.csdn.net/nightelve/archive/2008/05/31/2498047.aspx
http://blog.chinaunix.net/u3/98822/showart_2136698.html
生成的文檔的格式類(lèi)型:
HTML
LaTeX
RTF
XML
Man Page
Doxygen會(huì )根據生成的configuration文件中的設定,來(lái)生成對應的文檔。
Doxywizard可以更方便的設置這個(gè)configuration設定文件(GUI化)。
要么就用text模式來(lái)自行設置configuration文件,這個(gè)文件有點(diǎn)像Makefile文件的感覺(jué)。
看完Getting started章節后,即可生成你的第一份文檔了。
不過(guò)詳細的內容,還是請仔細閱讀Manual。
關(guān)于Doxywizard:
使用源代碼安裝,沒(méi)能安裝上。異常的messages忘了是什么就不貼出來(lái)了。
終于裝上了,http://blog.chinaunix.net/u3/98822/showart.php?id=2154045
但是,由于使用的是fedora系統,所以通過(guò)yum找到了Doxywizard 1.5.5,并安裝成功。(其他Linux使用apt命令)
那么就將Doxywizard 1.5.5的貼圖發(fā)出來(lái)讓大家看看
(不知和doyxgen 1.6.2一起使用會(huì )有什么異常,也許是新的個(gè)別選項無(wú)法設置吧)
(建議大家源碼安裝和doyxgen 1.6.2匹配的Doxywizard)
哦,對了這個(gè)Doxywizard的啟動(dòng)是通過(guò)shell命令方式啟動(dòng)的,不是點(diǎn)擊圖標的形式。
插一張,doxygen生成的method圖,以便大家參考,當然還生成各個(gè)函數的獨立的圖等等
有時(shí)通過(guò)method圖,也能發(fā)現軟件潛在的風(fēng)險,如下圖main函數的紅色箭頭部分
對于軟件的分析,僅用上面的method類(lèi)狀態(tài)遷移圖是不夠的,尤其是對別人的代碼進(jìn)行分析。
再生成流程圖吧。(autoflowchart or Crystal REVS)(非doxygen)
http://blog.chinaunix.net/u3/98822/showart_2145179.html
關(guān)于Fedora的yum:
yum是在線(xiàn)更新fedora的重要工具之一:Yellow dog Updater
yumex是yum命令的圖形化前端可選組件。(yum extender)
HP:http://www.yum-extender.org/blog/
安裝時(shí),可使用shell命令:$ yum install yumex
網(wǎng)上相關(guān)說(shuō)明很多。(yum命令的用法)
插圖:
※※※※※文檔已經(jīng)能生成了,后面內容都是輔助內容了(但用處很大,提高效率)※※※※※
session:Session Management for Emacs Ver:session-2.2a
HP:http://emacs-session.sourceforge.net/
下記轉載:
來(lái)自http://man.ddvip.com/soft/emacszh/x373.html
----------------------
5.2 session
5.2.1 session簡(jiǎn)介
session擴展包可以使Emacs保存每次編輯的一些歷史記錄, 這樣, 在下次打開(kāi)Emacs時(shí)就可以使用上下鍵在以前輸入的信息中選取, 十分方便實(shí)用.
5.2.2 session的使用
session的使用十分簡(jiǎn)單, 只需要在~/.emacs中加入如下幾句就可 以了:
(add-to-list 'load-path "<path to session>")
(require 'session)
(add-hook 'after-init-hook 'session-initialize)
----------------------
來(lái)自http://www.smth.edu.cn/pc/pccon.php?id=6063&nid=143960
----------------------
;;記錄所有操作
(require 'session)
(add-hook 'after-init-hook 'session-initialize)
;;記錄和恢復屏幕
(load "desktop")
(desktop-load-default)
(desktop-read)
;;desktop自動(dòng)存盤(pán)模式,23需要加
(desktop-save-mode 1)
----------------------
在GNU Emacs的Manual中有詳細的說(shuō)明。
找找吧。google下"Emacs session"就有。
注:在使用session的時(shí)候,每次啟動(dòng)都有個(gè)提示信息,需要按'y'后,完成啟動(dòng)。
---------
Please answer y or n. Warning: desktop file appears to be in use by PID ????.
Using it may cause conflicts. Use it anyway? (y or n) "
---------
參考了下記帖子后,解決。
(即去掉(desktop-read)項,我還真說(shuō)不清這項是干什么用的,沒(méi)讀手冊和幫助呀)
https://bugs.launchpad.net/ubuntu/+source/emacs-snapshot/+bug/163342
個(gè)人.emacs文件中的內容:
;;;;;;;;;;;session;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;??????
;(add-to-list 'load-path "<path to session>")
(require 'session)
(add-hook 'after-init-hook 'session-initialize);啟動(dòng)時(shí)初始化session
;;記錄和恢復屏幕
(load "desktop")
(desktop-load-default)
;(desktop-read)
;;desktop自動(dòng)存盤(pán)模式,23需要加
(desktop-save-mode 1)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
GDB:The GNU Project Debugger  Ver:7.0.1
HP:http://www.gnu.org/software/gdb/
GDB的使用方法就不多說(shuō)了,網(wǎng)上找找吧。
這里僅介紹他的功能之一:gdb-many-windows
個(gè)人.emacs文件中的內容:
;##GDB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(global-set-key [(f5)] 'gdb-many-windows);gdb-many-windows快捷鍵[F5]
(setq gdb-use-separate-io-buffer t) ; 不需要"IO buffer"時(shí),則設為nil
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
--------------
注:裝完GDB 7.0.1 后,GDB不能啟動(dòng)。
錯誤提示是:
gdb: error while loading shared libraries: libiconv.so.2: cannot open shared object file: No such file or directory
解決方法是(網(wǎng)摘):
在/etc/bashrc 或 ~/.bashrc 或 ~/.bash_profile 等等,位置加入下記:
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
--------------
(是不是GDB安裝的路徑錯了呢!?)
GDB模式啟動(dòng)后,下面的6個(gè)buffer將被顯示:
+----------------------------------------------------------------------+
| GDB Toolbar |
+-----------------------------------+----------------------------------+
| GUD buffer (I/O of GDB) | Locals buffer |
| | |
| | |
| | |
+-----------------------------------+----------------------------------+
| Source buffer | I/O buffer (of debugged program) |
| | (comint-mode) |
| | |
| | |
| | |
| | |
| | |
| | |
+-----------------------------------+----------------------------------+
| Stack buffer | Breakpoints buffer |
| RET gdb-frames-select | SPC gdb-toggle-breakpoint |
| | RET gdb-goto-breakpoint |
| | D gdb-delete-breakpoint |
+-----------------------------------+----------------------------------+
各buffer的含義如下:
GDB Toolbar        - GDB 操作Toolbar
GUD buffer         - 執行操作的buffer
Locals buffer      - 本地變量名和值的表示buffer
Source buffer      - 表示sourcecode的buffer
IO/ buffer         - 表示程序的輸入輸出的buffer
Stack buffer       - 運行停止的時(shí)候,調用關(guān)系的表示buffer
Breakpoints buffer - breakpoints斷點(diǎn)的表示buffer
buffer崩潰的時(shí)候、通過(guò)'M-x gdb-restore-windows'返回原狀態(tài)。
gdb-many-windows插圖
其他內容:
1.compile
GNU Emacs中有個(gè)功能叫compile。
當編輯完源代碼后,<M-x>中輸入compile,會(huì )跳轉執行make -k。
我記得 -k 的意思是,在遇見(jiàn)錯誤的時(shí)候,不停止,繼續編譯。之后,會(huì )有發(fā)現錯誤的個(gè)數的表示。
通過(guò)快捷鍵可直接跳轉到每個(gè)錯誤的源代碼,方便修正錯誤。
看了《學(xué)習GNU Emacs》一書(shū)之后,就知道了。
個(gè)人.emacs文件中的內容:
;##compile;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
(define-key c-mode-base-map [(f9)] 'compile);emacs的compile命令快捷鍵F9
(setq compile-command "make");默認的make -k命令,變?yōu)閙ake命令
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
2.buffer切換
當打開(kāi)多個(gè)buffer的時(shí)候,相互之間切換,不要用'M-x o'了。
這種有序的切換方式,太慢了,影響工作效率。
請使用'shift + 光標':就是shift + (↑ ↓ ← →)
.emacs文件中追加
;; move window (Shift + cursor)
(windmove-default-keybindings)
(setq windmove-wrap-around t)
;;;;;;;;
本站僅提供存儲服務(wù),所有內容均由用戶(hù)發(fā)布,如發(fā)現有害或侵權內容,請點(diǎn)擊舉報。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
程序員的emacs配置大全(cedet+ecb+cscope+gdb-ui)-jzj
emacs配置詳解及C/C IDE全功能配置演示(附配置文件)
在Emacs下用C/C 編程
用emacs 建立開(kāi)發(fā)環(huán)境,安裝ecb和cedet的全過(guò)程
Emacs/自定義Emacs工具欄
[程序員小助手] Emacs,最強編輯器,沒(méi)有之一
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導長(cháng)圖 關(guān)注 下載文章
綁定賬號成功
后續可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服

欧美性猛交XXXX免费看蜜桃,成人网18免费韩国,亚洲国产成人精品区综合,欧美日韩一区二区三区高清不卡,亚洲综合一区二区精品久久