Visual Studio Code是個現下比較流行的編輯器,啓動很是快,徹底能夠用來代替其餘文本文件編輯工具。又能夠用來作開發,支持各類語言,相比其餘IDE,輕量級徹底可配置還集成Git感受很是的適合前端開發。 因此我仔細研究了一下文檔將來可能會做爲主力工具使用。javascript
牛逼調試工具
VS Code的內置調試器幫助加速你的編輯,編譯和調試循環。
總覽一下調試框的幾個功能分區
運行配置
- 建立你的運行配置文件 - launch.json
- 單擊最上方面板調試視圖中的齒輪圖標,選擇調試環境,而後VS Code將在你的工做空間的 .vscode目錄下生成一個launch.json文件。
調試器環境配置栗子
{
"version": "0.2.0",
"configurations": [
{
"name": "Launch",
"type": "node",
"request": "launch",
"program": "${workspaceRoot}/app.js",
"stopOnEntry": false,
"args": [],
"cwd": "${workspaceRoot}",
"preLaunchTask": null,
"runtimeExecutable": null,
"runtimeArgs": [
"--nolazy"
],
"env": {
"NODE_ENV": "development"
},
"externalConsole": false,
"sourceMaps": false,
"outDir": null
},
{
"name": "Attach",
"type": "node",
"request": "attach",
"port": 5858,
"address": "localhost",
"restart": false,
"sourceMaps": false,
"outDir": null,
"localRoot": "${workspaceRoot}",
"remoteRoot": null
}
]
}
{
"version": "0.2.0",
"configurations": [
{
"type": "chrome",
"request": "launch",
"name": "Launch Chrome",
"url": "http://localhost:8085",
"webRoot": "${workspaceRoot}/FrontEnd/src/main.js"
}
]
}
下面以生成chrome調試器,進入調試模式爲例描述一下步驟
調試動做
一旦開始一個調試會話,調試動做面板將出如今編輯器的最上方
- 繼續 / 暫停 kb(workbench.action.debug.continue)
- 單步跳過 kb(workbench.action.debug.stepOver)
- 單步跳入 kb(workbench.action.debug.stepInto)
- 單步跳出 kb(workbench.action.debug.stepOut)
- 從新啓動 kb(workbench.action.debug.restart)
- 中止 kb(workbench.action.debug.stop)
- Continue / Pause kb(workbench.action.debug.continue)
- Step Over kb(workbench.action.debug.stepOver)
- Step Into kb(workbench.action.debug.stepInto)
- Step Out kb(workbench.action.debug.stepOut)
- Restart kb(workbench.action.debug.restart)
- Stop kb(workbench.action.debug.stop)
斷點
點擊編輯器邊距能夠設置或取消斷點。更好的斷點控制(啓用/禁用/從新啓用)能夠在調試視圖中的斷點區域設置。
- 編輯器邊距中的斷點通常用紅色的實心圓表示。
- 禁用的斷點有一個塗成灰色的圓。
- 當一個調試會話開始後,不能註冊到調試器的斷點變爲灰色突起的圓。
數據注入
注入變量到調試視圖的變量區域,或者經過懸停在編輯器中的源碼上。變量和表達式計算是相對於調用棧中選中的棧幀的。
主命令框
最重要的功能就是F1或Ctrl+Shift+P打開的命令面板了,在這個命令框裏能夠執行VSCode的任何一條命令,甚相當閉這個編輯器。
按一下Backspace會進入到Ctrl+P模式裏
在Ctrl+P下輸入>又能夠回到Ctrl+Shift+P模式。
在Ctrl+P窗口下還能夠進行一下操做
- 直接輸入文件名,跳轉到文件
- ? 列出當前可執行的動做
- ! 顯示Errors或Warnings,也能夠`Ctrl+Shift+M
- : 跳轉到行數,也能夠Ctrl+G直接進入
- @ 跳轉到symbol(搜索變量或者函數),也能夠Ctrl+Shift+O直接進入
- @:根據分類跳轉symbol,查找屬性或函數,也能夠Ctrl+Shift+O後輸入:進入
- # 根據名字查找symbol,也能夠Ctrl+T
經常使用快捷鍵整理
編輯器與窗口管理
同時打開多個窗口(查看多個項目)
- 打開一個新窗口: Ctrl+Shift+N
- 關閉窗口: Ctrl+Shift+W
同時打開多個編輯器(查看多個文件)
- 新建文件 Ctrl+N
- 文件之間切換 Ctrl+Tab
- 切出一個新的編輯器(最多3個)Ctrl+,也能夠按住Ctrl鼠標點擊Explorer裏的文件名
- 左中右3個編輯器的快捷鍵Ctrl+1 Ctrl+2 Ctrl+3
- 3個編輯器之間循環切換 Ctrl+`
- 編輯器換位置,Ctrl+k而後按Left或Right
代碼編輯
格式調整
- 代碼行縮進Ctrl+[ Ctrl+]
- Ctrl+C Ctrl+V若是不選中,默認複製或剪切一整行
- 代碼格式化:Shift+Alt+F,或Ctrl+Shift+P後輸入format code
- 上下移動一行: Alt+Up 或 Alt+Down
- 向上向下複製一行: Shift+Alt+Up或Shift+Alt+Down
- 在當前行下邊插入一行Ctrl+Enter
- 在當前行上方插入一行Ctrl+Shift+Enter
光標相關
- 移動到行首:Home
- 移動到行尾:End
- 移動到文件結尾:Ctrl+End
- 移動到文件開頭:Ctrl+Home
- 移動到定義處:F12
- 定義處縮略圖:只看一眼而不跳轉過去Alt+F12
- 移動到後半個括號 Ctrl+Shift+]
- 選擇從光標到行尾Shift+End
- 選擇從行首到光標處Shift+Home
- 刪除光標右側的全部字Ctrl+Delete
- Shrink/expand selection: Shift+Alt+Left和Shift+Alt+Right
- Multi-Cursor:能夠連續選擇多處,而後一塊兒修改,Alt+Click添加cursor或者Ctrl+Alt+Down 或 Ctrl+Alt+Up
- 同時選中全部匹配的Ctrl+Shift+L
- Ctrl+D下一個匹配的也被選中(被我自定義成刪除當前行了,見下邊Ctrl+Shift+K)
- 回退上一個光標操做Ctrl+U
重構代碼
- 找到全部的引用:Shift+F12
- 同時修改本文件中全部匹配的:Ctrl+F12
- 重命名:好比要修改一個方法名,能夠選中後按F2,輸入新的名字,回車,會發現全部的文件都修改過了
- 跳轉到下一個Error或Warning:當有多個錯誤時能夠按F8逐個跳轉
- 查看diff 在explorer裏選擇文件右鍵 Set file to compare,而後須要對比的文件上右鍵選擇Compare with 'file_name_you_chose'.
查找替換
- 查找 Ctrl+F
- 查找替換 Ctrl+H
- 整個文件夾中查找 Ctrl+Shift+F
調試相關
- 終端:Ctrl + 、 打開終端,能夠直接在此處啓動node環境項目
- 調試控制檯:Ctrl+Shift+Y
- 輸出:Ctrl+Shift+U
- 問題:Ctrl+Shift+M 警告錯誤會在此輸出
顯示相關
- 全屏:F11
- zoomIn/zoomOut:Ctrl + =/Ctrl + -
- 側邊欄顯/隱:Ctrl+B
其餘
- 自動保存:File -> AutoSave ,或者Ctrl+Shift+P,輸入 auto
修改默認快捷鍵
File -> Preferences -> Keyboard Shortcuts
修改keybindings.json,個人顯示在這裏C:UsersAdministratorAppDataRoamingCodeUserkeybindings.json
// Place your key bindings in this file to overwrite the defaults
[
//ctrl+space被切換輸入法快捷鍵佔用
{
"key": "ctrl+alt+space",
"command": "editor.action.triggerSuggest",
"when": "editorTextFocus"
},
// ctrl+d刪除一行
{
"key": "ctrl+d",
"command": "editor.action.deleteLines",
"when": "editorTextFocus"
},
{
"key": "ctrl+shift+k", //與刪除一行的快捷鍵互換了:)
"command": "editor.action.addSelectionToNextFindMatch",
"when": "editorFocus"
},
//ctrl+shift+/多行註釋
{
"key":"ctrl+shift+/",
"command": "editor.action.blockComment",
"when": "editorTextFocus"
}
]
自定義設置參考
vscode 自定義配置參考:
{
"editor.fontSize": 18,
"files.associations": {
"*.es": "javascript",
"*.es6": "javascript"
},
// 控制編輯器是否應呈現空白字符
"editor.renderWhitespace": true,
// 啓用後,將在保存文件時剪裁尾隨空格。
"files.trimTrailingWhitespace": true,
// File extensions that can be beautified as javascript or JSON.
"beautify.JSfiles": [
"",
"es",
"es6",
"js",
"json",
"jsbeautifyrc",
"jshintrc"
]
}
前端開發必備插件
功能性插件
- Auto Close Tag : 匹配標籤,關閉對應的標籤。很實用【HTML/XML】
- Auto Rename Tag : sublime和webstorm也有這個內置功能,改變標籤的時候同時改動開閉合標籤;【HTML/XML】
- Debugger for Chrome :Chrome斷點調試工具,Ctrl + F4
- beautify : 良好的拓展性,能夠格式化JSON|JS|HTML|CSS|SCSS,比內置格式化好用
- Code Runner : 代碼編譯運行看結果,支持衆多語言
- colorize : 會給顏色代碼增長一個當前匹配代碼顏色的背景,很是好
- Document This : JSDOC註解調用,值得易用
- Git History : 不得不讚的插件,誰用誰知道,功能很贊
- HTML CSS Support : 這個也是必備插件之一
- Path Autocomplete : 路徑智能補全
- Path Intellisense : 路徑智能提示
- SCSS IntelliSense Preview : SCSS智能提醒,配置強大
- Syncing: 這個同步插件要比官方市場那個最高下載量的要好,支持刪除同步!!!
- Version Lens : 能夠及時看到package.json內部版本的變更,很實用
- Output Colorizer : 能夠終端日誌輸出着色,實用
- Add jsdoc comments :添加註釋擴展,打開命令面板(Windows上的f1)並查找命令「Add jsdoc comments」,點擊回車。
- Markdown Shortcuts :標記語法的快捷轉化方式
代碼片斷插件
- JavaScript (ES6) code snippets : ES6的代碼片斷,實用
- JavaScript Snippet Pack : ES5及如下的代碼片斷,實用
語法校驗
- stylelint : 比內置的要全,更智能
- stylefmt 是一個基於 stylelint 的代碼修正工具,它能夠基於 stylelint
的代碼規範約定配置,對可修正的地方做格式化輸出
- PostCSS Sorting : 是一個 CSS 屬性順序約定格式化的插件,基於屬性順序約定,格式化調整其順序。這可使得團隊內的 CSS 書寫更爲規範且具備一致性。
引用一位好心人總結的中文文檔,能夠去多多瞭解
https://jeasonstudio.gitbooks...前端