├── .gitignore
├── home
├── tool-versions
├── master-gitignore
├── gitconfig-groupon
├── gitconfig
├── finicky.js
└── tmux.conf
├── config
├── bat
│ └── config
├── fish
│ ├── functions
│ │ ├── nvm.fish
│ │ ├── nvm_find_nvmrc.fish
│ │ ├── is_in_git_repo.fish
│ │ ├── fish_prompt.fish
│ │ ├── gho.fish
│ │ ├── load_nvm.fish
│ │ └── lfcd.fish
│ ├── conf.d
│ │ ├── omf.fish
│ │ ├── aliases.fish
│ │ └── abbreviations.fish
│ ├── config.fish
│ └── fish_variables
└── karabiner.edn
├── .gitmodules
├── .vscode
└── tasks.json
├── install
├── install.conf.yaml
├── vscode
├── README.md
├── keybindings.json
└── settings.json
├── README.md
└── iterm2
├── vscodedark.itermcolors
└── Default-profile.json
/.gitignore:
--------------------------------------------------------------------------------
1 | .luarc.json
2 |
--------------------------------------------------------------------------------
/home/tool-versions:
--------------------------------------------------------------------------------
1 | nodejs 18.17.1
2 |
3 |
--------------------------------------------------------------------------------
/home/master-gitignore:
--------------------------------------------------------------------------------
1 | Session.vim
2 | .DS_Store
3 |
--------------------------------------------------------------------------------
/config/bat/config:
--------------------------------------------------------------------------------
1 | --theme="default"
2 | --style="numbers,changes"
3 |
4 |
--------------------------------------------------------------------------------
/config/fish/functions/nvm.fish:
--------------------------------------------------------------------------------
1 | function nvm
2 | bass source ~/.nvm/nvm.sh --no-use ';' nvm $argv
3 | end
--------------------------------------------------------------------------------
/.gitmodules:
--------------------------------------------------------------------------------
1 | [submodule "dotbot"]
2 | path = dotbot
3 | url = https://github.com/anishathalye/dotbot
4 | ignore = dirty
5 |
--------------------------------------------------------------------------------
/config/fish/functions/nvm_find_nvmrc.fish:
--------------------------------------------------------------------------------
1 | function nvm_find_nvmrc
2 | bass source ~/.nvm/nvm.sh --no-use ';' nvm_find_nvmrc
3 | end
4 |
--------------------------------------------------------------------------------
/config/fish/functions/is_in_git_repo.fish:
--------------------------------------------------------------------------------
1 | function is_in_git_repo --description 'Check if current directory is a Git repo'
2 | git rev-parse HEAD >/dev/null 2>&1
3 | end
4 |
--------------------------------------------------------------------------------
/config/fish/functions/fish_prompt.fish:
--------------------------------------------------------------------------------
1 | function fish_prompt
2 | set_color $fish_color_cwd
3 | echo -n (basename $PWD)
4 | set_color normal
5 | echo -n ' ) '
6 | end
7 |
--------------------------------------------------------------------------------
/config/fish/conf.d/omf.fish:
--------------------------------------------------------------------------------
1 | # Path to Oh My Fish install.
2 | set -q XDG_DATA_HOME
3 | and set -gx OMF_PATH "$XDG_DATA_HOME/omf"
4 | or set -gx OMF_PATH "$HOME/.local/share/omf"
5 |
6 | # Load Oh My Fish configuration.
7 | source $OMF_PATH/init.fish
8 |
--------------------------------------------------------------------------------
/home/gitconfig-groupon:
--------------------------------------------------------------------------------
1 | [user]
2 | name = c_fhalas
3 | email = c_fhalas@groupon.com
4 | [url "ssh://git@github.groupondev.com"]
5 | insteadOf = https://github.groupondev.com
6 | [core]
7 | sshCommand = ssh -i ~/.ssh/c-fhalas
8 | [commit]
9 | gpgsign = false
--------------------------------------------------------------------------------
/.vscode/tasks.json:
--------------------------------------------------------------------------------
1 | {
2 | "version": "2.0.0",
3 | "tasks": [
4 | {
5 | "label": "Karabiner",
6 | "type": "process",
7 | "command": "goku",
8 | "problemMatcher": []
9 | }
10 | ]
11 | }
--------------------------------------------------------------------------------
/config/fish/conf.d/aliases.fish:
--------------------------------------------------------------------------------
1 | if status --is-interactive
2 | alias cat 'bat'
3 | alias python 'python3'
4 | # alias vi 'nvim -S Session.vim'
5 | # alias vim 'nvim -S Session.vim'
6 | alias brow '/usr/local/bin/brew'
7 | alias rgf 'rg --files | rg' # or use "fd filename"
8 | end
9 |
--------------------------------------------------------------------------------
/install:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env bash
2 |
3 | set -e
4 |
5 | CONFIG="install.conf.yaml"
6 | DOTBOT_DIR="dotbot"
7 |
8 | DOTBOT_BIN="bin/dotbot"
9 | BASEDIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
10 |
11 | cd "${BASEDIR}"
12 | git -C "${DOTBOT_DIR}" submodule sync --quiet --recursive
13 | git submodule update --init --recursive "${DOTBOT_DIR}"
14 |
15 | "${BASEDIR}/${DOTBOT_DIR}/${DOTBOT_BIN}" -d "${BASEDIR}" -c "${CONFIG}" "${@}"
16 |
--------------------------------------------------------------------------------
/config/fish/functions/gho.fish:
--------------------------------------------------------------------------------
1 | function gho --description 'Open current Git branch in browser'
2 | if not is_in_git_repo
3 | exit 1
4 | end
5 |
6 | set -l url (git config --get remote.origin.url)
7 | set -l branch (git rev-parse --abbrev-ref --symbolic-full-name HEAD)
8 | if test $branch = HEAD
9 | set branch (git rev-parse HEAD)
10 | end
11 |
12 | set -l converted_url (echo "$url/tree/$branch" |
13 | sed 's|git@github.com:\(.*\)\.git|https://github.com/\1|')
14 |
15 | open "$converted_url"
16 | end
17 |
--------------------------------------------------------------------------------
/config/fish/functions/load_nvm.fish:
--------------------------------------------------------------------------------
1 | function load_nvm --on-variable="PWD"
2 | set -l default_node_version (nvm version default)
3 | set -l node_version (nvm version)
4 | set -l nvmrc_path (nvm_find_nvmrc)
5 | if test -n "$nvmrc_path"
6 | set -l nvmrc_node_version (nvm version (cat $nvmrc_path))
7 | if test "$nvmrc_node_version" = "N/A"
8 | nvm install (cat $nvmrc_path)
9 | else if test "$nvmrc_node_version" != "$node_version"
10 | nvm use $nvmrc_node_version
11 | end
12 | else if test "$node_version" != "$default_node_version"
13 | echo "Reverting to default Node version"
14 | nvm use default
15 | end
16 | end
--------------------------------------------------------------------------------
/config/fish/conf.d/abbreviations.fish:
--------------------------------------------------------------------------------
1 | if status --is-interactive
2 | abbr -a -- - 'cd -'
3 | abbr -a -- .. 'cd ..'
4 | abbr -a -- ... 'cd ../..'
5 |
6 | # abbr -a -- yarnup 'yarn upgrade-interactive --latest'
7 |
8 | abbr -a -g brewup 'brew update && brew upgrade && brew cleanup && brew doctor'
9 |
10 | abbr -a -g tma 'tmux attach'
11 | abbr -a -g tms 'tmux switch'
12 | abbr -a -g tmls 'tmux list-sessions'
13 |
14 | abbr -a -g gc 'git commit -m'
15 | abbr -a -g gm 'git merge'
16 | abbr -a -g gco 'git checkout'
17 | abbr -a -g gcb 'git checkout -b'
18 | abbr -a -g gP 'git push'
19 | abbr -a -g gf 'git fetch'
20 | abbr -a -g gl 'git pull'
21 | abbr -a -g gs 'git status'
22 | abbr -a -g ga 'git add'
23 | abbr -a -g gaa 'git add --all'
24 | abbr -a -g gb 'git branch'
25 | end
26 |
--------------------------------------------------------------------------------
/config/fish/functions/lfcd.fish:
--------------------------------------------------------------------------------
1 | # Change working dir in fish to last dir in lf on exit (adapted from ranger).
2 | #
3 | # You may put this file to a directory in $fish_function_path variable:
4 | #
5 | # mkdir -p ~/.config/fish/functions
6 | # ln -s "/path/to/lfcd.fish" ~/.config/fish/functions
7 | #
8 | # You may also like to assign a key to this command:
9 | #
10 | # bind \co 'set old_tty (stty -g); stty sane; lfcd; stty $old_tty; commandline -f repaint'
11 | #
12 | # You may put this in a function called fish_user_key_bindings.
13 |
14 | function lfcd
15 | set tmp (mktemp)
16 | lf -last-dir-path=$tmp $argv
17 | if test -f "$tmp"
18 | set dir (cat $tmp)
19 | rm -f $tmp
20 | if test -d "$dir"
21 | if test "$dir" != (pwd)
22 | cd $dir
23 | end
24 | end
25 | end
26 | end
27 |
28 |
--------------------------------------------------------------------------------
/home/gitconfig:
--------------------------------------------------------------------------------
1 | [user]
2 | name = halafi
3 | email = filiphalas74@gmail.com
4 | signingkey = D2559CD7C018B12E
5 | [credential]
6 | helper = store
7 | [core]
8 | excludesFile = ~/.master-gitignore
9 | editor = nvim
10 | pager = delta
11 | [commit]
12 | template = ~/.stCommitMsg
13 | gpgsign = true
14 | [merge]
15 | tool = nvim
16 | [mergetool "nvim"]
17 | cmd = nvim -f \"$MERGED\"
18 | [mergetool "vscode"]
19 | cmd = code --wait $MERGED
20 | [mergetool]
21 | prompt = false
22 | keepBackup = false
23 | [url "ssh://git@github.com/"]
24 | insteadOf = https://github.com/
25 | [gpg]
26 | program = /opt/homebrew/bin/gpg
27 | [difftool "sourcetree"]
28 | cmd = opendiff \"$LOCAL\" \"$REMOTE\"
29 | path =
30 | [mergetool "sourcetree"]
31 | cmd = /Applications/Sourcetree.app/Contents/Resources/opendiff-w.sh \"$LOCAL\" \"$REMOTE\" -ancestor \"$BASE\" -merge \"$MERGED\"
32 | trustExitCode = true
33 | [includeIf "gitdir:~/Projects/groupon/"]
34 | path = .gitconfig-groupon
35 |
--------------------------------------------------------------------------------
/install.conf.yaml:
--------------------------------------------------------------------------------
1 | - defaults:
2 | link:
3 | create: true
4 | relink: true
5 |
6 | # remove dead symlinks
7 | - clean:
8 | ~/:
9 | force: true
10 | ~/.config:
11 | recursive: true
12 |
13 | - link:
14 | # home
15 | ~/:
16 | glob: true
17 | path: home/*
18 | prefix: "."
19 | # nvim
20 | # ~/.config/lf/lfrc: config/lf/lfrc
21 | # ~/.config/lf/previewer.sh: config/lf/previewer.sh
22 | ~/.config/bat/config: config/bat/config
23 | # ~/.config/nvim/init.lua: config/nvim/init.lua
24 | # ~/.config/nvim/lua:
25 | # glob: true
26 | # path: config/nvim/lua/*
27 | # ~/.config/nvim/snippets:
28 | # glob: true
29 | # path: config/nvim/snippets/*
30 | # # other
31 | ~/.config/karabiner.edn: config/karabiner.edn
32 | ~/.config/fish:
33 | glob: true
34 | path: config/fish/*
35 | # lazygit
36 | ~/Library/Application Support/lazygit/config.yml: config/lazygit/config.yml
37 |
--------------------------------------------------------------------------------
/config/fish/config.fish:
--------------------------------------------------------------------------------
1 | # DISABLED UNTIL NEEDED
2 | #fish_add_path $GOBIN
3 | #fish_add_path $GOROOT/bin
4 | #fish_add_path /usr/local/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin
5 | #fish_add_path /opt/homebrew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/bin/
6 | # pipx
7 | #fish_add_path ~/.local/bin
8 | #fish_add_path $HOME/.poetry/bin
9 | #fish_add_path $HOME/Library/Application\ Support/pypoetry/venv/bin
10 | #fish_add_path $HOME/tools/lua-language-server/bin
11 | #fish_add_path $HOME/.cargo/bin
12 |
13 | # output of $(yarn global bin)
14 | # fish_add_path ~/.asdf/installs/nodejs/18.17.1/.npm/bin
15 | source /opt/homebrew/Caskroom/google-cloud-sdk/latest/google-cloud-sdk/path.fish.inc
16 |
17 |
18 | # need to load brew binaries
19 | eval "$(/opt/homebrew/bin/brew shellenv)"
20 | # eval "$(pyenv init --path)"
21 | # source (brew --prefix asdf)/libexec/asdf.fish
22 | load_nvm > /dev/stderr
23 |
24 |
25 | # disable greeting
26 | set fish_greeting
27 |
28 | # automatically call commands
29 | functions --copy cd standard_cd
30 | # function cd
31 | # standard_cd $argv; and exa
32 | # end
33 | # function zz
34 | # z $argv; and onefetch 2>/dev/null; and exa
35 | # end
36 |
37 | export GPG_TTY=$(tty)
38 |
39 | # Created by `pipx` on 2025-05-05 12:30:07
40 | set PATH $PATH /Users/halafi/.local/bin
41 |
--------------------------------------------------------------------------------
/vscode/README.md:
--------------------------------------------------------------------------------
1 | # vsCode
2 |
3 | Backup of my config but since it's synced with GitHub this may not be kept up to date.
4 |
5 | ## code --list-extensions
6 |
7 | includes some disabled ones
8 |
9 | ```
10 | alefragnani.Bookmarks
11 | alefragnani.project-manager
12 | bajdzis.vscode-database
13 | be5invis.toml
14 | bradlc.vscode-tailwindcss
15 | codezombiech.gitignore
16 | dbaeumer.vscode-eslint
17 | donjayamanne.githistory
18 | eamodio.gitlens
19 | EditorConfig.EditorConfig
20 | esbenp.prettier-vscode
21 | firsttris.vscode-jest-runner
22 | golang.go
23 | GraphQL.vscode-graphql
24 | GraphQL.vscode-graphql-syntax
25 | hashicorp.terraform
26 | ionutvmi.path-autocomplete
27 | JakeBecker.elixir-ls
28 | kevinglasson.cornflakes-linter
29 | mikestead.dotenv
30 | mjmcloug.vscode-elixir
31 | ms-azuretools.vscode-docker
32 | ms-python.python
33 | ms-python.vscode-pylance
34 | ms-toolsai.jupyter
35 | ms-toolsai.jupyter-keymap
36 | ms-toolsai.jupyter-renderers
37 | ms-toolsai.vscode-jupyter-cell-tags
38 | ms-toolsai.vscode-jupyter-slideshow
39 | Prisma.prisma
40 | riazxrazor.html-to-jsx
41 | rust-lang.rust-analyzer
42 | stylelint.vscode-stylelint
43 | svelte.svelte-vscode
44 | TabNine.tabnine-vscode
45 | toba.vsfire
46 | vadimcn.vscode-lldb
47 | vscodevim.vim
48 | yzhang.markdown-all-in-one
49 | ZainChen.json
50 | ziyasal.vscode-open-in-github
51 | ```
--------------------------------------------------------------------------------
/home/finicky.js:
--------------------------------------------------------------------------------
1 | const WORK_RELATED_HOSTS = [
2 | "localhost",
3 | "127.0.0.1",
4 | "zenhub.com",
5 | "app.zenhub.com",
6 | "github.com",
7 | "zoom.us",
8 | "cloud.google.com",
9 | "docs.google.com",
10 | "chrome.google.com",
11 | "drive.google.com",
12 | "meet.google.com",
13 | "figma.com",
14 | "www.figma.com",
15 | "developer.chrome.com",
16 | "groups.google.com",
17 | "miro.com",
18 | ];
19 |
20 | module.exports = {
21 | defaultBrowser: { name: "Google Chrome", profile: "Filip (eucalyptus.vc)" },
22 | options: {
23 | hideIcon: true,
24 | checkForUpdate: true,
25 | logRequests: false,
26 | },
27 | rewrite: [
28 | {
29 | // Redirect all urls to use https
30 | match: ({ url }) => url.protocol === "http" && url.host !== 'localhost' && url.host !== '127.0.0.1',
31 | url: { protocol: "https" },
32 | },
33 | ],
34 | handlers: [
35 | {
36 | match: ({ url }) => WORK_RELATED_HOSTS.includes(url.host),
37 | browser: {
38 | name: "Google Chrome",
39 | profile: "Profile 1",
40 | },
41 | },
42 | {
43 | // Open any url that includes the string "workplace"
44 | match: /eucalyptus/, // handle e.g. notion links
45 | browser: {
46 | name: "Google Chrome",
47 | profile: "Profile 3",
48 | },
49 | },
50 | ],
51 | };
52 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # dotfiles
2 |
3 | I use VSCODE + VIM plugin as I got [tired of maintaining Neovim](https://filiphalas.com/from-neovim-back-to-vscode) running properly and since I could never really got rid of doing certain things in VSCode such as debugging, jupyter notebooks, etc.
4 |
5 | My dotfiles for karabiner (60% keyboard layout), tmux, fish and everything configurable.
6 | Setup for web development (React with TypeScript), Go, Lua and Rust on macOS Monterey.
7 |
8 | Managed with [Dotbot](https://github.com/anishathalye/dotbot).
9 |
10 | ## Terminal
11 |
12 | I am mostly using VSCode terminal these days with Tmux + Fish and [iTerm2](https://github.com/gnachman/iTerm2) for macOS.
13 |
14 | - [Fish](https://github.com/fish-shell/fish-shell) 🐟 with [ohmyfish](https://github.com/oh-my-fish/oh-my-fish)
15 |
16 | - [tmux](https://github.com/tmux/tmux) (no session management at the moment)
17 |
18 |
19 |
20 | - [goku](https://github.com/yqrashawn/GokuRakuJoudo/) + [karabiner elements](https://karabiner-elements.pqrs.org/) for making 60% keyboard layout usable
21 |
22 |
23 |
24 |
25 |
26 | ## Dependencies
27 |
28 | ### System
29 |
30 | 1. Install [brew](https://brew.sh/)
31 | 2. Install fish: `brew install fish`
32 | 3. Install [omf](https://github.com/oh-my-fish/oh-my-fish) and `omf install z`
33 | 4. [Tmux plugin manager](https://github.com/tmux-plugins/tpm) (q+i to install plugins)
34 | 5. Brew packages:
35 | - `brew install asdf fish fzf fd bat git-delta ripgrep tmux yarn htop google-cloud-sdk terraform`
36 | 6. Install [FiraCode font patched with icons](https://github.com/ryanoasis/nerd-fonts/blob/master/patched-fonts/FiraCode/Retina/FiraCodeNerdFont-Retina.ttf) for iTerm
37 |
38 | ### Git
39 | 1. Generate and setup ssh key if needed https://docs.github.com/en/authentication/connecting-to-github-with-ssh/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
40 |
41 | ### ⌨️ Keyboard
42 | 1. install karabiner `brew install karabiner-elements`
43 | 2. install goku `brew install yqrashawn/goku/goku`
44 | - `softwareupdate --install-rosetta` if needed for goku
45 | 3. make sure karabiner profile is named `Default`
46 | 4. run `goku` once to generate karabiner config
47 |
48 | ### Node.js
49 | 1. `asdf plugin add nodejs`
50 | 2. `asdf install nodejs 18.xx.x` (latest lts)
51 | 3. update `.tool-versions` by running `asdf global nodejs 16.xx.x` (latest lts)
52 |
53 | ### Go
54 | 1. Install [Go](https://go.dev/doc/install)
55 | 2. Adjust GO fish_variables if needed
56 |
57 | ### Rust / Cargo
58 | 1. https://doc.rust-lang.org/cargo/getting-started/installation.html
59 |
60 | ### Elixir
61 | 1. `asdf plugin add elixir`
62 |
63 | ### Python
64 | 1. `brew install pyenv`
65 |
66 |
67 | ## Alfred Workflows
68 |
69 | - [Fkill](https://github.com/SamVerschueren/alfred-fkill)
70 | - [Bluetooth Controller](https://github.com/vegardinho/alfred_bluetooth_controller)
71 | - [Localhost](https://github.com/mhanberg/alfred-localhost)
72 | - [VSCode Workspaces](https://github.com/phartenfeller/alfred-vscode-workspaces)
73 | - [Alfred Emoji](https://github.com/jsumners/alfred-emoji)
74 | - [Restart Wifi](https://github.com/AugustusZ/alfred-workflows)
75 | - [Alfred NightShift](https://github.com/shmulvad/alfred-nightshift)
76 | - [Switch Appearance](https://alfred.app/workflows/alfredapp/switch-appearance/)
77 |
78 | ## FAQ
79 | 1. Where to get fonts?
80 |
81 | https://www.nerdfonts.com/font-downloads
82 |
83 | 2. How to chagne default shell to fish?
84 |
85 | https://stackoverflow.com/a/26321141
86 |
87 | 3. How to setup git key signing with gpg?
88 |
89 | - `brew install gpg`
90 | - https://jamespanther.com/writings/signing-github-commits-using-keybase/
91 |
--------------------------------------------------------------------------------
/home/tmux.conf:
--------------------------------------------------------------------------------
1 | unbind C-b
2 | set -g prefix C-a
3 | set -g mouse on
4 | set -g history-limit 100000
5 | set -g set-titles on
6 | set -g renumber-windows on
7 | set -g focus-events on
8 | # rename with prefix ,
9 | # don't rename windows automatically
10 | # set-option -g allow-rename off
11 | setw -g automatic-rename on
12 | set -g automatic-rename-format '#{b:pane_current_path}'
13 | set -g window-status-format " #I:#W#F "
14 | set -g window-status-current-format " #I:#W#F "
15 | set -g base-index 1
16 | setw -g pane-base-index 1
17 | set -s extended-keys always
18 | set -g default-terminal "xterm-256color"
19 | # set -a terminal-overrides ",alacritty:RGB"
20 | set -g default-terminal "iterm"
21 | set -g default-shell /opt/homebrew/bin/fish
22 | set -g default-command /opt/homebrew/bin/fish
23 |
24 | bind-key [ swap-window -d -t -1
25 | bind-key ] swap-window -d -t +1
26 |
27 | unbind r
28 | bind r source-file ~/.tmux.conf \; display "Reloaded ~/.tmux.conf"
29 |
30 | unbind v
31 | unbind h
32 | unbind l #last
33 | unbind p #previous
34 |
35 | unbind % # Split vertically
36 | unbind '"' # Split horizontally
37 |
38 | bind v split-window -h -c "#{pane_current_path}"
39 |
40 | # ctrl
41 | bind -n C-h select-pane -L
42 | bind -n C-j select-pane -D
43 | bind -n C-k select-pane -U
44 | bind -n C-l select-pane -R
45 |
46 | # navigate between windows
47 | # bind -n M-h previous-window
48 | # bind -n M-l next-window
49 | bind-key h previous-window
50 | bind-key j previous-window
51 | bind-key k next-window
52 | bind-key l next-window
53 |
54 | # bind-key h split-window -v -c "#{pane_current_path}"
55 | bind-key s split-window -v -c "#{pane_current_path}"
56 | bind-key t split-window -v -p 30 -c "#{pane_current_path}"
57 | bind-key v split-window -h -c "#{pane_current_path}"
58 | bind-key c new-window -a -c "#{pane_current_path}"
59 | bind-key p display-popup -d "#{pane_current_path}"
60 |
61 | # toggle status bar
62 | bind-key T set-option status
63 |
64 | # vi mode
65 | # prefix key -> [ enters copy mode
66 | set -g status-keys vi
67 | set-window-option -g mode-keys vi
68 | bind-key Space copy-mode
69 | bind-key -T copy-mode-vi v send -X begin-selection
70 | bind-key -T copy-mode-vi y send -X copy-selection-and-cancel
71 | bind-key -T copy-mode-vi Escape send -X cancel
72 | bind-key -T copy-mode-vi d send -X halfpage-down
73 | bind-key -T copy-mode-vi u send -X halfpage-up
74 |
75 | # Smart pane switching with awareness of Vim splits.
76 | # See: https://github.com/christoomey/vim-tmux-navigator
77 | is_vim="ps -o state= -o comm= -t '#{pane_tty}' \
78 | | grep -iqE '^[^TXZ ]+ +(\\S+\\/)?g?(view|n?vim?x?)(diff)?$'"
79 | bind-key -n 'C-h' if-shell "$is_vim" 'send-keys C-h' 'select-pane -L'
80 | bind-key -n 'C-j' if-shell "$is_vim" 'send-keys C-j' 'select-pane -D'
81 | bind-key -n 'C-k' if-shell "$is_vim" 'send-keys C-k' 'select-pane -U'
82 | bind-key -n 'C-l' if-shell "$is_vim" 'send-keys C-l' 'select-pane -R'
83 | tmux_version='$(tmux -V | sed -En "s/^tmux ([0-9]+(.[0-9]+)?).*/\1/p")'
84 | if-shell -b '[ "$(echo "$tmux_version < 3.0" | bc)" = 1 ]' \
85 | "bind-key -n 'C-\\' if-shell \"$is_vim\" 'send-keys C-\\' 'select-pane -l'"
86 | if-shell -b '[ "$(echo "$tmux_version >= 3.0" | bc)" = 1 ]' \
87 | "bind-key -n 'C-\\' if-shell \"$is_vim\" 'send-keys C-\\\\' 'select-pane -l'"
88 |
89 | bind-key -T copy-mode-vi 'C-h' select-pane -L
90 | bind-key -T copy-mode-vi 'C-j' select-pane -D
91 | bind-key -T copy-mode-vi 'C-k' select-pane -U
92 | bind-key -T copy-mode-vi 'C-l' select-pane -R
93 |
94 | # List of plugins
95 | set -g @plugin 'tmux-plugins/tpm'
96 | set -g @plugin 'tmux-plugins/tmux-sensible'
97 | # set -g @plugin 'dracula/tmux'
98 | set -g @plugin 'jaclu/tmux-menus' # actions menu
99 | set -g @plugin 'tmux-plugins/tmux-yank'
100 | set -g @plugin 'schasse/tmux-jump'
101 |
102 | set-option -g status-position "bottom"
103 | set-option -g status-style bg=default,fg=default
104 | set-option -g status-justify left
105 | set-option -g status-left '#[bg=#698DDA,fg=black,bold]#{?client_prefix, tmux ,}'
106 | set-option -g status-right '#S'
107 | set-option -g window-status-format ' #I:#W '
108 | set-option -g window-status-current-format '#[bg=#698DDA,fg=black] #I:#W#{?window_zoomed_flag, , }'
109 | set -g @jump-key 's'
110 |
111 | # available plugins: battery, cpu-usage, git, gpu-usage, ram-usage, network, weather
112 | # set -g @dracula-plugins "git battery"
113 | # set -g @dracula-show-powerline true
114 | # set -g @dracula-show-left-icon smiley
115 | # set -g @dracula-left-icon-padding 0
116 | # set -g @dracula-border-contrast false
117 | # set -g @dracula-show-fahrenheit false
118 | # set -g @dracula-show-timezone true
119 | # set -g @dracula-border-contrast false
120 | # set -g @dracula-show-flags false
121 | # set -g @dracula-day-month true
122 | # set -g @dracula-military-time true
123 |
124 |
125 | # bottom line
126 | run '~/.tmux/plugins/tpm/tpm'
127 |
--------------------------------------------------------------------------------
/config/karabiner.edn:
--------------------------------------------------------------------------------
1 | ; docs -> https://github.com/yqrashawn/GokuRakuJoudo/blob/master/tutorial.md
2 | ; example -> https://github.com/kchen0x/k-goku
3 | ; simlayers -> https://gist.github.com/gsinclair/f4ab34da53034374eb6164698a0a8ace
4 |
5 | ;; LEGEND
6 | ;; ! | means mandatory
7 | ;; # | means optional
8 | ;; C | left_command
9 | ;; T | left_control
10 | ;; O | left_option
11 | ;; S | left_shift
12 | ;; F | fn
13 | ;; Q | right_command
14 | ;; W | right_control
15 | ;; E | right_option
16 | ;; R | right_shift
17 | ;; !! | mandatory command + control + optional + shift (hyper)
18 | ;; ## | optional any
19 |
20 | ; cmd+shift+/
21 | {
22 | :profiles {:Default {:default true :sim 50 :delay 500 :alone 500 :held 500}}
23 | :devices {
24 | :macbook-internal [{:product_id 835 :vendor_id 1452 :is_built_in_keyboard true}]
25 | :k380 [{:vendor_id 1133, :product_id 45890}]
26 | :voyager [{:vendor_id 12951, :product_id 6519 }]
27 | }
28 | :applications {
29 | :terminals ["^com\\.apple\\.Terminal$" "^com\\.googlecode\\.iterm2$"],
30 | :alfred ["^com\\.runningwithcrayons\\.Alfred$"]
31 | :slack ["com.tinyspeck.slackmacgap"]
32 | :discord [".*Discord$"]
33 | ;; :chrome ["^com\\.google\\.Chrome$"]
34 | :browser ["^com\\.brave\\.Browser$"]
35 | ;; :browser [".*\\.librewolf$"]
36 | :music [".*Music"]
37 | :code ["com.microsoft.VSCode"]
38 | ; :browsers ["^com\\.kagi\\.kagimacOS$" "^org\\.mozilla\\.firefox$" "^org\\.mozilla\\.firefoxdeveloperedition$" "^com\\.google\\.Chrome$" "^org\\.chromium\\.Chromium$" "^com\\.google\\.ome\\.canary$" "^com\\.apple\\.Safari$" "^com\\.brave\\.Browser$"]
39 | }
40 | :layers {
41 | :hyper-mode {:key :caps_lock :alone {:key :escape} :afterup [{:set ["regular-hjkl" 0]}] :condi [:k380 :macbook-internal]} ; ctrl+caps for caps toggle
42 | :3-mode {:key :3 :condi [:k380 :macbook-internal]} ;; '6' + vowel = circumflex
43 | }
44 | :templates {
45 | :open "open -a \"%s\""
46 | :alf "open /Applications/Alfred\\ 5.app && osascript -e 'tell application \"Alfred 5\" to search \"%s\"'"
47 | :togglerecentapp "osascript -e '
48 | tell application \"System Events\"
49 | key code 48 using {command down}
50 | end tell
51 | '"
52 | ;; :km "osascript -e 'tell application \"Keyboard Maestro Engine\" to do script \"%s\"'"
53 |
54 | :open-chrome "osascript -e '
55 | set address to \"%s\"
56 |
57 | tell application \"Google Chrome\"
58 | activate
59 | if not (exists window 1) then reopen
60 | repeat with w in windows
61 | set i to 1
62 | repeat with t in tabs of w
63 | if URL of t contains address then
64 | set active tab index of w to i
65 | set index of w to 1
66 | return
67 | end if
68 | set i to i + 1
69 | end repeat
70 | end repeat
71 | open location \"http://\" & address
72 | end tell
73 | '"
74 | ; :paste "osascript -e '
75 | ; set the clipboard to \"%s\"
76 | ; tell application \"System Events\"
77 | ; keystroke \"v\" using command down
78 | ; end tell
79 | ; '"
80 | }
81 | :main [
82 | {:des "Hyper Mode - Voyager (simplified)"
83 | :rules [
84 | ;; apps
85 | [:!!delete_or_backspace [:open "/Applications/Visual Studio Code.app"] :browser]
86 | [:!!delete_or_backspace [:open "/Applications/Brave Browser.app"] :code]
87 | [:!!delete_or_backspace [:open "/Applications/Brave Browser.app"]]
88 | ;; [:!!w [:open "/Applications/LibreWolf.app"]]
89 | [:!!f [:open "/Applications/Figma.app"]]
90 | [:!!return_or_enter [:togglerecentapp]]
91 | [:!!s [:open "/Applications/Slack.app"]]
92 | [:!!g [:open "/Applications/Brave Browser.app"]]
93 | [:!!d [:open "/Applications/Discord.app"]]
94 | [:!!r [:open "Reminders"]]
95 | [:!!c [:open "Calendar"]]
96 | [:!!k [:open "/Applications/Toggl Track.app"]]
97 | [:!!m [:open "YouTube Music"]]
98 | [:!!b [:open "/Applications/Beekeeper Studio.app"]]
99 | [:!!t [:open "/Applications/Thunderbird.app"]]
100 | [:!!l :!CSopen_bracket] ; pane left
101 | [:!!u :!CSclose_bracket] ; pane right
102 | ; neio reserved for vscode nav
103 | [:!!n [:!Ta :left_arrow] :terminals]
104 | [:!!e [:!Ta :down_arrow] :terminals]
105 | [:!!o [:!Ta :right_arrow] :terminals]
106 | [:!!h [:!Ta :j] :terminals :code] ; pane left
107 | [:!!comma [:!Ta :k] :terminals :code] ; pane right
108 | ; tmux
109 | ;; [:!!quote :!CSopen_bracket] ; pane left
110 | ;; [:!!delete_forward :!CSclose_bracket] ; pane right
111 | ;; [:!!grave_accent_and_tilde :!CSclose_bracket] ; pane right
112 | ;; [:!!quote :!CSclose_bracket] ; pane right
113 | [:!!w [:!Ta :c]] ; create window
114 | [:!!x [:!Ta :x]] ; kill pane
115 | [:!!spacebar [:!Ta :spacebar]] ; copy mode
116 | ]}
117 |
118 | {:des "Map shift+backspace to del (all keyboards)"
119 | :rules [
120 | :k380 :macbook-internal
121 | [:!Sdelete_or_backspace :delete_forward]
122 | ]}
123 |
124 | {:des "Make Caps behave like ESC"
125 | :rules [
126 | :macbook-internal
127 | :k380
128 | [:caps_lock :escape]
129 | ]}
130 | ]
131 | }
132 |
--------------------------------------------------------------------------------
/vscode/keybindings.json:
--------------------------------------------------------------------------------
1 | [
2 | {
3 | "key": "cmd+e n",
4 | "command": "explorer.newFile"
5 | },
6 | {
7 | "key": "cmd+e f",
8 | "command": "explorer.newFolder"
9 | },
10 | {
11 | "key": "cmd+e r",
12 | "command": "workbench.files.action.refreshFilesExplorer"
13 | },
14 | // {
15 | // "key": "ctrl+o",
16 | // "command": "workbench.action.navigateRight",
17 | // "when": "!panelFocus"
18 | // },
19 | // {
20 | // "key": "ctrl+i",
21 | // "command": "workbench.action.navigateUp",
22 | // },
23 | // {
24 | // "key": "ctrl+e",
25 | // "command": "workbench.action.navigateDown",
26 | // },
27 | // {
28 | // "key": "ctrl+n",
29 | // "command": "workbench.action.navigateLeft",
30 | // // "when": "editorTextFocus && vim.active && vim.mode != 'Insert'"
31 | // },
32 | {
33 | "key": "ctrl+shift+alt+cmd+n",
34 | "command": "workbench.action.navigateLeft",
35 | // "when": "editorTextFocus && vim.active && vim.mode != 'Insert'"
36 | },
37 | {
38 | "key": "ctrl+shift+alt+cmd+e",
39 | "command": "workbench.action.navigateDown",
40 | },
41 | {
42 | "key": "ctrl+shift+alt+cmd+e",
43 | "command": "search.action.focusSearchList",
44 | "when": "hasSearchResult && searchInputBoxFocus"
45 | },
46 | {
47 | "key": "ctrl+shift+alt+cmd+e",
48 | "command": "search.action.focusSearchList",
49 | "when": "hasSearchResult && searchInputBoxFocus"
50 | },
51 | // {
52 | // "key": "ctrl+h",
53 | // "command": "workbench.action.focusSideBar",
54 | // "when": "editorTextFocus && vim.active && vim.mode != 'Insert' && sideBarFocus"
55 | // },
56 | {
57 | "key": "ctrl+shift+alt+cmd+i",
58 | "command": "workbench.action.navigateUp",
59 | },
60 | {
61 | "key": "ctrl+shift+alt+cmd+i",
62 | "command": "search.action.focusSearchFromResults",
63 | "when": "hasSearchResult && searchViewletFocus"
64 | },
65 | {
66 | "key": "ctrl+shift+alt+cmd+i",
67 | "command": "search.action.focusSearchFromResults",
68 | "when": "hasSearchResult && searchViewletFocus"
69 | },
70 | {
71 | "key": "ctrl+shift+alt+cmd+o",
72 | "command": "workbench.action.navigateRight",
73 | "when": "!panelFocus"
74 | },
75 | {
76 | "key": "ctrl+enter",
77 | "command": "workbench.action.toggleMaximizedPanel",
78 | "when": "terminalFocus"
79 | },
80 | {
81 | "key": "ctrl+j",
82 | "command": "workbench.action.quickOpenSelectNext",
83 | "when": "inQuickOpen"
84 | },
85 | // {
86 | // "key": "ctrl+h",
87 | // "command": "workbench.action.previousPanelView",
88 | // "when": "panelFocus"
89 | // },
90 | // {
91 | // "key": "ctrl+l",
92 | // "command": "workbench.action.nextPanelView",
93 | // "when": "panelFocus"
94 | // },
95 | // {
96 | // "key": "cmd+shift+[",
97 | // "command": "workbench.panel.output.focus",
98 | // "when": "workbench"
99 | // },
100 | {
101 | "key": "ctrl+k",
102 | "command": "workbench.action.quickOpenSelectPrevious",
103 | "when": "inQuickOpen"
104 | },
105 | {
106 | "key": "ctrl+l",
107 | "command": "workbench.action.focusActiveEditorGroup",
108 | "when": "!editorTextFocus && !panelFocus"
109 | },
110 | {
111 | "key": "ctrl+enter",
112 | "command": "problems.action.openToSide",
113 | "when": "problemFocus"
114 | },
115 | {
116 | "key": "ctrl+enter",
117 | "command": "-problems.action.openToSide",
118 | "when": "problemFocus"
119 | },
120 | {
121 | "key": "ctrl+enter",
122 | "command": "search.action.openResultToSide",
123 | "when": "fileMatchOrMatchFocus && searchViewletVisible"
124 | },
125 | {
126 | "key": "ctrl+enter",
127 | "command": "-search.action.openResultToSide",
128 | "when": "fileMatchOrMatchFocus && searchViewletVisible"
129 | },
130 | {
131 | "key": "cmd+1",
132 | "command": "workbench.action.firstEditorInGroup"
133 | },
134 | {
135 | "key": "cmd+up",
136 | "command": "-search.action.focusSearchFromResults",
137 | "when": "accessibilityModeEnabled && searchViewletVisible || firstMatchFocus && searchViewletVisible"
138 | },
139 | {
140 | "key": "ctrl+f e",
141 | "command": "search.action.expandSearchResults",
142 | "when": "hasSearchResult"
143 | },
144 | {
145 | "key": "ctrl+f r",
146 | "command": "search.action.collapseSearchResults",
147 | "when": "hasSearchResult"
148 | },
149 | {
150 | "key": "alt+w",
151 | "command": "git.openFile"
152 | },
153 | {
154 | "key": "cmd+0",
155 | "command": "-workbench.action.focusSideBar"
156 | },
157 | {
158 | "key": "cmd+0",
159 | "command": "workbench.action.zoomReset"
160 | },
161 | {
162 | "key": "cmd+numpad0",
163 | "command": "-workbench.action.zoomReset"
164 | },
165 | {
166 | "key": "cmd+e n",
167 | "command": "explorer.newFile"
168 | },
169 | {
170 | "key": "cmd+e f",
171 | "command": "explorer.newFolder"
172 | },
173 | {
174 | "key": "cmd+e r",
175 | "command": "workbench.files.action.refreshFilesExplorer"
176 | },
177 | {
178 | "key": "ctrl+shift+alt+w",
179 | "command": "projectManager.listProjectsNewWindow"
180 | },
181 | // {
182 | // "key": "ctrl+h",
183 | // "command": "workbench.action.focusSideBar",
184 | // "when": "editorTextFocus && vim.active && vim.mode != 'Insert' && sideBarFocus"
185 | // },
186 | {
187 | "key": "ctrl+enter",
188 | "command": "workbench.action.toggleMaximizedPanel",
189 | "when": "terminalFocus"
190 | },
191 | {
192 | "key": "ctrl+j",
193 | "command": "workbench.action.quickOpenSelectNext",
194 | "when": "inQuickOpen"
195 | },
196 | // {
197 | // "key": "ctrl+h",
198 | // "command": "workbench.action.previousPanelView",
199 | // "when": "panelFocus"
200 | // },
201 | // {
202 | // "key": "ctrl+l",
203 | // "command": "workbench.action.nextPanelView",
204 | // "when": "panelFocus"
205 | // },
206 | // {
207 | // "key": "cmd+shift+[",
208 | // "command": "workbench.panel.output.focus",
209 | // "when": "workbench"
210 | // },
211 | {
212 | "key": "ctrl+k",
213 | "command": "workbench.action.quickOpenSelectPrevious",
214 | "when": "inQuickOpen"
215 | },
216 | {
217 | "key": "ctrl+l",
218 | "command": "workbench.action.focusActiveEditorGroup",
219 | "when": "!editorTextFocus && !panelFocus"
220 | },
221 | {
222 | "key": "ctrl+enter",
223 | "command": "problems.action.openToSide",
224 | "when": "problemFocus"
225 | },
226 | {
227 | "key": "ctrl+enter",
228 | "command": "-problems.action.openToSide",
229 | "when": "problemFocus"
230 | },
231 | {
232 | "key": "ctrl+enter",
233 | "command": "search.action.openResultToSide",
234 | "when": "fileMatchOrMatchFocus && searchViewletVisible"
235 | },
236 | {
237 | "key": "ctrl+enter",
238 | "command": "-search.action.openResultToSide",
239 | "when": "fileMatchOrMatchFocus && searchViewletVisible"
240 | },
241 | {
242 | "key": "cmd+1",
243 | "command": "workbench.action.firstEditorInGroup"
244 | },
245 |
246 | {
247 | "key": "cmd+up",
248 | "command": "-search.action.focusSearchFromResults",
249 | "when": "accessibilityModeEnabled && searchViewletVisible || firstMatchFocus && searchViewletVisible"
250 | },
251 | {
252 | "key": "ctrl+f e",
253 | "command": "search.action.expandSearchResults",
254 | "when": "hasSearchResult"
255 | },
256 | {
257 | "key": "ctrl+f r",
258 | "command": "search.action.collapseSearchResults",
259 | "when": "hasSearchResult"
260 | },
261 | {
262 | "key": "alt+w",
263 | "command": "git.openFile"
264 | },
265 | {
266 | "key": "cmd+0",
267 | "command": "-workbench.action.focusSideBar"
268 | },
269 | {
270 | "key": "cmd+0",
271 | "command": "workbench.action.zoomReset"
272 | },
273 | {
274 | "key": "cmd+numpad0",
275 | "command": "-workbench.action.zoomReset"
276 | },
277 | {
278 | "key": "ctrl+shift+alt+p",
279 | "command": "projectManager.listProjects"
280 | },
281 | {
282 | "key": "alt+cmd+p",
283 | "command": "-projectManager.listProjects"
284 | },
285 | {
286 | "key": "ctrl+shift+alt+a",
287 | "command": "git.stageAll",
288 | "when": "projectsExplorerGit.visible && !editorTextFocus && !panelFocus"
289 | },
290 | {
291 | "key": "ctrl+shift+alt+s",
292 | "command": "git.stage",
293 | "when": "!editorTextFocus && !inSearchEditor && !panelFocus"
294 | },
295 | {
296 | "key": "ctrl+shift+alt+r",
297 | "command": "git.unstageAll",
298 | "when": "projectsExplorerGit.visible && !editorTextFocus && !panelFocus"
299 | },
300 | {
301 | "key": "tab",
302 | "command": "-jumpToNextSnippetPlaceholder",
303 | "when": "hasNextTabstop && inSnippetMode && textInputFocus"
304 | },
305 | {
306 | "key": "tab",
307 | "command": "jumpToNextSnippetPlaceholder",
308 | "when": "hasNextTabstop && inSnippetMode && textInputFocus"
309 | },
310 | {
311 | "key": "tab",
312 | "command": "editor.action.inlineSuggest.commit",
313 | "when": "inlineSuggestionHasIndentationLessThanTabSize && inlineSuggestionVisible && !editorHoverFocused && !editorTabMovesFocus"
314 | },
315 | {
316 | "key": "tab",
317 | "command": "-editor.action.inlineSuggest.commit",
318 | "when": "inlineSuggestionHasIndentationLessThanTabSize && inlineSuggestionVisible && !editorHoverFocused && !editorTabMovesFocus && !suggestWidgetVisible"
319 | }
320 | ]
--------------------------------------------------------------------------------
/iterm2/vscodedark.itermcolors:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Ansi 0 Color
6 |
7 | Alpha Component
8 | 1
9 | Blue Component
10 | 0.0
11 | Color Space
12 | sRGB
13 | Green Component
14 | 0.0
15 | Red Component
16 | 0.0
17 |
18 | Ansi 1 Color
19 |
20 | Alpha Component
21 | 1
22 | Blue Component
23 | 0.31764706969261169
24 | Color Space
25 | sRGB
26 | Green Component
27 | 0.29019609093666077
28 | Red Component
29 | 0.91372549533843994
30 |
31 | Ansi 10 Color
32 |
33 | Alpha Component
34 | 1
35 | Blue Component
36 | 0.54117649793624878
37 | Color Space
38 | sRGB
39 | Green Component
40 | 0.82745099067687988
41 | Red Component
42 | 0.27058824896812439
43 |
44 | Ansi 11 Color
45 |
46 | Alpha Component
47 | 1
48 | Blue Component
49 | 0.29019609093666077
50 | Color Space
51 | sRGB
52 | Green Component
53 | 0.97254902124404907
54 | Red Component
55 | 0.94901961088180542
56 |
57 | Ansi 12 Color
58 |
59 | Alpha Component
60 | 1
61 | Blue Component
62 | 0.91372549533843994
63 | Color Space
64 | sRGB
65 | Green Component
66 | 0.54117649793624878
67 | Red Component
68 | 0.30588236451148987
69 |
70 | Ansi 13 Color
71 |
72 | Alpha Component
73 | 1
74 | Blue Component
75 | 0.83921569585800171
76 | Color Space
77 | sRGB
78 | Green Component
79 | 0.41568627953529358
80 | Red Component
81 | 0.82352942228317261
82 |
83 | Ansi 14 Color
84 |
85 | Alpha Component
86 | 1
87 | Blue Component
88 | 0.85490196943283081
89 | Color Space
90 | sRGB
91 | Green Component
92 | 0.71764707565307617
93 | Red Component
94 | 0.28627452254295349
95 |
96 | Ansi 15 Color
97 |
98 | Alpha Component
99 | 1
100 | Blue Component
101 | 0.89803922176361084
102 | Color Space
103 | sRGB
104 | Green Component
105 | 0.89803922176361084
106 | Red Component
107 | 0.89803922176361084
108 |
109 | Ansi 2 Color
110 |
111 | Alpha Component
112 | 1
113 | Blue Component
114 | 0.47058823704719543
115 | Color Space
116 | sRGB
117 | Green Component
118 | 0.7450980544090271
119 | Red Component
120 | 0.21568627655506134
121 |
122 | Ansi 3 Color
123 |
124 | Alpha Component
125 | 1
126 | Blue Component
127 | 0.13333334028720856
128 | Color Space
129 | sRGB
130 | Green Component
131 | 0.90980392694473267
132 | Red Component
133 | 0.88627451658248901
134 |
135 | Ansi 4 Color
136 |
137 | Alpha Component
138 | 1
139 | Blue Component
140 | 0.78039216995239258
141 | Color Space
142 | sRGB
143 | Green Component
144 | 0.43137255311012268
145 | Red Component
146 | 0.22352941334247589
147 |
148 | Ansi 5 Color
149 |
150 | Alpha Component
151 | 1
152 | Blue Component
153 | 0.73725491762161255
154 | Color Space
155 | sRGB
156 | Green Component
157 | 0.20784313976764679
158 | Red Component
159 | 0.72156864404678345
160 |
161 | Ansi 6 Color
162 |
163 | Alpha Component
164 | 1
165 | Blue Component
166 | 0.80000001192092896
167 | Color Space
168 | sRGB
169 | Green Component
170 | 0.65490198135375977
171 | Red Component
172 | 0.23137255012989044
173 |
174 | Ansi 7 Color
175 |
176 | Alpha Component
177 | 1
178 | Blue Component
179 | 0.89803922176361084
180 | Color Space
181 | sRGB
182 | Green Component
183 | 0.89803922176361084
184 | Red Component
185 | 0.89803922176361084
186 |
187 | Ansi 8 Color
188 |
189 | Alpha Component
190 | 1
191 | Blue Component
192 | 0.40000000596046448
193 | Color Space
194 | sRGB
195 | Green Component
196 | 0.40000000596046448
197 | Red Component
198 | 0.40000000596046448
199 |
200 | Ansi 9 Color
201 |
202 | Alpha Component
203 | 1
204 | Blue Component
205 | 0.31764706969261169
206 | Color Space
207 | sRGB
208 | Green Component
209 | 0.29019609093666077
210 | Red Component
211 | 0.91372549533843994
212 |
213 | Background Color
214 |
215 | Alpha Component
216 | 1
217 | Blue Component
218 | 0.11764705926179886
219 | Color Space
220 | sRGB
221 | Green Component
222 | 0.11764705926179886
223 | Red Component
224 | 0.11764705926179886
225 |
226 | Badge Color
227 |
228 | Alpha Component
229 | 0.5
230 | Blue Component
231 | 1
232 | Color Space
233 | sRGB
234 | Green Component
235 | 1
236 | Red Component
237 | 1
238 |
239 | Bold Color
240 |
241 | Alpha Component
242 | 1
243 | Blue Component
244 | 1
245 | Color Space
246 | sRGB
247 | Green Component
248 | 1
249 | Red Component
250 | 0.99999600648880005
251 |
252 | Cursor Color
253 |
254 | Alpha Component
255 | 1
256 | Blue Component
257 | 0.80000001192092896
258 | Color Space
259 | sRGB
260 | Green Component
261 | 0.80000001192092896
262 | Red Component
263 | 0.80000001192092896
264 |
265 | Cursor Guide Color
266 |
267 | Alpha Component
268 | 0.25
269 | Blue Component
270 | 1
271 | Color Space
272 | sRGB
273 | Green Component
274 | 0.9268307089805603
275 | Red Component
276 | 0.70213186740875244
277 |
278 | Cursor Text Color
279 |
280 | Alpha Component
281 | 1
282 | Blue Component
283 | 0.0
284 | Color Space
285 | sRGB
286 | Green Component
287 | 0.0
288 | Red Component
289 | 0.0
290 |
291 | Foreground Color
292 |
293 | Alpha Component
294 | 1
295 | Blue Component
296 | 0.80000001192092896
297 | Color Space
298 | sRGB
299 | Green Component
300 | 0.80000001192092896
301 | Red Component
302 | 0.80000001192092896
303 |
304 | Link Color
305 |
306 | Alpha Component
307 | 1
308 | Blue Component
309 | 0.9337158203125
310 | Color Space
311 | sRGB
312 | Green Component
313 | 0.55789834260940552
314 | Red Component
315 | 0.19802422821521759
316 |
317 | Selected Text Color
318 |
319 | Alpha Component
320 | 1
321 | Blue Component
322 | 1
323 | Color Space
324 | sRGB
325 | Green Component
326 | 1
327 | Red Component
328 | 1
329 |
330 | Selection Color
331 |
332 | Alpha Component
333 | 1
334 | Blue Component
335 | 0.3333333432674408
336 | Color Space
337 | sRGB
338 | Green Component
339 | 0.3333333432674408
340 | Red Component
341 | 0.3333333432674408
342 |
343 |
344 |
345 |
--------------------------------------------------------------------------------
/config/fish/fish_variables:
--------------------------------------------------------------------------------
1 | # This file contains fish universal variable definitions.
2 | # VERSION: 3.0
3 | SETUVAR --export DBT_PROFILES_DIR:/Users/halafi/Projects/data\x2danalytics/maquinillo/maquinillo/data_transformations/dbt
4 | SETUVAR --export EDITOR:nvim
5 | SETUVAR --export GOBIN:/Users/halafi/go\x2dworkspace/bin
6 | SETUVAR --export --path GOPATH:/Users/halafi/go\x2dworkspace
7 | SETUVAR --export GOROOT:/usr/local/go
8 | SETUVAR --export LF_ICONS:\x2a\x2e7z\x3d\uf410\x3a\x2a\x2eaac\x3d\uf40f\x3a\x2a\x2eace\x3d\uf410\x3a\x2a\x2ealz\x3d\uf410\x3a\x2a\x2earc\x3d\uf410\x3a\x2a\x2earj\x3d\uf410\x3a\x2a\x2easf\x3d\uf40f\x3a\x2a\x2eatom\x3d\ue764\x3a\x2a\x2eau\x3d\uf40f\x3a\x2a\x2eavi\x3d\uf40f\x3a\x2a\x2ebash\x3d\uf489\x3a\x2a\x2ebash_history\x3d\uf489\x3a\x2a\x2ebashprofile\x3d\uf489\x3a\x2a\x2ebashrc\x3d\uf489\x3a\x2a\x2ebmp\x3d\uf40f\x3a\x2a\x2ebz2\x3d\uf410\x3a\x2a\x2ebz\x3d\uf410\x3a\x2a\x2ec\x3d\ue61e\x3a\x2a\x2ecab\x3d\uf410\x3a\x2a\x2ecc\x3d\ue61d\x3a\x2a\x2ecfg\x3d\ue615\x3a\x2a\x2ecgm\x3d\uf40f\x3a\x2a\x2eclang\x2dformat\x3d\ue615\x3a\x2a\x2eclj\x3d\ue768\x3a\x2a\x2ecmd\x3d\uf40d\x3a\x2a\x2ecoffee\x3d\ue751\x3a\x2a\x2ecpio\x3d\uf410\x3a\x2a\x2ecpp\x3d\ue61d\x3a\x2a\x2ecss\x3d\ue614\x3a\x2a\x2ed\x3d\ue7af\x3a\x2a\x2edart\x3d\ue798\x3a\x2a\x2edeb\x3d\uf410\x3a\x2a\x2edl\x3d\uf40f\x3a\x2a\x2eDS_Store\x3d\uf179\x3a\x2a\x2edwm\x3d\uf410\x3a\x2a\x2edz\x3d\uf410\x3a\x2a\x2eear\x3d\uf410\x3a\x2a\x2eemf\x3d\uf40f\x3a\x2a\x2eenv\x3d\uf444\x3a\x2a\x2eerl\x3d\ue7b1\x3a\x2a\x2eesd\x3d\uf410\x3a\x2a\x2eexs\x3d\ue62d\x3a\x2a\x2efish\x3d\uf489\x3a\x2a\x2eflac\x3d\uf40f\x3a\x2a\x2eflc\x3d\uf40f\x3a\x2a\x2efli\x3d\uf40f\x3a\x2a\x2eflv\x3d\uf40f\x3a\x2a\x2efs\x3d\ue7a7\x3a\x2a\x2egif\x3d\uf40f\x3a\x2a\x2egit\x3d\ue725\x3a\x2a\x2egitattributes\x3d\ue725\x3a\x2a\x2egitconfig\x3d\ue725\x3a\x2a\x2egithub\x3d\uf408\x3a\x2a\x2egitignore\x3d\ue725\x3a\x2a\x2egitignore_global\x3d\ue725\x3a\x2a\x2egitkeep\x3d\ue725\x3a\x2a\x2egitmodules\x3d\ue725\x3a\x2a\x2egl\x3d\uf40f\x3a\x2a\x2ego\x3d\ue627\x3a\x2a\x2egz\x3d\uf410\x3a\x2a\x2eh\x3d\ue61e\x3a\x2a\x2ehh\x3d\ue61d\x3a\x2a\x2ehidden\x3d\uf023\x3a\x2a\x2ehpp\x3d\ue61d\x3a\x2a\x2ehs\x3d\ue777\x3a\x2a\x2ehtml\x3d\ue60e\x3a\x2a\x2ehyper\x2ejs\x3d\uf489\x3a\x2a\x2ejar\x3d\uf410\x3a\x2a\x2ejava\x3d\ue738\x3a\x2a\x2ejl\x3d\ue624\x3a\x2a\x2ejpeg\x3d\uf40f\x3a\x2a\x2ejpg\x3d\uf40f\x3a\x2a\x2ejs\x3d\ue74e\x3a\x2a\x2ejson\x3d\ue60b\x3a\x2a\x2ejsx\x3d\ue7ba\x3a\x2a\x2elha\x3d\uf410\x3a\x2a\x2elrz\x3d\uf410\x3a\x2a\x2elua\x3d\ue620\x3a\x2a\x2elz4\x3d\uf410\x3a\x2a\x2elz\x3d\uf410\x3a\x2a\x2elzh\x3d\uf410\x3a\x2a\x2elzma\x3d\uf410\x3a\x2a\x2elzo\x3d\uf410\x3a\x2a\x2em2v\x3d\uf40f\x3a\x2a\x2em4a\x3d\uf40f\x3a\x2a\x2em4v\x3d\uf40f\x3a\x2a\x2emap\x3d\uf278\x3a\x2a\x2emd\x3d\ue609\x3a\x2a\x2emdx\x3d\ue609\x3a\x2a\x2emid\x3d\uf40f\x3a\x2a\x2emidi\x3d\uf40f\x3a\x2a\x2emjpeg\x3d\uf40f\x3a\x2a\x2emjpg\x3d\uf40f\x3a\x2a\x2emka\x3d\uf40f\x3a\x2a\x2emkv\x3d\uf40f\x3a\x2a\x2emng\x3d\uf40f\x3a\x2a\x2emov\x3d\uf40f\x3a\x2a\x2emp3\x3d\uf40f\x3a\x2a\x2emp4\x3d\uf40f\x3a\x2a\x2emp4v\x3d\uf40f\x3a\x2a\x2empc\x3d\uf40f\x3a\x2a\x2empeg\x3d\uf40f\x3a\x2a\x2empg\x3d\uf40f\x3a\x2a\x2enix\x3d\uf313\x3a\x2a\x2enpmignore\x3d\ue71e\x3a\x2a\x2enpmrc\x3d\ue71e\x3a\x2a\x2enuv\x3d\uf40f\x3a\x2a\x2envmrc\x3d\ue718\x3a\x2a\x2eoga\x3d\uf40f\x3a\x2a\x2eogg\x3d\uf40f\x3a\x2a\x2eogm\x3d\uf40f\x3a\x2a\x2eogv\x3d\uf40f\x3a\x2a\x2eogx\x3d\uf40f\x3a\x2a\x2eopus\x3d\uf40f\x3a\x2a\x2epbm\x3d\uf40f\x3a\x2a\x2epcx\x3d\uf40f\x3a\x2a\x2epdf\x3d\uf411\x3a\x2a\x2epgm\x3d\uf40f\x3a\x2a\x2ephp\x3d\ue608\x3a\x2a\x2epl\x3d\ue769\x3a\x2a\x2epng\x3d\uf40f\x3a\x2a\x2eppm\x3d\uf40f\x3a\x2a\x2epro\x3d\ue7a1\x3a\x2a\x2eps1\x3d\uf40d\x3a\x2a\x2epy\x3d\ue73c\x3a\x2a\x2eqt\x3d\uf40f\x3a\x2a\x2era\x3d\uf40f\x3a\x2a\x2erar\x3d\uf410\x3a\x2a\x2erb\x3d\ue739\x3a\x2a\x2erm\x3d\uf40f\x3a\x2a\x2ermvb\x3d\uf40f\x3a\x2a\x2erpm\x3d\uf410\x3a\x2a\x2ers\x3d\ue7a8\x3a\x2a\x2ervm\x3d\ue21e\x3a\x2a\x2erz\x3d\uf410\x3a\x2a\x2esar\x3d\uf410\x3a\x2a\x2escala\x3d\ue737\x3a\x2a\x2esh\x3d\uf40d\x3a\x2a\x2eskhdrc\x3d\uf179\x3a\x2a\x2esol\x3d\ufcb9\x3a\x2a\x2espx\x3d\uf40f\x3a\x2a\x2esvg\x3d\uf40f\x3a\x2a\x2esvgz\x3d\uf40f\x3a\x2a\x2eswm\x3d\uf410\x3a\x2a\x2et7z\x3d\uf410\x3a\x2a\x2etar\x3d\uf410\x3a\x2a\x2etaz\x3d\uf410\x3a\x2a\x2etbz2\x3d\uf410\x3a\x2a\x2etbz\x3d\uf410\x3a\x2a\x2etga\x3d\uf40f\x3a\x2a\x2etgz\x3d\uf410\x3a\x2a\x2etif\x3d\uf40f\x3a\x2a\x2etiff\x3d\uf40f\x3a\x2a\x2etlz\x3d\uf410\x3a\x2a\x2etmux\x2econf\x3d\uf489\x3a\x2a\x2etrash\x3d\uf1f8\x3a\x2a\x2ets\x3d\ue628\x3a\x2a\x2etsx\x3d\ue7ba\x3a\x2a\x2etxz\x3d\uf410\x3a\x2a\x2etz\x3d\uf410\x3a\x2a\x2etzo\x3d\uf410\x3a\x2a\x2etzst\x3d\uf410\x3a\x2a\x2evim\x3d\ue62b\x3a\x2a\x2evimrc\x3d\ue62b\x3a\x2a\x2evob\x3d\uf40f\x3a\x2a\x2evscode\x3d\ue70c\x3a\x2a\x2ewar\x3d\uf410\x3a\x2a\x2ewav\x3d\uf40f\x3a\x2a\x2ewebm\x3d\uf40f\x3a\x2a\x2ewim\x3d\uf410\x3a\x2a\x2exbm\x3d\uf40f\x3a\x2a\x2excf\x3d\uf40f\x3a\x2a\x2expm\x3d\uf40f\x3a\x2a\x2exspf\x3d\uf40f\x3a\x2a\x2exwd\x3d\uf40f\x3a\x2a\x2exz\x3d\uf410\x3a\x2a\x2eyabairc\x3d\uf179\x3a\x2a\x2eyaml\x3d\ufb44\x3a\x2a\x2eyarn\x2dintegrity\x3d\ue718\x3a\x2a\x2eyarnrc\x3d\ue718\x3a\x2a\x2eyml\x3d\ufb44\x3a\x2a\x2eyuv\x3d\uf40f\x3a\x2a\x2ez\x3d\uf410\x3a\x2a\x2ezip\x3d\uf410\x3a\x2a\x2ezoo\x3d\uf410\x3a\x2a\x2ezprofile\x3d\uf489\x3a\x2a\x2ezprofile\x3d\uf489\x3a\x2a\x2ezsh\x3d\uf489\x3a\x2a\x2ezsh_history\x3d\uf489\x3a\x2a\x2ezshrc\x3d\uf489\x3a\x2a\x2ezst\x3d\uf410\x3a\x2abin\x3d\ue5fc\x3a\x2aconfig\x3d\ue5fc\x3a\x2adocker\x2dcompose\x2eyml\x3d\uf308\x3a\x2adockerfile\x3d\uf308\x3a\x2agradle\x3d\ue70e\x3a\x2agruntfile\x2ecoffee\x3d\ue611\x3a\x2agruntfile\x2ejs\x3d\ue611\x3a\x2agruntfile\x2els\x3d\ue611\x3a\x2agulpfile\x2ecoffee\x3d\ue610\x3a\x2agulpfile\x2ejs\x3d\ue610\x3a\x2agulpfile\x2els\x3d\ue610\x3a\x2ainclude\x3d\ue5fc\x3a\x2alib\x3d\uf121\x3a\x2alocalized\x3d\uf179\x3a\x2anode_modules\x3d\ue718\x3a\x2apackage\x2ejson\x3d\ue718\x3a\x2arubydoc\x3d\ue73b\x3a\x2atsconfig\x2ejson\x3d\ue628\x3a\x2ayarn\x2elock\x3d\ue718\x3adi\x3d\uf115\x3adt\x3d\uf115\x3aex\x3d\uf427\x3afi\x3d\uf40e\x3aln\x3d\uf481\x3aor\x3d\uf481\x3aow\x3d\uf115\x3ast\x3d\uf115\x3atw\x3d\uf115\x3a
9 | SETUVAR --export VIMCONFIG:/Users/halafi/\x2econfig/nvim
10 | SETUVAR --export VISUAL:nvim
11 | SETUVAR __fish_initialized:3400
12 | SETUVAR _fish_abbr__2D_:cd\x20\x2d
13 | SETUVAR _fish_abbr__2E_2E_:cd\x20\x2e\x2e
14 | SETUVAR _fish_abbr__2E_2E_2E_:cd\x20\x2e\x2e/\x2e\x2e
15 | SETUVAR fish_color_autosuggestion:969896
16 | SETUVAR fish_color_cancel:\x2d\x2dreverse
17 | SETUVAR fish_color_command:c397d8
18 | SETUVAR fish_color_comment:e7c547
19 | SETUVAR fish_color_cwd:green
20 | SETUVAR fish_color_cwd_root:red
21 | SETUVAR fish_color_end:c397d8
22 | SETUVAR fish_color_error:d54e53
23 | SETUVAR fish_color_escape:00a6b2
24 | SETUVAR fish_color_history_current:\x2d\x2dbold
25 | SETUVAR fish_color_host:normal
26 | SETUVAR fish_color_host_remote:\x1d
27 | SETUVAR fish_color_keyword:\x1d
28 | SETUVAR fish_color_match:\x2d\x2dbackground\x3dbrblue
29 | SETUVAR fish_color_normal:normal
30 | SETUVAR fish_color_operator:00a6b2
31 | SETUVAR fish_color_option:\x1d
32 | SETUVAR fish_color_param:7aa6da
33 | SETUVAR fish_color_quote:b9ca4a
34 | SETUVAR fish_color_redirection:70c0b1
35 | SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack
36 | SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack
37 | SETUVAR fish_color_status:red
38 | SETUVAR fish_color_user:brgreen
39 | SETUVAR fish_color_valid_path:\x2d\x2dunderline
40 | SETUVAR fish_key_bindings:fish_default_key_bindings
41 | SETUVAR fish_pager_color_background:\x1d
42 | SETUVAR fish_pager_color_completion:normal
43 | SETUVAR fish_pager_color_description:B3A06D
44 | SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline
45 | SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan
46 | SETUVAR fish_pager_color_secondary_background:\x1d
47 | SETUVAR fish_pager_color_secondary_completion:\x1d
48 | SETUVAR fish_pager_color_secondary_description:\x1d
49 | SETUVAR fish_pager_color_secondary_prefix:\x1d
50 | SETUVAR fish_pager_color_selected_background:\x2d\x2dbackground\x3dbrblack
51 | SETUVAR fish_pager_color_selected_completion:\x1d
52 | SETUVAR fish_pager_color_selected_description:\x1d
53 | SETUVAR fish_pager_color_selected_prefix:\x1d
54 | SETUVAR fish_user_paths:/Users/halafi/\x2easdf/installs/nodejs/16\x2e17\x2e1/\x2enpm/bin\x1e/usr/local/go/bin\x1e/Users/halafi/\x2ecargo/bin\x1e/Users/halafi/tools/lua\x2dlanguage\x2dserver/bin\x2e/Users/halafi/\x2elocal/bin\x1e/Users/halafi/go\x2dworkspace/bin
55 | SETUVAR pure_begin_prompt_with_current_directory:true
56 | SETUVAR pure_check_for_new_release:false
57 | SETUVAR pure_color_at_sign:pure_color_mute
58 | SETUVAR pure_color_command_duration:pure_color_warning
59 | SETUVAR pure_color_current_directory:pure_color_primary
60 | SETUVAR pure_color_danger:red
61 | SETUVAR pure_color_dark:black
62 | SETUVAR pure_color_git_branch:pure_color_mute
63 | SETUVAR pure_color_git_dirty:pure_color_mute
64 | SETUVAR pure_color_git_stash:pure_color_info
65 | SETUVAR pure_color_git_unpulled_commits:pure_color_info
66 | SETUVAR pure_color_git_unpushed_commits:pure_color_info
67 | SETUVAR pure_color_hostname:pure_color_mute
68 | SETUVAR pure_color_info:cyan
69 | SETUVAR pure_color_jobs:pure_color_normal
70 | SETUVAR pure_color_light:white
71 | SETUVAR pure_color_mute:brblack
72 | SETUVAR pure_color_normal:normal
73 | SETUVAR pure_color_prefix_root_prompt:pure_color_danger
74 | SETUVAR pure_color_primary:blue
75 | SETUVAR pure_color_prompt_on_error:pure_color_danger
76 | SETUVAR pure_color_prompt_on_success:pure_color_success
77 | SETUVAR pure_color_success:magenta
78 | SETUVAR pure_color_system_time:pure_color_mute
79 | SETUVAR pure_color_username_normal:pure_color_mute
80 | SETUVAR pure_color_username_root:pure_color_light
81 | SETUVAR pure_color_virtualenv:pure_color_mute
82 | SETUVAR pure_color_warning:yellow
83 | SETUVAR pure_enable_git:true
84 | SETUVAR pure_enable_single_line_prompt:false
85 | SETUVAR pure_reverse_prompt_symbol_in_vimode:true
86 | SETUVAR pure_separate_prompt_on_error:false
87 | SETUVAR pure_show_jobs:false
88 | SETUVAR pure_show_prefix_root_prompt:false
89 | SETUVAR pure_show_subsecond_command_duration:false
90 | SETUVAR pure_show_system_time:false
91 | SETUVAR pure_symbol_git_dirty:\x2a
92 | SETUVAR pure_symbol_git_stash:\u2261
93 | SETUVAR pure_symbol_git_unpulled_commits:\u21e3
94 | SETUVAR pure_symbol_git_unpushed_commits:\u21e1
95 | SETUVAR pure_symbol_prefix_root_prompt:\x23
96 | SETUVAR pure_symbol_prompt:\u276f
97 | SETUVAR pure_symbol_reverse_prompt:\u276e
98 | SETUVAR pure_symbol_title_bar_separator:\x2d
99 | SETUVAR pure_threshold_command_duration:5
100 |
--------------------------------------------------------------------------------
/iterm2/Default-profile.json:
--------------------------------------------------------------------------------
1 | {
2 | "Use Non-ASCII Font" : false,
3 | "Tags" : [
4 |
5 | ],
6 | "Ansi 12 Color" : {
7 | "Red Component" : 0.30588236451148987,
8 | "Color Space" : "sRGB",
9 | "Blue Component" : 0.91372549533843994,
10 | "Alpha Component" : 1,
11 | "Green Component" : 0.54117649793624878
12 | },
13 | "Ansi 7 Color" : {
14 | "Red Component" : 0.89803922176361084,
15 | "Color Space" : "sRGB",
16 | "Blue Component" : 0.89803922176361084,
17 | "Alpha Component" : 1,
18 | "Green Component" : 0.89803922176361084
19 | },
20 | "Draw Powerline Glyphs" : true,
21 | "Bold Color" : {
22 | "Red Component" : 0.99999600648880005,
23 | "Color Space" : "sRGB",
24 | "Blue Component" : 1,
25 | "Alpha Component" : 1,
26 | "Green Component" : 1
27 | },
28 | "Ansi 8 Color" : {
29 | "Red Component" : 0.40000000596046448,
30 | "Color Space" : "sRGB",
31 | "Blue Component" : 0.40000000596046448,
32 | "Alpha Component" : 1,
33 | "Green Component" : 0.40000000596046448
34 | },
35 | "Ansi 9 Color" : {
36 | "Red Component" : 0.91372549533843994,
37 | "Color Space" : "sRGB",
38 | "Blue Component" : 0.31764706969261169,
39 | "Alpha Component" : 1,
40 | "Green Component" : 0.29019609093666077
41 | },
42 | "Link Color" : {
43 | "Red Component" : 0.19802422821521759,
44 | "Color Space" : "sRGB",
45 | "Blue Component" : 0.9337158203125,
46 | "Alpha Component" : 1,
47 | "Green Component" : 0.55789834260940552
48 | },
49 | "Rows" : 25,
50 | "Default Bookmark" : "No",
51 | "Ansi 0 Color" : {
52 | "Red Component" : 0,
53 | "Color Space" : "sRGB",
54 | "Blue Component" : 0,
55 | "Alpha Component" : 1,
56 | "Green Component" : 0
57 | },
58 | "Cursor Guide Color" : {
59 | "Red Component" : 0.70213186740875244,
60 | "Color Space" : "sRGB",
61 | "Blue Component" : 1,
62 | "Alpha Component" : 0.25,
63 | "Green Component" : 0.9268307089805603
64 | },
65 | "Non-ASCII Anti Aliased" : true,
66 | "Use Bright Bold" : true,
67 | "Ansi 10 Color" : {
68 | "Red Component" : 0.27058824896812439,
69 | "Color Space" : "sRGB",
70 | "Blue Component" : 0.54117649793624878,
71 | "Alpha Component" : 1,
72 | "Green Component" : 0.82745099067687988
73 | },
74 | "Ambiguous Double Width" : false,
75 | "Jobs to Ignore" : [
76 | "rlogin",
77 | "ssh",
78 | "slogin",
79 | "telnet"
80 | ],
81 | "Ansi 15 Color" : {
82 | "Red Component" : 0.89803922176361084,
83 | "Color Space" : "sRGB",
84 | "Blue Component" : 0.89803922176361084,
85 | "Alpha Component" : 1,
86 | "Green Component" : 0.89803922176361084
87 | },
88 | "Foreground Color" : {
89 | "Red Component" : 0.80000001192092896,
90 | "Color Space" : "sRGB",
91 | "Blue Component" : 0.80000001192092896,
92 | "Alpha Component" : 1,
93 | "Green Component" : 0.80000001192092896
94 | },
95 | "Working Directory" : "\/Users\/halafi",
96 | "Blinking Cursor" : true,
97 | "Disable Window Resizing" : true,
98 | "Sync Title" : false,
99 | "Prompt Before Closing 2" : false,
100 | "BM Growl" : true,
101 | "Mouse Reporting" : true,
102 | "Command" : "",
103 | "Description" : "Default",
104 | "Screen" : -1,
105 | "Selection Color" : {
106 | "Red Component" : 0.3333333432674408,
107 | "Color Space" : "sRGB",
108 | "Blue Component" : 0.3333333432674408,
109 | "Alpha Component" : 1,
110 | "Green Component" : 0.3333333432674408
111 | },
112 | "Columns" : 80,
113 | "Idle Code" : 0,
114 | "Ansi 13 Color" : {
115 | "Red Component" : 0.82352942228317261,
116 | "Color Space" : "sRGB",
117 | "Blue Component" : 0.83921569585800171,
118 | "Alpha Component" : 1,
119 | "Green Component" : 0.41568627953529358
120 | },
121 | "Custom Command" : "No",
122 | "ASCII Anti Aliased" : true,
123 | "Non Ascii Font" : "Monaco 12",
124 | "Vertical Spacing" : 1,
125 | "Use Bold Font" : true,
126 | "Option Key Sends" : 2,
127 | "Selected Text Color" : {
128 | "Red Component" : 1,
129 | "Color Space" : "sRGB",
130 | "Blue Component" : 1,
131 | "Alpha Component" : 1,
132 | "Green Component" : 1
133 | },
134 | "Background Color" : {
135 | "Red Component" : 0.11764705926179886,
136 | "Color Space" : "sRGB",
137 | "Blue Component" : 0.11764705926179886,
138 | "Alpha Component" : 1,
139 | "Green Component" : 0.11764705926179886
140 | },
141 | "Character Encoding" : 4,
142 | "Ansi 11 Color" : {
143 | "Red Component" : 0.94901961088180542,
144 | "Color Space" : "sRGB",
145 | "Blue Component" : 0.29019609093666077,
146 | "Alpha Component" : 1,
147 | "Green Component" : 0.97254902124404907
148 | },
149 | "Use Italic Font" : true,
150 | "Unlimited Scrollback" : false,
151 | "Keyboard Map" : {
152 | "0xf700-0x260000" : {
153 | "Action" : 10,
154 | "Text" : "[1;6A"
155 | },
156 | "0x37-0x40000" : {
157 | "Action" : 11,
158 | "Text" : "0x1f"
159 | },
160 | "0x32-0x40000" : {
161 | "Action" : 11,
162 | "Text" : "0x00"
163 | },
164 | "0xf709-0x20000" : {
165 | "Action" : 10,
166 | "Text" : "[17;2~"
167 | },
168 | "0xf70c-0x20000" : {
169 | "Action" : 10,
170 | "Text" : "[20;2~"
171 | },
172 | "0xf729-0x20000" : {
173 | "Action" : 10,
174 | "Text" : "[1;2H"
175 | },
176 | "0xf72b-0x40000" : {
177 | "Action" : 10,
178 | "Text" : "[1;5F"
179 | },
180 | "0xf705-0x20000" : {
181 | "Action" : 10,
182 | "Text" : "[1;2Q"
183 | },
184 | "0xf703-0x260000" : {
185 | "Action" : 10,
186 | "Text" : "[1;6C"
187 | },
188 | "0xf700-0x220000" : {
189 | "Action" : 10,
190 | "Text" : "[1;2A"
191 | },
192 | "0xf701-0x280000" : {
193 | "Action" : 11,
194 | "Text" : "0x1b 0x1b 0x5b 0x42"
195 | },
196 | "0x38-0x40000" : {
197 | "Action" : 11,
198 | "Text" : "0x7f"
199 | },
200 | "0x33-0x40000" : {
201 | "Action" : 11,
202 | "Text" : "0x1b"
203 | },
204 | "0xf703-0x220000" : {
205 | "Action" : 10,
206 | "Text" : "[1;2C"
207 | },
208 | "0xf701-0x240000" : {
209 | "Action" : 10,
210 | "Text" : "[1;5B"
211 | },
212 | "0xf703-0x280000-0x0" : {
213 | "Version" : 0,
214 | "Action" : 10,
215 | "Text" : "f",
216 | "Label" : ""
217 | },
218 | "0xf70d-0x20000" : {
219 | "Action" : 10,
220 | "Text" : "[21;2~"
221 | },
222 | "0xf702-0x260000" : {
223 | "Action" : 10,
224 | "Text" : "[1;6D"
225 | },
226 | "0xf729-0x40000" : {
227 | "Action" : 10,
228 | "Text" : "[1;5H"
229 | },
230 | "0xf706-0x20000" : {
231 | "Action" : 10,
232 | "Text" : "[1;2R"
233 | },
234 | "0x34-0x40000" : {
235 | "Action" : 11,
236 | "Text" : "0x1c"
237 | },
238 | "0xf700-0x280000" : {
239 | "Action" : 11,
240 | "Text" : "0x1b 0x1b 0x5b 0x41"
241 | },
242 | "0x2d-0x40000" : {
243 | "Action" : 11,
244 | "Text" : "0x1f"
245 | },
246 | "0xf70e-0x20000" : {
247 | "Action" : 10,
248 | "Text" : "[23;2~"
249 | },
250 | "0xf702-0x220000" : {
251 | "Action" : 10,
252 | "Text" : "[1;2D"
253 | },
254 | "0xf700-0x240000" : {
255 | "Action" : 10,
256 | "Text" : "[1;5A"
257 | },
258 | "0xf707-0x20000" : {
259 | "Action" : 10,
260 | "Text" : "[1;2S"
261 | },
262 | "0xf70a-0x20000" : {
263 | "Action" : 10,
264 | "Text" : "[18;2~"
265 | },
266 | "0x35-0x40000" : {
267 | "Action" : 11,
268 | "Text" : "0x1d"
269 | },
270 | "0xf70f-0x20000" : {
271 | "Action" : 10,
272 | "Text" : "[24;2~"
273 | },
274 | "0xf703-0x240000" : {
275 | "Action" : 10,
276 | "Text" : "[1;5C"
277 | },
278 | "0xf701-0x260000" : {
279 | "Action" : 10,
280 | "Text" : "[1;6B"
281 | },
282 | "0xf72b-0x20000" : {
283 | "Action" : 10,
284 | "Text" : "[1;2F"
285 | },
286 | "0x36-0x40000" : {
287 | "Action" : 11,
288 | "Text" : "0x1e"
289 | },
290 | "0xf708-0x20000" : {
291 | "Action" : 10,
292 | "Text" : "[15;2~"
293 | },
294 | "0xf701-0x220000" : {
295 | "Action" : 10,
296 | "Text" : "[1;2B"
297 | },
298 | "0xf70b-0x20000" : {
299 | "Action" : 10,
300 | "Text" : "[19;2~"
301 | },
302 | "0xf702-0x280000-0x0" : {
303 | "Version" : 0,
304 | "Action" : 10,
305 | "Text" : "b",
306 | "Label" : ""
307 | },
308 | "0xf702-0x240000" : {
309 | "Action" : 10,
310 | "Text" : "[1;5D"
311 | },
312 | "0xf704-0x20000" : {
313 | "Action" : 10,
314 | "Text" : "[1;2P"
315 | }
316 | },
317 | "Window Type" : 0,
318 | "Background Image Location" : "",
319 | "Blur" : false,
320 | "Badge Color" : {
321 | "Red Component" : 1,
322 | "Color Space" : "sRGB",
323 | "Blue Component" : 1,
324 | "Alpha Component" : 0.5,
325 | "Green Component" : 1
326 | },
327 | "Scrollback Lines" : 1000,
328 | "Send Code When Idle" : false,
329 | "Close Sessions On End" : true,
330 | "Terminal Type" : "xterm-256color",
331 | "Visual Bell" : true,
332 | "Flashing Bell" : false,
333 | "Silence Bell" : false,
334 | "Ansi 14 Color" : {
335 | "Red Component" : 0.28627452254295349,
336 | "Color Space" : "sRGB",
337 | "Blue Component" : 0.85490196943283081,
338 | "Alpha Component" : 1,
339 | "Green Component" : 0.71764707565307617
340 | },
341 | "ASCII Ligatures" : true,
342 | "Name" : "Default",
343 | "Cursor Text Color" : {
344 | "Red Component" : 0,
345 | "Color Space" : "sRGB",
346 | "Blue Component" : 0,
347 | "Alpha Component" : 1,
348 | "Green Component" : 0
349 | },
350 | "Shortcut" : "",
351 | "Cursor Color" : {
352 | "Red Component" : 0.80000001192092896,
353 | "Color Space" : "sRGB",
354 | "Blue Component" : 0.80000001192092896,
355 | "Alpha Component" : 1,
356 | "Green Component" : 0.80000001192092896
357 | },
358 | "Transparency" : 0,
359 | "Guid" : "6C40211C-B01A-4315-BC10-A6157E9C563A",
360 | "Ansi 2 Color" : {
361 | "Red Component" : 0.21568627655506134,
362 | "Color Space" : "sRGB",
363 | "Blue Component" : 0.47058823704719543,
364 | "Alpha Component" : 1,
365 | "Green Component" : 0.7450980544090271
366 | },
367 | "Ansi 3 Color" : {
368 | "Red Component" : 0.88627451658248901,
369 | "Color Space" : "sRGB",
370 | "Blue Component" : 0.13333334028720856,
371 | "Alpha Component" : 1,
372 | "Green Component" : 0.90980392694473267
373 | },
374 | "Ansi 4 Color" : {
375 | "Red Component" : 0.22352941334247589,
376 | "Color Space" : "sRGB",
377 | "Blue Component" : 0.78039216995239258,
378 | "Alpha Component" : 1,
379 | "Green Component" : 0.43137255311012268
380 | },
381 | "Right Option Key Sends" : 2,
382 | "Ansi 6 Color" : {
383 | "Red Component" : 0.23137255012989044,
384 | "Color Space" : "sRGB",
385 | "Blue Component" : 0.80000001192092896,
386 | "Alpha Component" : 1,
387 | "Green Component" : 0.65490198135375977
388 | },
389 | "Ansi 1 Color" : {
390 | "Red Component" : 0.91372549533843994,
391 | "Color Space" : "sRGB",
392 | "Blue Component" : 0.31764706969261169,
393 | "Alpha Component" : 1,
394 | "Green Component" : 0.29019609093666077
395 | },
396 | "Normal Font" : "FiraCodeNerdFontComplete-Retina 14",
397 | "Custom Directory" : "No",
398 | "Horizontal Spacing" : 1,
399 | "Ansi 5 Color" : {
400 | "Red Component" : 0.72156864404678345,
401 | "Color Space" : "sRGB",
402 | "Blue Component" : 0.73725491762161255,
403 | "Alpha Component" : 1,
404 | "Green Component" : 0.20784313976764679
405 | }
406 | }
--------------------------------------------------------------------------------
/vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "workbench.startupEditor": "none",
3 | "security.workspace.trust.untrustedFiles": "open",
4 | "svelte.enable-ts-plugin": true,
5 | "projectManager.git.baseFolders": ["~/Projects"],
6 | "git.autofetch": true,
7 | "git.confirmSync": false,
8 | "[javascript]": {
9 | "editor.defaultFormatter": "vscode.typescript-language-features"
10 | },
11 | "[typescriptreact]": {
12 | "editor.defaultFormatter": "esbenp.prettier-vscode"
13 | },
14 | "settingsSync.ignoredSettings": ["-window.zoomLevel"],
15 | "files.hotExit": "onExitAndWindowClose",
16 | "[typescript]": {
17 | "editor.defaultFormatter": "esbenp.prettier-vscode"
18 | },
19 | "terminal.integrated.defaultProfile.osx": "fish",
20 | "terminal.integrated.profiles.osx": {
21 | "fish": {
22 | "path": "/opt/homebrew/bin/fish",
23 | "args": ["-l"]
24 | },
25 | "tmux-shell": {
26 | "path": "tmux",
27 | "args": ["new-session", "-A", "-s", "vscode:${workspaceFolder}"]
28 | }
29 | },
30 | "window.autoDetectColorScheme": true,
31 | "window.restoreWindows": "preserve",
32 | "[svelte]": {
33 | "editor.defaultFormatter": "svelte.svelte-vscode"
34 | },
35 | "explorer.confirmDragAndDrop": false,
36 | "git.rememberPostCommitCommand": true,
37 | "github.copilot.enable": {
38 | "*": true,
39 | "plaintext": false,
40 | "markdown": true,
41 | "scminput": false
42 | },
43 | "vim.replaceWithRegister": true,
44 | "vim.camelCaseMotion.enable": true,
45 | "vim.highlightedyank.enable": true,
46 | "vim.hlsearch": true,
47 | "vim.easymotion": true,
48 | "vim.leader": " ",
49 | "vim.useSystemClipboard": true,
50 | "vim.visualstar": true,
51 | "vim.operatorPendingModeKeyBindingsNonRecursive": [
52 | // rebind camelCase motion
53 | {
54 | "before": ["i", "v"],
55 | "after": ["i", "", "w"]
56 | }
57 | ],
58 | "vim.normalModeKeyBindingsNonRecursive": [
59 | {
60 | "before": ["u"],
61 | "commands": ["undo"]
62 | },
63 | {
64 | "before": [""],
65 | "commands": ["redo"]
66 | },
67 | {
68 | "before": [":"],
69 | "commands": ["workbench.action.showCommands"]
70 | },
71 | {
72 | "before": ["", "g", "c"],
73 | "commands": ["git.checkout"]
74 | },
75 | {
76 | "before": ["", "g", "m"],
77 | "commands": ["git.merge"]
78 | },
79 | {
80 | "before": ["", "g", "l"],
81 | "commands": ["git.pull"]
82 | },
83 | {
84 | "before": ["", "g", "P"],
85 | "commands": ["git.push"]
86 | },
87 | {
88 | "before": ["", "g", "d"],
89 | "commands": ["references-view.findReferences"]
90 | },
91 | {
92 | "before": ["", "g", "a", "a"],
93 | "commands": ["git.stageAll"]
94 | },
95 | {
96 | "before": [
97 | "",
98 | "r" // refactor - rename
99 | ],
100 | "commands": ["editor.action.rename"]
101 | },
102 | {
103 | "before": ["", "t", "r"],
104 | "commands": ["code-runner.stop", "code-runner.run"]
105 | },
106 | {
107 | "before": ["w"],
108 | "after": ["", "w"]
109 | },
110 | {
111 | "before": ["b"],
112 | "after": ["", "b"]
113 | },
114 | {
115 | "before": ["e"],
116 | "after": ["", "e"]
117 | },
118 | {
119 | "before": ["g", "i"],
120 | "commands": ["editor.action.goToImplementation"]
121 | },
122 | {
123 | "before": ["", "f"],
124 | "commands": ["editor.action.formatDocument", "eslint.executeAutofix"]
125 | },
126 | {
127 | "before": [
128 | // "",
129 | "",
130 | "v"
131 | ],
132 | "commands": ["workbench.action.splitEditor"]
133 | },
134 | {
135 | "before": [
136 | // "",
137 | "",
138 | "h"
139 | ],
140 | "commands": ["workbench.action.splitEditorDown"]
141 | },
142 | // {
143 | // "before": [
144 | // "",
145 | // "w",
146 | // "q"
147 | // ],
148 | // "commands": [
149 | // "workbench.action.closeActiveEditor"
150 | // ]
151 | // },
152 | {
153 | "before": ["", ""],
154 | "commands": ["workbench.action.files.revealActiveFileInWindows"]
155 | },
156 | {
157 | "before": [""],
158 | "commands": ["workbench.files.action.showActiveFileInExplorer"]
159 | },
160 | {
161 | "before": ["", "n"],
162 | "commands": ["workbench.action.toggleSidebarVisibility"]
163 | },
164 | {
165 | "before": ["", "m"],
166 | "commands": ["editor.action.toggleMinimap"]
167 | },
168 | // vim-cutlass implementation
169 | {
170 | "before": ["D"],
171 | "after": ["\"", "_", "D"]
172 | },
173 | {
174 | "before": ["d"],
175 | "after": ["\"", "_", "d"]
176 | },
177 | {
178 | "before": ["d", "d"],
179 | "after": ["\"", "_", "d", "d"]
180 | },
181 | {
182 | "before": ["c"],
183 | "after": ["\"", "_", "c"]
184 | },
185 | {
186 | "before": ["C"],
187 | "after": ["\"", "_", "C"]
188 | },
189 | {
190 | "before": ["c", "c"],
191 | "after": ["\"", "_", "c", "c"]
192 | },
193 | {
194 | "before": ["x"],
195 | "after": ["\"", "_", "x"]
196 | },
197 | {
198 | "before": ["X"],
199 | "after": ["\"", "_", "X"]
200 | },
201 | // "move"/"cut" remap
202 | {
203 | "before": ["m"],
204 | "after": ["d"]
205 | },
206 | {
207 | "before": ["m", "m"],
208 | "after": ["d", "d"]
209 | },
210 | {
211 | "before": ["M"],
212 | "after": ["D"]
213 | }
214 | ],
215 | "vim.normalModeKeyBindings": [
216 | {
217 | "before": ["", "5"],
218 | "commands": ["editor.emmet.action.matchTag"]
219 | },
220 | // easymotion -- seems better than sneak
221 | {
222 | "before": ["s"],
223 | "after": ["leader", "leader", "s"]
224 | },
225 | {
226 | "before": ["S"],
227 | "after": ["leader", "leader", "leader", "b", "d", "j", "k"]
228 | },
229 | // replace with register
230 | {
231 | "before": ["l"],
232 | "after": ["g", "r"]
233 | },
234 | // {
235 | // "before": [":"],
236 | // "commands": [
237 | // "workbench.action.showCommands",
238 | // ],
239 | // "silent": true
240 | // },
241 | // TODO: fix
242 | // {
243 | // "before": ["M", "K"],
244 | // "after": ["editor.action.moveLinesDownAction"]
245 | // "after": ["editor.action.moveLinesUpAction"]
246 | // },
247 | {
248 | "before": ["]", "f"],
249 | "commands": ["search.action.focusNextSearchResult"]
250 | },
251 | {
252 | "before": ["[", "f"],
253 | "commands": ["search.action.focusPreviousSearchResult"]
254 | },
255 | {
256 | "before": ["]", "d"],
257 | "commands": ["editor.action.marker.next"]
258 | },
259 | {
260 | "before": ["[", "d"],
261 | "commands": ["editor.action.marker.prev"]
262 | },
263 | {
264 | "before": ["leader", "b", "d"],
265 | "commands": ["workbench.action.closeActiveEditor"]
266 | },
267 | {
268 | "before": ["leader", "b", "D"],
269 | "commands": ["workbench.action.closeOtherEditors"]
270 | },
271 | {
272 | "before": ["]", "b"],
273 | "commands": ["workbench.action.nextEditor"]
274 | },
275 | {
276 | "before": ["]", "B"],
277 | "commands": ["workbench.action.lastEditorInGroup"]
278 | },
279 | {
280 | "before": ["[", "B"],
281 | "commands": ["workbench.action.firstEditorInGroup"]
282 | },
283 | {
284 | "before": ["[", "b"],
285 | "commands": ["workbench.action.previousEditor"]
286 | },
287 | {
288 | "before": ["]", "c"],
289 | "commands": [
290 | "workbench.action.editor.nextChange"
291 | // "editor.action.dirtydiff.next",
292 | ]
293 | },
294 | {
295 | "before": ["[", "c"],
296 | "commands": [
297 | "workbench.action.editor.previousChange"
298 | // "editor.action.dirtydiff.previous",
299 | ]
300 | },
301 | {
302 | "before": ["]", "n"],
303 | "commands": [
304 | "merge-conflict.next"
305 | // "editor.action.dirtydiff.next",
306 | ]
307 | },
308 | // conflict markers https://github.com/rhysd/conflict-marker.vim
309 | {
310 | "before": ["[", "n"],
311 | "commands": ["merge-conflict.previous"]
312 | },
313 | {
314 | "before": ["[", "n"],
315 | "commands": ["merge-conflict.previous"]
316 | },
317 | {
318 | "before": ["m", "c", "b"],
319 | "commands": ["merge-conflict.accept.both"]
320 | },
321 | {
322 | "before": ["m", "c", "t"],
323 | "commands": ["merge-conflict.accept.incoming"]
324 | },
325 | {
326 | "before": ["m", "c", "o"],
327 | "commands": ["merge-conflict.accept.current"]
328 | },
329 | // testing
330 | {
331 | "before": ["leader", "t", "h"],
332 | "commands": ["extension.runJest"]
333 | },
334 | {
335 | "before": ["leader", "t", "f"],
336 | "commands": ["extension.runJestFile"]
337 | },
338 | {
339 | "before": ["leader", "t", "w"],
340 | "commands": ["extension.runJestFileWithWatchMode"]
341 | },
342 | {
343 | "before": ["leader", "h", "p"],
344 | "commands": ["editor.action.dirtydiff.next"]
345 | },
346 | {
347 | "before": ["leader", "h", "h"],
348 | "commands": ["closeQuickDiff"]
349 | },
350 | {
351 | "before": ["leader", "h", "s"],
352 | "commands": ["git.stageSelectedRanges"]
353 | },
354 | {
355 | "before": ["leader", "h", "r"],
356 | "commands": [
357 | "git.revertSelectedRanges" // fix
358 | // "git.revertChange",
359 | ]
360 | },
361 | // zz after n / N
362 | {
363 | "before": ["n"],
364 | "after": ["n", "z", "z"]
365 | },
366 | {
367 | "before": ["N"],
368 | "after": ["N", "z", "z"]
369 | },
370 | // bookmarks
371 | {
372 | "before": ["g", "m"],
373 | "commands": ["bookmarks.toggle"]
374 | },
375 | {
376 | "before": ["g", "M"],
377 | "commands": ["bookmarksExplorer.focus"]
378 | },
379 | {
380 | "before": ["`", "m"],
381 | "commands": ["bookmarks.list"]
382 | },
383 | {
384 | "before": ["'", "m"],
385 | "commands": ["bookmarks.list"]
386 | },
387 | // other
388 | {
389 | "before": ["enter"],
390 | "commands": [
391 | // "workbench.action.files.save",
392 | "workbench.action.files.saveWithoutFormatting"
393 | ]
394 | },
395 | {
396 | "before": ["leader", "f", "s"],
397 | "commands": ["workbench.view.search.focus"]
398 | },
399 | // how do I work with git these days?
400 | // mainly in files with hunks ]c [c hp hr etc
401 | // sourcetree to search in file history text changes
402 | {
403 | "before": ["leader", "f", "g"],
404 | "commands": ["workbench.view.scm"]
405 | },
406 | // git-graph.view -- git log with easy to find diffs in recent changes
407 | {
408 | "before": ["leader", "f", "l"],
409 | "commands": ["git-graph.view"]
410 | },
411 | // git.viewFileHistory -- don't like this one much
412 | // best file history I got but can't do search by text
413 | {
414 | "before": ["leader", "f", "h"],
415 | "commands": ["gitlens.showFileHistoryView"]
416 | },
417 | {
418 | "before": [""],
419 | "commands": ["workbench.action.focusActiveEditorGroup"]
420 | }
421 | ],
422 | "vim.visualModeKeyBindingsNonRecursive": [
423 | // kinda the same as P - replace with register
424 | {
425 | "before": ["="],
426 | "after": ["g", "r"]
427 | },
428 | {
429 | "before": ["p"],
430 | "after": ["P"]
431 | },
432 | // cutlass
433 | {
434 | "before": ["d"],
435 | "after": ["\"", "_", "d"]
436 | },
437 | {
438 | "before": ["c"],
439 | "after": ["\"", "_", "c"]
440 | },
441 | {
442 | "before": ["x"],
443 | "after": ["\"", "_", "x"]
444 | },
445 | {
446 | "before": ["m"],
447 | "after": ["d"]
448 | }
449 | ],
450 | "vim.visualModeKeyBindings": [
451 | {
452 | "before": [">"],
453 | "commands": ["editor.action.indentLines"]
454 | },
455 | {
456 | "before": ["<"],
457 | "commands": ["editor.action.outdentLines"]
458 | }
459 | ],
460 | "terminal.integrated.enableMultiLinePasteWarning": false,
461 | "editor.smoothScrolling": true,
462 | "zenMode.hideLineNumbers": false,
463 | "workbench.activityBar.iconClickBehavior": "focus",
464 | "editor.bracketPairColorization.enabled": true,
465 | "editor.cursorSurroundingLines": 4,
466 | "window.nativeTabs": true,
467 | "[html]": {
468 | "editor.defaultFormatter": "vscode.html-language-features"
469 | },
470 | "[go]": {
471 | "editor.defaultFormatter": "golang.go"
472 | },
473 | "window.nativeFullScreen": false,
474 | "editor.accessibilitySupport": "off",
475 | "eslint.format.enable": true,
476 | "eslint.probe": [
477 | "javascript",
478 | "javascriptreact",
479 | "typescript",
480 | "typescriptreact",
481 | "html",
482 | "vue",
483 | "markdown",
484 | "svelte"
485 | ],
486 | "window.titleBarStyle": "native",
487 | "window.customTitleBarVisibility": "never",
488 | "diffEditor.ignoreTrimWhitespace": false,
489 | "workbench.colorTheme": "Default Dark+",
490 | "vim.sneakReplacesF": true,
491 | "vim.sneak": true,
492 | "vim.easymotionKeys": "hlyuiopnm,.qwertzxcvbasdgjf",
493 | "explorer.confirmPasteNative": false,
494 | "typescript.updateImportsOnFileMove.enabled": "always",
495 | "extensions.ignoreRecommendations": true,
496 | "editor.formatOnSave": true,
497 | "explorer.fileNesting.patterns": {
498 | "*.ts": "${capture}.js",
499 | "*.js": "${capture}.js.map, ${capture}.min.js, ${capture}.d.ts",
500 | "*.jsx": "${capture}.js",
501 | "*.tsx": "${capture}.ts",
502 | "tsconfig.json": "tsconfig.*.json",
503 | "package.json": "package-lock.json, yarn.lock, pnpm-lock.yaml, bun.lockb",
504 | "*.sqlite": "${capture}.${extname}-*",
505 | "*.db": "${capture}.${extname}-*",
506 | "*.sqlite3": "${capture}.${extname}-*",
507 | "*.db3": "${capture}.${extname}-*",
508 | "*.sdb": "${capture}.${extname}-*",
509 | "*.s3db": "${capture}.${extname}-*"
510 | },
511 | "playwright.reuseBrowser": false,
512 | "redhat.telemetry.enabled": false,
513 | "[yaml]": {
514 | "editor.defaultFormatter": "redhat.vscode-yaml"
515 | },
516 | "git.allowForcePush": true,
517 | "terminal.integrated.lineHeight": 1.15,
518 | "editor.fontFamily": "FiraCode Nerd Font, Menlo, Monaco, 'Courier New', monospace",
519 | "workbench.preferredDarkColorTheme": "Default Dark+",
520 | "editor.lineHeight": 1.2,
521 | "telemetry.telemetryLevel": "off",
522 | "editor.fontSize": 14,
523 | "editor.stickyScroll.maxLineCount": 3,
524 | "editor.minimap.enabled": false
525 | }
526 |
--------------------------------------------------------------------------------