This commit is contained in:
2024-02-23 11:49:48 +01:00
parent d9fad43545
commit 0c251971a1
8 changed files with 401 additions and 0 deletions

130
vscode/keybindings.json Normal file
View File

@ -0,0 +1,130 @@
// Place your key bindings in this file to override the defaultsauto[]
[
{
"key": "cmd+d",
"command": "-editor.action.addSelectionToNextFindMatch",
"when": "editorFocus"
},
{
"key": "cmd+d",
"command": "editor.action.copyLinesDownAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "shift+alt+down",
"command": "-editor.action.copyLinesDownAction",
"when": "editorTextFocus && !editorReadonly"
},
{
"key": "ctrl+a shift+7",
"command": "workbench.action.splitEditorRight"
},
{
"key": "ctrl+a -",
"command": "workbench.action.splitEditorDown"
},
{
"key": "ctrl+a left",
"command": "workbench.action.focusLeftGroup"
},
{
"key": "ctrl+a up",
"command": "workbench.action.focusAboveGroup"
},
{
"key": "ctrl+a down",
"command": "workbench.action.focusBelowGroup"
},
{
"key": "ctrl+a right",
"command": "workbench.action.focusRightGroup"
},
{
"key": "cmd+t",
"command": "-workbench.action.showAllSymbols"
},
{
"key": "cmd+t",
"command": "workbench.action.createTerminalEditor"
},
{
"key": "cmd+u",
"command": "-cursorUndo",
"when": "textInputFocus"
},
{
"key": "cmd+u",
"command": "workbench.action.showAllSymbols"
},
{
"key": "ctrl+a shift+down",
"command": "workbench.action.moveActiveEditorGroupDown"
},
{
"key": "cmd+k down",
"command": "-workbench.action.moveActiveEditorGroupDown"
},
{
"key": "ctrl+a shift+left",
"command": "workbench.action.moveActiveEditorGroupLeft"
},
{
"key": "cmd+k left",
"command": "-workbench.action.moveActiveEditorGroupLeft"
},
{
"key": "ctrl+a shift+right",
"command": "workbench.action.moveActiveEditorGroupRight"
},
{
"key": "cmd+k right",
"command": "-workbench.action.moveActiveEditorGroupRight"
},
{
"key": "ctrl+a shift+up",
"command": "workbench.action.moveActiveEditorGroupUp"
},
{
"key": "cmd+k up",
"command": "-workbench.action.moveActiveEditorGroupUp"
},
{
"key": "alt+enter",
"command": "-notebook.cell.executeAndInsertBelow",
"when": "notebookCellListFocused && notebookCellType == 'markup' || notebookCellListFocused && notebookMissingKernelExtension && !notebookCellExecuting && notebookCellType == 'code' || notebookCellListFocused && !notebookCellExecuting && notebookCellType == 'code' && notebookKernelCount > 0 || notebookCellListFocused && !notebookCellExecuting && notebookCellType == 'code' && notebookKernelSourceCount > 0"
},
{
"key": "alt+enter",
"command": "-debug.openBreakpointToSide",
"when": "breakpointsFocused"
},
{
"key": "ctrl+a f",
"command": "workbench.files.action.focusFilesExplorer"
},
{
"key": "cmd+n",
"command": "explorer.newFile",
"when": "filesExplorerFocus && foldersViewVisible && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
},
{
"key": "cmd+d",
"command": "explorer.newFolder",
"when": "filesExplorerFocus && foldersViewVisible && !explorerResourceIsRoot && !explorerResourceReadonly && !inputFocus"
},
{
"key": "shift+cmd+r",
"command": "editor.action.rename",
"when": "editorHasRenameProvider && editorTextFocus && !editorReadonly"
},
{
"key": "f2",
"command": "-editor.action.rename",
"when": "editorHasRenameProvider && editorTextFocus && !editorReadonly"
},
{
"key": "shift+cmd+r",
"command": "-rerunSearchEditorSearch",
"when": "inSearchEditor"
}
]

