發(fā)布有半個(gè)月了,今天周末來(lái)玩下。
1.15 的發(fā)布說(shuō)明: https://code.visualstudio.com/updates/v1_15
本文講3點(diǎn):Snippet Choices、Mermaid in Markdown、Multiple Root and Workspace(重點(diǎn))
1.? snippet choices 終于可以使用
"color": {?
? ? "prefix":"color",
? ? "body":"> Pick your favorite color ${1|red,green,blue,pink|}.\n< He likes $1."
}
效果如下,會(huì)彈出下拉菜單供你選擇。1.14版本中已經(jīng)預(yù)告,但不能用,
其中涉及到 VSCode 的Suggestion,需要在 settings 中打開??赡苓€需要打開多個(gè),比如:
editor-editor.quickSuggestions 和 markdown-editor.quickSuggestions
另外,如果Suggestion不彈出的話,VSCode用 Ctrl+Space 來(lái)來(lái)主動(dòng)喚出,如果是Ubuntu的話此快捷鍵被切換輸入法占用,會(huì)導(dǎo)致喚不出,我選擇關(guān)閉Ubuntu的此快捷鍵,只用Shift即可切換輸入法也不錯(cuò)的。
關(guān)閉 ubuntu 的輸入法快捷鍵: 輸入法-設(shè)置-高級(jí)(拖到底)-打開Fcitx設(shè)置-GlobalConfig。
Snippet 是非常有效的,建議你一定要學(xué)會(huì)使用。
2. mermaid可以使用了
Markdown 中嵌入 mermaid 來(lái)繪圖,是我去年在團(tuán)隊(duì)中推廣的,但只能編譯成html后才能查看,VSCode 的左寫右看preview中不支持mermaid,1.15搞定了。
時(shí)序圖:
甘特圖:
好了,下面重點(diǎn)來(lái)了:
3. Multiple Root and Workspace
從2015年vscode開始,就有人提出來(lái)為什么不能在1個(gè)vscode窗口里打開多個(gè)文件夾(folder),開發(fā)組長(zhǎng)文解釋,但抗到今天終于還是沒(méi)抗住,終于開發(fā)出來(lái)了。
開發(fā)組的意見是:
1)vscode 是輕量級(jí)editor,全功能的IDE不是初衷,不希望給用戶引入workspace、project的概念。
2)vscode 一直是打開某個(gè)folder后,就在此folder下創(chuàng)建一個(gè) .vscode 隱藏文件夾,存放相關(guān)配置settings,思路和 git 放一個(gè) .git 是一樣的。綠色環(huán)保、copy文件夾后迅速恢復(fù)……一切都是即插即用方向走的
3)一旦1個(gè)vscode窗口打開了多個(gè)folders, .vscode 應(yīng)該放在哪個(gè) folder 里面呢?
4)如果多個(gè)folders里都有.git,那么vscode自帶的git工具該操作哪個(gè)呢?
沒(méi)辦法,隨著vscode越來(lái)越招人喜歡,大家就是要把它催化成IDE。開發(fā)組妥協(xié)了,引入了 Workspace 的概念,1個(gè)窗口可以打開1個(gè)文件、或1個(gè)folder、或1個(gè)workspace。為什么沒(méi)用 project 則個(gè)詞,畢竟 VS、XCode、QTCreator……這些都是用了project的,可能就是為了和IDE劃清界限。
遺憾的是 Multi Folder/Root 的功能仍是在 1.16的insiders 版本中,1,15正式版中仍沒(méi)出現(xiàn)。
當(dāng)1個(gè)vscode窗口打開多個(gè)多個(gè)folder時(shí)候,vscode會(huì)重新load一次:
不保存 workspace 的話,是個(gè) Untitled Workspace,會(huì)在 ~/.config/Code/Workspace 里存放其配置文件,首要包括的就是包括了哪些文件夾。
在 ~/.vscode 下可以看到 Code 和 Code-Insiders 中差別了一個(gè) Workspaces 文件夾。
當(dāng)你保存了 workspace 后, ~/.config/.../Workspaces 下的的配置文件將會(huì)被挪到你指定的目錄下。
缺點(diǎn)還是顯而易見的,確實(shí)引入了一些困擾。對(duì)于程序員來(lái)說(shuō)好像司空見慣,比如 Visual Stuido 創(chuàng)建個(gè)項(xiàng)目肯定伴隨這幾個(gè) .sln、.vcxproj ……這類文件,XCode、QTCreator、Pycharm、AndroidStudio、Eclipse、SourceInsight……無(wú)不都有一套自己定義的這些文件。
但非程序猿就很不愿見到這些東西,感覺(jué)是累贅,再向其推廣時(shí)這個(gè)特點(diǎn)將成為絆腳石。沒(méi)辦法,誰(shuí)讓在github上issue里整體叨逼叨的都是程序猿呢。