Compare commits
5 Commits
c1b75f4532
...
b7d285a2a9
Author | SHA1 | Date | |
---|---|---|---|
b7d285a2a9 | |||
0e23f5ba55 | |||
de29ee2bb2 | |||
b3bdc1df02 | |||
a674b35f1d |
250
vs-code/user-keybindings.json
Normal file
250
vs-code/user-keybindings.json
Normal file
@ -0,0 +1,250 @@
|
|||||||
|
// Place your key bindings in this file to override the defaults
|
||||||
|
[
|
||||||
|
// Remove undesired defaults
|
||||||
|
{
|
||||||
|
"key": "ctrl+\\",
|
||||||
|
"command": "-workbench.action.splitEditor"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+\\",
|
||||||
|
"command": "-workbench.action.splitEditorOrthogonal"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+\\",
|
||||||
|
"command": "-workbench.action.splitEditorLeft"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+\\",
|
||||||
|
"command": "-workbench.action.splitEditorUp"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+\\",
|
||||||
|
"command": "-workbench.action.splitEditorDown"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+\\",
|
||||||
|
"command": "-workbench.action.splitEditorRight"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+left",
|
||||||
|
"command": "-workbench.action.focusLeftGroup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+right",
|
||||||
|
"command": "-workbench.action.focusRightGroup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+up",
|
||||||
|
"command": "-workbench.action.focusAboveGroup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+k ctrl+down",
|
||||||
|
"command": "-workbench.action.focusBelowGroup"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+shift+`",
|
||||||
|
"command": "-workbench.action.terminal.new",
|
||||||
|
"when": "terminalProcessSupported || terminalWebExtensionContributedProfile"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+t",
|
||||||
|
"command": "-workbench.action.showAllSymbols"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+j",
|
||||||
|
"command": "-workbench.action.togglePanel"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+`",
|
||||||
|
"command": "-workbench.action.terminal.toggleTerminal",
|
||||||
|
"when": "terminal.active"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+p",
|
||||||
|
"command": "-extension.vim_ctrl+p",
|
||||||
|
"when": "editorTextFocus && vim.active && vim.use<C-p> && !inDebugRepl || vim.active && vim.use<C-p> && !inDebugRepl && vim.mode == 'CommandlineInProgress' || vim.active && vim.use<C-p> && !inDebugRepl && vim.mode == 'SearchInProgressMode'"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+h",
|
||||||
|
"command": "-extension.vim_ctrl+h",
|
||||||
|
"when": "editorTextFocus && vim.active && vim.use<C-h> && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+l",
|
||||||
|
"command": "-extension.vim_navigateCtrlL",
|
||||||
|
"when": "editorTextFocus && vim.active && vim.use<C-l> && !inDebugRepl"
|
||||||
|
},
|
||||||
|
// Editing
|
||||||
|
{
|
||||||
|
"key": "shift+k",
|
||||||
|
"command": "editor.action.showHover",
|
||||||
|
"when": "editorTextFocus"
|
||||||
|
},
|
||||||
|
// Editor pane navigation and management
|
||||||
|
{
|
||||||
|
"key": "ctrl+k",
|
||||||
|
"command": "workbench.action.focusAboveGroup",
|
||||||
|
"when": "editorTextFocus && vim.active && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+j",
|
||||||
|
"command": "workbench.action.focusBelowGroup",
|
||||||
|
"when": "editorTextFocus && vim.active && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+h",
|
||||||
|
"command": "workbench.action.focusLeftGroup",
|
||||||
|
"when": "editorTextFocus && vim.active && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+l",
|
||||||
|
"command": "workbench.action.focusRightGroup",
|
||||||
|
"when": "editorTextFocus && vim.active && !inDebugRepl"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b shift+5",
|
||||||
|
"command": "workbench.action.newGroupRight",
|
||||||
|
"when": "editorTextFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b shift+'",
|
||||||
|
"command": "workbench.action.newGroupBelow",
|
||||||
|
"when": "editorTextFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b z",
|
||||||
|
"command": "workbench.action.toggleEditorWidths",
|
||||||
|
"when": "editorTextFocus"
|
||||||
|
},
|
||||||
|
// Terminal Tmux pane navigation and management
|
||||||
|
{
|
||||||
|
"key": "ctrl+t",
|
||||||
|
"command": "workbench.action.terminal.toggleTerminal",
|
||||||
|
"when": "terminal.active"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+shift+`",
|
||||||
|
"command": "workbench.action.toggleMaximizedPanel"
|
||||||
|
},
|
||||||
|
// These escape codes allow sending keyboard shortcuts to tmux
|
||||||
|
// when normally vs-code would not send any chorded keyboard shortcuts.
|
||||||
|
// It also is setup so that these keyboard shortcuts work in both the editor
|
||||||
|
// and the terminal, but have different commands.
|
||||||
|
// Resources:
|
||||||
|
// - https://code.visualstudio.com/docs/terminal/advanced#_custom-sequence-keybindings
|
||||||
|
// - https://stackoverflow.com/questions/61742559/need-vscode-sendsequence-keybindings-for-previous-command-next-command-move-to
|
||||||
|
// - https://gist.github.com/riipandi/2f304a1cbf7615a8f912473b5f4a7cc3
|
||||||
|
// - `showkey -a`
|
||||||
|
{
|
||||||
|
"key": "ctrl+b p",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u0070"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b n",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u006e"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b d",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u0064"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b up",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u001b[A"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b down",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u001b[B"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b left",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u001b[D"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b right",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u001b[C"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b shift+5",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u0025"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b shift+'",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u0022"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b ,",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u002c"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b shift+;",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u003a"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b c",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u0063"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b [",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u005b"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"key": "ctrl+b z",
|
||||||
|
"command": "workbench.action.terminal.sendSequence",
|
||||||
|
"args": {
|
||||||
|
"text": "\u0002\u007a"
|
||||||
|
},
|
||||||
|
"when": "terminalFocus"
|
||||||
|
}
|
||||||
|
]
|
103
vs-code/user-settings.json
Normal file
103
vs-code/user-settings.json
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
{
|
||||||
|
// Languages
|
||||||
|
"[html]": {
|
||||||
|
"editor.defaultFormatter": "vscode.html-language-features"
|
||||||
|
},
|
||||||
|
"[javascript]": {
|
||||||
|
"editor.defaultFormatter": "vscode.typescript-language-features"
|
||||||
|
},
|
||||||
|
"[json]": {
|
||||||
|
"editor.defaultFormatter": "vscode.json-language-features"
|
||||||
|
},
|
||||||
|
"[jsonc]": {
|
||||||
|
"editor.defaultFormatter": "vscode.json-language-features"
|
||||||
|
},
|
||||||
|
"[templ]": {
|
||||||
|
"editor.defaultFormatter": "a-h.templ"
|
||||||
|
},
|
||||||
|
"[typescript]": {
|
||||||
|
"editor.codeActionsOnSave": {
|
||||||
|
"source.fixAll.eslint": "explicit"
|
||||||
|
},
|
||||||
|
"editor.defaultFormatter": "esbenp.prettier-vscode"
|
||||||
|
},
|
||||||
|
"[typescriptreact]": {
|
||||||
|
"editor.defaultFormatter": "vscode.typescript-language-features"
|
||||||
|
},
|
||||||
|
"emmet.includeLanguages": {
|
||||||
|
"templ": "html"
|
||||||
|
},
|
||||||
|
"go.buildTags": "unit",
|
||||||
|
"go.toolsManagement.autoUpdate": true,
|
||||||
|
"gopls": {
|
||||||
|
"build.buildFlags": [
|
||||||
|
"-tags=unit"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"javascript.updateImportsOnFileMove.enabled": "always",
|
||||||
|
"tailwindCSS.includeLanguages": {
|
||||||
|
"templ": "html"
|
||||||
|
},
|
||||||
|
"typescript.updateImportsOnFileMove.enabled": "always",
|
||||||
|
// Remote Settings
|
||||||
|
"dev.containers.dockerPath": "docker",
|
||||||
|
"dev.containers.executeInWSL": true,
|
||||||
|
"dotfiles.installCommand": "install.sh",
|
||||||
|
"dotfiles.repository": "https://github.com/tgrosinger/dotfiles.git",
|
||||||
|
"dotfiles.targetPath": "~/.dotfiles",
|
||||||
|
// Fonts and Appearance
|
||||||
|
"editor.fontFamily": "JetBrainsMono Nerd Font, JetBrains Mono, 'Courier New', monospace",
|
||||||
|
"editor.fontLigatures": true,
|
||||||
|
// Editor Behavior
|
||||||
|
"diffEditor.experimental.showMoves": true,
|
||||||
|
"editor.accessibilitySupport": "off",
|
||||||
|
"editor.formatOnSave": true,
|
||||||
|
"editor.guides.bracketPairs": "active",
|
||||||
|
"editor.lineNumbers": "relative",
|
||||||
|
"editor.linkedEditing": true,
|
||||||
|
"editor.minimap.enabled": false,
|
||||||
|
"editor.renderWhitespace": "trailing",
|
||||||
|
"editor.stickyScroll.enabled": true,
|
||||||
|
"editor.wordWrap": "off",
|
||||||
|
"files.associations": {
|
||||||
|
"*.gohtml": "html"
|
||||||
|
},
|
||||||
|
"git.ignoreMissingGitWarning": true,
|
||||||
|
"githubPullRequests.pullBranch": "never",
|
||||||
|
"githubPullRequests.terminalLinksHandler": "github",
|
||||||
|
// GitLens
|
||||||
|
"gitlens.advanced.telemetry.enabled": false,
|
||||||
|
"gitlens.hovers.currentLine.over": "line",
|
||||||
|
"gitlens.telemetry.enabled": false,
|
||||||
|
"remote.autoForwardPortsSource": "hybrid",
|
||||||
|
"remote.containers.dotfiles.installCommand": "install.sh",
|
||||||
|
"remote.containers.dotfiles.repository": "https://github.com/tgrosinger/dotfiles.git",
|
||||||
|
"remote.containers.dotfiles.targetPath": "~/.dotfiles",
|
||||||
|
"scm.workingSets.enabled": true,
|
||||||
|
"settingsSync.ignoredExtensions": [
|
||||||
|
"bradlc.vscode-tailwindcss"
|
||||||
|
],
|
||||||
|
// Telemetry
|
||||||
|
"telemetry.telemetryLevel": "off",
|
||||||
|
"workbench.enableExperiments": false,
|
||||||
|
"workbench.settings.enableNaturalLanguageSearch": false,
|
||||||
|
"extensions.ignoreRecommendations": true,
|
||||||
|
// Vim
|
||||||
|
"vim.leader": " ",
|
||||||
|
"vim.normalModeKeyBindings": [
|
||||||
|
{
|
||||||
|
"before": [
|
||||||
|
"leader",
|
||||||
|
"n"
|
||||||
|
],
|
||||||
|
"commands": [
|
||||||
|
"editor.action.rename"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
],
|
||||||
|
// Window
|
||||||
|
"window.newWindowDimensions": "inherit",
|
||||||
|
"workbench.colorTheme": "Visual Studio Light",
|
||||||
|
"workbench.editor.empty.hint": "hidden",
|
||||||
|
"workbench.sideBar.location": "right"
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user