標(biāo)題:可能是 GitHub 上迄今為止最奈斯的源碼瀏覽插件
大家好谐檀,我是沉默王二抡谐。
今天來給大家介紹一個(gè) GitHub 上的騷操作,簡(jiǎn)直了桐猬!
眾所周知麦撵,GitHub 是一個(gè)面向開源及私有軟件項(xiàng)目的托管平臺(tái),因?yàn)橹恢С?Git 作為唯一的版本庫格式進(jìn)行托管,故名 GitHub免胃。
GitHub 社交化的編碼理念讓它成為了國(guó)內(nèi)外開發(fā)者眼中神圣而不可侵犯的尤物音五,無數(shù)優(yōu)質(zhì)的開源項(xiàng)目依托于 GitHub,并在全球開發(fā)者的共同參與下蓬勃發(fā)展羔沙。
不過躺涝,講真,你有在 GitHub 上好好的讀過源碼嗎扼雏?
不用謙虛坚嗜,我估計(jì)大多數(shù)人沒有這個(gè)習(xí)慣(包括我啦)。GitHub 再優(yōu)秀诗充,和 IDE 還是有差距的苍蔬,在上面閱讀代碼實(shí)在是不夠方便。我有嘗試為 Chrome 瀏覽器裝過 Octotree蝴蜓、Sourcegraph 這樣的幫助插件碟绑,但仍然感覺用起來不夠愉快。
在我遇到今天分享的豬腳之前茎匠,用得最多的還是把倉(cāng)庫克隆到本地蜈敢,然后再通過 IDE 打開后去瀏覽。雖然我不是一名技術(shù)極客汽抚,但總覺得這種方法有點(diǎn)不夠潮抓狭。
如果能在瀏覽器中像 IDE 那樣閱讀 GitHub 源碼,該多好呢造烁?
那今天我就來給大家介紹這個(gè)騷到天際的騷操作否过,只需要在GitHub 倉(cāng)庫域名后面加上 1s
(1 秒內(nèi)),比如:
就能在瀏覽器里面使用 VS Code 環(huán)境來閱讀這個(gè)倉(cāng)庫的源碼惭蟋!
真的是大開眼界啊苗桂!
就在倉(cāng)庫的域名后加個(gè) 1s
,就能用支持語法高亮告组、代碼重構(gòu)的 VS Code
來閱讀源碼煤伟,大家服不服我不知道,反正我是服了木缝!
這是為什么呢便锨?背后發(fā)生了什么呢?
答案很簡(jiǎn)單我碟,這依賴于 GitHub 上星標(biāo) 15.3k 的一個(gè)倉(cāng)庫——名叫 Github1s放案,基于 VS Code 1.52.1,一個(gè)支持在瀏覽器里面直接工作的版本矫俺。
Github1s 的靈感主要借鑒了 code-server 這個(gè)優(yōu)秀的開源項(xiàng)目吱殉,星標(biāo)有 40.6K掸冤,可以將 VS Code 運(yùn)行在任何支持瀏覽器的機(jī)器上∮仰ǎ可以說稿湿,Github1s 是站在了巨人的肩膀上。
多虧了 VS Code 強(qiáng)大而又靈活的可擴(kuò)展性押赊,使我們可以借助它的 FileSystemProvider 接口實(shí)現(xiàn)自定義的文件 IO 擴(kuò)展缎罢。
另一方面,GitHub 也提供了強(qiáng)有力的 REST API考杉,使得我們可以自由地讀取倉(cāng)庫的目錄和文件策精。
也就是說,VS Code 的可擴(kuò)展性和 GitHub 的 REST API 成就了 Github1s 的強(qiáng)大功能崇棠。
由于 Github1s 是部署在 GitHub Pages 上的咽袜,所以它是一個(gè)純靜態(tài)的 Web 應(yīng)用程序,也就意味著它并不需要一臺(tái)專門為其提供服務(wù)的服務(wù)器枕稀。赤裸裸的白嫖啊询刹,還非常可靠萎坷,因?yàn)?GitHub Pages 就非嘲剂可靠,我的個(gè)人博客也是部署在 GitHub Pages 上的哆档。
美中不足的一點(diǎn)是蔽挠,只能閱讀源碼,不能編輯瓜浸,文件是只讀的——希望 Github1s 的作者能在未來實(shí)現(xiàn)這一點(diǎn)澳淑,那簡(jiǎn)直就不要太舒服了。
大家對(duì)這個(gè)騷操作感興趣的話插佛,不妨去試一下杠巡。如果有時(shí)間的話,可以順帶閱讀一下 Github1s 的源碼學(xué)習(xí)下雇寇。
給「沉默王二」公眾號(hào)加個(gè)星標(biāo)吧氢拥,從此你是風(fēng)兒我是傻,我們下期見锨侯!