diff options
Diffstat (limited to '.vscode')
| -rw-r--r-- | .vscode/extensions.json | 6 | ||||
| -rw-r--r-- | .vscode/launch.json | 31 | ||||
| -rw-r--r-- | .vscode/settings.json | 42 | ||||
| -rw-r--r-- | .vscode/tasks.json | 6 |
4 files changed, 64 insertions, 21 deletions
diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 69d954c..2b19ba3 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,5 +1,9 @@ { "recommendations": [ - "ms-vscode-remote.vscode-remote-extensionpack" + "basdp.language-gas-x86", + "llvm-vs-code-extensions.vscode-clangd", + "ms-vscode.cmake-tools", + "KylinIdeTeam.cppdebug", + "zixuanwang.linkerscript" ] }
\ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json index e522ad5..6478c96 100644 --- a/.vscode/launch.json +++ b/.vscode/launch.json @@ -3,18 +3,29 @@ "configurations": [ { "name": "(gdb) QEMU", - "type": "gdb", - "request": "attach", - "remote": true, - "target": "localhost:1234", - "valuesFormatting": "prettyPrinters", - "gdbpath": "x86_64-pc-elf-gdb", + "type": "cppdbg", + "request": "launch", "cwd": "${workspaceFolder}", + "stopAtEntry": true, + "miDebuggerServerAddress": "localhost:1234", + "miDebuggerPath": "x86_64-pc-elf-gdb", "preLaunchTask": "QEMU (gdb)", - "executable": "${command:cmake.buildDirectory}/bin/${command:cmake.buildType}/_kernel", - "autorun": [ - "-enable-pretty-printing", - "-break-insert _start" + "MIMode": "gdb", + "program": "${command:cmake.buildDirectory}/bin/${command:cmake.buildType}/kernel.sym", + "setupCommands": [ + { + "description": "Enable pretty-printing for gdb", + "text": "-enable-pretty-printing", + "ignoreFailures": true + }, + { + "description": "Load code", + "text": "-file-exec-file ${command:cmake.buildDirectory}/bin/${command:cmake.buildType}/kernel.elf" + }, + { + "description": "Load symbols", + "text": "-file-exec-and-symbols ${command:cmake.buildDirectory}/bin/${command:cmake.buildType}/kernel.sym" + } ] } ] diff --git a/.vscode/settings.json b/.vscode/settings.json index 6178035..7f588f4 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,18 +1,44 @@ { "cmake.useCMakePresets": "always", "cmake.options.statusBarVisibility": "visible", - + "clangd.arguments": [ "--compile-commands-dir=${workspaceFolder}/build", - "--query-driver=/opt/toolchain/bin/x86_64-pc-elf-g++" + "--query-driver=**/x86_64-pc-elf-g++" ], - + + "files.associations": { + "**/kstd/include/kstd/**": "cpp", + }, + "[cpp]": { "editor.formatOnSave": true, "editor.tabSize": 2, }, - - "[python]": { - "editor.defaultFormatter": "ms-python.black-formatter" - }, - }
\ No newline at end of file + + "[gas]": { + "editor.rulers": [ + 80 + ] + }, + "cSpell.words": [ + "acpi", + "crtc", + "efer", + "initializable", + "interprocedural", + "invlpg", + "invokable", + "iwyu", + "kapi", + "kstd", + "memcmp", + "multiboot", + "nolintnextline", + "rdmsr", + "rvalues", + "sysret", + "teachos", + "wrmsr" + ] +}
\ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json index 3b5ae9f..f94098e 100644 --- a/.vscode/tasks.json +++ b/.vscode/tasks.json @@ -17,7 +17,8 @@ "-d", "int,cpu_reset", "-cdrom", - "${command:cmake.buildDirectory}/teachos-${command:cmake.buildType}.iso" + "${command:cmake.buildDirectory}/bin/${command:cmake.buildType}/kernel.iso", + "2>${workspaceFolder}/qemu-stderr-${command:cmake.buildType}.log" ], "isBackground": true, "presentation": { @@ -52,7 +53,8 @@ "-display", "curses", "-cdrom", - "${command:cmake.buildDirectory}/teachos-${command:cmake.buildType}.iso" + "${command:cmake.buildDirectory}/bin/${command:cmake.buildType}/kernel.iso", + "2>${workspaceFolder}/qemu-stderr-${command:cmake.buildType}.log" ], "isBackground": true, "presentation": { |
