安裝git,nodejs和yarn
安裝Python27,3.x版本的不行,確保它在你的環境變量裏;
安裝gulpjavascript
npm install --global gulp-cli
安裝windows build tools:java
npm install --global windows-build-tools --vs2015
安裝node-gypnode
npm install -g node-gyp
上面安裝的一大堆東西,看似沒無關,其實他們大都是用來編譯原生nodejs插件的,
nodejs的原生插件不是基於2進制分發的,是源碼分發的,須要開發者本身編譯;
下載vscode的源碼;
用管理員的方式打開powershell,不是管理員身份不行git
在源碼根目錄下執行:yarn,安裝項目依賴的包,運行以前確保你處於FQ狀態
這行命令執行時,須要下載electron,會比較耗時;
執行github
yarn watch
這行會執行構建工做;直到你看到以下輸出,說明構建成功了!shell
Finished compilation with 0 errors after
看到這一行後,構建命令並無退出;
它會監視vscode源碼文件的變化,若是有變化,它會立刻執行增量的構建,實時反映源碼變化的結果,贊!
用管理員身份另起一個powershell,執行npm
.\scripts\code.bat
這行命令又會給你下載electron;
若是你不想下載,看看code.bat文件,會發現:gulp
:: Download Electron if needed node build\lib\electron.js
打開這個文件,你會發現:windows
// returns 0 if the right version of electron is in .build/electron
分析electron.js會發現,它須要的electron的版本號在根目錄下的.yarnrc文件中有配置electron
disturl "https://atom.io/download/electron" target "4.2.4" runtime "electron"
vscode用的electron版本不夠新,個人「想學嗎」都用到5.0.2了,它還在4.2.4,
這個版本對有些原生組件兼容的不太好,好比:這個issue
剛發現這個issue在今年4月底的時候,被這個pr解決了,哈,當我沒說!
若是你想加快下載速度,你能夠到淘寶的electron鏡像去下載相應的版本,
下載的壓縮包,解壓後放到這個目錄下.build/electron便可;
我發現vscode沒有用electron的ffmpeg.dll,而是用了一個體積更小的ffmpeg.dll,
具體是由於BUG仍是由於更小的體積,先不去深究。
運行起來後是這個樣子的(注意,它的圖標和title都和你下載的發行版是不同的)
若是要調試主進程的話,能夠看下圖,直接在主進程的代碼裏下斷點便可