====== Visual Studio Code ======
**[[https://code.visualstudio.com/|Visual Studio Code]]** (VS Code) ist open-source und für Windows, Linux, macOS und im [[https://vscode.dev/|Web]] verfügbar!
Neben [[https://vscode.dev/]] gibt es noch [[https://github.dev/]] (in einem beliebigen GitHub repo die Punkt-Taste [**.**] drücken oder **github.com** durch **github.dev** ersetzen)
GitHub: [[https://github.com/microsoft/vscode]]
Folgende URLs sind equivalent, um das github repo von vscode im Web zu bearbeiten:
* [[https://vscode.dev/github.com/microsoft/vscode]]
* [[https://vscode.dev/github/microsoft/vscode]]
* [[https://github.dev/microsoft/vscode]]
Für mehr Infos über VS Code im Web und GitHub siehe [[https://code.visualstudio.com/blogs/2021/10/20/vscode-dev#_github|hier]]
Für Infos über Schriftarten und Ligaturen siehe [[ligaturen]]
===== Installation =====
[[https://code.visualstudio.com/docs/setup/linux]]
sudo apt-get install curl gpg
curl -O packages.microsoft.com.asc https://packages.microsoft.com/keys/microsoft-rolling.asc
sudo install -D -o root -g root -m 644 packages.microsoft.com.asc /etc/apt/keyrings
rm -f packages.microsoft.com.asc
curl -O legacy.packages.microsoft.com.asc https://packages.microsoft.com/keys/microsoft.asc
sudo install -D -o root -g root -m 644 legacy.packages.microsoft.com.asc /etc/apt/keyrings
rm -f legacy.packages.microsoft.com.asc
sudo apt -U install apt-transport-https
Enabled: yes
Types: deb
URIs: https://packages.microsoft.com/debian/12/prod
Suites: bookworm
Components: main
Signed-By: /etc/apt/keyrings/legacy.packages.microsoft.com.asc
Enabled: yes
Types: deb
URIs: https://packages.microsoft.com/debian/13/prod
Suites: trixie
Components: main
Signed-By: /etc/apt/keyrings/packages.microsoft.com.asc
# sudo debconf-set-selections <<< "code code/add-microsoft-repo boolean false"
Enabled: yes
Types: deb
URIs: https://packages.microsoft.com/repos/code
Suites: stable
Components: main
Signed-By: /etc/apt/keyrings/legacy.packages.microsoft.com.asc
sudo debconf-set-selections <<< "code code/add-microsoft-repo boolean false"
sudo apt -U install code
===== Konfigurationsdatei =====
Version: 1.73.1
Gist: [[https://gist.github.com/masterflitzer/3d954880ae7599e28da81c5acef0ad8d]]
{
"[bat]": {
"files.eol": "\r\n"
},
"[css]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[dockercompose]": {
"editor.defaultFormatter": "ms-azuretools.vscode-docker"
},
"[go]": {
"editor.insertSpaces": false
},
"[html]": {
"editor.defaultFormatter": "vscode.html-language-features"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[json]": {
"editor.defaultFormatter": "vscode.json-language-features",
"editor.tabSize": 2
},
"[jsonc]": {
"editor.defaultFormatter": "vscode.json-language-features",
"editor.tabSize": 2
},
"[markdown]": {
"editor.defaultFormatter": "DavidAnson.vscode-markdownlint",
"editor.tabSize": 2,
"files.trimTrailingWhitespace": false
},
"[powershell]": {
"editor.defaultFormatter": "ms-vscode.powershell",
"files.eol": "\r\n"
},
"[python]": {
"editor.defaultFormatter": "ms-python.python",
"editor.formatOnSaveMode": "modificationsIfAvailable"
},
"[tsv]": {
"editor.insertSpaces": false
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[xml]": {
"editor.defaultFormatter": "redhat.vscode-xml",
"editor.tabSize": 2
},
"[yaml]": {
"editor.defaultFormatter": "redhat.vscode-yaml",
"editor.tabSize": 2
},
"css.styleSheets": [
"https://cdn.jsdelivr.net/npm/bootstrap/dist/css/bootstrap.min.css",
"https://cdn.jsdelivr.net/npm/bootstrap-icons/font/bootstrap-icons.css"
],
"debug.onTaskErrors": "showErrors",
"diffEditor.ignoreTrimWhitespace": false,
"editor.autoClosingBrackets": "always",
"editor.autoClosingQuotes": "always",
"editor.bracketPairColorization.enabled": true,
"editor.codeLens": true,
"editor.cursorSmoothCaretAnimation": true,
"editor.defaultFormatter": null,
"editor.detectIndentation": true,
"editor.fontFamily": "Fira Code",
"editor.fontLigatures": "'calt', 'zero', 'ss04', 'ss07', 'ss09', 'ss10', 'cv06', 'cv25', 'cv26', 'cv27', 'cv28', 'cv29', 'cv30', 'cv32'",
"editor.formatOnPaste": true,
"editor.formatOnSave": true,
"editor.formatOnSaveMode": "file",
"editor.formatOnType": true,
"editor.guides.bracketPairs": true,
"editor.guides.bracketPairsHorizontal": true,
"editor.guides.highlightActiveBracketPair": true,
"editor.guides.highlightActiveIndentation": true,
"editor.guides.indentation": true,
"editor.inlineSuggest.enabled": true,
"editor.insertSpaces": true,
"editor.minimap.renderCharacters": false,
"editor.renderControlCharacters": true,
"editor.renderWhitespace": "boundary",
"editor.smoothScrolling": true,
"editor.suggestSelection": "recentlyUsedByPrefix",
"editor.tabSize": 4,
"editor.unicodeHighlight.allowedCharacters": {
"ß": true,
"ä": true,
"ö": true,
"ü": true
},
"editor.unicodeHighlight.allowedLocales": {
"_os": true,
"_vscode": true
},
"editor.unicodeHighlight.ambiguousCharacters": true,
"editor.unicodeHighlight.includeComments": true,
"editor.unicodeHighlight.includeStrings": true,
"editor.unicodeHighlight.invisibleCharacters": true,
"editor.unicodeHighlight.nonBasicASCII": true,
"editor.wordWrap": "on",
"editor.wrappingIndent": "indent",
"explorer.confirmDelete": false,
"explorer.confirmDragAndDrop": false,
"files.associations": {
"*.ascx": "html",
"*.ashx": "html",
"*.asmx": "html",
"*.aspx": "html",
"*.master": "html"
},
"files.autoGuessEncoding": true,
"files.autoSave": "onFocusChange",
"files.defaultLanguage": "${activeEditorLanguage}",
"files.encoding": "utf8",
"files.eol": "\n",
"files.hotExit": "onExit",
"files.insertFinalNewline": true,
"files.trimFinalNewlines": true,
"git.autofetch": "all",
"git.confirmSync": false,
"git.enableCommitSigning": true,
"git.enableSmartCommit": true,
"github.gitProtocol": "ssh",
"gitlens.defaultDateFormat": "YYYY-MM-DD HH:mm",
"gitlens.defaultDateLocale": null,
"gitlens.defaultDateShortFormat": "YYYY-MM-DD",
"gitlens.defaultTimeFormat": "HH:mm",
"gitlens.rebaseEditor.ordering": "asc",
"html.format.extraLiners": "",
"html.format.indentInnerHtml": false,
"html.format.wrapAttributes": "aligned-multiple",
"html.validate.scripts": true,
"html.validate.styles": true,
"javascript.updateImportsOnFileMove.enabled": "always",
"livePreview.notifyOnOpenLooseFile": false,
"notebook.lineNumbers": "on",
"omnisharp.useModernNet": true,
"powershell.codeFormatting.preset": "OTBS",
"powershell.enableProfileLoading": true,
"powershell.pester.useLegacyCodeLens": false,
"prettier.bracketSameLine": true,
"prettier.htmlWhitespaceSensitivity": "ignore",
"prettier.tabWidth": 4,
"python.formatting.provider": "black",
"redhat.telemetry.enabled": false,
"remote.SSH.remotePlatform": {},
"remoteHub.gitProtocol": "ssh",
"security.workspace.trust.enabled": true,
"sortJSON.contextMenu": {
"sortJSON": true,
"sortJSONAlphaNum": false,
"sortJSONAlphaNumReverse": false,
"sortJSONKeyLength": false,
"sortJSONKeyLengthReverse": false,
"sortJSONReverse": false,
"sortJSONType": false,
"sortJSONTypeReverse": false,
"sortJSONValues": false,
"sortJSONValuesReverse": false
},
"telemetry.telemetryLevel": "off",
"terminal.explorerKind": "integrated",
"terminal.integrated.automationProfile.windows": null,
"terminal.integrated.copyOnSelection": true,
"terminal.integrated.cursorBlinking": true,
"terminal.integrated.cursorStyle": "block",
"terminal.integrated.defaultProfile.windows": "PowerShell",
"terminal.integrated.gpuAcceleration": "auto",
"terminal.integrated.rightClickBehavior": "paste",
"terminal.integrated.shellIntegration.enabled": true,
"terminal.integrated.smoothScrolling": true,
"typescript.updateImportsOnFileMove.enabled": "always",
"update.enableWindowsBackgroundUpdates": true,
"update.mode": "default",
"vscode-edge-devtools.useHttps": true,
"vscode-edge-devtools.userDataDir": false,
"vscord.app.name": "Visual Studio Code",
"vscord.behavoiur.prioritizeLanguagesOverExtensions": true,
"vscord.status.buttons.button1.active.enabled": true,
"vscord.status.buttons.button1.active.label": "GitHub",
"vscord.status.buttons.button1.active.url": "https://github.com/masterflitzer",
"vscord.status.buttons.button1.idle.enabled": true,
"vscord.status.buttons.button1.idle.label": "GitHub",
"vscord.status.buttons.button1.idle.url": "https://github.com/masterflitzer",
"vscord.status.buttons.button1.inactive.enabled": true,
"vscord.status.buttons.button1.inactive.label": "GitHub",
"vscord.status.buttons.button1.inactive.url": "https://github.com/masterflitzer",
"vscord.status.idle.enabled": false,
"vscord.status.showElapsedTime": false,
"window.commandCenter": true,
"window.menuBarVisibility": "visible",
"window.titleBarStyle": "custom",
"workbench.colorTheme": "Default Dark+",
"workbench.editorAssociations": {
"*.pdf": "latex-workshop-pdf-hook",
"git-rebase-todo": "gitlens.rebase"
},
"workbench.list.smoothScrolling": true,
"workbench.startupEditor": "none"
}
===== Extensions =====
* Extensions exportieren: ''%%code --list-extensions > vscode-extensions.txt%%''
* Extensions importieren:
* Windows: ''%%cat vscode-extensions.txt | % { code --install-extension $_ }%%''
* Linux: ''%%cat vscode-extensions.txt | xargs -l1 code --install-extension%%''
42Crunch.vscode-openapi
augustocdias.tasks-shell-input
DavidAnson.vscode-markdownlint
dbaeumer.vscode-eslint
denoland.vscode-deno
eamodio.gitlens
ecmel.vscode-html-css
EditorConfig.EditorConfig
esbenp.prettier-vscode
firefox-devtools.vscode-firefox-debug
GitHub.remotehub
GitLab.gitlab-workflow
golang.go
GrapeCity.gc-excelviewer
James-Yu.latex-workshop
LeonardSSH.vscord
mechatroner.rainbow-csv
mhutchie.git-graph
ms-azuretools.vscode-docker
ms-dotnettools.csharp
ms-edgedevtools.vscode-edge-devtools
ms-python.python
ms-python.vscode-pylance
ms-toolsai.jupyter
ms-toolsai.jupyter-keymap
ms-toolsai.jupyter-renderers
ms-vscode-remote.remote-containers
ms-vscode-remote.remote-ssh
ms-vscode-remote.remote-ssh-edit
ms-vscode-remote.remote-wsl
ms-vscode-remote.vscode-remote-extensionpack
ms-vscode.cpptools
ms-vscode.hexeditor
ms-vscode.live-server
ms-vscode.powershell
ms-vscode.remote-repositories
ms-vsliveshare.vsliveshare
redhat.java
redhat.vscode-xml
redhat.vscode-yaml
richie5um2.vscode-sort-json
rust-lang.rust-analyzer
serayuzgur.crates
stylelint.vscode-stylelint
tamasfe.even-better-toml
usernamehw.errorlens
vadimcn.vscode-lldb
VisualStudioExptTeam.vscodeintellicode
Vue.volar
WallabyJs.quokka-vscode
===== Entwicklungsumgebung einrichten =====
[[::C/C++ in Visual Studio Code]]