99
vscode/settings.json Normal file
View File

@ -0,0 +1,99 @@
{
//
// Appearance
"workbench.colorTheme": "Monokai Pro (Filter Octagon)",
"workbench.iconTheme": "Monokai Pro (Filter Octagon) Icons",
"editor.fontFamily": "Fira Code, Menlo, Monaco, 'Courier New', monospace",
"editor.fontSize": 18,
"editor.fontWeight": "normal",
"editor.fontLigatures": true,
"editor.stickyScroll.enabled": true,
"editor.minimap.renderCharacters": false,
"editor.suggestSelection": "first",
"vsintellicode.modify.editor.suggestSelection": "automaticallyOverrodeDefaultValue",
//
// Excluded files and directories
"files.exclude": {
"**/.classpath": true,
"**/.project": true,
"**/.settings": true,
"**/.factorypath": true
},
"files.watcherExclude": {
"**/.bloop": true,
"**/.metals": true,
"**/.ammonite": true
},
//
// Settings Sync
"settingsSync.ignoredSettings": [
"sshfs.configs",
"editor.fontFamily"
],
//
// Various settings
"explorer.confirmDragAndDrop": false,
"workbench.startupEditor": "none",
"security.workspace.trust.untrustedFiles": "open",
"emmet.showExpandedAbbreviation": "never",
//
// Remote SSH
"remote.SSH.remotePlatform": {
"lab-pc07": "linux",
"lab-pc28": "linux",
"lab-pc01": "linux",
"wasteside": "linux",
"sralab": "linux"
},
"remote.SSH.serverInstallPath": {
"sralab": "/srv/scratch/paul.aumann",
"lab-pc00": "/srv/scratch/paul.aumann",
"lab-pc44": "/srv/scratch/paul.aumann",
},
//
// Python
"python.languageServer": "Default",
"[python]": {
"editor.formatOnSave": true,
"editor.rulers": [
120
],
"editor.defaultFormatter": "ms-python.black-formatter",
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
}
},
"black-formatter.args": [
"--line-length",
"120"
],
//
// Jupyter Notebooks
"notebook.cellToolbarLocation": {
"default": "right",
"jupyter-notebook": "left"
},
"workbench.editorAssociations": {
"*.ipynb": "jupyter-notebook"
},
//
// R
"r.lsp.diagnostics": false,
//
// JSON
"[json][jsonc]": {
"editor.defaultFormatter": "vscode.json-language-features"
},
"prettier.singleQuote": true,
//
// Webdev
"[typescript][typescriptreact][javascript][html]": {
"editor.defaultFormatter": "esbenp.prettier-vscode",
"editor.formatOnSave": true,
"editor.indentSize": "tabSize",
"editor.tabSize": 2,
"emmet.showAbbreviationSuggestions": false,
"editor.linkedEditing": true,
},
"workbench.editor.showTabs": "none",
}

View File

