VSCode是一款非常好用的編輯器(或者IDE),具有很好的可擴展性,功能比較強大,占用的系統資源也適中,啟動速度較快,而且支持全平台,比較適合作為Python開發用的IDE。
本文針對Linux(主要是Ubuntu,其他發行版類似),整合一些Python開發相關的配置,僅供剛入坑Linuxer參考。
一、VSCode與其他編輯器(或IDE)的比較
(1)VSCode與Atom的比較:
Atom是一款由github打造的支持全平台的可擴展性非常好的編輯器,基本上VSCode能做的事情,Atom都可以做到,而且Atom的插件可能更多更強大,但Atom的運行效率並不高,占用系統資源較多;
(2)VSCode與Pycharm比較:
Pycharm是專門為Python打造的IDE,功能強大,但比較臃腫,啟動慢,功能繁復,專業版需要激活(雖然可以輕松破解),然而Python的哲學本身就是“簡單勝過復雜”,有時候相對復雜的Pycharm就顯得沒有必要了;
(3)VSCode與Sublime比較:
Sublime運行比較快,占用資源更少,也有比較豐富的插件。但Sublime只適合用來寫較小的Python腳本,對於Django項目、Flask項目等支持不好,而且Sublime沒有一個很好的集成終端的插件,也沒有調試功能;
(4)VSCode和Vim比較:
Vim通過配置,也可以成為一個好用的IDE,而且逼格比較高,但要熟練使用vi命令,需要大量的時間,學習成本相對較高,而且對一些大項目而言,效率就不是很高了;
(5)VSCode和Komodo IDE比較:
Komodo IDE是收費軟件,也支持全平台。其中,它有個免費版,叫Komodo Editor。它占用的資源也還可以,但反應速度似乎有一點點不夠理想,而且習慣了Pycharm的各種快捷鍵之後,對Komodo也沒那麼多想法了……
綜上,VSCode相對來說,可以作為一個比較理想的Python IDE。
二、下載和安裝VSCode(Ubuntu下)
VSCode官方主頁:https://code.visualstudio.com/;
下載相應的安裝包,比如64位的deb安裝包:code_1.20.1-1518535978_amd64.deb;
在終端切換到安裝文件所在的目錄下,用sudo dpkg -i code_*_amd64.deb命令安裝即可;
三、安裝插件
[1]Python有關:
(1)Python Extension Pack:(這是一個Python擴展包,它依賴於以下擴展包)
(a)Python:支持linting(一種錯誤提示功能),debugging(調試),code navigation(代碼導航)等;
(b)Jupyter:Jupyter Notebook筆者用得比較少,這裡就不做介紹了;
(c)MagicPython:這是個語法高亮插件;
(d)Jinja:支持Jinja模板引擎語法高亮;
(e)Django Template:Django模板代碼片段和語法高亮;
(f)Django Snippets:Django代碼片段;
(2)Python Docstring:快速生成文檔注釋的插件;
(3)Python Extended:這也是個Python代碼片段有關的插件,能夠自動提供調用的方法的所有參數,用起來也比較方便;
(4)python traceback jumper:支持源代碼之間的點擊跳轉的插件;
(5)Django:支持Django項目開發相關的插件;
(6)Cython:支持Cython語法高亮的插件;
(7)Tornado:支持Tornado開發相關的插件;
(6)flask-snippets:支持flask模塊代碼片段的插件;
[2]編輯器有關:
(1)IntelliJ IDEA Keybindings:可以提供和Pycharm一樣的快捷鍵綁定的插件,也就不用擔心從Pycharm轉VSCode的時候要重新記憶快捷鍵了;
(2)各種顏色主題(可以在商店中搜索“theme”)和圖標主題(可以搜索“icon”);
(3)backgroud:可以使用圖片作為編輯器區域的背景;
[3]前端開發有關:
(1)HTML Snippets:HTML代碼片段插件;
(2)JQuery Code Snippets:JQuery代碼片段插件;
(3)Bootstrap 4:前端框架bootstrap相關的插件;
(4)Path Autocomplete:路徑補全插件
(5)open in browser:快速用浏覽器打開html,支持火狐和谷歌浏覽器;VSCode是一款非常好用的編輯器(或者IDE),具有很好的可擴展性,功能比較強大,占用的系統資源也適中,啟動速度較快,而且支持全平台,比較適合作為Python開發用的IDE。
以下是筆者的配置文件:
{
"editor.fontSize": 16, //設置編輯器字體大小
"terminal.integrated.fontSize": 15, //設置集成終端的字體大小
"window.zoomLevel": 0.3,
"python.pythonPath": "~/.conda/envs/py3/bin/python3.6",//設置python解釋器路徑
"python.linting.pylintPath": "pylint",
"python.linting.pylintArgs": [
"--load-plugins", "pylint_django"
],
"python.formatting.autopep8Path": "autopep8",
"python.linting.flake8Enabled": true,
"python.linting.enabled": false,
"workbench.editor.enablePreview": false,
"python.formatting.provider": "yapf",
"files.autoSave": "afterDelay",
"editor.wordWrapColumn": 100,
"editor.wordWrap": "on",
"editor.renderIndentGuides": false,
"background.enabled": true,
"background.useDefault": false,
"background.customImages": [
"file:///usr/share/backgrounds/wallpaper/python.png",
],
"background.style": {
"content": "''",
"pointer-events": "none",
"position": "absolute",
"z-index": "99999",
"width": "100%",
"height": "100%",
"background-position": "center",
"background-repeat": "no-repeat",
"background-size": "100%,90%",
"opacity": 0.2
},
"workbench.colorTheme": "ƒ - Monokai - Operator Mono/Italic",
"vsicons.dontShowNewVersionMessage": true,
"material-icon-theme.showUpdateMessage": false,
"workbench.iconTheme": "vscode-great-icons"
}