mirror of
https://github.com/l0ng-ai/openidea.git
synced 2026-11-15 08:08:18 +00:00
Code running in a browser could not be debugged: js-debug was only started for Node.js and launch.json entries of type chrome / msedge were skipped on import. A JavaScript Debug run configuration (URL, Chrome or Edge, web root) now opens the page with js-debug attached, so breakpoints in the page's sources are hit through source maps with the usual stepping, variables, evaluate and console. Each project gets its own browser profile under the IDE's local data, a project has one debugged browser of a kind (starting again reuses it), launch.json chrome / msedge launches import as this configuration, child sessions named about:blank take their parent's name, and Vue, Svelte, Astro and HTML files take breakpoints. Not yet available in remote projects. Co-authored-by: ntbang0901 <121003585+ntbang0901@users.noreply.github.com>
55 lines
2.1 KiB
TOML
55 lines
2.1 KiB
TOML
id = "astro"
|
||
name = "Astro"
|
||
extensions = ["astro"]
|
||
block-comment = ["<!--", "-->"]
|
||
indent = { tab-size = 2, insert-spaces = true }
|
||
ui-mode = "Astro"
|
||
|
||
[[language-servers]]
|
||
name = "astro-ls"
|
||
command = "astro-ls"
|
||
args = ["--stdio"]
|
||
root-markers = ["astro.config.mjs", "astro.config.js", "astro.config.ts", "astro.config.mts", "astro.config.cjs", "astro.config.cts"]
|
||
install-hint = "npm i -g @astrojs/language-server typescript@6"
|
||
|
||
[[language-servers]]
|
||
name = "oxlint"
|
||
command = "oxlint"
|
||
args = ["--lsp"]
|
||
root-markers = [".oxlintrc.json", ".oxlintrc.jsonc", "oxlint.config.ts", "oxlint.config.mts"]
|
||
require-root-marker = true
|
||
install-hint = "npm i -D oxlint"
|
||
|
||
# ESLint: only below a project's ESLint configuration; the server runs the project's own eslint.
|
||
[[language-servers]]
|
||
name = "eslint"
|
||
command = "vscode-eslint-language-server"
|
||
args = ["--stdio"]
|
||
root-markers = ["eslint.config.js", "eslint.config.mjs", "eslint.config.cjs", "eslint.config.ts", "eslint.config.mts", "eslint.config.cts", ".eslintrc", ".eslintrc.js", ".eslintrc.cjs", ".eslintrc.json", ".eslintrc.yml", ".eslintrc.yaml", "package.json#eslintConfig"]
|
||
require-root-marker = true
|
||
install-hint = "npm i -g vscode-langservers-extracted"
|
||
|
||
[language-servers.settings]
|
||
# Read by every request (`experimental.useFlatConfig`); ESLint picks flat or legacy config itself.
|
||
experimental = {}
|
||
validate = "on"
|
||
run = "onType"
|
||
quiet = false
|
||
onIgnoredFiles = "off"
|
||
rulesCustomizations = []
|
||
nodePath = ""
|
||
problems = { shortenToSingleLine = false }
|
||
workingDirectory = { mode = "auto" }
|
||
codeAction = { disableRuleComment = { enable = true, location = "separateLine" }, showDocumentation = { enable = true } }
|
||
# vscode-eslint reads it for every source.fixAll request (Actions on Save, Code Cleanup).
|
||
# No `rules`: an empty list there means no rule gets fixed.
|
||
codeActionOnSave = { mode = "all" }
|
||
|
||
# Components run in the browser: breakpoints in them are hit by a JavaScript Debug configuration.
|
||
[debugger]
|
||
adapter = "js-debug"
|
||
command = "js-debug-adapter"
|
||
args = ["${port}", "127.0.0.1"]
|
||
transport = "tcp"
|
||
install-hint = "Install JavaScript Debugger (vscode-js-debug) in Settings › Languages & Frameworks › Language Servers"
|