VS Code 配置调试参数、launch.json 配置文件属性、task.json 变量替换、自动保存并格式化、空格和制表符、函数调用关系、文件搜索和全局搜索、
1. 生成配置參數
對于大多數的調試都需要在當前項目目錄下創建一個 lanch.json 文件,位置是在當前項目目錄下生成一個 .vscode 的隱藏文件夾,在里面放置一些配置內容,比如:settings.json:工作空間設置、代碼格式化配置、插件配置。
.vscode 目錄里的配置只針對當前項目范圍內生效。將 .vscode 提交到代碼倉庫,大家統一配置時,會非常方便。
在該文件夾下在創建一個 lanch.json 文件。
為了創建 lanch.json 文件,需要點擊左側的調試按鈕進入到 Debug view 界面,或者點擊頂部的調試菜單選項。
2. 配置文件屬性
對與每一種(語言)調試器都會有自己特有的配置信息,可以 利用 IntelliSense suggestions 去查詢存在的配置項的信息,一般都會有備注說明。
? version:版本號,不用修改
? configurations:數組類型,用來配置 每一項調試任務的具體配置信息
? type:調試環境的具體類型 node、java、cppdbg 等等
? name:調試任務的名稱,用與在下拉列表中展示
? program:啟動文件的路徑,對于該路徑中的變量,下面在介紹
? request:調試模式,一共有兩種模式
launch:和應用一起啟動
attach:應用已經啟動了,但是又想在不重新啟動的情況下調試該應用,就可以把調試器附加到應用上
? runtimeExecutable:應用程序執行的時候的執行期,默認是 node,應該為決定路徑或者添加到 PATH 路徑上的
? console:啟動調試終端的位置,一般都 3 個值,如果你的打印信息出現在終端上,不能很好的查看對應變量值可以調整這個值
internalConsole:VS Code 的調試控制臺
integratedTerminal:VS Code 的集成終端
externalTerminal:VS Code 外部的集成終端
? env:對象,程序啟動是傳遞的環境變量
? args:程序啟動是傳遞的參數
? cwd:程序啟動是的跟目錄配置
? window:為 window 平臺單獨設置配置項
? linux:為 linux 平臺單獨設置配置項
? osx:為 Mac OS 平臺單獨設置配置項
3. 變量替換
VS Code 在 launch.json 調試文件和 task.json 任務文件中是支持變量替換的,這就意味可以很方便的使用 VS Code 一些預定義的變量。
{"version": "2.0.0","tasks": [{"type": "shell","label": "build","command": "/usr/bin/g++","args": ["-g","-std=c++11","${file}","-o","${fileDirname}/${fileBasenameNoExtension}"],"options": {"cwd": "${workspaceFolder}"},"problemMatcher": ["$gcc"],"group": "build"}]
}
變量的使用方式為:${variableName}。
下面介紹一些常用的變量:
? ${workspaceFolder}:項目文件夾在 VS Code 中打開的路徑
? ${file}:當前開打開(激活)的文件
? ${relativeFile}:相對于 {workspaceFolder} 的文件路徑
? ${fileBasename}:當前打開文件的名稱
? ${fileBasenameNoExtension}:當前打開文件的名稱,不帶擴展名的
? ${fileExtname}:當前打開文件的擴展名
? ${fileDirname}:當前打開文件的文件夾名稱
4. 代碼自動保存
方案一:
改完代碼后,默認不會自動保存。你可以在設置項里搜索 files.autoSave,修改配置項如下:
當光標離開該文件后,這個文件就會自動保存了。非常方便。
方案二:
當然,你也可以直接在菜單欄選擇 File->Auto Save。勾選后,當你寫完代碼后,文件會立即實時保存。
5. 保存代碼后立即格式化
保存代碼后,默認不會立即進行代碼的格式化。你可以在設置項里搜索 editor.formatOnSave 查看該配置項:
6. 空格 or 制表符
VS Code 會根據你所打開的文件來決定該使用空格還是制表。也就是說,如果你的項目中使用的都是制表符,那么,當你在寫新的代碼時,按下 tab 鍵后,編輯器就會識別成制表符。
常見的設置項如下:
editor.detectIndentation:自動檢測(默認開啟)。截圖如下:
editor.insertSpaces:按 Tab 鍵時插入空格(默認)。截圖如下
editor.tabSize:一個制表符默認等于四個空格。截圖如下:
7. 查找某個函數在哪些地方被調用了
比如我已經在a.js文件里調用了 foo()函數。那么,如果我想知道foo()函數在其他文件中是否也被調用了,該怎么做呢?
做法如下:在 a.js 文件里,選中foo()函數(或者將光標放置在foo()函數上),然后按住快捷鍵「Shift + F12」,就能看到 foo()函數在哪些地方被調用了,比較實用。
8. 在當前文件中搜索
在上面的快捷鍵列表中,我們已經知道如下快捷鍵:
? Cmd + F(Win 用戶是 Ctrl + F):在當前文件中搜索,光標在搜索框里
? Cmd + G(Win 用戶是 F3):在當前文件中搜索,光標仍停留在編輯器里
另外,你可能會注意到,搜索框里有很多按鈕,每個按鈕都對應著不同的功能,如下圖所示:
上圖中,你可以通過「Tab」鍵和「Shift + Tab」鍵在輸入框和替換框之間進行切換。
「在選定內容中查找」這個功能還是比較實用的。你也可以在設置項里搜索 editor.find.autoFindInSelection,勾選該設置項后,那么,當你選中指定內容后,然后按住「Cmd + F」,就可以自動只在這些內容里進行查找。該設置項如下圖所示:
9. 全局搜索
在上面的快捷鍵列表中,我們已經知道如下快捷鍵:
? Cmd + Shift + F(Win 用戶是 Ctrl + Shift +F):在全局的文件夾中進行搜索。效果如下:
上圖中,你可以點擊紅框部分,展開更多的配置項。
10. 將工作區放大/縮小
我們在上面的設置項里修改字體大小后,僅僅只是修改了代碼的字體大小。
如果你想要縮放整個工作區(包括代碼的字體、左側導航欄的字體等),可以按下快捷鍵「cmd +/-」。windows 用戶是按下「ctrl +/-」
當我們在投影儀上給別人演示代碼的時候,這一招十分管用。
如果你想恢復默認的工作區大小,可以在命令面板輸入重置縮放(英文是reset zoom)
11. 文件傳輸:sftp
如果你需要將本地文件通過 ftp 的形式上傳到局域網的服務器,可以安裝sftp這個插件,很好用。在公司會經常用到。
步驟如下:
(1)安裝插件sftp。
(2)配置 sftp.json文件。 插件安裝完成后,輸入快捷鍵「cmd+shift+P」彈出命令面板,然后輸入sftp:config,回車,當前工程的.vscode文件夾下就會自動生成一個sftp.json文件,我們需要在這個文件里配置的內容可以是:
? host:服務器的 IP 地址
? username:用戶名
? privateKeyPath:存放在本地的已配置好的用于登錄工作站的密鑰文件(也可以是 ppk 文件)
? remotePath:工作站上與本地工程同步的文件夾路徑,需要和本地工程文件根目錄同名,且在使用 sftp 上傳文件之前,要手動在工作站上 mkdir 生成這個根目錄
? ignore:指定在使用 sftp: sync to remote 的時候忽略的文件及文件夾,注意每一行后面有逗號,最后一行沒有逗號
舉例如下:(注意,其中的注釋需要去掉)
{"host": "192.168.xxx.xxx", //服務器 ip"port": 22, //端口,sftp 模式是 22"username": "", //用戶名"password": "", //密碼"protocol": "sftp", //模式"agent": null,"privateKeyPath": null,"passphrase": null,"passive": false,"interactiveAuth": false,"remotePath": "/root/node/build/", //服務器上的文件地址"context": "./server/build", //本地的文件地址"uploadOnSave": true, //監聽保存并上傳"syncMode": "update","watcher": {//監聽外部文件"files": false, //外部文件的絕對路徑"autoUpload": false,"autoDelete": false},"ignore": [//忽略項"**/.vscode/**","**/.git/**","**/.DS_Store"]
}
(3)在 VS Code 的當前文件里,選擇「右鍵 -> upload」,就可以將本地的代碼上傳到 指定的 ftp 服務器上(也就是在上方 host 中配置的服務器 ip)。
我們還可以選擇「右鍵 -> Diff with Remote」,就可以將本地的代碼和 ftp 服務器上的代碼做對比。
總結
以上是生活随笔為你收集整理的VS Code 配置调试参数、launch.json 配置文件属性、task.json 变量替换、自动保存并格式化、空格和制表符、函数调用关系、文件搜索和全局搜索、的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2022-2028年中国AKD施胶剂行业
- 下一篇: 2022-2028年中国集装箱涂料行业市