aboutsummaryrefslogtreecommitdiff
path: root/.vscode
diff options
context:
space:
mode:
Diffstat (limited to '.vscode')
-rw-r--r--.vscode/extensions.json6
-rw-r--r--.vscode/launch.json31
-rw-r--r--.vscode/settings.json42
-rw-r--r--.vscode/tasks.json6
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": {