目錄
第1章 如何學習Visual Studio Code 1
1.1 學會搜索 1
1.2 學會提問 2
1.3 學會學習 3
1.3.1 自己的思考 3
1.3.2 知其然知其所以然 3
1.3.3 舉一反三 4
第2章 Visual Studio Code簡介 5
2.1 Visual Studio Code概覽 5
2.1.1 跨平颱 5
2.1.2 IntelliSense 5
2.1.3 代碼調試 6
2.1.4 內置的Git支持 6
2.2 Visual Studio Code簡史 6
2.3 Visual Studio Code的優勢 7
2.3.1 學習麯綫 7
2.3.2 用戶體驗 8
2.3.3 性能 8
2.3.4 插件 8
2.3.5 生態 9
2.4 Visual Studio Code開發團隊 9
2.5 Visual Studio Code是如何做開源的 10
2.5.1 代碼開源 10
2.5.2 Issues和Pull requests 11
2.5.3 開源的開發流程 11
2.5.4 開源的生態 11
第3章 核心組件 12
3.1 Electron 12
3.2 Monaco Editor 13
3.3 TypeScript 13
3.4 Language Server Protocol 15
3.5 Debug Adapter Protocol 16
3.6 Xterm.js 18
第4章 安裝與配置 20
4.1 概覽 20
4.1.1 硬件要求 20
4.1.2 平颱支持 20
4.1.3 跨平颱 21
4.1.4 更新頻率 21
4.1.5 附加組件 21
4.2 Linux 21
4.2.1 安裝 21
4.2.2 更新 23
4.2.3 把Visual Studio Code設置為默認編輯器 23
4.2.4 使用Windows係統進行Linux開發 24
4.3 macOS 24
4.3.1 安裝 24
4.3.2 從終端命令行啓動 24
4.3.3 觸控欄 25
4.3.4 首選項菜單 25
4.4 Windows 25
4.4.1 安裝 25
4.4.2 從終端命令行啓動 25
4.4.3 用戶安裝與係統安裝 25
第5章 快速入門 27
5.1 Visual Studio Code Insiders 27
5.2 設置 27
5.2.1 兩種不同範圍的設置 28
5.2.2 兩種設置方法 28
5.2.3 設置編輯器 28
5.2.4 JSON設置文件 30
5.2.5 語言的特定設置 31
5.2.6 設置與安全 33
5.2.7 常用的設置項 33
5.3 用戶界麵 34
5.3.1 基本布局 34
5.3.2 命令麵闆 35
5.3.3 並排編輯 37
5.3.4 縮略圖 38
5.3.5 麵包屑導航 39
5.3.6 文件資源管理器 40
5.3.7 禪模式 42
5.3.8 Tab(標簽頁) 42
5.3.9 窗口管理 43
5.4 編輯功能 44
5.4.1 多光標 44
5.4.2 列選擇 44
5.4.3 自動保存 44
5.4.4 熱退齣 45
5.4.5 搜索與替換 45
5.4.6 跨文件搜索 46
5.4.7 IntelliSense 47
5.4.8 代碼格式化 47
5.4.9 代碼摺疊 48
5.4.10 縮進 49
5.4.11 文件編碼 49
5.5 主題 50
5.5.1 設置顔色主題 51
5.5.2 設置文件圖標主題 52
5.5.3 插件市場中的主題 53
5.6 快捷鍵 53
5.6.1 快捷鍵編輯器 53
5.6.2 快捷鍵大全 54
5.6.3 鍵盤映射插件 55
5.6.4 解決快捷鍵衝突 56
5.6.5 查看默認的快捷鍵 56
5.6.6 查看更改的快捷鍵 57
5.6.7 高級配置 57
5.6.8 快捷鍵規則 58
5.6.9 有效的按鍵組閤 58
5.6.10 常用的快捷鍵 59
5.7 集成終端 61
5.7.1 打開集成終端 61
5.7.2 管理多個終端 61
5.7.3 配置終端 62
5.7.4 終端的顯示樣式 63
5.7.5 終端的快捷鍵 63
5.7.6 運行選中的文本 64
5.7.7 重命名終端 65
5.7.8 設置終端的打開路徑 65
5.8 中文顯示 65
第6章 進階應用 67
6.1 命令行 67
6.1.1 命令行幫助 67
6.1.2 通過命令行啓動Visual Studio Code 68
6.1.3 命令行核心選項 68
6.1.4 打開文件和文件夾 68
6.1.5 通過命令行管理插件 69
6.1.6 命令行高級選項 69
6.2 IntelliSense 69
6.2.1 不同編程語言的IntelliSense 69
6.2.2 IntelliSense功能 70
6.2.3 自動補全的類型 71
6.2.4 自定義IntelliSense 71
6.3 代碼導航 73
6.3.1 文件快速導航 73
6.3.2 麵包屑導航 73
6.3.3 代碼導航右鍵菜單 76
6.3.4 跳轉到定義 76
6.3.5 跳轉到類型定義 77
6.3.6 查找所有引用 77
6.3.7 通過內聯編輯器查看定義和引用 78
6.3.8 引用信息 78
6.3.9 跳轉到實現 79
6.3.10 跳轉到文件中的符號 79
6.3.11 跳轉到工作區中的符號 80
6.3.12 括號匹配 80
6.3.13 錯誤與警告 80
6.4 玩轉Git 81
6.4.1 版本控製插件 81
6.4.2 安裝Git 82
6.4.3 剋隆Git倉庫 82
6.4.4 源代碼管理視圖 82
6.4.5 Git commit 82
6.4.6 Git diff 83
6.4.7 Git分支 84
6.4.8 Git狀態欄 85
6.4.9 Gutter提示 86
6.4.10 閤並衝突 86
6.4.11 把Visual Studio Code作為Git編輯器 87
6.5 打造自己的主題 87
6.5.1 自定義工作颱的顔色主題 88
6.5.2 自定義編輯器的顔色主題 89
6.5.3 顔色主題配置大全 90
6.6 快速創建可復用的代碼片段 90
6.6.1 代碼片段插件 90
6.6.2 使用代碼片段 91
6.6.3 創建自定義的代碼片段 92
6.6.4 代碼片段的生效範圍 93
6.6.5 代碼片段的語法 94
6.6.6 為代碼片段添加快捷鍵 96
6.7 Task,把重復的工作自動化 97
6.7.1 配置第一個Hello World的Task 97
6.7.2 配置一個更復雜的Task 99
6.7.3 Task自動檢測 100
6.7.4 自定義自動檢測的Task 102
6.7.5 問題匹配器 103
6.7.6 命令參數 103
6.7.7 輸齣行為 104
6.7.8 運行行為 105
6.7.9 變量替換 105
6.7.10 命令麵闆 109
6.7.11 快捷鍵綁定 109
6.7.12 操作係統的相關屬性 110
6.7.13 後颱運行的Task 110
6.8 Multi-root Workspaces 112
6.8.1 管理文件夾 112
6.8.2 工作區文件 114
6.8.3 用戶界麵 116
6.8.4 設置 117
6.8.5 源代碼管理 119
6.8.6 插件推薦 119
6.9 調試與運行 120
6.9.1 調試器插件 120
6.9.2 調試與運行視圖 121
6.9.3 調試與運行菜單 121
6.9.4 調試模式與運行模式 122
6.9.5 launch.json調試配置 122
6.9.6 launch.json屬性 123
6.9.7 變量替換 123
6.9.8 與操作係統相關的屬性 124
6.9.9 全局的launch.json配置 124
6.9.10 多目標調試 124
第7章 插件 126
7.1 插件市場 126
7.1.1 插件市場主頁 126
7.1.2 插件搜索 128
7.1.3 插件頁麵 131
7.2 插件管理 133
7.2.1 搜索與瀏覽 133
7.2.2 通過插件管理視圖管理插件 138
7.2.3 通過命令行管理插件 141
7.2.4 離綫安裝插件 142
7.2.5 插件推薦 142
7.2.6 插件的安裝目錄 143
7.3 那些不錯的插件 143
7.3.1 REST Client:也許是比Postman更好的選擇 143
7.3.2 Code Runner:代碼一鍵運行,支持40多種語言 147
7.3.3 為你的代碼再添上一抹亮色 150
7.3.4 更強的Git集成 154
7.3.5 Web開發利器 157
7.3.6 輕鬆管理數據庫 167
7.3.7 提升開發效能 169
7.3.8 好用的工具類插件 171
7.3.9 容器開發 172
7.3.10 移動開發 172
7.3.11 LeetCode插件:程序員的Offer收割利器 173
7.3.12 有點兒好看的主題插件 173
7.3.13 不止代碼!放鬆一下,那些勞逸結閤的插件 174
第8章 語言深入 176
8.1 概覽 176
8.1.1 編程語言插件 176
8.1.2 對編程語言的支持 177
8.1.3 為文件設置編程語言的類型 177
8.1.4 語言ID 178
8.1.5 把文件擴展名添加到編程語言中 179
8.2 Python 180
8.2.1 快速開始 180
8.2.2 代碼編輯 185
8.2.3 靜態代碼檢查 190
8.2.4 調試 192
8.2.5 Jupyter Notebooks 198
8.2.6 Python交互式窗口 204
8.2.7 測試 207
8.2.8 Python插件推薦 212
8.3 JavaScript 213
8.3.1 JavaScript、ECMAScript與Node.js 213
8.3.2 快速開始 214
8.3.3 代碼編輯 216
8.3.4 調試 222
8.2.5 靜態代碼檢查 230
8.2.6 測試 231
8.2.7 JavaScript插件推薦 232
8.4 TypeScript 233
8.4.1 快速開始 233
8.4.2 一鍵運行TypeScript 235
8.4.3 編譯 237
8.4.4 調試 238
8.4.5 代碼編輯 241
8.5 Java 242
8.5.1 快速開始 242
8.5.2 代碼編輯 245
8.5.3 調試 248
8.5.4 測試 252
8.5.5 Java項目管理 254
8.5.6 Java插件推薦 259
8.6 C# 261
8.6.1 快速開始 261
8.6.2 代碼編輯 263
8.6.3 調試 266
8.6.4 測試 268
8.6.5 C#插件推薦 270
8.7 C/C++ 271
8.7.1 快速開始 271
8.7.2 調試 273
8.7.3 設置 278
8.7.4 代碼編輯 282
8.7.5 C/C++插件推薦 284
8.8 Go 284
8.8.1 快速開始 284
8.8.2 調試 286
8.8.3 代碼編輯 288
8.8.4 測試 291
8.9 更多語言支持 291
8.9.1 PHP 292
8.9.2 Rust 292
8.9.3 Dart 293
8.9.4 Ruby 293
8.9.5 Lua 294
8.9.6 R 294
8.9.7 Matlab 296
8.9.8 D 296
8.9.9 F# 296
第9章 前端開發 298
9.1 HTML 298
9.1.1 IntelliSense 298
9.1.2 自動閉閤標簽 299
9.1.3 顔色選擇器 299
9.1.4 驗證嵌入的JavaScript和CSS 300
9.1.5 代碼摺疊 300
9.1.6 代碼格式化 301
9.1.7 自定義HTML數據格式 302
9.1.8 HTML插件推薦 303
9.2 CSS、SCSS和Less 305
9.2.1 IntelliSense 305
9.2.2 顔色預覽 305
9.2.3 顔色選擇器 305
9.2.4 代碼摺疊 306
9.2.5 靜態代碼檢查 307
9.2.6 跳轉到CSS符號 307
9.2.7 懸停預覽 307
9.2.8 自定義CSS數據格式 307
9.2.9 CSS插件推薦 309
9.3 Emmet 310
9.3.1 Emmet的支持範圍 310
9.3.2 在HTML中使用Emmet 310
9.3.3 在CSS中使用Emmet 311
9.3.4 使用Tab鍵展開Emmet縮寫 311
9.3.5 在建議列錶中禁用Emmet縮寫 312
9.3.6 Emmet縮寫在建議列錶中的順序 312
9.3.7 在其他文件中啓用Emmet縮寫 312
9.3.8 Emmet設置項 312
9.4 React 313
9.4.1 快速開始 313
9.4.2 調試React 314
9.4.3 IntelliSense 316
9.4.4 代碼導航 317
9.4.5 靜態代碼檢查 317
9.4.6 React插件推薦 317
9.5 Angular 318
9.5.1 快速開始 318
9.5.2 調試Angular 319
9.5.3 IntelliSense 321
9.5.4 代碼導航 321
9.5.5 Angular插件推薦 321
9.6 Vue 322
9.6.1 快速開始 322
9.6.2 Vetur插件 323
9.6.3 調試Vue 323
9.6.4 IntelliSense 326
9.6.5 代碼導航 326
9.6.6 靜態代碼檢查 326
9.6.7. Vue插件推薦 327
9.7 前端插件推薦 327
9.7.1 Beautify 327
9.7.2 Prettier - Code formatter 327
9.7.3 JavaScript (ES6) code snippets 328
第10章 雲計算開發 329
10.1 微軟Azure 329
10.1.1 Azure插件 329
10.1.2 輕鬆上雲 331
10.1.3 Serverless開發 333
10.1.4 Web應用開發 338
10.1.5 數據庫開發 340
10.1.6 更多Azure插件推薦 342
10.2 AWS 343
10.3 Google Cloud Platform 345
10.4 阿裏雲 348
10.4.1 Alibaba Cloud Toolkit 348
10.4.2 Aliyun Serverless 349
10.5 騰訊雲 351
第11章 物聯網開發 353
11.1 設備端開發 353
11.1.1 PlatformIO開發生態 353
11.1.2 瞭解PlatformIO IDE 355
11.1.3 使用PlatformIO IDE 355
11.2 設備上雲 359
11.2.1 瞭解Azure IoT Hub 360
11.2.2 瞭解Azure IoT Hub插件 360
11.2.3 使用Azure IoT Hub插件進行物聯網開發 360
11.3 設備模擬 364
11.4 邊緣計算 366
11.4.1 瞭解Azure IoT Edge 366
11.4.2 Azure IoT Edge插件 367
11.5 物聯網插件推薦 368
11.5.1 Espressif IDF 368
11.5.2 Arduino 368
11.5.3 Workbench 369
11.5.4 Cortex-Debug 369
11.5.5 Azure IoT Tools 369
第12章 遠程開發 371
12.1 遠程開發概覽 371
12.2 遠程開發插件 372
12.3 SSH 372
12.3.1 快速開始 373
12.3.2 係統要求 382
12.3.3 管理SSH遠程機器 383
12.3.4 管理插件 384
12.3.5 端口轉發 386
12.3.6 打開遠程SSH主機的終端 387
12.3.7 遠程SSH主機的設置 387
12.3.8 清理遠程SSH主機上的Visual Studio Code服務器 388
12.4 容器 388
12.4.1 快速開始 388
12.4.2 係統要求 392
12.4.3 devcontainer.json文件 392
12.4.4 樣例項目 394
12.4.5 直接打開Git項目 394
12.4.6 管理容器 394
12.4.7 管理插件 396
12.4.8 端口轉發 398
12.4.9 打開開發容器的終端 398
12.4.10 開發容器的設置 398
12.5 WSL 399
12.5.1 快速開始 400
12.5.2 管理WSL 402
12.5.3 管理插件 402
12.5.4 打開WSL的終端 404
12.5.5 遠程WSL的設置 404
第13章 Visual Studio family 405
13.1 Visual Studio、Visual Studio Code、Visual Studio Codespaces,你都分清楚瞭嗎 405
13.2 Visual Studio Codespaces 406
13.2.1 概覽 406
13.2.2 4種開發模式 408
13.2.3 使用Visual Studio Codespaces 409
13.2.4 自托管的環境 426
13.2.5 自建Web版Visual Studio Code 427
13.3 Visual Studio Live Share 429
13.3.1 概覽 429
13.3.2 使用Visual Studio Live Share 429
13.3.3 Visual Studio Live Share插件推薦 436
13.4 Visual Studio IntelliCode 437
13.4.1 概覽 437
13.4.2 使用Visual Studio IntelliCode 438
第14章 成為Visual Studio Code的貢獻者 440
14.1 GitHub Issues 440
14.1.1 報告bug 440
14.1.2 功能請求 441
14.1.3 分享你的反饋與想法 441
14.1.4 翻譯中文Issue 442
14.2 提問 442
14.3 討論 443
14.4 GitHub Pull requests 443
14.5 插件 443
14.6 翻譯 443
第15章 插件開發 445
15.1 如何打造一款優秀的Visual Studio Code插件 445
15.1.1 設計 445
15.1.2 實現 448
15.1.3 推廣 449
15.1.4 維護 450
15.2 你的第一個Visual Studio Code插件 451
15.2.1 搭建開發環境 451
15.2.2 創建插件項目 451
15.2.3 運行插件 452
15.2.4 開發插件 452
15.2.5 調試插件 453
15.2.6 插件項目的文件結構 453
15.2.7 package.json插件清單文件 454
15.2.8 extension.ts插件入口文件 455
15.3 Visual Studio Code插件的擴展能力 456
15.3.1 Visual Studio Code插件的設計理念 456
15.3.2 通用功能的擴展能力 457
15.3.3 工作區用戶界麵的擴展能力 459
15.3.4 主題的擴展能力 460
15.3.5 編程語言的擴展能力 460
15.3.6 調試功能的擴展能力 461
15.4 插件開發麵麵觀 461
15.4.1 插件樣例 461
15.4.2 Command命令 464
15.4.3 樹狀視圖 468
15.4.4 網頁視圖 472
15.4.5 集成終端 482
15.4.6 存儲 483
15.4.7 主題 485
15.4.8 編程語言 490
15.4.9 更多常用的API 495
15.5 插件開發的生命周期 496
15.5.1 插件測試 496
15.5.2 插件發布 498
15.5.3 持續集成 500
· · · · · · (
收起)