@ -0,0 +1,68 @@
{
/*
Die Snippets ermöglichen es euch, anstelle von den Kommentaren einfach die Abkürzungen zu verwenden.
Wenn ihr also zum Beispiel im C-Code die Punkte anmerken wollt, navigiert an die entsprechende Stelle und
tippt dort das Kürzel "pkt" ein. Die VSCode-Autovervollständigung schlägt dann das entsprechende Snippet vor.
Mit TAB kann man dann durch die Eingabefelder ($1, $2) navigieren.
*/
"PUNKTE C" : {
"scope" : "c",
"prefix" : "pkt",
"body": ["// PUNKTE: $1"]
},
"PUNKTE" : {
"scope" : "plaintext,markdown",
"prefix" : "pkt",
"body" : ["PUNKTE: $1"]
},
"ANMERKUNG C" : {
"scope": "c",
"prefix": "anm",
"body" : ["// ANMERKUNG: $1"]
},
"multiline ANMERKUNG C" : {
"scope" : "c",
"prefix": "manm",
"body" : ["/* ANMERKUNG:", "\t$1", "*/"]
},
"ANMERKUNG" : {
"scope": "plaintext,markdown",
"prefix": "anm",
"body" : ["ANMERKUNG: $1"]
},
"KORREKTUR C" : {
"scope" : "c",
"prefix": "krk",
"body" : ["// KORREKTUR: $1 (-$2P)"]
},
"multiline KORREKTUR C" : {
"scope" : "c",
"prefix": "mkrk",
"body" : ["/* KORREKTUR:", "\t$1 (-$2P)", "*/"]
},
"KORREKTUR" : {
"scope" : "plaintext,markdown",
"prefix": "krk",
"body" : ["KORREKTUR: $1 (-$2P)"]
},
"change to multiline KORREKTUR c" : {
"scope" : "c",
"prefix" : "cmkrk",
"body" : [
"\n/* KORREKTUR:",
"\t${TM_CURRENT_LINE/.+KORREKTUR: (.*) \\(-P\\) .*/$1/}",
"\t(-$2P)",
"*/"
]
},
"change to multiline ANMERKUNG c" : {
"scope" : "c",
"prefix" : "cmanm",
"body" : [
"\n/* ANMERKUNG:",
"\t${TM_CURRENT_LINE/.+ANMERKUNG: (.*) c.*/$1/}",
"*/"
]
}
}

View File

@ -0,0 +1,15 @@
{
// Place your snippets for markdown here. Each snippet is defined under a snippet name and has a prefix, body and
// description. The prefix is what is used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders. Placeholders with the
// same ids are connected.
// Example:
// "Print to console": {
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
}

View File

@ -0,0 +1,49 @@
{
// Place your global snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
// is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
// used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders.
// Placeholders with the same ids are connected.
// Example:
// "Print to console": {
// "scope": "javascript,typescript",
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
"python main method" : {
"scope": "python",
"prefix": "pymain",
"body": [
"if __name__ == \"__main__\":",
"\t"
],
"description": "Add a main method."
},
"python argparse" : {
"scope": "python",
"prefix": "ap",
"body": [
"import argparse",
"",
"if __name__ == \"__main__\":",
"\t",
"\tparser = argparse.ArgumentParser()",
"\targs = parser.parse_args()"
]
},
"python argparse add argument" : {
"scope": "python",
"prefix": "apadd",
"body": "parser.add_argument(\"${1:-o}\", dest=\"${2:o}\", type=${3:str}, help=\"${4:option}\")"
},
"python shebang" : {
"scope": "python",
"prefix": "sb",
"body": "#!/usr/bin/python3"
}
}

View File

@ -0,0 +1,40 @@
{
// Place your global snippets here. Each snippet is defined under a snippet name and has a scope, prefix, body and
// description. Add comma separated ids of the languages where the snippet is applicable in the scope field. If scope
// is left empty or omitted, the snippet gets applied to all languages. The prefix is what is
// used to trigger the snippet and the body will be expanded and inserted. Possible variables are:
// $1, $2 for tab stops, $0 for the final cursor position, and ${1:label}, ${2:another} for placeholders.
// Placeholders with the same ids are connected.
// Example:
// "Print to console": {
// "scope": "javascript,typescript",
// "prefix": "log",
// "body": [
// "console.log('$1');",
// "$2"
// ],
// "description": "Log output to console"
// }
"boilerplate" : {
"scope" : "typescriptreact",
"prefix" : "bp",
"body" : [
"import { Typography } from \"@mui/material\";",
""
"type Props = {};",
"",
"export default function $1({}: Props){",
"\treturn <Typography>TODO</Typography>;"
"}"
]
},
"grid-item" : {
"scope" : "typescriptreact",
"prefix" : "gi",
"body" : [
"<Grid item xs={$1}>",
"\t$2",
"</Grid>"
]
}
}