大家好,我是小麥,上一次的文章《一個(gè)超級(jí)實(shí)用的源碼閱讀小技巧》,我簡(jiǎn)單提到通過(guò)gcc
+egypt
+graphviz(dot)
這三個(gè)工具,快速生成函數(shù)調(diào)用圖,總體來(lái)說(shuō)也非常好用。
眾所周知
VSCode
,Sorceinsight
非常好用, understand
相對(duì)小眾,但也非常優(yōu)質(zhì),不過(guò)需要收費(fèi)。
在一位大佬的推薦下,我試了一下開(kāi)源的代碼編輯器sourcetrail
,確實(shí)別具一格。下面簡(jiǎn)單來(lái)分享一下。
官網(wǎng)地址:https://www.sourcetrail.com/
sourcetrail
能夠十分高效的幫助開(kāi)發(fā)者去探索、熟悉陌生的代碼,目前支持 C、C++、Python 和 Java 語(yǔ)言,同時(shí)提供了相關(guān) SDK 用于拓展支持其它語(yǔ)言,相信在未來(lái)會(huì)提供更多語(yǔ)言的支持。
程序員在它的幫助下可以快速熟悉陌生項(xiàng)目、學(xué)習(xí)開(kāi)源項(xiàng)目、框架等。這個(gè)神器,大家可以去試試。
目前這個(gè)項(xiàng)目已經(jīng)開(kāi)源了GitHub地址:
https://github.com/CoatiSoftware/Sourcetrail/releases
跨平臺(tái),支持 Windows、macOS、Linux 這三個(gè)系統(tǒng);
下載地址:https:github.com/CoatiSoftware/Sourcetrail/releases
這里我下載的是安裝包是Sourcetrail_2021_1_30_Windows_64bit_Installer.zip
,安裝之后直接看效果圖,感覺(jué)還是相當(dāng)不錯(cuò)的。
下面簡(jiǎn)單介紹下如何使用 sourcetrail 閱讀源碼,這里我以Linux-0.12
的源碼為例,做一下簡(jiǎn)單的說(shuō)明;
首先雙擊打開(kāi)軟件,界面如下,點(diǎn)擊左側(cè)的 New Project
創(chuàng)建項(xiàng)目
設(shè)置好項(xiàng)目名稱,并把項(xiàng)目路徑設(shè)定為Linux-0.12
的源碼路徑,如下圖所示;
點(diǎn)擊 Add Source Group
,在左側(cè)的語(yǔ)言欄里選擇C
語(yǔ)言,然后選擇 Empty Java Source Group
:
如下圖中的索引號(hào),做一下簡(jiǎn)單介紹;
- 設(shè)置C標(biāo)準(zhǔn),如圖可以設(shè)置為C99;
- 可以設(shè)置交叉工具鏈;
- 添加源代碼的相關(guān)文件;索引3是必須要配置的選項(xiàng),1和2其實(shí)可以省略,添加完文件點(diǎn)擊
Create
。
選擇 All Files, 點(diǎn)擊 Start 按鈕,然后耐心等待。
完成之后發(fā)現(xiàn)提示中出現(xiàn)了很多錯(cuò)誤提示,忽略即可,這個(gè)完全不影響我們閱讀源碼。
后面就可以愉快地閱讀源代碼了。
項(xiàng)目中的符號(hào)都可以點(diǎn)擊,支持來(lái)回跳轉(zhuǎn),還支持模糊搜索。
左側(cè)源碼結(jié)構(gòu)非常清晰,對(duì)于熟悉陌生代碼結(jié)構(gòu)非常有用。
還可以與其他編輯器鏈接,比如:Atom, Clion, Eclipse, Emacs, IDEA 等等。
如果你還想挖掘更多的功能,可以參考一下官方文檔。