diff --git a/.vscode/launch.json b/.vscode/launch.json index af85601..48cebda 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -8,13 +8,15 @@ "program": "${workspaceFolder}/chsrc-debug", "args": [ "get", - "python" + "nodejs" ], "preLaunchTask": "构建 debug 版 chsrc", "stopAtEntry": true, "cwd": "${workspaceFolder}", "environment": [], - "externalConsole": false, + // 如果你认为使用弹出窗口难以调试,可尝试设置为false + "externalConsole": true, + // lldb 等请自行设置,不作额外说明 "MIMode": "gdb", // "miDebuggerPath": "/path/to/gdb", "setupCommands": [ @@ -28,7 +30,8 @@ "text": "-gdb-set disassembly-flavor intel", "ignoreFailures": true } - ] + ], + "postDebugTask": "停止 debug 程序" }, { @@ -58,4 +61,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 05447d0..6c4ce8c 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -17,7 +17,8 @@ "kind": "build", "isDefault": true }, - "detail": "使用 just build 编译" + "dependsOn": "停止程序", + "detail": "先停止原有程序,然后使用 just build 编译" }, { "type": "shell", @@ -36,7 +37,6 @@ "kind": "build", "isDefault": false }, - "detail": "使用 just build-in-debug-mode 编译 debug 版" }, { "type": "shell", @@ -94,7 +94,79 @@ "isDefault": false }, "detail": "使用 just test-xy 测试 xy.h" + }, + { + "type": "shell", + "label": "停止 debug 程序", + "windows": { + "command": "powershell", + "args": [ + "-c", + "Get-Process -Name \"chsrc-debug\" -ErrorAction SilentlyContinue | Stop-Process -Force;", + "Get-Process -Name \"gdb\" -ErrorAction SilentlyContinue | Stop-Process -Force;", + "Get-Process -Name \"WindowsDebugLauncher\" -ErrorAction SilentlyContinue | Stop-Process -Force;" + ] + }, + "linux": { + "command": "bash", + "args": [ + "-c", + "if pgrep -f chsrc-debug > /dev/null; then pkill -f chsrc-debug; fi" + ] + }, + "osx": { + "command": "bash", + "args": [ + "-c", + "if pgrep -f chsrc-debug > /dev/null; then pkill -f chsrc-debug; fi" + ] + }, + "group": "build", + "presentation": { + "echo": true, + "reveal": "silent", + "focus": false, + "panel": "shared", + "showReuseMessage": true, + "clear": false + }, + "detail": "停止 debug 版本的 chsrc" + }, + { + "type": "shell", + "label": "停止程序", + "windows": { + "command": "powershell", + "args": [ + "-c", + "Get-Process -Name \"chsrc\" -ErrorAction SilentlyContinue | Stop-Process -Force;" + ] + }, + "linux": { + "command": "bash", + "args": [ + "-c", + "if pgrep -f chsrc > /dev/null; then pkill -f chsrc; fi" + ] + }, + "osx": { + "command": "bash", + "args": [ + "-c", + "if pgrep -f chsrc > /dev/null; then pkill -f chsrc; fi" + ] + }, + "group": "build", + "presentation": { + "echo": true, + "reveal": "always", + "focus": false, + "panel": "shared", + "showReuseMessage": true, + "clear": false + }, + "detail": "跨平台停止 chsrc" } ], "version": "2.0.0" -} +} \ No newline at end of file