From d9b6fdfc1bf1d91771ed7b57e97f399e17dc3a54 Mon Sep 17 00:00:00 2001 From: Barak Michener Date: Sat, 18 May 2024 19:08:15 -0700 Subject: [PATCH] moving all dots --- .Xmodmap | 3 - .barak-theme.el | 261 -- .bash_aliases | 115 - .bash_k8s_aliases | 10 - .bash_logout | 7 - .bash_profile | 23 - .bashrc | 164 - .cargo/config.toml | 2 - .chezmoiexternal.toml | 4 - .compton.conf | 92 - .config/alacritty/alacritty.toml | 127 - .config/awesome/btheme/README | 3 - .config/awesome/btheme/background.png | Bin 222973 -> 0 bytes .config/awesome/btheme/background_white.png | Bin 267935 -> 0 bytes .config/awesome/btheme/layouts/dwindle.png | Bin 967 -> 0 bytes .config/awesome/btheme/layouts/dwindlew.png | Bin 997 -> 0 bytes .config/awesome/btheme/layouts/fairh.png | Bin 150 -> 0 bytes .config/awesome/btheme/layouts/fairhw.png | Bin 150 -> 0 bytes .config/awesome/btheme/layouts/fairv.png | Bin 158 -> 0 bytes .config/awesome/btheme/layouts/fairvw.png | Bin 158 -> 0 bytes .config/awesome/btheme/layouts/floating.png | Bin 395 -> 0 bytes .config/awesome/btheme/layouts/floatingw.png | Bin 388 -> 0 bytes .config/awesome/btheme/layouts/fullscreen.png | Bin 153 -> 0 bytes .config/awesome/btheme/layouts/fullscreenw.png | Bin 153 -> 0 bytes .config/awesome/btheme/layouts/magnifier.png | Bin 160 -> 0 bytes .config/awesome/btheme/layouts/magnifierw.png | Bin 160 -> 0 bytes .config/awesome/btheme/layouts/max.png | Bin 254 -> 0 bytes .config/awesome/btheme/layouts/maxw.png | Bin 254 -> 0 bytes .config/awesome/btheme/layouts/spiral.png | Bin 1506 -> 0 bytes .config/awesome/btheme/layouts/spiralw.png | Bin 1527 -> 0 bytes .config/awesome/btheme/layouts/tile.png | Bin 174 -> 0 bytes .config/awesome/btheme/layouts/tilebottom.png | Bin 150 -> 0 bytes .config/awesome/btheme/layouts/tilebottomw.png | Bin 165 -> 0 bytes .config/awesome/btheme/layouts/tileleft.png | Bin 172 -> 0 bytes .config/awesome/btheme/layouts/tileleftw.png | Bin 170 -> 0 bytes .config/awesome/btheme/layouts/tiletop.png | Bin 152 -> 0 bytes .config/awesome/btheme/layouts/tiletopw.png | Bin 164 -> 0 bytes .config/awesome/btheme/layouts/tilew.png | Bin 168 -> 0 bytes .config/awesome/btheme/submenu.png | Bin 370 -> 0 bytes .config/awesome/btheme/taglist/squarefw.png | Bin 86 -> 0 bytes .config/awesome/btheme/taglist/squarew.png | Bin 92 -> 0 bytes .config/awesome/btheme/tasklist/floating.png | Bin 345 -> 0 bytes .config/awesome/btheme/tasklist/floatingw.png | Bin 334 -> 0 bytes .config/awesome/btheme/theme.lua | 99 - .config/awesome/btheme/titlebar/close_focus.png | Bin 619 -> 0 bytes .config/awesome/btheme/titlebar/close_normal.png | Bin 658 -> 0 bytes .../btheme/titlebar/floating_focus_active.png | Bin 521 -> 0 bytes .../btheme/titlebar/floating_focus_inactive.png | Bin 550 -> 0 bytes .../btheme/titlebar/floating_normal_active.png | Bin 667 -> 0 bytes .../btheme/titlebar/floating_normal_inactive.png | Bin 541 -> 0 bytes .../btheme/titlebar/maximized_focus_active.png | Bin 953 -> 0 bytes .../btheme/titlebar/maximized_focus_inactive.png | Bin 720 -> 0 bytes .../btheme/titlebar/maximized_normal_active.png | Bin 1365 -> 0 bytes .../btheme/titlebar/maximized_normal_inactive.png | Bin 722 -> 0 bytes .../awesome/btheme/titlebar/ontop_focus_active.png | Bin 715 -> 0 bytes .../btheme/titlebar/ontop_focus_inactive.png | Bin 657 -> 0 bytes .../btheme/titlebar/ontop_normal_active.png | Bin 1091 -> 0 bytes .../btheme/titlebar/ontop_normal_inactive.png | Bin 655 -> 0 bytes .../btheme/titlebar/sticky_focus_active.png | Bin 833 -> 0 bytes .../btheme/titlebar/sticky_focus_inactive.png | Bin 590 -> 0 bytes .../btheme/titlebar/sticky_normal_active.png | Bin 1262 -> 0 bytes .../btheme/titlebar/sticky_normal_inactive.png | Bin 603 -> 0 bytes .config/awesome/rc.lua | 497 --- .config/coc/extensions/package.json | 11 - .config/fish/.gitignore | 1 - .config/fish/completions/cargo.fish | 802 ----- .config/fish/completions/git.fish | 2162 ------------ .config/fish/completions/go.fish | 174 - .config/fish/completions/kubectl.fish | 1762 ---------- .config/fish/completions/nc.fish | 12 - .config/fish/completions/nc.openbsd.fish | 1 - .config/fish/completions/nc.traditional.fish | 1 - .config/fish/completions/ncat.fish | 74 - .config/fish/completions/netcat.fish | 12 - .config/fish/conf.d/key-bindings.fish | 172 - .config/fish/config.fish | 28 - .config/fish/fish_aliases.fish | 55 - .config/fish/fish_variables | 31 - .config/fish/functions/fish_prompt.fish | 44 - .config/fish/functions/fish_right_prompt.fish | 1 - .config/fish/functions/fish_user_key_bindings.fish | 7 - .config/hexchat/addons/mymsg.py | 37 - .config/hexchat/addons/notify.py | 41 - .config/iosevka-build/.gitignore | 1 - .config/iosevka-build/private-build-plans.toml | 121 - .config/k9s/.k9s/config.yml | 46 - .config/k9s/config.yml | 51 - .config/k9s/hotkey.yml | 13 - .../assets/complex_modifications/1701202333.json | 2853 ---------------- .../automatic_backups/karabiner_20231128.json | 3006 ----------------- .../automatic_backups/karabiner_20231129.json | 3126 ----------------- .../automatic_backups/karabiner_20231130.json | 3126 ----------------- .../automatic_backups/karabiner_20240108.json | 3214 ------------------ .../automatic_backups/karabiner_20240109.json | 3461 ------------------- .config/karabiner/karabiner.json | 3557 -------------------- .config/ncspot/config.toml | 16 - .config/nvim | 1 - .config/rofi/config.rasi | 3 - .../user/default.target.wants/ssh-agent.service | 1 - .config/systemd/user/ssh-agent.service | 10 - .config/terminator/config | 64 - .config/tig/config | 76 - .config/xfce4/desktop/icons.screen0-2544x1399.rc | 15 - .config/xfce4/panel/genmon-13.rc | 6 - .config/xfce4/panel/whiskermenu-1.rc | 68 - .config/xfce4/terminal/accels.scm | 58 - .../xfce4/xfconf/xfce-perchannel-xml/displays.xml | 101 - .../xfce4/xfconf/xfce-perchannel-xml/keyboards.xml | 7 - .../xfce4/xfconf/xfce-perchannel-xml/thunar.xml | 11 - .../xfconf/xfce-perchannel-xml/xfce4-desktop.xml | 56 - .../xfce4-keyboard-shortcuts.xml | 211 -- .../xfconf/xfce-perchannel-xml/xfce4-notifyd.xml | 19 - .../xfconf/xfce-perchannel-xml/xfce4-panel.xml | 98 - .../xfce-perchannel-xml/xfce4-power-manager.xml | 20 - .../xfconf/xfce-perchannel-xml/xfce4-session.xml | 45 - .../xfce-perchannel-xml/xfce4-settings-manager.xml | 8 - .config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml | 97 - .../xfce4/xfconf/xfce-perchannel-xml/xsettings.xml | 49 - .conkyrc | 78 - .emacs.local/barak-theme.el | 262 -- .fehbg.example | 2 - .fonts.conf | 1 - .fonts/Droid Sans Mono Dotted.ttf | Bin 117696 -> 0 bytes .gitconfig | 60 - .gitignore | 2 - .gnome.dconf | 100 - .gvimrc | 32 - .hgrc | 16 - .i3/config | 240 -- .i3/i3-barak-tool.py | 151 - .i3/i3-focus-next | 196 -- .i3status.conf | 60 - .latex/basehtml.cfg | 10 - .../share/applications/com.spotify.Client.desktop | 15 - .local/share/fonts | 1 - .local/share/rofi/themes/rounded-blue-dark.rasi | 18 - .local/share/rofi/themes/rounded-common.rasi | 94 - .local/share/rofi/themes/rounded-gray-dark.rasi | 18 - .local/share/rofi/themes/rounded-green-dark.rasi | 18 - .local/share/rofi/themes/rounded-nord-dark.rasi | 22 - .local/share/rofi/themes/rounded-orange-dark.rasi | 18 - .local/share/rofi/themes/rounded-pink-dark.rasi | 18 - .local/share/rofi/themes/rounded-purple-dark.rasi | 18 - .local/share/rofi/themes/rounded-red-dark.rasi | 18 - .local/share/rofi/themes/rounded-yellow-dark.rasi | 18 - .local/share/rofi/themes/spotlight-dark.rasi | 99 - .local/share/rofi/themes/spotlight.rasi | 99 - .mailcap | 3 - .muttrc | 133 - .nethackrc | 29 - .npmrc | 2 - .nvim | 1 - .nvimrc | 1 - .puppet/console.pp | 6 - .puppet/cpp.pp | 16 - .puppet/editor.pp | 6 - .puppet/go.pp | 22 - .puppet/install-dev.pp | 3 - .puppet/install-linux.pp | 3 - .puppet/python.pp | 15 - .puppet/x11.pp | 6 - .pylintrc | 390 --- .screenrc | 166 - .setup_new_env.sh | 13 - .spacemacs | 432 --- .taskrc | 32 - .tz_aliases.sh | 3 - .weechat/weechat.conf | 697 ---- .xinitrc.bak | 51 - .xmonad/xmonad.hs | 216 -- .xsession | 1 - .ycm_extra_conf.py | 118 - .zprofile | 35 - .zsh_profile | 1 - .zshenv | 16 - .zshrc | 176 - dot_Xmodmap | 3 + dot_barak-theme.el | 261 ++ dot_bash_aliases | 115 + dot_bash_k8s_aliases | 10 + dot_bash_logout | 7 + dot_bash_profile | 23 + dot_bashrc | 164 + dot_cargo/config.toml | 2 + dot_chezmoiexternal.toml | 4 + dot_compton.conf | 92 + dot_config/awesome/btheme/README | 3 + dot_config/awesome/btheme/background.png | Bin 0 -> 222973 bytes dot_config/awesome/btheme/background_white.png | Bin 0 -> 267935 bytes dot_config/awesome/btheme/layouts/dwindle.png | Bin 0 -> 967 bytes dot_config/awesome/btheme/layouts/dwindlew.png | Bin 0 -> 997 bytes dot_config/awesome/btheme/layouts/fairh.png | Bin 0 -> 150 bytes dot_config/awesome/btheme/layouts/fairhw.png | Bin 0 -> 150 bytes dot_config/awesome/btheme/layouts/fairv.png | Bin 0 -> 158 bytes dot_config/awesome/btheme/layouts/fairvw.png | Bin 0 -> 158 bytes dot_config/awesome/btheme/layouts/floating.png | Bin 0 -> 395 bytes dot_config/awesome/btheme/layouts/floatingw.png | Bin 0 -> 388 bytes dot_config/awesome/btheme/layouts/fullscreen.png | Bin 0 -> 153 bytes dot_config/awesome/btheme/layouts/fullscreenw.png | Bin 0 -> 153 bytes dot_config/awesome/btheme/layouts/magnifier.png | Bin 0 -> 160 bytes dot_config/awesome/btheme/layouts/magnifierw.png | Bin 0 -> 160 bytes dot_config/awesome/btheme/layouts/max.png | Bin 0 -> 254 bytes dot_config/awesome/btheme/layouts/maxw.png | Bin 0 -> 254 bytes dot_config/awesome/btheme/layouts/spiral.png | Bin 0 -> 1506 bytes dot_config/awesome/btheme/layouts/spiralw.png | Bin 0 -> 1527 bytes dot_config/awesome/btheme/layouts/tile.png | Bin 0 -> 174 bytes dot_config/awesome/btheme/layouts/tilebottom.png | Bin 0 -> 150 bytes dot_config/awesome/btheme/layouts/tilebottomw.png | Bin 0 -> 165 bytes dot_config/awesome/btheme/layouts/tileleft.png | Bin 0 -> 172 bytes dot_config/awesome/btheme/layouts/tileleftw.png | Bin 0 -> 170 bytes dot_config/awesome/btheme/layouts/tiletop.png | Bin 0 -> 152 bytes dot_config/awesome/btheme/layouts/tiletopw.png | Bin 0 -> 164 bytes dot_config/awesome/btheme/layouts/tilew.png | Bin 0 -> 168 bytes dot_config/awesome/btheme/submenu.png | Bin 0 -> 370 bytes dot_config/awesome/btheme/taglist/squarefw.png | Bin 0 -> 86 bytes dot_config/awesome/btheme/taglist/squarew.png | Bin 0 -> 92 bytes dot_config/awesome/btheme/tasklist/floating.png | Bin 0 -> 345 bytes dot_config/awesome/btheme/tasklist/floatingw.png | Bin 0 -> 334 bytes dot_config/awesome/btheme/theme.lua | 99 + dot_config/awesome/btheme/titlebar/close_focus.png | Bin 0 -> 619 bytes .../awesome/btheme/titlebar/close_normal.png | Bin 0 -> 658 bytes .../btheme/titlebar/floating_focus_active.png | Bin 0 -> 521 bytes .../btheme/titlebar/floating_focus_inactive.png | Bin 0 -> 550 bytes .../btheme/titlebar/floating_normal_active.png | Bin 0 -> 667 bytes .../btheme/titlebar/floating_normal_inactive.png | Bin 0 -> 541 bytes .../btheme/titlebar/maximized_focus_active.png | Bin 0 -> 953 bytes .../btheme/titlebar/maximized_focus_inactive.png | Bin 0 -> 720 bytes .../btheme/titlebar/maximized_normal_active.png | Bin 0 -> 1365 bytes .../btheme/titlebar/maximized_normal_inactive.png | Bin 0 -> 722 bytes .../awesome/btheme/titlebar/ontop_focus_active.png | Bin 0 -> 715 bytes .../btheme/titlebar/ontop_focus_inactive.png | Bin 0 -> 657 bytes .../btheme/titlebar/ontop_normal_active.png | Bin 0 -> 1091 bytes .../btheme/titlebar/ontop_normal_inactive.png | Bin 0 -> 655 bytes .../btheme/titlebar/sticky_focus_active.png | Bin 0 -> 833 bytes .../btheme/titlebar/sticky_focus_inactive.png | Bin 0 -> 590 bytes .../btheme/titlebar/sticky_normal_active.png | Bin 0 -> 1262 bytes .../btheme/titlebar/sticky_normal_inactive.png | Bin 0 -> 603 bytes dot_config/awesome/rc.lua | 497 +++ dot_config/coc/extensions/package.json | 11 + dot_config/fish/.gitignore | 1 + dot_config/fish/completions/cargo.fish | 802 +++++ dot_config/fish/completions/git.fish | 2162 ++++++++++++ dot_config/fish/completions/go.fish | 174 + dot_config/fish/completions/kubectl.fish | 1762 ++++++++++ dot_config/fish/completions/nc.fish | 12 + dot_config/fish/completions/nc.openbsd.fish | 1 + dot_config/fish/completions/nc.traditional.fish | 1 + dot_config/fish/completions/ncat.fish | 74 + dot_config/fish/completions/netcat.fish | 12 + dot_config/fish/conf.d/key-bindings.fish | 172 + dot_config/fish/config.fish | 28 + dot_config/fish/fish_aliases.fish | 55 + dot_config/fish/fish_variables | 31 + dot_config/fish/functions/fish_prompt.fish | 44 + dot_config/fish/functions/fish_right_prompt.fish | 1 + .../fish/functions/fish_user_key_bindings.fish | 7 + dot_config/hexchat/addons/mymsg.py | 37 + dot_config/hexchat/addons/notify.py | 41 + dot_config/iosevka-build/.gitignore | 1 + dot_config/iosevka-build/private-build-plans.toml | 121 + dot_config/k9s/.k9s/config.yml | 46 + dot_config/k9s/config.yml | 51 + dot_config/k9s/hotkey.yml | 13 + .../assets/complex_modifications/1701202333.json | 2853 ++++++++++++++++ .../automatic_backups/karabiner_20231128.json | 3006 +++++++++++++++++ .../automatic_backups/karabiner_20231129.json | 3126 +++++++++++++++++ .../automatic_backups/karabiner_20231130.json | 3126 +++++++++++++++++ .../automatic_backups/karabiner_20240108.json | 3214 ++++++++++++++++++ .../automatic_backups/karabiner_20240109.json | 3461 +++++++++++++++++++ dot_config/karabiner/karabiner.json | 3557 ++++++++++++++++++++ dot_config/ncspot/config.toml | 16 + dot_config/rofi/config.rasi | 3 + .../user/default.target.wants/ssh-agent.service | 1 + dot_config/systemd/user/ssh-agent.service | 10 + dot_config/terminator/config | 64 + dot_config/tig/config | 76 + .../xfce4/desktop/icons.screen0-2544x1399.rc | 15 + dot_config/xfce4/panel/genmon-13.rc | 6 + dot_config/xfce4/panel/whiskermenu-1.rc | 68 + dot_config/xfce4/terminal/accels.scm | 58 + .../xfce4/xfconf/xfce-perchannel-xml/displays.xml | 101 + .../xfce4/xfconf/xfce-perchannel-xml/keyboards.xml | 7 + .../xfce4/xfconf/xfce-perchannel-xml/thunar.xml | 11 + .../xfconf/xfce-perchannel-xml/xfce4-desktop.xml | 56 + .../xfce4-keyboard-shortcuts.xml | 211 ++ .../xfconf/xfce-perchannel-xml/xfce4-notifyd.xml | 19 + .../xfconf/xfce-perchannel-xml/xfce4-panel.xml | 98 + .../xfce-perchannel-xml/xfce4-power-manager.xml | 20 + .../xfconf/xfce-perchannel-xml/xfce4-session.xml | 45 + .../xfce-perchannel-xml/xfce4-settings-manager.xml | 8 + .../xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml | 97 + .../xfce4/xfconf/xfce-perchannel-xml/xsettings.xml | 49 + dot_conkyrc | 78 + dot_emacs.local/barak-theme.el | 262 ++ dot_fehbg.example | 2 + dot_fonts.conf | 1 + dot_fonts/Droid Sans Mono Dotted.ttf | Bin 0 -> 117696 bytes dot_gitconfig | 60 + dot_gitignore | 2 + dot_gnome.dconf | 100 + dot_gvimrc | 32 + dot_hgrc | 16 + dot_i3/config | 240 ++ dot_i3/i3-barak-tool.py | 151 + dot_i3/i3-focus-next | 196 ++ dot_i3status.conf | 60 + dot_latex/basehtml.cfg | 10 + .../share/applications/com.spotify.Client.desktop | 15 + dot_local/share/fonts | 1 + dot_local/share/rofi/themes/rounded-blue-dark.rasi | 18 + dot_local/share/rofi/themes/rounded-common.rasi | 94 + dot_local/share/rofi/themes/rounded-gray-dark.rasi | 18 + .../share/rofi/themes/rounded-green-dark.rasi | 18 + dot_local/share/rofi/themes/rounded-nord-dark.rasi | 22 + .../share/rofi/themes/rounded-orange-dark.rasi | 18 + dot_local/share/rofi/themes/rounded-pink-dark.rasi | 18 + .../share/rofi/themes/rounded-purple-dark.rasi | 18 + dot_local/share/rofi/themes/rounded-red-dark.rasi | 18 + .../share/rofi/themes/rounded-yellow-dark.rasi | 18 + dot_local/share/rofi/themes/spotlight-dark.rasi | 99 + dot_local/share/rofi/themes/spotlight.rasi | 99 + dot_mailcap | 3 + dot_muttrc | 133 + dot_nethackrc | 29 + dot_npmrc | 2 + dot_nvim | 1 + dot_nvimrc | 1 + dot_puppet/console.pp | 6 + dot_puppet/cpp.pp | 16 + dot_puppet/editor.pp | 6 + dot_puppet/go.pp | 22 + dot_puppet/install-dev.pp | 3 + dot_puppet/install-linux.pp | 3 + dot_puppet/python.pp | 15 + dot_puppet/x11.pp | 6 + dot_pylintrc | 390 +++ dot_screenrc | 166 + dot_setup_new_env.sh | 13 + dot_spacemacs | 432 +++ dot_taskrc | 32 + dot_tz_aliases.sh | 3 + dot_weechat/weechat.conf | 697 ++++ dot_xinitrc.bak | 51 + dot_xmonad/xmonad.hs | 216 ++ dot_ycm_extra_conf.py | 118 + dot_zprofile | 35 + dot_zsh_profile | 1 + dot_zshenv | 16 + dot_zshrc | 176 + 349 files changed, 34598 insertions(+), 34727 deletions(-) delete mode 100644 .Xmodmap delete mode 100644 .barak-theme.el delete mode 100644 .bash_aliases delete mode 100644 .bash_k8s_aliases delete mode 100644 .bash_logout delete mode 100644 .bash_profile delete mode 100644 .bashrc delete mode 100644 .cargo/config.toml delete mode 100644 .chezmoiexternal.toml delete mode 100644 .compton.conf delete mode 100644 .config/alacritty/alacritty.toml delete mode 100644 .config/awesome/btheme/README delete mode 100644 .config/awesome/btheme/background.png delete mode 100644 .config/awesome/btheme/background_white.png delete mode 100644 .config/awesome/btheme/layouts/dwindle.png delete mode 100644 .config/awesome/btheme/layouts/dwindlew.png delete mode 100644 .config/awesome/btheme/layouts/fairh.png delete mode 100644 .config/awesome/btheme/layouts/fairhw.png delete mode 100644 .config/awesome/btheme/layouts/fairv.png delete mode 100644 .config/awesome/btheme/layouts/fairvw.png delete mode 100644 .config/awesome/btheme/layouts/floating.png delete mode 100644 .config/awesome/btheme/layouts/floatingw.png delete mode 100644 .config/awesome/btheme/layouts/fullscreen.png delete mode 100644 .config/awesome/btheme/layouts/fullscreenw.png delete mode 100644 .config/awesome/btheme/layouts/magnifier.png delete mode 100644 .config/awesome/btheme/layouts/magnifierw.png delete mode 100644 .config/awesome/btheme/layouts/max.png delete mode 100644 .config/awesome/btheme/layouts/maxw.png delete mode 100644 .config/awesome/btheme/layouts/spiral.png delete mode 100644 .config/awesome/btheme/layouts/spiralw.png delete mode 100644 .config/awesome/btheme/layouts/tile.png delete mode 100644 .config/awesome/btheme/layouts/tilebottom.png delete mode 100644 .config/awesome/btheme/layouts/tilebottomw.png delete mode 100644 .config/awesome/btheme/layouts/tileleft.png delete mode 100644 .config/awesome/btheme/layouts/tileleftw.png delete mode 100644 .config/awesome/btheme/layouts/tiletop.png delete mode 100644 .config/awesome/btheme/layouts/tiletopw.png delete mode 100644 .config/awesome/btheme/layouts/tilew.png delete mode 100644 .config/awesome/btheme/submenu.png delete mode 100644 .config/awesome/btheme/taglist/squarefw.png delete mode 100644 .config/awesome/btheme/taglist/squarew.png delete mode 100644 .config/awesome/btheme/tasklist/floating.png delete mode 100644 .config/awesome/btheme/tasklist/floatingw.png delete mode 100644 .config/awesome/btheme/theme.lua delete mode 100644 .config/awesome/btheme/titlebar/close_focus.png delete mode 100644 .config/awesome/btheme/titlebar/close_normal.png delete mode 100644 .config/awesome/btheme/titlebar/floating_focus_active.png delete mode 100644 .config/awesome/btheme/titlebar/floating_focus_inactive.png delete mode 100644 .config/awesome/btheme/titlebar/floating_normal_active.png delete mode 100644 .config/awesome/btheme/titlebar/floating_normal_inactive.png delete mode 100644 .config/awesome/btheme/titlebar/maximized_focus_active.png delete mode 100644 .config/awesome/btheme/titlebar/maximized_focus_inactive.png delete mode 100644 .config/awesome/btheme/titlebar/maximized_normal_active.png delete mode 100644 .config/awesome/btheme/titlebar/maximized_normal_inactive.png delete mode 100644 .config/awesome/btheme/titlebar/ontop_focus_active.png delete mode 100644 .config/awesome/btheme/titlebar/ontop_focus_inactive.png delete mode 100644 .config/awesome/btheme/titlebar/ontop_normal_active.png delete mode 100644 .config/awesome/btheme/titlebar/ontop_normal_inactive.png delete mode 100644 .config/awesome/btheme/titlebar/sticky_focus_active.png delete mode 100644 .config/awesome/btheme/titlebar/sticky_focus_inactive.png delete mode 100644 .config/awesome/btheme/titlebar/sticky_normal_active.png delete mode 100644 .config/awesome/btheme/titlebar/sticky_normal_inactive.png delete mode 100644 .config/awesome/rc.lua delete mode 100644 .config/coc/extensions/package.json delete mode 100644 .config/fish/.gitignore delete mode 100644 .config/fish/completions/cargo.fish delete mode 100644 .config/fish/completions/git.fish delete mode 100644 .config/fish/completions/go.fish delete mode 100644 .config/fish/completions/kubectl.fish delete mode 100644 .config/fish/completions/nc.fish delete mode 100644 .config/fish/completions/nc.openbsd.fish delete mode 100644 .config/fish/completions/nc.traditional.fish delete mode 100644 .config/fish/completions/ncat.fish delete mode 100644 .config/fish/completions/netcat.fish delete mode 100644 .config/fish/conf.d/key-bindings.fish delete mode 100644 .config/fish/config.fish delete mode 100644 .config/fish/fish_aliases.fish delete mode 100644 .config/fish/fish_variables delete mode 100644 .config/fish/functions/fish_prompt.fish delete mode 100644 .config/fish/functions/fish_right_prompt.fish delete mode 100644 .config/fish/functions/fish_user_key_bindings.fish delete mode 100644 .config/hexchat/addons/mymsg.py delete mode 100644 .config/hexchat/addons/notify.py delete mode 100644 .config/iosevka-build/.gitignore delete mode 100644 .config/iosevka-build/private-build-plans.toml delete mode 100644 .config/k9s/.k9s/config.yml delete mode 100644 .config/k9s/config.yml delete mode 100644 .config/k9s/hotkey.yml delete mode 100644 .config/karabiner/assets/complex_modifications/1701202333.json delete mode 100644 .config/karabiner/automatic_backups/karabiner_20231128.json delete mode 100644 .config/karabiner/automatic_backups/karabiner_20231129.json delete mode 100644 .config/karabiner/automatic_backups/karabiner_20231130.json delete mode 100644 .config/karabiner/automatic_backups/karabiner_20240108.json delete mode 100644 .config/karabiner/automatic_backups/karabiner_20240109.json delete mode 100644 .config/karabiner/karabiner.json delete mode 100644 .config/ncspot/config.toml delete mode 120000 .config/nvim delete mode 100644 .config/rofi/config.rasi delete mode 120000 .config/systemd/user/default.target.wants/ssh-agent.service delete mode 100644 .config/systemd/user/ssh-agent.service delete mode 100644 .config/terminator/config delete mode 100644 .config/tig/config delete mode 100644 .config/xfce4/desktop/icons.screen0-2544x1399.rc delete mode 100644 .config/xfce4/panel/genmon-13.rc delete mode 100644 .config/xfce4/panel/whiskermenu-1.rc delete mode 100644 .config/xfce4/terminal/accels.scm delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/displays.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml delete mode 100644 .config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml delete mode 100644 .conkyrc delete mode 100644 .emacs.local/barak-theme.el delete mode 100755 .fehbg.example delete mode 120000 .fonts.conf delete mode 100644 .fonts/Droid Sans Mono Dotted.ttf delete mode 100644 .gitconfig delete mode 100644 .gitignore delete mode 100644 .gnome.dconf delete mode 100644 .gvimrc delete mode 100644 .hgrc delete mode 100644 .i3/config delete mode 100755 .i3/i3-barak-tool.py delete mode 100755 .i3/i3-focus-next delete mode 100644 .i3status.conf delete mode 100644 .latex/basehtml.cfg delete mode 100755 .local/share/applications/com.spotify.Client.desktop delete mode 120000 .local/share/fonts delete mode 100644 .local/share/rofi/themes/rounded-blue-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-common.rasi delete mode 100644 .local/share/rofi/themes/rounded-gray-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-green-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-nord-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-orange-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-pink-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-purple-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-red-dark.rasi delete mode 100644 .local/share/rofi/themes/rounded-yellow-dark.rasi delete mode 100644 .local/share/rofi/themes/spotlight-dark.rasi delete mode 100644 .local/share/rofi/themes/spotlight.rasi delete mode 100644 .mailcap delete mode 100644 .muttrc delete mode 100644 .nethackrc delete mode 100644 .npmrc delete mode 120000 .nvim delete mode 120000 .nvimrc delete mode 100644 .puppet/console.pp delete mode 100644 .puppet/cpp.pp delete mode 100644 .puppet/editor.pp delete mode 100644 .puppet/go.pp delete mode 100644 .puppet/install-dev.pp delete mode 100644 .puppet/install-linux.pp delete mode 100644 .puppet/python.pp delete mode 100644 .puppet/x11.pp delete mode 100644 .pylintrc delete mode 100644 .screenrc delete mode 100755 .setup_new_env.sh delete mode 100644 .spacemacs delete mode 100644 .taskrc delete mode 100644 .tz_aliases.sh delete mode 100644 .weechat/weechat.conf delete mode 100755 .xinitrc.bak delete mode 100644 .xmonad/xmonad.hs delete mode 120000 .xsession delete mode 100644 .ycm_extra_conf.py delete mode 100644 .zprofile delete mode 120000 .zsh_profile delete mode 100644 .zshenv delete mode 100644 .zshrc create mode 100644 dot_Xmodmap create mode 100644 dot_barak-theme.el create mode 100644 dot_bash_aliases create mode 100644 dot_bash_k8s_aliases create mode 100644 dot_bash_logout create mode 100644 dot_bash_profile create mode 100644 dot_bashrc create mode 100644 dot_cargo/config.toml create mode 100644 dot_chezmoiexternal.toml create mode 100644 dot_compton.conf create mode 100644 dot_config/awesome/btheme/README create mode 100644 dot_config/awesome/btheme/background.png create mode 100644 dot_config/awesome/btheme/background_white.png create mode 100644 dot_config/awesome/btheme/layouts/dwindle.png create mode 100644 dot_config/awesome/btheme/layouts/dwindlew.png create mode 100644 dot_config/awesome/btheme/layouts/fairh.png create mode 100644 dot_config/awesome/btheme/layouts/fairhw.png create mode 100644 dot_config/awesome/btheme/layouts/fairv.png create mode 100644 dot_config/awesome/btheme/layouts/fairvw.png create mode 100644 dot_config/awesome/btheme/layouts/floating.png create mode 100644 dot_config/awesome/btheme/layouts/floatingw.png create mode 100644 dot_config/awesome/btheme/layouts/fullscreen.png create mode 100644 dot_config/awesome/btheme/layouts/fullscreenw.png create mode 100644 dot_config/awesome/btheme/layouts/magnifier.png create mode 100644 dot_config/awesome/btheme/layouts/magnifierw.png create mode 100644 dot_config/awesome/btheme/layouts/max.png create mode 100644 dot_config/awesome/btheme/layouts/maxw.png create mode 100644 dot_config/awesome/btheme/layouts/spiral.png create mode 100644 dot_config/awesome/btheme/layouts/spiralw.png create mode 100644 dot_config/awesome/btheme/layouts/tile.png create mode 100644 dot_config/awesome/btheme/layouts/tilebottom.png create mode 100644 dot_config/awesome/btheme/layouts/tilebottomw.png create mode 100644 dot_config/awesome/btheme/layouts/tileleft.png create mode 100644 dot_config/awesome/btheme/layouts/tileleftw.png create mode 100644 dot_config/awesome/btheme/layouts/tiletop.png create mode 100644 dot_config/awesome/btheme/layouts/tiletopw.png create mode 100644 dot_config/awesome/btheme/layouts/tilew.png create mode 100644 dot_config/awesome/btheme/submenu.png create mode 100644 dot_config/awesome/btheme/taglist/squarefw.png create mode 100644 dot_config/awesome/btheme/taglist/squarew.png create mode 100644 dot_config/awesome/btheme/tasklist/floating.png create mode 100644 dot_config/awesome/btheme/tasklist/floatingw.png create mode 100644 dot_config/awesome/btheme/theme.lua create mode 100644 dot_config/awesome/btheme/titlebar/close_focus.png create mode 100644 dot_config/awesome/btheme/titlebar/close_normal.png create mode 100644 dot_config/awesome/btheme/titlebar/floating_focus_active.png create mode 100644 dot_config/awesome/btheme/titlebar/floating_focus_inactive.png create mode 100644 dot_config/awesome/btheme/titlebar/floating_normal_active.png create mode 100644 dot_config/awesome/btheme/titlebar/floating_normal_inactive.png create mode 100644 dot_config/awesome/btheme/titlebar/maximized_focus_active.png create mode 100644 dot_config/awesome/btheme/titlebar/maximized_focus_inactive.png create mode 100644 dot_config/awesome/btheme/titlebar/maximized_normal_active.png create mode 100644 dot_config/awesome/btheme/titlebar/maximized_normal_inactive.png create mode 100644 dot_config/awesome/btheme/titlebar/ontop_focus_active.png create mode 100644 dot_config/awesome/btheme/titlebar/ontop_focus_inactive.png create mode 100644 dot_config/awesome/btheme/titlebar/ontop_normal_active.png create mode 100644 dot_config/awesome/btheme/titlebar/ontop_normal_inactive.png create mode 100644 dot_config/awesome/btheme/titlebar/sticky_focus_active.png create mode 100644 dot_config/awesome/btheme/titlebar/sticky_focus_inactive.png create mode 100644 dot_config/awesome/btheme/titlebar/sticky_normal_active.png create mode 100644 dot_config/awesome/btheme/titlebar/sticky_normal_inactive.png create mode 100644 dot_config/awesome/rc.lua create mode 100644 dot_config/coc/extensions/package.json create mode 100644 dot_config/fish/.gitignore create mode 100644 dot_config/fish/completions/cargo.fish create mode 100644 dot_config/fish/completions/git.fish create mode 100644 dot_config/fish/completions/go.fish create mode 100644 dot_config/fish/completions/kubectl.fish create mode 100644 dot_config/fish/completions/nc.fish create mode 100644 dot_config/fish/completions/nc.openbsd.fish create mode 100644 dot_config/fish/completions/nc.traditional.fish create mode 100644 dot_config/fish/completions/ncat.fish create mode 100644 dot_config/fish/completions/netcat.fish create mode 100644 dot_config/fish/conf.d/key-bindings.fish create mode 100644 dot_config/fish/config.fish create mode 100644 dot_config/fish/fish_aliases.fish create mode 100644 dot_config/fish/fish_variables create mode 100644 dot_config/fish/functions/fish_prompt.fish create mode 100644 dot_config/fish/functions/fish_right_prompt.fish create mode 100644 dot_config/fish/functions/fish_user_key_bindings.fish create mode 100644 dot_config/hexchat/addons/mymsg.py create mode 100644 dot_config/hexchat/addons/notify.py create mode 100644 dot_config/iosevka-build/.gitignore create mode 100644 dot_config/iosevka-build/private-build-plans.toml create mode 100644 dot_config/k9s/.k9s/config.yml create mode 100644 dot_config/k9s/config.yml create mode 100644 dot_config/k9s/hotkey.yml create mode 100644 dot_config/karabiner/assets/complex_modifications/1701202333.json create mode 100644 dot_config/karabiner/automatic_backups/karabiner_20231128.json create mode 100644 dot_config/karabiner/automatic_backups/karabiner_20231129.json create mode 100644 dot_config/karabiner/automatic_backups/karabiner_20231130.json create mode 100644 dot_config/karabiner/automatic_backups/karabiner_20240108.json create mode 100644 dot_config/karabiner/automatic_backups/karabiner_20240109.json create mode 100644 dot_config/karabiner/karabiner.json create mode 100644 dot_config/ncspot/config.toml create mode 100644 dot_config/rofi/config.rasi create mode 120000 dot_config/systemd/user/default.target.wants/ssh-agent.service create mode 100644 dot_config/systemd/user/ssh-agent.service create mode 100644 dot_config/terminator/config create mode 100644 dot_config/tig/config create mode 100644 dot_config/xfce4/desktop/icons.screen0-2544x1399.rc create mode 100644 dot_config/xfce4/panel/genmon-13.rc create mode 100644 dot_config/xfce4/panel/whiskermenu-1.rc create mode 100644 dot_config/xfce4/terminal/accels.scm create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/displays.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml create mode 100644 dot_config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml create mode 100644 dot_conkyrc create mode 100644 dot_emacs.local/barak-theme.el create mode 100755 dot_fehbg.example create mode 120000 dot_fonts.conf create mode 100644 dot_fonts/Droid Sans Mono Dotted.ttf create mode 100644 dot_gitconfig create mode 100644 dot_gitignore create mode 100644 dot_gnome.dconf create mode 100644 dot_gvimrc create mode 100644 dot_hgrc create mode 100644 dot_i3/config create mode 100755 dot_i3/i3-barak-tool.py create mode 100755 dot_i3/i3-focus-next create mode 100644 dot_i3status.conf create mode 100644 dot_latex/basehtml.cfg create mode 100755 dot_local/share/applications/com.spotify.Client.desktop create mode 120000 dot_local/share/fonts create mode 100644 dot_local/share/rofi/themes/rounded-blue-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-common.rasi create mode 100644 dot_local/share/rofi/themes/rounded-gray-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-green-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-nord-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-orange-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-pink-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-purple-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-red-dark.rasi create mode 100644 dot_local/share/rofi/themes/rounded-yellow-dark.rasi create mode 100644 dot_local/share/rofi/themes/spotlight-dark.rasi create mode 100644 dot_local/share/rofi/themes/spotlight.rasi create mode 100644 dot_mailcap create mode 100644 dot_muttrc create mode 100644 dot_nethackrc create mode 100644 dot_npmrc create mode 120000 dot_nvim create mode 120000 dot_nvimrc create mode 100644 dot_puppet/console.pp create mode 100644 dot_puppet/cpp.pp create mode 100644 dot_puppet/editor.pp create mode 100644 dot_puppet/go.pp create mode 100644 dot_puppet/install-dev.pp create mode 100644 dot_puppet/install-linux.pp create mode 100644 dot_puppet/python.pp create mode 100644 dot_puppet/x11.pp create mode 100644 dot_pylintrc create mode 100644 dot_screenrc create mode 100755 dot_setup_new_env.sh create mode 100644 dot_spacemacs create mode 100644 dot_taskrc create mode 100644 dot_tz_aliases.sh create mode 100644 dot_weechat/weechat.conf create mode 100755 dot_xinitrc.bak create mode 100644 dot_xmonad/xmonad.hs create mode 100644 dot_ycm_extra_conf.py create mode 100644 dot_zprofile create mode 120000 dot_zsh_profile create mode 100644 dot_zshenv create mode 100644 dot_zshrc diff --git a/.Xmodmap b/.Xmodmap deleted file mode 100644 index 848bd5c..0000000 --- a/.Xmodmap +++ /dev/null @@ -1,3 +0,0 @@ -keycode 66 = Control_L -clear Lock -add Control = Control_L diff --git a/.barak-theme.el b/.barak-theme.el deleted file mode 100644 index 27fa85d..0000000 --- a/.barak-theme.el +++ /dev/null @@ -1,261 +0,0 @@ -;;; Code: - -(deftheme barak "Barak's Theme") - -;;; Color Palette - -(defvar zenburn-colors-alist - '(("zenburn-fg+1" . "#FFFFEF") - ("zenburn-fg" . "#DCDCCC") - ("zenburn-fg-1" . "#656555") - ("zenburn-bg-2" . "#000000") - ("zenburn-bg-1" . "#2B2B2B") - ("zenburn-bg-05" . "#383838") - ("zenburn-bg" . "#3F3F3F") - ("zenburn-bg+1" . "#4F4F4F") - ("zenburn-bg+2" . "#5F5F5F") - ("zenburn-bg+3" . "#6F6F6F") - ("zenburn-red+1" . "#DCA3A3") - ("zenburn-red" . "#CC9393") - ("zenburn-red-1" . "#BC8383") - ("zenburn-red-2" . "#AC7373") - ("zenburn-red-3" . "#9C6363") - ("zenburn-red-4" . "#8C5353") - ("zenburn-orange" . "#DFAF8F") - ("zenburn-yellow" . "#F0DFAF") - ("zenburn-yellow-1" . "#E0CF9F") - ("zenburn-yellow-2" . "#D0BF8F") - ("zenburn-green-1" . "#5F7F5F") - ("zenburn-green" . "#7F9F7F") - ("zenburn-green+1" . "#8FB28F") - ("zenburn-green+2" . "#9FC59F") - ("zenburn-green+3" . "#AFD8AF") - ("zenburn-green+4" . "#BFEBBF") - ("zenburn-cyan" . "#93E0E3") - ("zenburn-blue+1" . "#94BFF3") - ("zenburn-blue" . "#8CD0D3") - ("zenburn-blue-1" . "#7CB8BB") - ("zenburn-blue-2" . "#6CA0A3") - ("zenburn-blue-3" . "#5C888B") - ("zenburn-blue-4" . "#4C7073") - ("zenburn-blue-5" . "#366060") - ("zenburn-magenta" . "#DC8CC3"))) - -(defvar barak-colors-alist - '(("background" . "#000000") - ("cursor" . "#A7A7A7") - ("fg-default" . "#E0E0E0") - ("mouse" . "sienna1") - ("comment" . "#238E23") - ("constant" . "#E3AC3D") - ("docstring" . "DarkOrange") - ("zenburn-fg+1" . "#FFFFEF") - ("zenburn-fg" . "#DCDCCC") - ("zenburn-fg-1" . "#656555") - ("zenburn-bg-2" . "#000000") - ("zenburn-bg-1" . "#2B2B2B") - ("zenburn-bg-05" . "#383838") - ("zenburn-bg" . "#3F3F3F") - ("zenburn-bg+1" . "#4F4F4F") - ("zenburn-bg+2" . "#5F5F5F") - ("zenburn-bg+3" . "#6F6F6F") - ("zenburn-red+1" . "#DCA3A3") - ("zenburn-red" . "#CC9393") - ("zenburn-red-1" . "#BC8383") - ("zenburn-red-2" . "#AC7373") - ("zenburn-red-3" . "#9C6363") - ("zenburn-red-4" . "#8C5353") - ("zenburn-orange" . "#DFAF8F") - ("zenburn-yellow" . "#F0DFAF") - ("zenburn-yellow-1" . "#E0CF9F") - ("zenburn-yellow-2" . "#D0BF8F") - ("zenburn-green-1" . "#5F7F5F") - ("zenburn-green" . "#7F9F7F") - ("zenburn-green+1" . "#8FB28F") - ("zenburn-green+2" . "#9FC59F") - ("zenburn-green+3" . "#AFD8AF") - ("zenburn-green+4" . "#BFEBBF") - ("zenburn-cyan" . "#93E0E3") - ("zenburn-blue+1" . "#94BFF3") - ("zenburn-blue" . "#8CD0D3") - ("zenburn-blue-1" . "#7CB8BB") - ("zenburn-blue-2" . "#6CA0A3") - ("zenburn-blue-3" . "#5C888B") - ("zenburn-blue-4" . "#4C7073") - ("zenburn-blue-5" . "#366060") - ("zenburn-magenta" . "#DC8CC3")) - "List of Zenburn colors. -Each element has the form (NAME . HEX).") - - -(defmacro barak-with-color-variables (&rest body) - "`let' bind all colors defined in `zenburn-colors-alist' around BODY. -Also bind `class' to ((class color) (min-colors 89))." - (declare (indent 0)) - `(let ((class '((class color) (min-colors 89))) - ,@(mapcar (lambda (cons) - (list (intern (car cons)) (cdr cons))) - barak-colors-alist)) - ,@body)) - -(defmacro zenburn-with-color-variables (&rest body) - "`let' bind all colors defined in `zenburn-colors-alist' around BODY. -Also bind `class' to ((class color) (min-colors 89))." - (declare (indent 0)) - `(let ((class '((class color) (min-colors 89))) - ,@(mapcar (lambda (cons) - (list (intern (car cons)) (cdr cons))) - zenburn-colors-alist)) - ,@body)) - -;;; Theme Faces -(barak-with-color-variables - (custom-theme-set-faces - 'barak -;;;; Built-in -;;;;; basic coloring - '(button ((t (:underline t)))) - `(link ((t (:foreground ,zenburn-yellow :underline t :weight bold)))) - `(link-visited ((t (:foreground ,zenburn-yellow-2 :underline t :weight normal)))) - `(default ((t (:foreground ,fg-default :background ,background)))) - `(cursor ((t (:foreground ,cursor :background ,zenburn-fg+1)))) - `(blue ((t (:foreground "blue")))) - `(bold ((t (:bold t)))) - `(bold-italic ((t (:bold t)))) - `(border-glyph ((t (nil)))) - `(buffers-tab ((t (:background "#121212" :foreground "#E0E0E0")))) - `(font-lock-builtin-face ((t (:foreground "#E0E0E0")))) - `(font-lock-comment-face ((t (:foreground "#238E23")))) - `(font-lock-constant-face ((t (:foreground "#E3AC3D")))) - `(font-lock-doc-string-face ((t (:foreground "DarkOrange")))) - `(font-lock-function-name-face ((t (:foreground "#C5A6FF")))) - `(font-lock-keyword-face ((t (:bold t :foreground "#4876FF")))) - `(font-lock-preprocessor-face ((t (:foreground "#E9DFEF")))) - `(font-lock-reference-face ((t (:foreground "#E1634F")))) - `(font-lock-regexp-grouping-backslash ((t (:foreground "#E9C062")))) - `(font-lock-regexp-grouping-construct ((t (:foreground "red")))) - `(font-lock-string-face ((t (:foreground "#F05656")))) - `(font-lock-type-face ((t (:foreground "#73E1E6")))) - `(font-lock-variable-name-face ((t (:foreground "#00BFFF")))) - `(font-lock-warning-face ((t (:bold t :foreground "Pink")))) - `(gui-element ((t (:background "#A0A0A0" :foreground "black")))) - `(region ((t (:background "#364458")))) - `(mode-line ((t (:background "grey75" :foreground "black")))) - `(highlight ((t (:background "#222222")))) - `(highline-face ((t (:background "SeaGreen")))) - `(italic ((t (nil)))) - `(left-margin ((t (nil)))) - `(text-cursor ((t (:background "green" :foreground "black")))) - `(toolbar ((t (nil)))) - `(tabbar-default ((t (:background "black" :foreground "grey75")))) - `(tabbar-selected ((t (:background "grey75" :foreground "black")))) - `(tabbar-highlight ((t (:bold t)))) - `(underline ((nil (:underline nil)))) - '(match ((t (:bold t :background nil)))) - - ; company mode - `(company-tooltip ((t (:background "#303840" :foreground "#e0e0e0")))) - `(company-tooltip-annotation ((t (:bold t :background "#303840" :foreground "#cae682")))) - `(company-tooltip-selection ((t (:bold t :background "#505860" :foreground "#ffa000")))) - `(company-scrollbar-bg ((t (:background "#505860" :foreground "#505860")))) - `(company-scrollbar-fg ((t (:background "#808890" :foreground "#808890")))) - ; powerline - `(powerline-active1 ((t (:background "#303840" :foreground "#e0e0e0")))) - `(powerline-active2 ((t (:background "#505860" :foreground "#ffa000")))) - ; motion-face - `(spacemacs-motion-face ((t (:background "#5f87ff" :foreground "#ffffff")))) - `(spacemacs-normal-face ((t (:background "#5f87ff" :foreground "#ffffff")))) - `(spacemacs-replace-face ((t (:background "#870000" :foreground "#ffffff")))) - `(spacemacs-visual-face ((t (:background "#ffac00" :foreground "#ffffff")))) - )) - -;;; Theme Variables -(zenburn-with-color-variables - (custom-theme-set-variables - 'barak -;;;;; ansi-color - `(ansi-color-names-vector [,zenburn-bg ,zenburn-red ,zenburn-green ,zenburn-yellow - ,zenburn-blue ,zenburn-magenta ,zenburn-cyan ,zenburn-fg]) -;;;;; fill-column-indicator - `(fci-rule-color ,zenburn-bg-05) -;;;;; vc-annotate - `(vc-annotate-color-map - '(( 20. . ,zenburn-red-1) - ( 40. . ,zenburn-red) - ( 60. . ,zenburn-orange) - ( 80. . ,zenburn-yellow-2) - (100. . ,zenburn-yellow-1) - (120. . ,zenburn-yellow) - (140. . ,zenburn-green-1) - (160. . ,zenburn-green) - (180. . ,zenburn-green+1) - (200. . ,zenburn-green+2) - (220. . ,zenburn-green+3) - (240. . ,zenburn-green+4) - (260. . ,zenburn-cyan) - (280. . ,zenburn-blue-2) - (300. . ,zenburn-blue-1) - (320. . ,zenburn-blue) - (340. . ,zenburn-blue+1) - (360. . ,zenburn-magenta))) - `(vc-annotate-very-old-color ,zenburn-magenta) - `(vc-annotate-background ,zenburn-bg-1) - )) - -;;; Rainbow Support - -;; (declare-function rainbow-mode 'rainbow-mode) -;; (declare-function rainbow-colorize-by-assoc 'rainbow-mode) - -(defvar barak-add-font-lock-keywords nil - "Whether to add font-lock keywords for zenburn color names. -In buffers visiting library `zenburn-theme.el' the zenburn -specific keywords are always added. In all other Emacs-Lisp -buffers this variable controls whether this should be done. -This requires library `rainbow-mode'.") - -(defvar barak-colors-font-lock-keywords nil) - -;; (defadvice rainbow-turn-on (after zenburn activate) -;; "Maybe also add font-lock keywords for zenburn colors." -;; (when (and (derived-mode-p 'emacs-lisp-mode) -;; (or zenburn-add-font-lock-keywords -;; (equal (file-name-nondirectory (buffer-file-name)) -;; "zenburn-theme.el"))) -;; (unless zenburn-colors-font-lock-keywords -;; (setq zenburn-colors-font-lock-keywords -;; `((,(regexp-opt (mapcar 'car zenburn-colors-alist) 'words) -;; (0 (rainbow-colorize-by-assoc zenburn-colors-alist)))))) -;; (font-lock-add-keywords nil zenburn-colors-font-lock-keywords))) - -;; (defadvice rainbow-turn-off (after zenburn activate) -;; "Also remove font-lock keywords for zenburn colors." -;; (font-lock-remove-keywords nil zenburn-colors-font-lock-keywords)) - -;;; Footer - -;;;###autoload -;; (and load-file-name -;; (boundp 'custom-theme-load-path) -;; (add-to-list 'custom-theme-load-path -;; (file-name-as-directory -;; (file-name-directory load-file-name)))) - -;(defun color-theme-barak-extras () -;; Highlight numbers -;(add-hook 'after-change-major-mode-hook - ;(lambda () (font-lock-add-keywords - ;nil - ;'(("\\<\\(\\(0[xX]\\|0[bB]\\)?-?[0-9a-fA-F]+\\.?[0-9]*?[fFlL]?\\)\\>" 1 '((t (:foreground "#E3AC3D"))))))))) - -(provide-theme 'barak) - -;;;###autoload -;; (add-to-list 'safe-local-eval-forms -;; '(when (require 'rainbow-mode nil t) (rainbow-mode 1))) - -;; Local Variables: -;; no-byte-compile: t -;; indent-tabs-mode: nil -;; eval: (when (require 'rainbow-mode nil t) (rainbow-mode 1)) -;; End: diff --git a/.bash_aliases b/.bash_aliases deleted file mode 100644 index 045adcf..0000000 --- a/.bash_aliases +++ /dev/null @@ -1,115 +0,0 @@ -#alias ls='ls -F --color' -#[ -x /usr/games/fortune ] && /usr/games/fortune bofh-excuses -#alias la='ls -Fal --color' -#alias uptime="uptime | cowsay" -#alias date="date | cowsay" - - -#Imperatives -# enable color support of ls and also add handy aliases - #alias dir='ls --color=auto --format=vertical' - #alias vdir='ls --color=auto --format=long' - -case `uname` in -Linux) - alias ls='ls -F --color=auto' - #if [ "$TERM" != "dumb" ]; then - #eval "`dircolors -b`" - #fi - #alias ls='ls -F --color=auto' - #alias open='xdg-open' - ;; -Darwin) - alias ls='ls -FG' - ;; -FreeBSD) - alias ls='ls -FG' - ;; -SunOS) - #alias ls='ls -F' - ;; -*) - #if [ "$TERM" != "dumb" ]; then - #eval "`dircolors -b`" - #fi - #alias ls='ls --color=auto' - ;; -esac - - - -# some more ls aliases -alias ll='ls -lF' -#alias la='ls -A' -alias la='ls -alF' -#alias l='ls -CF' - -alias :e='vi' -alias t='task' -alias em='emacs' -alias grep="grep --color=auto" -#alias screen="screen -R" -alias dvtm="dvtm -m \"^w\"" -alias tm="tmux -2 attach" -alias ppjson="python -mjson.tool" -#alias tmux-pwn='tmux list-clients | sed "s|^\(/dev/ttys[0-9]\+\).*\[\([0-9]\+x[0-9]\+\).*$|\2 \1|" | sort -r -n | tail -n +2 | cut -d " " -f 2 | xargs -n 1 tmux detach-client -t' - -# I can never remember the xclip options, so: -alias setclip='xclip -selection c' -alias getclip='xclip -selection clipboard -o' - -#machines -alias puck="ssh -D 7777 -Y barak@puck.barakmich.com" -alias hero="ssh -D 7777 -Y barak@hero.barakmich.com" -alias hermia="ssh -Y barak@hermia.home.0b100.net" - -#Cosmetic/useful -#alias naim="naim --noscreen" -alias wallall="wallall -p" -#alias cal="cal -3" -#alias google='surfraw google' -alias hd='od -Ax -tx1z -v' -alias gcal='gcalcli' - -#Sysdadmin -alias aptsearch="aptitude search" -alias pki="pk i" -alias pks="pk s" -alias openports="lsof -i 4 -n" -alias saupdate="sa-learn --mbox --spam ~/mail/spam" -alias pshosers="ps axeo pcpu,pid,user,command | sort -k 1 -r | head -11 " -alias memhosers="ps axeo size,pcpu,pid,user,command | sort -n -r | head -11 " -alias psx="ps auxwww | grep $1" -alias blaze="bazel" -alias pb='curl -F c=@- https://busb.us/' -alias pburl='curl -F c=@- https://busb.us/u' - -#work -alias totemp="cd `pwd | sed 's/controllers/templates/'`" -alias tocont="cd `pwd | sed 's/templates/controllers/'`" - -alias kubecat="awk 'FNR==1 && NR!=1 {print \"---\"}{print}'" - -#Some orly aliases -alias yarly="orly -y" -alias nowai="orly -n" -alias srsly="orly -s" - -#Funnies -alias whothefuckis='finger' -alias whoami="echo 24601" - -dobenchx() { - benchcmp $1 $2 | awk -f $HOME/bin/benchx.awk -} -alias benchx=dobenchx - -do_killgrep() { - ps auxwww | grep $1 | awk '{print $2}' | xargs kill -} -alias killgrep=do_killgrep -#function gvim () { - #`which gvim` $* &> /dev/null -#} - -source $HOME/.tz_aliases.sh diff --git a/.bash_k8s_aliases b/.bash_k8s_aliases deleted file mode 100644 index fd669eb..0000000 --- a/.bash_k8s_aliases +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/bash - -k8s-configmap-from-dir () { - local name=$1 - shift - local dir=$1 - shift - if - kubectl create configmap "$1" --from-file="$2" -o yaml --dry-run "$@" -} diff --git a/.bash_logout b/.bash_logout deleted file mode 100644 index de4f5f7..0000000 --- a/.bash_logout +++ /dev/null @@ -1,7 +0,0 @@ -# ~/.bash_logout: executed by bash(1) when login shell exits. - -# when leaving the console clear the screen to increase privacy - -if [ "$SHLVL" = 1 ]; then - [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q -fi diff --git a/.bash_profile b/.bash_profile deleted file mode 100644 index 6df125f..0000000 --- a/.bash_profile +++ /dev/null @@ -1,23 +0,0 @@ -# ~/.profile: executed by the command interpreter for login shells. -# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login -# exists. -# see /usr/share/doc/bash/examples/startup-files for examples. -# the files are located in the bash-doc package. - -# the default umask is set in /etc/profile; for setting the umask -# for ssh logins, install and configure the libpam-umask package. -#umask 022 - - -# if running bash -if [ -n "$BASH_VERSION" ]; then - # include .bashrc if it exists - if [ -f "$HOME/.bashrc" ]; then - . "$HOME/.bashrc" - fi -fi - - -# Added by ~/.emacs.d/install.sh -export PATH=$HOME/.cask/bin:$PATH -. "$HOME/.cargo/env" diff --git a/.bashrc b/.bashrc deleted file mode 100644 index 57a4468..0000000 --- a/.bashrc +++ /dev/null @@ -1,164 +0,0 @@ -# ~/.bashrc: executed by bash(1) for non-login shells. -# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) -# for examples - -# If not running interactively, don't do anything -[ -z "$PS1" ] && return - -BLOCKSIZE=K; export BLOCKSIZE -EDITOR=vi; export EDITOR -PAGER=less; export PAGER -_JAVA_AWT_WM_NONREPARENTING=1; export _JAVA_AWT_WM_NONREPARENTING - -#Foo -# set ENV to a file invoked each time sh is started for interactive use. -ENV=$HOME/.bashrc; export ENV - -PATH=$HOME/bin:$HOME/.gem/ruby/1.9.1/bin:$HOME/.cabal/bin:$HOME/.go/bin:$PATH:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/games:/usr/X11R6/bin:/usr/lib/go/bin; export PATH -case `uname` in -SunOS) - UCB_PATH=/usr/sww/lang/acl:/usr/sww/lang/jdk-1.5.0/bin:/usr/openwin/bin:/usr/dt/bin:/usr/sww/opt/java/bin:/usr/sww/bin:/share/b/grading/bin:/share/b/grading/sbin:/share/b/runas/sun4u:/share/b/bin:/home/aa/projects/scheme/bin:/usr/ucb:/usr/ccs/bin:/usr/sfw/bin; export UCB_PATH - PATH=$PATH:$UCB_PATH; export PATH - ;; -Darwin) - MACPORTS_PATH=/opt/local/bin:/opt/local/sbin:/opt/local/usr/bin:/opt/local/usr/local/bin; export MACPORTS_PATH - PATH=$HOME/bin:$MACPORTS_PATH:$PATH; export PATH - export DISPLAY=:0.0 - set completion-ignore-case on - ;; -esac - -MAILPATH=/var/spool/mail/$USER -for i in ~/mail/* -do - MAILPATH=$MAILPATH:$i'?You have new mail in your ${_##*/} folder' -done -export MAILPATH -unset i - -# don't put duplicate lines in the history. See bash(1) for more options -export HISTCONTROL=ignoredups - -# check the window size after each command and, if necessary, -# update the values of LINES and COLUMNS. -shopt -s checkwinsize - -# make less more friendly for non-text input files, see lesspipe(1) -[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)" - -# set variable identifying the chroot you work in (used in the prompt below) -if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then - debian_chroot=$(cat /etc/debian_chroot) -fi - - -PERL5LIB=$HOME/local/lib64/perl5/site_perl/5.8.8/ - -#Go Language stuff -#export GOROOT=$HOME/local/go -#export GOARCH=amd64 -#export GOOS=linux -case `uname` in -Darwin) - export GOOS=darwin - ;; -FreeBSD) - export GOOS=freebsd - ;; -esac - -# set a fancy prompt (non-color, unless we know we "want" color) - -#case "$TERM" in -#xterm-color) -# PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' -# ;; -#*) -# PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' -# ;; -#esac - -case $TERM in -# xterm*|rxvt*) - rxvt*) - TITLEBAR='\[\033]0;\u@\h:\w\007\]' - ;; - *) - # TITLEBAR="\033k\033\134"; - TITLEBAR=""; -esac; -PS1="\[\033[0m\]\[\033[0;32m\]\u\[\033[0m\]\[\033[0;37m\]@\[\033[0m\]\[\033[0;32m\]\h\[\033[0m\]\[\033[0;37m\]:\[\033[0;34m\][\[\033[1;36m\]\w\[\033[0;34m\]]\[\033[0;0m\]\n\$ " -#PS1="${TITLEBAR}\[\033[0m\]\[\033[0;34m\][\[\033[0m\]\[\033[1;33m\]\$(date +%H:%M)|\!\[\033[0m\]\[\033[0;34m\]] \[\033[0m\]\[\033[0;32m\]\u\[\033[0m\]\[\033[0;37m\]@\[\033[0m\]\[\033[0;32m\]\h\[\033[0m\]\[\033[0;37m\]:\[\033[0m\]\[\033[1;36m\]\w\[\033[0m\]\[\033[0;0m\]\$ " -#PS1="${TITLEBAR}\[\033[0m\]\[\033[1;34m\][\[\033[0m\]\[\033[1;33m\]\$(date +%H:%M)\[\033[0m\]\[\033[1;34m\]] \u\[\033[0m\]\[\033[0;37m\]@\[\033[0m\]\[\033[1;34m\]\h\[\033[0m\]\[\033[0;37m\]:\[\033[0m\]\[\033[1;36m\]\w\[\033[0m\]\[\033[0;0m\]\$ " -#PS1="${TITLEBAR}\[\033[0m\]\[\033[0;32m\][\$(date +%H:%M)] \[\033[0;33m\]\u\[\033[0m\]@\[\033[0;31m\]\h\[\033[1;37m\]:\[\033[0m\]\[\033[1;34m\]\w\[\033[1;37m\]\$ \[\033[0;0m\]" -# Comment in the above and uncomment this below for a color prompt -#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' -# -#\[\033]0;\u@\h:\w\007\]\[\033[0m\]\[\033[0;32m\][$(date +%H:%M)] \[\033[1;33m\]\u\[\033[0m\]@\[\033[1;31m\]\h\[\033[1;37m\]:\[\033[0m\]\[\033[1;34m\]\w\[\033[1;37m\]$ \[\033[0;0m\] - -# If this is an xterm set the title to user@host:dir -case "$TERM" in -xterm*|rxvt*) - PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"' - ;; -*) - ;; -esac - -# Alias definitions. -# You may want to put all your additions into a separate file like -# ~/.bash_aliases, instead of adding them here directly. -# See /usr/share/doc/bash-doc/examples in the bash-doc package. - -if [ -f ~/.bash_aliases ]; then - . ~/.bash_aliases -fi - -fasd_cache="$HOME/.fasd-init-bash" -if [ "$(command -v fasd)" -nt "$fasd_cache" -o ! -s "$fasd_cache" ]; then - fasd --init posix-alias bash-hook bash-ccomp bash-ccomp-install >| "$fasd_cache" -fi -source "$fasd_cache" -unset fasd_cache - -# enable color support of ls and also add handy aliases -#if [ "$TERM" != "dumb" ]; then -# eval "`dircolors -b`" -# alias ls='ls --color=auto' - #alias dir='ls --color=auto --format=vertical' - #alias vdir='ls --color=auto --format=long' -#fi - -# some more ls aliases -#alias ll='ls -l' -#alias la='ls -A' -#alias la='ls -al' -#alias l='ls -CF' - -# enable programmable completion features (you don't need to enable -# this, if it's already enabled in /etc/bash.bashrc and /etc/profile -# sources /etc/bash.bashrc). -if [ -f /etc/bash_completion ]; then - . /etc/bash_completion -fi - -if [ -f ~/.bash_google ]; then - . ~/.bash_google -fi - -if [ -n "`which fortune`" ]; then - fortune -fi - - -# The next line updates PATH for the Google Cloud SDK. - -if [ -f ~/local/google-cloud-sdk/path.bash.inc ]; then - . ~/local/google-cloud-sdk/path.bash.inc -fi - -# The next line enables bash completion for gcloud. -if [ -f ~/local/google-cloud-sdk/completion.bash.inc ]; then - . ~/local/google-cloud-sdk/completion.bash.inc -fi -. "$HOME/.cargo/env" diff --git a/.cargo/config.toml b/.cargo/config.toml deleted file mode 100644 index c91c3f3..0000000 --- a/.cargo/config.toml +++ /dev/null @@ -1,2 +0,0 @@ -[net] -git-fetch-with-cli = true diff --git a/.chezmoiexternal.toml b/.chezmoiexternal.toml deleted file mode 100644 index 6df5d05..0000000 --- a/.chezmoiexternal.toml +++ /dev/null @@ -1,4 +0,0 @@ -[".tmux/plugins/tpm"] - type = "git-repo" - url = "https://github.com/tmux-plugins/tpm" - refreshPeriod = "168h" diff --git a/.compton.conf b/.compton.conf deleted file mode 100644 index e46d1aa..0000000 --- a/.compton.conf +++ /dev/null @@ -1,92 +0,0 @@ -# Shadow -shadow = true; -#no-dnd-shadow = true; -#no-dock-shadow = true; -#clear-shadow = true; -shadow-radius = 7; -shadow-offset-x = -7; -shadow-offset-y = -7; -# shadow-opacity = 0.7; -# shadow-red = 0.0; -# shadow-green = 0.0; -# shadow-blue = 0.0; -shadow-exclude = [ - "name = 'Notification'", - "class_g = 'Conky'", - "class_g ?= 'Notify-osd'", - "class_g = 'Cairo-clock'", - "_GTK_FRAME_EXTENTS@:c", - "window_type *= 'normal' && ! name ~= ''" -]; -# shadow-exclude = "n:e:Notification"; -# shadow-exclude-reg = "x10+0+0"; -# xinerama-shadow-crop = true; - -# Opacity -#inactive-opacity = 0.9; -# active-opacity = 0.8; -frame-opacity = 0.7; -#inactive-opacity-override = false; -#alpha-step = 0.06; -inactive-dim = 0.12; -# inactive-dim-fixed = true; -# blur-background = true; -# blur-background-frame = true; -blur-kern = "3x3box" -# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1" -# blur-background-fixed = true; -blur-background-exclude = [ - "window_type = 'dock'", - "window_type = 'desktop'", - "_GTK_FRAME_EXTENTS@:c" -]; -# opacity-rule = [ "80:class_g = 'URxvt'" ]; - -# Fading -fading = true; -# fade-delta = 30; -fade-in-step = 0.03; -fade-out-step = 0.03; -no-fading-openclose = true; -# no-fading-destroyed-argb = true; -fade-exclude = [ ]; - -# Other -backend = "xrender" -mark-wmwin-focused = true; -mark-ovredir-focused = true; -# use-ewmh-active-win = true; -detect-rounded-corners = true; -detect-client-opacity = true; -refresh-rate = 0; -vsync = false; -dbe = false; -#paint-on-overlay = true; -# unredir-if-possible-delay = 5000; -# unredir-if-possible-exclude = [ ]; -focus-exclude = [ "class_g = 'Cairo-clock'" ]; -detect-transient = true; -detect-client-leader = true; -invert-color-include = [ ]; -# resize-damage = 1; - -# GLX backend -# glx-no-stencil = true; -glx-copy-from-front = false; -# glx-use-copysubbuffermesa = true; -# glx-no-rebind-pixmap = true; -#glx-swap-method = "undefined"; -use-damage = true; -# glx-use-gpushader4 = true; -# xrender-sync = true; -# xrender-sync-fence = true; - -# Window type settings -wintypes: -{ - tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; }; - dock = { shadow = false; } - dnd = { shadow = false; } - popup_menu = { opacity = 0.9; } - dropdown_menu = { opacity = 0.9; } -}; diff --git a/.config/alacritty/alacritty.toml b/.config/alacritty/alacritty.toml deleted file mode 100644 index e11bc79..0000000 --- a/.config/alacritty/alacritty.toml +++ /dev/null @@ -1,127 +0,0 @@ -[bell] -color = "#ffffff" -duration = 200 - -[colors] -draw_bold_text_with_bright_colors = false - -[colors.bright] -black = "#565656" -blue = "#49a4f8" -cyan = "#99faf2" -green = "#c0e17d" -magenta = "#a47de9" -red = "#ec5357" -white = "#ffffff" -yellow = "#f9da6a" - -[colors.normal] -black = "#2e2e2e" -blue = "#47a0f3" -cyan = "#64dbed" -green = "#abe047" -magenta = "#7b5cb0" -red = "#eb4129" -white = "#e5e9f0" -yellow = "#f6c744" - -[colors.primary] -background = "#000000" -foreground = "#fffbf6" - -[env] -TERM = "xterm-256color" - -[font] -size = 19.0 - -[font.bold] -style = "Semi-Condensed" -#style = "Regular" - -[font.bold_italic] -style = "Semi-Condensed Oblique" -#style = "Italic" - -[font.italic] -style = "Light Semi-Condensed Oblique" -#style = "Light Italic" - -[font.normal] -family = "Iosevka Berkeley" -style = "Light Semi-Condensed" -#style = "Light" - -[hints] -alphabet = "jfkdls;ahgurieowpq" - -[[hints.enabled]] -action = "Copy" -regex = "[a-f0-9]{7,}" - -[hints.enabled.binding] -key = "H" -mods = "Control|Shift" - -[[hints.enabled]] -action = "Copy" -regex = "(magnet:|mailto:|https:|http:|news:|file:|git:|ssh:|ftp:)[^\u0000-\u001F\u007F-Ÿ<>\"\\s{-}\\^⟨⟩`]+" - -[hints.enabled.binding] -key = "U" -mods = "Control|Shift" - -[[hints.enabled]] -command = "xdg-open" -post_processing = true -regex = "(magnet:|mailto:|https:|http:|news:|file:|git:|ssh:|ftp:)[^\u0000-\u001F\u007F-Ÿ<>\"\\s{-}\\^⟨⟩`]+" - -[hints.enabled.binding] -key = "L" -mods = "Control|Shift" - -[hints.enabled.mouse] -enabled = true -mods = "None" - -[[keyboard.bindings]] -action = "ToggleViMode" -key = "Q" -mode = "Vi|~Search" - -[[keyboard.bindings]] -action = "Paste" -key = "P" -mode = "Vi|~Search" - -[[keyboard.bindings]] -action = "ToggleFullscreen" -key = "Return" -mods = "Alt" - -[[keyboard.bindings]] -action = "ToggleFullscreen" -key = "Return" -mods = "Command" - -[[keyboard.bindings]] -chars = "\u001B." -key = "Period" -mods = "Command" - -[scrolling] -history = 10000 -multiplier = 3 - -[window] -opacity = 0.88 -startup_mode = "Windowed" -#decorations = "None" - -[window.dimensions] -columns = 106 -lines = 24 - -[window.padding] -x = 3 -y = 3 diff --git a/.config/awesome/btheme/README b/.config/awesome/btheme/README deleted file mode 100644 index 1ddb349..0000000 --- a/.config/awesome/btheme/README +++ /dev/null @@ -1,3 +0,0 @@ -Background images: - Mikael Eriksson - Licensed under CC-BY-SA-3.0 diff --git a/.config/awesome/btheme/background.png b/.config/awesome/btheme/background.png deleted file mode 100644 index 8f52b6bb4547cf67f8545af28911eda1d2c8171f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 222973 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 z {Bp>+^}U1boc9IbUlc0$Hb!gxEL|h3DP5xr#W`tz&k*ue*ELT(LnU z%8xdJJRM-v(o>?9PzbNw4&E5W3qU{z#d*$+_9{fvzNbL+uXxY;2@>jQYki>TVG1Sx zKA`XAB3kl8kfR%)xU5x@<1;!HVQ;S1?bkw+r~G0X|2kWmRbj;EDoG8ja^+0CJ$Pf@n`?k%TF>}zEh1#!+0Q3}r8Z@^5IJLWy_x)bs%Wcfd?fumOI}RMa z4F2Sz|-iH?pA;YkHs1Cr%`pI78H`El)dCs{!n{|Uxr_2v%}p5av3)gLy<285w@wI7i_00P|WQJTW6t>0nk%fu?XlK*Mvlzd} zdB3Omla80?l%c1wu`!Xy9ue=WSuGo-R+PZEhS^o>a_{tISWo!BoTQazeA$_Ar9Mh6 z#_tNDZX9kT`TLjeID&?)c;M+u_3-Zd2IffP_|nYlr)9p}WmaZ;p_HEp@o?lYC-VdI z#at`tAB!Pzr@mhz4-&<5{(|_K9aIwUdmsB!`EbXr-z)OrX1aFg9qTgM3-jd{eB7et z7x|{k++w3=rq*h?@Vo7!{ObBTWBv-q;t{%bG7zf@5dlg~O;r|ox*TEYc-$|oEGf}_ zOOqyGpi}1Lf#bb`U8w$cLSE+VG0dEpDJOg2p0Cr?L2YeR(An?QKH=pWGD@4}<($P} zzI?@vB3@NfqkhpAq69wj<8_8LZKn4*L>ZD>@k0CJ)Xi}TALr-oMkwj?UM8gGoz$03 z;!Gcs3;q1ghkm`)<6>tll^uta8XbDErhrwq-8bWMx9icg(~Lm~Jyc@e6=J<03Z3qP z8A`MlIS0+tdo!--$@iJKHd1f*9mRJPTUQJnXid{5DFiWw0i^`)w{5rt>ocPO+Ka{ZD+Tn_w`yyNh z5mbEQNH~gMPON@oL<%cyP?LMIb#fh%+=O$1<&&<9#H1roF!d!_)D4vy+&pE}>OR>} z4nFsL{_8h~&}_2u(1&mIc(nd(hZ(Kyt>1DJBqi?@XXssVrz&rHyz;)47pf{rn%^b} zv-;%0Mpt{k+4t$*b(%9m-O8G#N&1{wS21(r-i}$M6*XiQN#(=xNK)^F1}_KNXc?G2 z;q4?>S?hb5`oK9`JNW<+4KT)YFC27I_WDUm*Z2>YvO=961A%lU`{UsQU{IehOj~32 zYfD>G(;Y-URpjBY79w)CXlrk8|GeYyEG>^Drb)lF?ZMpPAqLasd46+0G&KxZv*8$& z;WE1OLuMxU4U&rW+&Vyn(Y`KoLf*ye`r2zzTU=6Nl>)hNbyg`c#-cfj7B*A)#Q^!s z)d2tO2c(&Vq61GwhQ{A}5NmxRwWS8X@!8$+!mc64%kyVzctV}@7^UdNnr;spK6XJd=+m1GoJZRtDC zyR7+`nwOh`8nJQNH($gfsGf(7;cLEJ7n3{+Y9(nsjHON8rMPf#@v>`D?Rp46}1mtFbW)ji^zF?~@y3ih|DlT_tuGT=M(`mm)2e>UN(}~tY-~2-TQ$}30PM#({qz!}p7}8Cy%D)o< z<65D7=xN)yZ1ngCf8FN>(g%hwF4K<0UGYa2Z_-^Xw%D4n*uzT(kc9g709!&Jl(P$9@OQBO^1GTZ)6Fd_G zWP;}IcXoE>JD%&o=N&H(9S#l-BH$z{AKcTV+@R`W+DoQy?MPw`pz*~#^@y19TQ5~9 zWe!A}&xCiJr1r)p^?#wx^@i9^fPD{xa?}t7PdSuBULo~loY6{G z(a7Ze-RF{*p3c#~9N+0~P^$Z$SqxiW^Y0P(EF~rEYL?T~#!~rn6E~A@_j2T??vrN| zo@$B{g5GtW{Pkw4WI#e%Kbgths9_7T6&ce}u1lDIrrZ$>8$5kzS^afc4;c*cO zvpugmJdx5DG;Ytfs5W>9Neexe{a2zy`d*cNyLji%hy`xq{Q$sCYW&Pu>+yqlUYE!} zOIi4i%ACi|{>7IQ0hCL0n8z82IGQ46!>!kgR%=S9ORNBzd=?r1FpU50TwO%C_sz6% zaKIMa##wIKhiq*}m;R2QXCJP8EZRq?0L(aPI3E%$ZtQxIc%$9c3@4ji<#l}JEA@BV zDgIKhw0-&Ynz}Y5Jc}9H^40rXG2)_|-}qg)f3|y`E+jnMWi?7d!^PaLuwfCWj=dh{ z6~v-B_&qF>`rdB%l->-jd~b{B>Bt_{`hFLDW>iTIe187D_W=*2W%wiPmk>sUJbYOP zZW?0)_M4Kl7P*M!ul^OBWglE+oEL2JipKjsXZl=^7(JgKRCZL9FyI`!S-FjyQTCBb z^U&-6m5+1L{&U}!^X23!SI|Y1P`1q0u=R`TR+M45YGexI7SejcfcX>s-zHImR^1y6 zBh9^lu;rs`NHFZ_uy!00OSt;ehn#C?`pa7HcdPWxURg^o;riaLqtKt^@ALt8A9u{| zJZpBNnYf)7?j%bDxPAJoEm_p=bW%-dZbbx0ra?$1&FFP-HRW+QMgtA5=M$ z!I4peA_(sQHUB$pTRzRt%FxKXfBjjxn?~miJpzA^C2<6QIfz2YeSF|TSc+KAyF)4NUfkUYR@~j)ihFR& z&HMd#kwrFHJegY%D#KVz+4V2*RrW81GZdF{fzWn$YVD}6Xr-h(;z`m^EVc&xtx@MJ@y z*ka0<_GCYjhae5Z70Dq6JjgH|chJ5G6X&S{Nup_n{wF1E1)KWDk@kZDH8&~rkbZ~t ze|u(mBwR^(LHgVvj{35U24EQYfrKb%#Q-YZ1A|dBp{P?7BxP`H#XZl63k%p0tAGQ1 z=RhPKf6Jj?EhFPh;31Uy_?=_-Nu>05K;d7as>{Hs=_#$X(7r@VQQF_r<3hk9QOpE( z2qVL|(#9N8xj&8SKPobJ@W&Q5%hL`wGSWCA1T)4+Z7ckFaA@A*9Hx#v$4Z%e2|{5N zmBaM5Gh+f+Fn4rt79~&G=b-hjCF4F_WN!~mX~}6X-#=~#1k^KKH#&W;|N61o9UCns z{v2@>?OX?-77k`82M?>l>c~c${hB26dq}*Z1}1iNG??7&3E1c_8~WWZviRRbL&6^y zD+O{E(sgTH@Lf=!IbHGJJ%>5+Zk};Bg{Mj0`>8zO>MxYM zY}(s9h3m48$g_6RY-b6L$M?OHRZ<^@7QdD49O2JQpfq;CBX7&J}ZocpG|(H7=R20zoS-*XA0G*++TU#b+QJ!da0DWL=UhheDG+?fVe0w_p%D$Q zGMHHDir$712BBZcYA8VdO;Y4u1cqG)z>EWRTaPzZ( z?IYXnSgz+S?K65-*|5tY^iMi1hN#z0w%fu`3tJoZEx-IBbL+T;7@FT$s$#I&wfjv^ z>20bKZqCWfR*I~RRF6%DoxsnZI8e2yD*vP3+5h*C$wb=94YEApF}#}6@<^Ile7$^S zWdUQj!e=0?B1XJ89n1%;&`EWF{g0VJ%DWF3q zPc;q43|2>H*|xGy^I}N7v`61JlW4J?tRloh1&bJ>BF?&-eZnzHA0p27hqApTw&o4| z3GS9bD}ra@zimWJC1El7{LoLGjTxWOJf~A>JwEKFM^^U_rbzY4@Ot4ch=Q#PWq1Wz zOXD86{eJ1!05??!X6P9an*u=Nkx!i>iZL3FYP|%BxZ#N2<$@g+JV`xhLC3ZNXYjT) z(T?5ELy;f458Jnrvu@$)7IzuIvK}&fbX`MI(hKY#hQO}F2zInIFFA+zJKDV7AM}y9 zs?V2*rED#xGym{>S-THyW8ODTGfkbv)AQ=HIaV=Fh!k*KAv2K9^ms+31^r2Vi%N z?oY=o?kfodmXDAQ=yLXcTUb-20Kg9gxsrx$Df;-^6m*UpvV{LJ&Ti=r2$;k&B!gp8 zng{( zHWK1jCcoX0|HEZF8Tp6Af7mv-ot;x3muV8#2o5gpe&B{be&Q8UuYp(H94);8FY|d@ zJsk1#a>D8F$hA9X{nSBzWY{NA{?bH&QnGA6RLQ+~h94VJ%fB=xag`bVDcdQ?oLR0l z1fOd4yu6&%7AN~{+qQ<-;Yuh^h80}O(K|5bA^o7I<0^66{)zx4zH4rOHz@2YGj%a+Ma ze*qAN?rOn7x5wiDP2unVSDxa?GHACMEV1d?$Qa%ob)YtK1CLu@y01FW5em07q=OAk zR5<++kwJ7Ah8(4H4n(&*!~9Ns;omIahh~-B)5GbPhP!Q(adnU_PEv*>>6&e+xh_2V z@%s4F8s84q@pAMSv8UsFKedT>u+tPS6X$YALe$`soOmzF^7B@xMm-K->LzUdR3SAv zlGkq4E?n`pj)PQ#8`$WsizZmVj}`6F!|#YzfNSbY5&Vxc3aCHYaYQ>GFNM?R92)Y) z7=L!?(}Pu@M~Y)ADqaq=99z~e{=@eH;P*#mBNSiz-8ZW0B?~xmR^(XrkKA3>xakT@ zlzR@nqdhgMh3{Tu174~Jn|m$Q+3Y!PGExJO5zH-5&+{aKp|5d?=$hEKyCTjkfs&)!GO(>*FYtT9OZB}>C_du0JN&ZM*wIMz;gsn=!*n3r8Y`l7d39lI&w zX2|_AtJ$OTj;yLr0~$5tyfCpq0p#f|Yw3p0vi<`VZGitZVpyuIwquzE;umR?SQ7Pp zR&u?%z4#v-APkW=$X-oRvN$5F6s)+qh6WXqe6pnF+w77$OGmmtR>W<9sM8o*_?7Ks zrp&CDMVhDc1LoI!24|1XuAW!fF`Ic#phe^6r9;cQy#^OV78Ken>8=r1aPj;cWm-{k z?nM_sCr%PnI|-5<_~iZ%D;g(Hp+3Qosla|9Mi@Z@1y zMELEVZkBV>zj4#C1z57Gu3;XV05|atxUG^L@%vpwC$BAE{?d(btiUddj18TUj}U{X zLsU#Z^BIC5PwLs=^y;gIk*)D_04T_$IqY@cYl?$5I%`$sFi6|l0YkgiHE(#s{ z)Xp^@sB*_YB;R2QkVSUA0fF|VYsVCQf7!2&h4VTh4(JycqVmt^E21sgZI$dii$22N z{lQt=Z-)X&{cFLU`m2FEY5YH;3)xVh66WoYmsvJV>%*8k>7uFs0)eLC^a zM`>SLqk3xXFc~($Am;18Xn}5Cf#II5dy2dm0UpbwjxPmkni;ws)p;la{r{0K%%cC1 z1HRd~6WUmVDXxZkK@*7pC;ptZ7OuuW`~4UdU3lVK8ykqLfH5Vk5K(IRK_A+h=%hM7 zKd_By4xnVrrCRJP=&W_9M-3-X#wm_nJY@#?wSV_=SBU}cv&vXW4NpUbxw!$S__u!c zbrL#C3fO@=0}h{E{JG%5tb>+lX6}AwZ@MZZ8PG2T;|{pshcK(nc!H0UOMIVdxTJOH z-Vi$+3S=#4M96?foLbz&pgQ@q<6$@d%zIMw8(x%-W>(26cUEMagYR8$kc$qB)qM}aUWz}JM>hLFmbeyx73_s})-fas5mFvi=pnraLHOp>c zvpOggkdw?!L!eb2k^E;IruEhc75%BnJteq#cJpVFyT%`X- ziXnDeXxh!8{4j+_lqJb;5<^4dzxFE$dmd`T(nOA-A8*)d9dbMiU4%cE<*eu}g5!X( zb~*nyrSy9B zTzOeVCd_;Z$lnQk-QR7wYKDl;(vcG4!y$L!sj0Og7eVA93uxwCKh(@qF2(BEd_kor_J%h;96sN=6xVwYZJsGNw-2{kw0DwA&+aa2bEjkYo8hISnt*sAe_ z9+fpQh~K^m=6vm63y%qv6^;zg<83}&_*%?WaM*p;0c@Fv++-HzB%%+)RMiyE42@we zwe;loVv8I7cjtFCO1=W6RUrdQi3yDb^%}G`{~0mnBW~5)l^oMKXjJFzr=p;W3jpqF zXLL^vkO5kntS|n$vxPC?`L@7pLE=XUV8Yu$gpvvv#DUw3ugeVhcPl1P3G4Dt{qH1{ zph>gcif=sDwulxgwX0#wOSvS1@lAxLjkL^afKySEo;RlsgAsGtHu&)hd?o@`%OV{r zH+0T!21tg1H}#T$*U4NiN7Nt=m$AfE^C6jr)}+fTT4pj{kPC1}*N(?y&GxXJQj76u z7$n5L?M4^2H8sWWo@&=N4A)0({9!ZQ0{x5>7=QaHa;x-u1NQnHVw^+!*tmW1A5i~q z$Y_BNYwh>_5tiG_@QMv8sG@XP7fHSvup5ext%$w5;dV3hR0JxfnF4l2AXU3o?k#=7F0wd$fUFrpjIuS{mwqau@350aLs)+!(eyjY%lOsmY@i zgJakmLyL_Hw797BCqV%GR-VlLC!RB)k}v{3x?1lzCO149$T5kLzwft+!b_c#;|@Eg5oDNa{)^v z=MDiA-q<(Im;e)>r}6i=o<$u(?11zG4yycFaL^5AjIM2=3w2*N8Fdb(7^bW&waQtL z0}eEU^k(^d`NiT+xRxxWEV%=#E8ih4yq$-ezLo}!r1=!BRt>VWn@(0-6gmorZS}`X z>9$)bStMfkXXzz~UsQVMd^&)f%N5Ew@?uK88uS$YdBxYa<>1a*J@Xj4Oiog&5UC#8d%V=}La=o(FYORZCG_^dy+0 zjv59T+27&+&oo$YlmZBB%`}y&JBb5j08oMd+VmTIxN|bAXS~b$ev~+V9uz~a-*kwA zoe+q$uWv6;;31d%D|AX06UInk1rJX;>W8x$NKY!0t*8*CLf`V2m$L3qt+L6Y_-=-c z)$D6JVlg@WH$;=AiK-^ruoOvHGrv>iYKWSxKh8sBvBAb{QGL;(arNSXN3oG@5=vE* zo6yMXsIJO7A?pW6)HK;l8NAX@QeQD5ADfKz*7tYag-k506>qK(0A?^E79wH-)IwRM z#Qq^tUy?;}6Mo4F?5W&&>tfW4Y30ie%03}tZ{SFzPUXYT^Jf00;XL%mtd3Q?me6EU*BL!ty?PJv!9KV@&sy@_h^!0R50<9?#@5d zI1MsqA!ez?m)>5^4kF++C4iutng0tWg4;osEnMGseu*AK4->3YXfLk(d2eZ9552{7 zfRT{}>;W71%~!^%PqFfX8u-Ds8@BimSbMk2J5q}xE@>xF%$2uB3iv7;X%x_uSa1c5 zFkQZ{(9)B2Zmezo&pfK-DrG4%=F7|Q>|0UT=Y^A)UMxxt zH!5?D#jHt-*3Ao^tW9^IZKl1(Vj<^bl?Zv}U{q#{d5NFxPgXVKMeTrGsjv1PEF$l3 zx{F)+R<92~WRd5#>ea3BWB-MmX!&ancVc<-eV%dYPG^F^8~v=l zi>MPD9JYftf~t|^vg)ds6daHGwaxrF=$_FK;pd|2QiF{GyHV>pq?74zu&b3#&(F9J zM%gzZw^C1-Ga}l<4vtSl$}>bb-D0mScQ5HFX8kX-W{bUt#nTcthylv%p6pz4 zy;va6f#J}i^O?rDyGVwAf)_4rg~)4EDzT4gzEO~NLTfJ}#mXE=Q4v!gtCMImazaSx{ zE%Q`Isa$pJVR!lfDSi@CJH2YwRxZ@v{iFpxg{JVFYK|5&qSEE8`kUubl`Gw;b)h0Z z1(D&5RiWu;v!+wh0+NFR5YT(CcB||rV_vGT3$AtZiD%xNPjclgV=xX|-PsVbt;46( z-Y6nSKOixyNJA=4hFjgtHDkbM+d+=$`FLdf6mr!{;|_7e3H#she55^{3p(w4MqkRV zck+x!7NE0_toC8Mvee?5R)e+%V!T#ElC2yzJ?N!vyXls*)N%Ey8A-K?xv4T3IO9CL zLDJDfdKuvRT)>xmSALN$hP7(~Z){eDASEt&wLR)Uz(|9X{M#>>%h z<9(prHpK>b^CE{1J!?14p#sX9PJN1CIL^r8LpSWW*DoA^n~okl>zn?Kt4nTb8Y!5Z zw9r=4pueogl2#+ijoba;K&-%TnBO%PCj^Ssw>^NHlP^(EKoKW6xHA?f`S*xh^W|54 zmW0?dt^jhHCyu$B%d^!|C1L?;$f%uClM zasFVhg4gvIb*pYAO7FfrbA{8CZxI2^H8V6V;eFtQmpngb8-#RosEy&pY}VYIK?Bt(9yaJ+7I?D@ev9D03*?7#XIv^SX<(-AK*)FlC zyl_4YfaH3ynKbEN)IgM(=a8O^x9~Dm!)e(u0FN0{<^owbK`}X8nf- zYfEY8zY_(jKwGWC1HQ@Ge70W2p!D^c_f+h5D^|h?Xo-QF=nd(9xhDH`TBTo2!R~#= z?fpC+H{A2)sU3|&lJZP(85O-zxhm^yRP(yPi$;xm_hx}q#O%$I6XC5(s%KuAViS!6|p4fndf z#v(OryK_2;1W!|3y!^>3J8Wie5E}W^GQUU#>nOUOP}jifm-@ZWR?8Kd5HIxa_kIEV z^zgjRLKN;@@PP)_V(JWGebND>_=o#?I3Sx`4 z`JR(25}e`HxSES6(c$_cRZ+Hqjk5J`e%Md-$HP&SVjznv;UFs~iTBjZLtZ;S^}GPc z7IXRT5NOx!>0G#2)S0_a!_Vh{oKl})<9;qJg2N*`TVi+% zHO$}lh&$O6M~MFjEEueO^OiTDOmxkgJAEm!DVl{E9W%AE=QwuT-s@WRN7}28M#%Xk zjFE{;k`F!UCv~!%^xWqZGOZJ+C@IRE4^Q=;zS}HzP0OSq(F87GrhNx5Dils|#nsgf zyw;bf=2I-0w=_*Z`A&Cu4PuA|-wgl!lXx;QswXubMHv}29`=gIui&{0YHv65(GT_S zn-vDs2Hh5BFPdWhgs{hgT>ooFO@}fG`?-WYcbs0rV;{|I&a-L&oUj>z*6)atZRIgQ z7Ats)W6-pFt;puBiWr(iP{8YvKd!>j?Bhf|BMe{$@LAA#-n!;XpvY^HbZE<2^OC-Z z)HbRqc911V-!c@G!3k7>}lTcq!QXOH#Pg?V-SnoEOrZuJ; zZq%ucWU@g=a+UIhKeD9Y2W&EwE>p|NJBjRXDhJzp2ddpLfRLPuXL+I&vQI5@IUG~3 z&P;=(Yb*mS&kNdU^}Yrp{Uw<&HJ!Z#SL(I{_FLvE54j>|%U3R*4ABq0LJ$K6H7(&{ z9Q;bl0%_dn2f!HulVE=r$5Kq@W|+u^()J+M*9?e`$s_##XzcnggSm!`6(|Qxn5pZb zP2G6V$T)z66xOEd4xpp)3|OqN2!jg9-;L30gKVcr-&L5!ny13=yd-%XLLM(38;~eK zv`?-&;Du{N(99?(u$}FK2LM!Y2I`W<`B%SHjR@nm4Ss7I1M%_~g_aP*0LbTfA8-<4 zs8X&N1@~(-75X-en?qR95JN~a*?SdrewQW%WS_HUkfKytiXLqTr~6)Oqe9-+w9D?X(2SOydU@;~NO@wwz7rfIWf^Nm<`vR8 zZj=`~PcP^LHQ~#j9UH-|Hb~kEANgVsp;pIL8oDHTx3?HmC3!w(lGbjkyxISL<8?)$ zLG#GcQsU*r4_gxrl}QNIRQj=d`Gw6T)qE8YZ;XMBCe&g(J>ERhK3AK2a_(H8A)0J#wl1s1^%QLqZ>%X7+gl&a(BFj zv2db0sUVrs6p;9%GZhIs$>yF1kFa^}-UZ>~#gd;?&OPS)SI_kJoglRx$FI#pfm`_P zabTWiv2-q*bYzI)l2%gj8={0EG=LW+a5>hfbs|e34#wdXW2j4-^y~8v4t5T!88dtm zXyukd5)lOsD~O%{r2KlaQ4(`w!cTStV?#I!G10(@DMIvGw1IB|;+WqjyiYBMXK^Sj z=9>YLo`R&16&5h;TRKSG_`q&0jK|@lt`m*sjY}Sf>L};Mh8Uc}c#DrMI0I#= zV{`tj9vbREb|L2SIHRzTvrGnudgia4U2UMU`$U##X!F_aml+=(H68wXU8^r^t{L4u zmUAInom+lmx>$^o2G8m`0hCN7?y6dHE9cm>pK83B1?Lu>CneA7yH(4;!ND^BC!jhw z6lJ*hfXp5Wr=~Th2NVJ$CY3!GV0#HC>uKyl1Gqglc(~p}D zmZDF*p_}Bjnq2!GB9YY=g((q{AP_KQ+yu2L!J4I_#9&;>%!;DnX}x!`!ipY+U$6=e zB?l0rn{2;7V}P%AS9};&uO12JVaug&8=K@HyvM(r-Jwc{zLjck|Cg9{-;C0By%lqs zROF%~YwI1Sb#XWHtM_(CD4@f&t!MV233!;PSVT)|w<@l0W5}Dq)MGA@js`@C3!de! z{q3FvW&7~c7=W5JE-D$x`AZ?@e%lqT@(}`WE#yM$r9&Fm?6x*9rkLV)xRyT}9UOS8 zSf{iyv~356+>il3&SshW*djy`9k0sOSQTu;uusc@lWGFL^4uKTjo_O-9kt6@L1NPz zeSPeYeT4mGzYl(hgU@_p$ftEzkyWW&iZoj|-l>*1%kVK@9V!6* ztBpG~RaBg4{!bBtN)&kPp+6Wxn-p1UVZ&i$y(gPJ zTs?e50dX?Vr@CaV@xZi%7n&65BZVflW#ap6tvyMZ{%alz%KCg*rVb4UM^@26WZ=M? zl@BMBgQ8V+@kDI6UXAh)6;-Y0QAKY$sZ*H47R@zW$j8Fzclj@cW3S6-onO{!Y8I3v7;#K2+6mA_ROS0Nx zQnyZOet^%rv}>tX-AG@mBS$7&PZwq;nKjjH=5VFHPts;-g-Xrg8_TzGTSWy!dHL4g z`=T8q=!rgHwAK2vzwLYvXVQf?6U9ai;zmX0rua@hC`P@Q4P2GDSJ!ttRmdR3^4W|a zsdpXDHIXqpAgp+x{GLO{!Om_nOuF>3q_eFxF=o?MlR8&Bt1Je~`nudG`9=PK4%RbL~(5QB0JVE-h$tc5axzP&SaRa^~$ zPIF@V?}@urKl!O*_vym!Fu>Jmg!#eB9C2g1-w1TTt0Kcw%X6=(0?4%+hDl0J{@MJ# zc|aW_f2T&iV-=Ek-5rNjQ(EL>Z4$GG{#Y>9|aV{`paCZXtNq5y}Z)l0qX@A>4F zGKrkpo7qTDSdQ7R+pN0g%z2O26>i}&6pZe${QP%x>jO~ ztlPZlmVfQk$UyhSoBwEi1k>>7P*eo(wi~Rk_HOxo1&(+Pez!{mRQL36@`VYiDeNdd z=JIuxAh=M#fTo#eDxH_YOtb}%m6obu;Qj~+v|sBUdU(8P1#=7EL{0s6b_w2o z6;j9ZzgTtx(T4Vtf!RK;F>dbWpAf)+E3at_E8i=hr_Jrb#_7GJyn!R(2n;{Oyf^BP z3y}lzS=ir{OCg?x5UM-dwUl*)m)n#)7itnla4%}&523f-x;GH74Sw5z3N+6 zfX@500RAy0B{F3En%qN@TqQiiqwK5mi|e8xj2yNWKGbz{Ni-oa)k&S3ywJ?>h$HH! z2FWUzJ$!Tzz2QibpC&~;Dnvlz;32A)IDO(1uvElbuCjuFOAdd)?eyk*W-T3r77Z6pvH$?Ve5? zf_7?a`@!w)ANI>_&;1wz$g1I*zdz_D8&%uD4!hr{c5@|_AL_V zblcA8J=1%Pi4Z^nDF;e>eNkV|q9^V(m*$lhzKq5Ci53nY=(_V{hUB~dEx=I|w{g|C z{s-pl$*OZ#O^5#cUjx@8^jsfwNzWsa&Ns+2;hFB~iBtAN4tTHKmmur&j$!eI>H!Jh z3UqWC!b09#2m^F*bcu-L0yB+N>LC5Yd(;Qh`h6xKPFMlUC z4QCVSiK(`>14Q1f--aCjFj5SZAkxp+9>i>P$24*X`hFUWW$FJkD}-rKZ)m2AF*&C>&gJ1W2->-o;hlebf-a%?zdWNUpAPN@zku>}k$;C2aG?<0rT z48+deD_o$#0EeOs&JJ}gb5?m`?c;LA@SG;aPf5F$>lAEX1D&&Du=uSA$nrkD9y((LmF*!#znPwc{|KQeeXkf+Ic< zH8)I?0wlsiUE~k@t6g9uFfP*d(T@Q)shPpEi2MBA9*$3mmUg6bNRRp7|s9X|z&@6A0(8Rf56arVIz2HP77w(sH_5JUKXia*|(FG$Q z!RcsxyvDS$!yfJMIA7SFk26T(F^{_PMd-QL^}HFJs`Y)Df06+sZhvrpEQ9;DNQJMV ze9ujv_6R)SZ&q4Y{mu?x!52Nd7#~Lci&Q}(gh@{yj})*CsApVDww-s_AA>!|P60?k zjT{?2agM$)GBQt79@p*D#_a=;VD!h@ev*cnmj|ol4%|(4XyJX+N_{v;YV#)n--zs` zXqgc0hL8=2JkxnzaJ?OY&#OgP%|wKs#NO6w-JW7Mw);woG!QA?vleYMwA^wDH1ut{ zwMviBPj|25^9CNT(`Sv1s`f*HevKRC_sQ1+ae?<0`A;2XZ@G;-n$b|7P^@6b@na0{ z{?Qhb2;=$(@2a+6V~=i<*ebA`&KcKVd51F#tuyMfTWNMz#f_LRaco^|5Z{*~1CHU4momIG&6XdKM+F=?Fun%=+1~ zN^67k)}bEaE&VmBdv=6o@OnWnbY>4nwX31)o6D?hdja`z8INsT*j*M*b$74|9#VCt zbL#g(xY^A_%wA|NwxF{$y1GBDc)ZLr|{z>+KKDNY+Y zvZi@!D@`6&tS{pYg0&T=yZsT-gW@oookh&zJ7yA{@H-9nqIP(5(zXP9mz!nlz zNk>mB!{o3Z^8tOE!1T%Mvz}PP5A)6^$}LY*x_uz%RgHDZWW%OmW1!0>ssWOI=IQLE=p3WLuzAmC005_zU^;FaO)I53-m zA0Bu=VCS6iltBaxdP*@w!tlLR&=^3a2<7GD)2`N>&^s8ca856icRZPqY~GLT+T9Wr zB)15CP(n9WT;6hZz=%?+Oz=n2dbk$&6->rdUT#^Bj*}S1a4|t#%0!x)ps@1;;XYQ# z%EN9s8CB=U`Zh@qxc zJ&S4-wm?7N>!;q|4cOxv)ho{zoo-g;8j{IDdQa*KeI+3;+fUG0cf3R!dZj1B(u;vv zAbMgl^1U_hNO<&1R8lj-$S>3U#xOrt3p?<|34~7H$_>3xp0I4W4#ZhQ&N}+Bi%>33 zzoPiFXx|ey50h)D6uFLjGnh3rva*jVC*m|xJYdE#yE(3QpuB5i2Enoi|FID1SLmB& z#9C1=AlT(I#?BM#}s(`z0Jf^Oi8JPBkg)U<}gguS@@xg?hd}`_gA!wX`Y^_Mvk}s zfXJh~VS?@%UvHf_8YDLbJ|Um@=g!<5h;-k$o2DL5>}{k5W453 z@+r))_pv8VNOz)G!RWzvrD> z80_Wyw*NE}aXlyhR13zd?YVS1=^Gv8#8Rb&J?$_?`_=SJ+?e6kDbZG8z063(T2a9- zBvgIoEu42WQk*op^!_yRR}iuvxER=P;Aiydt5SPDtl0X5y2PvN+rmwxHLn}tbJ_jk zE`1_W{Nd^vA5o`&AH3~84lb>6qijJRh7j%CxqON%O>upa!xvw1OGGc9_c{kBey{G) zM14Yes6eyPL@#|bOZ=WL0WOvMK#|??iaPz&Pcgz&g?~lCFf%>=&Esxvz8$%EUb$+y zwl2K~j3-Mp?#4^Fm_Nz=VGz!Ml54&^^P=vX)=MUUUo>R!C*5$zMBwkc(ES7+rB(KS zT!T9*&?fy_+9wrNU`ZN+w(J3CT6OI*y?EDF+JW5LN$oa-8PCE89bO^7Mwm!v>=7(# z;MOl>*HVj#ux7d0Nj?fn-1CXrjcr*LtX&uDK$I9fC9d(p6+|OuT7HW4JlQwjRIa2+ z#F7Je_5Ob=uqOZ+C`>)HORPHDpedmQ=`v*hUuW%HGA_Y1}0X= zV#0X5^pb1~UhSv2GvT~^{?dRdnS&|trAYnz^3%M?prvq#vOl)ri>iblXhE&b6~XX% zEIjh?Us}C^qnTUlIc^pKkvQY2CsC?e2`Au|SlfdANuCh!Y_XG3nN$V{^kw1#Br64a zAsscZAkQv*89)Fupt@~RFwXf&tm7mju@=~ZMLGnP=aT`gVmGPw&QT#N%uoFyk{b2~@_(`kOG}>~ zTE!Ls$HE-lUoH+{4PQUs5{nO%5x<&=(5B~(VV`knRvO3HO%^Er{o*lKLnIRR7ZwqJ zKzkqDA9MD-t~5XE7K5olW4T!$pO_T)Mo>TKJ27vH&=~D+geTs}Y*%&B#CJJ+>MYu; z^_)+}fvmG&3o}_wAqguqwc%HDS!Z74;z#`L0=}9Ng)=-=mZ0p@zfdwL&J>(SSJKP# zy*q|;+PR64f-uVTA0(B>zs;hGLWhABYiT4Bw*Qkzel2AvN=XbuF0KJO(JnXTaNwi= zvHqQ`W&D9Tev_zwQ@E$spyTKx++hX@*XOglp?aA$C#PL$R>8L)^abq*f*F_P?JFWL zRy4m%aQs10YlNM;H<&Bb0_$d@eJe2>NDkz0pI>kY)Lcj#Kg(?ec$USiVk1ZNpc_S~ z_#6ltRh`clfP=DS$eu0-v`rjbvy3cJKiK!^P@@(M?7n&AjWy_1Yg$@bLd+1HsUqts z_IAEJk(JrL?I1ic1i-aAa6thw2x^Z~YBhgUI~}1Px-x7NPikfJ(9MIQ$U~tflhTxj z=f92rJ4Ai4U4<52%j<=lM@D+okEhY59He?@7;fYhAX0(C?6BefAg|tW>*f4JxD8Ft z;5^Av?7zG?KJK|ry)5%IDN&Lf4RWlDf-SO7iF|wrNyJn|?xfF$aXkYnRP(Vg zy{@EU&tgJ?5xS!@Y`VGTiu)fK7E{nMFs?R%bfM|fM@v{rH3IC*40GVymLY*FqxxRp z*5VsqURGc?CMGnGBjvP!;RJi?qs}ga;ooLk&r3evBLUA_*|*{zSb)dXo~>cOcg!Gkz%$GK6bWJwfkE$MckBCU zEmwQ)Kfz7RTuOlGR8KoS@*i1fJf+0ERl8L4Rh#BHVC8&kz2E)T4VQX?+uaKu*fpdt zDekw56M5{pOQLqP3_peiIC0FcfT-!;%&{<4tR9a~qigm&FzIzl>Qy=@VXta&UX9sT zue*EgU6`}?W?;IDm;=)EQ~m$9;@|y{rwI2Q8S~fkNoRDm>~-J5heI*t=eVCg6KQ}e z`Ie71roVZU7F5q@fUuaNajE*hp|5`=8+#Pa`JuT0D-)jMKl~qUMtL;=u2-tR2>*s4 zv1UrgZ<6)J>0P#FZ1@H!g+=rE!BG9|h(Wv#RsYttK|YnBvFyg0;hhvw=|ML)Xup?e zP9`XtyYF|^Ptb!1SgtK(boTvyIcQe~D*neO{HpyH(-X9+fX(D^e7{&mA+8-vsIhpl z5>#n(dnVw~^<(GAA3fmAG2hCg$+0tN*>Lz`{b|Bd1=sV+=jKG2YW#Y!b}vF?VBK*) zitakP=Rfpg6DBw;&(dy7u$O1tTKnlrG3mpxW$s#ge9G#9n0?2>d+b*p*_t{e{L+Y*UmwWPMCZdo{?@rT*XGg$9M`ErF3z>6lDY z*t89Ic^GB~6zBIdq6HqnDE;ToH%WhN6Bo|Cx+{1E0$QFr>S;b)>VJe6Csd9@IKVXd z2Yeo<+D%?Vgp>HpFD|1tFh~|JMc)%xebp3iQXFtPaGc<{?%xJPWnuNG;k$57)Nv`h z)GphG?*8%{=i9B4i$^k!QRThG{m>_VFlX_Hv~Kk|zT@Mg06dR!m}Ud$X49@3b2I*0YJ@cmY>_%_MEb=l3tKOl zrE^5lR4cGGQf84fwEyZR{x?}Qqo5PWZg<4If8fWImZUg;3?(ty zhDvax?d4oe`4p7|a-frMnHR1+JaP*1J@|O*gx9&svOw-p_Gk5-+$1`}kB;~|JdR4~ zu$shU6akWnVH|X-&?h&l1A3M40Jlp+qpSwDPl#ZDm4z$yO|3_znIh>`uuSqfCH&`i zNu6E6toqf_q2u?xn%RyWZa{+Kt$*(RNvX5#l+~1X4c{5wt|Nds zmPMPuBO}a;ibH;7<(nyioH(;kqcm5U^@aIKI|PI$p8$+$VOxCNPwz^yh2R6_y@!i# z+9um9emcu-=aAD7^CBDWEIcU+Q?29uMQ3I*s^eF>>;`yyVqe?5EC1R{e@Uorm&pci zbZ&l}{8MZJ!9QasD;&BBj@(W;+0X>r!1ifnmSpb@}T1Ch%v< zacE{)G0{XurH2(AWB|2%Dx$=79If*jcB z#^OK!9zM7W8T58P?oRRuKn1R%`uMa3^vE6|#27oS*c+LbY3ywM!!=G`QLVN$@ZNh26y0}u>sg0|UOI)KXcpOJwHLrYZ_nZ=i&`A?I zLHYb0xJKg8_2UQ4@c3e%`M))(@Mt?qAHF_@^4oipRqpgU3*Gz_4I&iYC_gWjiwhoj zB=#96j`|STzhOHLcvCO=ilmAPAq!CIaRJ{_8CN|;czuhK<^$x1g;a!g#>-{1MMi5< z?=M|sEE^$@{3FLJ)NJtCaTIl9Bc!g<$2cnA68%zf<2;+eI;U?VZM@FzSijq*j z>y#8%py!>~h1$CwfQJqJlMYE+m+H+QjxSIEN*zXg?NnJd4a%`bVl>)8d&A-ngVmGl zOR?|Eibr1HSLch*-LISIn(SG|^`aW~TkU>C9+x}vhJ7~8o2s9vXTR5KGWhNj@e08O z`aE90oIQ&)g{PztjalK4x&D8vl=_YYeFD{kk_>Q)>){d64%iX_j&~4|AfWVp%+P>-UX7|sXZIp4>oYTGTLshneY~iH0CJ&@}Ld711wrI)QN}{ zFHfmvxp;ef!fR0zd`V|K#Ze zts3Fgf47`H?|NuB=nsOCxBI+Fx!z||T-|Q{aVD_iNSTs;E^~mmw}%bhn+0815|Byg zn{49c<#qe4L-}#)+sssDj=y^NurYm9ZN3#Ls)((4>mG3Aw|O!=9aK!RVNvrW9DfgX zT3(ZCJL||gR2ot*sc@e%9AKvF_3T|qN8H8UVqQIo$NtjGL9YlxCtpXE(Ltr%T9&B~ z?(eJe<#zrqO6K6BQ)ePCO7$g6chN9oasPJ%D$On9lrB8|gc!@*?UT<{A%M?lSoCh) zDcJ+Q5d>1l_i*_n{FfbKjyGw~p2{p#eZSkE;oFYNTmO?+z7s%}FSXxUys?I7w9|R^bPWMcjD>ytb-UZOf z8D<%=gcmk_D@5Eg?d5y8aKK7m#3+{>7KQ!*8i1I0`g^r{Dx+td7EpP{TtOHH0`jj(HfM?*9*mPK&WJrro7|9^FeI@7&ucVqj7oE*r5JaUo`g-CqE2pz ze)?Se{fk{OhuOV?uVzm}l2^rk5p{JFU}_MNAP`?i@W>%wGCInCZ{VnQTK5s zy+$?>4h$s+V1t>fpl?n`uc6DCcPh>6h2d?f?Rp8CmWnuPM^YE}5a?vF?SkzCG~zd| zI(g@zj0;YBIQD^CRu$9Qt;AFgpzJgX4=w+#caawq^<#-<+Ni2rFwEGd2{t3{1!yjy z!&M9WEzWWdO!s}GutzkT7iU5viXm(x=tg62Ez>WRkV>|eOs4k#*Vv!(Lt>O={$&h( zs7l18wqHSmdQylvuwnHCmB-u)tmQO^PKS6N*V@s#@5DoM?fj*z&P-+)&Sip35rISC zFUv1O){_D>{oT<8A6X~dVhM-AE#D-7`y7vM*fCLWzc)^uvvsa>qRmdzpkDCkwNaq9K>$F5u-Uy;Mf$S`mbr*J`}3@mC&rxmV&nHh55>8=?r=Vw7V&v<0)^=R z!!he%FI=hKOBch;V{5P+-#&4kdH?wwI0pF#YNP?<;YxL;EX?<&$1n~!0s8bsCmacZ zK$jSZJ0|`#DKVlYr9#QD4Qoy#JPYSdESIPmDHHnvYzZ%>fQ7{3@!PkpEg@K?MHkIv zQ0>u7&dMYd^mbnYe~-`|(xn2Wc5N=pjGBFYB%lo~h>jBR}V@*2C@LJvu{0t;^z@Z*)WIjsoizb1!;$_~Wc9 znSy?vYJ=F;vug+>M`R@92`eM0a`Q-6wO04?rG&u<+JKH!#@ZLC?;xeKX!!(X=JJLG z%H|Sgbp`OS|A$$qmX1C5ORr)r-JAy#W?{43Ef3VD^9-azRLK!Jl8b=NH!bx=Cj{g( zrnp_fokQ=#yJtk#n-ADa(jqxwL9^_`+h=bM(6kR54Y-b)NpD$>zZt9VJ=z%OWP}wtw1!wN2~OzeU-vB4{K zEfUKTb&@PEYLb?6y_qZPnM4k@V@Hk#M&VV@p!N^!TL+$Z#KV|feJ)8ODJapur=A-D z9wx{GK0vS&iB?K6`Ap`{Y*WImRDRurkWm7@kYs}{%!_ZWdVk@EtwWPHGKZ#QRr8;5 z^d&E2>>K7<^WC4{h)B_ob)Sk(&*=bXiqU1X5hD4YW%DOTM@JjHmvi|GJPHuBG|9i| zM^pQY^cxIt?vy-eE8O1VOO#M;E-=i@SA@hM(3+eTt=C9r5?~)@5-M zkwf;?;G?0oGb8#`*dbV)aGKFtPuajJ&ciC9oNNsPaj9eo2~Ak*T>7q zPR1{q;&Zb7yYycoa!@6#h45?8Co_K7PA(!T4GujhNA}k>EJbI06`2RPUh7w9(Ns42 z4~CGfeoc;|vg3WgjMvTeif#Wg|0O7bILo%zgbr=#7$c$(F7r&O{y*5>I8iBoVRshn zg9~s)dsl51eDegXlHZfdx=sYqeG{pb{41#cD|2xB)v`gBJq|oMNMoPG(vRagN&z0> z7xY9<`n~s(F3r;SmR1^~>EyU-HSq1d*CIy=!UhSjEKc+j-OG z%XX}~oJk%p) z_#tcrSkZl)j}Z#+Mj2@#03O*0Br!2DgaY0gi!LU=6OaCi{N&cps1+3YC>V8&GBqG# zx6BkVuTIGHo*go|eTf>V)~owk-#B|R>>*-`8r{1PeId+4%U{hue2a^A8MZ3pmuS7T zzCmC`u*&NgX1<#yYMN2*8e}!S`w2RpXOi)g<^881kd&aM& z(Bku3uI@JMmrMJ~4)j92X+u%9Kp$c7*8p1&oQKz&`hROI+L!aGElDl}-Gy+>7?#Ce zznW5Fk`|OxM;LNw|DbcB>`&tV)$xGa`6T|&4X{Uby-T#a`Oe#Z)#Iu%I5f#c+he?c*d-aHG>F#ARGVpw#*DM8vWeLx5YR`(4b+ta;+J$DITUqRisb zd9S^iYI7-(xyW=uYNF0T(z8tY<8xbZOYsA;$#&aovsadh|3D=t`9blZd?-rr)9LNiFZLPVWSN?R8KjTv zc}bG8fh=DH+!Fy4qfvEiAdtEK0U<(%zAgbyj=4%5$cjKZ=hC55QPyhd7n6#k)jq|z z>N0YRDW2B{Apcatz?CF;vb>W_!0Pb0&(K% z!CzYVgC>%{X1s!;g4#!qDz#Nn*u+ZU2VbNhys|1w+AZvHUKbRdl-_0S(sUsq7<(U% z9JT~x9)`64JIjIcf3u*?&7h(7?me$#uz3vhcLWo@fG(+T>2XV+iTom29&-|pj$oub zlsjbwC}(i*c~%fITS&eLL*jPDZSvaC#BnL5%$*yVYk3$vWTc`$n@B!_uh)nNy3s?; zpiPKIgX+{*vGxiV&B^`BO0_DI>kJzif0(Fo@Q==%t?9vSbwhX`%eI}Bt@*gXU8P8H zF9sO0HuoPaO;>NeV1imo%6-dazv{b2z2Q`!7Dsk2%kl3H~ zXEc5?V&wjMgVN#nLJW-(mBVb*A&?@w`+*Z1E|g0T5sW(DiXql#U`kRZn||jP1|#1% zS`n-M7l0^qqQ-pd*})O)7d?G`dzj_;H@=UrxQ`@lF&XDo&l5At<8yeV{mk>tct zzVx|!6)yl7=D)X!9D)UJ0mcW!xw_R$ef_{1!ty_G-Ku`8w-EoU0K7mSiiiH zqg=OLK~5UiX9yV=$8*z5cx8)8!<^^{`Q<`Ml#jSYkKSiMVoXoN)-B~iSKHi2SSSIL zT-pUNCeN)r-FLL$dUL($Wb-YW6rWJCkR(Hls1|0MVVvvnPC3M2T2>BmzcFFqQf_%w z@YYMoqgunm{(g$v<_ra`>#B$-6nnQzdhERCL3x&&@^<%lZn}1pL&1`0@3!0~^>B%6{g@1f~AAdUO z%^Tkl<@nmb6Sb*~s9c}-Vn?&lh9#l(AQ*@B?9GzV+-z*n=*u$7`;F?>Ahz(qlq7}2tM+cvx(@<0Bd^j80Q@GtCnBgh&pOs zNq`{?ATvHhEp*_<Jga)>gwR9SH1>e(!j1DS(iGcR@aWJd+`Wjx$NxPrGbeq0>4W&uRBTSbM9o z3m2b`GH2KEX%f%nsOjjvzvT9=;q+T<%fXKRy1clO=-k0AWo40{Kg91OS4O-tB+W^S zAcyoCdyUTX85`S-FO+@w!UF0t*G&ZAjbF-cPdnC2Ug5^zb|rGqU=eft;w-~`x;y&B zT$g7nfAlu1^{QtDr#{Cybg`A}#h}w7GV$bSxGhQ-y7GyW@mqgulu;28{`~L#N;knxhT=thej8J$G;)DhH(+ikPD-l%SxQ$R0!2AOM z5wD97eiE24)`GW>Csd0r=W|BHzjNhf7E+?{mFK4so6|w!jw8DF<#uCn1)S{?8^_W+ zFH*^P6n(*R`FAkDh2ZsGBpXh<+03#thg9;kw;r%ZjHXh)T)kRh8#%!IN-*q6D_sgL z$O3&ZP7MjsEA<=3-gZDPLa1y<#J%UaDgc?&&G=riD$2f4dmo(;n|}l8hBPN(B;++f zK@D$H^a7_UE0+4{D|}^aeBz)1f1Z?X&iWYfsxSX{A1)4vEyG9N#+2GJeI?&%6I2R? zb5`rDx)de6A@j{N9dKPfls+ z)PnR9Jn$zH^TkXSHo?XMiw8%pHg8C{0+K{0$i%~`vy+lBwfma6?vY+(1bAqMT#yQIt9JODq7 z%{=l8`~W%ilC4u-_u?Kdx$7W~we`(THe)zHk*TL|%@iR*IR|+B;^!ckH1YdH(L>jfV_XE&tlw_}%^x5JDSCko0JL28NnLFFHqeqy-C57MTW|2?C zmvbL@42>$yC7w;L7m-Y^ZAH0W9XQ}k!@6idJoc&t79<6ZOV80GPMf)WQw~Oz0SM6o zs?^Iiei}MIx!@lmoFt+Rp+AqzETnDxYHFV1Q`5=5zhXnud{62!NJV8dEy?>vLiklu*xCr@!+xQuARO71Y1oSx|_@W z-obaO8XvK2CeZ7z%oifq*`<#l>rX1OB)(f*j)Q%tIa>Qm5odhm=>{bv*R71H|LFF% zoN-k3*)Nk~*!x1(Tq&-LfGIK?cK=>V;5&9U+zRTO05G8X!_88Fj0P`*;2Xv?r9rF}cdurH6^&3<+-pWo?ez68s#{4+>W;I$GV z6lW?n3~n4CvPfSaPMI!P!Blj;PhUJ!w|@smV^6dS*JNBl!6GD2GFAHRhYN$RJQyzU0o<*SI5t){R#?ykOAaKxw?c_Hq7@AsDj}Cb zMdZ`39(4jdc3p$EqrltDy+zq(Akxs(FXpjh7(3@>k1yPwQEIXGp`;?HN0+f+PeJxU zit|kgGgnoRo?5)pw%}3;HgfU@KIl%HPO+EH>A_7AM-9Ykc6z?RXAEC4zZ_B%QZ$Q3*kTZzAPPU#BD0Q>4v2i%&W4a`*ofm03-jh+b z_e(kT590%0ArwJ0O-HdE@EUT}Y!*n!K(9@=0j^R*J7{T%xY$IEBaq03Y*p76Vua=$b z_16}aO{E;8``lAvFcMKXS+rU2qAzGA4ElZQhfCM_KFzq7+eC#N2t$F`MyDNt4pgB& zjzW^+Qzb3D@qhMqxIL%<&2;1sX{)TA7N+rYAjRC<7W&UkK0kfkmOiNNGU4)_fVg8M z2}TvUc|%B3V3b!Lo&+(z)&d#hq&ZSiv*xcQ@n&=pfv_Ig-@N5Ah=EXCpp{RdSk%rK zFu93I>mRdxDU{^BF7o-Vx2`hY`g$N?v=zJ>)v!a47e-YBa|tIRh+=A;SMr(JO=eeIPHKKIKP>3C*SWBx>xXtVA!gA;-^q*u$1Q<#e$A_PO?pa9=jwrQe~o;i(~# zh(#Cu<^|brDdiErhTd@i>LL@6%qD@5%Pg|mlR&g&X>?=a6f7`h+Mjv1CY@|FtZ<_t0ZYLOEV@ zDmi$SgPXpx|IacE57^{e4-q@s<{0O2dw{1f)uVn=#ZMFCy(tK`P*#lLa)~hL83f*o zy8b@Xk@CS)B{jx5Sy?0|v1UJbhMwA%azvz(jm-|PjxLyaExPpdJRbGwIxT=bJKXjOvj+ zs_ZYZox6I|iF^>58|)QxtF0GLYuV?xN&-J1;hr`gV0XAq7N=(OLEX}j)M5s`i z7HV%n+VmBYr+zh?jTitNOSsT~5F*v8P(Qt2@lx?Y<~|p=<#rqkokuw9jY=DN{CKW9 zHcHGQ_-f>^rY1^+ugUb1a(q$C8>m`Fg~7>Oz?VG3up^~xtszzq_bvSxD)u0`(Wkk0 zVZou-3cXdn#HUtr{eOHS_mo0UPM-Fu6x`;J5##SWbr3{K(2b|@S*^MZUF}#-{mcI; z{=70;=k7vE7e>dZSp%_b1^*-iHRRh8ZP-tFD?;a)otjC4*Ka4{?`Rc2!V_<1?q3+o;i7# z5zrQPtaT)Y+g6{WU!hYA*=PS$*>{uFJLs~DV*G zlafAsrj8KUPoQ+@3&^5xd>cDL2 zF|vgmBI$>@sW(T^Er$&bz-%nYxkmrTy+0u>vyk5|U^7zhg7{Duk~+xRZffh7BS)@7 zhN~SrVVY8AKsc%r@rv=B&=G8wfNC0E_$DVBv&+#luM7A^Ue$*)6xb3!O7+B@;`wBC z2=FBHGn&25^B%jHcQVTHzI8}T;D?@8U*Z+kKwbJn{xTw-Juw-NWH`3kF|U-_13OGvivehs z(ym%`yWIHQUs3A6n0$Wo+`zICRa4SuCLTQ?=J}`)E?a=T-IOH=m>Z=&8BHC%eFNo> zc#16ihQ9Iq+3EjwX->^xiolb!!|{*19D^I(zj=CU#%hVgpMYk%dbnPfrsOB6pFt;S zQUdFUn-a+}CEz7Wa$+<&n73>xph8cx>KeDms()Igmp0K9@P7I}X&&=4zfMA?{1UUS z%Z2p*0cFlb6s@viT`#=*7#xWpZzA(ic(_hQQ)rWm`T59h!NuqE<6UT{jscMCw--so zrD$GoI8fXO#YakIDOg!LqsfRmd**6|{Wx|T7tWoro>zBxlbkJtYpBcAL z(rM`6Mg0t;=skAAR(i;xcIt;U6f0gCSbGKp#by&?Jfl4iY zn;j%3CYI7Rtmbt#w8dwsGo^y)uJvXIve8QZ1PPrt3uBC)TbFCP8?^tHOsO>(8%i0+38 zv1EOYNY6jsUvoa+4*&S3BweMCn@04he9-KI)h)}VJSbPGUBog*n7D5!z<>*TP`rl7 zXTd2Zu`*9`y8xlj|3F|7J+-)#E)FT4TbB>Hs$Z^wLh@P;v)f$HR|;U>j;}Hmak%8* zjd?q-wHugMQrSVn54=QAXBABwp4%Z<3#ScCRcvupmH>7Q+V zN+EkerX{}zGktym0S*n#a)By%@F7Bak!nUl?28Uj8uN11Hi;?K6pE<;JO-phWdP@fvPA1~IuuKTgn=$2Qt#e@H3cwX$6;k^R+T6d}wAoqAKqSK&bkA#oxx!Ef4;b1T;&t12 zpN{o4_Ve>wL-2bEA+!kO4d&`*L7E6ssl_jv$H#|dfZ}T6$^j-W#BYr2Dada z>Z%(Vx_*s`BWSZk$<2*iO4HBs$mZE1<86G$HyLb#>Fki9Ex!a6f=T|zHFQP3_{Oy1 zMi3%yHb~mLx?*nU{Jx`WIa@O7J*+j3X~&T?q+Gnn4u zwc$n2>uxNBgs8th1jeXtqkTI9fxgy87LW5+C{O|#UrRxh``3^zj1Y94RZ)y zbue@x3mOhvBNpOfjTYDh)d;sN$^Mm(QpM!C9YSIWSg}G?Khu6iw+?n;YOPqsK+g#AC($#+W!M%9%C&+ z4uRb;n1powSftM7;cI~HAU&iBqXld$ayu076LGbClNB#gh7=Lo?%{O45>n)d~~%-Jo( zp&xna5o(@4kcsLV40%LJ?7Dvt{a^@jz#^F7|K#WS9Y8HHKO6&TE$Y?$?wo#@hJu14 zbAKFl+rOotAhh`$bE`shHP34Tb#m?;it_sjkL@IpA`(<=+~??%t;a&Paaka;tfZ7s zq!Zgbp{}VLNqtIZWRX1G+`=o_fN>>4#=*n~1bq(E5}iyLrw&JP9P53#YHJGW=i-1~ zub_Xb>+&&=A+J()(%Dt&5?)0UyW%iQ zqaF%r%Pr@+WkiO6Uwyo_^oe}aSkr8iuZJrWr&4=&7EJ?pduUKjSPfS=GNu1panTm6wxcr91)xouHBt1cMS28@qUVKeZZ=EHa(3P&`wX<*s?Ddv_zbjL7%k z0sf@Rl_dzww9pS?J2LG1<@1=oG50(e`rz$?P^yKijvvEuv)nEW&bcQj0-HT~u=s#- za0^8o(m+y|Q^x8_y3?73jCRc0qrkp=kYwc|PGc2;#>$K~yy0 zRX1RZUS9sFpkp2I{T7^0gXz#?@Lxby2vQ%Qc4u=s2 zl^ve-KoAyYf$7BJW&--7~uyy9Gp^O&KJ90w}^;O_}XtxO%`b9sFK)7%Y`iZe8Q~u3ml~= zmZWw&ep+S|JB;pKA1PS4KtQwB{~r@O0m)N2C-l|pL`T%IRJjydVqaJZ{Ur{b$}N^A!v3y40yjt?{8XPxCM03NeEc zS~+30Y&eqS(LdQ10@Q%&4$muc>6h5l5Q~MgJ<1kX#*|TPOIR`{UtU2o&wXI3PnjMk zO)wWPugYty)C8RztpU2`gnP~UaX#&uPu4Or1S|ng25cUBaH-#Rg4Q)j?CzbT&r#I%%3t%+BF~_A9o8W=HMQhFZz*Y5ks)@PO2r^p zS=I5d;@IL`iS}^Kam~YqC4N1|Hi^xC>HykqMWvaH)ejo!_-*3h+L-jdws3uGBqzJOWYTfisag>B zac_?+4OU-N9h7C4Spa>*(gV!s3KMj&Kd|MR5bk0U_+|e2BnG^aU+^*N5}STJ-a0!m zsm=1=g8sGO=UaDoH(BV%9cAq^`zB>qlyDWOzH_u3v-s=1ctNVzs+nuTUV~!YhzJOx zT{{O^rY}8j@ZBi39iMKy+VT=Dy$9}^msco-vv&yPc|u@$)}cR!ZoND7y6zXWCGLBt zT=9~?{XSxSb|RDaHwNLP7rzy@HsN96vKo?!N#C9*4^F0On+rH zlR=qg2iMm%3@k{|<(eTlg@4^Z8Sfy3U7_8S$y0WrUdt>*a#E`!3t30)C_N#X%QqSx z4%VHyTzUqS_*Tr@MNKU*OLL~>@jySy(2oqwi5~aH-Emri6Mc&70V4dutM#gWl$kJ; zZiLwqzbb=yWrExLKMFF#MJ0YtPp)at5Tv;qV{N`#o<((3JGf1l2PnPfOU9&$o+hE) zUi@Z5613-f;b|kjK~~Fx7lJm$E>8Dsx?npE#WysY-R=yI-nFxxwX|Q5dLF*vT!MLD zT`c+*xy~izcRq?u6X@@SZf_B_x>ke>y6rljb|UTCuMar5CapQVK3_Ne?CpuEh=^ok zoxGp<>~r{@k}IX`exsD%`5D0!mTo3cto|F1TW(niR}PY#A>F0;(Qm!B=}sj;&b%XO zl&nF1zG*x>;igcXc!v}NO9Tl(0oiykzGSsfKcpHTZbTM6?~to>#yr6!)AOF>a$M2U zaky+5voHrB8%u=^QcA0op91*Z?Oz7)2FIL!$?;$JHRL?~vJw{-bH2RWI328tYyl#o zHg~$c``kV<)P~H)-q8HLqjl%j#5hSzykBnv$t2LGWA}zi?XT;q7-M`nlPJi@5&6pz zwDfwkVL4e@!}0kuV_s;e8M0#Ym`4;)96Og7B`Jc7x78~H{){oQmLd4Li++@aMs3Kop=Lmw6aZquqM*^V`zAxCn0OXM9snRvT(Np8l z0-!kUXlrCVYQ_Mibq#T)`(rM;a7ttd+hGc>)cRt)rvj(^jdodJjf<3O{b`99M+^S0Kg4V>`JFMl_QIPTHUoFv$I#Ro2zvohP zK(>A}?)3ijhqg1QStYE6MYMMxVzY6**dw6G82OJvL%-C8u(bO*$(4JIwG~WIa|BYf z&+v=DGn~Oc%6ZHHLYo&SnIgjpS#{hl7|}d{cV^w5AD5GVDH5UZi~WZJf=elMDh~-{ zYrRO5Ogt_(lr$NQi=I5k6$R3mFuDCe> z(s8j28xkibWtHl5e*lO;bwJEDPGfe-x_@T{b9>~vaO&HjeKac8%+++z(*jM<34bOC znw#S4<_iAJZ0#sQ%dkgcFMc)4z=SY3)VS4`E*9Ql-SN2-$coMEEyIJzwS_pz!JVuu zmdo>5I4JiL80k>gzaey03JGTg5YGk~i|I@=;6}!0r(!2&AK|TlvB)+z$9M_<0s`HN zltGxdb+`pik@X&RC7>xJ)3=*tzm1L6bnU+l zQ8r5@j~#M7GlNsbr*lv!EA4s2)CL>ITVU%0O>|k=YN3CnPtzBBXPicP=7j&CyT1CV zxd@&L!Iv>^yFOyd7Q{0QH!6dQgA3CtmJHF;HS+)aSacav;9nNeMY4jXhw5VFTFLKG zIH+^@l#+*`w?XnT(Gq?Hqv41rUoL;mN90+$t=!M=GuT?H-*fX=rx|5x--4tjbtvO3 zQK;rDzP0Ur#`jax0;;ttQ~|(b?_2(E=FWq+Wcf2TRR-^uiK_RKtUZjX&!1Eh=4-?k zk@YtXE$1HiJ{k63Ud_#%oF{F~j48ems6-IJ0yLUNvS}fmdZ&%9c`;f*rrWh#lky2x&u%RkTMFC8UH`?#OZEG@p<&;`f6LIs&Kx+9#Co!vz5 z2>qJ;o=S?k;RK)kr{a4p!~ZNE*T@SkCP+?=wu!&dnUFJqDWJk;LksI?9Hi-*jz`a3 zJ}9rxsfk_49DGc9i5nrk49*3e*}XLM2PS0xcxGIERx6>@S1L*qD=o0(feF#FEFy$eMC#ak~m@1S>Z`=uQ`Wm@<_6tN;DgIB7t^*8m%})Gw?D^g}&P<32 z_iuFd;sDaC_z=DAl)+JP>v(t3$J5QWZRF)KfM!=Ana7@$=x)pFT+T5i^S%>b$aIf; z-vb)9rKQZOk``JDwx)7X-pm+vI?5EM7Q153p=q{VMeRNaMon{p^<8lE=5+D)IWtIq zkq(FvZbY3sAV;LkAt5YM-AtV66dfQaG4|aU#Z3g}7=}Ffvisb|(dD*8fISu$4(#+0 z+vW-g3t{gS(&y^_(@CkFy9;@PoAoqJ)AC!H8TnWLU9Wg1GeN)wZ<@Fdj=1NUWzS!C zJe<0#xG+H`JtC;>a0v~)b*JhGG44oc#PYN=mO?jO?fHd8cFc%&F9Ko_?6`YcbYfC-~9a*3qrC#=f3kB#Yb z4EV<40&HT^xTl=zNaMu+SxRICxw1b8VW1=!n>q%gFcJSfU2a8!P6x~8`@a|WH7o*~ zgk1i6W_Jo)45GsWE$keo=X{EhnzA!rF$4chSdF_-&_W%VXf_UE)`9~Mhs5<6D@fj zA-*R;r8CcJ`!47fI4 zyBmd9=6^NB)faDlDB2_{SYaveO#BlaHIaTNAsWUuDy(Ys76G(Mzw=c=qq?*uMHW;h%%@hpgmX^WBMtU!vUUz@w1f+;$u|W^S zKb6JK_cAD~&*ZNc4=di>=2l-@+1aG>ZIXVGCL0ZCht?z&Fx{<$W+g3bGmWWNH2qjdL8xQ3^` zQdRH{-+gS!atDiRf>K|)F^q{*H6`lO3IUcIN$}-ry7M}8bD({BIO9`PtY__f5U0T~ zBUHJ1jHkW5GO*C_{vi4dU2!k@jfpQnPZXM1fI!0z)lAF$@}wXF1w1bL!}U>qWe&3b zGw419x{{4pjD|*LjJTgSKPxx>biVdFqj&jmG9hBX*S+Wsvqo#q5aQUCkzuLzd(WxD|d!o*JWYrgW5AW6_=(#22ZP1rgqMZ z|eL~+W|?It2SGjMG8j@;(no$6`Fi2$Y_Z_FaH+W>QH9TrIWH%BWf z?%VWwXo>#FjfmGshU~(}`WvoE(l<4T^ZOA5gK7gB-!tzOczbs6uQ#24M#{%+MYJAO zK++QfgldGVv^v0gceu<-%@DBziY|US5N%?hnFrdPTA0+0)D^mezz^PWQ<6bVVlP*= z(8%qIxyQD6TV>2CKpznpy1Pn81?7Z-Q|!sw*(ynvy-nW{kaN0uMqjyj;mQ`l9i9op zX#&px6aVfKR5)bJK9ilb{YPicv*}lJCJG~qvzT4%N3Y5x77cw>Wf$)(B@yc~`~PMP z41S->-*WD(b|RfmiL^_7@|xQHzZsl_p*M4IsW5Z*;c%F+=E7(TtqnCk<0_LU)lih= zFBKKu-oR2FwSQ}6Z!<|eA%NIauOb*#$ALnF*s9f7SX?*+(#MDXt;1G>*dr~i-&42i zRzWQpTtn)4GlSFTrt6{Vbg6^%0)_ZyVop|+P3W_75^KK8ijR2n#iaJ4Dd|aV$Vwwr3JZGtCxkMeNb|I%dbJ4^xXdtPMst;IfkIDVtvl@^y(o z++~b{CO}m01I$U`aefYK1fckZC{PQs~B(+aG!{Mb(Ly z-i)m|sJXAPl4(@JgkHPS9W$Ll;bKE3x)LcZPujK? z30pnp=k0IkfvO%pmv3C}nOpWy7_DF86VF3|?9qc73bhq9 znSJ2Qd1h!7|FeE&IG|_DMU6=@S+Ista3U1~G6~2D02hEB0|3l`ivg=ZnCY!|6xb^N z52CG4Xj34|6)(^(NN~)(Hah47;7;(wWj{55_z`#{`FeXc&=BZYf0T_%fAVtX>~d~> z&v!eHDfR|-g?YuYg$opd^F|=vDiA^jXn^}EIDf7fI@rXM%#NUo$b!a2Do?d;K96WS zR}mwGKAoW}N$aersvsKC_}iF5+^DxLQ#U3AsS$IT7)Y5zymTSi6Ie*eQm58Vwiba#iufOL0AcY{c`ASFn5x3qwOba#oAfRvPU zcg+9zyT8wR<`rwrTJwT)u6^zOsqF>>x^w*bpOm_`xFMVSBHWNIj0$tA@h(0;(s$c; z@kS^#-fyP@L@ed9+T0uDHzbdr=*weLwC5T1(d~DNMjB!b4?Hy%aiGUg!42WMXm>l`y*)Kb>JYaE?=%t_KRA|;INP#yR#k0p3fhG1f@{DFHB z*vBbLFswn;(|OH#=#795$ZWd4&z^Lug;EHCPQKZWhAf6+!&A9T-v@(0r|>QU zJz60HS4d|x>eKIRY`8qp;?;HdQ|FU=lG)LGh(|)pL8HUk@E)L^V*!vG^0tf)I}vFT1{_MSK=lxpx`E$)W!z$##_ilRV3YdI|j zkNE$eq2iWskIwo8<}^OzCdI%kVt}L7tR+9L05@lJ=|X&Pa{;FJFG)|W>1vwfTW?>z zK4b7+v%hVtpI{k%Ri*HAkC-%v(T}btgB&y6Mqs?rDa<6b^oxUrI}+b1?hK8QRSalo zhuAs0E6|JKmDrbX2n6L|$;s=|MwcLrWHZ-(u9F)iIyk@#@ARa|c^%ADx{4YjfcP}I za^YC?`fVhMGy4q2k5rGUw5nlwdz)jmwVeKNxzW;{tkx4riEKI;O0QX%YYg0olQT0Y zL>G>vw~fd&2>We`NFu7_)Yo1}OEA+zooTnn90sN?Qtj}P#IQT*y$>wzOUPd$YV z-oC;zM*G07dOU&gY5lhW+iUU7bxG?G+;Zwg_C_k>odU)Jnh^1I+PT+HXg!n*#j-j5 z{@k59lwOBR#~6pyA~{9w=fF?F{@Rc&Wl9&bf-L@q(dg0JYC}3ue_DWwo|#$`N1L1e z)99UiB}bcmP?H}f-JfLqEn(1b+1sq$rl<^pR8!=^gW?a-czhyT+fhwyA4xByQJ>X_ zX5NU&f60-D15;O4W=-#Tnf}~W{)Tvjr$7XCGhS@^LjEHpk#@cOIkv&%mYMD55Q#JV z3l{caV`IarxeW?R1N-DeJA^tM=9V6QP zeDC@oMHXpwyMwnGI?sc~ebPU?D+;MCh61^`P3-EY(S+>X15|3h?@L`sOuSue^5f9a zVGgPcIiSfd88$gk#p6TU4#oqt@u$#jMomm*P1(C>yS!lax`Nlv!+lU zQbTkQ%0XDymAJtYkYoQ)d*~?UcOsz5x!R3uX{Oh{Km2v`+rS}46E_KMQhkM<`j7f@ zDIp6N8W^dCafM{9^tLk^H+LB3<78_Xm>4cR6+|-_WLdkUH%u#$)ElI8z!?6;u@_(k zf$YQQ|L*^lSET!!H|{pZ_s#9ntLM0<n(-_w|!K=KA1$O#}&l}_X4+UjXaHEmarS;Xgmgv?p65#g zya_EdEmU6I%i(>LwImb1f!9Dl3&=PdyM!=CmtNaX!ZBr@*rtAkExa+Dm3GV*COK=_Z?AD7}vim)_QX$=?7{@f{#*Yp99~!!|V}2zc`RL=*ni( z{b?%6@kb+-1pw9?cqF6EVLD>;^XEtPUeRAJL3`)Yfq!RS{D3czTbtwBmxn+&bg+4t z&WUT9^~EPy5(vL54+cZZR(&^*ozidf>jd=lF9=)Q03-({jOj z`+$vUik3r_K&Kb*LOIqr0XMS-nOP#zr^+A)<3K!e+zn26kof%1lYEfl#_JwABR80H z0b(9fp8fPai#nXdq63KQOa+4S!hFUJ>WL2xM(aqzJ)N|+hHD9U{h^huD!b|e2Jh0u z_(bFedSWg*9gx*)rvaJ%ce5rs3w7ONGo*%7KnNMrz zzK5NEbBz7+&FU_fbL4Jx<;ep{+}ZTIPWGqIy2mTJ@XCxaJ9 zPnJA6w1 zZuR<3uQ`r<>u1TmH{mJ*Xstu>tlBAraghJgKSgKmz=wq4B7993dp0w$8=PQ%mRPz0 zjvaA#m`dCkiJ_74W7Ls`H)tW2l(X}dFPS%hW5+XdiWP(`8^K&kddKipQzz4%Vf~|y4m*T@x{d7;r{I8TUMtUf`{Z+|1qmxvouESl@|;jvhNFd za$Sw<$RLmv#6~tfC5N8|(uo2OC{^BQ^eBF%tmn@V_(|o)-nS(vIYFo@A0u@W$5D>* z^N;8FA3;_Vh``3%zIikuxt>>fa&NuYahL zdrb?UUsMFm?5<;ryO-1P7-4t%+5#Nj(?u0$$JwfP_u~!k^pgxZ$V|-<+YpY@C1S@y zWn;Rkz(@b0#aU3WiwXyH)=L?t2nSE^(v>Q2oOD4$w?x(`Parwk3?wFfm;a}AYn&GM z-x`XWBZ$vlZSyw~!J7PfI<4ryPzuHAW;Y3TDC;5UxW&dyF&+sn&s0qcadu)uL3=nMDF0!iA$D$@@M ztHnAhvD@E~x>badzIltD&$ANGK_9no%$bI4x`G!MQFa;wzc#*p%=<+ACN(>N+OI_X z6^f{s*wf2xcei0pA5;9x@)So3VB!HTDOHdToS9nTKXhW^#+5}wcjv(=Fv0*I6ctr{ zZCY7pJIBcQ=j+OjsJ$-$}s^m&=;H5|!EW32!iHwj`T54Cf_ik#h+UFYQHkgTxfHuNgel5=?jXfhhxe8g z_SkD|yQc$yP+bMp;1Z+>3I zp-8R#e)f#Wma^+3jEn6m$d_o_2q~5T`fby?)ErtWUR<6{z*+2*HHfIuFW zcsU1%dFLSd>C2TC*VE(UiVv2VWJTkk!%paUyi=yRNRl1a_ z-;oQ}25-|&FAwZ=$%j#K{ppIMM{)DrTboZMLI1=adVK)rN&3#QGB-}=ND4g1e+%sr zIF99hVth{?!1e*|==-Vr71h}m73?lm&jb|(1YcBEd8F`%%-R4t?#0)^X>A}|1Dw>k zCLv+=MT?Jbp%?n+m48^|#4XS~D|cN?7Ck*-L7rZ^MW}*Sf-VzSSbdD)gHeB+sKSuG zq?^8h%~rtSoGBrs@SM0Z2R$*sOOjG^UOYQ~D)v3s!5m8V1DV>dC(`uPff$c7bu~AL zeM%{(ZDkmHOhFQM!3W|!GBBz$D^}FANmzcTU~tm*_bJ5u_TfbDh57kaojCE36XYxi z(<@OfeCDYOeFr_Br{t^1!og6EXOxD~+$EFgSH4@r%nlgrm& zX})yJTX-<-SvT%aLkEl}WOwAVPxLfIAZ65gwq!+mP4X3 z@#n(W?7k~^vzxy4c|(rVq*QKFMRykX#wZWxS$Wc2ZPM(s=WUJ=)AloGz&AP%y`bL> z@|BFF;%W}4C6DCwc>Q+I13Im?XrHF6m*6CWaQiDE1?Cj5*2F{)0kwyDu|~J1GK~S; z50{qi%iPoI^?dv*7s>q?+nPD}Q9CIOI2E>F_=Y!ZJaL+p2%u#Ft{YGMfK~=nd{5CQ zxMeEntGD#0!A&*LQOzaAR*B_r_A60xL4@Q-b$G$cI?b?{bwdfHJnk_PUX@Rpx^;{F zPCp=ED>})SjkXgf0V7+=fKkQ^9MP!jUq4HHtwTtZb(bQEM@6KkB9pS2{A9j!a2DvP z7ZFE|dWWRIQ;+x(p>qv^*U>9}Y0a!r@YG+dL3L$)H4{0#Rz`;v+DIELDt=(ca+eH# zz2@pPY^V-Nddc?;+7Z}ZL`t$=`wp5CromHO$c)iiBc`?xC+;_gAcFKkc3HbqpHpCQ zP0rL^nXx|xNH#4|2HLbT1z-7(S48g688C7Xz*sHkYFEVnG$NkdX-fs;m|<|CTKk7W zdW1vs-qC{H$lCcrVZ>1hp(u!SX86$5@W2XTWzr@`BEdK!;iJT!y!Y_i0k3D1+-e@pbzo~A#pL0BZYD)+jdYe z7tu$5sIN(QLY4*TTLiT6x(dI1(%YtjFdFECXFBMZADkAg(xo6#d zaP9ijOII$Ha;K6r%5{Km@$2VOoN~&Kmt7sq+LyyG5%G;H6!@Pp)94n|!qdP0Nm#FL ztWjBsDFY7gH~V%prb;J6)6C0~viCJ%FOIXo^VFMI_^nY*Bq9Iq@1F8_VNRH}0T0(% zA92~_*QfG&iWJw*LGib7qy$ao6a&LbLUkM5{kZ{9L>@7a$2`*P;5jrw6I0@gtqlef zy;KO#X`MPZrvhj46_vIbM>zy?I60KI0wa=r-|)8WLE7sPJb|E2Z#{RVz-ka6mO~3f#`20b50Rh*x`fzO zBce+3V(bs$f3$f%iOD6g2%B2(qYOBJ33l^;jVM|wN=eFug25@8E6o@-WXQ=}qI;pI zk3k#2&Te_|M-oFhix`AVd<^&^NgyeaiC1}r3u7quVwUvKri5<;efvL2x{eIwKK!(FC2Dx{UXSVAz?N-qf=gb7o0UhFyIlw+h# z9wkcrt>^J8RS$;bU#3iPuMMjU;6AlUmA0XD(4g8mFV`-=2T5iNIA@#2jvqBtJ`7u9 zO~KxxAOHuijNPBc*xfX}q|VsmMQv_ZdS;0KG&&{)TgjOdUFXC2s=mpjxJ9g;zIF7Z zW5Qpfo`JCB1QP0`?{A^3-=lEhi*FU?5G|lRT;M%OI0ixqt)GFRR7H1$Q+LJsm?EeA zi(!%;B1@l+PNAf-{x=Ehz7F{FLJ&O?E9|DN^!dpVi*2zDCv#5Oq{whI>WESsLXGD>e3>dXjnRj`RuvC!(eH*7*ffz(iXuVwb7aT5 z<*WOA2P)$YB$gq-DG7JxGwx$67HCPT$arM1bQ>bY}_uw2SOYY`J1AY90YSTd-@%txvQb)&d zH6?SKcCluR2ddRlB8t`zRH@Zqw)e)`2hCr*tHhMXcSM(NFKRV2-gV9G>TFeHq;h~b zr4Ia5FH8xZ^{_uJaP3s+Z;hRb_~mt+d<$y8`b!4ye3*#^vYRb)PDc0meC9gZ`JlLF z%fDwN2mh~_re+5z9rFqX4Gs(;Q}d$K`~=+R>@M?i=+x0MlOGJ?TML`x4ncb(B$X*+ zs1VVgY*C{f<0G;fJAPBfs#;V;9_w@rrkSxKBbuNoULCjvxG9V1?FyErgz>w?_o@xx zk1VU2_aNz5-q%Dc3BgHlA%2}$;}eG&pb)?0vQZ}b0JsZUBo7UTemF2hs``WbHZk9b zIs&p37s=WEZUA z#s@7$OZ$a!w!5CFvfK$ahsLK*!_V%Ri(CnaiyPamjhV;Cd({P2bAj zo8p7m#(yu<#HNbbel|@<2-F>;;(QO$;!N>eIk!vZL4VWQmH>i7q((%u<6jo6rJ|sq z_}$^&xN_W9`#2?f>g4Pk_^@Bz{V-p*=66`5TXnr(o-giyg8}mEG-;m~el03~oI7F6 z7{1$R4y5AuB7ydsTd-W#+PZ=RgM&?xN!EP#a$Q;;XXL1Ib8d9MxAk2rB%M&*{7S?lQRS$b+q; zrQyk^dW#U5jT(2sFEdp#-5jKS5L}=@;dXF&dUNW zBA^15?B>bpu8%9%Y%QKUV+$8ZCI8n3MRF5%N4f6w{~0}+;!hRU`xRT$0Z(^$J5GO| zTKL&Gag>ZeB=H*xXTmpjr`j*75P6~voCmcWDoePeB-Wb`7 zfTP1yP48sWX-1Anek&ksQ_?57kV|sp&h#%tgKXDT6Lc0B8VW*2Ck=TMPYu@BJQG;2 zlO8Y=(%uO!oaJ6Vev>}QOvxmLQquKSdGa1o-oGtrLg@2HN8()qj3xzh>v|=bIJ48I}KZlPp_o zzS6WeESJ2Lp{W=GiROkgHc@tillN-5HEH*J+?@>b_dZ?i^6(dX1-mMj2)sMnyt!$1 zUIG0$_If=nDk8GHzTOQu6z=cuPlImT4JVt~AMdU*dA*tFm1;s$gi(s)$+{>>L11+F zvG()PA4*A2uMg=NSlF%%h5dD$009uzZV!r*^^-<^xu}u={Iy(PD*sI zon;RMdiz>*iz}|Nqura!ZV=M00yJ&;?$az@Ok(x8?uC*->X=BzNH3E1BnUlrBEi-Y zD)y0cCsG&D6m@;56Kx8UNF~nJ|D9oHANnbUeCF2ku-_CEOf@Mw^P3B0z)PSvr8}-{ zs&XypJLtsU3T87392*?)dafj{bI4C$Su|hf);~GdDO}~+<4z4?WE4w)z0!(S?=ybQ z@CKaJhO}9cqUoo+%C4mdhBH9x5ti-FRz1ld97&v>%}xEB5Myd<-p*o|iUhO1C!sg* zr8^B?&Tv>A5tDS21bc7ODpT^0mAb|%DMSxltt!_fr+O=%B&>HMb7)N~ z*_ChD(CE(=Iy6K6cBB+}X<3wh;$0rzU5+cbQP(y3vT-SsC4stP8TMl2wWp(n_H%#o zT}kx(1nNE%oT%{J(p$(<0aGYJMCZ-n^DI-vX5{vDNCj|k_g4Xf$XdZx za?>EFh0sUsOV&mBOi|D4?Ib7a`p$s?<3Sp<#3rH0H;jqaL?0OFND1Yuk4V~&cVu&M z-i?A0Tkl>Rs>QhtVL6;>(@UJwOU4&p^)Vp)uL^o72nfDQe4@+cb|B$9f~Jt9WKmy9 z(WQmEb3mBjf6ThZ;)v(Qj1Hg_fG|S%vTa(>Q_`mImHUcy8f%nxKho_4&t4_#X+|>a z|CQJ)GH`wMyTfyDYPDrO$R9|UyW5OhtTpz(UG)yWNX{P_xZm2^VpPi$3%GOh_P#}t zxRWZM&79tgr;^B1W{7|F+M&rX$3x;Q|J7^M?`lNUA%D%_2;hz47Haxe0Ef5#VNJ`> z);VK-z`M)cNx-Ii2sla;?XyyT0&dvT0*|-ukU2(D(IH~WKCd3 z(x?H;rvz@7$R!*}SYHe3*I|K7Kc18yv;MELv%2qU3hGrD7+VLN@SH%Yuj**w{*`wx zPyhJv12*REfbnj{QD+^`%ymLeZND(NK7DzTT(FP`K?dYlN*&(It z45!}`Pt*iqIu#myMwsSOio}WVz82I8G2;X7icCm`JSg>Cod{te*vNgJ2q63r^|9t= z{TgJ_&+86TbTU%YBz8ulmTbPf!j!Z(dU%xY=pG1Vmrkbs6?wo7*acXUBg{!6%vS_T z-+O!Ofw?o4gYL&oUw|t8TrBZW46qYxtsW>KaoCdwbVT&D<8p}Hm5(fL#*Qz4nlahE zF1YOnp*k)TB7q&3C2Tnk_}N7h|6>4hPSG51P@d((*xH@UjuLtWyfr~jFOR3eheqqm zD=YqI8*m^BO3KVKKuX^!>V3jB#KFO_TPx~e(?0`o6hjy2o(nm%pB&0!K4 z+g&3@RVu}6>ZB!$WADtl6CcxldV(0Y+a>pMWxmu+sB!-=RTVFZ6?t!nYN@OCsg<>= zJ=YNp-tmRXx$1v?xh1Rn!cCK;j0--w6XwbP4a#WkOL4*OnYMCcdM-7c(JI}EMU!jD zhP02!Ty1=%T#Bw=&gUCII{R3bT!B1Q;>eB>+%H9?Rqf7Shs^3Oax1wT=|~6JDlvPS2TT}=lecH1fVYPkbx56aJypnWlnwR5o z^4Jx?ky!}1ZGg2459Jq7!0?`C?d;hiTYS9#9uJ(4Q)Kfb$7@3Se*0odT51DozW3CU zwtPgt{wB87ai>Pc;R(VhQ*Wc`p+LEzXT8{%C1#WvUW0h?s@P*R+*&Wfj+(M>?K`9F zJ8{#r$(o=Sn#47AL?I=+;q~ zhn)HoNU#G13Q>^3EuM+|9X>GNJqt_0L<^T`q5gn_fQ!bTOpF4i{t!|gx;6Uro$FV^ z=hbn_>w90=QsdUrghm~dnF~1rE<%bVj4A(=Uaaulx@AO#zVy)u(*!OG1B5(J^;!3Y zxUnnABWXL5``jq{*O(VrB9Uq+YM+@tLQ02ShQK_DS{-jQQ4OhmTK=6v^4X(7bsjn>$3viuPWq6|c`ZMEjv@i8(o5@_a3Vb`Yd zpFba5`&G?rI`DItTHL9s%yxJklkGi)VT=2~o^PF3*4Ee84_v$rDXn{?M(PGL>f0N= zkC&Um!VpGz<_@ocV24hV_*~OKD+Btk-QCl|u(N(_;BfzT5&)Juw6qz;$zC?BF`dV5 zE=uQ7k+!HKfD8yE?7-_k;AzfG)(?k{ zPSsi5I2^w217c6UNS}k6{LEPf93*&!R z_hWx{_~Nop3hY6aVVM;Yp(_}qf8GA>P^YYndZ=&h#OcMMRn zr>a8Dt3NfHv{k>j2T+%+L6YzyG*-n)r;NIAU)%O%qf%g)V$Zo`0GmAhfleN13ENjs{@wFlUJDM*L&@fR=YlkQWd697@LZN`UiNA^!B2+KqfR5H_kk*=OD`%1 zuaa5Rb!COIO}GEfic&kzE2DsbbKcymbN`VeDD}o)L=~9W1f1z_@=bT=YMl1YSY8P? z8yFgJe5W8v_`JdBsvxByk2N}d!OA?>#$v2?MQC|bp{4I`+ju`Sb7@j{Dg=0b3E`br zDi<9WYmX@?-U8!kMNJ|Bn#qg(CIJq7&gK65gSOheR{J^D^zb)I1`@5gUCNBg^k7Bn zDFx^^YaiI9#55y_`QCggxBMkllf{E~{>dA4HzISjUe2g5i|JFxM@g{egBhvc)f`6r znVxv&*(MhV0zw8IzmHWd?`V5dnVdFwpG*rfdXb*cWss-7okq^J+>D6=-Qp=iL;2em zT$)yn1*l6_U4S|LS2KJ4#kRlR<(2igAX%K?dVmMe6KsGc=wcNwU$Ic)vrZ2LI_MkuFv}MNbUl%Bl9Vc51*h!rP4zH0*W6^8BrYC09 zO8fLvdn8t?M1L$({QPllu|-zgry@|%p+~KTQX%fFlgqxo5+0ee$2=-@=HOdL0~&M` z>~gZ7{2=%pGFo}}&f)`{PFG$Q%PS=oPTw~9dCWhhvZ@ZGrj_XF59S$l1w(JbaSFk1 zx^UqXIH(NIBZ)~@68xE+u?|Y9s`A>{)CZ2Gx-1DFOMGMY(#Q}(xD0WeV@j~NO8%B4 z&mSuCf37?J_}@)_jMV$OvcyF9OTk25A12p=t~X4+5~{7g?zUm`ur;uhwQXw2ge)1E{BfLwMg! z=thha3@`JIt!l>Zdo3~I(^PK1VNID!W4gMbZo9Ds)#ZJMZX>pfxX*EubU)Y66S|Ky z%;7m!Nkv8MIWdh1IfyWld(o1e5@JsTws`A=q;2%p5+;@fY!F^QW^%POj;=+W`KL?< z^!aiP2sQ_&ROlF5NZ-Vc)lL0!(uYekp@GsTPF{@WrZ?Q45=nzaDHTJOhLK(TO2R`@V6KU>;Sw} z24&{LT(s$wui)fsbX%PLg(zMCdBE({)D)m~SPcsc%K^#a72JxQo^K6z!=6ut_n=W( z#sIrFZ9DERkH;;K=LNkF!-0aOnE5ei%i+zmVt!-~b|s^01-X3*V0_z{y<_@}mG|kI`Hbs0y$~yYL30or7dv^|k~oO-YX=`OWxlq^25z>Clv`vIbUWEvV={ z9wR41-J9%Y=>O*Uq0p(@k;bQeo|J-*k3EXw=OXW=|Mm7a2WpFYkAzV9_j2Km6K$+X zwJg~a{Q0FnYm!o10%Fjpm}!rQl+?5eGifkauaeP1JJ&XVn|{+xEK|8};1U7`g?PBX z`&qT<*y6HUlEUWefAPw;bpU~S!}n$1zHa5X%N=G?qickQn!tpCyD}CrP2;g?jv9>f zT_(3L$diJWC4Dd%Z^$|1t1MqDV}F`i|t2bL1Q-cSZwBLjXWW>^Fj zEj%RpYMADfsj1LHZJ3hr?=8ZVa0sTP5xa-KC^IZuluO|=g2CvaQrB=mJ{KvR;ZlCA z#!eNcGl@-&ZnyhZ#I_3>u%jtULMBX-d;a|rTyt|Xa6zc5szwwS+LMIThpMs7RxTa_ zb3jUEU!|gq@+*X*Qsm0YaQiGEO{L8Kp({8bz=@585RB6?2WNtV&F&KG!7&3%$Qjc& z+EuhbpzJzkiw8W<(WcnFBxrfH`R5WZ^tla%V$ znuD=JLaJd^p4Dzv#&BqC)1$DP?^Kp^Mkn+9`?4blW+Cn!xQ@OA#o-2jIQN+l7R1=P zyPIg3uxT{Uia>nPOw20DkgD?*&r}9BH9M~e6oq`TkRo|fS3pj~jv7m}%H$!nz~9`# z!4=|sgGMEN*Z{AsQy9Z9)iZZw8GVsmM%sltlwqGmeU^nLhle*WETdT@&(N7pr^f0o zE>01%&j%_1Aya>wHNO@q(a}qJPoOixeZ1ys0(c&jJzy|iohbMuza*7@Dtoxc6HUFg(>U^HF?pbEl)at*PK1D5Ioef4!E zmbos25z$YptOo1&*@yzH@NX}i?yWgEd6E@&ilVOrb=0Kd5UULsngUMgY!i)>hukLX zdHU)3$mK0 zHhmeV&Cc@)cG70Hp&Gcw;KweU*S@=N#R;x`nRhtoNo3#mT|58xsRx$29*&8F zqW_SRQe-JJWusXf8?Z$s6n^6=kdyh=E|;N{2{;e_$EmN}WvQ5S z=(S;aQ~{9Tw@$np9!3;G?q7X=N7JLnZwp6QN;Hx6S`~LrE8p@d^%=08v!Dyc`5MU~ zDMzx2Bc|%g_hQjSe2Ch36yL*h*i|SZzeid09NuyVGb{QmHz=<(E6*mKhX6g8fo_e> z_>)vWm#P}D^%7_`jLPi6p<^Z@rE=k-9@Ccr5|D6p#Wd8@uM=FIB|ubSZunPby366h z81Pp=t5Qk$>M^g>el05!*(frlxhCDJQMyBlt93r+((p?z+(fuCv$oM6Z_Hm_ig;s( z1BA9gP-KuH`+|#Ylf&ry$BSWtunR&11I=PA$9Wc95NImwKHz0#{pDtVwmesLkMrdZ zr%0}9)VNaB;^9A}q5FRF-;BXJhk_;AvLysyK`+C>Pjb+asj1I#Aw-M<-X;x_JkM6w^33fb`3M+GY%X8V(L{b2H1bVe8}0o)o{^2*Z|m0+2~P za3~ZKLpRm@Lr|9wWLQJQ7M%K8tJCfPU8U52%>FWGEI#%5DG7egpnp5&hO>e=CKVE} zZ$u)41J9&$zb>CNBm-@UO?)>dn0X#D(C0l`U;HjF#Whu1^Th!{lve;dI(tB0Hn{Xr zn-f=@fqK6s<@u{n?v$#kpIW{+6-Gp3=9bXsZ8QY>5y~N#ow_n#>VDA5$|||w&FxLI zQ4ND7TL3Op5~l!%Q0!;5YMx5JC+c(6W^(1JVD~to#?7#ZaCDxj$`cB|mO1U`D-n|~ z0?zmU(`ev%H`5IsAb0L5u7D^}|4DAD98)g>b$@A8b4%I0W2nv=iQe&?Pun>lw0gH_ ziiT$;j>Af>CR(seo+x_X$1mthovO_!rjP=&Jl6xTxG)7e<6VaF_h#$2{g>#>gXofA zR0(W$TtI{b&dI;UoXwbC4TAMGKp(OaRyHq2=|najd#!k0zdnu|#)p0}Cuz!BJ#HqC z^TR=$tpMs8h3$!N9!`#?&5CaOs)K;hwcjk)1oVPd-m+-=!@XuPI6=kYt5hVTGM;Vh zQZxG?h|VuNTxLEWGwdT58wm76n{sj9MFBBXf+XY+$Qoh6Q@UTD$gJdHv~o}kDy56( zNpNq#PANAT6_Zpzz7Cl7T=i;y1_Xvawzhjf?w@ba(65)57htwc+N6+i;v)mzz?PQg zW}tZi7zXk0e^Ela#s1=XzI)BN(R*@o0t8^u;i^{~MGylBWHNEgyu&xc8t?VM+o3q} zy}iBsfQ!-JxsRc0Avg(*2(slxgJ$I^V`Iq7D!2_Kgk9&=S=ql1b;(QUFjX&R-Yu$! ze+z%8c5$0e45?f_Rl0gz(6RFb%ilD?rY&`M*`=@Zn!qhNM}ACV-%$=Jxo$?2g>C*;EWB_DxV z`GAr0X?Aw4(Uy^zcx(Utu8_x~XBZ^vV@`5+TkT=n$$JsXIN9fy!6wIc6cix5aXooF z0fz(;f~czrNzg+zIGjsU_Opl{fH{1Ci$03^VDu^RrTnJFPL7^lL^+M(oKO+2?&!?% zQJVKZT^D*&4$J9<=pGccu3F`zOYpy1Hg;(n;PHJKt8jv$`+)vJ(6~yqJJUC_LLWqs zoQwaa&F#7+L6IoMuSz%v%1u|2;8lD8&73FT;eymR>^K)Y8#Oy~%d(FH4=GL-A5=CA z3``}6>R>FoR6Iu3P{X3|GW)wAv#j0se=^Eu?B=Y^dYX?7CmWns-p-+NMN_xc`oH@r zDtefoe@i(G2O82Zo*}_9iZE9$Z=A8)7W#bpNX_2Wp;$cgJ?MD|h&yUuo$Ad?C=7bfo|(?p0#B)QWoJmf!QjA=BOCjE+1wz1tCudO7Su<0HAD2V}L z0~yueQune z28l4rON1k{5Smc=jKA9c$OtT3bGNG1sI0GkM(UrEa@3lLm~2=-+&p{)6-?~ zxerTtf?by(L`R4aMT#p^dH1pvNC7-VrFK~bnr*yiJ;UN^4Mh?oHnkXaMA<>Qw7OKQ zonR|u?u{crR(K^K_&d7aIv|KBX!U zU0*qK4BBdPNSbxiN}S&+)(73<8K9p{A|Bz&ux@~Wm7&bmz-9#$95g7)4{~{j-SHOe zjmJ~FGBRX@gKI+^M4%E86Zel=jR~hiik(;T_C%)wgeX4C(vAvq zsL`L=ihEPqioa3=$PIuKX=!O;OqDn94PnznRY)p9%$Q70)}r}p^Vv-^UFZ3&%12dX zGtJBe>yvHkVacp5MJcj64I+!rQ7?l?s^#z?I1H$M%Q#t__96$m^fan~Q#0UrD%n|= zAKXU;^f@5RJ(L6A6FVUa3}oPHdTt4RY*});sc{WFoGF%DXfUKf{A*c{Z{Wa778mq# znSblo2_RUQ$YFqjCiAl|4o;;*HV!n3Hy<;S7+?v2_*!7H2TkOx5oxHoMKYGcGhLyW+x~_#x zGbz`F!pXytFe-yCdoX&=dUL`iLy^or7xJSRLC6zo*82{z<{F<+2q6rJ%rVG9h)4+L z`0+S&5VkYNjRo_yh-g$eq_uDZlp&Q2vL2N)=QB_ss0Z>DVjre#WM%*+mh}X1u_Ya$LQ(j z=vlRu#f1AsWA+?MUQzfv>b(9^w53G~&+TCo8*r#8*#6V6VT$aFGPZYxpJI#*fzTl014yTe@CqV`p4QJ>AB0K z4k%>rMVw_izLQ`@(k^-m6KnF#Uy4oLUmq?e_xKS#civA9u5zC zO_o}I!m;(o=*p{X0{fn@cHNraYVSP1s?4q!4!umQ~i;-OU+>l5@HF z_m71T4kRN>TsZ^>@660?<}~*<=y7FTW2}8vT=~k>-YOh3!G|-$--gXs zB5PD`W&VHoCtBbzG;8sxyX-_s&rM&e1?B(Hu9%5Z&eM;0eAQy{;c=M3l7R$Fbj4A3PsE!TAiJ)WJFZPVtd+5)6Re&9`scaUlb&yZhdUMxK@ z9@uU^CX}sbe+;3UPDs7cC%ooR)=*=3soJp7y$j_Y%lLU{1%hlH?5wgNp2^aRQ)q&y zdf?4!(q{Hc5;)2eJGy;tlJwi@OYP7*e?WtEZq5ct;*;2L70YJN4Nj|9R{a3Z!@KK} zvY+c8Bx=(L@YJto`R1>l+z7zbfUx18PzeCa0c}HF;IShWpq`kSnK3whFOvNuWx^fQ z)BC1-@z8T+6=2!L{jNqlSM#5bYyle1`{Xyb3h(_-`W$a}_wyy&eBj)5-7GtHox(2C zyD8#_pFdr;iehJD;o@r%mo+<+j)q^%_l&mSJQiZeX*JN5P9Sg6FH!AGAe**HHyphQ z=hoRvv#JYAovvfUyvLLLju}?hFXuhF7jiisrf{UXy+?g^j0?h#MV|O;9r9@a{JZ#4 z7zf@nL*m2wQ4c8y9&tQ_1)lBNO-~C`ZM=vHw_`Yi^BYEs*#=7Skg`J~JSIDsJdii>Fms1T|GWr z1d5mouPkn6I6?MgSqf>&K1>S7C-2lZ@6fOI(By4w-fPh`ho0I)-@M^g@CP#kY@EW@ zbZ`3T!0if)6PYi{U{H-N@aDFg)F}{sP%YP~S}lxKv2E<#=xcWB=kn`Zn=MxZbWIp| zB_fOl6g$Fr1qo#~nQ!2<%c_Vg=b(gMK|8FF!JKr`IzC#ZPBM=8uG8zsjW(XTdAe{< zk#D+TF@LH6dkQ;=O5ho591UGDbLvpQ1XF3yMs8m2dy!Q@7`y5A>-0AG{F7Jz)q0VmJ{zU+Q(&zJ!vbZVb_KhaPH!Xo&4b;5K?j|hq?mixlP+BIpzU(D zaZ9y*cJ<)q@fk3j0epV&3lPfw{&H7^R5;mER~&aQKbFL| z>+G|1_V`aBA1gZYejrIM{fLu5y^bY*MA$AphiXO zi+ei~ts#e!|Kha*H0pe=qaacGtyr*;Ocf$!X(Pd^ISqHnw9E50sZ0e)@JAyWw=>bo zTwR-2L@|o0u6CF7FB9dESq+fcPfUe3NR@BMD0V$~okiSN$sh+;3$N^!+8vC?SujOt zK|yYhB5RIuiZA>Z8fGjQFCGJZ0J6!5KXa-5YwNUSbLH;8R&Bde_HVX$j!#=C2pJ;MSI67S2|A>!PO1}^P)c6$;=>SdT z>2_10=n@zRkL_Nr+q*vgy_&T6Qwv;NK8hJ!2kZyi66{u(H%0B*|V;Yg1i` zFZtj{kyFn5u%7VMEJ#It@nL)hy;@re*hCp4aGaUZD`fRm`|i`jVomYlgDajNr(6Vb zwIW*eN_m0cqPR4kBK10r48IQ)QN#z@bAvQ~X;ypZaY7OHof|dO;c*RG5=zVC!NNe0 z$!qc}$2@gsW#t4YfUN7aI=w3uZVN5765okN$R6-OPG?y{WbWf^%D=BT5dG-tDU>6- z(kM)`jfBt^{tcJeHdU*j?{HPp3r47WIpXulhbE4p>b zO$2}_6sT*v4Y;#fMIeK-Z>7H$P7^T>`~{{CYGobuGch#WPeK1k7I5N^Ww zDXmc}4uIMlZIJJS8QTbEWn^AAH1Gxob1@EM{=kgo8@Tar#soK2ZjS6axo|q^%whO- z)yUCtLJXiHB5%kg=yJd~0;_4*JETvJB9NEq7-ArU2qF{=ZZ6v&;QV+fdL-B5*0g>~ zVgh<`@w->1)q2@94YoqAkE6>O);!DaF|3yG$&%<(Q{Vd;{nkVe(54V&9Vf->X>Ec| z(;=^cs6n>%8bxtG$uNYkVK^TzrnYN)F6RpzjX*q|)DGqY6QWFVygBjcOzyiyiI(IW z06_|*#DhRUx8r%*e$(-ERkaGZrnvyUv7glY0Z@uy|H!q=L6a#P&c);F+1c5_!NL9c z!Rb62|8>w-n+(PD3#N4{5zDT}&1v%y1CbD*lt#sVL$(22^xi;^c)R_r(v$04i+g^Ri>gtShve@EkR zLqs3OePz(4&GMd1BXAd0_L?agi8wbDL)pQwq!mtLE|?}C{NvnaM{3Vo(8Y8+y>y(s zVtW4z?{acq(_jBB3fXcp)u44W@_5`IEd873CTyk=xD?MKbX4(dKMaBllM78X)!Oy! z>b1T}WB`6lM$@ryZOU(KOqbfMR)x;^MY3O$k*nmIQE^{mo##%y{A9W9P(c(>XZrs< z9FtAKvGDqC+NIKe?%0G(W0i)yz{S`L)L~DNYjqZvOO@lkStNb3x12saX(Jc=&xia{ zR+FMl*gB=Z3-pj>1*M4pV#{DHm=1Mb==IFFoyS1AiNAS2-{)OkB9Q-L!So4Sse+P# zXibH?cyWP_}=XI|S5}gR8OE=3b{OwxLhV zq5DL}ziQ;fEE=^9M}?vGf#}J~aDasCtsX_6|b7?{X?m+i;`gJ`J5ZhaqGZl*byVo8bbi7=T7v8(& zuv@lI=b7v4M4(tz$dT~NK-#wk^z{SPF41$l?UCE=UahKa1;-4{CU$)zZXqw0 z+TzCfdxmQImxIG~0}xKTnqJ^RYA>8njJ1f!5kIPat{$)!K}nB(311os)OC}KU1p}Z zJTPH<9JLb!#H|j}fl@M&5b$w9UlqrlQ@MaKlFZD2G{JfP6vto_sDN#jIma954P@vj z1}u+vMi1}r`65zGL3;rg!Uqp{##`!|QOcAtwK_{8sO*V9VuW7dh(M)h@k`R9#q9Ek z17jr4>U9JEJDlU(>`By_af~O=X`x?EI%)k6ml-~9*6CySaXHbXD5YxrDy!yRm%88Z z`W#2IZO^Mi=|ysU6}Hrt?hZ>I!3odsk!;-ky0STjxXkubhSSR7i%fnuPFRG=ycg8I zKV@_`a&v?VqZ8mDEQx~*H3@d@zsxq;0uzm_%xi)1G&$?Z6lIX$$pyXsweyHCiJR6R0 zc=HyV_)|0lA3pG!i^;?;56x37Csf(#9bxFN3shVLDKdXzFO|@~gpSxSJLkq}rFaDNKi90|%>zq@m5T&%af-`fM^roSDlHk`o6clEwQC_{l6 zg-}vb^6|;d+kWLROTKVZTt%v;7*c|aM%38jpektWX}Uu5ek*RlP|aY;-R+CqAxV}6 zW{nOB-s`QQ7kRmC38Xx9W|@VLp!7Uwm&R5rrYoKqr)xptXYaEfLN(L}Z04&II@qNkc=Dja4mDwCnYRS!N`}?5jC8-EdC_fsG z-P=DcUR!WDF5lU3Hai%1F4|Jj;}8EWYmRu(6h@>K{vkHhlrcZ>m9k1mt3RcMX)P5Q zofjqhnErnp8EX`02}%QEd6t~02GxxWfC?-;!HYH?K0p1Ecm4Z@(Yq|ssZA~_43Pjl zHRW1+W2w1#p_=#`x$m3QuV25@!)Y-H;)6j$$GRW2w3P?iap_+s4Q@olJngQ=wtf39 z5A8Kz@%a14l|NH6aTMnK@7|K9#tS7LI33${LOV<=_JFA@6*cX89%QNnH=^{^{M+@%*lNn%T3jkU*Swo z?*ZYH!->Rw{lkGxK<+C-i}NeTpIdexFH?1mBans9ZqGN#ASC9T8S;{O|GF7s?8h#e z_=$k%?V4+3NCEh*6OySa#OsR}TV}-Aefx1m1~98Vys}wL9DfhP1mxvSZgz8Ck{9=n zE3Ujd{E!rHCYm|qBHnHr-Xv9ZZ{*44tz4x-pPiY2r<{YW=nv{KLv5s$d@;P=RvhQ_Wi@pdx>W(N< z=r9~9b179~a=d*MI5{`)+>{qcU`craqwO{B$nrtik80y~yUsg`MEL-m5MlbIRaayn zjz%(X^0wQ5uCakPd*Y4RC0Cz*l%u_1(3|OW+B-E)em1r-Y1~T2lDh12vY~`+bgSvY z)c=Tw$Mhach>0_7t=+Lhj+*Lo!iYfi_?R=+rG9e0YkXMZt?Q&fy-yz>BUeUM7*TRJ z|M5d|LK;U*re@QM_?J*L%T;^XC?c1d?1#|~AQD%uXzbj5>q70F67r6^i zJ+>x_l|oFd_L!mEyhG3M*sOa!j1E$YZlZd?E^AVLvf05x`RtZQ{m<(S=!PL4Z_yRY z43(L`pF8;!4M$4)KxLp4m&>&)($5=hW-|v@5~GzwfLV3h?>_UiY0TrqHS^UOJm^IT zZ!j5|&sxvrL-Qta&^__i*OPkL4w_Yfd)Yn zrDOYgH8U7pm_k(}fhpFJB_Z5IS}qy1uqL9=Mqb8?GlK?GF|C_^2p)#NrvRb*6OFJS z0DtX1%)8z@4`6c!sEb3sFIgw4z%TN!rAFV>VIhu zK>yy@I%B~B7_etncRV;#b`N?^#Rw zW`1QEooD}}dFf}`5ZdWz4|UZ-_RA9X6yCTqdBh&wPIwF zu<*)e`2jc61hMb>F;@b$+!6)r^f#X!@*RnOwUsJ^iZ$LRKYPgz@ySwy0 zseG=62bbNbt$8QC@Q`}(hUHvc2aKrR`~f7!;hPqL2A{hMfYuYo9h+&+0{%(LjlB3F ze}VD1559y#5+wcP0l*-*@3$+zgKpzwv8XT(ye~h@G&Q7H#dQ6y%;e|p<^68N&j-ZW z3r`Ri$IKqgr=jV;2c?7KrcrLh0C{IZChI?i)G(JoWlgJ|tzt*dFO3g|uE^hm@}(OJ z?XqHx96qE7>Kw9wSv-k@JA$iWEA9@Db^#gvkQdB8+M+G4N~W z`TM5wdKAf9b^#>Xth{qycl7&t`|0GuI!#Cn{QGH_ejxLf8HdRH> zhW(Jn+#Y|fFRiMn$%>24lnC?+8z85GL!b$jlsa?AHCHS za>R}4y_ZtRgI)}VOwB>EG7Cj4((9NyV>EKtlzMCsC_ehO8IlVX;Yh3SPYZVWwCZ*^ zDhaG|T(RLapPv7E`q=p6hd6F9xeh`FoqyltoL$$AzvTC>;qM$y=f-oySbug9^l(IQ~*BUqG zb7x`5tK$p3ZFdRb-#_yVMjpr@h{H8hH&_(P5^1BB;&E>T{mTf+ukTLF+j!* zG6d9gzQ}xNc^Q^1CpfA^Pye?{=>ghq>lZ3in_hpXAn6%QsgY|(^%RfKnD8{K|Ejoz zJ5RB{*w!BeG`tov{^3rZS2m-6TCP5XKKP^2{az2KaW=ia-nK`LZC|Bit-Ps|=lMW( zMM>{Nm0G|;&LE*5ZirD3A^EDqjQDTx!` z%dpuABrKto(S+~3PC(Y_b9?%5mOXFLe%|+Z>UpF1wCsHYC`eoj6^Vw)xXZQ23o9!t zPfs0&uz+ab`}aTAd#k)2%brh*o^RJT0ogAq5E>ti`~z(;WuK6WH3g=cj#$k0Q~zRy z=Djh!G-8{wcFy~xo+CH<^k)J}SIQjH>Kf75pNE9u5=IV`B~h9sh2%vI(vU3@Ok*6& zuJY@Fp*l6e-LArkwXO^OM4fE95aOoy8;D`QYPTb@xAHTewc^kS@VQ?Kx*B)eiU2CN z$7)f$J0O@lE!NNl&I6F;2s+igK3oc*_P7;_rq|OIi`d8R9QUJut%BfZ{BH#hL|hJL zh%fatT1Yd=b-(|@*OK{2lk8V>LZr_^QMHa|%lbdydZ^K;jK-1pgJ6uwy|Zqk zTA6d}vRN(9o2b|Q=bl-t1Ve~`1n%BW&F%g4&@^9udV1R1gEovO$Vo zUW5>~nR8s8Zpfu5jEpRarEuhZ0xO8B;Es(CTl5$~24d)1qWLXaOz~IUXQhj2_OBmb z@?L;zufxzK4sI#Hv;{GGbw@oRv`VTz0Rd-0Kf0XXfe_%J5%=ZaD_D2loZD+31#CPk z)?RYhVA$2JRptNUGBG>NSiJGN5PI0Z>A0tHIbAZ25OBMoJoB%pc&BN8*^NrN)amW* z;*z9HAFy|G54iDxi9o0K?&0d~cBkj9{_{!aQ=_+=9ouVmnN4*H&02%LKbaAUANRvb zKDG@eGJ9z1-z}@$3B7zNF%Z(Eh2%VloKI5s_gH!_OIb=gl>s};WDOO!t!lFAwS8oS zugM^=@3D_UB(VXRks=k}DbVl-gUXt-y%qQPAF$LF9r-d1IqOXq3np3l?(LWjI^&+r zyggAT7)}9Z8*+ulqy6kiej=d;1B+kT`>?PowG&HPM3sDgnae{8etOleU;T;*le?+e zI#8`<2*4HN;R^lurqq6YnvdSr;eY4GaYmo~#@rKYHny}!()5(Wmh6y#@A5s{Kx z^}l&{EYUKp!B(;VK4SEzycL1ki$ILUAfz}tQNxO*8}A*v6KFf3JvHT@8m$)rxcLGv zRQ7MjsheJ{r2|uB)K`EPoiE4mm3H?8au@U|<`8jkXbTDr$tjXS5L|gB$fIFSdFfKC zi2{uwAtu_H0}cmS07MMm55t%CC&ev@l1q{WIP(i{sY4|ueADIE`FV|gn}w(1-j-+@am=ijoEz5v$nWUPcr zZQO7m;DN@PyCWpASN{US``qetocHRd#z1Jh-s$P{)2WM#i}#s7sYc@V{Zkx`A^`d4 z6Wjoz=F_#^^YuS?^Pj^Dm^cXCt#oz*7XELCTu;NRPrKpaPZap7h#a!JH&KrXaB@&m z+?swd0hFPKEX*@O?ee{N?8}dO3C@&b{BI^jq?bf*afhO0&>oq0G;q^c=kWR7QC*R& z@a)3Th@rm>6;yaejr`ddtkZw;e$K?jL=qOJMap3z@-$64x`+reWa$IgFxR7z-Auy} zclPhcy%X8-upntjuMJNCv-Q!y@74W%%_^5S;BM=x*S{MQd>}?EvTFXNn%A%1B%l>g zjX>gJN%T36WI`R~lvU%D=XZ71S)DQA+9Us^h+h2`G=2PQ^oh*euH=K)zmw!>(2d^w ze3*y(iobfuAdc6Pu#lDdgvIm6>rq>|u!fwW_oT~Fy$wlewsqo0Ue_-%IKNsBJ{>4< zCsLygMdBwgQBFUbKR!uGZD~WMIdG8PfFn1@UaOb?n(lFtq)VWr1j4_pdBzK&hesBX^3B~}S%ywjZ0-v24G6KI zW)~`grX7Z@B15ZNOr|WugKaj(52SsBTs(uoA(q4e%H&O_Uv*N~vQb{L>B+~o@CuGMTZ$I~?*XwB^nKy2Hl?nsh){u#CNa{5Q# zPJU{9Hym5Q`46A0@_sx7a3k#yT0A?urKY<%?<=lRvrD1J-RHx*b9M>Mb+NSTK_hDE z3A>l(L}k-oiN>+6)EBGvY^RpOXt%LtwpGYrjeD}w?6xMG(7c3%U9_+|sD=By)Jt%$_sklR@e8MPM zttMsPsHCm{sqG+X4wU@=||kX>p6hMWw0$9e6IA!aaMpXzLT8x zWv_oREdMJf^%Lf5=Mt$IpoI)IvcLSR8p7YQK4MdOk^Sj2Y6w-$+sy||*`V!V0*xSE zsj+wOoFpuzJBY|5>C7G3Ut0mXUgd?I6z7|MhrZ2Fe3qXDcOA^9nu5-wfG|lBFr*X& z76QTjo^TlqBPcdLZ!}-JLC=0KGZhDbd_e_rdU|A0og5(e=bbSV-j0#17kpUcxE=^p zjcQNgD^U>&_TB1mk8Bds5Ut+i(xle%9&#Ky12910u@LF_B+?p!dNxM6YAU)1y$_O+-%9F(zQofpIST2JZe1ERLTa$o z>OuR<5}W+ngM+tth#-`Lcvk8|udN=gv{7J~mN%)f#6p%Q(FH8E5WY#u4}O~q9RQNz zp8xzQpDaE-`Q*}iyyZlrlWL@#5&NXEU>K%4F*PYN@>SGOPGIwUK6c7>he$44w#f2` zgqY9!KUMPoQ+;0g^)U(Lvk8`Ap#kw=#~=MsC^QwyLjS0>D<#C4BW|<)5ejZ=+89Z% zS(eG$S6r8dRBx(=`oXH;9pyTqJEQcNolCa~OP;+U{ykg?a^AzsD0rYVetol9*&`oT zBxoRf6`Oy2RVpV`^#Q|=4C1F%VYc|Cb-8lx5U}z9$4oHmYo;s&7BN~FdHAl!@BP839E8Zmd{mYcz|+%6r-*tci8 zs^m^Z;kd=~DHfg0vEKm|i5!d!0nz%*f2wsCFh8PEOwcD!<&|wqrk{GiNN7im7=2fU zP2+pJH!A7N?P z9}TA)fe4z~>K>O{-CC{$K@`ktjT`)R<5podW7S}q(qJ1%G#x(JY2wst8L;(NOu!`K zLzoz(Z4rQf0No6@BjR#UVl91q*D3VsYi2)>B;Ic259FfwHj-QKCdwRWc<<;?w8fuFCzh3WMX#uhpUjVfW%zwff5u^SRLZAu z{1={}zWH!xsdATA`5u@a|yEMR6Xd66$_^{T2z-q<(eWTx_kxR)S!eS0$zcX5x^9Q0H-bR zyVrr3pHyZ&RWX$dLotJY0Ik0T0DS~mrfO>gkT?Jq44Pol$_;^cjbaE%5lJzs54A== z)u#eIApnm3C*mcg;b*h{sd{Tr#ryn55<)5;q^=Bkht&WU)W} z#@?K9kTehr=8vTn>cj+K1I5(_Jso>HW?_TqJYNL#OOh#AQ6>(3tm;_r9^3mo>G|Z@ z{B*fTSFo`Hdl zjpCxu<@B+`?)i3r9TyLj3`S>^$|5Pd;IS~1(g<-3LD zfV$74_ZOdpy}fw(Z@(}z(7QzV@mRZExXd{edIkqz7VU7v8rJ58&Ss>xqsivzHp$89 zNvQ86$w!?Pj?3>A+=Mt0tfz28CSHf zt>v@A;QsU}#Hy^~=K%*|$Oggt6*ZjAgac-TNb(ga35{6RPQCL#$88HW^13(hnRXFGb%te4*1 zdoqqm9-H-Z&oiBWJt_9C+!N&wN4Zx2-Khr$R?mnYNRNi0#dBa$SiJ~%xC7nf0;fy-#8 z>EP{o(j(D}efk!U$UI!u+FwspL<#-rR5Zb0n){_jXHWu{l4+nnU3aFYRT5iYPV7SA zmXuUzJj;aqvUN2=wnEgR%ujj?AH4N$;hRR%)zx`7z%B+v8!bIAF0QOUbzkbY);Zth z9&$n8M0?ij#LT~-ma_>S`SVH}dbC&+UeF7#0D(}{nBN#0%tmj~-ip5s^hLClB2o>C zAksjrkM;aa5&o!x_R zIZB#64Q>xsQ~-yNk58(5LpyG3W&hUulbRGuJ!x8pP}z%+!BL5@KcI_=5%Dy283c7! z`smi)TuNOup~msi9ImsW6=`v zu5iwqJo8+2NLMI&8vy$jRB7PHE_FB>`Mhdz`|6c-`-&31rBoT5bqwY+yRbpLxq?np zfCLva@t0>T%;+J)nF3ZIk9;=>akw^>D`O}jO38R#OVNd_S=}6&h=w?SjEjRh0kXLB zPL-EhQ$cI7lH0KzamG;mMO3z7KNgr@Cc#MSA~47(Q9x)_xAL1C2oHEXOxR8U+%*4i zSs*YfiAnc@|MX&e_yazGjCC6TK{L;HyIH8h_JBzSh=sfzN?^#`4K%z3ST((NcV|=6 zf=LUTPoG*UF+lhC_W-Dd<+s+l`gmep<+XV=w{ko9eDgfwlxj_emiVT?wf7e5qEgTuV3P*o}*7B_ahHFy_ zM^NH8<;Z_;@hK5KRy70^9fHg(y$$q$)aUidKQo4CK8{Pxs;cM{TNp6}p`dh>g@fk1r<{nCA#6bzu%;TyBEXE(jcF5PSOfzzBi0@*V#RBS z;i8OaZi7bTvO^MRAbrp6dZ4NJ7vB7QyBP&+XSjMi^?u$?(r@5c1%wd*u_5(1>sIu- zz#D!#U+eb2x^hl418~TH@Z)Zl_fs#SzD?s|Uowz)kp-lpopwGy9aeQlhFDu$d!GTx zS2IGLwXLn%zt7#WSx0qqBI_h+Pp^x-z{vr=y#EqQ_B2wZ`Vbl>S%{Blh6I}Dib{GU zEq&>t5@Z*QzUJHGsilR@V!oI{b(6WiHTdJuw{(bV>S)DIrj|vUSxAEX-E&m@g5wi+ zBobUp`~&6oVE%JaHhRUCJvXLbmouQy?zdFV{=FP;EKp5LdzA>`PKY^eG4k|8jsaP6 zptmdwijEQC(4|7>?8PNwAbg%38-Pl{H0WyY?f19>96 zGz}j4^p zg|s^l15p`)RCwcynwzEJ{PhF&6Y|8-lbbm57_BJ6#hFJpesFO2_tjHby4t)2*lXz; zhd+T#G;XS~3KO%XI5F{b4rCDyR$||6zC^GF*RsSaj}{|yM^1lggr+DD!738KD44=o z1#bEA4aB{mwfm<6S#4|Uvd|Anhl1O;#tCj-kshEohF=IR9{S!2T{$JYWxUN07kk<3 zYt5FmkU90g8cUgPF|6%*ywvSVpcFVk9lsJWVf(^ zgbrdwV(SF9Umdv;Xg=#Sr7&B3Of=^S4c%&Vnrzphu!(kBK+}i52o|p5qNJcpV3mLv z)+NeFC|i2E`}y`IlL0C3KwQD)5*Y+QJ`G_KgiPg)S}KAmzxl_l>r-V)61E#6wrC+d zn;?q_HjeIMTC)dMvACn>(5;Hsgqy9J$?4|Je#)5d`gy$fU}iV?5A>y=WUeTSoldYA z@f0!xqS_s4KXcsod;8f=++{LyyiLD9 z>`;!0*fN5rvHH9RgPE-_msaE_gL-8;pUc>k2hipKh8Y(i^!T4y9*9BBqm`*&f?aM6 z;`RLoe9Ax+-zd)wKj4A)1PIh>u#T3s*wSzAn}a$1`_bUWc(s{+>vB8v_&DL$<4bSz zp0|HJ>t9PcpH4ch%u`mRJr!nDIVlHnFo84AQ>=*+Zb8WdwHpEwSdKm zkfxAC*|N4;#ruCxTsy*R^~{ zFy;KM>o+(=#u3%xNTBWccq((5iM`!75=3B!%?! z2C;03#|#`nSlD0lJ{U*`*p4$0iN}OdIHTvW&alv#R?Wpt-SDf+I6psq@n&gia`tj| z=Go?F2?DB*4QsjM(Gwj+Y zDvY4wEwzH!Rh38;riWCe!JtsAv(FZIBQ(F!Zmx5?eE^Lgtt-G@O>Kg}7T?v=DRfP7 z;Z^x9ypGSGOwX_^?NA9|Xz`)%W9OysJ{$3q2cm9!Soe|_- zV(!W}k15?6$x%()AModK#uzFf3k$7Kuo7}SirUmvqg0>$ujCIqXGkr-P( zR*=X}f>U(EyR4?!P~7~9BOhR+Dtxd`p06cfpCO<4H7IEOdzEM|3bS)B7?l658dA@i zN*4SznAHF?z#!rq>EU$Ydeec82PV?k1m48w?EPrw;_a?jYb}v_-MuEW-VY3!Pgi<} zRf4BtsSXMq*l3Dqj#Y%9km?}pAc%;v79No0(Q)c97D2T7PJ~6vx?~*p30v$Ztg^CF zr_FV}ASrY8w}vs}eX$HL|0P|1sa(qvLV9){e~`Q1g`HxJ;ZENU>-eIMMGm(SpY@;4 zhW{4guXoL^1{Q0JR=M6BPygqXG1q5+9h4juwL0R)Sx(2#Fp7#nnX$;Ub}sQz%cGo8 zW`pM{_jNTdb{zsfeqY$eCqV!CjoIg(+{`d?oUY*L3#!(uiu(AWTwj?omWW@#duKk~ zrLy;3-ds(lxe^1ih)s(9_s4E#tH;Sw>LUlyA}r!>aIj}&B@_$CvZ8xO4EJpvjFU(d zGgR{-)bSIuNC6+4kf4(h({#*ZoVbPxqmZSXvEM!aBKo}it zMMu1^7K@kSR0DYNk5G0AP~`>#W1r17P&Y3zQGR%NOM#W?Wr^Wp$`T*)_e{3DRiwVX z4#+Rr2UB+7>KUS6!Xz_y%)d3X4cWN(Y2SA)Ze*CjO=j)jAKsi94oG zxr=*SPnxFVEt!0)bF740X)_|7TSWPm%@yX}RJJ)$g_MS6Q_SbUQbPp_ zdtx?(L$+zh2_#Mm7_O!x`54cp9E0s1rhH`b++I)MH{g?Ov>ZiWX(%&2&0vRJoGZl+WLMPn$;jl7IXV#-}rmP!415Ox(U(`P}1dfmlyXTUywv8}MXXQ*3 z>66AL7wscTi~rr9*d!pu+0+Yb?2^aw{u!D_`OzRgzATOblJ4NhR*q|4u@ScF%0tztzhPZ<_$Jp9=62s$jYB*+QQ+I*T_P%ib}Z3~zDT$DjVIl&lT%oyYua&U6Qu^U=~xn zVhyT*$iEhFF|iZKdJg9T<{*g7SPp^^A`>Z>HD?e%W)FSWQ6VRaN> z2>NWJ((JLI=8_+tsgS}L=TY=|as@aiHPTux!v93fFo^n0&)JeqOl*1$Zg7pn^S>Uy z>Lk~F=vG`gnZvtXzVt6EK^`_nFUbC6=A~ymxWCMk>LV%~E#!SYRbF6=fQmU(D9Yl~ z4;iU%HImdENKjA@%h8v6Ep0#Jwe+_}P!wTkYTOcIpVW(8ey?EG*-wo?ECS}=8+7!jmj@H0bmzi(yW~uT6#Gg_sl6(yDKwa1e19!h{&YBzg?S1kDL~ z5Cr(!DTUzru;P;?uYrHQ@SV-!i~u13!ZKork8$P(-r!@FqMB0sR2D%gk`xFXYyg5S z(4%T2z=_e(F+v6`-eF^ZQ?_BV7tbT#LFx~8^P%d=bmCjzV$)TzEn65+MOFsVT_(vy zIV)43BCeU{{@Q>^4H)NOzu^ah06s39x~%|?J}xdU+W~n9PF0;s3k5~F>Y#SKb8OL%q@EOJiS6$JShV-%oFoZ#ahFgVD;`jRm4eKMfLOjW2~sw_%iTbu zvmA>!7=!|oM{febi6?NlNl47q2%5U^L)40#&U5j^{;pqd(uUatf{l$YvZ(ZRTE2HQ zyA58YL8deiTYg>WwMSOpo~fdmAhnB`_|O>?uzs*ck^#r86@F0q(4%DOR~u#6*! zMDchL16ciAsgT(WVb}Mb7>*xZJ@VOmhpINDsPvORAZGg=&rccZ~m) z^~>wFhhYZ$%Ew8HjqwoSf#1@7bhh0+u$OzF2z}}w|708yKXvn{Rz@VgZV!{9^Pl`a z{|9NTAf_+5{qYB&-;a(0k>5ypa$mjA`jp<_F4J(M+Jh!Uxv{@vpP_Z#Kq^5Gh}*bp zSbhi^sICxu)JZZB@Z=1OBc=d_6%q&N4FV^KKY$sU1+pLezHHCq&jTH0x6j&f zml;$sZJH}u-Nq!^#4R!`k5%=24K7{f0-fYn{?ygot{~XjT{oK5W=|L_4rkdAF9R$1 zd9b}1pI5y}DI|Eyi$;t)(j9>7B4zz8MC%Y}+#VkvX~Te|Oq>0P(Sq%C_5F`xHuYKz z3=9#h#v>~$dY!9woN2?u!-t25eXs%(a&ZqY3#6ir;?T$vZl!f8aZoc2&;IZ6m?C@O zxLC|nO@+U2pJx3Y+@$rgLp2!3B-wHLpUp9kvWGuyu<2-nSRxUA$~1>gag=vJM!tPk zptvlCPc%hXm-ghK)gg+mH9HxBg2YJE_8O~n7SFWbjhpiEDdy6eKz=GgcACpKTX)sf zAIxrl^{`=kFXzg!fGQ7j&4Y&iRp-B4Bfzn2Zh z`P|=1DrotuBNF}J0o1>!Z#;OjQygwG=@le%)3JHwj0k|X#&}v4yg=K6?nf4uO9m;8 z*21?fAXt_f@721bMVcDwQ*2C;OC(g{ythdlrwRPN1$jmJD$ZjXMvNt?d;seLW(k7-Wb6M@mQ1Kq2$F z1ikhV>_P%jH_e?XgkKenpbd(oQ>8rJ4b9#C2CQ+COvmqumGW(H;3riB|8z=lm+i3+ z6maB;z)d3r6L$1362h=d+)liC3e#nh6r@An%vZ=i?@5ahES&b{b@?0h8+T;S~r@=X`Urtp9ib zJY0l&uIoUmzhUR<;njUy{aaCmc(lzo@-M%Bm=D?_<4>b~&gIKSt4U-c=396}*@#Jn z7g6?8S@|hX^HWQ*57XTTwHMq^Ew(R#RbsEzZ+3$CY))EHDt-IuP*~ka5CYIaGR7b< zx+`fa4qCr+L&KQM!nem|n#HW;MWLfed>qj}!(w~d98*lT^nea(-Hf7I7N({tkl9k! z<_;?er3;R?lk`#f=oRG<4SOSY3=%77Bl{a`5GHg1y|b2`&V~w)f|K~goU>DV{KZSh z9R7snU;%mj_54ofpY;sHlNc0Uhl$^H z#Bx=;XEFXnZHW$7sS{;-F8-%juJk^LsV9GCGkY2ftKpb$w(Hp#G5&}prPL8$J7x4{ z-=mEvo4@1hkVWC>yx?|jpA(n3xN=v?yD(dtm=7{QfE6*aKhQ4|2jYe2O3{6!N=RVk z0KC&?Dg_q~VXmYJGwvH2_<#)Xg3LMHzJ)&5&I{I(y+}(42pDuRq;ELGkt~ zKbS+pVR1T>ol%gcpTU7-O*4$kPqSO-u38 zPlRT$E^6){`}!>hurDITnJ&n8UpiF-#iGY)=7jNmsuz%mbn|1yzAM=<0$KScxVtpA z#}o_^Lt!;Hig57e2orfRs=b{Q1~h=xgP@0Qwrj<;D%XZf?#as zcIerg+#$a|HR{aKIbUk%pzsoDnXW7>Nyo*Qr3`Kr*D!w6X&J&UgUuh?o~G)zrrp0l^@e*<92uUXv0+X(khf5J@p0RCgo2 z^Ustlz{Hh>J!bs0Bot`cN}SpA1}1>C4bHBvx3}lU0`uHVVPMmJA7i>nz-q4ge-X)jr?gr^Dr5mJ6kdh9OMtVg+x*McJx|MF1?vid0>2CIYe*c#bd|`$ehO_6~ z_mzxtFR!YrZ68=T{3lOusU=npZXYd3-}S>G8X;4xpHDk*0KhYl2$q$Iof?7wsj?C1(Ocb3rvns>PrM-`KYo9~gIs z(rsgcF!xP*1hwq!Ku{1~H!c*>jzUNZsXLpp-L}q&dhvc}7@1{D1MMmcY!?-`yLk{U z2HDxnXLe&gZFY1lSmnCCjeLbzk0iZIZA5-HT!cil8%x=9%z+Q)n!p|^VbvP%A4QuZ z#uvo}P4;~=1M-AS+dm%wIkdICT}F<@$ygu&>^TS8t%+m+8w1HE^H1f9iVE(IEA7&m zy5$)4(uVf-QBrpk1IYP7M_Y#}PE;yEHnS$n9lT*`BO~Cgma?MqqM|2LEqCc9f6{^f ztfCr`&zWVQxpkBK7DQ}6uc;%OFJkX*O!>&?3xx^(rcxXY2Fqm4gP-*lv-axtp zu5=MCqa7Y3fgeodLOGB&@WmV^U$MH?D`+EyWRxUSE{WdD>SnS~T#Lq_fD(^bYcC@G zHIXM7*PaJOjs9Fx+&j!j&6ii0n{g;7xrYFR>GF0EG{{@Sqa7pIek&&Q)^!&0hU$wmIT=THwn;C(oG3Fc8{s*QEy(k-b-M|6wFrCmZpS!87 z1cpGbFrGqSV$qO%)>R>soH%O0iahj+Lw4kvsA2^_G_XqUC{r1kWxI2QOd0|C2_v`9 z6$Ukd$Os^x_wiSwS-KM?OAdZN=a0QkS6T?dEZP&(YB1&5%b8;17BnnJ0p8>G=H?%@ z#EAZPr1n7|y`}B66V)t5rklRIc#D~nsF4+isIsam@cEEin0$;>F5Ht$BNJYV!+v0qV{rg>99d#cy9SbQ438aDh4aC*`5o#Q6 z5<)DU`vZpufd>L*CFL8Bx7ca(7PU-RO8Q4Vh0-mtB?QH3RO|)=79{H{^6{c?*}I{G z#OWoS0_t!@mk;QE!pMJ z_S^jX_nm(W<$tGE4C0lxiQ4{E)9K-T!LjN51`WTJXuF;IB-!e5P`@n#N+q;Q1Ilj# zfdERc<0XLNL0s?z1lR5f5_0YS_ZPpTNNP+wTI=h#9wqROkB&GvIXStxjfuW&y4)R< zdKa?FsWmdZ^;8gb!3Xb}aS*z)6TR7rDnMAYXlGpxNTCT}X7^92(h<$lzcC)DTPRca z5%PkGuvq5p^yIW6Swh3Lr{FsR8tVU?q$R>k8^vIA& z6mzoXs4ts&xN7zBbyE&MGuK}7C&jeUlc)Qpcu29t-*#bj=>561fQX>=l7XuvUTW5V$~87P-1w6Vxu6b$bX|nRP{k1yrtvRu_d<5Odt}2 zr0es3&)08F6YoC}IEY*Shu?pvYly?j63D!cNmTEXq1SDpw)nXutZI9Wv=$1ZXyMpV zY%q5dK;J-Bp>ZGuP!?zzl88v*OLJC(F+20DZqa093}`P%8KxL|~rzRJ_gVU>(G=DtE-5IC6anH}r zHlA?;pC3Oxf7$o>FM=H?V*}I<+i7Nj_rM+ZQGgs+D$=;k0(VmkZf>&lYj$7$Vw`D2{zP13i0O0mV-&JCyWuc`uGg_VcxNV7KZDxz(a!=W!5DH;uL|SaA|E(+@w#$W#Cq1%sud zpbew6G#2HDNPQ8CK;T1S z>|UgUdaV)g@yOrO8;c~$zMw?Mll5Wo0ReDJa^0emI@Az=lKLd{+|p1&&tml-7SgVd z3UUxPPEQz1(C|IJS&UyLw^sEgS)(HQ7rKLbF%3`hsnp0Ay|AuZQG6*YW=SrM zn5+8&42s|F2StAs*}89kXY0)^2%XKTI$2(FVCP-G72Wrm#!KL3Oo^rUK?lMW-p3He z4t^z&cpTh@j2+d7o`7pg8~e}%~Hm7JTT>!d=xDtTF?^c4G71aiWLNcGC>hR z;9Bfj94U|iIE3g!zpG{Q?0(-5tTS9GgeMIU7I41!y20HfIs+iwFLmeeB-(`rH-kOu z4D?LqG)=i30DQ9s%WOoa+oXcR1?<%}T5s5=>}W?5yAoU1{Q4_A69F&7;Do+O(FP>ce%>d6ZkMo2ASdS>kn=aT zwDksq57jViZ0DKMDd3SerffvNX+8Q`}ro1r!%dB;vIcjNo zI&oV>COjo2g+kc*zus1$4d7;PujH`x^ywdl&(-8C z=TNqm`8_kaE$R4J&z;};5W@MtziW}TDK4E^&TTw;wM$rE6t_tk-W|4A_3w0QzSU`` zzMo?B1_ZX-U^x3W>C^*F%8|MAGU>BFM+ZkU+97`A-b0W9trfy>Ut>w>kO$z)G%j}@ zhV#f-O0j7hVSnq>EYIJM8JrtL0^^3@VaY%QNfC&@4M*;27clIvb%YR}iCiTE zVbJqw;^_Ua$FoMC5@n73jzDsD*;pDSEMWmtG?cMs`lQ zUu_E^eAi=c5q+LR`Ox5K%{pnJ90P%dBt<6%XI_7q>>X~R)&zb2Y750ifnFo9oQ#m~ zS1vm7z>>A2dFc_&f&HRb!(#1^9nJphC_H|EVWcepL~d|l@--MtrQyK44Zs}Yd9D0k zcX3h(g7|bXiNK&iWpzOo7nZg(#tr-^L=Aa$SLR)E@M};i@mEGUb4*c17~Uek;j5_W z;v`iw!Tf9b?q@_O_M9&(< zoFW7Jh(j5$I&jHR{B0@kwL{3erTlH^5v-ib8g?E{gLnWJ39`{44`#3uN;SWfB<%nL zg#KSB?!kG75JBD=Q)Y)O-FJtzH5`7sL=|zU>;rOm4Pae($*B zt*?;7Lv~fwssdKJB4@+@?x)uO-B0f6S{$h(r2McyK@H^}S_T81g@$DU(MG?%}O)?x!Iy4<>HNjWolpg+%`A!y%ogpuET8;>d&QIn` z*!f&v(iFSTW=YIQKkiewiO~HLD2&O(=RsN5zH-9R6wV4^sERrCfkl@w!!(08zRt~~ za(?<|*gE;~K)9Vi zA||hzUZXP!ua}JAOYW=Dmv_XIuTpp6Up|P|>7u3@;EW3ReNmj|@KD!*;(~$kQL_E{ zcKv1EyYppu!N9;n$;?08O^KqAd^1_@CFSL%);o`Kn7us_FQZ^m=&+68! zKyQKhkt8nMzh&WfP_flYN#gUsv1oO9O}`H=lvLK3+gcB-PIvlB!<8Iu62z=%dn3Q{ z7)Gm`he?WH77y-YMM@-Zq$luxMc*7)IOlY7OhaDSq)_aE3-tY!r;3A4agE+zD<)vh z77c!d;*!SnfdJ!%O=?2}C79I)PB!vHoDV-g9_jGze{UYkiw8;+g4uySM2p4}AoaXE zld6m#y0}Q(4zJ_tjSj~{kosP3VEl1n{y%+9Xy7uxy#gg-IB-n7Nth@wS&1$(jfHuB z;a}Rjkp&JM7fr$cQvn{m*3teOG}Tbzzi&41*0JJa!tt-eN9rjJ&$@uR9E5NHhBp2QcJI}lb|Ju=4Cd18OXsNFKQHpE$@&l(owud7%aU@VgoMcbRuAkpdv}6IB$)x063K1I_K3 zsk=qm{BFn1UgEk8-@R+`Kd4W3`}FDb)63o`KyY<2t;&r?M{21>*tGnyBG{5iTV!7b zLSgA{LIUs~{(u97JO&2zT$#`Tk(&GPv)iEOUy>Ba3_YTwsa+dZpC_|>qM%S8vJ;Gi z$G#aNr0lT($8r{zl8vvC^Ixp2HLefG#0(l_Ip^|_i5q8o!Vf6Ef0nct%<8Vz+Zw%3CdzXO9O0@gUjQ@8TjMhDjksLf>wjTH%l=ahv-a@=e9ZQ|!5slJ`-< z8mZl%zvGdC)^A1jJ5M>df5oW|7yk#0dHruHPazVOe|}$I_G9aY^IwYo;y23U!F9I5 zn%A2ZMg5QV;n4Dw{tp2JjupqrBq6%HI>!$S`pXfS`z^8C{ zp%^+?`k|OgMWAGTEakph^9TE~miCpsY#fv?LOU&{q_5TQW7;#^lktHf&DbL$hoT+WY#>-ViY|jcDt&|b)iX8bE`pb$Df-<>0Pd5#YL0m zLlF7^cRpxXNTRbbv?kQX6;8Uupfp`)E)zt8zYej!TL^k=m`jyyYq85>Bta8t}KFFXb@wob2aRA3SC6qV*MeRE@T#}JpNT~5ow&cWCF)B z`BXpFaTy|oo9o(XN!G)O*WTZnV-#6t#TK;D0PXZQoqHH%FE}u6klphz< zADjcC!zBg9Er+O57wIF6DuoiRZk}IB%MEyoqG`1@`tgre=jb+ zIl2iNH~de$r#|!FrDIFTA6XUt#IkUmo%KquIzKt3s>03ccb|hens@uj8gQ~2X6_+> zHBL%BcK``#IZ)K#LTN!pcwF5krgJ%y^}T9nN8b_?WM9nronbo~k#Nc)nt+~6Tg8!22DHu5v-*`1W&w&yH5^jO20ey%w{T*E>VOM_IFAGwGg!Mh#&YR1gYC3nD2gh-~H#UpL=Ke z(nAA31A0P$QrjTk&0gdM&lGJyT@?r{XuxIAF87hSe_#Tt;O`GN+|@SLvOQjP~tT;C$6N zJBzF3BW}!|W;a+Q8^+Eu24~!PW&f@B29Oz|CQJ{%s=}$lPEcBC-8dV7!i0r z^OC7!f?t$^HmmM8eHGX2dGRqtVwr6Jg!~)WoOH`SpcNqyCC~2HMFVxaYo`z!`Y&7* zx~^+|aaN){AQN zvh%}~D*F+0+#xN6z1F&dpuUFv=hKLzG79tpBirv@?{#{lbmmcYbIu1~PRa!7_rL^c zge&<958udsY$5_YFSl<-`Yee=K<0_GpX)W?9CzXt9&!kgTK04zB<*u&Sz|DB5#OiJ zxgg(;FLZliT>X=li4Z##n&@LMM^B%YO<}S=XYblJzdtlrU?q{VdM!|xr58jtXa6qe z)J5^t8}hJ19$HJyXg^jqaew0Z(f83u5bROFy73}L=Fu!(QYM6(!OEwFVZ4nP9pU?i ziK!m}bo^8444%w>CBal~i~!%|gX=yKQ3TZ!=MIx1UedGQ)Y8Z1W%reG55Ntz3^8s9 zdeyYhtgZD*e=ylPJx=w(kAvXc-+%`6Cq?)kAe8y_7AtrIP-6k`B|sa7|44q=Nzwp} zan`6yOG~~$yeUwV4zSju`@m17ai5+i;3wQK7x0ITueT}s(Ql{VugzUc+~_)UJhIJ& zxZJI1UPg@VzuQk>vH-IchL7WL^9{q?o1q9Zi5Xkf9oG|eM^lNFtBv;o5O#*>dsdHf zi=XxA;gvj~Vv+TV^+^uw_^v${o6ih@td% zJoccmmK?Go^HOEqd%esaqa``1K+9T8Ik5R2=!@h3)4(@z8M0A*=pj~x@H=hCbI$kz z03dDtH$E2*Y7v3#@?Rai+E@GN=H~OQo(U3ffcjm&NySjHi~N_<)W4&`k73)+l}gyA zrk7g(d24!ABuLuWl=0pk@XqrB#)uK`zoBQ(3eg21Tr%wkITg@wOMqpb1N{M#;E9Tr+)HsRf ztEi5z0b@!KwJ&iUNf6(T&9B_ll8dWzd@^aci$l_Q1Jeh)f$Cg! zf$i~pLSO%hjUr=pg9YrSBX#|A>OfFlP&X*t{gY2d%gOuTi=#-BEqvR!N+p8a;jwSi zB68DOz~r>k#bnE>1>!3E)V-J`Ve_1i1fLk4(#dx7r_Lnf#$3F)>4R^>pK5Mt{9iu7 zcNBqCYMF{f1ZWfqw`sFW{;KmbilH7z{5O|r`+pW1E&z+XZ~XrK_!lsW!e7$h$0w!U z;0QX30ebw(s~JfcXUXX2x1C9?RH5FlexD?^GR)l~uskPA@)_tkOIpEX>S2idEJG7x zHTBBM>OX>$)KJKXUi2xozw3espWW~t%w~%%g(zTyqyk~lqOIjBsaPV5fv|48a5dJ0 z!~nxd%#%-Mh;JjH(J`pFc8CdK`N4s5cnk4t{Pgs6a%~3~;|yhu%vCYby(gQ2w>+fE zbHXHC0>LE9tM2r;qZfBj_Pp)FQ}9{ipn}$V>iYoyVltH-SB8!~mBL36N|b8z$g7?6 z;Uq9rhYMmJEl7@~`mkVk$5Zi~)p6#lV+st^Ze5yypvIO=boja}>BLXeT;P_a{@_VI zmpDZ)(?$6t+i3!*C>YyIwG@Rpdo|OwTud-^cBRjor%5?s%``*SkG=)^QEEBDMXj zivuqAQpCNf-**M}yu`Mse(ON&3$JSonzVb!+8?js;La8Q)!Mp57Sjs=fQ`$Xr#ZL3 z`#u)R0_w)%DYTH81aLY=kil)*)*Rmp`o1f`#z62)PRv7)kjRtu6C$?we{5>r`1 zgYDOK>zDmsT5>zQ$FJ*dz|7y}@VVpJ1olUyU$BHeQ~I9&>?LFY84|VF+CVAe{{0x= z^Y5$0*8}Q7I4lI_vpE{{p7v*Zb-6Tr@}8eWE-z2MaJg z{kgQB#F(7W7g5FWFYYCSSX2DnTXv{p4&3R=eIL+it)?F8I=_ql$9q(p;nbZ zMQ?1l72q?LPe?8_Ck=C3zgzx%-1^5%-#7GIbU58-;D7cu4?a|i#wagYI~*|7nfnwT zP8n1-^$+Owp_ESgSrqh+3_7D0;7(aObr!?hw+RII3T6fNJbalb@&QmH8_eyU+IjZ@ z0NszHz0%8Wi$5NCe5{hE|bfPqRm0@sek{5lUPvqCu*VDqf6=4ZVa6o6ybq{W{OeRq3xK!H8*!*m48j+K>39-)i_oG2KBw+h6Q ziR4boGbVsbYDrJ^+ji38M@l^c2t;edIptjXRP-M7ORiTy_;b9PT~*@mT(ME#S-sZ5 zoPklJp(NH_cbHkmsj+$uOFoz<$-)FFYPrviY#xn_yil^`^8Dt8-Z($Zu;+Fxs6A#M)z)-*Z%7A1~d}h@OuMbike@0p`L0kERnU2UYP-E1qFCKN`bsA-6HSLVtwg{eudnP@1{)*xmg&@glsmleVonsCM3Y5idF z&o^iL%1+IJv3S}jET0^C)=SWM8j*p%56J;F|KP(&R)~iCo{nz->xtgz&DqYgJq{S^ z(y=$4>3t?LYn3K8j=cYr(MAJ!w1<*ROJ_`t9PT^QC=0?3A5VcfNa26nodTGF75Wl& zldVxh^iJ1H)8t5)t_x*|O4UEmJ=52Jq8kw=k9?>i^o8k^L+&Km&xI2WFqD=yB-&Oq zm)GFer5>C*A?tl?(i5Jz6rs61HoVed)5HEi?c=cDndJF}vZqN1+r@?g#heHOp!VB3 zdTevwgcksPCH+S^2(~vIC_gsu-*yd=wz+OEeG0scnD=;o*qvf!49*g+3C&+xK0Q8B zltUq4d#VDwTfg)TQiX-YfMgC^W8?ikO`u-Zv+bEexH?v0iWTxu*cbB0S}?oBmz#4- zTu*o4E&i-kLj6t_LAukE9$SpmH^hY>;2u(f^zQi0Xo{-7K3UGHYdR?HYF)V#S$Bdits+EU0}|!vTCzHQaB`W^n=w#He_HIe?wNd(XB#lkPHo55POg!d}%o z?F+`zb@-zZW^g{(aBwCP7ah3vG#uk2Rj#-DB|EZG@u%~s>!d5scqmIR-sb?jL$ni# zoCt_{$*83A1&uM1IT5rNY%Qh2)<`U4bsFrlV$;{xSBG7jES5Osf-B+67lKXs^Ne?U zTKdC=+Zh!|=#%ECL8fv6eCFcIXF4^{@5@FvR0b8AUugNlpU7H)db#ymJXZm7Drzqv zv2}BAuSGSDYo`vRHTGf#Ja{YrTjsF&hv^mBj3zj)Bo}C^?q-O3wkk=bQd{VUzBtYp zB(W)(%`JO-v3e7ii~eUyR<~pNhAt11uW;tD%}jK!Yy;f#Zr&Twu5z_!xx5N0K1Y|u zMZVLd3?WJqws;AygwX?ogm?lJF;hIvmqQ)Szi`m%=IxQC5a`SYGh+aXpwFVVq2X3B z=nAmN0bY6VWU(p<@H$H4R@Qj7cI5E&q4^?2UzV&VCy-$(0FLq|Q*NMzHdDKNod#%l zI$mjM`iA4ZFt4wO^9?4K&7wzg-uzGznUsJLZ!LYp!E5Ay zD1jKRCyje@%5Ir1Ul-ycP9@Y5$0S(aBH_YSWZI7{;9X>W{yUuZc+uLK>y;X4BKDMJw>eLw@d? zw5daoTfF&`4LEIG=-(pF6x8HrfhIkr0QM2q%m?9ndV3+{q0T#p z^?q{W|9lV}P`Ae4E&fDR;y?d)T5|T^z0+hbu1HSQ&WT-4m7)AFi^9UVlU-NrRRJ)V z6j)q$&yP5{uNT>`o?#-WV4$bNy`yT(9SE?{CRG5G9fITcX3ul$KuWRj+UNV1=kNLz zt}jmx6^n9K+u7C#6P_jmW+o>8i(a_Lfp30G!k;^iwYB^f?XA> zCW7TBjuGMV=V9H&orLf~QFlrqaITUgL%NGgu&zDi?GI&!0&H19^2MtlB=gQwE>7^c zOG=R`$)v{)W$LrtiOVZ;qDA4TP6#L!&zQt`np4B)<$PPg(WFjJFaYmoMp$$Njg?h6 z>$#HJ*}wiE0yV9Xb7dQDhxdzxP1wB&$qDnB5K=z5FrKkFjksP{a>?KRf47x|oLT>r zF#QzXPF1(rRMS$g*ODLQ#E7}1-%8sVt4f@4Z;bq6xzt!==REjw*}D-hdOFNL-5NsI!G3TM2VTH^tOFC z83VoBf8CqPx$B3Za&ZV~T#5%mMK!|xp!c|>xpx_D;pv{w|1_&sIs z0w!v}^To(MX7KeykUoXWf~U!XmWm1)oeZf0z}_Hut0@Z8kB1F7Gz0igPRtw;!2T0O z5qx(;Zexzy>D_|j|Kd(D)qW88leyfy_74TM>ZY2;4V0`v~TvnbtG88oe4{UvqtKTh@^965WsO>r)c% zeP?QF|BJjMP%^TYyYr9FoeRrB#BYdGcGv43v_aR9jb7J&K(@v?aXInb`0;866?m&w zSrdWOgP<$Lb!$w(wwrspwt9lqDwiNnN;yE(8}NKh@;-x05EwXGuYq305x_&f zER9QM>Acc>v7`LS&z3tGk^YTr(#w%%1ii}hirB2%lZ7S<_1{-y{J^rjbltP?VfkR>7lT{@T(msj&BYvwU8uvAb)$BK(3dOYR)Rjf}(fJ z0o*GR`UfAEZYzC`1)CGZ^e4<_P5sJ~5;dLYg@KNq4}?@?I1l>pS+GJ>D`BnlgKdeO zK}Gk2Vp4FHxJLz5Zs=@-C&*B24MQ@EJv!R~ZFJ;>TLdM}@^~2DvvNt(G6^m%yMmS0 zV#$ItnK6XlW;Ef0Gv3kDew3o%L85Hru_)4&SSE#TH)Bm4#K~B8lWMB?ae15AC@GSE zg$U+xOYx*DPY!H_e%X4NV6Xk6B8;4X)umD<$BfyU{|{vfC)>4IAvpl=v^wf->?Plt)i-czi+*h< z1&yMBKF~)wVO^XirzDwBf6ASm{7-9_aQ)g?2f0|gn~j4RS!j+>s%b9Ok@zHgM>!f1 zG+@k|B>r*xAOi~o=^?WWj`H&JDO*i_g&DlDv2hlKx~wIjlNn#0gOsP-$tcFxUkg@SMqgZ2ZRmG#3GR4cA-HwE(v=9o;bGB)omZqM*NN5y;N`p!RD`yMbRn> zpaHSzNc1(^J#bNIplc6*roN+IFdCY?A`8tF{V?5nfW?h+%d1BTjam;q9|{G*@>UPR zZz8d2#As8rW49r6>XJZd+-(32w18ELk}(@rG2k6^gud4_w~%kU50&x>P^Wu$4ixiSqK1jzHJQavOS9wUR#A`1$nEX~Gyl4Q zaG~$9#d+|eC*|K(9lAV%68Xp;owE(%2D*ELETRo~2`%0`_7I079uea4Z#sWNEbT3P za91zel^>o+V!vjM`RT2L*1EblqKV546RE4YX9~x(J1$H3&Qqts2mOzzkToz>KLQ0vRd5 ztho$}Btta6$qF8s8)KsozuyC~hO{;Ihop+pgGXOP0$2c=Wxekc(O-p__t$d-%W z@HW%H3u5TIojmB|H!>>a$CAVmn$3%p zEtd~r(LzGuP`6gFQjT{I3#JLjw6hn86%Bwn8HR*}_luzKME?;$0_m4R6WQiiL$;f- zaifE$TxJ)FY(nbLY?@4XE80MF=yK(|zT0S38Olt@7nX_O{3DL^{=s2Xs|ae@V(P&; z97ty zyig7*T&qY>y4()|Gc0O)gO_3zogK1ib+#!>xEbeP9C z=^^mFngACZnObrXQG&TDU?fCl3N6>iUfh5XF(> zFD+fBTF~<=VbMi_omt0`u`y9#xB~j&`Zisra(}wHe^$*xHJgNcvU(4}qKb6*EUmJcJP5TOsb@89@HW7~Qh39q% zJ0>!=jU#rspL*UJ^3gZc-;|&Ht6rOA1tEo_DA4jU$|G7ca4{DOkQc@bIgS44$`kH5 zko+rOQxtOmwxmSkQ{IV}#fBsnXoblelCNSxSLd2+^z^y#$nZK>{3c$14*7PvnV_nd zzZ3_aOQ5FiT)ECZ&A$9j3#n?l@}PP<$KIVN`o<@~vQoQz;Sf)Y6j^9`xBW)9x?_Ri z;P3*TZ8c;Ph4+J5JYU+?l8gO5%Bj#A0lv_o<@}(_u3Fk;k$+<{-}Xmk&YFot(_w8l zD-)#rS8PW`1n&v*C5$V%X%G2cLmTLVp%n=>5zma3$cZf`?9~bevxP(E>#ZU5u_3ZT zM#*3v82SJi%{w+_oh$FhEnAyE=S8&3u4j_D6wfn`s71sfas`H4B&x#eA8x9SVv{Y+ z4}6TA9xhhyj|&Z$BplcLet4s^^&a zTAWsW>r3&&3y}sfzD$}lmV~yM@2bJ6IW=fdk6rnUtI9Lmg*eSw<*T{TVaSWXi)Le~ zk-fEvJr$_xwOM)sFSF@UqL@i>3S*R4V9err{|y(iW8_hid~?^}z0T7s+an-491vC( zFoP+xmhr6H>uhbYo2rBLjYJQBzuq7I_!p5CizFtWh8~c8U$*;R1??i$EL>;xl?Wou zV@X$+w&MymhRz3^zhYnkKU>0MlC^(JHEoaDH2B?~RPBN^Re%6g!1wdf*%_AIzfyepq0PkM;%AHd!n5tcJKya8K``6x;ZMzt;{vVbNZ2j;@R|9TUU@( zGU-j;l+NS!Diy6f|HquFnZCrJJ*M5|XSo|d_GUV&A#hRK|xkM~Gv zC_K8UHnnkH&R^s@#p9=NTm4}#1_K%$Bip8|O&jB!>bv!K&I$uTuxb%{V*0i1T5TN$ znIMt86U}IEU+uU*VzIu%nGv|Xo^PN{Hzo$y-&gr%bK1xe`&xw(bUsW8&k#XL^u6ZYwR~FslNSF} zgd*j*OTb=*n3uAzlt@&y28ND4YRNL=Adky_06BeGkAJFQ@&wDS4`vD>KjO(641>qjVotAe63BMD(e1#z=0~6yGvS8HdeL4kX0{0abM!3zkC%&5b{QCI?N21y7dJ9M* z7y;g;I@YnaDc9uvmYIW5&y;NuIRu`G@&$4Qi9OARt6aT~cGh5u+)t%5E=jGiu2*V( z2;_d7Ytpyf*c@2-0yYv{p8cBk$i$5GO&>-YV#^WWs(7PT(so;4M`Pj{6B=7^XmcPF z=I@w6j7o+UO%Wvx5s`#aji77bgJaH-ZXg+ld&FvoXsJ@W`?^{I7eTw1oU|eQwb^Ip z>AL0&q4(K}2-1HwO2i;vmA<)0XZ477CytQ7j`rn;%+HLBmCrvX`8PAm76@>+Y%ZDZ zG5(P0o2kh@%_T3$VTLe_i+GgL#c6IPsF$nH8X%ip5!&{_7v=v*$Jbg*cPH(Th2SZo zF#mp}Aq|IEfuU$#J$SQG8)Ep{&DEemLyX`;Bs?|fOoAITq@jCB zO*d$B-RY7~3Ac?fbcx)C&QPV_u?UxvMI4N0o*wZI#MNM!=cR1*COOfVWSnO8^0gdx zfu@*BStH^`;b{vo9*eI<16`CY47gJ3N<>B*m| zxiQgxa7crV+2*&4NdZeCyTMyq0r~?{~h3VrR+@# zlKK%J+6w*qhoHJhlC95qF74z6uI(0Ot@j^Dz|PgC1|KuzK^1EsCso+1UVn-LdKhCY z6Wp}2^^^@*<(l&{g<3_?0_`;&ur7_01gi$oblQ!6>zpHSC|SnnmGtr!{)xKre^3IK zZ-f!Q#lAL_vl!Ub7CZ`-%aJ@ORoHK+9#aD<3aGxL%qWDo%(wALeL=& zK}}m7Nn25s71h;@o|`;YK~(=tnsD({;9 zbV^m*8+6OmL>|FLgx1BRRowZ{avB_<#q1oURs5yA%YE#7byId#uTPVxhx}lWlJJ8U zHFhE5cP>eWN!%u<>Cv{2t<+Cdx98R!&oY*)Pj@y-2}9Zb&>E{uU-TP&J*Y{64P&8J zg6M>wK^J?L zG|Y&?5;yEp-FwvsT^ctmH6lECG9;hZMjb_8$Yf7-qoDl_;UcH#VfdNmAQ?Nyp=i>4 z>bn6!QDQ2phCXAuykxao3A~3sI`1&Ai$Q`-Bz3izJC90B`U`-9U2)$Ba(-#QuVSB}5_~9?A(RKI#(yRlx25nW z%!4O~FX^?14;N~3C4)NA#{FLTE%VND+pGbGl=bxmj4~A+DN#o&48xiQ!9x_RH&n|t zDf&ibxvqfF1(?zG~PnYOTk2;=(=Fgha(9dxBihuQZlDGrZTADc~EZG}KgM zA@S9R%pwP5n>k8zFM=>WW42O^4OomL#k2EKZ3K--6&Gj0o6nnUjUYCr zE!1D52|~XWJa_-o7=!qN~Akse{01^0)*71Apl`OiR)&WA$?H_^bK2M*~m88B|2)sd`$nC0? z{3Dqet*k^WBx4t0@dXVR9FP~M8K!ZRBnv;w5BxmW;k(%KI{s@v)@1DmAN=v$nV6*h z1mDPVa@6iisr-z93rcf>ASF%q>d+!S5_V+wZJEqsj=%3aFF5)hNgylu|0Xz(A|!)F zJiq={NM1HiTAw@9Pr0ZhzP>O2*jPTfWK{Crw~$RewSeKcnOH>+d4ql>1IDXWOsLlr z#csSEqH4hR?_Z6MJg)Aks9idlX3B?jw`Hpv3Gi}XrK(PMYGZ)Pmq=I350GHOT1+N$ zQhgaTAy{ipVld`LOK=9mn3Dx9X;ITprzBD@I$9<)FdavDBlcI#&%J84OGfj&rW)3v zbi_C$IACQjWAz6<(gt*8&T8&-WZGyv*Lq4RVB#@lsp6F;tV>4t3zPDB-7CI24r}=s zbkVGuz^Jbxq_*{%Xa#oJZaT5NvJ$Qrtli<7FTX!9WIhSsB9W|UVxu6`oy?9vGz)1D38B zM;!oIuKWSI!I4{%{ePRP;`He)05BhrE0wa(8?E00(0F@0vyhj)mEGL%pAtDi*N#f# zxrRLjjjm}M_A3A0;+X@++2tzAWzA24fy3@n)=EgFy*Tb`e=jyF`**b*sApdr5{B|R z=g2AUL-CY)_g=ECHAk7)BHjpnPYMt4*%&1iUQ&DuO6=jk~0dzQO@5oP0zS9%O+@ zRNqOJ)AKbEQps7Inzn@+F$2F@2F;j;hF55`RT0I1RGZhp@wK=`%PbOZ(OwdkOfI~u zY;%Ii<5)@(cy=AglJK46ZOE(Vw>Lt%d9P&DP9~Dy6yCi)uiQFns>p7Z50^Bs`_*z0 zl=vcM!ceiXIe1OT`S+jA6;4sA5=oK45lSj)Do^T zZ>|;#y5Cy;9%n*vRV1OSQG*Sj39Hq=>ZVS;I+9~UUa{DYqtX@w1q8!b+v$R=p&m2C zXh4IssDJx|`H-Q#e_B)5n-l`KD%}#S5{lf43l#D-gwh@!eSShql?nZvl*X#{VRuHB zmAV}A+8ow;`HRR*mFNTH^CYOEBu-##rmdX`LRI7Ru#Q>6d;=^ai~MXfeMUb>xxbV!g$@2SJL^-f~Z*tjUWnLr%*>hDM6$J}y}X!e^7S!imJD2pfHU zAP(%Wz&1X-tGXXb>nJKHq#|975OhHqZ&kbl)ENXGq;M< zc)CadMi`*l;wKE&)i94Dtt1EFEiKE}Tcr<2w(I`S*J+Q>ft5K_RBun#gLpF3D(mWk z_JIPdj*lxm-&t?<-1C6+-exYF1|H_$f0ij?6zH_LV>vrM=g$=8P$lGCXwhtferCBL zUO~C&@!o8*SO&FMc-OQnjE`If{38h0%30O>dc_o3XQ(tvN?WX}LbQ##{V6Fd@}4PH znq1SrNCy)=BW}(IMVYvzgmB52()_v_I_F(Q=6>k{=Me1YGZ$)+c}C<={?e_B@NthM zGK|SElYK|fPtJERrIk2V@o2_{sj}qG@L>6e-*eL|oGLO(7iJYz#OED3ro4ti_5i`3 zc_1!YKD4BkXHmU28C+6aB)UA}1D@Fbqvca~+cgAW`OHNB|O>mMTtFOD4se_{lM$ ziC+W(_TPk_P)9GSD^(2)3t2! z9@wm+MKw0AHRpn`_AN~>XG=&wz@x^y#WZ*N@j$wvdA9#d^ZRMq$tT+Jjb~}Ze7v&J7Ay2Hfi=Lsg8uYGGy&@rfSwgNjX*!!hakG|0uNhXaGrQ{ z3(s6^>R;5Zf$ODSOn_CPM#?3GxR?45edl^g>T*FdcIRF_gi*5weu#?68u@6V^0mZ? zwnbo66g>pG*-Oy#8LyG`?JM$+)Yva~JG!>z#aK?O-z+*e2ya_j`N88H0(;)v=Npfn zM+16e>B_|ulan7A1D@Nb{$m4$ZW0P3f~xbBEZ+PHDDBX(=wTd7ch-M-?aWv6lgj>y zgOW+_I%2-zy^b<3Kq!s{4{ae<*H$RzHSGE65v!I4F+n8pI}vda?52)3=V`wxxCO&#wKf zw|v{MuOcuLemddjcfOpb?%GsmQfMq%O#+@zW+FI8Oa>7El)L(R7$h&{2^47EWz*!O z24-U7&3~1FnJyNYY&TF4@B`DbOP>!~L4G@{(e8-p2!^9*Vo-xQPrMI%GU4lLcs0#P zncU6&g!=XH6$Uu9THw-!6o_%0sw~~`wP!~4tHv?Qyncl%NI&D71Gbl?1JMRprfP9| zSAN8ZdXp(No)0Il3_|b%aY1Oz+tz(e|LSY)va+O&CuV%W`y}acw~<2;v+{>F-;4p+ z(%3Je!U_hCZy(?(JGVw_6murO!Ts##G4jQ)Bl%{Xm9W?-1?u}H1*v>=Np%KT^5rNn zrvAM0ygly}^SM2A6j(jH`?XaEy+T)h`I>ti$WJ}{$@{1xiEBb-c{>Np))qu3BSRCz zoqb_YN49kNyw2#hS4ZcaJnqGgUrruZyOb(h9>domnXhM$jlOx>Muh*B0!_}opIP#@ z^&DWeh&P^(@$zp@M-dxakujblgTURfLRfozGrE)jHJ z-dEOk|2=UtRh9Lf2nm@9c!Khv{az-&^UTN$0lJ&Rm(EW`p5|M-{Z8g{3f@ljCEJ`> zEMF@rk)Z^H?u!=*tnbx*O0F_2;;W#l8V0a_Ek9j8VJhC$N7xVvXdGtqJq#jzAq>nd z0HeqVmk~jS68_8MVOTG8kUf0>>ZrpP07!z61um-tR5wUguJGLUqB|N!a$tX2>=wf{ zxj1cGq4Tq$2;@wB6H`{=zza7?gWDwJ1vta((BHIf}ZwAHT=QW(0VyKzNVFgPwYqjLl2WtTl#vy9ha^FzjN!nnrfY2sDH$R zcnQ$ttE=>BK}-sOCJ068^=JZg^5G+~E>1WM_5M?W1r_A&J@T#kNJ_b=J)9CgDKJ%K z=p@%=fc=ibSjUvHZmB2+u4A1$F*o5&)|v%N2-l5a)m-%p)^LN;(0j(&;}sVhKOds3 zDG5T*46YS<9J#2!FZ7q{iudsMaeUg|bc8tKN-}trJ7AU^I}+zLudN)pwzMD;u;t!} z@b7_DR4eh0S37pEm20z+A1bWznJW#ds)FjZR~7HV6FI!_D+h0)E>=eA z74?wBnX7Yy?F{~YkFh@YUY?#JsB^7y9zCfDfgV(-uu-L_S9w~-bni8)TShc4WY^=| z*qo)FzcFFc$Inn6+P+?*8Pla5mYZP))Y(I&k$*nQcKdq2?yH}c4y#fmrv(ml$+4?X z`xc)^_zP`-GF(|zdO+T^B>oebEX}T%)NY%C0%s|`!q<1nNc*7}&WGUl5Ee$etGhV^ z0I0Al*4X*we>n z6UuP2{Cc8!gCe2|TWD}=l4!=P9mC^|f> z_xJs<(BjoOwwA4~c?(la258U58Yj)D?F~MbRmghhyBDM#=p-LiT_79TngPq>eQ;A@ z(k8&B6%|!sHzL3h~k>w=q(+alG%ZiGW7yNtVtv?W7e@Wjr@8~^o6}3s|3g;{w>S>N+E-g%0hg>Ab{Sx^R zZCHf9P-R`BZLVV+n|b8~Z&!g=v5%m%4ef_~v(r6vV`=5l{~HgnJQrbezTFPbmo54=*M zpAGbdiDP3!vspp&c9-(WP$@!znV$Qi0iR$LRS2B+%k-o{jJ2J_*_O!BWy*4eZj zbWD=}huTZY=Vct9mF-2%tx={Pg2oRJ!)s}s{lxoFE$LO>l+LaeiY%ynJ&+q>B>=|5 zEnphhO3|j!?ozKuOSj0MztJln%xtSWE7yIuij!vC66n_>f!DKv>vh@<2Fcc$4{{-@ z30iX;Dl)o=LnMjhBAzvlD{b3&V8qJ?{5{&*1#?v_p{FXoPl$N=3V;z$sLD9us@r+HyUXr5pdK zC1#@+^m9}bzA7a@?&o)|EDmlIoUw+SRIFbDHNRY~2(6%N>bA!TG6PFhNTK4GiIh9; z!Zjy@hdvHm^?Ld-)tuhT>eh9wWXhcyrsyT&@V7y1u{=H&4&Ufkn*7KXd`uFQtT6tN zIv6L;(vQJe;zw%Ms4a6+!UxfO&0Yv^p%aBdl?V|{2y6b1XH3Z5%r=i4%pF%Tpf3&n zkz|y(M*fhlT0>&3Oa@rOv%Z^V{Tn3(BMyt74>Rdy1FELQDNLsQxs_-yIhNw9yJc-e zZ`*+UzE;7oj$!HN0i;NZ8$7?TW<3@Qy%v!M4W-{&RrxF#+ISWx<~h1%XSqu{WN@Jvv0 zQg}pS)rUwqM%Zy%cib>%K8@vu=JawOGvS=PUJVfxMjgZ>Tvp>Lm(~_OcEja+k=ATx z=O?2NynWHQL>1$p3WH7UMDh9Y>1-t77E%50FcoBN%4uf}6wWCPBX=z_%mwiOS1Bl= zv6hzd&Da~uL78_%O$;|N|GRR3O*3zOeRE_D&t2wLEQgf0V~1%?Lym+Hp~U32$NJR(hdu^m=C;a4`$MF@9NQ zcN5BM!-m4~-p)NXx;&ju`omllYe*9Po{ z+J}XEN8{<$CJT#pfdG_SK!G5t+jlJN!dRy&^Ij-#Ec*;bD2TZOxuw63VmXo%RuTl~ zh_whBI*s-Ei}|vqE{nhw*UYMe#TH>DkaLuDjY)Hs$RkS%nQ~(5eLQq@fXJ8584gXg z-ak$uxM^Ud(gUz0rPMtgJ7emtL6!ctLSNF zH~#C#*c1lVrx)A4lN-9gJPelGvVK+gG0^3 zxdSO($(+p_0$_T1cBerBqcuO{gAaO>0G}GB5q}Jxr`l7D2GUM>h*xNnbHOPt_wFo( zuE}`dS1hPKRWvt>(^LbSFaovpzOJZLDyZ3! zquogIjn$jvH7=GfSM>Z>!`?JW*4R;1jiZXeq4kt>IA9;?b|KS`I1ZIK8=X|gxPA`9 zk~B)>!(}Z?Zg7(pFUbd&-mYj~1(FT`t(e4#FT~TwD8&--eTDyC_~g^mr%XRUsX7WT zKcmjoL-V8L7>@)bkuhLDh7an|1p{ZHNL(p&ADQJ6imIJDuo#=LGKoQWNypjom3g4KEB@f& zf25rEL88+UY4^iQB_xe(zuwCZCJam>nX%gcG0SX;ak@=XI~Sm!J7PUyQYcq9+j@EF z9pzb9rl*Qh)t0$8jMq|1IDJ6JGMF;7Fw(puFRkrS%82UO-m5Cjp5LMcXl|EQ4Tc}< zi?}`g-S|Z+=<-f$Q`LNvWkA7V?0~^D1y`0p%Jk(RC;5e<7J2FCr}mCxhx!spN!x2% zrDQtwsnYlFL!F>zG#X>|3}jfANW~H_PHWOYUHgh)&cem{r zWiZVxnKsna=9dPabS5;9?M}2kRTs!NjTp4gC=o4)rzY~1^^3kX5Ro{jIev#jgXxKV zfHc$Qi*$G|_ZKDXMr>GMa;lnw^`{-OB|>I+6cb4sxFwR?*R`lx)(UI$0vh&dr`5Bw zYQ>C6_I^lt-Fp?kT-&O=!MKxN&U_C?^dq77BZ^k=+#Ex)>qxkLl;ur#^{av03E(?8 zZ70VLto`+<L|S-Xo=f&eH(Y_c6L@ed8Qba1Ee+3{8pS++XSW> z7XS+kofhr)LV2-Tm<9ZmYDVN<2qdx-AzE0U94BXh*)oYQ^2#$Hs^4J6oBy2MwE>4am!bhsOgHh0?v_H7QH6=68?>g*b*&_&Pf5tKz8P zDfwf`&>>@-f)!V4PF{x~j}ZTJmxALvAt>_T;cat&qSD8wQ&x7yl@E@!NN%ZLPX(5{ zAkF@(MriwKrF8EdX*yjh3_T@Z$4A7Kd7MH3=4Du<0lOO1z6N6+My)FjgF4MQNfQ~F zJMDCz%I{*S-@Sp-#Fq&mK7?bdYSP$}C0i3azLzn?V^daC&$aaO{rov%&XL@yf#wg* zGa84UTzRr9pqLDiw!SP5EkmOb!TEioeM6@BaP+2IgK7SBufmP~q3sU~>R*Hl9r9Y; z)*IG8OLk0(Wcj;BSlEQNc1L-mWrKJ38 zYiEE72sZJO$exPKGf1aGmLlwEDZ;uGk)7g56*neQU3~hPgSG%7479TdM+JS$t-rFM z`YP)#B`N27*Edwk6jIq z9;cu{0!UVQ|!Tt|u@n$vHnu|>x#bZglI_R+1(&J30&slFc2I6X1cUL{1q245i5z3GrmiMo3nCDCPhLVw5?LPo{Gp?E&6hDcI3xrcNQ4p+*L@=N zf$uOGYk%>yRImUwk`eujSf*RoI@HsX->iq+;rFsGe6i|G`gFOq^Y(UizTREGMQUpS zsEW&)q&o;F5UIV{p$PDOIPbc8JUnEe>^I|j8r2cqc}YnS^~MS1#`+jZWNU)|edMN) zau+r9XGJm}{lU0mKlK^A0>H3@gYdYl5gB4h2~;^0kih9s;jyeq4}{lM8^!B48_DTV zDO>&E(ZT!S89O2tdlQCa6C*;UnCxSR_fFkHR)<-X;*Z!-&{TAAQ`ASRC~U5(z|B7# z(N@;Uls=MYlJjP);s`mzTrePs7O4?AWntv9KE0IZT!qVWqlGezi*nzH28zEEvX@Y)wMMR?Fe{&$gz^Mn0GVnPgMQA(HSIxmR~U<&L`(%%<>RL5~?Q;Bab)N zmdU%8_6i%i9Cc-cyjwM^!^v`Q9F&!zCb)n}IL%y@ClP?&By=pM1`8Ai^!IZ_QW1{V z!Ncf=>;2M{ZTOUR>l|-P99>Cr`P;c`>n{!m=96jz27rU-@a^a+g4?oaU{#BRq-%uc z@~uvO%qE;N8TUeslmKw(x_DE?S%*LV_u|3G=WK8yhrd|!q9?$TeKzmh7GK2?s+QvUZ3@9#kP1RI@2GFh@K0xD;25o8$>AzJg&$>z?Pq{>cGaDWB z__3TXiQyu4)XPejrMisx(TidTTKV`pb!zP|&dFE19v;67Av)!%fzb8QS~8U^2N7ju ziyqcHq1bl$(3$VPZ_m>EP|GwDCON6dvfocT@j!FJ388OA1=epHq-7Beo{Ps(xfh}; za4no?$WupEL{-fMkNWelYJq4{G)*Tep|Qz??y!IAA<&zeTjKkS@TsjRF-D2s9wP$? z_7sk4v)BF9RY15+Alr5#*0dh5ee4@Qt`!FB{OQ{{R`gJJAQr9*`5y>2HA#{x4JxEk zsQcB}H}7$DX(~n$8GFOti$X2@F@h@!_DE;}p^Q$JHYMiy;92IYpjyUW#u(#T+4RRO zvG)B6T3#mN_!T;O9+*fQ^f=<@Lhql|EWeB(o|@magxsGl5nC&{8i?&imDR?83b$Hm z{`18i}aAh#*tM_&w?(fUKaF^*Zcqj4l@? z*`8Mo77eZZ2vCoa3Y?fMGW9tCns@C3&Fu8t8*SNf`(>}AkX2pb{PSAz%7LHH8=4oh zxJ;~ht7Eat6I%vitD#~3`}g=y!{WoQeFi@x!g_^|uodzwmFr>iN82ePcFba`vlako zHR|-Yxv3jS3<17Y$hf?P@+>cPdCo4MAg2AVqY_C&aI7&Bi`gqJK|R+?1a_O*-$}O( zE?3FwPHv_#=5#04{2n$B$H)6d_>l|8D9Av^laZ+{P{Ci)yesKEQk;C((T4&w&CLAkM$zqU29dStg&0hz( zuN>rRBqLy{b|R3tu&l(7cfyWj($v`Lv(r(j>EUouxZnciIrl*KZyzYu1DZN*PIHGg ztTA8_De*F&97T>FI`dS9^rESKw)!0fZfgt#A(vZyYcC1(jZUlJ!QMvZ%K!AGzwI5DOhth8Y`NA3?y~GzymA}A-2qgm%b_j*B{p6#ROMKzC zQgsu1%Y!-CQ-(JfrU-G^dv?R{)C%-EYjc+M;DxBIs^a_d-=Sj~b^=8Q836K=o!dV(5vahu|qIug>l(=wDqj^j^w@(*2W;@%E+mFycM(g zQzHP=JpTAvg&u`EX_k5!uW>GrMqF>z_Jc>PFtrt_`Cnj=3?nS~Ee#_g7Abk&!twwl z^dVHO5!z4z07N2)O>Fkfl?y21 z4l|h)`rxoy+d1tCZS|P(@BB)o=I`Q*(Q(4mU#U*qV4ud81a#0;XLsaD!!PB_$bTfk)mvLl6lNR+Tx~5ldSVYk(qc zss-Nf2ckpKz5%p#copMF09B~--+l_6q|Z_S&MB(>6`!uHUDKO}*w2dUW0HH|B^Wyj+rHgw8?y|* zA=Nw`gNt*t@yio|nS|Prg7Pf2 zt~#@d_yRXlD}B_*u#EqSt)&*Fc&2SC!``p*HX|vTwAL$iP;Zx4zWEy0Hyff$o6lc9 z*jVq-7n6=BsdZMF!3c#j0(H;Y`>ci$O@SB%3K6q9Cg*o@ws^(?X*vKR56Qt=HJWh= z!_R^6%zb9tV&1NVJ<6LeN%QT=X@dOX%2q#b|HReLSq-C`RvD(gr2<`r&i|mT6g>ZB z=65hUxf23da0l?+%=Mgm)*Q5>701p}L{E$v#I5XNph8>u6_4|cuAVPaGC6W2fnm7t zx)v=WIq*B`n_g@v3+CUZ-}@M%e=2tO@RBls2X~f=)8*p^V)*L5+{`UWT!;sD2i0Q z^pZZsZG`wN4o?ao5vN$)%0ia}o6|S~l(f_5!WW!cTOxo_tD{nKoJ$;pmzI5xj^9}M zW#Uz;hk&Xlw)rFs;Mw)C*C?l`_^%v70?`LEjW|Q?-`D~RBgT>C9OMH#v*)H65Ji)>a zcVlRhXhy(-6_8^X3*848jtvR^{(^P}iYRX40^T8F6w8EQ= z48@XyhkBz=pm3{mD3-C?|1J8Y18qtOO(OUcfqLnR(3x6RX&N*l@H_u3;$$OdA>)H)0azYs5Hpt|T=zoB^w%)_Vx4|2vaI zJS#X_O32s_Wk=R3TK0k5=KWqOdL_pQIlo>wMPOK;H=x6-Uv13C#CkqdbzR5S2Kdw~ ziNV1Ykl!d-mf2kvoCAfoTY~>6bHgcta`4uaBi_?J1CnD5T(Cp zW=0e{w6JKzR;ZI6Op`c2`1>7QalXIAMq2cfthmr2FH+*3THWk&X>JaF6Y{2!lr_l? z;`_87f-3+S4Kf_D4S8NQG+`d**5M&$l=oQtW#L5d5t(*4#VB>{4xh}wO_jG7su^SW8qcUWt4-unf0Z(F5A zQG{DeiVm=VpJugOsq0~a!^qRIzijpb`Cb2^KQ9wg}^EbbFaWQ6iukBYvvs2n$CTv&~lYEK- zW8ksiTTEI8=?cBqK$#TY8h9X%3g4w2i33#JxtKlvT=DU}2+2r|_ zOCp2LqkttLjlHk=&s>GSJ6uFEAp9Hv%V87y{@9oq0inkgm#0ng8bq7Gq;r!w{V9ct zfAHJ>qzMxwI7KiS{^-~n9ZD#a6ee60H%vg~pF9mAei=Z$ue$^@2or?Fy`xVoUm7 zGsXWqWy?^3Rx-SytTp))dkgobYgB>)NnKfIEm)OcA^}=6g40SHL~2Y;ZoV1{nm2+? zsjQT5{Li!=Vqt1{4DwM3mCin8>CQfGc(;JPqao2d1|0h?hhout)MM5F+zlJAn4+Sk z_jf7ek=P|$i`ep`;9QbIi-L(hOW-Ipfw$}JzS7~B)7xsh#Ius=_{X}9?ss+!-gw#Yf1!9khU^OD z&HT9ab2^#@lkgk0KOKibP7>aCdjehp>dbL&uuWK-B$S?wYx+OCDIXCkD9ZeahEXfg z9K-TF$AI?{T5gz!^A3c8rQY*G8qF#(&L|7bFgYth4(ja1Z9~aLk_1si1}Yb#86bL# zQ?wzG{!=m?ZS*nA`kdYj0M1?v+;CNbu>?dyn-`a1xkCdlOu2%v7FWlWbgMau``kDQ zK@ON}Y|nm5beSp#NFVp}cd5;H%)t+bL^e5EySz@Gy!sYs51^?+T9O%J#nI@)x#<3ARwN+igNE#)F7PLKdqW}EnV|z z+H%I2D;A4G(jWZ8|4xQA8JU=Ola_;19Q{c?!mv6*%(@q87AYvhmAufBMFPQ?psRsz z)$!%(*;^R{dWxrRhuCr$HtqWutp1x-`-L>1rv9E~qq|c*LDD{+l1ddO zr)@8WtF}fF6}+(_l0fY|oAX z?A5)mfg1mFjaYvFS&(?ipBHaPf@X|jjq7C_-|9oYvxK(KmoaFXZqBF1E3RRcUtKkk zXpPF|7buClKKq@$>+xFx^SLn%e0$Bua3S=8aC9H}sLixa8g8Hbhgro8`?Zdz<4T2Ubb(LC7>4nxrfV}Rt{i(A)=b%`&J{AKeKs8-0<1Emz)m2B|ms;fRI;CrBGs1?02+TE9+DH00U% z>VD;M&v>xljp+R`;VP|mv*3*z`juof-o%Vs*u-VHUdaI3e2H4^CCdMec{*vSQhfcY z8BQejO6Bg(m7q7?`&G$0SyD(rzC1Kh9d|tVNQ8|z_l=WZ=hQ_sFm0d{MOx`ddS02` zC<-q<+t%D1pj|vVQ8aw?c;VxoKDP7^h2h^vYbKao$&+Kae>($IoiB?W3T%Zsl}zm+ zP6!|t8-Sy=*@|>+v@UOSRycg3Ue@=2{`jqS<1f7bW&t&IPF!%6@y-1YKX{)+^-1K* z!L9(L#Cf_J@9NYe*D5I2{8MJ%DRMoumSkBKMe5UNUAXF4V-SHV+R;BhV$e`QQ$X_K zTR~V%VWQgH_o>&gw9IB&&b>n5#@QR8FAo9Er+c1TkRyrCYwYZ&;lw2(Ro^*n(V$r& zfIk~}Pu*+(%ow8e`DK?L#-m2^BXO|k$?v|=)<#5`9cYxQ1TyP)UIM26Vgkq&g) zo(^P@8_)RqNga2>LL%A+b#^ z%08M80y341gXT>w7w?Dn6t8^&^Fpu3?2v6w-`mHloxHrEjhFQZsS9W*jHUlUYrxy& z8j|Y$1B?m!qIMjlV-%lWJ#1c!#bw#lssnKrS3IpTKTDeMzWNM~41}nQLpJ5Zu*V}- ztnrHX4JN|QVMh6}GCo3cc<^F*RUi8&5epAdJ-IOD5dnX}7 zRWa1(Ve`fF8ot%RG=Kt=e3M?RZ)YfyTEr_DQ&haaTA8OuZcDwa0dq7y;I8sf2ZD-( zbfbvJnZ2E)g2eBzeTnsOo_6yCPs~H;@b1##ePR_xO(=M_IbbJ<9(?TPBRMQr&Vkw- zg`ZTi>d3+G^rc2~I7V1HiKygIUDt|OhxX%wi7n%S0fz3lP}yZh6a3|6GT8i}rq?zVj$( zdH&?$`Uz~l{~P?K+Fv$z+N$*zB4~U~)E~(D`>|i~1mNj3{ZBietnCX}f=#+4yXD6` z*&rC^lZ_RtmVn#}*?(jGx#flg6G8swtrUID++2ycMu`DU3kr=i37p!_4~q`hZSwy{ zS8dUBPs}qm{groZ@6C)_mA-v=HukpA@&lQrKo`0KcFDMJ5Kmomb&LdS?}D0r=A%bK z2NKU3+#P6B+<+f+8LeVD=YI=;uB%h8XTfJv{`XMyakmJeD_Z;gjqJ5w0N2&WTNu!k zi^#$V6}A_$xk=nmehyC+fwXr3Wb@LIC+|5Ws`e9Hu&b_+T6{^{_NR|kAm*&7DghCZ z=gyv&q@73-cH_qRkCIUArT^m=nW-o{yeQ;Jzrg=x4zgkVt~^)<-7B*^$QD*@J)jPbhBo(a*E*jtjDq^w@uJ^{;jl@{Z_#TQvRw z(kIp{_CEADC-#TGJ7^2b_?@f!S?l$Rg1y{15P@tO-IJ^h`8x<6z87!^s}o4&SpJg< zP>o@$q=>aS^^P9!evpMknLThK_Cgd3gT0N~=5eu&`3?}QVX?UypxEwuz>NeV5^rF zVqkfHbF|nN(|&{r#g_D#j$!JpD6w44>WllBh)}>?Aehu9l@ZTAvU2v<~D}FY>ahHWRJ^jv;HPJ6^ z0RXrgHZ$NXMq*J43!i$5kjFtSu1lUGG1OmRN6q&nkX4-cxrb4Mj6A;cSa6G>e_A*q zBR__+#-S{0Xxv<1p%~$<*yH97!?Ewyjq&^X!+JnND|4~#w=qozf3eTXDCT%MF)lPi zUy^^@Tgtc%meV(_b69-D>V?@vW;Ae+tsn}zhD%SlPQ%IS%sfDlsn>t@Dql1(f2D)!QGAmjr`Vjy=x%A0JLfJOFM z&*BA!Q7jmz?uZUU*G}Xwu`-7bGe^D4?U*2uK}Tdp>~O*an8H|exN%2A^aw?ESZoZ8 z=`%@2!W3mE-FBR+Wwc;`*gL2HbqcRPZ;puv!3IRMWKQP5Ln!j+Af_z*Hw)A1xXP$o z@6YX^we4->EncS15D6DXHB_?=+;FBwE=9)Tf1r8$} zX~0zNLZG2id7djq5i@NkN!RCccoz2l{T$r& zGDn3UP>o54mNkiiuhJLLiL%Vp>D;dY zq6X6=0NU>HQ(0Yg+NsDfHw61CS-bP8Wo=XON;H3okJV-nJ`(R7p z`uN}azC{2>r0Bcn^&$3@#kpEMw6pAq<9z}>$} zs8WNI)STPknQ`|pxN|f_aq$cCel|iA4>YsTR=DjX8`9$BtDg?T5iUrgVpApAg|EAK zDVmYMf|r$rt|VZk4#gwk2u?b4w5@0uzy47@J5zzif^ZNg_;kJZ^;OMf+1a93HS5%_ z6URNWL$2AOK%FOO$oD=p&T(aJh4m=;l%^1Yac;M!l;WHakhn9KVk8Lw4jHQE zn!&$8+=RnF>^$#2IiKo+PbC3{vfPQmh`soTJWoA}`9nW$h}cuglh>Q5kr%?lg(**T zJ(KT&@Z-eBZ|HR_`dnt~Ck*Qk9ShgO5Wt`*?byPD0J%try}X;BHtiWFl!ykCSii2G zY^M3zM8jPiacBDr_Ekz&2aDy6t?`O}!JXIMENA+oqm#P|v11 z4Tz0x*-7)Hj7`cOGDebx2!3L-nf<-T4RCH%BrpHXuivFaZ~$`aCpE8}Q8PI)_Q}M} z3TWVXUOHyN)0Z)~5Vxa~pq=gker7-nVRr(m^{x|=_zkzi1&-;qD>$j6C0&mWEyR*7 zD5{Fbvn0;7+k7<-?n6hJOOok#B9%p^0;?%7Nh_c*j<|t=oRyfxp`28WOUu_#z6g~j zmbi^BnvET9*35VJ7kBn(o+Qd-Cn1S`&deNA`Ok}gYJ?yvj9yRIPa$h)*H=lXaQpwd z(sNTn+QSN64)|&f1TQ*NI*474JQ)}|3|fFCR=#RNr40(OIyU*0Cg;%yQew(#pTi_H(mW{C{&g6rC?JUzJ?{(1-h$2o6jUJpmNH z9Q>!bXy-rkUFBAdfcLfcU6ipj_*P?exuX0ys7PQ&y5Q`FIq<_7oD5>;~jrHQ+i$IAsK#a>xlF z5dW#K@yZM`vK1C{fCCw&rsMpwuTKLHYLS)wv{5i&vE@q4(dfL{hV>Kvqs0JJets_P zd1-#w=;S6>jVjyN$W$uvxL7}N?+ob!aV+{n-ekp|MnW=--^U%>p2}NA?*=IR#AZ!+ zXOVEQfI!$3*GL4E-TUo)Ev)&WI6sXlu~*u-~|UZg_gJGnw~v#ZmRk%r|K_0&xFu zwTp7T7J}90QfjsOMij+4P26pad1xtxOsH``nk(%NWJ{CQby)W=m!7*m@rCZV6K5B0 zldHQ-Dy;cea{<~Hs-C#<_O&{UQy0=z`QlG)wCNuHjz2*8aUPH)n)b;rJs+{Nz9yU> z=bvZg=jCM?P9`&-*T{V?BT%}2j`kmBC!9w>hkF-8e^kBP0FewLK-o%zVRl3%cEfFn zj9+J?ajlY4m7JT$_M9y#Zcb(0K3`*FAG{}OeSL}?AFVjgf&yY@9RC^SX{8Yn5jjnI zOg?ohJ_s$J-DPYJ@E}tzG>2&ZLSV8_jWMXE{qfb#(Yak83OdkbyKloXi@#I=q>C#C zQ(7!)E@xD}-m)Ob|40Q|!BS4Zc;?If2ms5C-co#IWHe8%J75%Nk_PCb*&t9BD`nCa zI#bIu*@MvHWxd}cB77WtuMXU6(J4fIb7@?v-3aMSGQZo+)!&JDlFOsmV2AU?SI<`> zNGTk>j6Q@wZ8a;c4r|?hUl^B4);9#t$1I1U6f&j*EJ}D!-jA1ljP6-hBWAS6@T=7{ zd&$hJ0I4gSG|DrPt-fQIB^zD2tJ*|li#*KJ0)$RZXY0v5L^m~ri6=15Q@$K1R-mi) z51dyuP72vj2#TP52>cLiY#lkR0Q0o`J%yO9?gRL`+n4ud8v(I{2+V^7a%oG;k@b9{ zxZSsxk*D^Vj+V|1T}3HbStNcV0aEl}P3c0y^P26OBiH*PimsP=eKBPdZ;O`sl4#i3 z8}iShkSk%25F-xa4=&(ft7_wDIQ$0KteE2F{D~6zWTn!XXg^H&?4MN{*xz})x z^-~M*7;cr`E((A%c00Rk2b7q(KllX`?|%*UdyaVds{G^h%}nHUQZmc&NE9X_EY{ST zit!r+(Rp6BT}hh23ynPD3PepxddO7J>7yhvPO!6BF=X?_)l=Z`0es;z-oNbX%+)JN z$@<9d%*Q5v=F6_A{*sYfO^+1eQ`BXW9Gd?iUS2;>I;3Z#&7?Lurl|hA{$F-8-{9{+ zTI#8fQlG19z1EGeZs!cUr3Jl8zNitNT6vz7oe6=t!j~wj*48KdR_7>vgd*ge`2GY`HbfZDvy8-Av|wUPS}^72GH| zeLMc|T)&u|B@4W@VmwyzN_a`M`vzRiH{okCIjmxwm!r+{k@cn{wK7aD^L(SJ+PRcZ zx~eLrBIC#POwoB@SV&R^5>MrD(F610h$E}-;?(mOpyc?72;aTY)8l_fAxK+0L-jyT z0OQf?>hF5D(WhXiJ4eXDMw^SLfHlTz6)%PV<5fa{FF*RHoD>qi!SRC|DQ4QeBTsK% zUp~Uy)MU268pkdvB`Nuz0~|^?cC4~V78Z>16|on2irhd(FW0kUDE_AiQ|wnQE@w_- z3P<1 z@@%8*RY#S?JsvGWZX|N|SPSI_eiJa5zWNA*eW?M$_=PU|+YCb~aHyA*u-Gqdt|?0J}ea)ny9v zeJ=8IBZT7?Bx(R&N%beBN)xrEYQ)Cz>-m3o{E3iMx*KUyH_O~GZ;R^f;Z(+!V; zS^HhsOHrmgfD9{V%A5)kMaQr}74y>seKOp4d!zr|%`Y^3@piCL_XVpp8yoU(Jxruy zO-9VR;Wsye?4NbIfb^{cDZ>F746eir5NXC|gow{be;f@jmoB-XkK-G7;q!}8#~6m? zoGHtYAo93zTRzp~%q1@Rc_wN`T3@kCKL<9NC=DkB>a)J0jKY?iE7wGMP6cuca3OxisD$9t@$# zuu#S?)h^DT;VB+ij-0RriUJXTUvJU;sRJh*8*1c{r~PPPp)e`>y62lqH){7)TrK2K z_F}?9ofNtz#eMUg=i5G%h(s?hDJAwildujAVyg8!vw=ng}bY2f8V zICbOnC)O>rZ<%@&M2UL6oUb%dptm-K?i|u&5a5vcZu(|&MI1x(Y3q?t5)=^N6nhcU zo(QPJ9|Upe)*qC%bjIiy|EYZ=HVPn9*rRjt?toh*cwB3}vb>R#_=RJ$ zas2;SIt#9-yYKA}-QC^YpmcX5-Q5h`9RkvzG*Z&t-6h?klr+N7-7)jb{r^3SS1^mS z&iCwn#ixKo{3PgG2O;^j=-Z*&o_?6my+MBd?f_Wdr0X+R7|He1#4Dk(TE0Ag2nT6mBbP<-=*7+m>;z9m37P7*;7fa?uxq+?nP{oeND$z` z>FAKTwyBF#{IKGP`;?njH*i(1;8x;xRt=WG_`k=9vvqAzL}~L}67cFxxaW+cogB`4 z+0Z^;3@&Kg&dlev{8epP$XAL$C!+Lku(;`yO*_d*+rkKLmS2fE0eMBDtFz+cz>uy! zFHC~7Y&=+hEh^s4Ft3wm==vJN?s6()d}Q}Jn9|9m&X$GdXJTwljBH5Rmp(JM4=0!B zv(T!wo*wIYw2;F2`2!oP{nhd}F!XK(0~`9@UQW60U;BCZ=l`aKx@|#8C&VRX_!n!b z1x5VhHUBLvC*xii^moiOR`s0Nd`Un9vh1|F0Kq$C3n#kVD}9^%lE|nQyug&`HF&}rNtZ%0KJpvYJRj$%K>rvq!Aoz!^%Bge`}Lu!DGdf0Y8^2|ZtN_xGTeS zWdnvY&+Q91i^_2;T`iCU0sF*JD7R)u#eA3kYZV^igoK(8)gNlcvvqJM%)49Mo=`&{ z453?>K}Nc$!1vH|UrB*|?GfCSH>;7&`3ZMV`k(~Z5Z3aN4QthlWoS=1if>!Tzw!Xg zN{%ZFk2!ngwkXFYfR~4}iW-1ngF3`inTFv&c(-}@^9k8)3LgOhj&eta=N2Oj_OM++ z3O4-#EdpnhX1oen2A^Juqrm&s=tms}U*y|p}vul~b zB|J0O^Aw7)p?(6&guj>||6#xEouewR*Z?f9&ByzogwF~8Wi+bkZ`Rv75#oGvbB9?8 zjLG^-aLqz;H3xl$+q-<*Ab#xfHfR=a1j#qYIyp$4X71jzj}djkv+9}OtSdU6=d8pM z3taM=^ricRtK|FNytGU~^5~(O%}NRL>ULq!mMrow(s10**)oUO4zA~ek3q^9p9iSos7*s*#c3RK&R}yUo3xYUMMk6`P%MPVe+=1g3Xr9$;NajlXwg;3LrbBUuyEjhk^mHc zesM8(;lOnD&YZ)NQu-PDAG~OxQKtz9LsiWK$Ft^);U+{G$v@h+QMDMZg%yHTDti0Q zgTlDm&tL4x4e-y%}OeCXlv$w_|Tr`(+!Qm|`wRf3Xq_y2(n{@F%YW3=FB@u5GPrjW- zN9$+e7vlrAUz;f)^GmyA&dxB7ZJYXkrQ!{`w6839s5s)X`|ckjmPPxIL2)0b8h^i< z4!*D$e&QT=5@M3+{fBHd{!5)C*8DqvSNfPVF7@S~bjs+Bpp)RlGfVbf)+iG6xnPJ% z>?dS8TXJ|N<>R}WjQB`NytrC8>UXAtydzOHPBOaK^h>5OMLYA;A!mMGd0~xk{VE4D zqDzsDL}i{JU9G=$Va71CHL6nQhH)mjbZ!q7FFLX{twW4H(k>?3n8?R7F8@7TDiEQb z;TFsTv323LN)6eE_MQO_o^q&v2>SRAiU%&HiG`Y0Y6zWqyWkJ`NIP-X0z(Y6V$NC( zqkvX4^%Bp&*mT%Q_Bpm#(;Liz#5{#o&F4T z+kUIo7Onq9_{b78QlY9iB(t77K6vnihg#YAV80zF{5;Qw9G~Plnlc7Vx#$G%QNlMKXjlv zbFy!`(uZf|4PQj;Aoz5HaI}xNdNsVcY@iBVlrUEGuTpQck6uH42I5kAK`QFwxh23{_Je*NtH33HqsCVX1kV(*smmwj~(2_>s3`?|Z^Um#xV*4N1^ zf^6t}R*wWoy~jkkz1?VFw(5^3b_e+DMgaCkl*AtmI+|AOb)zBnxF{_zS~58q>$lyn zpDh&WQ-7+Y(ksydKXSw20^#iR;vXJ-ks`stb0Q*8Sl-Ur4D8m>5EzZiM5zj5{4*3E zzHi8a8v5ai`hiOq(4C7$Lu_;2{3*M0`!RUF1-+e++S)lan^~DL?b(@sNfREKHWzk% zY`x_+&ax(*i-DcQTFtSal>u`17xD_NC3v5-xe#6CM!($bAsTmdvLPG?acvQkQ=SDs z@g#`4z{6;8<1}Vg-V36d#DCoN+L-N&gOC>UJj%{U+;^H zpABEHt$Xj6Gyh5C)(;SM2#$$d?ig=7A

5_q@;Q*AYtUMU=EHFH^%k6&Gc5GLs1~ zD%+@1zYLrrLi%$e&o1`6c&)A|WT*<=#Hd3cWGml%H<55f3(yt6hxRHbv&L(rBW5lr z&-vDC`nlp~jHG(U)ngRhn8(^0uM?B2ds26eceHaNX;ZVh(@dKzWUfT*r`S0Ku4 zmA|nY>35a90L(b#e>P1#e|d3u43)CP0P$w=#+!+lG_f@RIiVrt*3E9!{sh8z8JAvzma$QGnT1a5u^t^qu{# z`d9ua3=P48Q}17fphV~TNG2C#gF8agc)LUMIV|C5TJy&VYHCN^#yW*+?xXL*x?8Oh zT=wRs!aG=rIG%Z($8P7fLd!|g;O|mkHhlqzpa%rwraKP`#vs{yjm3QxWV`I0sERz+&G4sC4HzQC)!q>|$g zA3k1j@D=9g8(a@xCAFsz?Z0Ylkl zxKzAkk`)J#$f440th(97rG-=(8m8y($x-n1KN3bW19}1p6cnE3{800R-o>FCK2@nI z48+b5GQZ3EEL3JS0inziEWaQR-T+Hdvp8qa+DLv4q!B~4SYh)1~H!9uxgm$t&Iwm?&^ z{)Dh+!C6UOlgzZ>^kjpsaG#yh^B0l@b%JtH{9M;>F8s5<%xmOkpS@iDgYq@B%y0Xz z3yy5UrhG(oM&liFI%^xW46fOVP3%*3>X@w2Y-=y6-=ad;je2WfgZTE? z7wv{G*Gl~}YF+4D|BXYaHIfRJl}VWk^{rC@crUL-!#>Tx_`Gyh+II&hhqL;cIlf-^ z-d%jPyBwIt{%@ev@LPHMCn1Wom!(pfr}o@M=a}YY@tYcq!9Gva^WbzfB2**_LjHh0 zCx_Gr`|_@{0ufhMoiZdD|<0w1BR4YmF-buD^CjQ-3Ao5 zW&Xl-q;;A32*ipDly*0=0hJz3$ekUu187Mx6<%LsuqbCnxH%&}F0WHxnTH;aIkb9( zis!0>EQw<*(|-!1r(Lhon2% z1X)*3xh7dJ;~z1AkKww18P4K+CPYPu3Vkk}*FzPdZl9FYvF!|i{Tvf-dHz`qJO@Qb z`af=35m#ZuBmCGs(KYFdhpMkGo%dygA}KGdIQwK){Z!3Xd65y%X3Xs8o16C_Ge^}C zY{-7tPF=@f;;q-)KPE+7^q2&y{(BDSDrC%>I5Gz7`o3X5ciY6`XndTA3D$`wEHL1- zmnTV8S*~TdsAu7!XQSaDgM)jE@iKVik986)jjD{^58L1E{LIWv=v`LvA9Jk> zSbrjX?*YD%{Y(8_NX0Qx25N$$By>#T9abryhrW$pRmX1mVn5i zoj>{#3Z>AVqLH*T!&LUpqiF1s#W{O%uYEN0r!$AvGtWo3%ZPn#Tn6VWR|Pycl*4ga+(Z?`})>Y1!}f$=6p z)p0%g{A|wxH_awzP#<=bhs+H#4Ij>O#y)Ko#+k@<0M2Ni@g8y}{xwrHB?BRe3j>>@ zSTaMhy@bN0Q7f3ee|wA6>V_+RjEVb|+5d}T_s)mbKxOP{rg)cyS?T8Rg7m-^tD4}2 z6XNT#A}^!6JtZ;OAen*3$pgZlxGTh<8PSSwN?wx)LamHu+bVj_7pncgYf^6G+LQ4| z7u?QLoN|Zv&-~3H3^zx0vJZ#{8)ZoUJ!UKH{-Rv8fgo!?2O9niGdKZ6D$5g_Sl18B zhrQY#I!HPaOwaiD4ZCeK3dA^R;S%m9p+B{EW$ybz=5fq(@FV!$I6UlNYTxYAUtGY$ z8M<|wud}7`jSUQMTu!h?K?YXLEI&r4>j7aW9xG(2lu2TCb?YL3QCC!0x=4l5>WjC> z*JEMU2k)Zwy}z?jh1?x2mfYUnlJISJdYm6*x%FNROATyWe*v+~Ye!1Cg@tA1KsEeR z!DY?#8R&I725r6qza!b(Yg^a0IVU0-C|fboC@Nd#L`Ug7e}6|)#!%R^$hhF3qLyy{~4kiQ1 z&*YC6rVeMHZ!I3JmkZ(^Q$HYCWaLxMy~nLc9E*uua2PQ`3i@1F9+#@$GM)4+kx)Lx zF-u68s*v{Ty0U@fKW#Eri!EUUDIAX&4+j7lJ|`I3j~^brWaJ8IR6F#i2~@RyN+-qt$VqJeai}suzHSaYt(C!`KY2xs&Gpx1rNkNV_Xi+p1Ppimw zj{2Mi8-6c!51ZhX{WL0nTALw@*gy$6-6pCU6w*D={W)_v%!7j3~a4G0!uSI*ON>3%Y4oin?Y;st$j2SxF?Qx%s64N8ORj= zShY33{qjLL$n}4pYr@l4($LB7a?Q|sqTdN7`DrAMF7}eA;%gs0q@h>e@)}=zo*5~N zTF9z-ESt%nyAARJp@Y%pN`m|7P!55F)Kuf96&kp0l^euoN%47w-YRM90530AdLqm3 z^BDp%TPNUuMX^cpW|mLsbr+coAjE2l>xKJc{Ab)Wtf@yyg(|UK^OF=@oj52>3=x{M|5!+uNAiP9a#^At~&> zfsi@OZkaZjhm-@^zVs(s19iN6X#e|OmYJ>_IXV@lx4WwXA-XEgB|}WOi`vt?RII67|Kh!I#YC%Iot>qxzQB72p zxuM~Jc{Cpk$63Fa&eT6Y@?M1~8EVk%`TB;(C`%hfILw@ZY$>LJ2E$SZVkltpqMDF) zD6_JgMF%qAun`!mgg5GS|MOL$GxpzMjZ~j2>qpN0AQIuaToOO1+uvFUEPpvknlAH! zgMGIvhIBu+U!MR;={h}nWJAJMzH2*$kmifI{ZFo#Zmc_@wlWO^_W#>`hWn9Q)^{=n zU*Ac4i7!0fc)@2(`%3Y${hxkeT6v@tyWn~|=>w2jhBJ%He*RqaIc=e9mezzOzRc>? zmtY%YwHk~9cVPA5aL;^A>DV}Mnzyk5^Tw_MXMD&TYM*%DU3hrCde=;ySYuBv{<*GQ zXD@wbaLP2fVPrt|)8of|JqW|sw_M8o;uVV0#gCRYu$HZYjH!c14}4IoAa-+vu)eoZ6#(mYkl2Fz6yyMKB{ znz?lkK&X-DLc$o!?%%sE6=bP#rLfulOqUs~8jS>(x7o>K`)e^O?E%jjCU@T6+<8ed z5S^b*5y~5BA)&qoY)lp14&7Tvid}!anbO_fYXf-tci@OrsX4GBPbITDF1}jJA593PWv+#@d{2JYMzes0o#T03G!o zVJ=nz3%w!;hu*##O9t1br)|o?@bDPC49Bh3DVm9Mh%!UJM2Fs-ortvmJD3`|bLG~q z#fBfPgqfF79k)3%7XMpfao_P>InR4qTH|(M;Fb=MFZaA`D)jk>n7LK2jWMUa$W7wR zptR~Al3g#CzH8Jz(xeBstzLrhhwJ^OWk#sq03OAP_g3)p!rU`I*2pOrdH?ko6c%tB zq=~OTu7Z61OJ&78@OY}ucm;}K?7ul$WZ^5+DBs{7Dx6?U8!zPMucp8Nf5L%0O;7b`6jOpf;*t0OmZ5si^iP-kFf0kkKp) zbajpEQ7$V#qBInMV%)y<<4|sLK2a6ekqgyo%km7Sf_pitMA5a*E$EodiOh!hO)0+s zJ86Hq%hS*f`#@-jq*WTM!Y1X~&7TF!kp;nxK(nnBjctteD z%so9lC9YOF1v*Za$3`z74OE=IU%Ighm^pcsdqGK7b7z1xSvfWn5W5Mo6-P@2CRWah z+ETGaJ@n>WYD8Kv!lQiyB&ZA4#R*Np5iA>7aF&_+!a*VBg2*GL)^BUh<3>5Qq^vS| z_HS<8i-Yp8`aUa)xo7lb!N*JvUEnXQFBY$9wOX!Y42KzP0(b+oF$cYl$m!7V!+Qv`-=7e2o7(MbN|yNoWn42ZjAD*1*E zE0iyvHc77}4JBuhdD)5&l;4Nv6jxHog%q>R%&>crD?jIEEW!v?z*MOAkn~(MlZBf; zZmz+9%C?Z6sL@YJzlj-vR!@m4<5GOF<4?$7>IK9t`p^kcYDE3m1|x;Nr+|;<`yuZG zwFQIFVH`9!9Vs<``h5^ zvZe5Bs*G{1VwaZ<>S2LuR5JRPL2PoG>yK6T!&&=Z440~doc7f$Pdh&C8*p{?X=ydG z`y28W;KhEkPjR~V>BD(b)=XL9Zsa)Nu;onZ2`KwfqO7G;p=tj9VI^%<{lRikTbHSD ziT-9+l*d`?q&3cOsIH^2TRH;PAcsGu%q9}!%?_gjknAkw7&muc>GCs5=Z$6-<_dSO z;w%B#3gy~M`4SF$$m$y_buBJjf)#2EKr#n5Heiytbq+G=BWjcK_hf(}e)KKY?zd!> zD_%JFM#$ApCTKPzK28wXPQPAMOBpYs3kkk!S%Y6*;ag*74o^;^T?<8c>%(xPMB$|& zTlJRps1jRUoR0G+W(f+itzLvv%{B~%fkS>@IFsSxlRI?}62YJgo+@LPb#KIA-XJx5 z3FH4c7NvQN^)j`5>}y;-$Wrq_76$A37aeb{-QbOG!7ix8bb6N4%mH}!eSaczKv;=F zJ&V8XFwr9-X5(&J{eEF+057T!jZ||^EA`3!ILnM%6&eb5IX zr1sHJbq2fe;LkKNsHN#prq_FDSlEC>uA2DMj*V!6=Fj1pvOSueJMXuv#cKz9edOI& zahz1yTn5>?^tU}C^Y;w%03Z8`uuyTjR1pyo`~6A(V0DH*K3pyi+`@LX!a7+ zAh5R9q%{YFYsG}@+hPZ6m%P8QuA{4%m$xA*-j9mSSH=raq55LF)DP2A??Y@N%BLd~ z?zA-utgxy#jDW5~mn&Ahro&mn<0slAc>PPbqu-jKP zM@fX)@VLD@{j9i07hRTgodqudiw?H=G|QCat(V73FAJR2Z5xa45qd?Yvut& z5xV5PC#K7g9}{U>p-@dQLyMfM5SqjjtMkEz_q*tQJK%zx~(NdYySXYqfg{T6x_-S@R( zkYF%UtycHJ-eR;ajQS;{_rWOQ$G{piJ7EzHJ&HvAjg$*YSe;%-{pODZ)6JoKa+u*c zB+|%IpR@3098A|?D(xQle}hF9AzzNF%Jj|E_;v0hYT{befM1+2T~`UG*_lat4d}xf zIFj642?u^Ym3^l%(Erhnb1R-z-ENE+GG`I+T4VON>zkwhk`>oPFV*3}DFCn5lp^OE zVXYWC-4+i`6yQ_=&-_tAyF0<0a#zJAXW$9YTLo;Km z^l@=f*xd4t6s6)a1&=AYigzd2&swwMJ+ZGfOJm>kW~)@0!eLfb5It4*RvQZam4GPp{=d0JK-5G3!{~atral!6NT3zPLJ*z;pd=mSZPTP z5kTtlO5h_W_%>_|8sHy*JYGjq?MQ$XpgaH~((X~>GOQ0HXauG>Mw;UL(Lt_^Lfo;{IcsYe!W@m>9ua*NlI#wOKjjuZ9H}vyaMQ0O~d6*z5)KOksUm zCD!IYvQHuq{N$eyM-_&z`*g_q*}5)UwcddOdo(6yDRkSQCY3(ESfPJjiW?VpnNf+i zW!dPjh)9ocAr*Q|px8cJ-Y*Zvsr_rU|9*e6&l&<_kqS){=S1lQ+L+e`XVDu z=hKW%8$$21Qj#&DGP^nWAV`xONh~8Jr^*MpugZ}>ZA&niBgzc-gh>)sHX&@egC?3% zROd*$I#IH$g1QXclu0F~OesMq3D3=q&x;!Pn2}d;$%xIz2E9ViA{3^=Kd_dGzl6g> zS$hE4TzWt;GL#jx^B6|e)8l^ysHpgxLY6f#89VfER&4UuuoY&aMM$WxFkm^|K`-Dt z$u^iDye1Ke4P}~3njcK4hb37%^c{4`;q*g79^W{1swxCasA;08wIbZ=lF}4&>Gc;2 zxVp;Nkv@UWMULyLyB*YLLeAASnOKc6$g7WA?UJ^I8S9rj`dk?*zF;@g2(Hu8e6vq< z6mLZR(v90O@u5(q$5PEiZ?*hZ7{fs)-Zk-6Fa5Ds4o|vIR)OZYU+0?R>`$-a*Ld_C z)6n(_nyCb&$oweTIc$F)JHu{d*GY2L1KIc+z(tSYR2#^!2x_^exxrxkd|9*GnDw7p zaJI#u^p!sJ*!U)dBbW6h;{^e@3Ym7An=^{oV7JO@hZ9(kZnp$@y+~)Zn_s4*q+9Uf_0$3&{8J#R)Ip+0hGttaNARyR^w&Gn#(ASpCm!bb97^j<2zi zW2S$tPir%O`}QyEkJf@Juw?CvTWxBd^AxNO5)rhNAayB>lKY};b3=fRp<_X;`4yzldm4Lt)6=r#yik%Iz={!YQa`>U4pyoIqqMojBRB7SCPj|~NRGmj51eP&lji<3c@Ay0oA zz$f}pK5&Xe=-aNsBhd-kUyYMlM)jFE4EC3B<>w-87{zdy$eeA zfUD9B_^EQ;t(t#%W!56O$0_2?mX+biM=%AKVQ0@w)Yyv10Grw-s09j_0+s92^YBL!}0IB&JA=jZ>MwFvD6@MYqyw4wA1Tu+WBn2^Oknt8H*Z_kVSP zmR~R-HT)Y+AB{u9j^$v_m1Uxj;t@_fT>hSzVl$N499*x2&3dM*{??89BH(}H<8z@q zR>Z1$`F17jv*x5VTV?qPg-TF=z@+FkMm|zp_LT2$>vq*Q4+;{o%vHbhP$xDTDxLR zx(vyCjEGCiObfy9a20D^i<4=wzX&I9ck0if#PHuh$Gh&oPG`$(w(aN9VrzL&T6CQ* zUis=|fJHjI#H#69N_&nJ|MFs78V{XHMwV;LTYe4tN_S@U;CDPctmsAk{wCkdmN1y* zbEDyEBOFxzKbeJ4#l|H`>Ccj>@zSDU55;$5;cx%wIk>9(E4Y_6OR7_y$Es`Z zrCv;E99iPx#NTlU%UVzbCta;0?)B5PVJf{P zK5DU<1~hY)6u_lq(*T0WRy~9kk!%NDkCH)+q^J2*1CYh>$A3#Y$!b#GE#xRD$k2t$ z6#&cVSm6#CcbJGWC<5c9TY@{Xh!XR@(LONM7D3M#Qnw9>u&gp)@g&Jr_3w-kRoyH9Kgm99|BUTM}7RgkGdn$st0V8xb9uKGEM-?=fA) ziH`c@7>+GtJUIco0buBoYUofR*y`N6$R?lqIaA=K(&i6e1MND-ot}Y0?~?RwCVya` zEw(0}NBXCm@}%aA-mgvWU6oe(GQaI&`q&j13c36WbgHb2Djny`;FRtE9-iE+WQ+V5 zr0&S!_S%QBO?nLu3?G8eJ%P75fJ{%9y>X%dum|h2DHl-u2gw1-&FSm}Q8uaU_)0LA z0gK%BE-zTeSToM(WY$SdN>(>?=^r=Kea(Pm@MNg3otFwL^&uZf#ZW&l+~RH*;z=RT zLu-|EQxyTrq%2H*TN_5?lyiuYY0Nj}ON%2h0(0|^@$+Zp;=3beRcXpEQUmn<#vT(n{={vtIxT%8Lxy%e>dAD-PTc}!7( zddzJXtL`31>P@(v%6`M(9I0V(fz8{x^dKf9D67G5I+eEfA0}+LS%aUqcL;y(_;u5= z5_!v_1*0Ri7$GcrV+2pQEgcBurOtR_4UH<@;zhVW<7~a zKP6>+|N5WCz&nVk!d^?KYO1jGc`1ZTXZVU5jutD`Pg>ig74gM@cT^4rM zZEd7-aT&ZoM1ih_GS*7pL}B;#gdw?am;YY4&b?QoEC+T!+)x?sj{7AeyRWjn z<`OBvb^5X?IJNs$1BAM)>yIuzwXs>%y?N$aE!^-{`L6??b69UU>mv~?JX0J4(>Z3Z zK3I;Rty9fCv>klO4ABO>qn(`VUp2{pT^$^@*88d4jEwIq`sX%KLU0?hkA#HyF97=Y zN)PWit2AunMNU?i#N#Wj!I;)~ql(X{SVbsqF7t`P)cUt``$%mxa@p^mp5aGp8XNp3 zY(nnixSb_Buo-wYznIbbf3qe(^i>=$pO|3nHyYE- z<4W>bK3ieqAyg*yQvX~+0Bve6-9wpXCeRUE#`NZ>AT(1P61Ad4nS!@9^7DD_2C8hd7@#lqYgHYdm8!V|^$K z1Y*?Eq#RN+&N!wtiex|+ak)z^}Fk_@{~cx9I>=eg>(1XL)j2YGGdXL52KHo6X?N?Wue1k zm4?Xa;cAfCo}pjCpv=INY@gQMF#Ju%a&gCp3*F(cM?a`2`liR$f^2|6{UeTQuSNkz0c%aM@vrt>m8SZZqFHd4>FW=#dC$q+bOT^zr=MV; zAnDJXTrAE2L6TPt0IW(jf`qQ_V7AGC-MAt=rJ}WFYT*E|^((|woM7kRvyGQ|8}r#j z{w{!T0Y98tQL6uQ1M??I$s;`2fQReZ!d@@?a@)P zJo5YkO4zdi9(U+JPF4BfHAwnNC0;s>-d+h8N)}jD=qO(@wQJTRDTx=rpW`250`aeu zQ=PtN&Qvk?N1wL-$jjR4Z9U_d4KwxA<`?^N(uBr@fDLzaLM8(AMCqo1`giK!difK_ z=G1?IdamB=W8DW%|8w=s6}+W(DxJRQ6>g7hHjwKnOf29h*2&ygerB^g#SHJRtR1xLML@Xygw>KgGZF$`Qt`T1vxyhnl3E~Esy1IPJZwNkM8+h9aqT1?zAMOj{ zvp#DBu84!5HYaT!p!=jLXF_ldrNdF~?zMee3pcQjUVRp$BMPjpkKeUznkf?`h6*8DQL#c@!iCj4ML z4xVRmMk|<`xBm$}thcukAf zf+4go{56gm0a=zd?buYg7h8%QWg8j0)nDvgA=4tMPCI}DNcQhC_=Q56U8HMWNaZ%&Aybwkxdc5Y^(F&#qhUCVy3NB zjJc6qM~1!n^XuGefxX5Qg*%%)FaHg~_TO>j{a5C2;Tjh$I0v8hiBP(e>wR%exo=Q;reR^3F6WgM+1vS7~*64z1oj11( z)}0oCjRpSWbDfX%VKH6#^2jvXYQQyN-ApjkhpAd|4jRj-uT~y!-*sujx^<%{iMsA* z2*Ni|B5(<-K2LAyn*7kXkeb3auGf;UwUa#vksP~>upLg`+>R$5Y6*^Q#o=>$6{FqG z`CZ;wosM2P2I~_L`(3bJ&00zuv*$VZWUlx9Vl8jN9HjqY;&1voMf(+YrCMyCD(EX2nd?I{{0mEkhNTO30*iWEKBaBJgRL6@K}u1z+vhT`f6mxdFBUBKkds0$ znTFk|hQ8bx+IU!NWD9HOtvXNy^{IVGd*D$+tHVp0h*(J@}U5p)7wO1MmM5|rlo>W{SCog3rljihT4vFS%D*rVK_%;; zIR1p6@a&f5>74eil_$%ZcnJpTA2W&U7jK%>=Tl;be*WC0MvcLtCyeff_2gukR8Q$b zdE4`0L*$&Ao6oxCAu`_wn!0Tbs+jvA*%adqYPEfMkG?$LKa};L@w7ewb!t01Y9$Ux85dhbKWfBZwWb7S`Fpnc=7+|`F4{5|J!qj z-Rh;wo7wzmxBF>-&7B6?Sp9`_6?63Rf0?tnc9i2AYRBYgLp4n zZA=S)z<$tEH(z^@BhM9*Q(H3aw|fj6{G3X=fjd%$ctk~}$eU?pRG)HCN&5R^V)bo2 zY4-PcF0F6Uqap6e+(oM9jlT!VP9}9;0f2{I5@p1 z4Gw5~V&YK8st;wMX;*Ev5?^akc6z9x*mxpmLrf;N>N4nF=*{bpZz!>EU7$y%47#I^dElc=sXA2%@o zg&XN`5Z%b>tY9Bx*Le@1qWm=;mw180B-ahcdTrIPZslnqibH(Hu)f3yk53&D^;1=8 zgzY7ZfJOBhXQmmoo*~lf(uU|V*yHBF+{y-Ba`KbLBglvZ+X4WKax;dC!~U1``z?IP zx-AlFk+)b^tJALA^ms0?>#lH&e%dL0x)1e?T!`}=eum^>pcS9Fl|%2+DDl-ZsO0Yt zkUC^w)=xLSo8OrGq#?ChiuS}9raA&7pD1&l!VdfH)8hg*m~$IaryV*pHb1ZM6GC_Y zz`*`{$aV;UdGK20CR8Ud;(KpwTMul*LlH)9Y-S&o&j%x&netjQ6KTkrl+He*5SK*; z%~dbdq=FHXMvW{s|I`l(_#B&!5-aMaZWBqpu_lBiBas}$@NU4gVIJ6&#O^NRrJAtN z`^VZ?=vUS6KHDaUuVV_D13<7Td701kcC!Lbu^{OGwvX*DqF-9d+v`rc^vTBlChl&GRErj0IaAOFt& zOJAoU%~}9vUCy`VGu!jut|t>qnp1lJuf6whYI1GjhCz>VREi)1(gg%miXze>7K)K3 zB48*1kz(i|y#@71FVc|~rAsIpKswPw6G9OpAOr}#hmeF2k`VI7=l%YNZ{C@+$xJ3Q zciHT{*=u*N-Tghm96y|1ty$GGZV^;h>5ti!Ohg)4I@h#GS(L2DwC z-CGYQV9GY!XzmB(5ZFb+Vf7IFv)J=2M4y>7`o+HvdSSb68-GECk1FL?7TgiW1( z=R7qua&O^#5`^2S^bC}@xG-sP*`A;6#i5@MseA|nTen`v9_Oi@I_?)3|{Akk6es%qy=fAduw4oK(z8s(OHSUhrJV$*AaOXP}_U~WUIz1B>KCchc z7#F0tUw_GZ$m+$KyyuxHr6&9Nt9$JZWwa@}EGP|Rns{ZS&5Zfs@8@Kl?hGH@OwxF%(2Hx3d78g_tKE0N-UKWjpXP%jO6Q2 zcycc>nOPiaCD6v^s}l7~PV#5b61s6Ra|j@8tS3ucq)!4?x{G&;#->lcWP$_m>AGrN zeO8jE?>U|Q<_8tPzShjxdX+`Fk^&42Mh*vN+^t}jy>va*g z)WwQNDYZHtv97We8mXBw{#x@RcRmT9`vqK3lS!V66&mjU01n9&Mt{Xkgf}Ni*@1g2 zELJAZ*^)#&8~ucZ25j7C%$h&wuzM(l-JDbXbS7BfX%78n)h}|UXSw85rv9+Vahr+p z@CO%+kj31|2P3*ta_Swy-a%#J2~M?zW|U;!hi^;Ax)=R+=$(>6749WX$x;{k=QlT- ze$5wo!^*#y;=zQAzuy#?WhWbyAJL0{0`=T>)xOj5$u*mBF)>ON; z`J0*7)vXgORrJi?6RTP;FQe6t|9JZiU-*0mvS>Y%*8)y-Wq-?^adZkFY$Y1johAuh zU|V?j!7juhkT)Qg?;Mm=`{`fGc3Dh%J)@p@?9Q&pO9}rIhCWVMcL2KT*RE=Cci%YM z-8rz*)}&kRW*adSph&}uww1^$YpRBOz5!ml@%D!8EU!W~8&T{G2)Mk|-gI+PsqUMt zTI{qfpNziYD-#1A&%4A62LAlLNqdGsg#_qht|x=#*9B@6I;31%?A0XQk_M>JqV$-n z$IDXJET;szhfX-l$F>Jh+FH6udv7-xFq2^X@}MZ=ul8?jdF;2GxY4)Pa(LrpBz_zN zp;O5x7N@jyHLbbQWwaNg-u%OUO6bn6gQmvsb-uDR)q z=WwxLq@sGEV4XHPKiG8rh?sP9cx;o)w=@-w|tl#$be9#iRw+wVD=UMI5Z*|P^ zgZ5{4Z*)`lT2!R2XbDX{zPsJ$XG#d5+ehQdu0v-Y$CQ1j`Kj%VSWU_>bh}d_17lZ%<`htiMx( zJH94sl2mj4J{Bv@$0j$R$_ddD(~CR|$k@*lH2Yzg>ZwJU9RF)V`=aOk#IB15$%W|Y ze!m^eBx=EY2%w0(tS>chvAL?PD}h10A`Tds`MWu^IUO zf2-Wpr<3(_(E|`>PHoN?zC1JIagVwr$AZzao{Q&lbC$0RFu!tQ&JKopcYRK0Kv^Z5 zo2E5iC4VKbXK|;NEQUs+NwSP+(Z4Q_Jzx8H^IBqszd{AtvtgRO;jdV>JcG%_bZL$c zk-{I&?ym2hP%1yG(pRidJo-#KsEB>lcR=s2Qy!l>biQqIX3FRRU?#E+1gcD7@9XTQ zoZB_eJSF*0o<9-v)IAm7dc#!U5K#43oZICfTUqG9fZFrZmFq_Sf89}L_I_iI&KIev z`;?z4iDvgh*V%j7O#8GC-o7yAaKT^BO>c;q)&g~M)^cm}omw)%Xa?^-PAqF-Z;_CE zEP3YfuO;Gv&f>dl{!_0d|0*OEznl-zVa^l}CpI*I^rt;~XV|_4rS`~Y%Jg*;Cmd&T zNA(gr(T6YiVV&_tf?ohBrSYBc88-h*yZ*#L{jf=JFWx5S>{+u9CFUHQZ_-kXoUjx*AYj2gB5s%{TmRIyINYx3cC& z4WPc;2JHAW7r0KRzU}g%x5@xBCSMnYc+TU;7iWt9-tSAWR|g-c>vpmRvU`DBW<$^W zTvO>loldfK2HB@Q};^X1n+Q0Y67bX!$im}Yh3Tu0EsMh;HlFrq{l8$OZ z(G%>DTak|MZ3nhsZ?QOM-!sm<{1_Y{%GTAZifOnU|6DFv#X1aH*HuJF2pgmUXM z-fx2{ubb8t_?%Uf*@uv_4Is6m-HQfts2PY>{_y;$8`Ud^D-J2aEg@(ynP(2je@q$b z4jC96jCsmM$Zgh4sWk7F}UmIm?zKRUvQnBKT+W~V@&7ZPmRwt7z;X~I2t!=y3Cc=xYhIflvb9czJ8i& zRY`7Uh=(k{U{suoP_%PuEsO-@=bWl>uLU{KKGSJweQz3$`sz!WKt4zoE^jVUasJ7Y zYwqiBcH-bqiq zkCxZ;jItedPqOW?v7XSR-)z?FwJBAhy$eb{Pd|PCyg|208**#d474>kQdUwL85yB5 zj;T~?9FGKRrjDP+5NY;3=h5?{ysJ^cmrl#8p8@Xe9FGdgbh7tM9d?wg-2AK0?-O-en%V{syd_*{i*O&#s?sa7O4(t59cE z+deMX>JwgLRGYW6Bviydr(zDFkW>;z^Uy8+s-yn-St_)~>I}Ge2bq7z302cze^%zCdFq^}#K3pRB8AVsR7;&O8{2Wln; z*RJ@WO61{kqeLB#m#3597H{Cgf(9S~*Nhxsh72UkA!y<5v5<5HFJo0NJR2^R^uox+ z6$G|#R8ksO_mx5=25aNViQU~xhZ<()nQz{_XofFLw})gRnVkSpYYSR1f96W}z`8`# z0W1P~^fQbcd2lqmKdf5RM~J+A2jKQ*x}a0to$ih`K~h!e`wa)~us}UcFEOQ9_PPpv zlgi~><^EC&@h>*yGv;Qt{r#AN;MIrYRkbhe^U+E}7|2aWKEIothx7$Jvyuq~b2^&P z(RuniMumorQnCafK9dvygX8|VvXPbnETTKyFbMQIaXVl6Tjy4R@KbS z)z!1i?X6XvwBd>O4Um7HqqOG&9_wcn)(`g-k_Z4-)< z(l>D2ZXb?+88+|zY}EPGN=1XNPfbiv+#P0-$9fJX(`0UcrFXD^qkZ*~+M(hNHntG& z_6cEms|GjTn65AWR1whGNAr1Rp<#VL=V)F@)8GmI*a4SuJcZ6U_S4YO)`q`6?q1v@ z5(9L^*TcYVt?YpBDa%HY$EjC+mSXS5lU?x+%J->)82(DkGYFq#PRNrdtIa^ZTeO_LW+IHY+T<~?& zj6u4o?DUIY`DPNit~0m;4DNeqWXGp3V^2;>eu}bGOTAE2DEH-wdP`TJ(`NA86A2A9 z1Lo8k&|W<*wtK+or#V^`HBLSAGMiHdg-}3^?>_!jDl9IP(pNg>qK0yB(8-W79gmk8 zO(M8xiJMlkRGwwHrKPH!|8)hWtjV~7_zf&pfVOVaC#MpJrBbE!@?q5m`q9|~vcz~$ zkGxdc18G~{S{?jKn7iu3(Ge*Wv9t5&uth^Nq0&6gfVQ(ey{(?h%R2_o5h&EtI^5!k zfQgAm4~4I z`3pTZ&y*OE`%MLXY&n1~Rqx`g&jB)Pl@EhV#$|xp_l>rj=fWrHWF2DCdb4dN8a>tD zkLTvW25F7q)*v%iSq~IYwy6Oe2m3|_AM6u}l0E=)=19YW2$XPl{j;2>dk|H+ci6WT zGjJf?(0Z!4MzIGHNvwS-3ewuMb7EuL_2H#pe_j4$9>{|2n;jiK2vgTyJJac%R+4{F zKQeu$*z-n}J$IW>=`}(PlQN!%s>~)Fn66+-vFUMVTUq=gJg^Tt2}v zh?XcflDbylK3a^^p)duEyuzv$Vgn5ePEas!4pX!n3WwIMBMN>^xeTGx9Y@a&Ay8)S zvzzI(I zEtGVdYnf0bFN;SzbjE+wq3<$_CP#Zjif> z5&DI}kXF%%jUx_9gIpiZh~J0M_AR!@1dEirSPG9@!8B7bzzDudUb;;ad*ZV(UkY=E zz8!+Yr;e9a)>gtOddwF3Ky;uHHadd3JEyR8qeSfHcHoS8u}tk`MexqU;38AtlS$HI z4M%(CgFfov#Kr_R7D^A_Cl`zrM84~H)z@B9EfKWnfdtT$`37VQ&EY1j5x%~ZXEA*= zk7k_GTuYTR>f4a6^l|fazY9vkdKo)4Gs|qxZNYw2yHhiKT0WQJ&FFH3k)c7_m?t)L`Un6Z~R zewD9!G$_Ot)2=#Ot#kT|nt|(;rd8VPL3`5+=*hcZQf`e1h>hrs!t?%EegFX3(o#jF z7Q$eTU~sBo>41w=InUn9&Ot_GuoK;5gSeKu^EL0^5)3ksi?v)hLK$Sz`e^?$;l9Mc zR-LWSc7LwA`2iB*t^b@2KC4RcMJ>g|uNip^K&#uIS?3r5GqPPZ-`jJ?HGE&#TwR5L zzFN!H->&`cE6@4)@I!8Qd(s|*R&@u2|Ec8jGv)f}lB@ndZ5KY+;}O;Xk7jLHG;NyY z)cS>Lih{es86Kfwn%G^dsSvQxz7~H*#RQ<<@Na~IFVXoKJU#0A%kQoC253*%)*j0b7^UGj3(9QyS#6;KbrA|1u$@!2HhctgEW=>3k?n| zwoChQ{m>1@V!@_5)}$+}04dhoKbEjzz$ty2mm$<-SbDHwdawo}?o??UNBSKS9I>Xd znPxrD^m)_8#Dc^DX5*@A=IP+nenp02O=W{)LhBP(0pbr1^mmrc_cg-mN$5hg!?fEA zdvBB^Yb0tUzA#X4g9QQT%5lt9cxU|qn$c3dQmC40;x*9L`a6!U+B$VItDv}ne%cpy z-z#Y5*qc<1#X0z%J(>Va_H96m*GFLh=)ul(sZm;LT3T9aYIr9YJ~0CpmD&|!AW3nE zO$Y4qL`YOC*}Q@9qFyuyhe7(+f)U16n2O+g3?3g`k(xlt10U@Z{HDw7+evI%H=~{u z8`y)VLV#-O>;eP9)`Oij*l!{#@cP+*@sl2{GiK=3s@7gB=5J5b)eLf9cffV$=MkT1 zy*l_p81!hdJ9D7SGRJp(zf8W(Af4xQEs3@v$)>-mEaP@Ugv*r9pkX>Efs}?&^ zK(OZrA3Yiu*MjM(lhM_Oj~NbAa1V7(y5hQq#|!BEOLK)2he5a4*eD)S^_-_`)P01{ zl`?3l-6`lJ-yzYqfcWZoXm%G=RoKDaz9WLNdvp}3Aquv)XN8*AW_@1+_TY_=jStwh zg$lHf3QA78TKYnb0k=S9!JoRiScgwHxGRG@^2{oEA|kC{FOWactWu`Q^G7)`KfF^9 z!V_9!?U}q>uCHup z69zVXFEim0Ba`r8TvfmwbdiCquGhd$lvEuX3-}_#TRq0^v}YRd8CWP(O!h{d)Ik-& z70kq0x#*;^jTge^QmNG)I=)h-OF&^*({hk%Xzwq-vtS6u$_>lNahi`gRG&eVbb8mYvysKmSx=2Y}1Z^GnRSK5?uw+lz;;S zc2}^!mwe+}oIHuB((1*f><;M2FV2Oq)c(42mJHfx4xu}XjBJ>i*)A)R0glTQrL8)Q zIy%7Wz6jUXR9}^`!ScIW=-(XaXMmWI;m6@bTHF9ny?Z?eRZ?PoEG=&+?rwOx>}LOT zKeK}}3Z0>&GY>L7mY8Jjox(L&%X2R&>%NIkd~E&vFlwYCsH>$_tOS0dxrX3f<7ThR zBoc{qJQ7MJy0*`;1~~z=w6rue!;TIKi;K_N=jvj2e46||`p2wGVBpt0jW?FWC8Ao( zpO7osrpZ|iFPT*(7z=a)Ii0+IJ2@nQh|mR7>8-;*XYT5@ZX?X>5DfR@dCdmoQ2 zRD{WWk%`MO?YDaby|ZxMKk4Rzv>?$skpi;S_xZ6GjgLQ5mRKu1_K$)ack#{7QjXKZ zE|Gb_Sl;OO=0Q)?-9Pxmc6Eq&1OQl@B~QEX=fWeRyrUPa~dXoK4!>brX@!yn(p zzIxUB?LMxc{P$FVEG*U(_gP?ZYgs5|1`XNnj#DsYp|>1+O}@9e+(l^oM2QeY2Tcib zWi=&48&`gRm_EPio0B7`I>D~A{iP%-Eqv z&%j(V5tev&xaLQ+e=%& zGXmE8lZ<>HdN%OAMs~Y}P-}7IAQ6s#1URbY6A3K9wKOae3Ug(FB_9(Agn|DNt7T$- z9vlU_!)$|VN>Ya%;XwlZr_T+A%F81VQ*fD0`&#XydSQnCb_cA9eBhIXIuMW ztpTbz<=8r(VGmxh(Q|ql+4=eIbM0WwiD!>}vlXFgJUXL{V>>(e_Gd=ED2nS=Sai#& zlWczdZcb4**OXXcXoUL&?#NWEjvVZLI}EBLu6*{O3(7n`I|so+x+BuvdoMlP)4hIY zmdoK0l1?aX#Y7j?ErY-*m1Ey)Kd0WULiNIs{)}kdRL4;sRy+jtPKEw@6WvsPnoACx zA!FkjI%R8^6vRV5i71qB9YV+eOBFJ*xg1@Uu9YU2C`b>=vvh-c`RR@yNIM%9uQJ%7 zfMO|&0!r0*T(y0@WNOxUZ&h+mP@2Ap*qHIRG zJcE!r(T#u~+6su zl1rg?biysIa2(S+O0SNy-$3C~VAh|-{trbm8I&S3cPNy(va&LeDaRr@osJ8Ru;g73 zIVTGUja$77c1C-%j24M`n8uVxA%stAut?_*&0;Vtoaq#4sq12+2C|JDZ4e)=6jT!` z=()#-0Ng zjD1}o%q`MTtsrhcYmp&R+@W?UN<*kCn$hNkv*B3u5W~d&LnQM=5t!PryzTciw+5f$ zW)vbXPIi2=(I#iJ;?{ZvlCbizt|vtV#J%ks9)MWYfk~_r`&(b^%;aIgmnE$&+2+na z`PBJ6z>{>$t$qp=6Ftnz#Mg=pZeO~lK0L)j8$L_1$&~C{_P;o%r>o1@N1M0L?bdI8 z&a!Jbsc`ndS~HS==Tx+(j~)BrSJS;FTyDtkxETdx?0}b@CEJ91Ohs<)o9Y$3(~UzT z@#Tt*KCYm1lV}c{kR7N@@3;6c(ti@VT+_L#D2KW*n@@)oAV}(Z2tI;uxb4d`ulha= z$JQ~o9(;TFGgwb1=a-74)!o#x`J9K+TUOzou>Ht~(2IE>xc8%rhDu5BR49n4oDeUA z8n@PN6+Tgge|gD@_&x#_Z_oqkaqS7~vGLF5uDUP=8{GjUYt(JAuiuQ)9U67-EPLU) zy5i5Nm)d~s-Co`Rm=ZytRH@Uv>%0YayTRao?va>%D^A?Q;$6P#!@sAHVgwx(OWtmy0jX`G)s>G+mXTV z#An@A=wi|PDCEa1W{e~D*H>)$xt~??iDNHRg;VB{Q07u^5)Bcvyu8eUp~{nM1L2>| zUFP_8K$&>D>)hOEfsqch^SJ`F;74x;s=Q}~ZgRkJkEZG$hl`7gWB;S?-|yB>!A~1Z zaw*wu?5KXwccnrCvI<4|u>ty^AV0bw2Pw&TZDy_;-t!R_cxh4}^6dCeHs zcQToMyT0-1IYgc^G)Umerbb&c)nscFbnZ%S!3BCxK=en1wS^Pok(Ul1uLVnsX)Nq- zN<&!#@(*FR$<_69K9!hGVL^}{rc|6!FWBJFWvSlC<@0dCaxKhLL&u}ZSp~8l#(CN( za{%1*s2~p(AEnWKtQjqfUs`@1hR!v)10CbJ-8CwgO&bP?ykKmXXoy#E2uP8Ks zh6CD6cSD>AfA%NcGp1HM$i~mgZiijmMRs)5EX_?&CIIdY(_U&Q(ow^xUc|R2KLE`q z`FN9Fcd~%sEIw0qc1&3IzIlgRlM%8LGz$<%w8B|a%`vhaSAZ%)oW}>vNZkhm*x}}U zMJp((Z+chVtQkpIQ0CZ0H8~A#8FefR-RV)n=BmT4PSro&eJA?@9dkG8nj@lk>$2M9 zncq*3LuzYQw}@}Uq&DHIcY#rDOda-#zC*N>3Lgq6FL3KNin{oe@8BBOKd5k6qrN6tQ}8lFcjd z+7cr?m1qda`r?TZ>GAmB;t*wJ?cCg2n|g$*qE-=NA~Cpq2;p)1p-JVm3(=z31~a^V z`!q2=Sbw{U!2r1Xb`=`r7+DyKryH3_C&sHd>+r1B#|c~W`S6>jw|MMV2(NAEH%fcD zcLw8c=tj2-~^0BP(pTU5-y0z6D?xbsiJWq>5=!Rdj zGUolzCO#cku}?CZ?E`b?yP^tQK`b8~gVEN~s@{^bdAYv*hFwH<6I=4-CK6hE#FdM| zXQS%v<~5E!Ylu}}a$@BHZU}WinO(v>EO-xA=oDTV7Z+z`5@{hJRa@O8Q=p`EGjX0m z7%(CzI0tvjS=LQFE)rC(^5Nooerfpq%9PsE`TeU3DZDZU>5gEt)0vCY(;zad(#3$A zhlfI;w9SFDg{m>Qub5hExNdzA@+tc}RadBO!m(U??GFeH1`Y7{&mL@Hxu`Xr_WANx z3$RYDQ9gGqlden??Y42RSWOD$S7v_;ybwOm*VUWBqTYox&4Y-CsBq0J>PHLFjxaxF*Y z5-HbEFRea@XoyapJFtFvbaCe`W?oP<&XHajndCmXJ*fAquNmOp3PaAHRL+#~j=VQ< zH;R5Rhh);36kIcQ&bP2#kMzZ#iO$vod&mB=lJHgZYQ$-HjdVwlDCDx)>i`F+AlY{d zwnJ0bjs%OeLsOz!vtM^Naf(loIX&owzr-QYt+a}q^$mwnpgoGKNIwf=J4tJE)d!iD z#jpN|eryiUbnNkR3^Xuu?RkF$eO{P?^SdZ2D5BAPLo>l)(0%D$ZM4k+X`C0a=zq;v}V#W$bBYCRa2osWpH5>VWlWEVMKmIW2r53@Uk!!!g*29|g4_QG|k=gpf!ovRkKFj$)(&zAI=H?Nd z^8tp36F~;st$!xV(KtH6O`&LWbwC$tv-$5Ld^o9=W;sEO?{&JE%WFFu!JQ8|Onmpk9w^g=-p(nmfH!Fs6~I0|eM2pBNu4?1 z#r^a4+FAMB%+p!h=p&neot~h+pp#UyfIG<|jxk zg;^9LsgJtwxvZ>;#n-_X!#2{5(le|g1+cz$iO5*K(ScxVjKHhot=ko(%ddK0+`oOt z!b&$!|K`=xR44vYL4s6WoJ%xeQlMog@Oc~NY>eX|dn;)JFLn1P3o4V9PmB%?Jv<~V zSDM43j|lxN+dhccS*PV}^R{_Utu*^$ccUfjB{-jozFYk4cqPL$gM9t@bMUc)@afe6 z6R5H0#}2|lc$lUzcbsn>#f%Rgbz-I<|2iK4ClZ%eu>$26-RN z2g%_d*lLQ#RftYW44IPS%!<~b*=jKt_qpoo-`tXx+IB*;E z=di7nK>W2J*j@`?RXUoUlG7)~jO`;Lh3 zj?ZMh!1{6}mIV(ac$Zmf7Q*W*ZM}Y`oTU-nEM0=>i;lYQH+yVSl5DMu4OEK#d+6~~ zya4^eVH9Eh!&!oR6OfVgf$5BZ{sJRr-gF#X+^u|g{>gC4VR^_Ad}5q3{UE=h$gC2B zQGvro&A;sf`pUwPsqub=Mq;xB7DNKMxrov?@6O=5Vp zXH0n6lJud2Ne%be*w~IlU21FQSnh^tgQ_W7)!4R{wO3q|Z8fcou(rMOwq-E6u+FAx zJ|{O!lcy)>LzR3+NxW2A1UFljD|MGloo?sR)(PQt9QAlct{OaHG&_5LccgOjk7O$G zHY9Rpm})fN7%Z17R9%^Mw{O0Q{C8L%qxbYsr0K`W;o=+SaIFiVoRK(=3{_)0P>#zK z4{K`21Cc0Qo%6<2HZ^65s%rbAZnsgZTPt|+cM?X)(n?ZbWgc0VrX2z+<#7PLeylt zLGs-olMfqMSC#>y5%C5FOY!kr^etBb9{!}kUK{O4%C4dosY-Hsf-JW5e*KTT2(gbI zXTC*-N}9s&HCwzrEX^N49+{Gv)Ig@^R`ba}$NWeCN#H*T{3n6`B=DaE{*%Ce68L{j z0^gWeaZ$cMT>njD&Rj73e~thD`29};|4HCK3H&F4|9>SQ%Pu5isP-OsV(kwfKm#-V Jx_eHq{|^Q33QGV0 diff --git a/.config/awesome/btheme/background_white.png b/.config/awesome/btheme/background_white.png deleted file mode 100644 index bb0c5d0d2a52ca1f1e7e285fd6ffa9ee7c553cef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 267935 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

0=)mCPV8abOe3<11hRDDe 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

`}6L!sN5F2X^h57j>yQ#Ub%cW_)#n`kN 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 zɓ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 diff --git a/.config/awesome/btheme/layouts/dwindle.png b/.config/awesome/btheme/layouts/dwindle.png deleted file mode 100644 index 943ece5bdda3cf316c286aabaf2b554e9fea7e3d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 967 zcmV;&133JNP)b-6OGLcB#Be%WLQsQNA z`@~l7x~V1;dr$qtIh=l@siURy3Q8sUTQGk!7V)wi88g3*u zX$mC%)mIGQh>BQM*=t1r4w(^(q`oVr2_`Ly1wtPd0T^^g-Mq}76ag4l7FzVfx*x2r z0QUJyAoM^#y$6)cD2qi7(0f41jirgmVTu4uiG>=zpa{Sr^FlR~6anaSO;u{vSTTSD z0*R_$DF*PBSfuVkF@OQT3k7bhbCo_c-r2=JvMC6g+cXrgeqpt`okqnbDDPN1K4LqAX~HcJ1PQ+yDdZ1e$D&!LqDEdDY^8)-Lc5cPdA-}oY z=AFq6&@Wo?|G$(7lzk)eZMOl#BBxvSH<=cCXuzvD)o%GKAHcZKTg!WcW~D}#$Ahwc z-3A;Mx`&cIF3OaBWYf~Q*TwCUxx6~zlte?#yvT)TRu3M!)0=T%#E1!_&#W`ESGoPr zobOQle3S(1rE}c`Y?ZalCJ*|@*vjO#n}Aa)c7Rtj)SXuHpqGFrx9?XrZ8L^fF7b93 zP&Z;u<}BF0+5%@c0ViDaz&S52?blYzo4WfJw8r)2{PJcIfX(VQFW-Lf>9n3>!BfKH-!{8!D+2H&_Gwr7IIR8spxLe~EG7)&(>)G&B%O zBtWVG(l)#VFn|P0h+U|}2wH&<43S`^iEk;~m$}oK&UEJEg4#~)ytK)^bG;|Cn0cOi z&-XrW=lsqDYAVW7sd+VZbqgvg%3`6iR3vm#kgY9W$`YYOT_jd@&n44RsmOw=(1OGb z@8ktg6^k`Ib5iSZm=Y;tOCA8B)VKEbxM5aB z-MKsfZgqM06&n;v#9q%HV10H}Q>dBU7;F^am_>;N<3#}ssHtf9xF~?L5|PlJq5yu7 zDw(&vD1Z-DBp&6l4cB9v5K8@RpcsH7$`UmtuM`1r(2Pi|;+tZo;JQVLP~`n001msa zVP4hm`9#BBc1}rT(RV!qRxSWT{t${hHk?;N(me*wC`rWj=a-UobANj&5jm8#`}F}# zNkp1H%ijHZ01lcLsk@$s``!QpZmOx6HBk(}exX#&&-u9T4e*6Ttl?5I03&`C3El3Q zCr!HMrV|ci3ozied38s7#E6PeNhlS2>V)0vPgr^Z%!n*H+wlQA#8Q#68MA(K1#{S) z4Zx5Yp=!t5-%=JzJ!mefbE<8Y)|aNGLRZ(c zjAjcEIHl~*mJoc@9uL)2G>x_C|2^3)!e?`O+@hu{LJvi#Ni^qz6Kln7o&cwn z?GOmOq^aSIL67?h@UQz}CDS$wjIJ&5<_pj;W=_?4fxz~51$H z^4$fkc57K*-YEiLvxd#f?hmh|t^FH;n00000NkvXXu0mjf6M@nt diff --git a/.config/awesome/btheme/layouts/fairh.png b/.config/awesome/btheme/layouts/fairh.png deleted file mode 100644 index 65eadec6b066fe3aeaed28e23c03626c43355d6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)Tp1V|fy@t0854mNV@Z%- zFoVOh8)-m}ou`XqNX4zUR}8rr6nIz;e*QmyTS$)32Em!y!8}WD_MG0!_$1=D7*OSn qzF8bVYEhKS);~48K-RykM=Wb%S?wOIetiqbW$<+Mb6Mw<&;$U-kS_KB diff --git a/.config/awesome/btheme/layouts/fairhw.png b/.config/awesome/btheme/layouts/fairhw.png deleted file mode 100644 index 539fdd3cbcad9e9b0ee929e55d04978577870700..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(`ea{r~^JZd^VSP=v80 z$S;_|;n|HeAji(r#WAGf*4rzFTnq|4EC)aTpT8|6M`(lKOzmKvB{zFc?`3=v@mmb2 s@`b#y85}Sb4q9e0Ql80#{d8T diff --git a/.config/awesome/btheme/layouts/fairv.png b/.config/awesome/btheme/layouts/fairv.png deleted file mode 100644 index 9f43b58266d68613b64ef5e5c58eb27307f7ac97..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(?IA0GWx$1Xlqm#*!ev zU=`@ BFzo;U diff --git a/.config/awesome/btheme/layouts/fairvw.png b/.config/awesome/btheme/layouts/fairvw.png deleted file mode 100644 index 6efef72fc8dd2b0a24890cf417e1ed178e2bfdb7..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(@h~|Ns9#;dh2SP=v80 z$S;_|;n|HeAji$q#WAGf*4yirTnq{V%m=>ypTA8&T31Abf5sHeWsw~cnTGic7nhVh z76K~%#)vn!|{*$swq}RtpZ-lgPfKLZFPvMiv1F zG@`+l@rK8%|(~rp)>ulg6X0sQUMQ-X`S9%#{HpkGtcC7J;u8tnPqQ;K1|{&c*Hls>~j6` z>4iq`PCs-BGI_8sqrrX3!s)E7KZ%W&#v)(2-b=*N;o4M hJGp*tUnjrJ2TskWA0%rfHcEg3+0)g}Wt~$(696K5rDOmA diff --git a/.config/awesome/btheme/layouts/floatingw.png b/.config/awesome/btheme/layouts/floatingw.png deleted file mode 100644 index 7ddf7ae8eab1f27c55cd9cde9f0e4037de5aefb9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 388 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877Y2q^y~;)m42-s(E{-7? z_ugLHn9iIiar|Sukdf?6FOH?bnhS$DBR{jZ6a`1}~eib;_l$ z%lwuGbEuYB_2svRT$*sKy8Qf8sd@Kz?^%ES^>@j*^7SXCZ8+Y+SjMpAK_UaQ!~q62 zg9b*P1SDodJ=2fs)inoZG;|v=_+Inmuzb`q!O&LkJL88R3C7C%!an~_Vmxm0a-;Ry zMGU<23Orr*ayYb_FaM>wa1rl{!sjvk1*^F~{PYRsKR>G>?^IDkgz$%XoCT}cPt0QN zx71JeYY1vtl5=1|PJ{cD$2EKYx=vK$_$t$|lg**xB#*=^hI1XV+~(`wG_~~)y}pr`!GMF=anJutJ`7Gv4xakYaNXhYg=F)F2=)TW0O12N v8vQ_1AFxhg^so^EYHZN`aQ?|h`TLwp3R%tv3qMK#iZOV)`njxgN@xNA7auUb diff --git a/.config/awesome/btheme/layouts/fullscreenw.png b/.config/awesome/btheme/layouts/fullscreenw.png deleted file mode 100644 index b88939b909d04c47c4b38a62809dfe3b5dadb618..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T!Hle|NocXoPQU{Vk`;r z3ubV5b|VeQarAU?45_&F_WDL%1_KUe$36cq`7k&wIe6+n!*z$p7n02zBG?Ng1B4IA vX!HY3eZV?}(ZfavsIfu!!}%v4gTe~DWM4ffg~}* diff --git a/.config/awesome/btheme/layouts/magnifier.png b/.config/awesome/btheme/layouts/magnifier.png deleted file mode 100644 index 0df4982605603853d672dafdaae9920635b6c56c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T&GX32Qt6bUHJ#37)yfu zf*Bm1-ADs+JUm?-Ln>~)y>7_GV8Fq0@bmxqewn2jOFG)_hRtv@a4EdW}8KoKJaSwna4o86B@qGf6vSv&T{Ep%xXT6N>5immvv4FO#q!g BG`|1< diff --git a/.config/awesome/btheme/layouts/magnifierw.png b/.config/awesome/btheme/layouts/magnifierw.png deleted file mode 100644 index db3b0b26888da13a38ba0000ea9b8b660c654272..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T!Hle|NocXoPQU{Vk`;r z3ubV5b|VeQ@$htU45_&F_PQY#g8>K2!O#Ea`(>7DEa_;w8#cquz@_jekHfYkEucyU zZkN?B8@d?wv2K!^u$MhT`M|5yXC4FXPH6Z#|2;EzILoDXF{}ANDm`8OT-G@yGywn( Cb~VHR diff --git a/.config/awesome/btheme/layouts/max.png b/.config/awesome/btheme/layouts/max.png deleted file mode 100644 index ccc22cf34ba789d95c1b92498f7e382e1ca0e79b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(@U{L?q)m6Mz(BNswPK zgTu2MX+X|0PZ!6Kid%1|8}c16;9!3EfBw5LevRv^wuc1XaQNma%apfuO+CY_;}Go9%J@L^;Y(q;zYHq`Zp3RlaJ-3UR7$XCP+|mPCVNIDW_u&#YS6wN;P5+dlW-j$fbO vF}L+w*roiO@x1w&=j*%A_3kwA*6q`8yuw;3n3dECbTNactDnm{r-UW|s~cNV diff --git a/.config/awesome/btheme/layouts/maxw.png b/.config/awesome/btheme/layouts/maxw.png deleted file mode 100644 index 1ab27856bfc78c4012cf2032b3debfc366160281..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(^G+{{R2K@hl%kpa^40 zkY6x^!?PP{K+ZBx7srr_TW_Zu@*ObXV1D?2{<|=Kjq9tnhXmem_~t3gl(%(FJ;STw zx2!L&Fj<=HW_sny_(1gGOJTXc3@Zd~#A`cnyoqO2O0Z{8VgzC)dqyQ@dnP58|11q6 zZ44a}ZVVkVYz!TZe|b(==rW~!%}JlTyMW<8yUEsnhCiRb5$}r6tXkQ%Rgb^hKKI{_ yU!UJGxAj}trTm=ny!n~u>$}hO?lkb$?bC0(!dfYqmDCAzF@vY8pUXO@geCy|*k51( diff --git a/.config/awesome/btheme/layouts/spiral.png b/.config/awesome/btheme/layouts/spiral.png deleted file mode 100644 index a24faf563ace21e47863547e9bddc5fd353f9336..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1506 zcmV<81s(c{P)EXO&BM5nmg#u1h63+K$$A_j!o;4 zIKrc>&Hymr2N3z*$T8lgl?kv-gU2a(0d)HS_W zG98gk@J+uM=dD(v~A>uS{a-q@hVABqZ7+6aXPi z8KiXONNw2-7eYvAt{>L{Jt+X8P;yBrD4|oVX}EO@$=eiw>AwoU%L-SJEG48&z=T-! z6`D>GdLjTm|NX281SL#~=eXldLT?11i2o)l>SEQ$0%WC5855I0FI0@+`26>?La&hb zlV3^3q$J!0<2FS)VuksnagvNl??z$52(g2JcHT*m z@<%{g<7f6W%(4MUk@DAol*F5ifb`DK0x5}}8t4>&odT~8c&lRU=2D;+p-&0r6=oO< z31MSC04ac`G}n{HJP-s+rtuft7Y}rDX(%tCZ%#pSNRxI8$$@#^W3B23CUfZ}6R{z- zCT6M+*%YE? zNY69Pl|sVn?~$A02q&w#8At)_@g9@D9J`)UMl_%VUbbXx?aA2eqo9}8$gMj9ODn~M_B{NZDpem7fg&`WR)J?1LC5c$_O+T7F-q-%W0dYiZQthmH>4p~t!#*YOq zuFOHDirG8|x!tnXB~8mqY-5^BS~EzUg}(A-bjWG=dy>Ge=*CKyvcYplw1yg zhuO^}AM+j8S&E+`BDBOJzw;HZ@fe%9O#E;BzBNxOH z3!LL1>!PBT1yClS;@kmcLBt9JgraNIX*zeE8WpxP zLf`)Zpo?zN#=Y9KB9J|7VK8*XN&w`Gc0p!1%tQ3#0&L9#C=+xb+Qc}))7(LKCcuVl zfHGC;9gEg2afC-%odGc52MBd<lF;BiV`fNmdvU-vlF(#SV+!hWaCah{M8 zG>JoxcvtsObeL>f?psx%=76_3%d4y@4j_qd(~3j~lrt+~9JVIJ9B;9~tdTwdS9~m7 z7j4%(bezx={@~N!pA~^n3Dd-L)bTo@Hv}l6znK+vG3uiNWVtRDCOUy$ zMa3|VPk(<_=n?XM@-Io4m0fVd-W?jesHJscwT*-zW-r)Kf^2=K(drS1|%omqy?mB{w$E3=!t<&0c;m|>wq^Z z#%|69dJy_5q5Opz#*|WujrjnQ0nO4}Pa5+;C|GhDf5CmxdYGGr@(1+ADM&VH(rO_o zFwc9ejr)Pg-1L$Yu_3l5ZWANnU*IWvV}QM!W+}52%caO{P%@h`=iM0|Ogo~NILVDd zWk+t&YTmZgzqlV|lTy)EmFJn}N}fsD-RhiZXjR$;%-?i7H?7 zZ*Iuhn^k#}UN@Tes=QSp;3%gUqbuAOjPMS>=ESbsn#*H~z-ZnZZdOFC$r)Z}b-Xd@ zXE$f~CntM-xo?iFly{n-+x7%!*?}V28{W&?%;jdjJTH=GtDgOGq}CPQprixzvy0PO zF8DLwH!;(vM^a5_Xi0gV7NgOQGMNwD&32$a-t8;>?OmZ0C?=1!MeJ;NZ#}RK_-&=ODLR(z>K+d5LXIb4d$Fc?Oz!bmw$P zfATJC99e7S^MVqiOmUueQWu;86b&J@LA^06w>zW-KH*M5(x?ca6n$)FAIF&0T;V^o z7;=s*%ow@OaqicVle^*pP>NpG@dyXFz_nzV@*Uf}l5uFW$W=aNM>rQ10J1M0U@vtp zGH*D;#<}cC%)glBOWtHW8cHq$;9+(%$;W)hb(W&L$hE{Gzw;HZ@fe%9Ek3M4q3C9q zvB+H$s>sDE26=%~{KSvUaU&OEi3QGaka2Fc&(h_SrXmpC3^C3#yvPy0Wg!#bH$GrX dZ1!w`{{RYPGRcBRIPd@f002ovPDHLkV1jqu#<&0g diff --git a/.config/awesome/btheme/layouts/tile.png b/.config/awesome/btheme/layouts/tile.png deleted file mode 100644 index 071a385f1d1c84b1efb108b0c547447f892032da..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 174 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0L3?#3!&-4XSJOMr-u0Z<#|NlU8`tEwu3HVF>yH3sBsY80av^ zRI9<6LHP&=w-4(hHa0e0E6xLN)EyHVV!DDG<~YdtE?>d)Vxn(NA_K$Q)sm-gi<^NQ Oz~JfX=d#Wzp$Pz0pD-%` diff --git a/.config/awesome/btheme/layouts/tilebottom.png b/.config/awesome/btheme/layouts/tilebottom.png deleted file mode 100644 index 31eb533ecddffae5c90257052599e3ab43074862..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T&GX32Qt6bUHJ#37)yfu zf*Bm1-ADs+>^xl@Ln>~)y{gH_V8FrR@ZciLq-b>vADr8_d r!sxyK^Vw$t3=BKipD`rNWxoECLDr2`p_d~<2qf?6>gTe~DWM4f5*;kU diff --git a/.config/awesome/btheme/layouts/tilebottomw.png b/.config/awesome/btheme/layouts/tilebottomw.png deleted file mode 100644 index ee337afbbce22616d210c0aaadbd4d4986035d0d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 165 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!I0Jk_T!Hj|Fet8AnhfMHl?3?( zGcc4*K5GHwd3w4yhE&{odv!M#g94B9#TWnUw{%bDx9Si$bXMY_&eE{IhH?$>H0Ln_ z)iN-=X_)Z(&b2e^^l};I{?cV&xZlw5zrm1+L1pb{hLdi*8zp+}+Cl0(UHx3vIVCg! E0ME5KiU0rr diff --git a/.config/awesome/btheme/layouts/tileleft.png b/.config/awesome/btheme/layouts/tileleft.png deleted file mode 100644 index ab55e087479efb9254f0efabc7720acc3a4eb123..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0L3?#3!&-4XSJOMr-u0Z<#|NlU8`tEwu3HVF>yH9Wk$(OgHkB@Q@b zhcNguhy|%|tVu{nU@AJq=D{Gh{RlVDmdhtOo?I;H(rPgF>D1?8*cqnwWxuBCLZDd; Mp00i_>zopr0Gs+QHvj+t diff --git a/.config/awesome/btheme/layouts/tileleftw.png b/.config/awesome/btheme/layouts/tileleftw.png deleted file mode 100644 index c18e7b43fc1df32d0a58bd71e81e9973e5bf1cfb..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877Y2q^y~;*FUb3f)V@Srm zw>KAZF(~k`9{Bs;KU;9J#tVldvk!jY5f?M-DcZ@j;QnJ{|7f{rR*)$`Fu_8QQH4RQ z-_0|RAIP1M@mxk*3*9&uS~f(*PB6s reZx5h28Ew;Yn=0#K*k*iR`_CFZhxIs;hXyHJs=TJS3j3^P6O?dR=2zY1t#*;Pt(d@zAAPZn}FrwdB)Nr z3=RATte6>W*dDF;A^%|~dsNzGQJ?`pD|HV%wl2S*%e%46Sk)3F;_2$=vd$@?2>@tH BGb#W8 diff --git a/.config/awesome/btheme/layouts/tilew.png b/.config/awesome/btheme/layouts/tilew.png deleted file mode 100644 index c722a358e0618163bbe1a936093d327ce2594d8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 168 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877Y2q^y~;*FUZSUqV@Srm zw>J-RF$nN5T=@InKX}q?*?{7T;(~}TT&6DCeGD`12ClIz(>>1&G6V>0n5TrhFeJNv z|5;-KG~CAW6oZ)}kYVWH`(mLGM9l+!ho?`kJpUS6QgnQ=h}(~E0w8fuS3j3^P6P000>X1^@s6#OZ}&0003wNklZ2jk!mwgDKQnH>djv*Dd-kvgK1o9Xi|9T4_ jP-xiy^T|V11`Wn}9RC@c{&lngr5HS2{an^LB{Ts5LYx<* diff --git a/.config/awesome/btheme/taglist/squarew.png b/.config/awesome/btheme/taglist/squarew.png deleted file mode 100644 index 1f5dfb0630e964b95e9ac3b51896bfe2bb2c7438..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^96+qV!3HGtKUiJ>Qp%n#jv*Dd-k#dX36wo@;LZLm pO>0kFcUtEms+CYwVZ!1OC3QS6eo z*92^Mer#4?rRwc>IUX9fi*!GyTvy>Vwu-CSxnbQ4_sH9e1***6{uVjZJgtzqwEbP{ z1#zbxr3qo@=FB_OE^se(Ug(o6F_z`8Zp;pMKR4&aEHeW&Q`OMRMJux-udd=;DY*Yl k#Fiy5<3D>`d0N99QfGYPmE_VDKtC{ey85}Sb4q9e0NKlaX8-^I diff --git a/.config/awesome/btheme/tasklist/floatingw.png b/.config/awesome/btheme/tasklist/floatingw.png deleted file mode 100644 index eb802aeebfd3632131a4f00e3fa2e934d5306c54..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 334 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~g!2%@3w~L7bDaPU;cPEB*=VV?2Ih+L^k;M!Q z+`=Ht$S`Y;1W=H@#M9T6{RTTHmmFv8?4?(MLXst}5hc#~xw)x%B@E6*sfi`2DGKG8 zB^e6tp1uL$jeH=JnUcKST^JZv^(q?yd22mg977}|OAi`qw=goWJ@_t>60~WSh}hwi zS^Mh`6inP?AhB+<=k`r^7wiyimQOU5I6w_xk2}(ah#ma(7lPOE}mUT5V=(TeUgS_w=T=nLS0%9K4nPZ(N%cW2?IV X(dwl}PXAwnyusk<>gTe~DWM4fUetK} diff --git a/.config/awesome/btheme/theme.lua b/.config/awesome/btheme/theme.lua deleted file mode 100644 index 1559999..0000000 --- a/.config/awesome/btheme/theme.lua +++ /dev/null @@ -1,99 +0,0 @@ ------------------------------------------- --- Barak's Almost-Default awesome theme -- ------------------------------------------- -home = os.getenv("HOME") -confdir = home .. "/.config/awesome" -themedir = confdir .. "/btheme" - -theme = {} - -theme.font = "Ubuntu 11" - -theme.bg_normal = "#222222c0" -theme.bg_focus = "#535d6ca0" -theme.bg_urgent = "#ff0000" -theme.bg_minimize = "#444444" - -theme.fg_normal = "#aaaaaa" -theme.fg_focus = "#ffffff" -theme.fg_urgent = "#ffffff" -theme.fg_minimize = "#ffffff" - -theme.border_width = "2" -theme.border_normal = "#222222" -theme.border_focus = "#00bfff" -theme.border_marked = "#91231c" - --- There are other variable sets --- overriding the default one when --- defined, the sets are: --- [taglist|tasklist]_[bg|fg]_[focus|urgent] --- titlebar_[bg|fg]_[normal|focus] --- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color] --- mouse_finder_[color|timeout|animate_timeout|radius|factor] --- Example: ---theme.taglist_bg_focus = "#ff0000" - --- Display the taglist squares -theme.taglist_squares_sel = themedir .. "/taglist/squarefw.png" -theme.taglist_squares_unsel = themedir .. "/taglist/squarew.png" - -theme.tasklist_floating_icon = themedir .. "/tasklist/floatingw.png" - --- Variables set for theming the menu: --- menu_[bg|fg]_[normal|focus] --- menu_[border_color|border_width] -theme.menu_submenu_icon = confdir .. "/submenu.png" -theme.menu_height = "24" -theme.menu_width = "100" - --- You can add as many variables as --- you wish and access them by using --- beautiful.variable in your rc.lua ---theme.bg_widget = "#cc0000" - --- Define the image to load -theme.titlebar_close_button_normal = themedir .. "/titlebar/close_normal.png" -theme.titlebar_close_button_focus = themedir .. "/titlebar/close_focus.png" - -theme.titlebar_ontop_button_normal_inactive = themedir .. "/titlebar/ontop_normal_inactive.png" -theme.titlebar_ontop_button_focus_inactive = themedir .. "/titlebar/ontop_focus_inactive.png" -theme.titlebar_ontop_button_normal_active = themedir .. "/titlebar/ontop_normal_active.png" -theme.titlebar_ontop_button_focus_active = themedir .. "/titlebar/ontop_focus_active.png" - -theme.titlebar_sticky_button_normal_inactive = themedir .. "/titlebar/sticky_normal_inactive.png" -theme.titlebar_sticky_button_focus_inactive = themedir .. "/titlebar/sticky_focus_inactive.png" -theme.titlebar_sticky_button_normal_active = themedir .. "/titlebar/sticky_normal_active.png" -theme.titlebar_sticky_button_focus_active = themedir .. "/titlebar/sticky_focus_active.png" - -theme.titlebar_floating_button_normal_inactive = themedir .. "/titlebar/floating_normal_inactive.png" -theme.titlebar_floating_button_focus_inactive = themedir .. "/titlebar/floating_focus_inactive.png" -theme.titlebar_floating_button_normal_active = themedir .. "/titlebar/floating_normal_active.png" -theme.titlebar_floating_button_focus_active = themedir .. "/titlebar/floating_focus_active.png" - -theme.titlebar_maximized_button_normal_inactive = themedir .. "/titlebar/maximized_normal_inactive.png" -theme.titlebar_maximized_button_focus_inactive = themedir .. "/titlebar/maximized_focus_inactive.png" -theme.titlebar_maximized_button_normal_active = themedir .. "/titlebar/maximized_normal_active.png" -theme.titlebar_maximized_button_focus_active = themedir .. "/titlebar/maximized_focus_active.png" - --- You can use your own command to set your wallpaper -theme.wallpaper_cmd = { } - --- You can use your own layout icons like this: -theme.layout_fairh = themedir .. "/layouts/fairhw.png" -theme.layout_fairv = themedir .. "/layouts/fairvw.png" -theme.layout_floating = themedir .. "/layouts/floatingw.png" -theme.layout_magnifier = themedir .. "/layouts/magnifierw.png" -theme.layout_max = themedir .. "/layouts/maxw.png" -theme.layout_fullscreen = themedir .. "/layouts/fullscreenw.png" -theme.layout_tilebottom = themedir .. "/layouts/tilebottomw.png" -theme.layout_tileleft = themedir .. "/layouts/tileleftw.png" -theme.layout_tile = themedir .. "/layouts/tilew.png" -theme.layout_tiletop = themedir .. "/layouts/tiletopw.png" -theme.layout_spiral = themedir .. "/layouts/spiralw.png" -theme.layout_dwindle = themedir .. "/layouts/dwindlew.png" - -theme.awesome_icon = "/usr/share/awesome/icons/awesome16.png" - -return theme --- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=80 diff --git a/.config/awesome/btheme/titlebar/close_focus.png b/.config/awesome/btheme/titlebar/close_focus.png deleted file mode 100644 index 288c3c0d8a5e966fc60f351416ce1948f05b11dc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 619 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6e*%0$T!Hle|NoCLFr4CNI3vPv zUV`DG9K%Z&28hTdd4`wHAofvahGVP@$JiN8@GzX>V*rX@Rc5%M$#7er;ejc`6C044 zGlC3f#ThP2GrWLnVP`nb$#9YnWH`{+%Zd!w)EI8*Fx)d@cx1uw%%0&T1H(&BhF7x8 zuk<-yy9>SX5q%pa`_5V5oww+_c=`85x*uvyKc=dF%+dPPZu@zH>(^Pn-{uDVV_^8l z#qdvx>7ORsKU4014g&wY#r}oK{!38(m#Oow$mCzO&A%4cf8D1?0ZBdJ=XN*IWLZ+&ghLXa+|N8?Df8i5z3zD7U%!xA7}NH?#@(Sn~+~y^v}9i zEAZO+>5HU&I&b|bvEex-7%czvWJPJokGtQ!y;OtO7~S~)rY(PsTJV-T_iO7n-kYJc zbm0ZLDKmd}$=mH}osjg7J9d54Ple5w;>x$im=rUnZC!LB>P&j?n)ppof~U;W-?y#% z$x@xC-L$hU@jz^X`>w^m*fv@Hc**GVEhJj&(e;uQHksZ|mUg_SSl8wS6*{usKg+s! XyVl2)lef)){%7!X^>bP0l+XkKwS5oj diff --git a/.config/awesome/btheme/titlebar/close_normal.png b/.config/awesome/btheme/titlebar/close_normal.png deleted file mode 100644 index 61e16f30f9d1a910750ef1aa8d3f9b69d7ae744e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 658 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6e*%0$T>t<74`kk!VYn^Lu##P&{;sR|yFBl8 zlI$r#hGYB;e|^ONItx8eV%fmVu$GD8@BEa%)1zNSNF3o~ILO2B*NX4H95YZHB-J1I zx83uZpYT3zhP|9%k$T6!W#&(v`F3$I{LMG~o2K=`miL7j*WXy>zoD{^6e8U9K#{}pDu%MM~MXJGgXw2O`5HY39_1`zrSQ~>lN z1H%$j6r_>(3h4Qek|4ie1_m}>Ubf%_Vc~>ewzRYa;j}am4Q3!%3A|t-pk!JC5JLb+ zEkqqMi#M3qVKmIhrc~8Teg-~ diff --git a/.config/awesome/btheme/titlebar/floating_focus_active.png b/.config/awesome/btheme/titlebar/floating_focus_active.png deleted file mode 100644 index da4e1eae77f2bee7a529908a22d891577b233fcc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 521 zcmV+k0`~ohP)OA2LWrCBIf7W@Os zEvvhlQW!(tlaR;DC3m{{`u%d9nhrCXVrB8E^PKZNpYwapdCnsMybAAPiLh8K3UO`F zKJ>ty*oSQb-P0?uPV9o(j3>SWI_H8AD2}d!DMrV9rsE7FGd}!Yzrx8S0+?MqMEQUZ zl=DzNHKaJQ7FyJ27~dz?u(0gMk{3bY9OolyV0u<8s{U!B`p&TTZ=ib6i;pcwpl2{i z4Hsw}TgB+y2_}CbfZE|r&MZDD78N%pQF&_+Aht!N-$}?<2TtcvZI^P>C@XaQ%i!{7oa=Sg>5!#)m4PS;;hzgrcTof*P@t_78ro|^w-<9yav zpkU~M+;0H&d3ZbkMWjfNHBoZJRmpu%aRB+f5IZe4BA>~CrohBo>8C<<2ww|OGuR-IQ zazS1S2}r)l6>{~wzbs|U$^{8i&fo8&RDbH`g)4WfQpx*|{td+Ub>9vsuz9f$00000 LNkvXXu0mjfTvPB3 diff --git a/.config/awesome/btheme/titlebar/floating_focus_inactive.png b/.config/awesome/btheme/titlebar/floating_focus_inactive.png deleted file mode 100644 index ce11be49d3ca3f4c1e479e922ccced361c50ec8c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 550 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2n3BBRT^Rni_n+Ah4nJ za0`Jj+99Ah3j=UZ8JZwb9n7hPS$g&TcWf}A1qNW z;{GPn*_X{NqiK69K)&FP;7(0zx0zfQPOB{bvi+K?-{sp2_mnt__?_UulX8Ninq?2#0XFYm^#(#%8YB z%eMWdT-Juft;PSgB`@Q-l+Py}w%hNK{J$yX9Ixt**`3b?hBRdP`( zkYX@0Ff`INFwr$I3Nf^>GPbZXHPJROure?>UEUCmq9HdwB{QuOq`^=Zh>VOw3{9*I ZfEo-S8bbfvd;!$J;OXk;vd$@?2>>`a*$)5! diff --git a/.config/awesome/btheme/titlebar/floating_normal_active.png b/.config/awesome/btheme/titlebar/floating_normal_active.png deleted file mode 100644 index ed9caf22b984c2a139a378b5607b35abbab0d486..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 667 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EaHVU{nt9332`Z|G$!w5|hh+W}pAe z!64*SyH_RaJdnZU_Mg%4Kcmrq9{a~}^+(nmetrMd|E77@wZe`71%Xlw`XJ<2bYSMr z?~4!qXVCl4p!17C_pfH?G2QTkymq&MY*w=u<_Y`a+wT|6|F0i?94Nw|^?^bAGYoxa z&;}tn|4SZq|6MD;Gn;~CHD57ky#=Y%ddp@1UNhytfah0`h{j_E&1Vei4}gf*{l9F) ze_`MMAVKxJ3~IMH?Egyyfn5a@QM<*UcAeYhzli^TR;&LEs#kzq29>i6suwvN{_}hO zXEy)OpnM7>qI?9%V730wX#Af+=^%&;B9DVeFiQNd`5hQ)i6udP!3+$-4v}eTX~Al2 zZa@kMf_a4#fD{{;1dF8kuqC8L>hc6fsI^ zm^!tsT9wtZXYb{elF{r5}E+!0uB!V diff --git a/.config/awesome/btheme/titlebar/floating_normal_inactive.png b/.config/awesome/btheme/titlebar/floating_normal_inactive.png deleted file mode 100644 index 2044e9d607558af193dc891e2ef503fc9be0ea81..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 541 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2n3BBRT^Rni_n+Ah4nJ za0`Jj?qLiu)J8l^AYP;5nl&Omn&*vO|8BT2Tz?k zC!dk7DCpuSsB`3y*T#Sr6Sti^6gQ>ouZD;jg+?%(GUhR2nHJ%3GU_xie^J3MD&bMK?JO(74gbOKJ?KFzSj!d?Ev zDRr}=*E?da_&M2MVOYpFzb)^oPw5Sn1&-|v8~${j)zJU;>Qnaen>EtwvX1u5W%aSj zGrMoTt7X^6ZLN$JJxm`wSTdAyd%iySZm?DwClO;=a6!mLT7 z(<&&K>j?voZsv*un>_>tKYIBFXL(3;EY#(_`avg1<5j_pFAt-6ax+(5c)j4knwdTC zKpZRG>6_Ea=N_@&GlhTpgm(KAeuhhd;jdca8c~vxSdwa$T$Bo=7>o=IjdTr6bPbF` w3@xmTEv<}9v<(cb3=H%N9u=Ty$jwj5OsmALAznA?3{V4ur>mdKI;Vst0G+|sm;e9( diff --git a/.config/awesome/btheme/titlebar/maximized_focus_active.png b/.config/awesome/btheme/titlebar/maximized_focus_active.png deleted file mode 100644 index e4148f14864f4e404f6e3d808de92fc7f0c89cad..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 953 zcmV;q14jIbP))1;S)Tn1d#Xq0XRYn{6(tv2_bw%|)C)Dg$h{(#s0j5nzr`O#C@v ztnvqAfUc|)mCg|b1P;++LET+OaF+@P^5f2q_3U%}k^JKU(QA8c-+jN|J@(n>^WI1P zkNhU0>+%o0f}0IzF`NJ3w&^o& z=$^nRVm+_^yC+g9qE$7FZVN({(NT*_N=wo@-|@8_%ZbEVuo`P8Q#4{ft~zRYou~-2`7T?bCi2SOFZb( zxlr&ll)MTR+u_0|jP7|BS7s=~8Ij!1cw`K(t82xWlSQdQ%eEaUG@KDg2XFo*hLOAce`y(N6U`!EL-de|HKu|m%!L_%Q_>{@jf&yItw58&4N z(;OmPUO0n+H$&;$Fo!(~-Rlj_Qy*1L$Lu&Deoj3ew4%EZn+Lbk{QHI_zikRHdbo7dVqomxkf`FcF6? z7Uu`cVBd34nuaBN-Q?hwG%2zcE@HILg!9G~4n7t~Vbnv^Bt_Hnb^>_;zF4%;|4vJL z>f(vv##dx@`;I{9JqANH^fVsltF2maUZ-q{kRLSDp^(#-O^-s(a-8~D@&kN4@8Z4R zR_mpxw{ju$?T3MrV>r$hTvrSDe!ZMlK$NP%vSkI%oe65+11Cm3se4IGbUp<)v+v^l z)pUFm!?!PsR#ZH2`{tD#jF^pj)=Y@ju2pyIYrfE>0eiZt9)3;b_XG1Vt&`SqBWO^E z=|QzJnOt~L3_Yhpa5vAUuTr>PEHu6$TuhNN)!=ckcG9RP#uvnKP9v?VCe@-Ejp$UP bWSaR0401`peNH#x00000NkvXXu0mjfUU||e diff --git a/.config/awesome/btheme/titlebar/maximized_focus_inactive.png b/.config/awesome/btheme/titlebar/maximized_focus_inactive.png deleted file mode 100644 index 8288dffbf28a51ad9f0a384e6cb755b05f316841..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 720 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 diff --git a/.config/awesome/btheme/titlebar/ontop_focus_active.png b/.config/awesome/btheme/titlebar/ontop_focus_active.png deleted file mode 100644 index 0ba86250ba92c03e9ddf46d8b86c461434e88605..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 715 zcmV;+0yO=JP)2_mJme+i;%#J5(~O) zh!A4v5)~PRgHUkdm?$F3*kNPH#@Km!b;zP{JKbZ3f{%lE=NFPWZ7pfTO z0@v?AIj}hV5U#{T8OhvTqN8T6-Gu9)QbV{KWLzPMBr%1nEug;%hKvHffPv3o(w;(z z_rf0ShFy-9E7Sph^kXr}{FInS80asS$l>>1hil;)?7uFqCJey+Zg&{W?-n48*fXv)SgdoYaVA!;B+|%ky`i) zn1a9cd+0>DCB6wb_Efr~~9k8iv6w8z@r!6K~@#Jc)jgpVJfR z-Q6&cZt?nUkOP0<5MB!J{#utPrp|(Tr6!qR%d;)5n;A%6t(jeE5ch{5m`@lIf z_`M9KjA9uuR<#vmuV4j(x4=aOl+V^NR}F{fBDmfNvL}i65;%Se){Nqn8*oM>ikJv} zb>M;m&-~R?M{){GJGuU-0K-k-+7MC7jNvhVQo4fM=ib}Hger?9v8f%`gJnwFNXSQ^_Ixw2a+c$wf>B)PVV@6;f2og zKZ#uzU+k?ob@TY)gE%WmgR?vnmiMJ*F`1eSTgJE{?OdXs)GOi^?a%}%bw*p)%hcbYnMo5S|`7G^=yg6 zkn;)2pQmNEy*Pg8SlT=h-6{tD<;Q2LwmZ(^+k7@BS%ABHxye%IiWMeqZFcjfT9*n= zT(a(zzr@1X?n@cuO4wg~+`Zbba!%g2$2L55&2?4YwvF}ImzYkIyA$_O|7TT0yPKQ0 z3ozbPOI#yLQW8s2t&)pUffR$0fuWJEfr+kxQHY_1m9d4Dsfo6Mft7*5>GFnf6b-rg zDVb@NAPt7PKxAYbVrXJz0MuXr(GdFQ<_n+(NstY}`DrEPiAAXljw$&`sS2LCiRr09 Ysfj6-g(p*OfQlGAUHx3vIVCg!0PqtB+yDRo diff --git a/.config/awesome/btheme/titlebar/ontop_normal_active.png b/.config/awesome/btheme/titlebar/ontop_normal_active.png deleted file mode 100644 index cf4cda5a817d124028de90ba4cef2780585f346e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1091 zcmYLH3rv$&6#i-ls96UDtgaF0)OLs#rgdt02sE^a6vik+x``{q{U{3|?7`HyEoy>p zJTiz&l@fu;X4o2s0Wug zgpLF_HK3s=-(ZwY#jsNkqClc>dnzXOV<`pRhD}6pUkS7BVd>HlkVnQdv?3cnfRSjB z0h9}0Har<{A7TGmRKtBbfJi{(Z!ZcMio!r7?(9JKHgrhQ77okSRaG9ST;O|K;Hwt- zOrhSUFdEX3CxP7Qo*vEOr7(MW=;Rxs!9>A8yrA`2v}^(Kl6=sphJ14J`jLlk2DG@| zdD+hrjvHH^v_UOGvV&&$qrp*xFIKfH>FnS>vyg^C10ajQQHWLv+m=80Vlupy0_xy- zkXhi!heg7Kjzh4=!g~hP1TtZX=eIJ|%mKIyK-Hj1*fflp+z)RN=zTadm~dhrs074+ za}0C}H#RedA2J;WWx}V$cnn5&!>0r3(H@4zP2eZ|C?1pnN`^y;ei@rsyA&M}m{5Sy zF(8FG1fwxRtHBtFfps?qccNd8CNUa9VG-j>5QY^P zze!sv!k3PQ%Z<4jZkYW|8R4gd8ywgiq zRcqjk3Wbp~a9V$nmTMJruLFYcw3OtW)6*rRujmJ|f-2^}w|zd@Z?l~mPx`ngPO%&< zJ6ZN%VfmTFPeyh$yijtzvb228>{nAC>lz#T+4|dX?6+tCjGyWoyPwxtf3^PFYk6Ou z*!AZ5zI(ad(^GNMhl>xZE>?bJ?zwc+^i81p?gxJh&L{Uj*NlSs;M$kR_uMYKEN+yB z%H*<}Eow>a_2jyRk;KBiyW*bTERE@Hay5RoP-orS^y$%@+=7W0JKtRy`KjWbd_(&5 ztaaMo@<+`N(c1T3DvdDugcqxt=Y#E4HP!9%6MffOB8!X9Rva%Bw{@RU-EQmZ_)dNQ z=!0L%<|b#S=ca5ki3f8cYii04sS@IPyPoQ*%l~zDZvGs(JcGx6jQP6sVDE?L);)gw bSHQ{Mr<-4$HyQ3O^H+^DO=ik1wei9~#Wlz5 diff --git a/.config/awesome/btheme/titlebar/ontop_normal_inactive.png b/.config/awesome/btheme/titlebar/ontop_normal_inactive.png deleted file mode 100644 index bd323f0889cdc34d817a0cbb8d177d759367c7ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 655 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2SkfJR9T^xhD-w@*t_AWr3p^r= zfwTu0yPeFo12UMByxm|G8IkyP(wh z&(pa+`y7=&vi=P}3(KD5Lvf$%`htx%NJX`rALm>x)-dl_|nD>>v?9|EmyzP)%SGYZ~yd7LCkfoWx}26nn6oWWN*84~JmRG!4^vz}Ti^H^=u zQ<`+qcX@ZZ#g>S~H@hsdR-{coeljfelg1xjx570KFYNcu)D8Q5SMWdMWPvBEws2n# z0mhnYiEBhjN@7W>RdP`(kYX@0Ff`INFwr$I3Nf^>GPblbGSN0Lure^vD|l3Zq9Hdw zB{QuOw}yD#s53wfk{}y`^V3So6N^$A98>a>QWZRN6Vp?JQWH}u3s0un02MKKy85}S Ib4q9e0GAmG^8f$< diff --git a/.config/awesome/btheme/titlebar/sticky_focus_active.png b/.config/awesome/btheme/titlebar/sticky_focus_active.png deleted file mode 100644 index 1106399d777ad671051f94a7f15f0e1addfacb78..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 833 zcmV-H1HSx;P)f@kD}&@elCK z!KfEO!9>j-jI!Bv$U<28F;v)`0CQ>uJ@_$d*AA(M1^mW)? zd1K{LGiuak_oZ2Czx(am4@RGi2hYpZl*C(yj-5Mq;`}>SECz#}SvW2LD|3NE73nNb zu~>{0U^M|ZqDE6XnE`ix*Fh6DO6R5*=;7*|7VYp$uRC zaq<4faD8V&QJ@3@z(Zv#_(H$kJ@L`Ihu>SY-ePlu^%mz{QNAU!>7LtQFkIWY#(KQo zk!9&f2%QbC{7(b)9fEzLVHTsh)!^^CV*N{*Os7zWgabp6ffD7nxHuhPbJq3Bo zt{Zb>G+^W52EX6^m3#Icq6HNyCZe7|C&2x1Jm_C;U43-192%bo@O2d)&#E3`OqS8o5v3&R!gXQ-SWSX84@oMx9(-utsCe9@k#p1_e{DLDQt zc;!}Q)q7c!z(b&rV0vDl9;nY$+1PBKZCwZss*k5*G>AA*JwUBi=h4m4H`h-OKAh{% z3vxAmZbmJ-afiitiF(*zGuoVgx={?Udf1?!^ywviI<*e1sKtYDyHYBOmxy-Urd#XM zOZvQ0f0gCtYs6u#GQVP=5jJT>Ef%VabZZ^@^+WWM9?EWhVek;S00000 LNkvXXu0mjfSX_`J diff --git a/.config/awesome/btheme/titlebar/sticky_focus_inactive.png b/.config/awesome/btheme/titlebar/sticky_focus_inactive.png deleted file mode 100644 index ef2b78e18409b593e1dfe305603084d45cc5bde0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 590 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2n3BBRT^Rni_n+Ah2>S z4={E+nQh0wz?kjn;uxZFzID=meU?ChXA#HBrl;|IJO6#=>W12t8~!}}>aWzUqG@m=r+sjM&9o+pF7&!FFx7s>*(v`(=KiI;lt&|q7}|@ zb#n|3s2iTYxl?ntb5w1h*Xl_>Pp4>f2DjYE-rJOJmJRr7DlC6TQV;yykNi1DXFl?clLsU z=}s?tR2H~-xNxUxTd#h5uB9t3RcCh4%gu7OdAp@o&Pg_Ws^wt<0_fx+qWhHw-Ox%nxXX_X)ihPpsxWE^5> zVr2l-U;xn&`sd~gpaw~h4Z-BuF?hQA KxvXsVDTEd^u}#R01Wxy&uYDQ2J+r9iQ3%S91dP(KlAZAz)Nwa^r_ z5L&^sTpAEMY+5zY2*si>(XFJ8R^#xpI*G~BxoSX%M6;Qgtotl8i+ggObDrnC=g0fw zX<-)Z3|YQvIf5V|^c)%s*QmEmL~(vu-Mb7ypo*E#$@csGh!}|cSG%{Z#oOHIRi*Z>r)bE%j|?5Ny0%%Z zdiG?)qk7pRX>w0ecr*F5r@htF(&TBZ_b4QuI^lyO$=ylBTH@Y|yD|HLicxO4t!%Gt zckysx>1avwj9N9Ll+VcOW@-g9{Hi+`NgoR304e~i2T%!69!S!zvpyWMc+AE-eTLgz z`kSYx*Z>p(syab4-Ez{|sC3lJ zu1o8#iUbqY+bx+9S~9AHs2V^GfCd1CAhv$B;(M8BLQr7IP0=LEQz7$hK&RbeZ*L;@2MYlA2X(i(LPRU03Ukq8BlC<=;f2>(PAm)`yP zc4KBtO*B~^ihtlML;5aD{(c*8t!NFN`KU4KGkprfOg}VskSd8MFyIO?F}68oQ%`!S zwYb5dFx@{JFN!75U=WKystk=0L?_Cqo7CxFsx}aILULT;G=7vni&+J1gvjJ@SRq+h zpmMh@Y2N>J>%aaxP2=)-TrRg_$u8fGS2BBPd7l}a_je3qyq9CJ{(EOI-p!1B49h2F z(`Ymn8z&kqo3sVPXn14TjsRmj1KFGa(=!5s^CCkUzh5498dD(^UxBQkee#X=1a!G^r$zz}?Dfxx@X+*|{ zuVdD&+!&S?dkvXVZTlf^pwb&o%FCs@e{@Z+&l)^u8XUM_wt``Er~Q<*ZxT$M+~K5} zF<;b8{-Fc>eTNS&{QC6qGw+=5)DF2+c1(uGax?u%K94EPsVb2Y(!*DtSVy~|d~o@7 z)0FA4{@&;-O@3umXOr7W5oHMwYFjUtS;E=N%1w;#^vgatXF5|<=()$5pNmkS>{39F?0#bT-EkKZUd_T4XRwaS?-jFsnF^M2}b z6GukI?UP`UI&$f%ZDP#d78creYF9zU*BRF?e;3Eye!NzG)c@l3tKdcV{Op?>Pdpp< a{f!*otl0c}(NQmcG6+4pfM(ssQ~d)j<@)ac diff --git a/.config/awesome/btheme/titlebar/sticky_normal_inactive.png b/.config/awesome/btheme/titlebar/sticky_normal_inactive.png deleted file mode 100644 index ea6c27569d8f8ae7c16a0ca6b4ae25d25b15051a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 603 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2I14-?i-EKU7`vU!wgWPllDyqr z82-2SpV`mAz*ynw;uxZFzIBqfw@jdbn}6y3c`q{`Sv+7C-NdoO(~L`r2LF^}D{<-hMmN0wOMQqFuGG&{Pzf4$ryo8GTK-iDnPsbBej z*Y}^#GOvb2JPX^lTvx39aN_kFD;t{?jwTjX$mp&Nb5A(G;KGr|E294Bzwvro6~VqV zxxe1?=EP~USmSta#@vYLIl5?-#i0bdstpfr`sx=8usHtweR$8j`uk^2o;a=f<>S&% z@+$K>c@+iO4u3ayOLg#TQ5EJq{WK0dMGaQPWV+cN^SbEbHjDj!dJ zS$s&-ori-{@}~R3nkn@P5Bs$9R&qNU`ti>f{lgKKvToCb&S@9h#WMPRr-eItyg&7w zX~_na@9|4^EnRx`V>#=sB}acAT;9KRJL3ff#f6^cD`K}Z39iq$toAS`Mdjexx(>J$|R@~Y#ZSsTd5r4PFul>h-D`dsu+|y6& zfia?5;u=wsl30>zm0Xkxq!^4042^UROmq#5LJTdej4iEI_hWB*=!~{Irtt#G+J&^73-M%)IR4=1.3.4", - "coc-pyright": ">=1.1.129", - "coc-rust-analyzer": ">=0.32.0", - "coc-snippets": ">=2.4.1", - "coc-svelte": ">=0.2.2", - "coc-tsserver": ">=1.7.0", - "coc-ultisnips": ">=1.2.3" - } -} \ No newline at end of file diff --git a/.config/fish/.gitignore b/.config/fish/.gitignore deleted file mode 100644 index 44e4e55..0000000 --- a/.config/fish/.gitignore +++ /dev/null @@ -1 +0,0 @@ -work.fish diff --git a/.config/fish/completions/cargo.fish b/.config/fish/completions/cargo.fish deleted file mode 100644 index 3c1f8c5..0000000 --- a/.config/fish/completions/cargo.fish +++ /dev/null @@ -1,802 +0,0 @@ -# Tab completion for cargo (https://github.com/rust-lang/cargo). - -## --- WRITTEN MANUALLY --- -set -l __fish_cargo_subcommands (cargo --list 2>&1 | string replace -rf '^\s+([^\s]+)\s*(.*)' '$1\t$2' | string escape) - -complete -c cargo -f -c cargo -n __fish_use_subcommand -a "$__fish_cargo_subcommands" -complete -c cargo -x -c cargo -n '__fish_seen_subcommand_from help' -a "$__fish_cargo_subcommands" - -for x in bench b build rustc t test - complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l bench -a "(cargo bench --bench 2>&1 | string replace -rf '^\s+' '')" - complete -c cargo -n "__fish_seen_subcommand_from $x" -l lib -d 'Only this package\'s library' - complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l test -a "(cargo test --test 2>&1 | string replace -rf '^\s+' '')" -end - -for x in bench b build r run rustc t test - complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l bin -a "(cargo run --bin 2>&1 | string replace -rf '^\s+' '')" - complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l example -a "(cargo run --example 2>&1 | string replace -rf '^\s+' '')" -end - -function __fish_cargo_packages - find . -name Cargo.toml | string replace -rf '.*/([^/]+)/?Cargo.toml' '$1' -end -complete -c cargo -n '__fish_seen_subcommand_from run test build debug check' -l package \ - -xa "(__fish_cargo_packages)" - -## --- AUTO-GENERATED WITH `cargo complete fish` --- -complete -c cargo -n __fish_use_subcommand -l explain -d 'Run `rustc --explain CODE`' -complete -c cargo -n __fish_use_subcommand -l color -d 'Coloring: auto, always, never' -complete -c cargo -n __fish_use_subcommand -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n __fish_use_subcommand -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n __fish_use_subcommand -s V -l version -d 'Print version info and exit' -complete -c cargo -n __fish_use_subcommand -l list -d 'List installed commands' -complete -c cargo -n __fish_use_subcommand -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n __fish_use_subcommand -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n __fish_use_subcommand -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n __fish_use_subcommand -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n __fish_use_subcommand -l offline -d 'Run without accessing the network' -complete -c cargo -n __fish_use_subcommand -s h -l help -d 'Prints help information' -complete -c cargo -n __fish_use_subcommand -f -a bench -d 'Execute all benchmarks of a local package' -complete -c cargo -n __fish_use_subcommand -f -a build -d 'Compile a local package and all of its dependencies' -complete -c cargo -n __fish_use_subcommand -f -a check -d 'Check a local package and all of its dependencies for errors' -complete -c cargo -n __fish_use_subcommand -f -a clean -d 'Remove artifacts that cargo has generated in the past' -complete -c cargo -n __fish_use_subcommand -f -a complete -d 'Generate completion file for a shell' -complete -c cargo -n __fish_use_subcommand -f -a describe-future-incompatibilities -d 'Reports any crates which will eventually stop compiling' -complete -c cargo -n __fish_use_subcommand -f -a doc -d 'Build a package\'s documentation' -complete -c cargo -n __fish_use_subcommand -f -a fetch -d 'Fetch dependencies of a package from the network' -complete -c cargo -n __fish_use_subcommand -f -a fix -d 'Automatically fix lint warnings reported by rustc' -complete -c cargo -n __fish_use_subcommand -f -a generate-lockfile -d 'Generate the lockfile for a package' -complete -c cargo -n __fish_use_subcommand -f -a git-checkout -d 'This subcommand has been removed' -complete -c cargo -n __fish_use_subcommand -f -a init -d 'Create a new cargo package in an existing directory' -complete -c cargo -n __fish_use_subcommand -f -a install -d 'Install a Rust binary. Default location is $HOME/.cargo/bin' -complete -c cargo -n __fish_use_subcommand -f -a locate-project -d 'Print a JSON representation of a Cargo.toml file\'s location' -complete -c cargo -n __fish_use_subcommand -f -a login -d 'Save an api token from the registry locally. If token is not specified, it will be read from stdin.' -complete -c cargo -n __fish_use_subcommand -f -a logout -d 'Remove an API token from the registry locally' -complete -c cargo -n __fish_use_subcommand -f -a metadata -d 'Output the resolved dependencies of a package, the concrete used versions including overrides, in machine-readable format' -complete -c cargo -n __fish_use_subcommand -f -a new -d 'Create a new cargo package at ' -complete -c cargo -n __fish_use_subcommand -f -a owner -d 'Manage the owners of a crate on the registry' -complete -c cargo -n __fish_use_subcommand -f -a package -d 'Assemble the local package into a distributable tarball' -complete -c cargo -n __fish_use_subcommand -f -a pkgid -d 'Print a fully qualified package specification' -complete -c cargo -n __fish_use_subcommand -f -a publish -d 'Upload a package to the registry' -complete -c cargo -n __fish_use_subcommand -f -a read-manifest -d 'Print a JSON representation of a Cargo.toml manifest. - -Deprecated, use `cargo metadata --no-deps` instead.' -complete -c cargo -n __fish_use_subcommand -f -a run -d 'Run a binary or example of the local package' -complete -c cargo -n __fish_use_subcommand -f -a rustc -d 'Compile a package, and pass extra options to the compiler' -complete -c cargo -n __fish_use_subcommand -f -a rustdoc -d 'Build a package\'s documentation, using specified custom flags.' -complete -c cargo -n __fish_use_subcommand -f -a search -d 'Search packages in crates.io' -complete -c cargo -n __fish_use_subcommand -f -a test -d 'Execute all unit and integration tests and build examples of a local package' -complete -c cargo -n __fish_use_subcommand -f -a tree -d 'Display a tree visualization of a dependency graph' -complete -c cargo -n __fish_use_subcommand -f -a uninstall -d 'Remove a Rust binary' -complete -c cargo -n __fish_use_subcommand -f -a update -d 'Update dependencies as recorded in the local lock file' -complete -c cargo -n __fish_use_subcommand -f -a vendor -d 'Vendor all dependencies for a project locally' -complete -c cargo -n __fish_use_subcommand -f -a verify-project -d 'Check correctness of crate manifest' -complete -c cargo -n __fish_use_subcommand -f -a version -d 'Show version information' -complete -c cargo -n __fish_use_subcommand -f -a yank -d 'Remove a pushed crate from the index' -complete -c cargo -n __fish_use_subcommand -f -a help -d 'Prints this message or the help of the given subcommand(s)' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l bin -d 'Benchmark only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l example -d 'Benchmark only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l test -d 'Benchmark only the specified test target' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l bench -d 'Benchmark only the specified bench target' -complete -c cargo -n "__fish_seen_subcommand_from bench" -s p -l package -d 'Package to run benchmarks for' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l exclude -d 'Exclude packages from the benchmark' -complete -c cargo -n "__fish_seen_subcommand_from bench" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from bench" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from bench" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l lib -d 'Benchmark only this package\'s library' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l bins -d 'Benchmark all binaries' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l examples -d 'Benchmark all examples' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l tests -d 'Benchmark all tests' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l benches -d 'Benchmark all benches' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l all-targets -d 'Benchmark all targets' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l no-run -d 'Compile, but don\'t run benchmarks' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l all -d 'Alias for --workspace (deprecated)' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l workspace -d 'Benchmark all packages in the workspace' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l no-fail-fast -d 'Run all benchmarks regardless of failure' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from bench" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from bench" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from bench" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from bench" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from build" -s p -l package -d 'Package to build (see `cargo help pkgid`)' -complete -c cargo -n "__fish_seen_subcommand_from build" -l exclude -d 'Exclude packages from the build' -complete -c cargo -n "__fish_seen_subcommand_from build" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from build" -l bin -d 'Build only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from build" -l example -d 'Build only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from build" -l test -d 'Build only the specified test target' -complete -c cargo -n "__fish_seen_subcommand_from build" -l bench -d 'Build only the specified bench target' -complete -c cargo -n "__fish_seen_subcommand_from build" -l profile -d 'Build artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from build" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from build" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from build" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from build" -l out-dir -d 'Copy final artifacts to this directory (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from build" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from build" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from build" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from build" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from build" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from build" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from build" -l all -d 'Alias for --workspace (deprecated)' -complete -c cargo -n "__fish_seen_subcommand_from build" -l workspace -d 'Build all packages in the workspace' -complete -c cargo -n "__fish_seen_subcommand_from build" -l lib -d 'Build only this package\'s library' -complete -c cargo -n "__fish_seen_subcommand_from build" -l bins -d 'Build all binaries' -complete -c cargo -n "__fish_seen_subcommand_from build" -l examples -d 'Build all examples' -complete -c cargo -n "__fish_seen_subcommand_from build" -l tests -d 'Build all tests' -complete -c cargo -n "__fish_seen_subcommand_from build" -l benches -d 'Build all benches' -complete -c cargo -n "__fish_seen_subcommand_from build" -l all-targets -d 'Build all targets' -complete -c cargo -n "__fish_seen_subcommand_from build" -l release -d 'Build artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from build" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from build" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from build" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from build" -l build-plan -d 'Output the build plan in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from build" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from build" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from build" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from build" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from build" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from build" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from build" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from build" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from check" -s p -l package -d 'Package(s) to check' -complete -c cargo -n "__fish_seen_subcommand_from check" -l exclude -d 'Exclude packages from the check' -complete -c cargo -n "__fish_seen_subcommand_from check" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from check" -l bin -d 'Check only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from check" -l example -d 'Check only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from check" -l test -d 'Check only the specified test target' -complete -c cargo -n "__fish_seen_subcommand_from check" -l bench -d 'Check only the specified bench target' -complete -c cargo -n "__fish_seen_subcommand_from check" -l profile -d 'Check artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from check" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from check" -l target -d 'Check for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from check" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from check" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from check" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from check" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from check" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from check" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from check" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from check" -l all -d 'Alias for --workspace (deprecated)' -complete -c cargo -n "__fish_seen_subcommand_from check" -l workspace -d 'Check all packages in the workspace' -complete -c cargo -n "__fish_seen_subcommand_from check" -l lib -d 'Check only this package\'s library' -complete -c cargo -n "__fish_seen_subcommand_from check" -l bins -d 'Check all binaries' -complete -c cargo -n "__fish_seen_subcommand_from check" -l examples -d 'Check all examples' -complete -c cargo -n "__fish_seen_subcommand_from check" -l tests -d 'Check all tests' -complete -c cargo -n "__fish_seen_subcommand_from check" -l benches -d 'Check all benches' -complete -c cargo -n "__fish_seen_subcommand_from check" -l all-targets -d 'Check all targets' -complete -c cargo -n "__fish_seen_subcommand_from check" -l release -d 'Check artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from check" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from check" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from check" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from check" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from check" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from check" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from check" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from check" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from check" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from check" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from check" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from clean" -s p -l package -d 'Package to clean artifacts for' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l target -d 'Target triple to clean output for' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l profile -d 'Clean artifacts of the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from clean" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from clean" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l release -d 'Whether or not to clean release artifacts' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l doc -d 'Whether or not to clean just the documentation directory' -complete -c cargo -n "__fish_seen_subcommand_from clean" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from clean" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from clean" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from clean" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from complete" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from complete" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from complete" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from complete" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from complete" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from complete" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from complete" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from complete" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from complete" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l id -d 'identifier of the report [generated by a Cargo command invocation' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from doc" -s p -l package -d 'Package to document' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l exclude -d 'Exclude packages from the build' -complete -c cargo -n "__fish_seen_subcommand_from doc" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l bin -d 'Document only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l profile -d 'Build artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from doc" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from doc" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l open -d 'Opens the docs in a browser after the operation' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l all -d 'Alias for --workspace (deprecated)' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l workspace -d 'Document all packages in the workspace' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l no-deps -d 'Don\'t build documentation for dependencies' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l document-private-items -d 'Document private items' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l lib -d 'Document only this package\'s library' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l bins -d 'Document all binaries' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l release -d 'Build artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from doc" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from doc" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from doc" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from doc" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -l target -d 'Fetch dependencies for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from fetch" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from fix" -s p -l package -d 'Package(s) to fix' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l exclude -d 'Exclude packages from the fixes' -complete -c cargo -n "__fish_seen_subcommand_from fix" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l bin -d 'Fix only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l example -d 'Fix only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l test -d 'Fix only the specified test target' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l bench -d 'Fix only the specified bench target' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l profile -d 'Build artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l target -d 'Fix for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from fix" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from fix" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l all -d 'Alias for --workspace (deprecated)' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l workspace -d 'Fix all packages in the workspace' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l lib -d 'Fix only this package\'s library' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l bins -d 'Fix all binaries' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l examples -d 'Fix all examples' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l tests -d 'Fix all tests' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l benches -d 'Fix all benches' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l all-targets -d 'Fix all targets (default)' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l release -d 'Fix artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l broken-code -d 'Fix code even if it already has compiler errors' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l edition -d 'Fix in preparation for the next edition' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l edition-idioms -d 'Fix warnings to migrate to the idioms of an edition' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l allow-no-vcs -d 'Fix code even if a VCS was not detected' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l allow-dirty -d 'Fix code even if the working directory is dirty' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l allow-staged -d 'Fix code even if the working directory has staged changes' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from fix" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from fix" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from fix" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from fix" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from init" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from init" -l vcs -d 'Initialize a new repository for the given version control system (git, hg, pijul, or fossil) or do not initialize any version control at all (none), overriding a global configuration.' -r -f -a "git hg pijul fossil none" -complete -c cargo -n "__fish_seen_subcommand_from init" -l edition -d 'Edition to set for the crate generated' -r -f -a "2015 2018 2021" -complete -c cargo -n "__fish_seen_subcommand_from init" -l name -d 'Set the resulting package name, defaults to the directory name' -complete -c cargo -n "__fish_seen_subcommand_from init" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from init" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from init" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from init" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from init" -l bin -d 'Use a binary (application) template [default]' -complete -c cargo -n "__fish_seen_subcommand_from init" -l lib -d 'Use a library template' -complete -c cargo -n "__fish_seen_subcommand_from init" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from init" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from init" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from init" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from init" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from init" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from install" -l version -d 'Specify a version to install' -complete -c cargo -n "__fish_seen_subcommand_from install" -l git -d 'Git URL to install the specified crate from' -complete -c cargo -n "__fish_seen_subcommand_from install" -l branch -d 'Branch to use when installing from git' -complete -c cargo -n "__fish_seen_subcommand_from install" -l tag -d 'Tag to use when installing from git' -complete -c cargo -n "__fish_seen_subcommand_from install" -l rev -d 'Specific commit to use when installing from git' -complete -c cargo -n "__fish_seen_subcommand_from install" -l path -d 'Filesystem path to local crate to install' -complete -c cargo -n "__fish_seen_subcommand_from install" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from install" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from install" -l profile -d 'Install artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from install" -l bin -d 'Install only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from install" -l example -d 'Install only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from install" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from install" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from install" -l root -d 'Directory to install packages into' -complete -c cargo -n "__fish_seen_subcommand_from install" -l index -d 'Registry index to install from' -complete -c cargo -n "__fish_seen_subcommand_from install" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from install" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from install" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from install" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from install" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from install" -l list -d 'list all installed packages and their versions' -complete -c cargo -n "__fish_seen_subcommand_from install" -s f -l force -d 'Force overwriting existing crates or binaries' -complete -c cargo -n "__fish_seen_subcommand_from install" -l no-track -d 'Do not save tracking information' -complete -c cargo -n "__fish_seen_subcommand_from install" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from install" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from install" -l debug -d 'Build in debug mode instead of release mode' -complete -c cargo -n "__fish_seen_subcommand_from install" -l bins -d 'Install all binaries' -complete -c cargo -n "__fish_seen_subcommand_from install" -l examples -d 'Install all examples' -complete -c cargo -n "__fish_seen_subcommand_from install" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from install" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from install" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from install" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from install" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l message-format -d 'Output representation [possible values: json, plain]' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l workspace -d 'Locate Cargo.toml of the workspace root' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from login" -l host -d 'Host to set the token for' -complete -c cargo -n "__fish_seen_subcommand_from login" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from login" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from login" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from login" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from login" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from login" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from login" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from login" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from login" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from login" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from login" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from logout" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from logout" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from logout" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from logout" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from logout" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from logout" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from logout" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from logout" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from logout" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from logout" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from logout" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l filter-platform -d 'Only include resolve dependencies matching the given target-triple' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l format-version -d 'Format version' -r -f -a 1 -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -s q -l quiet -d 'Do not print cargo log messages' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l no-deps -d 'Output information only about the workspace members and don\'t fetch dependencies' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from metadata" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from new" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from new" -l vcs -d 'Initialize a new repository for the given version control system (git, hg, pijul, or fossil) or do not initialize any version control at all (none), overriding a global configuration.' -r -f -a "git hg pijul fossil none" -complete -c cargo -n "__fish_seen_subcommand_from new" -l edition -d 'Edition to set for the crate generated' -r -f -a "2015 2018 2021" -complete -c cargo -n "__fish_seen_subcommand_from new" -l name -d 'Set the resulting package name, defaults to the directory name' -complete -c cargo -n "__fish_seen_subcommand_from new" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from new" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from new" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from new" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from new" -l bin -d 'Use a binary (application) template [default]' -complete -c cargo -n "__fish_seen_subcommand_from new" -l lib -d 'Use a library template' -complete -c cargo -n "__fish_seen_subcommand_from new" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from new" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from new" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from new" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from new" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from new" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s a -l add -d 'Name of a user or team to invite as an owner' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s r -l remove -d 'Name of a user or team to remove as an owner' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l index -d 'Registry index to modify owners for' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l token -d 'API token to use when authenticating' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s l -l list -d 'List owners of a crate' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from owner" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from owner" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from package" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from package" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from package" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from package" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from package" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from package" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from package" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from package" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from package" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from package" -s l -l list -d 'Print files included in a package without making one' -complete -c cargo -n "__fish_seen_subcommand_from package" -l no-verify -d 'Don\'t verify the contents by building them' -complete -c cargo -n "__fish_seen_subcommand_from package" -l no-metadata -d 'Ignore warnings about a lack of human-usable metadata' -complete -c cargo -n "__fish_seen_subcommand_from package" -l allow-dirty -d 'Allow dirty working directories to be packaged' -complete -c cargo -n "__fish_seen_subcommand_from package" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from package" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from package" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from package" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from package" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from package" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from package" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from package" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s p -l package -d 'Argument to get the package ID specifier for' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l index -d 'Registry index URL to upload the package to' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l host -d 'DEPRECATED, renamed to \'--index\'' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l token -d 'Token to use when uploading' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from publish" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l registry -d 'Registry to publish to' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from publish" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from publish" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l no-verify -d 'Don\'t verify the contents by building them' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l allow-dirty -d 'Allow dirty working directories to be packaged' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l dry-run -d 'Perform all checks without uploading' -complete -c cargo -n "__fish_seen_subcommand_from publish" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from publish" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from publish" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from publish" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from run" -l bin -d 'Name of the bin target to run' -complete -c cargo -n "__fish_seen_subcommand_from run" -l example -d 'Name of the example target to run' -complete -c cargo -n "__fish_seen_subcommand_from run" -s p -l package -d 'Package with the target to run' -complete -c cargo -n "__fish_seen_subcommand_from run" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from run" -l profile -d 'Build artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from run" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from run" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from run" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from run" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from run" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from run" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from run" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from run" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from run" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from run" -l release -d 'Build artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from run" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from run" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from run" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from run" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from run" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from run" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from run" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from run" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from run" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from run" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -s p -l package -d 'Package to build' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l bin -d 'Build only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l example -d 'Build only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l test -d 'Build only the specified test target' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l bench -d 'Build only the specified bench target' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l profile -d 'Build artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l target -d 'Target triple which compiles will be for' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l print -d 'Output compiler information without compiling' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l lib -d 'Build only this package\'s library' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l bins -d 'Build all binaries' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l examples -d 'Build all examples' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l tests -d 'Build all tests' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l benches -d 'Build all benches' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l all-targets -d 'Build all targets' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l release -d 'Build artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from rustc" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s p -l package -d 'Package to document' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l bin -d 'Build only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l example -d 'Build only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l test -d 'Build only the specified test target' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l bench -d 'Build only the specified bench target' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l profile -d 'Build artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l open -d 'Opens the docs in a browser after the operation' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l lib -d 'Build only this package\'s library' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l bins -d 'Build all binaries' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l examples -d 'Build all examples' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l tests -d 'Build all tests' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l benches -d 'Build all benches' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l all-targets -d 'Build all targets' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l release -d 'Build artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from search" -l index -d 'Registry index URL to upload the package to' -complete -c cargo -n "__fish_seen_subcommand_from search" -l host -d 'DEPRECATED, renamed to \'--index\'' -complete -c cargo -n "__fish_seen_subcommand_from search" -l limit -d 'Limit the number of results (default: 10, max: 100)' -complete -c cargo -n "__fish_seen_subcommand_from search" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from search" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from search" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from search" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from search" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from search" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from search" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from search" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from search" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from search" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from search" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from test" -l bin -d 'Test only the specified binary' -complete -c cargo -n "__fish_seen_subcommand_from test" -l example -d 'Test only the specified example' -complete -c cargo -n "__fish_seen_subcommand_from test" -l test -d 'Test only the specified test target' -complete -c cargo -n "__fish_seen_subcommand_from test" -l bench -d 'Test only the specified bench target' -complete -c cargo -n "__fish_seen_subcommand_from test" -s p -l package -d 'Package to run tests for' -complete -c cargo -n "__fish_seen_subcommand_from test" -l exclude -d 'Exclude packages from the test' -complete -c cargo -n "__fish_seen_subcommand_from test" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' -complete -c cargo -n "__fish_seen_subcommand_from test" -l profile -d 'Build artifacts with the specified profile' -complete -c cargo -n "__fish_seen_subcommand_from test" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from test" -l target -d 'Build for the target triple' -complete -c cargo -n "__fish_seen_subcommand_from test" -l target-dir -d 'Directory for all generated artifacts' -complete -c cargo -n "__fish_seen_subcommand_from test" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from test" -l message-format -d 'Error format' -complete -c cargo -n "__fish_seen_subcommand_from test" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from test" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from test" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from test" -s q -l quiet -d 'Display one character per test instead of one line' -complete -c cargo -n "__fish_seen_subcommand_from test" -l lib -d 'Test only this package\'s library unit tests' -complete -c cargo -n "__fish_seen_subcommand_from test" -l bins -d 'Test all binaries' -complete -c cargo -n "__fish_seen_subcommand_from test" -l examples -d 'Test all examples' -complete -c cargo -n "__fish_seen_subcommand_from test" -l tests -d 'Test all tests' -complete -c cargo -n "__fish_seen_subcommand_from test" -l benches -d 'Test all benches' -complete -c cargo -n "__fish_seen_subcommand_from test" -l all-targets -d 'Test all targets' -complete -c cargo -n "__fish_seen_subcommand_from test" -l doc -d 'Test only this library\'s documentation' -complete -c cargo -n "__fish_seen_subcommand_from test" -l no-run -d 'Compile, but don\'t run tests' -complete -c cargo -n "__fish_seen_subcommand_from test" -l no-fail-fast -d 'Run all tests regardless of failure' -complete -c cargo -n "__fish_seen_subcommand_from test" -l all -d 'Alias for --workspace (deprecated)' -complete -c cargo -n "__fish_seen_subcommand_from test" -l workspace -d 'Test all packages in the workspace' -complete -c cargo -n "__fish_seen_subcommand_from test" -l release -d 'Build artifacts in release mode, with optimizations' -complete -c cargo -n "__fish_seen_subcommand_from test" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from test" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from test" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from test" -l unit-graph -d 'Output build graph in JSON (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from test" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from test" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from test" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from test" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from test" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from test" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from test" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s p -l package -d 'Package to be used as the root of the tree' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l exclude -d 'Exclude specific workspace members' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l features -d 'Space or comma separated list of features to activate' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l target -d 'Filter dependencies matching the given target-triple (default host platform). Pass `all` to include all targets.' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s e -l edges -d 'The kinds of dependencies to display (features, normal, build, dev, all, no-dev, no-build, no-normal)' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s i -l invert -d 'Invert the tree direction and focus on the given package' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l prefix -d 'Change the prefix (indentation) of how each entry is displayed' -r -f -a "depth indent none" -complete -c cargo -n "__fish_seen_subcommand_from tree" -l charset -d 'Character set to use in output: utf8, ascii' -r -f -a "utf8 ascii" -complete -c cargo -n "__fish_seen_subcommand_from tree" -s f -l format -d 'Format string used for printing dependencies' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s q -l quiet -d 'Suppress status messages' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l workspace -d 'Display the tree for all packages in the workspace' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s a -l all -complete -c cargo -n "__fish_seen_subcommand_from tree" -l all-targets -complete -c cargo -n "__fish_seen_subcommand_from tree" -l all-features -d 'Activate all available features' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-default-features -d 'Do not activate the `default` feature' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-dev-dependencies -complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-indent -complete -c cargo -n "__fish_seen_subcommand_from tree" -l prefix-depth -complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-dedupe -d 'Do not de-duplicate (repeats all shared dependencies)' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s d -l duplicates -d 'Show only dependencies which come in multiple versions (implies -i)' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s V -l version -complete -c cargo -n "__fish_seen_subcommand_from tree" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from tree" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from tree" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s p -l package -d 'Package to uninstall' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l bin -d 'Only uninstall the binary NAME' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l root -d 'Directory to uninstall packages from' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from update" -s p -l package -d 'Package to update' -complete -c cargo -n "__fish_seen_subcommand_from update" -l precise -d 'Update a single dependency to exactly PRECISE when used with -p' -complete -c cargo -n "__fish_seen_subcommand_from update" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from update" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from update" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from update" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from update" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from update" -s w -l workspace -d 'Only update the workspace packages' -complete -c cargo -n "__fish_seen_subcommand_from update" -l aggressive -d 'Force updating all dependencies of SPEC as well when used with -p' -complete -c cargo -n "__fish_seen_subcommand_from update" -l dry-run -d 'Don\'t actually write the lockfile' -complete -c cargo -n "__fish_seen_subcommand_from update" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from update" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from update" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from update" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from update" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from update" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -s s -l sync -d 'Additional `Cargo.toml` to sync and vendor' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l no-delete -d 'Don\'t delete older crates in the vendor directory' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l respect-source-config -d 'Respect `[source]` config in `.cargo/config`' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l versioned-dirs -d 'Always include version in subdir name' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l no-merge-sources -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l relative-path -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l only-git-deps -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l disallow-duplicates -complete -c cargo -n "__fish_seen_subcommand_from vendor" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from vendor" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l manifest-path -d 'Path to Cargo.toml' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from version" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from version" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from version" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from version" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from version" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from version" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from version" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from version" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from version" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from version" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l vers -d 'The version to yank or un-yank' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l index -d 'Registry index to yank from' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l token -d 'API token to use when authenticating' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l registry -d 'Registry to use' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from yank" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from yank" -s q -l quiet -d 'No output printed to stdout' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l undo -d 'Undo a yank, putting a version back into the index' -complete -c cargo -n "__fish_seen_subcommand_from yank" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from yank" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from yank" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from yank" -l offline -d 'Run without accessing the network' -complete -c cargo -n "__fish_seen_subcommand_from help" -l color -d 'Coloring: auto, always, never' -complete -c cargo -n "__fish_seen_subcommand_from help" -l config -d 'Override a configuration value (unstable)' -complete -c cargo -n "__fish_seen_subcommand_from help" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' -complete -c cargo -n "__fish_seen_subcommand_from help" -s h -l help -d 'Prints help information' -complete -c cargo -n "__fish_seen_subcommand_from help" -s V -l version -d 'Prints version information' -complete -c cargo -n "__fish_seen_subcommand_from help" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' -complete -c cargo -n "__fish_seen_subcommand_from help" -l frozen -d 'Require Cargo.lock and cache are up to date' -complete -c cargo -n "__fish_seen_subcommand_from help" -l locked -d 'Require Cargo.lock is up to date' -complete -c cargo -n "__fish_seen_subcommand_from help" -l offline -d 'Run without accessing the network' diff --git a/.config/fish/completions/git.fish b/.config/fish/completions/git.fish deleted file mode 100644 index 0fa768d..0000000 --- a/.config/fish/completions/git.fish +++ /dev/null @@ -1,2162 +0,0 @@ -# fish completion for git - -# Use this instead of calling git directly; it passes the commands that are -# already present on the commandline to git. This is relevant for --work-tree etc, see issue #6219. -function __fish_git - set -l saved_args $argv - set -l global_args - set -l cmd (commandline -opc) - # We assume that git is the first command until we have a better awareness of subcommands, see #2705. - set -e cmd[1] - if argparse -s (__fish_git_global_optspecs) -- $cmd 2>/dev/null - # All arguments that were parsed by argparse are global git options. - set -l num_global_args (math (count $cmd) - (count $argv)) - if test $num_global_args -ne 0 - set global_args $cmd[1..$num_global_args] - end - end - # Using 'command git' to avoid interactions for aliases from git to (e.g.) hub - # Using eval to expand ~ and variables specified on the commandline. - eval command git $global_args \$saved_args 2>/dev/null -end - -# Print an optspec for argparse to handle git's options that are independent of any subcommand. -function __fish_git_global_optspecs - string join \n v-version h/help C= c=+ 'e-exec-path=?' H-html-path M-man-path I-info-path p/paginate \ - P/no-pager o-no-replace-objects b-bare G-git-dir= W-work-tree= N-namespace= S-super-prefix= \ - l-literal-pathspecs g-glob-pathspecs O-noglob-pathspecs i-icase-pathspecs -end - -function __fish_git_commits - # Complete commits with their subject line as the description - # This allows filtering by subject with the new pager! - # Because even subject lines can be quite long, - # trim them (abbrev'd hash+tab+subject) to 73 characters - # - # Hashes we just truncate ourselves to 10 characters, without disambiguating. - # That technically means that sometimes we don't give usable SHAs, - # but according to https://stackoverflow.com/a/37403152/3150338, - # that happens for 3 commits out of 600k. - # For fish, at the time of writing, out of 12200 commits, 7 commits need 8 characters. - # And since this takes about 1/3rd of the time that disambiguating takes... - __fish_git log --pretty=tformat:"%H"\t"%<(64,trunc)%s" --all --max-count=1000 2>/dev/null \ - | string replace -r '^([0-9a-f]{10})[0-9a-f]*\t(.*)' '$1\t$2' -end - -function __fish_git_recent_commits - # Like __fish_git_commits, but not on all branches and limited to - # the last 50 commits. Used for fixup, where only the current branch - # and the latest commits make sense. - __fish_git log --pretty=tformat:"%h"\t"%<(64,trunc)%s" --max-count=50 $argv 2>/dev/null -end - -function __fish_git_branches - # This is much faster than using `git branch`, - # and avoids having to deal with localized "detached HEAD" messages. - __fish_git for-each-ref --format='%(refname)' refs/heads/ refs/remotes/ 2>/dev/null \ - | string replace -r '^refs/heads/(.*)$' '$1\tLocal Branch' \ - | string replace -r '^refs/remotes/(.*)$' '$1\tRemote Branch' -end - -function __fish_git_submodules - __fish_git submodule 2>/dev/null \ - | string replace -r '^.[^ ]+ ([^ ]+).*$' '$1' -end - -function __fish_git_local_branches - __fish_git for-each-ref --format='%(refname:strip=2)' refs/heads/ 2>/dev/null \ - | string replace -rf '.*' '$0\tLocal Branch' -end - -function __fish_git_unique_remote_branches - # `git checkout` accepts remote branches without the remote part - # if they are unambiguous. - # E.g. if only alice has a "frobulate" branch - # `git checkout frobulate` is equivalent to `git checkout -b frobulate --track alice/frobulate`. - __fish_git for-each-ref --format="%(refname:strip=3)" \ - --sort="refname:strip=3" \ - "refs/remotes/*/$match*" "refs/remotes/*/*/**" 2>/dev/null | uniq -u -end - -function __fish_git_tags - __fish_git tag --sort=-creatordate 2>/dev/null -end - -function __fish_git_heads - set -l gitdir (__fish_git rev-parse --git-dir 2>/dev/null) - or return # No git dir, no need to even test. - for head in HEAD FETCH_HEAD ORIG_HEAD MERGE_HEAD - if test -f $gitdir/$head - echo $head - end - end -end - -function __fish_git_refs - __fish_git_branches - __fish_git_tags - __fish_git_heads -end - -function __fish_git_remotes - __fish_git remote 2>/dev/null -end - -function __fish_git_files - # A function to show various kinds of files git knows about, - # by parsing `git status --porcelain`. - # - # This accepts arguments to denote the kind of files: - # - added: Staged added files (unstaged adds are untracked) - # - copied - # - deleted - # - deleted-staged - # - ignored - # - modified: Files that have been modified (but aren't staged) - # - modified-staged: Staged modified files - # - renamed - # - untracked - # and as a convenience "all-staged" - # to get _all_ kinds of staged files. - - # Save the repo root to remove it from the path later. - set -l root (__fish_git rev-parse --show-toplevel --is-bare-repository 2>/dev/null) - or return - - # Skip bare repositories. - test "$root[2]" = true - and return - or set -e root[2] - - # Cache the translated descriptions so we don't have to get it - # once per file. - contains -- all-staged $argv; and set -l all_staged - contains -- unmerged $argv; and set -l unmerged - and set -l unmerged_desc "Unmerged File" - contains -- added $argv; or set -ql all_staged; and set -l added - and set -l added_desc "Added file" - contains -- modified $argv; and set -l modified - and set -l modified_desc "Modified file" - contains -- untracked $argv; and set -l untracked - and set -l untracked_desc "Untracked file" - contains -- modified-staged $argv; or set -ql all_staged; and set -l modified_staged - and set -l staged_modified_desc "Staged modified file" - contains -- modified-staged-deleted $argv; or set -ql modified_staged; and set -l modified_staged_deleted - and set -l modified_staged_deleted_desc "Staged modified and deleted file" - contains -- deleted $argv; and set -l deleted - and set -l deleted_desc "Deleted file" - contains -- deleted-staged $argv; or set -ql all_staged; and set -l deleted_staged - and set -l staged_deleted_desc "Staged deleted file" - contains -- ignored $argv; and set -l ignored - and set -l ignored_desc "Ignored file" - contains -- renamed $argv; and set -l renamed - and set -l renamed_desc "Renamed file" - contains -- copied $argv; and set -l copied - and set -l copied_desc "Copied file" - - # A literal "?" for use in `case`. - set -l q '\\?' - if status test-feature qmark-noglob - set q '?' - end - set -l use_next - # git status --porcelain gives us all the info we need, in a format we don't. - # The v2 format has better documentation and doesn't use " " to denote anything, - # but it's only been added in git 2.11.0, which was released November 2016. - - # Also, we ignore submodules because they aren't useful as arguments (generally), - # and they slow things down quite significantly. - # E.g. `git reset $submodule` won't do anything (not even print an error). - # --ignore-submodules=all was added in git 1.7.2, released July 2010. - # - set -l status_opt --ignore-submodules=all - - # If we aren't looking for ignored files, let git status skip them. - # (don't use --ignored=no because that was only added in git 2.16, from Jan 2018. - set -q ignored; and set -a status_opt --ignored - - # If we're looking for untracked files, we give untracked files even inside untracked directories. - # This makes it nicer if e.g. you're in an untracked directory and want to just add one file. - set -q untracked; and set -a status_opt -uall - or set -a status_opt -uno - - # We need to set status.relativePaths to true because the porcelain v2 format still honors that, - # and core.quotePath to false so characters > 0x80 (i.e. non-ASCII) aren't considered special. - # We explicitly enable globs so we can use that to match the current token. - set -l git_opt -c status.relativePaths -c core.quotePath= - - # We pick the v2 format if we can, because it shows relative filenames (if used without "-z"). - # We fall back on the v1 format by reading git's _version_, because trying v2 first is too slow. - set -l ver (__fish_git --version | string replace -rf 'git version (\d+)\.(\d+)\.?.*' '$1\n$2') - # Version >= 2.11.* has the v2 format. - if test "$ver[1]" -gt 2 2>/dev/null; or test "$ver[1]" -eq 2 -a "$ver[2]" -ge 11 2>/dev/null - __fish_git $git_opt status --porcelain=2 $status_opt \ - | while read -la -d ' ' line - set -l file - set -l desc - # The basic status format is "XY", where X is "our" state (meaning the staging area), - # and "Y" is "their" state. - # A "." means it's unmodified. - switch "$line[1..2]" - case 'u *' - # Unmerged - # "Unmerged entries have the following format; the first character is a "u" to distinguish from ordinary changed entries." - # "u

" - # This is first to distinguish it from normal modifications et al. - set -ql unmerged - and set file "$line[11..-1]" - and set desc $unmerged_desc - case '2 .R*' '2 R.*' - # Renamed/Copied - # From the docs: "Renamed or copied entries have the following format:" - # "2 " - # Since is \t, we can't really parse it unambiguously. - # The "-z" format would be great here! - set -ql renamed - and set file (string replace -r '\t[^\t]*' '' -- "$line[10..-1]") - and set desc $renamed_desc - case '2 RM*' '2 RT*' - # Staged as renamed, with unstaged modifications (issue #6031) - set -ql renamed - or set -ql modified - and set file (string replace -r '\t[^\t]*' '' -- "$line[10..-1]") - set -ql renamed - and set desc $renamed_desc - set -ql modified - and set --append desc $modified_desc - case '2 RD*' - # Staged as renamed, but deleted in the worktree - set -ql renamed - or set -ql deleted - and set file (string replace -r '\t[^\t]*' '' -- "$line[10..-1]") - set -ql renamed - and set desc $renamed_desc - set -ql deleted - and set --append desc $deleted_desc - case '2 .C*' '2 C.*' - set -ql copied - and set file (string replace -r '\t[^\t].*' '' -- "$line[10..-1]") - and set desc $copied_desc - case '1 A.*' - # Additions are only shown here if they are staged. - # Otherwise it's an untracked file. - set -ql added - and set file "$line[9..-1]" - and set desc $added_desc - case '1 AD*' - # Added files that were since deleted - if set -ql added - set file "$line[9..-1]" - set desc $added_desc - else if set -ql deleted - set file "$line[9..-1]" - set desc $deleted_desc - end - case "1 AM*" "1 AT*" - # Added files with additional modifications - # ("T" is type-changed. As of git 2.33 this appears to be undocumented. - # it happens when e.g. a file is replaced with a symlink. - # For our purposes it's the same as modified) - if set -ql added - set file "$line[9..-1]" - set desc $added_desc - else if set -ql modified - set file "$line[9..-1]" - set desc $modified_desc - end - case '1 .A*' - # Files added with git add --intent-to-add. - set -ql untracked - and set file "$line[9..-1]" - and set desc $untracked_desc - case '1 .M*' '1 .T*' - # Modified - # From the docs: "Ordinary changed entries have the following format:" - # "1 " - # Since can contain spaces, print from element 9 onwards - set -ql modified - and set file "$line[9..-1]" - and set desc $modified_desc - case '1 MD*' '1 TD*' - set -ql modified_staged_deleted - and set file "$line[9..-1]" - and set desc $modified_staged_deleted_desc - case '1 M.*' '1 T.*' - # If the character is first ("M."), then that means it's "our" change, - # which means it is staged. - # This is useless for many commands - e.g. `checkout` won't do anything with this. - # So it needs to be requested explicitly. - set -ql modified_staged - and set file "$line[9..-1]" - and set desc $staged_modified_desc - case '1 MM*' '1 MT*' '1 TM*' '1 TT*' - # Staged-modified with unstaged modifications - # These need to be offered for both kinds of modified. - if set -ql modified - set file "$line[9..-1]" - set desc $modified_desc - else if set -ql modified_staged - set file "$line[9..-1]" - set desc $staged_modified_desc - end - case '1 .D*' - set -ql deleted - and set file "$line[9..-1]" - and set desc $deleted_desc - case '1 D.*' - # TODO: The docs are unclear on this. - # There is both X unmodified and Y either M or D ("not updated") - # and Y is D and X is unmodified or [MARC] ("deleted in work tree"). - # For our purposes, we assume this is a staged deletion. - set -ql deleted_staged - and set file "$line[9..-1]" - and set desc $staged_deleted_desc - case "$q"' *' - # Untracked - # "? " - print from element 2 on. - set -ql untracked - and set file "$line[2..-1]" - and set desc $untracked_desc - case '! *' - # Ignored - # "! " - print from element 2 on. - set -ql ignored - and set file "$line[2..-1]" - and set desc $ignored_desc - end - # Only try printing if the file was selected. - if set -q file[1] - for d in $desc - # Without "-z", git sometimes _quotes_ filenames. - # It adds quotes around it _and_ escapes the character. - # e.g. `"a\\b"`. - # We just remove the quotes and hope it works out. - # If this contains newlines or tabs, - # there is nothing we can do, but that's a general issue with scripted completions. - set file (string trim -c \" -- $file) - # First the relative filename. - printf '%s\t%s\n' "$file" $d - # Now from repo root. - # Only do this if the filename isn't a simple child, - # or the current token starts with ":" - if string match -q '../*' -- $file - or string match -q ':*' -- (commandline -ct) - set -l fromroot (builtin realpath -- $file 2>/dev/null) - and set fromroot (string replace -- "$root/" ":/" "$fromroot") - and printf '%s\t%s\n' "$fromroot" $d - end - end - end - end - else - # v1 format logic - # We need to compute relative paths on our own, which is slow. - # Pre-remove the root at least, so we have fewer components to deal with. - set -l _pwd_list (string replace "$root/" "" -- $PWD/ | string split /) - test -z "$_pwd_list[-1]"; and set -e _pwd_list[-1] - # Cache the previous relative path because these are sorted, so we can reuse it - # often for files in the same directory. - set -l previous - # Note that we can't use space as a delimiter between status and filename, because - # the status can contain spaces - " M" is different from "M ". - __fish_git $git_opt status --porcelain -z $status_opt \ - | while read -lz -d' ' line - set -l desc - # The entire line is the "from" from a rename. - if set -q use_next[1] - if contains -- $use_next $argv - set -l var "$use_next"_desc - set desc $$var - set -e use_next[1] - else - set -e use_next[1] - continue - end - end - - # The format is two characters for status, then a space and then - # up to a NUL for the filename. - # - set -l stat (string sub -l 2 -- $line) - # The basic status format is "XY", where X is "our" state (meaning the staging area), - # and "Y" is "their" state (meaning the work tree). - # A " " means it's unmodified. - # - # Be careful about the ordering here! - switch "$stat" - case DD AU UD UA DU AA UU - # Unmerged - set -ql unmerged - and set desc $unmerged_desc - case 'R ' RM RD - # Renamed/Copied - # These have the "from" name as the next batch. - # TODO: Do we care about the new name? - set use_next renamed - continue - case 'C ' CM CD - set use_next copied - continue - case AM - if set -ql added - set file "$line[9..-1]" - set desc $added_desc - else if set -ql modified - set file "$line[9..-1]" - set desc $modified_desc - end - case AD - if set -ql added - set file "$line[9..-1]" - set desc $added_desc - else if set -ql deleted - set file "$line[9..-1]" - set desc $deleted_desc - end - case 'A ' - # Additions are only shown here if they are staged. - # Otherwise it's an untracked file. - set -ql added - and set desc $added_desc - case '*M' - # Modified - set -ql modified - and set desc $modified_desc - case 'M*' - # If the character is first ("M "), then that means it's "our" change, - # which means it is staged. - # This is useless for many commands - e.g. `checkout` won't do anything with this. - # So it needs to be requested explicitly. - set -ql modified_staged - and set desc $staged_modified_desc - case '*D' - set -ql deleted - and set desc $deleted_desc - case 'D*' - # TODO: The docs are unclear on this. - # There is both X unmodified and Y either M or D ("not updated") - # and Y is D and X is unmodified or [MARC] ("deleted in work tree"). - # For our purposes, we assume this is a staged deletion. - set -ql deleted_staged - and set desc $staged_deleted_desc - case "$q$q" - # Untracked - set -ql untracked - and set desc $untracked_desc - case '!!' - # Ignored - set -ql ignored - and set desc $ignored_desc - end - if set -q desc[1] - # Again: "XY filename", so the filename starts on character 4. - set -l relfile (string sub -s 4 -- $line) - - set -l file - # Computing relative path by hand. - set -l abs (string split / -- $relfile) - # If it's in the same directory, we just need to change the filename. - if test "$abs[1..-2]" = "$previous[1..-2]" - # If we didn't have a previous file, and the current file is in the current directory, - # this would error out. - # - # See #5728. - set -q previous[1] - and set previous[-1] $abs[-1] - or set previous $abs - else - set -l pwd_list $_pwd_list - # Remove common prefix - while test "$pwd_list[1]" = "$abs[1]" - set -e pwd_list[1] - set -e abs[1] - end - # Go a dir up for every entry left in pwd_list, then into $abs - set previous (string replace -r '.*' '..' -- $pwd_list) $abs - end - set -a file (string join / -- $previous) - - # The filename with ":/" prepended. - if string match -q '../*' -- $file - or string match -q ':*' -- (commandline -ct) - set file (string replace -- "$root/" ":/" "$root/$relfile") - end - - if test "$root/$relfile" = (pwd -P)/$relfile - set file $relfile - end - - printf '%s\n' $file\t$desc - end - end - end -end - -# Lists files included in the index of a commit, branch, or tag (not necessarily HEAD) -function __fish_git_rev_files - set -l rev $argv[1] - set -l path $argv[2] - - # Strip any partial files from the path before handing it to `git show` - set -l path (string replace -r -- '(.*/|).*' '$1' $path) - - # List files in $rev's index, skipping the "tree ..." header, but appending - # the parent path, which git does not include in the output (and fish requires) - printf "$path%s\n" (git show $rev:$path | sed '1,2d') -end - -# Provides __fish_git_rev_files completions for the current token -function __fish_git_complete_rev_files - set -l split (string split -m 1 ":" (commandline -ot)) - set -l rev $split[1] - set -l path $split[2] - - printf "$rev:%s\n" (__fish_git_rev_files $rev $path) -end - -# Determines whether we can/should complete with __fish_git_rev_files -function __fish_git_needs_rev_files - # git (as of 2.20) accepts the rev:path syntax for a number of subcommands, - # but then doesn't emit the expected (or any?) output, e.g. `git log master:foo` - # - # This definitely works with `git show` to retrieve a copy of a file as it exists - # in the index of revision $rev, it should be updated to include others as they - # are identified. - __fish_git_using_command show; and string match -r "^[^-].*:" -- (commandline -ot) -end - -function __fish_git_ranges - set -l both (commandline -ot | string replace -r '\.{2,3}' \n\$0\n) - set -l from $both[1] - set -l dots $both[2] - # If we didn't need to split (or there's nothing _to_ split), complete only the first part - # Note that status here is from `string replace` because `set` doesn't alter it - if test -z "$from" -o $status -gt 0 - if commandline -ct | string match -q '*..*' - # The cursor is right of a .. range operator, make sure to include them first. - __fish_git_refs | string replace -r '' "$dots" - else - __fish_git_refs | string replace \t "$dots"\t - end - return 0 - end - - set -l from_refs - if commandline -ct | string match -q '*..*' - # If the cursor is right of a .. range operator, only complete the right part. - set from_refs $from - else - set from_refs (__fish_git_refs | string match -e "$from" | string replace -r \t'.*$' '') - end - - set -l to $both[3] - # Remove description from the from-ref, not the to-ref. - for from_ref in $from_refs - for to_ref in (__fish_git_refs | string match "*$to*") # if $to is empty, this correctly matches everything - printf "%s%s%s\n" $from_ref $dots $to_ref - end - end -end - -function __fish_git_needs_command - # Figure out if the current invocation already has a command. - set -l cmd (commandline -opc) - set -e cmd[1] - argparse -s (__fish_git_global_optspecs) -- $cmd 2>/dev/null - or return 0 - # These flags function as commands, effectively. - set -q _flag_version; and return 1 - set -q _flag_html_path; and return 1 - set -q _flag_man_path; and return 1 - set -q _flag_info_path; and return 1 - if set -q argv[1] - # Also print the command, so this can be used to figure out what it is. - echo $argv[1] - return 1 - end - return 0 -end - -function __fish_git_config_keys - # Print already defined config values first - # Config keys may span multiple lines, so parse using null char - # With -z, key and value are separated by space, not "=" - __fish_git config -lz | while read -lz key value - # Print only first line of value(with an ellipsis) if multiline - printf '%s\t%s\n' $key (string replace \n …\n -- $value)[1] - end - # Print all recognized config keys; duplicates are not shown twice by fish - printf '%s\n' (__fish_git help --config)[1..-2] # Last line is a footer; ignore it -end - -# HACK: Aliases -# Git allows aliases, so we need to see what command the current command-token corresponds to -# (so we can complete e.g. `lg` like `log`). -# Checking `git config` for a lot of aliases can be quite slow if it is called -# for every possible command. -# Ideally, we'd `complete --wraps` this, but that is not currently possible, as is -# using `complete -C` like -# complete -c git -n '__fish_git_using_command lg' -a '(complete -C"git log ")' -# -# So instead, we store the aliases in global variables, named after the alias, containing the command. -# This is because alias:command is an n:1 mapping (an alias can only have one corresponding command, -# but a command can be aliased multiple times) - -# Approximately duplicates the logic from https://github.com/git/git/blob/d486ca60a51c9cb1fe068803c3f540724e95e83a/contrib/completion/git-completion.bash#L1130 -# The Git script also finds aliases that reference other aliases via a loop but this is fine for a PoC -function __fish_git_aliased_command - for word in (string split ' ' -- $argv) - switch $word - case !gitk gitk - echo gitk - return - # Adding " to the list - case '!*' '-*' '*=*' git '()' '{' : '\'*' '"*' - continue - case '*' - echo $word - return - end - end -end - -git config -z --get-regexp 'alias\..*' | while read -lz alias cmdline - set -l command (__fish_git_aliased_command $cmdline) - string match -q --regex '\w+' -- $command; or continue - # Git aliases can contain chars that variable names can't - escape them. - set -l alias (string replace 'alias.' '' -- $alias | string escape --style=var) - set -g __fish_git_alias_$alias $command -end - -function __fish_git_using_command - set -l cmd (__fish_git_needs_command) - test -z "$cmd" - and return 1 - contains -- $cmd $argv - and return 0 - - # Check aliases. - set -l varname __fish_git_alias_(string escape --style=var -- $cmd) - set -q $varname - and contains -- $$varname $argv - and return 0 - return 1 -end - -function __fish_git_stash_using_command - set -l cmd (commandline -opc) - __fish_git_using_command stash - or return 2 - # The word after the stash command _must_ be the subcommand - set cmd $cmd[(contains -i -- "stash" $cmd)..-1] - set -e cmd[1] - set -q cmd[1] - or return 1 - contains -- $cmd[1] $argv - and return 0 - return 1 -end - -function __fish_git_stash_not_using_subcommand - set -l cmd (commandline -opc) - __fish_git_using_command stash - or return 2 - set cmd $cmd[(contains -i -- "stash" $cmd)..-1] - set -q cmd[2] - and return 1 - return 0 -end - -function __fish_git_complete_worktrees - __fish_git worktree list --porcelain | string replace --regex --filter '^worktree\s*' '' -end - -function __fish_git_complete_stashes - __fish_git stash list --format=%gd:%gs 2>/dev/null | string replace ":" \t -end - -function __fish_git_aliases - __fish_git config -z --get-regexp '^alias\.' 2>/dev/null | while read -lz key value - begin - set -l name (string replace -r '^.*\.' '' -- $key) - # Only use the first line of the value as the description. - set -l val (printf '%s\n' $value)[1] - printf "%s\t%s\n" $name "Alias for $val" - end - end -end - -function __fish_git_custom_commands - # complete all commands starting with git- - # however, a few builtin commands are placed into $PATH by git because - # they're used by the ssh transport. We could filter them out by checking - # if any of these completion results match the name of the builtin git commands, - # but it's simpler just to blacklist these names. They're unlikely to change, - # and the failure mode is we accidentally complete a plumbing command. - for name in (string replace -r "^.*/git-([^/]*)" '$1' $PATH/git-*) - switch $name - case cvsserver receive-pack shell upload-archive upload-pack - # skip these - case \* - echo $name - end - end -end - -# Suggest branches for the specified remote - returns 1 if no known remote is specified -function __fish_git_branch_for_remote - set -l remotes (__fish_git_remotes) - set -l remote - set -l cmd (commandline -opc) - for r in $remotes - if contains -- $r $cmd - set remote $r - break - end - end - set -q remote[1] - or return 1 - __fish_git_branches | string replace -f -- "$remote/" '' -end - -# Return 0 if the current token is a possible commit-hash with at least 3 characters -function __fish_git_possible_commithash - set -q argv[1] - and set -l token $argv[1] - or set -l token (commandline -ct) - if string match -qr '^[0-9a-fA-F]{3,}$' -- $token - return 0 - end - return 1 -end - -function __fish_git_reflog - __fish_git reflog --no-decorate 2>/dev/null | string replace -r '[0-9a-f]* (.+@\{[0-9]+\}): (.*)$' '$1\t$2' -end - -function __fish_git_help_all_concepts - git help -g | string match -e -r '^ \w+' | while read -l concept desc - printf "%s\tConcept: %s\n" $concept (string trim $desc) - end -end - -function __fish_git_diff_opt -a option - switch $option - case diff-algorithm - printf "%b" " -default\tBasic greedy diff algorithm -myers\tBasic greedy diff algorithm -minimal\tMake smallest diff possible -patience\tPatience diff algorithm -histogram\tPatience algorithm with low-occurrence common elements" - case diff-filter - printf "%b" " -A\tAdded files -C\tCopied files -D\tDeleted files -M\tModified files -R\tRenamed files -T\tType changed files -U\tUnmerged files -X\tUnknown files -B\tBroken pairing files" - case dirstat - printf "%b" " -changes\tCount lines that have been removed from the source / added to the destination -lines\tRegular line-based diff analysis -files\tCount the number of files changed -cumulative\tCount changes in a child directory for the parent directory as well" - case ignore-submodules - printf "%b" " -none\tUntracked/modified files -untracked\tNot considered dirty when they only contain untracked content -dirty\tIgnore all changes to the work tree of submodules -all\tHide all changes to submodules (default)" - case submodule - printf "%b" " -short\tShow the name of the commits at the beginning and end of the range -log\tList the commits in the range -diff\tShow an inline diff of the changes" - case ws-error-highlight - printf "%b" " -context\tcontext lines of the diff -old\told lines of the diff -new\tnew lines of the diff -none\treset previous values -default\treset the list to 'new' -all\tShorthand for 'old,new,context'" - end -end - -function __fish_git_show_opt -a option - switch $option - case format pretty - printf "%b" " -oneline\t -short\t<sha1> / <author> / <title line> -medium\t<sha1> / <author> / <author date> / <title> / <commit msg> -full\t<sha1> / <author> / <committer> / <title> / <commit msg> -fuller\t<sha1> / <author> / <author date> / <committer> / <committer date> / <title> / <commit msg> -email\t<sha1> <date> / <author> / <author date> / <title> / <commit msg> -raw\tShow the entire commit exactly as stored in the commit object -format:\tSpecify which information to show" - end -end - -function __fish_git_is_rebasing - test -e (__fish_git rev-parse --absolute-git-dir)/rebase-merge -end - -# general options -complete -f -c git -l help -d 'Display the manual of a git command' -complete -f -c git -n __fish_git_needs_command -l version -d 'Display version' -complete -x -c git -n __fish_git_needs_command -s C -a '(__fish_complete_directories)' -d 'Run as if git was started in this directory' -complete -x -c git -n __fish_git_needs_command -s c -a '(__fish_git config -l 2>/dev/null | string replace = \t)' -d 'Set a configuration option' -complete -x -c git -n __fish_git_needs_command -l exec-path -a '(__fish_complete_directories)' -d 'Get or set the path to the git programs' -complete -f -c git -n __fish_git_needs_command -l html-path -d 'Print the path to the html documentation' -complete -f -c git -n __fish_git_needs_command -l man-path -d 'Print the path to the man documentation' -complete -f -c git -n __fish_git_needs_command -l info-path -d 'Print the path to the info documentation' -complete -f -c git -n __fish_git_needs_command -s p -l paginate -d 'Pipe output into a pager' -complete -f -c git -n __fish_git_needs_command -l no-pager -d 'Do not pipe output into a pager' -complete -r -c git -n __fish_git_needs_command -l git-dir -d 'Set the path to the repository' -complete -r -c git -n __fish_git_needs_command -l work-tree -d 'Set the path to the working tree' -complete -f -c git -n __fish_git_needs_command -l namespace -d 'Set the namespace' -complete -f -c git -n __fish_git_needs_command -l bare -d 'Treat the repository as bare' -complete -f -c git -n __fish_git_needs_command -l no-replace-objects -d 'Do not use replacement refs to replace git objects' -complete -f -c git -n __fish_git_needs_command -l literal-pathspecs -d 'Treat pathspecs literally' -complete -f -c git -n __fish_git_needs_command -l glob-pathspecs -d 'Treat pathspecs as globs' -complete -f -c git -n __fish_git_needs_command -l noglob-pathspecs -d "Don't treat pathspecs as globs" -complete -f -c git -n __fish_git_needs_command -l icase-pathspecs -d 'Match pathspecs case-insensitively' - -# Options shared between multiple commands -complete -f -c git -n '__fish_git_using_command log show diff-tree rev-list' -l pretty -a '(__fish_git_show_opt pretty)' - -complete -c git -n '__fish_git_using_command diff show range-diff' -l abbrev -d 'Show only a partial prefix instead of the full 40-byte hexadecimal object name' -complete -c git -n '__fish_git_using_command diff show range-diff' -l binary -d 'Output a binary diff that can be applied with "git-apply"' -complete -c git -n '__fish_git_using_command diff show range-diff' -l check -d 'Warn if changes introduce conflict markers or whitespace errors' -complete -c git -n '__fish_git_using_command diff show range-diff' -l color -d 'Show colored diff' -complete -c git -n '__fish_git_using_command diff show range-diff' -l color-moved -d 'Moved lines of code are colored differently' -complete -c git -n '__fish_git_using_command diff show range-diff' -l color-words -d 'Equivalent to --word-diff=color plus --word-diff-regex=<regex>' -complete -c git -n '__fish_git_using_command diff show range-diff' -l compact-summary -d 'Output a condensed summary of extended header information' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l dst-prefix -d 'Show the given destination prefix instead of "b/"' -complete -c git -n '__fish_git_using_command diff show range-diff' -l ext-diff -d 'Allow an external diff helper to be executed' -complete -c git -n '__fish_git_using_command diff show range-diff' -l find-copies-harder -d 'Inspect unmodified files as candidates for the source of copy' -complete -c git -n '__fish_git_using_command diff show range-diff' -l find-object -d 'Look for differences that change the number of occurrences of the object' -complete -c git -n '__fish_git_using_command diff show range-diff' -l full-index -d 'Show the full pre- and post-image blob object names on the "index" line' -complete -c git -n '__fish_git_using_command diff show range-diff' -l histogram -d 'Generate a diff using the "histogram diff" algorithm' -complete -c git -n '__fish_git_using_command diff show range-diff' -l ignore-blank-lines -d 'Ignore changes whose lines are all blank' -complete -c git -n '__fish_git_using_command diff show range-diff' -l ignore-cr-at-eol -d 'Ignore carrige-return at the end of line when doing a comparison' -complete -c git -n '__fish_git_using_command diff show range-diff' -l ignore-space-at-eol -d 'Ignore changes in whitespace at EOL' -complete -c git -n '__fish_git_using_command diff show range-diff' -l indent-heuristic -d 'Enable the heuristic that shift diff hunk boundaries' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l inter-hunk-context -d 'Show the context between diff hunks, up to the specified number of lines' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l ita-invisible-in-index -d 'Make the entry appear as a new file in "git diff" and non-existent in "git diff -l cached"' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l line-prefix -d 'Prepend an additional prefix to every line of output' -complete -c git -n '__fish_git_using_command diff show range-diff' -l minimal -d 'Spend extra time to make sure the smallest possible diff is produced' -complete -c git -n '__fish_git_using_command diff show range-diff' -l name-only -d 'Show only names of changed files' -complete -c git -n '__fish_git_using_command diff show range-diff' -l name-status -d 'Show only names and status of changed files' -complete -c git -n '__fish_git_using_command diff show range-diff' -l no-color -d 'Turn off colored diff' -complete -c git -n '__fish_git_using_command diff show range-diff' -l no-ext-diff -d 'Disallow external diff drivers' -complete -c git -n '__fish_git_using_command diff show range-diff' -l no-indent-heuristic -d 'Disable the indent heuristic' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l no-prefix -d 'Do not show any source or destination prefix' -complete -c git -n '__fish_git_using_command diff show range-diff' -l no-renames -d 'Turn off rename detection' -complete -c git -n '__fish_git_using_command diff show range-diff' -l no-textconv -d 'Disallow external text conversion filters to be run when comparing binary files' -complete -c git -n '__fish_git_using_command diff show range-diff' -l numstat -d 'Shows number of added/deleted lines in decimal notation' -complete -c git -n '__fish_git_using_command diff show range-diff' -l patch-with-raw -d 'Synonym for -p --raw' -complete -c git -n '__fish_git_using_command diff show range-diff' -l patch-with-stat -d 'Synonym for -p --stat' -complete -c git -n '__fish_git_using_command diff show range-diff' -l patience -d 'Generate a diff using the "patience diff" algorithm' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l pickaxe-all -d 'When -S or -G finds a change, show all the changes in that changeset' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l pickaxe-regex -d 'Treat the <string> given to -S as an extended POSIX regular expression to match' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l relative -d 'Exclude changes outside the directory and show relative pathnames' -complete -c git -n '__fish_git_using_command diff show range-diff' -l shortstat -d 'Output only the last line of the --stat format containing total number of modified files' -complete -c git -n '__fish_git_using_command diff show range-diff log' -l src-prefix -d 'Show the given source prefix instead of "a/"' -complete -c git -n '__fish_git_using_command diff show range-diff' -l stat -d 'Generate a diffstat' -complete -c git -n '__fish_git_using_command diff show range-diff apply' -l stat -d 'Generate a diffstat' -complete -c git -n '__fish_git_using_command diff show range-diff' -l summary -d 'Output a condensed summary of extended header information' -complete -c git -n '__fish_git_using_command diff show range-diff' -l textconv -d 'Allow external text conversion filters to be run when comparing binary files' -complete -c git -n '__fish_git_using_command diff show range-diff' -l word-diff -d 'Show a word diff' -complete -c git -n '__fish_git_using_command diff show range-diff' -l word-diff-regex -d 'Use <regex> to decide what a word is' -complete -c git -n '__fish_git_using_command diff show range-diff log' -s a -l text -d 'Treat all files as text' -complete -c git -n '__fish_git_using_command diff show range-diff log' -s B -l break-rewrites -d 'Break complete rewrite changes into pairs of delete and create' -complete -c git -n '__fish_git_using_command diff show range-diff' -s b -l ignore-space-change -d 'Ignore changes in amount of whitespace' -complete -c git -n '__fish_git_using_command diff show range-diff log' -s C -l find-copies -d 'Detect copies as well as renames' -complete -c git -n '__fish_git_using_command diff show range-diff log' -s D -l irreversible-delete -d 'Omit the preimage for deletes' -complete -c git -n '__fish_git_using_command diff show range-diff log' -s G -d "Look for differences where <regex> matches the patch's added/removed lines" -complete -c git -n '__fish_git_using_command diff show range-diff log' -s M -l find-renames -d 'Detect and report renames' -complete -c git -n '__fish_git_using_command diff show range-diff log' -s R -d 'Swap inputs to create a reverse diff' -complete -c git -n '__fish_git_using_command diff show range-diff log' -s S -d 'Look for differences that change the number of occurrences of the string' -complete -c git -n '__fish_git_using_command diff show range-diff' -s W -l function-context -d 'Show whole surrounding functions of changes' -complete -c git -n '__fish_git_using_command diff show range-diff' -s w -l ignore-all-space -d 'Ignore whitespace when comparing lines' -complete -c git -n '__fish_git_using_command diff show range-diff' -s z -d 'Use NULs as output field/commit terminators' -complete -r -c git -n '__fish_git_using_command diff show range-diff log' -s O -d 'Control the order in which files appear in the output' -complete -f -c git -n '__fish_git_using_command diff show range-diff' -l anchored -d 'Generate a diff using the "anchored diff" algorithm' -complete -x -c git -n '__fish_git_using_command diff show range-diff log' -s l -d 'Prevents rename/copy detection when rename/copy targets exceed the given number' -complete -x -c git -n '__fish_git_using_command diff show range-diff' -l diff-filter -a '(__fish_git_diff_opt diff-filter)' -d 'Choose diff filters' -complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l diff-algorithm -a '(__fish_git_diff_opt diff-algorithm)' -d 'Choose a diff algorithm' -complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l dirstat -a '(__fish_git_diff_opt dirstat)' -d 'Output the distribution of relative amount of changes for each sub-directory' -complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l ignore-submodules -a '(__fish_git_diff_opt ignore-submodules)' -d 'Ignore changes to submodules in the diff generation' -complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l submodule -a '(__fish_git_diff_opt submodule)' -d 'Specify how differences in submodules are shown' -complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l ws-error-highlight -a '(__fish_git_diff_opt ws-error-highlight)' -d 'Highlight whitespace errors in lines of the diff' - -#### fetch -complete -f -c git -n __fish_git_needs_command -a fetch -d 'Download objects and refs from another repository' -# Suggest "repository", then "refspec" - this also applies to e.g. push/pull -complete -f -c git -n '__fish_git_using_command fetch; and not __fish_git_branch_for_remote' -a '(__fish_git_remotes)' -d Remote -complete -f -c git -n '__fish_git_using_command fetch; and __fish_git_branch_for_remote' -a '(__fish_git_branch_for_remote)' -complete -f -c git -n '__fish_git_using_command fetch' -s q -l quiet -d 'Be quiet' -complete -f -c git -n '__fish_git_using_command fetch' -s v -l verbose -d 'Be verbose' -complete -f -c git -n '__fish_git_using_command fetch' -s a -l append -d 'Append ref names and object names' -# TODO --upload-pack -complete -f -c git -n '__fish_git_using_command fetch' -s f -l force -d 'Force update of local branches' -complete -f -c git -n '__fish_git_using_command fetch' -s p -l prune -d 'Remove remote-tracking references that no longer exist on the remote' -# TODO other options - -#### filter-branch -complete -f -c git -n __fish_git_needs_command -a filter-branch -d 'Rewrite branches' -complete -f -c git -n '__fish_git_using_command filter-branch' -l env-filter -d 'This filter may be used if you only need to modify the environment' -complete -f -c git -n '__fish_git_using_command filter-branch' -l tree-filter -d 'This is the filter for rewriting the tree and its contents' -complete -f -c git -n '__fish_git_using_command filter-branch' -l index-filter -d 'This is the filter for rewriting the index' -complete -f -c git -n '__fish_git_using_command filter-branch' -l parent-filter -d 'This is the filter for rewriting the commit' -complete -f -c git -n '__fish_git_using_command filter-branch' -l msg-filter -d 'This is the filter for rewriting the commit messages' -complete -f -c git -n '__fish_git_using_command filter-branch' -l commit-filter -d 'This is the filter for performing the commit' -complete -f -c git -n '__fish_git_using_command filter-branch' -l tag-name-filter -d 'This is the filter for rewriting tag names' -complete -f -c git -n '__fish_git_using_command filter-branch' -l subdirectory-filter -d 'Only look at the history which touches the given subdirectory' -complete -f -c git -n '__fish_git_using_command filter-branch' -l prune-empty -d 'Ignore empty commits generated by filters' -complete -f -c git -n '__fish_git_using_command filter-branch' -l original -d 'Use this option to set the namespace where the original commits will be stored' -complete -r -c git -n '__fish_git_using_command filter-branch' -s d -d 'Use this option to set the path to the temporary directory used for rewriting' -complete -c git -n '__fish_git_using_command filter-branch' -s f -l force -d 'Filter even with refs in refs/original or existing temp directory' - -### remote -set -l remotecommands add rm remove show prune update rename set-head set-url set-branches get-url -complete -f -c git -n __fish_git_needs_command -a remote -d 'Manage set of tracked repositories' -complete -f -c git -n '__fish_git_using_command remote' -a '(__fish_git_remotes)' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -s v -l verbose -d 'Be verbose' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a add -d 'Adds a new remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a rm -d 'Removes a remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a remove -d 'Removes a remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a show -d 'Shows a remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a prune -d 'Deletes all stale tracking branches' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a update -d 'Fetches updates' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a rename -d 'Renames a remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a set-head -d 'Sets the default branch for a remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a set-url -d 'Changes URLs for a remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a get-url -d 'Retrieves URLs for a remote' -complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a set-branches -d 'Changes the list of branches tracked by a remote' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from add " -s f -d 'Once the remote information is set up git fetch <name> is run' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from add " -l tags -d 'Import every tag from a remote with git fetch <name>' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from add " -l no-tags -d "Don't import tags from a remote with git fetch <name>" -complete -f -c git -n '__fish_git_using_command remote; and __fish_seen_subcommand_from remove' -xa '(__fish_git_remotes)' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-branches" -l add -d 'Add to the list of currently tracked branches instead of replacing it' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-url" -l push -d 'Manipulate push URLs instead of fetch URLs' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-url" -l add -d 'Add new URL instead of changing the existing URLs' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-url" -l delete -d 'Remove URLs that match specified URL' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from get-url" -l push -d 'Query push URLs rather than fetch URLs' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from get-url" -l all -d 'All URLs for the remote will be listed' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from show" -s n -d 'Remote heads are not queried, cached information is used instead' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from prune" -l dry-run -d 'Report what will be pruned but do not actually prune it' -complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from update" -l prune -d 'Prune all remotes that are updated' - -### show -complete -f -c git -n __fish_git_needs_command -a show -d 'Shows the last commit of a branch' -complete -f -c git -n '__fish_git_using_command show; and not contains -- -- (commandline -opc)' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command show; and not contains -- -- (commandline -opc)' -ka '(__fish_git_tags)' -d Tag -complete -f -c git -n '__fish_git_using_command show; and not contains -- -- (commandline -opc)' -ka '(__fish_git_commits)' -complete -f -c git -n '__fish_git_needs_rev_files; and not contains -- -- (commandline -opc)' -xa '(__fish_git_complete_rev_files)' -complete -F -c git -n '__fish_git_using_command show; and contains -- -- (commandline -opc)' -complete -f -c git -n '__fish_git_using_command show' -l format -d 'Pretty-print the contents of the commit logs in a given format' -a '(__fish_git_show_opt format)' -complete -f -c git -n '__fish_git_using_command show' -l abbrev-commit -d 'Show only a partial hexadecimal commit object name' -complete -f -c git -n '__fish_git_using_command show' -l no-abbrev-commit -d 'Show the full 40-byte hexadecimal commit object name' -complete -f -c git -n '__fish_git_using_command show' -l oneline -d 'Shorthand for "--pretty=oneline --abbrev-commit"' -complete -f -c git -n '__fish_git_using_command show' -l encoding -d 'Re-code the commit log message in the encoding' -complete -f -c git -n '__fish_git_using_command show' -l expand-tabs -d 'Perform a tab expansion in the log message' -complete -f -c git -n '__fish_git_using_command show' -l no-expand-tabs -d 'Do not perform a tab expansion in the log message' -complete -f -c git -n '__fish_git_using_command show' -l notes -k -a '(__fish_git_refs)' -d 'Show the notes that annotate the commit' -complete -f -c git -n '__fish_git_using_command show' -l no-notes -d 'Do not show notes' -complete -f -c git -n '__fish_git_using_command show' -l show-signature -d 'Check the validity of a signed commit object' - - -### show-branch -complete -f -c git -n __fish_git_needs_command -a show-branch -d 'Shows the commits on branches' -complete -f -c git -n '__fish_git_using_command show-branch' -k -a '(__fish_git_refs)' -d Rev -# TODO options - -### add -complete -c git -n __fish_git_needs_command -a add -d 'Add file contents to the index' -complete -c git -n '__fish_git_using_command add' -s n -l dry-run -d "Don't actually add the file(s)" -complete -c git -n '__fish_git_using_command add' -s v -l verbose -d 'Be verbose' -complete -c git -n '__fish_git_using_command add' -s f -l force -d 'Allow adding otherwise ignored files' -complete -c git -n '__fish_git_using_command add' -s i -l interactive -d 'Interactive mode' -complete -c git -n '__fish_git_using_command add' -s p -l patch -d 'Interactively choose hunks to stage' -complete -c git -n '__fish_git_using_command add' -s e -l edit -d 'Manually create a patch' -complete -c git -n '__fish_git_using_command add' -s u -l update -d 'Only match tracked files' -complete -c git -n '__fish_git_using_command add' -s A -l all -d 'Match files both in working tree and index' -complete -c git -n '__fish_git_using_command add' -s N -l intent-to-add -d 'Record only the fact that the path will be added later' -complete -c git -n '__fish_git_using_command add' -l refresh -d "Don't add the file(s), but only refresh their stat" -complete -c git -n '__fish_git_using_command add' -l chmod -xa "-x\t'Track file as non-executable' +x\t'Track file as executable'" -complete -c git -n '__fish_git_using_command add' -l ignore-errors -d 'Ignore errors' -complete -c git -n '__fish_git_using_command add' -l ignore-missing -d 'Check if any of the given files would be ignored' -# Renames also show up as untracked + deleted, and to get git to show it as a rename _both_ need to be added. -# However, we can't do that as it is two tokens, so we don't need renamed here. -complete -f -c git -n '__fish_git_using_command add' -a '(__fish_git_files modified untracked deleted unmerged modified-staged-deleted)' -# TODO options - -### am -complete -c git -n __fish_git_needs_command -a am -d 'Apply a series of patches from a mailbox' -complete -f -c git -n '__fish_git_using_command am' -s s -l signoff -d 'Add a Signed-off-By trailer to commit message' -complete -f -c git -n '__fish_git_using_command am' -l keep-non-patch -d 'Only strip bracket pairs containing \'PATCH\'' -complete -f -c git -n '__fish_git_using_command am' -l no-keep-cr -d 'Override am.keepcr to false' -complete -f -c git -n '__fish_git_using_command am' -s c -l scissors -d 'Remove everything in body before scissors' -complete -f -c git -n '__fish_git_using_command am' -l no-scissors -d 'Ignore scissor lines' -complete -x -c git -n '__fish_git_using_command am' -l quoted-cr -a 'nowarn warn strip' -d 'What to do when an email ends with CRLF' -complete -f -c git -n '__fish_git_using_command am' -l no-messageid -d 'Do not add message id to commit message' -complete -f -c git -n '__fish_git_using_command am' -s q -l quiet -d 'Supress logs' -complete -f -c git -n '__fish_git_using_command am' -l no-utf8 -d 'Disable all charset re-encoding of metadata' -complete -f -c git -n '__fish_git_using_command am' -s 3 -l 3way -d 'Fall back to three way merge on patch failure' -complete -f -c git -n '__fish_git_using_command am' -l no-3way -d 'Do not fall back to three way merge on patch failure' -complete -f -c git -n '__fish_git_using_command am' -l rerere-autoupdate -d 'Allow rerere to update index if possible' -complete -f -c git -n '__fish_git_using_command am' -l ignore-space-change -d 'Pass --ignore-space-change to git apply' -complete -F -c git -n '__fish_git_using_command am' -l directory -d 'Pass --directory to git apply' -complete -F -c git -n '__fish_git_using_command am' -l exclude -d 'Pass --exclude to git apply' -complete -F -c git -n '__fish_git_using_command am' -l include -d 'Pass --include to git apply' -complete -f -c git -n '__fish_git_using_command am' -l reject -d 'Pass --reject to git apply' -complete -x -f git -n '__fish_git_using_command am' -l patch-format -a 'mbox mboxrd stgit stgit-series hg' -d 'Specify the patch format' -complete -f -c git -n '__fish_git_using_command am' -s i -l interactive -d 'Run interactively' -complete -f -c git -n '__fish_git_using_command am' -l commiter-date-is-author-date -d 'Treat commiter date as author date' -complete -f -c git -n '__fish_git_using_command am' -l ignore-date -d 'Treat author date as commiter date' -complete -f -c git -n '__fish_git_using_command am' -l skip -d 'Skip current patch' -complete -x -c git -n '__fish_git_using_command am' -s S -l gpg-sign -a '(type -q gpg && __fish_complete_gpg_key_id gpg)' -d 'Sign commits with gpg' -complete -f -c git -n '__fish_git_using_command am' -l no-gpg-sign -d 'Do not sign commits' -complete -f -c git -n '__fish_git_using_command am' -s r -l resolved -l continue -d 'Mark patch failures as resolved' -complete -x -c git -n '__fish_git_using_command am' -l resolvemsg -d 'Message to print after patch failure' -complete -f -c git -n '__fish_git_using_command am' -l abort -d 'Abort patch operation and restore branch' -complete -f -c git -n '__fish_git_using_command am' -l quit -d 'Abort without restoring branch' -complete -c git -n '__fish_git_using_command am' -l show-current-patch -a 'diff raw' -d 'Show message at which patch failures occured' - -### checkout -complete -F -c git -n '__fish_git_using_command checkout; and contains -- -- (commandline -opc)' -complete -f -c git -n __fish_git_needs_command -a checkout -d 'Checkout and switch to a branch' -complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_tags)' -d Tag -complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_heads)' -d Head -complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_branches)' -complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_unique_remote_branches)' -d 'Unique Remote Branch' -complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_local_branches)' -complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_recent_commits --all)' -complete -k -f -c git -n '__fish_git_using_command checkout' -a '(__fish_git_files modified deleted modified-staged-deleted)' -complete -f -c git -n '__fish_git_using_command checkout' -s b -d 'Create a new branch' -complete -f -c git -n '__fish_git_using_command checkout' -s t -l track -d 'Track a new branch' -complete -f -c git -n '__fish_git_using_command checkout' -l theirs -d 'Keep staged changes' -complete -f -c git -n '__fish_git_using_command checkout' -l ours -d 'Keep unmerged changes' -complete -f -c git -n '__fish_git_using_command checkout' -l recurse-submodules -d 'Update the work trees of submodules' -complete -f -c git -n '__fish_git_using_command checkout' -l no-recurse-submodules -d 'Do not update the work trees of submodules' -# TODO options - -### apply -complete -c git -n __fish_git_needs_command -a apply -d 'Apply a patch on a git index file and a working tree' -complete -f -c git -n '__fish_git_using_command apply' -l numstat -d 'Show number of additions and deletions' -complete -f -c git -n '__fish_git_using_command apply' -l summary -d 'Output a condensed summary' -complete -f -c git -n '__fish_git_using_command apply' -l check -d 'Just check if the patches can be applied' -complete -f -c git -n '__fish_git_using_command apply' -l index -d 'Apply patch to index and working tree' -complete -f -c git -n '__fish_git_using_command apply' -l cached -d 'Apply patch to index' -complete -f -c git -n '__fish_git_using_command apply' -l intent-to-add -d 'Add entry for file in index with no content' -complete -f -c git -n '__fish_git_using_command apply' -s 3 -l 3way -d 'Attempt a 3 way merge on conflicts' -complete -F -c git -n '__fish_git_using_command apply' -l build-fake-ancestor -d 'Build a temporary index containing these blobs' -complete -f -c git -n '__fish_git_using_command apply' -s R -l reverse -d 'Apply the patch in reverse' -complete -f -c git -n '__fish_git_using_command apply' -l reject -d 'Leave rejected hunks in *.rej files' -complete -f -c git -n '__fish_git_using_command apply; and __fish_contains_opt numstat' -s z -d 'Do not munge pathnames' -complete -x -c git -n '__fish_git_using_command apply am' -s p -d 'Remove n leading path components' -complete -x -c git -n '__fish_git_using_command apply am' -s C -d 'Ensure n that lines of surrounding context match' -complete -f -c git -n '__fish_git_using_command apply' -l unidiff-zero -d 'Do not break on diffs generated using --unified=0' -complete -f -c git -n '__fish_git_needs_command apply' -l apply -d 'Always apply patches' -complete -f -c git -n '__fish_git_using_command apply' -l no-add -d 'Ignore additions made by patches' -complete -f -c git -n '__fish_git_using_command apply' -l allow-binary-replacement -l binary -d 'Also patch binaries' -complete -F -c git -n '__fish_git_using_command apply' -l exclude -d 'Dont apply changes to files matching given pattern' -complete -F -c git -n '__fish_git_using_command apply' -l include -d 'Apply changes to files matching given pattern' -complete -f -c git -n '__fish_git_using_command apply am' -l ignore-space-change -l ignore-whitespace -d 'Ignore whitespace change in context lines' -complete -x -c git -n '__fish_git_using_command apply am' -l whitespace -a 'nowarn warn fix error error-all' -d 'Action to take when there are whitespace errors' -complete -f -c git -n '__fish_git_using_command apply' -l inaccurate-eof -d 'Work around some diff versions not detecting newlines at end of file' -complete -f -c git -n '__fish_git_using_command apply' -s v -l verbose -d 'Report progress to stderr' -complete -f -c git -n '__fish_git_using_command apply' -l recount -d 'Do not trust the line counts in the hunk headers' -complete -F -c git -n '__fish_git_using_command apply' -l directory -d 'Prepend given path to all filenames' -complete -f -c git -n '__fish_git_using_command apply' -l unsafe-paths -d 'Allow patches that work outside working area' - - -### archive -complete -f -c git -n __fish_git_needs_command -a archive -d 'Create an archive of files from a named tree' -# TODO options - -### bisect -complete -f -c git -n __fish_git_needs_command -a bisect -d 'Find the change that introduced a bug by binary search' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_prev_arg_in bisect' -xa " -start\t'Start a new bisect session' -bad\t'Mark a commit as bad' -new\t'Mark a commit as new' -good\t'Mark a commit as good' -old\t'Mark a commit as old' -terms\t'Show terms used for new/old states' -skip\t'Skip some commits' -reset\t'Exit a bisect session and reset HEAD' -visualize\t'See remaining commits in gitk' -replay\t'Replay a bisect log file' -log\t'Record a bisect log file' -run\t'Bisect automaically with the given command as discriminator' -help\t'Print a synopsis of all commands' -" -complete -c git -n '__fish_git_using_command bisect; and __fish_seen_argument --' -F -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l term-new -l term-bad -x -d 'Use another term instead of new/bad' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l term-old -l term-good -x -d 'Use another term instead of old/good' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l no-checkout -d 'Do not checkout tree, only update BISECT_HEAD' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l first-parent -d 'On merge commits, follow only the first parent commit' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start; and not contains -- -- (commandline -opc)' -a '(__fish_git_refs)' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from bad new good old' -a '(__fish_git_refs)' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from terms' -l --term-good -d 'Print the term for the old state' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from terms' -l --term-bad -d 'Print the term for the new state' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from skip' -a '(__fish_git_ranges)' -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from reset' -a '(__fish_git_refs)' -complete -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from replay' -F -complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from run' -xa '(__fish_complete_subcommand --fcs-skip=3)' - -### branch -complete -f -c git -n __fish_git_needs_command -a branch -d 'List, create, or delete branches' -complete -f -c git -n '__fish_git_using_command branch' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command branch' -s d -l delete -d 'Delete branch' -xa '(__fish_git_local_branches)' -complete -f -c git -n '__fish_git_using_command branch' -s D -d 'Force deletion of branch' -xa '(__fish_git_local_branches)' -complete -f -c git -n '__fish_git_using_command branch' -s f -l force -d 'Reset branch even if it already exists' -complete -f -c git -n '__fish_git_using_command branch' -s m -l move -d 'Rename branch' -complete -f -c git -n '__fish_git_using_command branch' -s M -d 'Force rename branch' -complete -f -c git -n '__fish_git_using_command branch' -s c -l copy -d 'Copy branch' -complete -f -c git -n '__fish_git_using_command branch' -s C -d 'Force copy branch' -complete -f -c git -n '__fish_git_using_command branch' -s a -l all -d 'Lists both local and remote branches' -complete -f -c git -n '__fish_git_using_command branch' -s t -l track -l track -d 'Track remote branch' -complete -f -c git -n '__fish_git_using_command branch' -l no-track -d 'Do not track remote branch' -complete -f -c git -n '__fish_git_using_command branch' -l set-upstream-to -d 'Set remote branch to track' -complete -f -c git -n '__fish_git_using_command branch' -l merged -d 'List branches that have been merged' -complete -f -c git -n '__fish_git_using_command branch' -l no-merged -d 'List branches that have not been merged' - -### cherry -complete -f -c git -n __fish_git_needs_command -a cherry -d 'Find commits yet to be applied to upstream [upstream [head]]' -complete -f -c git -n '__fish_git_using_command cherry' -s v -d 'Show the commit subjects next to the SHA1s' -complete -f -c git -n '__fish_git_using_command cherry' -k -a '(__fish_git_refs)' -d Upstream - -### cherry-pick -complete -f -c git -n __fish_git_needs_command -a cherry-pick -d 'Apply the change introduced by an existing commit' -complete -f -c git -n '__fish_git_using_command cherry-pick' -k -a '(__fish_git_ranges)' -# TODO: Filter further -complete -f -c git -n '__fish_git_using_command cherry-pick; and __fish_git_possible_commithash' -ka '(__fish_git_commits)' -complete -f -c git -n '__fish_git_using_command cherry-pick' -s e -l edit -d 'Edit the commit message prior to committing' -complete -f -c git -n '__fish_git_using_command cherry-pick' -s x -d 'Append info in generated commit on the origin of the cherry-picked change' -complete -f -c git -n '__fish_git_using_command cherry-pick' -s n -l no-commit -d 'Apply changes without making any commit' -complete -f -c git -n '__fish_git_using_command cherry-pick' -s s -l signoff -d 'Add Signed-off-by line to the commit message' -complete -f -c git -n '__fish_git_using_command cherry-pick' -l ff -d 'Fast-forward if possible' -complete -f -c git -n '__fish_git_using_command cherry-pick' -l continue -d 'Continue the operation in progress' -complete -f -c git -n '__fish_git_using_command cherry-pick' -l abort -d 'Cancel the operation' -complete -f -c git -n '__fish_git_using_command cherry-pick' -l skip -d 'Skip the current commit and continue with the rest of the sequence' - -### clone -complete -f -c git -n __fish_git_needs_command -a clone -d 'Clone a repository into a new directory' -complete -f -c git -n '__fish_git_using_command clone' -l no-hardlinks -d 'Copy files instead of using hardlinks' -complete -f -c git -n '__fish_git_using_command clone' -s q -l quiet -d 'Operate quietly and do not report progress' -complete -f -c git -n '__fish_git_using_command clone' -s v -l verbose -d 'Provide more information on what is going on' -complete -f -c git -n '__fish_git_using_command clone' -s n -l no-checkout -d 'No checkout of HEAD is performed after the clone is complete' -complete -f -c git -n '__fish_git_using_command clone' -l bare -d 'Make a bare Git repository' -complete -f -c git -n '__fish_git_using_command clone' -l mirror -d 'Set up a mirror of the source repository' -complete -f -c git -n '__fish_git_using_command clone' -s o -l origin -d 'Use a specific name of the remote instead of the default' -complete -f -c git -n '__fish_git_using_command clone' -s b -l branch -d 'Use a specific branch instead of the one used by the cloned repository' -complete -f -c git -n '__fish_git_using_command clone' -l depth -d 'Truncate the history to a specified number of revisions' -complete -f -c git -n '__fish_git_using_command clone' -l recursive -d 'Initialize all submodules within the cloned repository' - -### commit -complete -c git -n __fish_git_needs_command -a commit -d 'Record changes to the repository' -complete -c git -n '__fish_git_using_command commit' -l amend -d 'Amend the log message of the last commit' -complete -f -c git -n '__fish_git_using_command commit' -a '(__fish_git_files modified deleted modified-staged-deleted untracked)' -complete -c git -n '__fish_git_using_command commit' -s a -l all -d 'Automatically stage modified and deleted files' -complete -c git -n '__fish_git_using_command commit' -s p -l patch -d 'Use interactive patch selection interface' -complete -f -c git -n '__fish_git_using_command commit' -l fixup -d 'Fixup commit to be used with rebase --autosquash' -complete -f -c git -n '__fish_git_using_command commit' -l squash -d 'Squash commit to be used with rebase --autosquash' -complete -c git -n '__fish_git_using_command commit' -l reset-author -d 'When amending, reset author of commit to the committer' -complete -x -c git -n '__fish_git_using_command commit' -l author -d 'Override the commit author' -complete -x -c git -n '__fish_git_using_command commit' -l cleanup -a "strip\t'Leading/trailing whitespace/empty lines, #commentary' - whitespace\t'Like strip but keep #commentary' - verbatim\t'Do not change the message' - scissors\t'Like whitespace but also remove after scissor lines' - default\t'Like strip if the message is to be edited, whitespace otherwise'" -d 'How to clean up the commit message' -complete -x -c git -n '__fish_git_using_command commit' -l date -d 'Override the author date' -complete -x -c git -n '__fish_git_using_command commit' -s m -l message -d 'Use the given message as the commit message' -complete -f -c git -n '__fish_git_using_command commit' -l no-edit -d 'Use the selected commit message without launching an editor' -complete -f -c git -n '__fish_git_using_command commit' -l no-gpg-sign -d 'Do not sign commit' -complete -f -c git -n '__fish_git_using_command commit' -s n -l no-verify -d 'Do not run pre-commit and commit-msg hooks' -complete -f -c git -n '__fish_git_using_command commit; and __fish_contains_opt fixup squash' -k -a '(__fish_git_recent_commits)' -complete -f -c git -n '__fish_git_using_command commit' -l allow-empty -d 'Create a commit with no changes' -complete -f -c git -n '__fish_git_using_command commit' -l allow-empty-message -d 'Create a commit with no commit message' -# TODO options - -### count-objects -complete -f -c git -n __fish_git_needs_command -a count-objects -d 'Count unpacked number of objects and their disk consumption' -complete -f -c git -n '__fish_git_using_command count-objects' -s v -l verbose -d 'Be verbose' -complete -f -c git -n '__fish_git_using_command count-objects' -s H -l human-readable -d 'Print in human readable format' - -### daemon -complete -c git -n __fish_git_needs_command -a daemon -d 'A really simple server for git repositories' -complete -f -c git -n '__fish_git_using_command daemon' -l strict-paths -d 'Match paths exactly' -complete -F -c git -n '__fish_git_using_command daemon' -l base-path -d 'Git Root' -complete -f -c git -n '__fish_git_using_command daemon' -l base-path-relaxed -d 'When looking up with base path fails, try without it' -complete -F -c git -n '__fish_git_using_command daemon' -l interpolated-path -d 'Construct a path from the given template' -complete -f -c git -n '__fish_git_using_command daemon' -l export-all -d 'Allow pulling from all directories' -complete -f -c git -n '__fish_git_using_command daemon' -l inetd -d 'Run as inetd service' -complete -x -c git -n '__fish_git_using_command daemon' -l listen -d 'Listen on this IP' -complete -x -c git -n '__fish_git_using_command daemon' -l port -d 'Listen on this port' -complete -x -c git -n '__fish_git_using_command daemon' -l init-timeout -d 'Connection timeout' -complete -x -c git -n '__fish_git_using_command daemon' -l timeout -d 'Timeout for each request' -complete -x -c git -n '__fish_git_using_command daemon' -l max-connections -d 'Maximum parallel clients' -complete -f -c git -n '__fish_git_using_command daemon' -l syslog -d '--log-destination=syslog' -complete -x -c git -n '__fish_git_using_command daemon' -l log-destination -a 'stderr syslog none' -d 'Log destination' -complete -x -c git -n '__fish_git_using_command daemon' -l user-path -d 'Allow ~user notation to be used' -complete -f -c git -n '__fish_git_using_command daemon' -l verbose -d 'Log all details' -complete -f -c git -n '__fish_git_using_command daemon' -l reuseaddr -d 'Reuse address when binding to listening server' -complete -f -c git -n '__fish_git_using_command daemon' -l detach -d 'Detach from shell' -complete -x -c git -n '__fish_git_using_command daemon' -l reuseaddr -d 'Save the process id in file' -complete -x -c git -n '__fish_git_using_command daemon' -l user -d 'Change daemon\'s uid' -complete -x -c git -n '__fish_git_using_command daemon' -l group -d 'Change daemon\'s gid' -complete -x -c git -n '__fish_git_using_command daemon' -l enable -a 'upload-pack upload-archive receive-pack' -d 'Enable service' -complete -x -c git -n '__fish_git_using_command daemon' -l disable -a 'upload-pack upload-archive receive-pack' -d 'Disable service' -complete -x -c git -n '__fish_git_using_command daemon' -l allow-override -a 'upload-pack upload-archive receive-pack' -d 'Allow overriding site-wide default per repository configuration' -complete -x -c git -n '__fish_git_using_command daemon' -l forbid-override -a 'upload-pack upload-archive receive-pack' -d 'Forbid overriding site-wide default per repository configuration' -complete -f -c git -n '__fish_git_using_command daemon' -l informative-errors -d 'Report more verbose errors to clients' -complete -f -c git -n '__fish_git_using_command daemon' -l no-informative-errors -d 'Report less verbose errors to clients' -complete -x -c git -n '__fish_git_using_command daemon' -l access-hook -d 'Hook to run whenever a client connects' - -### describe -complete -c git -n __fish_git_needs_command -a describe -d 'Give an object a human readable name based on an available ref' -complete -k -f -c git -n '__fish_git_using_command describe' -a '(__fish_git_tags)' -d Tag -complete -k -f -c git -n '__fish_git_using_command describe' -a '(__fish_git_branches)' -complete -k -f -c git -n '__fish_git_using_command describe' -a '(__fish_git_heads)' -d Head -complete -f -c git -n '__fish_git_using_command describe' -l dirty -d 'Describe the state of the working tree, append dirty if there are local changes' -complete -f -c git -n '__fish_git_using_command describe' -l broken -d 'Describe the state of the working tree, append -broken instead of erroring' -complete -f -c git -n '__fish_git_using_command describe' -l all -d 'Use all tags, not just annotated' -complete -f -c git -n '__fish_git_using_command describe' -l tags -d 'Use all commits/tags, not just annotated tags' -complete -f -c git -n '__fish_git_using_command describe' -l contains -d 'Find the tag that comes after the commit' -complete -f -c git -n '__fish_git_using_command describe' -l abbrev -d 'Use <n> digits, or as many digits as needed to form a unique object name' -complete -f -c git -n '__fish_git_using_command describe' -l candidates -d 'Consider up to <n> candidates' -complete -f -c git -n '__fish_git_using_command describe' -l exact-match -d 'Only output exact matches' -complete -f -c git -n '__fish_git_using_command describe' -l debug -d 'Display debug info' -complete -f -c git -n '__fish_git_using_command describe' -l long -d 'Always output the long format' -complete -f -c git -n '__fish_git_using_command describe' -l match -d 'Only consider tags matching the given glob pattern' -complete -f -c git -n '__fish_git_using_command describe' -l exclude -d 'Do not consider tags matching the given glob pattern' -complete -f -c git -n '__fish_git_using_command describe' -l always -d 'Show uniquely abbreviated commit object as fallback' -complete -f -c git -n '__fish_git_using_command describe' -l first-parent -d 'Follow only the first parent of a merge commit' - -### diff -complete -c git -n __fish_git_needs_command -a diff -d 'Show changes between commits, commit and working tree, etc' -complete -c git -n '__fish_git_using_command diff; and not contains -- -- (commandline -opc)' -k -a '(__fish_git_ranges)' -complete -c git -n '__fish_git_using_command diff' -l cached -d 'Show diff of changes in the index' -complete -c git -n '__fish_git_using_command diff' -l staged -d 'Show diff of changes in the index' -complete -c git -n '__fish_git_using_command diff' -l no-index -d 'Compare two paths on the filesystem' -complete -c git -n '__fish_git_using_command diff' -l exit-code -d 'Exit with 1 if there were differences or 0 if no differences' -complete -c git -n '__fish_git_using_command diff' -l quiet -d 'Disable all output of the program, implies --exit-code' -complete -c git -n '__fish_git_using_command diff' -s 1 -l base -d 'Compare the working tree with the "base" version' -complete -c git -n '__fish_git_using_command diff' -s 2 -l ours -d 'Compare the working tree with the "our branch"' -complete -c git -n '__fish_git_using_command diff' -s 3 -l theirs -d 'Compare the working tree with the "their branch"' -complete -c git -n '__fish_git_using_command diff' -s 0 -d 'Omit diff output for unmerged entries and just show "Unmerged"' -complete -c git -n '__fish_git_using_command diff; and not __fish_contains_opt cached staged' -a '( - set -l kinds modified - contains -- -- (commandline -opc) && set -a kinds deleted modified-staged-deleted - __fish_git_files $kinds -)' -complete -c git -n '__fish_git_using_command diff; and __fish_contains_opt cached staged' -fa '(__fish_git_files all-staged)' - -### Function to list available tools for git difftool and mergetool - -function __fish_git_diffmerge_tools -a cmd - git $cmd --tool-help | while read -l line - string match -q 'The following tools are valid, but not currently available:' -- $line - and break - string replace -f -r '^\t\t(\w+).*$' '$1' -- $line - end -end - -### difftool -complete -c git -n __fish_git_needs_command -a difftool -d 'Open diffs in a visual tool' -complete -c git -n '__fish_git_using_command difftool; and not contains -- -- (commandline -opc)' -k -a '(__fish_git_ranges)' -complete -c git -n '__fish_git_using_command difftool' -l cached -d 'Visually show diff of changes in the index' -complete -f -c git -n '__fish_git_using_command difftool' -a '( - set -l kinds modified - contains -- -- (commandline -opc) && set -a kinds deleted modified-staged-deleted - __fish_git_files $kinds -)' -complete -f -c git -n '__fish_git_using_command difftool' -s g -l gui -d 'Use `diff.guitool` instead of `diff.tool`' -complete -f -c git -n '__fish_git_using_command difftool' -s d -l dir-diff -d 'Perform a full-directory diff' -complete -c git -n '__fish_git_using_command difftool' -l prompt -d 'Prompt before each invocation of the diff tool' -complete -f -c git -n '__fish_git_using_command difftool' -s y -l no-prompt -d 'Do not prompt before launching a diff tool' -complete -f -c git -n '__fish_git_using_command difftool' -l symlinks -d 'Use symlinks in dir-diff mode' -complete -f -c git -n '__fish_git_using_command difftool' -s t -l tool -d 'Use the specified diff tool' -a "(__fish_git_diffmerge_tools difftool)" -complete -f -c git -n '__fish_git_using_command difftool' -l tool-help -d 'Print a list of diff tools that may be used with `--tool`' -complete -f -c git -n '__fish_git_using_command difftool' -l trust-exit-code -d 'Exit when an invoked diff tool returns a non-zero exit code' -complete -f -c git -n '__fish_git_using_command difftool' -s x -l extcmd -d 'Specify a custom command for viewing diffs' -# TODO options - -### gc -complete -f -c git -n __fish_git_needs_command -a gc -d 'Cleanup unnecessary files and optimize the local repository' -complete -f -c git -n '__fish_git_using_command gc' -l aggressive -d 'Aggressively optimize the repository' -complete -f -c git -n '__fish_git_using_command gc' -l auto -d 'Checks any housekeeping is required and then run' -complete -f -c git -n '__fish_git_using_command gc' -l prune -d 'Prune loose objects older than date' -complete -f -c git -n '__fish_git_using_command gc' -l no-prune -d 'Do not prune any loose objects' -complete -f -c git -n '__fish_git_using_command gc' -l quiet -d 'Be quiet' -complete -f -c git -n '__fish_git_using_command gc' -l force -d 'Force `git gc` to run' -complete -f -c git -n '__fish_git_using_command gc' -l keep-largest-pack -d 'Ignore `gc.bigPackThreshold`' - -### grep -complete -c git -n __fish_git_needs_command -a grep -d 'Print lines matching a pattern' -# TODO options - -### init -complete -f -c git -n __fish_git_needs_command -a init -d 'Create an empty git repository or reinitialize an existing one' -# TODO options - -### log -complete -c git -n __fish_git_needs_command -a shortlog -d 'Show commit shortlog' -complete -c git -n __fish_git_needs_command -a log -d 'Show commit logs' -complete -c git -n '__fish_git_using_command log; and not contains -- -- (commandline -opc)' -k -a '(__fish_git_ranges)' - -complete -c git -n '__fish_git_using_command log' -l follow -d 'Continue listing file history beyond renames' -complete -c git -n '__fish_git_using_command log' -l no-decorate -d 'Don\'t print ref names' -complete -f -c git -n '__fish_git_using_command log' -l decorate -a 'short\tHide\ prefixes full\tShow\ full\ ref\ names auto\tHide\ prefixes\ if\ printed\ to\ terminal no\tDon\\\'t\ display\ ref' -d 'Print out ref names' -complete -c git -n '__fish_git_using_command log' -l source -d 'Print ref name by which each commit was reached' -complete -c git -n '__fish_git_using_command log' -l use-mailmap -complete -c git -n '__fish_git_using_command log' -l full-diff -complete -c git -n '__fish_git_using_command log' -l log-size -complete -x -c git -n '__fish_git_using_command log' -s L -complete -x -c git -n '__fish_git_using_command log' -s n -l max-count -d 'Limit the number of commits before starting to show the commit output' -complete -x -c git -n '__fish_git_using_command log' -l skip -d 'Skip given number of commits' -complete -x -c git -n '__fish_git_using_command log' -l since -d 'Show commits more recent than specified date' -complete -x -c git -n '__fish_git_using_command log' -l after -d 'Show commits more recent than specified date' -complete -x -c git -n '__fish_git_using_command log' -l until -d 'Show commits older than specified date' -complete -x -c git -n '__fish_git_using_command log' -l before -d 'Show commits older than specified date' -complete -x -c git -n '__fish_git_using_command log' -l author -d 'Limit commits from given author' -complete -x -c git -n '__fish_git_using_command log' -l committer -d 'Limit commits from given committer' -complete -x -c git -n '__fish_git_using_command log' -l grep-reflog -d 'Limit commits to ones with reflog entries matching given pattern' -complete -x -c git -n '__fish_git_using_command log' -l grep -d 'Limit commits with message that match given pattern' -complete -c git -n '__fish_git_using_command log' -l all-match -d 'Limit commits to ones that match all given --grep' -complete -c git -n '__fish_git_using_command log' -l invert-grep -d 'Limit commits to ones with message that don\'t match --grep' -complete -c git -n '__fish_git_using_command log' -l regexp-ignore-case -s i -d 'Case insensitive match' -complete -c git -n '__fish_git_using_command log' -l basic-regexp -d 'Patterns are basic regular expressions (default)' -complete -c git -n '__fish_git_using_command log' -l extended-regexp -s E -d 'Patterns are extended regular expressions' -complete -c git -n '__fish_git_using_command log' -l fixed-strings -s F -d 'Patterns are fixed strings' -complete -c git -n '__fish_git_using_command log' -l perl-regexp -d 'Patterns are Perl-compatible regular expressions' -complete -c git -n '__fish_git_using_command log' -l remove-empty -d 'Stop when given path disappears from tree' -complete -c git -n '__fish_git_using_command log' -l merges -d 'Print only merge commits' -complete -c git -n '__fish_git_using_command log' -l no-merges -d 'Don\'t print commits with more than one parent' -complete -x -c git -n '__fish_git_using_command log' -l min-parents -d 'Show only commit with at least the given number of parents' -complete -x -c git -n '__fish_git_using_command log' -l max-parents -d 'Show only commit with at most the given number of parents' -complete -c git -n '__fish_git_using_command log' -l no-min-parents -d 'Show only commit without a minimum number of parents' -complete -c git -n '__fish_git_using_command log' -l no-max-parents -d 'Show only commit without a maximum number of parents' -complete -c git -n '__fish_git_using_command log' -l first-parent -d 'Follow only the first parent commit upon seeing a merge commit' -complete -c git -n '__fish_git_using_command log' -l not -d 'Reverse meaning of ^ prefix' -complete -c git -n '__fish_git_using_command log' -l all -d 'Show log for all branches, tags, and remotes' -complete -f -c git -n '__fish_git_using_command log' -l branches -d 'Show log for all matching branches' -complete -f -c git -n '__fish_git_using_command log' -l tags -d 'Show log for all matching tags' -complete -f -c git -n '__fish_git_using_command log' -l remotes -d 'Show log for all matching remotes' -complete -x -c git -n '__fish_git_using_command log' -l glob -d 'Show log for all matching branches, tags, and remotes' -complete -x -c git -n '__fish_git_using_command log' -l exclude -d 'Do not include refs matching given glob pattern' -complete -c git -n '__fish_git_using_command log' -l reflog -d 'Show log for all reflogs entries' -complete -c git -n '__fish_git_using_command log' -l ingnore-missing -d 'Ignore invalid object names' -complete -c git -n '__fish_git_using_command log' -l bisect -complete -c git -n '__fish_git_using_command log' -l stdin -d 'Read commits from stdin' -complete -c git -n '__fish_git_using_command log' -l cherry-mark -d 'Mark equivalent commits with = and inequivalent with +' -complete -c git -n '__fish_git_using_command log' -l cherry-pick -d 'Omit equivalent commits' -complete -c git -n '__fish_git_using_command log' -l left-only -complete -c git -n '__fish_git_using_command log' -l rigth-only -complete -c git -n '__fish_git_using_command log' -l cherry -complete -c git -n '__fish_git_using_command log' -l walk-reflogs -s g -complete -c git -n '__fish_git_using_command log' -l merge -complete -c git -n '__fish_git_using_command log' -l boundary -complete -c git -n '__fish_git_using_command log' -l simplify-by-decoration -complete -c git -n '__fish_git_using_command log' -l full-history -complete -c git -n '__fish_git_using_command log' -l dense -complete -c git -n '__fish_git_using_command log' -l sparse -complete -c git -n '__fish_git_using_command log' -l simplify-merges -complete -c git -n '__fish_git_using_command log' -l ancestry-path -complete -c git -n '__fish_git_using_command log' -l date-order -complete -c git -n '__fish_git_using_command log' -l author-date-order -complete -c git -n '__fish_git_using_command log' -l topo-order -complete -c git -n '__fish_git_using_command log' -l reverse -complete -f -c git -n '__fish_git_using_command log' -l no-walk -a "sorted unsorted" -complete -c git -n '__fish_git_using_command log' -l do-walk -complete -c git -n '__fish_git_using_command log' -l format -complete -c git -n '__fish_git_using_command log' -l abbrev-commit -complete -c git -n '__fish_git_using_command log' -l no-abbrev-commit -complete -c git -n '__fish_git_using_command log' -l oneline -complete -x -c git -n '__fish_git_using_command log' -l encoding -a '(__fish_print_encodings)' -complete -f -c git -n '__fish_git_using_command log' -l expand-tabs -complete -c git -n '__fish_git_using_command log' -l no-expand-tabs -complete -f -c git -n '__fish_git_using_command log' -l notes -complete -c git -n '__fish_git_using_command log' -l no-notes -complete -f -c git -n '__fish_git_using_command log' -l show-notes -complete -c git -n '__fish_git_using_command log' -l standard-notes -complete -c git -n '__fish_git_using_command log' -l no-standard-notes -complete -c git -n '__fish_git_using_command log' -l show-signature -complete -c git -n '__fish_git_using_command log' -l relative-date -complete -x -c git -n '__fish_git_using_command log' -l date -a ' - relative - local - iso - iso-local - iso8601 - iso8601-local - iso-strict - iso-strict-local - iso8601-strict - iso8601-strict-local - rfc-local - rfc2822-local - short - short-local - raw - human - unix - format: - default - default-local -' -complete -c git -n '__fish_git_using_command log' -l parents -complete -c git -n '__fish_git_using_command log' -l children -complete -c git -n '__fish_git_using_command log' -l left-right -complete -c git -n '__fish_git_using_command log' -l graph -complete -f -c git -n '__fish_git_using_command log' -l show-linear-break -complete -c git -n '__fish_git_using_command log' -s c -complete -c git -n '__fish_git_using_command log' -l cc -complete -c git -n '__fish_git_using_command log' -s m -complete -c git -n '__fish_git_using_command log' -s r -complete -c git -n '__fish_git_using_command log' -s t -complete -c git -n '__fish_git_using_command log' -l patch -s p -complete -c git -n '__fish_git_using_command log' -s u -complete -c git -n '__fish_git_using_command log' -l no-patch -s s -complete -x -c git -n '__fish_git_using_command log' -l unified -s U -complete -c git -n '__fish_git_using_command log' -l raw -complete -c git -n '__fish_git_using_command log' -l patch-with-raw -complete -c git -n '__fish_git_using_command log' -l indent-heuristic -complete -c git -n '__fish_git_using_command log' -l no-indent-heuristic -complete -c git -n '__fish_git_using_command log' -l compaction-heuristic -complete -c git -n '__fish_git_using_command log' -l no-compaction-heuristic -complete -c git -n '__fish_git_using_command log' -l minimal -complete -c git -n '__fish_git_using_command log' -l patience -complete -c git -n '__fish_git_using_command log' -l histogram -complete -f -x -c git -n '__fish_git_using_command log' -l stat -complete -c git -n '__fish_git_using_command log' -l numstat -complete -c git -n '__fish_git_using_command log' -l shortstat -complete -c git -n '__fish_git_using_command log' -l summary -complete -c git -n '__fish_git_using_command log' -l patch-with-stat -complete -c git -n '__fish_git_using_command log' -s z -complete -c git -n '__fish_git_using_command log' -l name-only -complete -c git -n '__fish_git_using_command log' -l name-status -complete -f -c git -n '__fish_git_using_command log' -l color -a 'always never auto' -complete -c git -n '__fish_git_using_command log' -l no-color -complete -f -c git -n '__fish_git_using_command log' -l word-diff -a ' - color - plain - porcelain - none -' -complete -f -c git -n '__fish_git_using_command log' -l color-words -complete -c git -n '__fish_git_using_command log' -l no-renames -complete -c git -n '__fish_git_using_command log' -l check -complete -c git -n '__fish_git_using_command log' -l full-index -complete -c git -n '__fish_git_using_command log' -l binary -complete -f -c git -n '__fish_git_using_command log' -l abbrev -complete -f -c git -n '__fish_git_using_command log' -s l - -function __fish__git_append_letters_nosep - set -l token (commandline -tc) - printf "%s\n" $token$argv -end - -complete -x -c git -n '__fish_git_using_command log' -l diff-filter -a '(__fish__git_append_letters_nosep a\tExclude\ added c\tExclude\ copied d\tExclude\ deleted m\tExclude\ modified r\tExclude\ renamed t\tExclude\ type\ changed u\tExclude\ unmerged x\tExclude\ unknown b\tExclude\ broken A\tAdded C\tCopied D\tDeleted M\tModified R\tRenamed T\tType\ Changed U\tUnmerged X\tUnknown B\tBroken)' - -### ls-files -complete -c git -n __fish_git_needs_command -a ls-files -d 'Show information about files in the index and the working tree' -complete -c git -n '__fish_git_using_command ls-files' -complete -c git -n '__fish_git_using_command ls-files' -s c -l cached -d 'Show cached files in the output' -complete -c git -n '__fish_git_using_command ls-files' -s d -l deleted -d 'Show deleted files in the output' -complete -c git -n '__fish_git_using_command ls-files' -s m -l modified -d 'Show modified files in the output' -complete -c git -n '__fish_git_using_command ls-files' -s o -l others -d 'Show other (i.e. untracked) files in the output' -complete -c git -n '__fish_git_using_command ls-files' -s i -l ignored -d 'Show only ignored files in the output' -complete -c git -n '__fish_git_using_command ls-files' -s s -l staged -d "Show staged contents' mode bits, object name and stage number in the output" -complete -c git -n '__fish_git_using_command ls-files' -l directory -d 'If a whole directory is classified as "other", show just its name' -complete -c git -n '__fish_git_using_command ls-files' -l no-empty-directory -d 'Do not list empty directories' -complete -c git -n '__fish_git_using_command ls-files' -s u -l unmerged -d 'Show unmerged files in the output' -complete -c git -n '__fish_git_using_command ls-files' -s k -l killed -d 'Show files on the filesystem that need to be removed for checkout-index to succeed' -complete -c git -n '__fish_git_using_command ls-files' -s z -d 'Use \0 delimiter' -complete -c git -n '__fish_git_using_command ls-files' -s x -l exclude -d 'Skip untracked files matching pattern' -complete -c git -n '__fish_git_using_command ls-files' -s X -l exclude-from -d 'Read exclude patterns from <file>; 1 per line' -complete -c git -n '__fish_git_using_command ls-files' -l exclude-per-directory -d 'Read extra exclude patterns that apply only to the dir and its subdirs in <file>' -complete -c git -n '__fish_git_using_command ls-files' -l exclude-standard -d 'Add the standard Git exclusions' -complete -c git -n '__fish_git_using_command ls-files' -l error-unmatch -d 'If any <file> does not appear in the index, treat this as an error' -complete -c git -n '__fish_git_using_command ls-files' -l with-tree -complete -c git -n '__fish_git_using_command ls-files' -s t -d 'Identifies the file status' -complete -c git -n '__fish_git_using_command ls-files' -s v -d 'Show file status, use lowercase letters for files assumed unchanged' -complete -c git -n '__fish_git_using_command ls-files' -s f -d 'Show file status, use lowercase letters for files marked as fsmonitor valid' -complete -c git -n '__fish_git_using_command ls-files' -l full-name -d 'Force paths to be output relative to the project top directory' -complete -c git -n '__fish_git_using_command ls-files' -l recurse-submodules -d 'Recursively calls ls-files on each submodule in the repository' -complete -c git -n '__fish_git_using_command ls-files' -l abbrev -d 'Show only a partial prefix' -complete -c git -n '__fish_git_using_command ls-files' -l debug -d 'After each line that describes a file, add more data about its cache entry' -complete -c git -n '__fish_git_using_command ls-files' -l eol -d 'Show <eolinfo> and <eolattr> of files' - -### mailinfo -complete -f -c git -n __fish_git_needs_command -a mailinfo -d 'Extracts patch and authorship from a single e-mail message' -complete -f -c git -n '__fish_git_using_command mailinfo am' -s k -d 'Do not remove email cruft from subject' -complete -f -c git -n '__fish_git_using_command mailinfo' -s b -d 'Only strip bracket pairs containing \'PATCH\'' -complete -f -c git -n '__fish_git_using_command mailinfo am' -s u -d 'Do not reencode author name and email' -complete -x -c git -n '__fish_git_using_command mailinfo' -l encoding -d 'Re-encode to given charset' -complete -f -c git -n '__fish_git_using_command mailinfo' -s n -d 'Disable all charset re-encoding of metadata' -complete -f -c git -n '__fish_git_using_command mailinfo am' -s m -l message-id -d 'Copy message id to the end of commit message' -complete -f -c git -n '__fish_git_using_command mailinfo' -l scissors -d 'Remove everything above scissor line' -complete -f -c git -n '__fish_git_using_command mailinfo' -l no-scissors -d 'Ignore scissor lines' -complete -x -c git -n '__fish_git_using_command mailinfo' -l quoted-cr -a 'nowarn warn strip' -d 'Action when processed email message end with CRLF instead of LF' - -### mailsplit -complete -c git -n __fish_git_needs_command -a mailsplit -d 'Simple UNIX mbox splitter program' -complete -F -c git -n '__fish_git_using_command mailsplit' -s o -d 'Directory to place individual messages' -complete -f -c git -n '__fish_git_using_command mailsplit' -s b -d 'Treat files not starting with From line as single mail message' -complete -x -c git -n '__fish_git_using_command mailsplit' -s d -d 'File name prefix digit precision' -complete -x -c git -n '__fish_git_using_command mailsplit' -s f -d 'Skip first n numbers' -complete -f -c git -n '__fish_git_using_command mailsplit am' -l keep-cr -d 'Do not remove \\r from lines starting with \\n\\r' -complete -f -c git -n '__fish_git_using_command mailsplit' -l mboxrd -d 'Input is of mboxrd form' - -### maintenance -complete -f -c git -n __fish_git_needs_command -a maintenance -d 'Run tasks to optimize Git repository data' -complete -f -c git -n '__fish_git_using_command maintenance' -a register -d 'Initialize Git config vars for maintenance' -complete -f -c git -n '__fish_git_using_command maintenance' -a run -d 'Run one or more maintenance tasks' -complete -f -c git -n '__fish_git_using_command maintenance' -a start -d 'Start maintenance' -complete -f -c git -n '__fish_git_using_command maintenance' -a stop -d 'Halt background maintenance' -complete -f -c git -n '__fish_git_using_command maintenance' -a unregister -d 'Remove repository from background maintenance' -complete -f -c git -n '__fish_git_using_command maintenance' -l quiet -d 'Supress logs' -complete -x -c git -n '__fish_git_using_command maintenance' -l task -a 'commit-graph prefetch gc loose-objects incremental-repack pack-refs' -d 'Tasks to run' -complete -f -c git -n '__fish_git_using_command maintenance' -l auto -d 'Run maintenance only when necessary' -complete -f -c git -n '__fish_git_using_command maintenance' -l schedule -d 'Run maintenance on certain intervals' - -### merge -complete -f -c git -n __fish_git_needs_command -a merge -d 'Join two or more development histories together' -complete -f -c git -n '__fish_git_using_command merge' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command merge' -l commit -d "Autocommit the merge" -complete -f -c git -n '__fish_git_using_command merge' -l no-commit -d "Don't autocommit the merge" -complete -f -c git -n '__fish_git_using_command merge' -s e -l edit -d 'Edit auto-generated merge message' -complete -f -c git -n '__fish_git_using_command merge' -l no-edit -d "Don't edit auto-generated merge message" -complete -f -c git -n '__fish_git_using_command merge' -l ff -d "Don't generate a merge commit if merge is fast-forward" -complete -f -c git -n '__fish_git_using_command merge' -l no-ff -d "Generate a merge commit even if merge is fast-forward" -complete -f -c git -n '__fish_git_using_command merge' -l ff-only -d 'Refuse to merge unless fast-forward possible' -complete -f -c git -n '__fish_git_using_command merge' -s S -l gpg-sign -d 'GPG-sign the merge commit' -complete -f -c git -n '__fish_git_using_command merge' -l log -d 'Populate the log message with one-line descriptions' -complete -f -c git -n '__fish_git_using_command merge' -l no-log -d "Don't populate the log message with one-line descriptions" -complete -f -c git -n '__fish_git_using_command merge' -l signoff -d 'Add Signed-off-by line at the end of the merge commit message' -complete -f -c git -n '__fish_git_using_command merge' -l no-signoff -d 'Do not add a Signed-off-by line at the end of the merge commit message' -complete -f -c git -n '__fish_git_using_command merge' -l stat -d "Show diffstat of the merge" -complete -f -c git -n '__fish_git_using_command merge' -s n -l no-stat -d "Don't show diffstat of the merge" -complete -f -c git -n '__fish_git_using_command merge' -l squash -d "Squash changes from other branch as a single commit" -complete -f -c git -n '__fish_git_using_command merge' -l no-squash -d "Don't squash changes" -complete -x -c git -n '__fish_git_using_command merge' -s s -l strategy -d 'Use the given merge strategy' -complete -r -c git -n '__fish_git_using_command merge' -s X -l strategy-option -d 'Pass given option to the merge strategy' -complete -f -c git -n '__fish_git_using_command merge' -l verify-signatures -d 'Abort merge if other branch tip commit is not signed with a valid key' -complete -f -c git -n '__fish_git_using_command merge' -l no-verify-signatures -d 'Do not abort merge if other branch tip commit is not signed with a valid key' -complete -f -c git -n '__fish_git_using_command merge' -s q -l quiet -d 'Be quiet' -complete -f -c git -n '__fish_git_using_command merge' -s v -l verbose -d 'Be verbose' -complete -f -c git -n '__fish_git_using_command merge' -l progress -d 'Force progress status' -complete -f -c git -n '__fish_git_using_command merge' -l no-progress -d 'Force no progress status' -complete -f -c git -n '__fish_git_using_command merge' -l allow-unrelated-histories -d 'Allow merging even when branches do not share a common history' -complete -x -c git -n '__fish_git_using_command merge' -s m -d 'Set the commit message' -complete -f -c git -n '__fish_git_using_command merge' -s rerere-autoupdate -d 'If possible, use previous conflict resolutions' -complete -f -c git -n '__fish_git_using_command merge' -s no-rerere-autoupdate -d 'Do not use previous conflict resolutions' -complete -f -c git -n '__fish_git_using_command merge' -l abort -d 'Abort the current conflict resolution process' -complete -f -c git -n '__fish_git_using_command merge' -l continue -d 'Conclude current conflict resolution process' - -### merge-base -complete -f -c git -n __fish_git_needs_command -a merge-base -d 'Find as good common ancestors as possible for a merge' -complete -f -c git -n '__fish_git_using_command merge-base' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command merge-base' -s a -l all -d 'Output all merge bases for the commits, instead of just one' -complete -f -c git -n '__fish_git_using_command merge-base' -l octopus -d 'Compute the best common ancestors of all supplied commits' -complete -f -c git -n '__fish_git_using_command merge-base' -l independent -d 'Print a minimal subset of the supplied commits with the same ancestors.' -complete -f -c git -n '__fish_git_using_command merge-base' -l is-ancestor -d 'Check if the first commit is an ancestor of the second commit' -complete -f -c git -n '__fish_git_using_command merge-base' -l fork-point -d 'Find the point at which a branch forked from another branch ref' - -### mergetool - -complete -f -c git -n __fish_git_needs_command -a mergetool -d 'Run merge conflict resolution tools to resolve merge conflicts' -complete -f -c git -n '__fish_git_using_command mergetool' -s t -l tool -d "Use specific merge resolution program" -a "(__fish_git_diffmerge_tools mergetool)" -complete -f -c git -n '__fish_git_using_command mergetool' -l tool-help -d 'Print a list of merge tools that may be used with `--tool`' -complete -f -c git -n '__fish_git_using_command mergetool' -a "(__fish_git_files unmerged)" -complete -f -c git -n '__fish_git_using_command mergetool' -s y -l no-prompt -d 'Do not prompt before launching a diff tool' -complete -f -c git -n '__fish_git_using_command mergetool' -l prompt -d 'Prompt before each invocation of the merge resolution program' -complete -c git -n '__fish_git_using_command mergetool' -s O -d 'Process files in the order specified in the file passed as argument' - -### mv -complete -c git -n __fish_git_needs_command -a mv -d 'Move or rename a file, a directory, or a symlink' -complete -f -c git -n '__fish_git_using_command mv' -s f -l force -d 'Force rename/moving even if target exists' -complete -f -c git -n '__fish_git_using_command mv' -s k -d 'Skip rename/move which can lead to error' -complete -f -c git -n '__fish_git_using_command mv' -s n -l dry-run -d 'Only show what would happen' -complete -f -c git -n '__fish_git_using_command mv' -s v -l verbose -d 'Report names of files as they are changed' - -### notes -set -l notescommands add copy append edit show merge remove # list prune get-ref -complete -c git -n __fish_git_needs_command -a notes -d 'Add or inspect object notes' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a list -d 'List notes for given object' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a add -d 'Add notes for a given object' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a copy -d 'Copy notes from object1 to object2' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a append -d 'Append to the notes of existing object' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a edit -d 'Edit notes for a given object' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a show -d 'Show notes for given object' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a merge -d 'Merge the given notes ref to current notes ref' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a remove -d 'Remove notes for given object' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a prune -d 'Remove notes for non-existing/unreachable objects' -complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a get-ref -d 'Print current notes ref' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from $notescommands" -ka '(__fish_git_commits)' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add copy" -s f -l force -d 'Overwrite existing notes' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append edit" -l allow-empty -d 'Allow empty note' -complete -r -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s F -l file -d 'Read note message from file' -complete -x -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s m -l message -d 'Use this note message' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s C -l reuse-message -a '(__fish_git_commits)' -d 'Copy note from object' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s c -l reedit-message -a '(__fish_git_commits)' -d 'Copy and edit note from object' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from copy remove" -l stdin -d 'Read object names from stdin' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge remove prune" -s v -l verbose -d 'Be more verbose' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge remove prune" -s q -l quiet -d 'Operate quietly' -complete -x -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge" -s s -l strategy -d 'Merge strategy to use to resolve conflicts' -a " - manual\t'Instruct the user to resolve merge conflicts' - ours\t'Resolve conflicts in favour of local version' - theirs\t'Resolve conflicts in favour of remote version' - union\t'Resolve conflicts by concatenating local and remote versions' - cat_sort_uniq\t'Concatenate, sort and remove duplicate lines' - " -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge" -l commit -d 'Finalize git notes merge' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge" -l abort -d 'Abort git notes merge' -complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from remove" -l ignore-missing -d 'Do not throw error on deleting non-existing object note' - -### prune -complete -f -c git -n __fish_git_needs_command -a prune -d 'Prune all unreachable objects from the object database' -# TODO options - -### pull -complete -f -c git -n __fish_git_needs_command -a pull -d 'Fetch from and merge with another repository or a local branch' -complete -f -c git -n '__fish_git_using_command pull' -s q -l quiet -d 'Be quiet' -complete -f -c git -n '__fish_git_using_command pull' -s v -l verbose -d 'Be verbose' -# Options related to fetching -complete -f -c git -n '__fish_git_using_command pull' -l all -d 'Fetch all remotes' -complete -f -c git -n '__fish_git_using_command pull' -s a -l append -d 'Append ref names and object names' -complete -f -c git -n '__fish_git_using_command pull' -s f -l force -d 'Force update of local branches' -complete -f -c git -n '__fish_git_using_command pull' -s k -l keep -d 'Keep downloaded pack' -complete -f -c git -n '__fish_git_using_command pull' -l no-tags -d 'Disable automatic tag following' -complete -f -c git -n '__fish_git_using_command pull' -s p -l prune -d 'Remove remote-tracking references that no longer exist on the remote' -# TODO --upload-pack -complete -f -c git -n '__fish_git_using_command pull' -l progress -d 'Force progress status' -complete -f -c git -n '__fish_git_using_command pull; and not __fish_git_branch_for_remote' -a '(__fish_git_remotes)' -d 'Remote alias' -complete -f -c git -n '__fish_git_using_command pull; and __fish_git_branch_for_remote' -a '(__fish_git_branch_for_remote)' -# Options related to merging -complete -f -c git -n '__fish_git_using_command pull' -l commit -d "Autocommit the merge" -complete -f -c git -n '__fish_git_using_command pull' -l no-commit -d "Don't autocommit the merge" -complete -f -c git -n '__fish_git_using_command pull' -s e -l edit -d 'Edit auto-generated merge message' -complete -f -c git -n '__fish_git_using_command pull' -l no-edit -d "Don't edit auto-generated merge message" -complete -f -c git -n '__fish_git_using_command pull' -l ff -d "Don't generate a merge commit if merge is fast-forward" -complete -f -c git -n '__fish_git_using_command pull' -l no-ff -d "Generate a merge commit even if merge is fast-forward" -complete -f -c git -n '__fish_git_using_command pull' -l ff-only -d 'Refuse to merge unless fast-forward possible' -complete -f -c git -n '__fish_git_using_command pull' -s S -l gpg-sign -d 'GPG-sign the merge commit' -complete -f -c git -n '__fish_git_using_command pull' -l log -d 'Populate the log message with one-line descriptions' -complete -f -c git -n '__fish_git_using_command pull' -l no-log -d "Don't populate the log message with one-line descriptions" -complete -f -c git -n '__fish_git_using_command pull' -l signoff -d 'Add Signed-off-by line at the end of the merge commit message' -complete -f -c git -n '__fish_git_using_command pull' -l no-signoff -d 'Do not add a Signed-off-by line at the end of the merge commit message' -complete -f -c git -n '__fish_git_using_command pull' -l stat -d "Show diffstat of the merge" -complete -f -c git -n '__fish_git_using_command pull' -s n -l no-stat -d "Don't show diffstat of the merge" -complete -f -c git -n '__fish_git_using_command pull' -l squash -d "Squash changes from upstream branch as a single commit" -complete -f -c git -n '__fish_git_using_command pull' -l no-squash -d "Don't squash changes" -complete -x -c git -n '__fish_git_using_command pull' -s s -l strategy -d 'Use the given merge strategy' -complete -r -c git -n '__fish_git_using_command pull' -s X -l strategy-option -d 'Pass given option to the merge strategy' -complete -f -c git -n '__fish_git_using_command pull' -l verify-signatures -d 'Abort merge if upstream branch tip commit is not signed with a valid key' -complete -f -c git -n '__fish_git_using_command pull' -l no-verify-signatures -d 'Do not abort merge if upstream branch tip commit is not signed with a valid key' -complete -f -c git -n '__fish_git_using_command pull' -l allow-unrelated-histories -d 'Allow merging even when branches do not share a common history' -complete -f -c git -n '__fish_git_using_command pull' -s r -l rebase -d 'Rebase the current branch on top of the upstream branch' -complete -f -c git -n '__fish_git_using_command pull' -l no-rebase -d 'Do not rebase the current branch on top of the upstream branch' -complete -f -c git -n '__fish_git_using_command pull' -l autostash -d 'Before starting rebase, stash local changes, and apply stash when done' -complete -f -c git -n '__fish_git_using_command pull' -l no-autostash -d 'Do not stash local changes before starting rebase' -# TODO other options - -### range-diff -complete -f -c git -n __fish_git_needs_command -a range-diff -d 'Compare two commit ranges (e.g. two versions of a branch)' -complete -f -c git -n '__fish_git_using_command range-diff' -ka '(__fish_git_ranges)' -complete -f -c git -n '__fish_git_using_command range-diff' -l creation-factor -d 'Percentage by which creation is weighted' -complete -f -c git -n '__fish_git_using_command range-diff' -l no-dual-color -d 'Use simple diff colors' - - -### push -complete -f -c git -n __fish_git_needs_command -a push -d 'Update remote refs along with associated objects' -complete -f -c git -n '__fish_git_using_command push; and not __fish_git_branch_for_remote' -a '(__fish_git_remotes)' -d 'Remote alias' -complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote' -ka '(__fish_git_tags)' -d Tag -complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote' -ka '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote' -ka '(__fish_git_heads)' -# The "refspec" here is an optional "+" to signify a force-push -complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q "+*" -- (commandline -ct)' -a '+(__fish_git_branches | string replace -r \t".*" "")' -d 'Force-push branch' -# git push REMOTE :BRANCH deletes BRANCH on remote REMOTE -complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q ":*" -- (commandline -ct)' -a ':(__fish_git_branch_for_remote | string replace -r \t".*" "")' -d 'Delete remote branch' -# then src:dest (where both src and dest are git objects, so we want to complete branches) -complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q "+*:*" -- (commandline -ct)' -a '(commandline -ct | string replace -r ":.*" ""):(__fish_git_branch_for_remote | string replace -r \t".*" "")' -d 'Force-push local branch to remote branch' -complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q "*:*" -- (commandline -ct)' -a '(commandline -ct | string replace -r ":.*" ""):(__fish_git_branch_for_remote | string replace -r \t".*" "")' -d 'Push local branch to remote branch' -complete -f -c git -n '__fish_git_using_command push' -l all -d 'Push all refs under refs/heads/' -complete -f -c git -n '__fish_git_using_command push' -l prune -d "Remove remote branches that don't have a local counterpart" -complete -f -c git -n '__fish_git_using_command push' -l mirror -d 'Push all refs under refs/' -complete -f -c git -n '__fish_git_using_command push' -l delete -d 'Delete all listed refs from the remote repository' -complete -f -c git -n '__fish_git_using_command push' -l tags -d 'Push all refs under refs/tags' -complete -f -c git -n '__fish_git_using_command push' -l follow-tags -d 'Push all usual refs plus the ones under refs/tags' -complete -f -c git -n '__fish_git_using_command push' -s n -l dry-run -d 'Do everything except actually send the updates' -complete -f -c git -n '__fish_git_using_command push' -l porcelain -d 'Produce machine-readable output' -complete -f -c git -n '__fish_git_using_command push' -s f -l force -d 'Force update of remote refs' -complete -f -c git -n '__fish_git_using_command push' -s f -l force-with-lease -d 'Force update of remote refs, stopping if other\'s changes would be overwritten' -complete -f -c git -n '__fish_git_using_command push' -s u -l set-upstream -d 'Add upstream (tracking) reference' -complete -f -c git -n '__fish_git_using_command push' -s q -l quiet -d 'Be quiet' -complete -f -c git -n '__fish_git_using_command push' -s v -l verbose -d 'Be verbose' -complete -f -c git -n '__fish_git_using_command push' -l progress -d 'Force progress status' -# TODO --recurse-submodules=check|on-demand - -### rebase -complete -f -c git -n __fish_git_needs_command -a rebase -d 'Forward-port local commits to the updated upstream head' -complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_remotes)' -d 'Remote alias' -complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_heads)' -d Head -complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_recent_commits)' -complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_tags)' -d Tag -complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l continue -d 'Restart the rebasing process' -complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l abort -d 'Abort the rebase operation' -complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l edit-todo -d 'Edit the todo list' -complete -f -c git -n '__fish_git_using_command rebase' -l keep-empty -d "Keep the commits that don't change anything" -complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l skip -d 'Restart the rebasing process by skipping the current patch' -complete -f -c git -n '__fish_git_using_command rebase' -s m -l merge -d 'Use merging strategies to rebase' -complete -f -c git -n '__fish_git_using_command rebase' -s q -l quiet -d 'Be quiet' -complete -f -c git -n '__fish_git_using_command rebase' -s v -l verbose -d 'Be verbose' -complete -f -c git -n '__fish_git_using_command rebase' -l stat -d "Show diffstat of the rebase" -complete -f -c git -n '__fish_git_using_command rebase' -s n -l no-stat -d "Don't show diffstat of the rebase" -complete -f -c git -n '__fish_git_using_command rebase' -l verify -d "Allow the pre-rebase hook to run" -complete -f -c git -n '__fish_git_using_command rebase' -l no-verify -d "Don't allow the pre-rebase hook to run" -complete -f -c git -n '__fish_git_using_command rebase' -s f -l force-rebase -d 'Force the rebase' -complete -f -c git -n '__fish_git_using_command rebase' -l committer-date-is-author-date -d "Use the author date as the committer date" -complete -f -c git -n '__fish_git_using_command rebase' -l ignore-date -d "Use the committer date as the author date" -complete -f -c git -n '__fish_git_using_command rebase' -s i -l interactive -d 'Interactive mode' -complete -f -c git -n '__fish_git_using_command rebase' -s p -l preserve-merges -d 'Try to recreate merges' -complete -f -c git -n '__fish_git_using_command rebase' -s r -l rebase-merges -a 'rebase-cousins no-rebase-cousins' -d 'Preserve branch structure' -complete -f -c git -n '__fish_git_using_command rebase' -l root -d 'Rebase all reachable commits' -complete -f -c git -n '__fish_git_using_command rebase' -l autosquash -d 'Automatic squashing' -complete -f -c git -n '__fish_git_using_command rebase' -l no-autosquash -d 'No automatic squashing' -complete -f -c git -n '__fish_git_using_command rebase' -l autostash -d 'Before starting rebase, stash local changes, and apply stash when done' -complete -f -c git -n '__fish_git_using_command rebase' -l no-autostash -d 'Do not stash local changes before starting rebase' -complete -f -c git -n '__fish_git_using_command rebase' -l no-ff -d 'No fast-forward' -# This actually takes script for $SHELL, but completing that is... complicated. -complete -r -c git -n '__fish_git_using_command rebase' -l exec -d 'Execute shellscript' - -### reflog -set -l reflogcommands show expire delete exists -complete -f -c git -n __fish_git_needs_command -a reflog -d 'Manage reflog information' -complete -f -c git -n '__fish_git_using_command reflog' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command reflog' -a '(__fish_git_heads)' -d Head - -complete -f -c git -n "__fish_git_using_command reflog; and not __fish_seen_subcommand_from $reflogcommands" -a "$reflogcommands" - -### reset -complete -c git -n __fish_git_needs_command -a reset -d 'Reset current HEAD to the specified state' -complete -f -c git -n '__fish_git_using_command reset' -l hard -d 'Reset the index and the working tree' -complete -f -c git -n '__fish_git_using_command reset' -l soft -d 'Reset head without touching the index or the working tree' -complete -f -c git -n '__fish_git_using_command reset' -l mixed -d 'The default: reset the index but not the working tree' -complete -c git -n '__fish_git_using_command reset; and not contains -- -- (commandline -opc)' -a '(__fish_git_branches)' -# reset can either undo changes to versioned modified files, -# or remove files from the staging area. -# Deleted files seem to need a "--" separator. -complete -f -c git -n '__fish_git_using_command reset; and not contains -- -- (commandline -opc)' -a '(__fish_git_files all-staged modified)' -complete -f -c git -n '__fish_git_using_command reset; and contains -- -- (commandline -opc)' -a '(__fish_git_files all-staged deleted modified)' -complete -f -c git -n '__fish_git_using_command reset; and not contains -- -- (commandline -opc)' -a '(__fish_git_reflog)' -d Reflog -# TODO options - -### restore and switch -# restore options -complete -f -c git -n __fish_git_needs_command -a restore -d 'Restore working tree files' -complete -f -c git -n '__fish_git_using_command restore' -r -s s -l source -d 'Specify the source tree used to restore the working tree' -k -a '(__fish_git_refs)' -complete -f -c git -n '__fish_git_using_command restore' -s p -l patch -d 'Interactive mode' -complete -f -c git -n '__fish_git_using_command restore' -s W -l worktree -d 'Restore working tree (default)' -complete -f -c git -n '__fish_git_using_command restore' -s S -l staged -d 'Restore the index' -complete -f -c git -n '__fish_git_using_command restore' -l ours -d 'When restoring files, use stage #2 (ours)' -complete -f -c git -n '__fish_git_using_command restore' -l theirs -d 'When restoring files, use stage #3 (theirs)' -complete -f -c git -n '__fish_git_using_command restore' -s m -l merge -d 'Recreate the conflicted merge in the unmerged paths when restoring files' -complete -f -c git -n '__fish_git_using_command restore' -l ignore-unmerged -d 'When restoring files, do not abort the operation if there are unmerged entries' -complete -f -c git -n '__fish_git_using_command restore' -l ignore-skip-worktree-bits -d 'Ignore the sparse-checkout file and unconditionally restore any files in <pathspec>' -complete -f -c git -n '__fish_git_using_command restore' -l overlay -d 'Never remove files when restoring' -complete -f -c git -n '__fish_git_using_command restore' -l no-overlay -d 'Remove files when restoring (default)' -complete -f -c git -n '__fish_git_using_command restore; and not contains -- --staged (commandline -opc)' -a '(__fish_git_files modified deleted modified-staged-deleted unmerged)' -complete -f -c git -n '__fish_git_using_command restore; and contains -- --staged (commandline -opc)' -a '(__fish_git_files added modified-staged deleted-staged renamed copied)' -complete -F -c git -n '__fish_git_using_command restore; and __fish_contains_opt -s s source' -# switch options -complete -f -c git -n __fish_git_needs_command -a switch -d 'Switch to a branch' -complete -k -f -c git -n '__fish_git_using_command switch' -a '(__fish_git_unique_remote_branches)' -d 'Unique Remote Branch' -complete -k -f -c git -n '__fish_git_using_command switch' -a '(__fish_git_local_branches)' -complete -f -c git -n '__fish_git_using_command switch' -r -s c -l create -d 'Create a new branch' -complete -f -c git -n '__fish_git_using_command switch' -r -s C -l force-create -d 'Force create a new branch' -complete -f -c git -n '__fish_git_using_command switch' -s d -l detach -d 'Switch to a commit for inspection and discardable experiment' -k -ra '(__fish_git_refs)' -complete -f -c git -n '__fish_git_using_command switch' -l guess -d 'Guess branch name from remote branch (default)' -complete -f -c git -n '__fish_git_using_command switch' -l no-guess -d 'Do not guess branch name from remote branch' -complete -f -c git -n '__fish_git_using_command switch' -s f -l force -l discard-changes -d 'Proceed even if the index or the working tree differs from HEAD' -complete -f -c git -n '__fish_git_using_command switch' -s m -l merge -d 'Merge the current branch and contents of the working tree into a new branch' -complete -f -c git -n '__fish_git_using_command switch' -s t -l track -d 'Track remote branch when creating a new branch' -complete -f -c git -n '__fish_git_using_command switch' -l no-track -d 'Do not track remote branch when creating a new branch' -complete -f -c git -n '__fish_git_using_command switch' -r -l orphan -d 'Create a new orphan branch' -complete -f -c git -n '__fish_git_using_command switch' -l ignore-other-worktrees -d 'Force check out of the reference' -complete -f -c git -n '__fish_git_using_command switch' -l recurse-submodules -d 'Update the work trees of submodules' -complete -f -c git -n '__fish_git_using_command switch' -l no-recurse-submodules -d 'Do not update the work trees of submodules' -# common options -complete -f -c git -n '__fish_git_using_command restore switch' -s q -l quiet -d 'Suppress messages' -complete -f -c git -n '__fish_git_using_command restore switch' -l progress -d 'Report progress status to stderr (default)' -complete -f -c git -n '__fish_git_using_command restore switch' -l no-progress -d 'Do not report progress status to stderr' -complete -f -c git -n '__fish_git_using_command restore switch' -l 'conflict=merge' -d 'Same as --merge, but specify \'merge\' as the conflicting hunk style (default)' -complete -f -c git -n '__fish_git_using_command restore switch' -l 'conflict=diff3' -d 'Same as --merge, but specify \'diff3\' as the conflicting hunk style' - -### rev-parse -complete -f -c git -n __fish_git_needs_command -a rev-parse -d 'Pick out and massage parameters' -complete -f -c git -n '__fish_git_using_command rev-parse' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command rev-parse' -a '(__fish_git_heads)' -d Head -complete -k -c git -n '__fish_git_using_command rev-parse' -a '(__fish_git_tags)' -d Tag -complete -c git -n '__fish_git_using_command rev-parse' -l abbrev-ref -d 'Output non-ambiguous short object names' - -### revert -complete -f -c git -n __fish_git_needs_command -a revert -d 'Revert an existing commit' -complete -f -c git -n '__fish_git_using_command revert' -ka '(__fish_git_commits)' -complete -f -c git -n '__fish_git_using_command revert' -l continue -d 'Continue the operation in progress' -complete -f -c git -n '__fish_git_using_command revert' -l abort -d 'Cancel the operation' -complete -f -c git -n '__fish_git_using_command revert' -l skip -d 'Skip the current commit and continue with the rest of the sequence' -# TODO options - -### rm -complete -c git -n __fish_git_needs_command -a rm -d 'Remove files from the working tree and the index' -complete -c git -n '__fish_git_using_command rm' -l cached -d 'Unstage files from the index' -complete -c git -n '__fish_git_using_command rm; and __fish_contains_opt cached' -f -a '(__fish_git_files all-staged)' -complete -c git -n '__fish_git_using_command rm' -l ignore-unmatch -d 'Exit with a zero status even if no files matched' -complete -c git -n '__fish_git_using_command rm' -s r -d 'Allow recursive removal' -complete -c git -n '__fish_git_using_command rm' -s q -l quiet -d 'Be quiet' -complete -c git -n '__fish_git_using_command rm' -s f -l force -d 'Override the up-to-date check' -complete -c git -n '__fish_git_using_command rm' -s n -l dry-run -d 'Dry run' -# TODO options - -### status -complete -f -c git -n __fish_git_needs_command -a status -d 'Show the working tree status' -complete -f -c git -n '__fish_git_using_command status' -s s -l short -d 'Give the output in the short-format' -complete -f -c git -n '__fish_git_using_command status' -s b -l branch -d 'Show the branch and tracking info even in short-format' -complete -f -c git -n '__fish_git_using_command status' -l porcelain -d 'Give the output in a stable, easy-to-parse format' -complete -f -c git -n '__fish_git_using_command status' -s z -d 'Terminate entries with null character' -complete -f -c git -n '__fish_git_using_command status' -s u -l untracked-files -x -a 'no normal all' -d 'The untracked files handling mode' -complete -f -c git -n '__fish_git_using_command status' -l ignore-submodules -x -a 'none untracked dirty all' -d 'Ignore changes to submodules' -# TODO options - -### stripspace -complete -f -c git -n __fish_git_needs_command -a stripspace -d 'Remove unnecessary whitespace' -complete -f -c git -n '__fish_git_using_command stripspace' -s s -l strip-comments -d 'Strip all lines starting with comment character' -complete -f -c git -n '__fish_git_using_command stripspace' -s c -l comment-lines -d 'Prepend comment character to each line' - -### tag -complete -f -c git -n __fish_git_needs_command -a tag -d 'Create, list, delete or verify a tag object signed with GPG' -complete -f -c git -n '__fish_git_using_command tag; and __fish_not_contain_opt -s d; and __fish_not_contain_opt -s v; and test (count (commandline -opc | string match -r -v \'^-\')) -eq 3' -a '(__fish_git_branches)' -complete -f -c git -n '__fish_git_using_command tag' -s a -l annotate -d 'Make an unsigned, annotated tag object' -complete -f -c git -n '__fish_git_using_command tag' -s s -l sign -d 'Make a GPG-signed tag' -complete -f -c git -n '__fish_git_using_command tag' -s d -l delete -d 'Remove a tag' -complete -f -c git -n '__fish_git_using_command tag' -s v -l verify -d 'Verify signature of a tag' -complete -f -c git -n '__fish_git_using_command tag' -s f -l force -d 'Force overwriting existing tag' -complete -f -c git -n '__fish_git_using_command tag' -s l -l list -d 'List tags' -complete -f -c git -n '__fish_git_using_command tag' -l contains -xka '(__fish_git_commits)' -d 'List tags that contain a commit' -complete -f -c git -n '__fish_git_using_command tag; and __fish_contains_opt -s d delete -s v verify' -a '(__fish_git_tags)' -d Tag -# TODO options - -### worktree -set -l git_worktree_commands add list lock move prune remove unlock -complete -c git -n __fish_git_needs_command -a worktree -d 'Manage multiple working trees' -complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a add -d 'Create a working tree' -complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a list -d 'List details of each worktree' -complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a lock -d 'Lock a working tree' -complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a move -d 'Move a working tree to a new location' -complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a prune -d 'Prune working tree information in $GIT_DIR/worktrees' -complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a remove -d 'Remove a working tree' -complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a unlock -d 'Unlock a working tree' - -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add move remove' -s f -l force -d 'Override safeguards' - -complete -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_branches)' -complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_heads)' -d Head -complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_tags)' -d Tag -complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_unique_remote_branches)' -d 'Unique Remote Branch' -complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_local_branches)' -complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -s b -d 'Create a new branch' -complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -s B -d 'Create a new branch even if it already exists' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l detach -d 'Detach HEAD in the new working tree' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l checkout -d 'Checkout <commit-ish> after creating working tree' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l no-checkout -d 'Suppress checkout' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l guess-remote -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l no-guess-remote -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l track -d 'Mark <commit-ish> as "upstream" from the new branch' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l no-track -d 'Don\'t mark <commit-ish> as "upstream" from the new branch' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l lock -d 'Lock working tree after creation' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -s q -l quiet -d 'Suppress feedback messages' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from list' -l porcelain -d 'Output in an easy-to-parse format for scripts' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from lock' -a '(__fish_git_complete_worktrees)' -d Worktree -complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from lock' -l reason -d 'An explanation why the working tree is locked' -complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from move; and not __fish_any_arg_in (__fish_git_complete_worktrees)' -a '(__fish_git_complete_worktrees)' -d Worktree -complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from move; and __fish_any_arg_in (__fish_git_complete_worktrees)' -a '(__fish_complete_directories)' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from prune' -s n -l dry-run -d 'Do not remove anything' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from prune' -s v -l verbose -d 'Report all removals' -complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from prune' -l expire -d 'Only expire unused working trees older than <time>' -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from remove' -a '(__fish_git_complete_worktrees)' -d Worktree -complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from unlock' -a '(__fish_git_complete_worktrees)' -d Worktree - -### stash -complete -c git -n __fish_git_needs_command -a stash -d 'Stash away changes' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a list -d 'List stashes' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a show -d 'Show the changes recorded in the stash' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a pop -d 'Apply and remove a single stashed state' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a apply -d 'Apply a single stashed state' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a clear -d 'Remove all stashed states' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a drop -d 'Remove a single stashed state from the stash list' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a create -d 'Create a stash' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a save -d 'Save a new stash' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a branch -d 'Create a new branch from a stash' -complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a push -d 'Create a new stash with given files' - -complete -f -c git -n '__fish_git_stash_using_command apply' -a '(__fish_git_complete_stashes)' -complete -f -c git -n '__fish_git_stash_using_command branch' -a '(__fish_git_complete_stashes)' -complete -f -c git -n '__fish_git_stash_using_command drop' -a '(__fish_git_complete_stashes)' -complete -f -c git -n '__fish_git_stash_using_command pop' -a '(__fish_git_complete_stashes)' -complete -f -c git -n '__fish_git_stash_using_command show' -a '(__fish_git_complete_stashes)' - -complete -f -c git -n '__fish_git_stash_using_command push' -a '(__fish_git_files modified deleted modified-staged-deleted)' -complete -f -c git -n '__fish_git_stash_using_command push' -s p -l patch -d 'Interactively select hunks' -complete -f -c git -n '__fish_git_stash_using_command push' -s m -l message -d 'Add a description' - -### config -complete -f -c git -n __fish_git_needs_command -a config -d 'Set and read git configuration variables' -# TODO options - -### format-patch -complete -f -c git -n __fish_git_needs_command -a format-patch -d 'Generate patch series to send upstream' -complete -f -c git -n '__fish_git_using_command format-patch' -a '(__fish_git_branches)' -complete -c git -n '__fish_git_using_command format-patch' -s o -l output-directory -xa '(__fish_complete_directories)' -complete -f -c git -n '__fish_git_using_command format-patch' -s p -l no-stat -d "Generate plain patches without diffstat" -complete -f -c git -n '__fish_git_using_command format-patch' -s s -l no-patch -d "Suppress diff output" -complete -f -c git -n '__fish_git_using_command format-patch' -l minimal -d "Spend more time to create smaller diffs" -complete -f -c git -n '__fish_git_using_command format-patch' -l patience -d "Generate diff with the 'patience' algorithm" -complete -f -c git -n '__fish_git_using_command format-patch' -l histogram -d "Generate diff with the 'histogram' algorithm" -complete -f -c git -n '__fish_git_using_command format-patch' -l stdout -d "Print all commits to stdout in mbox format" -complete -f -c git -n '__fish_git_using_command format-patch' -l numstat -d "Show number of added/deleted lines in decimal notation" -complete -f -c git -n '__fish_git_using_command format-patch' -l shortstat -d "Output only last line of the stat" -complete -f -c git -n '__fish_git_using_command format-patch' -l summary -d "Output a condensed summary of extended header information" -complete -f -c git -n '__fish_git_using_command format-patch' -l no-renames -d "Disable rename detection" -complete -f -c git -n '__fish_git_using_command format-patch' -l full-index -d "Show full blob object names" -complete -f -c git -n '__fish_git_using_command format-patch' -l binary -d "Output a binary diff for use with git apply" -complete -f -c git -n '__fish_git_using_command format-patch log' -l find-copies-harder -d "Also inspect unmodified files as source for a copy" -complete -f -c git -n '__fish_git_using_command format-patch' -l text -s a -d "Treat all files as text" -complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-space-at-eol -d "Ignore changes in whitespace at EOL" -complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-space-change -s b -d "Ignore changes in amount of whitespace" -complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-all-space -s w -d "Ignore whitespace when comparing lines" -complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-blank-lines -d "Ignore changes whose lines are all blank" -complete -f -c git -n '__fish_git_using_command format-patch log' -l function-context -s W -d "Show whole surrounding functions of changes" -complete -f -c git -n '__fish_git_using_command format-patch log' -l ext-diff -d "Allow an external diff helper to be executed" -complete -f -c git -n '__fish_git_using_command format-patch log' -l no-ext-diff -d "Disallow external diff helpers" -complete -f -c git -n '__fish_git_using_command format-patch log' -l no-textconv -d "Disallow external text conversion filters for binary files (Default)" -complete -f -c git -n '__fish_git_using_command format-patch log' -l textconv -d "Allow external filters for binary files (Resulting diff is unappliable)" -complete -f -c git -n '__fish_git_using_command format-patch log' -l no-prefix -d "Do not show source or destination prefix" -complete -f -c git -n '__fish_git_using_command format-patch' -l numbered -s n -d "Name output in [Patch n/m] format, even with a single patch" -complete -f -c git -n '__fish_git_using_command format-patch' -l no-numbered -s N -d "Name output in [Patch] format, even with multiple patches" - - -## git submodule -set -l submodulecommands add status init deinit update set-branch set-url summary foreach sync absorbgitdirs -complete -f -c git -n __fish_git_needs_command -a submodule -d 'Initialize, update or inspect submodules' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a add -d 'Add a submodule' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a status -d 'Show submodule status' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a init -d 'Initialize all submodules' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a deinit -d 'Unregister the given submodules' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a update -d 'Update all submodules' -complete -x -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a set-branch -d 'Sets the default remote tracking branch for the submodule' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a set-url -d 'Sets the URL of the specified submodule' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a summary -d 'Show commit summary' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a foreach -d 'Run command on each submodule' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a sync -d 'Sync submodules\' URL with .gitmodules' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a absorbgitdirs -d 'Move submodule\'s git directory to current .git/module directory' -complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -s q -l quiet -d "Only print error messages" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l init -d "Initialize all submodules" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l checkout -d "Checkout the superproject's commit on a detached HEAD in the submodule" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l merge -d "Merge the superproject's commit into the current branch of the submodule" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l rebase -d "Rebase current branch onto the superproject's commit" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -s N -l no-fetch -d "Don't fetch new objects from the remote" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l remote -d "Instead of using superproject's SHA-1, use the state of the submodule's remote-tracking branch" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l force -d "Discard local changes when switching to a different commit & always run checkout" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from add' -l force -d "Also add ignored submodule path" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from deinit' -l force -d "Remove even with local changes" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from deinit' -l all -d "Remove all submodules" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from deinit; and not contains -- -- (commandline -opc)' -a '(__fish_git_submodules)' -d Submodule -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from set-branch' -s b -l branch -d "Specify the branch to use" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from set-branch' -s d -l default -d "Use default branch of the submodule" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from status summary' -l cached -d "Use the commit stored in the index" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from status; and not contains -- -- (commandline -opc)' -a '(__fish_git_submodules)' -d Submodule -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from summary' -l files -d "Compare the commit in the index with submodule HEAD" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from foreach update status' -l recursive -d "Traverse submodules recursively" -complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from foreach' -a "(__fish_complete_subcommand --fcs-skip=3)" - -## git whatchanged -complete -f -c git -n __fish_git_needs_command -a whatchanged -d 'Show logs with difference each commit introduces' - -## Aliases (custom user-defined commands) -complete -c git -n __fish_git_needs_command -a '(__fish_git_aliases)' - -### git clean -complete -f -c git -n __fish_git_needs_command -a clean -d 'Remove untracked files from the working tree' -complete -f -c git -n '__fish_git_using_command clean' -s f -l force -d 'Force run' -complete -f -c git -n '__fish_git_using_command clean' -s i -l interactive -d 'Show what would be done and clean files interactively' -complete -f -c git -n '__fish_git_using_command clean' -s n -l dry-run -d 'Don\'t actually remove anything, just show what would be done' -complete -f -c git -n '__fish_git_using_command clean' -s q -l quiet -d 'Be quiet, only report errors' -complete -f -c git -n '__fish_git_using_command clean' -s d -d 'Remove untracked directories in addition to untracked files' -complete -f -c git -n '__fish_git_using_command clean' -s x -d 'Remove ignored files, as well' -complete -f -c git -n '__fish_git_using_command clean' -s X -d 'Remove only ignored files' -# TODO -e option - -### git blame -complete -f -c git -n __fish_git_needs_command -a blame -d 'Show what revision and author last modified each line of a file' -complete -f -c git -n '__fish_git_using_command blame' -s b -d 'Show blank SHA-1 for boundary commits' -complete -f -c git -n '__fish_git_using_command blame' -l root -d 'Do not treat root commits as boundaries' -complete -f -c git -n '__fish_git_using_command blame' -l show-stats -d 'Include additional statistics' -complete -f -c git -n '__fish_git_using_command blame' -s L -d 'Annotate only the given line range' -complete -f -c git -n '__fish_git_using_command blame' -s l -d 'Show long rev' -complete -f -c git -n '__fish_git_using_command blame' -s t -d 'Show raw timestamp' -complete -r -c git -n '__fish_git_using_command blame' -s S -d 'Use revisions from named file instead of calling rev-list' -complete -f -c git -n '__fish_git_using_command blame' -l reverse -d 'Walk history forward instead of backward' -complete -f -c git -n '__fish_git_using_command blame' -s p -l porcelain -d 'Show in a format designed for machine consumption' -complete -f -c git -n '__fish_git_using_command blame' -l line-porcelain -d 'Show the porcelain format' -complete -f -c git -n '__fish_git_using_command blame' -l incremental -d 'Show the result incrementally' -complete -r -c git -n '__fish_git_using_command blame' -l contents -d 'Instead of working tree, use the contents of the named file' -complete -x -c git -n '__fish_git_using_command blame' -l date -d 'Specifies the format used to output dates' -complete -f -c git -n '__fish_git_using_command blame' -s M -d 'Detect moved or copied lines within a file' -complete -f -c git -n '__fish_git_using_command blame' -s C -d 'Detect lines moved or copied from other files modified in the same commit' -complete -f -c git -n '__fish_git_using_command blame' -s h -d 'Show help message' -complete -f -c git -n '__fish_git_using_command blame' -s c -d 'Use the same output mode as git-annotate' -complete -f -c git -n '__fish_git_using_command blame' -s f -l show-name -d 'Show the filename in the original commit' -complete -f -c git -n '__fish_git_using_command blame' -s n -l show-number -d 'Show the line number in the original commit' -complete -f -c git -n '__fish_git_using_command blame' -s s -d 'Suppress the author name and timestamp from the output' -complete -f -c git -n '__fish_git_using_command blame' -s e -l show-email -d 'Show the author email instead of author name' -complete -f -c git -n '__fish_git_using_command blame' -s w -d 'Ignore whitespace changes' - -### help -complete -f -c git -n __fish_git_needs_command -a help -d 'Display help information about Git' -complete -f -c git -n '__fish_git_using_command help' -a '(__fish_git_help_all_concepts)' -complete -f -c git -n '__fish_git_using_command help' -a add -d 'Add file contents to the index' -complete -f -c git -n '__fish_git_using_command help' -a am -d 'Apply a series of patches from a mailbox' -complete -f -c git -n '__fish_git_using_command help' -a apply -d 'Apply a patch on a git index file and a working tree' -complete -f -c git -n '__fish_git_using_command help' -a archive -d 'Create an archive of files from a named tree' -complete -f -c git -n '__fish_git_using_command help' -a bisect -d 'Find the change that introduced a bug by binary search' -complete -f -c git -n '__fish_git_using_command help' -a blame -d 'Show what revision and author last modified each line of a file' -complete -f -c git -n '__fish_git_using_command help' -a branch -d 'List, create, or delete branches' -complete -f -c git -n '__fish_git_using_command help' -a checkout -d 'Checkout and switch to a branch' -complete -f -c git -n '__fish_git_using_command help' -a cherry-pick -d 'Apply the change introduced by an existing commit' -complete -f -c git -n '__fish_git_using_command help' -a clean -d 'Remove untracked files from the working tree' -complete -f -c git -n '__fish_git_using_command help' -a clone -d 'Clone a repository into a new directory' -complete -f -c git -n '__fish_git_using_command help' -a commit -d 'Record changes to the repository' -complete -f -c git -n '__fish_git_using_command help' -a config -d 'Set and read git configuration variables' -complete -f -c git -n '__fish_git_using_command help' -a count-objects -d 'Count unpacked number of objects and their disk consumption' -complete -f -c git -n '__fish_git_using_command help' -a describe -d 'Give an object a human-readable name' -complete -f -c git -n '__fish_git_using_command help' -a diff -d 'Show changes between commits, commit and working tree, etc' -complete -f -c git -n '__fish_git_using_command help' -a daemon -d 'A really simple server for Git repositories' -complete -f -c git -n '__fish_git_using_command help' -a difftool -d 'Open diffs in a visual tool' -complete -f -c git -n '__fish_git_using_command help' -a fetch -d 'Download objects and refs from another repository' -complete -f -c git -n '__fish_git_using_command help' -a filter-branch -d 'Rewrite branches' -complete -f -c git -n '__fish_git_using_command help' -a format-patch -d 'Generate patch series to send upstream' -complete -f -c git -n '__fish_git_using_command help' -a gc -d 'Cleanup unnecessary files and optimize the local repository' -complete -f -c git -n '__fish_git_using_command help' -a grep -d 'Print lines matching a pattern' -complete -f -c git -n '__fish_git_using_command help' -a init -d 'Create an empty git repository or reinitialize an existing one' -complete -f -c git -n '__fish_git_using_command help' -a log -d 'Show commit logs' -complete -f -c git -n '__fish_git_using_command help' -a ls-files -d 'Show information about files in the index and the working tree' -complete -f -c git -n '__fish_git_using_command help' -a mailinfo -d 'Extracts patch and authorship from a single e-mail message' -complete -f -c git -n '__fish_git_using_command help' -a mailsplit -d 'Simple UNIX mbox splitter program' -complete -f -c git -n '__fish_git_using_command help' -a maintenance -d 'Run tasks to optimize Git repository data' -complete -f -c git -n '__fish_git_using_command help' -a merge -d 'Join two or more development histories together' -complete -f -c git -n '__fish_git_using_command help' -a merge-base -d 'Find as good common ancestors as possible for a merge' -complete -f -c git -n '__fish_git_using_command help' -a mergetool -d 'Run merge conflict resolution tools to resolve merge conflicts' -complete -f -c git -n '__fish_git_using_command help' -a mv -d 'Move or rename a file, a directory, or a symlink' -complete -f -c git -n '__fish_git_using_command help' -a notes -d 'Add or inspect object notes' -complete -f -c git -n '__fish_git_using_command help' -a prune -d 'Prune all unreachable objects from the object database' -complete -f -c git -n '__fish_git_using_command help' -a pull -d 'Fetch from and merge with another repository or a local branch' -complete -f -c git -n '__fish_git_using_command help' -a push -d 'Update remote refs along with associated objects' -complete -f -c git -n '__fish_git_using_command help' -a range-diff -d 'Compare two commit ranges (e.g. two versions of a branch)' -complete -f -c git -n '__fish_git_using_command help' -a rebase -d 'Forward-port local commits to the updated upstream head' -complete -f -c git -n '__fish_git_using_command help' -a reflog -d 'Manage reflog information' -complete -f -c git -n '__fish_git_using_command help' -a remote -d 'Manage set of tracked repositories' -complete -f -c git -n '__fish_git_using_command help' -a reset -d 'Reset current HEAD to the specified state' -complete -f -c git -n '__fish_git_using_command help' -a restore -d 'Restore working tree files' -complete -f -c git -n '__fish_git_using_command help' -a revert -d 'Revert an existing commit' -complete -f -c git -n '__fish_git_using_command help' -a rev-parse -d 'Pick out and massage parameters' -complete -f -c git -n '__fish_git_using_command help' -a rm -d 'Remove files from the working tree and from the index' -complete -f -c git -n '__fish_git_using_command help' -a show -d 'Shows the last commit of a branch' -complete -f -c git -n '__fish_git_using_command help' -a show-branch -d 'Shows the commits on branches' -complete -f -c git -n '__fish_git_using_command help' -a stash -d 'Stash away changes' -complete -f -c git -n '__fish_git_using_command help' -a status -d 'Show the working tree status' -complete -f -c git -n '__fish_git_using_command help' -a submodule -d 'Initialize, update or inspect submodules' -complete -f -c git -n '__fish_git_using_command help' -a stripspace -d 'Remove unnecessary whitespace' -complete -f -c git -n '__fish_git_using_command help' -a switch -d 'Switch to a branch' -complete -f -c git -n '__fish_git_using_command help' -a tag -d 'Create, list, delete or verify a tag object signed with GPG' -complete -f -c git -n '__fish_git_using_command help' -a whatchanged -d 'Show logs with difference each commit introduces' -complete -f -c git -n '__fish_git_using_command help' -a worktree -d 'Manage multiple working trees' - -# Complete both options and possible parameters to `git config` -complete -f -c git -n '__fish_git_using_command config' -l global -d 'Get/set global configuration' -complete -f -c git -n '__fish_git_using_command config' -l system -d 'Get/set system configuration' -complete -f -c git -n '__fish_git_using_command config' -l local -d 'Get/set local repo configuration' -complete -F -c git -n '__fish_git_using_command config' -s f -l file -d 'Read config from file' -r -complete -F -c git -n '__fish_git_using_command config' -l blob -d 'Read config from blob' -r - -# If no argument is specified, it's as if --get was used -# Use -k with `__fish_git_config_keys` so that user defined values are shown first -complete -c git -n '__fish_git_using_command config; and __fish_is_nth_token 2' -kfa '(__fish_git_config_keys)' -complete -f -c git -n '__fish_git_using_command config' -l get -d 'Get config with name' -kra '(__fish_git_config_keys)' -complete -f -c git -n '__fish_git_using_command config' -l get-all -d 'Get all values matching key' -ka '(__fish_git_config_keys)' -complete -f -c git -n '__fish_git_using_command config' -l get-urlmatch -d 'Get value specific for the section url' -r -complete -f -c git -n '__fish_git_using_command config' -l replace-all -d 'Replace all matching variables' -kra '(__fish_git_config_keys)' -complete -f -c git -n '__fish_git_using_command config' -l add -d 'Add a new variable' -r -complete -f -c git -n '__fish_git_using_command config' -l unset -d 'Remove a variable' -ka '(__fish_git_config_keys)' -complete -f -c git -n '__fish_git_using_command config' -l unset-all -d 'Remove matching variables' -ka '(__fish_git_config_keys)' -complete -f -c git -n '__fish_git_using_command config' -l rename-section -d 'Rename section' -r -complete -f -c git -n '__fish_git_using_command config' -s l -l list -d 'List all variables' -complete -f -c git -n '__fish_git_using_command config' -s e -l edit -d 'Open configuration in an editor' - -complete -f -c git -n '__fish_git_using_command config' -s t -l type -d 'Value is of given type' -complete -f -c git -n '__fish_git_using_command config' -l bool -d 'Value is \'true\' or \'false\'' -complete -f -c git -n '__fish_git_using_command config' -l int -d 'Value is a decimal number' -complete -f -c git -n '__fish_git_using_command config' -l bool-or-int -d 'Value is --bool or --int' -complete -f -c git -n '__fish_git_using_command config' -l path -d 'Value is a path' -complete -f -c git -n '__fish_git_using_command config' -l expiry-date -d 'Value is an expiry date' - -complete -f -c git -n '__fish_git_using_command config' -s z -l null -d 'Terminate values with NUL byte' -complete -f -c git -n '__fish_git_using_command config' -l name-only -d 'Show variable names only' -complete -f -c git -n '__fish_git_using_command config' -l includes -d 'Respect include directives' -complete -f -c git -n '__fish_git_using_command config' -l show-origin -d 'Show origin of configuration' -complete -f -c git -n '__fish_git_using_command config; and __fish_seen_argument get' -l default -d 'Use default value when missing entry' - -## Custom commands (git-* commands installed in the PATH) -complete -c git -n __fish_git_needs_command -a '(__fish_git_custom_commands)' -d 'Custom command' - -function __fish_git_complete_custom_command -a subcommand - set -l cmd (commandline -opc) - set -e cmd[1] # Drop "git". - set -l subcommand_args - if argparse -s (__fish_git_global_optspecs) -- $cmd - set subcommand_args $argv[2..] # Drop the subcommand. - end - complete -C "git-$subcommand $subcommand_args "(commandline -ct) -end - -# source git-* commands' autocompletion file if exists -set -l __fish_git_custom_commands_completion -for file in $PATH/git-* - not command -q $file - and continue - - set -l subcommand (string replace -r -- '.*/git-([^/]*)$' '$1' $file) - - # Already seen this command earlier in $PATH. - contains -- $subcommand $__fish_git_custom_commands_completion - and continue - - complete -C "git-$subcommand " >/dev/null - if test (complete -c git-$subcommand | count) -gt 0 - complete -c git -f -n "__fish_git_using_command $subcommand" -a "(__fish_git_complete_custom_command $subcommand)" - end - set -a __fish_git_custom_commands_completion $subcommand -end diff --git a/.config/fish/completions/go.fish b/.config/fish/completions/go.fish deleted file mode 100644 index d79f8b7..0000000 --- a/.config/fish/completions/go.fish +++ /dev/null @@ -1,174 +0,0 @@ -# go is a tool for managing Go source code. -# See: https://golang.org - -# Completions for go build commands -set -l __go_cmds_w_buildflags build get install run test generate -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s a -d 'force rebuild' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s n -d 'print the commands but do not run them' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s p -r -d 'number parallel builds (default=#cpus)' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o race -d 'enable data race detection' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o msan -d 'enable interoperation with memory sanitizer' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s v -d 'print packages being built' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o work -d 'print and preserve work directory' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s x -d 'print the commands' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o asmflags -d 'arguments to pass on each go tool asm invocation' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o buildmode -x -d 'build mode to use' -a 'archive c-archive c-shared default shared exe pie plugin' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o compiler -x -d 'name of compiler to use, as in runtime' -a 'gccgo gc' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o gccgoflags -r -d 'gccgo compiler/linker flags' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o gcflags -r -d 'go compiler flags' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o installsuffix -r -d 'suffix for installation directory' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o ldflags -r -d 'linker flags' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o linkshared -r -d 'link against shared libraries previously created with -buildmode=shared' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o mod -x -d 'module download mode to use' -a 'readonly vendor mod' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o modcacherw -d 'leave newly-created directories in the module cache writable' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o modfile -r -d 'read (and possibly write) an alternate go.mod' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o pkgdir -r -d 'install and load all packages from dir instead of the usual locations' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o tags -r -d 'build tags' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o trimpath -d 'remove all file system paths from the resulting executable' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o toolexec -r -d 'a program to use to invoke toolchain programs' -complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o mod -x -d 'module download mode to use' -a 'readonly vendor' - - -# Completions for go cmds that takes file arguments -complete -c go -n "__fish_seen_subcommand_from build compile fix fmt install test vet" -k -x -a "( - __fish_complete_suffix .go - )" --description File - -# Completions for go cmds that takes pkg arguments -complete -c go -n "__fish_seen_subcommand_from build doc fix fmt install test vet" -x -a "( - go list -e -f '{{.ImportPath}} {{or .Doc \"Go package\"}}' (commandline -ct)... 2>/dev/null - )" --description Package - - -# build -complete -c go -n __fish_use_subcommand -a build -d 'compile packages and dependencies' - -# clean -complete -c go -n __fish_use_subcommand -a clean -d 'remove object files' -complete -c go -n '__fish_seen_subcommand_from clean' -s i -d "remove the corresponding installed archive or binary" -complete -c go -n '__fish_seen_subcommand_from clean' -s n -d "print the command that would be executed without running" -complete -c go -n '__fish_seen_subcommand_from clean' -s r -d "recursively clean all the dependencies of package named by the import paths" -complete -c go -n '__fish_seen_subcommand_from clean' -s x -d "clean to print remove commands as it executes them" -complete -c go -n '__fish_seen_subcommand_from clean' -o cache -d 'remove the entire go build cache' -complete -c go -n '__fish_seen_subcommand_from clean' -o testcache -d 'expire all test results in the go build cache' -complete -c go -n '__fish_seen_subcommand_from clean' -o modcache -d 'remove the entire module download cache' - -# doc -complete -c go -n __fish_use_subcommand -a doc -d 'run godoc on package sources' -complete -c go -n '__fish_seen_subcommand_from doc' -o all -d "show all the documentation for the package" -complete -c go -n '__fish_seen_subcommand_from doc' -s c -d 'respect case when matching symbols' -complete -c go -n '__fish_seen_subcommand_from doc' -o cmd -d 'treat a command (package main) like a regular package' -complete -c go -n '__fish_seen_subcommand_from doc' -o short -d 'one-line representation for each symbol' -complete -c go -n '__fish_seen_subcommand_from doc' -o src -d 'show the full source code for the symbol' -complete -c go -n '__fish_seen_subcommand_from doc' -s u -d 'show documentation for unexported as well as exported symbols' - -# env -complete -c go -n __fish_use_subcommand -a env -d 'print Go environment information' -complete -c go -n '__fish_seen_subcommand_from env' -o json -d 'print the environment in JSON format' -complete -c go -n '__fish_seen_subcommand_from env' -s u -r -d 'set NAME to default values' -complete -c go -n '__fish_seen_subcommand_from env' -s w -r -d 'set default values for config variables' - -# fix -complete -c go -n __fish_use_subcommand -a fix -d 'run go tool fix on packages' - -# fmt -complete -c go -n __fish_use_subcommand -a fmt -d 'run gofmt on package sources' -complete -c go -n '__fish_seen_subcommand_from fmt' -s n -d "prints commands that would be executed" -complete -c go -n '__fish_seen_subcommand_from fmt' -s x -d "prints commands as they are executed" - -# get -complete -c go -n __fish_use_subcommand -a get -d 'download and install packages and dependencies' -complete -c go -n '__fish_seen_subcommand_from get' -s d -d "stop after downloading the packages; don't install" -complete -c go -n '__fish_seen_subcommand_from get' -o fix -d "run fix tool on packages before resolving dependencies or building" -complete -c go -n '__fish_seen_subcommand_from get' -s u -d "update remote packages" -complete -c go -n '__fish_seen_subcommand_from get' -s v -d "verbose progress and debug output" -complete -c go -n '__fish_seen_subcommand_from get' -s t -d "also download the packages required to build the tests" -complete -c go -n '__fish_seen_subcommand_from get' -o insecure -d "flag permits fetching & resolving domains using insecure schemes" - -# generate -complete -c go -n __fish_use_subcommand -a generate -d 'Generate runs commands described by directives within existing files.' -complete -c go -n '__fish_seen_subcommand_from get' -s n -d "prints commands that would be executed" -complete -c go -n '__fish_seen_subcommand_from get' -s x -d "prints commands as they are executed" -complete -c go -n '__fish_seen_subcommand_from get' -s v -d "prints the names of packages and files as they are processed" -complete -c go -n '__fish_seen_subcommand_from get' -o run -d "prints the names of packages and files as they are processed" - -# help -complete -c go -n __fish_use_subcommand -a help -d 'get help on topic' -complete -c go -n '__fish_seen_subcommand_from help' -xa bug -d "start a bug report" -complete -c go -n '__fish_seen_subcommand_from help' -xa build -d "compile packages and dependencies" -complete -c go -n '__fish_seen_subcommand_from help' -xa clean -d "remove object files and cached files" -complete -c go -n '__fish_seen_subcommand_from help' -xa doc -d "show documentation for package or symbol" -complete -c go -n '__fish_seen_subcommand_from help' -xa env -d "print Go environment information" -complete -c go -n '__fish_seen_subcommand_from help' -xa fix -d "update packages to use new APIs" -complete -c go -n '__fish_seen_subcommand_from help' -xa fmt -d "gofmt (reformat) package sources" -complete -c go -n '__fish_seen_subcommand_from help' -xa generate -d "generate Go files by processing source" -complete -c go -n '__fish_seen_subcommand_from help' -xa get -d "download and install packages and dependencies" -complete -c go -n '__fish_seen_subcommand_from help' -xa install -d "compile and install packages and dependencies" -complete -c go -n '__fish_seen_subcommand_from help' -xa list -d "list packages or modules" -complete -c go -n '__fish_seen_subcommand_from help' -xa mod -d "module maintenance" -complete -c go -n '__fish_seen_subcommand_from help' -xa run -d "compile and run Go program" -complete -c go -n '__fish_seen_subcommand_from help' -xa test -d "test packages" -complete -c go -n '__fish_seen_subcommand_from help' -xa tool -d "run specified go tool" -complete -c go -n '__fish_seen_subcommand_from help' -xa version -d "print Go version" -complete -c go -n '__fish_seen_subcommand_from help' -xa vet -d "report likely mistakes in packages" -complete -c go -n '__fish_seen_subcommand_from help' -xa buildmode -d "build modes" -complete -c go -n '__fish_seen_subcommand_from help' -xa c -d "calling between Go and C" -complete -c go -n '__fish_seen_subcommand_from help' -xa cache -d "build and test caching" -complete -c go -n '__fish_seen_subcommand_from help' -xa environment -d "environment variables" -complete -c go -n '__fish_seen_subcommand_from help' -xa filetype -d "file types" -complete -c go -n '__fish_seen_subcommand_from help' -xa go.mod -d "the go.mod file" -complete -c go -n '__fish_seen_subcommand_from help' -xa gopath -d "GOPATH environment variable" -complete -c go -n '__fish_seen_subcommand_from help' -xa gopath-get -d "legacy GOPATH go get" -complete -c go -n '__fish_seen_subcommand_from help' -xa goproxy -d "module proxy protocol" -complete -c go -n '__fish_seen_subcommand_from help' -xa importpath -d "import path syntax" -complete -c go -n '__fish_seen_subcommand_from help' -xa modules -d "modules, module versions, and more" -complete -c go -n '__fish_seen_subcommand_from help' -xa module-get -d "module-aware go get" -complete -c go -n '__fish_seen_subcommand_from help' -xa module-auth -d "module authentication using go.sum" -complete -c go -n '__fish_seen_subcommand_from help' -xa module-private -d "module configuration for non-public modules" -complete -c go -n '__fish_seen_subcommand_from help' -xa packages -d "package lists and patterns" -complete -c go -n '__fish_seen_subcommand_from help' -xa testflag -d "testing flags" -complete -c go -n '__fish_seen_subcommand_from help' -xa testfunc -d "testing functions" - -# install -complete -c go -n __fish_use_subcommand -a install -d 'compile and install packages and dependencies' - -# list -complete -c go -n __fish_use_subcommand -a list -d 'list packages' -complete -c go -n '__fish_seen_subcommand_from list' -s e -d "tolerate erroneous packages" -complete -c go -n '__fish_seen_subcommand_from list' -s f -r -d "pass in template for formatting" -complete -c go -n '__fish_seen_subcommand_from list' -o json -d "print in JSON format" -complete -c go -n '__fish_seen_subcommand_from list' -o tags -r -d 'list of build tags' -complete -c go -n '__fish_seen_subcommand_from list' -s m -d 'list modules instead of packages' - -# run -complete -c go -n __fish_use_subcommand -a run -d 'compile and run Go program' - -# test -complete -c go -n __fish_use_subcommand -a test -d 'test packages' -complete -c go -n '__fish_seen_subcommand_from test' -s c -r -d "compile the test binary to pkg.test but do not run it" -complete -c go -n '__fish_seen_subcommand_from test' -s i -d "install dependent packages, but don't run tests" - -# tool -complete -c go -n __fish_use_subcommand -a tool -d 'run specified go tool' -complete -c go -n '__fish_seen_subcommand_from tool' -a 'addr2line api asm cgo compile dist fix link nm objdump pack pprof prof vet yacc' -d "target tool" -complete -c go -n '__fish_seen_subcommand_from tool' -s n -d "print the command that would be executed but not execute it" - -# version -complete -c go -f -n __fish_use_subcommand -a version -d 'print Go version' -complete -c go -f -n '__fish_seen_subcommand_from version' - -# vet -complete -c go -n __fish_use_subcommand -a vet -d 'vet packages' -complete -c go -n '__fish_seen_subcommand_from vet' -s n -d "print the command that would be executed" -complete -c go -n '__fish_seen_subcommand_from vet' -s x -d "prints commands as they are executed" - -# mod -complete -c go -n __fish_use_subcommand -a mod -d 'module maintenance' -complete -c go -f -n '__fish_seen_subcommand_from mod' -a download -d "download modules to local cache" -complete -c go -f -n '__fish_seen_subcommand_from mod' -a edit -d "edit go.mod from tools or scripts" -complete -c go -f -n '__fish_seen_subcommand_from mod' -a graph -d "print module requirement graph" -complete -c go -f -n '__fish_seen_subcommand_from mod' -a init -d "initialize new module in current directory" -complete -c go -f -n '__fish_seen_subcommand_from mod' -a tidy -d "add missing and remove unused modules" -complete -c go -f -n '__fish_seen_subcommand_from mod' -a vendor -d "make vendored copy of dependencies" -complete -c go -f -n '__fish_seen_subcommand_from mod' -a verify -d "verify dependencies have expected content" -complete -c go -f -n '__fish_seen_subcommand_from mod' -a why -d "explain why packages or modules are needed" diff --git a/.config/fish/completions/kubectl.fish b/.config/fish/completions/kubectl.fish deleted file mode 100644 index 6b719d5..0000000 --- a/.config/fish/completions/kubectl.fish +++ /dev/null @@ -1,1762 +0,0 @@ -# -set -q FISH_KUBECTL_COMPLETION_TIMEOUT; or set FISH_KUBECTL_COMPLETION_TIMEOUT 5s -set -q FISH_KUBECTL_COMPLETION_COMPLETE_CRDS; or set FISH_KUBECTL_COMPLETION_COMPLETE_CRDS 1 -set __fish_kubectl_timeout "--request-timeout=$FISH_KUBECTL_COMPLETION_TIMEOUT" -set __fish_kubectl_all_namespaces_flags "--all-namespaces" "--all-namespaces=true" -set __fish_kubectl_subresource_commands get describe delete edit label explain -set __fish_kubectl_commands alpha \ - annotate \ - api-resources \ - api-versions \ - apply \ - attach \ - auth \ - autoscale \ - certificate \ - cluster-info \ - completion \ - config \ - cordon \ - cp \ - create \ - debug \ - delete \ - describe \ - diff \ - drain \ - edit \ - exec \ - explain \ - expose \ - get \ - kustomize \ - label \ - logs \ - options \ - patch \ - plugin \ - port-forward \ - proxy \ - replace \ - rollout \ - run \ - scale \ - set \ - taint \ - top \ - uncordon \ - version \ - wait - -function __fish_kubectl - set -l context_args - - if set -l context_flags (__fish_kubectl_get_context_flags | string split " ") - for c in $context_flags - set context_args $context_args $c - end - end - - set -l kubeconfig_args - - if set -l kubeconfig_args (__fish_kubectl_get_kubeconfig_flags | string split " ") - for c in $kubeconfig_args - set kubeconfig_args $kubeconfig_args $c - end - end - - command kubectl $__fish_kubectl_timeout $context_args $kubeconfig_args $argv -end - -function __fish_kubectl_get_commands - echo alpha\t'Commands for features in alpha' - echo annotate\t'Update the annotations on a resource' - echo api-resources\t'Print the supported API resources on the server' - echo api-versions\t'Print the supported API versions on the server, in the form of "group/version"' - echo apply\t'Apply a configuration to a resource by filename or stdin' - echo attach\t'Attach to a running container' - echo auth\t'Inspect authorization' - echo autoscale\t'Auto-scale a Deployment, ReplicaSet, or ReplicationController' - echo certificate\t'Modify certificate resources.' - echo cluster-info\t'Display cluster info' - echo completion\t'Output shell completion code for the specified shell (bash or zsh)' - echo config\t'Modify kubeconfig files' - echo cordon\t'Mark node as unschedulable' - echo cp\t'Copy files and directories to and from containers.' - echo create\t'Create a resource from a file or from stdin.' - echo debug\t'Create debugging sessions for troubleshooting workloads and nodes' - echo delete\t'Delete resources by filenames, stdin, resources and names, or by resources and label selector' - echo describe\t'Show details of a specific resource or group of resources' - echo diff\t'Diff live version against would-be applied version' - echo drain\t'Drain node in preparation for maintenance' - echo edit\t'Edit a resource on the server' - echo exec\t'Execute a command in a container' - echo explain\t'Documentation of resources' - echo expose\t'Take a replication controller, service, deployment or pod and expose it as a new Kubernetes Service' - echo get\t'Display one or many resources' - echo kustomize\t'Build a kustomization target from a directory or a remote url.' - echo label\t'Update the labels on a resource' - echo logs\t'Print the logs for a container in a pod' - echo options\t'Print the list of flags inherited by all commands' - echo patch\t'Update field(s) of a resource' - echo plugin\t'Provides utilities for interacting with plugins.' - echo port-forward\t'Forward one or more local ports to a pod' - echo proxy\t'Run a proxy to the Kubernetes API server' - echo replace\t'Replace a resource by filename or stdin' - echo rollout\t'Manage the rollout of a resource' - echo run\t'Run a particular image on the cluster' - echo scale\t'Set a new size for a Deployment, ReplicaSet or Replication Controller' - echo set\t'Set specific features on objects' - echo taint\t'Update the taints on one or more nodes' - echo top\t'Display Resource (CPU/Memory/Storage) usage.' - echo uncordon\t'Mark node as schedulable' - echo version\t'Print the client and server version information' - echo wait\t'Experimental: Wait for a specific condition on one or many resources.' -end - -set __fish_kubectl_resources \ - all \ - certificatesigningrequests csr \ - clusterrolebindings \ - clusterroles \ - clusters \ - componentstatuses cs \ - configmaps configmap cm \ - controllerrevisions \ - cronjobs cj \ - customresourcedefinition crd crds \ - daemonsets ds \ - deployments deployment deploy \ - endpoints ep \ - events ev \ - horizontalpodautoscalers hpa \ - ingresses ingress ing \ - jobs job \ - limitranges limits \ - namespaces namespace ns \ - networkpolicies netpol \ - nodes node no \ - persistentvolumeclaims pvc \ - persistentvolumes pv \ - poddisruptionbudgets pdb \ - podpreset \ - pods pod po \ - podsecuritypolicies psp \ - podtemplates \ - replicasets rs \ - replicationcontrollers rc \ - resourcequotas quota \ - rolebindings \ - roles \ - secrets secret \ - serviceaccounts sa \ - services service svc \ - statefulsets sts \ - storageclass storageclasses sc - -set __fish_kubectl_cached_crds "" -set __fish_kubectl_last_crd_fetch "" - -function __fish_kubectl_actually_get_crds - set __fish_kubectl_cached_crds (__fish_kubectl get crd -o jsonpath='{range .items[*]}{.spec.names.plural}{"\n"}{.spec.names.singular}{"\n"}{range .spec.names.shortNames[]}{@}{"\n"}{end}{end}' 2>/dev/null) - set __fish_kubectl_last_crd_fetch (__fish_kubectl_get_current_time) - for i in $__fish_kubectl_cached_crds - echo $i - end -end - -function __fish_kubectl_get_current_time - date +'%s' -end - -function __fish_kubectl_get_crds - if test -z "$__fish_kubectl_last_crd_fetch"; or test -z "$__fish_kubectl_cached_crds" - __fish_kubectl_actually_get_crds - return 0 - end - - set -l ct (__fish_kubectl_get_current_time) - set -l duration (math $ct-$__fish_kubectl_last_crd_fetch) - # Only fetch crds if we have not fetched them within the past 30 seconds. - if test "$duration" -gt 30 - __fish_kubectl_actually_get_crds - return 0 - end - - for i in $__fish_kubectl_cached_crds - echo $i - end -end - -function __fish_kubectl_seen_subcommand_from_regex - set -l cmd (commandline -poc) - set -e cmd[1] - for i in $cmd - for r in $argv - if string match -r -- $r $i - return 0 - end - end - end - return 1 -end - -function __fish_kubectl_needs_command -d 'Test if kubectl has yet to be given the subcommand' - for i in (commandline -opc) - if contains -- $i $__fish_kubectl_commands - echo "$i" - return 1 - end - end - return 0 -end - -function __fish_kubectl_needs_resource -d 'Test if kubectl has yet to be given the subcommand resource' - set -l resources (__fish_kubectl_print_resource_types) - for i in (commandline -opc) - if contains -- $i $resources - return 1 - end - end - return 0 -end - -function __fish_kubectl_using_command - set -l cmd (__fish_kubectl_needs_command) - test -z "$cmd" - and return 1 - - contains -- $cmd $argv - and echo "$cmd" - and return 0 - - return 1 -end - -function __fish_kubectl_using_resource - set -l cmd (__fish_kubectl_needs_resource) - test -z "$cmd" - and return 1 - - contains -- $cmd $argv - and echo "$cmd" - and return 0 - - return 1 -end - -function __fish_kubectl_has_partial_resource_match - set -l last (commandline -opt) - if not set -l matches (string match -- "(.*)/" $last) - return - end - - if string match -q -- "(.*)/" $last - return 0 - end - - return 1 -end - -function __fish_kubectl_print_matching_resources - set -l last (commandline -opt) - if not set -l matches (string match -r -- "(.*)/" $last) - return - end - set -l prefix $matches[2] - set -l resources (__fish_kubectl_print_resource "$prefix") - for i in $resources - echo "$prefix/$i" - end -end - -function __fish_kubectl_get_context_flags - set -l cmd (commandline -opc) - if [ (count $cmd) -eq 0 ] - return 1 - end - - set -l foundContext 0 - - for c in $cmd - test $foundContext -eq 1 - set -l out "--context" "$c" - and echo $out - and return 0 - - if string match -q -r -- "--context=" "$c" - set -l out (string split -- "=" "$c" | string join " ") - and echo $out - and return 0 - else if contains -- "$c" "--context" - set foundContext 1 - end - end - - return 1 -end - -function __fish_kubectl_get_kubeconfig_flags - set -l cmd (commandline -opc) - if [ (count $cmd) -eq 0 ] - return 1 - end - - set -l foundKubeconfig 0 - - for c in $cmd - test $foundKubeconfig -eq 1 - set -l out "--kubeconfig" "$c" - and echo $out - and return 0 - - if string match -q -r -- "--kubeconfig=" "$c" - set -l out (string split -- "=" "$c" | string join " ") - and echo $out - and return 0 - else if contains -- "$c" "--kubeconfig" - set foundKubeconfig 1 - end - end - - return 1 -end - -function __fish_kubectl_get_ns_flags - set -l cmd (commandline -opc) - if [ (count $cmd) -eq 0 ] - return 1 - end - - set -l foundNamespace 0 - - for c in $cmd - test $foundNamespace -eq 1 - set -l out "--namespace" "$c" - and echo $out - and return 0 - - if contains -- $c $__kubectl_all_namespaces_flags - echo "--all-namespaces" - return 0 - end - - if contains -- $c "--namespace" "-n" - set foundNamespace 1 - end - end - - return 1 -end - -function __fish_kubectl_print_resource_types - for r in $__fish_kubectl_resources - echo $r - end - - if test $FISH_KUBECTL_COMPLETION_COMPLETE_CRDS -eq 1 - set -l crds (__fish_kubectl_get_crds) - - for r in $crds - echo $r - end - end -end - -function __fish_kubectl_print_current_resources -d 'Prints current resources' - set -l found 0 - # There is probably a better way to do this... - # found === 1 means that we have not yet found the crd type - # found === 2 means that we have not yet found the crd name, but have found the type - set -l current_resource - set -l crd_types (__fish_kubectl_get_crds) - for i in (commandline -opc) - if test $found -eq 0 - if contains -- $i $__fish_kubectl_subresource_commands - set found 1 - end - end - - if test $found -eq 1 - if contains -- $i $crd_types - set -l out (__fish_kubectl_print_resource $i) - for item in $out - echo "$item" - end - return 0 - end - end - end -end - -function __fish_kubectl_print_resource -d 'Print a list of resources' -a resource - set -l args - if set -l ns_flags (__fish_kubectl_get_ns_flags | string split " ") - for ns in $ns_flags - set args $args $ns - end - end - - set args $args get "$resource" - __fish_kubectl $args --no-headers 2>/dev/null | awk '{print $1}' | string replace -r '(.*)/' '' -end - -function __fish_kubectl_get_config -a type - set -l template "{{ range .$type }}"'{{ .name }}{{"\n"}}{{ end }}' - __fish_kubectl config view -o template --template="$template" -end - -function __fish_kubectl_get_rollout_resources - set -l args - if set -l ns_flags (__fish_kubectl_get_ns_flags | string split " ") - for ns in $ns_flags - set args $args $ns - end - end - - set -l template '{range .items[*]}{.metadata.name}{"\n"}{end}' - - set -l deploys (__fish_kubectl $args get deploy -o jsonpath="$template" 2>/dev/null) - set -l daemonsets (__fish_kubectl $args get ds -o jsonpath="$template" 2>/dev/null) - set -l sts (__fish_kubectl $args get sts -o jsonpath="$template" 2>/dev/null) - - for i in $deploys - echo "deploy/$i" - echo "deployment/$i" - echo "deployments/$i" - end - - for i in $daemonsets - echo "daemonset/$i" - echo "daemonsets/$i" - echo "ds/$i" - end - - for i in $sts - echo "statefulset/$i" - echo "statefulsets/$i" - echo "sts/$i" - end -end - -complete -c kubectl -f -n '__fish_kubectl_needs_command' -a '(__fish_kubectl_get_commands)' - -for subcmd in $__fish_kubectl_subresource_commands - complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and not __fish_seen_subcommand_from (__fish_kubectl_print_resource_types)" -a '(__fish_kubectl_print_resource_types)' -d 'Resource' - complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and __fish_kubectl_has_partial_resource_match" -a '(__fish_kubectl_print_matching_resources)' -d 'Resource' - for resource in $__fish_kubectl_resources - complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and __fish_seen_subcommand_from $resource" -a "(__fish_kubectl_print_resource $resource)" -d "$resource" - end - - if test $FISH_KUBECTL_COMPLETION_COMPLETE_CRDS -eq 1 - complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and __fish_seen_subcommand_from (__fish_kubectl_get_crds)" -a '(__fish_kubectl_print_current_resources)' -d 'CRD' - end -end - -complete -c kubectl -f -n "__fish_seen_subcommand_from log logs exec port-forward" -a '(__fish_kubectl_print_resource pods)' -d 'Pod' -complete -c kubectl -f -n "__fish_seen_subcommand_from top; and __fish_seen_subcommand_from po pod pods" -a '(__fish_kubectl_print_resource pods)' -d 'Pod' -complete -c kubectl -f -n "__fish_seen_subcommand_from top; and __fish_seen_subcommand_from no node nodes" -a '(__fish_kubectl_print_resource nodes)' -d 'Node' - -for subcmd in cordon uncordon drain taint - complete -c kubectl -f -n "__fish_seen_subcommand_from $subcmd" -a '(__fish_kubectl_print_resource nodes)' -d 'Node' -end - -set -l __fish_kubectl_config_complete_contexts \ - delete-context \ - get-contexts \ - rename-contexts \ - set-context \ - use-context - -set -l __fish_kubectl_config_complete_clusters \ - delete-cluster \ - get-clusters \ - set-cluster - -complete -c kubectl -f -n "__fish_seen_subcommand_from config; and __fish_seen_subcommand_from $__fish_kubectl_config_complete_contexts" -a '(__fish_kubectl_get_config contexts)' -d 'Context' -complete -c kubectl -f -n "__fish_seen_subcommand_from config; and __fish_seen_subcommand_from $__fish_kubectl_config_complete_clusters" -a '(__fish_kubectl_get_config clusters)' -d 'Cluster' -complete -c kubectl -f -n "__fish_seen_subcommand_from rollout; and __fish_seen_subcommand_from (__fish_kubectl_get_rollout_commands_without_descriptions)" -a '(__fish_kubectl_get_rollout_resources)' -complete -c kubectl -f -r -l as -d 'Username to impersonate for the operation' -complete -c kubectl -f -r -l as-group -d 'Group to impersonate for the operation, this flag can be repeated to specify multiple groups.' -complete -c kubectl -r -l cache-dir -d 'Default cache directory' -complete -c kubectl -r -l certificate-authority -d 'Path to a cert file for the certificate authority' -complete -c kubectl -r -l client-certificate -d 'Path to a client certificate file for TLS' -complete -c kubectl -r -l client-key -d 'Path to a client key file for TLS' -complete -c kubectl -f -r -l cluster -d 'The name of the kubeconfig cluster to use' -a '(__fish_kubectl_get_config clusters)' -complete -c kubectl -f -r -l context -d 'The name of the kubeconfig context to use' -a '(__fish_kubectl_get_config contexts)' -complete -c kubectl -f -l insecure-skip-tls-verify -d 'If true, the server\'s certificate will not be checked for validity. This will make your HTTPS connections insecure' -complete -c kubectl -r -l kubeconfig -d 'Path to the kubeconfig file to use for CLI requests.' -complete -c kubectl -f -l match-server-version -d 'Require server version to match client version' -complete -c kubectl -f -r -s n -l namespace -d 'If present, the namespace scope for this CLI request' -a '(__fish_kubectl_print_resource namespace)' -complete -c kubectl -f -r -l password -d 'Password for basic authentication to the API server' -complete -c kubectl -f -r -l profile -d 'Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex)' -complete -c kubectl -f -r -l profile-output -d 'Name of the file to write the profile to' -complete -c kubectl -f -r -l request-timeout -d 'The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don\'t timeout requests.' -complete -c kubectl -f -r -s s -l server -d 'The address and port of the Kubernetes API server' -complete -c kubectl -f -r -l tls-server-name -d 'Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used' -complete -c kubectl -f -r -l token -d 'Bearer token for authentication to the API server' -complete -c kubectl -f -r -l user -d 'The name of the kubeconfig user to use' -a '(__fish_kubectl_get_config users)' -complete -c kubectl -f -r -l username -d 'Username for basic authentication to the API server' -complete -c kubectl -f -l warnings-as-errors -d 'Treat warnings received from the server as errors and exit with a non-zero exit code' - -# Completions for the "kubectl alpha" command -function __fish_kubectl_get_alpha_commands - echo debug\t'Create debugging sessions for troubleshooting workloads and nodes' -end - -function __fish_kubectl_get_alpha_commands_without_descriptions - __fish_kubectl_get_alpha_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command alpha; and not __fish_seen_subcommand_from (__fish_kubectl_get_alpha_commands_without_descriptions)" -a '(__fish_kubectl_get_alpha_commands)' - -# Completions for the "kubectl alpha debug" command -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l arguments-only -d 'If specified, everything after -- will be passed to the new container as Args instead of Command.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l attach -d 'If true, wait for the container to start running, and then attach as if \'kubectl attach ...\' were called. Default false, unless \'-i/--stdin\' is set, in which case the default is true.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -s c -l container -d 'Container name to use for debug container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l copy-to -d 'Create a copy of the target Pod with this name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l env -d 'Environment variables to set in the container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l image -d 'Container image to use for debug container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l image-pull-policy -d 'The image pull policy for the container. If left empty, this value will not be specified by the client and defaulted by the server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l quiet -d 'If true, suppress informational messages.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l replace -d 'When used with \'--copy-to\', delete the original Pod.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l same-node -d 'When used with \'--copy-to\', schedule the copy of target Pod on the same node.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l set-image -d 'When used with \'--copy-to\', a list of name=image pairs for changing container images, similar to how \'kubectl set image\' works.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l share-processes -d 'When used with \'--copy-to\', enable process namespace sharing in the copy.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -s i -l stdin -d 'Keep stdin open on the container(s) in the pod, even if nothing is attached.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l target -d 'When using an ephemeral container, target processes in this container name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -s t -l tty -d 'Allocate a TTY for the debugging container.' - -# Completions for the "kubectl annotate" command -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' -complete -c kubectl -n '__fish_seen_subcommand_from annotate' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update the annotation' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l list -d 'If true, display the annotations for a given resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l local -d 'If true, annotation will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l overwrite -d 'If true, allow annotations to be overwritten, otherwise reject annotation updates that overwrite existing annotations.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l resource-version -d 'If non-empty, the annotation update will only succeed if this is the current resource-version for the object. Only valid when specifying a single resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2).' -complete -c kubectl -n '__fish_seen_subcommand_from annotate' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl api-resources" command -complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -l api-group -d 'Limit to resources in the specified API group.' -complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -l cached -d 'Use the cached list of resources if available.' -complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -l namespaced -d 'If false, non-namespaced resources will be returned, otherwise returning namespaced resources by default.' -complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -l no-headers -d 'When using the default or custom-column output format, don\'t print headers (default print headers).' -complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -s o -l output -d 'Output format. One of: wide|name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -l sort-by -d 'If non-empty, sort list of resources using specified field. The field can be either \'name\' or \'kind\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -l verbs -d 'Limit to resources that support the specified verbs.' - -# Completions for the "kubectl apply" command -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l all -d 'Select all resources in the namespace of the specified resource types.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from apply' -r -s f -l filename -d 'that contains the configuration to apply' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l force-conflicts -d 'If true, server-side apply will force the changes against conflicts.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l openapi-patch -d 'If true, use openapi to calculate diff when the openapi presents and the resource can be found in the openapi spec. Otherwise, fall back to use baked-in types.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l overwrite -d 'Automatically resolve conflicts between the modified and live configuration by using values from the modified configuration' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l prune -d 'Automatically delete resource objects, including the uninitialized ones, that do not appear in the configs and are created by either apply or create --save-config. Should be used with either -l or --all.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l prune-whitelist -d 'Overwrite the default whitelist with <group/version/kind> for --prune' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l server-side -d 'If true, apply runs in the server instead of the client.' -complete -c kubectl -n '__fish_seen_subcommand_from apply' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' -function __fish_kubectl_get_apply_commands - echo edit-last-applied\t'Edit latest last-applied-configuration annotations of a resource/object' - echo set-last-applied\t'Set the last-applied-configuration annotation on a live object to match the contents of a file.' - echo view-last-applied\t'View latest last-applied-configuration annotations of a resource/object' -end - -function __fish_kubectl_get_apply_commands_without_descriptions - __fish_kubectl_get_apply_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command apply; and not __fish_seen_subcommand_from (__fish_kubectl_get_apply_commands_without_descriptions)" -a '(__fish_kubectl_get_apply_commands)' - -# Completions for the "kubectl apply edit-last-applied" command -complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from apply edit-last-applied' -r -s f -l filename -d 'Filename, directory, or URL to files to use to edit the resource' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from apply edit-last-applied' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -l windows-line-endings -d 'Defaults to the line ending native to your platform.' - -# Completions for the "kubectl apply set-last-applied" command -complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -l create-annotation -d 'Will create \'last-applied-configuration\' annotations if current objects doesn\'t have one' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -n '__fish_seen_subcommand_from apply set-last-applied' -r -s f -l filename -d 'Filename, directory, or URL to files that contains the last-applied-configuration annotations' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -n '__fish_seen_subcommand_from apply set-last-applied' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl apply view-last-applied" command -complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -l all -d 'Select all resources in the namespace of the specified resource types' -complete -c kubectl -n '__fish_seen_subcommand_from apply view-last-applied' -r -s f -l filename -d 'Filename, directory, or URL to files that contains the last-applied-configuration annotations' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -r -s o -l output -d 'Output format. Must be one of yaml|json' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' - -# Completions for the "kubectl attach" command -complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -r -s c -l container -d 'Container name. If omitted, the first container in the pod will be chosen' -complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' -complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -s i -l stdin -d 'Pass stdin to the container' -complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -s t -l tty -d 'Stdin is a TTY' - -# Completions for the "kubectl auth" command -function __fish_kubectl_get_auth_commands - echo can-i\t'Check whether an action is allowed' - echo reconcile\t'Reconciles rules for RBAC Role, RoleBinding, ClusterRole, and ClusterRole binding objects' -end - -function __fish_kubectl_get_auth_commands_without_descriptions - __fish_kubectl_get_auth_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command auth; and not __fish_seen_subcommand_from (__fish_kubectl_get_auth_commands_without_descriptions)" -a '(__fish_kubectl_get_auth_commands)' - -# Completions for the "kubectl auth can-i" command -complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -s A -l all-namespaces -d 'If true, check the specified action in all namespaces.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -l list -d 'If true, prints all allowed actions.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -l no-headers -d 'If true, prints allowed actions without headers' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -s q -l quiet -d 'If true, suppress output and just return the exit code.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -r -l subresource -d 'SubResource such as pod/log or deployment/scale' - -# Completions for the "kubectl auth reconcile" command -complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -n '__fish_seen_subcommand_from auth reconcile' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to reconcile.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -l remove-extra-permissions -d 'If true, removes extra permissions added to roles' -complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -l remove-extra-subjects -d 'If true, removes extra subjects added to rolebindings' -complete -c kubectl -n '__fish_seen_subcommand_from auth reconcile' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl autoscale" command -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l cpu-percent -d 'The target average CPU utilization (represented as a percent of requested CPU) over all the pods. If it\'s not specified or negative, a default autoscaling policy will be used.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from autoscale' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to autoscale.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l max -d 'The upper limit for the number of pods that can be set by the autoscaler. Required.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l min -d 'The lower limit for the number of pods that can be set by the autoscaler. If it\'s not specified or negative, the server will apply a default value.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l name -d 'The name for the newly created object. If not specified, the name of the input resource will be used.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from autoscale' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl certificate" command -function __fish_kubectl_get_certificate_commands - echo approve\t'Approve a certificate signing request' - echo deny\t'Deny a certificate signing request' -end - -function __fish_kubectl_get_certificate_commands_without_descriptions - __fish_kubectl_get_certificate_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command certificate; and not __fish_seen_subcommand_from (__fish_kubectl_get_certificate_commands_without_descriptions)" -a '(__fish_kubectl_get_certificate_commands)' - -# Completions for the "kubectl certificate approve" command -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -n '__fish_seen_subcommand_from certificate approve' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -l force -d 'Update the CSR even if it is already approved.' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from certificate approve' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl certificate deny" command -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -n '__fish_seen_subcommand_from certificate deny' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -l force -d 'Update the CSR even if it is already denied.' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from certificate deny' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl cluster-info" command -function __fish_kubectl_get_cluster_info_commands - echo dump\t'Dump lots of relevant info for debugging and diagnosis' -end - -function __fish_kubectl_get_cluster_info_commands_without_descriptions - __fish_kubectl_get_cluster_info_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command cluster-info; and not __fish_seen_subcommand_from (__fish_kubectl_get_cluster_info_commands_without_descriptions)" -a '(__fish_kubectl_get_cluster_info_commands)' - -# Completions for the "kubectl cluster-info dump" command -complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -s A -l all-namespaces -d 'If true, dump all namespaces. If true, --namespaces is ignored.' -complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -l namespaces -d 'A comma separated list of namespaces to dump.' -complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -l output-directory -d 'Where to output the files. If empty or \'-\' uses stdout, otherwise creates a directory hierarchy in that directory' -complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' -complete -c kubectl -n '__fish_seen_subcommand_from cluster-info dump' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl config" command -function __fish_kubectl_get_config_commands - echo current-context\t'Displays the current-context' - echo delete-cluster\t'Delete the specified cluster from the kubeconfig' - echo delete-context\t'Delete the specified context from the kubeconfig' - echo delete-user\t'Delete the specified user from the kubeconfig' - echo get-clusters\t'Display clusters defined in the kubeconfig' - echo get-contexts\t'Describe one or many contexts' - echo get-users\t'Display users defined in the kubeconfig' - echo rename-context\t'Renames a context from the kubeconfig file.' - echo set\t'Sets an individual value in a kubeconfig file' - echo set-cluster\t'Sets a cluster entry in kubeconfig' - echo set-context\t'Sets a context entry in kubeconfig' - echo set-credentials\t'Sets a user entry in kubeconfig' - echo unset\t'Unsets an individual value in a kubeconfig file' - echo use-context\t'Sets the current-context in a kubeconfig file' - echo use\t'Sets the current-context in a kubeconfig file' - echo view\t'Display merged kubeconfig settings or a specified kubeconfig file' -end - -function __fish_kubectl_get_config_commands_without_descriptions - __fish_kubectl_get_config_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command config; and not __fish_seen_subcommand_from (__fish_kubectl_get_config_commands_without_descriptions)" -a '(__fish_kubectl_get_config_commands)' - -# Completions for the "kubectl config get-contexts" command -complete -c kubectl -f -n '__fish_seen_subcommand_from config get-contexts' -l no-headers -d 'When using the default or custom-column output format, don\'t print headers (default print headers).' -complete -c kubectl -f -n '__fish_seen_subcommand_from config get-contexts' -r -s o -l output -d 'Output format. One of: name' - -# Completions for the "kubectl config set" command -complete -c kubectl -f -n '__fish_seen_subcommand_from config set' -r -l set-raw-bytes -d 'When writing a []byte PROPERTY_VALUE, write the given string directly without base64 decoding.' - -# Completions for the "kubectl config set-cluster" command -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-cluster' -r -l embed-certs -d 'embed-certs for the cluster entry in kubeconfig' - -# Completions for the "kubectl config set-context" command -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-context' -l current -d 'Modify the current context' - -# Completions for the "kubectl config set-credentials" command -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l auth-provider -d 'Auth provider for the user entry in kubeconfig' -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l auth-provider-arg -d '\'key=value\' arguments for the auth provider' -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l embed-certs -d 'Embed client cert/key for the user entry in kubeconfig' -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-api-version -d 'API version of the exec credential plugin for the user entry in kubeconfig' -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-arg -d 'New arguments for the exec credential plugin command for the user entry in kubeconfig' -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-command -d 'Command for the exec credential plugin for the user entry in kubeconfig' -complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-env -d '\'key=value\' environment values for the exec credential plugin' - -# Completions for the "kubectl config view" command -complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l flatten -d 'Flatten the resulting kubeconfig file into self-contained output (useful for creating portable kubeconfig files)' -complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -r -l merge -d 'Merge the full hierarchy of kubeconfig files' -complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l minify -d 'Remove all information not used by current-context from the output' -complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l raw -d 'Display raw byte data' -complete -c kubectl -n '__fish_seen_subcommand_from config view' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl cordon" command -complete -c kubectl -f -n '__fish_seen_subcommand_from cordon' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from cordon' -r -s l -l selector -d 'Selector (label query) to filter on' - -# Completions for the "kubectl cp" command -complete -c kubectl -f -n '__fish_seen_subcommand_from cp' -r -s c -l container -d 'Container name. If omitted, the first container in the pod will be chosen' -complete -c kubectl -f -n '__fish_seen_subcommand_from cp' -l no-preserve -d 'The copied file/directory\'s ownership and permissions will not be preserved in the container' - -# Completions for the "kubectl create" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l edit -d 'Edit the API resource before creating' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from create' -r -s f -l filename -d 'Filename, directory, or URL to files to use to create the resource' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -l raw -d 'Raw URI to POST to the server. Uses the transport specified by the kubeconfig file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -n '__fish_seen_subcommand_from create' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l windows-line-endings -d 'Only relevant if --edit=true. Defaults to the line ending native to your platform.' -function __fish_kubectl_get_create_commands - echo clusterrole\t'Create a ClusterRole.' - echo clusterrolebinding\t'Create a ClusterRoleBinding for a particular ClusterRole' - echo configmap\t'Create a configmap from a local file, directory or literal value' - echo cm\t'Create a configmap from a local file, directory or literal value' - echo cronjob\t'Create a cronjob with the specified name.' - echo cj\t'Create a cronjob with the specified name.' - echo deployment\t'Create a deployment with the specified name.' - echo deploy\t'Create a deployment with the specified name.' - echo ingress\t'Create an ingress with the specified name.' - echo ing\t'Create an ingress with the specified name.' - echo job\t'Create a job with the specified name.' - echo namespace\t'Create a namespace with the specified name' - echo ns\t'Create a namespace with the specified name' - echo poddisruptionbudget\t'Create a pod disruption budget with the specified name.' - echo pdb\t'Create a pod disruption budget with the specified name.' - echo priorityclass\t'Create a priorityclass with the specified name.' - echo pc\t'Create a priorityclass with the specified name.' - echo quota\t'Create a quota with the specified name.' - echo resourcequota\t'Create a quota with the specified name.' - echo role\t'Create a role with single rule.' - echo rolebinding\t'Create a RoleBinding for a particular Role or ClusterRole' - echo secret\t'Create a secret using specified subcommand' - echo service\t'Create a service using specified subcommand.' - echo svc\t'Create a service using specified subcommand.' - echo serviceaccount\t'Create a service account with the specified name' - echo sa\t'Create a service account with the specified name' -end - -function __fish_kubectl_get_create_commands_without_descriptions - __fish_kubectl_get_create_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command create; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_commands_without_descriptions)" -a '(__fish_kubectl_get_create_commands)' - -# Completions for the "kubectl create clusterrole" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l aggregation-rule -d 'An aggregation label selector for combining ClusterRoles.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l non-resource-url -d 'A partial url that user should have access to.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l resource -d 'Resource that the rule applies to' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l resource-name -d 'Resource in the white list that the rule applies to, repeat this flag for multiple items' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create clusterrole' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l verb -d 'Verb that applies to the resources contained in the rule' - -# Completions for the "kubectl create clusterrolebinding" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l clusterrole -d 'ClusterRole this ClusterRoleBinding should reference' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l group -d 'Groups to bind to the clusterrole' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l serviceaccount -d 'Service accounts to bind to the clusterrole, in the format <namespace>:<name>' -complete -c kubectl -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create configmap" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l append-hash -d 'Append a hash of the configmap to its name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l append-hash -d 'Append a hash of the configmap to its name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l from-env-file -d 'Specify the path to a file to read lines of key=val pairs to create a configmap (i.e. a Docker .env file).' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l from-env-file -d 'Specify the path to a file to read lines of key=val pairs to create a configmap (i.e. a Docker .env file).' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l from-file -d 'Key file can be specified using its file path, in which case file basename will be used as configmap key, or optionally with a key and file path, in which case the given key will be used. Specifying a directory will iterate each named file in the directory whose basename is a valid configmap key.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l from-file -d 'Key file can be specified using its file path, in which case file basename will be used as configmap key, or optionally with a key and file path, in which case the given key will be used. Specifying a directory will iterate each named file in the directory whose basename is a valid configmap key.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l from-literal -d 'Specify a key and literal value to insert in configmap (i.e. mykey=somevalue)' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l from-literal -d 'Specify a key and literal value to insert in configmap (i.e. mykey=somevalue)' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create configmap' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create cm' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create cronjob" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l image -d 'Image name to run.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l image -d 'Image name to run.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l restart -d 'job\'s restart policy. supported values: OnFailure, Never' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l restart -d 'job\'s restart policy. supported values: OnFailure, Never' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l schedule -d 'A schedule in the Cron format the job should be run with.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l schedule -d 'A schedule in the Cron format the job should be run with.' -complete -c kubectl -n '__fish_seen_subcommand_from create cronjob' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create cj' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create deployment" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l image -d 'Image names to run.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l image -d 'Image names to run.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l port -d 'The port that this container exposes.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l port -d 'The port that this container exposes.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -s r -l replicas -d 'Number of replicas to create. Default is 1.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -s r -l replicas -d 'Number of replicas to create. Default is 1.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create deployment' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create deploy' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create ingress" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l annotation -d 'Annotation to insert in the ingress object, in the format annotation=value' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l annotation -d 'Annotation to insert in the ingress object, in the format annotation=value' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l class -d 'Ingress Class to be used' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l class -d 'Ingress Class to be used' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l default-backend -d 'Default service for backend, in format of svcname:port' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l default-backend -d 'Default service for backend, in format of svcname:port' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l rule -d 'Rule in format host/path=service:port[,tls=secretname]. Paths containing the leading character \'*\' are considered pathType=Prefix. tls argument is optional.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l rule -d 'Rule in format host/path=service:port[,tls=secretname]. Paths containing the leading character \'*\' are considered pathType=Prefix. tls argument is optional.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create ingress' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create ing' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create job" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l from -d 'The name of the resource to create a Job from (only cronjob is supported).' -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l image -d 'Image name to run.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create job' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create namespace" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create namespace' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create ns' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create poddisruptionbudget" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l max-unavailable -d 'The maximum number or percentage of unavailable pods this budget requires.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l max-unavailable -d 'The maximum number or percentage of unavailable pods this budget requires.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l min-available -d 'The minimum number or percentage of available pods this budget requires.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l min-available -d 'The minimum number or percentage of available pods this budget requires.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l selector -d 'A label selector to use for this budget. Only equality-based selector requirements are supported.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l selector -d 'A label selector to use for this budget. Only equality-based selector requirements are supported.' -complete -c kubectl -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create pdb' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create priorityclass" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l description -d 'description is an arbitrary string that usually provides guidelines on when this priority class should be used.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l description -d 'description is an arbitrary string that usually provides guidelines on when this priority class should be used.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l global-default -d 'global-default specifies whether this PriorityClass should be considered as the default priority.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l global-default -d 'global-default specifies whether this PriorityClass should be considered as the default priority.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l preemption-policy -d 'preemption-policy is the policy for preempting pods with lower priority.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l preemption-policy -d 'preemption-policy is the policy for preempting pods with lower priority.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create priorityclass' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create pc' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l value -d 'the value of this priority class.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l value -d 'the value of this priority class.' - -# Completions for the "kubectl create quota" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l hard -d 'A comma-delimited set of resource=quantity pairs that define a hard limit.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l hard -d 'A comma-delimited set of resource=quantity pairs that define a hard limit.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l scopes -d 'A comma-delimited set of quota scopes that must all match each object tracked by the quota.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l scopes -d 'A comma-delimited set of quota scopes that must all match each object tracked by the quota.' -complete -c kubectl -n '__fish_seen_subcommand_from create quota' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create resourcequota' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create role" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l resource -d 'Resource that the rule applies to' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l resource-name -d 'Resource in the white list that the rule applies to, repeat this flag for multiple items' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create role' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l verb -d 'Verb that applies to the resources contained in the rule' - -# Completions for the "kubectl create rolebinding" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l clusterrole -d 'ClusterRole this RoleBinding should reference' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l group -d 'Groups to bind to the role' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l role -d 'Role this RoleBinding should reference' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l serviceaccount -d 'Service accounts to bind to the role, in the format <namespace>:<name>' -complete -c kubectl -n '__fish_seen_subcommand_from create rolebinding' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create secret" command -function __fish_kubectl_get_create_secret_commands - echo docker-registry\t'Create a secret for use with a Docker registry' - echo generic\t'Create a secret from a local file, directory or literal value' - echo tls\t'Create a TLS secret' -end - -function __fish_kubectl_get_create_secret_commands_without_descriptions - __fish_kubectl_get_create_secret_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command secret; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_secret_commands_without_descriptions)" -a '(__fish_kubectl_get_create_secret_commands)' - -# Completions for the "kubectl create secret docker-registry" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l append-hash -d 'Append a hash of the secret to its name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-email -d 'Email for Docker registry' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-password -d 'Password for Docker registry authentication' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-server -d 'Server location for Docker registry' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-username -d 'Username for Docker registry authentication' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l from-file -d 'Key files can be specified using their file path, in which case a default name will be given to them, or optionally with a name and file path, in which case the given name will be used. Specifying a directory will iterate each named file in the directory that is a valid secret key.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create secret docker-registry' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create secret generic" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l append-hash -d 'Append a hash of the secret to its name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l from-env-file -d 'Specify the path to a file to read lines of key=val pairs to create a secret (i.e. a Docker .env file).' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l from-file -d 'Key files can be specified using their file path, in which case a default name will be given to them, or optionally with a name and file path, in which case the given name will be used. Specifying a directory will iterate each named file in the directory that is a valid secret key.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l from-literal -d 'Specify a key and literal value to insert in secret (i.e. mykey=somevalue)' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create secret generic' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l type -d 'The type of secret to create' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create secret tls" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l append-hash -d 'Append a hash of the secret to its name.' -complete -c kubectl -n '__fish_seen_subcommand_from create secret tls' -r -l cert -d 'Path to PEM encoded public key certificate.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from create secret tls' -r -l key -d 'Path to private key associated with given certificate.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create secret tls' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create service" command -function __fish_kubectl_get_create_service_commands - echo clusterip\t'Create a ClusterIP service.' - echo externalname\t'Create an ExternalName service.' - echo loadbalancer\t'Create a LoadBalancer service.' - echo nodeport\t'Create a NodePort service.' -end - -function __fish_kubectl_get_create_service_commands_without_descriptions - __fish_kubectl_get_create_service_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command service; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_service_commands_without_descriptions)" -a '(__fish_kubectl_get_create_service_commands)' -complete -c kubectl -f -n "__fish_kubectl_using_command svc; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_service_commands_without_descriptions)" -a '(__fish_kubectl_get_create_service_commands)' - -# Completions for the "kubectl create service clusterip" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l clusterip -d 'Assign your own ClusterIP or set to \'None\' for a \'headless\' service (no loadbalancing).' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' -complete -c kubectl -n '__fish_seen_subcommand_from create service clusterip' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create service externalname" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l external-name -d 'External name of service' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' -complete -c kubectl -n '__fish_seen_subcommand_from create service externalname' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create service loadbalancer" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' -complete -c kubectl -n '__fish_seen_subcommand_from create service loadbalancer' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create service nodeport" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l node-port -d 'Port used to expose the service on each node in a cluster.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' -complete -c kubectl -n '__fish_seen_subcommand_from create service nodeport' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl create serviceaccount" command -complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from create serviceaccount' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from create sa' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl debug" command -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l arguments-only -d 'If specified, everything after -- will be passed to the new container as Args instead of Command.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l attach -d 'If true, wait for the container to start running, and then attach as if \'kubectl attach ...\' were called. Default false, unless \'-i/--stdin\' is set, in which case the default is true.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -s c -l container -d 'Container name to use for debug container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l copy-to -d 'Create a copy of the target Pod with this name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l env -d 'Environment variables to set in the container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l image -d 'Container image to use for debug container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l image-pull-policy -d 'The image pull policy for the container. If left empty, this value will not be specified by the client and defaulted by the server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l quiet -d 'If true, suppress informational messages.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l replace -d 'When used with \'--copy-to\', delete the original Pod.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l same-node -d 'When used with \'--copy-to\', schedule the copy of target Pod on the same node.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l set-image -d 'When used with \'--copy-to\', a list of name=image pairs for changing container images, similar to how \'kubectl set image\' works.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l share-processes -d 'When used with \'--copy-to\', enable process namespace sharing in the copy.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -s i -l stdin -d 'Keep stdin open on the container(s) in the pod, even if nothing is attached.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l target -d 'When using an ephemeral container, target processes in this container name.' -complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -s t -l tty -d 'Allocate a TTY for the debugging container.' - -# Completions for the "kubectl delete" command -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l all -d 'Delete all resources, including uninitialized ones, in the namespace of the specified resource types.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' -complete -c kubectl -n '__fish_seen_subcommand_from delete' -r -s f -l filename -d 'containing the resource to delete.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l ignore-not-found -d 'Treat "resource not found" as a successful delete. Defaults to "true" when --all is specified.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l now -d 'If true, resources are signaled for immediate shutdown (same as --grace-period=1).' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -s o -l output -d 'Output mode. Use "-o name" for shorter output (resource/name).' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l raw -d 'Raw URI to DELETE to the server. Uses the transport specified by the kubeconfig file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones.' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' -complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' - -# Completions for the "kubectl describe" command -complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' -complete -c kubectl -n '__fish_seen_subcommand_from describe' -r -s f -l filename -d 'Filename, directory, or URL to files containing the resource to describe' -complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -l show-events -d 'If true, display events related to the described object.' - -# Completions for the "kubectl diff" command -complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from diff' -r -s f -l filename -d 'Filename, directory, or URL to files contains the configuration to diff' -complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -l force-conflicts -d 'If true, server-side apply will force the changes against conflicts.' -complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -l server-side -d 'If true, apply runs in the server instead of the client.' - -# Completions for the "kubectl drain" command -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l delete-emptydir-data -d 'Continue even if there are pods using emptyDir (local data that will be deleted when the node is drained).' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l disable-eviction -d 'Force drain to use delete, even if eviction is supported. This will bypass checking PodDisruptionBudgets, use with caution.' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l force -d 'Continue even if there are pods not managed by a ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet.' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l grace-period -d 'Period of time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used.' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l ignore-daemonsets -d 'Ignore DaemonSet-managed pods.' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l pod-selector -d 'Label selector to filter pods on the node' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -s l -l selector -d 'Selector (label query) to filter on' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l skip-wait-for-delete-timeout -d 'If pod DeletionTimestamp older than N seconds, skip waiting for the pod. Seconds must be greater than 0 to skip.' -complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l timeout -d 'The length of time to wait before giving up, zero means infinite' - -# Completions for the "kubectl edit" command -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from edit' -r -s f -l filename -d 'Filename, directory, or URL to files to use to edit the resource' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l output-patch -d 'Output the patch if the resource is edited.' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from edit' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l windows-line-endings -d 'Defaults to the line ending native to your platform.' - -# Completions for the "kubectl exec" command -complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -r -s c -l container -d 'Container name. If omitted, the first container in the pod will be chosen' -complete -c kubectl -n '__fish_seen_subcommand_from exec' -r -s f -l filename -d 'to use to exec into the resource' -complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' -complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -s i -l stdin -d 'Pass stdin to the container' -complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -s t -l tty -d 'Stdin is a TTY' - -# Completions for the "kubectl explain" command -complete -c kubectl -f -n '__fish_seen_subcommand_from explain' -r -l api-version -d 'Get different explanations for particular API version (API group/version)' -complete -c kubectl -f -n '__fish_seen_subcommand_from explain' -l recursive -d 'Print the fields of fields (Currently only 1 level deep)' - -# Completions for the "kubectl expose" command -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l cluster-ip -d 'ClusterIP to be assigned to the service. Leave empty to auto-allocate, or set to \'None\' to create a headless service.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l external-ip -d 'Additional external IP address (not managed by Kubernetes) to accept for the service. If this IP is routed to a node, the service can be accessed by this IP in addition to its generated service IP.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from expose' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to expose a service' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l generator -d 'The name of the API generator to use. There are 2 generators: \'service/v1\' and \'service/v2\'. The only difference between them is that service port in v1 is named \'default\', while it is left unnamed in v2. Default is \'service/v2\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -s l -l labels -d 'Labels to apply to the service created by this call.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l load-balancer-ip -d 'IP to assign to the LoadBalancer. If empty, an ephemeral IP will be created and used (cloud-provider specific).' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l name -d 'The name for the newly created object.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l overrides -d 'An inline JSON override for the generated object. If this is non-empty, it is used to override the generated object. Requires that the object supply a valid apiVersion field.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l port -d 'The port that the service should serve on. Copied from the resource being exposed, if unspecified' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l protocol -d 'The network protocol for the service to be created. Default is \'TCP\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l selector -d 'A label selector to use for this service. Only equality-based selector requirements are supported. If empty (the default) infer the selector from the replication controller or replica set.)' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l session-affinity -d 'If non-empty, set the session affinity for the service to this; legal values: \'None\', \'ClientIP\'' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l target-port -d 'Name or number for the port on the container that the service should direct traffic to. Optional.' -complete -c kubectl -n '__fish_seen_subcommand_from expose' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l type -d 'Type for this service: ClusterIP, NodePort, LoadBalancer, or ExternalName. Default is \'ClusterIP\'.' - -# Completions for the "kubectl get" command -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l chunk-size -d 'Return large lists in chunks rather than all at once. Pass 0 to disable. This flag is beta and may change in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' -complete -c kubectl -n '__fish_seen_subcommand_from get' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l ignore-not-found -d 'If the requested object does not exist the command will return exit code 0.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s L -l label-columns -d 'Accepts a comma separated list of labels that are going to be presented as columns. Names are case-sensitive. You can also use multiple flag options like -L label1 -L label2...' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l no-headers -d 'When using the default or custom-column output format, don\'t print headers (default print headers).' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s o -l output -d 'Output format. One of: json|yaml|wide|name|custom-columns=...|custom-columns-file=...|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=... See custom columns [http://kubernetes.io/docs/user-guide/kubectl-overview/#custom-columns], golang template [http://golang.org/pkg/text/template/#pkg-overview] and jsonpath template [http://kubernetes.io/docs/user-guide/jsonpath].' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l output-watch-events -d 'Output watch event objects when --watch or --watch-only is used. Existing objects are output as initial ADDED events.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l raw -d 'Raw URI to request from the server. Uses the transport specified by the kubeconfig file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l server-print -d 'If true, have the server return the appropriate table output. Supports extension APIs and CRDs.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l show-kind -d 'If present, list the resource type for the requested object(s).' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l show-labels -d 'When printing, show all labels as the last column (default hide labels column)' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l sort-by -d 'If non-empty, sort list types using this field specification. The field specification is expressed as a JSONPath expression (e.g. \'{.metadata.name}\'). The field in the API resource specified by this JSONPath expression must be an integer or a string.' -complete -c kubectl -n '__fish_seen_subcommand_from get' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -s w -l watch -d 'After listing/getting the requested object, watch for changes. Uninitialized objects are excluded if no object name is provided.' -complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l watch-only -d 'Watch for changes to the requested object(s), without listing/getting first.' - -# Completions for the "kubectl label" command -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' -complete -c kubectl -n '__fish_seen_subcommand_from label' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update the labels' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l list -d 'If true, display the labels for a given resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l local -d 'If true, label will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l overwrite -d 'If true, allow labels to be overwritten, otherwise reject label updates that overwrite existing labels.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l resource-version -d 'If non-empty, the labels update will only succeed if this is the current resource-version for the object. Only valid when specifying a single resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2).' -complete -c kubectl -n '__fish_seen_subcommand_from label' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl logs" command -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l all-containers -d 'Get all containers\' logs in the pod(s).' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -s c -l container -d 'Print the logs of this container' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -s f -l follow -d 'Specify if the logs should be streamed.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l ignore-errors -d 'If watching / following pod logs, allow for any errors that occur to be non-fatal' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l insecure-skip-tls-verify-backend -d 'Skip verifying the identity of the kubelet that logs are requested from. In theory, an attacker could provide invalid log content back. You might want to use this if your kubelet serving certificates have expired.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l limit-bytes -d 'Maximum bytes of logs to return. Defaults to no limit.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l max-log-requests -d 'Specify maximum number of concurrent logs to follow when using by a selector. Defaults to 5.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l prefix -d 'Prefix each log line with the log source (pod name and container name)' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -s p -l previous -d 'If true, print the logs for the previous instance of the container in a pod if it exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -s l -l selector -d 'Selector (label query) to filter on.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l since -d 'Only return logs newer than a relative duration like 5s, 2m, or 3h. Defaults to all logs. Only one of since-time / since may be used.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l since-time -d 'Only return logs after a specific date (RFC3339). Defaults to all logs. Only one of since-time / since may be used.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l tail -d 'Lines of recent log file to display. Defaults to -1 with no selector, showing all log lines otherwise 10, if a selector is provided.' -complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l timestamps -d 'Include timestamps on each line in the log output' - -# Completions for the "kubectl patch" command -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from patch' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -l local -d 'If true, patch will operate on the content of the file, not the server-side resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -s p -l patch -d 'The patch to be applied to the resource JSON file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l patch-file -d 'A file containing a patch to be applied to the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from patch' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l type -d 'The type of patch being provided; one of [json merge strategic]' - -# Completions for the "kubectl plugin" command -function __fish_kubectl_get_plugin_commands - echo list\t'list all visible plugin executables on a user\'s PATH' -end - -function __fish_kubectl_get_plugin_commands_without_descriptions - __fish_kubectl_get_plugin_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command plugin; and not __fish_seen_subcommand_from (__fish_kubectl_get_plugin_commands_without_descriptions)" -a '(__fish_kubectl_get_plugin_commands)' - -# Completions for the "kubectl plugin list" command -complete -c kubectl -f -n '__fish_seen_subcommand_from plugin list' -l name-only -d 'If true, display only the binary name of each plugin, rather than its full path' - -# Completions for the "kubectl port-forward" command -complete -c kubectl -f -n '__fish_seen_subcommand_from port-forward' -r -l address -d 'Addresses to listen on (comma separated). Only accepts IP addresses or localhost as a value. When localhost is supplied, kubectl will try to bind on both 127.0.0.1 and ::1 and will fail if neither of these addresses are available to bind.' -complete -c kubectl -f -n '__fish_seen_subcommand_from port-forward' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' - -# Completions for the "kubectl proxy" command -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l accept-hosts -d 'Regular expression for hosts that the proxy should accept.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l accept-paths -d 'Regular expression for paths that the proxy should accept.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l address -d 'The IP address on which to serve on.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l api-prefix -d 'Prefix to serve the proxied API under.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -l disable-filter -d 'If true, disable request filtering in the proxy. This is dangerous, and can leave you vulnerable to XSRF attacks, when used with an accessible port.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l keepalive -d 'keepalive specifies the keep-alive period for an active network connection. Set to 0 to disable keepalive.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s p -l port -d 'The port on which to run the proxy. Set to 0 to pick a random port.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l reject-methods -d 'Regular expression for HTTP methods that the proxy should reject (example --reject-methods=\'POST,PUT,PATCH\'). ' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l reject-paths -d 'Regular expression for paths that the proxy should reject. Paths specified here will be rejected even accepted by --accept-paths.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s u -l unix-socket -d 'Unix socket on which to run the proxy.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s w -l www -d 'Also serve static files from the given directory under the specified prefix.' -complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s P -l www-prefix -d 'Prefix to serve static files under, if static file directory is specified.' - -# Completions for the "kubectl replace" command -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from replace' -r -s f -l filename -d 'to use to replace the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l raw -d 'Raw URI to PUT to the server. Uses the transport specified by the kubeconfig file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -n '__fish_seen_subcommand_from replace' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l validate -d 'If true, use a schema to validate the input before sending it' -complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' - -# Completions for the "kubectl rollout" command -function __fish_kubectl_get_rollout_commands - echo history\t'View rollout history' - echo pause\t'Mark the provided resource as paused' - echo restart\t'Restart a resource' - echo resume\t'Resume a paused resource' - echo status\t'Show the status of the rollout' - echo undo\t'Undo a previous rollout' -end - -function __fish_kubectl_get_rollout_commands_without_descriptions - __fish_kubectl_get_rollout_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command rollout; and not __fish_seen_subcommand_from (__fish_kubectl_get_rollout_commands_without_descriptions)" -a '(__fish_kubectl_get_rollout_commands)' - -# Completions for the "kubectl rollout history" command -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout history' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -r -l revision -d 'See the details, including podTemplate of the revision specified' -complete -c kubectl -n '__fish_seen_subcommand_from rollout history' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl rollout pause" command -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout pause' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout pause' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl rollout restart" command -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout restart' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout restart' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl rollout resume" command -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout resume' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout resume' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl rollout status" command -complete -c kubectl -n '__fish_seen_subcommand_from rollout status' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -r -l revision -d 'Pin to a specific revision for showing its status. Defaults to 0 (last revision).' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -r -l timeout -d 'The length of time to wait before ending watch, zero means never. Any other values should contain a corresponding time unit (e.g. 1s, 2m, 3h).' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -s w -l watch -d 'Watch the status of the rollout until it\'s done.' - -# Completions for the "kubectl rollout undo" command -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout undo' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from rollout undo' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -l to-revision -d 'The revision to rollback to. Default to 0 (last revision).' - -# Completions for the "kubectl run" command -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l annotations -d 'Annotations to apply to the pod.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l attach -d 'If true, wait for the Pod to start running, and then attach to the Pod as if \'kubectl attach ...\' were called. Default false, unless \'-i/--stdin\' is set, in which case the default is true. With \'--restart=Never\' the exit code of the container process is returned.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l command -d 'If true and extra arguments are present, use them as the \'command\' field in the container, rather than the \'args\' field which is the default.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l env -d 'Environment variables to set in the container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l expose -d 'If true, service is created for the container(s) which are run' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from run' -r -s f -l filename -d 'to use to replace the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l hostport -d 'The host port mapping for the container port. To demonstrate a single-machine container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l image -d 'The image for the container to run.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l image-pull-policy -d 'The image pull policy for the container. If left empty, this value will not be specified by the client and defaulted by the server' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -s l -l labels -d 'Comma separated labels to apply to the pod(s). Will override previous values.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l leave-stdin-open -d 'If the pod is started in interactive mode or with stdin, leave stdin open after the first attach completes. By default, stdin will be closed after the first attach completes.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l limits -d 'The resource requirement limits for this container. For example, \'cpu=200m,memory=512Mi\'. Note that server side components may assign limits depending on the server configuration, such as limit ranges.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l overrides -d 'An inline JSON override for the generated object. If this is non-empty, it is used to override the generated object. Requires that the object supply a valid apiVersion field.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l port -d 'The port that this container exposes.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l privileged -d 'If true, run the container in privileged mode.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l quiet -d 'If true, suppress prompt messages.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l requests -d 'The resource requirement requests for this container. For example, \'cpu=100m,memory=256Mi\'. Note that server side components may assign requests depending on the server configuration, such as limit ranges.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l restart -d 'The restart policy for this Pod. Legal values [Always, OnFailure, Never].' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l rm -d 'If true, delete resources created in this command for attached containers.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l serviceaccount -d 'Service account to set in the pod spec.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -s i -l stdin -d 'Keep stdin open on the container(s) in the pod, even if nothing is attached.' -complete -c kubectl -n '__fish_seen_subcommand_from run' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -s t -l tty -d 'Allocated a TTY for each container in the pod.' -complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' - -# Completions for the "kubectl scale" command -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -l all -d 'Select all resources in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l current-replicas -d 'Precondition for current size. Requires that the current size of the resource match this value in order to scale.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -n '__fish_seen_subcommand_from scale' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to set a new size' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l replicas -d 'The new desired number of replicas. Required.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l resource-version -d 'Precondition for resource version. Requires that the current resource version match this value in order to scale.' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -n '__fish_seen_subcommand_from scale' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l timeout -d 'The length of time to wait before giving up on a scale operation, zero means don\'t wait. Any other values should contain a corresponding time unit (e.g. 1s, 2m, 3h).' - -# Completions for the "kubectl set" command -function __fish_kubectl_get_set_commands - echo env\t'Update environment variables on a pod template' - echo image\t'Update image of a pod template' - echo resources\t'Update resource requests/limits on objects with pod templates' - echo selector\t'Set the selector on a resource' - echo serviceaccount\t'Update ServiceAccount of a resource' - echo sa\t'Update ServiceAccount of a resource' - echo subject\t'Update User, Group or ServiceAccount in a RoleBinding/ClusterRoleBinding' -end - -function __fish_kubectl_get_set_commands_without_descriptions - __fish_kubectl_get_set_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command set; and not __fish_seen_subcommand_from (__fish_kubectl_get_set_commands_without_descriptions)" -a '(__fish_kubectl_get_set_commands)' - -# Completions for the "kubectl set env" command -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l all -d 'If true, select all resources in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s c -l containers -d 'The names of containers in the selected pod templates to change - may use wildcards' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s e -l env -d 'Specify a key-value pair for an environment variable to set into each container.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from set env' -r -s f -l filename -d 'Filename, directory, or URL to files the resource to update the env' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l from -d 'The name of a resource from which to inject environment variables' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l keys -d 'Comma-separated list of keys to import from specified resource' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l list -d 'If true, display the environment and any changes in the standard format. this flag will removed when we have kubectl view env.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l local -d 'If true, set env will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l overwrite -d 'If true, allow environment to be overwritten, otherwise reject updates that overwrite existing environment.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l prefix -d 'Prefix to append to variable names' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l resolve -d 'If true, show secret or configmap references when listing variables' -complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s l -l selector -d 'Selector (label query) to filter on' -complete -c kubectl -n '__fish_seen_subcommand_from set env' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl set image" command -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from set image' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l local -d 'If true, set image will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -n '__fish_seen_subcommand_from set image' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl set resources" command -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s c -l containers -d 'The names of containers in the selected pod templates to change, all containers are selected by default - may use wildcards' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from set resources' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l limits -d 'The resource requirement requests for this container. For example, \'cpu=100m,memory=256Mi\'. Note that server side components may assign requests depending on the server configuration, such as limit ranges.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l local -d 'If true, set resources will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l requests -d 'The resource requirement requests for this container. For example, \'cpu=100m,memory=256Mi\'. Note that server side components may assign requests depending on the server configuration, such as limit ranges.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones,supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -n '__fish_seen_subcommand_from set resources' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl set selector" command -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l all -d 'Select all resources in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from set selector' -r -s f -l filename -d 'identifying the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l local -d 'If true, annotation will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -l resource-version -d 'If non-empty, the selectors update will only succeed if this is the current resource-version for the object. Only valid when specifying a single resource.' -complete -c kubectl -n '__fish_seen_subcommand_from set selector' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl set serviceaccount" command -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from set serviceaccount' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -n '__fish_seen_subcommand_from set sa' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l local -d 'If true, set serviceaccount will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l local -d 'If true, set serviceaccount will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -n '__fish_seen_subcommand_from set serviceaccount' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -n '__fish_seen_subcommand_from set sa' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl set subject" command -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -n '__fish_seen_subcommand_from set subject' -r -s f -l filename -d 'Filename, directory, or URL to files the resource to update the subjects' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l group -d 'Groups to bind to the role' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -l local -d 'If true, set subject will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l serviceaccount -d 'Service accounts to bind to the role' -complete -c kubectl -n '__fish_seen_subcommand_from set subject' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' - -# Completions for the "kubectl taint" command -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l all -d 'Select all nodes in the cluster' -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -l field-manager -d 'Name of the manager used to track field ownership.' -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l overwrite -d 'If true, allow taints to be overwritten, otherwise reject taint updates that overwrite existing taints.' -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -n '__fish_seen_subcommand_from taint' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l validate -d 'If true, use a schema to validate the input before sending it' - -# Completions for the "kubectl top" command -function __fish_kubectl_get_top_commands - echo node\t'Display Resource (CPU/Memory/Storage) usage of nodes' - echo nodes\t'Display Resource (CPU/Memory/Storage) usage of nodes' - echo no\t'Display Resource (CPU/Memory/Storage) usage of nodes' - echo pod\t'Display Resource (CPU/Memory/Storage) usage of pods' - echo pods\t'Display Resource (CPU/Memory/Storage) usage of pods' - echo po\t'Display Resource (CPU/Memory/Storage) usage of pods' -end - -function __fish_kubectl_get_top_commands_without_descriptions - __fish_kubectl_get_top_commands | string replace -r '\t.*$' '' -end - -complete -c kubectl -f -n "__fish_kubectl_using_command top; and not __fish_seen_subcommand_from (__fish_kubectl_get_top_commands_without_descriptions)" -a '(__fish_kubectl_get_top_commands)' - -# Completions for the "kubectl top node" command -complete -c kubectl -f -n '__fish_seen_subcommand_from top node' -l no-headers -d 'If present, print output without headers' -complete -c kubectl -f -n '__fish_seen_subcommand_from top nodes' -l no-headers -d 'If present, print output without headers' -complete -c kubectl -f -n '__fish_seen_subcommand_from top no' -l no-headers -d 'If present, print output without headers' -complete -c kubectl -f -n '__fish_seen_subcommand_from top node' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from top nodes' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from top no' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from top node' -r -l sort-by -d 'If non-empty, sort nodes list using specified field. The field can be either \'cpu\' or \'memory\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top nodes' -r -l sort-by -d 'If non-empty, sort nodes list using specified field. The field can be either \'cpu\' or \'memory\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top no' -r -l sort-by -d 'If non-empty, sort nodes list using specified field. The field can be either \'cpu\' or \'memory\'.' - -# Completions for the "kubectl top pod" command -complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -l containers -d 'If present, print usage of containers within a pod.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -l containers -d 'If present, print usage of containers within a pod.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -l containers -d 'If present, print usage of containers within a pod.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -l no-headers -d 'If present, print output without headers.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -l no-headers -d 'If present, print output without headers.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -l no-headers -d 'If present, print output without headers.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -r -l sort-by -d 'If non-empty, sort pods list using specified field. The field can be either \'cpu\' or \'memory\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -r -l sort-by -d 'If non-empty, sort pods list using specified field. The field can be either \'cpu\' or \'memory\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -r -l sort-by -d 'If non-empty, sort pods list using specified field. The field can be either \'cpu\' or \'memory\'.' - -# Completions for the "kubectl uncordon" command -complete -c kubectl -f -n '__fish_seen_subcommand_from uncordon' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from uncordon' -r -s l -l selector -d 'Selector (label query) to filter on' - -# Completions for the "kubectl version" command -complete -c kubectl -f -n '__fish_seen_subcommand_from version' -l client -d 'If true, shows client version only (no server required).' -complete -c kubectl -f -n '__fish_seen_subcommand_from version' -r -s o -l output -d 'One of \'yaml\' or \'json\'.' -complete -c kubectl -f -n '__fish_seen_subcommand_from version' -l short -d 'If true, print just the version number.' - -# Completions for the "kubectl wait" command -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -l all -d 'Select all resources in the namespace of the specified resource types' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' -complete -c kubectl -n '__fish_seen_subcommand_from wait' -r -s f -l filename -d 'identifying the resource.' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -l for -d 'The condition to wait on: [delete|condition=condition-name].' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -l local -d 'If true, annotation will NOT contact api-server but run locally.' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' -complete -c kubectl -n '__fish_seen_subcommand_from wait' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' -complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -l timeout -d 'The length of time to wait before giving up. Zero means check once and don\'t wait, negative means wait for a week.' diff --git a/.config/fish/completions/nc.fish b/.config/fish/completions/nc.fish deleted file mode 100644 index 4dc5f18..0000000 --- a/.config/fish/completions/nc.fish +++ /dev/null @@ -1,12 +0,0 @@ -# There a several different implementations of netcat. -# Try to figure out which is the current used one -# and load the right set of completions. - -set -l flavor -if string match -rq -- '^OpenBSD netcat' (nc -h 2>&1)[1] - set flavor nc.openbsd -else - set flavor (basename (realpath (command -v nc))) -end - -__fish_complete_netcat nc $flavor diff --git a/.config/fish/completions/nc.openbsd.fish b/.config/fish/completions/nc.openbsd.fish deleted file mode 100644 index f93163c..0000000 --- a/.config/fish/completions/nc.openbsd.fish +++ /dev/null @@ -1 +0,0 @@ -__fish_complete_netcat nc.openbsd diff --git a/.config/fish/completions/nc.traditional.fish b/.config/fish/completions/nc.traditional.fish deleted file mode 100644 index 8d0c10f..0000000 --- a/.config/fish/completions/nc.traditional.fish +++ /dev/null @@ -1 +0,0 @@ -__fish_complete_netcat nc.traditional diff --git a/.config/fish/completions/ncat.fish b/.config/fish/completions/ncat.fish deleted file mode 100644 index 186b6bf..0000000 --- a/.config/fish/completions/ncat.fish +++ /dev/null @@ -1,74 +0,0 @@ -# Completions for ncat (https://www.nmap.org) - -complete -c ncat -f -a "(__fish_print_hostnames)" - -# PROTOCOL OPTIONS -complete -c ncat -s 4 -d "IPv4 only" -complete -c ncat -s 6 -d "IPv6 only" -complete -c ncat -s U -l unixsock -d "Use Unix domain sockets" -complete -c ncat -s u -l udp -d "Use UDP" -complete -c ncat -l sctp -d "Use SCTP" - -# CONNECT MODE OPTIONS -complete -c ncat -s g -x -d "Loose source routing" -complete -c ncat -s G -x -d "Set source routing pointer" -complete -c ncat -s p -l source-port -x -d "Specify source port" -complete -c ncat -s s -l source -x -d "Specify source address" - -# LISTEN MODE OPTIONS -complete -c ncat -s l -l listen -d "Listen for connections" -complete -c ncat -s m -l max-conns -x -d "Specify maximum number of connections" -complete -c ncat -s k -l keep-open -d "Accept multiple connections" -complete -c ncat -l broker -d "Connection brokering" -complete -c ncat -l chat -d "Ad-hoc \"chat server\"" - -# SSL OPTIONS -complete -c ncat -l ssl -d "Use SSL" -complete -c ncat -l ssl-verify -d "Verify server certificates" -complete -c ncat -l ssl-cert -r -d "Specify SSL certificate" -complete -c ncat -l ssl-key -r -d "Specify SSL private key" -complete -c ncat -l ssl-trustfile -r -d "List trusted certificates" -function __fish_complete_openssl_ciphers - openssl ciphers -s -stdname | string replace -r '^([^ ]*) - ([^ ]*).*$' '$2\t$1' - for cs in COMPLEMENTOFDEFAULT ALL COMPLEMENTOFALL HIGH MEDIUM LOW eNULL NULL aNULL kRSA aRSA RSA kDHr kDHd kDH kDHE kEDH DH DHE EDH ADH kEECDH kECDHE ECDH ECDHE EECDH AECDH aDSS DSS aDH aECDSA ECDSA TLSv1.2 TLSv1.0 SSLv3 AES128 AES256 AES AESGCM AESCCM AESCCM8 ARIA128 ARIA256 ARIA CAMELLIA128 CAMELLIA256 CAMELLIA CHACHA20 3DES DES RC4 RC2 IDEA SEED MD5 SHA1 SHA SHA256 SHA384 aGOST aGOST01 kGOST GOST94 GOST89MAC PSK kPSK kECDHEPSK kDHEPSK kRSAPSK aPSK SUITEB128 SUITEB128ONLY SUITEB192 - printf "%s\tCipher String\n" $cs - end -end -complete -c ncat -l ssl-ciphers -x -a "(__fish_complete_list : __fish_complete_openssl_ciphers)" -d "Specify SSL ciphersuites" -complete -c ncat -l ssl-alpn -x -d "Specify ALPN protocol list" - -# PROXY OPTIONS -complete -c ncat -l proxy -x -d "Specify proxy address" -complete -c ncat -l proxy-type -x -d "Specify proxy protocol" -complete -c ncat -l proxy-auth -x -d "Specify proxy credentials" - -# COMMAND EXECUTION OPTIONS -complete -c ncat -s e -l exec -r -d "Execute command" -complete -c ncat -s c -l sh-exec -r -d "Execute command via sh" -complete -c ncat -l lua-exec -r -d "Execute a .lua script" - -# ACCESS CONTROL OPTIONS -complete -c ncat -l allow -x -a "(__fish_print_hostnames)" -d "Allow connections" -complete -c ncat -l allowfile -r -d "Allow connections from file" -complete -c ncat -l deny -x -a "(__fish_print_hostnames)" -d "Deny connections" -complete -c ncat -l denyfile -r -d "Deny connections from file" - -# TIMING OPTIONS -complete -c ncat -s d -l delay -x -d "Specify line delay" -complete -c ncat -s i -l idle-timeout -x -d "Specify idle timeout" -complete -c ncat -s w -l wait -x -d "Specify connect timeout" - -# OUTPUT OPTIONS -complete -c ncat -s o -l output -r -d "Save session data" -complete -c ncat -s x -l hex-dump -r -d "Save session data in hex" -complete -c ncat -l append-output -d "Append output" -complete -c ncat -s v -l verbose -d "Be verbose" - -# MISC OPTIONS -complete -c ncat -s C -l crlf -d "Use CRLF as EOL" -complete -c ncat -s h -l help -d "Help screen" -complete -c ncat -l -recv-only -d "Only receive data" -complete -c ncat -l send-only -d "Only send data" -complete -c ncat -l no-shutdown -d "Do not shutdown into half-duplex mode" -complete -c ncat -s t -l telnet -d "Answer Telnet negotiations" -complete -c ncat -l version -d "Display version" diff --git a/.config/fish/completions/netcat.fish b/.config/fish/completions/netcat.fish deleted file mode 100644 index a33e8e2..0000000 --- a/.config/fish/completions/netcat.fish +++ /dev/null @@ -1,12 +0,0 @@ -# There a several different implementations of netcat. -# Try to figure out which is the current used one -# and load the right set of completions. - -set -l flavor -if string match -rq -- '^OpenBSD netcat' (netcat -h 2>&1)[1] - set flavor nc.openbsd -else - set flavor (basename (realpath (command -v netcat))) -end - -__fish_complete_netcat netcat $flavor diff --git a/.config/fish/conf.d/key-bindings.fish b/.config/fish/conf.d/key-bindings.fish deleted file mode 100644 index 36b3aa3..0000000 --- a/.config/fish/conf.d/key-bindings.fish +++ /dev/null @@ -1,172 +0,0 @@ -# ____ ____ -# / __/___ / __/ -# / /_/_ / / /_ -# / __/ / /_/ __/ -# /_/ /___/_/ key-bindings.fish -# -# - $FZF_TMUX_OPTS -# - $FZF_CTRL_T_COMMAND -# - $FZF_CTRL_T_OPTS -# - $FZF_CTRL_R_OPTS -# - $FZF_ALT_C_COMMAND -# - $FZF_ALT_C_OPTS - -# Key bindings -# ------------ -function fzf_key_bindings - - # Store current token in $dir as root for the 'find' command - function fzf-file-widget -d "List files and folders" - set -l commandline (__fzf_parse_commandline) - set -l dir $commandline[1] - set -l fzf_query $commandline[2] - set -l prefix $commandline[3] - - # "-path \$dir'*/\\.*'" matches hidden files/folders inside $dir but not - # $dir itself, even if hidden. - test -n "$FZF_CTRL_T_COMMAND"; or set -l FZF_CTRL_T_COMMAND " - command find -L \$dir -mindepth 1 \\( -path \$dir'*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' \\) -prune \ - -o -type f -print \ - -o -type d -print \ - -o -type l -print 2> /dev/null | sed 's@^\./@@'" - - test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% - begin - set -lx FZF_DEFAULT_OPTS "--height $FZF_TMUX_HEIGHT --reverse --bind=ctrl-z:ignore $FZF_DEFAULT_OPTS $FZF_CTRL_T_OPTS" - eval "$FZF_CTRL_T_COMMAND | "(__fzfcmd)' -m --query "'$fzf_query'"' | while read -l r; set result $result $r; end - end - if [ -z "$result" ] - commandline -f repaint - return - else - # Remove last token from commandline. - commandline -t "" - end - for i in $result - commandline -it -- $prefix - commandline -it -- (string escape $i) - commandline -it -- ' ' - end - commandline -f repaint - end - - function fzf-history-widget -d "Show command history" - test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% - begin - set -lx FZF_DEFAULT_OPTS "--height $FZF_TMUX_HEIGHT $FZF_DEFAULT_OPTS --tiebreak=index --bind=ctrl-r:toggle-sort,ctrl-z:ignore $FZF_CTRL_R_OPTS +m" - - set -l FISH_MAJOR (echo $version | cut -f1 -d.) - set -l FISH_MINOR (echo $version | cut -f2 -d.) - - # history's -z flag is needed for multi-line support. - # history's -z flag was added in fish 2.4.0, so don't use it for versions - # before 2.4.0. - if [ "$FISH_MAJOR" -gt 2 -o \( "$FISH_MAJOR" -eq 2 -a "$FISH_MINOR" -ge 4 \) ]; - history -z | eval (__fzfcmd) --read0 --print0 -q '(commandline)' | read -lz result - and commandline -- $result - else - history | eval (__fzfcmd) -q '(commandline)' | read -l result - and commandline -- $result - end - end - commandline -f repaint - end - - function fzf-cd-widget -d "Change directory" - set -l commandline (__fzf_parse_commandline) - set -l dir $commandline[1] - set -l fzf_query $commandline[2] - set -l prefix $commandline[3] - - test -n "$FZF_ALT_C_COMMAND"; or set -l FZF_ALT_C_COMMAND " - command find -L \$dir -mindepth 1 \\( -path \$dir'*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' \\) -prune \ - -o -type d -print 2> /dev/null | sed 's@^\./@@'" - test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% - begin - set -lx FZF_DEFAULT_OPTS "--height $FZF_TMUX_HEIGHT --reverse --bind=ctrl-z:ignore $FZF_DEFAULT_OPTS $FZF_ALT_C_OPTS" - eval "$FZF_ALT_C_COMMAND | "(__fzfcmd)' +m --query "'$fzf_query'"' | read -l result - - if [ -n "$result" ] - builtin cd -- $result - - # Remove last token from commandline. - commandline -t "" - commandline -it -- $prefix - end - end - - commandline -f repaint - end - - function __fzfcmd - test -n "$FZF_TMUX"; or set FZF_TMUX 0 - test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% - if [ -n "$FZF_TMUX_OPTS" ] - echo "fzf-tmux $FZF_TMUX_OPTS -- " - else if [ $FZF_TMUX -eq 1 ] - echo "fzf-tmux -d$FZF_TMUX_HEIGHT -- " - else - echo "fzf" - end - end - - bind \ct fzf-file-widget - bind \cr fzf-history-widget - bind \ec fzf-cd-widget - - if bind -M insert > /dev/null 2>&1 - bind -M insert \ct fzf-file-widget - bind -M insert \cr fzf-history-widget - bind -M insert \ec fzf-cd-widget - end - - function __fzf_parse_commandline -d 'Parse the current command line token and return split of existing filepath, fzf query, and optional -option= prefix' - set -l commandline (commandline -t) - - # strip -option= from token if present - set -l prefix (string match -r -- '^-[^\s=]+=' $commandline) - set commandline (string replace -- "$prefix" '' $commandline) - - # eval is used to do shell expansion on paths - eval set commandline $commandline - - if [ -z $commandline ] - # Default to current directory with no --query - set dir '.' - set fzf_query '' - else - set dir (__fzf_get_dir $commandline) - - if [ "$dir" = "." -a (string sub -l 1 -- $commandline) != '.' ] - # if $dir is "." but commandline is not a relative path, this means no file path found - set fzf_query $commandline - else - # Also remove trailing slash after dir, to "split" input properly - set fzf_query (string replace -r "^$dir/?" -- '' "$commandline") - end - end - - echo $dir - echo $fzf_query - echo $prefix - end - - function __fzf_get_dir -d 'Find the longest existing filepath from input string' - set dir $argv - - # Strip all trailing slashes. Ignore if $dir is root dir (/) - if [ (string length -- $dir) -gt 1 ] - set dir (string replace -r '/*$' -- '' $dir) - end - - # Iteratively check if dir exists and strip tail end of path - while [ ! -d "$dir" ] - # If path is absolute, this can keep going until ends up at / - # If path is relative, this can keep going until entire input is consumed, dirname returns "." - set dir (dirname -- "$dir") - end - - echo $dir - end - -end diff --git a/.config/fish/config.fish b/.config/fish/config.fish deleted file mode 100644 index 85928c5..0000000 --- a/.config/fish/config.fish +++ /dev/null @@ -1,28 +0,0 @@ -set PATH ~/bin ~/.local/bin ~/.go/bin ~/.cargo/bin /bin /sbin /usr/local/bin /usr/local/sbin /usr/bin /usr/sbin ~/.cabal/bin ~/.ghcup/bin /usr/lib/go/bin ~/.gem/ruby/1.9.1/bin ~/.rye/shims $PATH - -if command -vq flatpak - set -ga fish_user_paths ~/.local/share/flatpak/exports/bin /var/lib/flatpak/exports/bin - set -gx --path XDG_DATA_DIRS /usr/local/share/ /usr/share/ ~/.local/share/flatpak/exports/share - for install_dir in (flatpak --installations) - set -gxa XDG_DATA_DIRS $install_dir/exports/share - end -end - -set fish_greeting "" -set EDITOR vi -set -x GOPATH ~/.go - -if test -e $HOME/.asdf/asdf.fish - . ~/.asdf/asdf.fish -end - -if test -e $HOME/.config/fish/work.fish - . ~/.config/fish/work.fish -end - -. ~/.config/fish/fish_aliases.fish - -# The next line updates PATH for the Google Cloud SDK. -if [ -f '/home/barak/local/google-cloud-sdk/path.fish.inc' ]; . '/home/barak/local/google-cloud-sdk/path.fish.inc'; end - -set GOOGLE_APPLICATION_CREDENTIALS "/home/barak/.memtoken.json" diff --git a/.config/fish/fish_aliases.fish b/.config/fish/fish_aliases.fish deleted file mode 100644 index 1004a49..0000000 --- a/.config/fish/fish_aliases.fish +++ /dev/null @@ -1,55 +0,0 @@ -alias :e='vi' -alias t='task' -alias em='emacs' -alias grep="grep --color=auto" -#alias screen="screen -R" -alias dvtm="dvtm -m \"^w\"" -alias tm="tmux -2 attach" -alias ppjson="python -mjson.tool" -#alias tmux-pwn='tmux list-clients | sed "s|^\(/dev/ttys[0-9]\+\).*\[\([0-9]\+x[0-9]\+\).*$|\2 \1|" | sort -r -n | tail -n +2 | cut -d " " -f 2 | xargs -n 1 tmux detach-client -t' - -# I can never remember the xclip options, so: -alias setclip='xclip -selection c' -alias getclip='xclip -selection clipboard -o' - -#machines -alias puck="ssh -D 7777 -Y barak@puck.barakmich.com" -alias hero="ssh -D 7777 -Y barak@hero.barakmich.com" -alias hermia="ssh -Y barak@hermia.home.0b100.net" - -#Cosmetic/useful -#alias naim="naim --noscreen" -alias wallall="wallall -p" -#alias cal="cal -3" -#alias google='surfraw google' -alias hd='od -Ax -tx1z -v' -alias gcal='gcalcli' - -#Sysdadmin -alias aptsearch="aptitude search" -alias pki="pk i" -alias pks="pk s" -alias openports="lsof -i 4 -n" -alias saupdate="sa-learn --mbox --spam ~/mail/spam" -alias pshosers="ps axeo pcpu,pid,user,command | sort -k 1 -r | head -11 " -alias memhosers="ps axeo size,pcpu,pid,user,command | sort -n -r | head -11 " -alias psx="ps auxwww | grep $1" -alias blaze="bazel" -alias pb='curl -F c=@- https://busb.us/' -alias pburl='curl -F c=@- https://busb.us/u' - -#work -alias totemp="cd `pwd | sed 's/controllers/templates/'`" -alias tocont="cd `pwd | sed 's/templates/controllers/'`" - -alias kubecat="awk 'FNR==1 && NR!=1 {print \"---\"}{print}'" - -#Some orly aliases -alias yarly="orly -y" -alias nowai="orly -n" -alias srsly="orly -s" - -#Funnies -alias whothefuckis='finger' -alias whoami="echo 24601" -alias yeet="rm -rf" diff --git a/.config/fish/fish_variables b/.config/fish/fish_variables deleted file mode 100644 index f1b6a56..0000000 --- a/.config/fish/fish_variables +++ /dev/null @@ -1,31 +0,0 @@ -# This file contains fish universal variable definitions. -# VERSION: 3.0 -SETUVAR __fish_initialized:3400 -SETUVAR fish_color_autosuggestion:555\x1ebrblack -SETUVAR fish_color_cancel:\x2dr -SETUVAR fish_color_command:005fd7 -SETUVAR fish_color_comment:990000 -SETUVAR fish_color_cwd:green -SETUVAR fish_color_cwd_root:red -SETUVAR fish_color_end:009900 -SETUVAR fish_color_error:ff0000 -SETUVAR fish_color_escape:00a6b2 -SETUVAR fish_color_history_current:\x2d\x2dbold -SETUVAR fish_color_host:normal -SETUVAR fish_color_host_remote:yellow -SETUVAR fish_color_normal:normal -SETUVAR fish_color_operator:00a6b2 -SETUVAR fish_color_param:00afff -SETUVAR fish_color_quote:999900 -SETUVAR fish_color_redirection:00afff -SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack -SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack -SETUVAR fish_color_status:red -SETUVAR fish_color_user:brgreen -SETUVAR fish_color_valid_path:\x2d\x2dunderline -SETUVAR fish_key_bindings:fish_default_key_bindings -SETUVAR fish_pager_color_completion:\x1d -SETUVAR fish_pager_color_description:B3A06D\x1eyellow -SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline -SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan -SETUVAR fish_pager_color_selected_background:\x2dr diff --git a/.config/fish/functions/fish_prompt.fish b/.config/fish/functions/fish_prompt.fish deleted file mode 100644 index f84cebf..0000000 --- a/.config/fish/functions/fish_prompt.fish +++ /dev/null @@ -1,44 +0,0 @@ -function fish_prompt --description 'Write out the prompt' - - # Just calculate these once, to save a few cycles when displaying the prompt - if not set -q __fish_prompt_hostname - set -g __fish_prompt_hostname (hostname|cut -d . -f 1) - end - - if not set -q __fish_prompt_normal - set -g __fish_prompt_normal (set_color normal) - end - - switch $USER - - case root - - if not set -q __fish_prompt_cwd - if set -q fish_color_cwd_root - set -g __fish_prompt_cwd (set_color $fish_color_cwd_root) - else - set -g __fish_prompt_cwd (set_color $fish_color_cwd) - end - end - - echo -n -s (set_color red) "$USER" (set_color normal) @ (set_color green) "$__fish_prompt_hostname" (set_color normal) ':[' "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal" ']' - echo - echo -n '# ' - - case '*' - - if not set -q __fish_prompt_cwd - set -g __fish_prompt_cwd (set_color $fish_color_cwd) - end - - - if set -q VIRTUAL_ENV - echo -n -s (set_color -b blue white) "(" (basename "$VIRTUAL_ENV") ")" (set_color normal) " " - end - - echo -n -s (set_color blue) "(" (set_color yellow) (date "+%H:%M") (set_color blue) ")[" (set_color green) "$USER@$__fish_prompt_hostname " (set_color cyan) "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal" (set_color blue) ']' - echo - echo -n '$ ' - - end -end diff --git a/.config/fish/functions/fish_right_prompt.fish b/.config/fish/functions/fish_right_prompt.fish deleted file mode 100644 index 25b3eab..0000000 --- a/.config/fish/functions/fish_right_prompt.fish +++ /dev/null @@ -1 +0,0 @@ -function fish_right_prompt; end diff --git a/.config/fish/functions/fish_user_key_bindings.fish b/.config/fish/functions/fish_user_key_bindings.fish deleted file mode 100644 index cb9f03e..0000000 --- a/.config/fish/functions/fish_user_key_bindings.fish +++ /dev/null @@ -1,7 +0,0 @@ -function fish_user_key_bindings - fzf_key_bindings -end - -function fsize - sed -i "s/size:.*/size: $argv/" $HOME/.config/alacritty/alacritty.yml -end diff --git a/.config/hexchat/addons/mymsg.py b/.config/hexchat/addons/mymsg.py deleted file mode 100644 index 70d8d4a..0000000 --- a/.config/hexchat/addons/mymsg.py +++ /dev/null @@ -1,37 +0,0 @@ -import hexchat - -__module_name__ = 'MyMessages' -__module_author__ = 'TingPing' -__module_version__ = '3' -__module_description__ = 'Properly show your messages in ZNC' - -def privmsg_cb(word, word_eol, userdata, attrs): - # We only care about private messages, HexChat handles the rest now. - if word[2][0] == '#': - return - - mynick = hexchat.get_info('nick') - sender = word[0].split('!')[0][1:] - recipient = word[2] - network = hexchat.get_info('network') - msg = word_eol[3][1:] - - if hexchat.nickcmp(sender, mynick) == 0 and hexchat.nickcmp(recipient, mynick) != 0: - hexchat.command('query -nofocus {}'.format(recipient)) - ctx = hexchat.find_context(network, recipient) - - if '\001ACTION' in msg: - for repl in ('\001ACTION', '\001'): - msg = msg.replace(repl, '') - ctx.emit_print('Your Action', mynick, msg.strip(), time=attrs.time) - else: - ctx.emit_print('Your Message', mynick, msg, time=attrs.time) - - return hexchat.EAT_ALL - -def caps_cb(word, word_eol, userdata): - if "znc.in/self-message" in word[1]: - hexchat.command("cap req znc.in/self-message") - -hexchat.hook_server_attrs('PRIVMSG', privmsg_cb) -hexchat.hook_print('Capability List', caps_cb) diff --git a/.config/hexchat/addons/notify.py b/.config/hexchat/addons/notify.py deleted file mode 100644 index fea1a35..0000000 --- a/.config/hexchat/addons/notify.py +++ /dev/null @@ -1,41 +0,0 @@ -__module_name__ = 'Notify' -__module_description__ = 'Sends a notification on highlight/notice/pm' -__module_version__ = '1.0' - -import os -import hexchat - - -def notice_callback(word, word_eol, userdata): - if hexchat.get_info("win_status") == 'active': - return - os.system( - hexchat.strip('notify-send \"Notice from %s\" \"%s\"' % - (word[0], word[1]))) - return hexchat.EAT_NONE - - -def pm_callback(word, word_eol, userdata): - if hexchat.get_info("win_status") == 'active': - return - os.system( - hexchat.strip('notify-send \"PM from %s\" \"%s\"' % - (word[0], word[1]))) - return hexchat.EAT_NONE - - -def highlight_callback(word, word_eol, userdata): - if hexchat.get_info("win_status") == 'active': - return - os.system( - hexchat.strip('notify-send \"Highlight from %s\" \"%s\"' % - (word[0], word[1]))) - return hexchat.EAT_NONE - -hexchat.hook_print("Channel Msg Hilight", highlight_callback) -hexchat.hook_print("Channel Action Hilight", highlight_callback) -hexchat.hook_print("Notice", notice_callback) -hexchat.hook_print("Private Action", pm_callback) -hexchat.hook_print("Private Message", pm_callback) -hexchat.hook_print("Private Action to Dialog", pm_callback) -hexchat.hook_print("Private Message to Dialog", pm_callback) diff --git a/.config/iosevka-build/.gitignore b/.config/iosevka-build/.gitignore deleted file mode 100644 index 849ddff..0000000 --- a/.config/iosevka-build/.gitignore +++ /dev/null @@ -1 +0,0 @@ -dist/ diff --git a/.config/iosevka-build/private-build-plans.toml b/.config/iosevka-build/private-build-plans.toml deleted file mode 100644 index e65fe70..0000000 --- a/.config/iosevka-build/private-build-plans.toml +++ /dev/null @@ -1,121 +0,0 @@ -[buildPlans.IosevkaBerkeley] -family = "Iosevka Berkeley" -spacing = "fixed" -serifs = "sans" -noCvSs = true -exportGlyphNames = false - -[buildPlans.IosevkaBerkeley.variants.design] -capital-g = "toothless-rounded-serifless-hooked" -g = "double-storey" -t = "flat-hook" -y = "straight-turn-serifless" -eszet = "sulzbacher-descending-serifless" -capital-lambda = "curly-top-serifed" -lower-lambda = "tailed-turn" -lower-chi = "semi-chancery-straight" -zero = "dotted" -one = "no-base" -four = "closed-serifless" -six = "open-contour" -eight = "two-circles" -asterisk = "hex-high" -paren = "large-contour" -brace = "straight" -at = "fourfold" -percent = "rings-continuous-slash" -bar = "force-upright" -question = "corner" - -[buildPlans.IosevkaBerkeley.variants.italic] -capital-a = "curly-serifless" -capital-b = "standard-unilateral-serifed" -capital-d = "standard-unilateral-serifed" -capital-f = "top-left-serifed" -capital-g = "toothed-serifless-hooked" -capital-i = "short-serifed" -capital-j = "serifed-both-sides" -capital-m = "flat-bottom-serifless" -capital-p = "closed-motion-serifed" -capital-q = "crossing-curly-tailed" -capital-r = "curly-serifless" -capital-u = "tailed-motion-serifed" -capital-v = "curly-serifless" -capital-w = "curly-serifless" -capital-x = "curly-serifless" -capital-y = "curly-serifless" -capital-z = "curly-serifless-with-horizontal-crossbar" -a = "double-storey-tailed" -d = "toothed-serifed" -f = "flat-hook-serifless" -g = "single-storey-serifed" -h = "straight-top-left-serifed" -k = "curly-serifless" -m = "top-left-serifed" -n = "straight-top-left-serifed" -p = "eared-serifless" -q = "straight-serifless" -u = "tailed-motion-serifed" -v = "curly-serifless" -w = "curly-serifless" -x = "curly-serifless" -y = "cursive-serifless" -z = "curly-serifless-with-horizontal-crossbar" -one = "no-base-long-top-serif" -two = "straight-neck-serifless" -seven = "straight-serifless-crossbar" -nine = "open-contour" -paren = "normal" - -[buildPlans.IosevkaBerkeley.variants.oblique] -paren = "normal" - -[buildPlans.IosevkaBerkeley.weights.ExtraLight] -shape = 200 -menu = 200 -css = 200 - -[buildPlans.IosevkaBerkeley.weights.Light] -shape = 300 -menu = 300 -css = 300 - -[buildPlans.IosevkaBerkeley.weights.Regular] -shape = 400 -menu = 400 -css = 400 - -[buildPlans.IosevkaBerkeley.weights.Medium] -shape = 500 -menu = 500 -css = 500 - -[buildPlans.IosevkaBerkeley.weights.SemiBold] -shape = 600 -menu = 600 -css = 600 - -[buildPlans.IosevkaBerkeley.weights.Bold] -shape = 700 -menu = 700 -css = 700 - -[buildPlans.IosevkaBerkeley.widths.Normal] -shape = 500 -menu = 5 -css = "normal" - -[buildPlans.IosevkaBerkeley.widths.Extended] -shape = 600 -menu = 7 -css = "expanded" - -[buildPlans.IosevkaBerkeley.widths.Condensed] -shape = 416 -menu = 3 -css = "condensed" - -[buildPlans.IosevkaBerkeley.widths.SemiCondensed] -shape = 456 -menu = 4 -css = "semi-condensed" diff --git a/.config/k9s/.k9s/config.yml b/.config/k9s/.k9s/config.yml deleted file mode 100644 index 714b868..0000000 --- a/.config/k9s/.k9s/config.yml +++ /dev/null @@ -1,46 +0,0 @@ -k9s: - refreshRate: 2 - maxConnRetry: 5 - enableMouse: true - headless: true - logoless: true - crumbsless: false - readOnly: false - noIcons: true - logger: - tail: 100 - buffer: 5000 - sinceSeconds: 300 - fullScreenLogs: false - textWrap: false - showTime: false - currentContext: kubernetes-admin@kubernetes - currentCluster: kubernetes - clusters: - kubernetes: - namespace: - active: "" - favorites: - - sccache - - all - - default - view: - active: pod - featureGates: - nodeShell: false - shellPod: - image: busybox:1.31 - command: [] - args: [] - namespace: default - limits: - cpu: 100m - memory: 100Mi - portForwardAddress: localhost - thresholds: - cpu: - critical: 90 - warn: 70 - memory: - critical: 90 - warn: 70 diff --git a/.config/k9s/config.yml b/.config/k9s/config.yml deleted file mode 100644 index 9bf600b..0000000 --- a/.config/k9s/config.yml +++ /dev/null @@ -1,51 +0,0 @@ -k9s: - refreshRate: 2 - maxConnRetry: 5 - enableMouse: true - headless: false - logoless: true - crumbsless: false - readOnly: false - noExitOnCtrlC: false - noIcons: true - skipLatestRevCheck: false - logger: - tail: 100 - buffer: 5000 - sinceSeconds: 300 - fullScreenLogs: false - textWrap: false - showTime: false - currentContext: gke_memvp-25499_us-central1-c_ke-cluster-1 - currentCluster: gke_memvp-25499_us-central1-c_ke-cluster-1 - clusters: - gke_memvp-25499_us-central1-c_ke-cluster-1: - namespace: - active: all - lockFavorites: false - favorites: - - backfill - - all - - default - view: - active: job - featureGates: - nodeShell: false - shellPod: - image: busybox:1.35.0 - command: [] - args: [] - namespace: default - limits: - cpu: 100m - memory: 100Mi - labels: {} - portForwardAddress: localhost - thresholds: - cpu: - critical: 90 - warn: 70 - memory: - critical: 90 - warn: 70 - screenDumpDir: /tmp/k9s-screens-barak diff --git a/.config/k9s/hotkey.yml b/.config/k9s/hotkey.yml deleted file mode 100644 index 2d2d486..0000000 --- a/.config/k9s/hotkey.yml +++ /dev/null @@ -1,13 +0,0 @@ -hotKey: - shift-1: - shortCut: Shift-1 - description: pods - command: pods - shift-2: - shortCut: Shift-2 - description: deps - command: dp - shift-3: - shortCut: Shift-3 - description: nodes - command: nodes diff --git a/.config/karabiner/assets/complex_modifications/1701202333.json b/.config/karabiner/assets/complex_modifications/1701202333.json deleted file mode 100644 index 93ebab3..0000000 --- a/.config/karabiner/assets/complex_modifications/1701202333.json +++ /dev/null @@ -1,2853 +0,0 @@ -{ - "rules": [ - { - "description": "Insert (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Backspace (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_or_backspace", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_or_backspace", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Delete (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_forward", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_forward", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Win [Open Spotlight]", - "manipulators": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_command" - } - ], - "to_if_alone": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ], - "type": "basic" - } - ] - }, - { - "description": "A (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "a", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "a", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "B (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "b", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "b", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "left_control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "f", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "I (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "i", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "i", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "N (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "n", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "n", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "O (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "o", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "o", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "P (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "p", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "p", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "R (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "r", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "r", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "S (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "s", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "s", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "T (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "t", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "t", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "U (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "u", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "u", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "W (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "w", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "X (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "x", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "x", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Y (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "y", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "y", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Z (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "z", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "z", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Cmd) [Open Finder]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b com.apple.finder" - } - ], - "type": "basic" - } - ] - }, - { - "description": "2 (Cmd) [Open first pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "2", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Cmd) [Open second pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Cmd) [Open third pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "5 (Cmd) [Open fourth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "5", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "6 (Cmd) [Open fifth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "6", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "7 (Cmd) [Open sixth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "7", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "8 (Cmd) [Open eighth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "8", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "9 (Cmd) [Open ninth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "9", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "/ (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "slash", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Space (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F1", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f1", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F3", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f3", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Alt) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "q", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - } - ], - "title": "Windows Shortcuts" -} diff --git a/.config/karabiner/automatic_backups/karabiner_20231128.json b/.config/karabiner/automatic_backups/karabiner_20231128.json deleted file mode 100644 index 2ebc0af..0000000 --- a/.config/karabiner/automatic_backups/karabiner_20231128.json +++ /dev/null @@ -1,3006 +0,0 @@ -{ - "global": { - "ask_for_confirmation_before_quitting": true, - "check_for_updates_on_startup": true, - "show_in_menu_bar": true, - "show_profile_name_in_menu_bar": false, - "unsafe_ui": false - }, - "profiles": [ - { - "complex_modifications": { - "parameters": { - "basic.simultaneous_threshold_milliseconds": 50, - "basic.to_delayed_action_delay_milliseconds": 500, - "basic.to_if_alone_timeout_milliseconds": 1000, - "basic.to_if_held_down_threshold_milliseconds": 500, - "mouse_motion_to_scroll.speed": 100 - }, - "rules": [ - { - "description": "Insert (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Backspace (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_or_backspace", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_or_backspace", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Delete (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_forward", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_forward", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Win [Open Spotlight]", - "manipulators": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_command" - } - ], - "to_if_alone": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ], - "type": "basic" - } - ] - }, - { - "description": "A (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "a", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "a", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "B (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "b", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "b", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "left_control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "f", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "I (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "i", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "i", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "N (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "n", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "n", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "O (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "o", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "o", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "P (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "p", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "p", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "R (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "r", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "r", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "S (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "s", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "s", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "T (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "t", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "t", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "U (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "u", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "u", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "W (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "w", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "X (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "x", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "x", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Y (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "y", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "y", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Z (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "z", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "z", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Cmd) [Open Finder]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b com.apple.finder" - } - ], - "type": "basic" - } - ] - }, - { - "description": "2 (Cmd) [Open first pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "2", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Cmd) [Open second pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Cmd) [Open third pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "5 (Cmd) [Open fourth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "5", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "6 (Cmd) [Open fifth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "6", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "7 (Cmd) [Open sixth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "7", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "8 (Cmd) [Open eighth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "8", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "9 (Cmd) [Open ninth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "9", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "/ (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "slash", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Space (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F1", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f1", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F3", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^io\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f3", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Alt) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "q", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - } - ] - }, - "devices": [], - "fn_function_keys": [ - { - "from": { - "key_code": "f1" - }, - "to": [ - { - "consumer_key_code": "display_brightness_decrement" - } - ] - }, - { - "from": { - "key_code": "f2" - }, - "to": [ - { - "consumer_key_code": "display_brightness_increment" - } - ] - }, - { - "from": { - "key_code": "f3" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "mission_control" - } - ] - }, - { - "from": { - "key_code": "f4" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ] - }, - { - "from": { - "key_code": "f5" - }, - "to": [ - { - "consumer_key_code": "dictation" - } - ] - }, - { - "from": { - "key_code": "f6" - }, - "to": [ - { - "key_code": "f6" - } - ] - }, - { - "from": { - "key_code": "f7" - }, - "to": [ - { - "consumer_key_code": "rewind" - } - ] - }, - { - "from": { - "key_code": "f8" - }, - "to": [ - { - "consumer_key_code": "play_or_pause" - } - ] - }, - { - "from": { - "key_code": "f9" - }, - "to": [ - { - "consumer_key_code": "fast_forward" - } - ] - }, - { - "from": { - "key_code": "f10" - }, - "to": [ - { - "consumer_key_code": "mute" - } - ] - }, - { - "from": { - "key_code": "f11" - }, - "to": [ - { - "consumer_key_code": "volume_decrement" - } - ] - }, - { - "from": { - "key_code": "f12" - }, - "to": [ - { - "consumer_key_code": "volume_increment" - } - ] - } - ], - "name": "Default profile", - "parameters": { - "delay_milliseconds_before_open_device": 1000 - }, - "selected": true, - "simple_modifications": [], - "virtual_hid_keyboard": { - "country_code": 0, - "indicate_sticky_modifier_keys_state": true, - "mouse_key_xy_scale": 100 - } - } - ] -} \ No newline at end of file diff --git a/.config/karabiner/automatic_backups/karabiner_20231129.json b/.config/karabiner/automatic_backups/karabiner_20231129.json deleted file mode 100644 index aafebe6..0000000 --- a/.config/karabiner/automatic_backups/karabiner_20231129.json +++ /dev/null @@ -1,3126 +0,0 @@ -{ - "global": { - "ask_for_confirmation_before_quitting": true, - "check_for_updates_on_startup": true, - "show_in_menu_bar": true, - "show_profile_name_in_menu_bar": false, - "unsafe_ui": false - }, - "profiles": [ - { - "complex_modifications": { - "parameters": { - "basic.simultaneous_threshold_milliseconds": 50, - "basic.to_delayed_action_delay_milliseconds": 500, - "basic.to_if_alone_timeout_milliseconds": 1000, - "basic.to_if_held_down_threshold_milliseconds": 500, - "mouse_motion_to_scroll.speed": 100 - }, - "rules": [ - { - "description": "Insert (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Backspace (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_or_backspace", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_or_backspace", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Delete (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_forward", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_forward", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "A (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "a", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "a", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "B (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "b", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "b", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "left_control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Switch Channels [Slack]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.tinyspeck\\.slackmacgap$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "k", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "k", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Spotlight [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "I (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "i", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "i", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "N (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "n", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "n", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "O (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "o", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "o", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "P (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "p", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "p", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "R (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "r", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "r", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "S (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "s", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "s", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "T (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "t", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "t", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "U (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "u", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "u", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "W (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "w", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "X (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "x", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "x", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Y (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "y", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "y", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Z (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "z", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "z", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Cmd) [Open Finder]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b com.apple.finder" - } - ], - "type": "basic" - } - ] - }, - { - "description": "2 (Cmd) [Open first pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "2", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Cmd) [Open second pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Cmd) [Open third pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "5 (Cmd) [Open fourth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "5", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "6 (Cmd) [Open fifth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "6", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "7 (Cmd) [Open sixth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "7", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "8 (Cmd) [Open eighth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "8", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "9 (Cmd) [Open ninth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "9", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "/ (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "slash", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Space (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F1", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f1", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F3", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f3", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Alt) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "q", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - } - ] - }, - "devices": [ - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": true, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - }, - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - } - ], - "fn_function_keys": [ - { - "from": { - "key_code": "f1" - }, - "to": [ - { - "consumer_key_code": "display_brightness_decrement" - } - ] - }, - { - "from": { - "key_code": "f2" - }, - "to": [ - { - "consumer_key_code": "display_brightness_increment" - } - ] - }, - { - "from": { - "key_code": "f3" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "mission_control" - } - ] - }, - { - "from": { - "key_code": "f4" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ] - }, - { - "from": { - "key_code": "f5" - }, - "to": [ - { - "consumer_key_code": "dictation" - } - ] - }, - { - "from": { - "key_code": "f6" - }, - "to": [ - { - "key_code": "f6" - } - ] - }, - { - "from": { - "key_code": "f7" - }, - "to": [ - { - "consumer_key_code": "rewind" - } - ] - }, - { - "from": { - "key_code": "f8" - }, - "to": [ - { - "consumer_key_code": "play_or_pause" - } - ] - }, - { - "from": { - "key_code": "f9" - }, - "to": [ - { - "consumer_key_code": "fast_forward" - } - ] - }, - { - "from": { - "key_code": "f10" - }, - "to": [ - { - "consumer_key_code": "mute" - } - ] - }, - { - "from": { - "key_code": "f11" - }, - "to": [ - { - "consumer_key_code": "volume_decrement" - } - ] - }, - { - "from": { - "key_code": "f12" - }, - "to": [ - { - "consumer_key_code": "volume_increment" - } - ] - } - ], - "name": "Default profile", - "parameters": { - "delay_milliseconds_before_open_device": 1000 - }, - "selected": true, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_control" - } - ] - } - ], - "virtual_hid_keyboard": { - "country_code": 0, - "indicate_sticky_modifier_keys_state": true, - "mouse_key_xy_scale": 100 - } - } - ] -} diff --git a/.config/karabiner/automatic_backups/karabiner_20231130.json b/.config/karabiner/automatic_backups/karabiner_20231130.json deleted file mode 100644 index 5e2c3d8..0000000 --- a/.config/karabiner/automatic_backups/karabiner_20231130.json +++ /dev/null @@ -1,3126 +0,0 @@ -{ - "global": { - "ask_for_confirmation_before_quitting": true, - "check_for_updates_on_startup": true, - "show_in_menu_bar": true, - "show_profile_name_in_menu_bar": false, - "unsafe_ui": false - }, - "profiles": [ - { - "complex_modifications": { - "parameters": { - "basic.simultaneous_threshold_milliseconds": 50, - "basic.to_delayed_action_delay_milliseconds": 500, - "basic.to_if_alone_timeout_milliseconds": 1000, - "basic.to_if_held_down_threshold_milliseconds": 500, - "mouse_motion_to_scroll.speed": 100 - }, - "rules": [ - { - "description": "Insert (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Backspace (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_or_backspace", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_or_backspace", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Delete (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_forward", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_forward", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "A (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "a", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "a", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "B (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "b", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "b", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "left_control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Switch Channels [Slack]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.tinyspeck\\.slackmacgap$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "k", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "k", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Spotlight [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "I (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "i", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "i", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "N (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "n", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "n", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "O (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "o", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "o", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "P (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "p", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "p", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "R (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "r", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "r", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "S (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "s", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "s", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "T (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "t", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "t", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "U (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "u", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "u", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "W (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "w", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "X (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "x", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "x", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Y (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "y", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "y", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Z (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "z", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "z", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Cmd) [Open Finder]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b com.apple.finder" - } - ], - "type": "basic" - } - ] - }, - { - "description": "2 (Cmd) [Open first pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "2", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Cmd) [Open second pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Cmd) [Open third pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "5 (Cmd) [Open fourth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "5", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "6 (Cmd) [Open fifth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "6", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "7 (Cmd) [Open sixth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "7", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "8 (Cmd) [Open eighth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "8", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "9 (Cmd) [Open ninth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "9", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "/ (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "slash", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Space (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F1", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f1", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F3", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f3", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Alt) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "q", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - } - ] - }, - "devices": [ - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": true, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - }, - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - } - ], - "fn_function_keys": [ - { - "from": { - "key_code": "f1" - }, - "to": [ - { - "consumer_key_code": "display_brightness_decrement" - } - ] - }, - { - "from": { - "key_code": "f2" - }, - "to": [ - { - "consumer_key_code": "display_brightness_increment" - } - ] - }, - { - "from": { - "key_code": "f3" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "mission_control" - } - ] - }, - { - "from": { - "key_code": "f4" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ] - }, - { - "from": { - "key_code": "f5" - }, - "to": [ - { - "consumer_key_code": "dictation" - } - ] - }, - { - "from": { - "key_code": "f6" - }, - "to": [ - { - "key_code": "f6" - } - ] - }, - { - "from": { - "key_code": "f7" - }, - "to": [ - { - "consumer_key_code": "rewind" - } - ] - }, - { - "from": { - "key_code": "f8" - }, - "to": [ - { - "consumer_key_code": "play_or_pause" - } - ] - }, - { - "from": { - "key_code": "f9" - }, - "to": [ - { - "consumer_key_code": "fast_forward" - } - ] - }, - { - "from": { - "key_code": "f10" - }, - "to": [ - { - "consumer_key_code": "mute" - } - ] - }, - { - "from": { - "key_code": "f11" - }, - "to": [ - { - "consumer_key_code": "volume_decrement" - } - ] - }, - { - "from": { - "key_code": "f12" - }, - "to": [ - { - "consumer_key_code": "volume_increment" - } - ] - } - ], - "name": "Default profile", - "parameters": { - "delay_milliseconds_before_open_device": 1000 - }, - "selected": true, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_control" - } - ] - } - ], - "virtual_hid_keyboard": { - "country_code": 0, - "indicate_sticky_modifier_keys_state": true, - "mouse_key_xy_scale": 100 - } - } - ] -} \ No newline at end of file diff --git a/.config/karabiner/automatic_backups/karabiner_20240108.json b/.config/karabiner/automatic_backups/karabiner_20240108.json deleted file mode 100644 index b1eb810..0000000 --- a/.config/karabiner/automatic_backups/karabiner_20240108.json +++ /dev/null @@ -1,3214 +0,0 @@ -{ - "global": { - "ask_for_confirmation_before_quitting": true, - "check_for_updates_on_startup": true, - "show_in_menu_bar": true, - "show_profile_name_in_menu_bar": false, - "unsafe_ui": false - }, - "profiles": [ - { - "complex_modifications": { - "parameters": { - "basic.simultaneous_threshold_milliseconds": 50, - "basic.to_delayed_action_delay_milliseconds": 500, - "basic.to_if_alone_timeout_milliseconds": 1000, - "basic.to_if_held_down_threshold_milliseconds": 500, - "mouse_motion_to_scroll.speed": 100 - }, - "rules": [ - { - "description": "Insert (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Backspace (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_or_backspace", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_or_backspace", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Delete (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_forward", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_forward", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "A (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "a", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "a", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "B (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "b", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "b", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "left_control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Switch Channels [Slack]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.tinyspeck\\.slackmacgap$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "k", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "k", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Spotlight [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "I (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "i", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "i", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "N (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "n", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "n", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "O (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "o", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "o", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "P (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "p", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "p", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "R (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "r", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "r", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "S (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "s", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "s", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "T (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "t", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "t", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "U (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "u", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "u", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "W (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "w", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "X (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "x", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "x", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Y (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "y", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "y", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Z (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "z", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "z", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Cmd) [Open Finder]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b com.apple.finder" - } - ], - "type": "basic" - } - ] - }, - { - "description": "2 (Cmd) [Open first pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "2", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Cmd) [Open second pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Cmd) [Open third pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "5 (Cmd) [Open fourth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "5", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "6 (Cmd) [Open fifth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "6", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "7 (Cmd) [Open sixth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "7", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "8 (Cmd) [Open eighth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "8", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "9 (Cmd) [Open ninth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "9", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "/ (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "slash", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Space (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F1", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f1", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F3", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f3", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Alt) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "q", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - } - ] - }, - "devices": [ - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": true, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - }, - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 29699, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [ - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - }, - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 29699, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50504, - "vendor_id": 1133 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "identifiers": { - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50504, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - } - ], - "fn_function_keys": [ - { - "from": { - "key_code": "f1" - }, - "to": [ - { - "consumer_key_code": "display_brightness_decrement" - } - ] - }, - { - "from": { - "key_code": "f2" - }, - "to": [ - { - "consumer_key_code": "display_brightness_increment" - } - ] - }, - { - "from": { - "key_code": "f3" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "mission_control" - } - ] - }, - { - "from": { - "key_code": "f4" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ] - }, - { - "from": { - "key_code": "f5" - }, - "to": [ - { - "consumer_key_code": "dictation" - } - ] - }, - { - "from": { - "key_code": "f6" - }, - "to": [ - { - "key_code": "f6" - } - ] - }, - { - "from": { - "key_code": "f7" - }, - "to": [ - { - "consumer_key_code": "rewind" - } - ] - }, - { - "from": { - "key_code": "f8" - }, - "to": [ - { - "consumer_key_code": "play_or_pause" - } - ] - }, - { - "from": { - "key_code": "f9" - }, - "to": [ - { - "consumer_key_code": "fast_forward" - } - ] - }, - { - "from": { - "key_code": "f10" - }, - "to": [ - { - "consumer_key_code": "mute" - } - ] - }, - { - "from": { - "key_code": "f11" - }, - "to": [ - { - "consumer_key_code": "volume_decrement" - } - ] - }, - { - "from": { - "key_code": "f12" - }, - "to": [ - { - "consumer_key_code": "volume_increment" - } - ] - } - ], - "name": "Default profile", - "parameters": { - "delay_milliseconds_before_open_device": 1000 - }, - "selected": true, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_control" - } - ] - } - ], - "virtual_hid_keyboard": { - "country_code": 0, - "indicate_sticky_modifier_keys_state": true, - "mouse_key_xy_scale": 100 - } - } - ] -} \ No newline at end of file diff --git a/.config/karabiner/automatic_backups/karabiner_20240109.json b/.config/karabiner/automatic_backups/karabiner_20240109.json deleted file mode 100644 index abace6a..0000000 --- a/.config/karabiner/automatic_backups/karabiner_20240109.json +++ /dev/null @@ -1,3461 +0,0 @@ -{ - "global": { - "ask_for_confirmation_before_quitting": true, - "check_for_updates_on_startup": true, - "show_in_menu_bar": true, - "show_profile_name_in_menu_bar": false, - "unsafe_ui": false - }, - "profiles": [ - { - "complex_modifications": { - "parameters": { - "basic.simultaneous_threshold_milliseconds": 50, - "basic.to_delayed_action_delay_milliseconds": 500, - "basic.to_if_alone_timeout_milliseconds": 1000, - "basic.to_if_held_down_threshold_milliseconds": 500, - "mouse_motion_to_scroll.speed": 100 - }, - "rules": [ - { - "description": "G (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "g", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "f", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "4", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "3", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "2 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "2", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "2", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "1", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Backspace (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_or_backspace", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_or_backspace", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Delete (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_forward", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_forward", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "A (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "a", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "a", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "B (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "b", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "b", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "left_control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Switch Channels [Slack]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.tinyspeck\\.slackmacgap$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "k", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "k", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Spotlight [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "I (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "i", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "i", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "N (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "n", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "n", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "O (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "o", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "o", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "P (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "p", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "p", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "R (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "r", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "r", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "S (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "s", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "s", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "T (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "t", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "t", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "U (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "u", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "u", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "W (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "w", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "X (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "x", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "x", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Y (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "y", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "y", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Z (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "z", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "z", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Cmd) [Open Finder]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b com.apple.finder" - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Cmd) [Open second pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Cmd) [Open third pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "5 (Cmd) [Open fourth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "5", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "6 (Cmd) [Open fifth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "6", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "7 (Cmd) [Open sixth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "7", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "8 (Cmd) [Open eighth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "8", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "9 (Cmd) [Open ninth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "9", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "/ (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "slash", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Space (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F1", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f1", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F3", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f3", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Alt) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "q", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - } - ] - }, - "devices": [ - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": true, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - }, - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 29699, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - }, - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 29699, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50504, - "vendor_id": 1133 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50504, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - } - ], - "fn_function_keys": [ - { - "from": { - "key_code": "f1" - }, - "to": [ - { - "consumer_key_code": "display_brightness_decrement" - } - ] - }, - { - "from": { - "key_code": "f2" - }, - "to": [ - { - "consumer_key_code": "display_brightness_increment" - } - ] - }, - { - "from": { - "key_code": "f3" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "mission_control" - } - ] - }, - { - "from": { - "key_code": "f4" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ] - }, - { - "from": { - "key_code": "f5" - }, - "to": [ - { - "consumer_key_code": "dictation" - } - ] - }, - { - "from": { - "key_code": "f6" - }, - "to": [ - { - "key_code": "f6" - } - ] - }, - { - "from": { - "key_code": "f7" - }, - "to": [ - { - "consumer_key_code": "rewind" - } - ] - }, - { - "from": { - "key_code": "f8" - }, - "to": [ - { - "consumer_key_code": "play_or_pause" - } - ] - }, - { - "from": { - "key_code": "f9" - }, - "to": [ - { - "consumer_key_code": "fast_forward" - } - ] - }, - { - "from": { - "key_code": "f10" - }, - "to": [ - { - "consumer_key_code": "mute" - } - ] - }, - { - "from": { - "key_code": "f11" - }, - "to": [ - { - "consumer_key_code": "volume_decrement" - } - ] - }, - { - "from": { - "key_code": "f12" - }, - "to": [ - { - "consumer_key_code": "volume_increment" - } - ] - } - ], - "name": "Default profile", - "parameters": { - "delay_milliseconds_before_open_device": 1000 - }, - "selected": true, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_control" - } - ] - } - ], - "virtual_hid_keyboard": { - "country_code": 0, - "indicate_sticky_modifier_keys_state": true, - "mouse_key_xy_scale": 100 - } - } - ] -} \ No newline at end of file diff --git a/.config/karabiner/karabiner.json b/.config/karabiner/karabiner.json deleted file mode 100644 index 8b34fbb..0000000 --- a/.config/karabiner/karabiner.json +++ /dev/null @@ -1,3557 +0,0 @@ -{ - "global": { - "ask_for_confirmation_before_quitting": true, - "check_for_updates_on_startup": true, - "show_in_menu_bar": true, - "show_profile_name_in_menu_bar": false, - "unsafe_ui": false - }, - "profiles": [ - { - "complex_modifications": { - "parameters": { - "basic.simultaneous_threshold_milliseconds": 50, - "basic.to_delayed_action_delay_milliseconds": 500, - "basic.to_if_alone_timeout_milliseconds": 1000, - "basic.to_if_held_down_threshold_milliseconds": 500, - "mouse_motion_to_scroll.speed": 100 - }, - "rules": [ - { - "description": "L (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "l", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "New Alacritty", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "shift", - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -n /Applications/Alacritty.app" - } - ], - "type": "basic" - } - ] - }, - { - "description": "G (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "g", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "f", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "4", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "3", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "2 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "2", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "2", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.mozilla\\.firefox$", - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "1", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Insert (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "insert", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Home (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "home", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "up_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "End (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "end", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "down_arrow", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Left Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "left_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "left_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Right Arrow (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "right_arrow", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "right_arrow", - "modifiers": [ - "option", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Backspace (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_or_backspace", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_or_backspace", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Delete (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "delete_forward", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "delete_forward", - "modifiers": [ - "option" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Enter (Ctrl+Shift)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "return_or_enter", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "return_or_enter", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "A (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "a", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "a", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "B (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "b", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "b", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "left_control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "C (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "c", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "c", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Switch Channels [Slack]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.tinyspeck\\.slackmacgap$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "k", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "k", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Spotlight [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "I (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "i", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "i", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Win) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Login Window]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" - } - ], - "type": "basic" - } - ] - }, - { - "description": "L (Alt+Ctrl) [Lock Screen]", - "manipulators": [ - { - "from": { - "key_code": "l", - "modifiers": { - "mandatory": [ - "control", - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "power", - "modifiers": [ - "control", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "N (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "n", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "n", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "O (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "o", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "o", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "P (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "p", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "p", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "R (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "r", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "r", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "S (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "s", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "s", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "T (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "t", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "t", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "U (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "u", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "u", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "V (Ctrl+Shift) [Only Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "v", - "modifiers": { - "mandatory": [ - "control", - "shift" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "v", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "W (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "w", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "X (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "x", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "x", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Y (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "y", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "y", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Z (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "z", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "z", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "1 (Cmd) [Open Finder]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "1", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b com.apple.finder" - } - ], - "type": "basic" - } - ] - }, - { - "description": "3 (Cmd) [Open second pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "3", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "4 (Cmd) [Open third pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "4", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "5 (Cmd) [Open fourth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "5", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "6 (Cmd) [Open fifth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "6", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "7 (Cmd) [Open sixth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "7", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "8 (Cmd) [Open eighth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "8", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "9 (Cmd) [Open ninth pinned Dock app]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "9", - "modifiers": { - "mandatory": [ - "command" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" - } - ], - "type": "basic" - } - ] - }, - { - "description": "/ (Ctrl) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "slash", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "Space (Ctrl)", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "spacebar", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "spacebar", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F1", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f1", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "slash", - "modifiers": [ - "command", - "shift" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F3", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$", - "^org\\.alacritty$", - "^co\\.zeit\\.hyper$", - "^com\\.googlecode\\.iterm2$", - "^com\\.apple\\.Terminal$", - "^com\\.github\\.wez\\.wezterm$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f3", - "modifiers": { - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "g", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Alt) [+Terminal Emulators]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^org\\.virtualbox\\.app\\.VirtualBoxVM$", - "^com\\.parallels\\.desktop\\.console$", - "^org\\.vmware\\.fusion$", - "^org\\.gnu\\.emacs$", - "^com\\.jetbrains", - "^com\\.microsoft\\.VSCode$", - "^com\\.sublimetext\\.3$", - "^net\\.kovidgoyal\\.kitty$", - "^com\\.citrix\\.XenAppViewer$", - "^com\\.microsoft\\.rdc\\.macos$" - ], - "file_paths": [ - "Chrome Remote Desktop\\.app" - ], - "type": "frontmost_application_unless" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "option" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "q", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - }, - { - "description": "F4 (Ctrl) [Only Chrome]", - "manipulators": [ - { - "conditions": [ - { - "bundle_identifiers": [ - "^com\\.google\\.Chrome$" - ], - "type": "frontmost_application_if" - } - ], - "from": { - "key_code": "f4", - "modifiers": { - "mandatory": [ - "control" - ], - "optional": [ - "any" - ] - } - }, - "to": [ - { - "key_code": "w", - "modifiers": [ - "command" - ] - } - ], - "type": "basic" - } - ] - } - ] - }, - "devices": [ - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 0, - "vendor_id": 0 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50475, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": true, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 32774, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - }, - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 29699, - "vendor_id": 3141 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [ - { - "from": { - "key_code": "left_command" - }, - "to": [ - { - "key_code": "left_option" - } - ] - }, - { - "from": { - "key_code": "left_option" - }, - "to": [ - { - "key_code": "left_command" - } - ] - } - ], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 29699, - "vendor_id": 3141 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": true, - "is_pointing_device": false, - "product_id": 50504, - "vendor_id": 1133 - }, - "ignore": false, - "manipulate_caps_lock_led": true, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - }, - { - "disable_built_in_keyboard_if_exists": false, - "fn_function_keys": [], - "game_pad_swap_sticks": false, - "identifiers": { - "is_game_pad": false, - "is_keyboard": false, - "is_pointing_device": true, - "product_id": 50504, - "vendor_id": 1133 - }, - "ignore": true, - "manipulate_caps_lock_led": false, - "mouse_flip_horizontal_wheel": false, - "mouse_flip_vertical_wheel": false, - "mouse_flip_x": false, - "mouse_flip_y": false, - "mouse_swap_wheels": false, - "mouse_swap_xy": false, - "simple_modifications": [], - "treat_as_built_in_keyboard": false - } - ], - "fn_function_keys": [ - { - "from": { - "key_code": "f1" - }, - "to": [ - { - "consumer_key_code": "display_brightness_decrement" - } - ] - }, - { - "from": { - "key_code": "f2" - }, - "to": [ - { - "consumer_key_code": "display_brightness_increment" - } - ] - }, - { - "from": { - "key_code": "f3" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "mission_control" - } - ] - }, - { - "from": { - "key_code": "f4" - }, - "to": [ - { - "apple_vendor_keyboard_key_code": "spotlight" - } - ] - }, - { - "from": { - "key_code": "f5" - }, - "to": [ - { - "consumer_key_code": "dictation" - } - ] - }, - { - "from": { - "key_code": "f6" - }, - "to": [ - { - "key_code": "f6" - } - ] - }, - { - "from": { - "key_code": "f7" - }, - "to": [ - { - "consumer_key_code": "rewind" - } - ] - }, - { - "from": { - "key_code": "f8" - }, - "to": [ - { - "consumer_key_code": "play_or_pause" - } - ] - }, - { - "from": { - "key_code": "f9" - }, - "to": [ - { - "consumer_key_code": "fast_forward" - } - ] - }, - { - "from": { - "key_code": "f10" - }, - "to": [ - { - "consumer_key_code": "mute" - } - ] - }, - { - "from": { - "key_code": "f11" - }, - "to": [ - { - "consumer_key_code": "volume_decrement" - } - ] - }, - { - "from": { - "key_code": "f12" - }, - "to": [ - { - "consumer_key_code": "volume_increment" - } - ] - } - ], - "name": "Default profile", - "parameters": { - "delay_milliseconds_before_open_device": 1000 - }, - "selected": true, - "simple_modifications": [ - { - "from": { - "key_code": "caps_lock" - }, - "to": [ - { - "key_code": "left_control" - } - ] - } - ], - "virtual_hid_keyboard": { - "country_code": 0, - "indicate_sticky_modifier_keys_state": true, - "mouse_key_xy_scale": 100 - } - } - ] -} \ No newline at end of file diff --git a/.config/ncspot/config.toml b/.config/ncspot/config.toml deleted file mode 100644 index 9fee54c..0000000 --- a/.config/ncspot/config.toml +++ /dev/null @@ -1,16 +0,0 @@ -[keybindings] -"Esc" = "back" -"Q" = "quit" -"q" = "back" -"1" = "focus queue" -"2" = "focus search" -"3" = "focus library" -"i" = "insert" -"b" = "goto album" -"a" = "goto artist" -"Space" = "playpause" -"Enter" = "play" -"p" = "play" -"o" = "open selected" -"Ctrl+f" = "seek +10000" -"Ctrl+b" = "seek -10000" diff --git a/.config/nvim b/.config/nvim deleted file mode 120000 index 815cbcc..0000000 --- a/.config/nvim +++ /dev/null @@ -1 +0,0 @@ -../.vim \ No newline at end of file diff --git a/.config/rofi/config.rasi b/.config/rofi/config.rasi deleted file mode 100644 index 523ae81..0000000 --- a/.config/rofi/config.rasi +++ /dev/null @@ -1,3 +0,0 @@ -//@theme "/home/barak/.local/share/rofi/themes/spotlight-dark.rasi" -//@theme "/home/barak/.local/share/rofi/themes/rounded-blue-dark.rasi" -@theme "/home/barak/.local/share/rofi/themes/spotlight-dark.rasi" diff --git a/.config/systemd/user/default.target.wants/ssh-agent.service b/.config/systemd/user/default.target.wants/ssh-agent.service deleted file mode 120000 index 8c9a931..0000000 --- a/.config/systemd/user/default.target.wants/ssh-agent.service +++ /dev/null @@ -1 +0,0 @@ -/home/barak/.config/systemd/user/ssh-agent.service \ No newline at end of file diff --git a/.config/systemd/user/ssh-agent.service b/.config/systemd/user/ssh-agent.service deleted file mode 100644 index 87d6c04..0000000 --- a/.config/systemd/user/ssh-agent.service +++ /dev/null @@ -1,10 +0,0 @@ -[Unit] -Description=SSH key agent - -[Service] -Type=forking -Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket -ExecStart=/usr/bin/ssh-agent -a $SSH_AUTH_SOCK - -[Install] -WantedBy=default.target diff --git a/.config/terminator/config b/.config/terminator/config deleted file mode 100644 index 7303597..0000000 --- a/.config/terminator/config +++ /dev/null @@ -1,64 +0,0 @@ -[global_config] - focus = mouse - tab_position = bottom - title_transmit_bg_color = "#535d6c" - title_inactive_fg_color = "#b8b8b8" - title_inactive_bg_color = "#222222" - enabled_plugins = LaunchpadCodeURLHandler, APTURLHandler, LaunchpadBugURLHandler -[keybindings] - cycle_next = <Primary>j - cycle_prev = <Primary>k - split_vert = "" - close_term = <Primary><Shift>w - paste = <Primary><Shift>v - help = "" -[profiles] - [[default]] - allow_bold = False - background_darkness = 0.8 - background_type = transparent - cursor_color = "#ffffff" - font = Iosevka Berkeley Light 18 - foreground_color = "#ffffff" - show_titlebar = False - scrollbar_position = hidden - scrollback_infinite = True - use_system_font = False - bold_is_bright = True - [[4k]] - background_darkness = 0.8 - background_type = transparent - font = Inconsolata Medium 18 - foreground_color = "#ffffff" - show_titlebar = False - scrollbar_position = hidden - scrollback_infinite = True - use_system_font = False - [[Large]] - background_darkness = 0.8 - background_type = transparent - font = Inconsolata Medium 32 - foreground_color = "#ffffff" - show_titlebar = False - scrollbar_position = hidden - scrollback_infinite = True - use_system_font = False - [[Medium]] - background_darkness = 0.8 - background_type = transparent - font = Droid Sans Mono Dotted 14 - foreground_color = "#ffffff" - show_titlebar = False - scrollbar_position = hidden - scrollback_infinite = True - use_system_font = False -[layouts] - [[default]] - [[[child1]]] - parent = window0 - profile = default - type = Terminal - [[[window0]]] - parent = "" - type = Window -[plugins] diff --git a/.config/tig/config b/.config/tig/config deleted file mode 100644 index f9a345a..0000000 --- a/.config/tig/config +++ /dev/null @@ -1,76 +0,0 @@ -# Vim-style keybindings for Tig -# -# To use these keybindings copy the file to your HOME directory and include -# it from your ~/.tigrc file: -# -# $ cp contrib/vim.tigrc ~/.tigrc.vim -# $ echo "source ~/.tigrc.vim" >> ~/.tigrc - -bind generic h scroll-left -bind generic j move-down -bind generic k move-up -bind generic l scroll-right - -bind generic g none -bind generic gg move-first-line -bind generic gj next -bind generic gk previous -bind generic gp parent -bind generic gP back -bind generic gn view-next - -bind main G move-last-line -bind generic G move-last-line - -bind generic <C-f> move-page-down -bind generic <C-b> move-page-up - -bind generic v none -bind generic vm view-main -bind generic vd view-diff -bind generic vl view-log -bind generic vt view-tree -bind generic vb view-blob -bind generic vx view-blame -bind generic vr view-refs -bind generic vs view-status -bind generic vu view-stage -bind generic vy view-stash -bind generic vg view-grep -bind generic vp view-pager -bind generic vh view-help - -bind generic o none -bind generic oo :toggle sort-order -bind generic os :toggle sort-field -bind generic on :toggle line-number -bind generic od :toggle date -bind generic oa :toggle author -bind generic og :toggle line-graphics -bind generic of :toggle file-name -bind generic op :toggle ignore-space -bind generic oi :toggle id -bind generic ot :toggle commit-title-overflow -bind generic oF :toggle file-filter -bind generic or :toggle commit-title-refs - -bind generic @ none -bind generic @j :/^@@ -bind generic @k :?^@@ -bind generic @- :toggle diff-context -1 -bind generic @+ :toggle diff-context +1 - -bind status u none -bind stage u none -bind generic uu status-update -bind generic ur status-revert -bind generic um status-merge -bind generic ul stage-update-line -bind generic us stage-split-chunk - -bind generic c none -bind generic cc !git commit -bind generic ca !?@git commit --amend --no-edit - -bind generic K view-help -bind generic <C-w><C-w> view-next diff --git a/.config/xfce4/desktop/icons.screen0-2544x1399.rc b/.config/xfce4/desktop/icons.screen0-2544x1399.rc deleted file mode 100644 index f8c5c47..0000000 --- a/.config/xfce4/desktop/icons.screen0-2544x1399.rc +++ /dev/null @@ -1,15 +0,0 @@ -[xfdesktop-version-4.10.3+-rcfile_format] -4.10.3+=true - -[Trash] -row=0 -col=0 - -[/] -row=1 -col=0 - -[/home/barak] -row=2 -col=0 - diff --git a/.config/xfce4/panel/genmon-13.rc b/.config/xfce4/panel/genmon-13.rc deleted file mode 100644 index bd3cdb9..0000000 --- a/.config/xfce4/panel/genmon-13.rc +++ /dev/null @@ -1,6 +0,0 @@ -Command=hostname -s -UseLabel=0 -Text=hostname -UpdatePeriod=60000 -Font=Sans Bold 16 - diff --git a/.config/xfce4/panel/whiskermenu-1.rc b/.config/xfce4/panel/whiskermenu-1.rc deleted file mode 100644 index 13975de..0000000 --- a/.config/xfce4/panel/whiskermenu-1.rc +++ /dev/null @@ -1,68 +0,0 @@ -favorites=exo-web-browser.desktop,exo-mail-reader.desktop,exo-file-manager.desktop,pidgin.desktop,exo-terminal-emulator.desktop -recent=xfce-mouse-settings.desktop,xfce-ui-settings.desktop,firefox.desktop,exo-terminal-emulator.desktop -button-title=Applications Menu -button-icon=xfce4-whiskermenu -button-single-row=false -show-button-title=false -show-button-icon=true -launcher-show-name=true -launcher-show-description=false -launcher-show-tooltip=true -item-icon-size=1 -hover-switch-category=false -category-show-name=true -category-icon-size=0 -load-hierarchy=true -recent-items-max=10 -favorites-in-recent=true -display-recent-default=false -position-search-alternate=true -position-commands-alternate=false -position-categories-alternate=false -menu-width=400 -menu-height=500 -menu-opacity=100 -command-settings=xfce4-settings-manager -show-command-settings=true -command-lockscreen=xflock4 -show-command-lockscreen=true -command-switchuser=dm-tool switch-to-greeter -show-command-switchuser=false -command-logout=xfce4-session-logout -show-command-logout=true -command-menueditor=menulibre -show-command-menueditor=true -command-profile=mugshot -show-command-profile=true -search-actions=5 - -[action0] -name=Man Pages -pattern=# -command=exo-open --launch TerminalEmulator man %s -regex=false - -[action1] -name=Web Search -pattern=? -command=exo-open --launch WebBrowser https://duckduckgo.com/?q=%u -regex=false - -[action2] -name=Wikipedia -pattern=!w -command=exo-open --launch WebBrowser https://en.wikipedia.org/wiki/%u -regex=false - -[action3] -name=Run in Terminal -pattern=! -command=exo-open --launch TerminalEmulator %s -regex=false - -[action4] -name=Open URI -pattern=^(file|http|https):\\/\\/(.*)$ -command=exo-open \\0 -regex=true - diff --git a/.config/xfce4/terminal/accels.scm b/.config/xfce4/terminal/accels.scm deleted file mode 100644 index a7682f3..0000000 --- a/.config/xfce4/terminal/accels.scm +++ /dev/null @@ -1,58 +0,0 @@ -; xfce4-terminal GtkAccelMap rc-file -*- scheme -*- -; this file is an automated accelerator map dump -; -(gtk_accel_path "<Actions>/terminal-window/goto-tab-2" "<Alt>2") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-6" "<Alt>6") -; (gtk_accel_path "<Actions>/terminal-window/copy-input" "") -; (gtk_accel_path "<Actions>/terminal-window/close-other-tabs" "") -; (gtk_accel_path "<Actions>/terminal-window/move-tab-right" "<Primary><Shift>Page_Down") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-7" "<Alt>7") -; (gtk_accel_path "<Actions>/terminal-window/set-title-color" "") -; (gtk_accel_path "<Actions>/terminal-window/edit-menu" "") -; (gtk_accel_path "<Actions>/terminal-window/zoom-menu" "") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-1" "<Alt>1") -; (gtk_accel_path "<Actions>/terminal-window/fullscreen" "F11") -; (gtk_accel_path "<Actions>/terminal-window/read-only" "") -; (gtk_accel_path "<Actions>/terminal-window/preferences" "") -; (gtk_accel_path "<Actions>/terminal-window/reset-and-clear" "") -; (gtk_accel_path "<Actions>/terminal-window/about" "") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-5" "<Alt>5") -; (gtk_accel_path "<Actions>/terminal-window/close-window" "<Primary><Shift>q") -; (gtk_accel_path "<Actions>/terminal-window/reset" "") -; (gtk_accel_path "<Actions>/terminal-window/save-contents" "") -(gtk_accel_path "<Actions>/terminal-window/toggle-menubar" "F10") -; (gtk_accel_path "<Actions>/terminal-window/copy" "<Primary><Shift>c") -; (gtk_accel_path "<Actions>/terminal-window/copy-html" "") -; (gtk_accel_path "<Actions>/terminal-window/last-active-tab" "") -; (gtk_accel_path "<Actions>/terminal-window/show-borders" "") -; (gtk_accel_path "<Actions>/terminal-window/view-menu" "") -; (gtk_accel_path "<Actions>/terminal-window/detach-tab" "<Primary><Shift>d") -; (gtk_accel_path "<Actions>/terminal-window/scroll-on-output" "") -; (gtk_accel_path "<Actions>/terminal-window/show-toolbar" "") -; (gtk_accel_path "<Actions>/terminal-window/next-tab" "<Primary>Page_Down") -; (gtk_accel_path "<Actions>/terminal-window/tabs-menu" "") -; (gtk_accel_path "<Actions>/terminal-window/search-next" "") -; (gtk_accel_path "<Actions>/terminal-window/search-prev" "") -; (gtk_accel_path "<Actions>/terminal-window/undo-close-tab" "") -; (gtk_accel_path "<Actions>/terminal-window/set-title" "<Primary><Shift>s") -(gtk_accel_path "<Actions>/terminal-window/contents" "") -; (gtk_accel_path "<Actions>/terminal-window/zoom-reset" "<Primary>0") -; (gtk_accel_path "<Actions>/terminal-window/close-tab" "<Primary><Shift>w") -; (gtk_accel_path "<Actions>/terminal-window/new-tab" "<Primary><Shift>t") -; (gtk_accel_path "<Actions>/terminal-window/new-window" "<Primary><Shift>n") -; (gtk_accel_path "<Actions>/terminal-window/terminal-menu" "") -; (gtk_accel_path "<Actions>/terminal-window/show-menubar" "") -; (gtk_accel_path "<Actions>/terminal-window/select-all" "<Primary><Shift>a") -; (gtk_accel_path "<Actions>/terminal-window/paste" "<Primary><Shift>v") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-9" "<Alt>9") -; (gtk_accel_path "<Actions>/terminal-window/move-tab-left" "<Primary><Shift>Page_Up") -; (gtk_accel_path "<Actions>/terminal-window/search" "<Primary><Shift>f") -; (gtk_accel_path "<Actions>/terminal-window/file-menu" "") -; (gtk_accel_path "<Actions>/terminal-window/prev-tab" "<Primary>Page_Up") -; (gtk_accel_path "<Actions>/terminal-window/paste-selection" "") -; (gtk_accel_path "<Actions>/terminal-window/zoom-in" "<Primary>plus") -; (gtk_accel_path "<Actions>/terminal-window/zoom-out" "<Primary>minus") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-8" "<Alt>8") -; (gtk_accel_path "<Actions>/terminal-window/help-menu" "") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-4" "<Alt>4") -(gtk_accel_path "<Actions>/terminal-window/goto-tab-3" "<Alt>3") diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml deleted file mode 100644 index abe7b1e..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/displays.xml +++ /dev/null @@ -1,101 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="displays" version="1.0"> - <property name="Default" type="empty"> - <property name="eDP1" type="string" value="1. LGD 14""> - <property name="Active" type="bool" value="false"/> - <property name="Resolution" type="string" value="2560x1440"/> - <property name="RefreshRate" type="double" value="59.997716"/> - <property name="Rotation" type="int" value="0"/> - <property name="Reflection" type="string" value="0"/> - <property name="Primary" type="bool" value="true"/> - <property name="Position" type="empty"> - <property name="X" type="int" value="0"/> - <property name="Y" type="int" value="0"/> - </property> - </property> - <property name="DP2" type="string" value="2. Hewlett Packard 27""> - <property name="Active" type="bool" value="true"/> - <property name="Resolution" type="string" value="3840x2160"/> - <property name="RefreshRate" type="double" value="59.996625"/> - <property name="Rotation" type="int" value="0"/> - <property name="Reflection" type="string" value="0"/> - <property name="Primary" type="bool" value="false"/> - <property name="Position" type="empty"> - <property name="X" type="int" value="0"/> - <property name="Y" type="int" value="0"/> - </property> - </property> - <property name="HDMI-1" type="string" value="Goldstar Company Ltd 27""> - <property name="Active" type="bool" value="true"/> - <property name="EDID" type="string" value="8b6223e9c3908f0c17cb0487baafb4b7dae247a4"/> - <property name="Resolution" type="string" value="3840x2160"/> - <property name="RefreshRate" type="double" value="60.000000"/> - <property name="Rotation" type="int" value="0"/> - <property name="Reflection" type="string" value="0"/> - <property name="Primary" type="bool" value="true"/> - <property name="Position" type="empty"> - <property name="X" type="int" value="0"/> - <property name="Y" type="int" value="0"/> - </property> - <property name="Scale" type="empty"> - <property name="X" type="double" value="1.000000"/> - <property name="Y" type="double" value="1.000000"/> - </property> - </property> - <property name="DP-3" type="string" value="DO NOT USE - RTK 27""> - <property name="Active" type="bool" value="true"/> - <property name="EDID" type="string" value="f396435bdc58149bc1f56157ea28cd14af2aaf3d"/> - <property name="Resolution" type="string" value="3840x2160"/> - <property name="RefreshRate" type="double" value="59.981998"/> - <property name="Rotation" type="int" value="0"/> - <property name="Reflection" type="string" value="0"/> - <property name="Primary" type="bool" value="false"/> - <property name="Position" type="empty"> - <property name="X" type="int" value="0"/> - <property name="Y" type="int" value="0"/> - </property> - <property name="Scale" type="empty"> - <property name="X" type="double" value="1.000000"/> - <property name="Y" type="double" value="1.000000"/> - </property> - </property> - </property> - <property name="ActiveProfile" type="string" value="Default"/> - <property name="Fallback" type="empty"> - <property name="HDMI-1" type="string" value="Goldstar Company Ltd 27""> - <property name="Active" type="bool" value="true"/> - <property name="EDID" type="string" value="8b6223e9c3908f0c17cb0487baafb4b7dae247a4"/> - <property name="Resolution" type="string" value="3840x2160"/> - <property name="RefreshRate" type="double" value="60.000000"/> - <property name="Rotation" type="int" value="0"/> - <property name="Reflection" type="string" value="0"/> - <property name="Primary" type="bool" value="true"/> - <property name="Position" type="empty"> - <property name="X" type="int" value="0"/> - <property name="Y" type="int" value="0"/> - </property> - <property name="Scale" type="empty"> - <property name="X" type="double" value="1.000000"/> - <property name="Y" type="double" value="1.000000"/> - </property> - </property> - <property name="DP-3" type="string" value="DO NOT USE - RTK 27""> - <property name="Active" type="bool" value="true"/> - <property name="EDID" type="string" value="f396435bdc58149bc1f56157ea28cd14af2aaf3d"/> - <property name="Resolution" type="string" value="3840x2160"/> - <property name="RefreshRate" type="double" value="59.981998"/> - <property name="Rotation" type="int" value="0"/> - <property name="Reflection" type="string" value="0"/> - <property name="Primary" type="bool" value="false"/> - <property name="Position" type="empty"> - <property name="X" type="int" value="0"/> - <property name="Y" type="int" value="0"/> - </property> - <property name="Scale" type="empty"> - <property name="X" type="double" value="1.000000"/> - <property name="Y" type="double" value="1.000000"/> - </property> - </property> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml deleted file mode 100644 index 9ddc443..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml +++ /dev/null @@ -1,7 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="keyboards" version="1.0"> - <property name="Default" type="empty"> - <property name="Numlock" type="bool" value="false"/> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml deleted file mode 100644 index 6dc0558..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml +++ /dev/null @@ -1,11 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="thunar" version="1.0"> - <property name="misc-volume-management" type="empty"/> - <property name="shortcuts-icon-size" type="empty"/> - <property name="last-view" type="string" value="ThunarIconView"/> - <property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_75_PERCENT"/> - <property name="last-window-width" type="int" value="1274"/> - <property name="last-window-height" type="int" value="2121"/> - <property name="last-window-maximized" type="bool" value="false"/> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml deleted file mode 100644 index 6f340b0..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml +++ /dev/null @@ -1,56 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfce4-desktop" version="1.0"> - <property name="desktop-icons" type="empty"> - <property name="style" type="empty"/> - <property name="file-icons" type="empty"> - <property name="show-home" type="empty"/> - <property name="show-filesystem" type="empty"/> - <property name="show-removable" type="empty"/> - <property name="show-trash" type="empty"/> - </property> - <property name="icon-size" type="empty"/> - <property name="tooltip-size" type="empty"/> - </property> - <property name="backdrop" type="empty"> - <property name="screen0" type="empty"> - <property name="monitor0" type="empty"> - <property name="image-path" type="empty"/> - <property name="image-style" type="empty"/> - <property name="image-show" type="empty"/> - <property name="workspace0" type="empty"> - <property name="color-style" type="int" value="0"/> - <property name="image-style" type="int" value="5"/> - <property name="last-image" type="string" value="/usr/share/xfce4/backdrops/xubuntu-wallpaper.png"/> - </property> - </property> - <property name="monitor1" type="empty"> - <property name="image-path" type="empty"/> - <property name="image-style" type="empty"/> - <property name="image-show" type="empty"/> - </property> - <property name="monitorHDMI-1" type="empty"> - <property name="workspace0" type="empty"> - <property name="color-style" type="int" value="0"/> - <property name="image-style" type="int" value="5"/> - <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> - </property> - <property name="workspace1" type="empty"> - <property name="color-style" type="int" value="0"/> - <property name="image-style" type="int" value="5"/> - <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> - </property> - <property name="workspace2" type="empty"> - <property name="color-style" type="int" value="0"/> - <property name="image-style" type="int" value="5"/> - <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> - </property> - <property name="workspace3" type="empty"> - <property name="color-style" type="int" value="0"/> - <property name="image-style" type="int" value="5"/> - <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> - </property> - </property> - </property> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml deleted file mode 100644 index 2faa48e..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml +++ /dev/null @@ -1,211 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfce4-keyboard-shortcuts" version="1.0"> - <property name="commands" type="empty"> - <property name="default" type="empty"> - <property name="<Alt>F1" type="empty"/> - <property name="<Alt>F2" type="empty"> - <property name="startup-notify" type="empty"/> - </property> - <property name="<Alt>F3" type="empty"> - <property name="startup-notify" type="empty"/> - </property> - <property name="<Primary><Alt>Delete" type="empty"/> - <property name="<Primary><Alt>l" type="empty"/> - <property name="XF86Display" type="empty"/> - <property name="<Super>p" type="empty"/> - <property name="<Primary>Escape" type="empty"/> - <property name="XF86WWW" type="empty"/> - <property name="XF86Mail" type="empty"/> - <property name="<Primary><Alt>Escape" type="empty"/> - <property name="Print" type="empty"/> - <property name="<Alt>Print" type="empty"/> - <property name="XF86HomePage" type="empty"/> - <property name="<Super>w" type="empty"/> - <property name="<Super>m" type="empty"/> - <property name="XF86Explorer" type="empty"/> - <property name="<Super>f" type="empty"/> - <property name="<Super>F1" type="empty"/> - <property name="<Primary><Alt>t" type="empty"/> - <property name="<Super>t" type="empty"/> - <property name="<Super>r" type="empty"/> - <property name="<Super>e" type="empty"/> - <property name="XF86Calculator" type="empty"/> - <property name="XF86Music" type="empty"/> - <property name="<Super>1" type="empty"/> - <property name="XF86Messenger" type="empty"/> - <property name="<Super>2" type="empty"/> - <property name="<Super>3" type="empty"/> - <property name="<Super>4" type="empty"/> - </property> - <property name="custom" type="empty"> - <property name="Print" type="string" value="xfce4-screenshooter -f"/> - <property name="<Alt>Print" type="string" value="xfce4-screenshooter -w"/> - <property name="<Primary><Alt>Delete" type="string" value="xflock4"/> - <property name="XF86Explorer" type="string" value="exo-open --launch FileManager"/> - <property name="<Super>e" type="string" value="mousepad"/> - <property name="<Super>f" type="string" value="exo-open --launch FileManager"/> - <property name="<Alt>F3" type="string" value="xfce4-appfinder"> - <property name="startup-notify" type="bool" value="true"/> - </property> - <property name="<Alt>F2" type="string" value="xfrun4"> - <property name="startup-notify" type="bool" value="true"/> - </property> - <property name="<Primary><Alt>l" type="string" value="xflock4"/> - <property name="<Super>m" type="string" value="exo-open --launch MailReader"/> - <property name="<Super>1" type="string" value="parole"/> - <property name="<Super>2" type="string" value="pidgin"/> - <property name="<Super>3" type="string" value="libreoffice --writer"/> - <property name="<Super>4" type="string" value="libreoffice --calc"/> - <property name="<Primary><Alt>t" type="string" value="exo-open --launch TerminalEmulator"/> - <property name="<Super>r" type="string" value="xfce4-appfinder"/> - <property name="<Super>t" type="string" value="exo-open --launch TerminalEmulator"/> - <property name="<Super>p" type="string" value="xfce4-display-settings --minimal"/> - <property name="<Super>w" type="string" value="exo-open --launch WebBrowser"/> - <property name="<Primary>Escape" type="string" value="xfce4-popup-whiskermenu"/> - <property name="XF86Display" type="string" value="xfce4-display-settings --minimal"/> - <property name="<Alt>F1" type="string" value="xfce4-popup-applicationsmenu"/> - <property name="XF86WWW" type="string" value="exo-open --launch WebBrowser"/> - <property name="XF86Mail" type="string" value="exo-open --launch MailReader"/> - <property name="<Primary><Alt>Escape" type="string" value="xkill"/> - <property name="XF86Messenger" type="string" value="pidgin"/> - <property name="XF86Calculator" type="string" value="mate-calc"/> - <property name="XF86Music" type="string" value="parole"/> - <property name="XF86HomePage" type="string" value="exo-open --launch WebBrowser"/> - <property name="<Super>F1" type="string" value="xfce4-find-cursor"/> - <property name="override" type="bool" value="true"/> - </property> - </property> - <property name="xfwm4" type="empty"> - <property name="default" type="empty"> - <property name="<Alt>Insert" type="empty"/> - <property name="Escape" type="empty"/> - <property name="Left" type="empty"/> - <property name="Right" type="empty"/> - <property name="Up" type="empty"/> - <property name="Down" type="empty"/> - <property name="<Alt>Tab" type="empty"/> - <property name="<Alt><Shift>Tab" type="empty"/> - <property name="<Alt>Delete" type="empty"/> - <property name="<Primary><Alt>Down" type="empty"/> - <property name="<Primary><Alt>Left" type="empty"/> - <property name="<Shift><Alt>Page_Down" type="empty"/> - <property name="<Alt>F4" type="empty"/> - <property name="<Alt>F6" type="empty"/> - <property name="<Alt>F7" type="empty"/> - <property name="<Alt>F8" type="empty"/> - <property name="<Alt>F9" type="empty"/> - <property name="<Alt>F10" type="empty"/> - <property name="<Alt>F11" type="empty"/> - <property name="<Alt>F12" type="empty"/> - <property name="<Primary><Shift><Alt>Left" type="empty"/> - <property name="<Primary><Alt>End" type="empty"/> - <property name="<Primary><Alt>Home" type="empty"/> - <property name="<Primary><Shift><Alt>Right" type="empty"/> - <property name="<Primary><Shift><Alt>Up" type="empty"/> - <property name="<Primary><Alt>KP_1" type="empty"/> - <property name="<Primary><Alt>KP_2" type="empty"/> - <property name="<Primary><Alt>KP_3" type="empty"/> - <property name="<Primary><Alt>KP_4" type="empty"/> - <property name="<Primary><Alt>KP_5" type="empty"/> - <property name="<Primary><Alt>KP_6" type="empty"/> - <property name="<Primary><Alt>KP_7" type="empty"/> - <property name="<Primary><Alt>KP_8" type="empty"/> - <property name="<Primary><Alt>KP_9" type="empty"/> - <property name="<Alt>space" type="empty"/> - <property name="<Shift><Alt>Page_Up" type="empty"/> - <property name="<Primary><Alt>Right" type="empty"/> - <property name="<Primary><Alt>d" type="empty"/> - <property name="<Primary><Alt>Up" type="empty"/> - <property name="<Super>Tab" type="empty"/> - <property name="<Primary>F1" type="empty"/> - <property name="<Primary>F2" type="empty"/> - <property name="<Primary>F3" type="empty"/> - <property name="<Primary>F4" type="empty"/> - <property name="<Primary>F5" type="empty"/> - <property name="<Primary>F6" type="empty"/> - <property name="<Primary>F7" type="empty"/> - <property name="<Primary>F8" type="empty"/> - <property name="<Primary>F9" type="empty"/> - <property name="<Primary>F10" type="empty"/> - <property name="<Primary>F11" type="empty"/> - <property name="<Primary>F12" type="empty"/> - <property name="<Alt>F5" type="empty"/> - <property name="<Super>KP_1" type="empty"/> - <property name="<Super>Down" type="empty"/> - <property name="<Super>KP_3" type="empty"/> - <property name="<Super>Left" type="empty"/> - <property name="<Super>Right" type="empty"/> - <property name="<Super>KP_7" type="empty"/> - <property name="<Super>Up" type="empty"/> - <property name="<Super>KP_9" type="empty"/> - </property> - <property name="custom" type="empty"> - <property name="Up" type="string" value="up_key"/> - <property name="<Primary><Alt>KP_9" type="string" value="move_window_workspace_9_key"/> - <property name="<Super>KP_7" type="string" value="tile_up_left_key"/> - <property name="Left" type="string" value="left_key"/> - <property name="<Super>KP_9" type="string" value="tile_up_right_key"/> - <property name="<Primary><Alt>KP_7" type="string" value="move_window_workspace_7_key"/> - <property name="<Primary>F3" type="string" value="workspace_3_key"/> - <property name="<Super>Up" type="string" value="tile_up_key"/> - <property name="<Alt>Tab" type="string" value="cycle_windows_key"/> - <property name="<Primary><Alt>KP_6" type="string" value="move_window_workspace_6_key"/> - <property name="<Alt>Insert" type="string" value="add_workspace_key"/> - <property name="<Primary><Alt>Right" type="string" value="right_workspace_key"/> - <property name="<Primary><Shift><Alt>Right" type="string" value="move_window_right_key"/> - <property name="<Primary><Alt>d" type="string" value="show_desktop_key"/> - <property name="<Primary><Alt>Up" type="string" value="up_workspace_key"/> - <property name="<Primary><Alt>KP_8" type="string" value="move_window_workspace_8_key"/> - <property name="<Primary><Alt>KP_4" type="string" value="move_window_workspace_4_key"/> - <property name="<Alt><Shift>Tab" type="string" value="cycle_reverse_windows_key"/> - <property name="<Primary><Alt>KP_3" type="string" value="move_window_workspace_3_key"/> - <property name="<Primary><Alt>Home" type="string" value="move_window_prev_workspace_key"/> - <property name="<Super>Right" type="string" value="tile_right_key"/> - <property name="<Primary><Alt>Down" type="string" value="down_workspace_key"/> - <property name="<Alt>F5" type="string" value="maximize_horiz_key"/> - <property name="<Primary><Shift><Alt>Left" type="string" value="move_window_left_key"/> - <property name="<Alt>F11" type="string" value="fullscreen_key"/> - <property name="<Super>Down" type="string" value="tile_down_key"/> - <property name="<Alt>F6" type="string" value="maximize_vert_key"/> - <property name="<Alt>F4" type="string" value="close_window_key"/> - <property name="<Alt>F12" type="string" value="above_key"/> - <property name="Escape" type="string" value="cancel_key"/> - <property name="<Alt>F7" type="string" value="maximize_window_key"/> - <property name="<Alt>F8" type="string" value="stick_window_key"/> - <property name="<Primary><Alt>End" type="string" value="move_window_next_workspace_key"/> - <property name="<Primary>F11" type="string" value="workspace_11_key"/> - <property name="<Primary>F10" type="string" value="workspace_10_key"/> - <property name="<Super>Tab" type="string" value="switch_window_key"/> - <property name="<Alt>F9" type="string" value="hide_window_key"/> - <property name="<Primary><Shift><Alt>Up" type="string" value="move_window_up_key"/> - <property name="Down" type="string" value="down_key"/> - <property name="<Shift><Alt>Page_Down" type="string" value="lower_window_key"/> - <property name="Right" type="string" value="right_key"/> - <property name="<Primary>F6" type="string" value="workspace_6_key"/> - <property name="<Primary>F12" type="string" value="workspace_12_key"/> - <property name="<Primary>F1" type="string" value="workspace_1_key"/> - <property name="<Primary><Alt>Left" type="string" value="left_workspace_key"/> - <property name="<Primary>F2" type="string" value="workspace_2_key"/> - <property name="<Primary>F4" type="string" value="workspace_4_key"/> - <property name="<Primary>F5" type="string" value="workspace_5_key"/> - <property name="<Super>Left" type="string" value="tile_left_key"/> - <property name="<Primary>F7" type="string" value="workspace_7_key"/> - <property name="<Primary>F8" type="string" value="workspace_8_key"/> - <property name="<Primary>F9" type="string" value="workspace_9_key"/> - <property name="<Primary><Alt>KP_1" type="string" value="move_window_workspace_1_key"/> - <property name="<Super>KP_1" type="string" value="tile_down_left_key"/> - <property name="<Shift><Alt>Page_Up" type="string" value="raise_window_key"/> - <property name="<Super>KP_3" type="string" value="tile_down_right_key"/> - <property name="<Primary><Alt>KP_2" type="string" value="move_window_workspace_2_key"/> - <property name="<Alt>Delete" type="string" value="del_workspace_key"/> - <property name="<Alt>space" type="string" value="popup_menu_key"/> - <property name="<Primary><Alt>KP_5" type="string" value="move_window_workspace_5_key"/> - <property name="override" type="bool" value="true"/> - </property> - </property> - <property name="providers" type="array"> - <value type="string" value="xfwm4"/> - <value type="string" value="commands"/> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml deleted file mode 100644 index 1d7482c..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml +++ /dev/null @@ -1,19 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfce4-notifyd" version="1.0"> - <property name="notify-location" type="empty"/> - <property name="theme" type="empty"/> - <property name="initial-opacity" type="empty"/> - <property name="applications" type="empty"> - <property name="known_applications" type="array"> - <value type="string" value="Firefox"/> - <value type="string" value="google-chrome"/> - <value type="string" value="nm-applet"/> - <value type="string" value="notify-send"/> - <value type="string" value="org.gnome.Evolution-alarm-notify"/> - <value type="string" value="Spotify"/> - <value type="string" value="Xfce volume control"/> - <value type="string" value="xfce4-settings-helper"/> - </property> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml deleted file mode 100644 index 3077199..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml +++ /dev/null @@ -1,98 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfce4-panel" version="1.0"> - <property name="panels" type="uint" value="1"> - <property name="panel-0" type="empty"> - <property name="position" type="string" value="p=6;x=0;y=0"/> - <property name="length" type="uint" value="100"/> - <property name="position-locked" type="bool" value="true"/> - <property name="plugin-ids" type="array"> - <value type="int" value="7"/> - <value type="int" value="12"/> - <value type="int" value="2"/> - <value type="int" value="3"/> - <value type="int" value="4"/> - <value type="int" value="5"/> - <value type="int" value="6"/> - <value type="int" value="1"/> - <value type="int" value="10"/> - <value type="int" value="11"/> - </property> - <property name="background-style" type="uint" value="0"/> - <property name="background-alpha" type="uint" value="80"/> - <property name="size" type="uint" value="32"/> - <property name="length-adjust" type="bool" value="true"/> - <property name="span-monitors" type="bool" value="false"/> - <property name="enter-opacity" type="uint" value="100"/> - <property name="leave-opacity" type="uint" value="100"/> - <property name="mode" type="uint" value="0"/> - <property name="autohide-behavior" type="uint" value="0"/> - </property> - </property> - <property name="plugins" type="empty"> - <property name="plugin-2" type="string" value="tasklist"> - <property name="flat-buttons" type="bool" value="true"/> - </property> - <property name="plugin-3" type="string" value="separator"> - <property name="style" type="uint" value="0"/> - <property name="expand" type="bool" value="true"/> - </property> - <property name="plugin-4" type="string" value="systray"> - <property name="show-frame" type="bool" value="false"/> - <property name="size-max" type="uint" value="22"/> - <property name="names-visible" type="array"> - <value type="string" value="network"/> - <value type="string" value="networkmanager applet"/> - <value type="string" value="blueman-applet"/> - <value type="string" value="remmina"/> - </property> - <property name="names-ordered" type="array"> - <value type="string" value="remmina"/> - <value type="string" value="hexchat"/> - <value type="string" value="obs"/> - </property> - <property name="known-items" type="array"> - <value type="string" value="chrome_status_icon_1"/> - <value type="string" value="Barrier"/> - <value type="string" value="discord1"/> - <value type="string" value="vlc"/> - <value type="string" value="obs"/> - <value type="string" value="remmina-icon"/> - </property> - <property name="known-legacy-items" type="array"> - <value type="string" value="reminders"/> - <value type="string" value="evolution-alarm-notify"/> - <value type="string" value="remmina"/> - </property> - </property> - <property name="plugin-9" type="string" value="pulseaudio"> - <property name="enable-keyboard-shortcuts" type="bool" value="true"/> - <property name="enable-mpris" type="bool" value="true"/> - <property name="mixer-command" type="string" value="pavucontrol"/> - <property name="mpris-players" type="string" value="parole"/> - <property name="show-notifications" type="bool" value="true"/> - </property> - <property name="plugin-10" type="string" value="separator"> - <property name="style" type="uint" value="0"/> - <property name="expand" type="bool" value="false"/> - </property> - <property name="plugin-11" type="string" value="clock"> - <property name="digital-format" type="string" value="%d %b, %H:%M:%S"/> - </property> - <property name="plugin-12" type="string" value="pager"> - <property name="rows" type="uint" value="1"/> - <property name="miniature-view" type="bool" value="true"/> - </property> - <property name="plugin-13" type="string" value="genmon"/> - <property name="plugin-1" type="string" value="xfce4-clipman-plugin"/> - <property name="plugin-5" type="string" value="cpugraph"/> - <property name="plugin-6" type="string" value="pulseaudio"> - <property name="enable-keyboard-shortcuts" type="bool" value="true"/> - <property name="mpris-players" type="string" value="chrome.instance486584;firefox.instance139344;firefox.instance177030;firefox.instance354219;firefox.instance435270;firefox.instance47310;firefox.instance67698;firefox.instance8847;firefox.instance984;kdeconnect.mpris_139c920d94b14a47b3c01f1cb40b9a31;spotify;vlc"/> - </property> - <property name="plugin-7" type="string" value="applicationsmenu"> - <property name="show-button-title" type="bool" value="false"/> - </property> - </property> - <property name="configver" type="int" value="2"/> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml deleted file mode 100644 index 2950c5c..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml +++ /dev/null @@ -1,20 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfce4-power-manager" version="1.0"> - <property name="xfce4-power-manager" type="empty"> - <property name="power-button-action" type="empty"/> - <property name="lock-screen-suspend-hibernate" type="bool" value="false"/> - <property name="logind-handle-lid-switch" type="empty"/> - <property name="blank-on-ac" type="int" value="60"/> - <property name="blank-on-battery" type="empty"/> - <property name="dpms-enabled" type="bool" value="false"/> - <property name="dpms-on-ac-sleep" type="uint" value="60"/> - <property name="dpms-on-ac-off" type="uint" value="60"/> - <property name="dpms-on-battery-sleep" type="empty"/> - <property name="dpms-on-battery-off" type="empty"/> - <property name="show-panel-label" type="empty"/> - <property name="brightness-switch-restore-on-exit" type="int" value="1"/> - <property name="brightness-switch" type="int" value="0"/> - <property name="show-tray-icon" type="bool" value="false"/> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml deleted file mode 100644 index ac75ee5..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml +++ /dev/null @@ -1,45 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfce4-session" version="1.0"> - <property name="general" type="empty"> - <property name="FailsafeSessionName" type="empty"/> - <property name="LockCommand" type="empty"/> - <property name="SaveOnExit" type="bool" value="true"/> - <property name="SessionName" type="string" value="Default"/> - </property> - <property name="sessions" type="empty"> - <property name="Failsafe" type="empty"> - <property name="IsFailsafe" type="empty"/> - <property name="Count" type="empty"/> - <property name="Client0_Command" type="empty"/> - <property name="Client0_Priority" type="empty"/> - <property name="Client0_PerScreen" type="empty"/> - <property name="Client1_Command" type="empty"/> - <property name="Client1_Priority" type="empty"/> - <property name="Client1_PerScreen" type="empty"/> - <property name="Client2_Command" type="empty"/> - <property name="Client2_Priority" type="empty"/> - <property name="Client2_PerScreen" type="empty"/> - <property name="Client3_Command" type="empty"/> - <property name="Client3_Priority" type="empty"/> - <property name="Client3_PerScreen" type="empty"/> - <property name="Client4_Command" type="empty"/> - <property name="Client4_Priority" type="empty"/> - <property name="Client4_PerScreen" type="empty"/> - </property> - </property> - <property name="splash" type="empty"> - <property name="Engine" type="empty"/> - </property> - <property name="compat" type="empty"> - <property name="LaunchGNOME" type="empty"/> - </property> - <property name="shutdown" type="empty"> - <property name="LockScreen" type="empty"/> - </property> - <property name="startup" type="empty"> - <property name="screensaver" type="empty"> - <property name="type" type="empty"/> - </property> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml deleted file mode 100644 index e3f254f..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml +++ /dev/null @@ -1,8 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfce4-settings-manager" version="1.0"> - <property name="last" type="empty"> - <property name="window-width" type="int" value="948"/> - <property name="window-height" type="int" value="2032"/> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml deleted file mode 100644 index d13769e..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml +++ /dev/null @@ -1,97 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xfwm4" version="1.0"> - <property name="general" type="empty"> - <property name="activate_action" type="string" value="bring"/> - <property name="box_move" type="bool" value="false"/> - <property name="box_resize" type="bool" value="false"/> - <property name="button_layout" type="string" value="O|SHMC"/> - <property name="button_offset" type="int" value="0"/> - <property name="button_spacing" type="int" value="0"/> - <property name="click_to_focus" type="bool" value="true"/> - <property name="cycle_apps_only" type="bool" value="false"/> - <property name="cycle_draw_frame" type="bool" value="true"/> - <property name="cycle_preview" type="bool" value="true"/> - <property name="double_click_distance" type="int" value="5"/> - <property name="double_click_time" type="int" value="250"/> - <property name="focus_delay" type="int" value="250"/> - <property name="focus_new" type="bool" value="true"/> - <property name="frame_opacity" type="int" value="100"/> - <property name="full_width_title" type="bool" value="true"/> - <property name="maximized_offset" type="int" value="0"/> - <property name="mousewheel_rollup" type="bool" value="true"/> - <property name="placement_mode" type="string" value="center"/> - <property name="raise_delay" type="int" value="250"/> - <property name="raise_on_click" type="bool" value="true"/> - <property name="raise_on_focus" type="bool" value="false"/> - <property name="repeat_urgent_blink" type="bool" value="false"/> - <property name="scroll_workspaces" type="bool" value="true"/> - <property name="shadow_delta_height" type="int" value="0"/> - <property name="shadow_delta_width" type="int" value="0"/> - <property name="shadow_delta_x" type="int" value="0"/> - <property name="shadow_delta_y" type="int" value="-3"/> - <property name="shadow_opacity" type="int" value="50"/> - <property name="show_app_icon" type="bool" value="false"/> - <property name="show_dock_shadow" type="bool" value="true"/> - <property name="show_frame_shadow" type="bool" value="true"/> - <property name="show_popup_shadow" type="bool" value="false"/> - <property name="snap_to_border" type="bool" value="true"/> - <property name="snap_to_windows" type="bool" value="false"/> - <property name="snap_width" type="int" value="10"/> - <property name="theme" type="string" value="Default"/> - <property name="title_alignment" type="string" value="center"/> - <property name="title_font" type="string" value="Sans Bold 9"/> - <property name="title_horizontal_offset" type="int" value="0"/> - <property name="title_shadow_active" type="string" value="false"/> - <property name="title_shadow_inactive" type="string" value="false"/> - <property name="title_vertical_offset_active" type="int" value="0"/> - <property name="title_vertical_offset_inactive" type="int" value="0"/> - <property name="urgent_blink" type="bool" value="false"/> - <property name="use_compositing" type="bool" value="true"/> - <property name="workspace_count" type="int" value="5"/> - <property name="workspace_names" type="array"> - <value type="string" value="1"/> - <value type="string" value="2"/> - <value type="string" value="3"/> - <value type="string" value="5"/> - <value type="string" value="6"/> - <value type="string" value="7"/> - <value type="string" value="9"/> - <value type="string" value="Workspace 8"/> - <value type="string" value="9"/> - </property> - <property name="wrap_resistance" type="int" value="10"/> - <property name="wrap_windows" type="bool" value="true"/> - <property name="wrap_workspaces" type="bool" value="false"/> - <property name="borderless_maximize" type="bool" value="true"/> - <property name="cycle_hidden" type="bool" value="true"/> - <property name="cycle_minimum" type="bool" value="true"/> - <property name="cycle_tabwin_mode" type="int" value="0"/> - <property name="cycle_workspaces" type="bool" value="false"/> - <property name="double_click_action" type="string" value="maximize"/> - <property name="easy_click" type="string" value="Alt"/> - <property name="focus_hint" type="bool" value="true"/> - <property name="horiz_scroll_opacity" type="bool" value="false"/> - <property name="inactive_opacity" type="int" value="100"/> - <property name="move_opacity" type="int" value="100"/> - <property name="placement_ratio" type="int" value="20"/> - <property name="popup_opacity" type="int" value="100"/> - <property name="prevent_focus_stealing" type="bool" value="false"/> - <property name="raise_with_any_button" type="bool" value="true"/> - <property name="resize_opacity" type="int" value="100"/> - <property name="snap_resist" type="bool" value="false"/> - <property name="sync_to_vblank" type="bool" value="false"/> - <property name="tile_on_move" type="bool" value="true"/> - <property name="titleless_maximize" type="bool" value="false"/> - <property name="toggle_workspaces" type="bool" value="false"/> - <property name="unredirect_overlays" type="bool" value="true"/> - <property name="wrap_cycle" type="bool" value="true"/> - <property name="wrap_layout" type="bool" value="true"/> - <property name="zoom_desktop" type="bool" value="true"/> - <property name="cycle_raise" type="bool" value="false"/> - <property name="cycle_minimized" type="bool" value="false"/> - <property name="frame_border_top" type="int" value="0"/> - <property name="vblank_mode" type="string" value="auto"/> - <property name="zoom_pointer" type="bool" value="true"/> - </property> -</channel> diff --git a/.config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml b/.config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml deleted file mode 100644 index 762e18a..0000000 --- a/.config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml +++ /dev/null @@ -1,49 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> - -<channel name="xsettings" version="1.0"> - <property name="Net" type="empty"> - <property name="ThemeName" type="string" value="Adwaita-dark"/> - <property name="IconThemeName" type="string" value="Arc"/> - <property name="DoubleClickTime" type="empty"/> - <property name="DoubleClickDistance" type="empty"/> - <property name="DndDragThreshold" type="empty"/> - <property name="CursorBlink" type="empty"/> - <property name="CursorBlinkTime" type="empty"/> - <property name="SoundThemeName" type="empty"/> - <property name="EnableEventSounds" type="empty"/> - <property name="EnableInputFeedbackSounds" type="empty"/> - <property name="FallbackIconTheme" type="empty"/> - </property> - <property name="Xft" type="empty"> - <property name="DPI" type="int" value="130"/> - <property name="Antialias" type="int" value="1"/> - <property name="Hinting" type="int" value="1"/> - <property name="HintStyle" type="string" value="hintslight"/> - <property name="RGBA" type="string" value="rgb"/> - <property name="Lcdfilter" type="empty"/> - </property> - <property name="Gtk" type="empty"> - <property name="CanChangeAccels" type="empty"/> - <property name="ColorPalette" type="empty"/> - <property name="FontName" type="string" value="Sans 12"/> - <property name="MonospaceFontName" type="string" value="Liberation Mono 12"/> - <property name="IconSizes" type="empty"/> - <property name="KeyThemeName" type="empty"/> - <property name="ToolbarStyle" type="empty"/> - <property name="ToolbarIconSize" type="empty"/> - <property name="MenuImages" type="empty"/> - <property name="ButtonImages" type="empty"/> - <property name="MenuBarAccel" type="empty"/> - <property name="CursorThemeName" type="string" value="elementary"/> - <property name="CursorThemeSize" type="empty"/> - <property name="DecorationLayout" type="empty"/> - <property name="DialogsUseHeader" type="empty"/> - <property name="TitlebarMiddleClick" type="empty"/> - </property> - <property name="Gdk" type="empty"> - <property name="WindowScalingFactor" type="empty"/> - </property> - <property name="Xfce" type="empty"> - <property name="LastCustomDPI" type="int" value="130"/> - </property> -</channel> diff --git a/.conkyrc b/.conkyrc deleted file mode 100644 index 5bd27fd..0000000 --- a/.conkyrc +++ /dev/null @@ -1,78 +0,0 @@ -# Conky, a system monitor, based on torsmo -# -# Any original torsmo code is licensed under the BSD license -# -# All code written since the fork of torsmo is licensed under the GPL -# -# Please see COPYING for details -# -# Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen -# Copyright (c) 2005-2010 Brenden Matthews, Philip Kovacs, et. al. (see AUTHORS) -# All rights reserved. -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# You should have received a copy of the GNU General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# -alignment top_right -background no -border_width 1 -cpu_avg_samples 2 -default_color white -default_outline_color white -default_shade_color white -draw_borders no -draw_graph_borders yes -draw_outline no -draw_shades no -use_xft yes -xftfont DejaVu Sans Mono:size=12 -gap_x 5 -gap_y 60 -minimum_size 5 5 -net_avg_samples 2 -no_buffers yes -out_to_console no -out_to_stderr no -extra_newline no -own_window yes -own_window_class Conky -own_window_type override -own_window_transparent yes -stippled_borders 0 -update_interval 1.0 -uppercase no -use_spacer none -show_graph_scale no -show_graph_range no -double_buffer yes - -TEXT -${scroll 30 $nodename - $sysname $kernel on $machine | } -$hr -${color grey}Uptime:$color $uptime -${color grey}Frequency (in MHz):$color $freq -${color grey}Frequency (in GHz):$color $freq_g -${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4} -${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4} -${color grey}CPU Usage:$color $cpu% ${cpubar 4} -${color grey}Processes:$color $processes ${color grey}Running:$color $running_processes -$hr -${color grey}File systems: - / $color${fs_used /}/${fs_size /} ${fs_bar 6 /} -${color grey}Networking: -Up:$color ${upspeed eth0} ${color grey} - Down:$color ${downspeed eth0} -$hr -${color grey}Name PID CPU% MEM% -${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1} -${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2} -${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3} -${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4} diff --git a/.emacs.local/barak-theme.el b/.emacs.local/barak-theme.el deleted file mode 100644 index 70dad62..0000000 --- a/.emacs.local/barak-theme.el +++ /dev/null @@ -1,262 +0,0 @@ -;;; Code: - -(deftheme barak "Barak's Theme") - -;;; Color Palette - -(defvar zenburn-colors-alist - '(("zenburn-fg+1" . "#FFFFEF") - ("zenburn-fg" . "#DCDCCC") - ("zenburn-fg-1" . "#656555") - ("zenburn-bg-2" . "#000000") - ("zenburn-bg-1" . "#2B2B2B") - ("zenburn-bg-05" . "#383838") - ("zenburn-bg" . "#3F3F3F") - ("zenburn-bg+1" . "#4F4F4F") - ("zenburn-bg+2" . "#5F5F5F") - ("zenburn-bg+3" . "#6F6F6F") - ("zenburn-red+1" . "#DCA3A3") - ("zenburn-red" . "#CC9393") - ("zenburn-red-1" . "#BC8383") - ("zenburn-red-2" . "#AC7373") - ("zenburn-red-3" . "#9C6363") - ("zenburn-red-4" . "#8C5353") - ("zenburn-orange" . "#DFAF8F") - ("zenburn-yellow" . "#F0DFAF") - ("zenburn-yellow-1" . "#E0CF9F") - ("zenburn-yellow-2" . "#D0BF8F") - ("zenburn-green-1" . "#5F7F5F") - ("zenburn-green" . "#7F9F7F") - ("zenburn-green+1" . "#8FB28F") - ("zenburn-green+2" . "#9FC59F") - ("zenburn-green+3" . "#AFD8AF") - ("zenburn-green+4" . "#BFEBBF") - ("zenburn-cyan" . "#93E0E3") - ("zenburn-blue+1" . "#94BFF3") - ("zenburn-blue" . "#8CD0D3") - ("zenburn-blue-1" . "#7CB8BB") - ("zenburn-blue-2" . "#6CA0A3") - ("zenburn-blue-3" . "#5C888B") - ("zenburn-blue-4" . "#4C7073") - ("zenburn-blue-5" . "#366060") - ("zenburn-magenta" . "#DC8CC3"))) - -(defvar barak-colors-alist - '(("background" . "#000000") - ("cursor" . "#A7A7A7") - ("fg-default" . "#E0E0E0") - ("mouse" . "sienna1") - ("comment" . "#238E23") - ("constant" . "#E3AC3D") - ("docstring" . "DarkOrange") - ("zenburn-fg+1" . "#FFFFEF") - ("zenburn-fg" . "#DCDCCC") - ("zenburn-fg-1" . "#656555") - ("zenburn-bg-2" . "#000000") - ("zenburn-bg-1" . "#2B2B2B") - ("zenburn-bg-05" . "#383838") - ("zenburn-bg" . "#3F3F3F") - ("zenburn-bg+1" . "#4F4F4F") - ("zenburn-bg+2" . "#5F5F5F") - ("zenburn-bg+3" . "#6F6F6F") - ("zenburn-red+1" . "#DCA3A3") - ("zenburn-red" . "#CC9393") - ("zenburn-red-1" . "#BC8383") - ("zenburn-red-2" . "#AC7373") - ("zenburn-red-3" . "#9C6363") - ("zenburn-red-4" . "#8C5353") - ("zenburn-orange" . "#DFAF8F") - ("zenburn-yellow" . "#F0DFAF") - ("zenburn-yellow-1" . "#E0CF9F") - ("zenburn-yellow-2" . "#D0BF8F") - ("zenburn-green-1" . "#5F7F5F") - ("zenburn-green" . "#7F9F7F") - ("zenburn-green+1" . "#8FB28F") - ("zenburn-green+2" . "#9FC59F") - ("zenburn-green+3" . "#AFD8AF") - ("zenburn-green+4" . "#BFEBBF") - ("zenburn-cyan" . "#93E0E3") - ("zenburn-blue+1" . "#94BFF3") - ("zenburn-blue" . "#8CD0D3") - ("zenburn-blue-1" . "#7CB8BB") - ("zenburn-blue-2" . "#6CA0A3") - ("zenburn-blue-3" . "#5C888B") - ("zenburn-blue-4" . "#4C7073") - ("zenburn-blue-5" . "#366060") - ("zenburn-magenta" . "#DC8CC3")) - "List of Zenburn colors. -Each element has the form (NAME . HEX).") - - -(defmacro barak-with-color-variables (&rest body) - "`let' bind all colors defined in `zenburn-colors-alist' around BODY. -Also bind `class' to ((class color) (min-colors 89))." - (declare (indent 0)) - `(let ((class '((class color) (min-colors 89))) - ,@(mapcar (lambda (cons) - (list (intern (car cons)) (cdr cons))) - barak-colors-alist)) - ,@body)) - -(defmacro zenburn-with-color-variables (&rest body) - "`let' bind all colors defined in `zenburn-colors-alist' around BODY. -Also bind `class' to ((class color) (min-colors 89))." - (declare (indent 0)) - `(let ((class '((class color) (min-colors 89))) - ,@(mapcar (lambda (cons) - (list (intern (car cons)) (cdr cons))) - zenburn-colors-alist)) - ,@body)) - -;;; Theme Faces -(barak-with-color-variables - (custom-theme-set-faces - 'barak -;;;; Built-in -;;;;; basic coloring - '(button ((t (:underline t)))) - `(link ((t (:foreground ,zenburn-yellow :underline t :weight bold)))) - `(link-visited ((t (:foreground ,zenburn-yellow-2 :underline t :weight normal)))) - `(default ((t (:foreground ,fg-default :background ,background)))) - `(cursor ((t (:foreground ,cursor :background ,zenburn-fg+1)))) - `(blue ((t (:foreground "blue")))) - `(bold ((t (:bold t)))) - `(bold-italic ((t (:bold t)))) - `(border-glyph ((t (nil)))) - `(buffers-tab ((t (:background "#121212" :foreground "#E0E0E0")))) - `(font-lock-builtin-face ((t (:foreground "#E0E0E0")))) - `(font-lock-comment-face ((t (:foreground "#238E23")))) - `(font-lock-constant-face ((t (:foreground "#E3AC3D")))) - `(font-lock-doc-string-face ((t (:foreground "DarkOrange")))) - `(font-lock-function-name-face ((t (:foreground "#C5A6FF")))) - `(font-lock-keyword-face ((t (:bold t :foreground "#4876FF")))) - `(font-lock-preprocessor-face ((t (:foreground "#E9DFEF")))) - `(font-lock-reference-face ((t (:foreground "#E1634F")))) - `(font-lock-regexp-grouping-backslash ((t (:foreground "#E9C062")))) - `(font-lock-regexp-grouping-construct ((t (:foreground "red")))) - `(font-lock-string-face ((t (:foreground "#F05656")))) - `(font-lock-type-face ((t (:foreground "#73E1E6")))) - `(font-lock-variable-name-face ((t (:foreground "#00BFFF")))) - `(font-lock-warning-face ((t (:bold t :foreground "Pink")))) - `(gui-element ((t (:background "#A0A0A0" :foreground "black")))) - `(region ((t (:background "#364458")))) - `(mode-line ((t (:background "grey75" :foreground "black")))) - `(highlight ((t (:background "#222222")))) - `(highline-face ((t (:background "SeaGreen")))) - `(italic ((t (nil)))) - `(left-margin ((t (nil)))) - `(text-cursor ((t (:background "green" :foreground "black")))) - `(toolbar ((t (nil)))) - `(tabbar-default ((t (:background "black" :foreground "grey75")))) - `(tabbar-selected ((t (:background "grey75" :foreground "black")))) - `(tabbar-highlight ((t (:bold t)))) - `(underline ((nil (:underline nil)))) - `(match ((t (:bold t :background nil)))) - `(show-paren-match ((t ((:bold t :foreground "#00ff00" :background nil))))) - - ; company mode - `(company-tooltip ((t (:background "#303840" :foreground "#e0e0e0")))) - `(company-tooltip-annotation ((t (:bold t :background "#303840" :foreground "#cae682")))) - `(company-tooltip-selection ((t (:bold t :background "#505860" :foreground "#ffa000")))) - `(company-scrollbar-bg ((t (:background "#505860" :foreground "#505860")))) - `(company-scrollbar-fg ((t (:background "#808890" :foreground "#808890")))) - ; powerline - `(powerline-active1 ((t (:background "#303840" :foreground "#e0e0e0")))) - `(powerline-active2 ((t (:background "#505860" :foreground "#ffa000")))) - ; motion-face - `(spacemacs-motion-face ((t (:background "#5f87ff" :foreground "#ffffff")))) - `(spacemacs-normal-face ((t (:background "#5f87ff" :foreground "#ffffff")))) - `(spacemacs-replace-face ((t (:background "#870000" :foreground "#ffffff")))) - `(spacemacs-visual-face ((t (:background "#ffac00" :foreground "#ffffff")))) - )) - -;;; Theme Variables -(zenburn-with-color-variables - (custom-theme-set-variables - 'barak -;;;;; ansi-color - `(ansi-color-names-vector [,zenburn-bg ,zenburn-red ,zenburn-green ,zenburn-yellow - ,zenburn-blue ,zenburn-magenta ,zenburn-cyan ,zenburn-fg]) -;;;;; fill-column-indicator - `(fci-rule-color ,zenburn-bg-05) -;;;;; vc-annotate - `(vc-annotate-color-map - '(( 20. . ,zenburn-red-1) - ( 40. . ,zenburn-red) - ( 60. . ,zenburn-orange) - ( 80. . ,zenburn-yellow-2) - (100. . ,zenburn-yellow-1) - (120. . ,zenburn-yellow) - (140. . ,zenburn-green-1) - (160. . ,zenburn-green) - (180. . ,zenburn-green+1) - (200. . ,zenburn-green+2) - (220. . ,zenburn-green+3) - (240. . ,zenburn-green+4) - (260. . ,zenburn-cyan) - (280. . ,zenburn-blue-2) - (300. . ,zenburn-blue-1) - (320. . ,zenburn-blue) - (340. . ,zenburn-blue+1) - (360. . ,zenburn-magenta))) - `(vc-annotate-very-old-color ,zenburn-magenta) - `(vc-annotate-background ,zenburn-bg-1) - )) - -;;; Rainbow Support - -;; (declare-function rainbow-mode 'rainbow-mode) -;; (declare-function rainbow-colorize-by-assoc 'rainbow-mode) - -(defvar barak-add-font-lock-keywords nil - "Whether to add font-lock keywords for zenburn color names. -In buffers visiting library `zenburn-theme.el' the zenburn -specific keywords are always added. In all other Emacs-Lisp -buffers this variable controls whether this should be done. -This requires library `rainbow-mode'.") - -(defvar barak-colors-font-lock-keywords nil) - -;; (defadvice rainbow-turn-on (after zenburn activate) -;; "Maybe also add font-lock keywords for zenburn colors." -;; (when (and (derived-mode-p 'emacs-lisp-mode) -;; (or zenburn-add-font-lock-keywords -;; (equal (file-name-nondirectory (buffer-file-name)) -;; "zenburn-theme.el"))) -;; (unless zenburn-colors-font-lock-keywords -;; (setq zenburn-colors-font-lock-keywords -;; `((,(regexp-opt (mapcar 'car zenburn-colors-alist) 'words) -;; (0 (rainbow-colorize-by-assoc zenburn-colors-alist)))))) -;; (font-lock-add-keywords nil zenburn-colors-font-lock-keywords))) - -;; (defadvice rainbow-turn-off (after zenburn activate) -;; "Also remove font-lock keywords for zenburn colors." -;; (font-lock-remove-keywords nil zenburn-colors-font-lock-keywords)) - -;;; Footer - -;;;###autoload -;; (and load-file-name -;; (boundp 'custom-theme-load-path) -;; (add-to-list 'custom-theme-load-path -;; (file-name-as-directory -;; (file-name-directory load-file-name)))) - -;(defun color-theme-barak-extras () -;; Highlight numbers -;(add-hook 'after-change-major-mode-hook - ;(lambda () (font-lock-add-keywords - ;nil - ;'(("\\<\\(\\(0[xX]\\|0[bB]\\)?-?[0-9a-fA-F]+\\.?[0-9]*?[fFlL]?\\)\\>" 1 '((t (:foreground "#E3AC3D"))))))))) - -(provide-theme 'barak) - -;;;###autoload -;; (add-to-list 'safe-local-eval-forms -;; '(when (require 'rainbow-mode nil t) (rainbow-mode 1))) - -;; Local Variables: -;; no-byte-compile: t -;; indent-tabs-mode: nil -;; eval: (when (require 'rainbow-mode nil t) (rainbow-mode 1)) -;; End: diff --git a/.fehbg.example b/.fehbg.example deleted file mode 100755 index 322d2ee..0000000 --- a/.fehbg.example +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -feh --bg-fill '/home/barak/Documents/Grand_Central_Station_ultra_hd_wallpapers_4k.jpg' diff --git a/.fonts.conf b/.fonts.conf deleted file mode 120000 index 20d11f6..0000000 --- a/.fonts.conf +++ /dev/null @@ -1 +0,0 @@ -/home/barak/.config/fontconfig/fonts.conf \ No newline at end of file diff --git a/.fonts/Droid Sans Mono Dotted.ttf b/.fonts/Droid Sans Mono Dotted.ttf deleted file mode 100644 index e56a5ca7171d818ae4476e10abbeb208083aae13..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 117696 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 diff --git a/.gitconfig b/.gitconfig deleted file mode 100644 index 5c45626..0000000 --- a/.gitconfig +++ /dev/null @@ -1,60 +0,0 @@ -[user] - name = Barak Michener - email = me@barakmich.com - -[alias] - br = branch -a -v - st = status -uno - stat = status -uno - ci = commit - co = checkout - w = whatchanged - revert = checkout -f - stagediff = diff --staged - sdiff = diff --staged - graph = log --graph --oneline - submodule-pull = submodule foreach git pull - ours = "!f() { git checkout --ours $@ && git add $@; }; f" - theirs = "!f() { git checkout --theirs $@ && git add $@; }; f" - praise = blame - hist = show-branch -a - undo-last = reset HEAD^ - unstage = restore --staged - latest = branch --sort=committerdate - f = fetch origin main - -[diff] - renamelimit = 0 - -[merge] - conflictstyle = diff3 - -[color] - diff = auto - interactive = auto - status = auto - branch = auto - -[core] - autocrlf = input -;[push] - ;default = simple -[push] - default = current -[rerere] - enabled = true - -[url "git@github.com:"] - insteadOf = https://github.com - -[url "git@git.barakmich.com:"] - insteadOf = https://git.barakmich.com -[pull] - ff = only -[init] - defaultBranch = main -[filter "lfs"] - clean = git-lfs clean -- %f - smudge = git-lfs smudge -- %f - process = git-lfs filter-process - required = true diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 93bfd12..0000000 --- a/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*~ -.DS_Store diff --git a/.gnome.dconf b/.gnome.dconf deleted file mode 100644 index 7fd06a0..0000000 --- a/.gnome.dconf +++ /dev/null @@ -1,100 +0,0 @@ -[desktop/input-sources] -current=uint32 0 -sources=[('xkb', 'us')] -xkb-options=['lv3:ralt_switch', 'ctrl:nocaps'] - -[desktop/interface] -clock-show-seconds=false -clock-show-weekday=true -enable-hot-corners=false -gtk-im-module='gtk-im-context-simple' -gtk-key-theme='Default' -show-battery-percentage=true -text-scaling-factor=1.2 -toolkit-accessibility=false - -[desktop/peripherals/mouse] -natural-scroll=false - -[desktop/peripherals/touchpad] -natural-scroll=false -tap-to-click=true -two-finger-scrolling-enabled=true - -[desktop/privacy] -report-technical-problems=false - -[desktop/wm/keybindings] -close=['<Shift><Alt>c'] -move-to-workspace-1=['<Shift><Alt>exclam'] -move-to-workspace-10=['<Shift><Alt>parenright'] -move-to-workspace-2=['<Shift><Alt>at'] -move-to-workspace-3=['<Shift><Alt>numbersign'] -move-to-workspace-4=['<Shift><Alt>dollar'] -move-to-workspace-5=['<Shift><Alt>percent'] -move-to-workspace-6=['<Shift><Alt>asciicircum'] -move-to-workspace-7=['<Shift><Alt>ampersand'] -move-to-workspace-8=['<Shift><Alt>asterisk'] -move-to-workspace-9=['<Shift><Alt>parenleft'] -move-to-workspace-left=['<Primary><Shift><Alt>h'] -move-to-workspace-right=['<Primary><Shift><Alt>l'] -switch-to-workspace-1=['<Alt>1'] -switch-to-workspace-10=['<Alt>0'] -switch-to-workspace-2=['<Alt>2'] -switch-to-workspace-3=['<Alt>3'] -switch-to-workspace-4=['<Alt>4'] -switch-to-workspace-5=['<Alt>5'] -switch-to-workspace-6=['<Alt>6'] -switch-to-workspace-7=['<Alt>7'] -switch-to-workspace-8=['<Alt>8'] -switch-to-workspace-9=['<Alt>9'] - -[desktop/wm/preferences] -focus-mode='mouse' -num-workspaces=10 - -[mutter] -dynamic-workspaces=false - -[settings-daemon/plugins/media-keys] -custom-keybindings=['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/'] -screensaver=['<Shift><Alt>F12'] - -[settings-daemon/plugins/media-keys/custom-keybindings/custom0] -binding='<Shift><Alt>Return' -command='terminator' -name='Launch Terminal' - -[shell/extensions/pop-shell] -activate-launcher=['<Primary>space'] -active-hint=true -focus-down=['<Alt>j'] -focus-left=['<Alt>h'] -focus-right=['<Alt>l'] -focus-up=['<Alt>k'] -gap-inner=uint32 2 -gap-outer=uint32 2 -hint-color-rgba='rgb(52,158,143)' -show-title=false -smart-gaps=true -tile-by-default=true -tile-enter=['<Alt>r'] -toggle-floating=['<Alt>g'] -toggle-tiling=['<Alt>y'] - -[shell/keybindings] -focus-active-notification=['<Alt>n'] -toggle-application-view=@as [] -toggle-message-tray=['<Shift><Alt>n'] - -[terminal/legacy/profiles:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9] -background-color='rgb(0,0,0)' -background-transparency-percent=13 -bold-is-bright=false -font='Iosevka Berkeley 18' -foreground-color='rgb(255,255,255)' -palette=['rgb(46,52,54)', 'rgb(204,0,0)', 'rgb(78,154,6)', 'rgb(196,160,0)', 'rgb(52,101,164)', 'rgb(117,80,123)', 'rgb(6,152,154)', 'rgb(211,215,207)', 'rgb(85,87,83)', 'rgb(239,41,41)', 'rgb(138,226,52)', 'rgb(252,233,79)', 'rgb(114,159,207)', 'rgb(173,127,168)', 'rgb(52,226,226)', 'rgb(238,238,236)'] -scrollbar-policy='never' -use-system-font=false -use-theme-colors=false -use-transparent-background=true diff --git a/.gvimrc b/.gvimrc deleted file mode 100644 index ce225a2..0000000 --- a/.gvimrc +++ /dev/null @@ -1,32 +0,0 @@ -winsize 115 45 -"set expandtab -"set guifont=DejaVu\ Sans\ Mono:h15.00 -set guifont=Inconsolata\ 14 -set guioptions-=L -set guioptions-=r -set guioptions-=m -set guioptions-=T -set guioptions+=c - -if has("gui_macvim") - set fuoptions=maxvert,maxhorz - set guifont=Inconsolata:h18 -endif -"call AppleTSetPath("~/work/client") -"map gg :CmdT -map <C-1> 1gt -map <C-2> 2gt -map <C-3> 3gt -map <C-4> 4gt -map <C-5> 5gt -map <C-6> 6gt -map <C-7> 7gt -map <C-8> 8gt -map <D-1> 1gt -map <D-2> 2gt -map <D-3> 3gt -map <D-4> 4gt -map <D-5> 5gt -map <D-6> 6gt -map <D-7> 7gt -map <D-8> 8gt diff --git a/.hgrc b/.hgrc deleted file mode 100644 index 3b743d0..0000000 --- a/.hgrc +++ /dev/null @@ -1,16 +0,0 @@ -[ui] -username = Barak Michener <me@barakmich.com> - -[extensions] -#hgext.bookmarks = -#hggit = -fetch = -color = - -[color] -status.modified = green bold -status.added = yellow bold -status.removed = red bold -status.deleted = cyan bold -status.unknown = none -status.ignored = black bold diff --git a/.i3/config b/.i3/config deleted file mode 100644 index 0574562..0000000 --- a/.i3/config +++ /dev/null @@ -1,240 +0,0 @@ -# This file has been auto-generated by i4-config-wizard(1). -# It will not be overwritten, so edit it as you like. -#jk -# Should you change your keyboard layout some time, delete -# this file and re-run i3-config-wizard(1). -# - -# i3 config file (v4) -# -# Please see http://i3wm.org/docs/userguide.html for a complete reference! - -set $mod Mod1 -set $win Mod4 - -# Font for window titles. Will also be used by the bar unless a different font -# is used in the bar {} block below. -# This font is widely installed, provides lots of unicode glyphs, right-to-left -# text rendering and scalability on retina/hidpi displays (thanks to pango). -font pango:DejaVu Sans Mono 13 -# Before i3 v4.8, we used to recommend this one as the default: -# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 -# The font above is very space-efficient, that is, it looks good, sharp and -# clear in small sizes. However, its unicode glyph coverage is limited, the old -# X core fonts rendering does not support right-to-left and this being a bitmap -# font, it doesn’t scale on retina/hidpi displays. -# - -new_window pixel 2 - -# class border backgr. text indicator -#client.focused #4c7899 #285577 #ffffff #2e9ef4 -client.focused #00bfff #00bfff #ffffff #2e9ef4 -client.focused_inactive #333333 #5f676a #ffffff #484e50 -client.unfocused #333333 #222222 #888888 #292d2e -client.urgent #2f343a #900000 #ffffff #900000 -#client.placeholder #000000 #0c0c0c #ffffff #000000 -#force_focus_wrapping yes - -# Use Mouse+$mod to drag floating windows to their wanted position -floating_modifier $mod - -#gaps inner 10 - - -# start a terminal -bindsym $mod+Shift+Return exec alacritty - -#bindsym Control+space exec rofi -show run -fuzzy -terminal run_terminal -#bindsym Control+space exec rofi -combi-modi window,run,ssh -modi combi -show combi -bindsym Control+space exec "rofi -combi-modi run,drun -modi combi -show combi -terminal run_terminal -fuzzy" - -# kill focused window -bindsym $mod+Shift+c kill - -# start dmenu (a program launcher) -#bindsym $mod+d exec dmenu_run - -bindsym $mod+d exec i3-dmenu-desktop --dmenu='rofi -dmenu' - -bindsym $mod+F12 exec xscreensaver-command -lock -bindsym $mod+Shift+y exec xinput-toggle -r yubikey -n -e -t 10 -bindsym $mod+Shift+f exec --no-startup-id xmodmap ~/.Xmodmap -bindsym $mod+Shift+s exec xfce4-screenshooter -# There also is the (new) i3-dmenu-desktop which only displays applications -# shipping a .desktop file. It is a wrapper around dmenu, so you need that -# installed. -# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop - -# change focus -bindsym $mod+h focus left -bindsym $mod+j focus down -bindsym $mod+k focus up -bindsym $mod+l focus right -#bindsym $mod+j exec --no-startup-id ~/.i3/i3-focus-next -#bindsym $mod+k exec --no-startup-id ~/.i3/i3-focus-next --reverse -bindsym $mod+y move workspace to output left -bindsym $mod+Return exec --no-startup-id ~/.i3/i3-barak-tool.py promote - -# alternatively, you can use the cursor keys: -#bindsym $mod+Left focus left -#bindsym $mod+Down focus down -#bindsym $mod+Up focus up -#bindsym $mod+Right focus right - -# move focused window -bindsym $mod+Shift+h move left -bindsym $mod+Shift+j move down -bindsym $mod+Shift+k move up -bindsym $mod+Shift+l move right - -# alternatively, you can use the cursor keys: -#bindsym $mod+Shift+Left move left -#bindsym $mod+Shift+Down move down -#bindsym $mod+Shift+Up move up -#bindsym $mod+Shift+Right move right - -# split in vim-horizontal (vertical) orientation -bindsym $mod+i split v - -# split in vim-vertical (horizontal) orientation -bindsym $mod+v split h - -# enter fullscreen mode for the focused container -bindsym $mod+f fullscreen - -# change container layout (stacked, tabbed, toggle split) -bindsym $mod+s layout stacking -bindsym $mod+w layout tabbed -bindsym $mod+e layout toggle split - -# toggle tiling / floating -bindsym $mod+Shift+space floating toggle - -# change focus between tiling / floating windows -bindsym $mod+space focus mode_toggle - -# focus the parent container -bindsym $mod+a focus parent - -# focus the child container -bindsym $mod+z focus child - -# switch to workspace -bindsym $mod+1 workspace 1 -bindsym $mod+2 workspace 2 -bindsym $mod+3 workspace 3 -bindsym $mod+4 workspace 4 -bindsym $mod+5 workspace 5 -bindsym $mod+6 workspace 6 -bindsym $mod+7 workspace 7 -bindsym $mod+8 workspace 8 -bindsym $mod+9 workspace 9 -bindsym $mod+0 workspace 10 - -bindsym $mod+Tab workspace back_and_forth - -# move focused container to workspace -bindsym $mod+Shift+1 move container to workspace 1 -bindsym $mod+Shift+2 move container to workspace 2 -bindsym $mod+Shift+3 move container to workspace 3 -bindsym $mod+Shift+4 move container to workspace 4 -bindsym $mod+Shift+5 move container to workspace 5 -bindsym $mod+Shift+6 move container to workspace 6 -bindsym $mod+Shift+7 move container to workspace 7 -bindsym $mod+Shift+8 move container to workspace 8 -bindsym $mod+Shift+9 move container to workspace 9 -bindsym $mod+Shift+0 move container to workspace 10 - -# reload the configuration file -bindsym $mod+Shift+t reload -# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) -bindsym $mod+Shift+r restart -# exit i3 (logs you out of your X session) -bindsym $mod+Shift+q exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" - -bindsym $mod+u resize set width 62ppt - -# resize window (you can also use the mouse for that) -mode "resize" { - # These bindings trigger as soon as you enter the resize mode - - # Pressing left will shrink the window’s width. - # Pressing right will grow the window’s width. - # Pressing up will shrink the window’s height. - # Pressing down will grow the window’s height. - bindsym h resize shrink width 5 px or 5 ppt - bindsym j resize grow height 5 px or 5 ppt - bindsym k resize shrink height 5 px or 5 ppt - bindsym l resize grow width 5 px or 5 ppt - - # same bindings, but for the arrow keys - #bindsym Left resize shrink width 10 px or 10 ppt - #bindsym Down resize grow height 10 px or 10 ppt - #bindsym Up resize shrink height 10 px or 10 ppt - #bindsym Right resize grow width 10 px or 10 ppt - - # back to normal: Enter or Escape - bindsym Return mode "default" - bindsym Escape mode "default" - bindsym $mod+r mode "default" -} - -bindsym $mod+r mode "resize" - -mode "moveworkspace" { - # These bindings trigger as soon as you enter the resize mode - - # Pressing left will shrink the window’s width. - # Pressing right will grow the window’s width. - # Pressing up will shrink the window’s height. - # Pressing down will grow the window’s height. - bindsym h move workspace to output left - bindsym j move workspace to output down - bindsym k move workspace to output up - bindsym l move workspace to output right - - # same bindings, but for the arrow keys - #bindsym Left resize shrink width 10 px or 10 ppt - #bindsym Down resize grow height 10 px or 10 ppt - #bindsym Up resize shrink height 10 px or 10 ppt - #bindsym Right resize grow width 10 px or 10 ppt - - # back to normal: Enter or Escape - bindsym Return mode "default" - bindsym Escape mode "default" -} - -bindsym $mod+t mode "moveworkspace" - -mode "goremote" { - bindsym g exec "remmina -c ~/.local/share/remmina/1523485448993.remmina"; mode "default" - bindsym t exec "run_terminal -x ssh -p 2222 barak@rack.0b100.net"; mode "default" - bindsym p exec "run_terminal -x ssh -p 2222 barak@barakmich.com"; mode "default" - bindsym Return mode "default" - bindsym Escape mode "default" -} - -bindsym $mod+Shift+Control+r mode "goremote" - - -# Media controls -bindsym $win+Shift+k exec "playerctl play-pause" -bindsym $win+Shift+h exec "playerctl previous" -bindsym $win+Shift+l exec "playerctl next" -# Spotify doesn't understand volume controls? -#bindsym $win+Shift+j exec "playerctl volume 0.1-" -#bindsym $win+Shift+k exec "playerctl volume 0.1+" - -# Start i3bar to display a workspace bar (plus the system information i3status -# finds out, if available) -#bar { -## status_command i3status - #status_command i3-wrapper - #position top - #tray_output primary -#} -#exec --no-startup-id xfce4-panel --disable-wm-check -#exec polybar HDMI1 -#exec --no-startup-id nitrogen --restore -#exec --no-startup-id picom -b --config ~/.compton.conf diff --git a/.i3/i3-barak-tool.py b/.i3/i3-barak-tool.py deleted file mode 100755 index 97e9c6e..0000000 --- a/.i3/i3-barak-tool.py +++ /dev/null @@ -1,151 +0,0 @@ -#!/usr/bin/env python3 - -import json -import subprocess -import socket -import struct -import sys - - -_struct_header = '=6sII' - -RUN_COMMAND = 0 -GET_WORKSPACES = 1 -SUBSCRIBE = 4 -GET_OUTPUTS=3 -GET_TREE = 4 - - -def get_i3_socketpath(): - socketpath = subprocess.check_output(["i3", "--get-socketpath"]) - return socketpath.decode().rstrip() - - -def format_i3_command(kind: int, cmd: str): - b = cmd.encode() - return b"i3-ipc" + struct.pack("=II", len(b), kind) + b - - -def _ipc_recv(sock): - data = sock.recv(14) - - if len(data) == 0: - raise EOFError('got EOF from ipc socket') - - _, msg_length, msg_type = _unpack_header(data) - msg_size = 6 + msg_length - while len(data) < msg_size: - data += sock.recv(msg_length) - payload = _unpack(data) - return payload, msg_type - - -def _unpack(data): - _, msg_length, _ = _unpack_header(data) - size = struct.calcsize(_struct_header) - msg_size = size + msg_length - payload = data[size:msg_size] - return payload.decode('utf-8', 'replace') - - -def _unpack_header(data: bytes): - return struct.unpack(_struct_header, data[:struct.calcsize(_struct_header)]) - - -def open_i3_socket(): - client = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) - client.connect(get_i3_socketpath()) - return client - - -def send_command(client, kind, data): - client.sendall(format_i3_command(kind, data)) - result, _ = _ipc_recv(client) - return json.loads(result) - - -class TreeNode: - def __init__(self, json): - self.id = None - self.rect = None - self.focused = False - self.name = "" - for k, v in json.items(): - if k != "nodes": - self.__setattr__(k, v) - self.parent = None - self.nodes = list(map(TreeNode, json["nodes"])) - for n in self.nodes: - n.parent = self - - def find(self, where=None): - if where is None: - where = lambda _: True - if where(self): - yield self - for n in self.nodes: - yield from n.find(where) - - def __repr__(self) -> str: - return "TreeNode(%d, %s, focused=%s, rect=%s)" % (self.id, self.name, self.focused, str(self.rect)) - - def find_parent(self, where=None): - if self.parent is None: - return None - if where is None or where(self.parent): - return self.parent - return self.parent.find_parent(where) - - def leaves(self): - if len(self.nodes) == 0: - yield self - else: - for n in self.nodes: - yield from n.leaves() - - -def find_biggest_window(tree: TreeNode): - max_leaf = None - max_area = 0 - max_x = -1 - for leaf in tree.leaves(): - rect = leaf.rect - area = rect["width"] * rect["height"] - if area > max_area or (area == max_area and max_x > rect["x"]): - max_area = area - max_leaf = leaf - max_x = rect["x"] - - return max_leaf - - -def current_workspace(tree): - focused = list(tree.find(where=lambda n: n.focused is True)) - if len(focused) == 0: - print("not found") - sys.exit(1) - focused = focused[0] - ws = focused.find_parent(lambda n: n.type == "workspace") - return ws - - -def promote(client): - json = send_command(client, GET_TREE, "") - tree = TreeNode(json) - ws = current_workspace(tree) - master = find_biggest_window(ws) - send_command(client, RUN_COMMAND, "swap container with con_id %s" % master.id) - - -def main(): - if len(sys.argv) < 2: - print("needs an argument") - return - command = sys.argv[1] - client = open_i3_socket() - if command == "promote": - promote(client) - client.close() - -if __name__ == "__main__": - main() diff --git a/.i3/i3-focus-next b/.i3/i3-focus-next deleted file mode 100755 index ecc3630..0000000 --- a/.i3/i3-focus-next +++ /dev/null @@ -1,196 +0,0 @@ -#!/usr/bin/env perl -# -# needs package perl-json -# - -use IO::Socket::UNIX; -use JSON; -use Encode; -use Getopt::Long; - -use constant MAGIC_STRING => 'i3-ipc'; - -use constant TYPE_COMMAND => 0; -use constant TYPE_GET_WORKSPACES => 1; -use constant TYPE_GET_TREE => 4; - -# -# ipc functions -# -sub message { - my ($type, $content) = @_; - my $payload = ''; - - if ($content) { - $payload = encode_utf8($content); - } - - return(MAGIC_STRING . pack('LL', length($payload), $type) . $payload); -} - -sub ipc_request { - my ($sock, $type, $content) = @_; - - # send request - $sock->write(message($type, $content)); - - # read response header - my $header = ''; - $sock->read($header, length(MAGIC_STRING) + 4 + 4); - - # get payload length - my ($len, $type) = unpack('LL', substr($header, length(MAGIC_STRING))); - - # read payload - my $payload = ''; - $sock->read($payload, $len); - - # return decoded json - return decode_json $payload; -} - -# -# tree functions -# -sub get_node_by_name { - my ($ref, $name) = @_; - - # search for a direct child node by name - foreach my $node (@{${${ref}}{'nodes'}}) { - if (${${node}}{'name'} eq $name) { - return $node; - } - } -} - -sub pop_window_array { - my ($ref, $arr) = @_; - my @node_types = qw(nodes floating_nodes); - - # iterate through all child nodes - foreach my $node_type (@node_types) { - foreach my $node (@{${${ref}}{$node_type}}) { - # if child node is not a window - if (${${node}}{'window'} eq undef) { - # go one level down - pop_window_array($node, \@{$arr}); - } else { - # add window id to array - push(@{$arr}, ${${node}}{'id'}); - } - } - } -} - -sub get_focused_node { - my $ref = shift; - my $ret = ''; - my @node_types = qw(nodes floating_nodes); - - # iterate through all child nodes - foreach my $node_type (@node_types) { - foreach my $node (@{${${ref}}{$node_type}}) { - # if child node is not a window - if (${${node}}{'window'} eq undef) { - # go one level down - $ret = get_focused_node($node); - if ($ret != '') { - return $ret; - } - } else { - # return focused window id - if (${${node}}{'focused'}) { - return ${${node}}{'id'}; - } - } - } - } - return ''; -} - -# -# main -# - -my $reverse; -GetOptions("reverse" => \$reverse); - -# get socket path -chomp(my $path = qx(i3 --get-socketpath)); - -# open connection -my $sock = IO::Socket::UNIX->new(Peer => $path); - -# get current workspaces -my $response = ''; -$response = ipc_request($sock, TYPE_GET_WORKSPACES); - -# get focused output and workspace -my $i3output = ''; -my $i3workspace = ''; -foreach my $node (@{$response}) { - if (${$node}{'focused'}) { - $i3output = ${$node}{output}; - $i3workspace = ${$node}{num}; - } -} - -# get layout tree -my $response = ''; -$response = ipc_request($sock, TYPE_GET_TREE); - -my @windows, $focused, $prev, $next; -if (${$response}{'name'} eq 'root') { - my $output = get_node_by_name($response, $i3output); - my $content = get_node_by_name($output, 'content'); - my $workspace = get_node_by_name($content, $i3workspace); - - # populate window array - pop_window_array($workspace, \@windows); - - # get focused window - $focused = get_focused_node($workspace); - - # find window key for focused window - my $focused_key; - while (my ($key, $val) = each @windows) { - if ($val eq $focused) { - - # get previous window - if ($key == 0) { - $prev = $windows[$#windows]; - } else { - $prev = $windows[$key-1]; - } - - # get next window - if ($key == $#windows) { - $next = $windows[0]; - } else { - $next = $windows[$key+1]; - } - } - } - -} - -#print $prev . "\n" . $focused . "\n" . $next . "\n"; - -my $response = ''; -if ($reverse) { - # set focus to previous window - $response = ipc_request($sock, TYPE_COMMAND, '[con_id="' . $prev . '"] focus'); -} else { - # set focus to next window - $response = ipc_request($sock, TYPE_COMMAND, '[con_id="' . $next . '"] focus'); -} - -close($sock); - -# exit with ipc command status -if (${$response}[0]{'success'}) { - exit(0); -} else { - exit(1); -} - diff --git a/.i3status.conf b/.i3status.conf deleted file mode 100644 index 63ab518..0000000 --- a/.i3status.conf +++ /dev/null @@ -1,60 +0,0 @@ -# i3status configuration file. -# see "man i3status" for documentation. - -# It is important that this file is edited as UTF-8. -# The following line should contain a sharp s: -# ß -# If the above line is not correctly displayed, fix your editor first! - -general { - colors = true - interval = 5 -} - -order += "wireless wlan0" -order += "ethernet eth0" -order += "battery 0" -order += "cpu_usage" -order += "load" -order += "tztime local" - -wireless wlan0 { - format_up = "W: (%quality at %essid) %ip" - format_down = "W: down" -} - -ethernet eth0 { - # if you use %speed, i3status requires root privileges - format_up = "E: %ip (%speed)" - format_down = "E: down" -} - -battery 0 { - format = "%status %remaining" - #last_full_capacity = true - #integer_battery_capacity = true -} - -run_watch DHCP { - pidfile = "/var/run/dhclient*.pid" -} - -run_watch VPN { - pidfile = "/var/run/vpnc/pid" -} - -tztime local { - format = "%Y-%m-%d %H:%M:%S" -} - -load { - format = "L: %1min %5min" -} - -cpu_usage { - format = "CPU: %usage" -} - -disk "/" { - format = "%avail" -} diff --git a/.latex/basehtml.cfg b/.latex/basehtml.cfg deleted file mode 100644 index 34e0fe2..0000000 --- a/.latex/basehtml.cfg +++ /dev/null @@ -1,10 +0,0 @@ -\Preamble{html} -\begin{document} -\Css {body { - margin-top: 50px; - margin-left: auto; - margin-right: auto; - width: 1000px; - } - } -\EndPreamble diff --git a/.local/share/applications/com.spotify.Client.desktop b/.local/share/applications/com.spotify.Client.desktop deleted file mode 100755 index 1240b5d..0000000 --- a/.local/share/applications/com.spotify.Client.desktop +++ /dev/null @@ -1,15 +0,0 @@ -[Desktop Entry] -Type=Application -Name=Spotify -GenericName=Online music streaming service -Comment=Access all of your favorite music -Icon=com.spotify.Client -Exec=/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=spotify --file-forwarding com.spotify.Client --force-device-scale-factor=1.5 @@u %U @@ -Terminal=false -MimeType=x-scheme-handler/spotify; -Categories=Audio;Music;AudioVideo; -Keywords=Music;Player;Streaming;Online; -StartupWMClass=Spotify -X-GNOME-UsesNotifications=true -X-Flatpak-Tags=proprietary; -X-Flatpak=com.spotify.Client diff --git a/.local/share/fonts b/.local/share/fonts deleted file mode 120000 index fe8ce3a..0000000 --- a/.local/share/fonts +++ /dev/null @@ -1 +0,0 @@ -/home/barak/.fonts \ No newline at end of file diff --git a/.local/share/rofi/themes/rounded-blue-dark.rasi b/.local/share/rofi/themes/rounded-blue-dark.rasi deleted file mode 100644 index 712d714..0000000 --- a/.local/share/rofi/themes/rounded-blue-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #1A73E8F2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/rounded-common.rasi b/.local/share/rofi/themes/rounded-common.rasi deleted file mode 100644 index 5072337..0000000 --- a/.local/share/rofi/themes/rounded-common.rasi +++ /dev/null @@ -1,94 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - font: "Roboto 12"; - - background-color: transparent; - text-color: @fg0; - - margin: 0px; - padding: 0px; - spacing: 0px; -} - -window { - location: center; - width: 480; - y-offset: -200; - border-radius: 24px; - - background-color: @bg0; -} - -mainbox { - padding: 12px; -} - -inputbar { - background-color: @bg1; - border-color: @bg3; - - border: 2px; - border-radius: 16px; - - padding: 8px 16px; - spacing: 8px; - children: [ prompt, entry ]; -} - -prompt { - text-color: @fg2; -} - -entry { - placeholder: "Search"; - placeholder-color: @fg3; -} - -message { - margin: 12px 0 0; - border-radius: 16px; - border-color: @bg2; - background-color: @bg2; -} - -textbox { - padding: 8px 24px; -} - -listview { - background-color: transparent; - - margin: 12px 0 0; - lines: 8; - columns: 1; - - fixed-height: false; -} - -element { - padding: 8px 16px; - spacing: 8px; - border-radius: 16px; -} - -element normal active { - text-color: @bg3; -} - -element selected normal, element selected active { - background-color: @bg3; -} - -element-icon { - size: 1em; - vertical-align: 0.5; -} - -element-text { - text-color: inherit; -} diff --git a/.local/share/rofi/themes/rounded-gray-dark.rasi b/.local/share/rofi/themes/rounded-gray-dark.rasi deleted file mode 100644 index 943280d..0000000 --- a/.local/share/rofi/themes/rounded-gray-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #616161F2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/rounded-green-dark.rasi b/.local/share/rofi/themes/rounded-green-dark.rasi deleted file mode 100644 index a268f62..0000000 --- a/.local/share/rofi/themes/rounded-green-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #4CAF50F2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/rounded-nord-dark.rasi b/.local/share/rofi/themes/rounded-nord-dark.rasi deleted file mode 100644 index ef35389..0000000 --- a/.local/share/rofi/themes/rounded-nord-dark.rasi +++ /dev/null @@ -1,22 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #2E3440F2; - bg1: #3B4252; - bg2: #4C566A80; - bg3: #88C0D0F2; - fg0: #D8DEE9; - fg1: #ECEFF4; - fg2: #D8DEE9; - fg3: #4C566A; -} - -@import "rounded-common.rasi" - -element selected { - text-color: @bg1; -} diff --git a/.local/share/rofi/themes/rounded-orange-dark.rasi b/.local/share/rofi/themes/rounded-orange-dark.rasi deleted file mode 100644 index da4acea..0000000 --- a/.local/share/rofi/themes/rounded-orange-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #F57C00F2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/rounded-pink-dark.rasi b/.local/share/rofi/themes/rounded-pink-dark.rasi deleted file mode 100644 index 2288dc0..0000000 --- a/.local/share/rofi/themes/rounded-pink-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #EC407AF2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/rounded-purple-dark.rasi b/.local/share/rofi/themes/rounded-purple-dark.rasi deleted file mode 100644 index 55c651b..0000000 --- a/.local/share/rofi/themes/rounded-purple-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #AB47BCF2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/rounded-red-dark.rasi b/.local/share/rofi/themes/rounded-red-dark.rasi deleted file mode 100644 index c1d71a6..0000000 --- a/.local/share/rofi/themes/rounded-red-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #E53935F2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/rounded-yellow-dark.rasi b/.local/share/rofi/themes/rounded-yellow-dark.rasi deleted file mode 100644 index dbdaeb3..0000000 --- a/.local/share/rofi/themes/rounded-yellow-dark.rasi +++ /dev/null @@ -1,18 +0,0 @@ -/******************************************************************************* - * ROUNDED THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - bg0: #212121F2; - bg1: #2A2A2A; - bg2: #3D3D3D80; - bg3: #FBC02DF2; - fg0: #E6E6E6; - fg1: #FFFFFF; - fg2: #969696; - fg3: #3D3D3D; -} - -@import "rounded-common.rasi" diff --git a/.local/share/rofi/themes/spotlight-dark.rasi b/.local/share/rofi/themes/spotlight-dark.rasi deleted file mode 100644 index b61bc21..0000000 --- a/.local/share/rofi/themes/spotlight-dark.rasi +++ /dev/null @@ -1,99 +0,0 @@ -/******************************************************************************* - * MACOS SPOTLIGHT LIKE DARK THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - font: "Montserrat 18"; - - bg0: #242424E6; - bg1: #7E7E7E80; - bg2: #0860f2E6; - - fg0: #DEDEDE; - fg1: #FFFFFF; - fg2: #DEDEDE80; - - background-color: transparent; - text-color: @fg0; - - margin: 0.1em; - padding: 0; - spacing: 0; -} - -window { - background-color: @bg0; - - location: center; - width: 640; - y-offset: -200; - border-radius: 8; -} - -inputbar { - font: "Montserrat 32"; - padding: 12px; - spacing: 12px; - children: [ icon-search, entry ]; -} - -icon-search { - expand: false; - filename: "search"; - size: 28px; -} - -icon-search, entry, element-icon, element-text { - vertical-align: 0.5; -} - -entry { - font: inherit; - - placeholder : "Search"; - placeholder-color : @fg2; -} - -message { - border: 2px 0 0; - border-color: @bg1; - background-color: @bg1; -} - -textbox { - padding: 8px 24px; -} - -listview { - lines: 10; - columns: 1; - - fixed-height: false; - border: 1px 0 0; - border-color: @bg1; -} - -element { - padding: 8px 16px; - spacing: 16px; - background-color: transparent; -} - -element normal active { - text-color: @bg2; -} - -element selected normal, element selected active { - background-color: @bg2; - text-color: @fg1; -} - -element-icon { - size: 1em; -} - -element-text { - text-color: inherit; -} diff --git a/.local/share/rofi/themes/spotlight.rasi b/.local/share/rofi/themes/spotlight.rasi deleted file mode 100644 index 3f17463..0000000 --- a/.local/share/rofi/themes/spotlight.rasi +++ /dev/null @@ -1,99 +0,0 @@ -/******************************************************************************* - * MACOS SPOTLIGHT LIKE THEME FOR ROFI - * User : LR-Tech - * Theme Repo : https://github.com/lr-tech/rofi-themes-collection - *******************************************************************************/ - -* { - font: "Montserrat 12"; - - bg0: #F5F5F5BF; - bg1: #7E7E7E80; - bg2: #0860F2E6; - - fg0: #242424; - fg1: #FFFFFF; - fg2: #24242480; - - background-color: transparent; - text-color: @fg0; - - margin: 0; - padding: 0; - spacing: 0; -} - -window { - background-color: @bg0; - - location: center; - width: 640; - y-offset: -200; - border-radius: 8; -} - -inputbar { - font: "Montserrat 20"; - padding: 12px; - spacing: 12px; - children: [ icon-search, entry ]; -} - -icon-search { - expand: false; - filename: "search"; - size: 28px; -} - -icon-search, entry, element-icon, element-text { - vertical-align: 0.5; -} - -entry { - font: inherit; - - placeholder : "Search"; - placeholder-color : @fg2; -} - -message { - border: 2px 0 0; - border-color: @bg1; - background-color: @bg1; -} - -textbox { - padding: 8px 24px; -} - -listview { - lines: 10; - columns: 1; - - fixed-height: false; - border: 1px 0 0; - border-color: @bg1; -} - -element { - padding: 8px 16px; - spacing: 16px; - background-color: transparent; -} - -element normal active { - text-color: @bg2; -} - -element selected normal, element selected active { - background-color: @bg2; - text-color: @fg1; -} - -element-icon { - size: 1em; -} - -element-text { - text-color: inherit; -} diff --git a/.mailcap b/.mailcap deleted file mode 100644 index 3ba639f..0000000 --- a/.mailcap +++ /dev/null @@ -1,3 +0,0 @@ -text/html; w3m -I %{charset} -T text/html -cols 150; copiousoutput; -#text/html; pandoc -f html -t markdown; copiousoutput; - diff --git a/.muttrc b/.muttrc deleted file mode 100644 index 56c3284..0000000 --- a/.muttrc +++ /dev/null @@ -1,133 +0,0 @@ -set imap_user = "barak@barakmich.com" -#set imap_pass = "secret" -source ~/.mutt/secret - -set smtp_url = "smtp://barak@barakmich.com@smtp.gmail.com:587/" -#set smtp_pass = "secret" -set from = "me@barakmich.com" -set realname = "Barak Michener" - -set folder = "imaps://imap.gmail.com:993" -set spoolfile = "+INBOX" -set postponed = "+[Gmail]/Drafts" -set record="+[Gmail]/Sent Mail" -set copy=no -set trash = "imaps://imap.gmail.com/[Gmail]/Trash" - -# These two lines appear to be needed on some Linux distros, like Arch Linux -set ssl_starttls = yes -set ssl_force_tls = yes - -#set imap_force_ssl = yes - -set header_cache=~/.mutt/cache/headers -set message_cachedir=~/.mutt/cache/bodies -set certificate_file=~/.mutt/certificates -set signature=~/.sig - -bind editor <space> noop -bind index,pager g noop -bind index,pager c mail #Compose -macro index,pager e "<save-message>=[Gmail]/All Mail<enter>" "Archive" -bind generic x tag-entry #Select Conversation -bind index x tag-thread #Select Conversation -bind pager x tag-message #Select Conversation -bind index,pager s flag-message #Star a message -macro index,pager + "<save-message>=[Gmail]/Important<enter>" "Mark as important" -macro index,pager ! "<save-message>=[Gmail]/Spam<enter>" "Report spam" -bind index,pager a group-reply #Reply all -bind pager A view-attachments #In emails -bind index,pager \# delete-thread #Delete -bind index,pager l copy-message #Label -bind index L limit -bind index,pager v save-message #Move to -macro index,pager I "<set-flag>O" "Mark as read" -macro index,pager U "<clear-flag>O" "Mark as unread" -macro index,pager ga "<change-folder>=[Gmail]/All Mail<enter>" "Go to all mail" -macro index,pager gs "<change-folder>=[Gmail]/Starred<enter>" "Go to 'Starred'" -macro index,pager gd "<change-folder>=[Gmail]/Drafts<enter>" "Go to 'Drafts'" -macro index,pager gl "<change-folder>?" "Go to 'Label'" -macro index,pager gi "<change-folder>=INBOX<enter>" "Go to inbox" -macro index,pager gt "<change-folder>=[Gmail]/Sent Mail<enter>" "Go to 'Sent Mail'" -macro pager B "<pipe-entry>'urlview'<enter>" 'Follow links with urlview' -folder-hook +INBOX macro index,pager y "e" "Archive" -folder-hook "+[Gmail]/Trash" macro index,pager y "<save-message>=INBOX<enter><enter>" "Move to inbox" -folder-hook "+[Gmail]/Starred" bind index,pager y flag-message #"Toggle star" -set to_chars = " +>-<L" - -set move = no -set mark_old=no -set imap_keepalive = 900 - -# Better defaults -set wait_key=no -#set timeout=3 -set mail_check=0 -set markers=no -unset move -set delete -unset confirmappend -set quit -unset mark_old -set beep_new - - -set sort = reverse-threads -set sort_aux = last-date-received - -alternative_order text/plain text/enriched text/html -auto_view text/html - -#set alias_file = ~/.mutt/aliases -set alias_file=~/.mutt_alias -set sort_alias = alias -set reverse_alias = yes - -set editor = "vi -c \"set spell spelllang=en_us\"" -set reverse_name = yes - -bind index gg first-entry -bind index G last-entry -#bind index A toggle-read -bind index n mail -bind index _ collapse-all -bind index - collapse-thread - -macro index c "<change-folder>?<toggle-mailboxes>" "open a different folder" -macro pager c "<change-folder>?<toggle-mailboxes>" "open a different folder" -macro index C "<copy-message>?<toggle-mailboxes>" "copy a message to a mailbox" -macro index M "<save-message>?<toggle-mailboxes>" "move a message to a mailbox" -macro index m "<clear-flag>N" "mark as read" -macro compose A "<attach-message>?<toggle-mailboxes>" "attach message(s) to this message" -macro index J "<next-new>" "next unread" -macro index,pager "\Cf" "<next-page>" "page down" -macro index,pager "\Cb" "<previous-page>" "page down" - -color normal white default -color attachment brightyellow black -color hdrdefault cyan black -color indicator black cyan -color markers brightred black -color quoted green black -color signature cyan black -color status brightgreen blue -color tilde blue black -color tree red black -color header brightgreen black ^From: -color header brightcyan black ^To: -color header brightcyan black ^Reply-To: -color header brightcyan black ^Cc: -color header brightblue black ^Subject: -color body brightred black [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+ -color body brightblue black (https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+ -color index brightcyan default ~N - -color index yellow default "~v~(!~N)~(!~F)" # collapsed thread with no New or Flagged -color index red default "~v~(~F)~(!~N)" # collapsed thread with Flagged but no New -color index green default "~v~(~N)" # collapsed thread with New - -folder-hook . exec collapse-all -## TO show the number of messages in a collapsed thread -## you need to add "%M" to the "index_format", eg: -#set index_format="%4C %Z %2M %[!%y%m%d] %-17.17F (%3l) %s" -set index_format="%4C %Z %2M %{%b %d} %-15.15L (%?l?%4l&%4c?) %s" diff --git a/.nethackrc b/.nethackrc deleted file mode 100644 index f352d95..0000000 --- a/.nethackrc +++ /dev/null @@ -1,29 +0,0 @@ -# -# System-wide NetHack configuration file for console-only NetHack. -# -OPTIONS=windowtype:tty,toptenwin,hilite_pet,!number_pad,!cmdassist -OPTIONS=fixinv,safe_pet,sortpack,tombstone,color -OPTIONS=verbose,news,fruit:potato -OPTIONS=dogname:Darty -OPTIONS=catname:Tiger -OPTIONS=pickup_types:$ -OPTIONS=nomail - -# Enable this if you want to see your inventory sorted in alphabetical -# order by item instead of by index letter: -# OPTIONS=sortloot:full -# or if you just want containers sorted: -# OPTIONS=sortloot:loot - -# -# Some sane defaults for menucolor -# - -OPTIONS=menucolors -MENUCOLOR=" blessed "=green -MENUCOLOR=" holy "=green -MENUCOLOR=" uncursed "=yellow -MENUCOLOR=" cursed "=red -MENUCOLOR=" unholy "=red -MENUCOLOR=" cursed .* (being worn)"=orange&underline - diff --git a/.npmrc b/.npmrc deleted file mode 100644 index 1e2fdb1..0000000 --- a/.npmrc +++ /dev/null @@ -1,2 +0,0 @@ -root = /home/barakmich/.node_libraries -binroot = /home/barakmich/.node_libraries/bin diff --git a/.nvim b/.nvim deleted file mode 120000 index 8355b52..0000000 --- a/.nvim +++ /dev/null @@ -1 +0,0 @@ -.vim \ No newline at end of file diff --git a/.nvimrc b/.nvimrc deleted file mode 120000 index 1490f7a..0000000 --- a/.nvimrc +++ /dev/null @@ -1 +0,0 @@ -.vimrc \ No newline at end of file diff --git a/.puppet/console.pp b/.puppet/console.pp deleted file mode 100644 index 9a309e9..0000000 --- a/.puppet/console.pp +++ /dev/null @@ -1,6 +0,0 @@ -$enhancers = [ "tmux", "zsh", "strace", "sudo" ] - -package { - $enhancers: - ensure => "installed" -} diff --git a/.puppet/cpp.pp b/.puppet/cpp.pp deleted file mode 100644 index 46ebd3b..0000000 --- a/.puppet/cpp.pp +++ /dev/null @@ -1,16 +0,0 @@ -case $operatingsystem { - centos, redhat: {$build_essential = ["make", "automake", "gcc", "gcc-c++", "kernel-devel"]} - debian, ubuntu: {$build_essential = ["build-essential"]} - default: {fail("Don't know how to make build-essential for $operatingsystem")} -} - -package { - $build_essential: - ensure => "installed" -} - -$other_makes = ["cmake"] -package { - $other_makes: - ensure => "installed" -} diff --git a/.puppet/editor.pp b/.puppet/editor.pp deleted file mode 100644 index 503fec2..0000000 --- a/.puppet/editor.pp +++ /dev/null @@ -1,6 +0,0 @@ -$packages = [ "vim-gnome", "ctags", "ttf-inconsolata"] - -package { - $packages: - ensure => "installed" -} diff --git a/.puppet/go.pp b/.puppet/go.pp deleted file mode 100644 index 0822d0a..0000000 --- a/.puppet/go.pp +++ /dev/null @@ -1,22 +0,0 @@ -package { - "golang": - ensure => "installed" -} - -exec { - "get_gocode": - command => "go get -u github.com/nsf/gocode", - path => "/usr/bin", -} - -exec { - "get_gocov": - command => "go get -u github.com/axw/gocov/gocov", - path => "/usr/bin", -} - -exec { - "get_gotags": - command => "go get -u github.com/jstemmer/gotags", - path => "/usr/bin", -} diff --git a/.puppet/install-dev.pp b/.puppet/install-dev.pp deleted file mode 100644 index 26ae682..0000000 --- a/.puppet/install-dev.pp +++ /dev/null @@ -1,3 +0,0 @@ -import "cpp.pp" -import "go.pp" -import "python.pp" diff --git a/.puppet/install-linux.pp b/.puppet/install-linux.pp deleted file mode 100644 index 8a8d930..0000000 --- a/.puppet/install-linux.pp +++ /dev/null @@ -1,3 +0,0 @@ -import "console.pp" -import "editor.pp" -import "x11.pp" diff --git a/.puppet/python.pp b/.puppet/python.pp deleted file mode 100644 index 873f9e1..0000000 --- a/.puppet/python.pp +++ /dev/null @@ -1,15 +0,0 @@ -$packages = [ "python-pip"] - -package { - $packages: - ensure => "installed" -} - -$pip_packages = ["flake8", "jedi", "tornado"] - -package { - $pip_packages : - ensure => "installed", - provider => "pip", - -} diff --git a/.puppet/x11.pp b/.puppet/x11.pp deleted file mode 100644 index dd99ca2..0000000 --- a/.puppet/x11.pp +++ /dev/null @@ -1,6 +0,0 @@ -$x11_packages = [ "awesome", "awesome-extra", "feh", "synapse", "thunar", "terminator"] - -package { - $x11_packages: - ensure => "installed" -} diff --git a/.pylintrc b/.pylintrc deleted file mode 100644 index 162c0cb..0000000 --- a/.pylintrc +++ /dev/null @@ -1,390 +0,0 @@ -[MASTER] - -# Specify a configuration file. -#rcfile= - -# Python code to execute, usually for sys.path manipulation such as -# pygtk.require(). -#init-hook= - -# Profiled execution. -profile=no - -# Add files or directories to the blacklist. They should be base names, not -# paths. -ignore=CVS,.git - -# Pickle collected data for later comparisons. -persistent=yes - -# List of plugins (as comma separated values of python modules names) to load, -# usually to register additional checkers. -load-plugins= - -# Deprecated. It was used to include message's id in output. Use --msg-template -# instead. -include-ids=no - -# Deprecated. It was used to include symbolic ids of messages in output. Use -# --msg-template instead. -symbols=no - -# Use multiple processes to speed up Pylint. -jobs=1 - -# Allow loading of arbitrary C extensions. Extensions are imported into the -# active Python interpreter and may run arbitrary code. -unsafe-load-any-extension=no - -# A comma-separated list of package or module names from where C extensions may -# be loaded. Extensions are loading into the active Python interpreter and may -# run arbitrary code -extension-pkg-whitelist= - -# Allow optimization of some AST trees. This will activate a peephole AST -# optimizer, which will apply various small optimizations. For instance, it can -# be used to obtain the result of joining multiple strings with the addition -# operator. Joining a lot of strings can lead to a maximum recursion error in -# Pylint and this flag can prevent that. It has one side effect, the resulting -# AST will be different than the one from reality. -optimize-ast=no - - -[MESSAGES CONTROL] - -# Only show warnings with the listed confidence levels. Leave empty to show -# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED -confidence= - -# Enable the message, report, category or checker with the given id(s). You can -# either give multiple identifier separated by comma (,) or put this option -# multiple time. See also the "--disable" option for examples. -#enable= - -# Disable the message, report, category or checker with the given id(s). You -# can either give multiple identifiers separated by comma (,) or put this -# option multiple times (only on the command line, not in the configuration -# file where it should appear only once).You can also use "--disable=all" to -# disable everything first and then reenable specific checks. For example, if -# you want to run only the similarities checker, you can use "--disable=all -# --enable=similarities". If you want to run only the classes checker, but have -# no Warning level messages displayed, use"--disable=all --enable=classes -# --disable=W" -disable=E1608,W1627,E1601,E1603,E1602,E1605,E1604,E1607,E1606,W1621,W1620,W1623,W1622,W1625,W1624,W1609,W1608,W1607,W1606,W1605,W1604,W1603,W1602,W1601,W1639,W1640,I0021,W1638,I0020,W1618,W1619,W1630,W1626,W1637,W1634,W1635,W1610,W1611,W1612,W1613,W1614,W1615,W1616,W1617,W1632,W1633,W0704,W1628,W1629,W1636 - - -[REPORTS] - -# Set the output format. Available formats are text, parseable, colorized, msvs -# (visual studio) and html. You can also give a reporter class, eg -# mypackage.mymodule.MyReporterClass. -output-format=text - -# Put messages in a separate file for each module / package specified on the -# command line instead of printing them on stdout. Reports (if any) will be -# written in a file name "pylint_global.[txt|html]". -files-output=no - -# Tells whether to display a full report or only the messages -reports=yes - -# Python expression which should return a note less than 10 (10 is the highest -# note). You have access to the variables errors warning, statement which -# respectively contain the number of errors / warnings messages and the total -# number of statements analyzed. This is used by the global evaluation report -# (RP0004). -evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) - -# Add a comment according to your evaluation note. This is used by the global -# evaluation report (RP0004). -comment=no - -# Template used to display messages. This is a python new-style format string -# used to format the message information. See doc for all details -#msg-template= - - -[BASIC] - -# Required attributes for module, separated by a comma -required-attributes= - -# List of builtins function names that should not be used, separated by a comma -bad-functions=map,filter,input - -# Good variable names which should always be accepted, separated by a comma -good-names=i,j,k,ex,Run,_,x,y,z - -# Bad variable names which should always be refused, separated by a comma -bad-names=foo,bar,baz,toto,tutu,tata,quux - -# Colon-delimited sets of names that determine each other's naming style when -# the name regexes allow several styles. -name-group= - -# Include a hint for the correct naming format with invalid-name -include-naming-hint=no - -# Regular expression matching correct function names -function-rgx=[a-zA-Z_][a-zA-Z0-9_]{2,30}$ - -# Naming hint for function names -function-name-hint=[a-z_][a-z0-9_]{2,30}$ - -# Regular expression matching correct variable names -variable-rgx=[a-z_][a-z0-9_]{1,30}$ - -# Naming hint for variable names -variable-name-hint=[a-z_][a-z0-9_]{1,30}$ - -# Regular expression matching correct constant names -const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$ - -# Naming hint for constant names -const-name-hint=(([A-Z_][A-Z0-9_]*)|(__.*__))$ - -# Regular expression matching correct attribute names -attr-rgx=[a-z_][a-z0-9_]{2,30}$ - -# Naming hint for attribute names -attr-name-hint=[a-z_][a-z0-9_]{2,30}$ - -# Regular expression matching correct argument names -argument-rgx=[a-z_][a-z0-9_]{2,30}$ - -# Naming hint for argument names -argument-name-hint=[a-z_][a-z0-9_]{2,30}$ - -# Regular expression matching correct class attribute names -class-attribute-rgx=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$ - -# Naming hint for class attribute names -class-attribute-name-hint=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$ - -# Regular expression matching correct inline iteration names -inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$ - -# Naming hint for inline iteration names -inlinevar-name-hint=[A-Za-z_][A-Za-z0-9_]*$ - -# Regular expression matching correct class names -class-rgx=[A-Z_][a-zA-Z0-9]+$ - -# Naming hint for class names -class-name-hint=[A-Z_][a-zA-Z0-9]+$ - -# Regular expression matching correct module names -module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ - -# Naming hint for module names -module-name-hint=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ - -# Regular expression matching correct method names -method-rgx=[a-z_][a-z0-9_]{2,30}$ - -# Naming hint for method names -method-name-hint=[a-z_][a-z0-9_]{2,30}$ - -# Regular expression which should only match function or class names that do -# not require a docstring. -no-docstring-rgx=__.*__ - -# Minimum line length for functions/classes that require docstrings, shorter -# ones are exempt. -docstring-min-length=-1 - - -[LOGGING] - -# Logging modules to check that the string format arguments are in logging -# function parameter format -logging-modules=logging - - -[VARIABLES] - -# Tells whether we should check for unused import in __init__ files. -init-import=no - -# A regular expression matching the name of dummy variables (i.e. expectedly -# not used). -dummy-variables-rgx=_$|dummy - -# List of additional names supposed to be defined in builtins. Remember that -# you should avoid to define new builtins when possible. -additional-builtins= - -# List of strings which can identify a callback function by name. A callback -# name must start or end with one of those strings. -callbacks=cb_,_cb - - -[SIMILARITIES] - -# Minimum lines number of a similarity. -min-similarity-lines=4 - -# Ignore comments when computing similarities. -ignore-comments=yes - -# Ignore docstrings when computing similarities. -ignore-docstrings=yes - -# Ignore imports when computing similarities. -ignore-imports=no - - -[TYPECHECK] - -# Tells whether missing members accessed in mixin class should be ignored. A -# mixin class is detected if its name ends with "mixin" (case insensitive). -ignore-mixin-members=yes - -# List of module names for which member attributes should not be checked -# (useful for modules/projects where namespaces are manipulated during runtime -# and thus existing member attributes cannot be deduced by static analysis -ignored-modules= - -# List of classes names for which member attributes should not be checked -# (useful for classes with attributes dynamically set). -ignored-classes=SQLObject - -# When zope mode is activated, add a predefined set of Zope acquired attributes -# to generated-members. -zope=no - -# List of members which are set dynamically and missed by pylint inference -# system, and so shouldn't trigger E0201 when accessed. Python regular -# expressions are accepted. -generated-members=REQUEST,acl_users,aq_parent - - -[MISCELLANEOUS] - -# List of note tags to take in consideration, separated by a comma. -notes=FIXME,XXX,TODO - - -[SPELLING] - -# Spelling dictionary name. Available dictionaries: none. To make it working -# install python-enchant package. -spelling-dict= - -# List of comma separated words that should not be checked. -spelling-ignore-words= - -# A path to a file that contains private dictionary; one word per line. -spelling-private-dict-file= - -# Tells whether to store unknown words to indicated private dictionary in -# --spelling-private-dict-file option instead of raising a message. -spelling-store-unknown-words=no - - -[FORMAT] - -# Maximum number of characters on a single line. -max-line-length=100 - -# Regexp for a line that is allowed to be longer than the limit. -ignore-long-lines=^\s*(# )?<?https?://\S+>?$ - -# Allow the body of an if to be on the same line as the test if there is no -# else. -single-line-if-stmt=no - -# List of optional constructs for which whitespace checking is disabled -no-space-check=trailing-comma,dict-separator - -# Maximum number of lines in a module -max-module-lines=1000 - -# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 -# tab). -indent-string=' ' - -# Number of spaces of indent required inside a hanging or continued line. -indent-after-paren=4 - -# Expected format of line ending, e.g. empty (any line ending), LF or CRLF. -expected-line-ending-format= - - -[IMPORTS] - -# Deprecated modules which should not be used, separated by a comma -deprecated-modules=regsub,TERMIOS,Bastion,rexec - -# Create a graph of every (i.e. internal and external) dependencies in the -# given file (report RP0402 must not be disabled) -import-graph= - -# Create a graph of external dependencies in the given file (report RP0402 must -# not be disabled) -ext-import-graph= - -# Create a graph of internal dependencies in the given file (report RP0402 must -# not be disabled) -int-import-graph= - - -[DESIGN] - -# Maximum number of arguments for function / method -max-args=5 - -# Argument names that match this expression will be ignored. Default to name -# with leading underscore -ignored-argument-names=_.* - -# Maximum number of locals for function / method body -max-locals=15 - -# Maximum number of return / yield for function / method body -max-returns=6 - -# Maximum number of branch for function / method body -max-branches=12 - -# Maximum number of statements in function / method body -max-statements=50 - -# Maximum number of parents for a class (see R0901). -max-parents=7 - -# Maximum number of attributes for a class (see R0902). -max-attributes=7 - -# Minimum number of public methods for a class (see R0903). -min-public-methods=0 - -# Maximum number of public methods for a class (see R0904). -max-public-methods=20 - - -[CLASSES] - -# List of interface methods to ignore, separated by a comma. This is used for -# instance to not check methods defines in Zope's Interface base class. -ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by - -# List of method names used to declare (i.e. assign) instance attributes. -defining-attr-methods=__init__,__new__,setUp - -# List of valid names for the first argument in a class method. -valid-classmethod-first-arg=cls - -# List of valid names for the first argument in a metaclass class method. -valid-metaclass-classmethod-first-arg=mcs - -# List of member names, which should be excluded from the protected access -# warning. -exclude-protected=_asdict,_fields,_replace,_source,_make - - -[EXCEPTIONS] - -# Exceptions that will emit a warning when being caught. Defaults to -# "Exception" -overgeneral-exceptions=Exception diff --git a/.screenrc b/.screenrc deleted file mode 100644 index 68b2ceb..0000000 --- a/.screenrc +++ /dev/null @@ -1,166 +0,0 @@ -# $Id: screenrc,v 1.3 1998-06-15 20:06:42-07 mconst Exp mconst $ - -# make bells in other windows audible -bell "Bell in window %^G" - -# get rid of some useless stuff in /usr/local/etc/screenrc -bind P -bind R - -# add an easy key to renumber the current window -bind \# colon "number " - -# unbind the keys for "kill all windows" -bind \\ echo "You cannot hope to slay so many windows at once!" -register \\ ^A\ -bind ^\ process \\ - -# make h consistent with ^H as "move to previous window"; use C for hardcopy -bind h prev -bind C hardcopy - -# make ^N and ^P next and prev for laziness -bind ^N next -bind ^P prev - -# make "kill this window" a bit harder to hit -bind k echo "Your weak spell bounces harmlessly off the window." -bind K kill - -# unbind "toggle wrap mode" and flow control, which I tend to hit by mistake -bind r echo "Despite your effort, the wrap mode remains unchanged." -bind f echo "Despite your effort, the flow control remains unchanged." -register r ^Ar -register f ^Af -bind ^R process r -bind ^F process f - -# make split more convenient: it now brings up the previous window -# instead of a blank one, and it leaves the cursor in the new region -register S "^A:split^M^A^I^A^A" -bind S process S - -# bind generic function keys to switch windows -bindkey -k k0 select 0 -bindkey -k k1 select 1 -bindkey -k k2 select 2 -bindkey -k k3 select 3 -bindkey -k k4 select 4 -bindkey -k k5 select 5 -bindkey -k k6 select 6 -bindkey -k k7 select 7 -bindkey -k k8 select 8 -bindkey -k k9 select 9 -#bindkey -k k; select 0 - -bindkey "\033[[A" select 1 -bindkey "\033[[B" select 2 -bindkey "\033[[C" select 3 -bindkey "\033[[D" select 4 -bindkey "\033[[E" select 5 - -bindkey "\033[11~" select 1 -bindkey "\033[12~" select 2 -bindkey "\033[13~" select 3 -bindkey "\033[14~" select 4 -bindkey "\033[15~" select 5 -bindkey "\033[17~" select 6 -bindkey "\033[18~" select 7 -bindkey "\033[19~" select 8 -bindkey "\033[20~" select 9 -bindkey "\033[21~" select 0 - -bindkey "\033[11~" select 1 -bindkey "\033[12~" select 2 -bindkey "\033[13~" select 3 -bindkey "\033[14~" select 4 -bindkey "\033[15~" select 5 - -# make keypad_delete send ascii 127. this is wrong: really I ought -# to fix all the termcaps that have kD=\177 instead of kD=\E[3~, but -# this works and I don't care that much. -#bindkey -k kD stuff \177 - -# by default, always let me know when background windows produce text -#defmonitor on - -# don't lock up when one display dies -defnonblock on - -# keep 5000 lines of history in all windows -defscrollback 5000 - -# make ^O the escape character, and make ^Oo a literal ^O -#escape ^Oo - -# use the xterm's title bar to display window titles, but display ordinary -# screen messages on the bottom line, as usual -#hardstatus off -#hardstatus ignore - -# make the timeout for multicharacter key bindings nice and short -maptimeout 100 - -# let messages be displayed for a long time if they're not interrupted -msgwait 15 - -# use interesting messages -nethack on - -# use nifty cool dynamic window title updating -shelltitle "$ |zsh" - -# by default, wait an entire minute before deciding a window is silent -silencewait 60 - -# suppress the default startup message -startup_message off - -# pretend to be a vt100, since no one has heard of terminal type "screen" -#term vt220 -term xterm - -# use an xterm's title bar to display the hardstatus line -#termcapinfo xterm hs:ts=\E]0;:fs=\007:ds=\E]0;\007 - - -#Begin -#terminfo and termcap for nice 256 color terminal -# allow bold colors - necessary for some reason -attrcolor b ".I" -# tell screen how to set colors. AB = background, AF=foreground -termcapinfo xterm "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm" -termcapinfo xterm-color "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm" -# erase background with current bg color -defbce "on" -#End - - - -# make bells in this window audible -vbell off - -#fix scrollback residue from size changes -altscreen on -setenv SCREENME false - - -# make only the first window show up in the utmp, and report idle time to it -#screen -t "] |login" 0 -#reportidle -#deflogin off -deflogin on - -#Add neato titlebar and windowlist. -hardstatus on -hardstatus alwayslastline -#caption always "%{= C}screen[%n] | %c | %h%=" -#hardstatus string "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H %{..Y} %m/%d %C%a " -#hardstatus string "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H %{..Y} %D %m/%d %C%a " -hardstatus string '%{= kG}[ %{G}%H %{g} %{C}%l%{c}%{G}][%{g}%= %{= kw}%?%-Lw%?%{r}(%{W}%n %t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{C} %m/%d %{W}%c %{g}]' - -windowlist string " screen[%n %t] %h" -aclchg root -wx "#?" -aclchg root +x detach,select,next,prev,windowlist - - diff --git a/.setup_new_env.sh b/.setup_new_env.sh deleted file mode 100755 index 367a4a8..0000000 --- a/.setup_new_env.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/usr/bin/env bash - -function main { - mv -f .* $HOME - mv -f bin $HOME - cd $HOME - git submodule update --init --recursive -} - -read -p "This will overwrite files in $HOME. Type 'yes' to confirm: " confirm -if [ "$confirm" == "yes" ]; then - main; -fi diff --git a/.spacemacs b/.spacemacs deleted file mode 100644 index a9ac93f..0000000 --- a/.spacemacs +++ /dev/null @@ -1,432 +0,0 @@ -;; It must be stored in your home directory. - -(defun dotspacemacs/layers () - "Configuration Layers declaration. -You should not put any user code in this function besides modifying the variable -values." - (setq-default - ;; Base distribution to use. This is a layer contained in the directory - ;; `+distribution'. For now available distributions are `spacemacs-base' - ;; or `spacemacs'. (default 'spacemacs) - dotspacemacs-distribution 'spacemacs - ;; List of additional paths where to look for configuration layers. - ;; Paths must have a trailing slash (i.e. `~/.mycontribs/') - dotspacemacs-configuration-layer-path '() - ;; List of configuration layers to load. If it is the symbol `all' instead - ;; of a list then all discovered layers will be installed. - dotspacemacs-configuration-layers - '( - ;; ---------------------------------------------------------------- - ;; Example of useful layers you may want to use right away. - ;; Uncomment some layer names and press <SPC f e R> (Vim style) or - ;; <M-m f e R> (Emacs style) to install them. - ;; ---------------------------------------------------------------- - (auto-completion :variables - auto-completion-enable-help-tooltip t - auto-completion-enable-snippets-in-popup nil) - ;; better-defaults - idris - emacs-lisp - mu4e - git - go - ;themes-megapack - latex - markdown - (org :variables - org-enable-github-support t) - (shell :variables - shell-default-height 30 - shell-default-position 'bottom - shell-default-term-shell "/bin/zsh") - ;; spell-checking - python - yaml - syntax-checking - (version-control :variables - version-control-diff-tool 'diff-hl - version-control-global-margin t) - ) - ;; List of additional packages that will be installed without being - ;; wrapped in a layer. If you need some configuration for these - ;; packages then consider to create a layer, you can also put the - ;; configuration in `dotspacemacs/config'. - dotspacemacs-additional-packages '( - s - protobuf-mode - systemd - ) - ;; A list of packages and/or extensions that will not be install and loaded. - dotspacemacs-excluded-packages '( - rainbow-delimiters - highlight-parentheses - ) - ;; If non-nil spacemacs will delete any orphan packages, i.e. packages that - ;; are declared in a layer which is not a member of - ;; the list `dotspacemacs-configuration-layers'. (default t) - dotspacemacs-delete-orphan-packages t)) - -(defun dotspacemacs/init () - "Initialization function. -This function is called at the very startup of Spacemacs initialization -before layers configuration. -You should not put any user code in there besides modifying the variable -values." - ;; This setq-default sexp is an exhaustive list of all the supported - ;; spacemacs settings. - (setq-default - ;; One of `vim', `emacs' or `hybrid'. Evil is always enabled but if the - ;; variable is `emacs' then the `holy-mode' is enabled at startup. `hybrid' - ;; uses emacs key bindings for vim's insert mode, but otherwise leaves evil - ;; unchanged. (default 'vim) - dotspacemacs-editing-style 'vim - - ;; If non nil output loading progress in `*Messages*' buffer. (default nil) - dotspacemacs-verbose-loading nil - ;; Specify the startup banner. Default value is `official', it displays - ;; the official spacemacs logo. An integer value is the index of text - ;; banner, `random' chooses a random text banner in `core/banners' - ;; directory. A string value must be a path to an image format supported - ;; by your Emacs build. - ;; If the value is nil then no banner is displayed. (default 'official) - dotspacemacs-startup-banner 'official - ;; List of items to show in the startup buffer. If nil it is disabled. - ;; Possible values are: `recents' `bookmarks' `projects'. - ;; (default '(recents projects)) - dotspacemacs-startup-lists '(recents projects) - ;; List of themes, the first of the list is loaded when spacemacs starts. - ;; Press <SPC> T n to cycle to the next theme in the list (works great - ;; with 2 themes variants, one dark and one light) - ;; dotspacemacs-themes '(spacemacs-dark - ;; spacemacs-light - ;; solarized-light - ;; solarized-dark - ;; leuven - ;; monokai - ;; zenburn) - ;;dotspacemacs-themes '(barak) - ;; If non nil the cursor color matches the state color. - dotspacemacs-colorize-cursor-according-to-state t - ;; Default font. `powerline-scale' allows to quickly tweak the mode-line - ;; size to make separators look not too crappy. - dotspacemacs-default-font '("Droid Sans Mono Dotted" - :size 24 - :weight normal - :width normal - :powerline-scale 1.3) - ;; dotspacemacs-default-font '("Inconsolata" - ;; :size 22 - ;; :weight normal - ;; :width normal - ;; :powerline-scale 1.1) - ;; The leader key - dotspacemacs-leader-key "SPC" - ;; The leader key accessible in `emacs state' and `insert state' - ;; (default "M-m") - dotspacemacs-emacs-leader-key "M-m" - ;; Major mode leader key is a shortcut key which is the equivalent of - ;; pressing `<leader> m`. Set it to `nil` to disable it. (default ",") - dotspacemacs-major-mode-leader-key "," - ;; Major mode leader key accessible in `emacs state' and `insert state'. - ;; (default "C-M-m) - dotspacemacs-major-mode-emacs-leader-key "C-M-m" - ;; The command key used for Evil commands (ex-commands) and - ;; Emacs commands (M-x). - ;; By default the command key is `:' so ex-commands are executed like in Vim - ;; with `:' and Emacs commands are executed with `<leader> :'. - dotspacemacs-command-key ":" - ;; If non nil `Y' is remapped to `y$'. (default t) - dotspacemacs-remap-Y-to-y$ t - ;; Location where to auto-save files. Possible values are `original' to - ;; auto-save the file in-place, `cache' to auto-save the file to another - ;; file stored in the cache directory and `nil' to disable auto-saving. - ;; (default 'cache) - dotspacemacs-auto-save-file-location 'cache - ;; If non nil then `ido' replaces `helm' for some commands. For now only - ;; `find-files' (SPC f f), `find-spacemacs-file' (SPC f e s), and - ;; `find-contrib-file' (SPC f e c) are replaced. (default nil) - dotspacemacs-use-ido nil - ;; If non nil, `helm' will try to miminimize the space it uses. (default nil) - dotspacemacs-helm-resize nil - ;; if non nil, the helm header is hidden when there is only one source. - ;; (default nil) - dotspacemacs-helm-no-header nil - ;; define the position to display `helm', options are `bottom', `top', - ;; `left', or `right'. (default 'bottom) - dotspacemacs-helm-position 'bottom - ;; If non nil the paste micro-state is enabled. When enabled pressing `p` - ;; several times cycle between the kill ring content. (default nil) - dotspacemacs-enable-paste-micro-state nil - ;; Which-key delay in seconds. The which-key buffer is the popup listing - ;; the commands bound to the current keystroke sequence. (default 0.4) - dotspacemacs-which-key-delay 0.4 - ;; Which-key frame position. Possible values are `right', `bottom' and - ;; `right-then-bottom'. right-then-bottom tries to display the frame to the - ;; right; if there is insufficient space it displays it at the bottom. - ;; (default 'bottom) - dotspacemacs-which-key-position 'bottom - ;; If non nil a progress bar is displayed when spacemacs is loading. This - ;; may increase the boot time on some systems and emacs builds, set it to - ;; nil to boost the loading time. (default t) - dotspacemacs-loading-progress-bar t - ;; If non nil the frame is fullscreen when Emacs starts up. (default nil) - ;; (Emacs 24.4+ only) - dotspacemacs-fullscreen-at-startup nil - ;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen. - ;; Use to disable fullscreen animations in OSX. (default nil) - dotspacemacs-fullscreen-use-non-native nil - ;; If non nil the frame is maximized when Emacs starts up. - ;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil. - ;; (default nil) (Emacs 24.4+ only) - dotspacemacs-maximized-at-startup nil - ;; A value from the range (0..100), in increasing opacity, which describes - ;; the transparency level of a frame when it's active or selected. - ;; Transparency can be toggled through `toggle-transparency'. (default 90) - dotspacemacs-active-transparency 90 - ;; A value from the range (0..100), in increasing opacity, which describes - ;; the transparency level of a frame when it's inactive or deselected. - ;; Transparency can be toggled through `toggle-transparency'. (default 90) - dotspacemacs-inactive-transparency 90 - ;; If non nil unicode symbols are displayed in the mode line. (default t) - dotspacemacs-mode-line-unicode-symbols t - ;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth - ;; scrolling overrides the default behavior of Emacs which recenters the - ;; point when it reaches the top or bottom of the screen. (default t) - dotspacemacs-smooth-scrolling t - ;; If non-nil smartparens-strict-mode will be enabled in programming modes. - ;; (default nil) - dotspacemacs-smartparens-strict-mode nil - ;; Select a scope to highlight delimiters. Possible values are `any', - ;; `current', `all' or `nil'. Default is `all' (highlight any scope and - ;; emphasis the current one). (default 'all) - dotspacemacs-highlight-delimiters 'all - ;; If non nil advises quit functions to keep server open when quitting. - ;; (default nil) - dotspacemacs-persistent-server nil - ;; List of search tool executable names. Spacemacs uses the first installed - ;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'. - ;; (default '("ag" "pt" "ack" "grep")) - dotspacemacs-search-tools '("ag" "pt" "ack" "grep") - ;; The default package repository used if no explicit repository has been - ;; specified with an installed package. - ;; Not used for now. (default nil) - dotspacemacs-default-package-repository nil - - company-go-show-annotation t - company-minimum-prefix-length 0 - neo-window-position 'right - neo-dont-be-alone t - )) - - -(defun dotspacemacs/user-init () - "Initialization function for user code. -It is called immediately after `dotspacemacs/init'. You are free to put any -user code." -) - -(defun dotspacemacs/user-config () - "Configuration function for user code. - This function is called at the very end of Spacemacs initialization after -layers configuration. You are free to put any user code." - (load-file "~/.emacs.local/barak-theme.el") - (load-theme 'barak t) - (fset 'xterm-color-unfontify-region 'font-lock-default-unfontify-region) - ;(setq dotspacemacs-additional-packages '(barak-theme)) - (defun kill-buffer-and-its-windows (buffer) - "Kill BUFFER and delete its windows. Default is `current-buffer'. -BUFFER may be either a buffer or its name (a string)." - (interactive (list (read-buffer "Kill buffer: " (current-buffer) 'existing))) - (setq buffer (get-buffer buffer)) - (if (buffer-live-p buffer) ; Kill live buffer only. - (let ((wins (get-buffer-window-list buffer nil t))) ; On all frames. - (when (and (buffer-modified-p buffer) - (fboundp '1on1-flash-ding-minibuffer-frame)) - (1on1-flash-ding-minibuffer-frame t)) ; Defined in `oneonone.el'. - (when (kill-buffer buffer) ; Only delete windows if buffer killed. - (dolist (win wins) ; (User might keep buffer if modified.) - (when (window-live-p win) - ;; Ignore error, in particular, - ;; "Attempt to delete the sole visible or iconified frame". - (condition-case nil (delete-window win) (error nil)))))) - (when (interactive-p) - (error "Cannot kill buffer. Not a live buffer: `%s'" buffer)))) - - (defun custom-neotree-enter-hide () - (interactive) - (neotree-enter) - (neotree-hide) - ) - - (defun custom-neotree-peek () - (interactive) - (neotree-enter) - (select-window-0) - ) - - (defun org-my-custom-timestamp () - (interactive) - (evil-open-below 0) - (insert (format-time-string "[%D %H:%M]\n"))) - - (defun md-my-custom-timestamp () - (interactive) - (evil-open-below 0) - (insert (format-time-string "###### [%D %H:%M]\n"))) - - (evil-leader/set-key-for-mode 'markdown-mode "," 'md-my-custom-timestamp) - (evil-leader/set-key-for-mode 'org-mode "," 'org-my-custom-timestamp) - - (defadvice spacemacs//neotree-key-bindings (after add-custom-keybindings activate) - "add keybindings for enter-hide and peek functions" - (define-key evil-motion-state-local-map (kbd "RET") 'custom-neotree-enter-hide) - (define-key evil-motion-state-local-map (kbd "TAB") 'custom-neotree-peek) - ) - - ;; Make evil-mode up/down operate in screen lines instead of logical lines - (define-key evil-motion-state-map "j" 'evil-next-visual-line) - (define-key evil-motion-state-map "k" 'evil-previous-visual-line) - ;; Also in visual mode - (define-key evil-visual-state-map "j" 'evil-next-visual-line) - (define-key evil-visual-state-map "k" 'evil-previous-visual-line) - (define-key evil-normal-state-map "gc" 'kill-buffer-and-window) - (define-key evil-normal-state-map "gn" 'next-buffer) - (define-key evil-normal-state-map "gp" 'previous-buffer) - (define-key evil-normal-state-map "gt" 'neotree-find-project-root) - (define-key evil-normal-state-map "gw" 'evil-search-unbounded-word-forward) - (evil-ex-define-cmd "W[rite]" 'evil-write) - - (setq gofmt-command "goimports") - (setq flycheck-go-golint-executable "golintc.pl") - ; (setq tooltip-delay 0.2) - (setq flycheck-display-error 0.2) - (setq x-gtk-use-system-tooltips nil) - (setq flycheck-display-errors-function 'flycheck-display-error-messages-unless-error-list) - (setq vc-ignore-dir-regexp - (format "\\(%s\\)\\|\\(%s\\)" - vc-ignore-dir-regexp - tramp-file-name-regexp)) - - (setq tramp-ssh-controlmaster-options "-o ControlMaster=auto -o ControlPath='tramp.%%C' -o ControlPersist=no") - - (defun on-after-init () - (unless (display-graphic-p (selected-frame)) - (set-face-background 'default "unspecified-bg" (selected-frame)))) - - (add-hook 'window-setup-hook 'on-after-init) - - ;(set-frame-parameter (selected-frame) 'alpha '(85 85)) - ;(add-to-list 'default-frame-alist '(alpha 85 85)) - - (setq diff-hl-side 'left) - (defun cleanup-org-tables () - (save-excursion - (goto-char (point-min)) - (while (search-forward "-+-" nil t) (replace-match "-|-")) - )) - - (add-hook 'markdown-mode-hook 'orgtbl-mode) - (add-hook 'markdown-mode-hook - (lambda() - (add-hook 'after-save-hook 'cleanup-org-tables nil 'make-it-local))) - (add-hook 'go-mode-hook 'clean-aindent-mode) - - (setq mu4e-maildir "~/.mail/barak" - mu4e-trash-folder "/Trash" - mu4e-refile-folder "/Archive" - mu4e-sent-folder "/Sent" - mu4e-drafts-folder "/Drafts" - mu4e-get-mail-command "mbsync -a" - mu4e-update-interval nil - mu4e-compose-signature-auto-include nil - mu4e-view-show-images nil - mu4e-confirm-quit nil - mu4e-view-show-addresses t) - - (setq mu4e-maildir-shortcuts - '(("/INBOX" . ?i))) - - (setq mu4e-bookmarks - `(("flag:unread AND NOT flag:trashed" "Unread messages" ?u) - ;("date:today..now" "Today's messages" ?t) - ("date:today..now AND NOT flag:trashed AND NOT maildir:/Haskell" "Today's messages" ?t) - ("date:7d..now" "Last 7 days" ?w) - ("mime:image/*" "Messages with images" ?p) - (,(mapconcat 'identity - (mapcar - (lambda (maildir) - (concat "maildir:" (car maildir))) - mu4e-maildir-shortcuts) " OR ") - "All inboxes" ?i))) - -) - -;; ;; Do not write anything past this comment. This is where Emacs will -;; ;; auto-generate custom variable definitions. -;; (custom-set-variables -;; ;; custom-set-variables was added by Custom. -;; ;; If you edit it by hand, you could mess it up, so be careful. -;; ;; Your init file should contain only one such instance. -;; ;; If there is more than one, they won't work right. -;; '(ansi-color-names-vector -;; ["#3F3F3F" "#CC9393" "#7F9F7F" "#F0DFAF" "#8CD0D3" "#DC8CC3" "#93E0E3" "#DCDCCC"]) -;; '(custom-safe-themes -;; (quote -;; ("f3fdd9bfa4344c8264130b9f170938f878073bec453f3ad87577ca204be112fd" default))) -;; '(fci-rule-color "#383838" t) -;; '(vc-annotate-background "#2B2B2B") -;; '(vc-annotate-color-map -;; (quote -;; ((20 . "#BC8383") -;; (40 . "#CC9393") -;; (60 . "#DFAF8F") -;; (80 . "#D0BF8F") -;; (100 . "#E0CF9F") -;; (120 . "#F0DFAF") -;; (140 . "#5F7F5F") -;; (160 . "#7F9F7F") -;; (180 . "#8FB28F") -;; (200 . "#9FC59F") -;; (220 . "#AFD8AF") -;; (240 . "#BFEBBF") -;; (260 . "#93E0E3") -;; (280 . "#6CA0A3") -;; (300 . "#7CB8BB") -;; (320 . "#8CD0D3") -;; (340 . "#94BFF3") -;; (360 . "#DC8CC3")))) -;; '(vc-annotate-very-old-color "#DC8CC3")) -;; (custom-set-faces -;; ;; custom-set-faces was added by Custom. -;; ;; If you edit it by hand, you could mess it up, so be careful. -;; ;; Your init file should contain only one such instance. -;; ;; If there is more than one, they won't work right. -;; '(company-tooltip-common ((t (:inherit company-tooltip :weight bold :underline nil)))) -;; '(company-toolt -;; '(helm-candidate-number ((t (:background "chartreuse" :foreground "black"))))) -(custom-set-variables - ;; custom-set-variables was added by Custom. - ;; If you edit it by hand, you could mess it up, so be careful. - ;; Your init file should contain only one such instance. - ;; If there is more than one, they won't work right. - '(evil-want-Y-yank-to-eol t) - '(org-support-shift-select (quote always)) - '(package-selected-packages - (quote - (idris-mode prop-menu winum solarized-theme org-category-capture madhat2r-theme dash-functional fuzzy autothemer powerline spinner org alert log4e gntp markdown-mode hydra parent-mode projectile request go-guru gitignore-mode fringe-helper git-gutter+ git-gutter flycheck pkg-info epl flx magit magit-popup git-commit with-editor smartparens iedit anzu evil goto-chg undo-tree highlight diminish pos-tip go-mode company bind-map bind-key yasnippet packed anaconda-mode pythonic f dash s helm avy helm-core async auto-complete popup package-build yapfify uuidgen py-isort ox-gfm org-projectile org-download mu4e-maildirs-extension mu4e-alert ht live-py-mode link-hint hide-comnt git-link eyebrowse evil-visual-mark-mode evil-unimpaired evil-ediff eshell-z dumb-jump darkokai-theme column-enforce-mode company-auctex auctex-latexmk auctex zonokai-theme zenburn-theme zen-and-art-theme yaml-mode xterm-color ws-butler window-numbering which-key volatile-highlights vi-tilde-fringe use-package underwater-theme ujelly-theme twilight-theme twilight-bright-theme twilight-anti-bright-theme tronesque-theme toxi-theme toc-org tao-theme tangotango-theme tango-plus-theme tango-2-theme systemd sunny-day-theme sublime-themes subatomic256-theme subatomic-theme stekene-theme spacemacs-theme spaceline spacegray-theme soothe-theme soft-stone-theme soft-morning-theme soft-charcoal-theme smyx-theme smooth-scrolling smeargle shell-pop seti-theme reverse-theme restart-emacs railscasts-theme quelpa pyvenv pytest pyenv-mode py-yapf purple-haze-theme protobuf-mode professional-theme popwin planet-theme pip-requirements phoenix-dark-pink-theme phoenix-dark-mono-theme persp-mode pcre2el pastels-on-dark-theme paradox page-break-lines orgit organic-green-theme org-repo-todo org-present org-pomodoro org-plus-contrib org-bullets open-junk-file omtose-phellack-theme oldlace-theme occidental-theme obsidian-theme noctilux-theme niflheim-theme neotree naquadah-theme mustang-theme multi-term move-text monokai-theme monochrome-theme molokai-theme moe-theme mmm-mode minimal-theme material-theme markdown-toc majapahit-theme magit-gitflow macrostep lush-theme lorem-ipsum linum-relative light-soap-theme leuven-theme jbeans-theme jazz-theme ir-black-theme inkpot-theme info+ indent-guide ido-vertical-mode hy-mode hungry-delete htmlize hl-todo highlight-parentheses highlight-numbers highlight-indentation heroku-theme hemisu-theme help-fns+ helm-themes helm-swoop helm-pydoc helm-projectile helm-mode-manager helm-make helm-gitignore helm-flx helm-descbinds helm-company helm-c-yasnippet helm-ag hc-zenburn-theme gruvbox-theme gruber-darker-theme grandshell-theme gotham-theme google-translate golden-ratio go-eldoc gnuplot gitconfig-mode gitattributes-mode git-timemachine git-messenger git-gutter-fringe git-gutter-fringe+ gh-md gandalf-theme flycheck-pos-tip flx-ido flatui-theme flatland-theme firebelly-theme fill-column-indicator farmhouse-theme fancy-battery expand-region exec-path-from-shell evil-visualstar evil-tutor evil-surround evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-magit evil-lisp-state evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-args evil-anzu eval-sexp-fu espresso-theme eshell-prompt-extras esh-help elisp-slime-nav dracula-theme django-theme diff-hl define-word darktooth-theme darkmine-theme darkburn-theme dakrone-theme cython-mode cyberpunk-theme company-statistics company-quickhelp company-go company-anaconda colorsarenice-theme color-theme-sanityinc-tomorrow color-theme-sanityinc-solarized clues-theme clean-aindent-mode cherry-blossom-theme busybee-theme buffer-move bubbleberry-theme bracketed-paste birds-of-paradise-plus-theme badwolf-theme auto-yasnippet auto-highlight-symbol auto-compile apropospriate-theme anti-zenburn-theme ample-zen-theme ample-theme alect-themes aggressive-indent afternoon-theme adaptive-wrap ace-window ace-link ace-jump-helm-line ac-ispell))) - '(paradox-github-token t) - '(safe-local-variable-values - (quote - ((eval setenv "GOPATH" "/home/barak/src/roba") - (eval setenv "GOPATH" "/home/barak/src/bb4") - (eval setenv "GOPATH" "/home/barak/src/bbot") - (eval setenv "GOPATH" "/home/barak/src/torus") - (eval setenv "GOPATH" "/home/barak/src/cayley") - (eval setenv "GOPATH" "/home/barak/src/livemd") - (eval setenv "GOPATH" "/home/barak/src/agro"))))) -(custom-set-faces - ;; custom-set-faces was added by Custom. - ;; If you edit it by hand, you could mess it up, so be careful. - ;; Your init file should contain only one such instance. - ;; If there is more than one, they won't work right. - ) diff --git a/.taskrc b/.taskrc deleted file mode 100644 index 72b4780..0000000 --- a/.taskrc +++ /dev/null @@ -1,32 +0,0 @@ -# [Created by task 2.2.0 5/9/2013 17:01:23] -# Taskwarrior program configuration file. -# For more documentation, see http://taskwarrior.org or try 'man task', 'man task-faq', -# 'man task-tutorial', 'man task-color', 'man task-sync' or 'man taskrc' - -# Here is an example of entries that use the default, override and blank values -# variable=foo -- By specifying a value, this overrides the default -# variable= -- By specifying no value, this means no default -# #variable=foo -- By commenting out the line, or deleting it, this uses the default - -# Use the command 'task show' to see all defaults and overrides - -# Files -data.location=~/.task - -# Color theme (uncomment one to use) -#include /usr/share/doc/task/rc/light-16.theme -#include /usr/share/doc/task/rc/light-256.theme -#include /usr/share/doc/task/rc/dark-16.theme -#include /usr/share/doc/task/rc/dark-256.theme -#include /usr/share/doc/task/rc/dark-red-256.theme -#include /usr/share/doc/task/rc/dark-green-256.theme -#include /usr/share/doc/task/rc/dark-blue-256.theme -#include /usr/share/doc/task/rc/dark-violets-256.theme -#include /usr/share/doc/task/rc/dark-yellow-green.theme -#include /usr/share/doc/task/rc/dark-gray-256.theme - -taskd.server=freecinc.com:53589 -taskd.credentials=FreeCinc\/freecinc_d9da621f\/9b20be7a-db4e-45a3-aa6e-61173f5988e4 -taskd.certificate=~\/.task\/freecinc_d9da621f.cert.pem -taskd.key=~\/.task\/freecinc_d9da621f.key.pem -taskd.ca=~\/.task\/freecinc_d9da621f.ca.pem diff --git a/.tz_aliases.sh b/.tz_aliases.sh deleted file mode 100644 index dcc68c6..0000000 --- a/.tz_aliases.sh +++ /dev/null @@ -1,3 +0,0 @@ -alias time_pst='TZ="America/Los_Angeles" date "+%I:%M%p %Z"' -alias time_est='TZ="America/New_York" date "+%I:%M%p %Z"' -alias time_cet='TZ="Europe/Paris" date "+%I:%M%p %Z"' diff --git a/.weechat/weechat.conf b/.weechat/weechat.conf deleted file mode 100644 index d7156d7..0000000 --- a/.weechat/weechat.conf +++ /dev/null @@ -1,697 +0,0 @@ -# -# weechat -- weechat.conf -# -# WARNING: It is NOT recommended to edit this file by hand, -# especially if WeeChat is running. -# -# Use /set or similar command to change settings in WeeChat. -# -# For more info, see: https://weechat.org/doc/quickstart -# - -[debug] - -[startup] -command_after_plugins = "" -command_before_plugins = "" -display_logo = on -display_version = on -sys_rlimit = "" - -[look] -align_end_of_lines = message -align_multiline_words = on -bar_more_down = "++" -bar_more_left = "<<" -bar_more_right = ">>" -bar_more_up = "--" -bare_display_exit_on_input = on -bare_display_time_format = "%H:%M" -buffer_auto_renumber = on -buffer_notify_default = all -buffer_position = end -buffer_search_case_sensitive = off -buffer_search_force_default = off -buffer_search_regex = off -buffer_search_where = prefix_message -buffer_time_format = "%H:%M:%S" -buffer_time_same = "" -color_basic_force_bold = off -color_inactive_buffer = on -color_inactive_message = on -color_inactive_prefix = on -color_inactive_prefix_buffer = on -color_inactive_time = off -color_inactive_window = on -color_nick_offline = off -color_pairs_auto_reset = 5 -color_real_white = off -command_chars = "" -command_incomplete = off -confirm_quit = off -confirm_upgrade = off -day_change = on -day_change_message_1date = "-- %a, %d %b %Y --" -day_change_message_2dates = "-- %%a, %%d %%b %%Y (%a, %d %b %Y) --" -eat_newline_glitch = off -emphasized_attributes = "" -highlight = "" -highlight_regex = "" -highlight_tags = "" -hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0" -hotlist_buffer_separator = ", " -hotlist_count_max = 2 -hotlist_count_min_msg = 2 -hotlist_names_count = 3 -hotlist_names_length = 0 -hotlist_names_level = 12 -hotlist_names_merged_buffers = off -hotlist_prefix = "H: " -hotlist_remove = merged -hotlist_short_names = on -hotlist_sort = group_time_asc -hotlist_suffix = "" -hotlist_unique_numbers = on -input_cursor_scroll = 20 -input_share = none -input_share_overwrite = off -input_undo_max = 32 -item_away_message = on -item_buffer_filter = "*" -item_buffer_zoom = "!" -item_mouse_status = "M" -item_time_format = "%H:%M" -jump_current_to_previous_buffer = on -jump_previous_buffer_when_closing = on -jump_smart_back_to_buffer = on -key_bind_safe = on -key_grab_delay = 800 -mouse = off -mouse_timer_delay = 100 -nick_color_force = "" -nick_color_hash = djb2 -nick_color_hash_salt = "" -nick_color_stop_chars = "_|[" -nick_prefix = "" -nick_suffix = "" -paste_auto_add_newline = on -paste_bracketed = on -paste_bracketed_timer_delay = 10 -paste_max_lines = 1 -prefix_action = " *" -prefix_align = right -prefix_align_max = 0 -prefix_align_min = 0 -prefix_align_more = "+" -prefix_align_more_after = on -prefix_buffer_align = right -prefix_buffer_align_max = 0 -prefix_buffer_align_more = "+" -prefix_buffer_align_more_after = on -prefix_error = "=!=" -prefix_join = "-->" -prefix_network = "--" -prefix_quit = "<--" -prefix_same_nick = "" -prefix_same_nick_middle = "" -prefix_suffix = "|" -quote_nick_prefix = "<" -quote_nick_suffix = ">" -quote_time_format = "%H:%M:%S" -read_marker = line -read_marker_always_show = off -read_marker_string = "- " -save_config_on_exit = on -save_config_with_fsync = off -save_layout_on_exit = none -scroll_amount = 3 -scroll_bottom_after_switch = off -scroll_page_percent = 100 -search_text_not_found_alert = on -separator_horizontal = "-" -separator_vertical = "" -tab_width = 1 -time_format = "%a, %d %b %Y %T" -window_auto_zoom = off -window_separator_horizontal = on -window_separator_vertical = on -window_title = "WeeChat ${info:version}" -word_chars_highlight = "!\u00A0,-,_,|,alnum" -word_chars_input = "!\u00A0,-,_,|,alnum" - -[palette] - -[color] -bar_more = lightmagenta -chat = default -chat_bg = default -chat_buffer = white -chat_channel = white -chat_day_change = cyan -chat_delimiters = green -chat_highlight = yellow -chat_highlight_bg = magenta -chat_host = cyan -chat_inactive_buffer = default -chat_inactive_window = default -chat_nick = lightcyan -chat_nick_colors = "cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue" -chat_nick_offline = default -chat_nick_offline_highlight = default -chat_nick_offline_highlight_bg = blue -chat_nick_other = cyan -chat_nick_prefix = green -chat_nick_self = white -chat_nick_suffix = green -chat_prefix_action = white -chat_prefix_buffer = brown -chat_prefix_buffer_inactive_buffer = default -chat_prefix_error = yellow -chat_prefix_join = lightgreen -chat_prefix_more = lightmagenta -chat_prefix_network = magenta -chat_prefix_quit = lightred -chat_prefix_suffix = green -chat_read_marker = magenta -chat_read_marker_bg = default -chat_server = brown -chat_tags = red -chat_text_found = yellow -chat_text_found_bg = lightmagenta -chat_time = default -chat_time_delimiters = brown -chat_value = cyan -chat_value_null = blue -emphasized = yellow -emphasized_bg = magenta -input_actions = lightgreen -input_text_not_found = red -item_away = yellow -nicklist_away = cyan -nicklist_group = green -separator = blue -status_count_highlight = magenta -status_count_msg = brown -status_count_other = default -status_count_private = green -status_data_highlight = lightmagenta -status_data_msg = yellow -status_data_other = default -status_data_private = lightgreen -status_filter = green -status_more = yellow -status_mouse = green -status_name = white -status_name_ssl = lightgreen -status_nicklist_count = default -status_number = yellow -status_time = default - -[completion] -base_word_until_cursor = on -command_inline = on -default_template = "%(nicks)|%(irc_channels)" -nick_add_space = on -nick_case_sensitive = off -nick_completer = ":" -nick_first_only = off -nick_ignore_chars = "[]`_-^" -partial_completion_alert = on -partial_completion_command = off -partial_completion_command_arg = off -partial_completion_count = on -partial_completion_other = off -partial_completion_templates = "config_options" - -[history] -display_default = 5 -max_buffer_lines_minutes = 0 -max_buffer_lines_number = 4096 -max_commands = 100 -max_visited_buffers = 50 - -[proxy] - -[network] -connection_timeout = 60 -gnutls_ca_file = "/etc/ssl/certs/ca-certificates.crt" -gnutls_handshake_timeout = 30 -proxy_curl = "" - -[plugin] -autoload = "*" -debug = off -extension = ".so,.dll" -path = "%h/plugins" -save_config_on_unload = on - -[bar] -buflist.color_bg = default -buflist.color_bg_inactive = default -buflist.color_delim = default -buflist.color_fg = default -buflist.conditions = "" -buflist.filling_left_right = vertical -buflist.filling_top_bottom = columns_vertical -buflist.hidden = off -buflist.items = "buflist" -buflist.position = left -buflist.priority = 0 -buflist.separator = on -buflist.size = 0 -buflist.size_max = 0 -buflist.type = root -fset.color_bg = default -fset.color_bg_inactive = default -fset.color_delim = cyan -fset.color_fg = default -fset.conditions = "${buffer.full_name} == fset.fset" -fset.filling_left_right = vertical -fset.filling_top_bottom = horizontal -fset.hidden = off -fset.items = "fset" -fset.position = top -fset.priority = 0 -fset.separator = on -fset.size = 3 -fset.size_max = 3 -fset.type = window -input.color_bg = default -input.color_bg_inactive = default -input.color_delim = cyan -input.color_fg = default -input.conditions = "" -input.filling_left_right = vertical -input.filling_top_bottom = horizontal -input.hidden = off -input.items = "[input_prompt]+(away),[input_search],[input_paste],input_text" -input.position = bottom -input.priority = 1000 -input.separator = off -input.size = 1 -input.size_max = 0 -input.type = window -nicklist.color_bg = default -nicklist.color_bg_inactive = default -nicklist.color_delim = cyan -nicklist.color_fg = default -nicklist.conditions = "${nicklist}" -nicklist.filling_left_right = vertical -nicklist.filling_top_bottom = columns_vertical -nicklist.hidden = off -nicklist.items = "buffer_nicklist" -nicklist.position = right -nicklist.priority = 200 -nicklist.separator = on -nicklist.size = 0 -nicklist.size_max = 0 -nicklist.type = window -status.color_bg = blue -status.color_bg_inactive = default -status.color_delim = cyan -status.color_fg = default -status.conditions = "" -status.filling_left_right = vertical -status.filling_top_bottom = horizontal -status.hidden = off -status.items = "[buffer_last_number],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_zoom+buffer_filter,scroll,[lag],[hotlist],completion" -status.position = bottom -status.priority = 500 -status.separator = off -status.size = 1 -status.size_max = 0 -status.type = window -title.color_bg = blue -title.color_bg_inactive = default -title.color_delim = cyan -title.color_fg = default -title.conditions = "" -title.filling_left_right = vertical -title.filling_top_bottom = horizontal -title.hidden = off -title.items = "buffer_title" -title.position = top -title.priority = 500 -title.separator = off -title.size = 1 -title.size_max = 0 -title.type = window -vi_cmd.color_bg = default -vi_cmd.color_bg_inactive = default -vi_cmd.color_delim = default -vi_cmd.color_fg = default -vi_cmd.conditions = "" -vi_cmd.filling_left_right = vertical -vi_cmd.filling_top_bottom = vertical -vi_cmd.hidden = on -vi_cmd.items = "cmd_text" -vi_cmd.position = bottom -vi_cmd.priority = 0 -vi_cmd.separator = off -vi_cmd.size = 0 -vi_cmd.size_max = 0 -vi_cmd.type = root -vi_line_numbers.color_bg = default -vi_line_numbers.color_bg_inactive = default -vi_line_numbers.color_delim = default -vi_line_numbers.color_fg = default -vi_line_numbers.conditions = "" -vi_line_numbers.filling_left_right = vertical -vi_line_numbers.filling_top_bottom = vertical -vi_line_numbers.hidden = on -vi_line_numbers.items = "line_numbers" -vi_line_numbers.position = left -vi_line_numbers.priority = 0 -vi_line_numbers.separator = off -vi_line_numbers.size = 0 -vi_line_numbers.size_max = 0 -vi_line_numbers.type = window - -[layout] - -[notify] - -[filter] - -[key] -ctrl-? = "/input delete_previous_char" -ctrl-A = "/input move_beginning_of_line" -ctrl-B = "/window page_up" -ctrl-C_ = "/input insert \x1F" -ctrl-Cb = "/input insert \x02" -ctrl-Cc = "/input insert \x03" -ctrl-Ci = "/input insert \x1D" -ctrl-Co = "/input insert \x0F" -ctrl-Cv = "/input insert \x16" -ctrl-D = "/input delete_next_char" -ctrl-E = "/input move_end_of_line" -ctrl-F = "/window page_down" -ctrl-H = "/input delete_previous_char" -ctrl-I = "/input complete_next" -ctrl-J = "/input return" -ctrl-K = "/input delete_end_of_line" -ctrl-L = "/window refresh" -ctrl-M = "/input return" -ctrl-N = "/buffer +1" -ctrl-O = "/input jump_smart" -ctrl-P = "/buffer -1" -ctrl-R = "/input search_text_here" -ctrl-Sctrl-U = "/input set_unread" -ctrl-T = "/input transpose_chars" -ctrl-U = "/input delete_beginning_of_line" -ctrl-W = "/input delete_previous_word" -ctrl-W= = "/window balance" -ctrl-Wh = "/window left" -ctrl-Wj = "/window down" -ctrl-Wk = "/window up" -ctrl-Wl = "/window right" -ctrl-Wq = "/window merge" -ctrl-Ws = "/window splith" -ctrl-Wv = "/window splitv" -ctrl-Wx = "/window swap" -ctrl-X = "/input switch_active_buffer" -ctrl-Y = "/input clipboard_paste" -meta-meta-OP = "/bar scroll buflist * b" -meta-meta-OQ = "/bar scroll buflist * e" -meta-meta2-11~ = "/bar scroll buflist * b" -meta-meta2-12~ = "/bar scroll buflist * e" -meta-meta2-1~ = "/window scroll_top" -meta-meta2-23~ = "/bar scroll nicklist * b" -meta-meta2-24~ = "/bar scroll nicklist * e" -meta-meta2-4~ = "/window scroll_bottom" -meta-meta2-5~ = "/window scroll_up" -meta-meta2-6~ = "/window scroll_down" -meta-meta2-7~ = "/window scroll_top" -meta-meta2-8~ = "/window scroll_bottom" -meta-meta2-A = "/buffer -1" -meta-meta2-B = "/buffer +1" -meta-meta2-C = "/buffer +1" -meta-meta2-D = "/buffer -1" -meta-- = "/filter toggle @" -meta-/ = "/input jump_last_buffer_displayed" -meta-0 = "/buffer *10" -meta-1 = "/buffer *1" -meta-2 = "/buffer *2" -meta-3 = "/buffer *3" -meta-4 = "/buffer *4" -meta-5 = "/buffer *5" -meta-6 = "/buffer *6" -meta-7 = "/buffer *7" -meta-8 = "/buffer *8" -meta-9 = "/buffer *9" -meta-< = "/input jump_previously_visited_buffer" -meta-= = "/filter toggle" -meta-> = "/input jump_next_visited_buffer" -meta-B = "/buflist toggle" -meta-OA = "/input history_global_previous" -meta-OB = "/input history_global_next" -meta-OC = "/input move_next_word" -meta-OD = "/input move_previous_word" -meta-OF = "/input move_end_of_line" -meta-OH = "/input move_beginning_of_line" -meta-OP = "/bar scroll buflist * -100%" -meta-OQ = "/bar scroll buflist * +100%" -meta-Oa = "/input history_global_previous" -meta-Ob = "/input history_global_next" -meta-Oc = "/input move_next_word" -meta-Od = "/input move_previous_word" -meta2-11^ = "/bar scroll buflist * -100%" -meta2-11~ = "/bar scroll buflist * -100%" -meta2-12^ = "/bar scroll buflist * +100%" -meta2-12~ = "/bar scroll buflist * +100%" -meta2-15~ = "/buffer -1" -meta2-17~ = "/buffer +1" -meta2-18~ = "/window -1" -meta2-19~ = "/window +1" -meta2-1;3A = "/buffer -1" -meta2-1;3B = "/buffer +1" -meta2-1;3C = "/buffer +1" -meta2-1;3D = "/buffer -1" -meta2-1;3F = "/window scroll_bottom" -meta2-1;3H = "/window scroll_top" -meta2-1;3P = "/bar scroll buflist * b" -meta2-1;3Q = "/bar scroll buflist * e" -meta2-1;5A = "/input history_global_previous" -meta2-1;5B = "/input history_global_next" -meta2-1;5C = "/input move_next_word" -meta2-1;5D = "/input move_previous_word" -meta2-1;5P = "/bar scroll buflist * -100%" -meta2-1;5Q = "/bar scroll buflist * +100%" -meta2-1~ = "/input move_beginning_of_line" -meta2-200~ = "/input paste_start" -meta2-201~ = "/input paste_stop" -meta2-20~ = "/bar scroll title * -30%" -meta2-21~ = "/bar scroll title * +30%" -meta2-23;3~ = "/bar scroll nicklist * b" -meta2-23~ = "/bar scroll nicklist * -100%" -meta2-24;3~ = "/bar scroll nicklist * e" -meta2-24~ = "/bar scroll nicklist * +100%" -meta2-3~ = "/input delete_next_char" -meta2-4~ = "/input move_end_of_line" -meta2-5;3~ = "/window scroll_up" -meta2-5~ = "/window page_up" -meta2-6;3~ = "/window scroll_down" -meta2-6~ = "/window page_down" -meta2-7~ = "/input move_beginning_of_line" -meta2-8~ = "/input move_end_of_line" -meta2-A = "/input history_previous" -meta2-B = "/input history_next" -meta2-C = "/input move_next_char" -meta2-D = "/input move_previous_char" -meta2-F = "/input move_end_of_line" -meta2-G = "/window page_down" -meta2-H = "/input move_beginning_of_line" -meta2-I = "/window page_up" -meta2-Z = "/input complete_previous" -meta2-[E = "/buffer -1" -meta-_ = "/input redo" -meta-a = "/input jump_smart" -meta-b = "/input move_previous_word" -meta-d = "/input delete_next_word" -meta-f = "/input move_next_word" -meta-h = "/input hotlist_clear" -meta-j01 = "/buffer *1" -meta-j02 = "/buffer *2" -meta-j03 = "/buffer *3" -meta-j04 = "/buffer *4" -meta-j05 = "/buffer *5" -meta-j06 = "/buffer *6" -meta-j07 = "/buffer *7" -meta-j08 = "/buffer *8" -meta-j09 = "/buffer *9" -meta-j10 = "/buffer *10" -meta-j11 = "/buffer *11" -meta-j12 = "/buffer *12" -meta-j13 = "/buffer *13" -meta-j14 = "/buffer *14" -meta-j15 = "/buffer *15" -meta-j16 = "/buffer *16" -meta-j17 = "/buffer *17" -meta-j18 = "/buffer *18" -meta-j19 = "/buffer *19" -meta-j20 = "/buffer *20" -meta-j21 = "/buffer *21" -meta-j22 = "/buffer *22" -meta-j23 = "/buffer *23" -meta-j24 = "/buffer *24" -meta-j25 = "/buffer *25" -meta-j26 = "/buffer *26" -meta-j27 = "/buffer *27" -meta-j28 = "/buffer *28" -meta-j29 = "/buffer *29" -meta-j30 = "/buffer *30" -meta-j31 = "/buffer *31" -meta-j32 = "/buffer *32" -meta-j33 = "/buffer *33" -meta-j34 = "/buffer *34" -meta-j35 = "/buffer *35" -meta-j36 = "/buffer *36" -meta-j37 = "/buffer *37" -meta-j38 = "/buffer *38" -meta-j39 = "/buffer *39" -meta-j40 = "/buffer *40" -meta-j41 = "/buffer *41" -meta-j42 = "/buffer *42" -meta-j43 = "/buffer *43" -meta-j44 = "/buffer *44" -meta-j45 = "/buffer *45" -meta-j46 = "/buffer *46" -meta-j47 = "/buffer *47" -meta-j48 = "/buffer *48" -meta-j49 = "/buffer *49" -meta-j50 = "/buffer *50" -meta-j51 = "/buffer *51" -meta-j52 = "/buffer *52" -meta-j53 = "/buffer *53" -meta-j54 = "/buffer *54" -meta-j55 = "/buffer *55" -meta-j56 = "/buffer *56" -meta-j57 = "/buffer *57" -meta-j58 = "/buffer *58" -meta-j59 = "/buffer *59" -meta-j60 = "/buffer *60" -meta-j61 = "/buffer *61" -meta-j62 = "/buffer *62" -meta-j63 = "/buffer *63" -meta-j64 = "/buffer *64" -meta-j65 = "/buffer *65" -meta-j66 = "/buffer *66" -meta-j67 = "/buffer *67" -meta-j68 = "/buffer *68" -meta-j69 = "/buffer *69" -meta-j70 = "/buffer *70" -meta-j71 = "/buffer *71" -meta-j72 = "/buffer *72" -meta-j73 = "/buffer *73" -meta-j74 = "/buffer *74" -meta-j75 = "/buffer *75" -meta-j76 = "/buffer *76" -meta-j77 = "/buffer *77" -meta-j78 = "/buffer *78" -meta-j79 = "/buffer *79" -meta-j80 = "/buffer *80" -meta-j81 = "/buffer *81" -meta-j82 = "/buffer *82" -meta-j83 = "/buffer *83" -meta-j84 = "/buffer *84" -meta-j85 = "/buffer *85" -meta-j86 = "/buffer *86" -meta-j87 = "/buffer *87" -meta-j88 = "/buffer *88" -meta-j89 = "/buffer *89" -meta-j90 = "/buffer *90" -meta-j91 = "/buffer *91" -meta-j92 = "/buffer *92" -meta-j93 = "/buffer *93" -meta-j94 = "/buffer *94" -meta-j95 = "/buffer *95" -meta-j96 = "/buffer *96" -meta-j97 = "/buffer *97" -meta-j98 = "/buffer *98" -meta-j99 = "/buffer *99" -meta-k = "/input grab_key_command" -meta-l = "/window bare" -meta-m = "/mute mouse toggle" -meta-n = "/window scroll_next_highlight" -meta-p = "/window scroll_previous_highlight" -meta-r = "/input delete_line" -meta-s = "/mute aspell toggle" -meta-u = "/window scroll_unread" -meta-x = "/input zoom_merged_buffer" -meta-z = "/window zoom" -ctrl-^ = "/input jump_last_buffer_displayed" -ctrl-_ = "/input undo" - -[key_search] -ctrl-I = "/input search_switch_where" -ctrl-J = "/input search_stop_here" -ctrl-M = "/input search_stop_here" -ctrl-Q = "/input search_stop" -ctrl-R = "/input search_switch_regex" -meta2-A = "/input search_previous" -meta2-B = "/input search_next" -meta-c = "/input search_switch_case" - -[key_cursor] -ctrl-J = "/cursor stop" -ctrl-M = "/cursor stop" -meta-meta2-A = "/cursor move area_up" -meta-meta2-B = "/cursor move area_down" -meta-meta2-C = "/cursor move area_right" -meta-meta2-D = "/cursor move area_left" -meta2-1;3A = "/cursor move area_up" -meta2-1;3B = "/cursor move area_down" -meta2-1;3C = "/cursor move area_right" -meta2-1;3D = "/cursor move area_left" -meta2-A = "/cursor move up" -meta2-B = "/cursor move down" -meta2-C = "/cursor move right" -meta2-D = "/cursor move left" -@item(buffer_nicklist):K = "/window ${_window_number};/kickban ${nick}" -@item(buffer_nicklist):b = "/window ${_window_number};/ban ${nick}" -@item(buffer_nicklist):k = "/window ${_window_number};/kick ${nick}" -@item(buffer_nicklist):q = "/window ${_window_number};/query ${nick};/cursor stop" -@item(buffer_nicklist):w = "/window ${_window_number};/whois ${nick}" -@chat:Q = "hsignal:chat_quote_time_prefix_message;/cursor stop" -@chat:m = "hsignal:chat_quote_message;/cursor stop" -@chat:q = "hsignal:chat_quote_prefix_message;/cursor stop" - -[key_mouse] -@bar(buflist):ctrl-wheeldown = "hsignal:buflist_mouse" -@bar(buflist):ctrl-wheelup = "hsignal:buflist_mouse" -@bar(input):button2 = "/input grab_mouse_area" -@bar(nicklist):button1-gesture-down = "/bar scroll nicklist ${_window_number} +100%" -@bar(nicklist):button1-gesture-down-long = "/bar scroll nicklist ${_window_number} e" -@bar(nicklist):button1-gesture-up = "/bar scroll nicklist ${_window_number} -100%" -@bar(nicklist):button1-gesture-up-long = "/bar scroll nicklist ${_window_number} b" -@chat(fset.fset):button1 = "/window ${_window_number};/fset -go ${_chat_line_y}" -@chat(fset.fset):button2* = "hsignal:fset_mouse" -@chat(fset.fset):wheeldown = "/fset -down 5" -@chat(fset.fset):wheelup = "/fset -up 5" -@chat(script.scripts):button1 = "/window ${_window_number};/script go ${_chat_line_y}" -@chat(script.scripts):button2 = "/window ${_window_number};/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}" -@chat(script.scripts):wheeldown = "/script down 5" -@chat(script.scripts):wheelup = "/script up 5" -@item(buffer_nicklist):button1 = "/window ${_window_number};/query ${nick}" -@item(buffer_nicklist):button1-gesture-left = "/window ${_window_number};/kick ${nick}" -@item(buffer_nicklist):button1-gesture-left-long = "/window ${_window_number};/kickban ${nick}" -@item(buffer_nicklist):button2 = "/window ${_window_number};/whois ${nick}" -@item(buffer_nicklist):button2-gesture-left = "/window ${_window_number};/ban ${nick}" -@item(buflist):button1* = "hsignal:buflist_mouse" -@item(buflist):button2* = "hsignal:buflist_mouse" -@item(buflist2):button1* = "hsignal:buflist_mouse" -@item(buflist2):button2* = "hsignal:buflist_mouse" -@item(buflist3):button1* = "hsignal:buflist_mouse" -@item(buflist3):button2* = "hsignal:buflist_mouse" -@bar:wheeldown = "/bar scroll ${_bar_name} ${_window_number} +20%" -@bar:wheelup = "/bar scroll ${_bar_name} ${_window_number} -20%" -@chat:button1 = "/window ${_window_number}" -@chat:button1-gesture-left = "/window ${_window_number};/buffer -1" -@chat:button1-gesture-left-long = "/window ${_window_number};/buffer 1" -@chat:button1-gesture-right = "/window ${_window_number};/buffer +1" -@chat:button1-gesture-right-long = "/window ${_window_number};/input jump_last_buffer" -@chat:ctrl-wheeldown = "/window scroll_horiz -window ${_window_number} +10%" -@chat:ctrl-wheelup = "/window scroll_horiz -window ${_window_number} -10%" -@chat:wheeldown = "/window scroll_down -window ${_window_number}" -@chat:wheelup = "/window scroll_up -window ${_window_number}" -@*:button3 = "/cursor go ${_x},${_y}" diff --git a/.xinitrc.bak b/.xinitrc.bak deleted file mode 100755 index 8e3d5c3..0000000 --- a/.xinitrc.bak +++ /dev/null @@ -1,51 +0,0 @@ -#!/bin/bash - -export PATH=$HOME/bin:$PATH -systemctl --user import-environment DISPLAY XAUTHORITY -systemctl --user start pulseaudio.socket -systemctl --user start pulseaudio.service - -if which dbus-update-activation-environment >/dev/null 2>&1; then - dbus-update-activation-environment DISPLAY XAUTHORITY -fi - -eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh) -export SSH_AUTH_SOCK - -xinput-toggle -r yubikey -d - -xfsettingsd & -xrdb -merge .Xdefaults & - -#gnome-settings-daemon & -xscreensaver -no-splash & -#kupfer --no-splash & -rofi -key-run control-space -fuzzy -terminal run_terminal & -#nm-applet & -gnome-sound-applet & -remmina -i & -#setxkbmap -option ctrl:nocaps & -xmodmap ~/.Xmodmap & -#synclient PalmDetect=1 - -# Running a really minimal arch system? This helps: - -/usr/lib/xfce4/notifyd/xfce4-notifyd & -#pulseaudio --start & -blueman-applet & -#wicd-gtk --tray & - -if [ -f ~/.xrandrrc ]; then - ~/.xrandrrc -fi - - -~/.fehbg & -if command -v picom &>/dev/null; then - picom -b --config ~/.compton.conf & -fi - -#exec awesome -exec i3 -#exec startxfce4 -#exec dbus-launch --sh-syntax --exit-with-session i3 diff --git a/.xmonad/xmonad.hs b/.xmonad/xmonad.hs deleted file mode 100644 index bd4e96f..0000000 --- a/.xmonad/xmonad.hs +++ /dev/null @@ -1,216 +0,0 @@ -import XMonad -import XMonad.Config.Gnome -import XMonad.Operations - -import XMonad.Actions.Commands -import XMonad.Actions.CycleWS -import XMonad.Actions.DeManage -import qualified XMonad.Actions.DynamicWorkspaces as DW - -import XMonad.Hooks.DynamicLog as DL -import XMonad.Hooks.EwmhDesktops -import XMonad.Hooks.ManageDocks -import XMonad.Hooks.ManageHelpers -import XMonad.ManageHook - -import qualified XMonad.StackSet as W - -import XMonad.Util.Loggers as LS -import XMonad.Util.Run -import XMonad.Util.WindowProperties -import XMonad.Util.XSelection - -import qualified XMonad.Util.EZConfig as EZ -import qualified Data.Map as M - -myManageHook :: [ManageHook] -myManageHook = - [ resource =? "Synapse" --> doIgnore ] -{-myManageHook = -} - {-[ resource =? "Do" --> doFloat ]-} - -main = xmonad gnomeConfig - { manageHook = manageHook gnomeConfig <+> composeAll myManageHook - , borderWidth = 2 - , focusedBorderColor = "#00BFFF" - } - -{- --- delKeys x = foldr M.delete (keys defaultConfig x) (keysToRemove x) -delKeys = keys defaultConfig -newKeys x = M.union (delKeys x) (myKeys x) - -myKeys :: XConfig Layout -> M.Map (KeyMask, KeySym) (X ()) -myKeys conf@(XConfig {XMonad.modMask = modMask}) = M.fromList $ - [ ((modMask .|. shiftMask, xK_r ), spawn "if type xmonad; then xmonad --recompile && xmonad --restart; else xmessage xmonad not in \\$PATH: \"$PATH\"; fi") -- %! Restart xmonad - ] - ++ - -- mod-{w,e,r} %! Switch to physical/Xinerama screens 1, 2, or 3 - -- mod-shift-{w,e,r} %! Move client to screen 1, 2, or 3 - [((m .|. modMask, key), screenWorkspace sc >>= flip whenJust (windows . f)) - | (key, sc) <- zip [xK_q, xK_w, xK_e] [0..] - , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]] - -} -{- Reference -- the originals - -- launching and killing programs - [ ((modMask .|. shiftMask, xK_Return), spawn $ XMonad.terminal conf) -- %! Launch terminal - , ((modMask, xK_p ), spawn "dmenu_run") -- %! Launch dmenu - , ((modMask .|. shiftMask, xK_p ), spawn "gmrun") -- %! Launch gmrun - , ((modMask .|. shiftMask, xK_c ), kill) -- %! Close the focused window - - , ((modMask, xK_space ), sendMessage NextLayout) -- %! Rotate through the available layout algorithms - , ((modMask .|. shiftMask, xK_space ), setLayout $ XMonad.layoutHook conf) -- %! Reset the layouts on the current workspace to default - - , ((modMask, xK_n ), refresh) -- %! Resize viewed windows to the correct size - - -- move focus up or down the window stack - , ((modMask, xK_Tab ), windows W.focusDown) -- %! Move focus to the next window - , ((modMask .|. shiftMask, xK_Tab ), windows W.focusUp ) -- %! Move focus to the previous window - , ((modMask, xK_j ), windows W.focusDown) -- %! Move focus to the next window - , ((modMask, xK_k ), windows W.focusUp ) -- %! Move focus to the previous window - , ((modMask, xK_m ), windows W.focusMaster ) -- %! Move focus to the master window - - -- modifying the window order - , ((modMask, xK_Return), windows W.swapMaster) -- %! Swap the focused window and the master window - , ((modMask .|. shiftMask, xK_j ), windows W.swapDown ) -- %! Swap the focused window with the next window - , ((modMask .|. shiftMask, xK_k ), windows W.swapUp ) -- %! Swap the focused window with the previous window - - -- resizing the master/slave ratio - , ((modMask, xK_h ), sendMessage Shrink) -- %! Shrink the master area - , ((modMask, xK_l ), sendMessage Expand) -- %! Expand the master area - - -- floating layer support - , ((modMask, xK_t ), withFocused $ windows . W.sink) -- %! Push window back into tiling - - -- increase or decrease number of windows in the master area - , ((modMask , xK_comma ), sendMessage (IncMasterN 1)) -- %! Increment the number of windows in the master area - , ((modMask , xK_period), sendMessage (IncMasterN (-1))) -- %! Deincrement the number of windows in the master area - - -- toggle the status bar gap - --, ((modMask , xK_b ), modifyGap (\i n -> let x = (XMonad.defaultGaps conf ++ repeat (0,0,0,0)) !! i in if n == x then (0,0,0,0) else x)) -- %! Toggle the status bar gap - - -- quit, or restart - , ((modMask .|. shiftMask, xK_q ), io (exitWith ExitSuccess)) -- %! Quit xmonad - , ((modMask , xK_q ), spawn "if type xmonad; then xmonad --recompile && xmonad --restart; else xmessage xmonad not in \\$PATH: \"$PATH\"; fi") -- %! Restart xmonad - ] - ++ - -- mod-[1..9] %! Switch to workspace N - -- mod-shift-[1..9] %! Move client to workspace N - [((m .|. modMask, k), windows $ f i) - | (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9] - , (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)]] - ++ - -- mod-{w,e,r} %! Switch to physical/Xinerama screens 1, 2, or 3 - -- mod-shift-{w,e,r} %! Move client to screen 1, 2, or 3 - [((m .|. modMask, key), screenWorkspace sc >>= flip whenJust (windows . f)) - | (key, sc) <- zip [xK_w, xK_e, xK_r] [0..] - , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]] --} - -keysToRemove :: XConfig Layout -> [(KeyMask, KeySym)] -keysToRemove XConfig{modMask = modm} = - [ (modm, xK_p ) - , (modm .|. shiftMask, xK_p ) - ] - -{- -myKeys :: XConfig Layout -> M.Map (KeyMask, KeySym) (X()) -myKeys conf = EZ.mkKeymap conf $(_emacsKeys conf) - - -_emacsKeys :: [(String, X())] -_emacsKeys = [ - ("M-q" -_emacsKeys :: XConfig Layout -> [(String, X())] -_emacsKeys conf = - [ -- Applications - {-("M-t", goto "terminals")-} - {-, ("M-S-t", runColourTerminal)-} - {-, ("M-v M-t", pasteTerminal)-} - {-, ("M-v M-d", manTerminal)-} - {-, ("M-i", goto "browsen")-} - {-, ("M-S-i", runBrowser)-} - {-, ("M-v M-i", pasteBrowser)-} - {-, ("M-p", runCmdLine)-} - {-, ("M-x", WD.changeDir P.defaultXPConfig)-} - {-, ("M-e", goto "muziek")-} - {--- , ("M-o", runMixer)-} - {-, ("M-h", runFileManager)-} - {-, ("M-s", goto "praten")-} - {-, ("M-m", goto "berichten")-} - {-, ("M-S-m", runMail)-} - {-, ("M-u", goto "agenda")-} - {-, ("M-0", goto "schutbord")-} - {-, ("M-w", goto "flim")-} - - -- mpd - {-, ("<XF86AudioPlay>", io $ return . fromRight =<< MPD.withMPD MPD.toggle)-} - {-, ("<XF86AudioStop>", io $ return . fromRight =<< MPD.withMPD MPD.stop)-} - {-, ("<XF86AudioNext>", io $ return . fromRight =<< MPD.withMPD MPD.next)-} - {-, ("<XF86AudioPrev>", io $ return . fromRight =<< MPD.withMPD MPD.previous)-} - {-, ("<XF86AudioLowerVolume>", spawn "amixer set Master 2-")-} - {-, ("<XF86AudioRaiseVolume>", spawn "amixer set Master 2+")-} - {-, ("<XF86AudioMute>", spawn "amixer set Master toggle")-} - - -- couple of scripts to change brightness, very hardware specific to my laptop - -- brightness - {-, ("<XF86MonBrightnessUp>", spawn "lcd-brightness-inc")-} - {-, ("<XF86MonBrightnessDown>", spawn "lcd-brightness-dec")-} - - -- Layouts - , ("M-n", refresh) - , ("M-S-<Space>", setLayout $ XMonad.layoutHook conf) - , ("M-<Space>", sendMessage NextLayout) - , ("M-<Tab>", windows W.focusDown) - , ("M-j", windows W.focusDown) - , ("M-k", windows W.focusUp) - , ("M-<Return>", windows W.focusMaster) - , ("M-S-<Return>", DwmP.dwmpromote) - , ("M-S-j", windows W.swapDown) - , ("M-S-k", windows W.swapUp) - , ("M-g", sendMessage Shrink) - , ("M-l", sendMessage Expand) - , ("M-r", withFocused $ windows . W.sink) - , ("M-,", sendMessage (IncMasterN 1)) - , ("M-.", sendMessage (IncMasterN (-1))) - - -- Toggle full screen - , ("M-<F12>", sendMessage ToggleStruts >> refresh) - - -- Windows - , ("M-[", PWork.workspacePrompt P.defaultXPConfig goto) - , ("M-]", PWin.windowPromptGoto P.defaultXPConfig) - ,("M-S-[", PWork.workspacePrompt P.defaultXPConfig shift) - - , ("M-c", kill) -- window - , ("M-S-c", WithAll.killAll) ] -- window - -- ++ - -- [ ("M-" ++ [num], goto name) - -- | (name, num) <- - -- zip _workspaces (['1' .. '9'] ++ ['0'])] - - -- -- Workspaces - -- ++ - -- [ ("M-S-" ++ [num], shift name) - -- | (name, num) <- - -- zip _workspaces (['1' .. '9'] ++ ['0'])] - ++ - [ ("M-<Right>", moveTo Next NonEmptyWS) - , ("M-<Left>", moveTo Prev NonEmptyWS) - , ("M-S-<Right>", moveTo Next EmptyWS) - , ("M-S-<Left>", moveTo Prev EmptyWS) - -- Toggle between current and previous - , ("M-`", toggleWS) - - , ("M-S-n", PI.inputPrompt P.defaultXPConfig "New Workspace:" PI.?+ newWorkspaceDir) - , ("M-S-<Backspace>", WithAll.killAll >> DW.removeWorkspace) --buggy, messes with focus and creates flicker, needs to be fixed - , ("M-S-r", DW.renameWorkspace P.defaultXPConfig) - - -- -- Commands - -- , ("M-y", runCommand _commands) - - -- -- Remember - , ("M1-C-r", runRemember) - -- xmonad - , ("M1-q", restartXMonad)] --} diff --git a/.xsession b/.xsession deleted file mode 120000 index 03280df..0000000 --- a/.xsession +++ /dev/null @@ -1 +0,0 @@ -.xinitrc \ No newline at end of file diff --git a/.ycm_extra_conf.py b/.ycm_extra_conf.py deleted file mode 100644 index bc3c837..0000000 --- a/.ycm_extra_conf.py +++ /dev/null @@ -1,118 +0,0 @@ -import os -import ycm_core -from clang_helpers import PrepareClangFlags - -# These are the compilation flags that will be used in case there's no -# compilation database set (by default, one is not set). -# CHANGE THIS LIST OF FLAGS. YES, THIS IS THE DROID YOU HAVE BEEN LOOKING FOR. -flags = [ -'-Wall', -'-Wextra', -'-Werror', -'-Wno-long-long', -'-Wno-variadic-macros', -'-fexceptions', -'-DNDEBUG', -# THIS IS IMPORTANT! Without a "-std=<something>" flag, clang won't know which -# language to use when compiling headers. So it will guess. Badly. So C++ -# headers will be compiled as C headers. You don't want that so ALWAYS specify -# a "-std=<something>". -# For a C project, you would set this to something like 'c99' instead of -# 'c++11'. -'-std=c++11', -# ...and the same thing goes for the magic -x option which specifies the -# language that the files to be compiled are written in. This is mostly -# relevant for c++ headers. -# For a C project, you would set this to 'c' instead of 'c++'. -'-x', -'c++', -'-isystem', -'../BoostParts', -'-isystem', -# This path will only work on OS X, but extra paths that don't exist are not -# harmful -'/System/Library/Frameworks/Python.framework/Headers', -'-isystem', -'../llvm/include', -'-isystem', -'../llvm/tools/clang/include', -'-I', -'.', -'-I', -'./ClangCompleter', -'-isystem', -'./tests/gmock/gtest', -'-isystem', -'./tests/gmock/gtest/include', -'-isystem', -'./tests/gmock', -'-isystem', -'./tests/gmock/include' -] - -# Set this to the absolute path to the folder (NOT the file!) containing the -# compile_commands.json file to use that instead of 'flags'. See here for -# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html -# -# Most projects will NOT need to set this to anything; you can just change the -# 'flags' list of compilation flags. Notice that YCM itself uses that approach. -compilation_database_folder = '' - -if compilation_database_folder: - database = ycm_core.CompilationDatabase( compilation_database_folder ) -else: - database = None - - -def DirectoryOfThisScript(): - return os.path.dirname( os.path.abspath( __file__ ) ) - - -def MakeRelativePathsInFlagsAbsolute( flags, working_directory ): - if not working_directory: - return flags - new_flags = [] - make_next_absolute = False - path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ] - for flag in flags: - new_flag = flag - - if make_next_absolute: - make_next_absolute = False - if not flag.startswith( '/' ): - new_flag = os.path.join( working_directory, flag ) - - for path_flag in path_flags: - if flag == path_flag: - make_next_absolute = True - break - - if flag.startswith( path_flag ): - path = flag[ len( path_flag ): ] - new_flag = path_flag + os.path.join( working_directory, path ) - break - - if new_flag: - new_flags.append( new_flag ) - return new_flags - - -def FlagsForFile( filename ): - if database: - # Bear in mind that compilation_info.compiler_flags_ does NOT return a - # python list, but a "list-like" StringVec object - compilation_info = database.GetCompilationInfoForFile( filename ) - final_flags = PrepareClangFlags( - MakeRelativePathsInFlagsAbsolute( - compilation_info.compiler_flags_, - compilation_info.compiler_working_dir_ ), - filename ) - - else: - relative_to = DirectoryOfThisScript() - final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) - - return { - 'flags': final_flags, - 'do_cache': True - } diff --git a/.zprofile b/.zprofile deleted file mode 100644 index 6aac3e5..0000000 --- a/.zprofile +++ /dev/null @@ -1,35 +0,0 @@ -# $FreeBSD: src/share/skel/dot.profile,v 1.19.2.2 2002/07/13 16:29:10 mp Exp $ -# -# .profile - Bourne Shell startup script for login shells -# -# see also sh(1), environ(7). -# - -# remove /usr/games and /usr/X11R6/bin if you want -PATH=$HOME/bin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/games:/usr/X11R6/bin:/$HOME/.gem/ruby/2.4.0/bin:$HOME/.go/bin:$HOME/.cargo/bin:$HOME/.cabal/bin:/usr/lib/go/bin:$PATH; export PATH -case `uname` in -SunOS) - UCB_PATH=/usr/sww/lang/acl:/usr/sww/lang/jdk-1.5.0/bin:/usr/openwin/bin:/usr/dt/bin:/usr/sww/opt/java/bin:/usr/sww/bin:/share/b/grading/bin:/share/b/grading/sbin:/share/b/runas/sun4u:/share/b/bin:/home/aa/projects/scheme/bin:/usr/ucb:/usr/ccs/bin:/usr/sfw/bin; export UCB_PATH - PATH=$PATH:$UCB_PATH; export PATH - ;; -esac -#PATH=$HOME/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin; export PATH - -# Setting TERM is normally done through /etc/ttys. Do only override -# if you're sure that you'll never log in via telnet or xterm or a -# serial line. -# Use cons25l1 for iso-* fonts -# TERM=cons25; export TERM - -BLOCKSIZE=K; export BLOCKSIZE -EDITOR=vi; export EDITOR -PAGER=less; export PAGER - -# set ENV to a file invoked each time sh is started for interactive use. -ENV=$HOME/.zshrc; export ENV -RUST_BACKTRACE=1; export RUST_BACKTRACE - -#alias ls='ls -FG' -#alias la='ls -FGal' -#source ~/.zshrc -export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket" diff --git a/.zsh_profile b/.zsh_profile deleted file mode 120000 index 12f501c..0000000 --- a/.zsh_profile +++ /dev/null @@ -1 +0,0 @@ -./.zprofile \ No newline at end of file diff --git a/.zshenv b/.zshenv deleted file mode 100644 index 3c26470..0000000 --- a/.zshenv +++ /dev/null @@ -1,16 +0,0 @@ -export NOBEEP="YES" # Stop that infernal beeping -export CLICOLOR="YES" # Show colors -export LSCOLORS="ExGxFxdxCxDxDxhbadExEx" # Look like bash -export HELM_HOME=$HOME/kube/helm -bindkey '\e[1~' beginning-of-line # Home key -bindkey '\e[4~' end-of-line # End key -bindkey '\e[H' beginning-of-line # Home key (alternate) -bindkey '\e[F' end-of-line # End key (alternate) -bindkey '\e[3~' forward-delete-char # Delete key -bindkey '\e[6~' end-of-history # Page down key -bindkey '\e[2~' redisplay # Insert key -bindkey '\e[5~' insert-last-word # Page up key - -if [ -z "$GOPATH" ]; then - export GOPATH="$HOME/.go/" -fi diff --git a/.zshrc b/.zshrc deleted file mode 100644 index 2add78b..0000000 --- a/.zshrc +++ /dev/null @@ -1,176 +0,0 @@ -#complist -# If not running interactively, don't do anything -[ -z "$PS1" ] && return - -# don't put duplicate lines in the history. See bash(1) for more options -export HISTCONTROL=ignoredups -_JAVA_AWT_WM_NONREPARENTING=1; export _JAVA_AWT_WM_NONREPARENTING - -# make less more friendly for non-text input files, see lesspipe(1) -[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)" - -# set variable identifying the chroot you work in (used in the prompt below) -if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then - debian_chroot=$(cat /etc/debian_chroot) -fi - - -PERL5LIB=$HOME/local/lib64/perl5/site_perl/5.8.8/ -autoload -U compinit -compinit -setopt extended_glob -bindkey -e -#ZLS_COLORS=$LS_COLORS - - -#export DISTCC_HOSTS='hyades01 hyades02 hyades03 hyades04' -#if [[ "$GOROOT" == "" ]]; then - #export GOROOT=$HOME/local/go - #export GOARCH=amd64 - #export GOOS=linux -#case `uname` in -#Darwin) - #export GOOS=darwin - #;; -#FreeBSD) - #export GOOS=freebsd - #;; -#esac -#fi - - -setopt prompt_subst - - -### -# See if we can use colors. - -autoload colors zsh/terminfo -if [[ "$terminfo[colors]" -ge 8 ]]; then - colors -fi -for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE; do - eval PR_LIGHT_$color='%{$terminfo[bold]$fg[${(L)color}]%}' - eval PR_$color='%{$fg[${(L)color}]%}' - (( count = $count + 1 )) -done -PR_NO_COLOUR="%{$terminfo[sgr0]%}" - -case `uname` in - Darwin) - PR_HOST_COLOR=$PR_CYAN - ;; - Linux) - PR_HOST_COLOR=$PR_GREEN - ;; - FreeBSD) - PR_HOST_COLOR=$PR_RED - ;; - *) - PR_HOST_COLOR=$PR_YELLOW - ;; -esac - -#PR_HOST_COLOR=$PR_NO_COLOUR -#if [ -x "$(command -v $MD5_COMMAND)" ]; then - #str=`echo -n "${HOST} ${HOSTNAME}" | $MD5_COMMAND $MD5_COMMAND_OPTS` - #last="${str: -1}" - #echo - #case $last in - #"1"|"6"|"b"|"0") - #PR_HOST_COLOR=$PR_GREEN - #;; - #"2"|"7"|"c") - #PR_HOST_COLOR=$PR_YELLOW - #;; - #"3"|"8"|"d") - #PR_HOST_COLOR=$PR_BLUE - #;; - #"4"|"9"|"e") - #PR_HOST_COLOR=$PR_MAGENTA - #;; - #"5"|"a"|"f") - #PR_HOST_COLOR=$PR_CYAN - #;; - #"*") - #;; - #esac -#fi - - -PROMPT='$PR_STITLE$PR_LIGHT_BLUE(%(!.$PR_RED.$PR_LIGHT_YELLOW)%D{%H:%M}|%!$PR_BLUE%)[%(!.$PR_RED.$PR_HOST_COLOR)%n@%m$PR_LIGHT_CYAN %~$PR_BLUE]$PR_NO_COLOUR -%(!.#.$) ' - #source .zshprompt - -#source ~/.zsh_profile -source ~/.zprofile -if [ -f ~/.bash_aliases ]; then - source ~/.bash_aliases -fi - -if [ -f /usr/local/bin/virtualenvwrapper_lazy.sh ]; then - source /usr/local/bin/virtualenvwrapper_lazy.sh -elif [ -f /usr/bin/virtualenvwrapper_lazy.sh ]; then - source /usr/bin/virtualenvwrapper_lazy.sh -fi - -fasd_cache="$HOME/.fasd-init-zsh" -if [ "$(command -v fasd)" -nt "$fasd_cache" -o ! -s "$fasd_cache" ]; then - fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcompinstall >| "$fasd_cache" - fi - -[ -f ~/.fzf.bash ] && source ~/.fzf.bash - - -[ -f /usr/share/fzf/key-bindings.zsh ] && source /usr/share/fzf/key-bindings.zsh -[ -f /usr/share/fzf/shell/key-bindings.zsh ] && source /usr/share/fzf/shell/key-bindings.zsh -[ -f /usr/share/fzf/completion.zsh ] && source /usr/share/fzf/completion.zsh - -export FZF_DEFAULT_COMMAND='rg --files --hidden --follow -g "!{.git,node_modules}/*" 2> /dev/null' -export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" -#bind -x '"\C-p": vim $(fzf);' - -source "$fasd_cache" -unset fasd_cache - - -source ~/.zshenv - -############################################################## -## Stuff from http://zshwiki.org/home/examples/compquickstart # -############################################################### -zmodload zsh/complist -autoload -U compinit && compinit -zstyle ':completion:::::' completer _complete _approximate -zstyle -e ':completion:*:approximate:*' max-errors 'reply=( $(( ($#PREFIX + $#SUFFIX) / 3 )) )' -zstyle ':completion:*:descriptions' format "- %d -" -zstyle ':completion:*:corrections' format "- %d - (errors %e})" -zstyle ':completion:*:default' list-prompt '%S%M matches%s' -zstyle ':completion:*' group-name '' -zstyle ':completion:*:manuals' separate-sections true -zstyle ':completion:*' menu select -zstyle ':completion:*' verbose yes -## case-insensitive (uppercase from lowercase) completion -zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}' -#zstyle ':completion:*' special-dirs .. - -if [ -n "`which fortune`" ]; then - fortune -fi - -# The next line updates PATH for the Google Cloud SDK. -if [ -f '/home/barak/local/google-cloud-sdk/path.zsh.inc' ]; then source '/home/barak/local/google-cloud-sdk/path.zsh.inc'; fi - -# The next line enables shell command completion for gcloud. -if [ -f '/home/barak/local/google-cloud-sdk/completion.zsh.inc' ]; then source '/home/barak/local/google-cloud-sdk/completion.zsh.inc'; fi - -if [ -f '/usr/local/lib/bazel/bin/_bazel' ]; then source '/usr/local/lib/bazel/bin/_bazel'; fi - -# This enables autocomplete for kubectl -if [ $commands[kubectl] ]; then - source <(kubectl completion zsh) -fi - -export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH" - -if [ -f "$HOME/.zsh_work_rc" ]; then source $HOME/.zsh_work_rc; fi diff --git a/dot_Xmodmap b/dot_Xmodmap new file mode 100644 index 0000000..848bd5c --- /dev/null +++ b/dot_Xmodmap @@ -0,0 +1,3 @@ +keycode 66 = Control_L +clear Lock +add Control = Control_L diff --git a/dot_barak-theme.el b/dot_barak-theme.el new file mode 100644 index 0000000..27fa85d --- /dev/null +++ b/dot_barak-theme.el @@ -0,0 +1,261 @@ +;;; Code: + +(deftheme barak "Barak's Theme") + +;;; Color Palette + +(defvar zenburn-colors-alist + '(("zenburn-fg+1" . "#FFFFEF") + ("zenburn-fg" . "#DCDCCC") + ("zenburn-fg-1" . "#656555") + ("zenburn-bg-2" . "#000000") + ("zenburn-bg-1" . "#2B2B2B") + ("zenburn-bg-05" . "#383838") + ("zenburn-bg" . "#3F3F3F") + ("zenburn-bg+1" . "#4F4F4F") + ("zenburn-bg+2" . "#5F5F5F") + ("zenburn-bg+3" . "#6F6F6F") + ("zenburn-red+1" . "#DCA3A3") + ("zenburn-red" . "#CC9393") + ("zenburn-red-1" . "#BC8383") + ("zenburn-red-2" . "#AC7373") + ("zenburn-red-3" . "#9C6363") + ("zenburn-red-4" . "#8C5353") + ("zenburn-orange" . "#DFAF8F") + ("zenburn-yellow" . "#F0DFAF") + ("zenburn-yellow-1" . "#E0CF9F") + ("zenburn-yellow-2" . "#D0BF8F") + ("zenburn-green-1" . "#5F7F5F") + ("zenburn-green" . "#7F9F7F") + ("zenburn-green+1" . "#8FB28F") + ("zenburn-green+2" . "#9FC59F") + ("zenburn-green+3" . "#AFD8AF") + ("zenburn-green+4" . "#BFEBBF") + ("zenburn-cyan" . "#93E0E3") + ("zenburn-blue+1" . "#94BFF3") + ("zenburn-blue" . "#8CD0D3") + ("zenburn-blue-1" . "#7CB8BB") + ("zenburn-blue-2" . "#6CA0A3") + ("zenburn-blue-3" . "#5C888B") + ("zenburn-blue-4" . "#4C7073") + ("zenburn-blue-5" . "#366060") + ("zenburn-magenta" . "#DC8CC3"))) + +(defvar barak-colors-alist + '(("background" . "#000000") + ("cursor" . "#A7A7A7") + ("fg-default" . "#E0E0E0") + ("mouse" . "sienna1") + ("comment" . "#238E23") + ("constant" . "#E3AC3D") + ("docstring" . "DarkOrange") + ("zenburn-fg+1" . "#FFFFEF") + ("zenburn-fg" . "#DCDCCC") + ("zenburn-fg-1" . "#656555") + ("zenburn-bg-2" . "#000000") + ("zenburn-bg-1" . "#2B2B2B") + ("zenburn-bg-05" . "#383838") + ("zenburn-bg" . "#3F3F3F") + ("zenburn-bg+1" . "#4F4F4F") + ("zenburn-bg+2" . "#5F5F5F") + ("zenburn-bg+3" . "#6F6F6F") + ("zenburn-red+1" . "#DCA3A3") + ("zenburn-red" . "#CC9393") + ("zenburn-red-1" . "#BC8383") + ("zenburn-red-2" . "#AC7373") + ("zenburn-red-3" . "#9C6363") + ("zenburn-red-4" . "#8C5353") + ("zenburn-orange" . "#DFAF8F") + ("zenburn-yellow" . "#F0DFAF") + ("zenburn-yellow-1" . "#E0CF9F") + ("zenburn-yellow-2" . "#D0BF8F") + ("zenburn-green-1" . "#5F7F5F") + ("zenburn-green" . "#7F9F7F") + ("zenburn-green+1" . "#8FB28F") + ("zenburn-green+2" . "#9FC59F") + ("zenburn-green+3" . "#AFD8AF") + ("zenburn-green+4" . "#BFEBBF") + ("zenburn-cyan" . "#93E0E3") + ("zenburn-blue+1" . "#94BFF3") + ("zenburn-blue" . "#8CD0D3") + ("zenburn-blue-1" . "#7CB8BB") + ("zenburn-blue-2" . "#6CA0A3") + ("zenburn-blue-3" . "#5C888B") + ("zenburn-blue-4" . "#4C7073") + ("zenburn-blue-5" . "#366060") + ("zenburn-magenta" . "#DC8CC3")) + "List of Zenburn colors. +Each element has the form (NAME . HEX).") + + +(defmacro barak-with-color-variables (&rest body) + "`let' bind all colors defined in `zenburn-colors-alist' around BODY. +Also bind `class' to ((class color) (min-colors 89))." + (declare (indent 0)) + `(let ((class '((class color) (min-colors 89))) + ,@(mapcar (lambda (cons) + (list (intern (car cons)) (cdr cons))) + barak-colors-alist)) + ,@body)) + +(defmacro zenburn-with-color-variables (&rest body) + "`let' bind all colors defined in `zenburn-colors-alist' around BODY. +Also bind `class' to ((class color) (min-colors 89))." + (declare (indent 0)) + `(let ((class '((class color) (min-colors 89))) + ,@(mapcar (lambda (cons) + (list (intern (car cons)) (cdr cons))) + zenburn-colors-alist)) + ,@body)) + +;;; Theme Faces +(barak-with-color-variables + (custom-theme-set-faces + 'barak +;;;; Built-in +;;;;; basic coloring + '(button ((t (:underline t)))) + `(link ((t (:foreground ,zenburn-yellow :underline t :weight bold)))) + `(link-visited ((t (:foreground ,zenburn-yellow-2 :underline t :weight normal)))) + `(default ((t (:foreground ,fg-default :background ,background)))) + `(cursor ((t (:foreground ,cursor :background ,zenburn-fg+1)))) + `(blue ((t (:foreground "blue")))) + `(bold ((t (:bold t)))) + `(bold-italic ((t (:bold t)))) + `(border-glyph ((t (nil)))) + `(buffers-tab ((t (:background "#121212" :foreground "#E0E0E0")))) + `(font-lock-builtin-face ((t (:foreground "#E0E0E0")))) + `(font-lock-comment-face ((t (:foreground "#238E23")))) + `(font-lock-constant-face ((t (:foreground "#E3AC3D")))) + `(font-lock-doc-string-face ((t (:foreground "DarkOrange")))) + `(font-lock-function-name-face ((t (:foreground "#C5A6FF")))) + `(font-lock-keyword-face ((t (:bold t :foreground "#4876FF")))) + `(font-lock-preprocessor-face ((t (:foreground "#E9DFEF")))) + `(font-lock-reference-face ((t (:foreground "#E1634F")))) + `(font-lock-regexp-grouping-backslash ((t (:foreground "#E9C062")))) + `(font-lock-regexp-grouping-construct ((t (:foreground "red")))) + `(font-lock-string-face ((t (:foreground "#F05656")))) + `(font-lock-type-face ((t (:foreground "#73E1E6")))) + `(font-lock-variable-name-face ((t (:foreground "#00BFFF")))) + `(font-lock-warning-face ((t (:bold t :foreground "Pink")))) + `(gui-element ((t (:background "#A0A0A0" :foreground "black")))) + `(region ((t (:background "#364458")))) + `(mode-line ((t (:background "grey75" :foreground "black")))) + `(highlight ((t (:background "#222222")))) + `(highline-face ((t (:background "SeaGreen")))) + `(italic ((t (nil)))) + `(left-margin ((t (nil)))) + `(text-cursor ((t (:background "green" :foreground "black")))) + `(toolbar ((t (nil)))) + `(tabbar-default ((t (:background "black" :foreground "grey75")))) + `(tabbar-selected ((t (:background "grey75" :foreground "black")))) + `(tabbar-highlight ((t (:bold t)))) + `(underline ((nil (:underline nil)))) + '(match ((t (:bold t :background nil)))) + + ; company mode + `(company-tooltip ((t (:background "#303840" :foreground "#e0e0e0")))) + `(company-tooltip-annotation ((t (:bold t :background "#303840" :foreground "#cae682")))) + `(company-tooltip-selection ((t (:bold t :background "#505860" :foreground "#ffa000")))) + `(company-scrollbar-bg ((t (:background "#505860" :foreground "#505860")))) + `(company-scrollbar-fg ((t (:background "#808890" :foreground "#808890")))) + ; powerline + `(powerline-active1 ((t (:background "#303840" :foreground "#e0e0e0")))) + `(powerline-active2 ((t (:background "#505860" :foreground "#ffa000")))) + ; motion-face + `(spacemacs-motion-face ((t (:background "#5f87ff" :foreground "#ffffff")))) + `(spacemacs-normal-face ((t (:background "#5f87ff" :foreground "#ffffff")))) + `(spacemacs-replace-face ((t (:background "#870000" :foreground "#ffffff")))) + `(spacemacs-visual-face ((t (:background "#ffac00" :foreground "#ffffff")))) + )) + +;;; Theme Variables +(zenburn-with-color-variables + (custom-theme-set-variables + 'barak +;;;;; ansi-color + `(ansi-color-names-vector [,zenburn-bg ,zenburn-red ,zenburn-green ,zenburn-yellow + ,zenburn-blue ,zenburn-magenta ,zenburn-cyan ,zenburn-fg]) +;;;;; fill-column-indicator + `(fci-rule-color ,zenburn-bg-05) +;;;;; vc-annotate + `(vc-annotate-color-map + '(( 20. . ,zenburn-red-1) + ( 40. . ,zenburn-red) + ( 60. . ,zenburn-orange) + ( 80. . ,zenburn-yellow-2) + (100. . ,zenburn-yellow-1) + (120. . ,zenburn-yellow) + (140. . ,zenburn-green-1) + (160. . ,zenburn-green) + (180. . ,zenburn-green+1) + (200. . ,zenburn-green+2) + (220. . ,zenburn-green+3) + (240. . ,zenburn-green+4) + (260. . ,zenburn-cyan) + (280. . ,zenburn-blue-2) + (300. . ,zenburn-blue-1) + (320. . ,zenburn-blue) + (340. . ,zenburn-blue+1) + (360. . ,zenburn-magenta))) + `(vc-annotate-very-old-color ,zenburn-magenta) + `(vc-annotate-background ,zenburn-bg-1) + )) + +;;; Rainbow Support + +;; (declare-function rainbow-mode 'rainbow-mode) +;; (declare-function rainbow-colorize-by-assoc 'rainbow-mode) + +(defvar barak-add-font-lock-keywords nil + "Whether to add font-lock keywords for zenburn color names. +In buffers visiting library `zenburn-theme.el' the zenburn +specific keywords are always added. In all other Emacs-Lisp +buffers this variable controls whether this should be done. +This requires library `rainbow-mode'.") + +(defvar barak-colors-font-lock-keywords nil) + +;; (defadvice rainbow-turn-on (after zenburn activate) +;; "Maybe also add font-lock keywords for zenburn colors." +;; (when (and (derived-mode-p 'emacs-lisp-mode) +;; (or zenburn-add-font-lock-keywords +;; (equal (file-name-nondirectory (buffer-file-name)) +;; "zenburn-theme.el"))) +;; (unless zenburn-colors-font-lock-keywords +;; (setq zenburn-colors-font-lock-keywords +;; `((,(regexp-opt (mapcar 'car zenburn-colors-alist) 'words) +;; (0 (rainbow-colorize-by-assoc zenburn-colors-alist)))))) +;; (font-lock-add-keywords nil zenburn-colors-font-lock-keywords))) + +;; (defadvice rainbow-turn-off (after zenburn activate) +;; "Also remove font-lock keywords for zenburn colors." +;; (font-lock-remove-keywords nil zenburn-colors-font-lock-keywords)) + +;;; Footer + +;;;###autoload +;; (and load-file-name +;; (boundp 'custom-theme-load-path) +;; (add-to-list 'custom-theme-load-path +;; (file-name-as-directory +;; (file-name-directory load-file-name)))) + +;(defun color-theme-barak-extras () +;; Highlight numbers +;(add-hook 'after-change-major-mode-hook + ;(lambda () (font-lock-add-keywords + ;nil + ;'(("\\<\\(\\(0[xX]\\|0[bB]\\)?-?[0-9a-fA-F]+\\.?[0-9]*?[fFlL]?\\)\\>" 1 '((t (:foreground "#E3AC3D"))))))))) + +(provide-theme 'barak) + +;;;###autoload +;; (add-to-list 'safe-local-eval-forms +;; '(when (require 'rainbow-mode nil t) (rainbow-mode 1))) + +;; Local Variables: +;; no-byte-compile: t +;; indent-tabs-mode: nil +;; eval: (when (require 'rainbow-mode nil t) (rainbow-mode 1)) +;; End: diff --git a/dot_bash_aliases b/dot_bash_aliases new file mode 100644 index 0000000..045adcf --- /dev/null +++ b/dot_bash_aliases @@ -0,0 +1,115 @@ +#alias ls='ls -F --color' +#[ -x /usr/games/fortune ] && /usr/games/fortune bofh-excuses +#alias la='ls -Fal --color' +#alias uptime="uptime | cowsay" +#alias date="date | cowsay" + + +#Imperatives +# enable color support of ls and also add handy aliases + #alias dir='ls --color=auto --format=vertical' + #alias vdir='ls --color=auto --format=long' + +case `uname` in +Linux) + alias ls='ls -F --color=auto' + #if [ "$TERM" != "dumb" ]; then + #eval "`dircolors -b`" + #fi + #alias ls='ls -F --color=auto' + #alias open='xdg-open' + ;; +Darwin) + alias ls='ls -FG' + ;; +FreeBSD) + alias ls='ls -FG' + ;; +SunOS) + #alias ls='ls -F' + ;; +*) + #if [ "$TERM" != "dumb" ]; then + #eval "`dircolors -b`" + #fi + #alias ls='ls --color=auto' + ;; +esac + + + +# some more ls aliases +alias ll='ls -lF' +#alias la='ls -A' +alias la='ls -alF' +#alias l='ls -CF' + +alias :e='vi' +alias t='task' +alias em='emacs' +alias grep="grep --color=auto" +#alias screen="screen -R" +alias dvtm="dvtm -m \"^w\"" +alias tm="tmux -2 attach" +alias ppjson="python -mjson.tool" +#alias tmux-pwn='tmux list-clients | sed "s|^\(/dev/ttys[0-9]\+\).*\[\([0-9]\+x[0-9]\+\).*$|\2 \1|" | sort -r -n | tail -n +2 | cut -d " " -f 2 | xargs -n 1 tmux detach-client -t' + +# I can never remember the xclip options, so: +alias setclip='xclip -selection c' +alias getclip='xclip -selection clipboard -o' + +#machines +alias puck="ssh -D 7777 -Y barak@puck.barakmich.com" +alias hero="ssh -D 7777 -Y barak@hero.barakmich.com" +alias hermia="ssh -Y barak@hermia.home.0b100.net" + +#Cosmetic/useful +#alias naim="naim --noscreen" +alias wallall="wallall -p" +#alias cal="cal -3" +#alias google='surfraw google' +alias hd='od -Ax -tx1z -v' +alias gcal='gcalcli' + +#Sysdadmin +alias aptsearch="aptitude search" +alias pki="pk i" +alias pks="pk s" +alias openports="lsof -i 4 -n" +alias saupdate="sa-learn --mbox --spam ~/mail/spam" +alias pshosers="ps axeo pcpu,pid,user,command | sort -k 1 -r | head -11 " +alias memhosers="ps axeo size,pcpu,pid,user,command | sort -n -r | head -11 " +alias psx="ps auxwww | grep $1" +alias blaze="bazel" +alias pb='curl -F c=@- https://busb.us/' +alias pburl='curl -F c=@- https://busb.us/u' + +#work +alias totemp="cd `pwd | sed 's/controllers/templates/'`" +alias tocont="cd `pwd | sed 's/templates/controllers/'`" + +alias kubecat="awk 'FNR==1 && NR!=1 {print \"---\"}{print}'" + +#Some orly aliases +alias yarly="orly -y" +alias nowai="orly -n" +alias srsly="orly -s" + +#Funnies +alias whothefuckis='finger' +alias whoami="echo 24601" + +dobenchx() { + benchcmp $1 $2 | awk -f $HOME/bin/benchx.awk +} +alias benchx=dobenchx + +do_killgrep() { + ps auxwww | grep $1 | awk '{print $2}' | xargs kill +} +alias killgrep=do_killgrep +#function gvim () { + #`which gvim` $* &> /dev/null +#} + +source $HOME/.tz_aliases.sh diff --git a/dot_bash_k8s_aliases b/dot_bash_k8s_aliases new file mode 100644 index 0000000..fd669eb --- /dev/null +++ b/dot_bash_k8s_aliases @@ -0,0 +1,10 @@ +#!/bin/bash + +k8s-configmap-from-dir () { + local name=$1 + shift + local dir=$1 + shift + if + kubectl create configmap "$1" --from-file="$2" -o yaml --dry-run "$@" +} diff --git a/dot_bash_logout b/dot_bash_logout new file mode 100644 index 0000000..de4f5f7 --- /dev/null +++ b/dot_bash_logout @@ -0,0 +1,7 @@ +# ~/.bash_logout: executed by bash(1) when login shell exits. + +# when leaving the console clear the screen to increase privacy + +if [ "$SHLVL" = 1 ]; then + [ -x /usr/bin/clear_console ] && /usr/bin/clear_console -q +fi diff --git a/dot_bash_profile b/dot_bash_profile new file mode 100644 index 0000000..6df125f --- /dev/null +++ b/dot_bash_profile @@ -0,0 +1,23 @@ +# ~/.profile: executed by the command interpreter for login shells. +# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login +# exists. +# see /usr/share/doc/bash/examples/startup-files for examples. +# the files are located in the bash-doc package. + +# the default umask is set in /etc/profile; for setting the umask +# for ssh logins, install and configure the libpam-umask package. +#umask 022 + + +# if running bash +if [ -n "$BASH_VERSION" ]; then + # include .bashrc if it exists + if [ -f "$HOME/.bashrc" ]; then + . "$HOME/.bashrc" + fi +fi + + +# Added by ~/.emacs.d/install.sh +export PATH=$HOME/.cask/bin:$PATH +. "$HOME/.cargo/env" diff --git a/dot_bashrc b/dot_bashrc new file mode 100644 index 0000000..57a4468 --- /dev/null +++ b/dot_bashrc @@ -0,0 +1,164 @@ +# ~/.bashrc: executed by bash(1) for non-login shells. +# see /usr/share/doc/bash/examples/startup-files (in the package bash-doc) +# for examples + +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +BLOCKSIZE=K; export BLOCKSIZE +EDITOR=vi; export EDITOR +PAGER=less; export PAGER +_JAVA_AWT_WM_NONREPARENTING=1; export _JAVA_AWT_WM_NONREPARENTING + +#Foo +# set ENV to a file invoked each time sh is started for interactive use. +ENV=$HOME/.bashrc; export ENV + +PATH=$HOME/bin:$HOME/.gem/ruby/1.9.1/bin:$HOME/.cabal/bin:$HOME/.go/bin:$PATH:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/games:/usr/X11R6/bin:/usr/lib/go/bin; export PATH +case `uname` in +SunOS) + UCB_PATH=/usr/sww/lang/acl:/usr/sww/lang/jdk-1.5.0/bin:/usr/openwin/bin:/usr/dt/bin:/usr/sww/opt/java/bin:/usr/sww/bin:/share/b/grading/bin:/share/b/grading/sbin:/share/b/runas/sun4u:/share/b/bin:/home/aa/projects/scheme/bin:/usr/ucb:/usr/ccs/bin:/usr/sfw/bin; export UCB_PATH + PATH=$PATH:$UCB_PATH; export PATH + ;; +Darwin) + MACPORTS_PATH=/opt/local/bin:/opt/local/sbin:/opt/local/usr/bin:/opt/local/usr/local/bin; export MACPORTS_PATH + PATH=$HOME/bin:$MACPORTS_PATH:$PATH; export PATH + export DISPLAY=:0.0 + set completion-ignore-case on + ;; +esac + +MAILPATH=/var/spool/mail/$USER +for i in ~/mail/* +do + MAILPATH=$MAILPATH:$i'?You have new mail in your ${_##*/} folder' +done +export MAILPATH +unset i + +# don't put duplicate lines in the history. See bash(1) for more options +export HISTCONTROL=ignoredups + +# check the window size after each command and, if necessary, +# update the values of LINES and COLUMNS. +shopt -s checkwinsize + +# make less more friendly for non-text input files, see lesspipe(1) +[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + + +PERL5LIB=$HOME/local/lib64/perl5/site_perl/5.8.8/ + +#Go Language stuff +#export GOROOT=$HOME/local/go +#export GOARCH=amd64 +#export GOOS=linux +case `uname` in +Darwin) + export GOOS=darwin + ;; +FreeBSD) + export GOOS=freebsd + ;; +esac + +# set a fancy prompt (non-color, unless we know we "want" color) + +#case "$TERM" in +#xterm-color) +# PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +# ;; +#*) +# PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ ' +# ;; +#esac + +case $TERM in +# xterm*|rxvt*) + rxvt*) + TITLEBAR='\[\033]0;\u@\h:\w\007\]' + ;; + *) + # TITLEBAR="\033k\033\134"; + TITLEBAR=""; +esac; +PS1="\[\033[0m\]\[\033[0;32m\]\u\[\033[0m\]\[\033[0;37m\]@\[\033[0m\]\[\033[0;32m\]\h\[\033[0m\]\[\033[0;37m\]:\[\033[0;34m\][\[\033[1;36m\]\w\[\033[0;34m\]]\[\033[0;0m\]\n\$ " +#PS1="${TITLEBAR}\[\033[0m\]\[\033[0;34m\][\[\033[0m\]\[\033[1;33m\]\$(date +%H:%M)|\!\[\033[0m\]\[\033[0;34m\]] \[\033[0m\]\[\033[0;32m\]\u\[\033[0m\]\[\033[0;37m\]@\[\033[0m\]\[\033[0;32m\]\h\[\033[0m\]\[\033[0;37m\]:\[\033[0m\]\[\033[1;36m\]\w\[\033[0m\]\[\033[0;0m\]\$ " +#PS1="${TITLEBAR}\[\033[0m\]\[\033[1;34m\][\[\033[0m\]\[\033[1;33m\]\$(date +%H:%M)\[\033[0m\]\[\033[1;34m\]] \u\[\033[0m\]\[\033[0;37m\]@\[\033[0m\]\[\033[1;34m\]\h\[\033[0m\]\[\033[0;37m\]:\[\033[0m\]\[\033[1;36m\]\w\[\033[0m\]\[\033[0;0m\]\$ " +#PS1="${TITLEBAR}\[\033[0m\]\[\033[0;32m\][\$(date +%H:%M)] \[\033[0;33m\]\u\[\033[0m\]@\[\033[0;31m\]\h\[\033[1;37m\]:\[\033[0m\]\[\033[1;34m\]\w\[\033[1;37m\]\$ \[\033[0;0m\]" +# Comment in the above and uncomment this below for a color prompt +#PS1='${debian_chroot:+($debian_chroot)}\[\033[01;32m\]\u@\h\[\033[00m\]:\[\033[01;34m\]\w\[\033[00m\]\$ ' +# +#\[\033]0;\u@\h:\w\007\]\[\033[0m\]\[\033[0;32m\][$(date +%H:%M)] \[\033[1;33m\]\u\[\033[0m\]@\[\033[1;31m\]\h\[\033[1;37m\]:\[\033[0m\]\[\033[1;34m\]\w\[\033[1;37m\]$ \[\033[0;0m\] + +# If this is an xterm set the title to user@host:dir +case "$TERM" in +xterm*|rxvt*) + PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD/$HOME/~}\007"' + ;; +*) + ;; +esac + +# Alias definitions. +# You may want to put all your additions into a separate file like +# ~/.bash_aliases, instead of adding them here directly. +# See /usr/share/doc/bash-doc/examples in the bash-doc package. + +if [ -f ~/.bash_aliases ]; then + . ~/.bash_aliases +fi + +fasd_cache="$HOME/.fasd-init-bash" +if [ "$(command -v fasd)" -nt "$fasd_cache" -o ! -s "$fasd_cache" ]; then + fasd --init posix-alias bash-hook bash-ccomp bash-ccomp-install >| "$fasd_cache" +fi +source "$fasd_cache" +unset fasd_cache + +# enable color support of ls and also add handy aliases +#if [ "$TERM" != "dumb" ]; then +# eval "`dircolors -b`" +# alias ls='ls --color=auto' + #alias dir='ls --color=auto --format=vertical' + #alias vdir='ls --color=auto --format=long' +#fi + +# some more ls aliases +#alias ll='ls -l' +#alias la='ls -A' +#alias la='ls -al' +#alias l='ls -CF' + +# enable programmable completion features (you don't need to enable +# this, if it's already enabled in /etc/bash.bashrc and /etc/profile +# sources /etc/bash.bashrc). +if [ -f /etc/bash_completion ]; then + . /etc/bash_completion +fi + +if [ -f ~/.bash_google ]; then + . ~/.bash_google +fi + +if [ -n "`which fortune`" ]; then + fortune +fi + + +# The next line updates PATH for the Google Cloud SDK. + +if [ -f ~/local/google-cloud-sdk/path.bash.inc ]; then + . ~/local/google-cloud-sdk/path.bash.inc +fi + +# The next line enables bash completion for gcloud. +if [ -f ~/local/google-cloud-sdk/completion.bash.inc ]; then + . ~/local/google-cloud-sdk/completion.bash.inc +fi +. "$HOME/.cargo/env" diff --git a/dot_cargo/config.toml b/dot_cargo/config.toml new file mode 100644 index 0000000..c91c3f3 --- /dev/null +++ b/dot_cargo/config.toml @@ -0,0 +1,2 @@ +[net] +git-fetch-with-cli = true diff --git a/dot_chezmoiexternal.toml b/dot_chezmoiexternal.toml new file mode 100644 index 0000000..6df5d05 --- /dev/null +++ b/dot_chezmoiexternal.toml @@ -0,0 +1,4 @@ +[".tmux/plugins/tpm"] + type = "git-repo" + url = "https://github.com/tmux-plugins/tpm" + refreshPeriod = "168h" diff --git a/dot_compton.conf b/dot_compton.conf new file mode 100644 index 0000000..e46d1aa --- /dev/null +++ b/dot_compton.conf @@ -0,0 +1,92 @@ +# Shadow +shadow = true; +#no-dnd-shadow = true; +#no-dock-shadow = true; +#clear-shadow = true; +shadow-radius = 7; +shadow-offset-x = -7; +shadow-offset-y = -7; +# shadow-opacity = 0.7; +# shadow-red = 0.0; +# shadow-green = 0.0; +# shadow-blue = 0.0; +shadow-exclude = [ + "name = 'Notification'", + "class_g = 'Conky'", + "class_g ?= 'Notify-osd'", + "class_g = 'Cairo-clock'", + "_GTK_FRAME_EXTENTS@:c", + "window_type *= 'normal' && ! name ~= ''" +]; +# shadow-exclude = "n:e:Notification"; +# shadow-exclude-reg = "x10+0+0"; +# xinerama-shadow-crop = true; + +# Opacity +#inactive-opacity = 0.9; +# active-opacity = 0.8; +frame-opacity = 0.7; +#inactive-opacity-override = false; +#alpha-step = 0.06; +inactive-dim = 0.12; +# inactive-dim-fixed = true; +# blur-background = true; +# blur-background-frame = true; +blur-kern = "3x3box" +# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1" +# blur-background-fixed = true; +blur-background-exclude = [ + "window_type = 'dock'", + "window_type = 'desktop'", + "_GTK_FRAME_EXTENTS@:c" +]; +# opacity-rule = [ "80:class_g = 'URxvt'" ]; + +# Fading +fading = true; +# fade-delta = 30; +fade-in-step = 0.03; +fade-out-step = 0.03; +no-fading-openclose = true; +# no-fading-destroyed-argb = true; +fade-exclude = [ ]; + +# Other +backend = "xrender" +mark-wmwin-focused = true; +mark-ovredir-focused = true; +# use-ewmh-active-win = true; +detect-rounded-corners = true; +detect-client-opacity = true; +refresh-rate = 0; +vsync = false; +dbe = false; +#paint-on-overlay = true; +# unredir-if-possible-delay = 5000; +# unredir-if-possible-exclude = [ ]; +focus-exclude = [ "class_g = 'Cairo-clock'" ]; +detect-transient = true; +detect-client-leader = true; +invert-color-include = [ ]; +# resize-damage = 1; + +# GLX backend +# glx-no-stencil = true; +glx-copy-from-front = false; +# glx-use-copysubbuffermesa = true; +# glx-no-rebind-pixmap = true; +#glx-swap-method = "undefined"; +use-damage = true; +# glx-use-gpushader4 = true; +# xrender-sync = true; +# xrender-sync-fence = true; + +# Window type settings +wintypes: +{ + tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; }; + dock = { shadow = false; } + dnd = { shadow = false; } + popup_menu = { opacity = 0.9; } + dropdown_menu = { opacity = 0.9; } +}; diff --git a/dot_config/awesome/btheme/README b/dot_config/awesome/btheme/README new file mode 100644 index 0000000..1ddb349 --- /dev/null +++ b/dot_config/awesome/btheme/README @@ -0,0 +1,3 @@ +Background images: + Mikael Eriksson <mikael_eriksson@miffe.org> + Licensed under CC-BY-SA-3.0 diff --git a/dot_config/awesome/btheme/background.png b/dot_config/awesome/btheme/background.png new file mode 100644 index 0000000000000000000000000000000000000000..8f52b6bb4547cf67f8545af28911eda1d2c8171f GIT binary patch literal 222973 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 +WHH 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 z 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�uAOOPa<Kb5OPd~hF;!}V*@^?FAZ-~2?DNXp_i|2 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 Jx_eHq{|^Q33QGV0 literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/background_white.png b/dot_config/awesome/btheme/background_white.png new file mode 100644 index 0000000000000000000000000000000000000000..bb0c5d0d2a52ca1f1e7e285fd6ffa9ee7c553cef GIT binary patch literal 267935 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 zɓHDU?t%H-YXLax0S*fIm4OyUYYj(2qt%`G;}IoDTQ&>&?%Esu6_nt!|fC8&ZM z>Q6bkjp=>^EF~A4PKroy>xn79Wp;|NcB7VZ+X^s#tt~AX$DEy?ulM+OE}p=i6ZpfN z;5>)+Z?0^--@Ebf^YWhD`3!71HS->O_}&c4%?N^h!oGz9V9U_{AlIJGPTzw`;3*_y zAQ!}COyn*R1lU;s6>#Lp0zL!yufTWyJ-Ne)hBJ_w7cF)p<c?8>1qo5ZoT`HT`Fjm_ ze$f=f;bE=F{H@B>g72v=1v9~vJJ+%^q$V{JhH<`-`Xti(=Pmww>62=iy4#~*<3PT| zQDso`b?mFy49@RG3~vkxNZ*PTYz@(~Z+e+>DicK1iuTT^Bj@zkCg9t4g;JA$ab=P< z5Yx}|T@bTXl_Ra*BrrZ&sWp3Wgb7FV$SJJ6NnO}}T<h)?8o`vXVRC2aFHKmYsBV6> zgXM=?D-T@d|Ep{FU%kFO-_HfMH^hD0OA9M~Q%RJCCL=>EUB{{RcCR(sAETNZVhB8` z@>#B?GIl%YyTsL2Ev9Xj4Z*s1lk!YT8?5Ppx(aix2rBY=Z2>sTGtuBLU+iA^ZEU3H zD!dk#J(YJ->lE6Hdb!9fgeNhSP+q>68srvfqB&=n^}dUK3K}H!z204VdfKyU=EOat zkcI~KO$-93_3CQ8km`J+ckRUe+mEiPW-GqPUL|!z)M4kcS(34@y#BCI`ur)xkBKcf zW+T$C^Q204$Z!kLorNTJ#a+<yZGch+Y>b;TBbY#?j}!#Z<KJ)Xal+Is%D604_`XGj zR1y=2Mr=Yt{9rxjK6o00G^B$I!VVHwZf+Y+g2*h+T~)13eAt*adADEJDAO0tJG)9M zfvHcKre(P)SUI})SzEHZpUr!}-Q3)i6nvfru9|)bpW|4vbvtErAf@PtG4N@8$u70j zn(~NTn#J&U$~Qo_;>nW}9Ua~K@zUGtakiWX@ctX^u98Q1*EyQf&)fW@CaLD}M1t>W zflpY$Q1?D><O)&Z4xbaESR-vBWWdrR3uo+t?ji^yQL{XIZKuxqBH&Bv%pLbUENZD} zh!rQVqsW{*!h?D+p5kA1vJ9ZvI)r2vLY&*x7G#cuS4}E?<~GtBgk@Z*7q7kAhZ<#* z=HnOWE5u4z@<}JE7%L(ml@0QD!DU7b|DdkpQTXLy8?V(FT)(sK&-$3*e7QE99=84N zU@;)Spb-LQ^+f4F1&M!(Xa3(RiZ$Z;N@?S&l=7x%`o89|HC~Sl<vU>Csec>A(-nU| zl%)!1BzNCtEINcUT55LEtNf6+P<dAV5D*lD)+Di6M9FaULPVFbgmEa(K$ic!M8o2l z5&cp52U>OsjQZNje2Zfq<A!53pq&;8pO?R#DtHx7f4ns3Rx3orlH4+HJnPBFKKSl9 zdv<j62&f&~Ma1~HT2{<&7m$UT=>MW|4C;U*Ek9JLP-r2199qK1J=JK!wtRGlD*VOl z3e(J~K%y~5tN)5UTSR!$KZRp8YBiQMT{H(<X9k-i6=Bes&LCK720bl$hbzt$$D*cF z9a+43ECAy>hD)!g(3JNKN*vAp&Fg9PW*6uXTx`JDF6pBsXN*J)e!US)fO<>d87!7L z0uvWBqlPjpUANfleN&3+q_Xg-=rR=MDG~_~yDir0`vT}Spc2NXbkAh`^s6`-XqJE; zY}XsHbPVGOkDE#9%LSRqf7t&V1xoqZM{E2+W;$e0+7-O&6kQZ)R3TT~;Myl4{9);& zNQD(CuwB*S6C?y$N@m1M&ZXg%u;gQm^T%E6J{EBy9YY$g<u4ZJ>F}|P%iCY8^$;t1 z<PFh(ht8$$)^c-PD<#c4%%MtqC(c8H<1R)@1lGkAC6{R>+Go<B-BVAw7R0mWOafc& z+wde&fT_5FE3PP#dg9CAwQa`!muE$R!;cQ%`@OAC&x=`Y)(RXh^o6Pr;|*LPIUb|_ zvhRE%EL9k-(>WpshTtGnyZ;qY)lbYtr+$o{xH}pDH`Z?<$ny1^3$^I{8%*XcXEhFK z5hDnF+=veFI@o9dw40^s%N6uSo9z=Eo6=QCz*4^EiGe6pG1)1}aYu|jgOx-X_&yI= zi`%j<-&v{mj!WfpP!pIUl9i>$Y+b=&7COAxE9&2&_JkmDI15|-{FtilD!cd_S)AP8 zS%_4>u_Z_>=7(%rX99tZWQ|)+(245Z{L)EpZ@^Yy1qFq;ctZ~!>D~=A?BHMIh<Cop z?V+$ijdX^^)^%BG*&H$f{;{g!$Cul}ZtG^$D{8;sBX9O1mJ;o1P3wGkxk@F6A8eV% zIVWL1<zZ~vxx<3BYdkGVkT(>ADr<v>+J9kpI}Pm3(~b|DW-5FJK_Qbh0;1DJ)(&Ia z&E7FV3<vy&3XW+4`<D>A8!F-k76n%)C#R41H;1;)wzlE1-|9I?6C<}XXC6TO34m)8 z#tiSU$^VncamA(S_hutwo8S*BqZ1Gk0-;4sizjDiXX>!;KD^i~HcZ%lm;KNHCcsB1 z=>Lq4vrUsXH&PPejPE)rE{I+hRY>&@v=HkW<DXwSmc@0{jrbP3RdV*sq1oi<a;K=s zxW~?2(#M_B{R1_F5(fgy7zE0(hF%L@n>Id<dD`XYm_WaTV~)lb)9lE|=Fi6x>ZAEp ztAY6p_T1B5QdyYn{_U;>HJf|Cu#jr}den>~XObdWJNJMTl__VEGTFK<D-yJ2^al?S z`YoVt<t&BuTbEf~2&P!df$V)?^4HK6A3y%94Z*DSU268{0fe?<FV!(!ruzYo#p~VC z+qWv+vs3xM2~fUw|Ai1%t{2Lg_sTF}OHDlwdh7nKeul+7wP)cxZ`xYoaAxoiFy9F> zc%jCpn{nU>v<f~_ed$#3%(`C-ua2Y@{6vjUJ?Rf4joM>mjLtqp@>}h$#zin^1^Z3p z@Q1?^dNI*br6&xzekt#thu79wnbU#YfZoXq{cLdD!TR7sjS~@CF+~#^EkeGW$^Dzb z$w`O0#ZaGZr``=gK0YAT3&fT|N0BVvQlyadV^&&>FP{{$;(?S3PKVBAh)LQc;W06m z?P|~7bsBG63QDFTZJx6$hS{m)XjRW(tj|;J726+4(H=DA_LZlgt5rJMG|`6shc?6| zO;WXcqkB~!lsFBtao(Qa%z8BN2tOq?Rs)h`t+D|LGOKNKCpLu@9-5W9g>(yhq2j6A zo^0l-0s#FP)XkEk2n5nGBL<AiW{*5N<!ruOaR6~gSCoO*ly3osgj^wMWaEthLdx&| z4B(W5Cd!v8#>pCqP}}2#Uf$l^ISQU09sqmNw(^}fbmSOVzItxPf`j<g<t)<ZLu&RG zX!U_V<71)A*``)t&LW^gkIrpo98&<R=OI8T1eJYq-RV>cGVMkbnks0u9`zZzZ{5>) zy6d}he${NUbe^=PqFtEtKHEFB+s(Ff;}j5%^QnR7@+mrCrud$NA)JuPk03!ov^R7j z)b-xYr}!gRHy*Y<zIhHSGY3w%j+0Q4fq~)RhHZ-bps=-W_G}1*Je*@tw|L~nbs(-R zSGMH!`U$0T&CJo!Gcb@G)1f??$O%y#%=|pCQ+d<KbhZOc!>2b(^-#_3>s_K1Z%sq0 zIQI{X(q4*h32svo$ALSeqa5>xFIag5dP1`6EdOir5hUiK8#(E^?kbY?@vcADG5%e& za?&3pM5<*evqRXJzG0Hwwpmfr!~1loXjbq#>N@0FBrC7t_zVRSlIJ0_e-V~wBz_@; zqW6VQXng612tfncRf(#rflul?0}et5O~~BKb<&VC7k7Gr6jB5lY-NHSl;&D}<*l=; zqrq!v`d!ghG!1srZB6Y|6y>s6;~4cwRutgXdv|+#c27K`eNQ>?PBjNU01BMxE|sg; z9jYj;3^;sA6k52ko34!uF_dKUuLMz$+W`<Iu%ywZ$`19v#>RiYnLmN07ZFDo+h*O` zW%k*-2k8zH<1INt2(6ynjj?=|ODbMG`Ib6({e+;~$z=kcCd2>&foEKS@H`&Re<6|r zkt|PMzrlVWgRl{Iw*EAYFJJrFpMKEWM)YwwhN?b!zkN=$XDRF&Ik<VM3w%3a?0Ga{ z!+rbuaY-amlz2V%{PrFn__`Ah1oHvWZQq$B+#P{Y2CMgRF!06k0|BK@zZ2-uGD{$S zX(UmM1UJ%UO<4R>1_P;VUjf{G%jrjFr|un&^R5xo<EUc5^+DkK0f5UZB#C)nY>NQR zngAak`ao`7DU&Uv5ISJ%;Vo1Lr270#9S&q{8#a$@GGHs@{6_jZ(=BVc_V(T>Bu2jz z1I_U=p8r~7AC@Hel4*8UQF2LS#v0d|cvcws4-$cBx8o&-i+WnOanHm2rmqi%3@X7p z%TxM==|@8|0}S-j_HTf3d3!K=c98Vs0lH|qeD-K$dc&Y@<;YE33Mtjkf61gFU4c?D zFISGDDKvC?G7bix;k#EP@s#*{PMWH{&5A`g^mI7HS^PPnZ-;bg`4x>Dt^2;lVHeqz zA>;U;_D~%JekN2$pVg)(Dapv&O3!e>W&Phu)vqCX9UJlRJ4X1Pd2*Q<;$LH*{QHfw z@}n*o=5dPq{8dk}Yn`fva*7hsyj4TS-($&OhXUd*Hi2%vY82)q>-Tcr*amLNrx+j4 zp_)^5H+q)>hY9<?Hl5}x+UniW*$v4<*Map%4>Cd=JS0d{5i^FEqsU!$(x|KvpX9O? z%KoWAR41R_-vcsBlE+8yP8Oj<gQc$H3xN+o&0m6?4hzsp1ADZ^6D_rAnnQNDq6)nl zw06BSO9`ZTQkMFv`4|}(DGv^I_zq&2g>5!Y++W@tQZc-NH=ZiWx7z`qa>g}S%I+4& z-)FsBaV!Ku>7Hc5a7spEzkKCPgN`;<Zb`YBGz$zwyr1rZQ7|acVzABE`6CFB%3uQp zV8`}T0s56ZA9rO5JNc51h1F%)_ovDb@0D^SyF3I8NIMgN_W-Uj@ZsWpZELGQ36$z6 z5#|IyX#l}&5F1%(iK^VY@i8m-HVbqb2LOEQ|9pFUYo2>RMWJ;xI%5aKuWfB@6-mZJ zpd=8UM->7H%HidulAc;Y6EOBZH3_~n0fc0?-_tc`@6&{dz*G}Fg0m_5s_3>r5fv`t z*N{9J6L8kgmmP*BC`TNH>(7}dI~2iUv_A8{qcj_mmo@fh_a}{)S~BYxL3$6yK7WU< z>m%4ZdMHRigDLSwzk?3YQR+Ww38R3G2cs~3+6~&?+Qkl1iL=nFzLV-r-jx(;{S`^3 z0>KwSIz$(IO8dj^S{FXQrd8?LM>rcmt*=H$myV7gNzc#YJUl$aVhjToyA2FS&4H&R zN5PT_`}e^OfaVYewzRdm-t6Bww23ySywYo~c<l8SY6hi3<fmycMJR{ada1U8?`gCg zj2$+ol4JNETQ=!O=4;UFR1sUFG6{{-3l|+&_lnN#Y&_E(O*wQ(s|oZmI)?mLtYr{R zYqxU(VYy#DG5Bz`gVz-Mj|N}Cn`vtkVYYtx1}?+&KHCJ-$90CSYC<4K@U9F&HWg6< zxeHHC*46_Cm&Vb&+fW3Ob$69FuKPAW_d}NX+?4aUR%euhyG|A_o?5pyHCD0W?n&NW z>%^9$#;Beankxb3NQeB+FF{B|m}^}+$%`ka_-On38Wn}Rj7@%)jsE&{Z#-@1%8Lsh z&Ppigq7k=dvosAa8VH33H2)wT0y?+=?+jFD(m0ry1}YP0x<Xj&VP?{3($vy_^Uf0= z9()8eG_Nu`hPX43>ge~X;uLprc7_DCrcgGZrFJbpKGSa?Qpa;_|2u+JSp?jQ>Yk$U zAZ|0b&&J#W`-@GXWAXUFT;2EJqWp4twG`x=B|1St=t8~Ak6WKBtFV~hoDr*Jbvsch z5rv|jBsTQ9_u%n%-`vTvS!rc-0I1^y?m?wxE4HKy)h;D}YvMvaAijMH0P=uR#Wn>3 zDl;Zaty4)0!#>DBaumtq<FcfHZu#Act)r_eX6FaZr}AZCvGp*Wy495%K0zRX|Ka67 zY}HA|M45LYJ)@Wq?UzmUH&qO9pdYwSsLQRYX*2TmY~A%FIvjJISo<^84(B<^WjNg- zT74#FhOa%ZMlDkFDf>?Q;`IrmKl%s8t=?ydV<8``+*j&XKO_bUrgTw9sBTzztUnnd zfneP!N!)JS;`q#8)4@Lpfhoi3>xe^Yq?LEo@w8~R7*xwlVWWOx-h|y1asCog_}QAM z40g{y`>cOYAm@AwJMx3z7bKJ8*M)?t;OA`9d)TX2zt^V&#i1Q*ba5ax42y+)$iR%w zF1FB$3EPb)2Vif?6b+pwfyG7$eGtzV`{it-f{`jD=-(BRl){1^rI6pT6&=t`FCW5p zIdu(j?y9jGtA7{2js0LsV8EK*cUZfE3NJ)BL*zDCV{5se0*4;3ZToLZRO(^`JB!WQ z=!^Z@ub@Xj9yC^bxnR=9sl-gRA~HpzwgNyKu&Wv+#eHwF_`;ggGNo@3@(yjOy^dlc zcIa()$&Yhbc-%I3Z<I?yGc6qOyJ~{9_6=s};+>oXl1ja|D_Vunw~k>*DK*46NE~od zC)6${ql)QlUlSvf$k&&S<S7^_lVK0K7Ef5AtTTK3ynlM9mK^yBn8)njSSS5*&St_? z_q$a_|7?Jp*uc=gKpM|@{E)^S5h5Tp2j>J}$iSB-KWnK-Y?`s;$XNgc0s%gLWTZ%{ zc}xS{IPlC*PCET#5&WHR#FZm)f|xZ*J(9rR(U=N}XB~gh#qg>Ju6yT^Y<RhlfozHl zs^6(~T;^L~?74#EtMnAd|LrK`6)Zbalfz^-Y3>|{0{`glUU{(n-nJzL<*2^dk~pku zDy=J@4$mx)1(-C-%F2M^eY%}hq)Z-_B=W!QhbB^E$5-c){3a1yascGaTME7`MPo4n zS2&O;KD-k>KKg^o#h$Ql$<HUi`TlxuoKi6tAUP;!k8b}VMZkIZB{kQX+-2o537n9R zE2599>+5SE0~WaK^Cm2so?_6X^`&l!W;#oRV88o(GKCECwO$at&~?_wRUJ3%x3IjC zkD|0)@E{uIU>_9|venz5)L6!TRL1m#I2?E-^t-ZuoM<~l63yO6c2x!}h|sAbNut@J zEMFbKlo7A6J@)@>A?M7jJ6`F!9{N6mP%Z@~kf})52hkIe%fYp=F#XdnewxEWsxXHg zF(^c^eItpdz7WY2N>vH~b%GYp7?nxJRjl8>pctjh(#hq*PaYiI8~`t>DG2#iuW2d9 z6-c&4M`bc4Dz_-+ijyo-&MckE>pgw=>g)T0@r<-?_io}JPnxnfdge2zfi?Hb>~Aad z*!zmgf)*+!3$Ke#Mr0taKt^uWbbo8<qLu{M(_=|vNXH7vv@Je(?RBd5f1SX*3avkb zrbnvJM!N5ogd*mtwCc~6eFnxT(aVJT1jyC|6MO0Zn0DgedG=%CEiiIb+A*2c=hESU z%z4E1N%}$?ho~;A94*S1(=s<@bWCOUt)guBuT~stKyDwNhm1{K-zi-j4(8-bUy0>O zznWS1VNhA}%Dqy@?SzJQkB=XjIFqFCg+mGDT4qO4efv7_zO@yc08Ir)6P0pf*O2}V z|D8%_`(1hlWyIo(5#BH?D2j31H0gN8MQw9?`}OqH1Q>GIaAASKu0kr@SP4LGo0Btn z&=ehgqd@tMbjTav_<_jy8S#Z9z*y$_@)is)JoYz?MH!n_*Ixb85U@;yN<qi>I%SG( z;Fl3n3XPz#oD3{EMe@+$(MRm->3rItNn%c(sj?Yh@y8#wV>5BCM$3Oncx|@lhbFcf zV2|lXEm{q6!BEU@&P-F{t)_ZhdO8{%jW&GU#$p7-b02RHKyOU(ixt8?ZpMU^({R-w zvs5|>pMb#sY7ndUb&oN+kgJzVu$K#M2FoQ94JDdXke8RAoBL_PF#vE_0%pD(po1x- zLPvpYuTo3>M?>`jS{HyVyipW<yM2B2<LgPEq%gl11i}4D41&M-`L{j`9?Vn9F1f_p zHM5^~Z{vYvTghM#gBkJYZB=Szkeg=rG_|F33*!+jZv1E~$y5lo7-{n+e)G!z(Ik=; z6h$&CLG=j)EfFM^AgTfyCway{=MP>X1?7uvwEPML1rcQX#Rs&2CqrBlbi@=O4?_E= z4{MPpkRgM_m3}EPQ3=K5yIj_L(0tmRvvhF>n>+$Kufdz0K~i&NwhTRBl_>eB6IaZR zR#@K~D{CRu^2SEs^X<Rl?_O78xC^Cdly{B{djCGt%#nd<^`h>(ME=Ew6e(~|$HuPI zfPyq$_`z1iu@kkbzRPyz3xp5=x^3h(5Vv?(2T~VFG|nP;M*n}CZNI^H$7KHv+=U_~ zDe|Cc!d4Cr@kFD(E~n+Lt@ZPsqgS55NStrhSs)a_V-p4rko7(_x~TElDjbWe#SgDF zawha|(uVW_I5WG5C`Dp(A_z98&iabFPDnxETH(?yVQX%t`;Nb$=B~KS(ax#6U4uwt zCJW(WP@TXKT6#hqW;-=yPOvvNFUDl9JX_3FIss8#O=P|b2hp=ue}yRC5+nx!m^83W z;s3tBALe+T1GZb3dV%q4pz6$@{CY+jV_a#X*v4T%`!^L{y>IXND`$+DuE8&4QC$5j zYD$pcMzC6}Lt3fk**7^`3iy&NngEstV50lLoV6V-DB%C>#&vpedW#ckz(^hS?&k9} zc=0Y3gha##q->`mtEx-1B^vz!Gv=BT!#9hl8R}#Z*(?WHWmE3)*8NS^#051|OvGKs z9C_)*48sdueu#w%cXghm)7yhBQ((Bcv4u<>oARy`-86pJPM1MYYlIXdCmwQQ!6EA9 zT3=ZS1gihzuJ?V>8UN#0vlnQaFS>5xA{&mJsVAQR^Xf&wL+7-W8z7GO_cuX+1JC1o zx_%tIGV`hUeF*~*iT`-?G>%2d2t-r@($o#$=dsCuY!SV00sBw@e;-?+y9s(;Uf$=m z&6kG@OYQq{!}n_wzbl{z^kc4zjA+jIT8zKD49{33n|m>SAGcd@wY+v$MH;X3Fnyd1 zvb$QqSB+{o_zcB?)>sj}$_DLnTS-<{t3rMA*$re#^t0@uulLr-I6e*y#I(76!E6Ci z5@HL&0k8eF>^@a_jrPp+f%v)))dLE#f_)H$=!!{}KF8ozuyE~m+s5j4a&3>p+wh$y ziX!dxx_W&boYh7liH;(TFZ2rh2#Val;pRFjPPw8*7eHo~S4Ck_D@FIT#1!dq?h^a3 zM~t6^W#bw(f`j44xyPu3rH!?U&a3uqJy!J@!fP&33S1PZ&KmcN>yU)@SXL~rdQU3T z2^Bn8$E~ud=NtxdnSscf6=6#L2X`ReH8Ex9SZN%H_;OmQ&vVSJ+wz7g`L%L}%d!9X zLRtJbh>(bD9qNOfa0B9Eo7TAS59jDy^LLe#@UyXjmYjGiFUWKWa$jSx<2y|I%%9@n zj;okHQdG&;F!q2ON57%9g7tp3L$B%S`*%DJe^FY|DWC4}b!&_v-MyDgr{+iEL;s>k z^>0r_)935!=hM?$Ew(Spzap_gZk;(>^+-Y4SmGpbkk@qMvuv`nbW=Bjq@uqDO$0Jx zgiYYFz(8WvBZ1L{Adr}Z7;x8v{v3IH6S9J-o3lgtI$&J42!wWf=c2lc!x(#dmMxx; zHX6PkH{IMsKg^y2NQDc0zO#vQ=v*s79iq>&O!R6~iEk1cCJp;f8&to6)DH|W5DUEA z1G>D*5ZP4Y?JNFFN;CpF>B^e<8iUq#xV@_FPNC7S0-?|d{w>%K3=L``ZBGpla`giI zf0ToMY|Fe{TwH>JK&SooxD(&|(0#Gi?g~%}TyehL2J?Yj2Rm0kW{>pr^!$MJoS@5T zNuqx<<?HL~-qCo|O`2GC190BwiR&ZjF>iKuEIR?l)YlhimWGFi13w-DKmKigS*QWR zn+x|P_|%lq0mpu~fg_-KJhc=&@#rK1P-cMR10I~@WGuiDVm<m1+VcGqLY=j!)2fuT z@$3HatDmBwN%C2Y^YsJH1&4Sci;Zs!9uH9}Ho+IeqJDnE+SDvX(4XK_sIDK7Q#OZ! z-0e#x#yUd9?O+h8O~gu{ypi_x)3v|$GLx+u^jjsSvb%6B@Fd0gj4vHVR`aeN!Fwp= z_I7n;J58c2U0p>dG1RSnHi^0O=?2Dg0F;Eo09&D{cui%FBt>peDDjoDk#Ioz)8Af} z3h9*+fJ+1GX8G}9c`?yT&K<`p?E1iUJ=yUL^#_3?G7F->R!U@!jD1G8rn!jVOr|q% z`@Pli0n6HgZQ#qsia%K*U~wXj3=R8Zm0wpmR^3Iq<K($Q#K$^A_H%%YrK)2ZAtIKr zEFlM{jL0G{!{2ap<tM6S$F}D3w|bAQXye4@AFS-sEXK0hDVgxU%?)i)!4;d>VS|Qn zZBMTXQ*}{(I-FoFcz$85|Nf(4D0eW!i^SMizF|Y}D0S_s<~LZ%TXEw`-}!gk0c_vq zUiIIG$;dzk?R+%y*huGi`6WVPv4{E)#i87Xy9TM^cW<3Pmf+il5MZ9zBi293&RD6W zO?Uq$_Z44T#;DU&zQ`JA^l0|6lsDA}AZkaLAnFHxFD)EVk;qT7VVCp%Kq*NnFAqRg zhQWc54Iih4HC%LeSnqN^nkm?+Px)nNj9?v1Q4*%I?`;s3EkhkjoP-L~Z!o2ZN;vGC zL@qKyB?HRW5{rp+{tc`$yLn}TFQVE8!oIs5+CGEE_pWz$$zy&tT><3Nl3y*qAbARW z#2c+9ga7qt8PUfx8PMt)!GKWBc><&>Cn^y<20yZ%#9ji=G$>1KsBMF%+_CKj70U-E z?!ZC_X5cff0~>c1gg{=%m!n}oqyl=Mv;M*bxT%uD>yOaIHhTXq|9STJF1lG$Zg*?K zOk{+z<)G_&RMVg%yX!$LPu&37QBy!00Hjbbri}yY;rzvuZh&(EmYT6-=ym(Jvt$5L zI>C0}l>=ZaL$9syz_-P~H$XrokReCN=jU|MkJaxY3=<x5Jtjk!yLt5Zt9S95p9m$H zydCJACbBqz>F4F5H_*-Pc1D(w9y6K=9$04#m=^wpDF9Lo;1OQ`;k*NgJLQwi0RF}Y z2oM+@;6nT!Fr0a38P1R>|2&c%E+bibytXt!*|7Ppm^Isz{H(kNX1KtV_QJGQ&rsag zx6NqpyT~J}*wEb>*PFJ-OH+!Ya{sZX?)5jq+=8f@QzZo(Bw3oqb|?=YX6B&+?S-_D z2m_8Ho6#gx$#JaHVDmhqYOUAeE<-|oz!#THtR<mLw^#ZhLEP<jmr0J;=Zrom@lHiX zDR=b={qqKZfnBr>?IfN{w%49`=kENdJvqj`JLVy<9DGgocP>6m%HY5s|1%a%q;?F4 zzUeDVR{EB+$7`<6F4}4$AqY8I!p;6p^qW#!9$v5`xm`fh0yCWui+Z<##nb+xj>YHn zJAu20N%v4Lhb<~7mVM#xU|+Pkm1Yh;h_4lHsgWmh2-i3B?6m|fzUc9%7DMLF90z7< z>R<vl#Gh>$4G9@;q!zmJ)*=O6<y89?v-$EC<{-!~ksRqXKUscrgsDOGa|aQ|x>YS1 zMO5?dx$}wi5++5^`b?`{sn{Zo`<19i=~+&RRF*4qCK_wUY9SnMxP)sRgyZ(+Z};8S zX#4&>fv1rr(b^vvB<14Gq8Txg?`JGY5v~tor=f>%Z0YLHKk#M%!37J~^YLc6Fu;(A z<fkMdJL#9rU+dCuxDyOfm8i)Z4jZ4fR)u`r(n%*dF%(h(>R)NEByt+#d?UFbs)Ny^ zqfrx-U(S9`PM52$Q_3>`gu+Xfo<FH}vp<uBI0?ffipZouz?jcD6Oe>0x};uh?<fk~ z>S;>Sv446!T_q03YLS@doBCLuNJG3wqQ#oe_L~-;7t>up_>A-;0x5HySA(b(9Xf?2 zS7FaZ8Vn)`ystxl;RHiccMq+;4)!kX?S}DZyJWXUErrBkyTlp!C|aX(f=X^ooVw5H z@q86y_bn>O4;U-{1$h_-zTE+m=XYS0%Jby_Qs8AM5%D&lZpMrjZ(9LSA>f$-Iw-%} z!>xmda|H@h5gG`Nb}2%EjteG=5<WgYImKH>K#}j*`*sf~3Im?T4S@xM7l4Q?09_nF z_A`<mfd7P#_!S9oaJao5MnmUKS)hr?{!NCnjb#275HLKz;Qa=%jrHPb;{v7gN;K}Z z&OKCdU=Es-t<UMz>URP8wiX>Ln{jYKnGj9Z4uoQg@$&J&(h(DYA!<Lclu9{xm`kC7 z3O|E^8%(UJEQ>3>*(@lMUBp;73!1g-K?yVEK`W!XGH_u@|HNntl&O=1DF`FP$3HtG zI9615tSm~Yl+R!;jr6}|u3t|BLzxpGj2I`@sy+cJ$yEG!!FE-n$e*{l^I7xgoWM4R zUuYJD8g6t^umW*X;|cRB8x<t33bysxo_H(sQH%a8Vhmmi)nvWY@>gIZpp^U~Hug0? z5s}TFz9zh5PMMJvwTi=NeAZF^Q+@+*5Ke1vOnK_o%9=Zq49D0x7ydd7tgr-)7gB#t z4$!vJDGjqm&!YpEjN%5#LTWbzEO;>wWxh4ai84ph@1W2?-G4{w+E1G@wQkn-Yq;OQ zu=$t>F?yb!5jnLBGm1%zG~h25!9}xoV7TWxfKq;5h>`Jk&s9fA)fyMA%Kfot(xpqn zS_0l<15GwmmW%p^_DN;iuJwoS1Ar2egwZg#U<`nROlwobU`WCeP*?0XZuCT?uz~B( zj4yYn!K!7sCiUPY?ie+4hYQ9c5^dPHCUx<wm0);J&x0pU1VQa*1oIfSJ3chXw>$2b zCqc!90Z_@C$JCz4mAM9~QxI$YF0!Hy!zK{afdWetaq1UGl^AD-XgC(kk71F3{enJX z(g5RTCMc<|k}~im;XTmyN$>J46?wI1ec5#F85e~4Ow0?fe=jcsYpO<sghLE#7puCz z7L1G{eq|;SmH>j;R2qW<KlZLS_e{yXrSFuaItZ)y9k-iX<BY))(*AwQtO_C1E)!Iq z@cJI=EB%vO5oFY$#RMF2z()%cvSi0W7=Li%4VaA1+Yf+W`=7)JP&opoH=;bg=hx_| zAxkod;;>S(MF<L%F)Q@1c^jSM-0{g;IU~;50ljq!Za~@+ZtUFGGzNX#_+h}jvOYTc zjb|F`K`>8lO3nSlrkhmVS4tXDKoa%(R+k{#mR9}~*<D_oj>8^Us?a@-{sT=?0>PUi z?WHFea^9DW%&c({Bj-(4WdHOBqsf$22ZCn)7Xnyx*0xY_NfXrx&|y%%c{aa<WRTs~ z?g_@W`6rNy33i0%#X8ae49eWl1hzW+W9<n~T+tst^ZP$qHDTGVEu>3d8yJX4OE&dj zNVpE90mP6kE8H0$T&Qlb)93EGMD``7y`4gNej;ITNqT8J!~fTyMU)<bjQC_lv9$|$ zv~D?itb>6LTyiV>VGS(i#?0U6jP6-IuAn_=YM$<rv(L{3GMH4ZQd+~t>_aB8N|&>C z|E>N`rnCmctvih<Ki-!s?!0wEP2d1DnY(YR`|8>B`_NER(0n$sRX8I(RS)AG2mO&D z?t#Ce_GymPy|fSj(<`dxnj%c4qU+(vfKHK}GcJgObvyPxDLMXqx4WH-?QoNy-$)qv zg;0t{v?cR*<^1tybCQjSu^{Zu9a%hqG56iRVuK&T%wfnoSGzY;M7cQ=dYTw#?KK*} z%DEODdzlJkK;A<Y_0tLHqeKp^*zUUaj*cF0Z(~#rW=doMyJGE0>1A+Al54FEDrK?} zUv7&|K;5EqcIwa1Ggk@rZ%Z)X<@li~jkDI_#^ex0h@Clz?&$;GTv_y3!hPHaDtlkV zqRwkUkXn1FR7%oDCGnt>6^XNM8iVA!$|jvU^nU4rB*dDTmQ)@Ms>F#dA-hRzualx2 z75i1v3d2YnId0@2GXX^lRxD!WSHYesDDa<JV-MGln9}N5hDUyw{N39p<K1c79F_^A z0uL{RDJ~g&Jnck-TXq6~L3e3o<;MTx@sSIDV9;dRp$$mIag{l8X$N*&0RzR(m6aO@ zkAOE<jyx!6Mt(u222D$=N{v=7TkL_*kB~0($PLi{Mhp}jcmqrXz~KJJ*9Qov$fZ#s z`n~wxUvH))cc#7ke0X>=pz#17hCDkPn7=V8b>18#=7Jgzo?@SVAdA-b)U`GYrtfPl z-xvkT?zKO|)B8HFSe(#b3)+0G@hg-VwL%;Cfm#M8!%0UK1`?eP@B8{A^KBz+1T6t# zPv$stS4d^RH9wL;dc@*+-lK&D7xZg;Dy37a3Q`^hF<<5)W2~7(2DISN#+ws&@d7v2 z_SyMBKr@NEa{_ly&1tfT3NFN`A${uLhS&4wo{RI|SV@0=Rnx+*!vsv4<Gp#GOJ1eM zJ4VBPM@kVm=|U7jm>rq5#&3|VUS;>OAgf9fkD@vBV%jG<ulfwZ)8HLM6!U3}1~xy= z{+C(P|JC@&pShoP`hpF5qsmrShGz~Arm_5Q76-avxZc&<C^4#y)nhZH*|uOO(a;sz zv~9X9Md@vSz;kOf;w?>-=Af~n8rw>-$^0Y4uk-X)#hdHP9?9>>cAGuEnQPa+Nzfez zGA9euA^Ww0lIOUnD>{N?erl`SJ<G_BxRQ1!NTb>XboRi{iT=8NqNPk;!ZO64I*<)V zM;74$NR+LDPq*_(z(<qfqQ6W8A<RWM1wig5D99py8@9k&RRzh>C{z)(l7fqu(0*c= zklESUB|E}l<`O3SdxEbdg*+aqR77so?ik5jwJ9!qxnaiR&XGHjPutTbJ@BDHl(3T2 z%Bg7hC=lY+vMQ-mA?d;TZqlDucR?H(L95GZla?lO2Bn;Zpc5W7l7ou^x_7;47SPCD zazT*U8>s%2Wh_ntXq2d)3>)`9oOuWqj*R+Gc#(=sCkFfDY;fGo3&Q$pv?xr(^gTOr zeisg7i~hPYL#M+kD@qQ13l$D@^6>$j;%W<Lz_q)R4Glc$bfry4ho^2FSrmK*(^t0A z)Iv%VjA02aY8S_05HO}{QqC+qxr`QNMYC_+fZ8e0$LIK^rz3IN3SE5K1qVWyDMwyn zXLiYiA}pU`KM!L)9s^M@orS8sL0{6mY(~&~HDJ+HAV6AG<;)vQ+rlsBRdVC|Ob)H5 zsJV{(0ru`w#Gu{E(!Q&yCpB|J9ma<O<9Am#{GVDwQw78@BdE}2KN*GcKcz#!-DR@! zC7o_%$eP@Mjq{PAu}53;t!Q1$a>&a_FKbeU359ud`U9qG0QUcibSn1KgU~dFdB|_$ z!UMRvJXtd2%4VkoIyp0b_q^Zf4s3z0<rB30KAumNm|PI1{$$fl-{N`TOmSEL+<yPA zrzrj)so`CvwX6I}KaJ;iV$UNES2QP1i7Cj<sW>hs?6Q~pOqf~qVB;2)r}Mv--jtcv zU%19AUtvTOlmB?nXkvZ#FDs{~%}~{lz?BJi@pM}gzCA6qtSpx$l0ZL=u*I*%v7d{D zlscG~a|O@gmI<WQ5YNz`KjI~DgCG}(UGv3ZQq-`66C-;qjCX1|ZF}mrInNrLzz!*g zB55D;sEZV6e(NHBl!Q2DT$S^1j79HofMlL;whI=9NqAy%eS2*OO;I5LlD=q<<(4lE znWp4cZ@(i>0j~O838wL+BS+z@D`5nH0c9yz0_(0>G8iz0dx1Sx8z*iZJr^f;fSS^y zlRgZ7VDIgP(ij`C)x7k4&I}NxA?`YN`MausOotV1jy=@xLd^v&0)eF>HHyX%{+lAh zr4b=gh{^n5e*Ij6&g+f$j{Q3$amU{xL@7I`Fq7oulGIn{O}ZiP6y3`vF5GH&ta%7x z>vwPz=9NFm$wtgUl3|g1EV*(jCRksYIk1rzA*(klD=RFG+OM|1Xs14qp4Z22k1%vP zLDGr4ktZ-oY?Jfg@Z&2g_}9%_d-`p75~Qh66iX!mmpGHokn=A{$}pwWs#j=G3hE9O zY+B+@y~eO*OpR5|g5!4;p)e+$h~cfH!@m!@YYK}Geq-20DW4O`ow37>f5dD{!GS?& zgehk{sZ9i@`ce<IE2(v~3a*dE4OlL_>1&ryP^ewAH|NK?>wxv8{9Ky(APGl1(xbAX z?ynu4&YUz9OF#|(>&AnsGP0bM86f=3EKCgXB~|D{hq_}~y%-5)jr@CbXSX*_y&;sA zFD)m{4i&aJ&37sY%_m<GDS)*G)OX0k4RgPpvo)&Jn>seMY8%*#54iw=Th7((?e49c zpVyDY3r`$VYrQ1Mw^*aLr%!FyNbDQdorV~EJk{M0n02#<x*`Z4e4HjuSqlchV)rlT zmFe-kG0@SOZlch)&DzNzt7-t9K`w0vzma&$DN;cNdhpy9EtG=dm}xCPWsdhVwqf=a z)^VBkyJf`}KKf*2s;nJz*q@}LiOOn5Uol{N)NTV0lD?>dl;mZa0yM0{v^8cTQqe>9 z=<a=&T>L583C}Vg)i4fR8n7#yPr8t$_nBrV@Z>g%n7#AgAeuhHhF0{-z~~l>Zko|l zW$fIgRmP6odbH?Z3&Q@8Z^a}6s<*Ss$1b-5rQbh+lkDgiD3GT}kqiX7`1tVP#`5G$ z_V)uZEx^8Z83iVwT3v94QAk}F;^K!@#%MKx*fM$#=>1I+>ODJ-_`-B#Qb-xGTynTM zkQlj@&%u(Hulhj`sv86WmbzCw&kBv9$b!>6jl9scBCcxXhD_Yc+V%=dE{>^78@B$* zUf&W%BUkaaXVpFS)8vM7Vid(PJ{Ua^tPoiGK|_C#l1=bELl}hg@Ku{TJLk7j`p?;n ze|+iK2uRG)k&Ds$T?pw8j`LthvgTq?3;*N?LZpbGis;m6^a@_;DUx5$26nQp;t}fe zBoL<wGi6PMA)i2t!vtd}Q9Y5S(}yfkkaao?Dt{C0h<Kkh$0!JSCK@-c2SA<io4O3{ z74F0vw;@sY6ff5})oEiY=$GFyLLQY8<8suUIy;sLC9PFx`526HA7WXP`8tLyuNE0* zFR6u{Ak^|fXtHqn{@)69iZO)(PFrB}*rViCcW^<6%udwACfE{@e;wLj3qZ&bTUS@k z|5V-OmL)Tnq5VR8`+2(^k}yYZJV2dZnYnOe(F1k~x8>(d6^%aQ;IbOhHmq+dbN3Cb zWX0Kq!-tf~)mWCNW;Opu(^-Z^*|uGK=%Ks2JEa>WN4guNOKGGVq)S4O?(S|xKw6|5 zq#LAjzRTymzxmA%Hn!nBYOQ^3@8Zk^ResT|YCa`^a^Tvreta3ysE$BAC~shZ`K4zO zXM9ay!1=4<xg_b2h2e1Vk{yY!XKC`_o3VD&p|o-HXPuIy&Z{5XuHri8mL9)gX#ePZ zcK9Rep=A1T3+n9(nqMqep$obR;i!v@%?|WR9}XaV)r!M6vAZeQ>LM|YJ^dTq?ECl$ z0#5lmJiTXUr(mb#Z>LEM9iRdaZ<nW(G07M0h$;?Qj1b+tq?y=!sM;z>dF(m&HUUJj zf`VUFN(-lL`M)Wb&Y0AGI{aM>*l_Hd5krIby@3_`ml1gE;vZkWyaBcOJ^Z>_J!vS! zl$L>?eDI@irY^#Z!~tQ^snKQZA$nNYQdE31AJKN{4awIqV_HEAQoy@VjSVFqBTVDD zOeT9Yio0|?|Lyq3feQ`=3#5_0Y|;zD9-dwzc2<EgPX!YDY&)w<^G99j<o;x5md?K+ zOC9BHe;Hh7wQm1f{j|>V8b@?NGxzxANQDXrPQQ4zbQRJV{n+Yzx_m>J)B7+wR@>us zJovGdlr01x_(>S|dcNGA)++w^GP9i^@p>ST`@9E8YK9qyap>u_d@+_t>BB5Re?(Ke z^4~KD8hY2#w$d7kMvtxuEp%MMligprInRkF@w3@K>88oUKjd(+onTwf)`Hhlqe9M} zEjbc<6e*E4VD}ZkRhjdS21s-9a7Z?YVi+oyE{8WT<!-Vt$VrtS!t~OE3QCf1-%mK! z_sH^ukTV32$|gHc`fr$Og0_~HzG6i)`S<dXVa)LZ^4&O;K2-)+;0p-&@T4!eV)w7| z);`+!Q=9v|<<k^s?$PNw|Ih*RJNjw$o>5NK(bqc1XjNwP<w%KvN>^V4FP`Pn?#+e- z=2M_cGv`zF8QLN;BI#2@l_H3DUe6){d3==CeP|QQ{)_9$=4i@8p0Z9}y^RA7@jy!h zO9hRg>=Ikq4l;Y%!&`jHaB|o(=Dqj9iLo0^MJS^j+pK$0XDvl@@2P%T=;BLF%E2$H zFm@C#Zq5r7e^%7)GnRXx8Z&ZSjp8{OvLY-e#3X3{dc$d{7{GI~<58gVBC>RJuKXae zZ!VgHC<T@*N|9E8FeiL@U?ah}J9cb1l<>|e{S5-}R@;|)#V{d&*X>DOULM#>oqDc# z7;oGG^NMSGY{9|S04}J_byuyK<e)iDnD}F|GqY9aE|LZv8Mb<X78zz+&7$c5B0QL2 zRBR-A3Pm9k=4XK^DSxUqz9>#!r3C6-4|7VZBvj7Edd0`h*TtQF*Z=aV!hw2bvmt;4 zrwCp@s_$rjH%6A{+q8B+n^&yR05$ssbhh2$i2-&O3)&*AK`_j@pQNLcHY;d{96lHk z7>)Ou<fukzvBXn=)v$6HaO%+7`;`4D;O<kv`Dkio_s1y@<4Nyix}FVTQPD2HhX$J0 z*RxOS8A=R*@MQ~nw*lSwwDB}pD32MA$AYf5bx}hg;c!;DLpjRBl=^5gG<90|a(TL- zn#yQ~Cs8MwfwQLm^HhX+Eo(he$DNQ>V*0bwQeFdE3k2sUk2dHfq*#WT@AbR=PU9?m z9fG^yukUEHH(I*1nZehJvms$=2gtUKJr}A)^K5l(P(1jgELUb)xyXINkI8f?zv-e1 znXW}QJnVWmx?Oj9EL3*U{9y;$);>N3u>PAOy`8Cy7N+k5e<`GXiBV~Q`)d2P`(wJi zdQ!pfg}JG=Ip&HM#6mKeOS_cj;)28YU$bIng+D5!qVx%K%k^h#RWH_3hDd#t=IKBr z4psH2izn=835J6mX7q2$F=_ed7j-SHmn4`&*J6J4UNWYdmX#wR?5^!vp%-~LhtWLh zv?Qmz=Z!10BR4i%XlGA2iXmzLvH0Dwh-f{Exfsm4$xmoR;6nWs2a%8KlR3cbjJL-7 zFwo$@>I@H4AcivVopk&Y<AECu`1^<@!*0c|91S^UjXkfNh0|M2^q@y>YKy9kb6_9Z z-Q5jn$);_2GnA|wmtJ3Ai{GVd`2hcks--iRUQK#R2??qO?16!Sb$cZnwy>2&;T1OS zWTi89^6Ky)Fprf>l19ytwj3JYog81dsh-P|O+>WGQkSrZ29*r0L2WM)$yjcj!=`td zzlcVy=FWaVbHL<LrNJJYdO?$jYld$Uu=AD0^L9{vUpnU+@irUEn6A+r_Bh1YLh6zH z(vI)OFXD)lY7V!Az^UAxqNa@n$EAr^h6qZDj1(|!dpL*QtM*=<0z|N`L84CIyP8dN zE+SB$yYR~(XMoGo?dib4TiI?tia6iybpV^vEwFJv#JLf8*ZU#?y~%xj$R&s&E*=NT zrN(zXS6G|3&5un@bY4t`LPaMcRaH+kZ))|tOH&=AhtPla;2*8J3oZJuz@kcni(AMf zU7lx?9?OK#v4gKt2{@$2-?i$74186OOp=V5QRjSCo%3P($sfiJ7RVeBn#A{ImF(uO z?M^{2%sUn~87s|BJ8yRs#g`6==%c}jQUH4x3%uFr)zajVjs&hfEe3!d2(VtaFBHbH zUOBMds?8hz9H%gTVF)t6^)@z0N+%x`YNfA~dZj=$9gwC3l~b9oSf{egH)}ycvuwyG zg>VLUi=~`$5dRx-(oeXLJ@nGrYA}-9+<^AbLbY*e<tVP+i2P*ztO@@iJo;YOKW?~T zbcu(oSIO~8nqqIJgFk1##8c#Z%gbyUPA58l(dVlnoZb(I<nA9|u6m(HdS2?B-xXfJ zOmJYK&S|9K$d?ulHr=uhD>un8=?KcGs0sL!|C8+65e<R*gpjCWahP!zt^lPn090PP zRZB&*ZC#122TF1W43K2bo2`O@37n(iftc~>>7;Xja|3jf{3O{Poz*}Oo%MGVMj;s< z#9SP|-SkXA7<G%F1_8B?<;5N~2Un`gBE#gx0_)jAnYR^1SVob8@d*2Eum<dIRHoZH zj?p1F>sME7JRZwM?jN)@C*U<8Z)lCS!Sy?-SK>s}H1UNa@I_kB5@>yg?zWZMd&^6x zFQatt-KfmSt&1|V3s(Z<_sMG6W1{U~D^kL;W(N_Av0{Zd17A|1_vwKENNnTy?lIEK z)%EYcv-QQrMZ)Vrg6PzC)&^it+1!-8eBI~`1dtl9=Nkb}r%ry`q`>Qc?sw<Q+2wpZ zx?2g|?S0*EY~(I(@+x7Ax6;p2$|NoN-n#MrBAq^L@(X_ePke^It<@)vE86v&dDp%x z&uBsB2d`|r`1uAz=9hS>G96mF>7X@Znue?(`AgGq5Tp-gIwCQIH+G4p!inv>4!RWs zaZ%TkQep@li*JS7qTWuT{jbKA8+<Tz%`paIXlUp_zgZvA_D=udVU%2rH2JVPG0ITZ zsLa@x*lX?gF#CT`965@++z%zkV9b1E?c^Z7R1YpW*|yg0F(K~$Rv1)M<C?#VDg-EX z1f#=^rxuURwpQ3M@S4o1wbcS%ABtFpZ(00kElqQ~tAmYlkpKTN&GFVsOTuHh?DQ0t z;r&~4A>S)u65o=E1BE%Z@-pV?_m>Z`FpBk6J>r!O#qm74JqBMG?pZs+#3$ey{?fc5 z(je(1N#9+&mvplNP-zyoPlLBd%6<BcTcm%ddl9m^Jx#tqa$uE7FsN1k=5fO2skZ%j zqndkdUJqQu6r(f>Qhs|F%k&GKyZgNKJMU*odAL){;K^oPsg!ODPCD`ft3Uwgm8(*! zTVu4ev2lL$7&B<*$1f%(=Fr@IyilVCncs!B1>Doce;G7q4x<Zm7dGB-VpKdC#>Og0 zK|>%sF8Hb46UMX0B?s2Fl>T=jdykR-!>zmf#eXnV>9FFvX#p_o>anTFmohQ}I3ES( zFg&YsY-NQwS=VRLaOlv8Mp$3$WI{3dsJrGIP2Zy!<CReE)C>mp(AUORd9hm8%i7h5 zqLj3WGMuYsC)_lS=tuHOL)i4MpNEy}I{ot#H9BhUvYmRbB%q(6_d~}{u#(Aipv|YA z<Bosu14E~74=*pK;*-0lnqvsF&_1B~cLKaFg--s*h81ygV3(WGIp|I8Ysbpz>ssLB z3KHhI`Y11TY_bPq;}1ty*@(MH!Zew{5(jAq0r`>@tdD#<_HXSx)(0~W%VqHMeghW; z4XGuX+|HgUa}(ay8fioS8eJJISYm{PA^)!;R60U}8blkZNCWPIHY{*xy7lXE^q>iC zM~h%YG)}pqc^80*2K?nI(GXcat)By}QN00yR>L=f;rSVE5v`9o-1GJx1TkPU_uWxo zKOmh9->BxnM{TGhzOaXGQ199#lE@%b_9wOS9s%2pF5}z0(!isA4x8SqyfwH2caD~4 zO|ZKIaYQGdDJ4B7wVH@<5o>AD;=fVGA9<7EL<ZmfJi59n`J-pyP|kE;LjaHC3bHNd zNUMB=hi%{yW&454GVwqxG4}n3f|n(^`6?XpI_}T&PukqVAzAQN#FwA4gD64v1J{Gj z7|OQbqKUPYRzkD6eIXS?kfy7&Z-gENWLJ2?&Fb*MmFt6jRl&@lIk7A<2s@;*FUw5@ ze0uZ9uE~6-!<q`aL>M#ZF1(xNn<GGmkv_KTC!SCM3^U~9<m#hgSXU1rs{=3HQmre~ zU&xLgKELP9<rE}5>?%odo!l05F$Rjg&xc%Y6p+TK(LtpvyrUHcO-Iel@hvd^9Cth- zxJ?cM%+xk{X8-F0^<*Xp*?YevbvzD&E4DY6NAzl=krZdOTSt6X7}P0cM<<W0IWMSI zWJ^|y8AC^5kAAX}zHf?Oqwr{Qlq|_Qj|&B>(`L?bA?l-}_mtJ5I;kPJa(qv09qusF zsB)_)_B+h)Bvfw*?1O_cqEwN+k4ZNkH(nnD15f7`fZOanppo`_IX2Z5l>q!$e*m2i zVBN#`eCqimvhgsvzD@!9;Sw8J+kLw{SE(D0m30NoJc8hmR^V}!cpfyR`2)QPgy!0O zc{6Hzh*A^!^=tVgpJswoPo|Aw_Wr0#Kz)tYi*8^&Eeir`<1a%wIzNYLJLwY<b?Vee zAu=`6{fFvyIbG$C7R#1`P5f*FcX1i-#@4ixVX1MLu_N8V3-T@jpE;kfGy$FTm0~tb zH^1MPF4Obw=0{%zbenvxzq;s-4sK+7f*i%XXtW!cVpE!rfMF3Z?=$U~(p0=~DkcLx zS3uzA)9Xi*c?%Rvto|#b;rCKl@cph_2N^v&sY!Hph+{^7O_wGzG+5@y)^EDRH54k| zzYj6Xm@?W<MvHyRJYsoDKXy{=)Ty(upfZO1-BioQ(t^<8|JL*(=M+wk(zP;YE%?qW zM`P$eHWuG}7~JHNuTyhxi4K+cOg6{qJ4+le>U_&%Yh6jz_0tGmCo{6Pg|eMJPBlBR z<nKNMY$ODj(M#h%APDt4D_;)!pv;YCs%RgsT7Sy-o$E0W&-ZS>Qd#LM>CEORbg^GH zt|@oS`=pymV1fiy_O2xBq3@#Nx0xXRQ&+&gJzNd3vqppr!?1cDurH{T0xc9A*}tvC zr6d2br%25<0~^3D9qyV@WY*D1ukL_J4pS|4^Y~D6j6%JCB}?|t8k$d|0g)*eMsz<4 zx(O@*?t7EKIXoDv%?J?*>8V=B5b21yxaa)SGP$gp+ARw(g**)cw7lM*{JXUvPKbU> zR(uhXE;4A?C7y#E!hB2{CC364KK8>FfdjQr%l~FzhNVH#{665tgdK5dSwMtE2ZC|- z5u5+`R%p{f=3&mQtQ^P4Q$97<&=ZCBSS#DQ?P!~HK2kcESL>}PI0(nod$$?7Tl@Oh ztZRxC_Tcw=)_D$mmoJbc?g6AD!0Ge+-wr|{Sq9?0J%k?q2-EitP%bpr`hVae0#gTE zecO1x_$&eFQ}@0(^#~E6L9aKUm|sSABwo^c(F^O$0dxE=iZYj00C7{Ky3_6op+NXm z=cVBTvSB`S<>T?8=a(9MzHhpty*m3Gj*fJ~V#aZnhze2VOtp4K7H9n_77fibd@<4Z zRhb}=-lOE{Yozz`R>y~U&{o#x_gzME(%>mKF<^ol2JYgnZick`m4~!dwb7^~v~EOh zU`;Fui*aCw<T6VMTneF;J_~zS4@*l##n=A1+ziE*vE}eVSRrmK#ag}_G+*Uinp#`; zpVD(E(se$}gEqZ$utd?e158c5Vpi{3!ueOq)FH2${4n{R)3Nn5bgVK;qr#9I@)e&8 zQC(^8Y{+5C!ipH`2Tnp_8tu_fhWryo%RNzNxj6sz4dEX!3HB&a<rBFn0+c)+m6QJs z_bMNr!XMp!ZPplc!q~T*5WV!8GZY4peN0F6zTI#o30|;j9~p#Oc|}2KXf<e(tU8cj z&Y$I@OG}Z<{hpmK`C=-8)3)gIOZa_`7<@BgB^^?@t(5v6Sbxa!t!;(&<1wbxxfYW} z#M}}Zn7Ym=B1RSrLSfEJfh18$wyrod3lp~KH5;%`UHNpcdx-+pNeu`+W}V)6=}Z(} z7A(qS5#C|<JLF>u?`!|sl@D=pHZEQEnu*fbB4%X6F@vjDetb1#pLr0E%||?hgR1(7 zseX81!59&S>8X?w$+Ck&z{z8R(chU!R2d2{nWAaRy^<pB#%bZl1}8CP*1TRyZALyV zyBryfr69)qLgT3Gk&Q~G6`*MMqUq7Q*ws*WMcx#Q7a_x02(O532+;OmIz0JXI*8GD zWzkI7?4P&{wKp&nh$+SUdvI|O_!!gs+`aMQ4<X(k0p3_s-_z!QG|T?bf3REgSfJz} zQv-sUWV$2dvK+#xE3)Av4UY6N;2j1;pMJnM`P$zU;(c>82fdtn{nI~yB=K+<SUY8! zhBVpa5i{%M1N_py!R^`C(52;rW<QgFFUFjEZF6nxq|XQ?<ZQm749JwQ2CtoxIVMB9 zU=5mLI_1+^W;Lo~9Le|+GLF3Iey(F|?C>HbQ2+A_zOH*1kITmtFaGTK;YPu|*!Gm) zyUFj`so?J-0HN)E+gY?owd3DB1A{2Z(WJ0s_F_^9qZFger_mS5$E-HDE&m^gQ{94Q z@s(-;;ZJXdet(Dl=~gZM0$9us-G7VLpFgGW$iRT&w?RQzM&N#?U8AzeHx_GCxH%Aq z-`)-DxY<--q5Y*6(W=Hg>(98{oSNF=Ete9l?b+t`=*Ql%8LBPF5wTBE-k$S;%=G^C zH|J|=nRWOuj-lP6=>P2pIMG*|;1d(<KHr}f5jvgdH<`l(kmpv#n|l)fs`YhkKl&qV zMgBO&9{+(j({z5uUT9f250k3;&y?Nuhu(s-XIzauGWOpQ(u(;y@xat9ko;W`fGqhu zW)b?G532XFGbMTE?fY<!h9UhH_%`qu6Ku<Gz*$Yo!T;W}ll8A6`Q)y9hXM`;C<`^5 z6HHCEca8KmoZKi+9Rl1_k2_91egE-E-G*HrUw|?t#YL!LMuyBWkC{sa(SA*cj33}I z7DfxXxc6cc%pFcj!~w(hGnp`mn#Wd`V{0_!f`VvDN@NZha4Wo$kZ(lOg<?_jcl5E< zU6W+gX=K;{H4b)hA~;#7=>BItUThy^mHlOS6h=oeRFlAUr8iN6?IYOa$Spx(vas<D z@$lp$L&kZdiPPJ@E@fG$w{sb)JL>VT7B$GR5e|XN%yZ^fV(G6>3#&YkpWmDUt~Or! zTd`flbK7gih<u+;TRBa8x_Wyl0b1&?Iv#ua7*liza1HLe^WV4=n*yZ8(Ue)-x1+4J zO#mJOBhoG4c&}RGVO!#5=ZmR?Xn<Z9pGCcGl(mp~cfMgD-Fc8e_M5Xd$=rUWq!iW1 z%w5G+V=R_WQ;y!QdtFPScM;!I{BsHq8>g_9<!8D4nowzlIbT|u*@W23c+S&94u0yV zPcmbdbPFHX5nX#l!AF3$8%IiW#c0A#&nbaQskOp@Hqdw}s?TwofYGI6NW*}$e-K-g ztB^@$4CX{+Og>Y3L_Opz$_*k6mcU(?ZlSplazSvxb%z&}%z$Tkx*iHrGoN|0&{!JF zO}|N9%+#=hD@|00L$3f28-MJR6UqcCa~+~|;5B|w5t}M@r{5}Eg_~4|tRC8`c_lsC zGJ2T3d~k4RF<@yKXT_>Ch0&J~ZH=+%`ZVL%+{)nS?=ZN_L6}1923jHD<-HB7{=fAr zVT7(p%7FhQd4bBYOCvJh?X@aBIsaU+SD``>x#u)$2+I>Fnkqn9+7h)m;l<hwy+}^i zm9=^-2K|Qe>iE?aKdAm>z|l!c|E1G=X{ua<P<Jh6z@6iw#$jSY*oHSwOk*5=$F@l+ zaGPXlgbjQMq`ZtG7KC9%7I+C8D?~{vFoz#^L~4N7PXU?AnFWbz&GFg!`BRSsNgTr$ zfIqVKF`b(r0;Vv}>$!P96h%w=ht8OY;G!X$^rSb@U%{v(P_Yb{LolIT`elKsrDVN~ zEAZzHY?%k!U4g(jLnID%Fb{0sI6J6V-A8>R0ne0%d-$Q4HMRR~rDFgw;e{gvGp1GB z<~E86V*LhW28te0xP%h9gl8UCyTC0+-<CR;5=QBrUMREWaTHnN>BrZMLZKI(0A??u z_i?UP{ORPM8rQTpVD0XORNy0>VuKzVK($(0S^|WP6cJnh<c-Hbj2*!Fz4Mod-~KnO zadusV{6=i^xv4nr2ulR|%YS(McB9vR%IE%X|27UAUdKD~P;}HTJUu#9c~aYO`nQCm z<rGJPaB}O?Z3oGDF(?`*^cX`gV!E-WWLK%%?K`HrBo)UR$3}ynriXui!Ym3Y;5)Zc zhELfC@lO1517;EYqRV{_Ir+cu3HRZPt64E8a-Gd!4wd$v*So)P#opav`faFwt}$PZ zA_Jag!ZD;!prZVgzAwEHRv-?U>eq*;su4zg3!?2$3WLd)1anD$?SGRGYVzZ)fxej; z*%z#uvu9qSfRuB*L`O<HODAfmIZ6Z1ghF|}{Ew0^cY?7RM;$q%i<J&(8Z9gA3m&8M zY0D=1)g{4M>235^Qzfz`$)*Zp&pM_G-SaSG?4>zEOMBS*3=DlL4<L(gx|1uM+X){| z?CSnIU0L2+PG7M3jPD~IvOI+3OpE^+B59Nvw3@DR`8^lKc!NtkLKdevF8IVUDB+1Q zONpC%K4aES);Gx<{2|a5+Jne(JS|;4gfaKKMsmJD>oB}($mc)<p7Q$VFT7W6H#5AW z$9f|1Vo;{%x3U3_JoOj6M%_czSU-%xy>BNWK}(Ev8Kx;3H>p(MLMFr@I>i(nj)Zhj z!v<wr&K*(2CBrT7I_2!&JpJPp=1yt9ZytzDWD3*6eJo7TfGEv?UIO+HY}<??;@|zD zOVZF7#VSrrE<!^y%S%tPMDM1-p(>*of)q8-N$QNi0$?u`@9}oBQZ9^qNJQCD>S&Fx zzRrV#!H6PtYZ&P$YT01f(7qdX#L*#m5c+S|fC=FZpk}4eTy2l;)H_>eb?ViCTCa5H zVKC`HyTFqCIDH;?p!pYZ_;s%rQYZf_cG+iOhJ!x70BipNiRS@b6K@3UZNZ!gYhcy! z&j9!j15@GG2dv0|;JddnT7Po?O?&@(VgMEj1Z54oOioS)To+Py12F52=RE;rYCxv8 z@iHm$&oQMkTw0Wv*r$O=ObSNWwe%O3(`Q~V>P_0MZ$Zet(!J?;{~Jj)@0W?)j#P+i zJ$&~_6=;N5RT<K7V?Rd4_pWh4Mlvr72Jepf%4*j8T(0fcy`xwx<__`~Yz-#s9UY1w zerq?>CU{}xtSO4v1XToTfR8oV{`;pQ=g^&@VrL*f1$P2)DxiLHa|OlL+{T~W{OTw~ zXf%<^EF9!x#)YkN_8Y<(rVdl1mdRW-o;ld^DWFE7!)sH3PXHBhOjhY$iEfbv8BBm- zn2S?*&;~p^E5)Z}V$J-|i(+{<>a1z-T5y<n{lBgWjq&m^cskHwvRuJiulBNO{Vs1} zLt3?8`@Nz8cx8n?ht^}}{XDrlk+U(?{;xmY9^_!{)zMG2V1#K!LKYHx-0SAOMa#(k zwIQe<o0E1qHfaBn`J-n=ZhJq&=Vk_R3WyByo~<vGH!(%m^RFgC(=sth{a8(*g_Rwm z<1%}a23NPC)g8$ypO=fMtM`zFt;rH7o2o|q>98&!>CCj3+<a7zXbz7`naj3zs_Z#} zIV03wbJJ+t8g()}<)_dmV@xcB1jB02UJ0*NTM}xSC^%pme(<XagZU#EaPR!1T~Lrn z7(>|!5(Pt5a4hWW3kM0tLL0E<H&l~O5{@(qS^e?jSRBOcqJ5d$GeN_p$s-AN6h<6H zN<r7;B6xLjm0n?UNxLn1Jhn+gm=x{7;!Z+_)sW7YF(ksqhhipJ*!btFRPJ8;c&v*0 z?#ioV2CR_(XfVXjAAmH_j=8niG>k<O@{Vs{Kyk_C&OLp4uS9x%y}ZIA0alAA*}iV? zBR+@@C>$ex;=O>khcn<Z2B0~f4`50tC5K_r6pM<BBZ44@60h45uh*p#FF?eD7!eu} z^I38f4!|A(i#BEN!``>heh}zm;3*(1pUTe4!ID#0Do*j2cGWLrCo*>ZjhDJ@v!eXW zymY7RUUG|1EAjH4(Rz0IPGxk1Uk&A$zsg`Z83!v^L(MLT2GEnbb%avdQgUUCAx=kt ziu=CP#K}5A2;b@lzKOj*^rDbe>D>na4$TJDe+GeH{Q@3@rzxQo)nLgfwUMohznk(0 z(qK~d7hHa{ja`hT5!syFjg=Kc1x}Co=_Yp889#vcEj|UAdb1-QxV5O`F>teF=I!#F zc@~@Z8}?$b$;}Y9JsHOD2`U*k0;3)6P~MDPDmTsY2<AJ{fu?6^e~ou=9V!e|A`ZVA zf^zqzteI)X<Wz2weRKGJC6n+zGTyodyvz8mGb$D*2J`>7!6Eu{gW>?iOeOkW)Z|_0 ztHABtS5q^V$|lu;YC2p8flw!xXY<a3Ntc_4-iM|ojK94@iPpL-&!bG0kGiq}p-pgk z3O>%S7(qs0UF2rGqhr=HCaY=1UB5VqS?>6z!}iITdFlDpuAc{R`|+k!sT_Uo-|!G< zzPl1n?!S`(CUfwTJvTD~EXLjK3+(U9do1n+kGtF3<<pjZ@9j%Lw9u!!ghHnE4a%mK zo>4=rkmCT*wJ2bv5ZVt75Qqm#9+4Hiq(Z&<seS?=QNUuxhlZ-OHAY~ww71|t_rBWs z&r&EW{h*`lrac+wwR+#fpZuA~#gC}~1r+%+X}cu*yPqdTL^O0*f1`TkyitWQeGrl# z+;G|#DV91NGIu#|U+`c>sq@jfbA;yzs>srtB5R>OI#5`cZt9bvK{Cuuz0<y*BO)xU zaYg+<ePiy+iA~_$r@>+xBnC8UTq-1JVolV}V&NNaN@!pmpWtWdjN{zQzmq(xATS ztzrR_z$;zKt|^46tzrZGPlu0~9bmL_kpBs1t1IN=ZpV4cxznJY$K;3ZyoR?dPD=sj z$A{KBMSR(K(QBmi``<I&B_pY<G6^|-t&8bt)2vHY7uZ%!;e!fxV1?jD%~IiXDjyy% zZI!(;-dE*N?ki@2fqe{l_$wjlQu>%I5n=_%v=cO-Id^myjAitRl8PD!M2yXWZ8T~X z!X%4#`5+o)kwcf|mj45=mu9^yPlf|WHVoG72JK@VG#N|7SQ1SZr_>zFsndl;7Rb<T zwpGm?aqS%$%yb|+E%|s+cls%6NfTK_y0)W%gF{1KJUg{px@H$y6<fFh-vYPELCeb9 z&dlPMUG=Y9wk!PKaLkuj>YgDAb0m5#Y&)Dp(+uxS@Pgk&xIS)l&T;VG?)=yACeWX3 z%=6XmpjL!Ne<T&<onM@>^ZZLG(vxdpR`te^6_uBT59E55S06nwIj=1`=`_<|cQwlz z*nFzWVPx8RkBffxIpq>GKPyQ%2CId?{eFT<QzEk@FOrW)cY-QLeR1gr*s_;@TznC& zsVEpbgGHU$h2JpjeUUv8zPvMze9kc@qOXUg%2eYGA+&MM-nhrFea=2k4lq;}0^eD} zn9T!QC$0l4LQ1V_ICU~w^Uk$BBj-tGt1zZ{s`lVsCNQ-+U0un`=a7r{gFey?#!z4= zikZ&%b78(Eu>>n2I2@nHSx2yS-Gv6Cu}xWPm+WTZONhK&(#L^khGM#red5ZiF+?q0 zqTu%@(~7%!7ZqcNPaacMp3y}N&Uk1eR$tl+8h7?N8@d80m8!{>|I0J6h~EYj))8B- z?V>_L|8jEOh2sj!PMS1E|23}whU)=9oW8#H01zf&(dYu8sbz`=vY&2%IGvl0?#2<~ zS-WIvkbx|_zMI0KH>|JI8OGa!c!R2X3u{9{^Uo}wuhhR*ta8<JqTR?>d1Aqh+aTSH z-Z}tV>A8sH&gwsIYEaf672{o-d1q&rA=*slGu<8QC_>+PU_j2yMRVg{GXfF~C$Obx z6l9oPiV-=(v5Ynd7S3U@=z~C5AV0THmF0Dh60pfZbW}`W%r^NpxTu&Y%qYxyBt_Cc z98sNguj#mV5*vqX78!Ij@%ZQznR=UG{o}<SpqUXZnx^giV-ZEN?40;w%i~h&VwoeZ zDL2epjOA04(d)vv&wiACAGa4PvRei3-N+3dr}3_Un|zPo0}y&8$;{k8fvhC}L-cLg zof6Zb0w!HB+Ui?C5<gO$Wss~+O|_rvYJoZE(>r6L^Nv}eifr#@`+NbRpwih)cu9*m zKF|KX;_Qx6l|V_1{;DY$jjP;D^zwQeTWMm8I&w3@F+%$i6j#3<p<R$~a$anaZR^kH z%A06`_kA_kV;1$9<j5t<GzD>KN)So;c@Bkz`fHk*D|@N{=5~AaP^p0zR*#hnQO=KI zAbxas1BoYs)p8%AEIL1a)FK&bnPlgUI~d6Vvg?RyohKJeyKEFuV_q%RpyLjWKcRrF ziaeKtpx<rEcxi*Ornie&T&nHsR9Z?KhMRgpA}olhIMRK>H7rsA5E<4`;3cPoh{=c5 zzEYFc+o*?C|4@6wnY~!yaQQulPRp(`(;C<QE#XXk76be!L!MHyB@cF%$T4N3=eL`u zH2)%;H2?1<36iv0>JfhUf#w_eEM7m4mik|V_kI5{-2Q>zc3mF;%Uk!&ykXBdqavV1 z1~dcE2Y~+;Uh&epXkPDZETEXo6rD`>J{IuN02j3<=&ciUuj6dvd13?Y@$J-=o0cqH zsbM#&XNzok@Zjfqt&7ED>LarK0y(WqnO$%27|~J(H_csC4O;FBdh2p$b8CDUsF>9! zS6D;CJ^~rW!Jf=tYOP?rOI+UJR{dQ>l=PJa3{L)T(79#Qy=L0giALL_7}l_dFol~% z>27OSVwkgbc3yTOtt*7SPeTDBDg0HiPb}Hp_T=p!$=?hv2}2)9yc6ARdCXiA7$_7C zw3^DDgWrU3ByptTnT7d&ncfYWsnD%jW2{49oVGk<Z+{1$kggtU@~JI{Bt>J$sCDhw z-A4?vMDlwg=yhn=VVsgw1Tj{a$qHHyT{~>@?Vf*qt(&o9<um)K``Ix<IexKpsLlAr zlijjfHJAjJ&GxnP*$8Z1v_5%~5FUD9VznmLC|LMu{=E93lB9s42*W9-n60XwbNat; z>Sdx;@sWXYU~9wK;-70mZ-sBVfI8dqh8xT^x9ynfTN$Xh!o$z2<GZxF%P3NZXq*Re zUV_aDc^1<9EBy<KbL+RV(B!6#`Xh-1kAm>Eqq&WcecD+6Zywgd`+q`cEbQbk+JfKw z?nI;*cVxrfelgl8T`1Il1Wh>7!>~4hwUABhzcrW&u)P--0xlZh??{*`*zcWcb5V$@ z5@^jSu$;kMp8?Mzb{mB~Z50lj%z}o=z84s0kuKMHVx%#?-K8*IPXptFxv0SW#h>`L z!y3)LkiA6=CV@X+VP)fCnfBd*O+g3<v`F&x^6ob4V{5#F?(@dznq}pFondmP#%d4P zl4u4L(GvA{uFQG{%i_cg+6NqwySoWZ{VuPjBoej-6>%0kwgpYt2mo^<(2b^P=upII z`26qF(c8-jltVDKsn20?rEV>-3K>=e@QD=S5XSIwNan1<CxZ=HMTyb&)r4wy@*KJy zOY-%>4}%;`8kHy%kijX>6WVd|Fbx_j=0u=7beAH5^q27_vhG)SC&=YW^@0!^kgf<g z=KL9PEMdXFT!WG(eh%>wlh)V;UW;5ARu8<acYhVCVJy}Xm0&@TWCj8!W#R{X$%ozg zZ2sa9_d+Dvl_q`ID1;TiAtQy!7pv0KD!^nwwn|eG!?S~JSugo>_@(lgidEB$JKT*0 zWXktMK$rdr+^uV89W|xBN#>^MF6U(lTOav2v68rffcZ~ef?8*v!^`D3am%M3_4WGP z%d)cust3QP3#=h7ukg+MJ=l3i-<l<{fZ@T<hZ1D3j+ts|vo=@DbmT_;wyb{m!~dPp zd}GDyjpytQlXDv+TbB$-o>=t#C4Vf^H-3P7)%j9Sq?P4nFVI37*&FIAnZ}C9dGYuz z#1m2;hNg|3?;wJSny6xFS)0QeLpp|7r>z`}2M)h}(7siuUw@~17^;|!j@Q%^OeT)V z`kG6n*!ItPbsreEneACQb1K$DZu&x94A_^XumHCrR?6=s$34M#9C%MMfc1d>2uB?@ zphq-xcP=5F;_DmACzr_2LuF1Q%Vw?!PlJQOgiTi^gBy;8Q%s^v8W~r`0~^aNEud;O zLDp2l4<ijirv6C>OKbc7lA4~ci?Hhlanb?JqK#HR`vUe_%1fz0%1@af=O~9RG-fN_ zjEh|y5K|C*UNqEZtZQ1Qn8GX-QEI{-W02>sdtEfn`QC0C201*{*J#a@>^_gx?rvak zM-1&he_22824)^<@Q@x+gftk?F0S4B13tvjN`O}cy}*PzUjadC0#2U7*@PxuTR`XP zX52bw@0|mnQajdaT%2*;7*P#exSP0Uoo<faKaphnh~9{}Mw{GE22dm5FpxX`qMkkJ zQS(`M3>U#$Qei@1o^ZVzvSHe_zbTqc6Io6x=aXm4A#6mrrgoiIe4mZ_(_&K%{m-ml z1o|2Zh)QiVVxT6FWXNUQyWr;)2y79?ec%o*0H@dNU*FzxHXC`O?rl(SJM4T7s#-*c zWK})Js+R~!gJl!2VTcNj7V|(qza9&I9CIkfle=BgB9_YS&0~z;=0fXS14hkSROppf zG>V=;M=iY-IzfU8C0Cslqts1HstRu04$?c0fn*4`sj3)Kj@AwFVxR-54`Blr$vZ9w z>qyckjsIk<gqWtwhg<GF3&IHIH`#;2mvWlbtBaZ+Z`MjOiwTCzmAXlOu4|}yM;k$< zt`KuU4WPO=2w2~5%|Y{Xb8N6xb7#9TFjM6)b+|9;%N99F`ZM}!?}S<Sh5JhElA(oE z<B}+9ctnagys)|G+%+YLT@fHK0j2DtgGas#*@QJ}dooU#$A|<5B2dRDX3SFypaA^z z<YfE~AT#+dcoe4qn;ZZ+*luLf<5#|N3L^>Vs@e9&oSBQ!V5Puz&3;pEy2JYE=^fnX zbmrK9h2#mb0C#sN73ggkOaW3|-T^iaZXyVS8aAkQ=?k${WS<&@Iy@0R2sYB=RUQW< z&7_g8W_i0+wjfJL`f&Mu!MhXIdFh(j2FBp#ZP`;IiH}uKMwmj0=7^B-M$3wQJ)3h^ zsEp=E(h6D^Bc$;V)YJ2(eas5(H1?isJ1gq2iZ8<P+fO|#aw;}6z}D$ISCyO5#+?(8 zb9Hm1eUn8#tjMR!FPL`Z!)%0<cEYpUX7q}`50N@0CP$rml4bs3B=}Q1&^HA3PnIEv zy~euk*|x)9T=*|)&psk!@vSH6F%W5HLaZu>=QtUq4m+Wsj>>+FuB#<xIv7d&a@IK{ zDsyLMccY8!@iLW8lcp1btuPOyfx>sE)0XXe<DF|Y$2@$*<VfHoMM0;|CJ{mB7yf=3 z<R=2R?-A^4u;RGMH<=0_cT)KJQQ<kt^HS6SEu74p<;d4<K_$M$rBcJ`t=c8U##6k= zf`j|}#k<<4fT_i&<O+CF!e2&rN>O9-kOg)+kJ%iQQKe$>oXIL}o6c4ll}?|=PIgl{ zl9AuV&so2oF}}0J`A7YCmAZQB<o95s{q98_VwUD)uzH;B5AY72H1<-A^IPM6TEcf{ zIR5B1W<#ZoI@UC>O^H`pF!Le>ojhp9+TA64|8C0mA2!|RVwJ~G)^O<$EuY>x3wC*) zW*&F!!|RX2p=soqF)Xib8GMSjz36!TB!0j`b<ZqV;3l#&o!fxP7Y&^t{;i~lvZQA| z?TBr=o;GIN9*ZpnDbEptY_+S@N_bU~Qqlm9_-vJx)7$?3V4q%%QIlFi*=av+--{q% zfgZ|z;Q5?)iZCYWOs%d`(l}!2>E6`KK_Lg9DD63!<`j0R^j)maKZv=H>?d^}-X=z0 zFI*Sm1*fDiyb1`*4098k`V$Nt^)DFdC|vpli!(*<kVUxPu!4xTxEC-KSgt62M8)0w zR!#SljY+)yY<Wf6DsQ7&Wcb2s)X&N=z%_x%<|PQ&(<#}ZTthewFz^sJOb|`943+}O zNg4eN<8#$a@Lzy<ve~_uq%%tv;p*~KP2ksQTY=!uvEnmI8p@WQ(qD%sDZ|4iS(L@7 z&|HK?El4c`<|c_70z%4%QGV!li_{!zK#tWwFu)NS5Xr=H%aFy%#S9kA9HRY`^})?y zrUZBQi5@MmPBWY~4@F}uVd-W64m%b4px{zsRON6fXr6n6@vbR(-(y|2GN{F-I@;Bi zVKobn!C)w<E*i_yvzP|XL>)8FRR<Ck*+-P$^f;?#YcR^}L@F`v*?}FeM3Z!Af+mTq z5SAD!BMI7=wkENDMFe3u#(%gFUif(Obb9E;8#N$=ve%*I{9S0$Cdnx4=E=8aL5^L5 zlkXf1b5J2?Rwxnc>K}DXT+}0pCRjy$%sC0()rPsk!bM5WlT3+B#@g!`cQJaW9++L! zVD*=PP_A&NcHMMPNS8e*en5$ohWRJRF^l)5#N$q>)>VxiVF{n8aY4@0Eg?>&c6y0} zb)*81M*u}_u6J@ac;QRTE;;fZsZ!v#2_2Iil=9wqR3~n`ljr|`i$&THWpuZ_v|};O zvVO8VVa_EVqR4bj_%eIqxgn)h*pOdJ0ntD|){{=zh)?f%m(l>25B+F|_{5F+p1leI z1TI#pS0$sMFzF3=0V*7T@9YK8N6iikHAd~O!3jS{w@qzc1a2MnEC0UBp&NPm5gBA@ zh5U;ouYh3TeSWO_OqH4uDV7yhSXK<Lg939ZlSp>Y{sW<it=ld%3y5So5{$2S(M=yD zS^-?oFY||omjDy8WM%}gws)KO)*pCXAuu4zD*f5Hz6M0zMd&C;;^kPz9Q2Z?W|Tp2 z;68uZ8IUvargsn~3?>W>2-X?h44Dc9Pc5wgGDGfdi0uHuZi3A~Ado!BKM0}EA2j-P z<JQ<Mug5#IO*ZZmyJsFb>^7vgIEeJS+&ZqUuqXmba7ap|G2NAS1oSiaCoZbke*Ry6 zlVW4qIXa_*E7&XM@%`d5tar6WG*UL?<t~a0^dPP(`lZax370=~;^f(K>eqm_;9o)} z5a*@Xx%T=GL(HmM(^lgPuxf@#omPS88X#Y$3a}OfikdAyaosPM016EtXHF&4c|Yu? zLw8hPE%|dN0MwndHlLor?<E6VUHT$xrPIZCulYqv`vt2(!=*6R)Ha5U?i0L_PMw#1 z9pgn}#c}GOAy)Mi@$y+&D+&bcFu;*<jo6l%C1EJ$2~QJ*Y?ep3xgC8hfg_1S1uvTB z&Eqrl4rD0FC^hV|_AdR_*H{9LU|SyZ?PU3e{oQkapW%;FdPee;yt3O_6G=(fe8e<9 zJRCY{8mgp9MmB6PFxi>Y1WU5iZU41-t8<8i(kH3Ftj&`C`}cC7MN!?rKx-2TX-x1x zZ~?d<IoM5sX}9sv;bNJmbbRj214aL+buP^aQBSO+WAXz%b6}L;EXUTs7v$>9WN7Kk zzlli|dr!OZ`>uYkvXyE5H+F)kS$O)X4R@VGqnuo)Ccq$Aq+juu74?E0Bu|d9OOBQH zr+jQuJGXzSVR9DPgX2QhaZFr2{D4?wz>Sh5Cjaj$tpj|<LH3glv1HRIrge`F21*LK zTWAjV(Bn)0`Z^#t1gHwjz(N~XIXwWdQa~vy1f&n#_;~2q{zd{UA#9uXX2Ux3-(uo0 z2qh_1zJ|}{E7h~3?!F~J{-vnG4_Cz1f{yPzIPYOhBCv~~kpQr<mm`tDQt4wvfEx>s zojPdkV*>ZB9%Bp+r?La|hH(0@3Avq@ByMVw;U$2w|I$!w<6E?BUl<w;!OX*nV@u$n zWS}H`Bs|bq1YvH1)J~y9ps^#6z3lzBVFgrZML_3+HD7iodTN`qI{MSHiDPXT+jVW8 zqkp!RDvvVAc|^!{`;cz`a)~%$JB4H9Lu=|Yr(QW-tcr2*#rXDHbXTQoS@TC4730r> zhQ0pPhl-|1!Fa<s^);`N+m~Na*H1l710Hs3{ZAcw&P{v#GO+%1)KqNLx{c-R19#eu zM<BG-7w9*JT@0${Pghz2v#2ExAaT9(4-}=~3>g$M+DHzFAmMmv@wyw79#Z|iGNr?7 z=vlcofYt3|FeA|mlHrsOX`O_@LO5Q?NUgx6`Ubc7ICoIq#?wGTm@Gan8i_u70*^(l zBuV2gc0sIO1nqE4HhNR2=%E?b<O}$VCgp5mK(~+GD#Pb@<kZeW3E`V6DjOgvY`di9 z8YebtY%G^Z1Uj5BBhFT^`<hli(>RSr)yqP}=l<ixs^Unp43Hd%D9H#y6~q*Ctf#)v z`WkpfmS4mWrjV=$DZk@`JqXikC(Ndmq9KvOB6y}BM@F`kcRJM6e!xdJVO+kAQ&Y$- zHI(1_%M(cCD^_{%s@UQ);0*sla<Wl%*Av@2=(b}$+4(H4W7<?N{O?WnHBbV(0Hds@ zCqpWdIw;>>C;z+bKB?O;Px>2s4m#RQ3YvczmR(nqB0$h2aIDcLSFg1pX{$m$JD&2a zr0W+N1WY(5OW8)M_xm^LkefSqVL;`YM8m`JPE@Ofc}GVba_B7hynfg73D7Ln?yz#; z42sUXol=P#h5LYLez=@;tOHin^?x5=X}%VGG<;|1)blX0pW_>_g74e94rXs+wDJ=d zirDp$XN~(&v3%AlsC6r{1AJywDVej4^e*v`_XMjw_v>pEBHN5Okg0plNqgnMFezJp z#KT$Ka$s3W%P_?wFmw9!!FnOnR?fLk4jd>fDQ_P-lphm06{ZB51f_w%T=EJa2?RY@ zVmLYwuB4<h3;{e|u5dAY5LL0;XT>OF^E{SS7+4S@l_s}Y0kv=mx3<c)6YJmVtLqlZ z^&f2t1d?P0#pPJ)1*^PeW+eptZkE`xBaRFU$T(C#R#r4&L7v@rJQ;t4h1O^WqLQ$f zTN7rLs25u))~>4964>LUqE|O|?KWr*LL%=dS4rdK7HW+HkE>f#E@}bwUkwgOx7Nge zJ5B)DqyPc2`n!o8_rS0K+<vXNh?v%)07mBZR&>fGOXQPy_Jp;!SG}Lz(&{!MYG_=^ zWu^zpWPiQpXXO3E#mv^8{=daN1jw&Ccn`v<!x&R+sE?$co<ow6>^`VPTB(PJWUGCd zx0&o?UcV^C5w59@`m;jtHl2%I8dMHwYV>>x;Az5Y<oyuCsvd{Tx-H#`;I#tutD%zQ zrE`Zr6~TQ)MH)C8pGv=QMVl{ph((Ij(NW<#M?Q+fz$*yKkfk9H!G^&HKb*qw$FkC4 zsnlmw)w%CyVZ|Xvx5FC)c2H@xEiM)p)R7HGL_&AziYwKQYbxnTIz_-xF$RIq>&)9X z1B%calUk=`?VH{xZ|-U_q^Yf)luM}5_~n*j>XyU^?p%Gp*{}1vZ*8ydng9*Lq9(jk z-0(Jlx8+sDp_VbID|}v?y=mpmUK%(k$hBuHs-O(QZ?)mVCj8wDY@)o^f$VS-K$-^x zO#rYGzZ)Eoh()|dO625ro5Y7L834_3=H*ejx)QGX48%~6Fy_jr7vXdq@|XxUkKvR> zqdWkB#oC_7qZOy#wXQ#<OOqSL06V4kGR}!F<`x4N+I<&r*&6tCM>4^xp7-pHN650@ znYo?irhQ;`{i|pbFY(tLs<IajBepP_Si%r8^7lbeJ%xj7gU|ABJp{6ng$msu)(TA0 zAS~Eem^64Ys$RtV#6C0yBreGYP$UQ*g!BCX^2BTBoy!fu5m)?S{Nrs9H#H`V0mwoI zWm6C^T5q{_Y7g$lsBz9qRc!O6_DM#=Mz)PB2SI40J~9RUEfb&?1>d_yf#P8eh^_!M zlAsxWa=jx*n#wQpQtL}xV*@i*?oxA_{=bVins~klEc9+V%5+)|(*~hhX%U>=-bam7 z;!gm+@}p62K7(B{UEy>j_uf-L<($t}IAH)l4g(qxA0Lw8dY73lm+c{-h06ibwYQuP zp2TSYX>Z-eIp*iL|Ab`7A)5fBB5qqSJ7_*%|Jc+uNjFIt*&YjS89-z{1=d9SwJPfN zLOP0QyzY)UXQUN?LPpQTh;6!W@1T~(${>JeextaA7NT^A35LlkjDOYbae2y2%t?pk z*})S;7?Cu~EHZ`Wdp%%N?@1=AVfqmgIWBjDLG;P_YH)P^$)_scup)6e!iI%>a^8X? z-v2tkH~xw_l951NEInb$OijR*K&7CT`drJAU?~J6kS*PWmRmO6mQz81&4DaWQ{+xA z_wMI>OeSmi4emVtV_Lom>W8T~Bx?Bm5bh)IkMD=91ks*e`d6HwuXB|Pq*K+%xFo*c z|MxaW!|LJ-S3IVZt(ra${23(`XymbL_>-gC2rg?8X-g_mmvA8~C8CC=nZ@rDZZESC z)#X9aYi1X97f&?VvLh1SUNhgEMyGyD^H^y!Cw$7Bdt4HX??s=#2A^Ah8F8=ID`G+e zaqV3{!VP5&H_aaGlDLo!y6kwbFK_9q6Dcy&7cAUn?5jh<v0@&SAoT(#9?R8B?%b+4 zc+7&5AW6tl?q?^&5wc6{K6Y5zus1=hz+@*K^iDD!<`%>Ovx;<&w&@E(+k}F^%-GU2 z5CIjA&ryt4bV+cppiNw=1aK2f8VDDZg6Kyx_QO&)u=yHk_OI$FlP1gM%PJ#-O4P)A zVk?<uK`I4iT&3tdQWO9z5aOnX3TmrP`vYCluk53tG;p7E+cB0!dF8QbP!Z_Uc`{x~ zZ+)A{jgPpV2#?R1qQ;Y<vhIJr<`noO(z6fXxS-Gb5>SAHeFex6yDo=FAv`ZbaisqY z54OCSN(=y`2o(@4zHp)8NUIRQWNFU1s)ik+OF1MZOAsldNqa-Aptq3{GY{D6C) zn3orHGCS~X3Vg<c@T3%z)7|gmbXq)hGk<TPURw9p6vJ-P5o5Rm`#zB2Pg+9VP_nGd zq(MIP8rV`Jm6&zs{%~$7jT-89AknDuw&}G;xp87~&QbuGm!=xDg8Ump;U2o=d&Q_2 zzisqOjOK4uMbAFGwKL9Vrs$v?rf8$Ws3InIkE-hG>ZN7hK$4rQ*Ot!Yk@*~^Gecr} zaSggMe1#Br=0vJ^n7y;Zni`QewBPSOmyJh@vQ~B?*-9Q3Ag;~nd&>-MUA8~n0g%2W zBc-KU_^2>u7%VUIj7C-Xl&Fp`CB?R!Sc&_c7{h|msVK?tWS@m<^w{<coTz7Fc|)Xs zgQ@t&aWfgYR3!}!mUiz+N<>3ten_r3v1nS#R(%y5&DO`o;fWKaXQi_o|Ff9ie5HQK zu4Tlk*`OQ>pIE*9K?%_5{K*oDFH6!f@c2HNdtTL;FxUZ-v>|jD;0)tZw6uO2CVEp| zxT}@dF*?)1TO7fb1955=qWHDhFng){6+B!@`sw4|OKl-1XRF>5e8Fwb^&!id$ni-? zLc^Q0Xi80NNu6g))lD0+?|WfuSZ7s@29`3%fZSxl`b~8+vAco8q-^bi#Kwn~>@V+; z_5nqpBfrbq2N0cfsGzN~!SSGZaAeOp%^w;AC7Ul&oL%m9?_{<wdEYAp(Y$lxeQOe` zngRj`QS{^WAuJXa?>JG~!uP>=qNQM7$Yge?EU!|#mSg@YLUN{*gz-b50-=CfKq{cK zjA)oqcRmm?mvtWgr~}gCy{tZB9)YOHQ<X_#S@pM(D~wX)ertJbSouCQ>Y1W30jfeK zaiM90#%t>AYIX{Et<0=3Jh5Go`Vsp~?=6?OTY5=ly!Ne_@YnYFhuX1%4@hE#=--xH zd)XIQn7`yg|JVSz9g}WT;?P^5E&+!(V4?t!rzPi4E@Xfx4CHk)r&|jQ(m?dZ0#N)8 z4uC|Af01**FbpWiaIm}oj<O0kt*<UG^Ed)Tc@f}+KRK@LeO-2_HEwqu^jKR6{Od#s zc#JBlSv+i1R)SaR9-5yu$<wvqJfEj6HJig;8-G`xd>P$yl<QuB*-f$0<-{#b3FHt} zzg!?Oz8HsrllkR?a9sN#V-MwIR5kMntvIt3=N|SMAx!Kmw;HjXC@fX*Xb3wziCJ3E z?612%!ZEX0I&s86jGECYYokaiXZaZg2s=HTSq`HdV+>Q0+k$akWw0HrGFO}(PQP>r zgIPof^SkFM8W_tcn^MkkQFAy{zXA9%7(A|cDk3he%&^UI@Nes@57~%8HvtR#|Bt4# zjH<Hhy6{a%g9oI$yGy#eTS_{myE_D=ySt?u>FzFRd=QWZ>HcotF~0w2oIhuuz1Ny+ zu4~>LY@a`l_2zQy@}#PH=k7k)Z^HNw@-^kSE$j6C?|>rzWS0a=p?l%}QyxJ#Y)z@W zdi|vj^&dOYEDidPH4W18l3NFP<<`kr?{1HE9m~8yGB36nt$YtwBfnwH&Q#VP50iNt zbWM%ZLhO2s*dAvaV1AX&6z)guK#I^~?*k!gOy?#j&_PW$XvV&_bsOfGqMIlxUs1NO zI(JC{oIVvSdkYB772n?8h4d1{lsY8>rgXs#(8>t~X0&6ZLg9lMxItNo0%o3Yz=Z}O zPsr(nu$f`gAqOOgZHJI|q|?=&L*;K<{x|41Sy9iH{5!p?&%d)*DanHQ3ELzP0o`L6 z$xKdhivacM18439AT~h`yMJ@lSgN5T*~@fWc2)U%=+n$Jx}lJZ%e3@reuBptrZu_7 z!iQ8vRXPfT#|)R(zOSwR*K2Y1Tb@VYAcDjD@ZUP*F3*1UdpMZk^aC$&UpI}#5cDoa z{M&-)Gr9l+J>W&_{_VJQpFgR|4G>+gf)w4uvb<byTNEsT@47tvFIfKVj<(YpDdswT zhM&P~M0V)x$}?=A`4R#9`{#_!xC!&*S+kOLqn3SHSFZkE_q>9w*2KE))8cb1vWNC- z`(NzIFa_LR3FxC=oBvJDIv=n2e~=DE@{DGNf>ArXs@=C&{}6wx6M?A$s}{l%$T16x zlny;BAC$azMK)j{ERccnp`!S=T*5&+?3E-Y3!w+x7IdgGYn(NqXcfu}#H#VEIO2_7 zE_#_SW#RLf%t}<XN!PcdOgEF*0n^e*Hko8NC?FY~CV5fOxy<f2C4Zh`=rUgvdCBjs zt(x<+F0`f*Ny{9!TPGbH;Lizk##Fikd_6;n`3k#yOIi$5TOHF<?@{{A@?%3@Tbgrh z9ck0VDxHRr2!BF(?C-M1Y3Aup<DyStviYbi65#i=RK!TpfQCD6p58>~_(oEMP@azt zJwfSnPTAng@#|u4Y)rKlXPC|D%nB8R9R9i2mTm3<x9Iw8xrySWyJiWl#mS@o)23qz zjdzaJ!MzSa7FtK#LdwaQcOjQ$g^7rauu`f6A`qoS@OPMdC16&r&tXLZMbOA`2q8^7 z;-4g7+0ZdMksV=K;V}TDKp61V6CsPgq-sf#W;iht4RU=Fu$)MxLrbZX-&>5b`Vjm< zI@TJW-dfI8>|Ks*p&7fXtQbHT2(+E^zxekRR94L~&KynEJXs+49H%?&CAeJ|xZQQ$ z(uY}A2$OHyj1$qkErDxdYc|5q$~|v+{s((AXJ=>lL_1(H{|vea{lFshU-FAV?FcWZ z4tRK^MI@`S^gM$Eu-JbovKVhgwBA=!AJH%0zwW&6XWiJ|{uc{u#{O_{{<7e(^~%)} z@`}XxW;Ry}L%K7(Uc)W)AjNKLd2lW4!65#8^V9pLu|{%CK8#W0gBShPSd~4+F2xtx zwb43L-AW<#U)iN-AJ9>B99ou}NO(^9Wj{Zlkpl(Pls2WM7!+Bk-7J(csB+>v@z61R z&@!0TvTNQ_*U$0wsu(nKylTP6&eJ-WlCm>d!5+|psR{=P`lBhF?xLQ(0zuTIayI}g zmQk6OpLILhe^I`OYHmhT`r(L_=<(z``z}RzxkCVBVBy9Kz4WV&DX_W@S}&u>$=BA7 z_+v+PDfFr;%a8bu!S{FVf7cs2H~S#E&e5NWw8HTi(GV1ohi$mzp6qLlEtzDjY-Zbu zJe;%TeZOYuH$9U_B9oswmX;ZAzXTEwku0t939WN~cHoLwg7GQg1Hb0xD5|X`1x7PS z?hmNSRRA^lhj1{d8^jWj2;km5eW{lTHBzg*H0y8wxh?$XuC+K>dPG_l<8!<3s?(qu zU)Br-DJ=c|EV&8hk5)fvx@uWvL=+{L#6rV31Wsrm8j2H2{emTm6N<(WiU$mk!}C1% zg2tRmCJ%liG7hFi)Xzs0i3{3woWapwESTs1V+cXk{%CA3RG{^kk>ZP1$1M62+ZYP? zus>?ApFmDtH%pa5Ic8Oy+^+!SZy$&PH?TrBY=eJm-_f*Z<C&7^FQ-=zUS{n=x%oB! zqB|;lmvW~SmPar+Q@XAV-vr}0z2*0obN(#+R@c~dHTXdpJbUK>Zy<R==pRiv3=)Am z;?%SKku^^ZNo`A`x*5{%_8ExSy}wy8d>_2?9vtGLmK?<yJf(rrvF9L9+!bSVq^aEX zW4kisQ^is>=){Aj&$5SE`GJQsC0o~iGt>RfrjPmC-h{c4&7R=TkkW9!tu4l+>e+<< zW+r}yB)qdgiD7q?JDBGtsfk(nq(Ms;ZK91OggI(P`)+%RWlil}1SKVs1tR26eJl-M zrV2Ziy>g=*y9Bm$eR5FpZ=OjvPePU^B-6oq>^hN@VsUb!1Mjdkg0NpyED*i<8vtDf zdOGt_xx$Qgx3n>%7}x1jFQ?X@s^6>4%VFe!ie#_qg8=O}O7k}<Fat2*fOmb}@3=jR zCG!uV7#jGRu2xhd1Fr7B^2_CV%Ca%gs0!+u0~ZgG;u(7MDu%Tx=B4u7qdJ;JGk*jh zha<&}1fjUcn^@*F6BZos@M<XG*c>deZ%TZO;y<>n7W8%nnJWsfumH3*GYFfy%A_3+ zY5n~>A2idp-rl+w(dJH-UJbFLJgw`ki$bjCM+SC(U6il5w6=I>H?F!CU^#&vl?JDG z04o&KhXD~WQWFUYnKeuvfQ_}HJlwj^BakyNoK&+?0(J+NVnwDG5_yJemTe3hh~iDi zE6uE?VUdGd=H@|igW1LH^WzmDCm(JTsb4IjlyNPTL4@eYbw`m8yfq4ZgPff)yKFYE zFoisY9X?_Xp`PYkjO&Iv$5k)9FQ1_Ln7tMz_S>0~+M`-vwudi0u;IUNCNvWTMoxr& z=TC2)jg415&oghwMyzcCZ?9mQ32M8r=?R!RSlzni{rYeKrnxpP?_U1A5`cLOxc~Ll ziLeKx(~CknLGu0o;_QY&_3eyh>v^cP=jzVmY|A1#rGpvDxW;FlDgKECn^xgS@T<!h zr8dE0(3Q%yAK|pJ!Fj7a8t<O{&=#p4BioRdb#<B<t4>x+IZ}z;>!WixmPrLtycSFo z5>hHj<3*!j8P@C6_346h?H+9dR^TVK-nwX)bXqv5K_ruRu&k<%C|kj-I*5HX0I67C z4s9$49<cJEDCt2!ZG^my<Ow%OM*V3{?PUoTC6L3B=N?)gtw!W)&_G&Ds?~{)wj`Y9 znXqDxVbLxUch(S^OVhl*Be=+%MaMuS+Ds^~xg`4#<`H7ed#A+ln)mW@+L!NOSQ16? zjnAVSthbntp@BTz-+M_`+UBQvwN#?MRA(C}$TeZb6IgJ^$f3fjT}>~$$-A6ck8LXI z<C|=O9=9a!CIUBdbN&KCv16TH4u%=tI<Zi$@1VdFJe;i7>JY$_qlCI+6K)I%%{|Eb zR`vt!g$9Tyl(9LwdlH2_`tLmDCPyATbdvzHuI#)5zB0w`?r=57(NYVSX2hXnMgmz< z@v7KW@i3Idm>Z(dMiGJeTrw3AO^^se_D%%c3(U*8wernGZtp?5bJks2!eK}}8N1P_ zmWw7jMm<%)<)vbZ-OhAOCl|=VoYb3-QYi+S;UwjfS`IXMvnqzfU_9yG;yRkc<VAn4 zrIheW`M5VfjQ@VQjWXn>kqW_g<Q*yREmplVpk<N@iY6;_=A~fOpwd3kXg5r#zx2F* zd)*CKUt4>9TzUPyYMJ-)z2}jE;uknL0#!<XurJ<da}q~jBaVAJ-F`g<+iGxg3K{^% zb>07Zjamb)|Dd+-hd(B(<sQ8JH<kBh81NMEe6$^q!2mb*mWD*%%%v!gB`la)@7U+D zecWc5w$m0<c3`bdkCB&^_k$gs*m=GRR?&=QX#M-*D^tLnRz)>Zb@d>enr0xCj!Gk| z$X;#PuW+%&UMvK~QN@o+yzW{OB8Rp3y|i~2OaU^S0udV>CM?)Or82JjF5cb3Su;rz z_~40ii?B#)pMR|(IKA1u6O*E@%_}k8&hGm)>q6$r1|hw#MC)xzhuP6AvbX8*6S}1n zU^!`gNLWT{GNA-|bB`;#!w&kd)V+jPn;1(tgPu=MyN{8|r=cFprM<!0ORI$$m|c~W z=+I3BS}u=tOUrGO2ex_*K0CflWH9Cp#w)w{udbC^q17}cf8puqQ2AuMrele-G0kr6 z8*STut6-49zp)>VtW)xNw6k&gh%u@VTwxn=LIENse@}ny3W8Wx0_6(%%+Ei5BhlC$ zy;m?{C(m4z8xUmAV<9FM%AP7+*E7bwZ(MzzD<ZQzNtx;S+XsIa8|QC7yJ)@^AXO|T z6@(3xlZ5Mqi0(Wg@Z?U$#Yr!$q6D_7_cf2=q5~9=$xD4@M`?Plyb;wV((1V}iE$?7 zeCQVkK<MJc%8KK=u{=%**<HX*Fel$68~b=EG-<(Lu65FwgdAc85cuat0#a2-LX`rY z6<Mwj;$=W=!P{CoZCW*XwxVm<mcIOB8jCS~nQwvYJ0sDk;C@sRtmBYpPVkEs3NU{E z#BNo`_s;YL1g{5NwZ0vUIo>bT`oDl1dS5wfZ$X_E47dS%h-fytJ^u5~53oVT@ISy> zjliMP34A-jQK#ed-Q67s_~?1QfZu+d-tKvr$dji-B_a{k{93}r4Bt=h!#9wrOxD}d za$IwInwPxP<Cvw$hh7ceCb&`Mu;;mj{JDXcx7KQ<lAnycio%Y?6(X^-v2mbAsBQD5 zJ<I04nXpL@ON6!53vwJEk?|z@y~n~)m??5MHO~sVTJ%dg6>Ii!MVvV<3i{_2a~Y>> z+C5oBF-J0OLh0<M-E?IWk)R;b@LqI;zULi8Tu+{hzP(;_9(ltkM03*`eZYB$+<i|) z=WA&bdx2xH=nmR}8hZ|;Et*Xn%4{f<e!rdGFG7x(m%lS~Dk&@n2?DC7G&KxxA^w{A z-%V0ZtH8Ss8@%gsKC68Heau2CiW(GT(e}VdkkY&!hjPcVh?a*#q~hZ}6~k`HAR9A% z7uM4E`0-2OkJ)}*u4=T$^OFTO*%lHOlBfN4=19-eqLd7(e-&awPImT2x1XL(&Lx)% zbug(J$_%?L!EAv1w?qI;q8~H+k0-W(k%pX#3Sb-lkJA78k0TEudw4fk&CGeSe=~iU z|Hcw<dK~Zw=6R9iV^S-)yi2Pa$lvDwxxKx)CB*ZSx{xRJ?o9A;Cj@?A4v}3fh}%mH zuKK#)2&~s_>XwjUfNX_*@B@4Td|K>MX{>oqYd;m5u#qYr#}8?)<ixTp>J^a_;D={1 zjLAqL)IcwQNvjs6;jW4$Ip$f_#2u552R`}fyNl>x9=Ryi{mVq>o93Nz$|^^Sqi>E} z-LxK=!BV#C2E>h-i$AqvEb4~lZdoo+S94m>^knO$BLK`&I{oS)^xWw19GB<y8petO z)k}GQ_vELoRvW<>>UO#Y@+$n?Y-}cg7jUBUcG=T?dm3<Gd%o@c9$+PSwL_+fdM{y( zqq|-|@%OzO(G8|v^vG#zE7`j*s;jnWdK^idn4GnnJtC3F<$?Df!wDPU$1vWGn+noq zT}lc?_NXSs25`}X)Z(Q!l-gC9767wx*ytcgpu*^2i8;3a_-)cF@^|QRP7INJL`u;r zV`k%26>^QeBkEAccX35vH%G;X=A!T9EPx+Zs6$?M^p`5&Ro|hLg<QdH_cNNF5SoA^ zFXQ1|d7E?b?)LB_;t?0Y<cCksh@ze^y>~cCc+z1a5$V&;6^<WQGiOd$xM<U8jqw9p z4Rq}3NB7r<OvubJ!VPe}HM50h3*K_v+(oOv8t;}(T<rAo4>2L7keW}oE6vSIc2-~3 zR!A^qz8|0HXD>DqdP#-VG%H=T|KZMa=sAMCO$!lel_hxg9X$N->i8=<-gx#ftO9C# z>egUTNSnvGeJN0ti~-uuUfZKLo>iI`P(C3{*m4^(Vu$pJMC|R0$sq>nE`Zm@pFau7 zk>~BQ<Rrvs=$GSr3;};*gr7FfU$=yPpZM__UGQj0$+z#^J=|L#U#hDwD#~g=1Kas< z3_}DE@#u%IEFF!`K6zOOf$a{kelxPPv2k$lu`CnLlLno?cTWXRK^}KoFjN%#oI4b5 zZ9m%;MNf4`S1Mmq1I$tI^w>-(3I{$b#K((-%+qT*xp(R_CXPwK;HGGwJ#F1`Yd;I8 zNTj83xQqTmoQ}loRwAw{c-Mdgn5t+NuXnD{R`GD1e;<r-FaadeP5d5eG27PaJ(;10 zf4XwN^u2$5s@6LXxP0GpEp7Nb|6wKXem<@HH&3kf5h;QYxYB9Z<-N4H9BO<Y#^M{q zcKc_p$guNaIPUFc#NqWX&d5NKc@cWAoPKiUF_7u|7p1kh|H(EZSmg|3mN_^1YdcBD z`v4_8-R~sRcc}!W-+b-e2B21r7in>#t&_>`BvNRkVby6x7&5seV24#~)R3I1v^2$Q zC!I8Kh}g>Z2=QS0+M#JubD{MQUob=}N3u50q8_9}C}l7Qk@hjL5vgKLN>oV5$(>i6 zO25&{HmOBNwAaX(31ke4p9-3Nw2vqXO4eiCmx=C0XT7LD2p&kQT-Da^uQZIV=%StA zNh@p8rwo+2@7gjtFyn(!1CUg$P~|G-p;1fgnZ`@G>p#+CC2ORinFo*;Qpy(6g7lEc zY$Y5~h(_*1=UBwQ%WOgWpUz?m*O<9kE7x0&LL=%&39QX2a+1vM3o$G-M`IfnU_6K! zN4ULjNNDwACg|jF&*fHL0Tn&hC$pQ=e#}j3K;@I7=8z-!c;{4~TwH)#Ha69~I2PJo zxd%Mc6$cqVIKQ3jy1pp`#mU(U!)kIXZm7XU&02Eg1FN>)_kUQU$R#NA$6TplLEQM$ z-?W~;OTw=|4j$mzM`;67{XdNh_Tv#;KZY1M1Oy!XHuLr5`QdYC<>Pbw$EvBPwK;uc z4!(XKISDb-#AuLrdvy)}`myGiR4lPPDQVSZ=9GviCb!L>E_Sb|NW5Cp&kJ^G$0TkD zwMO28rOB5nHS=W*ZaQ=)n*%WS*NlRu#$_AAgjiL7$T8d2P%SQ51keB|9%I`6S)Sl` zd5%oihF-0=M5*oG+`2+YUG+M0a(Lzn6L<Er$MhOBW|A;_fOri$<og#OH3#CXKsV8& zhx*P<5D7g+>%8-69TeVQt}TThHfLVXKsh>KZ+r=~(`{b~&iH^5G^(;{BIUyB_5J-l zn3wf%NFe+GKKNd~zQwXxkAX+X=n(BkSm3zr&Dx7FsM@(RVOU)J&i-sHFXB2!tlP!Q zwIzd({+I?ySdT>Q@VB}CQeaOQn!JriEna)PWUS%YSo}PEkRo|<7%Gak;lu5b39#zJ zGR4u$%Y)_^o1Mkd@b2A*KMW9~pm8lLK69vGLgaXI8B7Tbazv-ZwnOSJRu9CHg$12N znUc`u-#q<pk`PC;ps&bjM9R$(oFB?zLwbj1q57&bVYI&lhbVTX%s*%+^h8zGW;UQS z84B$x&2Hc1z$Yx{Q##?GH)(y3BC;Wt+cuT&uHcq0c%e^I7fqy8qXvmV$l(LBJtS~J zY3H6ldC&j<{&W{*E8<(}i6-YthHiqN#!t)|f67R;h>%c3>GeFqp@CC5ysfq?jKQ@g z88J;Y4`S&0&7G+`%NFIjyeiHAJ*|G|?{D?=C{zdxu!_0HWnr14`A7hw_zW5MZ}CCN zbqsyWwQ1Q$%N_dysg|bj!PnoJ9U2_d1!|<K$npyCW=v7TJ!;57|21&9IAZ8|n-YGT z0R4BuzW1!>Yjf;zBv6Q)f#+U9B&@?=nA~mFHl^+W=+rBuB?~Ug>n0v?=E)|G!yun> z4Er7`3c3GvduwD_b~nxM0lJ%HFuXiH+3^)~z4oOrsZ=o)4`^=MBea8m5_b&D3i<U} zq*q;kQ$xz9Vx%rHA;o128}H2gpFS-mH?&)yIDY{HRk(2OvQq8pJ>lJMe*4CLw!I_P znw;KnWsSd#{G>tOEC%E^WRf8(nIS6%@sywW6=*t%;gt!O{OFFSFR}Q^o7$@=GLAO= z6%E()o7L<00I=ljc~Qi@1=F?cw|u`ic(5S!v!d)$8cgEsj@|znczRDP#3LY(tw2-E zwHr+~!P0;QG*OuXSXEN#TT=DA>Q^?wZsXXfBwDK7B1F{w^+d!jtxGXlcM#s#CoN?; z?9Pr?F)jrmZTvFcno7nN)gO@5pIs*d4aS;+ZdHC#PhA}0HQ!>BRR4oOF^^^$DZ{|P zTn<z!m`6V8b-qQVs`bi=7m9vSkx-*A;5z7>d{0d%&C1FSlEn@-Kz0yf@D>#fuK{5n z#Z*ZM?2aP>A*-*=e&K3yuVdt^jdlgpx}6P+P)Z4))1!^}yLfoB*Mo>FE;+TBi+pCk zz49)_$LT?P&f?)-Yx!-w{v#iil#j262a9asFUQ|r@Fk!0m$Cl*D=^{yS77pFBjCG8 z77S8-9z#On5-30=hHGL#pe?IUZu~kq(-N%>-l0xSdIayPgFCeD)pHQmc^@~X$dRU= zLBtG|jZpsdguv$%@qdE#VX+3<>N1v_Cfe`d@QW~{eD~$mu!bQMr-SKJ9wi>jh)I!* z?sJZBh}|!BOemAjR-cK|?GBrlK?FW`){VE|%vHl$4o__C*Abec4<*sBj8=+%GjEeu zEFeND;07!`Ee{&xe4P=X#8G^=-8NQjojg7N?y-O_8j@J4e{g8?08V^q)uxX1JO!FW zYzD{BtKRpC>C{ONps|5BXLv^7syNx1FGu)lG6^1@|2;9``Pm6$A@3nB?{dDgyOgya ziKY6{TjND}m0!l{dpYZA9_d^oXoO<Ag2Cb-8dc1kY})D!Yxn7#zCc9P1Kv;LSXD7l zB8X$3Cl;)dyi&uw2)eDh8A>KifRvnepk?iHKU%$G3a(%@Ls?!XPiyuO!=#AtZ(5Cg zddaG~IrT^JR2eUJFb;PFykPYxE|@}#+;n&9q7x_pa#OrPOVtFGpq?mtjmYngy<)aN zTD;3=_3V0}RZ(?x=+?^_A8=z732XYpVXL4!M!iCMKa@dF!c4!+X%<pyZ>Wj&*=l@h zjdsy^Gyr!%!wn9B6^aJh5UNbmYDz9pIr6Z9*j^s$0{}D6&W5pS{xt~^OdE(arE5<9 z<28AcJ*3Yj0qu7nL6yw}-Et~2BmSuh*2WQQNDoycH_ftc>*nY)#Jovf`%Kl`CB)Ij zC#$f-MJ;l^A3cIWlbBpiUQh|~`XdX2yJ|v)?Jkd4s6j1wPbE8ZW}cqQuedSN7fic> z6XS0tpMm^FWjG^^F=$mBz-j>6HHwp=oP38l+2PYsmU(EW+PESNU^%jF*V@3`SIqlz z<XWhm!XIR@IwL3Cc9K!ONtx$E;J*A%!=5}oYBeH~)Z;GtQq4gN4pjIUetHUYdz=du z2EnV+?eWAOc$ML{JOt?+Dq{&Y4Vi$x@sz~w^A793ZU2r%^aw?U%&;e}rv$7F=u&=L z5PsRm>Ao0JpeJ>?Kp7Or#-$IvAUvNh*#vbd+QhtvNp<iDy?`vyfPhOJLvSj)2Cg{< zAd7FiZ4OA&B<U#RqeBn`z=iGrpYOu>iix41MXna*Ymvv+!$ry`138R`xVQVFRom{y z1z}>iD;{eJDM#_6H+2)jQ$)4Q91?k$Kwc&6C$ef;R%xRjhYOHn?F5WJ<+N&7?MiOK z8Rz_6277+V>YU?fj-OK%LXwshb{hwGEC16*O{Uwuya#h{@tTvXp;T^zCQv9XU^9+_ z#ydXWywRg7=0Bt3osTDy3P>WPy-j_SS8snR>A?k(WuRnANV_;q+r$LXZM*Z9W*%g; z*dXy1*J9(4xbII@%>LFoR_mn;Vk!R}(@g!+c`<5O%xX<1hzZ`O*5^OK)L2?@u&a|C z|E|4WHU+1l#J$X8kEgxe0E5{wX=5K55rP@NlQ>H+`OHz6bIqjUFQd9fO2~DjO~02s z3qvku*6*~d0S5p?(vzjg)h6+m0%{+=QiY=QVfCh(>C&kSV{NNczDuO;Jt#@H8wwL! zH{(#J|I^SJy4!2SA7~Ze@5&;FQBv%vFZ2D(wn6CIWrf<w%4<8HU{5`VI{sl?l7#d0 zz^o;T;EXt?#e9uw;-8k^{|0ut{|d=niHIZ5tJA87lMe(hEFy2H(7@h=9sQ?uU*A3K z!s#v!{-|5y3wCSk&jdA+7s&ke<C&NHFPc|ub{GL`>M&dy{oLDLL?6%AKK`2-t8~;A z;)M0uWkh(LYS@l2HUc6aZTXL@Z2$E?K6lLM>7QHCfzi7ATbLGB;#0OvB6A{ffYO|u z5N%{PVR`MUGul;#4v!`wSq*^=*Y-v%fG_7q&C^ot>)1;7Ef`~CQPz?z$o@=+w?i2U z!XNv3F2ZKKa(jAuT#lE)66}Rl79307ru94{k-uD*y}kbW`gP#}R)zp~-ATVMC(Y1* z&FOw?Yg%3T^BV{Uzgn|#@I92T9dr^a&h>v>ySxOo8-wJ@2s4gl*EPh8YYs00&bpI@ zwJp*E1%zBNCO%nCh)a5sKM<*utc5_jt1VvvTG*g2NFm+tV=`e;UyJ=5_5xP;l2j^T zrZKMUWYe9IG1+Cn$q@+7g8_E3Ef1f~{Z%`Lkf4ALXi{WJ9M2etU3gxnJy(#<^`zmv zI?FnADqq$_5qfpHh^RWCle*a{wgAi)el|?ZGZP_55H$JZm+&`_lv$XpVO0PE(HX~& z#R@49nKirx0X@qnS08yEbZi1J#G$EPNk%_(n^LE)TPT&MiOUQ~OLDePb#X1uR;d`t z3oO4f=xPY>J<;tBS;idyHicR3qRT5Jp5&oLO_d8vcn&kq6z+{emN~o*fXxgH!N44` zj;;&E1#qCRIc32(13E{-pz@OF^yGxlckGIPkRjGq^ZM@=WR9FkP0ntT@O}k`jnD}? z*RTKlg+0xN;0dXdtd-vQa49w+VIxV&zT9AoqIH8LUkW>(h~b8eS52MBXe1+Fk-`(( ztkq?(<Hc;6pDdx#BJpo1>|XG{e%$FlE!05OKAjm-O4>-ER`M<Dcy;2=F$y*7MSQ<K zHOT;7Rc<xW3Sn*R3s!eSOTxM-6zV~Re6hCzk!cY{hwt0;tN3b|<QuZf{TfmrpO-90 zc8XebJ@=KRWzGwH)7SST#6(1NR8abj2ymja20(toLs>kjH8KznS{HJ`P~KJB*ofQ% zb997~V$rt&$Jz6n;^;)m2e5&CJ_vYC10xZcC$TJk7@;&P$p%6Kd%>q=&*yy8>*@6U z+kY&tKkvGt1&l2%kC6@UH$bDn`NE+9g1~fWA?3U5dt2<BY=!R27~vn@H~A~bP0O;0 zJh5%=r+)(;Sl$*~`JVdT`!64d71dM7ia}Ksv8(*`%=zU^?bEo>d>b0k`w(@kV<RS( z)<Ft|8yK!VR39r&M41$c4(!Au0mc1uVFDXJT%Q^;?WI=KJ+tM0ceN|8(bO&k)l$Z$ zsX+s#jK}e)dMLC7&)F^=(D{UJy@YaK<E6(CWEjYyr^9x#ou+x^=Qgh20)cq8eV$;p zT!S!N({RbrjUwJ!JRI(EhiNlM<!NvYP0EeY2U(6`x@}o^T!OA^kwj`z13vW=<!rHR zQiT`kyc~mKr2#>a^@mR@U3wNonr9(G@9Z;|@D<lH!pTyx`W8oKzRXytPgUgzoTzJ7 z;^Ax=9MUtO2J(5-6woZDL95h6hXn??XJAC9!+qZQRcIcB`X4=OK0<MLw8^ySsfvI+ zMu`S@S1)~Ra5N%Z@?fM|?(!(_0U^#6I@5k+e>y)K+t=Fv+;sZ=sh?Fx%MDAfO`*0~ zIz?@_{^I}4aWO)9Hu!Vhx@SV|%2?t`C|v=qY=O<dSY>r<(?3kSUI)!gqfBQ`IFfDJ zbB-LOM*VGw5rI&jF2RTnMTDfU|6fbJ^gky=zp<42e?2cYL|pNw!JHz`r-!c}W1x~- z?NE&ad1957loX8p<rlk|J1QU2|Mu<W%a}(^9To?!tJ4d1Gr4BH@AwIhqx~3@yv%X) z;T#!Bb-s%fft3V4sAV>lL9bi+`)s(Ujy3)gz~P{sXI;%)Sv$W|_H!;-^c9+EIm2<m z%-*&6Lfx07w$<Um5>?2_kOcl--+K0}stcbO3g6u63s2{xrHT$+@g=|c_nbfZ?>h`S z6*uFfz}0-9r8@ZbkfglzytdNq<mfm?+z)1xsA86Uc(<TysRAYbTmR(rRN!Wj3&x&( z7*`J}L>2Sxwv|Le6*HXJQj9L?c{<DycL03wcWzG)z!oWd^SpmnnCGX@%Z(v8^CY}y zK8RJ=_qzZ7nC5a$kn$=E1;yC=hiOw72FE+s2&KsaP@|(NanC@OI{FBnWfv}zQGakm zAp09C(4}>I<grba=vavtPDKV_F&j(X-2bb-&Jb1&pnxHhEgd#|a&qE9drTr6Jyud{ zI$9{x%_7b8%<<IKW9aq}u#>y?>8h><5v_O}t;s${xwqCXw<k`nm4`ZQm2-G?BvEV@ z{U}DNkud1H`YcX<sDV<XgApR>_fQ$d=FrtkuH5`WLb*z%->ihPl(}RpaiNc4R0$Fu zI2RT2&O+V%ZYZ*ER~&+m28EBp-KXG2vg@F?YrP%yQ*%_Zu=*^%x5|dvCLrmqKgWMV z(onG9!^j@bqT9wLXO;M5B=ZM)5UChW?`J>dE5TMkp{A&amhpfnzc)L9@S^iLuDE^+ zzBtA2Z^gx0su&}3)+O;S!@R^fgq4TM#rmwzQ$KMC-A%9&kUszTZ{j#;kZSG|+T;qX ztssMj`CEOIuXD6MtVs9y&FyVc61*T@T=SwX168%|`kq;Ko(4UBqd@O*z*NawmKWzg zCJW)$r*4@1LfUy<G`RKXy~Xeezqkk`B_#pSWAy3B5cV`)kw$PholZquV%n=k!|iEg zS_t}o%@t|ysOK;0L#gV;YF9Gj5nH%?IhgzmXsgpi#~+e~lh9^wHr!;xAoL4NkL|vx zb^tATR0zS*01mhEdF7J{QN5bZS=GhL-%@)!$)UrwqeVku$u9vM9jdLfU~jdXHRHBL zFW;6gX`D)?%yIYz(r6!-Tf3V(I`pQQs<VP7NNovF#~M5CQ}j0EOhQw~hxhmzp%a%J zpV!O_Gm4)ud6a^b2Mi#1AbJLz1MdDydj7`)Jq#;dI0W7FTb{cy;8@y*J8Q`t26M}E zV7^f+pgVE2P${_?@J=0LTV^iebx**s$TYuS3&0Xnp#D&j3_&CRq8Lko@}^Aic}nhj zTkBz>5mJS(FX!eA#)?W^JqW~pn7L{!4_VfgJA5LJ2RT!fAlZzNSm?2%=cxm9{gRxN zrB7LaKHl);`HPyL^u476wstq&x6Q&}h>nq^CBt5p0XdHGpMcA6c^&R{=O9wLVmCsY z3_zSF`qlY7&oLwD@iIok(ovHHhl+q6wj)ap_2+0wkS-1uM>SY80-g)#jC;>w^;#!V zrv7y(3vHK20Olllo_#L&oMWhIRwTb9RwKEW++b1*8mKuAC1Z#4s>vE>GpM*+pL}ji z*fxJ}_u+L+!h7Y%S?<ARr`Li4i`{>H?q5`wd5K2wP~dE`wFjXsmE{sefzkF0{h2#~ z5jSwKe|vk&F?ir~SI)QD@S_3_NThTpx`PrB33tL6i5w>$!-xABpKkbZiaSY&E5P}v z`LJlU64PiZ#@oXsx^pwHj#Yj|-&XQzVIK{7BsnF90~7a)WH=OKO;-4n^XAzkU)#|z zBq)&Vn(&WPI#r#F5t*pkkVGybwB@rliYTk|jTQH+5%)fdD1sDhsoaPWDhgzb?2Kwm zL~ftwk2kT$=fN$Yf9&_4?bv}k*O@Fw*i-(Cp`1&@&qVKn0~Hdm909Y5<5DvtUZniT zG)>!K+h2_xR0nNcja*m0q6-m;C|qO9$Nj#6R`P4MjA;7Kh@<;&mjZ?e@$B=uXQy@< zLqGEQb65z2{`t9X4By-m%e`~IQ&aT^Tk5q7nA?2dN?dEs`?R8DzIVf{m(V!Ei5979 z?F=HevsqD4EsM^<bxsh+ebo->e~xsS1}S=<Ko-Ow6Sy2VsK99<&Gdu@(8ZT_<$9!2 ztk}9?=l+^vBl7SSdf7+~vyo-k>3Q?q{|;QqGkiJv)Y{Tw^jXr(eACrOxs`o%F56ox zoMSq-_2)@n-lx!>J%d6$MsQj|ku^Et2Bf5$UNPF401-TdXm5vkuVe1D1pB{Zj3QDA zLgH+1%PADBlzRMpJ=9wHlJ8E#rsCK_o?NEGAhEmm-ESbf5v1L{T}nX({&Kuu-+sOI z*?!ux0nO_mFfT@`h);)98>h+Mu%QLrKqoRLHSIk0GWQ3?ga=mmFHp6}@_!dGdgn(& z<*f6qzMt<}cuK5PZ1D?s7TVVVFb*bfCbG#-6?7u~@!7h()Ud`InR8_q_T}+?I`u$W z;fk+Wouw}sy|}j|jSEjo8tXXU>h`{2Kk!Wvi3v{%+V1r76Cn1<-Tg7mC`LNPi=%&X zb{p_^XV~p}*y|L!jQ7Ot%*<@K^#typl5F`uy%ZG%xCwe-<F%Fk2s_%E$?OHH1A5AU zU_B+3{mB{z9_gYirDB|Klqm1$VbKEfG28;21DL6kwvr(m2%QKUtggZN=Ceh{7FPbh zQxO_shCY1(I5(7W!$Hr1*q%oFTm-j@{DN5`T~6U9N9yQ%z`8n-2Pz#^IXv)Bdv1k^ z^|_XVT;b;az4L_>T?!@0%1=^b{z|5exlc753s*TG-BKPaSiAw1ndFw~)I0LKx5>eQ zUvwP<up*ZF+5N?9liJBonRe`rJ2a0VUwQoRBl5_KTRWdpmf}Z~z1-9<##R!}yzH=X zAraP~RXMOJdyWgR%!hK+TmY!2@;Dqbu*<C~HssalF*mZ)lHnW?-wlBoC7`1GhezP# zUG_PeJ6f=DIkrdhhanVRQ{-v#|03ECxAk#SA^xRs`l#JmXwyFvdzn5M)nUAStBx2A zHlTgvXU~MArIE8Z<2KbP5GlA~+y-;|JdqKh<X`hBBk{y%Oy!2u=8a~z*TFC}%Q4>6 z4ts892s)To?$Pr!ARQNb+(F1~i=+e(-Q>|i5N;OoUY~aYOH0s4B`dz}l&qsBtM4WI z%AnR#fMLZg1SC6?qKL1!4X|GOZU6f(Arj!iuMc80<V~$AEEXUWxLW+{FWjev77q85 z8EXyYtUHxEF!O^%3o-5-W^UD`V#m$PQ2zwTUzB6`(T=8R{&%u>GS}SB>UO7vAkUdy z#>;WZm@e~hrT8vrCU)Eow$ByRX382B8e2tnmkD94E^-+JZ{)nLn%kF73!26;SK@}< z?0;T;+8TZs1~LgM6Zxl=?CE_+nK-iIQLgM<IOHmx?#|y%EQOzby$`rw$a}p8392)= zrbn{@Ji@6x;Zzlh%05+`n5$IDY8E{ov!*7A=MjJ^yU^xI;djGtt{c`s)UGFw0GPUV z^}q-|JuVzeP$4u*)C<yapl_QT)L+;PCDbZW_-Q*Ck&jAHu0@6ejW{zw|BDZ3mS5bP zfS1QM53Qou><PFZCg{nS+80BBEfs~@G5c}9$Fkk!YJJXNxO(}bzXT0r2;SOqdwl+d z5ai_<y-emeg`kUOsdx8yWa5+JuzIE&HaRkW&KK)NP+EI5M80KFP(;M_2>@JhsRt5- z=lx<}c98bjPCD9{k^z%Zgz}gtjYDi~jJK&LE>>w?_>u-)20fM&uAx+HE2#(+_kgJO z8l|XGDBQ{~)MDW>l$z{%lO}lIWF(wiU0p#{fRI<b1iife8`D>SCpa0p0w2Bo`ZyZu zAfJmCF~g!aDus}p%V^xrg;Tb~EK$NKo6;$JP>otXI#cWS@gdiW<!)k0K-2?EehKBe z!u2+_Op7~xjZfnN59$gS*?6njMur<7DVw)vZ$q8!OxasQ+?%-X{&3%~=0lCJWO2}{ zRQ*{-AYzL4KNKFAJ~l@qW;)e;PAh21d<1etlps1IIBn%3cv0w@fk+N%(!O~nC&F+5 zpS6Ir5crTjRmkdEI9eC{%SwQ<q~9O_ia(RsOW%hX2ADAqW?~5fP@n)zsDZt&l70@_ z+|&SR;w~$gZ$J98fejUp7+qVJv>lp<{I73qPooEWCyomH61_`HV~et(iq1`I!zZK0 zh2-k>{TwSrH87WeY}TzEQn-Q)7h<>Krls0zGBZk-kY(3jI#8f^Gbtq_Ibr1PQfS6O ztzO#xy|||_U@HEx0k=&@fulzk!8p)g{UZc6sDkW5U}o^WLIoHfv%gZcNXj5en}(11 ze9LSx`wrlH3N=2q+}6t-GPHg`$e1)G9C1e>MFu!2q{H%%0SO=BT})C{7xhI|wYD0Y zZ8LM+q8KUcMH*aecf%BURham>PP*z1<fSE?j}qtWJbPv0Z!@j21)#>c&IuTmI`N~Z zWc297x9CZGf6GF9RyW;tD;b<+w)%nHVwJ9Y+*`VDH@s%2?88!MjwSiII{@l##`B_~ zdoB?y3bMd~`7w>~!&n?h7yby=d|<A@J9d$B=*02!@}TPq(3I9m#&~s@V}i4$Ph02S zSE)Z628phJ@I?a|%RM@;t>J7H|0PWxG$g&E{DX?C|IOn;c>#AhkHc2oO5~`Mz*tKh zw4{V6?0PLed0%GXTCZw3x&f2UY(fZ;bm#ql3n0!oEzfHok*uwm!Qge~Y9k~hXJCM0 z7_HIap?m!tUN+IHx?z)@oV`V3(C_VK9jpz%KlqZt!uL~YWXkf??0N=lXr+N(rO;YJ zX@sCUvzM|50gEQA3nMmNMkiu8zBvf+Kq`oPW7HRGIakXvSMu5NqZyeY5{xMaHcZS= z!@l^{GCM?A-P!6-;i}9GzVQ%5bDK0w)_EZ`W&g9tQ12l9xV;3dQ8fA?j{zkHx)Yxv z9l+u>{2kJ#rVe9jbZCMZ?@6CcIYC7ICHM)6R0us`nmWu}h`%(H>cO%m<)Xq0YZ3|J zZ%jr&^^~uljrkb2cjJMe(l6J+dZw2kKC?Qv0E3rVeOdr}Kv}a#l;6<?l|k3XxjYRj z&^;{c;fhgQ4SJCorM4diCy`Ns3fB=wKS++HAmA!wk(6r?38Oh0o{@5rYD0C<LIi~n zzKMGKKvqoZ9%d|I@}U3t?kPHQj8d0z)M<nDWaM(}*IdEwN%#vBby+qGge@wiMa(=5 z)<-cAcGTH{BuJnX6AIziQ|z(xa6<{N>4kJiBZFkbnr>LyficQJ^=rIOjXqDj*#_cj zf6m_vjjc}!`NB+S<;d?bM@pCZWQ&)*S#iOYq@g>%X-U59?@uDH&rR6)<AjY3$4k*` zEAnzGPsORJ-A?9b)+Mk?dzVa9n#)qK1%q8Ww=-doVVYLNuxRrVxbVc$P}KkBf#x1$ zRD!7l?3Lsn+(zY48?IbS;QkE`MjA-&M;+f>dQ3RzMJ2LbKKL`5z0|%NIhOIv60RL+ zWAH#*bxWdTYyHGinq9IKm|mrMVAIQfgljZW9}2hiX5riO@Oy8_(+(wHv6iO;!(y*m z>-C>-A-F6V>Ou?)WjeVQuVTI?Pn7h25ff^WOvR=wqB(N?)CQW~a&f$8SwR9Yf>Bt- z?pkWl>$fD!`=z;Mf)&8T3S$--8g|lOh0xWIFyFzocf`O^pQjOp!QjDf_ve1g?=I(` zv0V7|GHyHIt!vIoL87CBU+W8jIdsNhI9>&;x4C0dSU6_lX1SM3x;f9j6DVDkQ@@)R zaklbdTP;C8s7O9+bZD#baAXE^M=&L+1Nu+8kNPD~=iW{nWirBOC6T}=bVr`-DGOE1 zccQF6@!S5Po>u?jSpX$iI0}xjquyPt2m;6!<MN1lGI_^*-~FQ_MhQn&*VhrDm2EzV zk-A`Aor7_u2SRtxT|Vy{KMvv^-}JNi9p3q$-w8D~a_npnM(+odI)MY@*N2&&>;0_r zjc%9dXf6r8Os9BtX@qe{5vn4m2gT|bTXT3GG>^|{{{%S&48%eA$Mu1^c+McvBFbJ^ zQfLIg8{+fV-}z0O_%7!)$i;E2ozn;=wo}krGsN64q(p6cs*DR!gxlYEua(=&d$w?R zQR!58h#|yRsfw#W+l6+bn7wh@{=#*Z0fqI2yhiQ#6D<+66)nxE+S0kzjOA)Yxi6_X z&O~z&7nixZ50|6jv7dvL;@;fWdQV{g=e@B2Cj70F16zE5D~`9S7&S~z6r>>m)Fp)$ zIFY^6+Ax(Ym?N(_3L7RVNdE1gpRj-e?bI^a4xtE4=84Z0BFuE}FH&nADhgOn=%)El zD?;p<Juo#-m(C=b!lR9X`E&R0_S|Kpz*L^H-APLdy4_bJV26zHKW)kSM0`xVu}#f{ zpqFr5Ql<enS``QWx!xk}P&LnJ4uCz^8T*u@oh_QobdVRF4#;K7)v@t19__c|$?!^# zPFd7#mZ{5kRumCjQMt^~mOEsZ#h6~bz0F@aJ{Uu(bCQ(=Wp)P#hm8N~`mIJgnpJ*s z{v;`-iqt+k;6l-mT;beRV!R(%<^2wazc!+sFtvfNqJ4l|RBCZJ>@1#g@M+@f$YVx< zcZ)2C{hn`4r3O;Ntsxzj<r`mY5*8r>89N&J2QpR^$<q7YWSn%Bpb93|Ur;dDUb(Fu z9X2%m?#tk-XS4RrpYzXK`-U08A+OK$2Qh)m!4Ez@J_JEM=FeR(6xrkq*%4^({{>w( zu)pJPZzgp@Jf@A*-G}22rNu`|CCgLL?f%NQMP?OkT6;=aHr*^dLiqwWH9XCCeBwl4 zdNN-kZ;Wd{?zScLt;}n+5@uptLC6jkPI*Ku6<%%KqSc&W)Af8#Yoo-qQe7d7Nfj=u zzu-brB6N3mx5MLHu?(3`)4U;oV8f0bujlnKE&xRIhZcAqmK-p#{(y#OVEegvNr7|c za7Z2Xm-t<B(&85-O;|Z+QpuY4;#1XYclu`TE$IgI++DZ3ge1!Ln|z7vhy%S>&y06S z%jSq0n`1}t3|Q!l4~AeA2af<=+{ibpUr(<_vuSGdB}5}rnQXCzJh82Cziy7xLV8;v z0WwK39GxK%3e_}L)#yP^gA@Rus7rtI>nrHDG~9mvo3?4Q!VI;uH{oOWFdhKv<B8Tk zS8e_8&WsZ&(=StCNQ0B<V?SuCQCd&8AGEJ_{J9&T$!)v6T_-V;n?=E^<+S7UpN_H? z`xYFhc#t<)fhK-1SA++^2T~?n>2!8<2ovTh9H@sYa4?b0$>c*>03hWDf$a7_3OCOA zBKW_3Sa;)8P9Q|G6hGhbQ%a{@%B(@bmyu-X-vxR9sh0((wugU7S6k!vVTvr6ur51h z(1JR#w<--4NLP=P%NU>&E>nx`EaTBs$D&U0`&NgbQ6kOw791M*P{AnfgnWgc^Tp4a zmeKyTAb$KY(q;2I(9QMYSk&L}3{_3*XDiXrMH63RZu1VN4wH5$(R6`ReaU=U)8Z?{ z8W2$-oAP1BDd(8~Q58rPk{|N}d0?+68_F7jf*C{#L6A!tz_Tol^i6|`Pli*q5V6`P zC4((Ag?LTZ<9PFTzyPQ1)3!Ax)i?=@nZ=7{PA@E?0s3s0meX+3T?dmM(24#eUbH~- zvaFa>RWW5r>Ng?NOczKnVjs^(s|K^^12>$}tIgN5Gc(ui5Hqpy>Gm-*fc?-yz18^D zhV1ocsr>qNpaoQ#nq0<xcSqOe%yFiX=Ff_B=lbTQw|*QUhr-TfY(U-%D_yx*+xWPJ zRl)yeO!T*wf(g@V!b|7rW%ysywX#C*7UszjqdG6lw6yM9=xMILXbXE<D`p-zpxO;n zQWX<Rs{T@p!x$z@Wz=mGM4S49#~C!Ho!?IUdo5dFYS}-P$B--&Z)#5nbtX`H`}{0i zIll4k`t~d}sQ|W4iIjA|xl`#>2#iX@o9>!rukF5&(i2sMGcBwxxU8K+ExUJKp~C#@ z=tv&m(tSZlPfyX-m$=5(2b1HIewXg=G0gZQ31qr-5FXp)+5BdZerSvvTF~<lqbapq zkXhx^9%IYb`0n^%j+4<a8DB{)(6(y)Jpt)t%O7qW;WhX)Q~Bt6eh<)Z%!W<gP=!`h zfYgm7OzxBCaD|}PNm8uAj-LY#pB{YA_|9%`Nn>}D<{Sgw5~~4$tf}DMj?3REVBL64 z%=-PL35yVAnxSOeA4I^G`ZbkO%Erbjg%5my!KU~RlvO}#@l~FK-OW@4=mUBkQ}%az zd!-=PCC@CTNm{k3eeq?_u(h)T8BV>pK6@!RPyf~p*HvZ(d_AAR|B{62Up6Hb^Z7Dv z18*uQjXib8>BpDAE7KAlKwXZAI2Lz%{WkZ)3Odlg7rXJ7)n6I7cmz_J0YESiD5m(z znmw5G_2`%8!4Z}})gY^>Ywe;_^>z0NC+5JAnUP<$TOuVYn^Kao>24riOLL2{-Vw^m zQgzE^6LNlRO1AD0QfNC&J@j)B{Z<NG6_U+svcFQhPbE|gElDjcg*u?Yobsi_NMC2P zVXkFw;YW8FVE^6ERfk{~<+M>}O9acur+czET_Cq39&2LN^IVJMUdMTx6dHa?)H071 zU>Cv&)OBAdL17W!0Y$<<GDq02P!LDTil$jg*d#gm5-^*2CmW0x9$-CTGgFgO7qqaS zy1RV5v7@^&VO!B<Czr;J<?W?9RvLzd6F_ZXV}(LA0oG0GcWtn2hXh~&svBQs9Aql< z@$N8$K)HhCWJ+CxQ?E%Uo<gZ;s7@4Gc+zRF081a|kFLAz@J{6Bl{;NkBJ9t?8jKqi z`_Nzh@M0Hf#J-iSAPdYilRgnv$2Y^KpPOK(?qr{zpC>Oe(hH{k#Y~frZ%wqQ%(E(y zQ+umBMK=FpPn|^!2GnK<ZxcSv@J89pco7SYnToP2j#s^qnKH^I+6&*afi{49${#qM z-G<g<mHJv|e4A4%s&_S;)JtqvO_pv}W0<O5oBLPm&l9Nc^}Gn|D0jxAf|<gYv+`O6 zefBFdiU{mWsUDPxpzH_2AAH?Hz;S<LBZYoWir`6%CyZ@><bDY9dU&I<+Z5x+l#i<l z7@JBkfqx05Q71lN9+ggX3Z@*?|2;m=hh**IUP;KJ_P4vu1`K_Tu<-jh8^EiMas`j` zF?8Ru@x5}!S;j68obXioGC^;0rgXksE^+me8N1-Wd5mQ&MN4aIvf4mWK{6kT*av_$ z4I9npXrC+ORZp!ZnJxOjddS8w5b`{p5+Zybvdzo$b3dDmeR^|q)2_N%4IjPcGynbO zwx2&=4xL?urix9}E-X3-?fd=2oFFv_B9`|-k2PqRcUfDtb$@#eS+y-~8kS3$Z;Z`A z&94d9KU6&U87xc^-VJKO#98ElyWrYdHfgv7LjLWoFG=tg=2EZ))S%z25TLsRK*><Y z{jtJOj2)cAax#xQ4}<)d=u#xBTZB@y&U=H03|VYcUxNyaR%}xQjO;F*CYBj&Vv;@J z(_d&5E0`K|7R8m)&%Ksfy95fSq{d3o=?Ae!y9=@SdZYY1GUeDL6(_p9{f^YGr1A^a zX3k)yN{DgnbcCPOI^3nzU3$Giq-I`lrnRPmKpO@}xv!zyyR@nLALBYH0H-l*jlq9M zK;7a}-4lb(CJ8z&z-ENc!(j>Zp+gmFzY~HM!DIj+*@&@dY4x$V;?*h1kr0b+XtKH$ zQ-1zmW3;)-u_82)i~XW~Y&J0`+b6>fUx=Wubvkz`f4|2-CpW?PK1Qj-n7qv0Q16NY z!9yReSCjin_JbK-CBi9DLhUizr3ig~9iN9kjpok&9V7mCi3*c<BF3R*`fu*uqIAiT z$-y`6cNrFN@v3&NpX+;iPJi@UK*k;4G~z=4ss=^1Hz`;p89#D;V@NFvB`48q4yor} z3`*Jk9xnHtQW<q|IIX1}a{4`a<nM0C>#2=kcSiF%oPh#3x59xY=S^vud8mWo$}6LK z6A4P`E(pwjnd0Q|Y@y6|2)N-RR~?lWLQ;+AUV3lS9*J+ZFpk=N8`EU_tk`wLfn?W= zGT-!z;!9)Saqr8&O0AIT=3z=RHQNn;C!eb7O_gse%to_Dhal13RBCY{(54Co%{juQ zU^DZ>8}iT9AJ=1q<I9e|uUq*T|Fv?@aKBSg^(Q@6(wP$mcw%u;;P9}w(caT{rfI&2 zZh_&|xM*=ByNKjxCnr3yo}Qk#Basw@+wZlIde!)XPfxCSE#X#12VszWHWiF{?hLf< z3YxXlD!#st!}B>WNy~jNP6FVGSEo@yH?H>kmM6<yRgGO`6MU=**ym72?28O^36Bun zv2-{Zqp9_Oy~=x-i`!C>vnKbkGKhaDH1Ago(Pss&z59$HlLsRJipU4mL@R*A2&m)X z`;Ym3lXF`X8&o}T6tV?J1fYZM4jcji9pUAxyv?r^duROy*Hb^?F8L$C)=1yBoLEX? zL2{ReyHXc#!qFXrABcAoB^#7F`y=(G*KO<nX!@$CHoLCd;O?%)32sG-ySsZS?(Q12 zxND(6k>U=;y+Cmf?of)mOHSVZ8|RXdJH~$Yo@=ft)+T*(&#o2J3F<M{&iThZl85%m z&mB+o6~=uX=8@Q-FEEX83-zc(`?QuArOW_6AA=TugK^nMOTX(Uni@W|G3%tyT0)z; zF|Bu~Jz+s;Smv&4f;HcSN7ZVyy?GGS$GriC$X!UDoZ<CIH^v$iBoP5jZsu-aR<Q|T z_NcbA*?A-TS|;pqdU0gy{LhT;&BT+b5_u8O@gz_|Bmx<vP-K(V5KW0;tEl{7{8vZ- zn^bc*IQ*UVFL5(6sF?CnzD@P?9>kUN??{`SkU0Ys#vE!Zj;~m8q)iic0+os0pLe!i zY>6E`gmc~^hC`Jf{x2`k0)(fJSX@)`_nMG0@~vTI!Zx~B2PC`llDuYVNDJ7FoF(J* z4C7a8Ky`U>njgOH38z7#N{dpLxstunzd8Kc){k^l35G47c8*NW`J}2<(~6U^ntzf1 z*#4M5wRX|>1gVG4DeMthpO1pTDRz9cy<RI<la#VKJwH`?5EpE0vZz6bvHRDHxzoBn z`r)2VO}-X8+8Fzf8Hq~cg1Rr1tBk;m2kPAEizFq5qQn|ot<g{|tQ^dL7pGd$cs`UX zWu6rrHWuHlV2wJdKh@>^z9(WkT+(BvZoSxd@R5k@bby-?$0-~^q%c#ms-4&g_dCu% zrms+qD73#CXhba_(EIb6Cpk=F@RXh0PHZ3{zWCitC+@)e(F_G(`Ja43t{BR$#Upoi zuJv4~FhG0PC8QHi9(%G(*i%qIe3n8wOxBj&29C>7crY*&B7#r%ts$2y)1p3m!*`sw z8JYk~;;(YWqtIQ#-dgL0DuYKjEnL`KtUT0h^Eu$`5ZXX?I?f?xlYG!D2}>CFZxHK( zolpaxUQ-c}Q1b<x5Tz85^)ta%x0K(uEuTBM1UH87)?f6nL_3|YY8L(+Mm!Z-MJmvS zYfjgP{7P(wc!gQ+q%LZU;R=flhYm1~26j}PtKRN&_Xg&eQ2v8~ljR*OW1sC2X0vSE z@owz(D_5q2lBC(wxs1t(6suaD-!R7XSr#z$wtbuAEh-AkL~wQF^fe;RuEQ={6dK#p zEV#^)=iC4bghOVFda;r1XQA(c$ZaMW%aPaX?#afJhIWI6ZNHeiopTKy``%Y}dsoY= z)|x#1<cy79NT)v|Q#$e?j^BNFYCb=hXTlw66N+?AO8mrJc>M;`bO+GfrBc?qCMiBd znuXlQ#}e3DD#95Uf4Yg@Bum`VG4F82gSW)Ai06v75d1V7HxwA``{4KVPVd4ha0>6s zX|^PJ<kol`0xE6blM?xjEu8*Cy`fcVomwR>l6C)G@1A7}M?*T!wrI~(%yK=!;wKdC z${1D!Z*}_nIRtXY^jW0ex>6p=J0!{DS;^=v-o!~jaMn1NtKDJag#*Y(Bro6Ip!{{U zT`!1rvEygPkHoQj&8&xPJ@>FNdjh4Xx9Zzmj3$loyf;4ipz&N`xshNg{>~<~80h*G zEecy(V%dtk7q_?ewu2b~j#;V-BQWd!DVIlJtkPhz&GleWO$C07K^Zoeu~&+TMl)x) zjW2BO)t1d=4}U~hG#JuRrFX8)VgYdA?`G2xJW1TL4c~xTVr>ZiooYQf*VNqQyxwKn z_$r6NOj1QZxzHDSbPSbyofBl%Dn*j9&=*T!C@QU}LOUa<J7xRZI7vQeOzOpYp*+Er zM`WlkZnh++<n|X=u^bZ&^&pz*+S{AhNg~`NeSgOi*JLQ3wG|eno?BZpl7QaAH%E@& z=ui&V9|EB=gNIx?6n2HQ@mhJ+;lhbw(-{SZ8BK<~rs<$_za@g4=LSEHT9)Ua5WZZM zvN(Yln2)fErO*<Fr@t;28=XF`^;PM+#$48o;|dPGxBvE`h3i>E=G+C0G0Mock&yYP z#0OoxcSC{BP*<_oqO`OOamoH8Xmo(BP1y$-H>f9sxduVw0{})C1XvlsLGP!hSrA+x zJ^W33IShK?6y8SD(~@+B-G+-0$4s#Os539+<*Q(_nj$3n^dx<4=rZ$8_oBDvj;-qm zidL3T@CH$*a>IaB9<(sHtsOM}@J@Lr9+8g|CyT7@&zWk)d{!ioQcBHW0rWP5SPvQD zt7-aeb(*!Ix&Roani=Zy-+R+;HX0~?tqRQ@X75G^105?9bA^#cBe7bGUTS-A3qwca z=oe2`{H>1PcN3%tkhDc{vD)<oieP`l=zTnM*R~Ax7az+2aKppmBa3`>uBX$b;svUt zirdY=e>0mB?}%gbha`Rz$umx|#|l(q;H0le8@h5G_&ccQW3Bgwj6;s#9Fh370bUOv z#mczp09!+?O6OWj@c}1&j^x=zVj>62qI4K8HBm$)%LC)>dwBRsct7ExG1I4l=@CY` z4?O`$*?SL&aZGo&3u&|!u(<KjI-kg@P?NZy3$UicDKHFGVU_M7(0aFxjm>*+vAV`J zdyXcJIe!sJ6>rutc9v#T3SEjvZG6awmhbc_AzHxRM%#)e2-Sa2K&?(?FfU$V>wbWp zY%CdQPm-?i(vO73WjOK!lB+knHlIUoRTqhab%z-5rJE_mQQ%tr4vSak&z6GL)3092 za+8OSHwsXNCU}KO_i!W>#W|5f+cDM*uOA@LYb${$tH&+SnjUQ6GbAX&?<g+o7*Ry7 zU4QfEm}OTF&_N+wKV@A^t*?vdOhwVCmJbWV=c_%5Y*~aUE3veVoOg3uq+~OROXg(j zF(%~jNlQ_sZ2sy|T9G6wXbY<t_-*p920l*8o<I*Y?=FiCY^bp1gZ`%4?;}})-m79T zf7T0I%N>scC{c#4(m4N3TgO4^=R2|I;;prn6>d{Ge3^@GpTn_?Zil7&i%kmV?uGPu zMHt}pP4J;le$Z}=Qq#)1TVC~hlspz9RFz-~xvLA|DUgHi3jL!!?&bJppH=yH<e7-# z+8NC4ZbA`au~Sa2-@@6Lbf8_{Pv*j#u|<^Pu-LG!(g%+{Cj#*BZnzWHCF$ULkx+G1 z_UFM3OG?&sO->~F%;!GE@*k9{UpnGC^%gRyFx9`v@EDSGeG={>My-d4edmvE+m7eK zqnR1A{LT!B-Ua>_{WJb(pCh%0UsS=XnL|MG5S{(Ifnn~OIE$m@PQ!@%AiPzQtg%lY zscp`&jWjFnbCyAMO*_?h9OX)Ao+dz%{x4e#JE?u3SVOJQck{<3k@t>{n?-+ZDsmV7 zeip1hBe)Yvj#^WVyUJfPN}Q?^Ou>GQ=8eK!n13zZ8;jVKUd$`tlkeTW2iXRL7B5Ic zk<)+5z}~={BQ%8Rhb@$#q$AGNk2AtZlRr`{XS$)6qi9SXK3q^b-9#?a&(jzVj^?FD z)c}44qMNusavyBLPftLd7(M*IKl%2-1Ef<FaZQ{vW5IKpzZo%yQ<k<?SE12vdwJ8= zc%=(q-RYZ0XphtY<>708P~K$f8Kj__|0IL8a|*7v<v~;`p8p~}C&R!%r`p^NTVa%Y zG?OVB*U8(6o0P2`V~}%Q9PS+@__hfW{z144g*!fzs+GFsTdK?o*epdeJYBv)p3q@x z><H7(LUeF5;BGKR!0oSq8&4H84+|fv!NahKTU5|}J-8M8EZP~p*9VkCW|3});Oacf z^u=#SRh$|I2rx~=7O67{3a{S?w+0VYL=hg(hS=-#&AU&GU1d_p9iWCIrtD-s(UZ{< zvW2E4d~E>+wUt<Hx{3+iLM)cOVL*&HTIJ#KWcr?lVeM=;@qCnBDXBdxg?7`Yy-rBM z0(BLR2|A({KQ3X_q$r;cP&p_sO2=`2DkdB_*?=)`w_3`qXqUYP@HU}^9jVEaqTZ)h zsrXW46hAWct&W-bs)x@IpJc-#@_Y;pyiCns>~3s_KE8TBY#yIL?T{O-V=+(747fXE z9t`jT6Ux8AhBYdZagucDnj~qoN|z?q2kf5i_Zu~%A-n%Ix$a#>f>SPhIyap0hvJ54 z5@{`}u{D!jO&F^H<R`Y<z8SZQR-Zf6N##ilacQL891XU5L*9jYZ?=*WYrC$;ZWKp@ zd&y+3x&s({Aul1;%D)}Unh=^46uDWOtoB}Nv8SNEHvW+jq~6E4&(}d)hG;Y4NH$xL z_Y*m}02`ZtI>^2R{#Rf3Xb9P%c)KC2I5s=`Fjfv*ihj5i3$wpv)u-wf*K8~pSh{UE zYL9A_iD(JeYPTG=LKq}7ILed{evPzYUx<Ay$aom4I6-mQdw3q)1oNiLXUahYqqw&7 z_NF!`Nbc0(_&%l^Aw{%YSk`G*%NL%Nx|H@k0y@+>pE~lwh~bxLwBd0zrQM*J<js6+ ze<liC$7vrHj+7JzxfL$ZsMj8IGZaqPSo~SqHO2BiHYUv!EoaXyC0poy{nsK-w2TZn zxJEHdpV5ecbnCBdF?ck@-&l{s>BhkusQZmEGAccV2x!4mA!o+0u~N?ka*fdK%fv7D z>D!_W)>lcwFo}z+{eJ23UG6rgB2ku3L0OU3wExP=t!#1=O`8z+sWUYYDL;(1U)&L! zOq%o%t&2a?uq_dLqMFypXuS}vN*UKGo%|*GuWQ88gODf=Qvd1H%SF@|*RyAj?}-;} zjZhVip6!MR|Hkr^JV*Rdr5BF)P_)uS?ihKbqwXU!e6%Nt>Kx?ZzQgW0#B`-RY^>}x zwW@LI<n*KSt8QXtgZ-KF9ALT4T#t}HP=9>Dd*-!NZ^Q(lZ>0VV7N8ap^tnvLsFfCc zfM9v#Ly5pFL*O&Br&#O4G5SI$C6<vF@0ItsW*Dkge6V`G!JDP1P5N6%*mKF-X(>Ng zxs)`%BjVNN#l^|%vbY%H$AB74&IhMQgJbvXB$B|Iacz<{!LzdeyTfLpk34;-PJNKa zXiH|r@a0Y`-4|B?&7-8?V_tpVx8)PRS{9<X>}XvA05Cl7$jc!eMKdhY>pTP-o`|S; z$eeT}RMWI|tpz-Fc*BWmUW1V0nyxu;@tD};35@5O0J~}P@uk(6=zBThuve2~4QB%} ztvzhG8^msS3SOZBG&`fCPj@GBjEq<=TRnSz*Bd_5H3ZN%h5-hE2m&TH$MimQ^VcNw zyx(y^#cYDY>50W*R8Z%1KY!0v8NV|*=i02Ty`yqb@J!I<uq6u6&VZ!pw3e==03PLw zgC$+oaz#t@087I;fbbtIe8gBx3AaL@0xo$UETSunl4VRJ;roO~b1b6U44Q?W$3z>T zLmcb$dVK;KrINOk>)92_f}TN=U-9N{Kvist>4zu|YlbXaJ@``gP~GC#-Z<@UDU_32 zc#Er@@Lp`)&LoBvDxZuksVD)z<iU&@KECz$lsUN=ZY(t9j+G;i@v#m~&GiMw#0zU& z%+;DrzQ}&K(aLp-pmN`T)%I|yqUDQH1<2+nujOxk=Wp6N(NU+2Mh5~*9FfhHg}Vb! zH#Wd|FmGfa^JrpYwVZ+7^8_L)0GBno;?(ER$|Ex#(p*c54e#LB+()-9K4{52M{cMI zp#NGM{bIqCt@jdv?^<$4aT2|r-W<OyZWO^aO#_s?PN2(oCTXCi-Z%e3xEHCZ=n#(E z{@IQg0NT$sv-lHQRbpl>^&7M(2wRO^?KROwrP-aIcPAKE;pXV5;#gzM1XDOiEYG(& z@H`wJW|TyLlHCF}#FI(ER(S4Bv)P&MPJkuT$;@Hg_^pXK7!T8Tr|@hH`88ifL|L|6 zuttkoqhDi~N*W}t9^l9Dt4we89>@D^#kLdBmj;8o(3JTZ*4JsSaus)^*YhVtH`z@| zdV91#>?C4{dE5j|R@nomPYcyM%K$`qAc5*E{!4E>v=-XL+S=p;{R%9_T$l3moI38R zb_5@a=UnT2de_?ieVEFg*l-#*3R*Yf)7f)(TFF%M8|nHBEDvB}>1|eyPgV&n@sC2P zmiLAB$6nu@e#-S;n;`qbG&DPF#_1|o%mk<rnqb#REgx5CrtO}tl#Hl`HvYiqJ3y;M zUti6+a{wt|uvZ4yTJXCH!#prH+W`4GsBZ1%rQ7)%sbjnw1ytya!?m`kBklhl)~_y) z#?F$)K2X0!=7|(8@N4Vs9BX=7F61d|%ZJ?S<-WV%{YVe0@XK}C_#AQbF;G%j1K$Bp z7B9fJ?NHztx`0;;J}whoIr6>eg_t!UoBHk?`v!95<~*4<n8yGBzv?r^_KkZrVc>bI z#Ry7EC(0LcfJeQCdor`4Yjkg0aIn<oBPbcLR1(R$^5Otgb#Wj<iM(%Qp8O}GF^r8N zPULQNhwx8@p`zOZik;Y@_g+4$N2-AYmDj(WN>~j<%>^%S6lo?3KQeyLiNqgkG-3E@ zo!_XiCgf3}cu!twan1zNts?1IV3{({IASXAx+fY(5rF)ouWtFXu7#=PYL(vPSy{Oi z7gElIKRp|YV`Pq4W@{(4>zy0BhL~SaBl=oi!<!CIyy}wT+1_G)XTltwi-9Ox+@6YO zD<MN|a=jCk9{IY*pCgVS*H+8I4OijI2XjL0D!@Dk^Ce;1rp#~P#f8MYeTItLkriG7 zSDFTMLJ3^Bj~<p))X)BPV3<{#n<vuKSkAlDE7HWd&W@<`!3>A-aO`$;T>$3wPq`Vc zUu|@e`B+HC0uL9@vOpL`a_WFv`bnkpl2DKTzeL-R5CLNJVqpB<N}y<(=Kag}dB5Mf zw22ve@=Os_;w2X!5#G{1pdv*3$vzfc{%EOgN!+s)I5lmbn~wXaF40y#{93GRW$4Vl zZvg<}i-N1{wfcAMiG4AQ#S=V)%RbHoODwxHn6C1VnzYhCe-^bydJCyuWd~eJ4`Q4_ z7OuBP4id!7Q~E6~l9OH+(~DWXzFAC{;GbF4x!clWc7<#CobCO(zF3tzKGu3cIELfB z<@l=N7zQYZS$BzXNbjzbON7z3IN_z+$jByI62okzLtsXM=)wYlrIfm-VpYwZjzkCR z8}81*^ginMRyfq?Uie2;$k4k!cDLWGzLo#fTZpEgHPavsA#}I;{2%G_=d0K2Kv6NV z4=M~zRQmq}7FH3_oN5yG{^(0dOKO(wZTY`{J7JzaDbY;^8!|O8BLi<o1yAaKW{M#M z0%cf=fSARR7f(=OG#S{Q1{zQVLHq10!vrn45T%^{AWH6#rm}D2G(nU1nS{Kp_F?Zs zZ^*^w+lr%TZlv_bg6ZDZgXyj(>)Z1HpFv+3a}co^nnmVOY0?+>8;iU<<BEvi2Attq z|MHsrT30NJZ437>%|MiWpiE{>)$9saY7|Z?0LrDH<Pac*-sM~%1>Jutur0cSYb2g) z8z!iJJSDcp!kqs+p>uPB{wKGpmPGkhp;TwB-j|;l`)8;SJoLZ#3Pq^eUn|uNSV+Uh zj7nlJYQ!Pr;tEc1a_Qp9d7V^Q+b<ZE6c}o=p1@UGEc}qe<1Z^z2OGmWtYvCeT7ius zZ**%2I^11O)iGz56ZUgczG>BHE%oH(_2ubkF}j}*5ov#5=S(@btVMa)oBE&Qp{xxJ zNXc(Y{&S!Q!Byiz^s4^2lPZPbkB1;gVaJ=WF^w-;lHkhoF+~#d{kqI_NW#~9*ykP1 zZ%%Jt*Q5wfVO64`l>`8kT_TZe+z$W6wt`X{g(#>0-qfFG)R;=(o@i()ssTst$d_=! z(gzaAkVZx*wl25^-SURQa-gnzE0?6d9wL+~8C-@ArF2dDv(E?jEAVf1m4H9zQ+f0d zg?UI)BKQ<y<y`(ME#L0bW~P=YXGhlb>*<f=FU5=<JudZJwas9JRbLCXMgLaZzcqQD zXC^V<N1m=6q0hj4sF1K-@(gAXvp#1=BL<n+I>tukmOU-SYl?+O=P!rOdpBFJDlO|3 zyWIEQ8lO-$3xE-O*W%&yGxgdrykoVwBV^rxZT(r4sot+R`@rZsmr<a8ks?yYNe4@} ze-BpEAV?|WJ(5LJ6fX_UQ`~Rb+eCyaB71s}f3wZU4d*d<>Be~LLR!Pu-F@}QcW?)) zs1Zoi!X?n(avj4hNJZmn0$*7|Q|im&hRhrEZEI>;z7XS3r`TBj>e&i98X{|TrYOi0 z#+Ur*Ln%Xzl9s_bH6Y7Gmu`klFGy9(I!dfowxKGgxN`LPh4=$GIwBn8`R=W$>1re3 zaQ+G35^rRa6eJ$;Busn@jq<opD^P~kEC9AgE$@%idLRGhroB9<oo{^jo|jLCCxOjV z{l&qIEg~@fCXT-tl>2WMZB-taR(ly+^F6DYJEQIEtTX<(LGEJ^CN}O+q7acLZQ2kM z3c9>_&DL0KDGWg0b~fixwS+LBzlhA%f)mNy4DeV#H)U05GVjyz{yWXkn$a91d!nVB z`B2PY9G!@uH71AO{khoyj-P$gK=UTUjJKv&Z{m#u+d_-5v2^{rb#^ZptG~1*mXwxZ z@nl^$<nQFjPu?~!x&|-805aWaSUBaKBDJvIJUJAO(D&AEqe`=kBFU+{;hnAn^NhVt z2XTTM9NX376_(LNzS6*h=$C9f5<J>3<AWKtOaL=ImMr~ArcOacg<}C^b1)&gzM^D4 zz>F=MyHm7Zif-3W-V|3#JrfIYipxMohT^P*lUCzxGD<jx^VfHw=f3R71R_<RZGnNC z*C85a4*eYdTxIqz^0HCpd_;R17XufbC5ILNb#~@GkvAFOk3cIDgSRdo0;G437vF|x z;w@-f_+;s2026#V5~f~EHRgaJgWO?2V><-Ax-U8Sh0zL9XR*&=bH$@2l>6<Q(>Qnx z1_LC@YqXTH9nf@_`z?%(`hDadz8M*IZz!C{lBli|5y1C(JIdtc&l>$7;99z`n9|-2 z&Zk7f#xK9x|FKinJ3vqThg<K<A8f5ges@L$ioBitMo&Csp9<FwyflxBv_tgS4MZVB zUby}YN)0isj3MpZd*u8t8dWwE`8D5y%iMvbW<d<eee@qKO&YE)cWyVkQ^3{f(12ty zK|!#g8bjKZZy@Bo;-V7?Y0$Lpq(jwCzB<Kniod2<z|@w)o`Quw-IJ9Ez%*)zS=_dC z((@W~2rYGr!mcMw-1~X4VK{$BK^<%G)j$i_JyVILRY}7v)TDsZH@X6?1R`HLQ)bZG z@;ToS5)mTny*YnNYvQq>#f9&)O_W5WBH%i?vYb2d7Nl4*{N3<L;2+l4^A-oBhl`|( z^-sA-c-Vuf4V;KdjYT6?&Mr}h%-534JHgrn*MCXA<$!xcGNua@AU0G_dMu3Y8x`2- zraVj0ItU=(%_Jx7=zxs?8ok#vO5W2Z&8ZAIHzlly8NmCKc8Z(w{!q8Z63Rj&ej(=L zG~EVK>S|6S(w7)29h~X?6>mOH;RUXP1zGHJ=X_l*$O6j;?WQ-Xv-ejR?YC&-RyO=v zMXw17m95ESpXxBhu0+_HFRI$EgTJoa8gZ%x85X04u2682tM*^}5sOk+gW5j{<yV4F zUj3ju+||@fb(Iza>fN4v8r~`0r=wVjFeM@X2^p}cA@xhUf)YRqH#Nha0Bq`=p`UVx z7Dh`wB<QhKs~!-Y;mMhKcwrGt-y_8JElX>I+4ZwM3SrJ4<JC0>FfSrpEMPe2{8Os4 z7sCbd$el2vPv@p5a|^gshtVih0>D}kO_2?3Zd!39ml4@|NNA9zNlf74gXTz|d%w{M zhXi(&wLm+Hpjh@u;68BLi=s3leKdp)o_?2}C9Kd3tFG<6AKl^8(-JXXR59=u`25VP z&P3=^m|u+4uDEp7OiEX_>6ba-vVhTA{SE);4r)FSDniAGnf&L0g^=43)-w#D*Zr0M zZui==Rayx#FKZS0r8Axi`!)6b02G~lL4p&$3_PLgkpG5R(L92SxqlKkw~}NFpr%c; zaT-t!J}A^s^7XG+Mm=I}ar&lcannGzqZx3lklJ`x{}0oU71kzlqGhyv`A2wPtyb62 zO@67zv^!!ZEh%+uVqjyZwVEn?%~?27@sn_>=5tRk|GJ0Ck{kKf!^8bO6l@O-4Q+Im zeNTjf?4=8zjMP%Sw4abVH~=6W_d8TOn}5<VoXrUZeNe?7c-Cwt;NT#aqc^a4{_5v^ z4mLLm08kI+Hky9WL}sZ2{#kjaGj|w|lJHXOr$Kh!YA2K3$><I(*2b1*EGurhi34H| zG1tu!CtARPs7r9uj+CR*4r@(X$YoMaJ=Z&Zrd8D#FS-KUz1^%G(UW;mmap2_zE1kB zt{G?@e9}=F$RBjbx|t>BK>Z3v?SnBkldz=lVYbXpSHkWmcBr8@HHT`CS_Ju6b&dH^ z9y1uaM$|)3RfCKrmXq|aGzrWAzB2>Li^BJw7e#x*p4fW0ds&p9kxS{Unl_YpIhEt# z)8;xFG@E+@lyq<n9xHTystypdN4RSfLhAO&8^QK9EKzV!CqfJ9XSRqqkA3s8l$C&q zq!~KaEDFKxZ>lPAz6Z8iN*ir80$=!WF+`}@q$1{+5ifzHfFmQ@nA?_}^D0S5Q(a-$ zH(;H7h@TKM*(DH3Y_6t>Jhoh;bDDxK`t(>$=?K2__X&bTv=_Wr4k8Q`t-*$gM_`U{ z%%4$;#T(F-xyb~w5-B*Q-S9^7@vHQKV2C|y131v7N{iAwaPxW4nol}vPkuMl&drH4 zC!>K%EM|+hCEZHA1ag#1;G1aahq&ZYz=juRcTt1%OuZMK96i1&3eUMn4;-p+gzP9x z@X$^v0Yzk{-;JqB$dc;)>9A&Ou@cDRh9_kFiKc;9{$+a^e#jbwXK5s*Dh?qp2H^Ml zu}9-CCag)9fs-s*=u2`BRH8ue_nKpX;X1B}D)XR8zyK7+Loal15<t0Gr{$NEMs=h9 zVqXS{<NHQzr&v=B^YzV&m-AKVCz7^)?VxQ^DQd!86GggFiBa`AS6-a535dwJ3PR3V zD;z`U&AV&28~T|VGH`dWvk;$J<4jxSskbl3?(tzUujdjmZb2}k`c1qk)zuqcXI%>H z{Rik|E}8^ATL6WM=eOXpHH8=OO;>So@s4YD1kCyRr?dZ>j3s)va3rg#qVnb#o2;xI z*l@f$gO<)X@p!&|DQRion;WM42SMX7KJg9$xK+bY>k@Z?SF@KjHcp-DHqCTde}D&B zG2?j2mE)+o-rl=AA5^2|9f}iRny}#wMa4O>%F_OLQP3bMqjwOiSvVzzo4G9O;n@gc zs7}ijU+I%g=9RxYQ!u}PSj!uK=-aXC<f`Ra{^4jE<uPOBp~VakyoZ7Dgn=V2m0Y5T zgSVgo;Y4zANa{nCrXYdXvf*#*z`8cKfaz<|J%$-L^KICFa3b~4<Z+8q8P<Q8oEz&X zrXw3`ALN;mcP1oi@y$M&4^ZXBTYq3fJ@q?x4XKYW*C~XYbW@=h%?_d%Inz+@J%5s* z-xxb9Fls*@dlzTR_yqnJq6(82_ans}9aLrBI!Ow^*!#7O#|w$Ayv|Cp{Z+(pQ1M3N zPIB98owQbe(YgZ7TjoZ9qv{RU`eMuH@1>ISKKTuax1p%|)+P9xB?EF@qA?3hwWxCA zdzLf=8Uz}`oe7dhgC!1g)ltRzJrVZ1Q8(4(3z}9YPs36=4lw59Z{3J$QGWf22;_@l z(>83$Pngd^E)B@`ztfud&}A;mejIy7Vw1zittgZ3(JzbeJovx&_Y**^P3itrG$<^d z;?l}<#BhItLzd6(b!Ws%@!H874HIIekB#M-YFg4pi9wpo8S#eSk&I1x(tnz}%Ayp` z(V4Dkvt<AbOPm)PpOz-)6D%b#h~B95?{euQ$;u&Xw`w`r4PzcFq0G~cYX|`79nOAK zW5t#M`}~<Ra(w#{kHgW6<g#k2>`h(%lU<e3MkMNgq~+qhhRS7iK~utp@kB`%{>Pbp zzGk>{j&Ps!g633|4oz_B(9ga#F;SxAIOR%F0<#ovzc{PoeB&a2#1)QxW-T348iM;O z$6*6Pmg$o_0xZ>1&zz^%KtWQrXnCf^le@@d1fIbMXgN1hxCAaDal$zT<vkukZ~B`U zN&@Rs04w9@wkEUnoFO!SS4M+acA~3SEbwUPgrm!K(d+v@hC@vZyao+=pP>Vd_qsMr zoBt&;b#)7g$u8-10qPcwHEY8QeGoR6S<RXEYt@L{VObo~?(T8Rp8T{;6AlV;(Mn*0 zKD?$P&D^S?1Bn@f1L^DLNE4l-F&C=z@gHd)K0||a5+KuNI;^0Bh|Qktmn}mCUjPgY zj?kubrHr*>zoA1*Kk6G1zz94lH^~M|*oWT+V~l{DU8@LVOl&uCgUEh~>Du!}Rf!%P zCrhu~{0$lGPJWa`h)k$(%}Ma|v}7z^)yXqFtl@Yj=huq9Ozx-hg%`2OD))=q=v=bv z&w5K8agEFhVD;0Pmba!1%tDERh#eHA$4ogb`ZK@aCFESQbz1FxZ%)3i&@bTOHC-pp z-8!e|lY%foD0x^F&_c(?8sPnGs+BUi`GEk5afs$Ir2@zVx3JVFpXu2m%NHdsu0_;! zfFV7$Zh4`vPcxQ*nkd#lQDNFEj33s9yiY8o{QkaVivoT9KUGjwj9zFr`-A^MxoWSE z)#s-kZU)S-<mkYyGw(O&*7-AUlO-8;xbXf{p}F!zYCVUuj`P{sS=Tn7qfz=&y4W1H zN>n@t&5w;K>xyaIM);lWx`p{>j0u*OBlc^KxrS))lRv!(Fa2KQCVmopXMZtC-!j`6 z?u66KU;KpzI9;t3L0m6mKk40`6-mPvUrtZ*I67pT*%pOm{>r$LwcKK|)-uvb6*A*s z!nbR*C!clmsbb9gaG)-7?gDYXcUI(QO<+{z+<U^v$2Ri3hl)0kohi+`$w8j0gi0%_ z8&Fh(b}l8LVC6yo&d?~K*>EhZvY@K#+MX}fQx9D#$ekN=FgwS1>C96wqm?@1GHC0j z%e2nN-~ah?$B_>W6ANmbu<Psl$sAH;9p5ngPXO#zT?}L>a#+H2-hg@mjtQ1@P`-^$ z7#fXS>5lbPCwP+|30As~RR<pkvx(b<RcjpqQ>47p9aij%=bLbeEn(_gmg*?p=Ja}B z+oyy7%83d3oz%P(JTHtl1V0jmJVD<6-SO9$QNzQnR{wBx04lsrqm7AfTG=|lxv!O0 zr(=Atq5Sg8ku4lYPNXIP1m`P`T(8}5k_d!LvijoF0PFZ`v=SiO2b&FO1yN$d*o<oe zZefrvLw!PD!~;ir_SYf#*&7Vq{iUiB3bNS+0yL56mK~~))~FSBA3|$HH?LWwnukio zlMaKo(zneweA45j5w(i-5ByHwvOZWuHXmp<=aOOvPMs)Qs%DtP*wcQqqU-oeQqdJo zma63m_n5G7odYS;@HUl%XtF{w2@wCFBFrDVhh?I|L^^!~dr)hoi&yy?{LEvBqM=4q zbzClJ68j(*#PuNf=Df7F<`KO+G@#1_RL4EN6>jg{qSe&22Sr>$<*}P<C+)R+9krUw zS~fXHMn}j80-5px8_vB;CyEu#V9Dq}K+M{oMb0L!VK++}N>HE)g9lH)0U>I6#A;k| zIfGcx4SNbNn`T8x82w7$-e+?zN$=OpDeoMGC5FIg6@%BL$n0{?>{h{1OnE5k`yXUb zkg92HYoYI*Y+6`#4dN?l7S24c^pNo$^!g7mlj_D?Ys%(g@3JKXvj+&=^+|Z`x)@M2 zi6EwY?W$mK3h{{A9+Ltl16&EB#l7Cz>3inELNy_;in0ubBJ$8q5N?K4$(wWvfeKC+ zmHk5WD}F$a@q5c{Vm8UVovRxcktFQ?OOIxyAJ5sHfBxa*;Z0Lh)5BITanj+}uW(xr zct6A((rzK}&#i`JH7a56owXf)H<wR`N%!~u(v~$Qf5i-oTQn+j#Q_uKBPprr*Jw6h z72A<55rR0Bu(_M%m8IdCM(^I<%{a-?qZk<(Z4Pa!<~hwI2utcrL|(VvmwI0^3SLM? zuH<MN^k<;$vuGUa&{mf4t+$Z(7azzoFM}yJJ{RjCG4cGL**o9N+z|jm5xzrp^iS6? zFoUHiiw=@1iHUH{SFpc0QoXo*iSUKwr#RLPY5ML5um}!}4+!Cs#<ji(E;dx852+T0 zq7coo5UvQ(GR=Pb))Xs0D|brL>|<EV@|w{*DSY-M6@1j-di4V79+xpuILy@a>`~#; zpkve%d2L*9NYLsn-O+~jpJLHbT^oZenvA_)6NF(Unz0dP)=uWuN)9VqhN}fpSSO9E zYp1YkzCX2_ux;ZER5MC<G76gISN_(VH=QpFfBkYZH*EYZmV~?eZfcP#L+`O=3Q)D6 zY#j~Q#HSDkIa(dJ%ZKH45n@cuy;(7VSZnBK=A$`zPLJgc2{6p)&y+|q%>Kq=(ik54 zu*QF!sO1DSxYA&Vpl+BhpLhj*##Sh;*RKc1u%!%4>N;3Bo%$In0*3%3v^m|uA+86C zb@)CCXCDEVf;}fMSCUQm-KJ$rCkjm2H7zI?Vg#}1_Oes%X|vF`^CS7aW=F51p=_pl z111X7;FZ(;#&C=*2?ed?yg4^1;8R>{j&|8~?Joq})rqzwS0|Q#evUHa%?{I={~s&- zSX?x-=6OS#Yaux{_0RM#?$_Kx?l7sPD>~IXm4=0$aPOM8+qwl##|o+JQdVG4mQuEm zdJ0i2F5;+x`E%;{cMB~Am$DS1>`HY14(+8ywjbI@Ph#MVUsgoCr=KE$L)T{nZ9$}T zcsv~Gx&op#f4oT+d685~5$(PQhn_L!3K$Sejt8Dqrot|Hm3RtIE1g%?hNRZ$Dt;nH z7oP5HYZDL?BTG1k3L~Qi^V7NMAzZ_@P6=Ew9cFch8*Of`Z_mMHdo^u7xT~LYrO|}d zN*|^jg(&op`yEeW$L5bTcV&z>d$@E5j-CQu^b!-3>h50PXh@S7^`o+gmC<38B*zYG zHv*qZiJ&;#jr`*N>>=cJueH|rsPp{vAj{?TqWAs|7#ngqxP-tJULDF+&p;tfa-WIy z`{Onrkm{H|z46<GmC~G{QQqYd$M~$m@UyHB%m?*8eD$#y;|uB(iJT6GBoy9{)UI!W zwI*;pn;{<<8LPzfx6zS7hoNNRMEU@9bQmH5K%iM$5ghlK9>~j>D+b2WrEY6P>{;${ zOwavs$TxoLnT<F+<XVlBe8BMa>cgJc8{>LMWXSzA^dIniBK8OatsD7mBNkTx@eAA| zd%P{X@_EPXc~bfBkM@E=vDdHiC-$jnulFvr$iIyGP+?(~YIm9nWUQLcaUIzvn-{hq zqLjjaYDm0_dH@m0icF>COghBuggasFB}RSpkzwdLkGkIPvLwr8lYO?&EzVZu^IcAy zlF9Q4E-}wP6!)?!-?gzTY<KC_Jb$q5QXl9Q#Q0|lVE|-KP0ZBNiVIKBkraoNh$X92 z>lz4QRKunsc!{v_SP$JHBo2HKZ4J<MlJb-Ll(GRKE9cT2a+`a5Z<A-Z0A<1ei=HF4 zJ}5wB$1mCfOloLkL2O37d=qiu<1aGeg;K~VO<Y-eE^o?1^}!Pcq&jlb`JI!v0jh8I zd;p#h@P6IFweAC=Cd}p^mcW3j6Ey}|frkrO={d=ac8;Y;Gn^%}f9$j#>T|-PlvYRC zQsPIZD5K8m1N`@SPFI^|ph_4h`cN`gn519JFw{BAa4(RxJj3NZZ41QMu=Xxw4#V8E zwY>OmavZV5aOu_5c`iMmw`l=#F)vWI!@uz#bnpofd%;UPsmF}BljoABmLQTJR6+)@ zmf0m|lu@?&j?=gev{1o^LtgFYKXlD>?{0otZ7cMIct4C|5jY1TXdf{yIY7WYEB$@F zZWi*EF@YmEhH{dBV5{RRFEcccFE3}jzPD}#zjQySLIVQ(`)3|RECf^_Nkzol#l`&| z(-h>Cm>IYTxE|CIT$wr1mdsRC(Lxk;ereO=99j&K$$-QnU+#R=ANifZXOEBmt!r@g z$b`egbQ8EgU_xVHDAtxjUf*5b!5>H{f{v65awn}153$r#r=UV*5vGu5o8Z4%ka5WC zjnBELuK+2`fc-M_2GTQN{ulq0t@AHtJ*ie(^O~02raq)Y#2hP}5fO(pfH**(X4>mQ ziI=0qDJ-*45XL<NCBPMQD7@Zd)OE<Bclq#6+4Cr~-htq7RpYY59}HKl@i&^}l7SP! z6!uvhJ`c{s41f;!Kn!RN?d)^(z;ZGs+avb5*p(9-3lhlP*@cz%Jz;wk1?1%q5VI2c zK5X1=;O@LV;J^zA4GLXs??|n8#}&N7Gcrb7<bB_{TiWS330G4~i82BAi7vvjW$;7u zWs^d#I5<iBv+ZBY^YT}Ywo9`(Nq45c>muXx2vT?oKI%bGw_dHi%Gl{c=J7+YaTF>L z!zJq0J|xJcK(!PxOydL#!=Np`tzMNVf&BDkK-S_>)60M^v9ZN!fR`EQS2?#Wf?{UT zi}v(>emAt<*u^!VxQg{P_o<aMjhBv**znJ;N{z>3T7vzZ!Cz`k@y~OqH*$YnmRw~c z$O-i7jos9uMlUP(K`^ZC;gWEY<hHg95&-#6wJrEE-okv+rvj3Sk3Gq$B@vqY9g<8x z@adlgH7vtGL})lNl8V|2c=TL%cV&{e3Uatosn``iQtQcMPFu%<vSz(a&rgSmX?*k3 zw#vQ<aO$~mswt<J#Z4%O8sCYBB9}LKnl-tL_xsnSu!xTjbR#1E7!X|VQWV?e@+$)v zv7sfo519n;{f~0FFaM)aT4s{mx|{T{yGl-7e%g%nJapyUx%MBdH^d5Uy=t!5jQleO zOJo7CQfR<EUEE%5zVc=cy0(}2b^rR95iRcVzPCr?!#;bVZ468s9=dZ!UbK6E5|F6r zO}E1R<LpLOr%B=tq(b)s8vIxV<%p<lbhOkh(8Qv9z{^_?v1ZFy@q5UU6Pk^<1#T?~ zihd$V7@4oq!wTq5<jUiO0O{*YDK^{OW==|55M(&G5-qH&5dfamUe)RH$<aEAVl~Ji zjd1Qk1HvETD3eAcuqjWWF`XO#JUa|Wibn^VnqJaYP%5$k)-Z&Q2-)ILCO71vvrZ`1 zdA-fKh9yEkDBy83z^CSo97ps)3ySg?KfldGgWw}({2XG=<@f}DaWkO(Rj1g^X)?9{ zf&2?R>sHW?WNU`$N#S$+%qabfjwTf?40~HX@EGm!34#K7xY%x4azA{(&boSlh(ho9 z*QpCLf!{>E(RG0cPyyQ?d^!M^D-tqD4Il@CVGu_~2VuHm5W|iTR06W}$p)}P9=|>o zi;ZmnW^qkJZd8cV{vn2ww7Tpqg>*-E8O8NJk-h$ti?--`<9okV`@x%?_2DN{8Kd1z zELnc>e1BkK$c@Y8l#o-w)lI=j?`ziM4%Ss2gqJW*_s{Gh^rM01h<G6yZ{~q#$eVb< zz*0=C#Hc}P(Cp(6Fjsk4olx%1LNca~-6sD;B%<acBZF00jDM#UI#tYvC75T7l%(Cf zAo#92?y#QKzfIbw2fpIpdioIXimq{+b<;Py&~<yxJ@N5Xar-|FW&rZz>=soPJrOwE zLTI9;U-%8+xlO3+G0CDc{&FG@*P4C+=_FH~r6(_v?OerB{>}u^V^PAbn&Y#utwZUi z&5iaw&kj_}8XZMNCW?^^O=y3ZI9+LaJ|hyGk4xR&3ud32qipfh)03@mVnQhP$yF2c zpYc26=dQ%m#0w!spp4`U^MlwCmC+2K+_Q%VF<b?jskH8%mDys+LxMYL!5wmvKJHdQ z(p?%`^7BajqYn>P3~JP<Y--UiT(B#)q&-oK23p&ChrZ9d2}R#X8B~h~T{>l%7Bd;O z>QC)gN~h#6{=SjxpXYg&A;_D}VqsmTfBe74rc{roa+J9)V*eU#$@*>c)N2lJe=u!v z^_RhW!Qa?O|A#`Frn<;n4Is!iTojvq{8G2Wwtu8J%5>64m0HgYMbJiT;@exfyYBng z-hqli?osl#H{-P6W&H8#tMOO5&m@=u(!s={*^^<wW1ffVyXuT#Y>yvf5qi;q%!3Xl zdO#WU05`5A3y;9S?G8#P)wP*G_A)X8&A8$g{&>X37UNGCr|zI1SK>+&Yi?oAB(s^e ze_F+)wF1Bni*K07h7vU^)k|dL6ebUE&cu;es++wYknbyw=JBQm#)ysze`>`(ej|$G zOr#w-Qf2tNT^REAd<U%|d~>c_^4m*z*jt8XQw9GG*b3R(`S-)vji}I1HSk}i<sx?@ zCLkS+BxM#nb?YWk7#@E_(u9O;1`ni;I1x$a{-dOsWjlg5Gq%0qb5+_K_xVjHFK_$S z^GT2C>PU??@oLg#_ZDAs_u1=ptZw_O*zYx$ECwq{Bu~6H6m$?k;PWW#1BksI=@iZ< z6is{9S3TpK|ImqI<3=&^-jyL1RSb+W12HBweGzgR3gEXJFIDOvfaS>35JKRGL^z9U zdd$-PrZZ$zsjhocXbT)0)sG=q8=J?I-c4+PeC~zRiSC*SYQ7;~;vVIP4_IFZsgTp% zvDtOMYKJ+iSea%Fc9zz>HxpmloxV1xL89`j3up<5KL<49lygdImVaz=*0Ms+{|5Ud zPnMh?GdwC;Z6_xCcUY&#qZA>iro4*Pj<FQpTuBn5Lrmo$OD9yKztP5q@s`dJEuiud z0D$vD;@|Q%rNNahNyn#A=(eG0OAOS*!MM~~Dx`~#8QEJ|tO_UNe@>(=j!xK-&gcKJ zH@7-<h%6;SIypVXFmH#PtQi@b;5ku!f-{eqsp(4*!iwMj^CdX-z2FlHktQ~GcCg}9 zQ#FjM$w5cuI*C$6WRWA3Ks6(HoOZTEpqyH5_|C8HVJN}7N;l*mU1RNe17pjo;w$a- zSvw=FrRye>Ke=_}SLc&Sfc5|9^L@)#%-ELuKYZmBhntyiL@a_isjH6LDnB%cnLmSt z`)`HYdf;DWu*FKC{?57A>e2l$s^iLcTq0kEeecK}@RZ5yaVs!bJVu7sXdn9!xAL}9 z-Ow?~g^{3lE$TA8uZ~h|bHQn3m;aaZZ{gqq&g8|mHi|U?yGhQk&y@HHb`I^+TGXMx zJ8Mspm}A#yfF<d|0<P5uPr}*CyHv>46xd!hUc36zIAu@cU4NhTJ8mUsGFYHZ%}()L zf?%$cjkOy=ii_2j?u<<rQb+wNQQR+lXwXTdGw4Oy;oGzyCo!<J2<VyaN}j=SsHV^W z5Jw&>gwwCE!^Vl+F&F#}4T-qN6sfE7^1OJ5y7;<Ukgfj^8gK$mUd|82AThIp(EMAZ zJrp0ojai`QM*Y@>kwcwnH#g}ORMA{BI7lS=G^z#_2@QQE!cyY+Q8cJzIGJQg=+wE| z%vG8!1JSzWN(#g=)3@s$S%;JC14u1(yROH1_1NeTbBH7WHvQ4cARO;W5InJ$rpItG zeae}W9WdK^cPIROLcdQ>_~&=4z#TN-!|%+GW{6!d#?^{2to8DhI8c8(03CD)@(Eq5 zYFN>}(YA)7#JJBdyn%OBzGuA9DP^zf^N?O|EFJjf`Q&k4Y-p)BF_-`UpkN5zJn7rc zEuCHRzkayaEJ#@ITkF-z^zMk*a2-VOe4}#$d0WL-CD$5#msq12L3~djnfr5QXyqLb zg{U<2WJ3kqZh6kFCxV!>sQVMPPCviFEHm7d{ZQ@TzJgQ~o>YfJn5*i(ZS-|~9&d*v z5PZ$@*!q^wj&($+M1106MnPNG`GlxgK32y5dyfRa@4M@TAl)Cnnr@O4M}=oKZ1@Jn zL$&Rr2!k!_-iBv~Ym)|Z0>wmyU=?^c;^b-(y9`(I5gbWm>Jog#6iqt%_FC=O5`4*e zY)55f%ZG=z9d(=vPRp7VL;Z2XwNbjjo5`2rS!IXf7OSXqO+~{Y4dA$V_BA0*mcN>2 z>|k;C%A*-yQnm#RwX{Fnieeb~(7L8@u)<rxPlyAP+kxVin>Khsf$u?*#Nlc1m6(Ou zkl?4LE-}?-D)}l-S@!Z|wY9@QahBXjb<UVsWeYEqqI~6vYQh7TZqsYsF9%A1hotON z=msVK{(nTRiTOs!b+1(iq&g=zQYK&LI;W$|p<Tgoh~EF`%%;`u49ew_oek!UdwGiU z+R5c5!Mn!Y6#wiI{rUv<sNoY&NWWS;>4;Oz9<rW0YmA#~?CYHzFoknk*qF9{hu5Bm zC$P0S0STENy*U@|Z6Uv96tSkO?5h>DGUKH3U{W#>_z3b?lgZ?BQ5Kr;V@vww|MOPC z{;h!@NexhA;)vb13>yl=BM(_T<2$&^fJVBNrAtvQ=|I;CuQ6)IM3MrDmQgLnwK&uR zo*lk#cS2D6jXfLr2*rQ#xOvfpO%=3vJ3HIkt{erV@gEZ#VTr&XscYj2Z_$FtFEbZV zhk+E}kciReyt@<GT4`h0G8l%6co53vzK?N)98B_`tJt6cHk^GL^w)bswxADN>)M&A z-`iap|CX@ddHeM3OSqn?-@#Y0V3pjqT5tM(oQR0@B<iXM4OXDGRT_RJ-MrXA6~KL^ zLDnZ;6i`nGag%O+QID<%xocb3&mZ?LnGX8Ka|GjrTr-aUzIh8G|F9>tCDA50AC80! zYuu>|F+=nPOn}Jx*vydO`{0p5)H86kutD3{fv67EmIhp*s9l>mnYMt}#}Qvh(8QsV z2x$Mxd24v^tM7%#gms$-l7@CbQbn@(Y77w(bW%E7qZ$afXqoJ+GahI&uXpmHbojv= zRw!?}FcSf4IazA%Nm&$A!T|Adpu)@u@(t6afFc~aBDma4W|}oI+U7plgMtd!U%He- z!wfZRjaO6xCaD9}sgosF$n}N@8fp4UJ)c{^n5&MHWIo4)YAP$(qM_Llp@ux!ZhjB7 z9ZZG@0No=9!_6~YDC_C5qa72#f{8XS?EOTmmQRjazSc187YjYP&FJ5P%NH~l>g+#I z8aPTbR^AZJj06Cv#=bJgnLPX=$ks?Ese>&PM4QgVbTpRH6L<$68UiL-l$tXoV7n9K zB`cyV5hxH8wnSSb(j@LhTou$<SyZ>^ItU~R2rRE{eGp6>YobV3V9nwYReC5O08aH} zOV0V5MiG_5#lA>1Zl?P+*mE;7JD9IdReL60$|f=`u){9Xs1+!Fb&I<;cN{{$2XcWZ zlCPUvO#o&~-e($1J<w2Dv}iGQ#C;orc!!w*NgcN<`Y>Q5$GLYMbTCR94Ab(_52%HV zSvI=|5)HAIG57Lh^(!Vgdw{dp0^=G5TX~)PhDEoZ$$*=t346Z};Oqs?s~YmXsbsv6 zOCqbZ_CML}{aW<IC+(n7;!npaDpcfY3RHe_)E4v@yBXg&AKKZ0>zlA<j`bg|$L0Y= zs4K>pPB-bY5?b@2?JawD)?NtBGyT-U94sLP<*@M>Ib<hrtrDw%lCS^$8*6cR`JQOQ zW@DK)pMG=j#!9#Y&A1J@G+Q{qz{127{GNzCU`Pfpfggo6E$7l3v~;)LUuc9lr1_Cd zKMtNQWNsC{KQFpt<A<g*F(Q`g#RSp(VxOVc5Hs=3>*UE&-3Ml-klSLPmS2hPIewxA zP*vD^Qu-z|i?kj3Bi=0IXTQ70e~)iMt);1vDB{wR;;cV%=t3@}pz?+z+DV;MuiZYT zSM8adU#xq+TdVAxaM9)b<WnLcghzAa3jSG3QfxvUWm;W#gzw<3fz3@^n60(&lU-+7 z5`kFksO7bA?1W3tBJ@DSF2Fi`VkiP9>|gN@|6n<&J4n^ot-Eg$g*>tvf9IJ1su)$t z_n_V&C?hv$sNebi$qu}mz@Hgn?_0ByRx-I-`VQkE#T+!hE4gOv4&E{)ra^Bd%UN_| z9pk9V!-Qj?iY)@h0_2$xVg|Si0>7RNRk3ibTVvGoAwD6oVcjEp%VWxo$8zp9-mV)x zG4LJ)ohTnBkOCrQe*U(UU&h~2T`@U+;O+3#OOHsIlfJX03q$>@JalGr_A^!iV2Jxx zW`hgQ$x0mqDmzgx`q!CfP!+O7ZV122>XA#O*mu7lLPw7R!=#{?nTm<kna?OZ-H;it zFnFfm-y`3Gr+77RV9F}32{l@l&>4kHS~QO(ZmmHx4NWX0M?QJvF?kGN0Mp$w+#^BQ z<Eng7@n0;exl&rJGw2HkTnoy}(pe(RHc6vuxqQb?Umae`+;~a`+QvNI9eJDnx!=4s zu#)CJyBc};bTU3ufoDzp59SyD$F|AcZH*OJZnP`LPS{|@JN%mBXSgPsQvX-Qt-X{i zwGjAY<GmTGMMY;7NV1~gFDRqdUnZ8@Cj_c%AQt{VmcBBm&93V@xH}YgcXxN!65QJ2 zF2$WfOL2F13s9uEyF+nz4erjD`+J}K$z<l5$xL!)pS{;!GT6iBwX$F2YP&1dpg8Rt zdd`A<TMGO*a}(!p;X!*9H`+>JZJ)K|%Za*`S{Cj=g|efY7Y%Mn{UrG_DEy`){@d2N zwnDs7NGL}RKSG1n=Wd9?AZ8(9`Evyf;uLpwO!|~JU;TpZ)Mu%1ioB;aIV_lzWjZ{- zNZ@}fYzXY?cy{r?og^=7K@C_~nVqdqOpNT=8l9P$cWi14Vd5Y_ZCyXN>B5IijEqz) z-DRY`xekh=VyA+^4B1(d(JX89FrK<;1(eiZdA-Kz0-U!ylo?~u9|A9bG@Y;eQ^3|k zXaWooQH={XB8>ZA|3K0?R@|mU54|@!d>`O{^h6&zuC@3IXA>fs(ZVVsF)At;6hQKo ztcqQv302+n{w#NnzSs8p2~aj!26fAM?q0?%15nIr7Tp}htV-QtcId)`xQ_I%rR^^l z3?IWxySKL!0P>88@yf**(&L8&s1z2m012gAA3H@8nQmVRfDe>k_%U=ElvOtgLGS%( z19z;C%ZFr*@O5ZPOL9cKv|%NkLPC8`_ZNT&#ur2oC2SJ(O~xm2K`tZ%8U%XD5UJH9 z7j=gPc5TdFd$fJS$bkYz^grvi#*O(b^0;Z?3AhKYJC55nL{T3?!C>WPDfMQsc4r$O zvv;QGA1y2zL&llB&Q;ebi1`^XeNMk)f%esa{OeS5bK}*@i97m<JalrH8Dmp{g}g&b z7`ya-ZdKNJiv%}FA>f}KGL05ti+=o<QTBF5bJB$d9PBTEA*>FQ&6}+kCRB$4oZ9Eu z3fMpKT<*!Ok@dOwh!4Lhig62eUmQzukpK8GR*x}<Igi$G3q@F3wp_a4o=sT#e`_CS zVM9--3kB|{F<M;du6!%o^DgAMRkz?{vi*Bokp$qQA4{c!6KDIA#}^!-B%Sxuotu7Z z#<h6uI|d%}n|xJrgI#Rf|Dgb}%}JkksZ3Z-0_naSjgD@P5k8<Dx5ko6uSIV_E{M`% zyr6aYSf~cYS9KfyzecIZEKh6U1?G3NWnqmInIu2Z{&}-L6DBhS-T`zam%aMv!dW5a zB(3C0+o?|JnLk@m-|D!WQB+{v9c_b0X<@R>rHNY9s`pB#%HRN)Uj&R;KCM@uKSU=5 zFJPIG((}o2DpPSNQ-*2{y0^^E%$8?QL~;JRfsLoAlQfIgFZdWF0I8PlcHI8E0vXC{ zMTjWK>xbD|5){%WrfWew(&tTTa{Z+!`ysL(lEeF#i_XA9ZM#{pdl7ETZgVxZRMO8L zu4g>h?d9d8ov$L9vemm;m6|nHWHFPy40%+&^{;<c&)T0)lw-a_g3$dg=*7Lo5h0Ag zF9e)7W*lY*5dKtOpET7o#8T|~Ak*o+m;JSOB6BM6p{DEGG7G{c7fxbPKZ1F@3w5Lp zU$~wciKMW1P!b#iKC3yQyl&JP^yhA<)|VFnF`dW<ne|iFkBs}*C&AF}jg4!-BAi={ z9^IGHV~=?HD9Nr^UDE*w);1O3fz)}38zJ1xeu+@C+jc>b0fn-Kdf6k5{y@E}e+J&r zA41CF^3r`=cDan~3TOAX@qeE|?0WEB+8omD4C#7AG3tn5_k#kM1d?t(!k2tLJ=-RK zg=xRVj_S$%5PUzK`kS}FIR3BzQ%b>K*9b3xZS6e=kPwA$U}+dpiuyF5UD1>_SH8@! zGcWOMYQmGtCSNX^F87J9Gs{BD3x)LtFiP$!$=hy{&EQ6pI@GPS4~Mo}B)Y9WAHNTB z_UBfG3(&qZKNc+&*8RCG4%Eg<GVF6uN*RoUMLC*}A9jYNz2HTPNY!3*BS(~sftjLa z3`@f7rOPsw(O1o5DOTrXiqn5Yd6jP{Vj9)9#Kg*jj4^3@A~Di2)S5dWuAfz^#Xgur z==Drd8`oZJXcynj%s1wI81s^<x@MXS7FaUo9~SIiQ_tI%OY=Yi9%TNaHYV=O<XtA? z)by)yjuO!ppNtSU%-Q-=H5@nR5kzbtglz~Fq>aX2JAuBU%$3z|Nelgf@hqhzqvN?N z#m<*~U7Qt3^uLYe*|D*g=FV`Zky)PV+Mnw!%gs(Y&5p?-w#?z=KoE2F;inC;Is(V{ zNNrcjX1T<?o{o*-xY>x3t{IH-WG)knT$lNE9asZfzqtvg`UzGm+ohH$fAc55e|g^Z zj?T1FU!yz&0-~2&T=&-=*n2rRex`$x48ns54LrmB7?YE#k~BxX$kgestj)tTa!S)i z2vGFwK%DSf#QgUV{&vQN@SvV~o$y#6L`m#ivk3MOo>vQVEsDd(PkgeE55;LU?pg(V z<$xKETVudNN~|{F(VT@dN85c@);#=jkMB7%&mB#hnlZ?#m_u@qG})k(ZA579pMCF; z>`>Uyq@BGz7S!Ea`2T`a9(+1>cfV~usH>~Dt)IWYzt7CXgPSEA6t4S=sai&#KNM7c z+S62_Khy*uRGK<S%_j++DECJ+p3BTY>A`S1Q^4NWSWg)vk(ys?NzPYl>HON;mX^Va ziAf10MaBH747c_3;N`LO1K0E!TaJ3ID|Q*RgN%e;KAkJG@PV!U0Shfylmd1Tf<foM z__(^2_=|c?-;|ilW*{I27gD!BGwC3Knghw-#L&?%f2(huHC?T_J<gS;grRiC9^-b# z;+ytciNS!b4l?H(QO<hSQijAvtvM}?+b#u&@Erq;Bm3<g6xEZPFJa-@IubB3XjQtF z#if8-w>CE3pcyn_Wn${mYU$A=f#?@3-acnw(s!_bJq>yi+D$3Y&cSHqE4oqf-8{id zz7#<m!{<sJj!#U~I!}%`u#^-78S_@@>#^?V;(*UmO^bQL!CYSfc<pz?DbO1FD?*HL z!+trHq$)86q(LMWnyQ1I`E}+4(B?R8Y%K*^S=z)3HYD_{TI0t@N+Z8jEm%1#_x>T# zY8JOUXlA8n4tD<?^!9#T$UegYI;>Xe@R%0UWOocy$HTg>RALq)PVm<}HI%2?&X4Id zilv(7dJc~#F8r@MG9E_eQ_a?VaXCuCVE8*jHnV!h`Tub)h|fPmWTbtYhP~0U&hQAe zH@^2_eu7W_<SqLmp@t}O_rBkXpN$8Osx2^-LN~C3sv0zb(OPw*;cPHEzLiWm$%{MU zz;1Bw6t6xq#Y}Er)=@^Jpxh-i1>H}Gn->zr5V1BpyG!AG{{XX?jrE69rKpJJKqGu9 ztvf9SGY3-%u`-D+gZtMmXNUyS%#8^9%=7FDD*SsSJK5b!z_ly4f{x>N+FZj*QiPmC z#CT*F+%!==#*viL`WA?cRXBSxxiBd~Dy}f8{#Boe_P3W%cK@I3Dd}%Vm$jaLes~Kp z^!NZXTt&;JYcJAU-}RV}!;f8Gh=voae=FWH6B!u^iOc~H;G2qwi3LESk$?4l>H1GW z5(Ad;$tTf5I>g{DjSb*QG2b`+T*)<HxY%u{6kbch&J|OwHw$GMgz^}}4aR^qWBNCb zvq53tYV;W|*aMRWD|Me<x2D%%+>$sh6>=OGJAXR)qkL?OZ|y)E)XY4QWTfOdy>u&g z-*j_wz>z^yp5|nmqE(Ic311GGIIfR=77C>dc<{WE4{U(HO24|K{IA@<kg>6C2|P}H zc<YxtyFdXj$hJ1$S1m?*{WfUOUkMg&*Ang+R!Qz3T);YpW=97T5n@vtDzuGRnB(@9 zof27~KE~*At^nQ1NZSp3CjRhJR+?I@uZH5fZijR6A4Ur-QcB3CEztY3r4iO1#&eX3 zb+wX!ye$gdkoU5Xcjeeg=6Daf?u78=a!gKne~a0ZL)iUN830B8yD6#TpVv5@eBkI3 z$=KdA5H*kDLt;SpXK$r)(Bs}_5wZgwl0=H2^Bt*DvF-J}VUIvQkn;UmT`R-U^R$(l z5}JzIV$U02DV+wsN_(&Mr-FG>KsRbJG-b(1c@&n+sQb5Xu=RE-o?_$#)b(TUC;J5~ zXPKX5Qc@#%m<#fY%my|-hwEJ5{|P-K_*3D?*nv>7dN*1}p4^DVsv5$FQ0n39QKIXP zo65Qr;-yITT&nc>9=m!LJ<&Vie{?PHDUewe?)_hQwei^Pj3qje%V3W&NAi_M2xx3T zEE}g}R$ze9G>TL+D`+2lF;~Jq|C(iz!45~}(#Hw(4&T?1bT|v#PV^h}&sK6S7IBsB zS<~6lJ(i_^6mv>A+lN=LG4^bH{yHJdDuXDHsjB~#kD)!gHFZ*^R%hbSc=0X>f*<4{ zFt&}yEO6G-A%}*CI{$7BvI5<S)Hhif>$aWSi=d~~FcgP3&$>X^>|2-4wXHbu@xUz= z^KhN#(4DP3uy-~^?Uyu$scMYI6c8_x`BxC<f)b_gn@Q=ep<Uy`ir%+x+!(tGLx0q) z!$UC*h%LXcV!*>Z^`g8*ZkY28!l4We(s4Z9+FRcHv!fQ?+(eeaw~301LPmsh=9+fb z@89PjeHRbElaZhRLFmkq3)d;#^7cAky+>tmTbRo~6<!^Qk9t<Oi>gL)`Im9{>25N> z5Fz6{Oek)s)OjF$^|lImc)>raPym3^*(?0`J0oHipB-oJVZxF4n~eba`(vz&PwQ(D zWAGbE8dPbXI<$O08GSFHeJJvcq6IJTl#U7^*+FRFyTL05>eUt$Kt_}EYfse8%~05b z&f7DTdGGDZ<Io3z={r|ZRZt3YcVeS}NPmyy&61JSvofLCPfTZ$Ap4tLtv7(9#<K$( z*2a;ZC>p$<yYV_L2@aKQts&R6^Gp8kPp2NqwEkhQzjrv7gIuDsfBu|SbE8l4cr_}4 zgTczeg8!K$qqhnLN0qn7^C`;WJn%j~K`4m#SiFZz<{inQRgoK@U=V<4;zR@YNG52W zqP3bwgBKV5M(xC^LDxnFBJM+mW+O0wl_;;>6u)c#y*qBqPZffR6>sc<X;b{&n}QHW zP^}i3ZPpCaz}Ge^s=$%tAvkmP*o5vbl>1tFf<%lN$%PFg$5y&YW3AQ#H3*!_%#+cE zH}b-p1Q9t^%)u$*yoytlylbVP^4&{_DSXb<o9(XAQ2Voz&!#T>e+(`%t1*LCclR3d z#G#s3J701$YLTY1=wyeZb?0@+k-uJ*b46`{f99_qVckVW+hjU~ns4DR##lulIGHA| zz^w;`lt*X_f-0-{o;8gm9M~3%?_$S^-_lhz(W*)CD~;Rk%WsS-fp{PD7El(OX-tIO z%IxtdF~vzbqcr&H(0c+<@o0T9oE58h)vMG60v-)9QNN*78z>^6_#^ZX!L2b#y)H(@ z&$Bj7vo7f9p@%ImFQSYCqk`;@p;=c*IQtS1?q*9h)mJ+~EDhCbPLPG2AZp*0xjhI^ zs^pe0I|eKe;n2$_HMk_e_l01}QW7)NU`R#_d7FW@cx|<<*Pc9vt>}9Z#n_5oJv2*d zM?ujmxXb4a<KuGm##=)WwU<LgR5W_GY?iY4)8KfnZ?$LbW|wDI8oV;O9-KtxNeCZR zcQT5a)O<oMz(Ne)rNK&tU-d(m>GmxQj2enbQ?|3g<;gG#yZW?nvHNrgIjsjbQN-nW zxRaBZHB6i&2)R$FbU5uF0pLmG;D<b^p|>O)lgQiPK|}$VpL(b;LBYY|_a{F0VfdG? zHx#|*ArJ%?WJrK|`Gb7x>F`g}FUaSKOb+;q&Pd2uamATN2|GD?xl3-E@M^`KArmWz ziYe>0i{|&Til;2^J*W5IQ&aEu-t5DmCmU1%Gom`Uaa`i9P#b5gq2ZDkP#C>6ljzX& zd4Fef!_c0(sNDkI@lNh@y0DQ?SG!I4H|p9nb~O9Dg0X${WTUgOP|t8cPH@~ZvC{zy zi#=Em{u7*;Ak4W{&)PhRo?|E@CD|eL-AJAGR^Q0Igbs;UxeT={Ep)Lf6w`x-J~_kL zVG<ervER3>;|6@$zpHrToLET)0&2}Zej_SDWjonQ4Nyx4Bd1Uy`l0#A(((N+_5Yx4 zV8hECPhH%MZAjJPes!g~#Lts#Cy*K{SeCw8*AN%X12Zk;*c(8nHew~9s`HBR;tA*w z(0Q%%Ude9D_~xB9XrxVN^?$7p-}7~XsQX`IZmzpO(AR8>BMzM#B!!O0UJy?C*~+iK zbPc$>4m#ryvsJ&Ofzp^cugn2ZPvpi?C3nS>cf8A`z%IT82DA3HEAT?|+fUq7-Ux0? z?>je(UCiYC4CrI;$cLDU!vdA!r;O|pP6u(&54KWhS0U6&Bk)d5GJXY=e%URy;ae6j zc^yA{C@K0>>$)bU2Ig(lvDbzkBO0Qe@Zk4om!t^MDF)gdy#W_{6&4wm{$6)NXB=K} zMvRxY%Ip}WCEtW?2M5xH&*o6rQpnq3UucRiMUbIQ-~eVI-oZ)B#AW*v0kxqEj(R>H zF^nHu+DhB4qYuVYZY1*VLSkDlovqE?UL<gmGBS~7Um#3|r+`HR=#eKDjv~b>x7&0H zDH1Z17LPM)F$|oUkkKcB^r+x)@7L^$_Cb4y(F-IOy8}8J$-nkhoS5h9*im4<bxDg+ zc{`8Z?!c8;Jsb}Q?DVn9i~reE4lYaRFhZqkVy*;soP@R_6aWAz%k!0wlb)_r-Ro@C zM*3WE#knFMA{)LKyH`4PY;$_(7x%jiIYyabFIa=!1RRJzDMjUb<AmLH>pkAqI%7?r zX<tujq!?f4O}7^VNljmfa(vP22|Mq3+pm!WcKI*s#Um-YzXqE=;rX4}DaderyiQ$R ze7v>FZEOD7?ByB{!@n(?31a9Ce5-l%{HRVwuWfwXHyxxG*GD<2;+VW^fc`-!RBaAe zvCl1J(%z(q*5St=4e5TuT>O=xnhZLu-mGQP7{32{?QVk>n^HX|2THQFuZ?I{XB1Mi z$jHMU(BRw5Sz!rspLFkxtG-O$OK8}3DL=*;6&pYvQr8Y#EczJ1fW1uMWq69P*!y9v z{ZP#u9V&w+u>S$I&;rMd6N22w!aX*M%hS&Fgc!s*=@-C?h;GF#ofQ6%h4G7CN{@<R z|1m&4T&e~C*S1JR$extsG<j@nv?joYb$4mD_45G*lk=|jTVtz039KIf>ZSEuc|a0x zilLY`--NjDjsE%jK^)9Nny-7ww=wsU_Xa#GPz?)<pC>qNv(U=wd`13$n5r^Sn?7z~ zw^N$&D6_++l^2MG_$W2pd(I)$L9MY;9zw?QHCTw?`|L_x8c5r(K^WPwhJ25xChObG zVAbO^O0_34tOi66%umaxlnIJ7lL3D6Q|so#u`gpgWKWizE$*vM*RHY5HAhSRmYt)% zuT~8X<tY?*|AovTr#u}f>skBmO%1DY?G!2aBb~ceYuj1i+~ddc_{_>@rnrRk<fIra zQc!YZOwymE_``TDt_W>RYYFB7897AIT|Os55It-vL3QmU%7J@O(cb2tBuI>^l#G&M zah|)>r}05&+=0O(@Z!DiTQx5UtR}&rX42913CDB~6}%)OM402thBR~WB7>^3yHxaJ z#eLnRh8gZxkJQlM)5o%JBAs#_v*@YtL+eZC*U{m8c=LQ@RaB5;hz9ZUI)w!tbz4iG zwUKi%t1j1D&^yj6{!U0qb`)+YoFcWXW>PR<h9VO!oB+9u373nxlwfmfwnH8z_VD64 zdu=mvxT>nknWlj1_338&nRN1LQgD;ME<Tt=S^RM;`(eWu3|VOi@R*I&QB+*45&DA- zO$9|nye>MLV$dH(y7wkFdnIO+GoXYJb&a@2;Ut8OnAfmdG=OAfKFC!Ww}F&8i6i<M zOjOv=QUWk-FYT_PmNN3^I0n?JP+LDRIMTOLyH3|~l7{OhbJ{#zF337R-qf<p(i|r0 zu#ZP%bgr+@o=$4FLS2w7tI&~sexZx6tLv7}*LueUK3rVZ=LQp|ram4~zk&m!mr=?6 zLj&(>{=2sh#fSE3Pl%>+woPAA{61cE37(IS(XgP>x!G26E>+zb3z!Li1ZOVj_N!j) zBN+et!yA}t=}{QsARyGd;<I=Zp2FKpR9l^U*COm6%*zmtEmyYzYB#uWCDesG0!QB0 zedP&gD@n|+Sb=#WOkzJ}fax)QRQYDf%vZz!IN=9)5L;?VV5jA^g^HhDgf`M~fS6$j zD1Kmt*Tfu8_Aj8+H3Y5>oi?byOr4PFpfqN5UxgBEz&aLb{npZT{+k2|apd>mFevR7 z)BKvFWVeu!R6tkOWwaqE9+>C;Z&DlpvqFWATs-azI(Gho&^}nIk4zZBBfz9{dSvEM zia{bIP}Qs~Mr*#IRJ8<jK}53!i@o5E3cLm#T=Ls}EE!hS0)Y+tf$P2OHLD)PfaZ0_ zCS%l|ja~=#%PWg5=m=|yixTX1;Pv|%ksHLZ&a}CuH}c?uY0WnB55^bz@T^hdp7p<C z6j9hck)#6iFqT^42&cz+AG5!dTN$O^>#XJ97k5YW;4VzAcUTLzbR5Mp^_A7ssN9|Y zEg;n{`BwSzEymp&ZrJlSp#~a5tLJZxN<?8~H?TNLa#*$)k?G8zT-K6AN6gzIX^%^R zSybh<_=aeJw8=_EEX7s-8Y;l8w9{58`Xv>%10q^XHcCQK8)KFz#Q(hQ_aZ_FZ8D;V z>P1ZF-SvTGb_`*y3+|xwyKLdv-Ccyl5d}tLpgXX<t}3E{DZ;jq3Gz0^G!<FEpj!zC zuFQI%QG{qsd)~>gk|5vmbwQCSL1xc=G2K+SAeKxt@b%H#{FbpeEN^$WZ}S<{R5ELm zV6MoteLeJj7m9!EL)_WbdG>=^?wj(P6Qn*SC-0M5!ZU3VU~;vn%nE8QkaQ3dk-3`n z3IXyKzNVoaG#c%^lE}*|V2k*L*K=ns(NDR!xX_lZ+GCJODEU2Zv)%9`7IAhCD_n3p z7ehHC(V39q9W#k~u_!Kg-_z%AC93lU2Heifvy%r##fqPwJ`J#6Mw+%K&7+D%8+}04 z^sGcmoH!IB`7}B@w#Z~eIx&Q8+LaAS!|@kn|0RazMU6u5ji2CMR|vYXV!;xtiXk?V zY2~UopY_!1^y$M}B@zq<a)rbA_}iMkq!qC>n2@BaB#vetUo6l7C=^1Rl^S3joL{3A zB>J%WHL7jCW~C3`45vJOyOJTiLnG~Og?etQ$u_wA_I-yF_p7(-7a!1P3B;KrKs{#M zKV&}V`mWzEOvzlzg}?M9Yod>>T`(IDH2AOQq<wa8zwj~q9IyAzO(pr^tssAQOU$iy z;BgA@xDa(?xe)75It5o9IW$yDNOkvL;U;N#g`K$LJk$STuRq-fcdf$%AjAd-&)d;3 z?zIR_eB{90KEPsNclJKcj?TLS?z2bRx>zbw56O&h=#>%K6DHe~aUg$z@FL32FOSwF z$G#HA4Kd|tk#xr&Y_RHd74pn!)ca2hqQYf7?Nr_IDNDe`nF1z9oQ#z$e`NZ+Co}e3 z^N{rG%{!WH4&gS7V@r*m81=`pfTiha?hb+br*D}Erl9*A5pVqAm{|3}-FgvSU~%IC zjSa4vl?=6nbv6V{QYaU!pXAbtNT#wJt)sovPtdNMcQLjyUc9n}#OKbG>~@fSCRX?5 zAwr={9RmWB$1AFnwM5d*eSHf@Xq2%>qG;l^B4!Y~o8u8QlolH+Dq0yvMcDEG^PwrT z9mr@L{4UhtW>w-|jB9FQ!j>AT3E>QKQI2t2I0J!GIgrHkEcxdNYZ?snx)}wfbW9|w z87v!ANkM+(y1^;1hH<?t>2Y*HBLY7sz;X7Y(jRyMB^U>VQ$VGvu9ze-SOqk$#}RJu zF@z3xhXVxBE&4U~ItBcAdARC9X!gVqf89>5b8N$dyC%UPqZpf3;1c%=5*f0}HMW9i zHFD0y)5}$o5r8-_)4xqNj4dL+yYl&<=?eN*`=7C>URPmF+D?-cHS#s6y~Sx1jV>T( z{hHgFL3r7q*t}JJfxGGsva-01dD|fVJN@C6wGo1kCWWoM_j60J`2gVO2o;!l61+Va zi;oa>3H!YAt2OR{<F~GBPSsliWjNcy@hj^G2JxSEIm#gCf!97cg1qIzMJO1_jYF!! zzp<_R{tj&7gvn5Atmw_p3W!|f%VkSHWYNr{1?!8{!7AlEV-<Hc%K{E=QjU&6hz4Vj z#N3X}`$5!Xip3M~IO7*hiT?cEbCzD1e*3p{W<xbxj_3`L{iB5NBXejw5c(%b!5_XQ z{SY_(@Js{k>lJ|$F94KS_WC~K_#MTR%w~MiqYVwP206|PW}gbY-*n!Oow3LHOI&t5 z?sab7?}(XlEc_rvx@mPR6OE;2Uib)pY-*(n8tacs=(evw9n=-c$A-RRW_l>XBbj50 z(2!FfoTA^r^(n+J{-&w(E5XcG3hxH^vN_+;^W432WA(fF#x_wPKlkKP=qZ{%^a(bt zdx+>@d3*GTG3^(*pylPUlQuS?KU}+Jn1rha@t=HMB?RK33|K6412R%*MZId5Rx2wb zz(Vr|cK+q=YCLcyGSorWS&>rEvowrFbGt4=>EU%%qt|uS`iPKfhY<%Zovj_A;`@@2 zviaAh^<axf_2GWcyr4n}nEa2ZP&1>%HM_vt6QQ6oP9lRYaU?vw()O>B35OkI(YJPq zstwFJoL^o(woO*%q#V)uCs*yVj$LYnKL!*dve4`_W(?H>MI274pKo;BZ1r?hR3H@3 zuhSd|A@1G~MYE;!4O%v^NK7+<Muo=#N?Yg@=C1LU^k}AVcEH6(owX4yeiu3psAHcc z1qm3uyx@Xv^?;DBhlfl0K<MI2jQ1YA(M?CCe3n05fk0RaTF6+iC&<R`sn3IY8a{}> ze7amTnY6KJX7>9!&tT28Byx{evE&d@oUrQ^1q}d!10?2V=(gM)nfbkF?Lf&ps&s9Q zsGwMMysF24^WUVbO|EmND?E3-MPR%U`{WHSR?(N5TE^qy)`<^q-UUN3M^u1+7qY*^ zWcpWHUUnPg7&K-={_9Ho?fX!VFTBFFF8smt5)?l|YU*C#@{sy<xd<{bU2e(&SMWPS z8JF^y1k*%o32;~Q?=dUv!+ZCfCnqbq(m~~KWBG<wogoJk3f(?Wvvl<4ixsq%DRrL; zK1nI+E0)(+eS(%cVyR4!$uQNfP)kT?v7{@e!AdByZ3t;hVdHYVHN4imHx<pe+cFGB zf)}SGK7G0}|KPin_`*fb{bunaR{q~j+dksE<e}^(8U=&-4*GYJ;j7PEDBR84ob|Xr z#_1ZzPZtC@3I$34X@+y)Z0Yvme@#!RHS_=LRzT6R{EU6zmH}_$&Eay6nC!4Up(ZXw z4?6gkvsMVB%|n%XoLC{UKHew3D!8PJw~dNKW=$!g;(<)8=4cE3N$HYfTjuo_CV@F6 zZikf_J~hYs%7!Dyqs5=FM?-Z73px*O@VboPIkQGB5Nb>Jh_~f>f?*L)>WhVwHzhW= zI(HnEZFC)TS5rmZlSro8P<?uiN?Zv7kXE;{j)fUCm9E>ZQeIW9YryTM1JnmjB$(GV zH4#N0*cjl4F-7=^Srwmp7Vvs@^zco%{ea@VMTs_KC{EIfk(+Mi=0JlziO?u>uUIur zpdpSfv1qaVN1QAL1X`4*j`=kj*c9Jz)wut5-{_n%Ew4E7-0b*Bu37syDwNO1Z*Ahw zo+vpyya{}9>dGw{fgtvQ9SllNoBVe{znw5!*1vK*{A5+d9XE%vHCt+3`Ftm)0bt~y zWtzPW!(<**v8%3N!s=I1b#ku=Xm&?zl!ThQkGb&2u!-3H=J(1O@cQlL{)C9#WGmaV zy7qvj@9o9w`Fj(@EiT#e-&a3AlQX=hZ0HvWG!_k&QCFSqW$@p+jQSXS><*o#6^9u$ zY{Q(M^IVUgtSFMO{|qYKVe`D{$8)TlXULmEX(vBsiHA3P(z;^eajv<Z)d;*>K1Kgd zms`hpkWW$T<FTa!lEK&c(x|Kwb~1~!>3fsnVaJx*!NZRi{P6;Zg^)OSjfAIu4!vU# zxcI3|$2b0h>KF*IXEoq{sc8(fiN3fIg73ED-Lk|06@M=Ceb<3smOy1G>Ho{sjZ4B+ z4>c?jt9iPF6=ll*Sh7+mXfI;2-g0BllVP>2q$EnTudjm{k4ZIFK|@HaB3YG0)mjFQ zAl!9fvM>fJ8e6%Gb~HD0=U%*AFH7^7dU#$XydzZU*B2#ZodD0d(-=9PLn?2~(vkTc zawmkeFIXLfiQx!BrCg!0!t6X*64fsju_x+IOa;xC9)y&tyGKAY-QfEF>tfD)$V{44 zR{Kk-%419qTG(k~+cS;d>#(LE$Nc4A%&ZB&7yrNo7-M7uV#zAP=~qFBJ{89Ln5`N( z7PE;g_;nHONGNn;whl#IfJ~MKe)=Y64LQi+JE?DElB(%2Ez^GRWEx|T{XAMT0@2e8 zUEmneN1=(<Tr(mpVUdJx8}T@4P|}@O7Wde`E1e7<nYtV`S?uh5g#p`59ZM1uxHaEj zAx&13Wc<*HnO977f<DnAgAHuJp88^-{0M7FIyE6yq)gSry6rU9weMAWTJ*!%g`ak$ zjAg8#ENQ1z4p_clmo=pe1Tt6a3`Ep;S+^pMN#x)^oRj+R5?_35A&4`MjXKCt_WNFl zLdMR*rp?Y5{`bL)+$<wN8heWU^Fo0A5kw6Ik3rb(s1xcL;}B529f0#}6{KGZbgycJ zJ?N&SC>Bxuha<tuq1kDqT8aaoPFM{OMF7PT^qtf>acRp4pr(GM{=pa;q?IGDfqZ!Q zc;DpW95et8DC$2x{^Z&i&&rxG@>E8U+&&}#nAEIiLRVrO0Dt*Fu<Tzfl%TBY8a=bE zhXmrlGbmyMEc8<>iZdg~H<7n|c=E%%1a@=z-vVFmb_~vwHGAjB-qj~}j&e1sr24$X z0{qtd?_IEPF2LAr%YW0b)GlGyJD5|;eK(oKa7Re5{=pcquUqrGB_HN6t`bL42SHNW z?ZwD>ZpfqwM&4Htk$7w_SLCJDPb-ILD%)eLPEV_iE`h5JnozS#9Pe211PWbj7TGkF zEQV@y%#?cJ8D)+udgX8$8532FR0g!a;VFuhKBGBnM(I@Q8<&plSCzv!*PKpdTzLH5 zBEhTPUQH9tpJM$=RS8L4c9(*eo9gVbE6=qTaQ@j${pF?Q@Jrh)-Q91fN5ZF$#CGnr zR~vXsQJF2#gyP{N*&Bp}_H|bdzw=cGz}9{Uov9k(5_{h#B}d-C)~M>Hv%e0X(^#m+ z+vkZ1cTm%ad};*mi6ohf(St!G`P)MeCbSK+Z~{{N<dWYyM21c9=gwFUfKoF87p!Ls zqB|mY@g~n1w}TFDd%K~69qi~(u4JLhuhgtI9c}BlK}`;E0bbVpxHCU|ocw>XX~w$i zl1#?$vZ2NJVw}2Z3yJw59@&(dg50ewJ+d)>Ko6^$a&@SB1jE!XtV-b+HI<^l-(C|7 zcrIO||KWxeAe(XFf#D;oN&+VADJg>LXRLYCt3rb?37s`?sX>)IpofQjYa0B>uYb~X zfo#QQlNBdsjY8F6Bneqg#t6<CEN(m2v;iUUn05W(qf6p-o5-t?IU0KuYLbm@w6lbL zbuMW{PNIqMi2XW-2n&53r5VV55$N1Kbv-6aW?MP-B&BrK^uF)`fi_+rA#vQ(q}eYo zz7UIFXD-6x^4I&Ou6UZ`o5RD%eI-P8a@dYgMqG$%`7fX5OhWw8WWEl^z~{h@niJ_f zXlyej?c!w=$`sX>t~f;#Jchia`w;Aj4_Xc`Xn+q0YFaD?|IJCv=N8c>qN4-eNh-nY zPq%w&T?sX(g*Ov3WRl`GL&hzui!i_US+ad6^yI*9k@alV#~7UFvO(m=W=wBk8LMMy z{AX=5{S-kv5LVP7m)Zu43dKB;_}~haAFFT857SmN$cZb~^mNeXOyh2M`j^|LI-A1< zFPv9W;zoZ0F|6geVc&Fvj)#0rB$l&upq*okEPVB2Z6VKSCf>70Rp!w3dJGVL*X1$C z$D9F3tL_D4{xX_<`$kG{20uGLMW>J#Qd_gy0eY65%KFNM=#GMD&5C6|_Uf^EKguwA zvs`a=K{o;!`-6sdUnjHiZ47WI#|FEtNo~x6k}JlvtU>9=*RD=2YcLu>n;dnWN*K_9 zncE{1PA}!4WLe2<#{LdA^+DyG&Aq{7$$BAbco+YJ#nCNxw1>=axWF7Rs=UwXA926Z zDfsAK`+~^5BeuTUBMj$anTnceuXNKf_abGj^S3S_JCx|@?^V~d;V=tWwx-%?%D<dQ z&=C`rBsM=tbyqf!vLrrScE_9m&Q60$?r$T<ui+PX%K%x-GcQ2i1NbUYCgx#7k)h}+ zg8uMtd?UnKWU&@!@Tq(^>@{0z-;uOzdj^jC!svcvLoM9d_U2GHSN3wV7AdAP^h)w5 zDSz)E)#Ll<qEP`b(x4%6`s^{_kIdwO6*0isG|tn&WYZAii_35em#}O1{{19G^z`-e z$wPyzZ@@x+eet`F@1{YiXhvJM$^imGEI8xFPl#+$F#+;B*0B&nDe8~5>ev{RlrL@S z$`DO^S2tLK@bWUeiv`K+jfA%|_?HuPWkd(bxOm}JpT2%C!W|E8$AY(adxdf|JNb)3 zKsAy<s5J_SzNTrIoK2D|+~pDd*DBWL<tix7UBFN5NJeFpW!fnqxSDy6Bx#d@m0z7~ zAU&r@75Ly82!?oIgX@>Q#7wb9Iy&CQo(jjtS_TMJ-!-NAx&1?uH`bCH%WOas+n5G< z(y!tZxdwKi#8#mNAvm@m!nn~r*@RAjc4AJZMR}YJC_|W&qs<ZG)Qeo^&XET_+7tV{ z1D62%aJ~%z7%$%0HvI7+wg%M>dd3~$MGCWApkgU#l_2ECIWAz$0QS=fOK9qqEZ5PS zz8$NAt(<XX1?0sg1Ys7?dZnWB!()!TN)S8@1%>8JB?FTSx25l|W|lc^YDm;%P!?AO z<l<AT4mhS{zR0?ohWFy2U_AK8T6A=BV3ZqQ-UmBkhL7JZ&OJ)<BjmSvxCdU*ayRUB zWaKa6aXQe`fBxj#Vc*CJ_#}Y?qt}$*PNhzbAO3KM>B@q`#dK0tm$rpuctBXcKcQRD z$P)2GWYg(hoo;MdMKK*kQpQ*RuT#`#wg{tgH%L<o;c8_kCbo^wy`w+^EMOEo@VS0h z82OGf5uTnmMc5l8ev@uGLaeFJZ#^YU1C<hxb?t%2C4F+wBPpElq?$2qV@9`Fj&QE` zr_=kGCN{F)xfa3^99k_ql$>-jPFcr!N$QperEhXh{z7j-V43PLy3BV&SnAbJtNx#@ zs<Ul+n*3Ea_&m|h?FvFyv46B@2m})b61n=l77EmMN`L205)s=o4#mDfu&nx}E!1um zso)bT6hz!dz~F0lB_c!dxczxHuEqM10e!+rCyIN+aI5m=-XJ(%w;jg+<4{OMxLh5} zGL4lqh?M@o;Q*)W$D9voilJjiW6Cn$&Yt|B!74M6rFWk<cyGpY08eml8^R!DYX@t+ z){r|hJTIPA<^ZG(F)^h+UcA03meY(mfB&wTa%i9{qr#&&OQVWIS+r1vix<X#taXy0 zaB-%Y^5qYv(!PN>c7XvXrcsR)gm^#jkI$(@_LCo$ex}{hBg8y=1{u#)K@USBfhKXJ znZ-RpBZE$9#+rxrTX)*rr5V%cNuoNLvQn`MWIKitig|d5A4@I{0t=1RJ#2oQkiTzV z_}^7xoV31gJiKQqysme>$d{JlR|45WIfO%gp&Zc-5eGYD;jSA6@RQPL^IJ-OoayL( z2I1swOJ-mLZJuA5-pDaS>Qo@H0y@c->l>-_0MsH0cm@e*?BO;%z}4B4+n(V2!Djyz z=ld4M<@T?~_XnpcLJQV9u92ZFxHu@n<^_XJHl6QQQeQ%YKe@^EdPO+};MfS=GGUN^ z6&irJ8+ZnK9{s!QK^U$}gO?C?xh8t1q3kXLXM~SdQ~~{Yc?Gew+-5vy*{PV~SG6|H zN+Y(1bNj${(w&O92t}Q~y9z<=iyAVqm@dv(NFt4QgAA`hhAQ#vaGr6?gco?|iOI|0 zvds-n-2i#TGPDyM3Doe33i`4e+6lYk+Y%i!)i?DZcvuRg5YW*i9bR|(Nv2-t(O*0) z7k<ND<|uo(;}JzvCmg$RysU5qaFSqrLWWWZO}vx>r3{W*bw%BO5StFLM0=-7M)GuZ zKZgGT!Fo(%d~ssqd5*2s0SU!B8}9pE0ToGpO6kEwhE>xi4^>wJnX~9j`Lu|7)zo~< z>y5Md9<q&jzrW8Nx;$RZ>ODvO?7m!wK37>AJMXJ!`;F>*B27?10jRXCeuMU53WGam z_hE8PSm9O$v8wxHeQ<LqV2pe{BqXMO)ei@+R>IYrACRVLQf0>&7eO2UI*#QI9GcN7 z!9DNp=xQbOh^Z;ZP+*p<dYTtV?89#O=ceuW2J3^pw`q3urz1~sQ&ivh+l9YmJiMQS zutTbpXQfH&Sp1c8m1*@pnI22oM$D*YfBpndRAS0XRVVAOk*!o~rsVh=#FUzgXUhX2 zZ1Hhb>V_*}d5nqK_jNyh?);4fhreIpQ^51uS6yCL)k(`UGu(L$V?Pb)zD>#%N>imD zTIgTf7V9uWqLpo!WL&?~l+2!7Uw>_xJ3PGJ*&)Dm@NG)9p1tpItS#m`ltEl#d~g05 z&4J|C7Lr)oxpW&rL&yl^-AB=)8<Kx8%@Wh!M>%u{NB|eRykGa&-#s^<pBFbFh<#{y zOe_Wlx}|&cvi*nQ<}=FX<KWBev9%CHb+8=xtp0Jv{#NYd|F~Vl&W0~zSfDQ)>pxvT z1_{q`+6;U=?^EPUk13s<`JNQ>j|Pv%;8-5E`E%7$5T3RpHB@D?kmy7bcDEo0)IT2I zjOd)i>8gyT%0?Z7%8IHaE#eNvl?GT43;>%U7#35a1)ULfS?mq><284;=8g9?yXyzU z-{WI1cWXDc2ClqjH4X}snh_@<1SOhCAs^1}DFfHh^}=dyz#=@47b0YZNa}`f(ElWO zLf6<?N7MB5{d(LLA8hK1_WEr$R^#prDAoXqnazciR+q5H(=ozW=-Yx)BV~cf;LdTh zqm~$W4VgCH2HOX^eboH^W9lP}K|nj9IDb3`medg+(jz5ur@}L$A8=P}HOkMa;m2E} zb5Z=56V8J-44NZ-Q=I?Uwfmmi^E$H=Qh1GSnz?|r%`*RI&;-iThAIn(8CMl11yU<v z4mdU}etlD{&dj>?D+1R97G*c!Sc4^`Hy=rvd};ilsq6fRDz1g?<)`6L)E7D9v5L{~ z6dBBrux{(5s3Gd&Ia?qmrzZ77f;R8~eP{t-9r?P@7^Fi06EnMeTnSG>#^t|!S{&0t zT>1W8?|S4{rdw4cEH&EY&dXx$*~sBl{1gYcgFm)8RUaPLJ5&J+^u+Xw=B$Mf1MBFU z;lj@9ncQD?JwP6RyLb^s*wQcGnNZ501K#a{)iV@am`gPem*EROqELr~^Cr~~NuGXe z<Pjrz3Z58y15wJHfDQ0`vzKGPH^FcgPK!oO_ndp{6@CVSGxPHcX=}%wWru!&A#2ik zrKj7a@1c-g5h@0+H@P42(u2GF)33A_IkE+hFFzb==85UuXRP{|zp=-iCD|l?wu@q8 zbe`_;+>ZK*I3S!XE6Ot_YKc&BS;|gG0^O0#bR@4oflZ~zLE!omKhO)wu!n_>9Rn;x z&2+J8szzr3Zm5nd@QSy{vUri=aDz<JpvHy5`ug4d>q&bZa+0iAIpv`1cHEta<YEUy zm}h=cdk+a@55E^azUilhmA<`m`TN53cnZ)RUSNny0?jv_@nX!`A3uaWFWT=OM~0N_ z9%Pw{#a=HHcl&(3O=_+~!n>}|4I$&lx%GFA#pb||qsi>@q=M?oi-3pKhl|Z@l_Bzg zM{pgJe4*~%9fQutcIwCWuaDK(d#jh(ky~dEFF$9$_Q2Pzqn?g8-v{*bs|a@RScWa8 zPjX*77r+2KJNtaA4dCtW)()p47ER=`qQj;@EY{ZClVKQ>DnBrwqg>3eB`1KvE(_)a z<Smsz=P_KyzGJ<=bq#Hh<%kVDJvBO<PD&JfPgeRwM8s@Hp4A}+1rUcnMYR52QbPWY z8TfG_t)!idk$2%}(bAUXs=3wmzIYzB+<7&zL}OcKAd~oHICba-QPSeO8}~#38Ui2x zeX!p2p&a~FK}@BePJlX^54kQuZu!}i>e<V?xLw%!y&Hi5F+1!o)2%u8hp<c(_vO?l z_81T8v7BF@`K+3P+ENG;E=XEamQ&lqO>2m)?idb5GXw;D7d~J2q`Ax`Nd!?0SHlCU zGHUOBM5sD!S#pH)GEM{aB_6`k>}AJm6NXf2Rx|_<36-;9Ul-K4zuwHPIEmF|On5e? zSfn?aFk=1Fp0wPps2Hn*Znjyi7_9<Gq^8u~L>T?Cj-1%!f|uHGOcft$BoUJR1<vuC zS14&Q|DH_oB|g%hA3jqs0&Os#B4)EFN+24CFpcd|&7ZGbT(D4B(%as>hJL4hRAA>P z$2WxPHU*|k6n}g0epo;6u3$V?ltpvExC6k<?#Q8X7Zf#sxrKMkW{Rt_odN()Ai_7l zio0CLvHyneo(O4|raOAX#T^Zb5rEkc|E2QX<vt-!+v{l0GPIi(=h9X!wBV}a@jY5b z+BA^kfj3IxRtL#GIfwjjZF$o$MNaR<nbT_Le(>1`JffVpe^D^!kL((}+B9R_On)T( z4&)S)$6-TH5_509e3hmO%WRR!Pf(iVpCz5}xgbu}u_*II=sA50u+Zk3(>^ff#?hvB z?-yq<+Case(wnE#tsry^E5N>Y_MuheK$w=IzHPA*)!x(X>1oeb7iXVQeGdVm{h-mC z-wXdJJxkamx`Qpj6!-@P%Ll&Ied2TT*?gKze7HX*7Oa=)LoscP@s(JEd6eayM7`4R z#}a3)GVnY}%_MjDbHz+e-jDYOxY&`4wLvE}0e7IQ$H&vErOjM(eTblExhC-KvF3gL z<GpS3Z8DLbK32?k<!XQAv4=e$Vw4g;6?l_5q?;s!jY*+slVNGYN2-n?hcH%88|z&_ zH|rx*A^%&6Mj6@|srp&rPgE<R324qL_gF+d7@7b|KSNY?wjMsgx-2G1M>d`rQ~~L= zI=pR9XiE5@f_{!s!4c>=-~a#`K(E(F+WZq1JIaP285}^~9$wvrllN4IFW~j{@DZ|O z79x-YFRII!)mj39^ZWZ@|7=?ftQTbF?g<ajGKlj5$doUaj7a*;f$S2e6OB?q7AR0U zZ^6rWCceUsJx^O!%8segtqc)|)c5%x=G}R?7qN5^i&peY%<;t`yZb{oI=+7e8XqFC zk|~@}DbiA>yRTq)*W3P}Nls62!3IsU#H|F$sxlYFzs?64{er4JfZMT*b)?tjLcy<E zkf0d;k~ekQ=~j<gAlfw`_)X)!C56CBpOXmB#sHFUc_omlWkpyA$^T(4PJ;kC`hP3H zQg%GQXn$8h3aPvj61{(a;-)o`GTpLT6Kq_&LMy*LX2}eF)7HO`iniTIfA4cj^G!eG zpQQ7bI&Q5tIHI#P$#S!3_A)vciR2?JxJSQ^vzNv(=^BXdouzNaCjq@WBQesiV3SmC zHCy}<83^wJb!76wX{+y|dx<z?+=RJk(0|aRI>E5&Lsj+z)N~PIVakUVw4QT?rxJ6H zy5OpjM&77cz9c3jT0}Pqt+7@UTDzs88BeUe3AMbL0{n>lhtae{P7-2`VO2;JpvOQ@ zMHRhj*Vf#@kTA(No#l!_+`Ergmt``@bDiNXZe*pjDu|8gq)6{D?R156_edEZ+g=t? ziC|sKXUKgMN7pFh<L?EV-h;7wLL%PvuukYKo`nsCy!?x8$7y8e$w+L`ULu7xv4~+z zGiOS!aO8UhItEZ*2OmFj|GJ6+*UbRvdwA%XI_59I;iefC`E||mxy@i=(wT4eiM3!O zWj|M%diA;gAN}dSmlZQ8ETnkMd8K3tw*6DHi=#@@r&bCV*ZV3R;2~?RcCvtIM-{l0 zL0OWAXvA|<)KaXfV!%4db|P}%#CP-MO8BDv?Q&Z;;BLl=Ebv}i399Cq{R@Fl11&)o z3|dblfJVY>q?l!_A*=MJbmTKlH-S`mXrhY6u8&Cd(5$TxsN@@O3d{ENXyaKKuDG{W zyB8$@PP>~ly-IF(DwL(#nF^j;x5DUvMJd0rwbyOp(5Q>OM?^;n29+iV8hLB}aA`FJ z`wYaC(AW>#46wyiVAAYhtAEX?w65$11gfDV;5$-NL0MM=8;y<&#v651n}<<Y(x2I| z5QX#fh>Knx4)~j)zS(_3i$@HjS>7oNBPK?K<rp{fW`T7yp^0&M=-tWR=d~xvaGGj> zx5@lNa9X+k_biygw@?_d3@q3rNw+&K6tv%`?VAWQZn|&<rehd{EVJ{PDLV{umo$(Z z?_e@k6QO<EMS2OnkSDu;2jQ~NCYocjU?;%#tm)kqCFv+3LV@(b%=Pk&I!e09y+50~ z@PJ%x%)I7bH%eVd)Xnu>KHjZ<{h}|_%(0mF%EF;kOfg86jh}0@7TKgpSEp-PVCi=i z5@n7s7Zdk-e+5NG{-8XtmPw<GTfg94ou0s3YM)~WvManac9cF3P%@DTFfKP+AZcbq z;Slbe_s*7r-L(DERW3OlQiDnFO8Lm5LRJF5_Vhe42rx;vY9fYj?E7MvzvgJtmdd*~ zuMtjf=zXyy_vOM(y*ieFA-)Ec-cF9ZrRVG(-sw}ywzkGfJY`e=U9?lKL#5k}LtQ<( zo}VR0JYA|Kzw1=n?|8X6JL;ERUNjh}oik0T5b8IfOR0FTr8uAiqD>V)$~ZXuCmB=H z{Ko26X@!%TmYfXLv#%vs5vy^`F+DVzS8(SU+h^?CJJ!d5Z@v}Nqy>nJs3NE>f2==k zQ#f_G2(adDei3}oy8oqw`MgMrP>$4^*CEW>^q2H4=A7y&{P#}+0y{lP9T{ZI!WpUX z3<kIoZ?OtHQL;sSy8C-2kllf6V+DRBWSMR4zkfy44{e#a!m?#7xLKJ!-db*1D}XH3 zV<V5WEWE*AQ-{=-<^zyX#gZ@qx=APriirrQC73&1T;8585A1sbfmQi<diB`FalCf$ zH@f0pzFdmABHk|FdD5rY$GDzu#6M0S0zbe`9qxWUKHlCfue0QDd#|rj3RlPu6bs)5 zB_HxLU;iO9EI3I>l(vqKaxotsXARO&%G>fVTh+UIs0_U<sSEUE{47@07Z7JB7p;i+ z3e6H6$}m<Zujq>YV<T5$ybLIt0YH?rBYI%7mrzI|n{S1Ookm2S5|0IRmn2uI!VoC{ z(2|0R4t|@!oRVjwnj=r7y{@c*Jf%9Zqbw~48mqyT-c^mFB=4yvpEuvWhlgEA?ZHGx z1edtec)LLYohwoPj&!Z_F8-*O@5RHiYr%i;bTF5{+Su>;776iptEQfDK{>Z)CfgzL zlrGDX+OJs8*-E5Cz8ixA8i!C=OaGfk?ycvW9hU4CdLe~2lcwp$)*jXPh<UxNe1vRp z7pP?!wWZt>Xp(3f*!T5fK34a)1N}V8Bo(D>B3N*=3M#$>U5wrID_V7wu55v<pIYj_ zC%`y6=>RJ~3{*kdbp{h@c8v0hS{E0l=K8du1krkkaAkw=WlTCs*3koBjZ(@N%C#8l zZ}laK>+>4}St_VDLFk<Sr1)}<n_U=weEGaIcU<hKk1Y#>gd2>RC5AtrQENr1tRDdl zuQz_~j$%l<n@cq!Dn0#iX1W&LbK7AzDsj18TyQAt+a^sA=g~)w332QED}4>;I<~tt z*KN5H;rHZry3@3Z&kVoSsn1@zmx>IB5+B{3u@fZVxX~E{9~?oWgb~;P<{8t$3CFkI z;7byIEzk+;*Xh2xy!crHjx)u_2tYOR>EI4zw=oNCuWniq#nt(<aVi1ja4|}7?dw$Z zZLM0rjq>1A)4NW5kVDIl=^FU<bsK67yx%;KC2Fs5O@^}s!)#aE=Gbnm09+uLM@aVS z^dHe}qZ~p%|Ll$QrhB7@bU=x|^VR|^Vm^Ih{m34iMB+$-f}$WE)jSc9_CyG$014YH z&{RRuy@Mq}e!PMuwmqkU`>yBz0mDE%zf22l32hq>x$7shm(ahPd1sX_xgZp;`-aq7 zGwY@?TO3UYDP>lc#cFjv8gY`0XVb&+Xm)&f|5qP>`0V*JXeK~P(Xf_)@QrVL^?&+X zfA!}-`=~7I7cXA?`Jeyz{r5jOJ^l4x`73|nkN)Tn4h{}}_0gw4`p-XBx=v+cdgkVT zXt+;27;b(0&fDMl&O0^gc`?uHd|53Q<zk-CYgGe)0&1WFN?-xZ0f1Akv$`JFi}6BC z#Z!LzOgy`%?%l=RCKAxBGDT58dbBz_Ylx{!U{A;*&0dgD1S@RZ!dT=m5x3waQl(R+ zav%dFuo6^f>4<!q7ZihSh8`W*vQY|hAQC1ewUP=FSM4T|B*|pDPR1Rc)_kK|mZh}e z`Q}LPNfJ4kj&+#a`W0+RB84R%Y+Sy9eF?-S{=0dm4irUUBRNucIM9CZCdj)Xfw-no z+~AC)l0@#dPqEBg3p~u)R=#|w48jX_nGIt6(pit3b<hlT$FztY{T{21!MyDbp^BLT z=iD}j9wY=^x$oLhaJ5d-gxxp^1q0d1_NLCyRAQW7iE?+uenlrFKy4^gfEk)07-n%y zyM8ibO3MedXf7fJr3pp}jZ#c9nobBKdHU$BU;X^6%Ubl}t?L?;P5Qr~+(O+d9Pb?5 zdF;AQPfqR;-2phus(0S`&B4K?lrqZ>iL&(tRastCRZ$e_Z+`RcVzI|8w3bRGeaY-* zet@&Y1R!<OUUh2+E%PIw2*oYuQh-X4!|1%l2H6{v@ISb35Rp|9>Qk!<K7!Bgr7n{g z5AYW{Bt_fW_OAxfy(zubAwK?Y4s0lA@ik209hh2b?o4jvs#^u>Uj{gJBjJQs3~<~c zDQ`>+AQB1in#FH$`hQ#|^p!pM5E}Fbdva4ycbocle!8u~LcIj;UNm{z`-x!jFLjOB zHewW61+Ig4TVHItM_UX&Fwhb&@e9H9mPr&ZM~mAxZzQ497kOf|q4^t!^>;(?Z*C>@ za+umfz*;V~)=DYw9H^9PGuB<Q*P#%s{k$AGz-^XDq{Q?#ds{LbqVRm(iUDX%TBm8s z)9H&OSpk_4Q$T4gnu&k4s)~Yv8ITgm{rz0Z^CXccCzGlgn{_0nr)@CvfQSqxyv;3} zRI?^fW-<<kKVp-qpc^^RzI41z??{rQR_f&RIdHx=JDyDTvTQV&?4{{gQqu6^T>TGx zcrf|nKl&?w@cV!9(_eq~@Znoeo~*RyyLazCdGgU>QT*W_{-x!z_=o@dKl|w8Po)$f z8~b*&9&c<&NRr?E>UaN_|M`EN?a!9QGOzNB{NmZgvtK^@<)hO_PcEN){Ose8pM6|% zsiC2PdL0kQffYc|iC&Bsi}B)-d^8iYV|{#&?;Yu*iJrW8UOawWDYXw&fCP=w^r=iP z{YZS9DNM%0uC*!}pk-9mq`3n200LB!WQVh(M0#L-iozs5FohzZ3Y%YHLK8JK_=y+* zS6Nl3>gp&BVj7P|>D>ffu$p=<dGq%F)!nYaNRQkj0YEm&j_xL(>k0%Ai~xW~*^xj@ zYe5XYdLP(K0_?uhA!bHMu+cIO<CJl6qcLRmgeVrR-v=T9T@Q|3#B&&Fo(a$OFe-c7 z!D*H@1-mC7ze~&RR)Coc5E)+~Q}P|~5Ya@3xBopxyt9xztobt6rA(ZX+QWiS`?*!Z zV*wJ$l<uZfS6pi-4b4{+S-M>!+pfPB3E(vykQ5-05LY_DX!Z~!k(7{4WL7jf1MA-f zK$^fxTNtZHQF)E;H$cB=6{m$DaaGBM!2!g!uM%_0jG~Z5G0}QSlrU#R<MolX)+?=5 zRgLp}uPCM=1lh=MptiqR#)c8FK{pq{?vOsK%<BwB*r-BADFw8tV2Cq!#v?NV+5qgk zN%+EJ{`J?VNW6&@I`oWQhDpX?Ro<6c2mJX0q26+$mjN;D5TdYvJ})v8S%7X3c<J4e zxZ<U|GKIK?KgX`)w(K<%Y`4AK5U}Pp2JnXA{_qv6S~Mx<z;T6wU)dOWmGK5IStqth zMjk@hIsDP$>EX<*8VbfO7aIdN(UF-wk^_GIcehnAX@_p$6(_h(3}EM5+Ddh~E04x5 z7hHS{TH%urULUIRK_I(7LOq12GV|>k@rJG-Ux1tJEfnZt<=pkv$*aC-^=+k;Qp$Vs zCIAq<Zp`}~a`P~B`Qpw}NNHdzK;PRD%*6kI>Hsa5hk(ekVlr7tsfCzVm6CE#h>21v z&zDuD^8DcB<SnJry}fysEw#>Y1w42>b0e9KtT}$2_`jKojGs1?-yCCMYk@3h?tUfa zKsCPZ*~R(A<z<#WnN1Jw9Nim_Ct9hs6e%+`WI8%87r%M@xF~<;5C8DnM@L5|CqLWY z-+Sw=d%)Lcvl&1?{L`QOyZ`(9MOkK<^y5Qo=b9ZX=9;G0SdQO1c<cE1*t}L*mqlGH zip8J({LlX3KmLb5`|M|zbh(tvQkGR(>6r!t^*Ri23CvN;`h0qRK0bdWAMGdmck+7| zm*Yh_0VJ>h#!^&i_Kc_o+fj^`4yd_$1L>}Hf3F@|XdYKJGpn@%a47{#VVOo0!}1wz znL+Tqk{fSvK|^M~f}+<)szm3rLM5v09ik$kL__GbPUCDop;tahviVS^Qtlcex@sCB z#dg{LH&GqXs-{OO3tjH7^^<glhyz*r@qNp@aVP&cQA0eZYAXn)*SOls%Ca!`zNkET zIZTX4rh$w@ks1hVf;BV-BI_M_r{w|02|K7|d$2`m(k^E_q&?$;5a<Z%x<(X9u4h<) zlrQ}~JefD2B!EORro@eHxhSw(jlj;dNOqBdi)=?Cq(&sEt-XMuD%{CcH%s@pLo((~ zoVVb3S(cenM5LA4q`)cFWW}K<(yB_rhLd&vejGENiXI6Agn@N3mJE2qljy_@TnEiR zD{PZB@8v1-y!&Wse_Z;w(<!Yqj$SXL)u<TmN4gm>FLm_{g>2)#|8RZ8>p)n$!5#5n zGonQL-r#}D6EI{I8*=jr2B!+%2*>?aP|gm}Qk+L(TP@az4yX4FUj4?~0KgZ0^J0s= z<UgTIZM*~xfZeKa;)yxe2c1K+>cBx4(NWmy2I5>mZ2+KG%G*7UJHSK1)CfQOz|{C5 zle0H)5~2?Zh0whZ5@~@ULnfk-G5nF;S2Iwq*3@{2yurwHy;Wq_)s7n&Y`{9CbUWp~ z(W}WWF@UWscq>yc;*a6RvV=VDiZu!>5`(pnsjBPRJJ6Z{K-^S}J21V^W%)TF`Cn5B zEt17=eQFSt!L5`xV-N7ut(!ZUnaVOPiflaIpG+ocDypie>(i=QRu!tMD9h~p{CKh0 z*IKSt6Dc(_l#<rm?|NH4r>V_W+hp{&(2~LGv+;OaM%|VL*vvCE^#e@oq#K<z(WomZ zS!-RCc~KSf#retElPnvRWu;LNfr;10b6)8G=l}iT{rh+R<{$mFz1hLnzLsk}`pQ=x z{NC@q{r21YKmN%t{>eZ6H;<n@O%eeg{LC*eS)9P&x~{9LvT*QmG9D-6Z{GXn`{Mn& zsB@JUD3-LGC-ZqSU#814DXaYo`+x#UV15+|D6*m$7pK`7zdu59AD`7Y6R2iM`do<1 zHM7+f%->mA3`}?P`}*OfQsYV~KmaMA39Cfb7MQyx3-S%2^=XMiNs#OKLv$z`@2Az> zWa4~M<g)?-Xhe!7<VsStp`RXbftNa`+Yib{Tk*~~KHto}=_WsygN<Y3O(vC5+r&mL zG&_3K=#zc&rcDe?^x4hVxbZy2?y34lesoW>C=7H1BZU!W9Jfp2AL&f4*>3`it+~!V z(fGD>z=QI4YYse(9nUlk#W{TG)gAIZ0?Vs;p&NFI&+P3-!h~(f#_p**JF(3k2X9Ju z5ROK}utitlpI+uNE1c671azqOjlckP%Q7fTE03y5l@da*Qd;Y)ME*vCSZgZFOl#R4 zxu$tZk$K9o5Im--mG|J<Z(S)}@3`Y`NW<?Ad(-*51|Atw-quyv!RY-Jke1rEwPr?N zF?TKYkf+Hzcn#Y+4m(5(ZYluaE!DaXY4&hJ{0J<(GhdJwts0oI8o`#gx~oXQpuLl1 z_<I_Tzifq}Uw<(kesFL4gPYfRom=gNa;|y)>%hcADnAB(w1Y0_kPG!{T}DvU(7^-m zFoaQBSccbt3jwU5BGZTncqrEx(THe#CJmXDaUlDeQHN^|e6xfCK7H36>HwNOTI;&5 z<H)ajhOIiAHx)gyP<cNZ*n4+q*dZwVKs6q3q@lNhA#|aTux<OWy^6a-)~SIZ;kZ^C z0)lehF6vHe)`eP)$J_08yGD$m>3h_h0>5)Cq4_8tKkz9QcF3Kpsw&IUJAGAE<>mj0 z$1S>0K6Nuyw{U^1Z$(&oto=r#xx&935(Ku2=({H;0BO1+Qgyvo*M~{MqfwqDtL5@c zsj{xemzT%$`H|MLnPBQ#nrV9LHesuYOgGhn>5Zg0_PLSd#sCZs+?EgODl^gSMcp*j zO-36LwO_YXQyIFb@}gX=QT1*g6Lfld{?Go!|5cXNU;iJ!`#Zn$-q*hNkVpu*`m;a# z>HqPM|K*SV%a5<l4{q|xuYNGC;o7U;jJ)_88j0Ey0B9e(sw)5jBI7L4$&6>m)p3nF zm-#|2&a$(4I$tF#HBp!VHLwD5;0#LC*sJl49A9~kM|bG6N)%5C)u#RJH1uXF;1(k{ z1gi-^QmIU-;wmE+711)0ikY|*DRB|8PW=dN-VNCh95?J4o%B}+vU6IW8K@@p@^Dp4 z1p(Ao_ncfxl%%yrELV{R;OHK{9*Q5k9>iY8A?7V{e2(5)7g^%I$LsEi0@mz5auY={ zK(5x3(R>B}Yt3Hjf7go%;k<6CrG;+q78Qu3yu8|okcA%)m2He@<XX}Q-G<@-+PixM z#p*d;1E6c@#?*k^YydCxZ#`)@*^WG#1k4Q5Bsw|x-7taYBNwx64<;HEKQI~NEWFoz z`RpCmWNXln+tfWVBwOO8Gu5|+efHeYw11Wr<8eNl&9kf+jZ~JUStfvn%B)D!oJfyG z#opc`&$FUvN(n7^q{AQRqxf$xXJPTZR%o+MZDxg?`Rh$(BiG+@?zz3;P{1}UHXZEw z>@%LpSKL6RoYnAWjC{H+9$;F|uPg@80wXt)U+$grU24m16Tu^J$B^K`5bS;{5y~5Z z-TWE=Lqr;{1HOma>qZvo-4rI>V_MSZ>pbtku8#rvp+j&<Z;owmUv$${hY(!!f`dbL zdZDz4O^LpkSnsK}dUpfgV<1%lmiZe`+>Xy0z0bZw<KtzjtlZQj?oQbj-DfYp-`fI8 zsj@74(fN1)z`d@Q`DggV9hoF?ZT;aPL5ooHTCEfbn1ulS_@yIz+|$Mjx-Ea>CD|?r zkUn`M90TL!Ax4zj?F)*=JMy9ghjXS)rd#KQQOG(UjAc{gu&)0W^BF?wZM|-Wl^N>A zbeP!+0GMN>s>-dZVSGx<?5ga>A0Z6ubC>MZe>N+4&^~K}@4M8@2KlVFKQv$m3!$@Y zo+K(srdnr30VxwA7UCjF%DN^XCn~!3JX`p_TLI7wP}(V<4t0RX`R~qk<P+#~{nZXC z(SV9woQO@Zr=iU-C=NCqyT!AK=*g4k|M>s>*T4AilfU>o-+bqtx5`re^ryf0&;RBB z`{<KTHEStFXFOj0*u($~fry(d3D8=XW!cym?x*Vz*QS{Tiws#-XZ!X3-STcO@{8<Z zIa!{`vlXrMp2i+ftP27Xh4CD}wZgkE)N@sz2zi-6f!D+lL}vMkn+n-#J|nGap}7V| zfB;G%aw4s`EA{E0NqXdy$^7Bu`8y;V28{>+sF7YCFN;Zu1W14!7(*zLoF!ao?icPx z1Z{CH*$5+SV^H;>`jMsy-B2hHu*Evl8FfDSaq9*+FuSwis9w=_v1Y9`*Q$06l_9jq zA#~gFr^0FATRY${&j=h)ofe}piF4psd%U6asDB-lt}z-m!bE{}zIlkp)vW-Cb=XMV z{4oETyu*%x8p#|pu=EVMUg=iy#RDk((#Ur@5%?AdZ=B%G9Sn7_c2HnVg+$)aes~yf zOduiDY<6+)-sACjIUdiGL<vzcFPf&7vK)`+N@=2UGMS&B-+B7<?Xt`oe5J+unXT?> zVH93SWUJY9AfXFe6grlEl5vd9c4&Uu4VG}+hPQz7_~^58L7Yo(c7`x__lf%CrfjQz ztJ$nutobU?e+$y_1_OrA8!mGW`m*kZVExUX7BY-$q_oDtf$KBJ^iqyDJCmCd(H#io zM<AP<TBmoAku(vdfpLz3Qjh~plN(_@x=xWuFX+4#719mj?AK}Dm%UkLYn)vto)`0m zZ8s>vYR*<e=A7PSZS&RCbzKxi<H?vWC8A3fS&)Y0Iz<|42*FV#@`oq^QCvi!>lOIh zJQAZGcp(epi?8mxsk!X7F7#Rn?wt>LSzhM8UiFJx3ZO3}%pb<?4M%X3A?E4_8iK17 z@K*hZ^G<iW1(ZJ!dG~VQL|}_XgS{w<)oSIPK=QoMTDSX#JZv}%cwme9C$N?eX9yfO zkVnWmtV;sB=?-bSoJ`Jz;PLoU$|Om~M5Hz9nu>yzO0~YDl$cB|tLnwY#YpR<+Y}66 zvcGv(-C6<eR{DG0aU)OP;TLuS46u?D*8%|MvSJUDmhgE!B-khw_mKtwM07b{eD6R0 z=Rf_?Po|R*1DBV}s;q=bWPioR-u$4=jz;_RrpbVah*=j!k>|PBN-v7SN^V$_C;^O= z(@bSY_0fbT7r1y{KYLm~JHeUGYTR9G1up?89xuy>P!EKBR?DYSTo6^%iIqfo`2~=c z6)`Iy0{|?5d9BLuO4M^wgi*FN<nGN|r%vyJp6KdsRqU0_jO+^SLk96esOKs#Z^$<2 zMc+f{;Q*BXCEb(<p5g)Fh#s`s_^m?-)QD|2!w}3GOjTJmwX<G>&<g3rtCr*1zfKzX zYvSO*t9KG+&-V|XfrQs?P^5bd^{UwiY?b&bwk;^J;jG&VU-Q0trw_C^sXf}70D#6i z#_LO;08<d(w+MgO6O{xz2eUJy#fO^_3}`ugnv?=7g5uawL_|VtUcQMt`%q)D(mNWu z9)n><E|&*So`@tVj*gzsW|yPUcr=<dU81T)QPgFbo}S(-%V}9ov`zv%`w`TopHXLB zFKB<uOA6%MPY&OXcK~*awmk2Zq7!gy<Zu*fr?5%^$AS1E4z9P%G=8?N{AOR&<kk62 zro$Toj^aEYp(D-AP7}M|fiXKo+A#$6^4?^G3^_!mx7Bp&);)NiF6pHx8Q4r-41G5* zIs({T6K9Vj_*=y-+FQL&eZVc-!yAKldue<S=KX)O0|2|iXIqS&UVRnwMT8Ehs%o`b zB}w8nI<5J~n~CERp?Y6&B#FM)ARfMAS>&g^IsRVa8iXq<whhR;3cAB5b8oVLT(`iy z)ewc(5Rc1Sy5Y3|1_qlWi@kfWNr`^Dy|U?LhvNe^ZS13bp~$6tjyFZ_YdFXKHo<_n zFBCDjZO4O%2Z{jKb-i3J=kvL@wex(n4$TgK*d7pfh@ybk1tkjl_u)#8wpZBI80%TF z69aH5ahsi!$>ntVB2B9#xg+HjhF+F=p69F8!R6(BrABGGs;ZP(Sk9-H{3n3UcP6^_ zwYngFxZSvWAs6N~{qT<IZ7dd7EufUvM&7YfT5BzcgdkpHMAkhtdz*~=X0J>{+bgc5 zW!Dr!Y|@`l69eFzm5^oT7oYt4hyUtd9v<CE$K!N79!;m&c$`fpX_kp3SuU5R3t-94 zUp)fJiI~j9>>ln-U)*25`1SJOIgWBnD(nFhU<E9J0&1kySF|{;#Zx&s8}F(8j8bC+ zcjqK*Yz3<8z2d0?7)SsGh{MC9qa&kYfb3tdlyAGQ!FnqeS+>1{LLiMGQmjt(+1bHq zeW+M5#=r<D0D;5o@ILM*cM>nyM4^(aILhwrs)J%2G?-$DeYhhB&?w$+Vl$qCgE0wq z{%ef{4|K#9marb<)9Fk~IWV&_o>$>|Qm!@r`dJiPtt`Q>M>u~XOQ+F3u_Y-&&}T{o zgoEO-zCD11#1gRWtJVp7#}0X2N9TY+3evCt%~sw;pW(n=>0k<1=uiOf4$T`LV47ME zCG#X}0vx+*5fPCfGC~3CI)IjNuNwpK-#RmjVpJ3(A#{@HG}S`P()6$ilULO|&oQ6R zo;`b5mSe2B;|7Rcm{I|LP@dW1OR|y-db*akj?k4a>fUQ4uYbtw&2dXIUV(9=>1#K0 z%#8#LZgA6$<a8gLjgF*NOlZ@^F+xJEyD8BQAwG%V6$7E^5H20!Rqn053q=}|At?FI z0QU|j2~nVgT=Z>I$af}+iKtFTA~x}8#BH+Y7aj2*n4j_n!~HvRK)s~d#{ASB=^HXr zt(keXTFvM4G)>$0*qA{P^ePVD4=Ls~yHKPeBorz@UnD#tq%qJ6-$6}&NV&t1MRzwP z64ykC9N7!^N5J}CX%M$(Zd*H5*Y#~w__dnW+yT{Bb8RNj`3ru#V9>^?SUc?@Fo@Ur zT=D9YHJ^oDHS9m_ntr_(Hzx-y@W4&oWOjcnyiNZ<KR-{?)Z5f$S=4pyq{iD#?eMF5 z_Pcra-WO+Z({~;x&iv!V0N5&nFfeHAFlvF4w*AfM5i^QndVc<Pnl7f(YBVZ{PPCrZ zby5_IqLB0X-NoXFS*}*owS#SYr<P;vO<Z-;|II(!oPE<IH}_cYs9k9dl1q0%;l}v2 z?xd=!#bPm^FX!_`zAT|7Yps-43R*L7a2{%_=8XpKOL`6Kpl)IVH)yFT{q)cN%fI<g zKaxVqER$K5&Ss<8Y;t%wJvy2lA7ebeeDtWE&pAmT1lA^jw^XiN@rz%j`KNa=KE%BO z?|z1(Ii~9{Kn^T`9D2<BzN+6-V;(=050B;XNQ|1N7D9Nc28Ae|KhG~N=XsF=DL`5F z?l-^n)ek;sD<|A67H`R*X&@OxsfW+q-owaM{?YPRCyUd%P+T%HU=PqhjibGzzkKwU zzjpU)LJOD_<m*1*=56>VaCCw_q3Y6p%cl=P3X>Tk99U(5+OE2JkTrMsz}obiveH9V z^k_6{VgS9Cp|_YaUPS9<fq&iHC|^8vXe3~*dcq-51O&+O<G8XL0~lgR2c}I9RkOt} z>R2*cIK|#4jRu)$J@CU#(u^ltUL-&e<i-Ht6BhQc2^p#&Op*6PFthkg>iK4;u#B!& z@7E0;bVr$eot6U8u}&F4qx7p(qdI1W{Hd-}r4p;jeU$p%*@L2og-n#28Ih4b89CTD zQh0|+z}Ulai`tMr>TiUX&&WT}?qQ=}-N0<zcmXW|!?vK=K&Aw1-HD*#7?3x)L-oK8 z=wh6L#hZ5sAL9t3Tw0w9fZ>m{74klWNq<O2XUHtx7KL#sqT=b9@tTz3wv_jHrPM9f z^9BS1LW#f;CiFKLGTTbf;$_77oQx%I5&yR0Ob8)_D9iHX<Rneg);Df`5oXC{z#B0= z>bT_^3J>&V$ii1};GWZ6$s%$fz4o_PoGr5Kd9M`_wAl)s5A_5uCTo^t4b=G=zG}p) z_9Efo_;TRx3=u}Z0rNwgk#NWi88OS^eLGUr(wpG46+fdFcOIZB<|5kMYpiz#d%Ug= z```%<yKO_A93#1|<E5+{(?4q&$THV;J)h4%`Q(#}iwiH%qg0*eMYt~oJ#1eiP)p(; zLTZc|0514orTP1!5glFylf>T}EHMfNn)b2Ry7rH{mQ^*@I+HRJBCqQ+rBqdk#p12S z;!Y#{>oOg=4nI1I4koz2!E3y)JM4dU<PFR)L)Xmqb|-3UWtzl5W++uJm*<Pcys9cG z)%|-1O6{py)wQZ?Rn@iDO0#ZQ$Te$=L$>Keh5~kgaozxJ+hkHf+p*dVGYwHy)y3(h z00hu*REsr!LsBM_Ndb_Qm`pI6>FE@c2}UDG*#-j|n?))5?6dr{&sMr3RL58(c)pjs zy_o*ivwV79$`UhR3@m{qxZu@j^~v~?^W^+t^6<Uny*u(wMp+B!ca}&ZdipdkiV{d0 z@M%1r-n%zGIEWi95xd14&X)TYslXE?6szaO^Pd$z`&s$3^Wq#!U<4ch1e7=&AAaZX zJKvgoYa%8Lf91M+OTDJc4yOJqFyliyQoDKUJHQjJ1XqOLz+0&qxzHP50Bv!v4}asK zkri+v;uMr#T6x;$5qc2GD0v`tS>1-hc~&n91wY!S6W|0jj3}UY*0&_d2h?YFKX7v= z!YpQ2!2o}I(0UQFUN`%6n_QsZ%00K2dmpgAA<A!!Gyu$0RU@UO)~t17K(f|KYm{ZC zwSbe%ftV<ipOXju#Uewh{|BtKfhjGJ5D@#+G2v{(Z%aLc;5mEG6G+#HoYNbjGK-Q! z{oG=A^b7&!klVt$&F75@qe&$<Bn&Wwei^%_<o4!p58?TVfLa49%eP&%hbXFgw`2!u zoq>!x5o9D}PlUX26U*B+im)y67zh2m23h1<@jJIgz;3rM2;x87NeC6mzIhg~H*Se* z=k@mn{M>=o!u@7_eFN5~X)2}6vTQUOWmzVreDvs%lu~pzDP<D|XyXBm^W5%fwst?l zG@VwEAoRN%FbFx-@wkE)$A_;JAOe!QetUe44{0#;@?s6_0|O&WLrPU$(U;-CePpHZ zt_7ydySt89VXAija=HAx7KQ6rav|ixOEa~VzRnJ+LXr5>4p7MUo_}o5KqC8S=AB1s z)u$31A4I`sFo0~gM!`+AW3L`vI}>`*|Ej8#QfFspKl;&+ngT3qY6Xy{$%6++lS$@! zJH{P)`fQh2CfIcC7ky<7n=H1jQ_bBlfa$TD2b1^sHR!*&e`A=y?B?q$G7+cgJV`XL zU)Lik$6CJt&ZHc5*;73|&Hb~9&2(iaHo5;MX+U=ZL;&jWhL=cdQx7A89#WTgh_$Yj zDzi*xnKT(k+BID_5dfu?(n@QkwAQMwby1X6T{nw6GuKL~TB+u9%><BWLQ2g!c%yEr zp_xf=N?<8()+S@10v79L5=H<(GADJNTwY3G4A9vbgwRP+kH=~{)q8t<aDeHQ(zFQ? zot>2*f4p3+8k9bTuITdMo#VH^mOfmF7oVz6Pt-{zE9?PdU<E9omg;13ay~x)H2d^z zdi(9<?FZ?DnV1O@P1|1;;#5`n^l4cX3fKn#$b$p9w-;F#La8n8oNumcF%TI9;Ig{> zX!+4k=RbYCdR#3kl)wZy1QMXa{n7nzAAb9{r@uX>v1T1d0leu5H)V1UPXN5m6)n@N zS2}3;>fF2dT1=8K3O<HM$}P`#D+bGf5YOvr5xEp7p`x+j9n38^H^bEtAU>YCKY-U7 zP8i5VLam6kN!jNS()ALZxqgtFh84nDGn9w8Ak;zho_(lnTr;CphHoY(8o=tqzSCN_ z!EOFOVCNEr(Eqjqpr!rk1b$qn#45zJ5*peI3Zd5zrie6=XcOd=O18{8XNxM(6$B0l z19(IA+ga3JR62ehFS6f@yho)M2Cg0O1*s6p;fRN(*3+!_RP4L1m7v2;{Km>+;ZR5; zUcKb@WA~WG5vZ!l)8oCvz=1Eki_2C5jov*G=%csnAhO=Y3Ev{Y{((f$@g&Hh0f3#^ zb>iOmkkejA3VGW+{ULZ_1OST59(chW_iSZZ-m(CFLBVdzH1T>q7(nv)W^Y3VyLV>j zRm?UW3={5e#a<djDK)kvNs=Uy#wLVl7+2cko2{;E6Z&s{Y0-SwJar2NyzziIi0@tD zLI=bb%OT5QJOJSJLgOE~UiT2Eame~N1l5fPZbPy0P~nI>&wJ;8Yw~Y;papzbznB34 zD}%N9s8NiJP!Pt&nd3GG`U?2sr}6^y@o^ey+umtm_{x6GDd^Qsi9@UDcMdsh`^9K7 zJNuN1uORI8M?(p-8~n9F|B0xs>*vp(TN7zJX^h9C!^7!hlC}B%Yp;yD!fR}D%Ube= z-8+m>#K067H2!24)_0o=-5UJvRAws#SS{Zsp?js?i0aX3m1R=OOlw(|BF|-69x=<& zXql$VqS%kxvDPoNZmyuZoy+ZG`RDDYM5Hx$dBW|7T0ixM8aSe!0uUhD07;h|*^RAU z?bDj8s;;WKLD!j~lu}A*4QAAe6PfMp?ImfN=f!flDvBa6@}kJgvSilKS}Uytgjln~ z+|WoDz&_~i8ZKZ!0UA*2e`Q0s4@e-<IxEYxEXNlYEQA`5>-~MTzmGe2R$Bb}6LoUZ zRKrXF2K2$<<o)-ux2F?`qqpd-N9xg|`q8O6y$S=2fF-biTB(!q$=T@a<K*K9)q{uW z!@KhCp4c19aRV$>=jZunpA}jQU<@!(a(pZ&lXy;9e6fy{Ct9{dgM^j3d{#XB>HMc3 zE<c>F=2!p#_JJ8dNLBjw`0ei;eCLDl2O}}ktl>*9@U9wh3nWxcI2;a+Bm-VE*AIP} z2XO;$VBU;xRu880@334p37+i?-;2d~DOFuNb6~p-e3kKxPG3(8f?^J!W&)#Dh01oN zy58uBF@Z;tM*Xn?7rI`<h~~}ky3C6LE0h&OK#MSXuNcp8@`gJ4%qJe9IK~-J+poo| z2E5jQK?pLnp;7LrmU}^evfjBNJm3YWxe32o!@<5l7qurh7Scxajcb!*5RxT6)V#GM zsqWl4IXF1o-#;CVFdnlIDKi6?LgYkZJT6a9kMn%ykJ!dc(2g<Yk^-6C#$qXSM)6j{ zT`_yxwau)m$M8kD?|C<Q6~?2H^?5fuHl*A($Wdh_i<lod{gR!)kGD!AsFV;dmDmaa zcK_5`mt|QLMI84)G#e6OdgOr=%2qHk6baZWx-i6#_VV_`V<){O1rgetK>+|S$`&`F zhU5i=By+bSRlxQ_paWqA@9~kZ^dkFRM}@s02s0N&aa#fKMMt!~VSrG~^L2Zcco4GJ z$R0>~-n%oDcI_Tu!Ts&r(q`@pA+jtp5&w37b6AtzZzBFJn&19uVg24zGOsgie%))- zhG6{=anL|QAq48Lhxl6FrJ}d!JKiOFm1;r(vu(#<oS6rMgT5Aaj{!m4ILhyS<o(kP z1GEa3k!K%X=r_<r+hOXvUAczLlUpJ0*AE*EKYl=6c8}?A@Ys5t2QmSUwUn!>s;ZH> zmQuDex!3KNQZQ>nQ^9hm{0vK$LZI6e#-D8P`+JKjEEL;~BKQCUj}CC;e#k4F&>op2 z#b{Jy*;ojvl*;qv<z;$t@s+wBOIg?TxQoJ&nVV@KGFBv@)f<G?Y@i7qA0D0@LrY<T ztQr&}c(7?4A~^L524(Wq8&9Pi*LBgp)^^P_|GANy@wl}Oz^s*GW*&`3X__e|({wtW z?n#*{)vyWGc~M+mo<Dv1<i*L0x~}TFR+UbY4wQ2JO@mHwXNkiE)d)p`G68467<GcW z!HR021}dNg<^TW*WLl4x%gJ&{&!6kZk5`ieT+U`HTVbz40;nuY-g|HK;DKz~=2#pb z%EPZDUwKqNdQ?9;(I=IxaIn?}SVAxLB3=Ay^s7hdqdnR?mdEd=@7~MqO)x4RJu1)6 zYG4mYfI3Z+qa#S^ny(i7zn6_LvgWdzZ_Frk@w|Bc%jGXWDL#3Tzfens97upeU<_y+ z(&0B}-~7hx8~4-u0>VW9y%l&7vnK?z?qGxrq$}KNT^_#B48gvyzr?#ZyBiIPn}SV> z+iJBELNs=`ORX7)ynDrCLnfv7(`_pudZVflf_tY3fZfhEBvmuQ3lxcwxDd4~Kht~9 z-ub`Vh7o9Zi=H@y9mp%g!^{$D5Ay@MfK>tD1yP%|k0^@nx@de86Q&@zYVPzaH@Ro$ zII13jiH&LiSef7s?9MLpAvQ$+a<v*uIU!m}StUthp;byzT}wa{X`@CECP`7a?!+!W z@ZG<a0O4&`a&}TE($*^)+`V~<TEAYbpG_)AZ?AG{Ak1RQP9Vf5WlSMo%{YT?f({tG zW<@Cvlo9UQ)%}yhHJ6*BDDph_W=0MtOTYjX#({B#I9QKuNQwr|>H}{ebnsRgd!7J5 z<9$UE*s+Z+&=AaGc<TLDfKL1odXf4Nt`rH7gb<<-=<j}|sw$JE<aYZ4Z7w>DXaUsA zu-9KkJYy>ov4L>pkTDy9O<lyl!SS0dNs<QfZ?pSbl;6VoO`t!L)Nkql_vZMcOLk!b z%3CS!hN@!SY%EKNFO<DyxdiR~2qAhS!*L2%D{*OO%yeKWy6K3TGQV!_zvWzc9m3F` zuDff6Z;8l?IeF)KFTIZ!{clQD+yKC>2=HqH>qpR{5a4B&y${H|GyODkjKj;kX{m}u zRu!*b)Jp|m@!=RL+y1zP+ey3Px3Gp%Q|;U2{+q;TA$&yZRw0R9{oz1`d+UNyJO*GL zZ&2>gkg$z8i+KIpHVYoz?0$=$$mmXNBwCttlu&9PNSINUtL3tq&ySbO1Ffa|Ud$kb z;i7M5qptVMmNtN87aQsSX5}~;JFyn~HD9#rCvPeS+Ih}+vzw=oQckCPQf76ns;W9U zJt?b7N<l;dB&3j1B(i1fBO#iOB!qwvwmi>tI+;u+RV9>?%(|)yt<e|{lkr#zQ541H z<%L!XER@zaKIv)}PsLjobceZ0uo74#C{u_DXoh+}S=}8iW>ieel9Xbl6i@*LPyjg~ zfJ~{$VzIYa{5Fz@$WC$a42yG`9o;*A@4Yk|i6(<yvz8=}<?*3Be3(6aR6qK({`5?p z6-j}8V01+agary&6lw87zW6nMy{GrzozEWp@~kS$4445LpuN5H&K-1@S2sVdH?C|# z^L7y-NU>Vh%V*`YNBN^qice0;6O}8h00#De8IU65?A_73zdify55^xfr2m$Lvp2ma zl!7zd6b~^Q^qR*Z%{`aP&Yk)qB#Q3++(<f6FB2~YlbuGqdm?Iz0II5LjdnBhCIYN% z1<K<l2m`i{k$9HBVf5lx;c&0nAHw&2znhWNcDT7qUdt0=t+Q~_*Ih#*h&h^<FsyDr zF6;^}_TpB)vK|{^PN_P=`IvLiHYJlpL9QN`0=-?bi9Bk+fPZJmKv+M6j{(UxR06+~ zC4giB?(SUGF1T&iQYt+=yLWzmeCJLEoDdym*+{8+v5;qH+0&;F>w2WMfUP?263zs> zL~j?00{3i<xvsUtj?F{f2t@dt-rJ^72*@$NJNUl$eVYuBuC+6G>SC|hL%eqn*%=`X z+v;Uq%Rth)s;Z(WTynEeJy0kh+Kcap4hT(3y&(q+4+-T^4g~kT;17nC3xslZz0i<l zha@4kfzbLIFZ|y@FE>KD5HZnQASn(kx=4+S;6xY<<Hx)BP6W_2kAGA39={COP{<U< z0QTy*n#C8iH3kmz-q_d`O|JoxVomAOCiORnzscld@%3Az(k)rP_fPKzBc0z}mdrh- z41k+r?+s{2ys6M^?p?9GNVl~bwQbn!H1loaUkPOuxez=8{67PGi+3e6&tP@~udi-` z>5)V*3($9G=Ft4#?ldnHI!PPTHUIP;hP4iodAw5UwHn=9DIdBWBa(&?(Fs6bX=FU+ zx<fQ~2cjXLjRcqfH;lqt-jU6`>9EJRXTD-eF%$Mfz_jWAJ9k2ko4uj7cj0mqk_ud6 zL*3qtnyRWA!b1!F@v3>R2S^7^wzAmTH?~%h-5g`~DZ>YI=iZG7ps9{)K36MIYkZMS zG~dxnfB}L~*ZuPoB6q)HW_y7d#sAOVy>7{EBnh532O{!9QlzMos#MdeIa{+mJMaG( z`v&`E_H>`_-mcQEOA?v42*CFPGCUl9F&Ge$$t3ju9UUDqnHd>@KmhJ$=H~ZTKmYu7 z-|ybMx!Lb`zyA96<Hz@1*ADM_GTV%QOI*wq#pRRqrxa^ovOkA41U{Q%=iA5mJcpY9 z_D~ZSB|N-{47d2c?{Dw!KKy?le*UkYMV#;belNZk=bBC1hBkhiw%KksZQBlC+-%!T z7!kD1-CeiY+<D*hedGP(OBi+#9yXx<uYdf!+wc8h$Hwq3ooi^;Hu8tB+qT*K;~(3* zhij2HA~zzpBCV6Fjo<uX`|$1i+b_4bm%H2ThmYHvo6CoXSNnbM{Z8ag<WA(jM4ZUA z?7xuxd%5{ee){NMweqLezx}b_eA&Kw?b<e+oEx|K%6;|r;_Y|a@4nxE|F`aMKXgBQ zY(M%p{+I^%Riu|Yx!c^__22)v|HZc=uS7N?cg{V0dC_fduJ3-n+FWg$t@EyRt#M*l zxSSr&h~D?T^bh^R$L`~A``><i`0@MQ_do7`yy<SbhfY3<JcwM0ycM~W#x>ux-~98{ zKmYaWuU~Dy8Vdi5gOJHfw{atxWD-6%Se#dK6z_(!D(aMJb+K5Xc-x(O|B|VOy>qMP zo2I$EybR?#Lna`s#0{hOcodxv&pw~x04YV3%l7;I-QAstgd>pbnlriWRv!1PrN)y! zc*$^OydJLjM*Dd0`f@nkr|tNnEq46SldZU<!@gH%al@XCbnoQ1R=RRCb17}rE7_eY zFE^L$r-lRQ<(ND$h5HM?*LxW@u#a9>p><FAf7skUtbq$j1Q~7QBiZxzB6;O_s7ZI; zx4Yd%*SWrT-nZWSu5%9$7rWhd*aSGfsFY&v$FWoNZ7w@E>>=su;CY<olHzfnTneB( zv8<m}{&wpBT6@~o7=8UxW8Wb;&tm!cI}PMrgGR|GV^@G$<LhMN{P6Jb@bFOUk&u^N z+C%?JO28P?*HZ|3SbuUwLjFRE0UsrxQ7cMNdOPRikd1vuU*ocXS^Fy%gG%`$%qrv; zbFshD=Vxw3e;)S_@g1obfetGGEFqOoGQLr&ASVYXr$6&zJDOP=WEaO$N@#Lc5sGEW zOD&}oqJG8!ZgECYJUF%VpuQM(GQFo{IAp3{RxP7eEAS6d^`WAFyWI}E^@a}q$%ehf z8vndafBxqrOs_ZYA71kCgJBiCa;K3>&!0SLT)W9BWkIzxgVcMz*8;M}DQ+>dl|28c z;%H~gF;D(A<S>-ZJjFzXQolc$0M0^M<=X%F%3rMUPi_Q5x-0(vVFkd;nfh9;c&Ft1 zE%AuCQH;}bx@SL%l}TE4QmxM=;`n>qeqDX!!sMzF$B(1!UQOgBzw7at#EbO1t{X=A zVdYkQHI_>8Oa76pO%BKN+oVg6mvntYvInv+20`*=5XH$}R>JQ}wQ1?Ejuw2xvF}k1 zBaYGE-EDsOq5a1{nzr5C-(T(b+fek9<Rs!u$#9)ZrhG|`Cwc<;TkC3vJ?SzO9wdI+ z;}f!Qb0}R=N5PxnXS%){o`U!NzU%wm-wpAFbgSt@NU>>}w%xQ%+qRo_)3$BXZk&6p zls^o;`rUqae|LBPaNj-dC)~B|=tMrt<-j%ahp+ng?{0qlvHj_%i{E~`?79n)Ympl- zce`%;_g^l5+g*M2)fZpB+r9eo;bMQkxxL+f{CM&4<K^w`yZ!#H_YWeshcyAM$d&Bg z^}lTX_QCz*-~GFH-Pd2c_wSqc@0-`J-O#s3{KjqGyZ7%d-u=b@<;VSx|K9!k58V$R zHy?Mec7E&SR+?Yr?a%Vv&+_#Lf8pgyWFvAf^6}FDzwdtf<?jE!*k8Qayt!_!H?p~G zFSoM2Y%j0ctF7BM(rlaU5Q%DCJDetsG*L>>_tN*$cfQ;E{jT5L`McZh_SWD2y8rc; z?w1>XbKl)}T_+DBcOpBHjmUeESK>DAjeGN#?O*=a_5b?w#h)*li(#MUS+|?o`bA}1 zoyqyB)K>%4wn<Qa>4^&{&vIj3cHf_SJ03oj-ut#~<*)}#91#xvIYW=2Arnw+l~cJd zoSNxhT0`KIh*)WFm_l0gkO1iJ?(X`&4~vzPbcoWKx_Cj3diVSBCcSA`cHE&ZPb8-S zcacKxk@2oPX<|N{;KQr9zkloml~3G~$yBm}Sw;(vk9U@EFt+~TEBV>U!zk#TH`Vt^ zV!)>@eI$$i*RlnVui2HhP0fBbkGp#5y6$23u<u*v3LUYAgXWx;UdU4WdE=e*MxP9v z!d-s1yV&nt-*?^*A5XvEZ@q7#;Qr|QL+kuQkxH>@BrYIG21T{BS$f=)nuhU4P<~u} zUpU;^F2v~y$WkBwVg{-9B*S^GTs>TV=t`%fSF-~7j#d-joD2@t3{^EVq2_+(O`vLn z%upDV2SAiv6_fwx^_P>eeq}F4nc9ZLm=aL7EH2)6Cc81)Lo3Cv*J8Pwx$W|eLk&yx zUkSL#RG)pR^aoc8F7*FPRA;IOee``D!;k3EpV02v(gNrc?NvCv2jf#ebK|Ks8HhKI zVi!NM65R`bh=bi-*KN03`~J_y{Y#BAkOfnP$wpXW=#w6fKpycA&3rbSO=#b*7x;(v zK5+;j)b$rPmdxAxgbQUcB_NgB|Kzf6zx^arBS|*IGpq<J-W!aY0a*5gnao-%P4V>2 z^zy`plC>&k?BW#<#p6?K8B|PHOrG0%#y9@tS~~mJE)o4fyjCE|gz5RwVt)W7JfWNq zO3Lt*+4b3f<g?|+GjJ)ja7lv8g;2gyRFyxt{%xYwO!>+0$)8vr!H=W=@s(V%g}t?Y z8l`YgyjNj7`E*h6+9yXZYDqtu8Rq%%C@hj@5oBD47;hnPnCPaPB*$~(anQskEgHs~ z$c_HI-@E<((z%N)rXSD$;}3qkQ`~V*7&`tZv4FgXPn63U)$d0+0~c5B$KMvF=+U)t z6uya8hm7(f#hJMi@lKl7ZC%s*@oIy^Iur5IOV{mpa(u!rzC*@u`(Ye%Jhhs(al?S2 zknxzc6Jg;Ke|_D5`|bYSyZsM8T>SXs#qI6&p()Re_a8rgyt=#F{`_<M_U-2No6GI? zP4nfK&FlO2x0~%Rch~o~@BGa>c@XLEho2GoAhPYd>zkXao16Cg@8$Bc|ME-!hd=c1 z-#72x$@R6{Zii(7*Y5f++rRvA^T*%(ho8Hj{{HZ{pZ0(E4>#|Bm2ZENcOT`#%Y}%D z+=_G}zrB_puXeZlorwG>Kf1<w=bOH9;@Vxiahq0JCvGDfC$5pEkw!$EcTGsK4AFnz z_tJOLb<*u+zn6U{UGIC}dFc*29_&QC$c4z4BG=-!?oIRNpEm#W*NeaY`Qp#7+t(tp z@Al#1kYtdG%O96D+f*jflSOvLy1ZwY&`s86oql^YuI8^bJ_`RDm-Y|)zQl8)VL8rF z3>S)i21(P!Vf9%4^6kS~$rev6s5uyK6ffEKGsUp6PrAlA=Qf-6^73+c?Qwy8$cP*} zosExScBp;4Q+?K<$QM_h<q7F{JzRd@Pm<{BdFApbt@nNCY#A2;<oST9`lQfhD7>hC zD-SZ{2wkbP-<K}S&F~am^?TfOur!TmPyW)w|9AWS{oUPt--?KHP1`nc0b8lHu!y+f z6i6Dv<lETRascC4^YKf&-FCm<9L5ZN*SX#9vhQ7`-Xf{=_t~iLxDWDSg`cnOAyElE z`}$XWwo)^RdXGNn`Ma2;D~it{jv!VN0HgkP*?_Hf>eP-y?E)gDELO6>!W&Q7%IXkj z$uXQhKT~?m#Vvs5wp<>Bb_GiBAp4)Cw7j60LJ)QBV_w>yluL@b@Lftp&w86^`%N(Z z&W)v&-mC;btu=&Y%UmfH{#)w$rCysUYB{GK&@aaKCmTK2;z99fX85Zy0e}}2#Tmcv zNxzyTz#WUfM@07feQ5n5&$!N`79})JFp3Wt_dKb!?+-^Hbl$(byd1jv1W5<~IO3la z`^O>vxRt+*oBZUrf#NP?O0S;cEy1#^EQvnXvczFbtc2jjuuj&J?3HW>zdW`sQ(N05 z%e*AoRG_wGN7OdBdWl^A#KLa9#k4^lBZzOq`P%vX)0e--<o-RJ!%Fr}kNYR>t@^$X z*MY9<!hG10Vbyo3v8VK&qCM`@{m3eAA|g}Gf|VAW`tAaj2N&B~gya_$Hx^D>)`S>A z-~0W3|M2jz-|wAs`6iIHv}JN`M`aljMdah<?fInFPwrzD_gRus<yzE*$te@0s4tVx zwi)on<c)~*eY%Np)~;bRvmMvI`FJ^eboojv@<Nfm91Hf#6VdRMI71Lc|NWs0kRQ*( zAHS{deU>mt#siWk3C91AzbA~MeMsMkbJ9rT^S;$mia|v0f|p?{>0_+Kd-2i?$KN|~ zu5I0B+ca%y6y#;`!0hnso6SbvzV+AFyDz?w|NPJGufH~3_gdsa<fF)4*X=)kyu7)& zXj^I9zHKj^d);;KyPa(O{!6*}Mt=FD{Pcy~yqB&Me=l+)@~g;iBHOOJzPY))xoQ9Q zH@UdzUcdHVeBs`{b#LFw<)yp0khXPw|F-L1-){c!%jIuBZ~U+B^^L#U$wov(9z;Hh zc#-b4{QZw|CnCQNLnZO8mqz-wmqxm_dvFiZinNCV?@D2Zc(qJ__^%V$i*$$ooXCa9 z8<9(q3)wc?ckR1BZT|F6n}7Ot^X=>QwexP+C%kqaPfF?*G}|rap_O_I`(6T{e0q{U zLuIc5`+T7|#w&&`!WW03PCO1TPU^!PA#4#p+%LA<Z5%H?Yz))uqoX`GphQ@T<HiMj zlZs>Q`abH9SJdrx8_Ix^c6q}K52a4=_6c&RSc(&w<A9w%TqOPBHa9AXFK$_sWdaIM zczh7NAyWSMfZOf%>gp;ki5uSQFptX@c84=3ezD2@#X0H3-N{zOrQQ4V4`}~*B!>HT znzbpXMJnIme8}Ke#v18CYTNema@+4+*L8ir-|yX_>OY>k9;d&DNp90LkDr(EXF-ea z%Xp2*VIFimZ}<E5<Hy%+>+bJ2`@R40;mzIMWpRg|+NWXsk@49`%+)_WqXPL_0%N?< z@iD=W6~y=?|CANV9Ippi%f!3@LW)Z#lNaTEU(XCBPbpuJQv9CDeFFScMk??9C6$c| z%0F`UIa%$B8p?x`uFI3+phpttQ35!YtUxl@h{qdwa$V_4691GQKgn-fc_HJ1S+l;p zAlS@`6v)yIKa*JbWTnRBx`bL;x3X?PS!AFz_K~bXc@p%@W1vYzXI%Fk-|4%qyT895 zlK%wOKcfV|@Rkjsx?zW_@ReZ{n=JkqK7qp;*l^Xjyu6eb*6(|n5W$QK{PPWaLmQvV z%gfC{Qs7_g>JyRyGA`{;5&*>x{<YwK_$NKApL|0+^Hg%e`sTpJkbNHYRtol&ZC;8s z^~Jl?;)GM4?w#C9Zt~h*d^yQXQtGWj^sI26x64}qNoB!`WHrd)qn&I=T$@A2Rcun} ze3j%2hl>eW;S;aY%aWRUgUe#8<<ce`QYqw_7_mvAM@?R|ew;AGy=Ah=eBlX{UVC1& zSk4&~*Dq%e_*g&Kb=_|FSopu$Y{G)Ar1Otd3O<HU*)Z)-GHv-rd1@3U{d)2}`H$$| zFu6hBf^P_Ao3-!Hb}-J5eA?N6ycxAmb_+~`@}-FX@vqrXIh`kuN7Tpa{zC-nxE?=> zRgJcYIQ+E_J^GVJ4d=cahyLYo0A1~*_j#b<kRkBLofw<OHA5qPr^dZ3@&3{2;+>Q2 zc02s)%gg5VYxm`s{_lU6zyIBR_;4Z8iVT(gAG~k&`-}a)6=_0zeJ9&n*?un<|01ux z**yI9&CR?0uh)0C*ZcimWatj`tB4cX_WkAE-S+No`_oUZX=J<gZQE})eyF+bI=|ap z?siv0YiE&8<VNI9q!ZbSwAbx_{MG&Nm)>t4ciVjo*7qX*us3lr<(-!j7Oz!}$VTK+ zWFxYXX47n%%`18J*1i3v`R3d9+jq^o%l^{s+}-XjA1M{vA=Z-jN?%<iF`x{_^eFQJ zvx@ZRF36jV8tAnb6Tzp_cv30U8?OIJqyKya8xM+xDb+9*8baaT`{6@0EFgHvlcrjN zy!f^bHBZHycN`^%^8v#g0M$S$zbd3g`o0?mjLV)|^j_3@*&LU$Ws8k{@ulTE5)EyR zE-o(e9kb%0@9-*yGbF46*=#n$nHJvqXsNb{$c@|nhkX5={M)tc(<`+z{2^T9UFBb0 z>AvFXHvpx8`|!i<X7lRRb=wca8!s{(f#KxuhXBKnaSus>!_jEl){AVyk?hBN*B7fs z)ZJWN*EK)=^oM`^!#US@-}n8S{eCmtf)DSvixwJ|`&j0yKa(AsqI09XbyhrPuI#N9 z-Bw2zpY(9scCU4l-><j#nOuph|I^e0ToKy>T#@O;#FIb%sSF{|?RJ~QbBgVnlRHQf zU5UR_Z>pS^4=S57=EZ+=Z|lXhx3axr@orvA;VZR_$`*R@7dOf{qxiCmsrA}urq&o* ze=)`C(c+dz`tr}>ZcfUM$(CeGvHN+kSx^!T4WZ%i^<fvF`}_N$2Nph;(9-?={r&y@ zP^%J0_l7H1xSZvc>GA02>gsAJkbIfJvdIZg_{#7qhEqCRh2y&ZVZ+|yp1nzXpM2-u zVl98350I>(L~RrK{I4O3t@MmbD&_U=H^uaFlFn7GgvEP_a(@!F6<sYyd*bFC`dvfW z&2=28ns{z;hp1vAT?zfi@%qVWYW{q}59V9BB=gncWk3GIFm(ylaPj6J!@6&Y`lSq$ z-uwIe&piQfmNv($rx({(;_qVo>=rl8GX~9z|EfGx^7WyzVMzKOF7j<yxRqS$4y|b( zgTg~Jpzr-=({^2VfB$eOu1{C^m(mY;P~&(q8loZd!u@%GKK$zO_qapb<>N~Z(f{Is z4gG><<&dOWIy34s8|LTviukx_A&KnA2?iPMJ?QhaL6l?g@qPnwu}zi$cr0igE|t57 zhraKJFnvCGca;f!NR15v{^VT<F^t3Eczmo;_n&+&?JXT4svn{2>+86c$5&r9-+j0F z+u!>C{lD*j_(2{Xu0*yXcZWXz{UL}xqyc)7t`qsteDV65tJ}Z$*4<rv_;C5_uiM{# zyZHF=dbjHi@%fJ;ok$~c(f6DC`=MAr-oUpP*^3OBgS|*EvK4vLwy(eWru*-I{^NhU ze0{ZlaQ8RO&7Hry@9*#X`@P@yzVG_3^PTkKdoTWw3FyZW|2XbH9Ioau^xw2iyJ;^s zm#??4uiC4(o44=WyEpRYjl6l~UR^eq+h*&<7Z=p$w-x;xiUX?JV#LXLyCr&FT<kwt zfG_opc9j&x-23Udnw?HvUZfb~@ZP_D`}Xzg*TeWf9^2>Rz<9Ep)K?9E-tYIru>b1n zDvp~g2kn$5hlX&ERJy&?vSi`P|M>K-udj!T%i*4w9+o(a5Q@x(0p##!=iL4M!{KQ7 z@#Fi-joaztfo$#C=*pO+qLXjP?~Ee8>-x=R^Xk=g@!dbfSdT&Q;T<3THLk9^yxcrI zJb2&5_t{?jzsi??mCLW?ql@#yQ3gGFe&P;48W(9e@#ziM)nol`{13AyQofhw)vL>m z-{k)mmIe2{A0kFw*X{Sih^XJ~y4}ugHk+>7w5_|pf4IMIO9=p{M(1mP?GAt4sey8r zwcyVq*KS;5pZ4FM${!SB>q<;KiKo}o0~4DPCw;oI6##j|oP0TZalq!3wqwb59pgh+ zxWX7V9ymjA|9R$ZZQI`7-sWYXal$y>c~Oto7sm;D&jw4kALYTNv~5X}V9=kW<u0a- z94tSjf5RrpZxnxrzU{!QsJdmRW2JUAA2Zd)A2NRr0AuqXF|>P*V?c3fXI$VJD#1en zf3jQsg2jm^Muhc-iIcskW<8~6?gu@$TUL0D!(zsemW-EYhAUUz%`hqQ6_JaJi@f(s z?Oj;><d+?aT0~naW$(jrxV*d^!u@g3Kace%k$p=8xMD_E#<l!;k-oAYOD)Jg*}Gpk zV#y_I?zLF|Tof;xdL^2ktkpk*#--4;hB?I(xH$2X`V#wMlA!jL&<#+@3QTS$pKozo zyHgZ9&J}M25;gZv>iy%jM1vu%cy)CZrxwJpG0)_UU^0YJi$_fEzP@bKV(i*%36WU# zEq~Ix%;Lw)3&Snt?e+w~I5w@kWofG!<vAp=`+V9j;;yf+zy0>x&E_K1@r^eCaPj(v zWFPqbeppnu@B9Ap@}g9j-Gmcl+@Hr~(_kO1_;#h4TRO$9Med?%ef<qOMney^lkq@0 z{NHC?l`U~4pX{J(ycFd71cr!ww4GpKs2u%Mx=%oOU7@Z&i~jp;!9kqq37vU-v_7Ce zCIEK(zVltz7jC5f*wsHevOW%5d2!<WW7J0ue~9`K9G4TgB&=1M!u#}VrpRCK+ol}? zpz$nsvuVHnTE6?P`?r6){g;3F@bl02x3`zxUwFSi^vdZEnSiEgwy$4be*N{uci(N^ zzrWaSzus=Qmm(Jr5ANrm_uqfN`|-!_x8JVr?z+Rz??vuJ_J@y(ALq@6B?hlVHcivM zd2{{Uch~>(f4cWyebG1(?;7V@zmwfgcK7}LPIjGi_x=5Cce|JUeRsd>cV2wwyWaO+ zeDC|d?>pZON56H$b_$Ji?xMZ8XfCd{S8p!fd~x~37uzr1ZQotEi>vl(E8F268V+UX zZ88iL!_Y2#F`i=&)c|pCnY;`_iSp;&c=K9{d`e&YqLdmr)|UBC-fE5amwbYjPn>Jb zMQhtEDam^^dgW`k?7`5_FucEcc}F}(N=oJ8(Er23!`<E8e!m~q5GxxG#Lpz0ISb-1 zp<C%x31hK+OnPxj76yCoU%!5}*?b!nMLkZ5Lc%zt#)r}3uzUHi;C#2+b=|)2ecLwM z?WS#;af&yz`gy$9R6=G+tlx#zW2Ld4i*A3%h<bJ#l_c5hT+_Dh{rfM!_~MJUZQ5aD z_9j&C4ykSz^37e>AMOI(e!t)C_PgC~IBl-4FGQMQY86`5JxKGteD(jx|M<$kZ^X;E zpPs9XorZ5{T>OmvaYFzXvN7>~IHlElhn9Tqu~FUV5R^*b#f$r)`Sz<neAPGGw%xRC zQ*2a{M3B0!+wX_}_I>}@Kgzl0u(5)Sy8`B0;HG1?{9+Qtxbt%<T!P$qW1(`WJ)A}H za4T<cpUpJ$O?QhC{NmLtX>v8H0*Q84F4wilV=u?iBs&`qyJYm3B<<w5z4md(sl!R` z#uYqns+y#jj7p{qE>DdZ>vfd4f40Y!HOHmL<?|qnbMETuD%|Vi^3Y`ale|1svX&1@ z)JVoXmTTRfYk?r8$}^Al=nbEZ2geeND^?!pNrLhl^vf^5%nBbU`Tt_Yz5dtQvV+M7 z*LQ9_Jwss694P4l$u<l~G6BOPfOus<(kZ^S-+=KYFQ^15R!K}YrK$y~mEU{brL}o~ zu43rZQax1L2_$@F$lnw<q{_cJSw<AUzag<XcRnD7<x7?eiqhadS%H;z<WF|ibv9C| z(AO`)mdm9jQm<bSi<w({jDA^sU+FGld=Py*xY{RCS=6OxVfA2BEuB2;qEve!leZ7! zwsm6I*u1!DO}^z!?RC|z*!m7JVP#lY0-to#D()mac@xZc*|Db(jID(AlkN0axzb@t zrglFrZk4<^OFdbFQ3~4TvzPG1(kV*4S5GY#T==4tyA`FYn`<5aYkk9_*o1^g^!UOq z!!2SM(!^cw4g>MyOe}v#k`ue@y6|m>B0*o@UCm3nbF#9iRI(%gxVxZpO&n*BjzGvV z`f;pZqJ~J4%#E{0a9IUqSO76<wh(plnH)}st#s2<BD&i2`TF{N;F0wFiH^1_COaRa z+@l1*5Y7wV-zO=Aq>JWZ+&d}(-tYHa*Y9?_fB%nv|IhFLHe`byqx+BNXgJy8ae@@W zJaMRg6w(=gZ*=4LBEENh@A_Vb425%z<<p&OoA&?w>;LsX{*Ql-*R2nGnI1Nhaliih z@cs86zyJQ@hYxo*H}?+@JMX1w+{Hz6dD&iHU%Y*L`KLd<`{tY1uU}sbv*X8|LN^=N z_ucL7-GBYp-S^*r{MUcI|M}<c=BB^7=^q}vNPjpdx+oqwyw-lR*<WA#_wU<3{psqP zZ`!M?u<^{$U}Uq|TwPvWTwV<SZ#S)TuHCfK%CMM6oOtohxvuYe-w(+E=Um&gPMq_u z_kHWy*0q~v<Gl0Uce}3Zy8DOw-NA4UY&M&rUS#;yp=u=T8WLC43^9UayjtAksn}FE zX(*JJ>4d+AE@YOSW|QAlt5wu@SCaZR!p2*wK1?#so-9irijS$(@JVI8MQw<s)KU~9 zr14vp2MvmgO7(Xtxi*$wY#yB)UEZVE*=Td!L$JFKXJfG~UYtM9mS@G6`eUQ~LpPYw z%G40D4?i_db$j)^3bD>=Aw|5bEyN1r5y<e>VX130g>-T6_;7#pKHlQ%aWz;R@oZZc zzpalA@uk1=w~fzY;m7NLI$Z31@5TiXUEd$J1x|(yAy<98dU)|p+|d91_>MeoOE1Hp zD@&S0MDF_SjlXOg*S4EDy`60E5T6u>T@d2<Z?oC7&dK3vjB?Y_h(e<Dqzfxf;(LA8 za<<9K1wzuLY4V7_b1n^4M+t-Yn|(-t#aW7M`XEx?r_e>)9aWo)#IHS$p^q1=j4~qS zR83*yTuFv=<Lj*(7k0Q(olWsdUTo*+#-G8YD(>-O61Qd=*N(W-A_l2fc)R$*QhX!E z11%SwqIu{mjm5`-`}nqgd3hP`_+hV?<dT?d50EDkl+And8@*oTsTYsx!FS8|E3vy% zVp(EXPf!kU<q3efIe>f&VGqRU-=;s#WZFOv`b=g5^ar#rFUYqFDDDZYFEtSJf(Dtt zY;!UJU_S>IR6!O8uS!vH@w6@`0Q88b{?W=G&EB|Ek9(eStQN%d^FI`?p;Bp;lYB!+ zdngTaCNnO^dC}bOFXm?T0DazYUkp3ED?xmjvuI#4=wB;3vrO%jopSTf%iL4Ww*0Uh zZnl3^i^~i2U#CQ_lbL62j%~l`SP~4D1Z}bRYiSeI=}fRaFRs6d@nk!>vlrKhSWc%| zyHL~~N)Oo=YdQ53OtOxGlj(=-+%9bQHd#$y&tz2huq!>Ft4z+570o^h*{7k3>}r#Y z{)<=F!acKc)A6+naENy&-;?J9qNs|GquxmkWAyc7M80&g#qH_iH^LX2`9xpzhiOmk z*Nr0hS+LAkc54`=B@Vj;_od62k8?;#<b4PPM8Odmrw5dxmgBD*o>I6D$+2?3FZKM1 zTlXCHRrEtW?_*1c@s&+PhOMw33n@acgT8;<T4^YC?7Dr|^|!aTA3lD#zkj&By&aZD zJ?wUmOQpK~p)$5Vymv#e{use=ZWNk`EA8TGa&#^~e$ycV;D^l!T;psBzQP&)-@p6o zKmGYH@it(gxMv7_4{frXYn*GkuJ5{D#I<d^-L{)eyWMUtE<(+06Cd|uI6y@Det&nj zzrEex+}!>A^T!{4*xlUhZg2g5KkOapHXGM8&33zMnw@j|?RI~C{ly>t@Xfd1zJLGz z`s!*3z9)<E!$wVE5R%m2#kKiTYKt1*7lyi-Jh2`2{7mBbam{!VK1jx{c?dO563BQX zfu!Z5K0M140Qq!U>F}dhdq}-YZEd!4O7lj2#Fex%D7FGlg5$=efyEGsULCTalA}0x zE*{?6@KVXj6ibDo`&V*o)A7J~-Pq{PTU;xgtzs#3ASsTkD+kAq+pxr4-TY+jLcKpk z9Pupd%N@rD4=MlVkY#t{1s1h>b3e|n$0-L_%oD|llXxsNJlc31JKC$Z>-uq$M#7Nb z5dD9AyuR;bw7FLwk4d6?W!SJc`4ByZ;G;{{@r)WST;Y;Cd|S8}O4Rl?`WQ+`QHRqq z1i_sfvQ2R=b2yTH-}@mGP@K6(W6LJ0NXXN8$v$~$K}q-(S)qx`TM@d$J$u|T$RE-Y z!$2ipj3V(Fo_(B0VeT+!$#)%yn-q=zRpL`FtX#<w0Ft!BQnw$FXep<g3?dbu{J3$D z&okfS2QMs!h;O9Dmcr4mmiU*3X+nJNjf;fRFjD+a$qiiz`paP<SAHum#`^Pn&17k* zC6Xq#zRi}nqVYzl|HeETSqxQ8KIe@d?oo<5i{l=p1;m1Z%j9go_TY0DB3J@F#bHFA z_ONd_T&yQ8{*xtmR4iVoy~bL+MlaY`hN_leVsWwR-1y@eyEiQEqGb<q6~l}6aJI6Z z$QUJ`Y+k0cNXsWqdMtkK@icZoQ>u*?yt&GgpSu;CCC6aN7Stw?dKg{b<F}Yvvs_N+ z_C+l&oR@mZwq<5znGhE9g_cW@F_Ew=9j^cE<bt-Og^^MyHyO>J%nIaFwFP;C$(O%i z5!mV1dHeo~#*0I}jy{PIyZG40HS$xxtJpl$C5?CEXnwUTisU^>M=fZ^Rb9%(EnRJ$ zw^Pp^!6g&;<mQk>9BS=!q8IDqCw2IGpLb+WQXO$b{xH?gH!eP=7P3VEd0wX&Sva=) zkCO!PO7jrGN$Mq&Z4$?!mSVK-7~=?0*I^DnE-O3s(g_p4xXRu+Ih5NU4@I<((PI~g zC=)56gtPDaVX`+gFpPWpA39TqeVhH^|9xodKRoy$D-eE*4AKAL>-+uguoq&t-|zSP zSAW=lx!djbyL}fW3HC#0@UDN@?e@FJF44Q)?qRp<y8Xk$usKuLd*A!s_rB}9`0Wl0 z_a6s7hoH=3%b>$S@P3@1QUd?J`oZ38Hm_d23IUz?vlD{sL)<5HzZtKXIkv$GD=$Nk zC~2q|er&(r4@b~>-yC+3bWPK4HoZuH$WU!Io2#p<xKCqknP#!VUB)ZxYx&)zl}c@p zkko7E`)1{p5XCS<(v2q{&?dp_q%}=(d^I`J%XfI1701`p=XwI5Hf*b{iklo1Jw<cT zVv1dv(@k~@)VC_EB>;@WGvgR?9H5sdv|YZ%8>bkdN_vRWX7Rzo{e7HGFJ6_Z#r{!A zwM600QKPveeIAd0!aBLiz#z$dhdZVl_ZS&H|M)SJ5P9}C`E1aV@7$6MBz!WUinEr{ zl_Va7`*D?kKg6~DxM(B3kB39oM<W@3sPUI^If6t<Yu7Z#9A}azNd6FoK_y9!CRv$K zbRUJVkBd+bQTWj^!Eph2p{GzteH{h~F2wrdtk^JSh`;S{OhQF`D0=WoOgWU9N6o3y zEJ7CMPNMe7H^=Xq8z-@n9gmNFd*WjijmhH_Nc;%#gU4xuW*qMKNs&#I^YC$)K6|A; z`t0P(Ceq7EZC8W*J`!g>#w!mBDT?S0+l;R^#}xq4df#JGM{mbJ*?vRs@GMg;AM}kF zjlCs|&3xtt%8~(<%-JMBU*Dh%T{ilLIhIsO?apls;Z3e~REA&rkY%#ZgR#oM@*tBj znqpXgZW6-M6x&jyKN-EM^;n$j#c`HS3rcEh@<H^IVKO5%tKqdVsx_<g^{kYm%q*WT zrihm<CXz*an9OZ2u2kmg_4vipZ}PBDE<l;QR2rk__D@7@J@^@0na}FRE^5WJ(uvFR zvC{7a`aEz}D0#BnJKw;gcFO5{bxg+A^NFi+mDZae<*}8yg>|!beOT}gS}ypt`_Y2M zXL$&wo^=~d6-rU>WHdaQFxT4bCX=+{;ZL5jQZk>lA9u-`fXeoLQY`$hgdU3jl<b0< zuO9GuWl+{YKR#&3$Z|gak1O>KkL+uyf;ea%Z?2n%55~VsqTNg5H`+(@mJqv--{LS` zAI-)Oks6;&)I)sX@Tu&hUo^^9#BW@ZONas@@$5bBvwy5AImEB~aQLHe{P9P^Ty%)4 zho1h27W@)*V`vUR`96yKOVqk&C~Q9#mWG5v=t?oP@*lo(cqZ=9ry^u29y^AICp`4a z^j^9y?3>~r7XWnKVaJp%6qJWv$-~Yn-G0B@?{~Z1!^3WWNDS<DyNBJw<K`>gd;i#w zQ=}g<0ZyEV^WuDe$OJeq*=ESc6ZN>dVASPf2<X3g^X8jxzTRv$QIp%zW=OS0w}-Dk zMngg-z&SUx{64Ig7w4MdGR-8KU##}Xmc_&&05>(9i?1-{!mnZvu6(&bysoHNEnZuW zsn75yN7S{d$=V~=rmmLToU)Q&Zb)4p+}0MrEf{@SZqxc0vbOcYtmS}~0h?4B)#~$o zy(FUeTJqFvw(Kw8EHsWSnu;W{rr|OUYsS&Qba7jfLLSE}eQ9J8FMxC7cz1G|^|i8q zxHdmt`Ip7$(;hoXVjz!Iga$|B0ZDDp;>VF+f2g=myYr26|NS^sa~w^DVZb4}?c;1j z==mNGNWv{UPTn`oG59`wL;S0q3tu00gbv@}hyFjwS3-U$X@z&Ft3GyF9A^uTLHXpv z5|Z?B-TkoHz#(`YpHxF6UE)u}F>8KI032K4kH5`_9}khw=sNGBD0#9<z{Tyb4&8)C z=TS&AL?77ry~qPfqr6xA;Q6ID`M@R_jyOq>6bU8U6ql}|E)UR0OE8tNj4O5ik>cV8 zJxEi^snjm`agwa`Y(}^E!oCIhw`adMejG`bAVhhEbWkxFlhL<toUG`dRgh{A^jX4F z#)y_Bu@QcDV|?mKVTBm>|5;Ebp!{mR$#wB|o@@c6S6j@g4zO2xE=w&e`>PmQG2~;` z+7?*GK#a0Kl}zm@Q2eLG9inTkdz6v7Qlz5?qvxKJdTiQ$;n1^rqBh^0%z`c}W-r!& zD+6dH5x6*pUb}!Sz9{L_6?>|nc8bnD&nFA~EnmqyqFT;I%glCe@sv!h0iShDjI+DR zt?VrqvD(!`iLL9EYo}cQ#oW0l-&A?l3b0xNKtKL-GrqI7l%L#iNV!zzooAz&gU@!c zbCT|uR}Gg}e!G<B6290$IBPECvSPa0CbZS8MzS$LDfi%#81#55QW(U?EAb^Qn3d$U zC+h?9{6{kLPo95N235$K#2>HtQywi?_R+-t@tKapxP_2?9OMmOan6MryC{edBERu3 z3bXn!;Sc4aee?}+{glt%j<|7iyedEWdU*ML^yg4$@1s)vAxa(=3dkXJ{y3Q*TGT}U zBqDBz?;m#V9sbpYJi%e-#(3I){N_V^-yc>0giDYcBJfe9Kn`JuW8NZUAfnVozu$+A zB9Gf+4hsv0$2{z@)g3mJ?!1>_HNdci=CFofNCVv8Kiogu?|1v%es_0&e}8|!-|vU! z|HCz5Xh!dxYns-H49#o3NZYjAi^pxQn`4Lip>fV;yWMWu&9~qF`On|}x5Kw25&vVU z<9J)8P|-h%-xasHD;9H<cCK^9PjP93!L*xjwhQ+$&^a!ot#vKSLmM()ER|R2OIA=> z9@Oc(*4IXuN@CbvgkhN(NqxztJ@&mIEUv8CJ!J@IoVi%$5&1JzR)<g4`58+9i_hQK z^EN35F6ID|5`oHYG^XBwmDg459$sxHm25wdH7n11g!*i3<DzzgzVZRjKSwf-y4IGq zlvmiq3Hb5GJaJ54lB{7Vou7|Gjwejh6t?q;haBN|McWsp4gI2!eX{gW;-v;*3@~&A za_Js6$6-Tww5B;eY|}`H><@p4ssus+J-MFy!xw$__3-_Db}l8g5yfFi@oYTyaf*ft z!+rdi42Zw({U~QJ&M3HeR1l*7hkK2SwnJzRql@Gjj&cJ@r=4gmg3mGmNp8T$8HM8L zeO&cF+EJ-;RVkNd*Dk<u7BGL3QmN3-H)qaoyHZ}VAf-7@x#+&O|8Um&EL?@OJVbGe z^}K&ie90|V6--8BEZKd_Ul%6^q?S&Z84R>X5o=Yy?!$)<lhbwM#*Yhrd@?+};9>P9 z*LjWVDf<>E<)8Le62_3dzIfIiRI-F%j6YHf04?5Jaq_q5L88guYwz7JQ++>;W%BxG za&kSdGS9IGyPu-jkug1R_QzBvA$otFxh?OFTT?8Xq%B(wV1LfDqV~pZ;+7=|ly15D z=cP7Vo3$yi9_Y6pd1X!d<P*q$u+~v+)(m{^J=&7Zt)1t!!>;!O%$uH_xZSQEJy}p( znd})G_uDb153_B13*GjMv*l=LURzI7YY*zDDkOYyB|#QOmn0-nxvnNV<N0DVKS?$W z(b#cAfOu{^D$Gw_QCx9fyx5Fi$SCL^#rItj&Cf#o=^w_E>f<y%^wk~80LOLx`OoGP zr#$20v)On#vQzrzVs2pgVjpez8h_95Pkr=l!;f?!NzirvkO1)B`>q=b@E>achxq;> zD-dG(64mni!`EGykcS^13Jl|^`yo;gZxMV90UR0=`KTn&MNJHjJ)MW=6HlI_RRyEu zM^t;5Tp}c-7NXWeoj>;RlD6HnO(V`Vt`YG~(>6`xMVcWcFzQf$EZdJO`X$=nF=<*e z9=L|sP&||!HP4mO;_h*C?d05c<1}896&&>h&w7~n<TvIadu6<r#X4PfdCY^A6ZaJ3 zfK5-Ci=kI%?S7}!6X=tmS@CP*_D)YadY@c6Ik^;72|y@oENaWX_2RACTRb@=wpSGx zJ_UJ8kTjsCCIHgmN2SqU+`J_}u;s1eqgL!bOWRAbHN6y?<hX3LLHeq*aDTk_K>9{U zQJUeh8Lq=VO8~g2lrt{j4<+!S-{9j{@(6XfJVsr@;=;$YCr{Sh$j2f3I5!ZY`O#I^ zkJt0LsB-_fL?EgRIR0R0)E_bdhpa&1REb6xZana4Dv|vV^l!%h)R*!HE=vQrQdS_0 zD8fj_C!dAr4@oEL;bd^*qJhVez+re0Cj(qm956Z#@l?Zm7moqPyA8()>12DQBy$kI z(W90)hu`S4#6bSLq<Bw^8uu3#8Rri;?$PhE^}cz1x0FWI)vHZ$yW_ZGV7wE9kG2pW zjZCteU9x)EB}s_9k&z)AnwLh6c34p#O7bNjdH^lCVd+JL_Q01tF`zF-To7tYA1x#R z^xN%;@%;tyWlMg3R(wGjtSAq=tW0w9>v?kwB`o!%`IT9Nq{(5~;y9^gOf2(@?iYl5 zEi;hCpFq8({^W=Dl)W_cLv48<C*ysyTH>5O8(Dl1EHjq5fp6m`0ZPYJOMfKgJ<>P6 zK8xa>$@aIewphe6Z<o`u!YAe?i}#MnqCe#=o_j+)r4hgWzRU{HFMD4mf5qY)*krTd z(g#_xA#&V&R>r+MlOI`}sw~8I>*X_rv_aktAbK317XghM*XZ|xyo5h($dinrlNn$s zkl~}%0EH#M**>~bNhcJx3dq9r@%n~Q9bz23DAo9nmJ7t+FfQMdP<$ulRRS{3h`4&u zT=^`{zSCzZmOT2Oo+nYn-;Z+uk}VFXeg9*<UI^%iX?ZB?J9P7Z{N{M)fbkcPe~8!n zN0W1rXd{7mo*xnb$wYd*NWbv)al76mNSD;)7Q1q}akP43Z@}>`e3BOlMnN$*F6Wo= z1;@##3GZl=!zlFN;{IC6q&FKGmiH&mE+)0Cwv_4tC2ro8oVQVn<QZ}M@s_08RrHi~ zoMKzkxnNhPeEqbN1uyQ~w5$)LWk6eOzq25QZl8D5zTem~)RHWb`l{vHd#%Se?0p@J zCyY9#E$8pYLBQ#}QSr>o3iDm@UOaV3i`%76^fS!2^U235$z40?$XA@~WHl2$``6+M z!ckmq*x0r>mIzP2Se>A3;WNbg4@<IK+!sj3HU8tHI!Y}JnTe)xhn_!@BoC5ef_UBG z_@N%3Oct__#|C-Dx{OPwT~?alvNeUSbQAHF;fjn45%i&sjGu{&pZQ~${;=#%@?k^x zr?~S^(u^nzsk^9)QFzPUIQpO7#N$y!baMLQmIHB=zw+_PKj5x-;mRJQu-LAW04OFB zlzU&{lT}=nSGj%1A2C;3byuo)lyTQVXSgr8V#ah<$V+JwIC&G7nf0|NCIDsy6_+Of zK7RbTpc#c_@5i%;GZwUrutc<z+ji37dTs(>S!zV4c5@P2!Rf3fkCSil8T*XSdcsPR z@u&E8dc50GSbAax!ah(o_Q^5MBJ5M0$(EhUVL9;>n%p(l@=7gn_TtPTpDz`YG5XHu zlUGRlj=stfK4n#bu}=S#kDg3z8#5~=Zh5i#K6s1QG%UVt&03yi-y!+L0Q$1)=ZQb4 z>>)8L2r?@MQJIiSC3Gv5t~HW`|MK<b#rbe)$~65B7BdIM0AE;so(J#7J$cF-0w<Y( zTG~V3Mp%xmW|My%Md7oz-jCM@R5Jm!h(jEb7_U@FmI5TfeU~i-@XA7gc!7T{zf#HK zcta+@8xjM>$&af9^po;EpSMd+Ch&P1ACaUq?>KV{Re13N+EN!_A5RXGP5k0H`OxS& z?(Lg&)E!6sC93<2Tbzxi>&Zv2Sm{>#>$qT6@}PfhMjby$y#H;fPe>tT5KpJW!h(Eb z@cLb#kTr}GY05=3pRUIT@K6#vQI9hITqNN_H{P$?)vv>nztUNILCLt<=9EUGlRarC zSDISl(Q^|33&vW@hTpY0ksfoeZA+jGp6yelWpf1kI#gp@A*F4Ra$m?k?5;KxDRt?| zAKYj0!MJqSXV1vRq3vQpK<R2$ZTLJ+LR5!9(dRL_jE@E|`ErEfb_nAm@3TQp?cDIi zJX58$VBFEjmqsRTe5~>Tj8DEZeyDiw<*fc7UX(Cef)K4daPh7HQdn-1YsLwHCL2Y# zL#;qx8j~dL2W#VGpQRjXJ6+X=*)Ay&$RhhPUJK~*K}9Ko@3X9l<PVZOemo3II{1gN zP?8S|ixo=s^|hTvMq`+9osFy19w}j>!dEKmkEOUHLUIvM`z{n_xY2qesSjU$-fu9u z=9H#R@xhmD^WkDcLZ8)Yq+^Vyj=bATW0zGSOy0AqI|hIJ_;JBZenHSbzj-WZda!I5 z_ett2=LX#MADn!5l?Lc17UNHjqKx${%4lg>EZFk-ne~{;FmAGN#*i<qW}Yl#{S%9! z7AF9TjpI+rvRIzm+{z>U{hHjEq4>?UHYQ?NEVAsxK0Weo3~HY^IW#U|S==`%KB~2e zqUFfzbF-&N0MsJg#<yG9Y+zPK#4=-F@QO~nz0Ud!PKCvtJ#n%)l2V%bIwcsL9r@x^ zCk=Tg-%|>j_+-D|S!)rBbNhNorMywF(ychzhBx1Xcj^&pL30Ux{A*hUjIYB!jyx7K z2gO5|NBPIw`i=Sv<?WtI-GubKQ87>8r}9#6JWCI=_q>#^i{|ig3!r3<>Lo2(i);CP zK8?&`_kKJ-A4TN#pOSIees~jyjy=&S>MGCk_y~EUtzvw+I3><!^2rb84_?c}WOZsT zTR}hC)-Tz7Z@lJ4#tQ|CrTr4;Y_irp<p_IiA#dq+6R%Rr+YT6Kv!f(szGNW}5$c20 z+TOx?QrS2v5Zf+alXob+%E5ATJXiJA>6@!rMykqwW5xl%Wa(wCJY`l#rpf7*aqOz^ za+ke{k{9Go)*_4-*|@wpp^W-#`OsJ_n>YDlW-%+_ALZu9cQJPeLHgthP+SWb-)EH@ zeR9yoNx_gu8(ktwoy}_15~Jl2%JZxYjV3;@(Q)?2=Nert$D1S-Mg`+7g5z+%R{s&7 zbooFi8Iwe>B`k>uSM?_P&qe=_hY)?13CODoCgah?1p%Y__tIz9l|C}ZAxi0?syF)N z4qmDBk4Gs!YOXc<*V-b0TC_c@)~~J78{MpDO_aw^qg*diy1JJ8`{x<N+Oj-7@i1po z;_@UY9)74<e^=V2AfIYU@tG8_S7(g=8}BuG2y5;hnM%yI{3ACvH^qUG-VI}Md}P*C zTrahdMe6`&6%w9O6?;m_#<E7$V(ybO*>`e5!0t)c3Y^j0Ny6!I_5~M|d=Z8{g{YU? zoF1m1jGUfv-NuPKr0Hj={gD@RZJI1`nrs1NIj?GS#l`#U*498g&u2XEFgrJUp)U!S zMQ!NLm6b8ZuVu~>mRTD==)bNQRXP3oR@()!)}q(4s6}bMRKH?)TR#?=^RvFVgw}R> z@ujT5tT9|+?SFl>Y+=Y7PwBJx#f&sVakt^pa9n$9@^;2*m!UjyGMQZ{yxy!s(e#7V zzG(Qi<g@0pbrPe%K~~Tg;{HuGhmT9``on)+=<*+?@nN&yyox*tvX>^YJ};CDfu!+l zIWN6WqT4>1+9l}$H98Pd6osgC9EgvbQ0KGXEEW)VtaecoA#EK-(hsLnuvUzN7jLhH zfOuYfQ0c$n#<hxtdqmzUx7dLvi7qACi^*_*{95u5WVF}1EVu((7LDogS>^jJjbFr8 zOfYwqus$xe6r{(UJnhARXP^Ge8YJj@dWkIGYwbCwlVV6dStj7h&3$SRBIDI;O5n+t zLi3XgapJ&w^;92U`pOSdNxW4*>uMCta+WHsdXqNd`KrW1Vko%+k9SQMsW*zuUQ1GG z;Y+Ckmv47GZa{QgGm#A*!luD8>|K-<{<nwmL-<2+2+>FXh1;ATF9%HTDM=M}GR%nk zG%7zOqbdPkj5X_D8GqeX>hVYYKa1h@WE+6WZsB=n9vN>tTwG@$**+OAz5v(4`j!_i zqrQUqkVzX+k5@L!c)VI&{E>Zw7R1kgqm)+|8!JKMw4dZ7!)!j{^@NH&MlVyl7v%F_ z{SI3zvR@pKR03kh1i%?%H*;fKvw~=|0_#c}?pcvX%MP@&Ug_Bz>?k7)d$)0AWHzfK z$E=$1r<T{oPG;54_1QaRxLmx-Ouh@2IP%>2$=rVBwM>Sb(A)jQ(Cw^C$5T{Jy@Yhg zQ?%6*HR(8c`w?|Nh9~Vxbe7jRH@-jlu(ieYmK_MrI5VGoU!E>UqW4=+He;N1bxKP0 zOGUVn%(A4sFP2mK`5Lc3$?P#isHZ~kUTuOo_r#D=#32umRbzjZ%?#2Q>v+;zT!-sR zQwYhoCYvm@*Q*puF^*9LHY(-z#r#2X3RRB0&v!j7CXL2Le6DGRd3(~dH_X_>|C1I# zarD27)&Y1C-*qx>t($*vTpky$>`GPG%C%Uy7ypQe)`dpdH?R0?vv#^t+J(=L&(hI` zG^J>G+>zhsGw{luE|TvDP`Y-dyK~zX8B`M(>U>^l>z{7KH|Ihf_uNRgBuTD>_E$Gq ze|D~+(PTG5`webcqs6D5?8uz9rS_?@lD4-zRB>zH#beP0M>4N+P##u!X^Y=MOAAo- zXGgu%O7|L9Dy1J?c;ow5^h!nTWtWD_Yt6^A<%z~<TJa9z>dE_BguSq?D2p>DD-`1p ztuHOvtnMaSS+<g7qxCUc`9d_gRx*kBk8fMYZw?y?90n3{7(#@I|0b#-NS<Ud0q{7A z2xSEE#=Oa}p}1moyz0(J_aLVq@N95W8}qx`nj6Vhw&h#bmhQ9FeSq>l`;(!UWPgif zPop_^e<{`eSASi$yGH&|s)qi@A1*20`YlgB$&QSx1gbNd<WSG5j;{~MrF6nCDg2)- zC)ImO%l!8JwazQbaA=}0%kAy$S;A6ETfoI}u2Z7qlSO$+k@e{t6pP4t8!Xt1P+nm5 zy&j;MEJ&{vR_KMXO32>QSI0O?uD#4>NEO(lW@l;hqJPnNF|yD4iV;s`>#fO8w{okP zybzx;0bty>;Pim<6HO_fe^&reJH{$++^lQz>6_UomjY!2?dN<$XC2IClh~)Y+8DQ; zUmOT1{@xIQP1d<9&Hb~llqY!epQkd1oERGvXN<MpKFY^D36Uq0x~ZG##7R_HB2b<r zkAonV<@{;%zqDyh9$Yppo{+SMLvcR?skJ`OcZ?_|kebE~IRNMUVdC0ED**E7fBXcx zZ1(PlgV6WB?;m&i%|qL@I=ei`TPw}U+SkVY`m6E5THL=9A(DDk{;1t^X*s<8(T+Q8 z+b4%vq~o{`aOvakN|`^&*TP3>m{E;?<uaZwame;IPp>oTrKzxdA&>j(Z)GKdc7|Kq zg8R<PsZ4rN!#4ZgTD2&-5*8>%;TQM$oEts2=LSw0r7wFvCoV{xEJ;ZgB;}#N_$zrD zJHAKct@$gT<>JCbZAeq<!YY-X9=>*IihC}p!>a0RuQ)<b?j5xeSMfXZf0|5Y#0lCg z9g^I&M_a^)VM)`3N&>0Z5Y(2H#5n+;j3T^$97PoG*Kr|BacGxkN=hRQsce{`efVnU zp=JD>o&2VIeSAl*Pc-uNF|IV&kbFyzIkz_B_1w*kdh0JdKBD8T$ejHNC)tR~`C$Dp zmM%E8#z(%A6)@c&mHi7#xxH!`pCwE>_g12ZD<A)GcXwxuo}V!!QA^zv1AlSBj^&6< zM$pb!Ra)zBu;5@mMT6!!O+Q7ieaO#OO9!VX+KTEKLha{jn}Y>s$Yc`|%bQY+?Jh_F z=nuXi3s~D&;*^V$rCxs7B8-=lU$is@(gVkHKg*NNc9KK7xEXQr%&}|-a>`6tSsG>e zgvwO*#ge6yIT=3XZnYrwXj$_#|C;ahk!Aj1^$U?VOl1op%eWhOX?I-v$8GkJtZfl& zI98JHsC>eamwbW0XuS?BaTRSsJ~>&kMVF3$Zkl85-eKxk>;IGMYYBj^6Yqx#J}H&3 ziD7o_ixaKku#DG;C_`dx-W5*T$-eN#0QBT#u(+gP*)&^ho9o6ww9+;Ju2RsKv=?*5 zhPL6zmp*Z$*?6&NG3&<Q?XUg3Q<XDT{VVGopSeuuyz%<yoP*3A&=zZ<W{oQKk;c=# zaWATeZS9~H-}=ej$ZE;gtRh=VE4tFlg5Lgn?(JSGeLv=oK$4(&<vJ<(W<qgOl*wnF zWJ=}^r6w1N7GJVj#Vn=Ch>z+Lj-!aSEiNK#qSpV)D8lCnfMEzBrJnow9@Oe2+7%aG z<ac)cCYTJovus4Ushvo9MQ?WHDW1u37A@YaD0~=;B{kE7A~jood{{kunoR*F2Pcz7 z0Qt)=2hD5s0hMt7=sGZ7Iw`YK6t#Uvvf~-osd)93o^&6X)xN*}iGJFl#bW~Cj8UGv zefbl`4fWda(}$9?_CHk8FLOI48zWOEHuRWPiC-HO&J9u72c5>_rXS?m{#u`8?EYyZ z>@RTIqh~%Xjf{+e$YL<J_Ql$k+EULfF4%v}xS^Rm*KQoM&fyd1OD9fZCzD2&3!~C| zM{JAP?Q>n3-+FGcY`=E<t4#=%`Sa<eb7y&HCxbO}Lr8iW`}Eg7Ig2w+`D~NtdExKU z^u8L*)qi_wnfz#QKklLL^4$fM`LKD;A8*V%V~gG5bh=i_SU<3NaHP0#S@LnncUE-8 zjS#aCj6ba0cg{)MhNbIL*}ktfb&sR}{jhRBOx>d;{Dt#pZbOxN_}ESVTzcB%dsH4D z>P%HTg*Vq8-7ZzuE3Jg9Tk~bjj%%lA@vqiZP?bdw<qu<}Y%@7Syq-a^uh}y0GgKSF zDji~LvpM4yLB@?<i^J?$KWHBk>&MytIn_r3Cl1W?hn;&gjAaCJT3-eG?0&K)Z1Jqz z7;3N|x1=g!*6c68JLk>K)IwURXBH>+{8TOo^%jN2?t+CiRrZ&kL~qR%#L5+{8p2Lm z!zWuP<zuk?W*vVq+07`d0BGCL0w~@$s8Lq{_;Kf-kN}XbdmKDOWdv?~?<h3=m#Kc9 z`i>yc$t=ZHCNjz=RnLv_M$PjE^K<6`wYN+!t5U9G%XZDFY#KBgPE=0pi5x?z*PqXx zemXMDw*^w7B2wvOI3B1}i>2agSKc)-JLROb&%t@ZgQwT{KSjd8-QC?O;jp=ZEqg@6 zauiN!R&cJdi!u_OY#DKSWx<nHe9S6xFV;{iL-xEOhSaM&Pu$8<S<rBnMw630XHIX; z|1!^zvj_K+L#pIRYk^B+aMrRcU~;%GGs~dnmOCkP_*pwZ=&6OXCjg%3{F%Fpon;5V z{6eHG3$W}!pu{Gg`LLfc!)Muk;4JxrmvBWAH4CnHJQ$+V`B1WSRus#AWxUq4T<=pU zgOXZ5oYG!o@dEkLC_mqrE}PbBQ%%dB>XmYyTG8?3LC_Ka*;LSt%e5w|oAn+?^Ft@) zM)|dAeBQu!SOG9zzwf3J0DU%lAO0_g{y#pn08&1?rI2*BnCmRz_~OwkUgXs{b@JqW zy|PvGFn87%SC3Y^JRnsJa*fkwdf`G+t5{qftvr7*X3LU7;5_{Fbl3QEjg6nVH2%bH zftF)(`XgJKn$CR!b1OxZjEKHmesZPY+274Gp2m|q4LseP(Y~KwZ5Ce(!!7$<>XFdo zd&b4ru9N^c>El1%%T$TmCIg{-^8@`T`C_w|e63ixN#)zLEEt5u-#=W*!w$f08-@@v zP5`*dB7ivPA8#Wh-utc#LkOiso{#Qymc6WJyhi)hGJ1Sjy$HDc-Oo=0CFq}J*0pU6 zW{sEX!&FxpFsEHB^R<<gaeFz%vS=`@Tz+fE)8&oGvKQ!1KdDZ+MV@^czARb3__w(G z`}?OGZ#_|+_~~(tT2Q<8BWHZ_XB?_pia={`K{1rCgwjqNraWm7{FD<(-!1uNhDXnP z=1lhSv|Q$jh4Zxvn#HYeW+jRy!<3U%V9zs+G=9%#(WU2<OW%T^|B2UmrNd8cZHL~) z@8!P>#x-8GmRXkWRiFGg%<2|6s}YcW*___j$h-r#WV@D$I_gd4+qG{fjsYZ37)ZLV zy!b1mGCD7|cJY;##4--kCnbdCBa?63S6|yZV`lXU9r^`{NV0xk#t8s7P5{IQzd!un zmv#V_p@DCG_MX3kg=lpM$|QyS^$UwrYS4;(6_S2X$^w@KZ?uT17qhzGK=Cu>Y8MjQ zx-`k>+sfQ~!OkMZ#6uP!&}xVEsj1%A#n@6$=5&*Lis-Fn6@q2SpmD);F*2LqfGl<H zlcf*J;njm0GJlE2d50+G2(K*L{6KlLl;s_B`%fx=wVyV6QGz8<WgIwtlDt|TuTRQ& zi~GvvL2xxhJDnhrMLXNgU)^}>fFViW9+o>iKK;;0Fe@X-|BG*De*9k_zSwo66@>9E z(o!mZ-j{sF16djyOP22uL#v#;Lr%DQ8{2z6?dQzgZK*h_@%1mdS)=RXSz+n1S?j@A z{Du=7r7R21JpYEE#uC!}s=hD*@I=#f`+|VUfyjb^vT^iqdgC3L+Oa|3UR8PFFRGj2 zc~6Y9EUTPcqN^`hIWZ13If4{JQyMXE_n`zpE!$}>ZsqwDq3~yW@Mm68ao%*`Q`~YU zS4UZ9@|Ei8*<poQEz4?~OY5=MS$F!yH=5eFEq)U%*A`>EX4b-#7xFQGqVxP*Yx9f! zsphUR8qXw0Ti%tb?2ExZZ<(&Bh56-DdduqF@v#b}VSe1B(~G3D{ik`m<ppl&6DI%; zoA^CW;19<qSqhN9zab6a<H>v||BvSFN&_D~u_WXAzGU6>Xro%mTDzY3X4T%fEP6g~ zbK0!M(}F8-AtF<%0Tknd=d0JBEp}j8ow@ivRh%SG){cm|&#J!RS$<1e+_gsE6Ub6w zGxv_Kzb|u#2gd2ute5l2$N$DD@MPIvZC5Qzr>R+QqUBwfRlR470U5`K&$bhurSGd{ zA01^ofnvutskT`YbvuE=(He(|=Oth2d*MtZ6>6Ox!#cv@4{aN_WGROJ<J)(h29VH2 za6E*N$pnD94!|cv*-A8d)OP>*+a4^dQw*m~>0(mb;3qA$$*N=~&Yve;u{ZayO${Jt z4<Ak+{3u;v_2|Jf-`et^?vtc39v&W)-(lRxZ&uLonP>I0nr&HPvM;<J!Y5f*ar*X6 z`dZOE8m^pa%7|S5!N~(SSv>pvtv^1mGi|};Y(YQbV$RIIltB!gYW0^Ub4sfwC&0#H zpJnHv)XV)QR{<{zh1=ulpZh0BzX0mD70a+gY3!@NcTcxN&&%mZrnGz38$B7<1Xykm z#*d6;2XEtSWKka~8K(+-Wp}mXTqSFdEBWH$$+O^-hTtbRSawtMZF@aec`xYrags1Z z`2S%ufX8OO(d=Ea*}K$d?~fb*_I=m^Sn1@GW_qR;RTMJ^zW83}m07c<tg~jeC#=vN z1%{-){$1VvSDCJRHPZ32uAIw8{%5&a7~`RO{egb<KBYCk81~(<Jm8Zq_CIg1UfCZ@ zo**&sq+^K_+q%vgS<S6<nXI<4EC-p)nN6OP#T?1YY&m<vX`tOx4$B{l_pi|nBDqUe zTC02G+RYPN5ylVVoO8~{1BvkvBKd!E?~bGY@%TZaJ#X_{XWrv3NdWlDuPcs2M(1zd z#ImwJHQ8msIyTGSWqk}VHKI;`B(D#cT+WzuF;W&*)~A6k-xVw$=fnpyd-9ec@x=JY zK7NZ&m2l=vZH(~}BV&_IGCuj!a}N&>&ojuVHIX+~WlqkzpE@3NmOG!Gx7Q187SzZr z+b2pN64|@2tgLO$)14}lVeu2U?K-8~rlmNj_NLqS@|BrA*Cv~380Y_^#ZXV#1?Yqd zg5{^#iyf?g!n@!p^CDT)Jom&<yRjqTDSK2r#ob?NgQM(sy)1xk|L`i&qNmI2ukvnq z^0mbt{q*V@<iZp#o9a}5q!iGvJ+W}w6#hK-l3tJC94Bn!c0lne{_t9ydTf0-d52y5 zL|otdVex)=^0Us$dZpyVPf0x?l+S_HUO>fJtNoNKhXd4o8f5Ou{ij%pw|G3iVBxI& zdM<NPo~JbND-M;FYwTp-`7<tSm@L88V*!>OXe<S4liOt(M~uq6Px+p+pWek+Iyr{1 zZ`b^s(Uw`K?t(bZ<o75m$WN(euuLZ{HCUFtAuS8~U$R-z-Z?MImu|#iEOd<Lh7rZk zTJZ4Kr2Ic0&pg)q57Gaq>c1HMFH|$k9aNm<V3)>tzIcL1{pD-B=D4u7L(*7z;j>cN z)2I-L&+`O%ADdz!f>bu(tu1FMj=m-<b&98J-i%9Wdnjoy)8eS!pMBrmWtULB_t#6f z)ELX_m5mPzx75=U08bQXnA}-W?^Z18j<uF<hEE+jS;3tD^a26n;L@_`mJ)BW1oD*D zpS43_`4HyQeom*egqBWe6{?(m_9ionCyK`Hwv-{SekIhWb7IK-*gNnl5z=$*V>Wr+ z){D8G;j?!3!GSRms00i2uBQ5&Ur$aOPlhL**1nL-)Ki4{7I$?xajyO}PqkR-Ry!My zt<vL}NxTW|_*}J4Z}KL>`E05ddLI9}yeGb&oK_WU!7TlY$9n=FC+*>{(Y!s4Q^zfO z4;_0SyAu>YT=h!!G}d5<fGbP*Cr=Vfz+HQ&(pr|{eNdZrmd1fnY;mxlOS|zSsk9%N z44moD!PwsC#NokNuI;lTm6I9VT1E5eBM19>N9C8+?!v`6zhz+d6r(bkvmjpPEP@n6 zmCvkkOYPKsqLmg;8Xo#2gQ8`pioI!)eG)x65i`!*mCX((zf(SG(eCNz#(0b1bgKYm z@DsQCsa@of&W%Z>MHVSm?(*6uQpx~BZ~YWEeaio}xUjFZCS%k&YO;(#Su!Gpo>Wp= zAmY{CwvGq6a)i@lQXY#RpXYw+$ji$-|LudH7x>Ke{w0&^AWwXaqXdAm=b>ffH+Lob zGel(UMTMtNylVq%WdNuAY%y?b9N0~U2%qO|`m9$AKF^b%9OLSRLV7{af{%%DrZlV1 zrtzm{b->U&<ecTK{=GGHdI=xc6Jwf|(fooA?0M@jG1PNS?lodRw^uWzJl7k#?54c< z%3SP0XTRbVueY_!mvT2hWk1YwCCQ%Rw0Zth@f^z+OdDn@C)fCjl=L0eXYYkCDpPmK z;`@h}pKkM8nIVt1gPt|T)hEf56Xs|~xQV^TpZ^rnJ5Nr|iHxD`Ss$6nFP`fc;rBK$ zd->;#JsCEu!`0kT<=Nl3r^{G8TY$`XseI1ouxzp^Q#&%|`#ecKQSsCVe{Q>7bBC5s z5FoCtoT$7DV%c*juVJ_M-L3a{5p^$w&z_}s%Vgf#ayj~hDK|@2vKAHB_h)?x{eRM@ zx7+O|Z-FwEP@QZ9FEh(D7`-jNRh(syVwqYbVR;1o2Q7{Ji!GZi!@kK_b1jy4_D)m3 z^KM8__jxgnZ))2=7{~ESC5WZ5lBJKW@?>g31mj~G_b!{ekmdQ$@D+z4&f8heep9yJ zj_2MlEd3DXhVYhcKKv49o}BY@&s+VCHWn}IqgL&l`#aP9AIIswRie96a)=JMm>hD7 z4%2k&fF{e?CWmOooNnZ_#iU4~+zxX)ZFl4t$!0?t`m!+_tB7P&8|Ikf=FE3}zv^%J zUe|Z;pPs*b-q+`PT+i3@dS0LR^?65~YOJ+xHfV&?%MxG@733^&YZ~}9Hs5CMSLJa$ zz^baYSRLn2C^{wE9iC$_2py{C&tms}7*ci^spb(*)#>AEa#=h@HfW&8mz2?Zbyc5| z$Y&?^vjtQ<qtvjE<k2JX><q;CywSQxW?MHZQ1N+b5@H1GdhFQ|C2jE;zh7GD8v&$k zma2z~ncFiZh-xYaXsNlM@72+HaCCD!^ISLsinP#GKYxzjsx>IZKTon!Aj7Vpi`mw$ z-IAM7Ob@64(0EjDxqE*oMLRXMKZmV%nf_)p{2=^xG;MKZF%oljwXA`c`wJ5WC7tO# zSx7!k%a}u1c?VOb6asfO^2WKvAV9LSEB*}5<osq{Z|rCWJk2_usFV-C2r7K>GHfba zcJl3>xc9qm)Ol%uvpNRSa^c=CIammG<Zqz6R#w9Y;Ys0z@uBGti#w~z)$qpkSOJif zl6$z3oNn&?D6muJ;yWM$HsXtSNtiLnOL79;F2=ZP&&x&GcqXO5Vh0d)dQm5vpFjbr zs&D?}I3Ta0rQtz1%Ze7mqVh>iDl6JzZHPM##ovyS{*$wVSLnjzzxaYmxrR4abT-2o zh|d^T6~p^iM^$`0&B4=oF8waoiv$h?W53y<6qGWhDl8f*Cnx-JOaJgdtkaeEdeZEm z&XuY_qu1^+_N#ZsYWh7Suniv`L;-H1!O6r0zbyNZa}z2SOOt1Jh%>%j7wny4*OE&# z_a?`A7VijyD6qTkaTezz?~o<tsQvlTIl2L@!L*6`?&ss6<<|SCOxYyQ-u37pqZf0^ z)pvq=+J@4rgm=mR=Gm78SGX}72`l4k|5YHtbygKb4IUjqz<kg&MrNVon?6jzI=kn! zrL!rPH$Jd_fKIi?!KjbMJ?`>{B(6cX@%29^Amop0mDCyrxZTDT3;z{>K-C&oZuUS; zOCaHnInM7?_#gmQxlj#=dH5>YBlux_P`5pB8*BL;+-ok?ga`@Bfz|_O%keHso9}y{ zY1(H=aolM8o(6++Lf`3z_2lrYqLz;|vnXyYoUVvjv!-a{WX73W(Kcof3q^o64;guz zLxC_41zfapZQjVujHS;D>hTj)uqpL=r;pNW4Nq$ZX*50K*EH^3x;ie3+FWP#R3b4P zj@<JRR*RTBMO-^*EjQi2Xkri$UU^^{c2GQ*AekE+Kk6&d!Z!7H2&(P|Lo=+0IkPkD zJQl8Gb^qdP7W`m2<~Z*lOj|yqL$L?c3=`)9ydC7y?QvP8iJ4e|G%4pxY~S4yw2YQ_ zmGA=Tg$Jm7D*z<=AHga`HQx>>g-EWazRa58#5~R=g9mw_d1FWF1eC0uoy#2cT!Aw5 zy`q{H2Ebapr1vL2*0x7DT%B2vQaE<Vn3@;*M`I^(vJKf7Hg-1#IzLFgT#LHuHM>JF zzkZzvXh$gCD~TJ@f-s#Db?XZ6%ge|l+UhWn<|Y$Q07qz_r=|`yv0W0>nw3KeE>q`N zpRRb2u3eQ&Z#f~+3kZ-oN>=j<d7#9I{i376S=RR)g-{*^eKRj0Pk)1|UFA(-W{f3M zS$arJdjcw0EU@vYQxBVUeohmd?=2ZK@7k+YV36OV%=C|Y8Yq2%C7uruU_PWh$I8kA ziV%-f8tZz?VPK%%(D6x?dg!Y8M4z9YBULecZ$(_n&_iJE-hEDs)JuNO`5mvmIBAS5 z{5?6O*3@2PLyJxnyl7`&{X3BM3v2ga<!HZ|?&Q@@!_0{M9t)Ih1e#tE#6`j9OcV;U z`&D~fpXo>PZL={N;@iNPNQU8jdX4kh_!SLxZa2MFH76LI9onTw4hC^4Us{0KAZY_y zk=&&AEff7n!&K&t4&BIxF}dCAZSu{Z1+&asZ5-ln>o5QOdZNg<*fFp3)j5UJ^`{za z;DJuuD5Sof2V19=;PV#78l?7r)Os#UoKy!*3<5@E(b%dEDYr7dT}6adt@@Z@2g>uS z!Ev$9L#MM0YxEon^EO7beY^bDYH{*Ny71HwLI8ZKh)bX&O^+cI)bT+(Vu?&WFRIGI zb|4lq5&J?BTgqTVs)LewU8D%mH2mvjYC`X6J}SPf@DoATGlWI&dBq5(1UC%CXCzxJ z>;{h*sSx(O)plgSQrcV%&z_~{Ci&nR`snj+`{e~OvtNnlHyHIbor*G;Z<LMbnw!I{ z@W3ZT;}Ep}a9vrc7k{qoT7w#(80#-L|4%>RZdNe$Z>1dVRbzsrpwC2#5#K_cU1s~N zp0G8FB8RrC?P{Dix+GPkk(POFm{nX)#A}JqEI$ran>ficT4d^o)0ASOHutX|Ct`AD zt6i@jC2FOF3#hA2#gu=wF{wlWdW!Afj@>g?POBt6=iJ(G3xu2?$F_$I^vW$@ZmjJj z(n@cv%vk*EG|iGuuuG0UX7g(2r`J|2jV!v^M}b}{1>seN<4%@#LH9J2^QXExDnZLd ztvpl-BH}E<a!@Bi$;Ja8=r<9UbTWy=<SE|JZi5_xL{Rb`6V^(M=%iDm8ngQu#_O@p z^^^mX76v!9qLy4-O4FZyDSziU%k|L$oC{**z<CC|<-Q%*V(ExWQ~m{&p+E{eVb=1f z_zXS32;k*0Wti$Q$~hgr`>{TPT)8W=eWZzIcW25`p8GJ(Q5=jZqjq_M8_l_#o=<rr z3v+ac;gO^14*{>v=-}w1++P^Goi~j?nY<*<b%dChrA@5k)oU-@-+5;Ecfs03Uh<(% z=j~oAR~8UTXw95Amb9H}i`A9u6R{n^mnwE=PfC_f-?RnJ3Gx8i_reN;Y=bNcgUKIT z=V{quT%h-K)UC5~E6YZGfIqq|dAHPTOn3m#BSZ~@mbWgKicn!=pDQuJ$#8WBSq-Eb zvA7nr{Z5hXyG-IHK4=<})g^s#+?i`NNJvIoL_ZE;eO`VrywFi|YeVKHSVe)-`j<>4 z@%AEVO#nC-a-%mCtM~Tdj^2&!_!{L7-jevzK)k7wq-My$>4aBi9{#EBYa5)<ruT_g z#w1H1EUmO;`V@KLWHt6Mi3mG~BV;VFB~AjoZo9%XlO)g(ZD2f86Sw?6+`}1%I1FKF zQ{Git^C*cONIde6+oXy9X+>Yj!((yQB=3KMCSSN!_h#Egf35WG32<hu!8%<-mx2cq zLP$$reoJJnU#oG8#i3IC*cP=*e7eQ`VY-g*Q)0w(8C8}eI)&qFCy3Xw`sU?dhET8_ zGZ>{8*DTRvp7*h*?aIK(am1_poGSKpaI#{D6+qVacmK{=Y2c}gMR>6kPM~p_DkJM} zk=#a}f|ONJ?bO}QF8mrH>;l1CrvMr$2d!?&nfX;rOzb5Jj}%^>EJH!~MChJw@WcE@ zQdZPL$206qkm$%Xigkq+a#PdqY0`d^)%(YU5Bz62;o~p<&`m2TKctv@ocT}v()9RG z?Q~4$r!L<s`BOV2e1C`kF3n5Ze#jWv-^G9Erd@yikfQCslMuoAPC?`xAq3G_2_c9w zM+iX_3PK2?Q1}i(6beEJ|4X3|v)OnanDV{Q$PWcZJ*hmkE#}x(y}7tmdE&Qfkn~nH zlHaOJx?2^>eXCYAZB;GN2Exb_K@>3%4wc9UA_hVmh<qSo@ZAO?ABY%;d?4zHVxq1r c_W!{^qWnxiK65$C{`=TlT(-LO!qh$X-?IGxl>h($ literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/dwindle.png b/dot_config/awesome/btheme/layouts/dwindle.png new file mode 100644 index 0000000000000000000000000000000000000000..943ece5bdda3cf316c286aabaf2b554e9fea7e3d GIT binary patch literal 967 zcmV;&133JNP)<h;3K|Lk000e1NJLTq002M$002M;1ONa40ARUQ000AyNkl<ZXx_!x z&u<h}902f7I1n!+m<R_BqS2F{OuT4}cQ5`W#)DT6(6E8fKq#@Hq#7V?!;cgUAVHeO z9#moktw0EdNU+kxUn$Iwo$X9_ySpAJWufi1Yi4)8lReDLdo!P%_vX#}KB`g`iNw6B znwkZvR7E6Ekq8A&$T^xz8x^rYtR@u6+;+jVL?W~x6Ic+t>b-6OGLcB#Be%WLQsQNA z`@~l7x~V1;<V$FM0-?-Zr`9aH#gtG*)0S=k0*UYKU8nr4RLyud0N306_oq=3h(+Ga zAF#0)(hz9m_Y67(9JMI6V6-SepQ=>dr$qtIh=l@siURy3Q8sUTQGk!7V)wi88g3*u zX$mC%)mIGQh>BQM*=t1r4w(^(q`oVr2_`Ly1wtPd0T^^g-Mq}76ag4l7FzVfx*x2r z0QUJyAoM^#y$6)cD2qi7(0f41jirgmVTu4uiG>=zpa{Sr^FlR~6anaSO;u{vSTTSD z0*R_$DF*PBSfuVkF@OQT3k7bhbCo_<Ot|K_gZTpb+%T_ZsO>c-r2=JvMC6g<c5i&b zvL0YYXwjK9>+cXrgeqpt`okqnbDDPN1K4LqAX~HcJ1PQ+yDdZ1e$D&<eXd9}9bM(z zK}Q4<x1P(GNAd(PU{1D5*ZSJDMBws@GsF1;IH}_AmQV1IJ?^PWHH@rM{zuLHI^p9s zJ!VnEC4qZFO;xdmsWr;S9(6Kh-Pq^&n9O|@sZgkHX3dhH3!KbzBy8=FM+_S?VqncO z{SsMcSyQKpN&7e<b}Y}4u(S9;;8LfR@&mjtaI5obc>!LqDEdDY^8)-Lc5cPdA-}oY z=AFq6&@Wo?|G$(7lzk)eZMOl#BBxvSH<=cCXuzvD)o%GKAHcZKTg!WcW~D}#$Ahwc z-3A;Mx`&cIF3OaBWYf~Q*TwCUxx6~zlte?#yvT)TRu3M!)0=T%#E1!_&#W`ESGoPr zobOQle3S(1rE}c`Y?ZalCJ*|@*vjO#n}Aa)c7Rtj)SXuHpqGFrx9?XrZ8L^fF7b93 zP&Z;u<}BF0+5%@c0ViDaz&S52?blYzo4WfJw8r)2{PJcIfX(VQFW-Lf>9n<XPvDv{ zKYIvn7tsVIXB`4_OGl3P7VspFVy8i)CW-*;lsGT3-_>3>!BfKH-!{8!D+2H&_G<d9 pNWeC`q|O%yfR|iZ1~d!a{sZNtu+uow?X~~_002ovPDHLkV1oAV%ANoK literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/dwindlew.png b/dot_config/awesome/btheme/layouts/dwindlew.png new file mode 100644 index 0000000000000000000000000000000000000000..36de1baefcbb0cf103ababb92e500a1796f341fb GIT binary patch literal 997 zcmV<B0~-8^P)<h;3K|Lk000e1NJLTq002M$002M;1ONa40ARUQ00002VoOIv0063u zBQgL01D;7lK~!ko&DqUwRAm&$@f#Mz4GAW~f`w>wr7IIR8spxLe~EG7)&(>)G&B%O zBtWVG(l)#VFn|P0h+U|}2wH&<43S`^iEk;~m$}oK&UEJEg4#~)ytK)^bG;|Cn0cOi z&-XrW=lsqDYAVW7sd+VZbqgvg%3`6iR3vm#kgY9W$`YYOT_jd@&n44RsmOw=(1OGb z@8ktg6^k`Ib<b-pU0(F2k8Jg}JL;;!Y!O;VAX4?f>5iSZm=Y;tOCA8B)VKEbxM5aB z-MKsfZgqM06&n;v#9q%HV10H}Q>dBU7;F^am_>;N<3#}ssHtf9xF~?L5|PlJq5yu7 zDw(&vD1Z-DBp&6l4cB9v5K8@RpcsH7$`UmtuM`1r(2Pi|;+tZo;JQVLP~`n001msa zVP4hm`9#BBc1}rT(RV!qRxSWT{t${hHk?;N(me*wC`rWj=a-UobANj&5jm8#`}F}# zNkp1H%ijHZ01lcLsk@$s``!QpZmOx6HBk(}exX#&&-u9T4e*6Ttl?5I03&`C3El3Q zCr!HMrV|ci3ozied38s7#E6PeNhlS2>V)0vPgr^Z%!n*H+wlQA#8Q#68MA(K1#{S) z4Zx5Yp=!t5-%=JzJ!m<i_K_XHfJrHiwP`!xh*0Y8e-!grmH>efbE<8Y)|aNGLRZ(c zjAjcEIHl~*mJoc@9uL)2G>x_C|2^3)!e?`O+@hu{LJvi#Ni<D$=%0AHk(70P;rO_! zN6IQ9k%pO$JwFvXl}|=A;D}KZ#*B3AGb~lzm}=UnFzIe5C64E-jJnx-LRa#ZW}WR_ zp}YBO!%p^`MR7mGX(#(h;zFBx$}g^V*)y2|42##i|L0PnlCQ+R&KqD<?93_^JuULY zh?fOUcPoEo18`2{jTR9%t73flJSZ8;8{m-0LxDkiTvk=`flW(ouS&X!xvUo9lvGpQ zyx65x)q^MQ_vaiKGv=D{RdwdTUZw6wbGAouySnP3e#U~;wpFzyn>^qz6Kln7o&cwn z?GOmOq^aSIL67?h@UQz}CDS$wjIJ&5<_pj;W=_?4fxz~51<pJHPP*)|3!Y#4UT>$H z^4$fkc57K*-YEiLvxd#f?hmh|t^FH;n<o6|i9q095mPYeyn_OPxusuD^cP^|KbOEx zhmE^d1i((Ii&FdC==T(?AUykQv&*(309N88pA-qO%`O!eivtJ*UN9N_U#@=uqEaj! Tc99;>00000NkvXXu0mjf6M@nt literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/fairh.png b/dot_config/awesome/btheme/layouts/fairh.png new file mode 100644 index 0000000000000000000000000000000000000000..65eadec6b066fe3aeaed28e23c03626c43355d6d GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)Tp1V|fy@t0854mNV@Z%- zFoVOh8)-m}ou`XqNX4zUR}8rr6nIz;e*QmyTS$)32Em!y!8}WD_MG0!_$1=D7*OSn qzF8bVYEhKS);~48K-RykM=Wb%S?wOIetiqbW$<+Mb6Mw<&;$U-kS_KB literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/fairhw.png b/dot_config/awesome/btheme/layouts/fairhw.png new file mode 100644 index 0000000000000000000000000000000000000000..539fdd3cbcad9e9b0ee929e55d04978577870700 GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(`ea{r~^JZd^VSP=v80 z$S;_|;n|HeAji(r#WAGf*4rzFTnq|4EC)aTpT8|6M`(lKOzmKvB{zFc?`3=v@mmb2 s@<!h*4j{EC%4O@H8eSmlU)Cd*HL<LA4_3dv1>`b#y85}Sb4q9e0Ql80#{d8T literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/fairv.png b/dot_config/awesome/btheme/layouts/fairv.png new file mode 100644 index 0000000000000000000000000000000000000000..9f43b58266d68613b64ef5e5c58eb27307f7ac97 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(?IA0GWx$1Xlqm#*!ev zU<QY0H`0I{H%}MGkcwMxuUm34C<rhg`1*hTHUVi}5fT0wQ#6-Fc1UCz<}+MeQubH~ zsQ4Sx=AHZ&$_u8{o@1I<K08C0k)gr&&y&w{8CyMB?JjF<T?SOd;OXk;vd$@?2>=`@ BFzo;U literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/fairvw.png b/dot_config/awesome/btheme/layouts/fairvw.png new file mode 100644 index 0000000000000000000000000000000000000000..6efef72fc8dd2b0a24890cf417e1ed178e2bfdb7 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(@h~|Ns9#;dh2SP=v80 z$S;_|;n|HeAji$q#WAGf*4yirTnq{V%m=>ypTA8&T31Abf5sHeWsw~cnTGic7nhVh z76K~%#<Y1SzlHLGDYfUA=9SOR5N2d(@cr}T^IXPOPgc9j8e5kE6)||a`njxgN@xNA DZT~ar literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/floating.png b/dot_config/awesome/btheme/layouts/floating.png new file mode 100644 index 0000000000000000000000000000000000000000..cbc78042bc88093a6633e5a6abadec6fbbff573d GIT binary patch literal 395 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877lx@?FI;{yFfh7!x;Tbp z+<SX-V>)vn!|{*$swq}RtpZ-lgPfKLZF<Jf@pRd`rS%S)=CZ26CvIs5FZWT*=2-gL zcdplR0k4-OGA}PJ^Y!|C@9yrHL+|%KytlKursDlO+x^EU?Vp-@Ftp*l_c>PvMiv1F zG@`+l@rK<k)dUxZ%^VJouV<*V$Q1gV=&*afo1tP)o=+#cUD(^(HH@KBU$(b&tlh&< zy39>8%|(~rp)>ulg6X0sQUMQ-X`S9%#{HpkGtcC7J;u8tnPqQ;K1|{&c*Hls>~j6` z>4iq`PCs-BGI_8sqrrX3!s<DtJd9bAzw~1m9vGJXUnqS*bK}F`Cyy<UC}(b%b}(s* zz@@}}yXIg1S)ZTD++dWu?!(8(HEV0qV+@{j9=!hTjB>)E7KZ%W&#v)(2-b=*N;o4M hJGp*tUnjrJ2TskWA0%rfHcEg3+0)g}Wt~$(696K5rDOmA literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/floatingw.png b/dot_config/awesome/btheme/layouts/floatingw.png new file mode 100644 index 0000000000000000000000000000000000000000..7ddf7ae8eab1f27c55cd9cde9f0e4037de5aefb9 GIT binary patch literal 388 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877Y2q^y~;)m42-s(E{-7? z_ugLHn9iIiar|Sukdf?6FOH?bnhS$DBR{jZ6a`<uWWQj_?7mByDQBl>1}~eib;_l$ z%lwuGbEuYB_2svRT$*sKy8Qf8sd@Kz?^%ES^>@j*^7SXCZ8+Y+SjMpAK_UaQ!~q62 zg9b*P1SDodJ=2fs)inoZG;|v=_+Inmuzb`q!O&LkJL88R3C7C%!an~_Vmxm0a-;Ry zMGU<23Orr*ayYb_FaM>wa1rl{!sjvk1*^F~{PYRsKR>G>?^IDkgz$%XoCT}cPt0QN zx71JeYY1vtl5=1|PJ{cD$2EKYx=vK$_$t$|lg**xB#*=^hI1XV+~(`wG_~<LWLW;` z5puFR6ZTqC)`eRkB(u1=|NNiu%p;cJJe5oTf42F|F~dmpK=iyTOl#bGvw!(iEO`BC d?Pi&ZeT+J*SG<i|Q|Ar}T~Aj(mvv4FO#pO`pWXlf literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/fullscreen.png b/dot_config/awesome/btheme/layouts/fullscreen.png new file mode 100644 index 0000000000000000000000000000000000000000..8f0dbf8d8961c45c06996f328df48d1c383b9ccd GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T&GX32Qt6bUHJ#37)yfu zf*Bm1-ADs+96eneLn>~)y}pr`!GMF=anJutJ`7Gv4xakYaNXhYg=F)F2=)TW0O12N v8vQ_1AFxhg^so^EYHZN`aQ?|h`TLwp3R%tv3qMK#iZOV)`njxgN@xNA7auUb literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/fullscreenw.png b/dot_config/awesome/btheme/layouts/fullscreenw.png new file mode 100644 index 0000000000000000000000000000000000000000..b88939b909d04c47c4b38a62809dfe3b5dadb618 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T!Hle|NocXoPQU{Vk`;r z3ubV5b|VeQarAU?45_&F_WDL%1_KUe$36cq`7k&wIe6+n!*z$p7n02zBG?Ng1B4IA vX!HY3eZV?}(ZfavsIfu!!}%v4<?nMYDP%bxEc_?|D8}IF>gTe~DWM4ffg~}* literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/magnifier.png b/dot_config/awesome/btheme/layouts/magnifier.png new file mode 100644 index 0000000000000000000000000000000000000000..0df4982605603853d672dafdaae9920635b6c56c GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T&GX32Qt6bUHJ#37)yfu zf*Bm1-ADs+JUm?-Ln>~)y>7_GV8Fq0@bmxqewn2jOFG)_hRtv@a4EdW<FGAB3#gKT z+hz63hAxJEtefN}>}8KoKJaSwna4o86B@qGf6vSv&T{Ep%xXT6N>5immvv4FO#q!g BG`|1< literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/magnifierw.png b/dot_config/awesome/btheme/layouts/magnifierw.png new file mode 100644 index 0000000000000000000000000000000000000000..db3b0b26888da13a38ba0000ea9b8b660c654272 GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T!Hle|NocXoPQU{Vk`;r z3ubV5b|VeQ@$htU45_&F_PQY#g8>K2!O#Ea`(>7DEa_;w8#cquz@_jekHfYkEucyU zZkN?B8@d?wv2K!^u$MhT`M|5yXC4FXPH6Z#|2;EzILoDXF{}ANDm`8OT-G@yGywn( Cb~VHR literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/max.png b/dot_config/awesome/btheme/layouts/max.png new file mode 100644 index 0000000000000000000000000000000000000000..ccc22cf34ba789d95c1b92498f7e382e1ca0e79b GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(@U{L?q)m6Mz(BNswPK zgTu2MX+X|0PZ!6Kid%1|8}c16;9!3EfBw5LevRv^wuc1XaQNma%apfuO+CY_;<v0X zt}t1e>}Go9%J@L^;Y(q;zYHq`Zp3RlaJ-3UR7$XCP+|mPCVNIDW_u<jmj5gbB5e#E z5^f9~GHeVTjemJgSm-jPea%UqySsqlKfB4+e}+GwzY*_>&#YS6wN;P5+dlW-j$fbO vF}L+w*roiO@x1w&=j*%A_3kwA*6q`8yuw;3n3dECbTNactDnm{r-UW|s~cNV literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/maxw.png b/dot_config/awesome/btheme/layouts/maxw.png new file mode 100644 index 0000000000000000000000000000000000000000..1ab27856bfc78c4012cf2032b3debfc366160281 GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T(^G+{{R2K@hl%kpa^40 zkY6x^!?PP{K+ZBx7srr_TW_Zu@*ObXV1D?2{<|=Kjq9tnhXmem_~t3gl(%(FJ;STw zx2!L&Fj<=HW_sny_(1gGOJTXc3@Zd~#A`cnyoqO2O0Z{8VgzC)dqyQ@dnP58|11q6 zZ44a}ZVVkVYz!TZe|b(==rW~!%}JlTyMW<8yUEsnhCiRb5$}r6tXkQ%Rgb^hKKI{_ yU!UJGxAj}trTm=ny!n~u>$}hO?lkb$?bC0(!dfYqmDCAzF@vY8pUXO@geCy|*k51( literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/spiral.png b/dot_config/awesome/btheme/layouts/spiral.png new file mode 100644 index 0000000000000000000000000000000000000000..a24faf563ace21e47863547e9bddc5fd353f9336 GIT binary patch literal 1506 zcmV<81s(c{P)<h;3K|Lk000e1NJLTq002M$002M;1ONa40ARUQ000H4Nkl<ZXx_D% zPiz!b9LGN`ZQ0s264O8<nkv{386_zeRuU65jWI5wiQ;<m(1V^R@#4XQr=Bn=LW~-X zhIl~MlLR*5povjJR|yHi9)uVrrbbDsNLPzk?Rc1ZGw;vu&CHhCxlMQ8@B91n{l4G( zJ*coke<2|u^w1TOJ`iR+R9F^(G65Cm2`CFDRv18Jx<;L*^VF$PVLK!A{T~2y(=FP< zYHeCEkUeZ+FiOQr0LVA(0-51357CngU~3+LGC>EXO&BM5nmg#u1h63+K$$A_j!o;4 zIKrc>&Hymr2N3z*$T8lgl?kv-gU2a(0d)HS_<dKUmR7#W3HzHi$9X~`sA5UQW8U>W zG98gk<G!T|H3xW`v%Jch;s7M`ZCbJEfO4i1s<Jgf%<&c*OpWvbaLp^@x@lVr4HXpY zXP(0h=L3+;H#FnQu&sqjbTkll6}5PdTe1Pz<|E&$nsH^gC8VgS;^c`#n+8<|LUe7= z0l4N<-{s6o46#8}4G49Dh<*})fVyQq^}V<tB~eQt)M#mGs73!#5K;i<4{h^}j?^&z zIx=85mi&iRHUQKA7PU<CrW{E%p$z4uK>@J+uM=dD(v~A>uS{a-q@hVABqZ7+6aXPi z8KiXONNw2-7eYvAt{>L{Jt+X8P;yBrD4|oVX}EO@$=eiw>AwoU%L-SJEG48&z=T-! z6`D>GdLjTm|NX281SL#~=eXldLT?11i2o)l>SEQ$0%WC5855I0FI0@+`26>?La&hb zlV3^3q$J!0<2FS)VuksnagvNl??z$52(<zrM@7;EllxKvvj9|JQhTiclyjq!ZajL; z%PCY<AcHahC=aBvbXid&V90o@#~}4Lt^#8P4*-Q<N`S-)sV1Z(x=Bz`u>g2JcHT*m z@<%{g<7f6W%(4MUk@DAol*F5ifb`DK0x5}}8t4>&odT~8c&lRU=2D;+p-&0r6=oO< z31MSC04ac`G}n{HJP-s+rtuft7Y}rDX(%tCZ%#pSNRxI8$$@#^W3B23CUfZ}6R{z- zCT<fW!N0&$^eO;*In7e06w6X%HYk}*ne*)o52hW_OPu6JA=!~zw3@dq^>6M+*%YE? zNY69Pl|sVn?~$A02q&w#8At)_<Vnuu<g7?T;yEA5YlYB9ziLXi@)?UcDwlUq3FQXO z$BGa(vWxYUpu#;I$W21=qndr97FZENnLV83<p@BDDqr(&Zpqn)Rr!!!H=6gVd{iOe zD5n^sD>@g9@D9J`)UMl_%VUbbXx<wxE8^DV46n0V9ZdS!%^Cj5VXu$-=Ew@~G(nH; z3C^;ExYz*h<!$D2nJ>?a<k_m{yd1lAg*Pba0Q%X*X^jhh=KCgQ`t(TBgoZ}S^RyUM zAFBDl-Rx&pE5+=yfO|;yO^>A2eqo9}8$gMj9ODn~M_B{<X2vkvl%y&RuJSn}Y0lCa z(K`0=4S#zeEN^J-O42+(@GRXDfL=B;#U-s0Qr;Gul4bd>NZDpem7fg&`WR)J?<EKw zfiR|qMg$l5h(VJ!=A^X5HV$#wf>1LC5c$_O+T7F-q-%W0dYiZQthmH>4p~t!#*YOq zuFOHDirG8|x!tnXB~8mqY-5^BS~<!y(9Eklr$hRacUj}uS}Wfdlo(}-^RyFPa0DnG zLTZD0V^(f=NDF+zor0xN5kLriY-S(FnAK9@zqA-~t}M(Nxz2I!*CFc#P?4`5=w%&` zaDWS3OSUQBwaqITmo|%B<x_U3xu^pmn@>EzUg}(A-bjWG=dy>Ge=*CKyvcYplw1yg zhuO^}AM+j8S&E+`BDBOJzw;HZ@fe%9O<mRi(9JMoak?f7t;Q+_d4W^>#E;BzBNxOH z3!LL1<J@ZBrF*WL3V`Tlh;g3bMUL<-3z<LujStwO!k!J_KZLcmj^eWGt^fc407*qo IM6N<$f|%XC!~g&Q literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/spiralw.png b/dot_config/awesome/btheme/layouts/spiralw.png new file mode 100644 index 0000000000000000000000000000000000000000..f34ceb0b5ddc377c8fe1f64eede2ea0435e89026 GIT binary patch literal 1527 zcmV<T1qk|yP)<h;3K|Lk000e1NJLTq002M$002M;1ONa40ARUQ00002VoOIv0063u zBQgL01+Ym(K~!kowV6$9R8<s!Z%bRIc8tU{(1@lAHbkD16bmDX37W<j2hl`v+_~sN zSCqJM;lfo{m=qyKjYdOUAmd5`ld#alD50Z-1Ys6Jj1p6$BvquNMXdI7@&4}5x$nIx z^}XGjdGCDZ_nv#MqJmnPJG|(jOKBG>>!PBT1yClS;@kmcLBt9JgraNIX*zeE8WpxP zLf`)Zpo?zN#=Y9KB9J|7VK8*XN&w`Gc0p!1%tQ3#0&L9#C=+xb+Qc}))7(LKCcuVl zfHGC;9gEg2afC-%odGc52MBd<<Opxm$^>lF;BiV`fNmdvU-vlF(#SV+!hWaCah{M8 zG>JoxcvtsObeL>f?psx%=76_3%d4y@4j_qd(~3j~lrt+~9JVIJ9B;9~tdTwdS9~m7 z7j4%<qY8@gGtXg$^8qCB4NZ6~*sg_%bu<V&idsC!E!hCJ_)zz%COj705?s`b?c}jT zn+8<|lrn0A2H=WMb(cLWWrz(?H4y3qQTho00d-4!s(bN*lvpi6sL|5gPz!%a5E20M zkGA+mN7XQTJ6wzm#gboGWdoS{x2R=`H_MR}6S1H?H$(uo{&j+kq_oSCv{oiIbllLS zqLfn68W8~qX39uPw;aVwcEd$bN}1n};((qMKnRrFq!cQl6RfGZbqUGS6u{I!Houz{ zZb7mtA!Pz4#Hg>(bezx={@~N!pA~^n3Dd-L)bTo@Hv}l6znK+vG3uiNWVtRDCOUy$ zMa3|VPk(<_=n?XM@-Io4<b=Bv<93R4lojTc+DQ^7JsVX_7^aQ^WUELu!OVThfmr|* z#iaH)1}NuRC0%&*n3r7`M}Y`s0>m0fVd-W?jesHJscwT*-zW-<FL(fAe#rq+R!A`+ zIni}OY!wT@^Rn|yvXtKf(l>r)Kf^2=K(drS1|%omqy?mB{w$E3=!t<&0c;m|>wq^Z z#%|69dJy_5q5Opz#*|WujrjnQ0nO4}Pa5+;C|GhDf5CmxdYGGr@(1+ADM&VH(rO_o zFwc9ejr)Pg-1L$Yu_3l5ZWANnU*IWvV}QM!W+}52%caO{P%@h`=iM0|Ogo~NILVDd zWk+t&YTmZgzqlV|lTy)EmFJn}N}<B*?~$A02q&w#8At(k@+9YSd{(3(@$8S}Zz)9| z{c%&emCsnrsd9N6732oZmlaB}kzK5(q^NKY2XdWIe5+>fsD-RhiZXjR$;%-?i7H?7 zZ*Iuhn^k#}UN@Tes=QSp;3%gUqbuAOjPMS>=ESbsn#*H~z-ZnZZdOFC$r)Z}b-Xd@ zXE$f~CntM-xo?iFly{n-+x7%!*?}V28{W&?%;jdjJTH=GtDgOGq}CPQprixzvy0PO zF8DLwH!;(vM^a5_Xi0gV7NgOQGMNwD&3<OJP|V&7xSMp}^ho;JFHF&A1C-dwG5+wr zlr^AlW(>2<l2oO^RX%4V*;8vXqIK-!8~*knEN^J-mZW)p;90sQfL=B;#U(8g(!4D; zCCk!1PRce@VfeWKiath}=6eaDBM4(^XjpK8j~Fz@8rGz=#5N9b*+Qrp1Bm=%8*OfC z6r^i>$a-t8;>?OmZ0C?=1!MeJ;NZ#}RK_-&=ODLR(z>K+d5LXIb4d$Fc?Oz!bmw$P zfATJC99e7S^MVqiOmUueQWu;86b&J@LA^06w>zW-KH*M5(x?ca6n$)FAIF&0T;V^o z7;=s*%ow@OaqicVle^*pP>NpG@dyXFz_nzV@*Uf}l5uFW$W=aNM>rQ10J1M0U@vtp zGH*D;#<}cC%)glBOWtHW8cHq$;9+(%$;W)hb(W&L$hE{Gzw;HZ@fe%9Ek3M4q3C9q zvB+H$s>sDE26=%~{KSvUaU&OEi3QGaka2Fc&(h_SrXmpC3^C3#yvPy0Wg!#bH$GrX dZ1!w`{{RYPGRcBRIPd@f002ovPDHLkV1jqu#<&0g literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tile.png b/dot_config/awesome/btheme/layouts/tile.png new file mode 100644 index 0000000000000000000000000000000000000000..071a385f1d1c84b1efb108b0c547447f892032da GIT binary patch literal 174 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0L3?#3!&-4XSJOMr-u0Z<#|NlU8`t<s9wk!F7 zET)nmzhDN2vdL#HfIP+|Z+91FK^~t^K#r5Ai(`nz>Ewu3HVF>yH3<yN>sBsY80av^ zRI9<6LHP&=w-4(hHa0e0E6xLN)EyHVV!DDG<~YdtE?>d)Vxn(NA_K$Q)sm-gi<^NQ Oz~JfX=d#Wzp$Pz0pD-%` literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tilebottom.png b/dot_config/awesome/btheme/layouts/tilebottom.png new file mode 100644 index 0000000000000000000000000000000000000000..31eb533ecddffae5c90257052599e3ab43074862 GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T&GX32Qt6bUHJ#37)yfu zf*Bm1-ADs+>^xl@Ln>~)y{gH_V8FrR@Z<mT)mqXnXWMv+JlzUI>ciLq-b>vADr8_d r!sxyK^Vw$t3=BKipD`rNWxoECLDr2`p_d~<2qf?6>gTe~DWM4f5*;kU literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tilebottomw.png b/dot_config/awesome/btheme/layouts/tilebottomw.png new file mode 100644 index 0000000000000000000000000000000000000000..ee337afbbce22616d210c0aaadbd4d4986035d0d GIT binary patch literal 165 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!I0Jk_T!Hj|Fet8AnhfMHl?3?( zGcc4*K5GHwd3w4yhE&{odv!M#g94B9#TWnUw{%bDx9Si$bXMY_&eE{IhH?$>H0Ln_ z)iN-=X_)Z(&b2e^^l};I{?cV&xZlw5zrm1+L1pb{hLdi*8zp+}+Cl0(UHx3vIVCg! E0ME5KiU0rr literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tileleft.png b/dot_config/awesome/btheme/layouts/tileleft.png new file mode 100644 index 0000000000000000000000000000000000000000..ab55e087479efb9254f0efabc7720acc3a4eb123 GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0L3?#3!&-4XSJOMr-u0Z<#|NlU8`t<s9wk!F7 zET)nmzhDN2vdL#HfIP+|Z+91FK^~t^K#qf_i(`nz>Ewu3HVF>yH9Wk$(OgHkB@Q@b zhcNguhy|%|tVu{nU@AJq=D{Gh{RlVDmdhtOo?I;H(rPgF>D1?8*cqnwWxuBCLZDd; Mp00i_>zopr0Gs+QHvj+t literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tileleftw.png b/dot_config/awesome/btheme/layouts/tileleftw.png new file mode 100644 index 0000000000000000000000000000000000000000..c18e7b43fc1df32d0a58bd71e81e9973e5bf1cfb GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877Y2q^y~;*FUb3f)V@Srm zw>KAZF(~k`9{Bs;KU;9J#tVldvk!jY5f?M-DcZ@j;QnJ{|7f{rR*)$`Fu_8QQH4RQ z-_0|RAIP1<C{*Um;L8EDL2VEJ21!P+q8k2+8nrK#wLzk_or^_`eU-qvJzf1=);T3K F0RYgUD?I=J literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tiletop.png b/dot_config/awesome/btheme/layouts/tiletop.png new file mode 100644 index 0000000000000000000000000000000000000000..c7e4c07085277a5719ed1a39711972d79bd8af65 GIT binary patch literal 152 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!*aCb)T!AzYEKT2e9!N2k1o;Is zI6S+N2IM$+x;TbZ+<JRek&i)vhxx$A|Ne^&CNwxW%v!x>M@mxk*3*9&uS~f(*PB6s reZx5h28Ew;Yn=0#K*k*iR`_CFZhxIs;hXyHJs=TJS3j3^P6<r_DTOas literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tiletopw.png b/dot_config/awesome/btheme/layouts/tiletopw.png new file mode 100644 index 0000000000000000000000000000000000000000..2669cbfccd9b435f5d1fe224ee38234fcd606ae6 GIT binary patch literal 164 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I3?%1nZ+ru!I0Jk_T!Hj|Fet8AnhfMHl?3?( zGcc4*K5GHwd3d@whE&{od)1MPL4m{N;>O?dR=2zY1t#*;Pt(d@zAAPZn}FrwdB)Nr z3=RATte6>W*dDF;A^%|~dsNzGQJ?`pD|HV%wl2S*%e%46Sk)3F;_2$=vd$@?2>@tH BGb#W8 literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/layouts/tilew.png b/dot_config/awesome/btheme/layouts/tilew.png new file mode 100644 index 0000000000000000000000000000000000000000..c722a358e0618163bbe1a936093d327ce2594d8c GIT binary patch literal 168 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I0wfs{c7_5;rX+877Y2q^y~;*FUZSUqV@Srm zw>J-RF$nN5T=@InKX}q?*?{7T;(~}TT&6DCeGD`12ClIz(>>1&G6V>0n5TrhFeJNv z|5;-KG~CAW6oZ)}kYVWH`(mLGM9l+!ho?`kJpUS6QgnQ=h}(~E0w8fuS3j3^P6<r_ DHFq&j literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/submenu.png b/dot_config/awesome/btheme/submenu.png new file mode 100644 index 0000000000000000000000000000000000000000..8b5f24a8f77a6bcd0ad8e953f9ff5afc7e248111 GIT binary patch literal 370 zcmV-&0ge8NP)<h;3K|Lk000e1NJLTq000>P000>X1^@s6#OZ}&0003wNkl<Zc-rli zAxwop7{?#t25KPSW}-+iQXIuh#92&kFS2PcQ>Z2jk!mwgDK<x=7$m^<*kJFm2k)^l zcx*a+etsmnyKCI`--Yk{?zj8y{&zC~psoo*2D0DpA8<aR3MtESlO)NiD2f4gKm`&- zQO5H;SeCWRvTV^b%{3Ls48wy&Q3S_vYJ`1Y?2-axlq}2OdEORbZ<upV0WwNeRS1Hh zTrQU{n0rbAGD_F=pE!=!IG(WPm@s4%%d%h?#uv75RoC@B)-uE)9LIran!7Yj7hTug z5ZwvGFfgCbzXva&ryj9}CE6}c(|*G+T<3ZIjJYR74_;9e@O{6;{=Z_*8PO{&NfNlO zJNV-rV;4ltC<p@Bwmmrgv+w&W;?GJ|RU2G9Y1{Ue=6`aBI-GvS3G#3K0TPYWKlusW Q#sB~S07*qoM6N<$f~#eq=l}o! literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/taglist/squarefw.png b/dot_config/awesome/btheme/taglist/squarefw.png new file mode 100644 index 0000000000000000000000000000000000000000..192e870317f843ef5e73cd445153f76dd6dcde38 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^96+qV!3HGtKUiJ>QnH>djv*Dd-kvgK1o9Xi|9T4_ jP-xiy^T|V11`Wn}9RC@c{&lngr5HS2{an^LB{Ts5LYx<* literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/taglist/squarew.png b/dot_config/awesome/btheme/taglist/squarew.png new file mode 100644 index 0000000000000000000000000000000000000000..1f5dfb0630e964b95e9ac3b51896bfe2bb2c7438 GIT binary patch literal 92 zcmeAS@N?(olHy`uVBq!ia0vp^96+qV!3HGtKUiJ>Qp%n#jv*Dd-k#dX36wo@;LZLm pO>0kFcUtEms+CYwVZ!1OC3QS6e<GXX(iWg{22WQ%mvv4FO#m}Q8%Y2F literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/tasklist/floating.png b/dot_config/awesome/btheme/tasklist/floating.png new file mode 100644 index 0000000000000000000000000000000000000000..f29e7f5a9a88b2792344da49b01b69d947002ee4 GIT binary patch literal 345 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~g!2%@3w~L7bDaPU;cPEB*=VV?2Ih+L^k;M!Q z+`=Ht$S`Y;1W=H@#M9T6{RTTHmlEFw9?wpokYtH#M2T~LZf<H`34?P{YGO%hib8p2 zNrr;Er*A-bBOl0QrX+877Y2q^y~;*F-VRR}#}En0(t{hdT^MB;9=zY_VQDVgJSnei z`zxc%!A3iNvPrH8PK)h2T9g{}kMZOpo^*pB+!8rr#xps#2fVN2G2e6K`^7B@C*s>o z*92^Mer#4?rRwc>IUX9fi*!GyTvy>Vwu-CSxnbQ4_sH9e1***6{uVjZJgtzqwEbP{ z1#zbxr3qo@=FB_OE^se(Ug(o6F_z`8Zp;pMKR4&aEHeW&Q`OMRMJux-udd=;DY*Yl k#Fiy5<3D>`d0N99QfGYPmE_VDKtC{ey85}Sb4q9e0NKlaX8-^I literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/tasklist/floatingw.png b/dot_config/awesome/btheme/tasklist/floatingw.png new file mode 100644 index 0000000000000000000000000000000000000000..eb802aeebfd3632131a4f00e3fa2e934d5306c54 GIT binary patch literal 334 zcmeAS@N?(olHy`uVBq!ia0vp^0zk~g!2%@3w~L7bDaPU;cPEB*=VV?2Ih+L^k;M!Q z+`=Ht$S`Y;1W=H@#M9T6{RTTHmmFv8?4?(MLXst}5hc#~xw)x%B@E6*sfi`2DGKG8 zB^e6tp1uL$jeH=JnUcKST^JZv^(q?yd22mg977}|OAi`qw=goWJ@_t>60~WSh}hwi zS^Mh`6inP?AhB+<=k`r^7wiyimQOU5<XNZJ?6`1Bubx-`y8IpQyPkLU=?edB*4*uv zbZKdL`?BDqYa7emk1bmDm~+0LZdXL%!v5;qVo#l&-xgmeTX&&6)s9)~Ra}k6?@OVl zC)6(9w>I6w_xk2}(ah#ma(7lPOE}mUT5V=(TeUgS_w=T=nLS0%9K4nPZ(N%cW2?IV X(dwl}PXAwnyusk<>gTe~DWM4fUetK} literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/theme.lua b/dot_config/awesome/btheme/theme.lua new file mode 100644 index 0000000..1559999 --- /dev/null +++ b/dot_config/awesome/btheme/theme.lua @@ -0,0 +1,99 @@ +------------------------------------------ +-- Barak's Almost-Default awesome theme -- +------------------------------------------ +home = os.getenv("HOME") +confdir = home .. "/.config/awesome" +themedir = confdir .. "/btheme" + +theme = {} + +theme.font = "Ubuntu 11" + +theme.bg_normal = "#222222c0" +theme.bg_focus = "#535d6ca0" +theme.bg_urgent = "#ff0000" +theme.bg_minimize = "#444444" + +theme.fg_normal = "#aaaaaa" +theme.fg_focus = "#ffffff" +theme.fg_urgent = "#ffffff" +theme.fg_minimize = "#ffffff" + +theme.border_width = "2" +theme.border_normal = "#222222" +theme.border_focus = "#00bfff" +theme.border_marked = "#91231c" + +-- There are other variable sets +-- overriding the default one when +-- defined, the sets are: +-- [taglist|tasklist]_[bg|fg]_[focus|urgent] +-- titlebar_[bg|fg]_[normal|focus] +-- tooltip_[font|opacity|fg_color|bg_color|border_width|border_color] +-- mouse_finder_[color|timeout|animate_timeout|radius|factor] +-- Example: +--theme.taglist_bg_focus = "#ff0000" + +-- Display the taglist squares +theme.taglist_squares_sel = themedir .. "/taglist/squarefw.png" +theme.taglist_squares_unsel = themedir .. "/taglist/squarew.png" + +theme.tasklist_floating_icon = themedir .. "/tasklist/floatingw.png" + +-- Variables set for theming the menu: +-- menu_[bg|fg]_[normal|focus] +-- menu_[border_color|border_width] +theme.menu_submenu_icon = confdir .. "/submenu.png" +theme.menu_height = "24" +theme.menu_width = "100" + +-- You can add as many variables as +-- you wish and access them by using +-- beautiful.variable in your rc.lua +--theme.bg_widget = "#cc0000" + +-- Define the image to load +theme.titlebar_close_button_normal = themedir .. "/titlebar/close_normal.png" +theme.titlebar_close_button_focus = themedir .. "/titlebar/close_focus.png" + +theme.titlebar_ontop_button_normal_inactive = themedir .. "/titlebar/ontop_normal_inactive.png" +theme.titlebar_ontop_button_focus_inactive = themedir .. "/titlebar/ontop_focus_inactive.png" +theme.titlebar_ontop_button_normal_active = themedir .. "/titlebar/ontop_normal_active.png" +theme.titlebar_ontop_button_focus_active = themedir .. "/titlebar/ontop_focus_active.png" + +theme.titlebar_sticky_button_normal_inactive = themedir .. "/titlebar/sticky_normal_inactive.png" +theme.titlebar_sticky_button_focus_inactive = themedir .. "/titlebar/sticky_focus_inactive.png" +theme.titlebar_sticky_button_normal_active = themedir .. "/titlebar/sticky_normal_active.png" +theme.titlebar_sticky_button_focus_active = themedir .. "/titlebar/sticky_focus_active.png" + +theme.titlebar_floating_button_normal_inactive = themedir .. "/titlebar/floating_normal_inactive.png" +theme.titlebar_floating_button_focus_inactive = themedir .. "/titlebar/floating_focus_inactive.png" +theme.titlebar_floating_button_normal_active = themedir .. "/titlebar/floating_normal_active.png" +theme.titlebar_floating_button_focus_active = themedir .. "/titlebar/floating_focus_active.png" + +theme.titlebar_maximized_button_normal_inactive = themedir .. "/titlebar/maximized_normal_inactive.png" +theme.titlebar_maximized_button_focus_inactive = themedir .. "/titlebar/maximized_focus_inactive.png" +theme.titlebar_maximized_button_normal_active = themedir .. "/titlebar/maximized_normal_active.png" +theme.titlebar_maximized_button_focus_active = themedir .. "/titlebar/maximized_focus_active.png" + +-- You can use your own command to set your wallpaper +theme.wallpaper_cmd = { } + +-- You can use your own layout icons like this: +theme.layout_fairh = themedir .. "/layouts/fairhw.png" +theme.layout_fairv = themedir .. "/layouts/fairvw.png" +theme.layout_floating = themedir .. "/layouts/floatingw.png" +theme.layout_magnifier = themedir .. "/layouts/magnifierw.png" +theme.layout_max = themedir .. "/layouts/maxw.png" +theme.layout_fullscreen = themedir .. "/layouts/fullscreenw.png" +theme.layout_tilebottom = themedir .. "/layouts/tilebottomw.png" +theme.layout_tileleft = themedir .. "/layouts/tileleftw.png" +theme.layout_tile = themedir .. "/layouts/tilew.png" +theme.layout_tiletop = themedir .. "/layouts/tiletopw.png" +theme.layout_spiral = themedir .. "/layouts/spiralw.png" +theme.layout_dwindle = themedir .. "/layouts/dwindlew.png" + +theme.awesome_icon = "/usr/share/awesome/icons/awesome16.png" + +return theme +-- vim: filetype=lua:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=80 diff --git a/dot_config/awesome/btheme/titlebar/close_focus.png b/dot_config/awesome/btheme/titlebar/close_focus.png new file mode 100644 index 0000000000000000000000000000000000000000..288c3c0d8a5e966fc60f351416ce1948f05b11dc GIT binary patch literal 619 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6e*%0$T!Hle|NoCLFr4CNI3vPv zUV`DG9K%Z&28hTdd4`wHAofvahGVP@$JiN8@GzX>V*rX@Rc5%M$#7er;ejc`6C044 zGlC3f#ThP2GrWLnVP`nb$#9YnWH`{+%Zd!w)EI8*Fx)d@cx1uw%%0&T1H(&BhF7x8 zuk<-yy9>SX5q%pa`_5V5oww+_c=`85x*uvyKc=dF%+dPPZu@zH>(^Pn-{uDVV_^8l z#qdvx>7ORsKU4014g&wY#r}oK{!38(m#Oow$mCzO&A%4cf8D<SCWrl-9sh4(+P@VA z|JGIf+tToFSLeS26aO8X_3!i|qqW<%0sXI4666=mz#sqy3P50h1kQuNdt`9s!-1bb zU0*z1978H@<(@z8#N;Tza>1?0ZBdJ=XN*IWLZ+&ghLXa+|N8?Df8i5<Wzb$eW1Z6J zyAxVF=EMbkwD{1laAwt^D<6t))up~D3F@Bx>z3zD7U%!xA7}NH?#@(Sn~+~y^v}9i zEAZO+>5HU&I&b|bvEex-7%czvWJPJokGtQ!y;OtO7~S~)rY(PsTJV-T_iO7n-kYJc zbm0ZLDKmd}$=mH}osjg7J9d54Ple5w;>x$im=rUnZC!LB>P&j?n)ppof~U;W-?y#% z$x@xC-L$hU@jz^X`>w^m*fv@Hc**GVEhJj&(e;uQHksZ|mUg_SSl8wS6*{usKg+s! XyVl2)lef)){%7!X^>bP0l+XkKwS5oj literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/close_normal.png b/dot_config/awesome/btheme/titlebar/close_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..61e16f30f9d1a910750ef1aa8d3f9b69d7ae744e GIT binary patch literal 658 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EW)6e*%0$T>t<74`kk!VYn^Lu#<yf zJ3GTIX@={P3|GXV-0f@(TUZ%B6sf+?Q@$v|a8{V%u_4DJUG|Nv3>#P&{;sR|yFBl8 zlI$r#hGYB;e|^ONItx8eV%fmVu$GD8@BEa%)1zNSNF3o~ILO2B*NX4H95YZHB-J1I zx83uZpYT3zhP|9%k$T6!W#&(v`F3$I{LMG~o2K=`miL7j*WXy>zoD{^6<PioaXpr1 zUc<z&3aDL+{jVa+U4F)uj10>e8U9K#{}pDu%MM~MXJGgXw2O`5HY39_1`zrSQ~>lN z1H%$j6r_>(3h4Qek|4ie1_m}>Ubf%_Vc~>ewzRYa;j}am4Q3!%3A|t-pk!JC5JLb+ zEkqqMi#M3<!ueTcK=VI(x;TbZ+$ufq?tCaffF)s?o`Qmc>q<w5s_-S(Jq$Td{Qs}- zS2O!~r{$Z6yWjM@jq5n^PC;@xH#<*h^`2>VKmIh<x7o2dCwk9Ux;W$Hh36GYGm~m7 zebYB3w5v;;f6DDO@$1@<bqyz_y`J1(y|wD_rDYY8eqyWEmMzx~HCQ?&YWH<{o=Dwg zNqaB<|B<rS&~z7buzNt-JL{IZUiILUcf_q`>rc~8Te<jS&EA{uLeh37ZMsqOp8xpd zgq=yd?!2ovxoa`|&7QRpZ~11i?Qe+v*YRexT<M4RqCSloQ5r=?B`Yc<PdiwqGoNDJ hEIMgt3}=mcz1Syp#)A7fyMUf&@O1TaS?83{1OTa^`>g-~ literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/floating_focus_active.png b/dot_config/awesome/btheme/titlebar/floating_focus_active.png new file mode 100644 index 0000000000000000000000000000000000000000..da4e1eae77f2bee7a529908a22d891577b233fcc GIT binary patch literal 521 zcmV+k0`~ohP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0005dNkl<Zc-rlh z%`2=?9LJ9&Nivs(tgsMW3y+1Y)NEuk?u?i5e)H%`QN|Q5a_@A>OA2LWrCBIf7W@Os zEvvhlQW!(tlaR;DC3m{{`u%d9nhrCXVrB8E^PKZNpYwapdCnsMybAAPiLh8K3UO`F zKJ>ty*oSQb-P0?uPV9o(j3>SWI_H8AD2}d!DMrV9rsE7FGd}!Yzrx8S0+?MqMEQUZ zl=DzNHKaJQ7FyJ27~dz?u(0gMk{3bY9OolyV0u<8s{U!B`p&TTZ=ib6i;pcwpl2{i z4Hsw}TgB+y2_}CbfZE|r&MZDD78N%pQF&_+Aht!N-$}?<<TmkxGli~wbpC{-eaer7 zFE>2TtcvZI^P>C@XaQ%i!{7oa=Sg>5!#)m4PS;;hzgrcTof*P@t_78ro|^w-<9yav zpkU~M+;0H&d3ZbkMWjfNHBoZJRmpu%aRB+f5<WyZMvH**Mo2LuiVt;`XS4x%uIEW= z0)*|rpu84RD&^K4UD)=J)(T{IsU$X%^wX9>IZe4BA>~CrohBo>8C<<2ww|OGuR-IQ zazS1S2}r)l6>{~wzbs|U$^{8i&fo8&RDbH`g)4WfQpx*|{td+Ub>9vsuz9f$00000 LNkvXXu0mjfTvPB3 literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/floating_focus_inactive.png b/dot_config/awesome/btheme/titlebar/floating_focus_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..ce11be49d3ca3f4c1e479e922ccced361c50ec8c GIT binary patch literal 550 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2n3BBRT^Rni_n+Ah<Z%{wL>4nJ za0`Jj<E6WGe;61TGdx`!Lp07`y}Z|p*-@hPVfm)nIY-j|HYX@<6co8~^^o5Qv8JX6 zQMX=-c1(Yu8WDB$Tv+zRB_0!<3at(v(~<bER2bmg@$Oud3QMoxmJJ_Pv+ZL~vzQ|& zXg~jk{u}wEjd$#p%{h{0<6Je1{glFM>+99Ah3j=UZ8JZwb9n7hPS$g&TcWf}A1qNW z;{GPn*_X{NqiK69K)&FP;7(0zx0zfQPOB{bvi+K?-{<vt((7+L5}GY!EyJQ}aCyyU z%RGMufr2yL(obgJkhpz3Q9I_c>sp2_mnt__?_UulX8Ninq?2#<jUJ;j89!gHoGGwv z{ibPm`Hx)Wo2h@%RK3W;*q~97jd6zpOI+s^!)ua%a-X>0<ItRxVKU2(?ShTw9es%w zp1<z;ofi+y;xgyDJ|WiNNXi54^Ga?WCv3~P%=H#(vpKW<+dTci0w>XFYm^#(#%8YB z%eMWdT-Juft;PSgB`@Q-l+Py}w%hNK{J$yX9Ixt**`3b?hB<?3iEBhjN@7W>RdP`( zkYX@0Ff`INFwr$I3Nf^>GPbZXHPJROure?>UEUCmq9HdwB{QuOq`^=Zh>VOw3{9*I ZfEo-S8bbfvd;!$J;OXk;vd$@?2>>`a*$)5! literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/floating_normal_active.png b/dot_config/awesome/btheme/titlebar/floating_normal_active.png new file mode 100644 index 0000000000000000000000000000000000000000..ed9caf22b984c2a139a378b5607b35abbab0d486 GIT binary patch literal 667 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H3?x5i&EaHVU{nt9332`Z|G$!w5|hh+W}pAe z!64*SyH_RaJdnZU_Mg%4Kcmrq9{a~}^+(nmetrMd|E77@wZe`71%Xlw`XJ<2bYSMr z?~4!qXVCl4p!17C_pfH?G2QTkymq&MY*w=u<_Y`a+wT|6|F0i?94Nw|^?^bAGYoxa z&;}tn|4SZq|6MD;Gn;~CHD57ky#=Y%ddp@1UNhytfah0`h{j_E&1Vei4}gf*{l9F) ze_`MMAVKxJ3~IMH?Egyyfn5a@QM<*UcAeYhzli^TR;&LEs#kzq29>i6suwvN{_}hO zXEy)OpnM7>qI?9%V730wX#Af+=^%&;B9DVeFiQNd`5hQ)i6udP!3+$-4v}eTX~Al2 zZa@kMf_a4#fD{{;1dF8kuqC8L>hc<ccv5a@y1_u&AwgJ50Z0c6gGAF3)IfwVh=fvL zj+8^@KE5+R%Z_=vIEGZ*+Ir%5+`$A1h6H^}SC4HnkAkyOwieAf95HikkBrb%v3LKq z-hBAC&-%lkpF8?Eb@I-4UVr|bt*K#+9dGM-rNH1fHg%5H2RBUjJYuBzrsSE{Y-N@D z+F*mb_bktfdVf!qYpB<-<7)cwC1&I9sMXEQ*(R=mIa}YpD=Ac6dHv<-Pp4O>6fsI^ zm^!tsT9wtZXYb{<iHrJWC-<+snqd}S6E!VfdxP}a{q-fW|L^``G&A})ojZ3o^Q|x5 i(aaga)x~e^7BNfCk-ulm@_akcM+}~>elF{r5}E+!0uB!V literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/floating_normal_inactive.png b/dot_config/awesome/btheme/titlebar/floating_normal_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..2044e9d607558af193dc891e2ef503fc9be0ea81 GIT binary patch literal 541 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2n3BBRT^Rni_n+Ah<Z%{wL>4nJ za0`Jj<E6WGe;61T<2_v*Lp07`y=?2v>?qLiu)J8l^AYP;5nl&Omn&*vO|8BT2Tz?k zC!dk7DCpuSsB`3y*T#Sr6Sti^6gQ>o<xR5Y?pN?+(bc(=DfX;UvQ1L(^XKWmTK_uh zJll1@^19Xx%Q>uZD;jg+?%(G<a(SD^vc0Be5ne*7eJf7<_!0T_f#&qJq1BUp{BPFk zmF{`{TEF6uX!PbXuK8>UhR2nHJ%3GU_xie^J3MD&bMK?JO(74gbOKJ?KFzSj!d?Ev zDRr}=*E?da_&M2MVOYpFzb)^oPw5Sn1&-|v8~${j)zJU;>Qnaen>EtwvX1u5W%aSj zGrMoTt7X^6ZLN$JJxm`wSTdAyd%iySZm?D<e^TM4BS(((Jh<@Cw>wClO;=a6!mLT7 z(<&&K>j?voZsv*un>_>tKYIBFXL(3;EY#(_`avg1<5j_pFAt-6ax+(5c)j4knwdTC zKpZRG>6_Ea=N_@&GlhTpgm(KAeuhhd;jdca8c~vxSdwa$T$Bo=7>o=IjdTr6bPbF` w3@xmTEv<}9v<(cb3=H%N9u=Ty$jwj5OsmALAznA?3{V4ur>mdKI;Vst0G+|sm;e9( literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/maximized_focus_active.png b/dot_config/awesome/btheme/titlebar/maximized_focus_active.png new file mode 100644 index 0000000000000000000000000000000000000000..e4148f14864f4e404f6e3d808de92fc7f0c89cad GIT binary patch literal 953 zcmV;q14jIbP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX000AkNkl<Zc-pPh ze@xVM9LMqZ5cy>)1;S)Tn1d#Xq0XRYn{6(tv2_bw%|)C)Dg$h{(#s0j5nzr`O#C@v ztnvqAfUc|)mCg|b1P;++LET+OaF+@P^5f2q_3U%}k^JKU(QA8c-+jN|J@(n>^WI1P zkNhU0>+%<?EnKiaD0KM=(*oN?f`1k<b;r+Q<meXMKU6T<Sx?uZX~35idPStwp1gp+ zzBz)sr5g9O^SIlLbcFv$_&bF*D75?aXK<QIaW++Rr=ffdcb(csv!6Joj9yfzNugcG zN*Ej*p|^Jco9!0E4OMF8N9kA<#w8KMl+d#Z{aT^cw^A6YFQ>o0f}0IzF`NJ3w&^o& z=$^nRVm+_^yC+g9qE$7FZ<RvLYNh@CgY@*=!eZ&h+Ehnd+b?u(OXf?p1!qL!?}?re zDXWVP;>VN({(NT*_N=wo@-|@8_%ZbEVuo`P8Q#4{ft~zRYou~-2`7T?bCi2SOFZb( zxlr&ll)MTR+u_0|jP7|BS7s=~8Ij!1cw`K(t82xWlSQdQ%e<k*3awop201GrKN0pl z52Xq>EaUG@KDg2XFo*hLOAce`y(N6U`!EL-de|HKu|m%!L_%Q_>{@jf&yItw58&4N z(;OmPUO0n+H$&;$Fo!(~-Rlj_Qy*1L<C`l&Q&I%HAH$u@2x{id;L^iBjA(suXNF+T z-$?FM$0|#tsCuPBcRh(~M;s@^{rMs$5Lf#BkTC};^q7z2uyZQ#)y)#Tf4-Qi9$$bn zcQuFR&*FG&FfM&GY>$Lu&Deoj3ew4%EZn+Lbk{QHI_zikRHdbo7dVqomxkf`FcF6? z7Uu`cVBd34nuaBN-Q?hwG%2zcE@HILg!9G~4n7t~Vbnv^Bt_Hnb^>_;zF4%;|4vJL z>f(vv##dx@`;I{9JqANH^fVsltF2maUZ-q{kRLSDp^(#-O^-s(a-8~D@&kN4@8Z4R zR_mpxw{ju$?T3MrV>r$hTvrSDe!ZMlK$NP%vSkI%oe65+11Cm3se4IGbUp<)v+v^l z)pUFm!?!PsR#ZH2`{tD#jF^pj)=Y@ju2pyIYrfE>0eiZt9)3;b_XG1Vt&`SqBWO^E z=|QzJnOt~L3_Yhpa5vAUuTr>PEHu6$TuhNN)!=ckcG9RP#uvnKP9v?VCe@-Ejp$UP bWSaR0401`peNH#x00000NkvXXu0mjfUU||e literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/maximized_focus_inactive.png b/dot_config/awesome/btheme/titlebar/maximized_focus_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..8288dffbf28a51ad9f0a384e6cb755b05f316841 GIT binary patch literal 720 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2SkfJR9T^zbpD<_bdI{un7I;J! z18EO1b~~AE2V^iMdAqwX{BQ3+v!8*1@vf(fV~EE2*2@R8ClxXr`*?r;hku;A{|LBE zJDs-KsHaKHB$MU#f^L@0I$WK1y7>043tjw7TU&b8k9`&^4A{ixaXqnJb9;^XnvDq) zO*$r3R7$hT?w5V_Y1z5wJL~-TZJfTGd3dDYvr4keQg$Bg_A{45B9bR}zAf~y%urpq z`JB61M^5{9ZT2;mul6iIXr<3#9s6>E(3W|hg=goRtSD|<aI2MVO2gD+k9hNc9?_Dj zp6%S#{bO<6*Zl7hqIDmps)_NMG@V;;-j%&4a9M;xyWgbWA{rMHT5TNDx6giObga^4 zs?=(mw0XPF1ShnzGWDJJEte2}F-0SI=?UFDfrm!?JKFDm+?Bb%uuENMVeq1cV>*X> zjE?g#`|Y1yRU`K~zH_qjSwW>U6P7hBza3*_d`zgjMe-qEW|oa>*|G4cwa+Z96#FKt zo;EV=Iagt|&`N*iA@3F?Da%tKk#AZi&$KbSFR6G&MJjGx@S-zY%W5=hW{XAdQ9GL7 zxAF4CsUlX9d-}foZ5N)IzGcJBN8;HkTATb=nV%HSTJ98MaQ|bgn3-9mo?GjLtS*61 zF4DHkeKsFVH~Z-@@$)nRCy%S$J!Ll@u8DdkdfMg*SE2Gc4#k$9vL#MFR)*SX$BZ_* ztXY4(^gn}{Mbt4{-c=UBXjd(9jVMV;EJ?LWE=mPb3`PcqM!E(jx&}reh89-F7FMPv z+6D$z1_r0g8^TdE<mRVjrd5J880rF%k#UHjiIo9Rg8@WC=%1S}fEpx0HU#IVm6RtI mr7}3C<R_&nc;+Uirv{}arc@T5Otk?jV(@hJb6Mw<&;$UzIw8sc literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/maximized_normal_active.png b/dot_config/awesome/btheme/titlebar/maximized_normal_active.png new file mode 100644 index 0000000000000000000000000000000000000000..7db7d50fac9b50c97dc6d9019080206730dc60da GIT binary patch literal 1365 zcmY*X4Nz2N6g_YMfW-xDS1~j+Y(Y~7VFg3PKw%L>&;=w6asAn+p$H-=LO^b`3^OSv zq9P3FMi>qu8cEWCW1zGQMv}s|iS8^4i2T^D%8H|3kA-Y}bKX7o=iK}5`{v7A8y+Iy zJMjSsLRSUJ7@j`<TC*8zN+_`bSdDALqJo+52GBu4%Z1Jg9Y7;+6}as{Jx=sB|DYUe zF7L3x1>h2(bK#Aa>@wHnn(I%P>k68<r~oP%@e*faX^OEb_i1IeDJ!@dC<02Eu}R5~ z9z8Y~`n6j9NTq7DB(cenQwHP%-vDhNx($_Q_m(T~Rpx6nw+2enx&x;b04IPP3sit6 zDY>`zQCF9~we@yemAbC(dULSLAs`RP0MvZy7dO%0L9=vg=4qoPS}}%JO&O7iMq+2x z)ipO17v#v3GbmOzkj#kfStQPhBrhULDLJ`qY}0I$KWAi_)xa`awYs)IwkCyQr2;fi zJe5OaQ^|S}*)oTuEF$Y1UV6jiNohFHx^RY8+Z~8a*iNw$fQ`U0krjz|CNYjA!j3Fw zo4u%NHZEABe<`O&!rDZ!<Uq6qQ9zY5k9=hN)Sp+#L75F6d%^6_)~sL5l-2;bLLP~k zZVI)_<WgVTQYJq(S;ivD5X~-GIB?kq3NBPao-yj}Pq|dOfNcul6R8!U#jSCEOndEO z)cdn^c_AuKk7x?}>^Y`L(StyNG0eg8Bc81h^J_fO7H>1wQ)=wKw8P#m-rBm*ncuZi z#OPbS_>CS@&Uv6Qlp=;CGE~@gF8#=IFJf#@wZnR9e8X060dq3O5Wz%P;SNKNHR(~1 z{!C)5F<p*3>u!<xPBn&$m?hQkgEY?|_aaDdZqvuM-!4F-k8lT%#f&PRhe{ui4l&XB z5nTvr@wmC2Q#yaV{iG|pve@QoR!<JvX`K52MQ-CLcn`<KlPDB}!L>7~nam9yNR@?0 z!abIzX<is(7>cyee=PqmrX{bvSe~n7Qbo&!0TcQO`)2rN^rluW6i$3_yiwx&dWd9l zkMXR#{B@fCUqL%fX5~`Gkqaj(QUT*zCc4t}93E3)o=8`Tg#&o<$S_}bL0XG-A3(*0 z1_ef?=@h>y=HA%@=*xzEB;DQK{=)6LhxLBlo)sBkquP>TZEe%y{aa26ihVcseDbqn zc3(-~19s_|)8*=lcOy0|P3K8n>5GcZimiS6`-ZG~kF<DWqoGIdn08UQ;#U{-7Q<Ud zW#tRp=PqzNfBO6KDmDMmsig;16`ea1-`VJ&$=)HjH>1JZ$J6`EqANev)Lv9|Uhn+f zd05|ne~`8Jv%RBVbpC03FzCPw^VoAM4v(7~Fw<$e^T7bAv?2fSbBCFZ_K7Q80%a+y z6E>tvds`L;xV(rA-yNS7xOv?k8_n_Kg)yI3SB)8`#UIMLb4ph~rn+9yd%W|~vzFoh z!GTxL8qU_8pPlD4=b8SGMfA4R!4`A#{aa7k23NM<*t+NBSJ%E%JZUeCHYk63Dp<IC z@6MU0_h-Fy9Ui{>s_cptv7-W(=&74G|Is}B>-jY?(vEUtx|Wcn5fo+Qi}&3<eD#Qu Pxm^ei4iBncAy@tj&CoC} literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/maximized_normal_inactive.png b/dot_config/awesome/btheme/titlebar/maximized_normal_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..ddaf02d31200a0e9b776a20d24203a637779d8eb GIT binary patch literal 722 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2SkfJR9T^xhD-w@*t_AWr3p^r= zfwTu0yPeFo12UMByxm<G{<rs^+0Vehc;C~-F+}5h>*e#_lM5M+e|-OPXXUMjr{#>E zEpgA)Tbj-%cW~RWZ9#HO)g_8zH7mdQ&AIFqzAeY_VA9_vF8zCK{}?S@emPE&ZK;!K zvbu4wsqBPv$qW4#0n?Y~zWcm$pP&2>j*BMD2Tw%IVG*3=;Qe|#d*uObJE8m1-!l`{ zU0Z$cZ8~}&?#G5StLG~|OcKx8<m6$xq<xFrb36N$pIV=XSop2K*}%4?fmwRZ=7ZMr zCM>MhS+Ucj{bJ(3+~vjX@;RU9mCh?{Y+iNx@gnv`iESs1PTOeeO@6NCAF0~CkjFf? zJ4)x{45REjO5SarpVmxT7Q1!#%YQ3e8<kY2X-;75GdLxaS##?7vfqouwnr{;n8>PU z=s2TJ&BA+iR%!71<JteUJwN$ec9zdvcJg7a$@DEwI+GSpj$5|FW2S0KZH-s<X6HKx z{LMGVJd{gaclEgP!OK~#iX}}t21i4^bc}=f`J*lOeeTu!<1)h~eU6f9(AFO<b@SH0 z2}+!DpXI_-pLq)p$n2Ul@BfBe+oX1_-G3gLmIZC|2sZ5BKaI;UV}Igo*;OGk6Hf>@ z&3e2=xz^NV<=iLC^M9NXyKec6L$SrAbV*=(`;N-#rgD?gTU<;QastI(1u6EenjyS7 zIZQ_)JG1Pr{W_I>>E<TRCxH>KTH+c}l9E`GYL#4+3Zxi}3=EBQ4NP<mj6w`8tc)$K zj7+o*46F<c^a>soplHa=PsvQH#H}G-H|h*fgCxj?;QX|b^2DN42FH~Aq*MjZ+{E<M Ypwz^a%EFVWHb6xTp00i_>zopr03QJ+&;S4c literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/ontop_focus_active.png b/dot_config/awesome/btheme/titlebar/ontop_focus_active.png new file mode 100644 index 0000000000000000000000000000000000000000..0ba86250ba92c03e9ddf46d8b86c461434e88605 GIT binary patch literal 715 zcmV;+0yO=JP)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX0007#Nkl<Zc-pO% zUr1A77{(v*qQo1)D+y%XdQq#3#LAlBGNV5SNyR_WijqQ;Nz>2_mJme+i;%#J5(~O) zh!A4v5)~PRgHUkdm?$F3*kNPH#@Km!b;zP{JK<jV!QngS{CIi3@4N?kEBXk7kxmRE zo3-7Ag6&Q)+yScXD9EPR9(!NN?SVoD+hEU{IAVjJ%k|Wj>bZ3f{%lE=NFPWZ7pfTO z0@v?AIj}hV5U#{T8OhvTqN8T6-Gu9)QbV{KWLzPMBr%1nEug;%hKvHffPv3o(w;(z z_rf0ShFy-9E7Sph^kXr}{FInS80asS$l>>1hil;)?7uF<?x}|I^8!rnN*MN}<a1#t zpV|juq=ed7DHD@sa@j`4+xDa>qCJey+Zg&{W?-n48*fXv)SgdoYaVA!;B+|%ky`i) z<cdhN8ZuFoB%UKc2RX^-Lq{2L7SUY=PL;y~NJ#`1iGZ9gAOrY6HihL}2K&L8^U`fn znyOe2Eb<|!+PKJl(1%xWA7=0kI9maA`W!6#ompeZ3N<l&i1Z*mZecu+L5a~V(iszs zNLRrJFb3|6{1eE@G>n1a9cd+0>DCB6wb_Efr~~9k8iv6w8z@r!6K~@#Jc)jgpVJfR z-Q6&cZt?nUkOP0<5MB!J{#utPrp|(Tr6!qR<m=>%d;)5n;A%6t(jeE5ch{5m`@lIf z_`M9KjA9uuR<#vmuV4j(x4=aOl+V^NR}F{fBDmfNvL}i65;%Se){Nqn8*oM>ikJv} zb>M;m&-~R?M{){GJGuU-0K-k-+7<BINjNi#{mt;NHGoUCP#0_V?_}~ctP`bB-Dkj2 xqmJS4YZPf6oZi~Z|2B!hFm?jYugCt~z~51yZvKQ6DI)*?002ovPDHLkV1k|)Qt|)* literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/ontop_focus_inactive.png b/dot_config/awesome/btheme/titlebar/ontop_focus_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..b655c46df9a93eb2372e0391fcf2eef9c02c13a2 GIT binary patch literal 657 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2SkfJR9T^zbpD<_bdI{un7I;J! z18EO1b~~AE2V^iMdAqwX{BQ3+v!8*1ah|7(V~EE2-pgmbqyr@y9=;da)3UQA=1`22 zm#)UNCo|d>MC7jNvhVQo4fM=ib}Hger?9v8f%`gJnwFNXSQ^_Ixw2a+c$wf<u42x7 zaZ$sWn$Pyk-dtf(V0TWCGcuoRXVaDKXWC@e&&XN9FRd*y)8N&i^>>B)PVV@6;f2og zKZ#uzU+k?ob@TY)<o?9xcB^K_JbGAoP=h&&;mKCkTD>gE%WmgR?vnm<?C|5B@-I8j z&(&LeIHP~rmnCXSm12?UQ~fP!o~vK4Fpn)h!k4Wx`627tBNJRxi%*G)YW?9_dq^{S zNr$H3%wVy2%b))4GD(a71qx1-O#Kya!Sk{q|B2_1!qW0x6W8oN+du2u&oefh@vd2E zMuL?u*KZ8Js>iMJ*F`1eSTgJE{?OdXs)GOi^?a%}%bw*p)%hcbYnMo5S|`7G^=yg6 zkn;)2pQmNEy*Pg8SlT=h-6{tD<;Q2LwmZ(^+k7@BS%ABHxye%IiWMeqZFcjfT9*n= zT(a(zzr@1X?n@cuO4wg~+`Zbba!%g2$2L55&2?4YwvF}ImzYkIyA$_O|7TT0yPKQ0 z3ozbPOI#yLQW8s2t&)pUffR$0fuWJEfr+kxQHY_1m9d4Dsfo6Mft7*5>GFnf6b-rg zDVb@NAPt7PKxAYbVrXJz0MuXr(GdFQ<_n+(NstY}`DrEPiAAXljw$&`sS2LCiRr09 Ysfj6-g(p*OfQlGAUHx3vIVCg!0PqtB+yDRo literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/ontop_normal_active.png b/dot_config/awesome/btheme/titlebar/ontop_normal_active.png new file mode 100644 index 0000000000000000000000000000000000000000..cf4cda5a817d124028de90ba4cef2780585f346e GIT binary patch literal 1091 zcmYLH3rv$&6#i-ls96UDtgaF0)OLs#rgdt02sE^a6vik+x``{q{U{3|?7`HyEoy>p zJTiz&l@fu;X4o2s0Wug<ATW^xHt5FWRaU5O1XI$aVQIE@Xa5Dao#dYLo$vhL{m(u3 zew3A&D%vR72tbr}I3=5pVz$-`dG9W6*Z{1H$kOF#Sb7*vEnKN^X|bfnqeO;R-V(Y> zgpLF_HK3s=-(ZwY#jsNkqClc>dnzXOV<`pRhD}6pUkS7BVd>HlkVnQdv?3cnfRSjB z0h9}0Har<{A7TGmRKtBbfJi{(Z!ZcMio!r7?(9JKHgrhQ77okSRaG9ST;O|K;Hwt- zOrhSUFdEX3CxP7Qo*vEOr7(MW=;Rxs!9>A8yrA`2v}^(Kl6=sphJ14J`jLlk2DG@| zdD+hrjvHH^v_UOGvV&&$qrp*xFIKfH>FnS>vyg^C10ajQQHWLv+m=80Vlupy0_xy- zkXhi!heg7Kjzh4=!g~hP1TtZX=eIJ|%mKIyK-Hj1*fflp+z)RN=zTadm~dhrs074+ za}0C}H#RedA2J;WWx}V$cnn5&!>0r3(H@4zP2eZ|C?1pnN`^y;ei@rsyA&M}m{5Sy zF(8FG1fwx<?!$@_!%?^+L(g{B(k%&=qG8>RtHBtFfps?qccNd8CNUa9VG-j>5QY^P z<nLl9+r$)v+Ca>ze!sv!k<NFrGxbPH^5-~zCC4cZ9A}Vnyh(Mu(}@`5L?Ve)snqc` zzN%9yrIIzC<^P%dfAlYu%Z;m~Q6BOHgscH$ND?a~>3PQ%Z<4jZkYW|8R4gd8ywgiq zRcqjk3Wbp~a9V$nmTMJruLFYcw3OtW)6*rRujmJ|f-2^}w|zd@Z?l~mPx`ngPO%&< zJ6ZN%VfmTFPeyh$yijtzvb228>{nAC>lz#T+4|dX?6+tCjGyWoyPwxtf3^PFYk6Ou z*!AZ5zI(ad(^GNMhl>xZE>?bJ?zwc+^i81p?gxJh&L{Uj*NlSs;M$kR_uMYKEN+yB z%H*<}Eow>a_2jyRk;KBiyW*bTERE@Hay5RoP-orS^y$%@+=7W0JKtRy`KjWbd_(&5 ztaaMo@<+`N(c1T3DvdDugcqxt=Y#E4HP!9%6MffOB8!X9Rva%Bw{@RU-EQmZ_)dNQ z=!0L%<|b#S=ca5ki3f8cYii04sS@IPyPoQ*%l~zDZvGs(JcGx6jQP6sVDE?L);)gw bSHQ{Mr<-4$HyQ3O^H+^DO=ik1wei9~#Wlz5 literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/ontop_normal_inactive.png b/dot_config/awesome/btheme/titlebar/ontop_normal_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..bd323f0889cdc34d817a0cbb8d177d759367c7ef GIT binary patch literal 655 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2SkfJR9T^xhD-w@*t_AWr3p^r= zfwTu0yPeFo12UMByxm<G{<rs^+0VehILFh)F+}5h@8$j8(uooWKBgD#*1YXIb5p9- zN|!bB4Ci$%7hS(deNn#ae&3a0kNJC&K77#Va1&uK%@p<G)V0{L<D0k$m)Ncn-Df%f z`uTXBiqxO|)O-KoVe9v&wXRBOH)BkeZaiuFbjEYn;N%-O(%aWu6o@O>|G8IkyP(wh z&(pa+`y7=&vi=P}3(KD5Lv<ZlmP|}cc{7rHxEcL#UowB3eXMI^#`&G?p*7vdgUfHo znf&VAw_|C#iQvZ%7LOW=y<$Ezdx^5&`7|^5o5q3}OD6Lj@%|ALywGQ+{luw1&vM=^ zQE^Ez-gu04|GSs!@gEHS2MbQT>f$%`htx%NJ<SPW<smL9ie}626@*?_RW*ANl(y!b z-=>X`rALm>x)-dl_|nD>>v?9|EmyzP)%SGYZ~yd7LCkfoWx}26nn6oWWN*8<c3thQ z&PBg??Chl17@gCotf}Gpa$#Bf2N$E$R^C3JTmFUQubN)?>4~JmRG!4^vz}Ti^H^=u zQ<`+qcX@ZZ#g>S~H@hsdR-{coeljfelg1xjx570KFYNcu)D8Q5SMWdMWPvBEws2n# z0mhnYiEBhjN@7W>RdP`(kYX@0Ff`INFwr$I3Nf^>GPblbGSN0Lure^vD|l3Zq9Hdw zB{QuOw}yD#s53wfk{}y`^V3So6N^$A98>a>QWZRN6Vp?JQWH}u3s0un02MKKy85}S Ib4q9e0GAmG^8f$< literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/sticky_focus_active.png b/dot_config/awesome/btheme/titlebar/sticky_focus_active.png new file mode 100644 index 0000000000000000000000000000000000000000..1106399d777ad671051f94a7f15f0e1addfacb78 GIT binary patch literal 833 zcmV-H1HSx;P)<h;3K|Lk000e1NJLTq000&M000&U1^@s6#I$TX00004b3#c}2nYxW zd<bNS0000PbVXQnQ*UN;cVTj60C#tHE@^ISb7Ns}WiD@WXPfRk8UO$S(@8`@R5;6} zl+TY8MHI(B)l=Qm)ANJfof&3OlGRA?h9N=kdfKzmlmCDuTqNP(!Fb>f@kD}&@elCK z!KfEO!9>j-jI!Bv$U<28F<F?!+3u?9dK{)1W>;v)`0CQ>uJ@_$d*AA(M1<!>^mW)? zd1K{LGiuak_oZ2Czx(am4@RGi2hYpZl*C(yj-5Mq;`}>SECz#}SvW2LD|3NE73nNb zu~>{0U^M|ZqDE<M=|}H#N%O4GxL30m&;J0!6UF<{<R#|32u$uJ%TugaEDnRgD1*b| z%em!X$su*w9@7j4t1S3(uzLNg<ufObo&2<>6XnE`ix*Fh6DO6R5*=;7*|7VYp$uRC zaq<4faD8V&QJ@3@z(Zv#_(H$kJ@L`Ihu>SY-ePlu^%mz{QNAU!>7LtQFkIWY#(KQo zk!9&f2%<fNAfX^ys9p}=*GdAF<tf%%Om1=B7I2Fdx5u!5%oaZkzh`xK6{S^Cvj7TF zf}(imL0e~h>QbC{7(b)9fEzLVHTsh)!^^CV*N{*Os7zWgabp6ffD7nxHuhPbJq3Bo zt{Zb>G+^W52EX6^m3#Icq6HNyCZe7|C&2x1Jm_C;U43-19<fkeU_0IB#%RFSzqcnF zW?e>2%bo@O2d)&#E3`OqS8o5v3&R!gXQ-SWSX84@oMx9(-utsCe9@k#p1_e{DLDQt zc;!}Q)q7c!z(b&rV0vDl9;nY$+1PBKZCwZss*k5*G>AA*JwUBi=h4m4H`h-OKAh{% z3vxAmZbmJ-afiitiF(*zGuoVgx={?Udf1?!^ywviI<*e1sKtYDyHYBOmxy-Urd#XM zOZvQ0f0gCtYs6u#GQVP=5jJT>Ef%VabZZ^@^+WWM9<h#t`4tO!HHe6HOcEwEqZUi? z61}94b;i%Hc$d$2Hg}HRd3dL36RU^GP!E#7wRP70eEp|WWvPz=>?EWhVek;S00000 LNkvXXu0mjfSX_`J literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/sticky_focus_inactive.png b/dot_config/awesome/btheme/titlebar/sticky_focus_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..ef2b78e18409b593e1dfe305603084d45cc5bde0 GIT binary patch literal 590 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2n3BBRT^Rni_n+Ah<Z%{wL>2>S z4={E+nQh0wz?kjn;uxZFzID=meU?Ch<M#RAQ{PX!y<6C7Zikzy(0`__0Ud6di$XPA z7EWIglGPiv^jff@P{^H0KYZW(UV7v4H}_5E!Dr7r_uXgwxkWi!`|#!CUk%RwU2(bf z@a&w>XA#HBrl;|IJO6#=>W12t8~!}}>a<lLYWc1O2PaLBXbZFzjJUphv)baF@z0;c zw`rdg$d=wbyV1bnxxqPpH)-1+PhS3$bx<hS^Y-M%rzaJg-OAg&{;A&iXli8g=<&nH z4-2jJ1-Y7!mDsZ0-|>WzUqG@m=r+sjM&9o+pF7&!FFx7s>*(v`(=KiI;lt&|q7}|@ zb#n|3s2iTYxl?ntb5w1h*X<xThN#mici$$se%F26yHf67(X(}zj&gq3x80@gBlqvK zp$zjKogOW2KH9~-%->l_>Pp4>f2DjYE-rJOJmJRr7DlC6TQV;yykNi1DXFl?clLsU z=}s?tR2H~-xNxUxTd#h5uB9t3RcCh4%g<kHzKWOEtvehha_%EA{8dX_BT7;dOH!?p zi&B9UgOP!uk*<M>u7OdAp@o&Pg_Ws^wt<0_fx+qWhHw-Ox%nxXX_X)ihPpsxWE^5> zVr2l-U;xn&`sd~gpaw~h4Z-<oCFO}lsSM@i<$9TU*~Q6;1*v-ZMd`EO*+>BuF?hQA KxvX<aXaWFDZ}<WL literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/sticky_normal_active.png b/dot_config/awesome/btheme/titlebar/sticky_normal_active.png new file mode 100644 index 0000000000000000000000000000000000000000..31c797293dfd5a3948d140fc1d3621621c04431c GIT binary patch literal 1262 zcmZ8fYfO`882#S&>sVDTEd^u}#R01Wxy&uYDQ2J+r9iQ3%S91dP(KlAZAz)Nwa^r_ z5L&^sTpAEMY+5zY2*si>(XFJ8R^#xpI*G~BxoSX%M6;Qgtotl8i+ggObDrnC=g0fw zX<-)Z3|YQvIf5V|^c)%s*QmEmL~(vu-Mb7ypo*E#$@csGh!}|<h)cP!KKXnSwLby! zK)9aleBqp2n6xk0tqWGmg2lLCq#6<;J0d3L$4BRFgL4;5b7%YJd%Na4(gso^bd-y} zi|2jk2Yg0@&!F?^G(JtLF`3d%F?&t@-o9>cSG%{Z#oOHIRi*Z>r)bE%j|?5Ny0%%Z zdiG?)qk7pRX>w0ecr*F5r@htF(&TBZ_b4QuI^lyO$=ylBTH@Y|yD|HLicxO4t!%Gt zckysx>1avwj9N9Ll+VcOW@-g9{Hi+`NgoR304e~i2T%!69!S!zvpyWMc+AE-eTLgz z`kSY<u2!|HsbN}iY+6$567pTum}`I9SPJY1zy!b`0K))W0pL0UoCp+yBu%2}{y^WI zo{n4kc9*v0hPr7=S?`cb9AcqEQ0=H<jx(bBBcTq!ZUD>x*Z>p(syab4-Ez{|sC3lJ zu1o8#iUbqY+bx+9S~9AHs2V^GfCd1CAhv$B;(M8BLQr7IP0=L<OO_FY5Uqo#9HJ@+ zwEzkLS_Ts|A8+VLjc;8Wb}X1s196}d2!;Tx0cZ(?dH{_8tpw;Uh!#P#7~<wz6hlI3 zV8FQyqFjjb0>EQz7$hK&RbeZ*L;@2MYlA2X(i(LPRU03Ukq8BlC<=;f2>(PAm)`yP zc4KBtO*B~^ihtlML;5aD{(c*8t!NFN`KU4KGkprfOg}VskSd8MFyIO?F}68oQ%`!S zwYb5dFx@{JFN!75U=WKystk=0L?_Cqo7CxFsx}aILULT;G=7vni&+J1gvjJ@SRq+h zpmMh@Y2N>J>%aaxP2=)-TrRg_$u8fGS2BBPd7l}a_je3qyq9CJ{(EOI-p!1B49h2F z(`Ymn8z&kqo3sVPXn14TjsRmj1KFGa(=!5s<q&h3->^CCkUzh54<QK1rqi}^qz@0= zzFX?3h;}ZH?XmM`?VX3OT(Upgv%>98dD(^UxBQkee#X=1a!G^r$zz}?Dfxx@X+*|{ zuVdD&+!&S?dkvXVZTlf^pwb&o%FCs@e{@Z+&l)^u8XUM_wt``Er~Q<*ZxT$M+~K5} zF<;b8{-Fc>eTNS&{QC6qGw+=5)DF2+c1(uGax?u%K94EPsVb2Y(!*DtSVy~|d~o@7 z)0FA4{@&;-O@3umXOr7W5oHMwYFjUtS;E=N%1w;#^vgatXF5|<=()$5pNm<Q$Pgb1 zN*UrmUwwu+G@fcc`j@i2iG25s>kS>{39F?0#bT-EkKZUd_T4XRwaS?-jFsnF^M2}b z6GukI?UP`UI&$f%ZDP#d78creYF9zU*BRF?e;3Eye!NzG)c@l3tKdcV{Op?>Pdpp< a{f!*otl0c}(NQmcG6+4pfM(ssQ~d)j<@)ac literal 0 HcmV?d00001 diff --git a/dot_config/awesome/btheme/titlebar/sticky_normal_inactive.png b/dot_config/awesome/btheme/titlebar/sticky_normal_inactive.png new file mode 100644 index 0000000000000000000000000000000000000000..ea6c27569d8f8ae7c16a0ca6b4ae25d25b15051a GIT binary patch literal 603 zcmeAS@N?(olHy`uVBq!ia0vp^Vj#@H0wnYHF4+L2I14-?i-EKU7`vU!wgWPllDyqr z82-2SpV`mAz*ynw;uxZFzIBqfw@jdbn}6y3c`q{`Sv+7C-NdoO(~L`r<Koi(`;X;M z`-!KCpHbsv+2qCK7W>2LF^}D{<-hMmN0wOMQqFuGG&{Pzf4$ryo8GTK-iDnPsbBej z*Y}^#GOvb2JPX^lTvx39aN_kFD;t{?jwTjX$mp&Nb5A(G;KGr|E294Bzwvro6~VqV zxxe1?=EP~USmSta#@vYLIl5?-#i0bdstpfr`sx=8usHtweR$8j`uk^2o;a=f<>S&% z@+$K>c@+iO4u3ayOLg#TQ<Xn={qj@wSSN>5EJq{WK0dMGaQPWV+cN^SbEbHjDj!dJ zS$s&-ori-{@}~R3nkn@P5Bs$9R&qNU`ti>f{lgKKvToCb&S@9h#WMPRr-eItyg&7w zX~_na@9|4^EnRx`V>#=sB}acAT;9KRJL3ff#f6^cD`K}Z39iq$toAS`Mdje<ebGG^ z6PqHXzJBKsG~|?BHbbS#F|t|FuJ>xx(>J$|R@~Y#ZSsTd5r4PFul>h-D`dsu+|y6& zfia?5;u=wsl30>zm0Xkxq!^4042^UROmq#5LJTdej4iE<OtcLQtPBkF3LX`pXvob^ z$xN%nts!1F>I_hWB*=!~{Irtt#G+J&^73-M%)IR4<ivthz5Jr|+3#$mfQlGAUHx3v IIVCg!059zLkN^Mx literal 0 HcmV?d00001 diff --git a/dot_config/awesome/rc.lua b/dot_config/awesome/rc.lua new file mode 100644 index 0000000..2aa8a69 --- /dev/null +++ b/dot_config/awesome/rc.lua @@ -0,0 +1,497 @@ +-- Standard awesome library +require("awful") +require("awful.autofocus") +require("awful.rules") +require("awful.util") +-- Theme handling library +require("beautiful") +-- Notification library +require("naughty") +vicious = require("vicious") + +-- {{{ Error handling +-- Check if awesome encountered an error during startup and fell back to +-- another config (This code will only ever execute for the fallback config) +if awesome.startup_errors then + naughty.notify({ preset = naughty.config.presets.critical, + title = "Oops, there were errors during startup!", + text = awesome.startup_errors }) +end + +-- Handle runtime errors after startup +do + local in_error = false + awesome.add_signal("debug::error", function (err) + -- Make sure we don't go into an endless error loop + if in_error then return end + in_error = true + + naughty.notify({ preset = naughty.config.presets.critical, + title = "Oops, an error happened!", + text = err }) + in_error = false + end) +end +-- }}} +-- +-- Paths +-- +home = os.getenv("HOME") +confdir = home .. "/.config/awesome" + +-- +-- {{{ Variable definitions +-- Themes define colours, icons, and wallpapers +--beautiful.init("/usr/share/awesome/themes/default/theme.lua") +beautiful.init(confdir .. "/btheme/theme.lua") +--beautiful.border_width = "2" +--beautiful.border_normal = "#222222" +--beautiful.border_focus = "#00bfff" +--beautiful.font = "sans 12" +naughty.config.default_preset.font = "Inconsolata 22" + +-- This is used later as the default terminal and editor to run. +terminal = home .. "/bin/run_terminal" +editor = os.getenv("EDITOR") or "vim" +editor_cmd = terminal .. " -e " .. editor +browser = home .. "/bin/run_browser" + +-- Default modkey. +-- Usually, Mod4 is the key with a logo between Control and Alt. +-- If you do not like this or do not have such a key, +-- I suggest you to remap Mod4 to another key using xmodmap or other tools. +-- However, you can use another modifier like Mod1, but it may interact with others. +modkey = "Mod1" + +bar_height = 24 + +-- Table of layouts to cover with awful.layout.inc, order matters. +layouts = +{ + awful.layout.suit.tile, + awful.layout.suit.tile.left, + awful.layout.suit.tile.bottom, + awful.layout.suit.tile.top, + awful.layout.suit.floating, + --awful.layout.suit.fair, + --awful.layout.suit.fair.horizontal, + awful.layout.suit.spiral, + --awful.layout.suit.spiral.dwindle, + --awful.layout.suit.max, + awful.layout.suit.max.fullscreen, + awful.layout.suit.magnifier +} +-- }}} + +-- {{{ Tags +-- Define a tag table which hold all screen tags. +tags = {} +for s = 1, screen.count() do + -- Each screen has its own tag table. + tags[s] = awful.tag({ 1, 2, 3, 4, 5, 6, 7, 8, 9 }, s, layouts[1]) +end +-- }}} + +spacer = widget({type = "textbox"}) +separator = widget({type = "textbox"}) +spacer.text = " " +separator.text = "|" +-- Execute command and return its output. You probably won't only execute commands with one +-- line of output +function execute_command(command) + local fh = io.popen(command) + local str = "" + for i in fh:lines() do + str = str .. i + end + io.close(fh) + return str +end + +pom = widget({type = "textbox"}) +pom.text = " " .. execute_command("~/src/tpom/tpom") .. " " +pomtimer = timer({ timeout = 1}) +pomtimer:add_signal("timeout", function() + pom.text = " " .. execute_command("~/src/tpom/tpom") .. " " +end) +pomtimer:start() + +-- {{{ Menu +-- Create a laucher widget and a main menu +myawesomemenu = { + { "manual", terminal .. " -e man awesome" }, + { "edit config", editor_cmd .. " " .. awesome.conffile }, + { "restart", awesome.restart }, + { "quit", awesome.quit } +} + +mymainmenu = awful.menu({ items = { { "awesome", myawesomemenu, beautiful.awesome_icon }, + { "open terminal", terminal } + } + }) + +mylauncher = awful.widget.launcher({ image = image(beautiful.awesome_icon), + menu = mymainmenu }) +-- }}} + +-- {{{ Wibox +-- Create a textclock widget +mytextclock = awful.widget.textclock({ align = "right" }) + +-- Create a systray +mysystray = widget({ type = "systray" }) + +-- CPU usage widget +cpuwidget = awful.widget.graph() +cpuwidget:set_width(50) +cpuwidget:set_height(bar_height) +cpuwidget:set_background_color("#494B4F") +cpuwidget:set_color("#FF5656") +cpuwidget:set_gradient_colors({ "#FF5656", "#88A175", "#AECF96" }) + +cpuwidget_t = awful.tooltip({ objects = { cpuwidget.widget },}) + +-- {{{ Battery state +-- Initialize widget +batwidget = awful.widget.progressbar() +batwidget:set_width(8) +batwidget:set_height(bar_height) +batwidget:set_vertical(true) +batwidget:set_background_color("#494B4F") +batwidget:set_border_color(nil) +batwidget:set_color("#FF5656") +batwidget:set_gradient_colors({'#FF5656' , '#88A175', '#AECF96' }) + +batwidget_t = awful.tooltip({ objects = { batwidget.widget },}) + +-- {{{ Battery state +-- Initialize widget +vicious.register(batwidget, vicious.widgets.bat, +function (widget, args) + if args[1] == '-' then + batwidget_t:set_text("Battery: " .. args[2] .. "%") + elseif args[1] == "+" then + batwidget_t:set_text("Charging: " .. args[2] .. "%") + else + batwidget_t:set_text("Unknown ".. args[1] .. " " .. args[2] .. "%") + end + return args[2] +end , 120, "BAT0") + +-- Register CPU widget +vicious.register(cpuwidget, vicious.widgets.cpu, + function (widget, args) + cpuwidget_t:set_text("CPU Usage: " .. args[1] .. "%") + return args[1] + end) + +-- RAM usage widget +memwidget = awful.widget.progressbar() +memwidget:set_width(15) +memwidget:set_height(bar_height) +memwidget:set_vertical(true) +memwidget:set_background_color('#494B4F') +memwidget:set_color('#AECF96') +memwidget:set_gradient_colors({ '#AECF96', '#88A175', '#FF5656' }) + +-- RAM usage tooltip +memwidget_t = awful.tooltip({ objects = { memwidget.widget },}) + +vicious.cache(vicious.widgets.mem) +vicious.register(memwidget, vicious.widgets.mem, + function (widget, args) + memwidget_t:set_text(" RAM: " .. args[2] .. "MB / " .. args[3] .. "MB ") + return args[1] + end, 13) + --update every 13 seconds + +-- Create a wibox for each screen and add it +mywibox = {} +mypromptbox = {} +mylayoutbox = {} +mytaglist = {} +mytaglist.buttons = awful.util.table.join( + awful.button({ }, 1, awful.tag.viewonly), + awful.button({ modkey }, 1, awful.client.movetotag), + awful.button({ }, 3, awful.tag.viewtoggle), + awful.button({ modkey }, 3, awful.client.toggletag), + awful.button({ }, 4, awful.tag.viewnext), + awful.button({ }, 5, awful.tag.viewprev) + ) +mytasklist = {} +mytasklist.buttons = awful.util.table.join( + awful.button({ }, 1, function (c) + if c == client.focus then + c.minimized = true + else + if not c:isvisible() then + awful.tag.viewonly(c:tags()[1]) + end + -- This will also un-minimize + -- the client, if needed + client.focus = c + c:raise() + end + end), + awful.button({ }, 3, function () + if instance then + instance:hide() + instance = nil + else + instance = awful.menu.clients({ width=250 }) + end + end), + awful.button({ }, 4, function () + awful.client.focus.byidx(1) + if client.focus then client.focus:raise() end + end), + awful.button({ }, 5, function () + awful.client.focus.byidx(-1) + if client.focus then client.focus:raise() end + end)) + +for s = 1, screen.count() do + -- Create a promptbox for each screen + mypromptbox[s] = awful.widget.prompt({ layout = awful.widget.layout.horizontal.leftright }) + -- Create an imagebox widget which will contains an icon indicating which layout we're using. + -- We need one layoutbox per screen. + mylayoutbox[s] = awful.widget.layoutbox(s) + mylayoutbox[s]:buttons(awful.util.table.join( + awful.button({ }, 1, function () awful.layout.inc(layouts, 1) end), + awful.button({ }, 3, function () awful.layout.inc(layouts, -1) end), + awful.button({ }, 4, function () awful.layout.inc(layouts, 1) end), + awful.button({ }, 5, function () awful.layout.inc(layouts, -1) end))) + -- Create a taglist widget + mytaglist[s] = awful.widget.taglist(s, awful.widget.taglist.label.all, mytaglist.buttons) + + -- Create a tasklist widget + mytasklist[s] = awful.widget.tasklist(function(c) + return awful.widget.tasklist.label.currenttags(c, s) + end, mytasklist.buttons) + + -- Create the wibox + mywibox[s] = awful.wibox({ position = "top", height=""..bar_height, screen = s }) + -- Add widgets to the wibox - order matters + mywibox[s].widgets = { + { + mylauncher, + mytaglist[s], + mypromptbox[s], + layout = awful.widget.layout.horizontal.leftright + }, + mylayoutbox[s], + mytextclock, + s == 1 and mysystray or nil, + spacer, + separator, + spacer, + batwidget.widget, + spacer, + separator, + spacer, + cpuwidget.widget, + spacer, + separator, + spacer, + memwidget.widget, + spacer, + separator, + spacer, + pom, + mytasklist[s], + layout = awful.widget.layout.horizontal.rightleft + } +end +-- }}} + +-- {{{ Mouse bindings +root.buttons(awful.util.table.join( + awful.button({ }, 3, function () mymainmenu:toggle() end), + awful.button({ }, 4, awful.tag.viewnext), + awful.button({ }, 5, awful.tag.viewprev) +)) +-- }}} + +-- {{{ Key bindings +globalkeys = awful.util.table.join( + awful.key({ modkey }, "F12", function () awful.util.spawn("xscreensaver-command -lock") end), + awful.key({ modkey, "Control" }, "p", function () awful.util.spawn(home .. "/src/tpom/tpom start -m 15") end), + awful.key({ modkey, }, "Left", awful.tag.viewprev ), + awful.key({ modkey, }, "Right", awful.tag.viewnext ), + awful.key({ modkey, }, "Escape", awful.tag.history.restore), + + awful.key({ modkey, }, "j", + function () + awful.client.focus.byidx( 1) + if client.focus then client.focus:raise() end + end), + awful.key({ modkey, }, "k", + function () + awful.client.focus.byidx(-1) + if client.focus then client.focus:raise() end + end), + awful.key({ modkey, }, "w", function () mymainmenu:show({keygrabber=true}) end), + + -- Layout manipulation + awful.key({ modkey, "Shift" }, "j", function () awful.client.swap.byidx( 1) end), + awful.key({ modkey, "Shift" }, "k", function () awful.client.swap.byidx( -1) end), + awful.key({ modkey, "Control" }, "j", function () awful.screen.focus_relative( 1) end), + awful.key({ modkey, "Control" }, "k", function () awful.screen.focus_relative(-1) end), + awful.key({ modkey, }, "u", awful.client.urgent.jumpto), + awful.key({ modkey, }, "Tab", + function () + awful.client.focus.history.previous() + if client.focus then + client.focus:raise() + end + end), + + -- Standard program + awful.key({ modkey, "Shift" }, "Return", function () awful.util.spawn(terminal) end), + awful.key({ modkey, "Shift" }, ",", function () awful.util.spawn(browser) end), + awful.key({ modkey, "Control" }, "r", awesome.restart), + awful.key({ modkey, "Shift" }, "q", awesome.quit), + + awful.key({ modkey, }, "l", function () awful.tag.incmwfact( 0.05) end), + awful.key({ modkey, }, "h", function () awful.tag.incmwfact(-0.05) end), + awful.key({ modkey, "Shift" }, "h", function () awful.tag.incnmaster( 1) end), + awful.key({ modkey, "Shift" }, "l", function () awful.tag.incnmaster(-1) end), + awful.key({ modkey, "Control" }, "h", function () awful.tag.incncol( 1) end), + awful.key({ modkey, "Control" }, "l", function () awful.tag.incncol(-1) end), + awful.key({ modkey, }, "space", function () awful.layout.inc(layouts, 1) end), + awful.key({ modkey, "Shift" }, "space", function () awful.layout.inc(layouts, -1) end), + + awful.key({ modkey, "Control" }, "n", awful.client.restore), + + -- Prompt + awful.key({ modkey }, "r", function () mypromptbox[mouse.screen]:run() end), + + awful.key({ modkey, "Shift" }, "x", + function () + awful.prompt.run({ prompt = "Run Lua code: " }, + mypromptbox[mouse.screen].widget, + awful.util.eval, nil, + awful.util.getdir("cache") .. "/history_eval") + end) +) + +clientkeys = awful.util.table.join( + awful.key({ modkey, }, "f", function (c) c.fullscreen = not c.fullscreen end), + awful.key({ modkey, "Shift" }, "c", function (c) c:kill() end), + awful.key({ modkey, "Control" }, "space", awful.client.floating.toggle ), + awful.key({ modkey, }, "Return", function (c) c:swap(awful.client.getmaster()) end), + awful.key({ modkey, }, "o", awful.client.movetoscreen ), + awful.key({ modkey, "Shift" }, "r", function (c) c:redraw() end), + awful.key({ modkey, }, "t", function (c) c.ontop = not c.ontop end), + awful.key({ modkey, }, "n", + function (c) + -- The client currently has the input focus, so it cannot be + -- minimized, since minimized clients can't have the focus. + c.minimized = true + end), + awful.key({ modkey, }, "m", + function (c) + c.maximized_horizontal = not c.maximized_horizontal + c.maximized_vertical = not c.maximized_vertical + end) +) + +-- Compute the maximum number of digit we need, limited to 9 +keynumber = 0 +for s = 1, screen.count() do + keynumber = math.min(9, math.max(#tags[s], keynumber)); +end + +-- Bind all key numbers to tags. +-- Be careful: we use keycodes to make it works on any keyboard layout. +-- This should map on the top row of your keyboard, usually 1 to 9. +for i = 1, keynumber do + globalkeys = awful.util.table.join(globalkeys, + awful.key({ modkey }, "#" .. i + 9, + function () + local screen = mouse.screen + if tags[screen][i] then + awful.tag.viewonly(tags[screen][i]) + end + end), + awful.key({ modkey, "Control" }, "#" .. i + 9, + function () + local screen = mouse.screen + if tags[screen][i] then + awful.tag.viewtoggle(tags[screen][i]) + end + end), + awful.key({ modkey, "Shift" }, "#" .. i + 9, + function () + if client.focus and tags[client.focus.screen][i] then + awful.client.movetotag(tags[client.focus.screen][i]) + end + end), + awful.key({ modkey, "Control", "Shift" }, "#" .. i + 9, + function () + if client.focus and tags[client.focus.screen][i] then + awful.client.toggletag(tags[client.focus.screen][i]) + end + end)) +end + +clientbuttons = awful.util.table.join( + awful.button({ }, 1, function (c) client.focus = c; c:raise() end), + awful.button({ modkey }, 1, awful.mouse.client.move), + awful.button({ modkey }, 3, awful.mouse.client.resize)) + +-- Set keys +root.keys(globalkeys) +-- }}} + +-- {{{ Rules +awful.rules.rules = { + -- All clients will match this rule. + { rule = { }, + properties = { border_width = beautiful.border_width, + border_color = beautiful.border_normal, + focus = true, + keys = clientkeys, + buttons = clientbuttons } }, + { rule = { class = "MPlayer" }, + properties = { floating = true } }, + { rule = { class = "pinentry" }, + properties = { floating = true } }, + { rule = { class = "gimp" }, + properties = { floating = true } }, + -- Set Firefox to always map on tags number 2 of screen 1. + -- { rule = { class = "Firefox" }, + -- properties = { tag = tags[1][2] } }, +} +-- }}} + +-- {{{ Signals +-- Signal function to execute when a new client appears. +client.add_signal("manage", function (c, startup) + -- Add a titlebar + -- awful.titlebar.add(c, { modkey = modkey }) + + -- Enable sloppy focus + c:add_signal("mouse::enter", function(c) + if awful.layout.get(c.screen) ~= awful.layout.suit.magnifier + and awful.client.focus.filter(c) then + client.focus = c + end + end) + + if not startup then + -- Set the windows at the slave, + -- i.e. put it at the end of others instead of setting it master. + -- awful.client.setslave(c) + + -- Put windows in a smart way, only if they does not set an initial position. + if not c.size_hints.user_position and not c.size_hints.program_position then + awful.placement.no_overlap(c) + awful.placement.no_offscreen(c) + end + end +end) + +client.add_signal("focus", function(c) c.border_color = beautiful.border_focus end) +client.add_signal("unfocus", function(c) c.border_color = beautiful.border_normal end) +-- }}} diff --git a/dot_config/coc/extensions/package.json b/dot_config/coc/extensions/package.json new file mode 100644 index 0000000..007e69a --- /dev/null +++ b/dot_config/coc/extensions/package.json @@ -0,0 +1,11 @@ +{ + "dependencies": { + "coc-json": ">=1.3.4", + "coc-pyright": ">=1.1.129", + "coc-rust-analyzer": ">=0.32.0", + "coc-snippets": ">=2.4.1", + "coc-svelte": ">=0.2.2", + "coc-tsserver": ">=1.7.0", + "coc-ultisnips": ">=1.2.3" + } +} \ No newline at end of file diff --git a/dot_config/fish/.gitignore b/dot_config/fish/.gitignore new file mode 100644 index 0000000..44e4e55 --- /dev/null +++ b/dot_config/fish/.gitignore @@ -0,0 +1 @@ +work.fish diff --git a/dot_config/fish/completions/cargo.fish b/dot_config/fish/completions/cargo.fish new file mode 100644 index 0000000..3c1f8c5 --- /dev/null +++ b/dot_config/fish/completions/cargo.fish @@ -0,0 +1,802 @@ +# Tab completion for cargo (https://github.com/rust-lang/cargo). + +## --- WRITTEN MANUALLY --- +set -l __fish_cargo_subcommands (cargo --list 2>&1 | string replace -rf '^\s+([^\s]+)\s*(.*)' '$1\t$2' | string escape) + +complete -c cargo -f -c cargo -n __fish_use_subcommand -a "$__fish_cargo_subcommands" +complete -c cargo -x -c cargo -n '__fish_seen_subcommand_from help' -a "$__fish_cargo_subcommands" + +for x in bench b build rustc t test + complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l bench -a "(cargo bench --bench 2>&1 | string replace -rf '^\s+' '')" + complete -c cargo -n "__fish_seen_subcommand_from $x" -l lib -d 'Only this package\'s library' + complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l test -a "(cargo test --test 2>&1 | string replace -rf '^\s+' '')" +end + +for x in bench b build r run rustc t test + complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l bin -a "(cargo run --bin 2>&1 | string replace -rf '^\s+' '')" + complete -c cargo -x -n "__fish_seen_subcommand_from $x" -l example -a "(cargo run --example 2>&1 | string replace -rf '^\s+' '')" +end + +function __fish_cargo_packages + find . -name Cargo.toml | string replace -rf '.*/([^/]+)/?Cargo.toml' '$1' +end +complete -c cargo -n '__fish_seen_subcommand_from run test build debug check' -l package \ + -xa "(__fish_cargo_packages)" + +## --- AUTO-GENERATED WITH `cargo complete fish` --- +complete -c cargo -n __fish_use_subcommand -l explain -d 'Run `rustc --explain CODE`' +complete -c cargo -n __fish_use_subcommand -l color -d 'Coloring: auto, always, never' +complete -c cargo -n __fish_use_subcommand -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n __fish_use_subcommand -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n __fish_use_subcommand -s V -l version -d 'Print version info and exit' +complete -c cargo -n __fish_use_subcommand -l list -d 'List installed commands' +complete -c cargo -n __fish_use_subcommand -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n __fish_use_subcommand -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n __fish_use_subcommand -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n __fish_use_subcommand -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n __fish_use_subcommand -l offline -d 'Run without accessing the network' +complete -c cargo -n __fish_use_subcommand -s h -l help -d 'Prints help information' +complete -c cargo -n __fish_use_subcommand -f -a bench -d 'Execute all benchmarks of a local package' +complete -c cargo -n __fish_use_subcommand -f -a build -d 'Compile a local package and all of its dependencies' +complete -c cargo -n __fish_use_subcommand -f -a check -d 'Check a local package and all of its dependencies for errors' +complete -c cargo -n __fish_use_subcommand -f -a clean -d 'Remove artifacts that cargo has generated in the past' +complete -c cargo -n __fish_use_subcommand -f -a complete -d 'Generate completion file for a shell' +complete -c cargo -n __fish_use_subcommand -f -a describe-future-incompatibilities -d 'Reports any crates which will eventually stop compiling' +complete -c cargo -n __fish_use_subcommand -f -a doc -d 'Build a package\'s documentation' +complete -c cargo -n __fish_use_subcommand -f -a fetch -d 'Fetch dependencies of a package from the network' +complete -c cargo -n __fish_use_subcommand -f -a fix -d 'Automatically fix lint warnings reported by rustc' +complete -c cargo -n __fish_use_subcommand -f -a generate-lockfile -d 'Generate the lockfile for a package' +complete -c cargo -n __fish_use_subcommand -f -a git-checkout -d 'This subcommand has been removed' +complete -c cargo -n __fish_use_subcommand -f -a init -d 'Create a new cargo package in an existing directory' +complete -c cargo -n __fish_use_subcommand -f -a install -d 'Install a Rust binary. Default location is $HOME/.cargo/bin' +complete -c cargo -n __fish_use_subcommand -f -a locate-project -d 'Print a JSON representation of a Cargo.toml file\'s location' +complete -c cargo -n __fish_use_subcommand -f -a login -d 'Save an api token from the registry locally. If token is not specified, it will be read from stdin.' +complete -c cargo -n __fish_use_subcommand -f -a logout -d 'Remove an API token from the registry locally' +complete -c cargo -n __fish_use_subcommand -f -a metadata -d 'Output the resolved dependencies of a package, the concrete used versions including overrides, in machine-readable format' +complete -c cargo -n __fish_use_subcommand -f -a new -d 'Create a new cargo package at <path>' +complete -c cargo -n __fish_use_subcommand -f -a owner -d 'Manage the owners of a crate on the registry' +complete -c cargo -n __fish_use_subcommand -f -a package -d 'Assemble the local package into a distributable tarball' +complete -c cargo -n __fish_use_subcommand -f -a pkgid -d 'Print a fully qualified package specification' +complete -c cargo -n __fish_use_subcommand -f -a publish -d 'Upload a package to the registry' +complete -c cargo -n __fish_use_subcommand -f -a read-manifest -d 'Print a JSON representation of a Cargo.toml manifest. + +Deprecated, use `cargo metadata --no-deps` instead.' +complete -c cargo -n __fish_use_subcommand -f -a run -d 'Run a binary or example of the local package' +complete -c cargo -n __fish_use_subcommand -f -a rustc -d 'Compile a package, and pass extra options to the compiler' +complete -c cargo -n __fish_use_subcommand -f -a rustdoc -d 'Build a package\'s documentation, using specified custom flags.' +complete -c cargo -n __fish_use_subcommand -f -a search -d 'Search packages in crates.io' +complete -c cargo -n __fish_use_subcommand -f -a test -d 'Execute all unit and integration tests and build examples of a local package' +complete -c cargo -n __fish_use_subcommand -f -a tree -d 'Display a tree visualization of a dependency graph' +complete -c cargo -n __fish_use_subcommand -f -a uninstall -d 'Remove a Rust binary' +complete -c cargo -n __fish_use_subcommand -f -a update -d 'Update dependencies as recorded in the local lock file' +complete -c cargo -n __fish_use_subcommand -f -a vendor -d 'Vendor all dependencies for a project locally' +complete -c cargo -n __fish_use_subcommand -f -a verify-project -d 'Check correctness of crate manifest' +complete -c cargo -n __fish_use_subcommand -f -a version -d 'Show version information' +complete -c cargo -n __fish_use_subcommand -f -a yank -d 'Remove a pushed crate from the index' +complete -c cargo -n __fish_use_subcommand -f -a help -d 'Prints this message or the help of the given subcommand(s)' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l bin -d 'Benchmark only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l example -d 'Benchmark only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l test -d 'Benchmark only the specified test target' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l bench -d 'Benchmark only the specified bench target' +complete -c cargo -n "__fish_seen_subcommand_from bench" -s p -l package -d 'Package to run benchmarks for' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l exclude -d 'Exclude packages from the benchmark' +complete -c cargo -n "__fish_seen_subcommand_from bench" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from bench" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from bench" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l lib -d 'Benchmark only this package\'s library' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l bins -d 'Benchmark all binaries' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l examples -d 'Benchmark all examples' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l tests -d 'Benchmark all tests' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l benches -d 'Benchmark all benches' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l all-targets -d 'Benchmark all targets' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l no-run -d 'Compile, but don\'t run benchmarks' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l all -d 'Alias for --workspace (deprecated)' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l workspace -d 'Benchmark all packages in the workspace' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l no-fail-fast -d 'Run all benchmarks regardless of failure' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from bench" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from bench" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from bench" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from bench" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from build" -s p -l package -d 'Package to build (see `cargo help pkgid`)' +complete -c cargo -n "__fish_seen_subcommand_from build" -l exclude -d 'Exclude packages from the build' +complete -c cargo -n "__fish_seen_subcommand_from build" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from build" -l bin -d 'Build only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from build" -l example -d 'Build only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from build" -l test -d 'Build only the specified test target' +complete -c cargo -n "__fish_seen_subcommand_from build" -l bench -d 'Build only the specified bench target' +complete -c cargo -n "__fish_seen_subcommand_from build" -l profile -d 'Build artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from build" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from build" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from build" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from build" -l out-dir -d 'Copy final artifacts to this directory (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from build" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from build" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from build" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from build" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from build" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from build" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from build" -l all -d 'Alias for --workspace (deprecated)' +complete -c cargo -n "__fish_seen_subcommand_from build" -l workspace -d 'Build all packages in the workspace' +complete -c cargo -n "__fish_seen_subcommand_from build" -l lib -d 'Build only this package\'s library' +complete -c cargo -n "__fish_seen_subcommand_from build" -l bins -d 'Build all binaries' +complete -c cargo -n "__fish_seen_subcommand_from build" -l examples -d 'Build all examples' +complete -c cargo -n "__fish_seen_subcommand_from build" -l tests -d 'Build all tests' +complete -c cargo -n "__fish_seen_subcommand_from build" -l benches -d 'Build all benches' +complete -c cargo -n "__fish_seen_subcommand_from build" -l all-targets -d 'Build all targets' +complete -c cargo -n "__fish_seen_subcommand_from build" -l release -d 'Build artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from build" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from build" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from build" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from build" -l build-plan -d 'Output the build plan in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from build" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from build" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from build" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from build" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from build" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from build" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from build" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from build" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from check" -s p -l package -d 'Package(s) to check' +complete -c cargo -n "__fish_seen_subcommand_from check" -l exclude -d 'Exclude packages from the check' +complete -c cargo -n "__fish_seen_subcommand_from check" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from check" -l bin -d 'Check only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from check" -l example -d 'Check only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from check" -l test -d 'Check only the specified test target' +complete -c cargo -n "__fish_seen_subcommand_from check" -l bench -d 'Check only the specified bench target' +complete -c cargo -n "__fish_seen_subcommand_from check" -l profile -d 'Check artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from check" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from check" -l target -d 'Check for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from check" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from check" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from check" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from check" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from check" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from check" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from check" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from check" -l all -d 'Alias for --workspace (deprecated)' +complete -c cargo -n "__fish_seen_subcommand_from check" -l workspace -d 'Check all packages in the workspace' +complete -c cargo -n "__fish_seen_subcommand_from check" -l lib -d 'Check only this package\'s library' +complete -c cargo -n "__fish_seen_subcommand_from check" -l bins -d 'Check all binaries' +complete -c cargo -n "__fish_seen_subcommand_from check" -l examples -d 'Check all examples' +complete -c cargo -n "__fish_seen_subcommand_from check" -l tests -d 'Check all tests' +complete -c cargo -n "__fish_seen_subcommand_from check" -l benches -d 'Check all benches' +complete -c cargo -n "__fish_seen_subcommand_from check" -l all-targets -d 'Check all targets' +complete -c cargo -n "__fish_seen_subcommand_from check" -l release -d 'Check artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from check" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from check" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from check" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from check" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from check" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from check" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from check" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from check" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from check" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from check" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from check" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from clean" -s p -l package -d 'Package to clean artifacts for' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l target -d 'Target triple to clean output for' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l profile -d 'Clean artifacts of the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from clean" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from clean" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l release -d 'Whether or not to clean release artifacts' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l doc -d 'Whether or not to clean just the documentation directory' +complete -c cargo -n "__fish_seen_subcommand_from clean" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from clean" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from clean" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from clean" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from complete" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from complete" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from complete" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from complete" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from complete" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from complete" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from complete" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from complete" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from complete" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l id -d 'identifier of the report [generated by a Cargo command invocation' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from describe-future-incompatibilities" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from doc" -s p -l package -d 'Package to document' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l exclude -d 'Exclude packages from the build' +complete -c cargo -n "__fish_seen_subcommand_from doc" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l bin -d 'Document only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l profile -d 'Build artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from doc" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from doc" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l open -d 'Opens the docs in a browser after the operation' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l all -d 'Alias for --workspace (deprecated)' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l workspace -d 'Document all packages in the workspace' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l no-deps -d 'Don\'t build documentation for dependencies' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l document-private-items -d 'Document private items' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l lib -d 'Document only this package\'s library' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l bins -d 'Document all binaries' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l release -d 'Build artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from doc" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from doc" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from doc" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from doc" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -l target -d 'Fetch dependencies for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from fetch" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from fix" -s p -l package -d 'Package(s) to fix' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l exclude -d 'Exclude packages from the fixes' +complete -c cargo -n "__fish_seen_subcommand_from fix" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l bin -d 'Fix only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l example -d 'Fix only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l test -d 'Fix only the specified test target' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l bench -d 'Fix only the specified bench target' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l profile -d 'Build artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l target -d 'Fix for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from fix" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from fix" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l all -d 'Alias for --workspace (deprecated)' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l workspace -d 'Fix all packages in the workspace' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l lib -d 'Fix only this package\'s library' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l bins -d 'Fix all binaries' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l examples -d 'Fix all examples' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l tests -d 'Fix all tests' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l benches -d 'Fix all benches' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l all-targets -d 'Fix all targets (default)' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l release -d 'Fix artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l broken-code -d 'Fix code even if it already has compiler errors' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l edition -d 'Fix in preparation for the next edition' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l edition-idioms -d 'Fix warnings to migrate to the idioms of an edition' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l allow-no-vcs -d 'Fix code even if a VCS was not detected' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l allow-dirty -d 'Fix code even if the working directory is dirty' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l allow-staged -d 'Fix code even if the working directory has staged changes' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from fix" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from fix" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from fix" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from fix" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from generate-lockfile" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from git-checkout" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from init" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from init" -l vcs -d 'Initialize a new repository for the given version control system (git, hg, pijul, or fossil) or do not initialize any version control at all (none), overriding a global configuration.' -r -f -a "git hg pijul fossil none" +complete -c cargo -n "__fish_seen_subcommand_from init" -l edition -d 'Edition to set for the crate generated' -r -f -a "2015 2018 2021" +complete -c cargo -n "__fish_seen_subcommand_from init" -l name -d 'Set the resulting package name, defaults to the directory name' +complete -c cargo -n "__fish_seen_subcommand_from init" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from init" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from init" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from init" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from init" -l bin -d 'Use a binary (application) template [default]' +complete -c cargo -n "__fish_seen_subcommand_from init" -l lib -d 'Use a library template' +complete -c cargo -n "__fish_seen_subcommand_from init" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from init" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from init" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from init" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from init" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from init" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from install" -l version -d 'Specify a version to install' +complete -c cargo -n "__fish_seen_subcommand_from install" -l git -d 'Git URL to install the specified crate from' +complete -c cargo -n "__fish_seen_subcommand_from install" -l branch -d 'Branch to use when installing from git' +complete -c cargo -n "__fish_seen_subcommand_from install" -l tag -d 'Tag to use when installing from git' +complete -c cargo -n "__fish_seen_subcommand_from install" -l rev -d 'Specific commit to use when installing from git' +complete -c cargo -n "__fish_seen_subcommand_from install" -l path -d 'Filesystem path to local crate to install' +complete -c cargo -n "__fish_seen_subcommand_from install" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from install" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from install" -l profile -d 'Install artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from install" -l bin -d 'Install only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from install" -l example -d 'Install only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from install" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from install" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from install" -l root -d 'Directory to install packages into' +complete -c cargo -n "__fish_seen_subcommand_from install" -l index -d 'Registry index to install from' +complete -c cargo -n "__fish_seen_subcommand_from install" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from install" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from install" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from install" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from install" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from install" -l list -d 'list all installed packages and their versions' +complete -c cargo -n "__fish_seen_subcommand_from install" -s f -l force -d 'Force overwriting existing crates or binaries' +complete -c cargo -n "__fish_seen_subcommand_from install" -l no-track -d 'Do not save tracking information' +complete -c cargo -n "__fish_seen_subcommand_from install" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from install" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from install" -l debug -d 'Build in debug mode instead of release mode' +complete -c cargo -n "__fish_seen_subcommand_from install" -l bins -d 'Install all binaries' +complete -c cargo -n "__fish_seen_subcommand_from install" -l examples -d 'Install all examples' +complete -c cargo -n "__fish_seen_subcommand_from install" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from install" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from install" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from install" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from install" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l message-format -d 'Output representation [possible values: json, plain]' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l workspace -d 'Locate Cargo.toml of the workspace root' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from locate-project" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from login" -l host -d 'Host to set the token for' +complete -c cargo -n "__fish_seen_subcommand_from login" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from login" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from login" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from login" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from login" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from login" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from login" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from login" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from login" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from login" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from login" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from logout" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from logout" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from logout" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from logout" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from logout" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from logout" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from logout" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from logout" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from logout" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from logout" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from logout" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l filter-platform -d 'Only include resolve dependencies matching the given target-triple' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l format-version -d 'Format version' -r -f -a 1 +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -s q -l quiet -d 'Do not print cargo log messages' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l no-deps -d 'Output information only about the workspace members and don\'t fetch dependencies' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from metadata" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from new" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from new" -l vcs -d 'Initialize a new repository for the given version control system (git, hg, pijul, or fossil) or do not initialize any version control at all (none), overriding a global configuration.' -r -f -a "git hg pijul fossil none" +complete -c cargo -n "__fish_seen_subcommand_from new" -l edition -d 'Edition to set for the crate generated' -r -f -a "2015 2018 2021" +complete -c cargo -n "__fish_seen_subcommand_from new" -l name -d 'Set the resulting package name, defaults to the directory name' +complete -c cargo -n "__fish_seen_subcommand_from new" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from new" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from new" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from new" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from new" -l bin -d 'Use a binary (application) template [default]' +complete -c cargo -n "__fish_seen_subcommand_from new" -l lib -d 'Use a library template' +complete -c cargo -n "__fish_seen_subcommand_from new" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from new" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from new" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from new" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from new" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from new" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s a -l add -d 'Name of a user or team to invite as an owner' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s r -l remove -d 'Name of a user or team to remove as an owner' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l index -d 'Registry index to modify owners for' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l token -d 'API token to use when authenticating' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s l -l list -d 'List owners of a crate' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from owner" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from owner" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from package" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from package" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from package" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from package" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from package" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from package" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from package" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from package" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from package" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from package" -s l -l list -d 'Print files included in a package without making one' +complete -c cargo -n "__fish_seen_subcommand_from package" -l no-verify -d 'Don\'t verify the contents by building them' +complete -c cargo -n "__fish_seen_subcommand_from package" -l no-metadata -d 'Ignore warnings about a lack of human-usable metadata' +complete -c cargo -n "__fish_seen_subcommand_from package" -l allow-dirty -d 'Allow dirty working directories to be packaged' +complete -c cargo -n "__fish_seen_subcommand_from package" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from package" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from package" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from package" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from package" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from package" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from package" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from package" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s p -l package -d 'Argument to get the package ID specifier for' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from pkgid" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l index -d 'Registry index URL to upload the package to' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l host -d 'DEPRECATED, renamed to \'--index\'' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l token -d 'Token to use when uploading' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from publish" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l registry -d 'Registry to publish to' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from publish" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from publish" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l no-verify -d 'Don\'t verify the contents by building them' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l allow-dirty -d 'Allow dirty working directories to be packaged' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l dry-run -d 'Perform all checks without uploading' +complete -c cargo -n "__fish_seen_subcommand_from publish" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from publish" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from publish" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from publish" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from read-manifest" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from run" -l bin -d 'Name of the bin target to run' +complete -c cargo -n "__fish_seen_subcommand_from run" -l example -d 'Name of the example target to run' +complete -c cargo -n "__fish_seen_subcommand_from run" -s p -l package -d 'Package with the target to run' +complete -c cargo -n "__fish_seen_subcommand_from run" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from run" -l profile -d 'Build artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from run" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from run" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from run" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from run" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from run" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from run" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from run" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from run" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from run" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from run" -l release -d 'Build artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from run" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from run" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from run" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from run" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from run" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from run" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from run" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from run" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from run" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from run" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -s p -l package -d 'Package to build' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l bin -d 'Build only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l example -d 'Build only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l test -d 'Build only the specified test target' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l bench -d 'Build only the specified bench target' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l profile -d 'Build artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l target -d 'Target triple which compiles will be for' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l print -d 'Output compiler information without compiling' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l lib -d 'Build only this package\'s library' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l bins -d 'Build all binaries' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l examples -d 'Build all examples' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l tests -d 'Build all tests' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l benches -d 'Build all benches' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l all-targets -d 'Build all targets' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l release -d 'Build artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from rustc" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s p -l package -d 'Package to document' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l bin -d 'Build only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l example -d 'Build only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l test -d 'Build only the specified test target' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l bench -d 'Build only the specified bench target' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l profile -d 'Build artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l open -d 'Opens the docs in a browser after the operation' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l lib -d 'Build only this package\'s library' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l bins -d 'Build all binaries' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l examples -d 'Build all examples' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l tests -d 'Build all tests' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l benches -d 'Build all benches' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l all-targets -d 'Build all targets' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l release -d 'Build artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from rustdoc" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from search" -l index -d 'Registry index URL to upload the package to' +complete -c cargo -n "__fish_seen_subcommand_from search" -l host -d 'DEPRECATED, renamed to \'--index\'' +complete -c cargo -n "__fish_seen_subcommand_from search" -l limit -d 'Limit the number of results (default: 10, max: 100)' +complete -c cargo -n "__fish_seen_subcommand_from search" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from search" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from search" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from search" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from search" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from search" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from search" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from search" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from search" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from search" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from search" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from test" -l bin -d 'Test only the specified binary' +complete -c cargo -n "__fish_seen_subcommand_from test" -l example -d 'Test only the specified example' +complete -c cargo -n "__fish_seen_subcommand_from test" -l test -d 'Test only the specified test target' +complete -c cargo -n "__fish_seen_subcommand_from test" -l bench -d 'Test only the specified bench target' +complete -c cargo -n "__fish_seen_subcommand_from test" -s p -l package -d 'Package to run tests for' +complete -c cargo -n "__fish_seen_subcommand_from test" -l exclude -d 'Exclude packages from the test' +complete -c cargo -n "__fish_seen_subcommand_from test" -s j -l jobs -d 'Number of parallel jobs, defaults to # of CPUs' +complete -c cargo -n "__fish_seen_subcommand_from test" -l profile -d 'Build artifacts with the specified profile' +complete -c cargo -n "__fish_seen_subcommand_from test" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from test" -l target -d 'Build for the target triple' +complete -c cargo -n "__fish_seen_subcommand_from test" -l target-dir -d 'Directory for all generated artifacts' +complete -c cargo -n "__fish_seen_subcommand_from test" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from test" -l message-format -d 'Error format' +complete -c cargo -n "__fish_seen_subcommand_from test" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from test" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from test" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from test" -s q -l quiet -d 'Display one character per test instead of one line' +complete -c cargo -n "__fish_seen_subcommand_from test" -l lib -d 'Test only this package\'s library unit tests' +complete -c cargo -n "__fish_seen_subcommand_from test" -l bins -d 'Test all binaries' +complete -c cargo -n "__fish_seen_subcommand_from test" -l examples -d 'Test all examples' +complete -c cargo -n "__fish_seen_subcommand_from test" -l tests -d 'Test all tests' +complete -c cargo -n "__fish_seen_subcommand_from test" -l benches -d 'Test all benches' +complete -c cargo -n "__fish_seen_subcommand_from test" -l all-targets -d 'Test all targets' +complete -c cargo -n "__fish_seen_subcommand_from test" -l doc -d 'Test only this library\'s documentation' +complete -c cargo -n "__fish_seen_subcommand_from test" -l no-run -d 'Compile, but don\'t run tests' +complete -c cargo -n "__fish_seen_subcommand_from test" -l no-fail-fast -d 'Run all tests regardless of failure' +complete -c cargo -n "__fish_seen_subcommand_from test" -l all -d 'Alias for --workspace (deprecated)' +complete -c cargo -n "__fish_seen_subcommand_from test" -l workspace -d 'Test all packages in the workspace' +complete -c cargo -n "__fish_seen_subcommand_from test" -l release -d 'Build artifacts in release mode, with optimizations' +complete -c cargo -n "__fish_seen_subcommand_from test" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from test" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from test" -l ignore-rust-version -d 'Ignore `rust-version` specification in packages (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from test" -l unit-graph -d 'Output build graph in JSON (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from test" -l future-incompat-report -d 'Ouputs a future incompatibility report at the end of the build (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from test" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from test" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from test" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from test" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from test" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from test" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s p -l package -d 'Package to be used as the root of the tree' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l exclude -d 'Exclude specific workspace members' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l features -d 'Space or comma separated list of features to activate' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l target -d 'Filter dependencies matching the given target-triple (default host platform). Pass `all` to include all targets.' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s e -l edges -d 'The kinds of dependencies to display (features, normal, build, dev, all, no-dev, no-build, no-normal)' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s i -l invert -d 'Invert the tree direction and focus on the given package' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l prefix -d 'Change the prefix (indentation) of how each entry is displayed' -r -f -a "depth indent none" +complete -c cargo -n "__fish_seen_subcommand_from tree" -l charset -d 'Character set to use in output: utf8, ascii' -r -f -a "utf8 ascii" +complete -c cargo -n "__fish_seen_subcommand_from tree" -s f -l format -d 'Format string used for printing dependencies' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s q -l quiet -d 'Suppress status messages' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l workspace -d 'Display the tree for all packages in the workspace' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s a -l all +complete -c cargo -n "__fish_seen_subcommand_from tree" -l all-targets +complete -c cargo -n "__fish_seen_subcommand_from tree" -l all-features -d 'Activate all available features' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-default-features -d 'Do not activate the `default` feature' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-dev-dependencies +complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-indent +complete -c cargo -n "__fish_seen_subcommand_from tree" -l prefix-depth +complete -c cargo -n "__fish_seen_subcommand_from tree" -l no-dedupe -d 'Do not de-duplicate (repeats all shared dependencies)' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s d -l duplicates -d 'Show only dependencies which come in multiple versions (implies -i)' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s V -l version +complete -c cargo -n "__fish_seen_subcommand_from tree" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from tree" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from tree" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s p -l package -d 'Package to uninstall' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l bin -d 'Only uninstall the binary NAME' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l root -d 'Directory to uninstall packages from' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from uninstall" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from update" -s p -l package -d 'Package to update' +complete -c cargo -n "__fish_seen_subcommand_from update" -l precise -d 'Update a single dependency to exactly PRECISE when used with -p' +complete -c cargo -n "__fish_seen_subcommand_from update" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from update" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from update" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from update" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from update" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from update" -s w -l workspace -d 'Only update the workspace packages' +complete -c cargo -n "__fish_seen_subcommand_from update" -l aggressive -d 'Force updating all dependencies of SPEC as well when used with -p' +complete -c cargo -n "__fish_seen_subcommand_from update" -l dry-run -d 'Don\'t actually write the lockfile' +complete -c cargo -n "__fish_seen_subcommand_from update" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from update" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from update" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from update" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from update" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from update" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -s s -l sync -d 'Additional `Cargo.toml` to sync and vendor' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l no-delete -d 'Don\'t delete older crates in the vendor directory' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l respect-source-config -d 'Respect `[source]` config in `.cargo/config`' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l versioned-dirs -d 'Always include version in subdir name' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l no-merge-sources +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l relative-path +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l only-git-deps +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l disallow-duplicates +complete -c cargo -n "__fish_seen_subcommand_from vendor" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from vendor" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l manifest-path -d 'Path to Cargo.toml' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from verify-project" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from version" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from version" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from version" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from version" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from version" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from version" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from version" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from version" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from version" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from version" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l vers -d 'The version to yank or un-yank' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l index -d 'Registry index to yank from' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l token -d 'API token to use when authenticating' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l registry -d 'Registry to use' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from yank" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from yank" -s q -l quiet -d 'No output printed to stdout' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l undo -d 'Undo a yank, putting a version back into the index' +complete -c cargo -n "__fish_seen_subcommand_from yank" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from yank" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from yank" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from yank" -l offline -d 'Run without accessing the network' +complete -c cargo -n "__fish_seen_subcommand_from help" -l color -d 'Coloring: auto, always, never' +complete -c cargo -n "__fish_seen_subcommand_from help" -l config -d 'Override a configuration value (unstable)' +complete -c cargo -n "__fish_seen_subcommand_from help" -s Z -d 'Unstable (nightly-only) flags to Cargo, see \'cargo -Z help\' for details' +complete -c cargo -n "__fish_seen_subcommand_from help" -s h -l help -d 'Prints help information' +complete -c cargo -n "__fish_seen_subcommand_from help" -s V -l version -d 'Prints version information' +complete -c cargo -n "__fish_seen_subcommand_from help" -s v -l verbose -d 'Use verbose output (-vv very verbose/build.rs output)' +complete -c cargo -n "__fish_seen_subcommand_from help" -l frozen -d 'Require Cargo.lock and cache are up to date' +complete -c cargo -n "__fish_seen_subcommand_from help" -l locked -d 'Require Cargo.lock is up to date' +complete -c cargo -n "__fish_seen_subcommand_from help" -l offline -d 'Run without accessing the network' diff --git a/dot_config/fish/completions/git.fish b/dot_config/fish/completions/git.fish new file mode 100644 index 0000000..0fa768d --- /dev/null +++ b/dot_config/fish/completions/git.fish @@ -0,0 +1,2162 @@ +# fish completion for git + +# Use this instead of calling git directly; it passes the commands that are +# already present on the commandline to git. This is relevant for --work-tree etc, see issue #6219. +function __fish_git + set -l saved_args $argv + set -l global_args + set -l cmd (commandline -opc) + # We assume that git is the first command until we have a better awareness of subcommands, see #2705. + set -e cmd[1] + if argparse -s (__fish_git_global_optspecs) -- $cmd 2>/dev/null + # All arguments that were parsed by argparse are global git options. + set -l num_global_args (math (count $cmd) - (count $argv)) + if test $num_global_args -ne 0 + set global_args $cmd[1..$num_global_args] + end + end + # Using 'command git' to avoid interactions for aliases from git to (e.g.) hub + # Using eval to expand ~ and variables specified on the commandline. + eval command git $global_args \$saved_args 2>/dev/null +end + +# Print an optspec for argparse to handle git's options that are independent of any subcommand. +function __fish_git_global_optspecs + string join \n v-version h/help C= c=+ 'e-exec-path=?' H-html-path M-man-path I-info-path p/paginate \ + P/no-pager o-no-replace-objects b-bare G-git-dir= W-work-tree= N-namespace= S-super-prefix= \ + l-literal-pathspecs g-glob-pathspecs O-noglob-pathspecs i-icase-pathspecs +end + +function __fish_git_commits + # Complete commits with their subject line as the description + # This allows filtering by subject with the new pager! + # Because even subject lines can be quite long, + # trim them (abbrev'd hash+tab+subject) to 73 characters + # + # Hashes we just truncate ourselves to 10 characters, without disambiguating. + # That technically means that sometimes we don't give usable SHAs, + # but according to https://stackoverflow.com/a/37403152/3150338, + # that happens for 3 commits out of 600k. + # For fish, at the time of writing, out of 12200 commits, 7 commits need 8 characters. + # And since this takes about 1/3rd of the time that disambiguating takes... + __fish_git log --pretty=tformat:"%H"\t"%<(64,trunc)%s" --all --max-count=1000 2>/dev/null \ + | string replace -r '^([0-9a-f]{10})[0-9a-f]*\t(.*)' '$1\t$2' +end + +function __fish_git_recent_commits + # Like __fish_git_commits, but not on all branches and limited to + # the last 50 commits. Used for fixup, where only the current branch + # and the latest commits make sense. + __fish_git log --pretty=tformat:"%h"\t"%<(64,trunc)%s" --max-count=50 $argv 2>/dev/null +end + +function __fish_git_branches + # This is much faster than using `git branch`, + # and avoids having to deal with localized "detached HEAD" messages. + __fish_git for-each-ref --format='%(refname)' refs/heads/ refs/remotes/ 2>/dev/null \ + | string replace -r '^refs/heads/(.*)$' '$1\tLocal Branch' \ + | string replace -r '^refs/remotes/(.*)$' '$1\tRemote Branch' +end + +function __fish_git_submodules + __fish_git submodule 2>/dev/null \ + | string replace -r '^.[^ ]+ ([^ ]+).*$' '$1' +end + +function __fish_git_local_branches + __fish_git for-each-ref --format='%(refname:strip=2)' refs/heads/ 2>/dev/null \ + | string replace -rf '.*' '$0\tLocal Branch' +end + +function __fish_git_unique_remote_branches + # `git checkout` accepts remote branches without the remote part + # if they are unambiguous. + # E.g. if only alice has a "frobulate" branch + # `git checkout frobulate` is equivalent to `git checkout -b frobulate --track alice/frobulate`. + __fish_git for-each-ref --format="%(refname:strip=3)" \ + --sort="refname:strip=3" \ + "refs/remotes/*/$match*" "refs/remotes/*/*/**" 2>/dev/null | uniq -u +end + +function __fish_git_tags + __fish_git tag --sort=-creatordate 2>/dev/null +end + +function __fish_git_heads + set -l gitdir (__fish_git rev-parse --git-dir 2>/dev/null) + or return # No git dir, no need to even test. + for head in HEAD FETCH_HEAD ORIG_HEAD MERGE_HEAD + if test -f $gitdir/$head + echo $head + end + end +end + +function __fish_git_refs + __fish_git_branches + __fish_git_tags + __fish_git_heads +end + +function __fish_git_remotes + __fish_git remote 2>/dev/null +end + +function __fish_git_files + # A function to show various kinds of files git knows about, + # by parsing `git status --porcelain`. + # + # This accepts arguments to denote the kind of files: + # - added: Staged added files (unstaged adds are untracked) + # - copied + # - deleted + # - deleted-staged + # - ignored + # - modified: Files that have been modified (but aren't staged) + # - modified-staged: Staged modified files + # - renamed + # - untracked + # and as a convenience "all-staged" + # to get _all_ kinds of staged files. + + # Save the repo root to remove it from the path later. + set -l root (__fish_git rev-parse --show-toplevel --is-bare-repository 2>/dev/null) + or return + + # Skip bare repositories. + test "$root[2]" = true + and return + or set -e root[2] + + # Cache the translated descriptions so we don't have to get it + # once per file. + contains -- all-staged $argv; and set -l all_staged + contains -- unmerged $argv; and set -l unmerged + and set -l unmerged_desc "Unmerged File" + contains -- added $argv; or set -ql all_staged; and set -l added + and set -l added_desc "Added file" + contains -- modified $argv; and set -l modified + and set -l modified_desc "Modified file" + contains -- untracked $argv; and set -l untracked + and set -l untracked_desc "Untracked file" + contains -- modified-staged $argv; or set -ql all_staged; and set -l modified_staged + and set -l staged_modified_desc "Staged modified file" + contains -- modified-staged-deleted $argv; or set -ql modified_staged; and set -l modified_staged_deleted + and set -l modified_staged_deleted_desc "Staged modified and deleted file" + contains -- deleted $argv; and set -l deleted + and set -l deleted_desc "Deleted file" + contains -- deleted-staged $argv; or set -ql all_staged; and set -l deleted_staged + and set -l staged_deleted_desc "Staged deleted file" + contains -- ignored $argv; and set -l ignored + and set -l ignored_desc "Ignored file" + contains -- renamed $argv; and set -l renamed + and set -l renamed_desc "Renamed file" + contains -- copied $argv; and set -l copied + and set -l copied_desc "Copied file" + + # A literal "?" for use in `case`. + set -l q '\\?' + if status test-feature qmark-noglob + set q '?' + end + set -l use_next + # git status --porcelain gives us all the info we need, in a format we don't. + # The v2 format has better documentation and doesn't use " " to denote anything, + # but it's only been added in git 2.11.0, which was released November 2016. + + # Also, we ignore submodules because they aren't useful as arguments (generally), + # and they slow things down quite significantly. + # E.g. `git reset $submodule` won't do anything (not even print an error). + # --ignore-submodules=all was added in git 1.7.2, released July 2010. + # + set -l status_opt --ignore-submodules=all + + # If we aren't looking for ignored files, let git status skip them. + # (don't use --ignored=no because that was only added in git 2.16, from Jan 2018. + set -q ignored; and set -a status_opt --ignored + + # If we're looking for untracked files, we give untracked files even inside untracked directories. + # This makes it nicer if e.g. you're in an untracked directory and want to just add one file. + set -q untracked; and set -a status_opt -uall + or set -a status_opt -uno + + # We need to set status.relativePaths to true because the porcelain v2 format still honors that, + # and core.quotePath to false so characters > 0x80 (i.e. non-ASCII) aren't considered special. + # We explicitly enable globs so we can use that to match the current token. + set -l git_opt -c status.relativePaths -c core.quotePath= + + # We pick the v2 format if we can, because it shows relative filenames (if used without "-z"). + # We fall back on the v1 format by reading git's _version_, because trying v2 first is too slow. + set -l ver (__fish_git --version | string replace -rf 'git version (\d+)\.(\d+)\.?.*' '$1\n$2') + # Version >= 2.11.* has the v2 format. + if test "$ver[1]" -gt 2 2>/dev/null; or test "$ver[1]" -eq 2 -a "$ver[2]" -ge 11 2>/dev/null + __fish_git $git_opt status --porcelain=2 $status_opt \ + | while read -la -d ' ' line + set -l file + set -l desc + # The basic status format is "XY", where X is "our" state (meaning the staging area), + # and "Y" is "their" state. + # A "." means it's unmodified. + switch "$line[1..2]" + case 'u *' + # Unmerged + # "Unmerged entries have the following format; the first character is a "u" to distinguish from ordinary changed entries." + # "u <xy> <sub> <m1> <m2> <m3> <mW> <h1> <h2> <h3> <path>" + # This is first to distinguish it from normal modifications et al. + set -ql unmerged + and set file "$line[11..-1]" + and set desc $unmerged_desc + case '2 .R*' '2 R.*' + # Renamed/Copied + # From the docs: "Renamed or copied entries have the following format:" + # "2 <XY> <sub> <mH> <mI> <mW> <hH> <hI> <X><score> <path><sep><origPath>" + # Since <sep> is \t, we can't really parse it unambiguously. + # The "-z" format would be great here! + set -ql renamed + and set file (string replace -r '\t[^\t]*' '' -- "$line[10..-1]") + and set desc $renamed_desc + case '2 RM*' '2 RT*' + # Staged as renamed, with unstaged modifications (issue #6031) + set -ql renamed + or set -ql modified + and set file (string replace -r '\t[^\t]*' '' -- "$line[10..-1]") + set -ql renamed + and set desc $renamed_desc + set -ql modified + and set --append desc $modified_desc + case '2 RD*' + # Staged as renamed, but deleted in the worktree + set -ql renamed + or set -ql deleted + and set file (string replace -r '\t[^\t]*' '' -- "$line[10..-1]") + set -ql renamed + and set desc $renamed_desc + set -ql deleted + and set --append desc $deleted_desc + case '2 .C*' '2 C.*' + set -ql copied + and set file (string replace -r '\t[^\t].*' '' -- "$line[10..-1]") + and set desc $copied_desc + case '1 A.*' + # Additions are only shown here if they are staged. + # Otherwise it's an untracked file. + set -ql added + and set file "$line[9..-1]" + and set desc $added_desc + case '1 AD*' + # Added files that were since deleted + if set -ql added + set file "$line[9..-1]" + set desc $added_desc + else if set -ql deleted + set file "$line[9..-1]" + set desc $deleted_desc + end + case "1 AM*" "1 AT*" + # Added files with additional modifications + # ("T" is type-changed. As of git 2.33 this appears to be undocumented. + # it happens when e.g. a file is replaced with a symlink. + # For our purposes it's the same as modified) + if set -ql added + set file "$line[9..-1]" + set desc $added_desc + else if set -ql modified + set file "$line[9..-1]" + set desc $modified_desc + end + case '1 .A*' + # Files added with git add --intent-to-add. + set -ql untracked + and set file "$line[9..-1]" + and set desc $untracked_desc + case '1 .M*' '1 .T*' + # Modified + # From the docs: "Ordinary changed entries have the following format:" + # "1 <XY> <sub> <mH> <mI> <mW> <hH> <hI> <path>" + # Since <path> can contain spaces, print from element 9 onwards + set -ql modified + and set file "$line[9..-1]" + and set desc $modified_desc + case '1 MD*' '1 TD*' + set -ql modified_staged_deleted + and set file "$line[9..-1]" + and set desc $modified_staged_deleted_desc + case '1 M.*' '1 T.*' + # If the character is first ("M."), then that means it's "our" change, + # which means it is staged. + # This is useless for many commands - e.g. `checkout` won't do anything with this. + # So it needs to be requested explicitly. + set -ql modified_staged + and set file "$line[9..-1]" + and set desc $staged_modified_desc + case '1 MM*' '1 MT*' '1 TM*' '1 TT*' + # Staged-modified with unstaged modifications + # These need to be offered for both kinds of modified. + if set -ql modified + set file "$line[9..-1]" + set desc $modified_desc + else if set -ql modified_staged + set file "$line[9..-1]" + set desc $staged_modified_desc + end + case '1 .D*' + set -ql deleted + and set file "$line[9..-1]" + and set desc $deleted_desc + case '1 D.*' + # TODO: The docs are unclear on this. + # There is both X unmodified and Y either M or D ("not updated") + # and Y is D and X is unmodified or [MARC] ("deleted in work tree"). + # For our purposes, we assume this is a staged deletion. + set -ql deleted_staged + and set file "$line[9..-1]" + and set desc $staged_deleted_desc + case "$q"' *' + # Untracked + # "? <path>" - print from element 2 on. + set -ql untracked + and set file "$line[2..-1]" + and set desc $untracked_desc + case '! *' + # Ignored + # "! <path>" - print from element 2 on. + set -ql ignored + and set file "$line[2..-1]" + and set desc $ignored_desc + end + # Only try printing if the file was selected. + if set -q file[1] + for d in $desc + # Without "-z", git sometimes _quotes_ filenames. + # It adds quotes around it _and_ escapes the character. + # e.g. `"a\\b"`. + # We just remove the quotes and hope it works out. + # If this contains newlines or tabs, + # there is nothing we can do, but that's a general issue with scripted completions. + set file (string trim -c \" -- $file) + # First the relative filename. + printf '%s\t%s\n' "$file" $d + # Now from repo root. + # Only do this if the filename isn't a simple child, + # or the current token starts with ":" + if string match -q '../*' -- $file + or string match -q ':*' -- (commandline -ct) + set -l fromroot (builtin realpath -- $file 2>/dev/null) + and set fromroot (string replace -- "$root/" ":/" "$fromroot") + and printf '%s\t%s\n' "$fromroot" $d + end + end + end + end + else + # v1 format logic + # We need to compute relative paths on our own, which is slow. + # Pre-remove the root at least, so we have fewer components to deal with. + set -l _pwd_list (string replace "$root/" "" -- $PWD/ | string split /) + test -z "$_pwd_list[-1]"; and set -e _pwd_list[-1] + # Cache the previous relative path because these are sorted, so we can reuse it + # often for files in the same directory. + set -l previous + # Note that we can't use space as a delimiter between status and filename, because + # the status can contain spaces - " M" is different from "M ". + __fish_git $git_opt status --porcelain -z $status_opt \ + | while read -lz -d' ' line + set -l desc + # The entire line is the "from" from a rename. + if set -q use_next[1] + if contains -- $use_next $argv + set -l var "$use_next"_desc + set desc $$var + set -e use_next[1] + else + set -e use_next[1] + continue + end + end + + # The format is two characters for status, then a space and then + # up to a NUL for the filename. + # + set -l stat (string sub -l 2 -- $line) + # The basic status format is "XY", where X is "our" state (meaning the staging area), + # and "Y" is "their" state (meaning the work tree). + # A " " means it's unmodified. + # + # Be careful about the ordering here! + switch "$stat" + case DD AU UD UA DU AA UU + # Unmerged + set -ql unmerged + and set desc $unmerged_desc + case 'R ' RM RD + # Renamed/Copied + # These have the "from" name as the next batch. + # TODO: Do we care about the new name? + set use_next renamed + continue + case 'C ' CM CD + set use_next copied + continue + case AM + if set -ql added + set file "$line[9..-1]" + set desc $added_desc + else if set -ql modified + set file "$line[9..-1]" + set desc $modified_desc + end + case AD + if set -ql added + set file "$line[9..-1]" + set desc $added_desc + else if set -ql deleted + set file "$line[9..-1]" + set desc $deleted_desc + end + case 'A ' + # Additions are only shown here if they are staged. + # Otherwise it's an untracked file. + set -ql added + and set desc $added_desc + case '*M' + # Modified + set -ql modified + and set desc $modified_desc + case 'M*' + # If the character is first ("M "), then that means it's "our" change, + # which means it is staged. + # This is useless for many commands - e.g. `checkout` won't do anything with this. + # So it needs to be requested explicitly. + set -ql modified_staged + and set desc $staged_modified_desc + case '*D' + set -ql deleted + and set desc $deleted_desc + case 'D*' + # TODO: The docs are unclear on this. + # There is both X unmodified and Y either M or D ("not updated") + # and Y is D and X is unmodified or [MARC] ("deleted in work tree"). + # For our purposes, we assume this is a staged deletion. + set -ql deleted_staged + and set desc $staged_deleted_desc + case "$q$q" + # Untracked + set -ql untracked + and set desc $untracked_desc + case '!!' + # Ignored + set -ql ignored + and set desc $ignored_desc + end + if set -q desc[1] + # Again: "XY filename", so the filename starts on character 4. + set -l relfile (string sub -s 4 -- $line) + + set -l file + # Computing relative path by hand. + set -l abs (string split / -- $relfile) + # If it's in the same directory, we just need to change the filename. + if test "$abs[1..-2]" = "$previous[1..-2]" + # If we didn't have a previous file, and the current file is in the current directory, + # this would error out. + # + # See #5728. + set -q previous[1] + and set previous[-1] $abs[-1] + or set previous $abs + else + set -l pwd_list $_pwd_list + # Remove common prefix + while test "$pwd_list[1]" = "$abs[1]" + set -e pwd_list[1] + set -e abs[1] + end + # Go a dir up for every entry left in pwd_list, then into $abs + set previous (string replace -r '.*' '..' -- $pwd_list) $abs + end + set -a file (string join / -- $previous) + + # The filename with ":/" prepended. + if string match -q '../*' -- $file + or string match -q ':*' -- (commandline -ct) + set file (string replace -- "$root/" ":/" "$root/$relfile") + end + + if test "$root/$relfile" = (pwd -P)/$relfile + set file $relfile + end + + printf '%s\n' $file\t$desc + end + end + end +end + +# Lists files included in the index of a commit, branch, or tag (not necessarily HEAD) +function __fish_git_rev_files + set -l rev $argv[1] + set -l path $argv[2] + + # Strip any partial files from the path before handing it to `git show` + set -l path (string replace -r -- '(.*/|).*' '$1' $path) + + # List files in $rev's index, skipping the "tree ..." header, but appending + # the parent path, which git does not include in the output (and fish requires) + printf "$path%s\n" (git show $rev:$path | sed '1,2d') +end + +# Provides __fish_git_rev_files completions for the current token +function __fish_git_complete_rev_files + set -l split (string split -m 1 ":" (commandline -ot)) + set -l rev $split[1] + set -l path $split[2] + + printf "$rev:%s\n" (__fish_git_rev_files $rev $path) +end + +# Determines whether we can/should complete with __fish_git_rev_files +function __fish_git_needs_rev_files + # git (as of 2.20) accepts the rev:path syntax for a number of subcommands, + # but then doesn't emit the expected (or any?) output, e.g. `git log master:foo` + # + # This definitely works with `git show` to retrieve a copy of a file as it exists + # in the index of revision $rev, it should be updated to include others as they + # are identified. + __fish_git_using_command show; and string match -r "^[^-].*:" -- (commandline -ot) +end + +function __fish_git_ranges + set -l both (commandline -ot | string replace -r '\.{2,3}' \n\$0\n) + set -l from $both[1] + set -l dots $both[2] + # If we didn't need to split (or there's nothing _to_ split), complete only the first part + # Note that status here is from `string replace` because `set` doesn't alter it + if test -z "$from" -o $status -gt 0 + if commandline -ct | string match -q '*..*' + # The cursor is right of a .. range operator, make sure to include them first. + __fish_git_refs | string replace -r '' "$dots" + else + __fish_git_refs | string replace \t "$dots"\t + end + return 0 + end + + set -l from_refs + if commandline -ct | string match -q '*..*' + # If the cursor is right of a .. range operator, only complete the right part. + set from_refs $from + else + set from_refs (__fish_git_refs | string match -e "$from" | string replace -r \t'.*$' '') + end + + set -l to $both[3] + # Remove description from the from-ref, not the to-ref. + for from_ref in $from_refs + for to_ref in (__fish_git_refs | string match "*$to*") # if $to is empty, this correctly matches everything + printf "%s%s%s\n" $from_ref $dots $to_ref + end + end +end + +function __fish_git_needs_command + # Figure out if the current invocation already has a command. + set -l cmd (commandline -opc) + set -e cmd[1] + argparse -s (__fish_git_global_optspecs) -- $cmd 2>/dev/null + or return 0 + # These flags function as commands, effectively. + set -q _flag_version; and return 1 + set -q _flag_html_path; and return 1 + set -q _flag_man_path; and return 1 + set -q _flag_info_path; and return 1 + if set -q argv[1] + # Also print the command, so this can be used to figure out what it is. + echo $argv[1] + return 1 + end + return 0 +end + +function __fish_git_config_keys + # Print already defined config values first + # Config keys may span multiple lines, so parse using null char + # With -z, key and value are separated by space, not "=" + __fish_git config -lz | while read -lz key value + # Print only first line of value(with an ellipsis) if multiline + printf '%s\t%s\n' $key (string replace \n …\n -- $value)[1] + end + # Print all recognized config keys; duplicates are not shown twice by fish + printf '%s\n' (__fish_git help --config)[1..-2] # Last line is a footer; ignore it +end + +# HACK: Aliases +# Git allows aliases, so we need to see what command the current command-token corresponds to +# (so we can complete e.g. `lg` like `log`). +# Checking `git config` for a lot of aliases can be quite slow if it is called +# for every possible command. +# Ideally, we'd `complete --wraps` this, but that is not currently possible, as is +# using `complete -C` like +# complete -c git -n '__fish_git_using_command lg' -a '(complete -C"git log ")' +# +# So instead, we store the aliases in global variables, named after the alias, containing the command. +# This is because alias:command is an n:1 mapping (an alias can only have one corresponding command, +# but a command can be aliased multiple times) + +# Approximately duplicates the logic from https://github.com/git/git/blob/d486ca60a51c9cb1fe068803c3f540724e95e83a/contrib/completion/git-completion.bash#L1130 +# The Git script also finds aliases that reference other aliases via a loop but this is fine for a PoC +function __fish_git_aliased_command + for word in (string split ' ' -- $argv) + switch $word + case !gitk gitk + echo gitk + return + # Adding " to the list + case '!*' '-*' '*=*' git '()' '{' : '\'*' '"*' + continue + case '*' + echo $word + return + end + end +end + +git config -z --get-regexp 'alias\..*' | while read -lz alias cmdline + set -l command (__fish_git_aliased_command $cmdline) + string match -q --regex '\w+' -- $command; or continue + # Git aliases can contain chars that variable names can't - escape them. + set -l alias (string replace 'alias.' '' -- $alias | string escape --style=var) + set -g __fish_git_alias_$alias $command +end + +function __fish_git_using_command + set -l cmd (__fish_git_needs_command) + test -z "$cmd" + and return 1 + contains -- $cmd $argv + and return 0 + + # Check aliases. + set -l varname __fish_git_alias_(string escape --style=var -- $cmd) + set -q $varname + and contains -- $$varname $argv + and return 0 + return 1 +end + +function __fish_git_stash_using_command + set -l cmd (commandline -opc) + __fish_git_using_command stash + or return 2 + # The word after the stash command _must_ be the subcommand + set cmd $cmd[(contains -i -- "stash" $cmd)..-1] + set -e cmd[1] + set -q cmd[1] + or return 1 + contains -- $cmd[1] $argv + and return 0 + return 1 +end + +function __fish_git_stash_not_using_subcommand + set -l cmd (commandline -opc) + __fish_git_using_command stash + or return 2 + set cmd $cmd[(contains -i -- "stash" $cmd)..-1] + set -q cmd[2] + and return 1 + return 0 +end + +function __fish_git_complete_worktrees + __fish_git worktree list --porcelain | string replace --regex --filter '^worktree\s*' '' +end + +function __fish_git_complete_stashes + __fish_git stash list --format=%gd:%gs 2>/dev/null | string replace ":" \t +end + +function __fish_git_aliases + __fish_git config -z --get-regexp '^alias\.' 2>/dev/null | while read -lz key value + begin + set -l name (string replace -r '^.*\.' '' -- $key) + # Only use the first line of the value as the description. + set -l val (printf '%s\n' $value)[1] + printf "%s\t%s\n" $name "Alias for $val" + end + end +end + +function __fish_git_custom_commands + # complete all commands starting with git- + # however, a few builtin commands are placed into $PATH by git because + # they're used by the ssh transport. We could filter them out by checking + # if any of these completion results match the name of the builtin git commands, + # but it's simpler just to blacklist these names. They're unlikely to change, + # and the failure mode is we accidentally complete a plumbing command. + for name in (string replace -r "^.*/git-([^/]*)" '$1' $PATH/git-*) + switch $name + case cvsserver receive-pack shell upload-archive upload-pack + # skip these + case \* + echo $name + end + end +end + +# Suggest branches for the specified remote - returns 1 if no known remote is specified +function __fish_git_branch_for_remote + set -l remotes (__fish_git_remotes) + set -l remote + set -l cmd (commandline -opc) + for r in $remotes + if contains -- $r $cmd + set remote $r + break + end + end + set -q remote[1] + or return 1 + __fish_git_branches | string replace -f -- "$remote/" '' +end + +# Return 0 if the current token is a possible commit-hash with at least 3 characters +function __fish_git_possible_commithash + set -q argv[1] + and set -l token $argv[1] + or set -l token (commandline -ct) + if string match -qr '^[0-9a-fA-F]{3,}$' -- $token + return 0 + end + return 1 +end + +function __fish_git_reflog + __fish_git reflog --no-decorate 2>/dev/null | string replace -r '[0-9a-f]* (.+@\{[0-9]+\}): (.*)$' '$1\t$2' +end + +function __fish_git_help_all_concepts + git help -g | string match -e -r '^ \w+' | while read -l concept desc + printf "%s\tConcept: %s\n" $concept (string trim $desc) + end +end + +function __fish_git_diff_opt -a option + switch $option + case diff-algorithm + printf "%b" " +default\tBasic greedy diff algorithm +myers\tBasic greedy diff algorithm +minimal\tMake smallest diff possible +patience\tPatience diff algorithm +histogram\tPatience algorithm with low-occurrence common elements" + case diff-filter + printf "%b" " +A\tAdded files +C\tCopied files +D\tDeleted files +M\tModified files +R\tRenamed files +T\tType changed files +U\tUnmerged files +X\tUnknown files +B\tBroken pairing files" + case dirstat + printf "%b" " +changes\tCount lines that have been removed from the source / added to the destination +lines\tRegular line-based diff analysis +files\tCount the number of files changed +cumulative\tCount changes in a child directory for the parent directory as well" + case ignore-submodules + printf "%b" " +none\tUntracked/modified files +untracked\tNot considered dirty when they only contain untracked content +dirty\tIgnore all changes to the work tree of submodules +all\tHide all changes to submodules (default)" + case submodule + printf "%b" " +short\tShow the name of the commits at the beginning and end of the range +log\tList the commits in the range +diff\tShow an inline diff of the changes" + case ws-error-highlight + printf "%b" " +context\tcontext lines of the diff +old\told lines of the diff +new\tnew lines of the diff +none\treset previous values +default\treset the list to 'new' +all\tShorthand for 'old,new,context'" + end +end + +function __fish_git_show_opt -a option + switch $option + case format pretty + printf "%b" " +oneline\t<sha1> <title line> +short\t<sha1> / <author> / <title line> +medium\t<sha1> / <author> / <author date> / <title> / <commit msg> +full\t<sha1> / <author> / <committer> / <title> / <commit msg> +fuller\t<sha1> / <author> / <author date> / <committer> / <committer date> / <title> / <commit msg> +email\t<sha1> <date> / <author> / <author date> / <title> / <commit msg> +raw\tShow the entire commit exactly as stored in the commit object +format:\tSpecify which information to show" + end +end + +function __fish_git_is_rebasing + test -e (__fish_git rev-parse --absolute-git-dir)/rebase-merge +end + +# general options +complete -f -c git -l help -d 'Display the manual of a git command' +complete -f -c git -n __fish_git_needs_command -l version -d 'Display version' +complete -x -c git -n __fish_git_needs_command -s C -a '(__fish_complete_directories)' -d 'Run as if git was started in this directory' +complete -x -c git -n __fish_git_needs_command -s c -a '(__fish_git config -l 2>/dev/null | string replace = \t)' -d 'Set a configuration option' +complete -x -c git -n __fish_git_needs_command -l exec-path -a '(__fish_complete_directories)' -d 'Get or set the path to the git programs' +complete -f -c git -n __fish_git_needs_command -l html-path -d 'Print the path to the html documentation' +complete -f -c git -n __fish_git_needs_command -l man-path -d 'Print the path to the man documentation' +complete -f -c git -n __fish_git_needs_command -l info-path -d 'Print the path to the info documentation' +complete -f -c git -n __fish_git_needs_command -s p -l paginate -d 'Pipe output into a pager' +complete -f -c git -n __fish_git_needs_command -l no-pager -d 'Do not pipe output into a pager' +complete -r -c git -n __fish_git_needs_command -l git-dir -d 'Set the path to the repository' +complete -r -c git -n __fish_git_needs_command -l work-tree -d 'Set the path to the working tree' +complete -f -c git -n __fish_git_needs_command -l namespace -d 'Set the namespace' +complete -f -c git -n __fish_git_needs_command -l bare -d 'Treat the repository as bare' +complete -f -c git -n __fish_git_needs_command -l no-replace-objects -d 'Do not use replacement refs to replace git objects' +complete -f -c git -n __fish_git_needs_command -l literal-pathspecs -d 'Treat pathspecs literally' +complete -f -c git -n __fish_git_needs_command -l glob-pathspecs -d 'Treat pathspecs as globs' +complete -f -c git -n __fish_git_needs_command -l noglob-pathspecs -d "Don't treat pathspecs as globs" +complete -f -c git -n __fish_git_needs_command -l icase-pathspecs -d 'Match pathspecs case-insensitively' + +# Options shared between multiple commands +complete -f -c git -n '__fish_git_using_command log show diff-tree rev-list' -l pretty -a '(__fish_git_show_opt pretty)' + +complete -c git -n '__fish_git_using_command diff show range-diff' -l abbrev -d 'Show only a partial prefix instead of the full 40-byte hexadecimal object name' +complete -c git -n '__fish_git_using_command diff show range-diff' -l binary -d 'Output a binary diff that can be applied with "git-apply"' +complete -c git -n '__fish_git_using_command diff show range-diff' -l check -d 'Warn if changes introduce conflict markers or whitespace errors' +complete -c git -n '__fish_git_using_command diff show range-diff' -l color -d 'Show colored diff' +complete -c git -n '__fish_git_using_command diff show range-diff' -l color-moved -d 'Moved lines of code are colored differently' +complete -c git -n '__fish_git_using_command diff show range-diff' -l color-words -d 'Equivalent to --word-diff=color plus --word-diff-regex=<regex>' +complete -c git -n '__fish_git_using_command diff show range-diff' -l compact-summary -d 'Output a condensed summary of extended header information' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l dst-prefix -d 'Show the given destination prefix instead of "b/"' +complete -c git -n '__fish_git_using_command diff show range-diff' -l ext-diff -d 'Allow an external diff helper to be executed' +complete -c git -n '__fish_git_using_command diff show range-diff' -l find-copies-harder -d 'Inspect unmodified files as candidates for the source of copy' +complete -c git -n '__fish_git_using_command diff show range-diff' -l find-object -d 'Look for differences that change the number of occurrences of the object' +complete -c git -n '__fish_git_using_command diff show range-diff' -l full-index -d 'Show the full pre- and post-image blob object names on the "index" line' +complete -c git -n '__fish_git_using_command diff show range-diff' -l histogram -d 'Generate a diff using the "histogram diff" algorithm' +complete -c git -n '__fish_git_using_command diff show range-diff' -l ignore-blank-lines -d 'Ignore changes whose lines are all blank' +complete -c git -n '__fish_git_using_command diff show range-diff' -l ignore-cr-at-eol -d 'Ignore carrige-return at the end of line when doing a comparison' +complete -c git -n '__fish_git_using_command diff show range-diff' -l ignore-space-at-eol -d 'Ignore changes in whitespace at EOL' +complete -c git -n '__fish_git_using_command diff show range-diff' -l indent-heuristic -d 'Enable the heuristic that shift diff hunk boundaries' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l inter-hunk-context -d 'Show the context between diff hunks, up to the specified number of lines' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l ita-invisible-in-index -d 'Make the entry appear as a new file in "git diff" and non-existent in "git diff -l cached"' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l line-prefix -d 'Prepend an additional prefix to every line of output' +complete -c git -n '__fish_git_using_command diff show range-diff' -l minimal -d 'Spend extra time to make sure the smallest possible diff is produced' +complete -c git -n '__fish_git_using_command diff show range-diff' -l name-only -d 'Show only names of changed files' +complete -c git -n '__fish_git_using_command diff show range-diff' -l name-status -d 'Show only names and status of changed files' +complete -c git -n '__fish_git_using_command diff show range-diff' -l no-color -d 'Turn off colored diff' +complete -c git -n '__fish_git_using_command diff show range-diff' -l no-ext-diff -d 'Disallow external diff drivers' +complete -c git -n '__fish_git_using_command diff show range-diff' -l no-indent-heuristic -d 'Disable the indent heuristic' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l no-prefix -d 'Do not show any source or destination prefix' +complete -c git -n '__fish_git_using_command diff show range-diff' -l no-renames -d 'Turn off rename detection' +complete -c git -n '__fish_git_using_command diff show range-diff' -l no-textconv -d 'Disallow external text conversion filters to be run when comparing binary files' +complete -c git -n '__fish_git_using_command diff show range-diff' -l numstat -d 'Shows number of added/deleted lines in decimal notation' +complete -c git -n '__fish_git_using_command diff show range-diff' -l patch-with-raw -d 'Synonym for -p --raw' +complete -c git -n '__fish_git_using_command diff show range-diff' -l patch-with-stat -d 'Synonym for -p --stat' +complete -c git -n '__fish_git_using_command diff show range-diff' -l patience -d 'Generate a diff using the "patience diff" algorithm' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l pickaxe-all -d 'When -S or -G finds a change, show all the changes in that changeset' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l pickaxe-regex -d 'Treat the <string> given to -S as an extended POSIX regular expression to match' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l relative -d 'Exclude changes outside the directory and show relative pathnames' +complete -c git -n '__fish_git_using_command diff show range-diff' -l shortstat -d 'Output only the last line of the --stat format containing total number of modified files' +complete -c git -n '__fish_git_using_command diff show range-diff log' -l src-prefix -d 'Show the given source prefix instead of "a/"' +complete -c git -n '__fish_git_using_command diff show range-diff' -l stat -d 'Generate a diffstat' +complete -c git -n '__fish_git_using_command diff show range-diff apply' -l stat -d 'Generate a diffstat' +complete -c git -n '__fish_git_using_command diff show range-diff' -l summary -d 'Output a condensed summary of extended header information' +complete -c git -n '__fish_git_using_command diff show range-diff' -l textconv -d 'Allow external text conversion filters to be run when comparing binary files' +complete -c git -n '__fish_git_using_command diff show range-diff' -l word-diff -d 'Show a word diff' +complete -c git -n '__fish_git_using_command diff show range-diff' -l word-diff-regex -d 'Use <regex> to decide what a word is' +complete -c git -n '__fish_git_using_command diff show range-diff log' -s a -l text -d 'Treat all files as text' +complete -c git -n '__fish_git_using_command diff show range-diff log' -s B -l break-rewrites -d 'Break complete rewrite changes into pairs of delete and create' +complete -c git -n '__fish_git_using_command diff show range-diff' -s b -l ignore-space-change -d 'Ignore changes in amount of whitespace' +complete -c git -n '__fish_git_using_command diff show range-diff log' -s C -l find-copies -d 'Detect copies as well as renames' +complete -c git -n '__fish_git_using_command diff show range-diff log' -s D -l irreversible-delete -d 'Omit the preimage for deletes' +complete -c git -n '__fish_git_using_command diff show range-diff log' -s G -d "Look for differences where <regex> matches the patch's added/removed lines" +complete -c git -n '__fish_git_using_command diff show range-diff log' -s M -l find-renames -d 'Detect and report renames' +complete -c git -n '__fish_git_using_command diff show range-diff log' -s R -d 'Swap inputs to create a reverse diff' +complete -c git -n '__fish_git_using_command diff show range-diff log' -s S -d 'Look for differences that change the number of occurrences of the string' +complete -c git -n '__fish_git_using_command diff show range-diff' -s W -l function-context -d 'Show whole surrounding functions of changes' +complete -c git -n '__fish_git_using_command diff show range-diff' -s w -l ignore-all-space -d 'Ignore whitespace when comparing lines' +complete -c git -n '__fish_git_using_command diff show range-diff' -s z -d 'Use NULs as output field/commit terminators' +complete -r -c git -n '__fish_git_using_command diff show range-diff log' -s O -d 'Control the order in which files appear in the output' +complete -f -c git -n '__fish_git_using_command diff show range-diff' -l anchored -d 'Generate a diff using the "anchored diff" algorithm' +complete -x -c git -n '__fish_git_using_command diff show range-diff log' -s l -d 'Prevents rename/copy detection when rename/copy targets exceed the given number' +complete -x -c git -n '__fish_git_using_command diff show range-diff' -l diff-filter -a '(__fish_git_diff_opt diff-filter)' -d 'Choose diff filters' +complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l diff-algorithm -a '(__fish_git_diff_opt diff-algorithm)' -d 'Choose a diff algorithm' +complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l dirstat -a '(__fish_git_diff_opt dirstat)' -d 'Output the distribution of relative amount of changes for each sub-directory' +complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l ignore-submodules -a '(__fish_git_diff_opt ignore-submodules)' -d 'Ignore changes to submodules in the diff generation' +complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l submodule -a '(__fish_git_diff_opt submodule)' -d 'Specify how differences in submodules are shown' +complete -x -c git -n '__fish_git_using_command diff log show range-diff' -l ws-error-highlight -a '(__fish_git_diff_opt ws-error-highlight)' -d 'Highlight whitespace errors in lines of the diff' + +#### fetch +complete -f -c git -n __fish_git_needs_command -a fetch -d 'Download objects and refs from another repository' +# Suggest "repository", then "refspec" - this also applies to e.g. push/pull +complete -f -c git -n '__fish_git_using_command fetch; and not __fish_git_branch_for_remote' -a '(__fish_git_remotes)' -d Remote +complete -f -c git -n '__fish_git_using_command fetch; and __fish_git_branch_for_remote' -a '(__fish_git_branch_for_remote)' +complete -f -c git -n '__fish_git_using_command fetch' -s q -l quiet -d 'Be quiet' +complete -f -c git -n '__fish_git_using_command fetch' -s v -l verbose -d 'Be verbose' +complete -f -c git -n '__fish_git_using_command fetch' -s a -l append -d 'Append ref names and object names' +# TODO --upload-pack +complete -f -c git -n '__fish_git_using_command fetch' -s f -l force -d 'Force update of local branches' +complete -f -c git -n '__fish_git_using_command fetch' -s p -l prune -d 'Remove remote-tracking references that no longer exist on the remote' +# TODO other options + +#### filter-branch +complete -f -c git -n __fish_git_needs_command -a filter-branch -d 'Rewrite branches' +complete -f -c git -n '__fish_git_using_command filter-branch' -l env-filter -d 'This filter may be used if you only need to modify the environment' +complete -f -c git -n '__fish_git_using_command filter-branch' -l tree-filter -d 'This is the filter for rewriting the tree and its contents' +complete -f -c git -n '__fish_git_using_command filter-branch' -l index-filter -d 'This is the filter for rewriting the index' +complete -f -c git -n '__fish_git_using_command filter-branch' -l parent-filter -d 'This is the filter for rewriting the commit' +complete -f -c git -n '__fish_git_using_command filter-branch' -l msg-filter -d 'This is the filter for rewriting the commit messages' +complete -f -c git -n '__fish_git_using_command filter-branch' -l commit-filter -d 'This is the filter for performing the commit' +complete -f -c git -n '__fish_git_using_command filter-branch' -l tag-name-filter -d 'This is the filter for rewriting tag names' +complete -f -c git -n '__fish_git_using_command filter-branch' -l subdirectory-filter -d 'Only look at the history which touches the given subdirectory' +complete -f -c git -n '__fish_git_using_command filter-branch' -l prune-empty -d 'Ignore empty commits generated by filters' +complete -f -c git -n '__fish_git_using_command filter-branch' -l original -d 'Use this option to set the namespace where the original commits will be stored' +complete -r -c git -n '__fish_git_using_command filter-branch' -s d -d 'Use this option to set the path to the temporary directory used for rewriting' +complete -c git -n '__fish_git_using_command filter-branch' -s f -l force -d 'Filter even with refs in refs/original or existing temp directory' + +### remote +set -l remotecommands add rm remove show prune update rename set-head set-url set-branches get-url +complete -f -c git -n __fish_git_needs_command -a remote -d 'Manage set of tracked repositories' +complete -f -c git -n '__fish_git_using_command remote' -a '(__fish_git_remotes)' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -s v -l verbose -d 'Be verbose' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a add -d 'Adds a new remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a rm -d 'Removes a remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a remove -d 'Removes a remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a show -d 'Shows a remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a prune -d 'Deletes all stale tracking branches' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a update -d 'Fetches updates' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a rename -d 'Renames a remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a set-head -d 'Sets the default branch for a remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a set-url -d 'Changes URLs for a remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a get-url -d 'Retrieves URLs for a remote' +complete -f -c git -n "__fish_git_using_command remote; and not __fish_seen_subcommand_from $remotecommands" -a set-branches -d 'Changes the list of branches tracked by a remote' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from add " -s f -d 'Once the remote information is set up git fetch <name> is run' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from add " -l tags -d 'Import every tag from a remote with git fetch <name>' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from add " -l no-tags -d "Don't import tags from a remote with git fetch <name>" +complete -f -c git -n '__fish_git_using_command remote; and __fish_seen_subcommand_from remove' -xa '(__fish_git_remotes)' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-branches" -l add -d 'Add to the list of currently tracked branches instead of replacing it' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-url" -l push -d 'Manipulate push URLs instead of fetch URLs' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-url" -l add -d 'Add new URL instead of changing the existing URLs' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from set-url" -l delete -d 'Remove URLs that match specified URL' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from get-url" -l push -d 'Query push URLs rather than fetch URLs' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from get-url" -l all -d 'All URLs for the remote will be listed' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from show" -s n -d 'Remote heads are not queried, cached information is used instead' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from prune" -l dry-run -d 'Report what will be pruned but do not actually prune it' +complete -f -c git -n "__fish_git_using_command remote; and __fish_seen_subcommand_from update" -l prune -d 'Prune all remotes that are updated' + +### show +complete -f -c git -n __fish_git_needs_command -a show -d 'Shows the last commit of a branch' +complete -f -c git -n '__fish_git_using_command show; and not contains -- -- (commandline -opc)' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command show; and not contains -- -- (commandline -opc)' -ka '(__fish_git_tags)' -d Tag +complete -f -c git -n '__fish_git_using_command show; and not contains -- -- (commandline -opc)' -ka '(__fish_git_commits)' +complete -f -c git -n '__fish_git_needs_rev_files; and not contains -- -- (commandline -opc)' -xa '(__fish_git_complete_rev_files)' +complete -F -c git -n '__fish_git_using_command show; and contains -- -- (commandline -opc)' +complete -f -c git -n '__fish_git_using_command show' -l format -d 'Pretty-print the contents of the commit logs in a given format' -a '(__fish_git_show_opt format)' +complete -f -c git -n '__fish_git_using_command show' -l abbrev-commit -d 'Show only a partial hexadecimal commit object name' +complete -f -c git -n '__fish_git_using_command show' -l no-abbrev-commit -d 'Show the full 40-byte hexadecimal commit object name' +complete -f -c git -n '__fish_git_using_command show' -l oneline -d 'Shorthand for "--pretty=oneline --abbrev-commit"' +complete -f -c git -n '__fish_git_using_command show' -l encoding -d 'Re-code the commit log message in the encoding' +complete -f -c git -n '__fish_git_using_command show' -l expand-tabs -d 'Perform a tab expansion in the log message' +complete -f -c git -n '__fish_git_using_command show' -l no-expand-tabs -d 'Do not perform a tab expansion in the log message' +complete -f -c git -n '__fish_git_using_command show' -l notes -k -a '(__fish_git_refs)' -d 'Show the notes that annotate the commit' +complete -f -c git -n '__fish_git_using_command show' -l no-notes -d 'Do not show notes' +complete -f -c git -n '__fish_git_using_command show' -l show-signature -d 'Check the validity of a signed commit object' + + +### show-branch +complete -f -c git -n __fish_git_needs_command -a show-branch -d 'Shows the commits on branches' +complete -f -c git -n '__fish_git_using_command show-branch' -k -a '(__fish_git_refs)' -d Rev +# TODO options + +### add +complete -c git -n __fish_git_needs_command -a add -d 'Add file contents to the index' +complete -c git -n '__fish_git_using_command add' -s n -l dry-run -d "Don't actually add the file(s)" +complete -c git -n '__fish_git_using_command add' -s v -l verbose -d 'Be verbose' +complete -c git -n '__fish_git_using_command add' -s f -l force -d 'Allow adding otherwise ignored files' +complete -c git -n '__fish_git_using_command add' -s i -l interactive -d 'Interactive mode' +complete -c git -n '__fish_git_using_command add' -s p -l patch -d 'Interactively choose hunks to stage' +complete -c git -n '__fish_git_using_command add' -s e -l edit -d 'Manually create a patch' +complete -c git -n '__fish_git_using_command add' -s u -l update -d 'Only match tracked files' +complete -c git -n '__fish_git_using_command add' -s A -l all -d 'Match files both in working tree and index' +complete -c git -n '__fish_git_using_command add' -s N -l intent-to-add -d 'Record only the fact that the path will be added later' +complete -c git -n '__fish_git_using_command add' -l refresh -d "Don't add the file(s), but only refresh their stat" +complete -c git -n '__fish_git_using_command add' -l chmod -xa "-x\t'Track file as non-executable' +x\t'Track file as executable'" +complete -c git -n '__fish_git_using_command add' -l ignore-errors -d 'Ignore errors' +complete -c git -n '__fish_git_using_command add' -l ignore-missing -d 'Check if any of the given files would be ignored' +# Renames also show up as untracked + deleted, and to get git to show it as a rename _both_ need to be added. +# However, we can't do that as it is two tokens, so we don't need renamed here. +complete -f -c git -n '__fish_git_using_command add' -a '(__fish_git_files modified untracked deleted unmerged modified-staged-deleted)' +# TODO options + +### am +complete -c git -n __fish_git_needs_command -a am -d 'Apply a series of patches from a mailbox' +complete -f -c git -n '__fish_git_using_command am' -s s -l signoff -d 'Add a Signed-off-By trailer to commit message' +complete -f -c git -n '__fish_git_using_command am' -l keep-non-patch -d 'Only strip bracket pairs containing \'PATCH\'' +complete -f -c git -n '__fish_git_using_command am' -l no-keep-cr -d 'Override am.keepcr to false' +complete -f -c git -n '__fish_git_using_command am' -s c -l scissors -d 'Remove everything in body before scissors' +complete -f -c git -n '__fish_git_using_command am' -l no-scissors -d 'Ignore scissor lines' +complete -x -c git -n '__fish_git_using_command am' -l quoted-cr -a 'nowarn warn strip' -d 'What to do when an email ends with CRLF' +complete -f -c git -n '__fish_git_using_command am' -l no-messageid -d 'Do not add message id to commit message' +complete -f -c git -n '__fish_git_using_command am' -s q -l quiet -d 'Supress logs' +complete -f -c git -n '__fish_git_using_command am' -l no-utf8 -d 'Disable all charset re-encoding of metadata' +complete -f -c git -n '__fish_git_using_command am' -s 3 -l 3way -d 'Fall back to three way merge on patch failure' +complete -f -c git -n '__fish_git_using_command am' -l no-3way -d 'Do not fall back to three way merge on patch failure' +complete -f -c git -n '__fish_git_using_command am' -l rerere-autoupdate -d 'Allow rerere to update index if possible' +complete -f -c git -n '__fish_git_using_command am' -l ignore-space-change -d 'Pass --ignore-space-change to git apply' +complete -F -c git -n '__fish_git_using_command am' -l directory -d 'Pass --directory to git apply' +complete -F -c git -n '__fish_git_using_command am' -l exclude -d 'Pass --exclude to git apply' +complete -F -c git -n '__fish_git_using_command am' -l include -d 'Pass --include to git apply' +complete -f -c git -n '__fish_git_using_command am' -l reject -d 'Pass --reject to git apply' +complete -x -f git -n '__fish_git_using_command am' -l patch-format -a 'mbox mboxrd stgit stgit-series hg' -d 'Specify the patch format' +complete -f -c git -n '__fish_git_using_command am' -s i -l interactive -d 'Run interactively' +complete -f -c git -n '__fish_git_using_command am' -l commiter-date-is-author-date -d 'Treat commiter date as author date' +complete -f -c git -n '__fish_git_using_command am' -l ignore-date -d 'Treat author date as commiter date' +complete -f -c git -n '__fish_git_using_command am' -l skip -d 'Skip current patch' +complete -x -c git -n '__fish_git_using_command am' -s S -l gpg-sign -a '(type -q gpg && __fish_complete_gpg_key_id gpg)' -d 'Sign commits with gpg' +complete -f -c git -n '__fish_git_using_command am' -l no-gpg-sign -d 'Do not sign commits' +complete -f -c git -n '__fish_git_using_command am' -s r -l resolved -l continue -d 'Mark patch failures as resolved' +complete -x -c git -n '__fish_git_using_command am' -l resolvemsg -d 'Message to print after patch failure' +complete -f -c git -n '__fish_git_using_command am' -l abort -d 'Abort patch operation and restore branch' +complete -f -c git -n '__fish_git_using_command am' -l quit -d 'Abort without restoring branch' +complete -c git -n '__fish_git_using_command am' -l show-current-patch -a 'diff raw' -d 'Show message at which patch failures occured' + +### checkout +complete -F -c git -n '__fish_git_using_command checkout; and contains -- -- (commandline -opc)' +complete -f -c git -n __fish_git_needs_command -a checkout -d 'Checkout and switch to a branch' +complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_tags)' -d Tag +complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_heads)' -d Head +complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_branches)' +complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_unique_remote_branches)' -d 'Unique Remote Branch' +complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_local_branches)' +complete -k -f -c git -n '__fish_git_using_command checkout; and not contains -- -- (commandline -opc)' -a '(__fish_git_recent_commits --all)' +complete -k -f -c git -n '__fish_git_using_command checkout' -a '(__fish_git_files modified deleted modified-staged-deleted)' +complete -f -c git -n '__fish_git_using_command checkout' -s b -d 'Create a new branch' +complete -f -c git -n '__fish_git_using_command checkout' -s t -l track -d 'Track a new branch' +complete -f -c git -n '__fish_git_using_command checkout' -l theirs -d 'Keep staged changes' +complete -f -c git -n '__fish_git_using_command checkout' -l ours -d 'Keep unmerged changes' +complete -f -c git -n '__fish_git_using_command checkout' -l recurse-submodules -d 'Update the work trees of submodules' +complete -f -c git -n '__fish_git_using_command checkout' -l no-recurse-submodules -d 'Do not update the work trees of submodules' +# TODO options + +### apply +complete -c git -n __fish_git_needs_command -a apply -d 'Apply a patch on a git index file and a working tree' +complete -f -c git -n '__fish_git_using_command apply' -l numstat -d 'Show number of additions and deletions' +complete -f -c git -n '__fish_git_using_command apply' -l summary -d 'Output a condensed summary' +complete -f -c git -n '__fish_git_using_command apply' -l check -d 'Just check if the patches can be applied' +complete -f -c git -n '__fish_git_using_command apply' -l index -d 'Apply patch to index and working tree' +complete -f -c git -n '__fish_git_using_command apply' -l cached -d 'Apply patch to index' +complete -f -c git -n '__fish_git_using_command apply' -l intent-to-add -d 'Add entry for file in index with no content' +complete -f -c git -n '__fish_git_using_command apply' -s 3 -l 3way -d 'Attempt a 3 way merge on conflicts' +complete -F -c git -n '__fish_git_using_command apply' -l build-fake-ancestor -d 'Build a temporary index containing these blobs' +complete -f -c git -n '__fish_git_using_command apply' -s R -l reverse -d 'Apply the patch in reverse' +complete -f -c git -n '__fish_git_using_command apply' -l reject -d 'Leave rejected hunks in *.rej files' +complete -f -c git -n '__fish_git_using_command apply; and __fish_contains_opt numstat' -s z -d 'Do not munge pathnames' +complete -x -c git -n '__fish_git_using_command apply am' -s p -d 'Remove n leading path components' +complete -x -c git -n '__fish_git_using_command apply am' -s C -d 'Ensure n that lines of surrounding context match' +complete -f -c git -n '__fish_git_using_command apply' -l unidiff-zero -d 'Do not break on diffs generated using --unified=0' +complete -f -c git -n '__fish_git_needs_command apply' -l apply -d 'Always apply patches' +complete -f -c git -n '__fish_git_using_command apply' -l no-add -d 'Ignore additions made by patches' +complete -f -c git -n '__fish_git_using_command apply' -l allow-binary-replacement -l binary -d 'Also patch binaries' +complete -F -c git -n '__fish_git_using_command apply' -l exclude -d 'Dont apply changes to files matching given pattern' +complete -F -c git -n '__fish_git_using_command apply' -l include -d 'Apply changes to files matching given pattern' +complete -f -c git -n '__fish_git_using_command apply am' -l ignore-space-change -l ignore-whitespace -d 'Ignore whitespace change in context lines' +complete -x -c git -n '__fish_git_using_command apply am' -l whitespace -a 'nowarn warn fix error error-all' -d 'Action to take when there are whitespace errors' +complete -f -c git -n '__fish_git_using_command apply' -l inaccurate-eof -d 'Work around some diff versions not detecting newlines at end of file' +complete -f -c git -n '__fish_git_using_command apply' -s v -l verbose -d 'Report progress to stderr' +complete -f -c git -n '__fish_git_using_command apply' -l recount -d 'Do not trust the line counts in the hunk headers' +complete -F -c git -n '__fish_git_using_command apply' -l directory -d 'Prepend given path to all filenames' +complete -f -c git -n '__fish_git_using_command apply' -l unsafe-paths -d 'Allow patches that work outside working area' + + +### archive +complete -f -c git -n __fish_git_needs_command -a archive -d 'Create an archive of files from a named tree' +# TODO options + +### bisect +complete -f -c git -n __fish_git_needs_command -a bisect -d 'Find the change that introduced a bug by binary search' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_prev_arg_in bisect' -xa " +start\t'Start a new bisect session' +bad\t'Mark a commit as bad' +new\t'Mark a commit as new' +good\t'Mark a commit as good' +old\t'Mark a commit as old' +terms\t'Show terms used for new/old states' +skip\t'Skip some commits' +reset\t'Exit a bisect session and reset HEAD' +visualize\t'See remaining commits in gitk' +replay\t'Replay a bisect log file' +log\t'Record a bisect log file' +run\t'Bisect automaically with the given command as discriminator' +help\t'Print a synopsis of all commands' +" +complete -c git -n '__fish_git_using_command bisect; and __fish_seen_argument --' -F +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l term-new -l term-bad -x -d 'Use another term instead of new/bad' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l term-old -l term-good -x -d 'Use another term instead of old/good' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l no-checkout -d 'Do not checkout tree, only update BISECT_HEAD' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start' -l first-parent -d 'On merge commits, follow only the first parent commit' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from start; and not contains -- -- (commandline -opc)' -a '(__fish_git_refs)' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from bad new good old' -a '(__fish_git_refs)' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from terms' -l --term-good -d 'Print the term for the old state' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from terms' -l --term-bad -d 'Print the term for the new state' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from skip' -a '(__fish_git_ranges)' +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from reset' -a '(__fish_git_refs)' +complete -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from replay' -F +complete -f -c git -n '__fish_git_using_command bisect; and __fish_seen_subcommand_from run' -xa '(__fish_complete_subcommand --fcs-skip=3)' + +### branch +complete -f -c git -n __fish_git_needs_command -a branch -d 'List, create, or delete branches' +complete -f -c git -n '__fish_git_using_command branch' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command branch' -s d -l delete -d 'Delete branch' -xa '(__fish_git_local_branches)' +complete -f -c git -n '__fish_git_using_command branch' -s D -d 'Force deletion of branch' -xa '(__fish_git_local_branches)' +complete -f -c git -n '__fish_git_using_command branch' -s f -l force -d 'Reset branch even if it already exists' +complete -f -c git -n '__fish_git_using_command branch' -s m -l move -d 'Rename branch' +complete -f -c git -n '__fish_git_using_command branch' -s M -d 'Force rename branch' +complete -f -c git -n '__fish_git_using_command branch' -s c -l copy -d 'Copy branch' +complete -f -c git -n '__fish_git_using_command branch' -s C -d 'Force copy branch' +complete -f -c git -n '__fish_git_using_command branch' -s a -l all -d 'Lists both local and remote branches' +complete -f -c git -n '__fish_git_using_command branch' -s t -l track -l track -d 'Track remote branch' +complete -f -c git -n '__fish_git_using_command branch' -l no-track -d 'Do not track remote branch' +complete -f -c git -n '__fish_git_using_command branch' -l set-upstream-to -d 'Set remote branch to track' +complete -f -c git -n '__fish_git_using_command branch' -l merged -d 'List branches that have been merged' +complete -f -c git -n '__fish_git_using_command branch' -l no-merged -d 'List branches that have not been merged' + +### cherry +complete -f -c git -n __fish_git_needs_command -a cherry -d 'Find commits yet to be applied to upstream [upstream [head]]' +complete -f -c git -n '__fish_git_using_command cherry' -s v -d 'Show the commit subjects next to the SHA1s' +complete -f -c git -n '__fish_git_using_command cherry' -k -a '(__fish_git_refs)' -d Upstream + +### cherry-pick +complete -f -c git -n __fish_git_needs_command -a cherry-pick -d 'Apply the change introduced by an existing commit' +complete -f -c git -n '__fish_git_using_command cherry-pick' -k -a '(__fish_git_ranges)' +# TODO: Filter further +complete -f -c git -n '__fish_git_using_command cherry-pick; and __fish_git_possible_commithash' -ka '(__fish_git_commits)' +complete -f -c git -n '__fish_git_using_command cherry-pick' -s e -l edit -d 'Edit the commit message prior to committing' +complete -f -c git -n '__fish_git_using_command cherry-pick' -s x -d 'Append info in generated commit on the origin of the cherry-picked change' +complete -f -c git -n '__fish_git_using_command cherry-pick' -s n -l no-commit -d 'Apply changes without making any commit' +complete -f -c git -n '__fish_git_using_command cherry-pick' -s s -l signoff -d 'Add Signed-off-by line to the commit message' +complete -f -c git -n '__fish_git_using_command cherry-pick' -l ff -d 'Fast-forward if possible' +complete -f -c git -n '__fish_git_using_command cherry-pick' -l continue -d 'Continue the operation in progress' +complete -f -c git -n '__fish_git_using_command cherry-pick' -l abort -d 'Cancel the operation' +complete -f -c git -n '__fish_git_using_command cherry-pick' -l skip -d 'Skip the current commit and continue with the rest of the sequence' + +### clone +complete -f -c git -n __fish_git_needs_command -a clone -d 'Clone a repository into a new directory' +complete -f -c git -n '__fish_git_using_command clone' -l no-hardlinks -d 'Copy files instead of using hardlinks' +complete -f -c git -n '__fish_git_using_command clone' -s q -l quiet -d 'Operate quietly and do not report progress' +complete -f -c git -n '__fish_git_using_command clone' -s v -l verbose -d 'Provide more information on what is going on' +complete -f -c git -n '__fish_git_using_command clone' -s n -l no-checkout -d 'No checkout of HEAD is performed after the clone is complete' +complete -f -c git -n '__fish_git_using_command clone' -l bare -d 'Make a bare Git repository' +complete -f -c git -n '__fish_git_using_command clone' -l mirror -d 'Set up a mirror of the source repository' +complete -f -c git -n '__fish_git_using_command clone' -s o -l origin -d 'Use a specific name of the remote instead of the default' +complete -f -c git -n '__fish_git_using_command clone' -s b -l branch -d 'Use a specific branch instead of the one used by the cloned repository' +complete -f -c git -n '__fish_git_using_command clone' -l depth -d 'Truncate the history to a specified number of revisions' +complete -f -c git -n '__fish_git_using_command clone' -l recursive -d 'Initialize all submodules within the cloned repository' + +### commit +complete -c git -n __fish_git_needs_command -a commit -d 'Record changes to the repository' +complete -c git -n '__fish_git_using_command commit' -l amend -d 'Amend the log message of the last commit' +complete -f -c git -n '__fish_git_using_command commit' -a '(__fish_git_files modified deleted modified-staged-deleted untracked)' +complete -c git -n '__fish_git_using_command commit' -s a -l all -d 'Automatically stage modified and deleted files' +complete -c git -n '__fish_git_using_command commit' -s p -l patch -d 'Use interactive patch selection interface' +complete -f -c git -n '__fish_git_using_command commit' -l fixup -d 'Fixup commit to be used with rebase --autosquash' +complete -f -c git -n '__fish_git_using_command commit' -l squash -d 'Squash commit to be used with rebase --autosquash' +complete -c git -n '__fish_git_using_command commit' -l reset-author -d 'When amending, reset author of commit to the committer' +complete -x -c git -n '__fish_git_using_command commit' -l author -d 'Override the commit author' +complete -x -c git -n '__fish_git_using_command commit' -l cleanup -a "strip\t'Leading/trailing whitespace/empty lines, #commentary' + whitespace\t'Like strip but keep #commentary' + verbatim\t'Do not change the message' + scissors\t'Like whitespace but also remove after scissor lines' + default\t'Like strip if the message is to be edited, whitespace otherwise'" -d 'How to clean up the commit message' +complete -x -c git -n '__fish_git_using_command commit' -l date -d 'Override the author date' +complete -x -c git -n '__fish_git_using_command commit' -s m -l message -d 'Use the given message as the commit message' +complete -f -c git -n '__fish_git_using_command commit' -l no-edit -d 'Use the selected commit message without launching an editor' +complete -f -c git -n '__fish_git_using_command commit' -l no-gpg-sign -d 'Do not sign commit' +complete -f -c git -n '__fish_git_using_command commit' -s n -l no-verify -d 'Do not run pre-commit and commit-msg hooks' +complete -f -c git -n '__fish_git_using_command commit; and __fish_contains_opt fixup squash' -k -a '(__fish_git_recent_commits)' +complete -f -c git -n '__fish_git_using_command commit' -l allow-empty -d 'Create a commit with no changes' +complete -f -c git -n '__fish_git_using_command commit' -l allow-empty-message -d 'Create a commit with no commit message' +# TODO options + +### count-objects +complete -f -c git -n __fish_git_needs_command -a count-objects -d 'Count unpacked number of objects and their disk consumption' +complete -f -c git -n '__fish_git_using_command count-objects' -s v -l verbose -d 'Be verbose' +complete -f -c git -n '__fish_git_using_command count-objects' -s H -l human-readable -d 'Print in human readable format' + +### daemon +complete -c git -n __fish_git_needs_command -a daemon -d 'A really simple server for git repositories' +complete -f -c git -n '__fish_git_using_command daemon' -l strict-paths -d 'Match paths exactly' +complete -F -c git -n '__fish_git_using_command daemon' -l base-path -d 'Git Root' +complete -f -c git -n '__fish_git_using_command daemon' -l base-path-relaxed -d 'When looking up with base path fails, try without it' +complete -F -c git -n '__fish_git_using_command daemon' -l interpolated-path -d 'Construct a path from the given template' +complete -f -c git -n '__fish_git_using_command daemon' -l export-all -d 'Allow pulling from all directories' +complete -f -c git -n '__fish_git_using_command daemon' -l inetd -d 'Run as inetd service' +complete -x -c git -n '__fish_git_using_command daemon' -l listen -d 'Listen on this IP' +complete -x -c git -n '__fish_git_using_command daemon' -l port -d 'Listen on this port' +complete -x -c git -n '__fish_git_using_command daemon' -l init-timeout -d 'Connection timeout' +complete -x -c git -n '__fish_git_using_command daemon' -l timeout -d 'Timeout for each request' +complete -x -c git -n '__fish_git_using_command daemon' -l max-connections -d 'Maximum parallel clients' +complete -f -c git -n '__fish_git_using_command daemon' -l syslog -d '--log-destination=syslog' +complete -x -c git -n '__fish_git_using_command daemon' -l log-destination -a 'stderr syslog none' -d 'Log destination' +complete -x -c git -n '__fish_git_using_command daemon' -l user-path -d 'Allow ~user notation to be used' +complete -f -c git -n '__fish_git_using_command daemon' -l verbose -d 'Log all details' +complete -f -c git -n '__fish_git_using_command daemon' -l reuseaddr -d 'Reuse address when binding to listening server' +complete -f -c git -n '__fish_git_using_command daemon' -l detach -d 'Detach from shell' +complete -x -c git -n '__fish_git_using_command daemon' -l reuseaddr -d 'Save the process id in file' +complete -x -c git -n '__fish_git_using_command daemon' -l user -d 'Change daemon\'s uid' +complete -x -c git -n '__fish_git_using_command daemon' -l group -d 'Change daemon\'s gid' +complete -x -c git -n '__fish_git_using_command daemon' -l enable -a 'upload-pack upload-archive receive-pack' -d 'Enable service' +complete -x -c git -n '__fish_git_using_command daemon' -l disable -a 'upload-pack upload-archive receive-pack' -d 'Disable service' +complete -x -c git -n '__fish_git_using_command daemon' -l allow-override -a 'upload-pack upload-archive receive-pack' -d 'Allow overriding site-wide default per repository configuration' +complete -x -c git -n '__fish_git_using_command daemon' -l forbid-override -a 'upload-pack upload-archive receive-pack' -d 'Forbid overriding site-wide default per repository configuration' +complete -f -c git -n '__fish_git_using_command daemon' -l informative-errors -d 'Report more verbose errors to clients' +complete -f -c git -n '__fish_git_using_command daemon' -l no-informative-errors -d 'Report less verbose errors to clients' +complete -x -c git -n '__fish_git_using_command daemon' -l access-hook -d 'Hook to run whenever a client connects' + +### describe +complete -c git -n __fish_git_needs_command -a describe -d 'Give an object a human readable name based on an available ref' +complete -k -f -c git -n '__fish_git_using_command describe' -a '(__fish_git_tags)' -d Tag +complete -k -f -c git -n '__fish_git_using_command describe' -a '(__fish_git_branches)' +complete -k -f -c git -n '__fish_git_using_command describe' -a '(__fish_git_heads)' -d Head +complete -f -c git -n '__fish_git_using_command describe' -l dirty -d 'Describe the state of the working tree, append dirty if there are local changes' +complete -f -c git -n '__fish_git_using_command describe' -l broken -d 'Describe the state of the working tree, append -broken instead of erroring' +complete -f -c git -n '__fish_git_using_command describe' -l all -d 'Use all tags, not just annotated' +complete -f -c git -n '__fish_git_using_command describe' -l tags -d 'Use all commits/tags, not just annotated tags' +complete -f -c git -n '__fish_git_using_command describe' -l contains -d 'Find the tag that comes after the commit' +complete -f -c git -n '__fish_git_using_command describe' -l abbrev -d 'Use <n> digits, or as many digits as needed to form a unique object name' +complete -f -c git -n '__fish_git_using_command describe' -l candidates -d 'Consider up to <n> candidates' +complete -f -c git -n '__fish_git_using_command describe' -l exact-match -d 'Only output exact matches' +complete -f -c git -n '__fish_git_using_command describe' -l debug -d 'Display debug info' +complete -f -c git -n '__fish_git_using_command describe' -l long -d 'Always output the long format' +complete -f -c git -n '__fish_git_using_command describe' -l match -d 'Only consider tags matching the given glob pattern' +complete -f -c git -n '__fish_git_using_command describe' -l exclude -d 'Do not consider tags matching the given glob pattern' +complete -f -c git -n '__fish_git_using_command describe' -l always -d 'Show uniquely abbreviated commit object as fallback' +complete -f -c git -n '__fish_git_using_command describe' -l first-parent -d 'Follow only the first parent of a merge commit' + +### diff +complete -c git -n __fish_git_needs_command -a diff -d 'Show changes between commits, commit and working tree, etc' +complete -c git -n '__fish_git_using_command diff; and not contains -- -- (commandline -opc)' -k -a '(__fish_git_ranges)' +complete -c git -n '__fish_git_using_command diff' -l cached -d 'Show diff of changes in the index' +complete -c git -n '__fish_git_using_command diff' -l staged -d 'Show diff of changes in the index' +complete -c git -n '__fish_git_using_command diff' -l no-index -d 'Compare two paths on the filesystem' +complete -c git -n '__fish_git_using_command diff' -l exit-code -d 'Exit with 1 if there were differences or 0 if no differences' +complete -c git -n '__fish_git_using_command diff' -l quiet -d 'Disable all output of the program, implies --exit-code' +complete -c git -n '__fish_git_using_command diff' -s 1 -l base -d 'Compare the working tree with the "base" version' +complete -c git -n '__fish_git_using_command diff' -s 2 -l ours -d 'Compare the working tree with the "our branch"' +complete -c git -n '__fish_git_using_command diff' -s 3 -l theirs -d 'Compare the working tree with the "their branch"' +complete -c git -n '__fish_git_using_command diff' -s 0 -d 'Omit diff output for unmerged entries and just show "Unmerged"' +complete -c git -n '__fish_git_using_command diff; and not __fish_contains_opt cached staged' -a '( + set -l kinds modified + contains -- -- (commandline -opc) && set -a kinds deleted modified-staged-deleted + __fish_git_files $kinds +)' +complete -c git -n '__fish_git_using_command diff; and __fish_contains_opt cached staged' -fa '(__fish_git_files all-staged)' + +### Function to list available tools for git difftool and mergetool + +function __fish_git_diffmerge_tools -a cmd + git $cmd --tool-help | while read -l line + string match -q 'The following tools are valid, but not currently available:' -- $line + and break + string replace -f -r '^\t\t(\w+).*$' '$1' -- $line + end +end + +### difftool +complete -c git -n __fish_git_needs_command -a difftool -d 'Open diffs in a visual tool' +complete -c git -n '__fish_git_using_command difftool; and not contains -- -- (commandline -opc)' -k -a '(__fish_git_ranges)' +complete -c git -n '__fish_git_using_command difftool' -l cached -d 'Visually show diff of changes in the index' +complete -f -c git -n '__fish_git_using_command difftool' -a '( + set -l kinds modified + contains -- -- (commandline -opc) && set -a kinds deleted modified-staged-deleted + __fish_git_files $kinds +)' +complete -f -c git -n '__fish_git_using_command difftool' -s g -l gui -d 'Use `diff.guitool` instead of `diff.tool`' +complete -f -c git -n '__fish_git_using_command difftool' -s d -l dir-diff -d 'Perform a full-directory diff' +complete -c git -n '__fish_git_using_command difftool' -l prompt -d 'Prompt before each invocation of the diff tool' +complete -f -c git -n '__fish_git_using_command difftool' -s y -l no-prompt -d 'Do not prompt before launching a diff tool' +complete -f -c git -n '__fish_git_using_command difftool' -l symlinks -d 'Use symlinks in dir-diff mode' +complete -f -c git -n '__fish_git_using_command difftool' -s t -l tool -d 'Use the specified diff tool' -a "(__fish_git_diffmerge_tools difftool)" +complete -f -c git -n '__fish_git_using_command difftool' -l tool-help -d 'Print a list of diff tools that may be used with `--tool`' +complete -f -c git -n '__fish_git_using_command difftool' -l trust-exit-code -d 'Exit when an invoked diff tool returns a non-zero exit code' +complete -f -c git -n '__fish_git_using_command difftool' -s x -l extcmd -d 'Specify a custom command for viewing diffs' +# TODO options + +### gc +complete -f -c git -n __fish_git_needs_command -a gc -d 'Cleanup unnecessary files and optimize the local repository' +complete -f -c git -n '__fish_git_using_command gc' -l aggressive -d 'Aggressively optimize the repository' +complete -f -c git -n '__fish_git_using_command gc' -l auto -d 'Checks any housekeeping is required and then run' +complete -f -c git -n '__fish_git_using_command gc' -l prune -d 'Prune loose objects older than date' +complete -f -c git -n '__fish_git_using_command gc' -l no-prune -d 'Do not prune any loose objects' +complete -f -c git -n '__fish_git_using_command gc' -l quiet -d 'Be quiet' +complete -f -c git -n '__fish_git_using_command gc' -l force -d 'Force `git gc` to run' +complete -f -c git -n '__fish_git_using_command gc' -l keep-largest-pack -d 'Ignore `gc.bigPackThreshold`' + +### grep +complete -c git -n __fish_git_needs_command -a grep -d 'Print lines matching a pattern' +# TODO options + +### init +complete -f -c git -n __fish_git_needs_command -a init -d 'Create an empty git repository or reinitialize an existing one' +# TODO options + +### log +complete -c git -n __fish_git_needs_command -a shortlog -d 'Show commit shortlog' +complete -c git -n __fish_git_needs_command -a log -d 'Show commit logs' +complete -c git -n '__fish_git_using_command log; and not contains -- -- (commandline -opc)' -k -a '(__fish_git_ranges)' + +complete -c git -n '__fish_git_using_command log' -l follow -d 'Continue listing file history beyond renames' +complete -c git -n '__fish_git_using_command log' -l no-decorate -d 'Don\'t print ref names' +complete -f -c git -n '__fish_git_using_command log' -l decorate -a 'short\tHide\ prefixes full\tShow\ full\ ref\ names auto\tHide\ prefixes\ if\ printed\ to\ terminal no\tDon\\\'t\ display\ ref' -d 'Print out ref names' +complete -c git -n '__fish_git_using_command log' -l source -d 'Print ref name by which each commit was reached' +complete -c git -n '__fish_git_using_command log' -l use-mailmap +complete -c git -n '__fish_git_using_command log' -l full-diff +complete -c git -n '__fish_git_using_command log' -l log-size +complete -x -c git -n '__fish_git_using_command log' -s L +complete -x -c git -n '__fish_git_using_command log' -s n -l max-count -d 'Limit the number of commits before starting to show the commit output' +complete -x -c git -n '__fish_git_using_command log' -l skip -d 'Skip given number of commits' +complete -x -c git -n '__fish_git_using_command log' -l since -d 'Show commits more recent than specified date' +complete -x -c git -n '__fish_git_using_command log' -l after -d 'Show commits more recent than specified date' +complete -x -c git -n '__fish_git_using_command log' -l until -d 'Show commits older than specified date' +complete -x -c git -n '__fish_git_using_command log' -l before -d 'Show commits older than specified date' +complete -x -c git -n '__fish_git_using_command log' -l author -d 'Limit commits from given author' +complete -x -c git -n '__fish_git_using_command log' -l committer -d 'Limit commits from given committer' +complete -x -c git -n '__fish_git_using_command log' -l grep-reflog -d 'Limit commits to ones with reflog entries matching given pattern' +complete -x -c git -n '__fish_git_using_command log' -l grep -d 'Limit commits with message that match given pattern' +complete -c git -n '__fish_git_using_command log' -l all-match -d 'Limit commits to ones that match all given --grep' +complete -c git -n '__fish_git_using_command log' -l invert-grep -d 'Limit commits to ones with message that don\'t match --grep' +complete -c git -n '__fish_git_using_command log' -l regexp-ignore-case -s i -d 'Case insensitive match' +complete -c git -n '__fish_git_using_command log' -l basic-regexp -d 'Patterns are basic regular expressions (default)' +complete -c git -n '__fish_git_using_command log' -l extended-regexp -s E -d 'Patterns are extended regular expressions' +complete -c git -n '__fish_git_using_command log' -l fixed-strings -s F -d 'Patterns are fixed strings' +complete -c git -n '__fish_git_using_command log' -l perl-regexp -d 'Patterns are Perl-compatible regular expressions' +complete -c git -n '__fish_git_using_command log' -l remove-empty -d 'Stop when given path disappears from tree' +complete -c git -n '__fish_git_using_command log' -l merges -d 'Print only merge commits' +complete -c git -n '__fish_git_using_command log' -l no-merges -d 'Don\'t print commits with more than one parent' +complete -x -c git -n '__fish_git_using_command log' -l min-parents -d 'Show only commit with at least the given number of parents' +complete -x -c git -n '__fish_git_using_command log' -l max-parents -d 'Show only commit with at most the given number of parents' +complete -c git -n '__fish_git_using_command log' -l no-min-parents -d 'Show only commit without a minimum number of parents' +complete -c git -n '__fish_git_using_command log' -l no-max-parents -d 'Show only commit without a maximum number of parents' +complete -c git -n '__fish_git_using_command log' -l first-parent -d 'Follow only the first parent commit upon seeing a merge commit' +complete -c git -n '__fish_git_using_command log' -l not -d 'Reverse meaning of ^ prefix' +complete -c git -n '__fish_git_using_command log' -l all -d 'Show log for all branches, tags, and remotes' +complete -f -c git -n '__fish_git_using_command log' -l branches -d 'Show log for all matching branches' +complete -f -c git -n '__fish_git_using_command log' -l tags -d 'Show log for all matching tags' +complete -f -c git -n '__fish_git_using_command log' -l remotes -d 'Show log for all matching remotes' +complete -x -c git -n '__fish_git_using_command log' -l glob -d 'Show log for all matching branches, tags, and remotes' +complete -x -c git -n '__fish_git_using_command log' -l exclude -d 'Do not include refs matching given glob pattern' +complete -c git -n '__fish_git_using_command log' -l reflog -d 'Show log for all reflogs entries' +complete -c git -n '__fish_git_using_command log' -l ingnore-missing -d 'Ignore invalid object names' +complete -c git -n '__fish_git_using_command log' -l bisect +complete -c git -n '__fish_git_using_command log' -l stdin -d 'Read commits from stdin' +complete -c git -n '__fish_git_using_command log' -l cherry-mark -d 'Mark equivalent commits with = and inequivalent with +' +complete -c git -n '__fish_git_using_command log' -l cherry-pick -d 'Omit equivalent commits' +complete -c git -n '__fish_git_using_command log' -l left-only +complete -c git -n '__fish_git_using_command log' -l rigth-only +complete -c git -n '__fish_git_using_command log' -l cherry +complete -c git -n '__fish_git_using_command log' -l walk-reflogs -s g +complete -c git -n '__fish_git_using_command log' -l merge +complete -c git -n '__fish_git_using_command log' -l boundary +complete -c git -n '__fish_git_using_command log' -l simplify-by-decoration +complete -c git -n '__fish_git_using_command log' -l full-history +complete -c git -n '__fish_git_using_command log' -l dense +complete -c git -n '__fish_git_using_command log' -l sparse +complete -c git -n '__fish_git_using_command log' -l simplify-merges +complete -c git -n '__fish_git_using_command log' -l ancestry-path +complete -c git -n '__fish_git_using_command log' -l date-order +complete -c git -n '__fish_git_using_command log' -l author-date-order +complete -c git -n '__fish_git_using_command log' -l topo-order +complete -c git -n '__fish_git_using_command log' -l reverse +complete -f -c git -n '__fish_git_using_command log' -l no-walk -a "sorted unsorted" +complete -c git -n '__fish_git_using_command log' -l do-walk +complete -c git -n '__fish_git_using_command log' -l format +complete -c git -n '__fish_git_using_command log' -l abbrev-commit +complete -c git -n '__fish_git_using_command log' -l no-abbrev-commit +complete -c git -n '__fish_git_using_command log' -l oneline +complete -x -c git -n '__fish_git_using_command log' -l encoding -a '(__fish_print_encodings)' +complete -f -c git -n '__fish_git_using_command log' -l expand-tabs +complete -c git -n '__fish_git_using_command log' -l no-expand-tabs +complete -f -c git -n '__fish_git_using_command log' -l notes +complete -c git -n '__fish_git_using_command log' -l no-notes +complete -f -c git -n '__fish_git_using_command log' -l show-notes +complete -c git -n '__fish_git_using_command log' -l standard-notes +complete -c git -n '__fish_git_using_command log' -l no-standard-notes +complete -c git -n '__fish_git_using_command log' -l show-signature +complete -c git -n '__fish_git_using_command log' -l relative-date +complete -x -c git -n '__fish_git_using_command log' -l date -a ' + relative + local + iso + iso-local + iso8601 + iso8601-local + iso-strict + iso-strict-local + iso8601-strict + iso8601-strict-local + rfc-local + rfc2822-local + short + short-local + raw + human + unix + format: + default + default-local +' +complete -c git -n '__fish_git_using_command log' -l parents +complete -c git -n '__fish_git_using_command log' -l children +complete -c git -n '__fish_git_using_command log' -l left-right +complete -c git -n '__fish_git_using_command log' -l graph +complete -f -c git -n '__fish_git_using_command log' -l show-linear-break +complete -c git -n '__fish_git_using_command log' -s c +complete -c git -n '__fish_git_using_command log' -l cc +complete -c git -n '__fish_git_using_command log' -s m +complete -c git -n '__fish_git_using_command log' -s r +complete -c git -n '__fish_git_using_command log' -s t +complete -c git -n '__fish_git_using_command log' -l patch -s p +complete -c git -n '__fish_git_using_command log' -s u +complete -c git -n '__fish_git_using_command log' -l no-patch -s s +complete -x -c git -n '__fish_git_using_command log' -l unified -s U +complete -c git -n '__fish_git_using_command log' -l raw +complete -c git -n '__fish_git_using_command log' -l patch-with-raw +complete -c git -n '__fish_git_using_command log' -l indent-heuristic +complete -c git -n '__fish_git_using_command log' -l no-indent-heuristic +complete -c git -n '__fish_git_using_command log' -l compaction-heuristic +complete -c git -n '__fish_git_using_command log' -l no-compaction-heuristic +complete -c git -n '__fish_git_using_command log' -l minimal +complete -c git -n '__fish_git_using_command log' -l patience +complete -c git -n '__fish_git_using_command log' -l histogram +complete -f -x -c git -n '__fish_git_using_command log' -l stat +complete -c git -n '__fish_git_using_command log' -l numstat +complete -c git -n '__fish_git_using_command log' -l shortstat +complete -c git -n '__fish_git_using_command log' -l summary +complete -c git -n '__fish_git_using_command log' -l patch-with-stat +complete -c git -n '__fish_git_using_command log' -s z +complete -c git -n '__fish_git_using_command log' -l name-only +complete -c git -n '__fish_git_using_command log' -l name-status +complete -f -c git -n '__fish_git_using_command log' -l color -a 'always never auto' +complete -c git -n '__fish_git_using_command log' -l no-color +complete -f -c git -n '__fish_git_using_command log' -l word-diff -a ' + color + plain + porcelain + none +' +complete -f -c git -n '__fish_git_using_command log' -l color-words +complete -c git -n '__fish_git_using_command log' -l no-renames +complete -c git -n '__fish_git_using_command log' -l check +complete -c git -n '__fish_git_using_command log' -l full-index +complete -c git -n '__fish_git_using_command log' -l binary +complete -f -c git -n '__fish_git_using_command log' -l abbrev +complete -f -c git -n '__fish_git_using_command log' -s l + +function __fish__git_append_letters_nosep + set -l token (commandline -tc) + printf "%s\n" $token$argv +end + +complete -x -c git -n '__fish_git_using_command log' -l diff-filter -a '(__fish__git_append_letters_nosep a\tExclude\ added c\tExclude\ copied d\tExclude\ deleted m\tExclude\ modified r\tExclude\ renamed t\tExclude\ type\ changed u\tExclude\ unmerged x\tExclude\ unknown b\tExclude\ broken A\tAdded C\tCopied D\tDeleted M\tModified R\tRenamed T\tType\ Changed U\tUnmerged X\tUnknown B\tBroken)' + +### ls-files +complete -c git -n __fish_git_needs_command -a ls-files -d 'Show information about files in the index and the working tree' +complete -c git -n '__fish_git_using_command ls-files' +complete -c git -n '__fish_git_using_command ls-files' -s c -l cached -d 'Show cached files in the output' +complete -c git -n '__fish_git_using_command ls-files' -s d -l deleted -d 'Show deleted files in the output' +complete -c git -n '__fish_git_using_command ls-files' -s m -l modified -d 'Show modified files in the output' +complete -c git -n '__fish_git_using_command ls-files' -s o -l others -d 'Show other (i.e. untracked) files in the output' +complete -c git -n '__fish_git_using_command ls-files' -s i -l ignored -d 'Show only ignored files in the output' +complete -c git -n '__fish_git_using_command ls-files' -s s -l staged -d "Show staged contents' mode bits, object name and stage number in the output" +complete -c git -n '__fish_git_using_command ls-files' -l directory -d 'If a whole directory is classified as "other", show just its name' +complete -c git -n '__fish_git_using_command ls-files' -l no-empty-directory -d 'Do not list empty directories' +complete -c git -n '__fish_git_using_command ls-files' -s u -l unmerged -d 'Show unmerged files in the output' +complete -c git -n '__fish_git_using_command ls-files' -s k -l killed -d 'Show files on the filesystem that need to be removed for checkout-index to succeed' +complete -c git -n '__fish_git_using_command ls-files' -s z -d 'Use \0 delimiter' +complete -c git -n '__fish_git_using_command ls-files' -s x -l exclude -d 'Skip untracked files matching pattern' +complete -c git -n '__fish_git_using_command ls-files' -s X -l exclude-from -d 'Read exclude patterns from <file>; 1 per line' +complete -c git -n '__fish_git_using_command ls-files' -l exclude-per-directory -d 'Read extra exclude patterns that apply only to the dir and its subdirs in <file>' +complete -c git -n '__fish_git_using_command ls-files' -l exclude-standard -d 'Add the standard Git exclusions' +complete -c git -n '__fish_git_using_command ls-files' -l error-unmatch -d 'If any <file> does not appear in the index, treat this as an error' +complete -c git -n '__fish_git_using_command ls-files' -l with-tree +complete -c git -n '__fish_git_using_command ls-files' -s t -d 'Identifies the file status' +complete -c git -n '__fish_git_using_command ls-files' -s v -d 'Show file status, use lowercase letters for files assumed unchanged' +complete -c git -n '__fish_git_using_command ls-files' -s f -d 'Show file status, use lowercase letters for files marked as fsmonitor valid' +complete -c git -n '__fish_git_using_command ls-files' -l full-name -d 'Force paths to be output relative to the project top directory' +complete -c git -n '__fish_git_using_command ls-files' -l recurse-submodules -d 'Recursively calls ls-files on each submodule in the repository' +complete -c git -n '__fish_git_using_command ls-files' -l abbrev -d 'Show only a partial prefix' +complete -c git -n '__fish_git_using_command ls-files' -l debug -d 'After each line that describes a file, add more data about its cache entry' +complete -c git -n '__fish_git_using_command ls-files' -l eol -d 'Show <eolinfo> and <eolattr> of files' + +### mailinfo +complete -f -c git -n __fish_git_needs_command -a mailinfo -d 'Extracts patch and authorship from a single e-mail message' +complete -f -c git -n '__fish_git_using_command mailinfo am' -s k -d 'Do not remove email cruft from subject' +complete -f -c git -n '__fish_git_using_command mailinfo' -s b -d 'Only strip bracket pairs containing \'PATCH\'' +complete -f -c git -n '__fish_git_using_command mailinfo am' -s u -d 'Do not reencode author name and email' +complete -x -c git -n '__fish_git_using_command mailinfo' -l encoding -d 'Re-encode to given charset' +complete -f -c git -n '__fish_git_using_command mailinfo' -s n -d 'Disable all charset re-encoding of metadata' +complete -f -c git -n '__fish_git_using_command mailinfo am' -s m -l message-id -d 'Copy message id to the end of commit message' +complete -f -c git -n '__fish_git_using_command mailinfo' -l scissors -d 'Remove everything above scissor line' +complete -f -c git -n '__fish_git_using_command mailinfo' -l no-scissors -d 'Ignore scissor lines' +complete -x -c git -n '__fish_git_using_command mailinfo' -l quoted-cr -a 'nowarn warn strip' -d 'Action when processed email message end with CRLF instead of LF' + +### mailsplit +complete -c git -n __fish_git_needs_command -a mailsplit -d 'Simple UNIX mbox splitter program' +complete -F -c git -n '__fish_git_using_command mailsplit' -s o -d 'Directory to place individual messages' +complete -f -c git -n '__fish_git_using_command mailsplit' -s b -d 'Treat files not starting with From line as single mail message' +complete -x -c git -n '__fish_git_using_command mailsplit' -s d -d 'File name prefix digit precision' +complete -x -c git -n '__fish_git_using_command mailsplit' -s f -d 'Skip first n numbers' +complete -f -c git -n '__fish_git_using_command mailsplit am' -l keep-cr -d 'Do not remove \\r from lines starting with \\n\\r' +complete -f -c git -n '__fish_git_using_command mailsplit' -l mboxrd -d 'Input is of mboxrd form' + +### maintenance +complete -f -c git -n __fish_git_needs_command -a maintenance -d 'Run tasks to optimize Git repository data' +complete -f -c git -n '__fish_git_using_command maintenance' -a register -d 'Initialize Git config vars for maintenance' +complete -f -c git -n '__fish_git_using_command maintenance' -a run -d 'Run one or more maintenance tasks' +complete -f -c git -n '__fish_git_using_command maintenance' -a start -d 'Start maintenance' +complete -f -c git -n '__fish_git_using_command maintenance' -a stop -d 'Halt background maintenance' +complete -f -c git -n '__fish_git_using_command maintenance' -a unregister -d 'Remove repository from background maintenance' +complete -f -c git -n '__fish_git_using_command maintenance' -l quiet -d 'Supress logs' +complete -x -c git -n '__fish_git_using_command maintenance' -l task -a 'commit-graph prefetch gc loose-objects incremental-repack pack-refs' -d 'Tasks to run' +complete -f -c git -n '__fish_git_using_command maintenance' -l auto -d 'Run maintenance only when necessary' +complete -f -c git -n '__fish_git_using_command maintenance' -l schedule -d 'Run maintenance on certain intervals' + +### merge +complete -f -c git -n __fish_git_needs_command -a merge -d 'Join two or more development histories together' +complete -f -c git -n '__fish_git_using_command merge' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command merge' -l commit -d "Autocommit the merge" +complete -f -c git -n '__fish_git_using_command merge' -l no-commit -d "Don't autocommit the merge" +complete -f -c git -n '__fish_git_using_command merge' -s e -l edit -d 'Edit auto-generated merge message' +complete -f -c git -n '__fish_git_using_command merge' -l no-edit -d "Don't edit auto-generated merge message" +complete -f -c git -n '__fish_git_using_command merge' -l ff -d "Don't generate a merge commit if merge is fast-forward" +complete -f -c git -n '__fish_git_using_command merge' -l no-ff -d "Generate a merge commit even if merge is fast-forward" +complete -f -c git -n '__fish_git_using_command merge' -l ff-only -d 'Refuse to merge unless fast-forward possible' +complete -f -c git -n '__fish_git_using_command merge' -s S -l gpg-sign -d 'GPG-sign the merge commit' +complete -f -c git -n '__fish_git_using_command merge' -l log -d 'Populate the log message with one-line descriptions' +complete -f -c git -n '__fish_git_using_command merge' -l no-log -d "Don't populate the log message with one-line descriptions" +complete -f -c git -n '__fish_git_using_command merge' -l signoff -d 'Add Signed-off-by line at the end of the merge commit message' +complete -f -c git -n '__fish_git_using_command merge' -l no-signoff -d 'Do not add a Signed-off-by line at the end of the merge commit message' +complete -f -c git -n '__fish_git_using_command merge' -l stat -d "Show diffstat of the merge" +complete -f -c git -n '__fish_git_using_command merge' -s n -l no-stat -d "Don't show diffstat of the merge" +complete -f -c git -n '__fish_git_using_command merge' -l squash -d "Squash changes from other branch as a single commit" +complete -f -c git -n '__fish_git_using_command merge' -l no-squash -d "Don't squash changes" +complete -x -c git -n '__fish_git_using_command merge' -s s -l strategy -d 'Use the given merge strategy' +complete -r -c git -n '__fish_git_using_command merge' -s X -l strategy-option -d 'Pass given option to the merge strategy' +complete -f -c git -n '__fish_git_using_command merge' -l verify-signatures -d 'Abort merge if other branch tip commit is not signed with a valid key' +complete -f -c git -n '__fish_git_using_command merge' -l no-verify-signatures -d 'Do not abort merge if other branch tip commit is not signed with a valid key' +complete -f -c git -n '__fish_git_using_command merge' -s q -l quiet -d 'Be quiet' +complete -f -c git -n '__fish_git_using_command merge' -s v -l verbose -d 'Be verbose' +complete -f -c git -n '__fish_git_using_command merge' -l progress -d 'Force progress status' +complete -f -c git -n '__fish_git_using_command merge' -l no-progress -d 'Force no progress status' +complete -f -c git -n '__fish_git_using_command merge' -l allow-unrelated-histories -d 'Allow merging even when branches do not share a common history' +complete -x -c git -n '__fish_git_using_command merge' -s m -d 'Set the commit message' +complete -f -c git -n '__fish_git_using_command merge' -s rerere-autoupdate -d 'If possible, use previous conflict resolutions' +complete -f -c git -n '__fish_git_using_command merge' -s no-rerere-autoupdate -d 'Do not use previous conflict resolutions' +complete -f -c git -n '__fish_git_using_command merge' -l abort -d 'Abort the current conflict resolution process' +complete -f -c git -n '__fish_git_using_command merge' -l continue -d 'Conclude current conflict resolution process' + +### merge-base +complete -f -c git -n __fish_git_needs_command -a merge-base -d 'Find as good common ancestors as possible for a merge' +complete -f -c git -n '__fish_git_using_command merge-base' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command merge-base' -s a -l all -d 'Output all merge bases for the commits, instead of just one' +complete -f -c git -n '__fish_git_using_command merge-base' -l octopus -d 'Compute the best common ancestors of all supplied commits' +complete -f -c git -n '__fish_git_using_command merge-base' -l independent -d 'Print a minimal subset of the supplied commits with the same ancestors.' +complete -f -c git -n '__fish_git_using_command merge-base' -l is-ancestor -d 'Check if the first commit is an ancestor of the second commit' +complete -f -c git -n '__fish_git_using_command merge-base' -l fork-point -d 'Find the point at which a branch forked from another branch ref' + +### mergetool + +complete -f -c git -n __fish_git_needs_command -a mergetool -d 'Run merge conflict resolution tools to resolve merge conflicts' +complete -f -c git -n '__fish_git_using_command mergetool' -s t -l tool -d "Use specific merge resolution program" -a "(__fish_git_diffmerge_tools mergetool)" +complete -f -c git -n '__fish_git_using_command mergetool' -l tool-help -d 'Print a list of merge tools that may be used with `--tool`' +complete -f -c git -n '__fish_git_using_command mergetool' -a "(__fish_git_files unmerged)" +complete -f -c git -n '__fish_git_using_command mergetool' -s y -l no-prompt -d 'Do not prompt before launching a diff tool' +complete -f -c git -n '__fish_git_using_command mergetool' -l prompt -d 'Prompt before each invocation of the merge resolution program' +complete -c git -n '__fish_git_using_command mergetool' -s O -d 'Process files in the order specified in the file passed as argument' + +### mv +complete -c git -n __fish_git_needs_command -a mv -d 'Move or rename a file, a directory, or a symlink' +complete -f -c git -n '__fish_git_using_command mv' -s f -l force -d 'Force rename/moving even if target exists' +complete -f -c git -n '__fish_git_using_command mv' -s k -d 'Skip rename/move which can lead to error' +complete -f -c git -n '__fish_git_using_command mv' -s n -l dry-run -d 'Only show what would happen' +complete -f -c git -n '__fish_git_using_command mv' -s v -l verbose -d 'Report names of files as they are changed' + +### notes +set -l notescommands add copy append edit show merge remove # list prune get-ref +complete -c git -n __fish_git_needs_command -a notes -d 'Add or inspect object notes' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a list -d 'List notes for given object' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a add -d 'Add notes for a given object' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a copy -d 'Copy notes from object1 to object2' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a append -d 'Append to the notes of existing object' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a edit -d 'Edit notes for a given object' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a show -d 'Show notes for given object' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a merge -d 'Merge the given notes ref to current notes ref' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a remove -d 'Remove notes for given object' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a prune -d 'Remove notes for non-existing/unreachable objects' +complete -f -c git -n "__fish_git_using_command notes; and not __fish_seen_subcommand_from $notescommands" -a get-ref -d 'Print current notes ref' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from $notescommands" -ka '(__fish_git_commits)' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add copy" -s f -l force -d 'Overwrite existing notes' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append edit" -l allow-empty -d 'Allow empty note' +complete -r -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s F -l file -d 'Read note message from file' +complete -x -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s m -l message -d 'Use this note message' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s C -l reuse-message -a '(__fish_git_commits)' -d 'Copy note from object' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from add append" -s c -l reedit-message -a '(__fish_git_commits)' -d 'Copy and edit note from object' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from copy remove" -l stdin -d 'Read object names from stdin' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge remove prune" -s v -l verbose -d 'Be more verbose' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge remove prune" -s q -l quiet -d 'Operate quietly' +complete -x -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge" -s s -l strategy -d 'Merge strategy to use to resolve conflicts' -a " + manual\t'Instruct the user to resolve merge conflicts' + ours\t'Resolve conflicts in favour of local version' + theirs\t'Resolve conflicts in favour of remote version' + union\t'Resolve conflicts by concatenating local and remote versions' + cat_sort_uniq\t'Concatenate, sort and remove duplicate lines' + " +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge" -l commit -d 'Finalize git notes merge' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from merge" -l abort -d 'Abort git notes merge' +complete -f -c git -n "__fish_git_using_command notes; and __fish_seen_subcommand_from remove" -l ignore-missing -d 'Do not throw error on deleting non-existing object note' + +### prune +complete -f -c git -n __fish_git_needs_command -a prune -d 'Prune all unreachable objects from the object database' +# TODO options + +### pull +complete -f -c git -n __fish_git_needs_command -a pull -d 'Fetch from and merge with another repository or a local branch' +complete -f -c git -n '__fish_git_using_command pull' -s q -l quiet -d 'Be quiet' +complete -f -c git -n '__fish_git_using_command pull' -s v -l verbose -d 'Be verbose' +# Options related to fetching +complete -f -c git -n '__fish_git_using_command pull' -l all -d 'Fetch all remotes' +complete -f -c git -n '__fish_git_using_command pull' -s a -l append -d 'Append ref names and object names' +complete -f -c git -n '__fish_git_using_command pull' -s f -l force -d 'Force update of local branches' +complete -f -c git -n '__fish_git_using_command pull' -s k -l keep -d 'Keep downloaded pack' +complete -f -c git -n '__fish_git_using_command pull' -l no-tags -d 'Disable automatic tag following' +complete -f -c git -n '__fish_git_using_command pull' -s p -l prune -d 'Remove remote-tracking references that no longer exist on the remote' +# TODO --upload-pack +complete -f -c git -n '__fish_git_using_command pull' -l progress -d 'Force progress status' +complete -f -c git -n '__fish_git_using_command pull; and not __fish_git_branch_for_remote' -a '(__fish_git_remotes)' -d 'Remote alias' +complete -f -c git -n '__fish_git_using_command pull; and __fish_git_branch_for_remote' -a '(__fish_git_branch_for_remote)' +# Options related to merging +complete -f -c git -n '__fish_git_using_command pull' -l commit -d "Autocommit the merge" +complete -f -c git -n '__fish_git_using_command pull' -l no-commit -d "Don't autocommit the merge" +complete -f -c git -n '__fish_git_using_command pull' -s e -l edit -d 'Edit auto-generated merge message' +complete -f -c git -n '__fish_git_using_command pull' -l no-edit -d "Don't edit auto-generated merge message" +complete -f -c git -n '__fish_git_using_command pull' -l ff -d "Don't generate a merge commit if merge is fast-forward" +complete -f -c git -n '__fish_git_using_command pull' -l no-ff -d "Generate a merge commit even if merge is fast-forward" +complete -f -c git -n '__fish_git_using_command pull' -l ff-only -d 'Refuse to merge unless fast-forward possible' +complete -f -c git -n '__fish_git_using_command pull' -s S -l gpg-sign -d 'GPG-sign the merge commit' +complete -f -c git -n '__fish_git_using_command pull' -l log -d 'Populate the log message with one-line descriptions' +complete -f -c git -n '__fish_git_using_command pull' -l no-log -d "Don't populate the log message with one-line descriptions" +complete -f -c git -n '__fish_git_using_command pull' -l signoff -d 'Add Signed-off-by line at the end of the merge commit message' +complete -f -c git -n '__fish_git_using_command pull' -l no-signoff -d 'Do not add a Signed-off-by line at the end of the merge commit message' +complete -f -c git -n '__fish_git_using_command pull' -l stat -d "Show diffstat of the merge" +complete -f -c git -n '__fish_git_using_command pull' -s n -l no-stat -d "Don't show diffstat of the merge" +complete -f -c git -n '__fish_git_using_command pull' -l squash -d "Squash changes from upstream branch as a single commit" +complete -f -c git -n '__fish_git_using_command pull' -l no-squash -d "Don't squash changes" +complete -x -c git -n '__fish_git_using_command pull' -s s -l strategy -d 'Use the given merge strategy' +complete -r -c git -n '__fish_git_using_command pull' -s X -l strategy-option -d 'Pass given option to the merge strategy' +complete -f -c git -n '__fish_git_using_command pull' -l verify-signatures -d 'Abort merge if upstream branch tip commit is not signed with a valid key' +complete -f -c git -n '__fish_git_using_command pull' -l no-verify-signatures -d 'Do not abort merge if upstream branch tip commit is not signed with a valid key' +complete -f -c git -n '__fish_git_using_command pull' -l allow-unrelated-histories -d 'Allow merging even when branches do not share a common history' +complete -f -c git -n '__fish_git_using_command pull' -s r -l rebase -d 'Rebase the current branch on top of the upstream branch' +complete -f -c git -n '__fish_git_using_command pull' -l no-rebase -d 'Do not rebase the current branch on top of the upstream branch' +complete -f -c git -n '__fish_git_using_command pull' -l autostash -d 'Before starting rebase, stash local changes, and apply stash when done' +complete -f -c git -n '__fish_git_using_command pull' -l no-autostash -d 'Do not stash local changes before starting rebase' +# TODO other options + +### range-diff +complete -f -c git -n __fish_git_needs_command -a range-diff -d 'Compare two commit ranges (e.g. two versions of a branch)' +complete -f -c git -n '__fish_git_using_command range-diff' -ka '(__fish_git_ranges)' +complete -f -c git -n '__fish_git_using_command range-diff' -l creation-factor -d 'Percentage by which creation is weighted' +complete -f -c git -n '__fish_git_using_command range-diff' -l no-dual-color -d 'Use simple diff colors' + + +### push +complete -f -c git -n __fish_git_needs_command -a push -d 'Update remote refs along with associated objects' +complete -f -c git -n '__fish_git_using_command push; and not __fish_git_branch_for_remote' -a '(__fish_git_remotes)' -d 'Remote alias' +complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote' -ka '(__fish_git_tags)' -d Tag +complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote' -ka '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote' -ka '(__fish_git_heads)' +# The "refspec" here is an optional "+" to signify a force-push +complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q "+*" -- (commandline -ct)' -a '+(__fish_git_branches | string replace -r \t".*" "")' -d 'Force-push branch' +# git push REMOTE :BRANCH deletes BRANCH on remote REMOTE +complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q ":*" -- (commandline -ct)' -a ':(__fish_git_branch_for_remote | string replace -r \t".*" "")' -d 'Delete remote branch' +# then src:dest (where both src and dest are git objects, so we want to complete branches) +complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q "+*:*" -- (commandline -ct)' -a '(commandline -ct | string replace -r ":.*" ""):(__fish_git_branch_for_remote | string replace -r \t".*" "")' -d 'Force-push local branch to remote branch' +complete -f -c git -n '__fish_git_using_command push; and __fish_git_branch_for_remote; and string match -q "*:*" -- (commandline -ct)' -a '(commandline -ct | string replace -r ":.*" ""):(__fish_git_branch_for_remote | string replace -r \t".*" "")' -d 'Push local branch to remote branch' +complete -f -c git -n '__fish_git_using_command push' -l all -d 'Push all refs under refs/heads/' +complete -f -c git -n '__fish_git_using_command push' -l prune -d "Remove remote branches that don't have a local counterpart" +complete -f -c git -n '__fish_git_using_command push' -l mirror -d 'Push all refs under refs/' +complete -f -c git -n '__fish_git_using_command push' -l delete -d 'Delete all listed refs from the remote repository' +complete -f -c git -n '__fish_git_using_command push' -l tags -d 'Push all refs under refs/tags' +complete -f -c git -n '__fish_git_using_command push' -l follow-tags -d 'Push all usual refs plus the ones under refs/tags' +complete -f -c git -n '__fish_git_using_command push' -s n -l dry-run -d 'Do everything except actually send the updates' +complete -f -c git -n '__fish_git_using_command push' -l porcelain -d 'Produce machine-readable output' +complete -f -c git -n '__fish_git_using_command push' -s f -l force -d 'Force update of remote refs' +complete -f -c git -n '__fish_git_using_command push' -s f -l force-with-lease -d 'Force update of remote refs, stopping if other\'s changes would be overwritten' +complete -f -c git -n '__fish_git_using_command push' -s u -l set-upstream -d 'Add upstream (tracking) reference' +complete -f -c git -n '__fish_git_using_command push' -s q -l quiet -d 'Be quiet' +complete -f -c git -n '__fish_git_using_command push' -s v -l verbose -d 'Be verbose' +complete -f -c git -n '__fish_git_using_command push' -l progress -d 'Force progress status' +# TODO --recurse-submodules=check|on-demand + +### rebase +complete -f -c git -n __fish_git_needs_command -a rebase -d 'Forward-port local commits to the updated upstream head' +complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_remotes)' -d 'Remote alias' +complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_heads)' -d Head +complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_recent_commits)' +complete -f -c git -n '__fish_git_using_command rebase' -a '(__fish_git_tags)' -d Tag +complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l continue -d 'Restart the rebasing process' +complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l abort -d 'Abort the rebase operation' +complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l edit-todo -d 'Edit the todo list' +complete -f -c git -n '__fish_git_using_command rebase' -l keep-empty -d "Keep the commits that don't change anything" +complete -f -c git -n '__fish_git_using_command rebase; and __fish_git_is_rebasing' -l skip -d 'Restart the rebasing process by skipping the current patch' +complete -f -c git -n '__fish_git_using_command rebase' -s m -l merge -d 'Use merging strategies to rebase' +complete -f -c git -n '__fish_git_using_command rebase' -s q -l quiet -d 'Be quiet' +complete -f -c git -n '__fish_git_using_command rebase' -s v -l verbose -d 'Be verbose' +complete -f -c git -n '__fish_git_using_command rebase' -l stat -d "Show diffstat of the rebase" +complete -f -c git -n '__fish_git_using_command rebase' -s n -l no-stat -d "Don't show diffstat of the rebase" +complete -f -c git -n '__fish_git_using_command rebase' -l verify -d "Allow the pre-rebase hook to run" +complete -f -c git -n '__fish_git_using_command rebase' -l no-verify -d "Don't allow the pre-rebase hook to run" +complete -f -c git -n '__fish_git_using_command rebase' -s f -l force-rebase -d 'Force the rebase' +complete -f -c git -n '__fish_git_using_command rebase' -l committer-date-is-author-date -d "Use the author date as the committer date" +complete -f -c git -n '__fish_git_using_command rebase' -l ignore-date -d "Use the committer date as the author date" +complete -f -c git -n '__fish_git_using_command rebase' -s i -l interactive -d 'Interactive mode' +complete -f -c git -n '__fish_git_using_command rebase' -s p -l preserve-merges -d 'Try to recreate merges' +complete -f -c git -n '__fish_git_using_command rebase' -s r -l rebase-merges -a 'rebase-cousins no-rebase-cousins' -d 'Preserve branch structure' +complete -f -c git -n '__fish_git_using_command rebase' -l root -d 'Rebase all reachable commits' +complete -f -c git -n '__fish_git_using_command rebase' -l autosquash -d 'Automatic squashing' +complete -f -c git -n '__fish_git_using_command rebase' -l no-autosquash -d 'No automatic squashing' +complete -f -c git -n '__fish_git_using_command rebase' -l autostash -d 'Before starting rebase, stash local changes, and apply stash when done' +complete -f -c git -n '__fish_git_using_command rebase' -l no-autostash -d 'Do not stash local changes before starting rebase' +complete -f -c git -n '__fish_git_using_command rebase' -l no-ff -d 'No fast-forward' +# This actually takes script for $SHELL, but completing that is... complicated. +complete -r -c git -n '__fish_git_using_command rebase' -l exec -d 'Execute shellscript' + +### reflog +set -l reflogcommands show expire delete exists +complete -f -c git -n __fish_git_needs_command -a reflog -d 'Manage reflog information' +complete -f -c git -n '__fish_git_using_command reflog' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command reflog' -a '(__fish_git_heads)' -d Head + +complete -f -c git -n "__fish_git_using_command reflog; and not __fish_seen_subcommand_from $reflogcommands" -a "$reflogcommands" + +### reset +complete -c git -n __fish_git_needs_command -a reset -d 'Reset current HEAD to the specified state' +complete -f -c git -n '__fish_git_using_command reset' -l hard -d 'Reset the index and the working tree' +complete -f -c git -n '__fish_git_using_command reset' -l soft -d 'Reset head without touching the index or the working tree' +complete -f -c git -n '__fish_git_using_command reset' -l mixed -d 'The default: reset the index but not the working tree' +complete -c git -n '__fish_git_using_command reset; and not contains -- -- (commandline -opc)' -a '(__fish_git_branches)' +# reset can either undo changes to versioned modified files, +# or remove files from the staging area. +# Deleted files seem to need a "--" separator. +complete -f -c git -n '__fish_git_using_command reset; and not contains -- -- (commandline -opc)' -a '(__fish_git_files all-staged modified)' +complete -f -c git -n '__fish_git_using_command reset; and contains -- -- (commandline -opc)' -a '(__fish_git_files all-staged deleted modified)' +complete -f -c git -n '__fish_git_using_command reset; and not contains -- -- (commandline -opc)' -a '(__fish_git_reflog)' -d Reflog +# TODO options + +### restore and switch +# restore options +complete -f -c git -n __fish_git_needs_command -a restore -d 'Restore working tree files' +complete -f -c git -n '__fish_git_using_command restore' -r -s s -l source -d 'Specify the source tree used to restore the working tree' -k -a '(__fish_git_refs)' +complete -f -c git -n '__fish_git_using_command restore' -s p -l patch -d 'Interactive mode' +complete -f -c git -n '__fish_git_using_command restore' -s W -l worktree -d 'Restore working tree (default)' +complete -f -c git -n '__fish_git_using_command restore' -s S -l staged -d 'Restore the index' +complete -f -c git -n '__fish_git_using_command restore' -l ours -d 'When restoring files, use stage #2 (ours)' +complete -f -c git -n '__fish_git_using_command restore' -l theirs -d 'When restoring files, use stage #3 (theirs)' +complete -f -c git -n '__fish_git_using_command restore' -s m -l merge -d 'Recreate the conflicted merge in the unmerged paths when restoring files' +complete -f -c git -n '__fish_git_using_command restore' -l ignore-unmerged -d 'When restoring files, do not abort the operation if there are unmerged entries' +complete -f -c git -n '__fish_git_using_command restore' -l ignore-skip-worktree-bits -d 'Ignore the sparse-checkout file and unconditionally restore any files in <pathspec>' +complete -f -c git -n '__fish_git_using_command restore' -l overlay -d 'Never remove files when restoring' +complete -f -c git -n '__fish_git_using_command restore' -l no-overlay -d 'Remove files when restoring (default)' +complete -f -c git -n '__fish_git_using_command restore; and not contains -- --staged (commandline -opc)' -a '(__fish_git_files modified deleted modified-staged-deleted unmerged)' +complete -f -c git -n '__fish_git_using_command restore; and contains -- --staged (commandline -opc)' -a '(__fish_git_files added modified-staged deleted-staged renamed copied)' +complete -F -c git -n '__fish_git_using_command restore; and __fish_contains_opt -s s source' +# switch options +complete -f -c git -n __fish_git_needs_command -a switch -d 'Switch to a branch' +complete -k -f -c git -n '__fish_git_using_command switch' -a '(__fish_git_unique_remote_branches)' -d 'Unique Remote Branch' +complete -k -f -c git -n '__fish_git_using_command switch' -a '(__fish_git_local_branches)' +complete -f -c git -n '__fish_git_using_command switch' -r -s c -l create -d 'Create a new branch' +complete -f -c git -n '__fish_git_using_command switch' -r -s C -l force-create -d 'Force create a new branch' +complete -f -c git -n '__fish_git_using_command switch' -s d -l detach -d 'Switch to a commit for inspection and discardable experiment' -k -ra '(__fish_git_refs)' +complete -f -c git -n '__fish_git_using_command switch' -l guess -d 'Guess branch name from remote branch (default)' +complete -f -c git -n '__fish_git_using_command switch' -l no-guess -d 'Do not guess branch name from remote branch' +complete -f -c git -n '__fish_git_using_command switch' -s f -l force -l discard-changes -d 'Proceed even if the index or the working tree differs from HEAD' +complete -f -c git -n '__fish_git_using_command switch' -s m -l merge -d 'Merge the current branch and contents of the working tree into a new branch' +complete -f -c git -n '__fish_git_using_command switch' -s t -l track -d 'Track remote branch when creating a new branch' +complete -f -c git -n '__fish_git_using_command switch' -l no-track -d 'Do not track remote branch when creating a new branch' +complete -f -c git -n '__fish_git_using_command switch' -r -l orphan -d 'Create a new orphan branch' +complete -f -c git -n '__fish_git_using_command switch' -l ignore-other-worktrees -d 'Force check out of the reference' +complete -f -c git -n '__fish_git_using_command switch' -l recurse-submodules -d 'Update the work trees of submodules' +complete -f -c git -n '__fish_git_using_command switch' -l no-recurse-submodules -d 'Do not update the work trees of submodules' +# common options +complete -f -c git -n '__fish_git_using_command restore switch' -s q -l quiet -d 'Suppress messages' +complete -f -c git -n '__fish_git_using_command restore switch' -l progress -d 'Report progress status to stderr (default)' +complete -f -c git -n '__fish_git_using_command restore switch' -l no-progress -d 'Do not report progress status to stderr' +complete -f -c git -n '__fish_git_using_command restore switch' -l 'conflict=merge' -d 'Same as --merge, but specify \'merge\' as the conflicting hunk style (default)' +complete -f -c git -n '__fish_git_using_command restore switch' -l 'conflict=diff3' -d 'Same as --merge, but specify \'diff3\' as the conflicting hunk style' + +### rev-parse +complete -f -c git -n __fish_git_needs_command -a rev-parse -d 'Pick out and massage parameters' +complete -f -c git -n '__fish_git_using_command rev-parse' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command rev-parse' -a '(__fish_git_heads)' -d Head +complete -k -c git -n '__fish_git_using_command rev-parse' -a '(__fish_git_tags)' -d Tag +complete -c git -n '__fish_git_using_command rev-parse' -l abbrev-ref -d 'Output non-ambiguous short object names' + +### revert +complete -f -c git -n __fish_git_needs_command -a revert -d 'Revert an existing commit' +complete -f -c git -n '__fish_git_using_command revert' -ka '(__fish_git_commits)' +complete -f -c git -n '__fish_git_using_command revert' -l continue -d 'Continue the operation in progress' +complete -f -c git -n '__fish_git_using_command revert' -l abort -d 'Cancel the operation' +complete -f -c git -n '__fish_git_using_command revert' -l skip -d 'Skip the current commit and continue with the rest of the sequence' +# TODO options + +### rm +complete -c git -n __fish_git_needs_command -a rm -d 'Remove files from the working tree and the index' +complete -c git -n '__fish_git_using_command rm' -l cached -d 'Unstage files from the index' +complete -c git -n '__fish_git_using_command rm; and __fish_contains_opt cached' -f -a '(__fish_git_files all-staged)' +complete -c git -n '__fish_git_using_command rm' -l ignore-unmatch -d 'Exit with a zero status even if no files matched' +complete -c git -n '__fish_git_using_command rm' -s r -d 'Allow recursive removal' +complete -c git -n '__fish_git_using_command rm' -s q -l quiet -d 'Be quiet' +complete -c git -n '__fish_git_using_command rm' -s f -l force -d 'Override the up-to-date check' +complete -c git -n '__fish_git_using_command rm' -s n -l dry-run -d 'Dry run' +# TODO options + +### status +complete -f -c git -n __fish_git_needs_command -a status -d 'Show the working tree status' +complete -f -c git -n '__fish_git_using_command status' -s s -l short -d 'Give the output in the short-format' +complete -f -c git -n '__fish_git_using_command status' -s b -l branch -d 'Show the branch and tracking info even in short-format' +complete -f -c git -n '__fish_git_using_command status' -l porcelain -d 'Give the output in a stable, easy-to-parse format' +complete -f -c git -n '__fish_git_using_command status' -s z -d 'Terminate entries with null character' +complete -f -c git -n '__fish_git_using_command status' -s u -l untracked-files -x -a 'no normal all' -d 'The untracked files handling mode' +complete -f -c git -n '__fish_git_using_command status' -l ignore-submodules -x -a 'none untracked dirty all' -d 'Ignore changes to submodules' +# TODO options + +### stripspace +complete -f -c git -n __fish_git_needs_command -a stripspace -d 'Remove unnecessary whitespace' +complete -f -c git -n '__fish_git_using_command stripspace' -s s -l strip-comments -d 'Strip all lines starting with comment character' +complete -f -c git -n '__fish_git_using_command stripspace' -s c -l comment-lines -d 'Prepend comment character to each line' + +### tag +complete -f -c git -n __fish_git_needs_command -a tag -d 'Create, list, delete or verify a tag object signed with GPG' +complete -f -c git -n '__fish_git_using_command tag; and __fish_not_contain_opt -s d; and __fish_not_contain_opt -s v; and test (count (commandline -opc | string match -r -v \'^-\')) -eq 3' -a '(__fish_git_branches)' +complete -f -c git -n '__fish_git_using_command tag' -s a -l annotate -d 'Make an unsigned, annotated tag object' +complete -f -c git -n '__fish_git_using_command tag' -s s -l sign -d 'Make a GPG-signed tag' +complete -f -c git -n '__fish_git_using_command tag' -s d -l delete -d 'Remove a tag' +complete -f -c git -n '__fish_git_using_command tag' -s v -l verify -d 'Verify signature of a tag' +complete -f -c git -n '__fish_git_using_command tag' -s f -l force -d 'Force overwriting existing tag' +complete -f -c git -n '__fish_git_using_command tag' -s l -l list -d 'List tags' +complete -f -c git -n '__fish_git_using_command tag' -l contains -xka '(__fish_git_commits)' -d 'List tags that contain a commit' +complete -f -c git -n '__fish_git_using_command tag; and __fish_contains_opt -s d delete -s v verify' -a '(__fish_git_tags)' -d Tag +# TODO options + +### worktree +set -l git_worktree_commands add list lock move prune remove unlock +complete -c git -n __fish_git_needs_command -a worktree -d 'Manage multiple working trees' +complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a add -d 'Create a working tree' +complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a list -d 'List details of each worktree' +complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a lock -d 'Lock a working tree' +complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a move -d 'Move a working tree to a new location' +complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a prune -d 'Prune working tree information in $GIT_DIR/worktrees' +complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a remove -d 'Remove a working tree' +complete -f -c git -n "__fish_git_using_command worktree; and not __fish_seen_subcommand_from $git_worktree_commands" -a unlock -d 'Unlock a working tree' + +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add move remove' -s f -l force -d 'Override safeguards' + +complete -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' +complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_branches)' +complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_heads)' -d Head +complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_tags)' -d Tag +complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_unique_remote_branches)' -d 'Unique Remote Branch' +complete -k -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -a '(__fish_git_local_branches)' +complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -s b -d 'Create a new branch' +complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -s B -d 'Create a new branch even if it already exists' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l detach -d 'Detach HEAD in the new working tree' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l checkout -d 'Checkout <commit-ish> after creating working tree' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l no-checkout -d 'Suppress checkout' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l guess-remote +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l no-guess-remote +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l track -d 'Mark <commit-ish> as "upstream" from the new branch' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l no-track -d 'Don\'t mark <commit-ish> as "upstream" from the new branch' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -l lock -d 'Lock working tree after creation' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from add' -s q -l quiet -d 'Suppress feedback messages' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from list' -l porcelain -d 'Output in an easy-to-parse format for scripts' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from lock' -a '(__fish_git_complete_worktrees)' -d Worktree +complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from lock' -l reason -d 'An explanation why the working tree is locked' +complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from move; and not __fish_any_arg_in (__fish_git_complete_worktrees)' -a '(__fish_git_complete_worktrees)' -d Worktree +complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from move; and __fish_any_arg_in (__fish_git_complete_worktrees)' -a '(__fish_complete_directories)' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from prune' -s n -l dry-run -d 'Do not remove anything' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from prune' -s v -l verbose -d 'Report all removals' +complete -x -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from prune' -l expire -d 'Only expire unused working trees older than <time>' +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from remove' -a '(__fish_git_complete_worktrees)' -d Worktree +complete -f -c git -n '__fish_git_using_command worktree; and __fish_seen_subcommand_from unlock' -a '(__fish_git_complete_worktrees)' -d Worktree + +### stash +complete -c git -n __fish_git_needs_command -a stash -d 'Stash away changes' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a list -d 'List stashes' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a show -d 'Show the changes recorded in the stash' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a pop -d 'Apply and remove a single stashed state' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a apply -d 'Apply a single stashed state' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a clear -d 'Remove all stashed states' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a drop -d 'Remove a single stashed state from the stash list' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a create -d 'Create a stash' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a save -d 'Save a new stash' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a branch -d 'Create a new branch from a stash' +complete -f -c git -n '__fish_git_using_command stash; and __fish_git_stash_not_using_subcommand' -a push -d 'Create a new stash with given files' + +complete -f -c git -n '__fish_git_stash_using_command apply' -a '(__fish_git_complete_stashes)' +complete -f -c git -n '__fish_git_stash_using_command branch' -a '(__fish_git_complete_stashes)' +complete -f -c git -n '__fish_git_stash_using_command drop' -a '(__fish_git_complete_stashes)' +complete -f -c git -n '__fish_git_stash_using_command pop' -a '(__fish_git_complete_stashes)' +complete -f -c git -n '__fish_git_stash_using_command show' -a '(__fish_git_complete_stashes)' + +complete -f -c git -n '__fish_git_stash_using_command push' -a '(__fish_git_files modified deleted modified-staged-deleted)' +complete -f -c git -n '__fish_git_stash_using_command push' -s p -l patch -d 'Interactively select hunks' +complete -f -c git -n '__fish_git_stash_using_command push' -s m -l message -d 'Add a description' + +### config +complete -f -c git -n __fish_git_needs_command -a config -d 'Set and read git configuration variables' +# TODO options + +### format-patch +complete -f -c git -n __fish_git_needs_command -a format-patch -d 'Generate patch series to send upstream' +complete -f -c git -n '__fish_git_using_command format-patch' -a '(__fish_git_branches)' +complete -c git -n '__fish_git_using_command format-patch' -s o -l output-directory -xa '(__fish_complete_directories)' +complete -f -c git -n '__fish_git_using_command format-patch' -s p -l no-stat -d "Generate plain patches without diffstat" +complete -f -c git -n '__fish_git_using_command format-patch' -s s -l no-patch -d "Suppress diff output" +complete -f -c git -n '__fish_git_using_command format-patch' -l minimal -d "Spend more time to create smaller diffs" +complete -f -c git -n '__fish_git_using_command format-patch' -l patience -d "Generate diff with the 'patience' algorithm" +complete -f -c git -n '__fish_git_using_command format-patch' -l histogram -d "Generate diff with the 'histogram' algorithm" +complete -f -c git -n '__fish_git_using_command format-patch' -l stdout -d "Print all commits to stdout in mbox format" +complete -f -c git -n '__fish_git_using_command format-patch' -l numstat -d "Show number of added/deleted lines in decimal notation" +complete -f -c git -n '__fish_git_using_command format-patch' -l shortstat -d "Output only last line of the stat" +complete -f -c git -n '__fish_git_using_command format-patch' -l summary -d "Output a condensed summary of extended header information" +complete -f -c git -n '__fish_git_using_command format-patch' -l no-renames -d "Disable rename detection" +complete -f -c git -n '__fish_git_using_command format-patch' -l full-index -d "Show full blob object names" +complete -f -c git -n '__fish_git_using_command format-patch' -l binary -d "Output a binary diff for use with git apply" +complete -f -c git -n '__fish_git_using_command format-patch log' -l find-copies-harder -d "Also inspect unmodified files as source for a copy" +complete -f -c git -n '__fish_git_using_command format-patch' -l text -s a -d "Treat all files as text" +complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-space-at-eol -d "Ignore changes in whitespace at EOL" +complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-space-change -s b -d "Ignore changes in amount of whitespace" +complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-all-space -s w -d "Ignore whitespace when comparing lines" +complete -f -c git -n '__fish_git_using_command format-patch log' -l ignore-blank-lines -d "Ignore changes whose lines are all blank" +complete -f -c git -n '__fish_git_using_command format-patch log' -l function-context -s W -d "Show whole surrounding functions of changes" +complete -f -c git -n '__fish_git_using_command format-patch log' -l ext-diff -d "Allow an external diff helper to be executed" +complete -f -c git -n '__fish_git_using_command format-patch log' -l no-ext-diff -d "Disallow external diff helpers" +complete -f -c git -n '__fish_git_using_command format-patch log' -l no-textconv -d "Disallow external text conversion filters for binary files (Default)" +complete -f -c git -n '__fish_git_using_command format-patch log' -l textconv -d "Allow external filters for binary files (Resulting diff is unappliable)" +complete -f -c git -n '__fish_git_using_command format-patch log' -l no-prefix -d "Do not show source or destination prefix" +complete -f -c git -n '__fish_git_using_command format-patch' -l numbered -s n -d "Name output in [Patch n/m] format, even with a single patch" +complete -f -c git -n '__fish_git_using_command format-patch' -l no-numbered -s N -d "Name output in [Patch] format, even with multiple patches" + + +## git submodule +set -l submodulecommands add status init deinit update set-branch set-url summary foreach sync absorbgitdirs +complete -f -c git -n __fish_git_needs_command -a submodule -d 'Initialize, update or inspect submodules' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a add -d 'Add a submodule' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a status -d 'Show submodule status' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a init -d 'Initialize all submodules' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a deinit -d 'Unregister the given submodules' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a update -d 'Update all submodules' +complete -x -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a set-branch -d 'Sets the default remote tracking branch for the submodule' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a set-url -d 'Sets the URL of the specified submodule' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a summary -d 'Show commit summary' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a foreach -d 'Run command on each submodule' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a sync -d 'Sync submodules\' URL with .gitmodules' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -a absorbgitdirs -d 'Move submodule\'s git directory to current .git/module directory' +complete -f -c git -n "__fish_git_using_command submodule; and not __fish_seen_subcommand_from $submodulecommands" -s q -l quiet -d "Only print error messages" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l init -d "Initialize all submodules" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l checkout -d "Checkout the superproject's commit on a detached HEAD in the submodule" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l merge -d "Merge the superproject's commit into the current branch of the submodule" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l rebase -d "Rebase current branch onto the superproject's commit" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -s N -l no-fetch -d "Don't fetch new objects from the remote" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l remote -d "Instead of using superproject's SHA-1, use the state of the submodule's remote-tracking branch" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from update' -l force -d "Discard local changes when switching to a different commit & always run checkout" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from add' -l force -d "Also add ignored submodule path" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from deinit' -l force -d "Remove even with local changes" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from deinit' -l all -d "Remove all submodules" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from deinit; and not contains -- -- (commandline -opc)' -a '(__fish_git_submodules)' -d Submodule +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from set-branch' -s b -l branch -d "Specify the branch to use" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from set-branch' -s d -l default -d "Use default branch of the submodule" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from status summary' -l cached -d "Use the commit stored in the index" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from status; and not contains -- -- (commandline -opc)' -a '(__fish_git_submodules)' -d Submodule +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from summary' -l files -d "Compare the commit in the index with submodule HEAD" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from foreach update status' -l recursive -d "Traverse submodules recursively" +complete -f -c git -n '__fish_git_using_command submodule; and __fish_seen_subcommand_from foreach' -a "(__fish_complete_subcommand --fcs-skip=3)" + +## git whatchanged +complete -f -c git -n __fish_git_needs_command -a whatchanged -d 'Show logs with difference each commit introduces' + +## Aliases (custom user-defined commands) +complete -c git -n __fish_git_needs_command -a '(__fish_git_aliases)' + +### git clean +complete -f -c git -n __fish_git_needs_command -a clean -d 'Remove untracked files from the working tree' +complete -f -c git -n '__fish_git_using_command clean' -s f -l force -d 'Force run' +complete -f -c git -n '__fish_git_using_command clean' -s i -l interactive -d 'Show what would be done and clean files interactively' +complete -f -c git -n '__fish_git_using_command clean' -s n -l dry-run -d 'Don\'t actually remove anything, just show what would be done' +complete -f -c git -n '__fish_git_using_command clean' -s q -l quiet -d 'Be quiet, only report errors' +complete -f -c git -n '__fish_git_using_command clean' -s d -d 'Remove untracked directories in addition to untracked files' +complete -f -c git -n '__fish_git_using_command clean' -s x -d 'Remove ignored files, as well' +complete -f -c git -n '__fish_git_using_command clean' -s X -d 'Remove only ignored files' +# TODO -e option + +### git blame +complete -f -c git -n __fish_git_needs_command -a blame -d 'Show what revision and author last modified each line of a file' +complete -f -c git -n '__fish_git_using_command blame' -s b -d 'Show blank SHA-1 for boundary commits' +complete -f -c git -n '__fish_git_using_command blame' -l root -d 'Do not treat root commits as boundaries' +complete -f -c git -n '__fish_git_using_command blame' -l show-stats -d 'Include additional statistics' +complete -f -c git -n '__fish_git_using_command blame' -s L -d 'Annotate only the given line range' +complete -f -c git -n '__fish_git_using_command blame' -s l -d 'Show long rev' +complete -f -c git -n '__fish_git_using_command blame' -s t -d 'Show raw timestamp' +complete -r -c git -n '__fish_git_using_command blame' -s S -d 'Use revisions from named file instead of calling rev-list' +complete -f -c git -n '__fish_git_using_command blame' -l reverse -d 'Walk history forward instead of backward' +complete -f -c git -n '__fish_git_using_command blame' -s p -l porcelain -d 'Show in a format designed for machine consumption' +complete -f -c git -n '__fish_git_using_command blame' -l line-porcelain -d 'Show the porcelain format' +complete -f -c git -n '__fish_git_using_command blame' -l incremental -d 'Show the result incrementally' +complete -r -c git -n '__fish_git_using_command blame' -l contents -d 'Instead of working tree, use the contents of the named file' +complete -x -c git -n '__fish_git_using_command blame' -l date -d 'Specifies the format used to output dates' +complete -f -c git -n '__fish_git_using_command blame' -s M -d 'Detect moved or copied lines within a file' +complete -f -c git -n '__fish_git_using_command blame' -s C -d 'Detect lines moved or copied from other files modified in the same commit' +complete -f -c git -n '__fish_git_using_command blame' -s h -d 'Show help message' +complete -f -c git -n '__fish_git_using_command blame' -s c -d 'Use the same output mode as git-annotate' +complete -f -c git -n '__fish_git_using_command blame' -s f -l show-name -d 'Show the filename in the original commit' +complete -f -c git -n '__fish_git_using_command blame' -s n -l show-number -d 'Show the line number in the original commit' +complete -f -c git -n '__fish_git_using_command blame' -s s -d 'Suppress the author name and timestamp from the output' +complete -f -c git -n '__fish_git_using_command blame' -s e -l show-email -d 'Show the author email instead of author name' +complete -f -c git -n '__fish_git_using_command blame' -s w -d 'Ignore whitespace changes' + +### help +complete -f -c git -n __fish_git_needs_command -a help -d 'Display help information about Git' +complete -f -c git -n '__fish_git_using_command help' -a '(__fish_git_help_all_concepts)' +complete -f -c git -n '__fish_git_using_command help' -a add -d 'Add file contents to the index' +complete -f -c git -n '__fish_git_using_command help' -a am -d 'Apply a series of patches from a mailbox' +complete -f -c git -n '__fish_git_using_command help' -a apply -d 'Apply a patch on a git index file and a working tree' +complete -f -c git -n '__fish_git_using_command help' -a archive -d 'Create an archive of files from a named tree' +complete -f -c git -n '__fish_git_using_command help' -a bisect -d 'Find the change that introduced a bug by binary search' +complete -f -c git -n '__fish_git_using_command help' -a blame -d 'Show what revision and author last modified each line of a file' +complete -f -c git -n '__fish_git_using_command help' -a branch -d 'List, create, or delete branches' +complete -f -c git -n '__fish_git_using_command help' -a checkout -d 'Checkout and switch to a branch' +complete -f -c git -n '__fish_git_using_command help' -a cherry-pick -d 'Apply the change introduced by an existing commit' +complete -f -c git -n '__fish_git_using_command help' -a clean -d 'Remove untracked files from the working tree' +complete -f -c git -n '__fish_git_using_command help' -a clone -d 'Clone a repository into a new directory' +complete -f -c git -n '__fish_git_using_command help' -a commit -d 'Record changes to the repository' +complete -f -c git -n '__fish_git_using_command help' -a config -d 'Set and read git configuration variables' +complete -f -c git -n '__fish_git_using_command help' -a count-objects -d 'Count unpacked number of objects and their disk consumption' +complete -f -c git -n '__fish_git_using_command help' -a describe -d 'Give an object a human-readable name' +complete -f -c git -n '__fish_git_using_command help' -a diff -d 'Show changes between commits, commit and working tree, etc' +complete -f -c git -n '__fish_git_using_command help' -a daemon -d 'A really simple server for Git repositories' +complete -f -c git -n '__fish_git_using_command help' -a difftool -d 'Open diffs in a visual tool' +complete -f -c git -n '__fish_git_using_command help' -a fetch -d 'Download objects and refs from another repository' +complete -f -c git -n '__fish_git_using_command help' -a filter-branch -d 'Rewrite branches' +complete -f -c git -n '__fish_git_using_command help' -a format-patch -d 'Generate patch series to send upstream' +complete -f -c git -n '__fish_git_using_command help' -a gc -d 'Cleanup unnecessary files and optimize the local repository' +complete -f -c git -n '__fish_git_using_command help' -a grep -d 'Print lines matching a pattern' +complete -f -c git -n '__fish_git_using_command help' -a init -d 'Create an empty git repository or reinitialize an existing one' +complete -f -c git -n '__fish_git_using_command help' -a log -d 'Show commit logs' +complete -f -c git -n '__fish_git_using_command help' -a ls-files -d 'Show information about files in the index and the working tree' +complete -f -c git -n '__fish_git_using_command help' -a mailinfo -d 'Extracts patch and authorship from a single e-mail message' +complete -f -c git -n '__fish_git_using_command help' -a mailsplit -d 'Simple UNIX mbox splitter program' +complete -f -c git -n '__fish_git_using_command help' -a maintenance -d 'Run tasks to optimize Git repository data' +complete -f -c git -n '__fish_git_using_command help' -a merge -d 'Join two or more development histories together' +complete -f -c git -n '__fish_git_using_command help' -a merge-base -d 'Find as good common ancestors as possible for a merge' +complete -f -c git -n '__fish_git_using_command help' -a mergetool -d 'Run merge conflict resolution tools to resolve merge conflicts' +complete -f -c git -n '__fish_git_using_command help' -a mv -d 'Move or rename a file, a directory, or a symlink' +complete -f -c git -n '__fish_git_using_command help' -a notes -d 'Add or inspect object notes' +complete -f -c git -n '__fish_git_using_command help' -a prune -d 'Prune all unreachable objects from the object database' +complete -f -c git -n '__fish_git_using_command help' -a pull -d 'Fetch from and merge with another repository or a local branch' +complete -f -c git -n '__fish_git_using_command help' -a push -d 'Update remote refs along with associated objects' +complete -f -c git -n '__fish_git_using_command help' -a range-diff -d 'Compare two commit ranges (e.g. two versions of a branch)' +complete -f -c git -n '__fish_git_using_command help' -a rebase -d 'Forward-port local commits to the updated upstream head' +complete -f -c git -n '__fish_git_using_command help' -a reflog -d 'Manage reflog information' +complete -f -c git -n '__fish_git_using_command help' -a remote -d 'Manage set of tracked repositories' +complete -f -c git -n '__fish_git_using_command help' -a reset -d 'Reset current HEAD to the specified state' +complete -f -c git -n '__fish_git_using_command help' -a restore -d 'Restore working tree files' +complete -f -c git -n '__fish_git_using_command help' -a revert -d 'Revert an existing commit' +complete -f -c git -n '__fish_git_using_command help' -a rev-parse -d 'Pick out and massage parameters' +complete -f -c git -n '__fish_git_using_command help' -a rm -d 'Remove files from the working tree and from the index' +complete -f -c git -n '__fish_git_using_command help' -a show -d 'Shows the last commit of a branch' +complete -f -c git -n '__fish_git_using_command help' -a show-branch -d 'Shows the commits on branches' +complete -f -c git -n '__fish_git_using_command help' -a stash -d 'Stash away changes' +complete -f -c git -n '__fish_git_using_command help' -a status -d 'Show the working tree status' +complete -f -c git -n '__fish_git_using_command help' -a submodule -d 'Initialize, update or inspect submodules' +complete -f -c git -n '__fish_git_using_command help' -a stripspace -d 'Remove unnecessary whitespace' +complete -f -c git -n '__fish_git_using_command help' -a switch -d 'Switch to a branch' +complete -f -c git -n '__fish_git_using_command help' -a tag -d 'Create, list, delete or verify a tag object signed with GPG' +complete -f -c git -n '__fish_git_using_command help' -a whatchanged -d 'Show logs with difference each commit introduces' +complete -f -c git -n '__fish_git_using_command help' -a worktree -d 'Manage multiple working trees' + +# Complete both options and possible parameters to `git config` +complete -f -c git -n '__fish_git_using_command config' -l global -d 'Get/set global configuration' +complete -f -c git -n '__fish_git_using_command config' -l system -d 'Get/set system configuration' +complete -f -c git -n '__fish_git_using_command config' -l local -d 'Get/set local repo configuration' +complete -F -c git -n '__fish_git_using_command config' -s f -l file -d 'Read config from file' -r +complete -F -c git -n '__fish_git_using_command config' -l blob -d 'Read config from blob' -r + +# If no argument is specified, it's as if --get was used +# Use -k with `__fish_git_config_keys` so that user defined values are shown first +complete -c git -n '__fish_git_using_command config; and __fish_is_nth_token 2' -kfa '(__fish_git_config_keys)' +complete -f -c git -n '__fish_git_using_command config' -l get -d 'Get config with name' -kra '(__fish_git_config_keys)' +complete -f -c git -n '__fish_git_using_command config' -l get-all -d 'Get all values matching key' -ka '(__fish_git_config_keys)' +complete -f -c git -n '__fish_git_using_command config' -l get-urlmatch -d 'Get value specific for the section url' -r +complete -f -c git -n '__fish_git_using_command config' -l replace-all -d 'Replace all matching variables' -kra '(__fish_git_config_keys)' +complete -f -c git -n '__fish_git_using_command config' -l add -d 'Add a new variable' -r +complete -f -c git -n '__fish_git_using_command config' -l unset -d 'Remove a variable' -ka '(__fish_git_config_keys)' +complete -f -c git -n '__fish_git_using_command config' -l unset-all -d 'Remove matching variables' -ka '(__fish_git_config_keys)' +complete -f -c git -n '__fish_git_using_command config' -l rename-section -d 'Rename section' -r +complete -f -c git -n '__fish_git_using_command config' -s l -l list -d 'List all variables' +complete -f -c git -n '__fish_git_using_command config' -s e -l edit -d 'Open configuration in an editor' + +complete -f -c git -n '__fish_git_using_command config' -s t -l type -d 'Value is of given type' +complete -f -c git -n '__fish_git_using_command config' -l bool -d 'Value is \'true\' or \'false\'' +complete -f -c git -n '__fish_git_using_command config' -l int -d 'Value is a decimal number' +complete -f -c git -n '__fish_git_using_command config' -l bool-or-int -d 'Value is --bool or --int' +complete -f -c git -n '__fish_git_using_command config' -l path -d 'Value is a path' +complete -f -c git -n '__fish_git_using_command config' -l expiry-date -d 'Value is an expiry date' + +complete -f -c git -n '__fish_git_using_command config' -s z -l null -d 'Terminate values with NUL byte' +complete -f -c git -n '__fish_git_using_command config' -l name-only -d 'Show variable names only' +complete -f -c git -n '__fish_git_using_command config' -l includes -d 'Respect include directives' +complete -f -c git -n '__fish_git_using_command config' -l show-origin -d 'Show origin of configuration' +complete -f -c git -n '__fish_git_using_command config; and __fish_seen_argument get' -l default -d 'Use default value when missing entry' + +## Custom commands (git-* commands installed in the PATH) +complete -c git -n __fish_git_needs_command -a '(__fish_git_custom_commands)' -d 'Custom command' + +function __fish_git_complete_custom_command -a subcommand + set -l cmd (commandline -opc) + set -e cmd[1] # Drop "git". + set -l subcommand_args + if argparse -s (__fish_git_global_optspecs) -- $cmd + set subcommand_args $argv[2..] # Drop the subcommand. + end + complete -C "git-$subcommand $subcommand_args "(commandline -ct) +end + +# source git-* commands' autocompletion file if exists +set -l __fish_git_custom_commands_completion +for file in $PATH/git-* + not command -q $file + and continue + + set -l subcommand (string replace -r -- '.*/git-([^/]*)$' '$1' $file) + + # Already seen this command earlier in $PATH. + contains -- $subcommand $__fish_git_custom_commands_completion + and continue + + complete -C "git-$subcommand " >/dev/null + if test (complete -c git-$subcommand | count) -gt 0 + complete -c git -f -n "__fish_git_using_command $subcommand" -a "(__fish_git_complete_custom_command $subcommand)" + end + set -a __fish_git_custom_commands_completion $subcommand +end diff --git a/dot_config/fish/completions/go.fish b/dot_config/fish/completions/go.fish new file mode 100644 index 0000000..d79f8b7 --- /dev/null +++ b/dot_config/fish/completions/go.fish @@ -0,0 +1,174 @@ +# go is a tool for managing Go source code. +# See: https://golang.org + +# Completions for go build commands +set -l __go_cmds_w_buildflags build get install run test generate +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s a -d 'force rebuild' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s n -d 'print the commands but do not run them' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s p -r -d 'number parallel builds (default=#cpus)' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o race -d 'enable data race detection' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o msan -d 'enable interoperation with memory sanitizer' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s v -d 'print packages being built' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o work -d 'print and preserve work directory' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -s x -d 'print the commands' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o asmflags -d 'arguments to pass on each go tool asm invocation' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o buildmode -x -d 'build mode to use' -a 'archive c-archive c-shared default shared exe pie plugin' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o compiler -x -d 'name of compiler to use, as in runtime' -a 'gccgo gc' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o gccgoflags -r -d 'gccgo compiler/linker flags' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o gcflags -r -d 'go compiler flags' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o installsuffix -r -d 'suffix for installation directory' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o ldflags -r -d 'linker flags' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o linkshared -r -d 'link against shared libraries previously created with -buildmode=shared' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o mod -x -d 'module download mode to use' -a 'readonly vendor mod' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o modcacherw -d 'leave newly-created directories in the module cache writable' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o modfile -r -d 'read (and possibly write) an alternate go.mod' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o pkgdir -r -d 'install and load all packages from dir instead of the usual locations' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o tags -r -d 'build tags' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o trimpath -d 'remove all file system paths from the resulting executable' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o toolexec -r -d 'a program to use to invoke toolchain programs' +complete -c go -n "__fish_seen_subcommand_from $__go_cmds_w_buildflags" -o mod -x -d 'module download mode to use' -a 'readonly vendor' + + +# Completions for go cmds that takes file arguments +complete -c go -n "__fish_seen_subcommand_from build compile fix fmt install test vet" -k -x -a "( + __fish_complete_suffix .go + )" --description File + +# Completions for go cmds that takes pkg arguments +complete -c go -n "__fish_seen_subcommand_from build doc fix fmt install test vet" -x -a "( + go list -e -f '{{.ImportPath}} {{or .Doc \"Go package\"}}' (commandline -ct)... 2>/dev/null + )" --description Package + + +# build +complete -c go -n __fish_use_subcommand -a build -d 'compile packages and dependencies' + +# clean +complete -c go -n __fish_use_subcommand -a clean -d 'remove object files' +complete -c go -n '__fish_seen_subcommand_from clean' -s i -d "remove the corresponding installed archive or binary" +complete -c go -n '__fish_seen_subcommand_from clean' -s n -d "print the command that would be executed without running" +complete -c go -n '__fish_seen_subcommand_from clean' -s r -d "recursively clean all the dependencies of package named by the import paths" +complete -c go -n '__fish_seen_subcommand_from clean' -s x -d "clean to print remove commands as it executes them" +complete -c go -n '__fish_seen_subcommand_from clean' -o cache -d 'remove the entire go build cache' +complete -c go -n '__fish_seen_subcommand_from clean' -o testcache -d 'expire all test results in the go build cache' +complete -c go -n '__fish_seen_subcommand_from clean' -o modcache -d 'remove the entire module download cache' + +# doc +complete -c go -n __fish_use_subcommand -a doc -d 'run godoc on package sources' +complete -c go -n '__fish_seen_subcommand_from doc' -o all -d "show all the documentation for the package" +complete -c go -n '__fish_seen_subcommand_from doc' -s c -d 'respect case when matching symbols' +complete -c go -n '__fish_seen_subcommand_from doc' -o cmd -d 'treat a command (package main) like a regular package' +complete -c go -n '__fish_seen_subcommand_from doc' -o short -d 'one-line representation for each symbol' +complete -c go -n '__fish_seen_subcommand_from doc' -o src -d 'show the full source code for the symbol' +complete -c go -n '__fish_seen_subcommand_from doc' -s u -d 'show documentation for unexported as well as exported symbols' + +# env +complete -c go -n __fish_use_subcommand -a env -d 'print Go environment information' +complete -c go -n '__fish_seen_subcommand_from env' -o json -d 'print the environment in JSON format' +complete -c go -n '__fish_seen_subcommand_from env' -s u -r -d 'set NAME to default values' +complete -c go -n '__fish_seen_subcommand_from env' -s w -r -d 'set default values for config variables' + +# fix +complete -c go -n __fish_use_subcommand -a fix -d 'run go tool fix on packages' + +# fmt +complete -c go -n __fish_use_subcommand -a fmt -d 'run gofmt on package sources' +complete -c go -n '__fish_seen_subcommand_from fmt' -s n -d "prints commands that would be executed" +complete -c go -n '__fish_seen_subcommand_from fmt' -s x -d "prints commands as they are executed" + +# get +complete -c go -n __fish_use_subcommand -a get -d 'download and install packages and dependencies' +complete -c go -n '__fish_seen_subcommand_from get' -s d -d "stop after downloading the packages; don't install" +complete -c go -n '__fish_seen_subcommand_from get' -o fix -d "run fix tool on packages before resolving dependencies or building" +complete -c go -n '__fish_seen_subcommand_from get' -s u -d "update remote packages" +complete -c go -n '__fish_seen_subcommand_from get' -s v -d "verbose progress and debug output" +complete -c go -n '__fish_seen_subcommand_from get' -s t -d "also download the packages required to build the tests" +complete -c go -n '__fish_seen_subcommand_from get' -o insecure -d "flag permits fetching & resolving domains using insecure schemes" + +# generate +complete -c go -n __fish_use_subcommand -a generate -d 'Generate runs commands described by directives within existing files.' +complete -c go -n '__fish_seen_subcommand_from get' -s n -d "prints commands that would be executed" +complete -c go -n '__fish_seen_subcommand_from get' -s x -d "prints commands as they are executed" +complete -c go -n '__fish_seen_subcommand_from get' -s v -d "prints the names of packages and files as they are processed" +complete -c go -n '__fish_seen_subcommand_from get' -o run -d "prints the names of packages and files as they are processed" + +# help +complete -c go -n __fish_use_subcommand -a help -d 'get help on topic' +complete -c go -n '__fish_seen_subcommand_from help' -xa bug -d "start a bug report" +complete -c go -n '__fish_seen_subcommand_from help' -xa build -d "compile packages and dependencies" +complete -c go -n '__fish_seen_subcommand_from help' -xa clean -d "remove object files and cached files" +complete -c go -n '__fish_seen_subcommand_from help' -xa doc -d "show documentation for package or symbol" +complete -c go -n '__fish_seen_subcommand_from help' -xa env -d "print Go environment information" +complete -c go -n '__fish_seen_subcommand_from help' -xa fix -d "update packages to use new APIs" +complete -c go -n '__fish_seen_subcommand_from help' -xa fmt -d "gofmt (reformat) package sources" +complete -c go -n '__fish_seen_subcommand_from help' -xa generate -d "generate Go files by processing source" +complete -c go -n '__fish_seen_subcommand_from help' -xa get -d "download and install packages and dependencies" +complete -c go -n '__fish_seen_subcommand_from help' -xa install -d "compile and install packages and dependencies" +complete -c go -n '__fish_seen_subcommand_from help' -xa list -d "list packages or modules" +complete -c go -n '__fish_seen_subcommand_from help' -xa mod -d "module maintenance" +complete -c go -n '__fish_seen_subcommand_from help' -xa run -d "compile and run Go program" +complete -c go -n '__fish_seen_subcommand_from help' -xa test -d "test packages" +complete -c go -n '__fish_seen_subcommand_from help' -xa tool -d "run specified go tool" +complete -c go -n '__fish_seen_subcommand_from help' -xa version -d "print Go version" +complete -c go -n '__fish_seen_subcommand_from help' -xa vet -d "report likely mistakes in packages" +complete -c go -n '__fish_seen_subcommand_from help' -xa buildmode -d "build modes" +complete -c go -n '__fish_seen_subcommand_from help' -xa c -d "calling between Go and C" +complete -c go -n '__fish_seen_subcommand_from help' -xa cache -d "build and test caching" +complete -c go -n '__fish_seen_subcommand_from help' -xa environment -d "environment variables" +complete -c go -n '__fish_seen_subcommand_from help' -xa filetype -d "file types" +complete -c go -n '__fish_seen_subcommand_from help' -xa go.mod -d "the go.mod file" +complete -c go -n '__fish_seen_subcommand_from help' -xa gopath -d "GOPATH environment variable" +complete -c go -n '__fish_seen_subcommand_from help' -xa gopath-get -d "legacy GOPATH go get" +complete -c go -n '__fish_seen_subcommand_from help' -xa goproxy -d "module proxy protocol" +complete -c go -n '__fish_seen_subcommand_from help' -xa importpath -d "import path syntax" +complete -c go -n '__fish_seen_subcommand_from help' -xa modules -d "modules, module versions, and more" +complete -c go -n '__fish_seen_subcommand_from help' -xa module-get -d "module-aware go get" +complete -c go -n '__fish_seen_subcommand_from help' -xa module-auth -d "module authentication using go.sum" +complete -c go -n '__fish_seen_subcommand_from help' -xa module-private -d "module configuration for non-public modules" +complete -c go -n '__fish_seen_subcommand_from help' -xa packages -d "package lists and patterns" +complete -c go -n '__fish_seen_subcommand_from help' -xa testflag -d "testing flags" +complete -c go -n '__fish_seen_subcommand_from help' -xa testfunc -d "testing functions" + +# install +complete -c go -n __fish_use_subcommand -a install -d 'compile and install packages and dependencies' + +# list +complete -c go -n __fish_use_subcommand -a list -d 'list packages' +complete -c go -n '__fish_seen_subcommand_from list' -s e -d "tolerate erroneous packages" +complete -c go -n '__fish_seen_subcommand_from list' -s f -r -d "pass in template for formatting" +complete -c go -n '__fish_seen_subcommand_from list' -o json -d "print in JSON format" +complete -c go -n '__fish_seen_subcommand_from list' -o tags -r -d 'list of build tags' +complete -c go -n '__fish_seen_subcommand_from list' -s m -d 'list modules instead of packages' + +# run +complete -c go -n __fish_use_subcommand -a run -d 'compile and run Go program' + +# test +complete -c go -n __fish_use_subcommand -a test -d 'test packages' +complete -c go -n '__fish_seen_subcommand_from test' -s c -r -d "compile the test binary to pkg.test but do not run it" +complete -c go -n '__fish_seen_subcommand_from test' -s i -d "install dependent packages, but don't run tests" + +# tool +complete -c go -n __fish_use_subcommand -a tool -d 'run specified go tool' +complete -c go -n '__fish_seen_subcommand_from tool' -a 'addr2line api asm cgo compile dist fix link nm objdump pack pprof prof vet yacc' -d "target tool" +complete -c go -n '__fish_seen_subcommand_from tool' -s n -d "print the command that would be executed but not execute it" + +# version +complete -c go -f -n __fish_use_subcommand -a version -d 'print Go version' +complete -c go -f -n '__fish_seen_subcommand_from version' + +# vet +complete -c go -n __fish_use_subcommand -a vet -d 'vet packages' +complete -c go -n '__fish_seen_subcommand_from vet' -s n -d "print the command that would be executed" +complete -c go -n '__fish_seen_subcommand_from vet' -s x -d "prints commands as they are executed" + +# mod +complete -c go -n __fish_use_subcommand -a mod -d 'module maintenance' +complete -c go -f -n '__fish_seen_subcommand_from mod' -a download -d "download modules to local cache" +complete -c go -f -n '__fish_seen_subcommand_from mod' -a edit -d "edit go.mod from tools or scripts" +complete -c go -f -n '__fish_seen_subcommand_from mod' -a graph -d "print module requirement graph" +complete -c go -f -n '__fish_seen_subcommand_from mod' -a init -d "initialize new module in current directory" +complete -c go -f -n '__fish_seen_subcommand_from mod' -a tidy -d "add missing and remove unused modules" +complete -c go -f -n '__fish_seen_subcommand_from mod' -a vendor -d "make vendored copy of dependencies" +complete -c go -f -n '__fish_seen_subcommand_from mod' -a verify -d "verify dependencies have expected content" +complete -c go -f -n '__fish_seen_subcommand_from mod' -a why -d "explain why packages or modules are needed" diff --git a/dot_config/fish/completions/kubectl.fish b/dot_config/fish/completions/kubectl.fish new file mode 100644 index 0000000..6b719d5 --- /dev/null +++ b/dot_config/fish/completions/kubectl.fish @@ -0,0 +1,1762 @@ +# +set -q FISH_KUBECTL_COMPLETION_TIMEOUT; or set FISH_KUBECTL_COMPLETION_TIMEOUT 5s +set -q FISH_KUBECTL_COMPLETION_COMPLETE_CRDS; or set FISH_KUBECTL_COMPLETION_COMPLETE_CRDS 1 +set __fish_kubectl_timeout "--request-timeout=$FISH_KUBECTL_COMPLETION_TIMEOUT" +set __fish_kubectl_all_namespaces_flags "--all-namespaces" "--all-namespaces=true" +set __fish_kubectl_subresource_commands get describe delete edit label explain +set __fish_kubectl_commands alpha \ + annotate \ + api-resources \ + api-versions \ + apply \ + attach \ + auth \ + autoscale \ + certificate \ + cluster-info \ + completion \ + config \ + cordon \ + cp \ + create \ + debug \ + delete \ + describe \ + diff \ + drain \ + edit \ + exec \ + explain \ + expose \ + get \ + kustomize \ + label \ + logs \ + options \ + patch \ + plugin \ + port-forward \ + proxy \ + replace \ + rollout \ + run \ + scale \ + set \ + taint \ + top \ + uncordon \ + version \ + wait + +function __fish_kubectl + set -l context_args + + if set -l context_flags (__fish_kubectl_get_context_flags | string split " ") + for c in $context_flags + set context_args $context_args $c + end + end + + set -l kubeconfig_args + + if set -l kubeconfig_args (__fish_kubectl_get_kubeconfig_flags | string split " ") + for c in $kubeconfig_args + set kubeconfig_args $kubeconfig_args $c + end + end + + command kubectl $__fish_kubectl_timeout $context_args $kubeconfig_args $argv +end + +function __fish_kubectl_get_commands + echo alpha\t'Commands for features in alpha' + echo annotate\t'Update the annotations on a resource' + echo api-resources\t'Print the supported API resources on the server' + echo api-versions\t'Print the supported API versions on the server, in the form of "group/version"' + echo apply\t'Apply a configuration to a resource by filename or stdin' + echo attach\t'Attach to a running container' + echo auth\t'Inspect authorization' + echo autoscale\t'Auto-scale a Deployment, ReplicaSet, or ReplicationController' + echo certificate\t'Modify certificate resources.' + echo cluster-info\t'Display cluster info' + echo completion\t'Output shell completion code for the specified shell (bash or zsh)' + echo config\t'Modify kubeconfig files' + echo cordon\t'Mark node as unschedulable' + echo cp\t'Copy files and directories to and from containers.' + echo create\t'Create a resource from a file or from stdin.' + echo debug\t'Create debugging sessions for troubleshooting workloads and nodes' + echo delete\t'Delete resources by filenames, stdin, resources and names, or by resources and label selector' + echo describe\t'Show details of a specific resource or group of resources' + echo diff\t'Diff live version against would-be applied version' + echo drain\t'Drain node in preparation for maintenance' + echo edit\t'Edit a resource on the server' + echo exec\t'Execute a command in a container' + echo explain\t'Documentation of resources' + echo expose\t'Take a replication controller, service, deployment or pod and expose it as a new Kubernetes Service' + echo get\t'Display one or many resources' + echo kustomize\t'Build a kustomization target from a directory or a remote url.' + echo label\t'Update the labels on a resource' + echo logs\t'Print the logs for a container in a pod' + echo options\t'Print the list of flags inherited by all commands' + echo patch\t'Update field(s) of a resource' + echo plugin\t'Provides utilities for interacting with plugins.' + echo port-forward\t'Forward one or more local ports to a pod' + echo proxy\t'Run a proxy to the Kubernetes API server' + echo replace\t'Replace a resource by filename or stdin' + echo rollout\t'Manage the rollout of a resource' + echo run\t'Run a particular image on the cluster' + echo scale\t'Set a new size for a Deployment, ReplicaSet or Replication Controller' + echo set\t'Set specific features on objects' + echo taint\t'Update the taints on one or more nodes' + echo top\t'Display Resource (CPU/Memory/Storage) usage.' + echo uncordon\t'Mark node as schedulable' + echo version\t'Print the client and server version information' + echo wait\t'Experimental: Wait for a specific condition on one or many resources.' +end + +set __fish_kubectl_resources \ + all \ + certificatesigningrequests csr \ + clusterrolebindings \ + clusterroles \ + clusters \ + componentstatuses cs \ + configmaps configmap cm \ + controllerrevisions \ + cronjobs cj \ + customresourcedefinition crd crds \ + daemonsets ds \ + deployments deployment deploy \ + endpoints ep \ + events ev \ + horizontalpodautoscalers hpa \ + ingresses ingress ing \ + jobs job \ + limitranges limits \ + namespaces namespace ns \ + networkpolicies netpol \ + nodes node no \ + persistentvolumeclaims pvc \ + persistentvolumes pv \ + poddisruptionbudgets pdb \ + podpreset \ + pods pod po \ + podsecuritypolicies psp \ + podtemplates \ + replicasets rs \ + replicationcontrollers rc \ + resourcequotas quota \ + rolebindings \ + roles \ + secrets secret \ + serviceaccounts sa \ + services service svc \ + statefulsets sts \ + storageclass storageclasses sc + +set __fish_kubectl_cached_crds "" +set __fish_kubectl_last_crd_fetch "" + +function __fish_kubectl_actually_get_crds + set __fish_kubectl_cached_crds (__fish_kubectl get crd -o jsonpath='{range .items[*]}{.spec.names.plural}{"\n"}{.spec.names.singular}{"\n"}{range .spec.names.shortNames[]}{@}{"\n"}{end}{end}' 2>/dev/null) + set __fish_kubectl_last_crd_fetch (__fish_kubectl_get_current_time) + for i in $__fish_kubectl_cached_crds + echo $i + end +end + +function __fish_kubectl_get_current_time + date +'%s' +end + +function __fish_kubectl_get_crds + if test -z "$__fish_kubectl_last_crd_fetch"; or test -z "$__fish_kubectl_cached_crds" + __fish_kubectl_actually_get_crds + return 0 + end + + set -l ct (__fish_kubectl_get_current_time) + set -l duration (math $ct-$__fish_kubectl_last_crd_fetch) + # Only fetch crds if we have not fetched them within the past 30 seconds. + if test "$duration" -gt 30 + __fish_kubectl_actually_get_crds + return 0 + end + + for i in $__fish_kubectl_cached_crds + echo $i + end +end + +function __fish_kubectl_seen_subcommand_from_regex + set -l cmd (commandline -poc) + set -e cmd[1] + for i in $cmd + for r in $argv + if string match -r -- $r $i + return 0 + end + end + end + return 1 +end + +function __fish_kubectl_needs_command -d 'Test if kubectl has yet to be given the subcommand' + for i in (commandline -opc) + if contains -- $i $__fish_kubectl_commands + echo "$i" + return 1 + end + end + return 0 +end + +function __fish_kubectl_needs_resource -d 'Test if kubectl has yet to be given the subcommand resource' + set -l resources (__fish_kubectl_print_resource_types) + for i in (commandline -opc) + if contains -- $i $resources + return 1 + end + end + return 0 +end + +function __fish_kubectl_using_command + set -l cmd (__fish_kubectl_needs_command) + test -z "$cmd" + and return 1 + + contains -- $cmd $argv + and echo "$cmd" + and return 0 + + return 1 +end + +function __fish_kubectl_using_resource + set -l cmd (__fish_kubectl_needs_resource) + test -z "$cmd" + and return 1 + + contains -- $cmd $argv + and echo "$cmd" + and return 0 + + return 1 +end + +function __fish_kubectl_has_partial_resource_match + set -l last (commandline -opt) + if not set -l matches (string match -- "(.*)/" $last) + return + end + + if string match -q -- "(.*)/" $last + return 0 + end + + return 1 +end + +function __fish_kubectl_print_matching_resources + set -l last (commandline -opt) + if not set -l matches (string match -r -- "(.*)/" $last) + return + end + set -l prefix $matches[2] + set -l resources (__fish_kubectl_print_resource "$prefix") + for i in $resources + echo "$prefix/$i" + end +end + +function __fish_kubectl_get_context_flags + set -l cmd (commandline -opc) + if [ (count $cmd) -eq 0 ] + return 1 + end + + set -l foundContext 0 + + for c in $cmd + test $foundContext -eq 1 + set -l out "--context" "$c" + and echo $out + and return 0 + + if string match -q -r -- "--context=" "$c" + set -l out (string split -- "=" "$c" | string join " ") + and echo $out + and return 0 + else if contains -- "$c" "--context" + set foundContext 1 + end + end + + return 1 +end + +function __fish_kubectl_get_kubeconfig_flags + set -l cmd (commandline -opc) + if [ (count $cmd) -eq 0 ] + return 1 + end + + set -l foundKubeconfig 0 + + for c in $cmd + test $foundKubeconfig -eq 1 + set -l out "--kubeconfig" "$c" + and echo $out + and return 0 + + if string match -q -r -- "--kubeconfig=" "$c" + set -l out (string split -- "=" "$c" | string join " ") + and echo $out + and return 0 + else if contains -- "$c" "--kubeconfig" + set foundKubeconfig 1 + end + end + + return 1 +end + +function __fish_kubectl_get_ns_flags + set -l cmd (commandline -opc) + if [ (count $cmd) -eq 0 ] + return 1 + end + + set -l foundNamespace 0 + + for c in $cmd + test $foundNamespace -eq 1 + set -l out "--namespace" "$c" + and echo $out + and return 0 + + if contains -- $c $__kubectl_all_namespaces_flags + echo "--all-namespaces" + return 0 + end + + if contains -- $c "--namespace" "-n" + set foundNamespace 1 + end + end + + return 1 +end + +function __fish_kubectl_print_resource_types + for r in $__fish_kubectl_resources + echo $r + end + + if test $FISH_KUBECTL_COMPLETION_COMPLETE_CRDS -eq 1 + set -l crds (__fish_kubectl_get_crds) + + for r in $crds + echo $r + end + end +end + +function __fish_kubectl_print_current_resources -d 'Prints current resources' + set -l found 0 + # There is probably a better way to do this... + # found === 1 means that we have not yet found the crd type + # found === 2 means that we have not yet found the crd name, but have found the type + set -l current_resource + set -l crd_types (__fish_kubectl_get_crds) + for i in (commandline -opc) + if test $found -eq 0 + if contains -- $i $__fish_kubectl_subresource_commands + set found 1 + end + end + + if test $found -eq 1 + if contains -- $i $crd_types + set -l out (__fish_kubectl_print_resource $i) + for item in $out + echo "$item" + end + return 0 + end + end + end +end + +function __fish_kubectl_print_resource -d 'Print a list of resources' -a resource + set -l args + if set -l ns_flags (__fish_kubectl_get_ns_flags | string split " ") + for ns in $ns_flags + set args $args $ns + end + end + + set args $args get "$resource" + __fish_kubectl $args --no-headers 2>/dev/null | awk '{print $1}' | string replace -r '(.*)/' '' +end + +function __fish_kubectl_get_config -a type + set -l template "{{ range .$type }}"'{{ .name }}{{"\n"}}{{ end }}' + __fish_kubectl config view -o template --template="$template" +end + +function __fish_kubectl_get_rollout_resources + set -l args + if set -l ns_flags (__fish_kubectl_get_ns_flags | string split " ") + for ns in $ns_flags + set args $args $ns + end + end + + set -l template '{range .items[*]}{.metadata.name}{"\n"}{end}' + + set -l deploys (__fish_kubectl $args get deploy -o jsonpath="$template" 2>/dev/null) + set -l daemonsets (__fish_kubectl $args get ds -o jsonpath="$template" 2>/dev/null) + set -l sts (__fish_kubectl $args get sts -o jsonpath="$template" 2>/dev/null) + + for i in $deploys + echo "deploy/$i" + echo "deployment/$i" + echo "deployments/$i" + end + + for i in $daemonsets + echo "daemonset/$i" + echo "daemonsets/$i" + echo "ds/$i" + end + + for i in $sts + echo "statefulset/$i" + echo "statefulsets/$i" + echo "sts/$i" + end +end + +complete -c kubectl -f -n '__fish_kubectl_needs_command' -a '(__fish_kubectl_get_commands)' + +for subcmd in $__fish_kubectl_subresource_commands + complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and not __fish_seen_subcommand_from (__fish_kubectl_print_resource_types)" -a '(__fish_kubectl_print_resource_types)' -d 'Resource' + complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and __fish_kubectl_has_partial_resource_match" -a '(__fish_kubectl_print_matching_resources)' -d 'Resource' + for resource in $__fish_kubectl_resources + complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and __fish_seen_subcommand_from $resource" -a "(__fish_kubectl_print_resource $resource)" -d "$resource" + end + + if test $FISH_KUBECTL_COMPLETION_COMPLETE_CRDS -eq 1 + complete -c kubectl -f -n "__fish_kubectl_using_command $subcmd; and __fish_seen_subcommand_from (__fish_kubectl_get_crds)" -a '(__fish_kubectl_print_current_resources)' -d 'CRD' + end +end + +complete -c kubectl -f -n "__fish_seen_subcommand_from log logs exec port-forward" -a '(__fish_kubectl_print_resource pods)' -d 'Pod' +complete -c kubectl -f -n "__fish_seen_subcommand_from top; and __fish_seen_subcommand_from po pod pods" -a '(__fish_kubectl_print_resource pods)' -d 'Pod' +complete -c kubectl -f -n "__fish_seen_subcommand_from top; and __fish_seen_subcommand_from no node nodes" -a '(__fish_kubectl_print_resource nodes)' -d 'Node' + +for subcmd in cordon uncordon drain taint + complete -c kubectl -f -n "__fish_seen_subcommand_from $subcmd" -a '(__fish_kubectl_print_resource nodes)' -d 'Node' +end + +set -l __fish_kubectl_config_complete_contexts \ + delete-context \ + get-contexts \ + rename-contexts \ + set-context \ + use-context + +set -l __fish_kubectl_config_complete_clusters \ + delete-cluster \ + get-clusters \ + set-cluster + +complete -c kubectl -f -n "__fish_seen_subcommand_from config; and __fish_seen_subcommand_from $__fish_kubectl_config_complete_contexts" -a '(__fish_kubectl_get_config contexts)' -d 'Context' +complete -c kubectl -f -n "__fish_seen_subcommand_from config; and __fish_seen_subcommand_from $__fish_kubectl_config_complete_clusters" -a '(__fish_kubectl_get_config clusters)' -d 'Cluster' +complete -c kubectl -f -n "__fish_seen_subcommand_from rollout; and __fish_seen_subcommand_from (__fish_kubectl_get_rollout_commands_without_descriptions)" -a '(__fish_kubectl_get_rollout_resources)' +complete -c kubectl -f -r -l as -d 'Username to impersonate for the operation' +complete -c kubectl -f -r -l as-group -d 'Group to impersonate for the operation, this flag can be repeated to specify multiple groups.' +complete -c kubectl -r -l cache-dir -d 'Default cache directory' +complete -c kubectl -r -l certificate-authority -d 'Path to a cert file for the certificate authority' +complete -c kubectl -r -l client-certificate -d 'Path to a client certificate file for TLS' +complete -c kubectl -r -l client-key -d 'Path to a client key file for TLS' +complete -c kubectl -f -r -l cluster -d 'The name of the kubeconfig cluster to use' -a '(__fish_kubectl_get_config clusters)' +complete -c kubectl -f -r -l context -d 'The name of the kubeconfig context to use' -a '(__fish_kubectl_get_config contexts)' +complete -c kubectl -f -l insecure-skip-tls-verify -d 'If true, the server\'s certificate will not be checked for validity. This will make your HTTPS connections insecure' +complete -c kubectl -r -l kubeconfig -d 'Path to the kubeconfig file to use for CLI requests.' +complete -c kubectl -f -l match-server-version -d 'Require server version to match client version' +complete -c kubectl -f -r -s n -l namespace -d 'If present, the namespace scope for this CLI request' -a '(__fish_kubectl_print_resource namespace)' +complete -c kubectl -f -r -l password -d 'Password for basic authentication to the API server' +complete -c kubectl -f -r -l profile -d 'Name of profile to capture. One of (none|cpu|heap|goroutine|threadcreate|block|mutex)' +complete -c kubectl -f -r -l profile-output -d 'Name of the file to write the profile to' +complete -c kubectl -f -r -l request-timeout -d 'The length of time to wait before giving up on a single server request. Non-zero values should contain a corresponding time unit (e.g. 1s, 2m, 3h). A value of zero means don\'t timeout requests.' +complete -c kubectl -f -r -s s -l server -d 'The address and port of the Kubernetes API server' +complete -c kubectl -f -r -l tls-server-name -d 'Server name to use for server certificate validation. If it is not provided, the hostname used to contact the server is used' +complete -c kubectl -f -r -l token -d 'Bearer token for authentication to the API server' +complete -c kubectl -f -r -l user -d 'The name of the kubeconfig user to use' -a '(__fish_kubectl_get_config users)' +complete -c kubectl -f -r -l username -d 'Username for basic authentication to the API server' +complete -c kubectl -f -l warnings-as-errors -d 'Treat warnings received from the server as errors and exit with a non-zero exit code' + +# Completions for the "kubectl alpha" command +function __fish_kubectl_get_alpha_commands + echo debug\t'Create debugging sessions for troubleshooting workloads and nodes' +end + +function __fish_kubectl_get_alpha_commands_without_descriptions + __fish_kubectl_get_alpha_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command alpha; and not __fish_seen_subcommand_from (__fish_kubectl_get_alpha_commands_without_descriptions)" -a '(__fish_kubectl_get_alpha_commands)' + +# Completions for the "kubectl alpha debug" command +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l arguments-only -d 'If specified, everything after -- will be passed to the new container as Args instead of Command.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l attach -d 'If true, wait for the container to start running, and then attach as if \'kubectl attach ...\' were called. Default false, unless \'-i/--stdin\' is set, in which case the default is true.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -s c -l container -d 'Container name to use for debug container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l copy-to -d 'Create a copy of the target Pod with this name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l env -d 'Environment variables to set in the container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l image -d 'Container image to use for debug container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l image-pull-policy -d 'The image pull policy for the container. If left empty, this value will not be specified by the client and defaulted by the server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l quiet -d 'If true, suppress informational messages.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l replace -d 'When used with \'--copy-to\', delete the original Pod.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l same-node -d 'When used with \'--copy-to\', schedule the copy of target Pod on the same node.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l set-image -d 'When used with \'--copy-to\', a list of name=image pairs for changing container images, similar to how \'kubectl set image\' works.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -l share-processes -d 'When used with \'--copy-to\', enable process namespace sharing in the copy.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -s i -l stdin -d 'Keep stdin open on the container(s) in the pod, even if nothing is attached.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -r -l target -d 'When using an ephemeral container, target processes in this container name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from alpha debug' -s t -l tty -d 'Allocate a TTY for the debugging container.' + +# Completions for the "kubectl annotate" command +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' +complete -c kubectl -n '__fish_seen_subcommand_from annotate' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update the annotation' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l list -d 'If true, display the annotations for a given resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l local -d 'If true, annotation will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l overwrite -d 'If true, allow annotations to be overwritten, otherwise reject annotation updates that overwrite existing annotations.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -l resource-version -d 'If non-empty, the annotation update will only succeed if this is the current resource-version for the object. Only valid when specifying a single resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from annotate' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2).' +complete -c kubectl -n '__fish_seen_subcommand_from annotate' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl api-resources" command +complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -l api-group -d 'Limit to resources in the specified API group.' +complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -l cached -d 'Use the cached list of resources if available.' +complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -l namespaced -d 'If false, non-namespaced resources will be returned, otherwise returning namespaced resources by default.' +complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -l no-headers -d 'When using the default or custom-column output format, don\'t print headers (default print headers).' +complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -s o -l output -d 'Output format. One of: wide|name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -l sort-by -d 'If non-empty, sort list of resources using specified field. The field can be either \'name\' or \'kind\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from api-resources' -r -l verbs -d 'Limit to resources that support the specified verbs.' + +# Completions for the "kubectl apply" command +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l all -d 'Select all resources in the namespace of the specified resource types.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from apply' -r -s f -l filename -d 'that contains the configuration to apply' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l force-conflicts -d 'If true, server-side apply will force the changes against conflicts.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l openapi-patch -d 'If true, use openapi to calculate diff when the openapi presents and the resource can be found in the openapi spec. Otherwise, fall back to use baked-in types.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l overwrite -d 'Automatically resolve conflicts between the modified and live configuration by using values from the modified configuration' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l prune -d 'Automatically delete resource objects, including the uninitialized ones, that do not appear in the configs and are created by either apply or create --save-config. Should be used with either -l or --all.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l prune-whitelist -d 'Overwrite the default whitelist with <group/version/kind> for --prune' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l server-side -d 'If true, apply runs in the server instead of the client.' +complete -c kubectl -n '__fish_seen_subcommand_from apply' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' +function __fish_kubectl_get_apply_commands + echo edit-last-applied\t'Edit latest last-applied-configuration annotations of a resource/object' + echo set-last-applied\t'Set the last-applied-configuration annotation on a live object to match the contents of a file.' + echo view-last-applied\t'View latest last-applied-configuration annotations of a resource/object' +end + +function __fish_kubectl_get_apply_commands_without_descriptions + __fish_kubectl_get_apply_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command apply; and not __fish_seen_subcommand_from (__fish_kubectl_get_apply_commands_without_descriptions)" -a '(__fish_kubectl_get_apply_commands)' + +# Completions for the "kubectl apply edit-last-applied" command +complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from apply edit-last-applied' -r -s f -l filename -d 'Filename, directory, or URL to files to use to edit the resource' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from apply edit-last-applied' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply edit-last-applied' -l windows-line-endings -d 'Defaults to the line ending native to your platform.' + +# Completions for the "kubectl apply set-last-applied" command +complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -l create-annotation -d 'Will create \'last-applied-configuration\' annotations if current objects doesn\'t have one' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -n '__fish_seen_subcommand_from apply set-last-applied' -r -s f -l filename -d 'Filename, directory, or URL to files that contains the last-applied-configuration annotations' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply set-last-applied' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -n '__fish_seen_subcommand_from apply set-last-applied' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl apply view-last-applied" command +complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -l all -d 'Select all resources in the namespace of the specified resource types' +complete -c kubectl -n '__fish_seen_subcommand_from apply view-last-applied' -r -s f -l filename -d 'Filename, directory, or URL to files that contains the last-applied-configuration annotations' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -r -s o -l output -d 'Output format. Must be one of yaml|json' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from apply view-last-applied' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' + +# Completions for the "kubectl attach" command +complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -r -s c -l container -d 'Container name. If omitted, the first container in the pod will be chosen' +complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' +complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -s i -l stdin -d 'Pass stdin to the container' +complete -c kubectl -f -n '__fish_seen_subcommand_from attach' -s t -l tty -d 'Stdin is a TTY' + +# Completions for the "kubectl auth" command +function __fish_kubectl_get_auth_commands + echo can-i\t'Check whether an action is allowed' + echo reconcile\t'Reconciles rules for RBAC Role, RoleBinding, ClusterRole, and ClusterRole binding objects' +end + +function __fish_kubectl_get_auth_commands_without_descriptions + __fish_kubectl_get_auth_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command auth; and not __fish_seen_subcommand_from (__fish_kubectl_get_auth_commands_without_descriptions)" -a '(__fish_kubectl_get_auth_commands)' + +# Completions for the "kubectl auth can-i" command +complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -s A -l all-namespaces -d 'If true, check the specified action in all namespaces.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -l list -d 'If true, prints all allowed actions.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -l no-headers -d 'If true, prints allowed actions without headers' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -s q -l quiet -d 'If true, suppress output and just return the exit code.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth can-i' -r -l subresource -d 'SubResource such as pod/log or deployment/scale' + +# Completions for the "kubectl auth reconcile" command +complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -n '__fish_seen_subcommand_from auth reconcile' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to reconcile.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -l remove-extra-permissions -d 'If true, removes extra permissions added to roles' +complete -c kubectl -f -n '__fish_seen_subcommand_from auth reconcile' -l remove-extra-subjects -d 'If true, removes extra subjects added to rolebindings' +complete -c kubectl -n '__fish_seen_subcommand_from auth reconcile' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl autoscale" command +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l cpu-percent -d 'The target average CPU utilization (represented as a percent of requested CPU) over all the pods. If it\'s not specified or negative, a default autoscaling policy will be used.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from autoscale' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to autoscale.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l max -d 'The upper limit for the number of pods that can be set by the autoscaler. Required.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l min -d 'The lower limit for the number of pods that can be set by the autoscaler. If it\'s not specified or negative, the server will apply a default value.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -l name -d 'The name for the newly created object. If not specified, the name of the input resource will be used.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from autoscale' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from autoscale' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl certificate" command +function __fish_kubectl_get_certificate_commands + echo approve\t'Approve a certificate signing request' + echo deny\t'Deny a certificate signing request' +end + +function __fish_kubectl_get_certificate_commands_without_descriptions + __fish_kubectl_get_certificate_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command certificate; and not __fish_seen_subcommand_from (__fish_kubectl_get_certificate_commands_without_descriptions)" -a '(__fish_kubectl_get_certificate_commands)' + +# Completions for the "kubectl certificate approve" command +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -n '__fish_seen_subcommand_from certificate approve' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -l force -d 'Update the CSR even if it is already approved.' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate approve' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from certificate approve' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl certificate deny" command +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -n '__fish_seen_subcommand_from certificate deny' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -l force -d 'Update the CSR even if it is already denied.' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from certificate deny' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from certificate deny' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl cluster-info" command +function __fish_kubectl_get_cluster_info_commands + echo dump\t'Dump lots of relevant info for debugging and diagnosis' +end + +function __fish_kubectl_get_cluster_info_commands_without_descriptions + __fish_kubectl_get_cluster_info_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command cluster-info; and not __fish_seen_subcommand_from (__fish_kubectl_get_cluster_info_commands_without_descriptions)" -a '(__fish_kubectl_get_cluster_info_commands)' + +# Completions for the "kubectl cluster-info dump" command +complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -s A -l all-namespaces -d 'If true, dump all namespaces. If true, --namespaces is ignored.' +complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -l namespaces -d 'A comma separated list of namespaces to dump.' +complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -l output-directory -d 'Where to output the files. If empty or \'-\' uses stdout, otherwise creates a directory hierarchy in that directory' +complete -c kubectl -f -n '__fish_seen_subcommand_from cluster-info dump' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' +complete -c kubectl -n '__fish_seen_subcommand_from cluster-info dump' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl config" command +function __fish_kubectl_get_config_commands + echo current-context\t'Displays the current-context' + echo delete-cluster\t'Delete the specified cluster from the kubeconfig' + echo delete-context\t'Delete the specified context from the kubeconfig' + echo delete-user\t'Delete the specified user from the kubeconfig' + echo get-clusters\t'Display clusters defined in the kubeconfig' + echo get-contexts\t'Describe one or many contexts' + echo get-users\t'Display users defined in the kubeconfig' + echo rename-context\t'Renames a context from the kubeconfig file.' + echo set\t'Sets an individual value in a kubeconfig file' + echo set-cluster\t'Sets a cluster entry in kubeconfig' + echo set-context\t'Sets a context entry in kubeconfig' + echo set-credentials\t'Sets a user entry in kubeconfig' + echo unset\t'Unsets an individual value in a kubeconfig file' + echo use-context\t'Sets the current-context in a kubeconfig file' + echo use\t'Sets the current-context in a kubeconfig file' + echo view\t'Display merged kubeconfig settings or a specified kubeconfig file' +end + +function __fish_kubectl_get_config_commands_without_descriptions + __fish_kubectl_get_config_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command config; and not __fish_seen_subcommand_from (__fish_kubectl_get_config_commands_without_descriptions)" -a '(__fish_kubectl_get_config_commands)' + +# Completions for the "kubectl config get-contexts" command +complete -c kubectl -f -n '__fish_seen_subcommand_from config get-contexts' -l no-headers -d 'When using the default or custom-column output format, don\'t print headers (default print headers).' +complete -c kubectl -f -n '__fish_seen_subcommand_from config get-contexts' -r -s o -l output -d 'Output format. One of: name' + +# Completions for the "kubectl config set" command +complete -c kubectl -f -n '__fish_seen_subcommand_from config set' -r -l set-raw-bytes -d 'When writing a []byte PROPERTY_VALUE, write the given string directly without base64 decoding.' + +# Completions for the "kubectl config set-cluster" command +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-cluster' -r -l embed-certs -d 'embed-certs for the cluster entry in kubeconfig' + +# Completions for the "kubectl config set-context" command +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-context' -l current -d 'Modify the current context' + +# Completions for the "kubectl config set-credentials" command +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l auth-provider -d 'Auth provider for the user entry in kubeconfig' +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l auth-provider-arg -d '\'key=value\' arguments for the auth provider' +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l embed-certs -d 'Embed client cert/key for the user entry in kubeconfig' +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-api-version -d 'API version of the exec credential plugin for the user entry in kubeconfig' +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-arg -d 'New arguments for the exec credential plugin command for the user entry in kubeconfig' +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-command -d 'Command for the exec credential plugin for the user entry in kubeconfig' +complete -c kubectl -f -n '__fish_seen_subcommand_from config set-credentials' -r -l exec-env -d '\'key=value\' environment values for the exec credential plugin' + +# Completions for the "kubectl config view" command +complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l flatten -d 'Flatten the resulting kubeconfig file into self-contained output (useful for creating portable kubeconfig files)' +complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -r -l merge -d 'Merge the full hierarchy of kubeconfig files' +complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l minify -d 'Remove all information not used by current-context from the output' +complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from config view' -l raw -d 'Display raw byte data' +complete -c kubectl -n '__fish_seen_subcommand_from config view' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl cordon" command +complete -c kubectl -f -n '__fish_seen_subcommand_from cordon' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from cordon' -r -s l -l selector -d 'Selector (label query) to filter on' + +# Completions for the "kubectl cp" command +complete -c kubectl -f -n '__fish_seen_subcommand_from cp' -r -s c -l container -d 'Container name. If omitted, the first container in the pod will be chosen' +complete -c kubectl -f -n '__fish_seen_subcommand_from cp' -l no-preserve -d 'The copied file/directory\'s ownership and permissions will not be preserved in the container' + +# Completions for the "kubectl create" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l edit -d 'Edit the API resource before creating' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from create' -r -s f -l filename -d 'Filename, directory, or URL to files to use to create the resource' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -l raw -d 'Raw URI to POST to the server. Uses the transport specified by the kubeconfig file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -n '__fish_seen_subcommand_from create' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create' -l windows-line-endings -d 'Only relevant if --edit=true. Defaults to the line ending native to your platform.' +function __fish_kubectl_get_create_commands + echo clusterrole\t'Create a ClusterRole.' + echo clusterrolebinding\t'Create a ClusterRoleBinding for a particular ClusterRole' + echo configmap\t'Create a configmap from a local file, directory or literal value' + echo cm\t'Create a configmap from a local file, directory or literal value' + echo cronjob\t'Create a cronjob with the specified name.' + echo cj\t'Create a cronjob with the specified name.' + echo deployment\t'Create a deployment with the specified name.' + echo deploy\t'Create a deployment with the specified name.' + echo ingress\t'Create an ingress with the specified name.' + echo ing\t'Create an ingress with the specified name.' + echo job\t'Create a job with the specified name.' + echo namespace\t'Create a namespace with the specified name' + echo ns\t'Create a namespace with the specified name' + echo poddisruptionbudget\t'Create a pod disruption budget with the specified name.' + echo pdb\t'Create a pod disruption budget with the specified name.' + echo priorityclass\t'Create a priorityclass with the specified name.' + echo pc\t'Create a priorityclass with the specified name.' + echo quota\t'Create a quota with the specified name.' + echo resourcequota\t'Create a quota with the specified name.' + echo role\t'Create a role with single rule.' + echo rolebinding\t'Create a RoleBinding for a particular Role or ClusterRole' + echo secret\t'Create a secret using specified subcommand' + echo service\t'Create a service using specified subcommand.' + echo svc\t'Create a service using specified subcommand.' + echo serviceaccount\t'Create a service account with the specified name' + echo sa\t'Create a service account with the specified name' +end + +function __fish_kubectl_get_create_commands_without_descriptions + __fish_kubectl_get_create_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command create; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_commands_without_descriptions)" -a '(__fish_kubectl_get_create_commands)' + +# Completions for the "kubectl create clusterrole" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l aggregation-rule -d 'An aggregation label selector for combining ClusterRoles.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l non-resource-url -d 'A partial url that user should have access to.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l resource -d 'Resource that the rule applies to' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l resource-name -d 'Resource in the white list that the rule applies to, repeat this flag for multiple items' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create clusterrole' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrole' -r -l verb -d 'Verb that applies to the resources contained in the rule' + +# Completions for the "kubectl create clusterrolebinding" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l clusterrole -d 'ClusterRole this ClusterRoleBinding should reference' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l group -d 'Groups to bind to the clusterrole' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l serviceaccount -d 'Service accounts to bind to the clusterrole, in the format <namespace>:<name>' +complete -c kubectl -n '__fish_seen_subcommand_from create clusterrolebinding' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create clusterrolebinding' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create configmap" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l append-hash -d 'Append a hash of the configmap to its name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l append-hash -d 'Append a hash of the configmap to its name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l from-env-file -d 'Specify the path to a file to read lines of key=val pairs to create a configmap (i.e. a Docker .env file).' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l from-env-file -d 'Specify the path to a file to read lines of key=val pairs to create a configmap (i.e. a Docker .env file).' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l from-file -d 'Key file can be specified using its file path, in which case file basename will be used as configmap key, or optionally with a key and file path, in which case the given key will be used. Specifying a directory will iterate each named file in the directory whose basename is a valid configmap key.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l from-file -d 'Key file can be specified using its file path, in which case file basename will be used as configmap key, or optionally with a key and file path, in which case the given key will be used. Specifying a directory will iterate each named file in the directory whose basename is a valid configmap key.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -l from-literal -d 'Specify a key and literal value to insert in configmap (i.e. mykey=somevalue)' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -l from-literal -d 'Specify a key and literal value to insert in configmap (i.e. mykey=somevalue)' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create configmap' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create cm' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create configmap' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cm' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create cronjob" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l image -d 'Image name to run.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l image -d 'Image name to run.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l restart -d 'job\'s restart policy. supported values: OnFailure, Never' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l restart -d 'job\'s restart policy. supported values: OnFailure, Never' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -r -l schedule -d 'A schedule in the Cron format the job should be run with.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -r -l schedule -d 'A schedule in the Cron format the job should be run with.' +complete -c kubectl -n '__fish_seen_subcommand_from create cronjob' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create cj' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cronjob' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create cj' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create deployment" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l image -d 'Image names to run.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l image -d 'Image names to run.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -l port -d 'The port that this container exposes.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -l port -d 'The port that this container exposes.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -r -s r -l replicas -d 'Number of replicas to create. Default is 1.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -r -s r -l replicas -d 'Number of replicas to create. Default is 1.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create deployment' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create deploy' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deployment' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create deploy' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create ingress" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l annotation -d 'Annotation to insert in the ingress object, in the format annotation=value' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l annotation -d 'Annotation to insert in the ingress object, in the format annotation=value' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l class -d 'Ingress Class to be used' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l class -d 'Ingress Class to be used' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l default-backend -d 'Default service for backend, in format of svcname:port' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l default-backend -d 'Default service for backend, in format of svcname:port' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -r -l rule -d 'Rule in format host/path=service:port[,tls=secretname]. Paths containing the leading character \'*\' are considered pathType=Prefix. tls argument is optional.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -r -l rule -d 'Rule in format host/path=service:port[,tls=secretname]. Paths containing the leading character \'*\' are considered pathType=Prefix. tls argument is optional.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create ingress' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create ing' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ingress' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ing' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create job" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l from -d 'The name of the resource to create a Job from (only cronjob is supported).' +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -l image -d 'Image name to run.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create job' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create job' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create namespace" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create namespace' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create ns' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create namespace' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create ns' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create poddisruptionbudget" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l max-unavailable -d 'The maximum number or percentage of unavailable pods this budget requires.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l max-unavailable -d 'The maximum number or percentage of unavailable pods this budget requires.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l min-available -d 'The minimum number or percentage of available pods this budget requires.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l min-available -d 'The minimum number or percentage of available pods this budget requires.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l selector -d 'A label selector to use for this budget. Only equality-based selector requirements are supported.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -r -l selector -d 'A label selector to use for this budget. Only equality-based selector requirements are supported.' +complete -c kubectl -n '__fish_seen_subcommand_from create poddisruptionbudget' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create pdb' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create poddisruptionbudget' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pdb' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create priorityclass" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l description -d 'description is an arbitrary string that usually provides guidelines on when this priority class should be used.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l description -d 'description is an arbitrary string that usually provides guidelines on when this priority class should be used.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l global-default -d 'global-default specifies whether this PriorityClass should be considered as the default priority.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l global-default -d 'global-default specifies whether this PriorityClass should be considered as the default priority.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l preemption-policy -d 'preemption-policy is the policy for preempting pods with lower priority.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l preemption-policy -d 'preemption-policy is the policy for preempting pods with lower priority.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create priorityclass' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create pc' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create priorityclass' -r -l value -d 'the value of this priority class.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create pc' -r -l value -d 'the value of this priority class.' + +# Completions for the "kubectl create quota" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l hard -d 'A comma-delimited set of resource=quantity pairs that define a hard limit.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l hard -d 'A comma-delimited set of resource=quantity pairs that define a hard limit.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -r -l scopes -d 'A comma-delimited set of quota scopes that must all match each object tracked by the quota.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -r -l scopes -d 'A comma-delimited set of quota scopes that must all match each object tracked by the quota.' +complete -c kubectl -n '__fish_seen_subcommand_from create quota' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create resourcequota' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create quota' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create resourcequota' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create role" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l resource -d 'Resource that the rule applies to' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l resource-name -d 'Resource in the white list that the rule applies to, repeat this flag for multiple items' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create role' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create role' -r -l verb -d 'Verb that applies to the resources contained in the rule' + +# Completions for the "kubectl create rolebinding" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l clusterrole -d 'ClusterRole this RoleBinding should reference' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l group -d 'Groups to bind to the role' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l role -d 'Role this RoleBinding should reference' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -r -l serviceaccount -d 'Service accounts to bind to the role, in the format <namespace>:<name>' +complete -c kubectl -n '__fish_seen_subcommand_from create rolebinding' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create rolebinding' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create secret" command +function __fish_kubectl_get_create_secret_commands + echo docker-registry\t'Create a secret for use with a Docker registry' + echo generic\t'Create a secret from a local file, directory or literal value' + echo tls\t'Create a TLS secret' +end + +function __fish_kubectl_get_create_secret_commands_without_descriptions + __fish_kubectl_get_create_secret_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command secret; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_secret_commands_without_descriptions)" -a '(__fish_kubectl_get_create_secret_commands)' + +# Completions for the "kubectl create secret docker-registry" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l append-hash -d 'Append a hash of the secret to its name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-email -d 'Email for Docker registry' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-password -d 'Password for Docker registry authentication' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-server -d 'Server location for Docker registry' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l docker-username -d 'Username for Docker registry authentication' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -l from-file -d 'Key files can be specified using their file path, in which case a default name will be given to them, or optionally with a name and file path, in which case the given name will be used. Specifying a directory will iterate each named file in the directory that is a valid secret key.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create secret docker-registry' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret docker-registry' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create secret generic" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l append-hash -d 'Append a hash of the secret to its name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l from-env-file -d 'Specify the path to a file to read lines of key=val pairs to create a secret (i.e. a Docker .env file).' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l from-file -d 'Key files can be specified using their file path, in which case a default name will be given to them, or optionally with a name and file path, in which case the given name will be used. Specifying a directory will iterate each named file in the directory that is a valid secret key.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l from-literal -d 'Specify a key and literal value to insert in secret (i.e. mykey=somevalue)' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create secret generic' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -r -l type -d 'The type of secret to create' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret generic' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create secret tls" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l append-hash -d 'Append a hash of the secret to its name.' +complete -c kubectl -n '__fish_seen_subcommand_from create secret tls' -r -l cert -d 'Path to PEM encoded public key certificate.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from create secret tls' -r -l key -d 'Path to private key associated with given certificate.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create secret tls' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create secret tls' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create service" command +function __fish_kubectl_get_create_service_commands + echo clusterip\t'Create a ClusterIP service.' + echo externalname\t'Create an ExternalName service.' + echo loadbalancer\t'Create a LoadBalancer service.' + echo nodeport\t'Create a NodePort service.' +end + +function __fish_kubectl_get_create_service_commands_without_descriptions + __fish_kubectl_get_create_service_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command service; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_service_commands_without_descriptions)" -a '(__fish_kubectl_get_create_service_commands)' +complete -c kubectl -f -n "__fish_kubectl_using_command svc; and not __fish_seen_subcommand_from (__fish_kubectl_get_create_service_commands_without_descriptions)" -a '(__fish_kubectl_get_create_service_commands)' + +# Completions for the "kubectl create service clusterip" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l clusterip -d 'Assign your own ClusterIP or set to \'None\' for a \'headless\' service (no loadbalancing).' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' +complete -c kubectl -n '__fish_seen_subcommand_from create service clusterip' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service clusterip' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create service externalname" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l external-name -d 'External name of service' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' +complete -c kubectl -n '__fish_seen_subcommand_from create service externalname' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service externalname' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create service loadbalancer" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' +complete -c kubectl -n '__fish_seen_subcommand_from create service loadbalancer' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service loadbalancer' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create service nodeport" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l node-port -d 'Port used to expose the service on each node in a cluster.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -r -l tcp -d 'Port pairs can be specified as \'<port>:<targetPort>\'.' +complete -c kubectl -n '__fish_seen_subcommand_from create service nodeport' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create service nodeport' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl create serviceaccount" command +complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from create serviceaccount' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from create sa' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from create serviceaccount' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from create sa' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl debug" command +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l arguments-only -d 'If specified, everything after -- will be passed to the new container as Args instead of Command.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l attach -d 'If true, wait for the container to start running, and then attach as if \'kubectl attach ...\' were called. Default false, unless \'-i/--stdin\' is set, in which case the default is true.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -s c -l container -d 'Container name to use for debug container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l copy-to -d 'Create a copy of the target Pod with this name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l env -d 'Environment variables to set in the container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l image -d 'Container image to use for debug container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l image-pull-policy -d 'The image pull policy for the container. If left empty, this value will not be specified by the client and defaulted by the server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l quiet -d 'If true, suppress informational messages.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l replace -d 'When used with \'--copy-to\', delete the original Pod.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l same-node -d 'When used with \'--copy-to\', schedule the copy of target Pod on the same node.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l set-image -d 'When used with \'--copy-to\', a list of name=image pairs for changing container images, similar to how \'kubectl set image\' works.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -l share-processes -d 'When used with \'--copy-to\', enable process namespace sharing in the copy.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -s i -l stdin -d 'Keep stdin open on the container(s) in the pod, even if nothing is attached.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -r -l target -d 'When using an ephemeral container, target processes in this container name.' +complete -c kubectl -f -n '__fish_seen_subcommand_from debug' -s t -l tty -d 'Allocate a TTY for the debugging container.' + +# Completions for the "kubectl delete" command +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l all -d 'Delete all resources, including uninitialized ones, in the namespace of the specified resource types.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' +complete -c kubectl -n '__fish_seen_subcommand_from delete' -r -s f -l filename -d 'containing the resource to delete.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l ignore-not-found -d 'Treat "resource not found" as a successful delete. Defaults to "true" when --all is specified.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l now -d 'If true, resources are signaled for immediate shutdown (same as --grace-period=1).' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -s o -l output -d 'Output mode. Use "-o name" for shorter output (resource/name).' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l raw -d 'Raw URI to DELETE to the server. Uses the transport specified by the kubeconfig file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones.' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' +complete -c kubectl -f -n '__fish_seen_subcommand_from delete' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' + +# Completions for the "kubectl describe" command +complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' +complete -c kubectl -n '__fish_seen_subcommand_from describe' -r -s f -l filename -d 'Filename, directory, or URL to files containing the resource to describe' +complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from describe' -l show-events -d 'If true, display events related to the described object.' + +# Completions for the "kubectl diff" command +complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from diff' -r -s f -l filename -d 'Filename, directory, or URL to files contains the configuration to diff' +complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -l force-conflicts -d 'If true, server-side apply will force the changes against conflicts.' +complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from diff' -l server-side -d 'If true, apply runs in the server instead of the client.' + +# Completions for the "kubectl drain" command +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l delete-emptydir-data -d 'Continue even if there are pods using emptyDir (local data that will be deleted when the node is drained).' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l disable-eviction -d 'Force drain to use delete, even if eviction is supported. This will bypass checking PodDisruptionBudgets, use with caution.' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l force -d 'Continue even if there are pods not managed by a ReplicationController, ReplicaSet, Job, DaemonSet or StatefulSet.' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l grace-period -d 'Period of time in seconds given to each pod to terminate gracefully. If negative, the default value specified in the pod will be used.' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -l ignore-daemonsets -d 'Ignore DaemonSet-managed pods.' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l pod-selector -d 'Label selector to filter pods on the node' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -s l -l selector -d 'Selector (label query) to filter on' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l skip-wait-for-delete-timeout -d 'If pod DeletionTimestamp older than N seconds, skip waiting for the pod. Seconds must be greater than 0 to skip.' +complete -c kubectl -f -n '__fish_seen_subcommand_from drain' -r -l timeout -d 'The length of time to wait before giving up, zero means infinite' + +# Completions for the "kubectl edit" command +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from edit' -r -s f -l filename -d 'Filename, directory, or URL to files to use to edit the resource' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l output-patch -d 'Output the patch if the resource is edited.' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from edit' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from edit' -l windows-line-endings -d 'Defaults to the line ending native to your platform.' + +# Completions for the "kubectl exec" command +complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -r -s c -l container -d 'Container name. If omitted, the first container in the pod will be chosen' +complete -c kubectl -n '__fish_seen_subcommand_from exec' -r -s f -l filename -d 'to use to exec into the resource' +complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' +complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -s i -l stdin -d 'Pass stdin to the container' +complete -c kubectl -f -n '__fish_seen_subcommand_from exec' -s t -l tty -d 'Stdin is a TTY' + +# Completions for the "kubectl explain" command +complete -c kubectl -f -n '__fish_seen_subcommand_from explain' -r -l api-version -d 'Get different explanations for particular API version (API group/version)' +complete -c kubectl -f -n '__fish_seen_subcommand_from explain' -l recursive -d 'Print the fields of fields (Currently only 1 level deep)' + +# Completions for the "kubectl expose" command +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l cluster-ip -d 'ClusterIP to be assigned to the service. Leave empty to auto-allocate, or set to \'None\' to create a headless service.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l external-ip -d 'Additional external IP address (not managed by Kubernetes) to accept for the service. If this IP is routed to a node, the service can be accessed by this IP in addition to its generated service IP.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from expose' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to expose a service' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l generator -d 'The name of the API generator to use. There are 2 generators: \'service/v1\' and \'service/v2\'. The only difference between them is that service port in v1 is named \'default\', while it is left unnamed in v2. Default is \'service/v2\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -s l -l labels -d 'Labels to apply to the service created by this call.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l load-balancer-ip -d 'IP to assign to the LoadBalancer. If empty, an ephemeral IP will be created and used (cloud-provider specific).' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l name -d 'The name for the newly created object.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l overrides -d 'An inline JSON override for the generated object. If this is non-empty, it is used to override the generated object. Requires that the object supply a valid apiVersion field.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l port -d 'The port that the service should serve on. Copied from the resource being exposed, if unspecified' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l protocol -d 'The network protocol for the service to be created. Default is \'TCP\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l selector -d 'A label selector to use for this service. Only equality-based selector requirements are supported. If empty (the default) infer the selector from the replication controller or replica set.)' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l session-affinity -d 'If non-empty, set the session affinity for the service to this; legal values: \'None\', \'ClientIP\'' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l target-port -d 'Name or number for the port on the container that the service should direct traffic to. Optional.' +complete -c kubectl -n '__fish_seen_subcommand_from expose' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from expose' -r -l type -d 'Type for this service: ClusterIP, NodePort, LoadBalancer, or ExternalName. Default is \'ClusterIP\'.' + +# Completions for the "kubectl get" command +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l chunk-size -d 'Return large lists in chunks rather than all at once. Pass 0 to disable. This flag is beta and may change in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' +complete -c kubectl -n '__fish_seen_subcommand_from get' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l ignore-not-found -d 'If the requested object does not exist the command will return exit code 0.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s L -l label-columns -d 'Accepts a comma separated list of labels that are going to be presented as columns. Names are case-sensitive. You can also use multiple flag options like -L label1 -L label2...' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l no-headers -d 'When using the default or custom-column output format, don\'t print headers (default print headers).' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s o -l output -d 'Output format. One of: json|yaml|wide|name|custom-columns=...|custom-columns-file=...|go-template=...|go-template-file=...|jsonpath=...|jsonpath-file=... See custom columns [http://kubernetes.io/docs/user-guide/kubectl-overview/#custom-columns], golang template [http://golang.org/pkg/text/template/#pkg-overview] and jsonpath template [http://kubernetes.io/docs/user-guide/jsonpath].' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l output-watch-events -d 'Output watch event objects when --watch or --watch-only is used. Existing objects are output as initial ADDED events.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l raw -d 'Raw URI to request from the server. Uses the transport specified by the kubeconfig file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l server-print -d 'If true, have the server return the appropriate table output. Supports extension APIs and CRDs.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l show-kind -d 'If present, list the resource type for the requested object(s).' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l show-labels -d 'When printing, show all labels as the last column (default hide labels column)' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -r -l sort-by -d 'If non-empty, sort list types using this field specification. The field specification is expressed as a JSONPath expression (e.g. \'{.metadata.name}\'). The field in the API resource specified by this JSONPath expression must be an integer or a string.' +complete -c kubectl -n '__fish_seen_subcommand_from get' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -s w -l watch -d 'After listing/getting the requested object, watch for changes. Uninitialized objects are excluded if no object name is provided.' +complete -c kubectl -f -n '__fish_seen_subcommand_from get' -l watch-only -d 'Watch for changes to the requested object(s), without listing/getting first.' + +# Completions for the "kubectl label" command +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' +complete -c kubectl -n '__fish_seen_subcommand_from label' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update the labels' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l list -d 'If true, display the labels for a given resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l local -d 'If true, label will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l overwrite -d 'If true, allow labels to be overwritten, otherwise reject label updates that overwrite existing labels.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -l resource-version -d 'If non-empty, the labels update will only succeed if this is the current resource-version for the object. Only valid when specifying a single resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from label' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2).' +complete -c kubectl -n '__fish_seen_subcommand_from label' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl logs" command +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l all-containers -d 'Get all containers\' logs in the pod(s).' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -s c -l container -d 'Print the logs of this container' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -s f -l follow -d 'Specify if the logs should be streamed.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l ignore-errors -d 'If watching / following pod logs, allow for any errors that occur to be non-fatal' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l insecure-skip-tls-verify-backend -d 'Skip verifying the identity of the kubelet that logs are requested from. In theory, an attacker could provide invalid log content back. You might want to use this if your kubelet serving certificates have expired.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l limit-bytes -d 'Maximum bytes of logs to return. Defaults to no limit.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l max-log-requests -d 'Specify maximum number of concurrent logs to follow when using by a selector. Defaults to 5.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l prefix -d 'Prefix each log line with the log source (pod name and container name)' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -s p -l previous -d 'If true, print the logs for the previous instance of the container in a pod if it exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -s l -l selector -d 'Selector (label query) to filter on.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l since -d 'Only return logs newer than a relative duration like 5s, 2m, or 3h. Defaults to all logs. Only one of since-time / since may be used.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l since-time -d 'Only return logs after a specific date (RFC3339). Defaults to all logs. Only one of since-time / since may be used.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -r -l tail -d 'Lines of recent log file to display. Defaults to -1 with no selector, showing all log lines otherwise 10, if a selector is provided.' +complete -c kubectl -f -n '__fish_seen_subcommand_from logs' -l timestamps -d 'Include timestamps on each line in the log output' + +# Completions for the "kubectl patch" command +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from patch' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to update' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -l local -d 'If true, patch will operate on the content of the file, not the server-side resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -s p -l patch -d 'The patch to be applied to the resource JSON file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l patch-file -d 'A file containing a patch to be applied to the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from patch' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from patch' -r -l type -d 'The type of patch being provided; one of [json merge strategic]' + +# Completions for the "kubectl plugin" command +function __fish_kubectl_get_plugin_commands + echo list\t'list all visible plugin executables on a user\'s PATH' +end + +function __fish_kubectl_get_plugin_commands_without_descriptions + __fish_kubectl_get_plugin_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command plugin; and not __fish_seen_subcommand_from (__fish_kubectl_get_plugin_commands_without_descriptions)" -a '(__fish_kubectl_get_plugin_commands)' + +# Completions for the "kubectl plugin list" command +complete -c kubectl -f -n '__fish_seen_subcommand_from plugin list' -l name-only -d 'If true, display only the binary name of each plugin, rather than its full path' + +# Completions for the "kubectl port-forward" command +complete -c kubectl -f -n '__fish_seen_subcommand_from port-forward' -r -l address -d 'Addresses to listen on (comma separated). Only accepts IP addresses or localhost as a value. When localhost is supplied, kubectl will try to bind on both 127.0.0.1 and ::1 and will fail if neither of these addresses are available to bind.' +complete -c kubectl -f -n '__fish_seen_subcommand_from port-forward' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' + +# Completions for the "kubectl proxy" command +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l accept-hosts -d 'Regular expression for hosts that the proxy should accept.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l accept-paths -d 'Regular expression for paths that the proxy should accept.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l address -d 'The IP address on which to serve on.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l api-prefix -d 'Prefix to serve the proxied API under.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -l disable-filter -d 'If true, disable request filtering in the proxy. This is dangerous, and can leave you vulnerable to XSRF attacks, when used with an accessible port.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l keepalive -d 'keepalive specifies the keep-alive period for an active network connection. Set to 0 to disable keepalive.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s p -l port -d 'The port on which to run the proxy. Set to 0 to pick a random port.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l reject-methods -d 'Regular expression for HTTP methods that the proxy should reject (example --reject-methods=\'POST,PUT,PATCH\'). ' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -l reject-paths -d 'Regular expression for paths that the proxy should reject. Paths specified here will be rejected even accepted by --accept-paths.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s u -l unix-socket -d 'Unix socket on which to run the proxy.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s w -l www -d 'Also serve static files from the given directory under the specified prefix.' +complete -c kubectl -f -n '__fish_seen_subcommand_from proxy' -r -s P -l www-prefix -d 'Prefix to serve static files under, if static file directory is specified.' + +# Completions for the "kubectl replace" command +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from replace' -r -s f -l filename -d 'to use to replace the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l raw -d 'Raw URI to PUT to the server. Uses the transport specified by the kubeconfig file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -n '__fish_seen_subcommand_from replace' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l validate -d 'If true, use a schema to validate the input before sending it' +complete -c kubectl -f -n '__fish_seen_subcommand_from replace' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' + +# Completions for the "kubectl rollout" command +function __fish_kubectl_get_rollout_commands + echo history\t'View rollout history' + echo pause\t'Mark the provided resource as paused' + echo restart\t'Restart a resource' + echo resume\t'Resume a paused resource' + echo status\t'Show the status of the rollout' + echo undo\t'Undo a previous rollout' +end + +function __fish_kubectl_get_rollout_commands_without_descriptions + __fish_kubectl_get_rollout_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command rollout; and not __fish_seen_subcommand_from (__fish_kubectl_get_rollout_commands_without_descriptions)" -a '(__fish_kubectl_get_rollout_commands)' + +# Completions for the "kubectl rollout history" command +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout history' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout history' -r -l revision -d 'See the details, including podTemplate of the revision specified' +complete -c kubectl -n '__fish_seen_subcommand_from rollout history' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl rollout pause" command +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout pause' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout pause' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout pause' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl rollout restart" command +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout restart' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout restart' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout restart' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl rollout resume" command +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout resume' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout resume' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout resume' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl rollout status" command +complete -c kubectl -n '__fish_seen_subcommand_from rollout status' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -r -l revision -d 'Pin to a specific revision for showing its status. Defaults to 0 (last revision).' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -r -l timeout -d 'The length of time to wait before ending watch, zero means never. Any other values should contain a corresponding time unit (e.g. 1s, 2m, 3h).' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout status' -s w -l watch -d 'Watch the status of the rollout until it\'s done.' + +# Completions for the "kubectl rollout undo" command +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout undo' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from rollout undo' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from rollout undo' -r -l to-revision -d 'The revision to rollback to. Default to 0 (last revision).' + +# Completions for the "kubectl run" command +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l annotations -d 'Annotations to apply to the pod.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l attach -d 'If true, wait for the Pod to start running, and then attach to the Pod as if \'kubectl attach ...\' were called. Default false, unless \'-i/--stdin\' is set, in which case the default is true. With \'--restart=Never\' the exit code of the container process is returned.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l cascade -d 'Must be "background", "orphan", or "foreground". Selects the deletion cascading strategy for the dependents (e.g. Pods created by a ReplicationController). Defaults to background.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l command -d 'If true and extra arguments are present, use them as the \'command\' field in the container, rather than the \'args\' field which is the default.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l env -d 'Environment variables to set in the container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l expose -d 'If true, service is created for the container(s) which are run' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from run' -r -s f -l filename -d 'to use to replace the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l force -d 'If true, immediately remove resources from API and bypass graceful deletion. Note that immediate deletion of some resources may result in inconsistency or data loss and requires confirmation.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l grace-period -d 'Period of time in seconds given to the resource to terminate gracefully. Ignored if negative. Set to 1 for immediate shutdown. Can only be set to 0 when --force is true (force deletion).' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l hostport -d 'The host port mapping for the container port. To demonstrate a single-machine container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l image -d 'The image for the container to run.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l image-pull-policy -d 'The image pull policy for the container. If left empty, this value will not be specified by the client and defaulted by the server' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -s k -l kustomize -d 'Process a kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -s l -l labels -d 'Comma separated labels to apply to the pod(s). Will override previous values.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l leave-stdin-open -d 'If the pod is started in interactive mode or with stdin, leave stdin open after the first attach completes. By default, stdin will be closed after the first attach completes.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l limits -d 'The resource requirement limits for this container. For example, \'cpu=200m,memory=512Mi\'. Note that server side components may assign limits depending on the server configuration, such as limit ranges.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l overrides -d 'An inline JSON override for the generated object. If this is non-empty, it is used to override the generated object. Requires that the object supply a valid apiVersion field.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l pod-running-timeout -d 'The length of time (like 5s, 2m, or 3h, higher than zero) to wait until at least one pod is running' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l port -d 'The port that this container exposes.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l privileged -d 'If true, run the container in privileged mode.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l quiet -d 'If true, suppress prompt messages.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l requests -d 'The resource requirement requests for this container. For example, \'cpu=100m,memory=256Mi\'. Note that server side components may assign requests depending on the server configuration, such as limit ranges.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l restart -d 'The restart policy for this Pod. Legal values [Always, OnFailure, Never].' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l rm -d 'If true, delete resources created in this command for attached containers.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l save-config -d 'If true, the configuration of current object will be saved in its annotation. Otherwise, the annotation will be unchanged. This flag is useful when you want to perform kubectl apply on this object in the future.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l serviceaccount -d 'Service account to set in the pod spec.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -s i -l stdin -d 'Keep stdin open on the container(s) in the pod, even if nothing is attached.' +complete -c kubectl -n '__fish_seen_subcommand_from run' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -r -l timeout -d 'The length of time to wait before giving up on a delete, zero means determine a timeout from the size of the object' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -s t -l tty -d 'Allocated a TTY for each container in the pod.' +complete -c kubectl -f -n '__fish_seen_subcommand_from run' -l wait -d 'If true, wait for resources to be gone before returning. This waits for finalizers.' + +# Completions for the "kubectl scale" command +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -l all -d 'Select all resources in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l current-replicas -d 'Precondition for current size. Requires that the current size of the resource match this value in order to scale.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -n '__fish_seen_subcommand_from scale' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to set a new size' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l replicas -d 'The new desired number of replicas. Required.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l resource-version -d 'Precondition for resource version. Requires that the current resource version match this value in order to scale.' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -n '__fish_seen_subcommand_from scale' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from scale' -r -l timeout -d 'The length of time to wait before giving up on a scale operation, zero means don\'t wait. Any other values should contain a corresponding time unit (e.g. 1s, 2m, 3h).' + +# Completions for the "kubectl set" command +function __fish_kubectl_get_set_commands + echo env\t'Update environment variables on a pod template' + echo image\t'Update image of a pod template' + echo resources\t'Update resource requests/limits on objects with pod templates' + echo selector\t'Set the selector on a resource' + echo serviceaccount\t'Update ServiceAccount of a resource' + echo sa\t'Update ServiceAccount of a resource' + echo subject\t'Update User, Group or ServiceAccount in a RoleBinding/ClusterRoleBinding' +end + +function __fish_kubectl_get_set_commands_without_descriptions + __fish_kubectl_get_set_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command set; and not __fish_seen_subcommand_from (__fish_kubectl_get_set_commands_without_descriptions)" -a '(__fish_kubectl_get_set_commands)' + +# Completions for the "kubectl set env" command +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l all -d 'If true, select all resources in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s c -l containers -d 'The names of containers in the selected pod templates to change - may use wildcards' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s e -l env -d 'Specify a key-value pair for an environment variable to set into each container.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from set env' -r -s f -l filename -d 'Filename, directory, or URL to files the resource to update the env' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l from -d 'The name of a resource from which to inject environment variables' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l keys -d 'Comma-separated list of keys to import from specified resource' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l list -d 'If true, display the environment and any changes in the standard format. this flag will removed when we have kubectl view env.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l local -d 'If true, set env will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l overwrite -d 'If true, allow environment to be overwritten, otherwise reject updates that overwrite existing environment.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -l prefix -d 'Prefix to append to variable names' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -l resolve -d 'If true, show secret or configmap references when listing variables' +complete -c kubectl -f -n '__fish_seen_subcommand_from set env' -r -s l -l selector -d 'Selector (label query) to filter on' +complete -c kubectl -n '__fish_seen_subcommand_from set env' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl set image" command +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from set image' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l local -d 'If true, set image will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set image' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -n '__fish_seen_subcommand_from set image' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl set resources" command +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s c -l containers -d 'The names of containers in the selected pod templates to change, all containers are selected by default - may use wildcards' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from set resources' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l limits -d 'The resource requirement requests for this container. For example, \'cpu=100m,memory=256Mi\'. Note that server side components may assign requests depending on the server configuration, such as limit ranges.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l local -d 'If true, set resources will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -l requests -d 'The resource requirement requests for this container. For example, \'cpu=100m,memory=256Mi\'. Note that server side components may assign requests depending on the server configuration, such as limit ranges.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set resources' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones,supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -n '__fish_seen_subcommand_from set resources' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl set selector" command +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l all -d 'Select all resources in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from set selector' -r -s f -l filename -d 'identifying the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l local -d 'If true, annotation will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set selector' -r -l resource-version -d 'If non-empty, the selectors update will only succeed if this is the current resource-version for the object. Only valid when specifying a single resource.' +complete -c kubectl -n '__fish_seen_subcommand_from set selector' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl set serviceaccount" command +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from set serviceaccount' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -n '__fish_seen_subcommand_from set sa' -r -s f -l filename -d 'Filename, directory, or URL to files identifying the resource to get from a server.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l local -d 'If true, set serviceaccount will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l local -d 'If true, set serviceaccount will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -l record -d 'Record current kubectl command in the resource annotation. If set to false, do not record the command. If set to true, record the command. If not set, default to updating the existing annotation value only if one already exists.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set serviceaccount' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set sa' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -n '__fish_seen_subcommand_from set serviceaccount' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -n '__fish_seen_subcommand_from set sa' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl set subject" command +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -l all -d 'Select all resources, including uninitialized ones, in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -n '__fish_seen_subcommand_from set subject' -r -s f -l filename -d 'Filename, directory, or URL to files the resource to update the subjects' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l group -d 'Groups to bind to the role' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -s k -l kustomize -d 'Process the kustomization directory. This flag can\'t be used together with -f or -R.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -l local -d 'If true, set subject will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -s l -l selector -d 'Selector (label query) to filter on, not including uninitialized ones, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from set subject' -r -l serviceaccount -d 'Service accounts to bind to the role' +complete -c kubectl -n '__fish_seen_subcommand_from set subject' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' + +# Completions for the "kubectl taint" command +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l all -d 'Select all nodes in the cluster' +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -l field-manager -d 'Name of the manager used to track field ownership.' +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l overwrite -d 'If true, allow taints to be overwritten, otherwise reject taint updates that overwrite existing taints.' +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -n '__fish_seen_subcommand_from taint' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from taint' -l validate -d 'If true, use a schema to validate the input before sending it' + +# Completions for the "kubectl top" command +function __fish_kubectl_get_top_commands + echo node\t'Display Resource (CPU/Memory/Storage) usage of nodes' + echo nodes\t'Display Resource (CPU/Memory/Storage) usage of nodes' + echo no\t'Display Resource (CPU/Memory/Storage) usage of nodes' + echo pod\t'Display Resource (CPU/Memory/Storage) usage of pods' + echo pods\t'Display Resource (CPU/Memory/Storage) usage of pods' + echo po\t'Display Resource (CPU/Memory/Storage) usage of pods' +end + +function __fish_kubectl_get_top_commands_without_descriptions + __fish_kubectl_get_top_commands | string replace -r '\t.*$' '' +end + +complete -c kubectl -f -n "__fish_kubectl_using_command top; and not __fish_seen_subcommand_from (__fish_kubectl_get_top_commands_without_descriptions)" -a '(__fish_kubectl_get_top_commands)' + +# Completions for the "kubectl top node" command +complete -c kubectl -f -n '__fish_seen_subcommand_from top node' -l no-headers -d 'If present, print output without headers' +complete -c kubectl -f -n '__fish_seen_subcommand_from top nodes' -l no-headers -d 'If present, print output without headers' +complete -c kubectl -f -n '__fish_seen_subcommand_from top no' -l no-headers -d 'If present, print output without headers' +complete -c kubectl -f -n '__fish_seen_subcommand_from top node' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from top nodes' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from top no' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from top node' -r -l sort-by -d 'If non-empty, sort nodes list using specified field. The field can be either \'cpu\' or \'memory\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top nodes' -r -l sort-by -d 'If non-empty, sort nodes list using specified field. The field can be either \'cpu\' or \'memory\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top no' -r -l sort-by -d 'If non-empty, sort nodes list using specified field. The field can be either \'cpu\' or \'memory\'.' + +# Completions for the "kubectl top pod" command +complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -l containers -d 'If present, print usage of containers within a pod.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -l containers -d 'If present, print usage of containers within a pod.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -l containers -d 'If present, print usage of containers within a pod.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -l no-headers -d 'If present, print output without headers.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -l no-headers -d 'If present, print output without headers.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -l no-headers -d 'If present, print output without headers.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pod' -r -l sort-by -d 'If non-empty, sort pods list using specified field. The field can be either \'cpu\' or \'memory\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top pods' -r -l sort-by -d 'If non-empty, sort pods list using specified field. The field can be either \'cpu\' or \'memory\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from top po' -r -l sort-by -d 'If non-empty, sort pods list using specified field. The field can be either \'cpu\' or \'memory\'.' + +# Completions for the "kubectl uncordon" command +complete -c kubectl -f -n '__fish_seen_subcommand_from uncordon' -r -l dry-run -d 'Must be "none", "server", or "client". If client strategy, only print the object that would be sent, without sending it. If server strategy, submit server-side request without persisting the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from uncordon' -r -s l -l selector -d 'Selector (label query) to filter on' + +# Completions for the "kubectl version" command +complete -c kubectl -f -n '__fish_seen_subcommand_from version' -l client -d 'If true, shows client version only (no server required).' +complete -c kubectl -f -n '__fish_seen_subcommand_from version' -r -s o -l output -d 'One of \'yaml\' or \'json\'.' +complete -c kubectl -f -n '__fish_seen_subcommand_from version' -l short -d 'If true, print just the version number.' + +# Completions for the "kubectl wait" command +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -l all -d 'Select all resources in the namespace of the specified resource types' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -s A -l all-namespaces -d 'If present, list the requested object(s) across all namespaces. Namespace in current context is ignored even if specified with --namespace.' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -l allow-missing-template-keys -d 'If true, ignore any errors in templates when a field or map key is missing in the template. Only applies to golang and jsonpath output formats.' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -l field-selector -d 'Selector (field query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. --field-selector key1=value1,key2=value2). The server only supports a limited number of field queries per type.' +complete -c kubectl -n '__fish_seen_subcommand_from wait' -r -s f -l filename -d 'identifying the resource.' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -l for -d 'The condition to wait on: [delete|condition=condition-name].' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -l local -d 'If true, annotation will NOT contact api-server but run locally.' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -s o -l output -d 'Output format. One of: json|yaml|name|go-template|go-template-file|template|templatefile|jsonpath|jsonpath-as-json|jsonpath-file.' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -s R -l recursive -d 'Process the directory used in -f, --filename recursively. Useful when you want to manage related manifests organized within the same directory.' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -s l -l selector -d 'Selector (label query) to filter on, supports \'=\', \'==\', and \'!=\'.(e.g. -l key1=value1,key2=value2)' +complete -c kubectl -n '__fish_seen_subcommand_from wait' -r -l template -d 'Template string or path to template file to use when -o=go-template, -o=go-template-file. The template format is golang templates [http://golang.org/pkg/text/template/#pkg-overview].' +complete -c kubectl -f -n '__fish_seen_subcommand_from wait' -r -l timeout -d 'The length of time to wait before giving up. Zero means check once and don\'t wait, negative means wait for a week.' diff --git a/dot_config/fish/completions/nc.fish b/dot_config/fish/completions/nc.fish new file mode 100644 index 0000000..4dc5f18 --- /dev/null +++ b/dot_config/fish/completions/nc.fish @@ -0,0 +1,12 @@ +# There a several different implementations of netcat. +# Try to figure out which is the current used one +# and load the right set of completions. + +set -l flavor +if string match -rq -- '^OpenBSD netcat' (nc -h 2>&1)[1] + set flavor nc.openbsd +else + set flavor (basename (realpath (command -v nc))) +end + +__fish_complete_netcat nc $flavor diff --git a/dot_config/fish/completions/nc.openbsd.fish b/dot_config/fish/completions/nc.openbsd.fish new file mode 100644 index 0000000..f93163c --- /dev/null +++ b/dot_config/fish/completions/nc.openbsd.fish @@ -0,0 +1 @@ +__fish_complete_netcat nc.openbsd diff --git a/dot_config/fish/completions/nc.traditional.fish b/dot_config/fish/completions/nc.traditional.fish new file mode 100644 index 0000000..8d0c10f --- /dev/null +++ b/dot_config/fish/completions/nc.traditional.fish @@ -0,0 +1 @@ +__fish_complete_netcat nc.traditional diff --git a/dot_config/fish/completions/ncat.fish b/dot_config/fish/completions/ncat.fish new file mode 100644 index 0000000..186b6bf --- /dev/null +++ b/dot_config/fish/completions/ncat.fish @@ -0,0 +1,74 @@ +# Completions for ncat (https://www.nmap.org) + +complete -c ncat -f -a "(__fish_print_hostnames)" + +# PROTOCOL OPTIONS +complete -c ncat -s 4 -d "IPv4 only" +complete -c ncat -s 6 -d "IPv6 only" +complete -c ncat -s U -l unixsock -d "Use Unix domain sockets" +complete -c ncat -s u -l udp -d "Use UDP" +complete -c ncat -l sctp -d "Use SCTP" + +# CONNECT MODE OPTIONS +complete -c ncat -s g -x -d "Loose source routing" +complete -c ncat -s G -x -d "Set source routing pointer" +complete -c ncat -s p -l source-port -x -d "Specify source port" +complete -c ncat -s s -l source -x -d "Specify source address" + +# LISTEN MODE OPTIONS +complete -c ncat -s l -l listen -d "Listen for connections" +complete -c ncat -s m -l max-conns -x -d "Specify maximum number of connections" +complete -c ncat -s k -l keep-open -d "Accept multiple connections" +complete -c ncat -l broker -d "Connection brokering" +complete -c ncat -l chat -d "Ad-hoc \"chat server\"" + +# SSL OPTIONS +complete -c ncat -l ssl -d "Use SSL" +complete -c ncat -l ssl-verify -d "Verify server certificates" +complete -c ncat -l ssl-cert -r -d "Specify SSL certificate" +complete -c ncat -l ssl-key -r -d "Specify SSL private key" +complete -c ncat -l ssl-trustfile -r -d "List trusted certificates" +function __fish_complete_openssl_ciphers + openssl ciphers -s -stdname | string replace -r '^([^ ]*) - ([^ ]*).*$' '$2\t$1' + for cs in COMPLEMENTOFDEFAULT ALL COMPLEMENTOFALL HIGH MEDIUM LOW eNULL NULL aNULL kRSA aRSA RSA kDHr kDHd kDH kDHE kEDH DH DHE EDH ADH kEECDH kECDHE ECDH ECDHE EECDH AECDH aDSS DSS aDH aECDSA ECDSA TLSv1.2 TLSv1.0 SSLv3 AES128 AES256 AES AESGCM AESCCM AESCCM8 ARIA128 ARIA256 ARIA CAMELLIA128 CAMELLIA256 CAMELLIA CHACHA20 3DES DES RC4 RC2 IDEA SEED MD5 SHA1 SHA SHA256 SHA384 aGOST aGOST01 kGOST GOST94 GOST89MAC PSK kPSK kECDHEPSK kDHEPSK kRSAPSK aPSK SUITEB128 SUITEB128ONLY SUITEB192 + printf "%s\tCipher String\n" $cs + end +end +complete -c ncat -l ssl-ciphers -x -a "(__fish_complete_list : __fish_complete_openssl_ciphers)" -d "Specify SSL ciphersuites" +complete -c ncat -l ssl-alpn -x -d "Specify ALPN protocol list" + +# PROXY OPTIONS +complete -c ncat -l proxy -x -d "Specify proxy address" +complete -c ncat -l proxy-type -x -d "Specify proxy protocol" +complete -c ncat -l proxy-auth -x -d "Specify proxy credentials" + +# COMMAND EXECUTION OPTIONS +complete -c ncat -s e -l exec -r -d "Execute command" +complete -c ncat -s c -l sh-exec -r -d "Execute command via sh" +complete -c ncat -l lua-exec -r -d "Execute a .lua script" + +# ACCESS CONTROL OPTIONS +complete -c ncat -l allow -x -a "(__fish_print_hostnames)" -d "Allow connections" +complete -c ncat -l allowfile -r -d "Allow connections from file" +complete -c ncat -l deny -x -a "(__fish_print_hostnames)" -d "Deny connections" +complete -c ncat -l denyfile -r -d "Deny connections from file" + +# TIMING OPTIONS +complete -c ncat -s d -l delay -x -d "Specify line delay" +complete -c ncat -s i -l idle-timeout -x -d "Specify idle timeout" +complete -c ncat -s w -l wait -x -d "Specify connect timeout" + +# OUTPUT OPTIONS +complete -c ncat -s o -l output -r -d "Save session data" +complete -c ncat -s x -l hex-dump -r -d "Save session data in hex" +complete -c ncat -l append-output -d "Append output" +complete -c ncat -s v -l verbose -d "Be verbose" + +# MISC OPTIONS +complete -c ncat -s C -l crlf -d "Use CRLF as EOL" +complete -c ncat -s h -l help -d "Help screen" +complete -c ncat -l -recv-only -d "Only receive data" +complete -c ncat -l send-only -d "Only send data" +complete -c ncat -l no-shutdown -d "Do not shutdown into half-duplex mode" +complete -c ncat -s t -l telnet -d "Answer Telnet negotiations" +complete -c ncat -l version -d "Display version" diff --git a/dot_config/fish/completions/netcat.fish b/dot_config/fish/completions/netcat.fish new file mode 100644 index 0000000..a33e8e2 --- /dev/null +++ b/dot_config/fish/completions/netcat.fish @@ -0,0 +1,12 @@ +# There a several different implementations of netcat. +# Try to figure out which is the current used one +# and load the right set of completions. + +set -l flavor +if string match -rq -- '^OpenBSD netcat' (netcat -h 2>&1)[1] + set flavor nc.openbsd +else + set flavor (basename (realpath (command -v netcat))) +end + +__fish_complete_netcat netcat $flavor diff --git a/dot_config/fish/conf.d/key-bindings.fish b/dot_config/fish/conf.d/key-bindings.fish new file mode 100644 index 0000000..36b3aa3 --- /dev/null +++ b/dot_config/fish/conf.d/key-bindings.fish @@ -0,0 +1,172 @@ +# ____ ____ +# / __/___ / __/ +# / /_/_ / / /_ +# / __/ / /_/ __/ +# /_/ /___/_/ key-bindings.fish +# +# - $FZF_TMUX_OPTS +# - $FZF_CTRL_T_COMMAND +# - $FZF_CTRL_T_OPTS +# - $FZF_CTRL_R_OPTS +# - $FZF_ALT_C_COMMAND +# - $FZF_ALT_C_OPTS + +# Key bindings +# ------------ +function fzf_key_bindings + + # Store current token in $dir as root for the 'find' command + function fzf-file-widget -d "List files and folders" + set -l commandline (__fzf_parse_commandline) + set -l dir $commandline[1] + set -l fzf_query $commandline[2] + set -l prefix $commandline[3] + + # "-path \$dir'*/\\.*'" matches hidden files/folders inside $dir but not + # $dir itself, even if hidden. + test -n "$FZF_CTRL_T_COMMAND"; or set -l FZF_CTRL_T_COMMAND " + command find -L \$dir -mindepth 1 \\( -path \$dir'*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' \\) -prune \ + -o -type f -print \ + -o -type d -print \ + -o -type l -print 2> /dev/null | sed 's@^\./@@'" + + test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% + begin + set -lx FZF_DEFAULT_OPTS "--height $FZF_TMUX_HEIGHT --reverse --bind=ctrl-z:ignore $FZF_DEFAULT_OPTS $FZF_CTRL_T_OPTS" + eval "$FZF_CTRL_T_COMMAND | "(__fzfcmd)' -m --query "'$fzf_query'"' | while read -l r; set result $result $r; end + end + if [ -z "$result" ] + commandline -f repaint + return + else + # Remove last token from commandline. + commandline -t "" + end + for i in $result + commandline -it -- $prefix + commandline -it -- (string escape $i) + commandline -it -- ' ' + end + commandline -f repaint + end + + function fzf-history-widget -d "Show command history" + test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% + begin + set -lx FZF_DEFAULT_OPTS "--height $FZF_TMUX_HEIGHT $FZF_DEFAULT_OPTS --tiebreak=index --bind=ctrl-r:toggle-sort,ctrl-z:ignore $FZF_CTRL_R_OPTS +m" + + set -l FISH_MAJOR (echo $version | cut -f1 -d.) + set -l FISH_MINOR (echo $version | cut -f2 -d.) + + # history's -z flag is needed for multi-line support. + # history's -z flag was added in fish 2.4.0, so don't use it for versions + # before 2.4.0. + if [ "$FISH_MAJOR" -gt 2 -o \( "$FISH_MAJOR" -eq 2 -a "$FISH_MINOR" -ge 4 \) ]; + history -z | eval (__fzfcmd) --read0 --print0 -q '(commandline)' | read -lz result + and commandline -- $result + else + history | eval (__fzfcmd) -q '(commandline)' | read -l result + and commandline -- $result + end + end + commandline -f repaint + end + + function fzf-cd-widget -d "Change directory" + set -l commandline (__fzf_parse_commandline) + set -l dir $commandline[1] + set -l fzf_query $commandline[2] + set -l prefix $commandline[3] + + test -n "$FZF_ALT_C_COMMAND"; or set -l FZF_ALT_C_COMMAND " + command find -L \$dir -mindepth 1 \\( -path \$dir'*/\\.*' -o -fstype 'sysfs' -o -fstype 'devfs' -o -fstype 'devtmpfs' \\) -prune \ + -o -type d -print 2> /dev/null | sed 's@^\./@@'" + test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% + begin + set -lx FZF_DEFAULT_OPTS "--height $FZF_TMUX_HEIGHT --reverse --bind=ctrl-z:ignore $FZF_DEFAULT_OPTS $FZF_ALT_C_OPTS" + eval "$FZF_ALT_C_COMMAND | "(__fzfcmd)' +m --query "'$fzf_query'"' | read -l result + + if [ -n "$result" ] + builtin cd -- $result + + # Remove last token from commandline. + commandline -t "" + commandline -it -- $prefix + end + end + + commandline -f repaint + end + + function __fzfcmd + test -n "$FZF_TMUX"; or set FZF_TMUX 0 + test -n "$FZF_TMUX_HEIGHT"; or set FZF_TMUX_HEIGHT 40% + if [ -n "$FZF_TMUX_OPTS" ] + echo "fzf-tmux $FZF_TMUX_OPTS -- " + else if [ $FZF_TMUX -eq 1 ] + echo "fzf-tmux -d$FZF_TMUX_HEIGHT -- " + else + echo "fzf" + end + end + + bind \ct fzf-file-widget + bind \cr fzf-history-widget + bind \ec fzf-cd-widget + + if bind -M insert > /dev/null 2>&1 + bind -M insert \ct fzf-file-widget + bind -M insert \cr fzf-history-widget + bind -M insert \ec fzf-cd-widget + end + + function __fzf_parse_commandline -d 'Parse the current command line token and return split of existing filepath, fzf query, and optional -option= prefix' + set -l commandline (commandline -t) + + # strip -option= from token if present + set -l prefix (string match -r -- '^-[^\s=]+=' $commandline) + set commandline (string replace -- "$prefix" '' $commandline) + + # eval is used to do shell expansion on paths + eval set commandline $commandline + + if [ -z $commandline ] + # Default to current directory with no --query + set dir '.' + set fzf_query '' + else + set dir (__fzf_get_dir $commandline) + + if [ "$dir" = "." -a (string sub -l 1 -- $commandline) != '.' ] + # if $dir is "." but commandline is not a relative path, this means no file path found + set fzf_query $commandline + else + # Also remove trailing slash after dir, to "split" input properly + set fzf_query (string replace -r "^$dir/?" -- '' "$commandline") + end + end + + echo $dir + echo $fzf_query + echo $prefix + end + + function __fzf_get_dir -d 'Find the longest existing filepath from input string' + set dir $argv + + # Strip all trailing slashes. Ignore if $dir is root dir (/) + if [ (string length -- $dir) -gt 1 ] + set dir (string replace -r '/*$' -- '' $dir) + end + + # Iteratively check if dir exists and strip tail end of path + while [ ! -d "$dir" ] + # If path is absolute, this can keep going until ends up at / + # If path is relative, this can keep going until entire input is consumed, dirname returns "." + set dir (dirname -- "$dir") + end + + echo $dir + end + +end diff --git a/dot_config/fish/config.fish b/dot_config/fish/config.fish new file mode 100644 index 0000000..85928c5 --- /dev/null +++ b/dot_config/fish/config.fish @@ -0,0 +1,28 @@ +set PATH ~/bin ~/.local/bin ~/.go/bin ~/.cargo/bin /bin /sbin /usr/local/bin /usr/local/sbin /usr/bin /usr/sbin ~/.cabal/bin ~/.ghcup/bin /usr/lib/go/bin ~/.gem/ruby/1.9.1/bin ~/.rye/shims $PATH + +if command -vq flatpak + set -ga fish_user_paths ~/.local/share/flatpak/exports/bin /var/lib/flatpak/exports/bin + set -gx --path XDG_DATA_DIRS /usr/local/share/ /usr/share/ ~/.local/share/flatpak/exports/share + for install_dir in (flatpak --installations) + set -gxa XDG_DATA_DIRS $install_dir/exports/share + end +end + +set fish_greeting "" +set EDITOR vi +set -x GOPATH ~/.go + +if test -e $HOME/.asdf/asdf.fish + . ~/.asdf/asdf.fish +end + +if test -e $HOME/.config/fish/work.fish + . ~/.config/fish/work.fish +end + +. ~/.config/fish/fish_aliases.fish + +# The next line updates PATH for the Google Cloud SDK. +if [ -f '/home/barak/local/google-cloud-sdk/path.fish.inc' ]; . '/home/barak/local/google-cloud-sdk/path.fish.inc'; end + +set GOOGLE_APPLICATION_CREDENTIALS "/home/barak/.memtoken.json" diff --git a/dot_config/fish/fish_aliases.fish b/dot_config/fish/fish_aliases.fish new file mode 100644 index 0000000..1004a49 --- /dev/null +++ b/dot_config/fish/fish_aliases.fish @@ -0,0 +1,55 @@ +alias :e='vi' +alias t='task' +alias em='emacs' +alias grep="grep --color=auto" +#alias screen="screen -R" +alias dvtm="dvtm -m \"^w\"" +alias tm="tmux -2 attach" +alias ppjson="python -mjson.tool" +#alias tmux-pwn='tmux list-clients | sed "s|^\(/dev/ttys[0-9]\+\).*\[\([0-9]\+x[0-9]\+\).*$|\2 \1|" | sort -r -n | tail -n +2 | cut -d " " -f 2 | xargs -n 1 tmux detach-client -t' + +# I can never remember the xclip options, so: +alias setclip='xclip -selection c' +alias getclip='xclip -selection clipboard -o' + +#machines +alias puck="ssh -D 7777 -Y barak@puck.barakmich.com" +alias hero="ssh -D 7777 -Y barak@hero.barakmich.com" +alias hermia="ssh -Y barak@hermia.home.0b100.net" + +#Cosmetic/useful +#alias naim="naim --noscreen" +alias wallall="wallall -p" +#alias cal="cal -3" +#alias google='surfraw google' +alias hd='od -Ax -tx1z -v' +alias gcal='gcalcli' + +#Sysdadmin +alias aptsearch="aptitude search" +alias pki="pk i" +alias pks="pk s" +alias openports="lsof -i 4 -n" +alias saupdate="sa-learn --mbox --spam ~/mail/spam" +alias pshosers="ps axeo pcpu,pid,user,command | sort -k 1 -r | head -11 " +alias memhosers="ps axeo size,pcpu,pid,user,command | sort -n -r | head -11 " +alias psx="ps auxwww | grep $1" +alias blaze="bazel" +alias pb='curl -F c=@- https://busb.us/' +alias pburl='curl -F c=@- https://busb.us/u' + +#work +alias totemp="cd `pwd | sed 's/controllers/templates/'`" +alias tocont="cd `pwd | sed 's/templates/controllers/'`" + +alias kubecat="awk 'FNR==1 && NR!=1 {print \"---\"}{print}'" + +#Some orly aliases +alias yarly="orly -y" +alias nowai="orly -n" +alias srsly="orly -s" + +#Funnies +alias whothefuckis='finger' +alias whoami="echo 24601" +alias yeet="rm -rf" diff --git a/dot_config/fish/fish_variables b/dot_config/fish/fish_variables new file mode 100644 index 0000000..f1b6a56 --- /dev/null +++ b/dot_config/fish/fish_variables @@ -0,0 +1,31 @@ +# This file contains fish universal variable definitions. +# VERSION: 3.0 +SETUVAR __fish_initialized:3400 +SETUVAR fish_color_autosuggestion:555\x1ebrblack +SETUVAR fish_color_cancel:\x2dr +SETUVAR fish_color_command:005fd7 +SETUVAR fish_color_comment:990000 +SETUVAR fish_color_cwd:green +SETUVAR fish_color_cwd_root:red +SETUVAR fish_color_end:009900 +SETUVAR fish_color_error:ff0000 +SETUVAR fish_color_escape:00a6b2 +SETUVAR fish_color_history_current:\x2d\x2dbold +SETUVAR fish_color_host:normal +SETUVAR fish_color_host_remote:yellow +SETUVAR fish_color_normal:normal +SETUVAR fish_color_operator:00a6b2 +SETUVAR fish_color_param:00afff +SETUVAR fish_color_quote:999900 +SETUVAR fish_color_redirection:00afff +SETUVAR fish_color_search_match:bryellow\x1e\x2d\x2dbackground\x3dbrblack +SETUVAR fish_color_selection:white\x1e\x2d\x2dbold\x1e\x2d\x2dbackground\x3dbrblack +SETUVAR fish_color_status:red +SETUVAR fish_color_user:brgreen +SETUVAR fish_color_valid_path:\x2d\x2dunderline +SETUVAR fish_key_bindings:fish_default_key_bindings +SETUVAR fish_pager_color_completion:\x1d +SETUVAR fish_pager_color_description:B3A06D\x1eyellow +SETUVAR fish_pager_color_prefix:normal\x1e\x2d\x2dbold\x1e\x2d\x2dunderline +SETUVAR fish_pager_color_progress:brwhite\x1e\x2d\x2dbackground\x3dcyan +SETUVAR fish_pager_color_selected_background:\x2dr diff --git a/dot_config/fish/functions/fish_prompt.fish b/dot_config/fish/functions/fish_prompt.fish new file mode 100644 index 0000000..f84cebf --- /dev/null +++ b/dot_config/fish/functions/fish_prompt.fish @@ -0,0 +1,44 @@ +function fish_prompt --description 'Write out the prompt' + + # Just calculate these once, to save a few cycles when displaying the prompt + if not set -q __fish_prompt_hostname + set -g __fish_prompt_hostname (hostname|cut -d . -f 1) + end + + if not set -q __fish_prompt_normal + set -g __fish_prompt_normal (set_color normal) + end + + switch $USER + + case root + + if not set -q __fish_prompt_cwd + if set -q fish_color_cwd_root + set -g __fish_prompt_cwd (set_color $fish_color_cwd_root) + else + set -g __fish_prompt_cwd (set_color $fish_color_cwd) + end + end + + echo -n -s (set_color red) "$USER" (set_color normal) @ (set_color green) "$__fish_prompt_hostname" (set_color normal) ':[' "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal" ']' + echo + echo -n '# ' + + case '*' + + if not set -q __fish_prompt_cwd + set -g __fish_prompt_cwd (set_color $fish_color_cwd) + end + + + if set -q VIRTUAL_ENV + echo -n -s (set_color -b blue white) "(" (basename "$VIRTUAL_ENV") ")" (set_color normal) " " + end + + echo -n -s (set_color blue) "(" (set_color yellow) (date "+%H:%M") (set_color blue) ")[" (set_color green) "$USER@$__fish_prompt_hostname " (set_color cyan) "$__fish_prompt_cwd" (prompt_pwd) "$__fish_prompt_normal" (set_color blue) ']' + echo + echo -n '$ ' + + end +end diff --git a/dot_config/fish/functions/fish_right_prompt.fish b/dot_config/fish/functions/fish_right_prompt.fish new file mode 100644 index 0000000..25b3eab --- /dev/null +++ b/dot_config/fish/functions/fish_right_prompt.fish @@ -0,0 +1 @@ +function fish_right_prompt; end diff --git a/dot_config/fish/functions/fish_user_key_bindings.fish b/dot_config/fish/functions/fish_user_key_bindings.fish new file mode 100644 index 0000000..cb9f03e --- /dev/null +++ b/dot_config/fish/functions/fish_user_key_bindings.fish @@ -0,0 +1,7 @@ +function fish_user_key_bindings + fzf_key_bindings +end + +function fsize + sed -i "s/size:.*/size: $argv/" $HOME/.config/alacritty/alacritty.yml +end diff --git a/dot_config/hexchat/addons/mymsg.py b/dot_config/hexchat/addons/mymsg.py new file mode 100644 index 0000000..70d8d4a --- /dev/null +++ b/dot_config/hexchat/addons/mymsg.py @@ -0,0 +1,37 @@ +import hexchat + +__module_name__ = 'MyMessages' +__module_author__ = 'TingPing' +__module_version__ = '3' +__module_description__ = 'Properly show your messages in ZNC' + +def privmsg_cb(word, word_eol, userdata, attrs): + # We only care about private messages, HexChat handles the rest now. + if word[2][0] == '#': + return + + mynick = hexchat.get_info('nick') + sender = word[0].split('!')[0][1:] + recipient = word[2] + network = hexchat.get_info('network') + msg = word_eol[3][1:] + + if hexchat.nickcmp(sender, mynick) == 0 and hexchat.nickcmp(recipient, mynick) != 0: + hexchat.command('query -nofocus {}'.format(recipient)) + ctx = hexchat.find_context(network, recipient) + + if '\001ACTION' in msg: + for repl in ('\001ACTION', '\001'): + msg = msg.replace(repl, '') + ctx.emit_print('Your Action', mynick, msg.strip(), time=attrs.time) + else: + ctx.emit_print('Your Message', mynick, msg, time=attrs.time) + + return hexchat.EAT_ALL + +def caps_cb(word, word_eol, userdata): + if "znc.in/self-message" in word[1]: + hexchat.command("cap req znc.in/self-message") + +hexchat.hook_server_attrs('PRIVMSG', privmsg_cb) +hexchat.hook_print('Capability List', caps_cb) diff --git a/dot_config/hexchat/addons/notify.py b/dot_config/hexchat/addons/notify.py new file mode 100644 index 0000000..fea1a35 --- /dev/null +++ b/dot_config/hexchat/addons/notify.py @@ -0,0 +1,41 @@ +__module_name__ = 'Notify' +__module_description__ = 'Sends a notification on highlight/notice/pm' +__module_version__ = '1.0' + +import os +import hexchat + + +def notice_callback(word, word_eol, userdata): + if hexchat.get_info("win_status") == 'active': + return + os.system( + hexchat.strip('notify-send \"Notice from %s\" \"%s\"' % + (word[0], word[1]))) + return hexchat.EAT_NONE + + +def pm_callback(word, word_eol, userdata): + if hexchat.get_info("win_status") == 'active': + return + os.system( + hexchat.strip('notify-send \"PM from %s\" \"%s\"' % + (word[0], word[1]))) + return hexchat.EAT_NONE + + +def highlight_callback(word, word_eol, userdata): + if hexchat.get_info("win_status") == 'active': + return + os.system( + hexchat.strip('notify-send \"Highlight from %s\" \"%s\"' % + (word[0], word[1]))) + return hexchat.EAT_NONE + +hexchat.hook_print("Channel Msg Hilight", highlight_callback) +hexchat.hook_print("Channel Action Hilight", highlight_callback) +hexchat.hook_print("Notice", notice_callback) +hexchat.hook_print("Private Action", pm_callback) +hexchat.hook_print("Private Message", pm_callback) +hexchat.hook_print("Private Action to Dialog", pm_callback) +hexchat.hook_print("Private Message to Dialog", pm_callback) diff --git a/dot_config/iosevka-build/.gitignore b/dot_config/iosevka-build/.gitignore new file mode 100644 index 0000000..849ddff --- /dev/null +++ b/dot_config/iosevka-build/.gitignore @@ -0,0 +1 @@ +dist/ diff --git a/dot_config/iosevka-build/private-build-plans.toml b/dot_config/iosevka-build/private-build-plans.toml new file mode 100644 index 0000000..e65fe70 --- /dev/null +++ b/dot_config/iosevka-build/private-build-plans.toml @@ -0,0 +1,121 @@ +[buildPlans.IosevkaBerkeley] +family = "Iosevka Berkeley" +spacing = "fixed" +serifs = "sans" +noCvSs = true +exportGlyphNames = false + +[buildPlans.IosevkaBerkeley.variants.design] +capital-g = "toothless-rounded-serifless-hooked" +g = "double-storey" +t = "flat-hook" +y = "straight-turn-serifless" +eszet = "sulzbacher-descending-serifless" +capital-lambda = "curly-top-serifed" +lower-lambda = "tailed-turn" +lower-chi = "semi-chancery-straight" +zero = "dotted" +one = "no-base" +four = "closed-serifless" +six = "open-contour" +eight = "two-circles" +asterisk = "hex-high" +paren = "large-contour" +brace = "straight" +at = "fourfold" +percent = "rings-continuous-slash" +bar = "force-upright" +question = "corner" + +[buildPlans.IosevkaBerkeley.variants.italic] +capital-a = "curly-serifless" +capital-b = "standard-unilateral-serifed" +capital-d = "standard-unilateral-serifed" +capital-f = "top-left-serifed" +capital-g = "toothed-serifless-hooked" +capital-i = "short-serifed" +capital-j = "serifed-both-sides" +capital-m = "flat-bottom-serifless" +capital-p = "closed-motion-serifed" +capital-q = "crossing-curly-tailed" +capital-r = "curly-serifless" +capital-u = "tailed-motion-serifed" +capital-v = "curly-serifless" +capital-w = "curly-serifless" +capital-x = "curly-serifless" +capital-y = "curly-serifless" +capital-z = "curly-serifless-with-horizontal-crossbar" +a = "double-storey-tailed" +d = "toothed-serifed" +f = "flat-hook-serifless" +g = "single-storey-serifed" +h = "straight-top-left-serifed" +k = "curly-serifless" +m = "top-left-serifed" +n = "straight-top-left-serifed" +p = "eared-serifless" +q = "straight-serifless" +u = "tailed-motion-serifed" +v = "curly-serifless" +w = "curly-serifless" +x = "curly-serifless" +y = "cursive-serifless" +z = "curly-serifless-with-horizontal-crossbar" +one = "no-base-long-top-serif" +two = "straight-neck-serifless" +seven = "straight-serifless-crossbar" +nine = "open-contour" +paren = "normal" + +[buildPlans.IosevkaBerkeley.variants.oblique] +paren = "normal" + +[buildPlans.IosevkaBerkeley.weights.ExtraLight] +shape = 200 +menu = 200 +css = 200 + +[buildPlans.IosevkaBerkeley.weights.Light] +shape = 300 +menu = 300 +css = 300 + +[buildPlans.IosevkaBerkeley.weights.Regular] +shape = 400 +menu = 400 +css = 400 + +[buildPlans.IosevkaBerkeley.weights.Medium] +shape = 500 +menu = 500 +css = 500 + +[buildPlans.IosevkaBerkeley.weights.SemiBold] +shape = 600 +menu = 600 +css = 600 + +[buildPlans.IosevkaBerkeley.weights.Bold] +shape = 700 +menu = 700 +css = 700 + +[buildPlans.IosevkaBerkeley.widths.Normal] +shape = 500 +menu = 5 +css = "normal" + +[buildPlans.IosevkaBerkeley.widths.Extended] +shape = 600 +menu = 7 +css = "expanded" + +[buildPlans.IosevkaBerkeley.widths.Condensed] +shape = 416 +menu = 3 +css = "condensed" + +[buildPlans.IosevkaBerkeley.widths.SemiCondensed] +shape = 456 +menu = 4 +css = "semi-condensed" diff --git a/dot_config/k9s/.k9s/config.yml b/dot_config/k9s/.k9s/config.yml new file mode 100644 index 0000000..714b868 --- /dev/null +++ b/dot_config/k9s/.k9s/config.yml @@ -0,0 +1,46 @@ +k9s: + refreshRate: 2 + maxConnRetry: 5 + enableMouse: true + headless: true + logoless: true + crumbsless: false + readOnly: false + noIcons: true + logger: + tail: 100 + buffer: 5000 + sinceSeconds: 300 + fullScreenLogs: false + textWrap: false + showTime: false + currentContext: kubernetes-admin@kubernetes + currentCluster: kubernetes + clusters: + kubernetes: + namespace: + active: "" + favorites: + - sccache + - all + - default + view: + active: pod + featureGates: + nodeShell: false + shellPod: + image: busybox:1.31 + command: [] + args: [] + namespace: default + limits: + cpu: 100m + memory: 100Mi + portForwardAddress: localhost + thresholds: + cpu: + critical: 90 + warn: 70 + memory: + critical: 90 + warn: 70 diff --git a/dot_config/k9s/config.yml b/dot_config/k9s/config.yml new file mode 100644 index 0000000..9bf600b --- /dev/null +++ b/dot_config/k9s/config.yml @@ -0,0 +1,51 @@ +k9s: + refreshRate: 2 + maxConnRetry: 5 + enableMouse: true + headless: false + logoless: true + crumbsless: false + readOnly: false + noExitOnCtrlC: false + noIcons: true + skipLatestRevCheck: false + logger: + tail: 100 + buffer: 5000 + sinceSeconds: 300 + fullScreenLogs: false + textWrap: false + showTime: false + currentContext: gke_memvp-25499_us-central1-c_ke-cluster-1 + currentCluster: gke_memvp-25499_us-central1-c_ke-cluster-1 + clusters: + gke_memvp-25499_us-central1-c_ke-cluster-1: + namespace: + active: all + lockFavorites: false + favorites: + - backfill + - all + - default + view: + active: job + featureGates: + nodeShell: false + shellPod: + image: busybox:1.35.0 + command: [] + args: [] + namespace: default + limits: + cpu: 100m + memory: 100Mi + labels: {} + portForwardAddress: localhost + thresholds: + cpu: + critical: 90 + warn: 70 + memory: + critical: 90 + warn: 70 + screenDumpDir: /tmp/k9s-screens-barak diff --git a/dot_config/k9s/hotkey.yml b/dot_config/k9s/hotkey.yml new file mode 100644 index 0000000..2d2d486 --- /dev/null +++ b/dot_config/k9s/hotkey.yml @@ -0,0 +1,13 @@ +hotKey: + shift-1: + shortCut: Shift-1 + description: pods + command: pods + shift-2: + shortCut: Shift-2 + description: deps + command: dp + shift-3: + shortCut: Shift-3 + description: nodes + command: nodes diff --git a/dot_config/karabiner/assets/complex_modifications/1701202333.json b/dot_config/karabiner/assets/complex_modifications/1701202333.json new file mode 100644 index 0000000..93ebab3 --- /dev/null +++ b/dot_config/karabiner/assets/complex_modifications/1701202333.json @@ -0,0 +1,2853 @@ +{ + "rules": [ + { + "description": "Insert (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Backspace (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_or_backspace", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_or_backspace", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Delete (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_forward", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_forward", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Win [Open Spotlight]", + "manipulators": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_command" + } + ], + "to_if_alone": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ], + "type": "basic" + } + ] + }, + { + "description": "A (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "a", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "a", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "B (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "b", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "b", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "left_control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "f", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "I (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "i", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "i", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "N (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "n", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "n", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "O (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "o", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "o", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "P (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "p", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "p", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "R (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "r", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "r", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "S (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "s", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "s", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "T (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "t", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "t", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "U (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "u", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "u", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "W (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "w", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "X (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "x", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "x", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Y (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "y", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "y", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Z (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "z", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "z", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Cmd) [Open Finder]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b com.apple.finder" + } + ], + "type": "basic" + } + ] + }, + { + "description": "2 (Cmd) [Open first pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "2", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Cmd) [Open second pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Cmd) [Open third pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "5 (Cmd) [Open fourth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "5", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "6 (Cmd) [Open fifth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "6", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "7 (Cmd) [Open sixth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "7", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "8 (Cmd) [Open eighth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "8", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "9 (Cmd) [Open ninth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "9", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "/ (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "slash", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Space (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F1", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f1", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F3", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f3", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Alt) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "q", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + } + ], + "title": "Windows Shortcuts" +} diff --git a/dot_config/karabiner/automatic_backups/karabiner_20231128.json b/dot_config/karabiner/automatic_backups/karabiner_20231128.json new file mode 100644 index 0000000..2ebc0af --- /dev/null +++ b/dot_config/karabiner/automatic_backups/karabiner_20231128.json @@ -0,0 +1,3006 @@ +{ + "global": { + "ask_for_confirmation_before_quitting": true, + "check_for_updates_on_startup": true, + "show_in_menu_bar": true, + "show_profile_name_in_menu_bar": false, + "unsafe_ui": false + }, + "profiles": [ + { + "complex_modifications": { + "parameters": { + "basic.simultaneous_threshold_milliseconds": 50, + "basic.to_delayed_action_delay_milliseconds": 500, + "basic.to_if_alone_timeout_milliseconds": 1000, + "basic.to_if_held_down_threshold_milliseconds": 500, + "mouse_motion_to_scroll.speed": 100 + }, + "rules": [ + { + "description": "Insert (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Backspace (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_or_backspace", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_or_backspace", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Delete (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_forward", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_forward", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Win [Open Spotlight]", + "manipulators": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_command" + } + ], + "to_if_alone": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ], + "type": "basic" + } + ] + }, + { + "description": "A (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "a", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "a", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "B (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "b", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "b", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "left_control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "f", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "I (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "i", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "i", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "N (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "n", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "n", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "O (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "o", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "o", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "P (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "p", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "p", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "R (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "r", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "r", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "S (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "s", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "s", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "T (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "t", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "t", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "U (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "u", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "u", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "W (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "w", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "X (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "x", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "x", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Y (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "y", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "y", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Z (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "z", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "z", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Cmd) [Open Finder]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b com.apple.finder" + } + ], + "type": "basic" + } + ] + }, + { + "description": "2 (Cmd) [Open first pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "2", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Cmd) [Open second pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Cmd) [Open third pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "5 (Cmd) [Open fourth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "5", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "6 (Cmd) [Open fifth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "6", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "7 (Cmd) [Open sixth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "7", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "8 (Cmd) [Open eighth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "8", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "9 (Cmd) [Open ninth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "9", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "/ (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "slash", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Space (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F1", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f1", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F3", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^io\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f3", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Alt) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "q", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + } + ] + }, + "devices": [], + "fn_function_keys": [ + { + "from": { + "key_code": "f1" + }, + "to": [ + { + "consumer_key_code": "display_brightness_decrement" + } + ] + }, + { + "from": { + "key_code": "f2" + }, + "to": [ + { + "consumer_key_code": "display_brightness_increment" + } + ] + }, + { + "from": { + "key_code": "f3" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "mission_control" + } + ] + }, + { + "from": { + "key_code": "f4" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ] + }, + { + "from": { + "key_code": "f5" + }, + "to": [ + { + "consumer_key_code": "dictation" + } + ] + }, + { + "from": { + "key_code": "f6" + }, + "to": [ + { + "key_code": "f6" + } + ] + }, + { + "from": { + "key_code": "f7" + }, + "to": [ + { + "consumer_key_code": "rewind" + } + ] + }, + { + "from": { + "key_code": "f8" + }, + "to": [ + { + "consumer_key_code": "play_or_pause" + } + ] + }, + { + "from": { + "key_code": "f9" + }, + "to": [ + { + "consumer_key_code": "fast_forward" + } + ] + }, + { + "from": { + "key_code": "f10" + }, + "to": [ + { + "consumer_key_code": "mute" + } + ] + }, + { + "from": { + "key_code": "f11" + }, + "to": [ + { + "consumer_key_code": "volume_decrement" + } + ] + }, + { + "from": { + "key_code": "f12" + }, + "to": [ + { + "consumer_key_code": "volume_increment" + } + ] + } + ], + "name": "Default profile", + "parameters": { + "delay_milliseconds_before_open_device": 1000 + }, + "selected": true, + "simple_modifications": [], + "virtual_hid_keyboard": { + "country_code": 0, + "indicate_sticky_modifier_keys_state": true, + "mouse_key_xy_scale": 100 + } + } + ] +} \ No newline at end of file diff --git a/dot_config/karabiner/automatic_backups/karabiner_20231129.json b/dot_config/karabiner/automatic_backups/karabiner_20231129.json new file mode 100644 index 0000000..aafebe6 --- /dev/null +++ b/dot_config/karabiner/automatic_backups/karabiner_20231129.json @@ -0,0 +1,3126 @@ +{ + "global": { + "ask_for_confirmation_before_quitting": true, + "check_for_updates_on_startup": true, + "show_in_menu_bar": true, + "show_profile_name_in_menu_bar": false, + "unsafe_ui": false + }, + "profiles": [ + { + "complex_modifications": { + "parameters": { + "basic.simultaneous_threshold_milliseconds": 50, + "basic.to_delayed_action_delay_milliseconds": 500, + "basic.to_if_alone_timeout_milliseconds": 1000, + "basic.to_if_held_down_threshold_milliseconds": 500, + "mouse_motion_to_scroll.speed": 100 + }, + "rules": [ + { + "description": "Insert (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Backspace (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_or_backspace", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_or_backspace", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Delete (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_forward", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_forward", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "A (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "a", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "a", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "B (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "b", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "b", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "left_control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Switch Channels [Slack]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.tinyspeck\\.slackmacgap$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "k", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "k", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Spotlight [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "I (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "i", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "i", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "N (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "n", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "n", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "O (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "o", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "o", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "P (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "p", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "p", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "R (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "r", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "r", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "S (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "s", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "s", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "T (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "t", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "t", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "U (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "u", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "u", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "W (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "w", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "X (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "x", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "x", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Y (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "y", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "y", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Z (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "z", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "z", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Cmd) [Open Finder]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b com.apple.finder" + } + ], + "type": "basic" + } + ] + }, + { + "description": "2 (Cmd) [Open first pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "2", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Cmd) [Open second pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Cmd) [Open third pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "5 (Cmd) [Open fourth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "5", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "6 (Cmd) [Open fifth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "6", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "7 (Cmd) [Open sixth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "7", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "8 (Cmd) [Open eighth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "8", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "9 (Cmd) [Open ninth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "9", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "/ (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "slash", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Space (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F1", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f1", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F3", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f3", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Alt) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "q", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + } + ] + }, + "devices": [ + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": true, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + }, + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + } + ], + "fn_function_keys": [ + { + "from": { + "key_code": "f1" + }, + "to": [ + { + "consumer_key_code": "display_brightness_decrement" + } + ] + }, + { + "from": { + "key_code": "f2" + }, + "to": [ + { + "consumer_key_code": "display_brightness_increment" + } + ] + }, + { + "from": { + "key_code": "f3" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "mission_control" + } + ] + }, + { + "from": { + "key_code": "f4" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ] + }, + { + "from": { + "key_code": "f5" + }, + "to": [ + { + "consumer_key_code": "dictation" + } + ] + }, + { + "from": { + "key_code": "f6" + }, + "to": [ + { + "key_code": "f6" + } + ] + }, + { + "from": { + "key_code": "f7" + }, + "to": [ + { + "consumer_key_code": "rewind" + } + ] + }, + { + "from": { + "key_code": "f8" + }, + "to": [ + { + "consumer_key_code": "play_or_pause" + } + ] + }, + { + "from": { + "key_code": "f9" + }, + "to": [ + { + "consumer_key_code": "fast_forward" + } + ] + }, + { + "from": { + "key_code": "f10" + }, + "to": [ + { + "consumer_key_code": "mute" + } + ] + }, + { + "from": { + "key_code": "f11" + }, + "to": [ + { + "consumer_key_code": "volume_decrement" + } + ] + }, + { + "from": { + "key_code": "f12" + }, + "to": [ + { + "consumer_key_code": "volume_increment" + } + ] + } + ], + "name": "Default profile", + "parameters": { + "delay_milliseconds_before_open_device": 1000 + }, + "selected": true, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_control" + } + ] + } + ], + "virtual_hid_keyboard": { + "country_code": 0, + "indicate_sticky_modifier_keys_state": true, + "mouse_key_xy_scale": 100 + } + } + ] +} diff --git a/dot_config/karabiner/automatic_backups/karabiner_20231130.json b/dot_config/karabiner/automatic_backups/karabiner_20231130.json new file mode 100644 index 0000000..5e2c3d8 --- /dev/null +++ b/dot_config/karabiner/automatic_backups/karabiner_20231130.json @@ -0,0 +1,3126 @@ +{ + "global": { + "ask_for_confirmation_before_quitting": true, + "check_for_updates_on_startup": true, + "show_in_menu_bar": true, + "show_profile_name_in_menu_bar": false, + "unsafe_ui": false + }, + "profiles": [ + { + "complex_modifications": { + "parameters": { + "basic.simultaneous_threshold_milliseconds": 50, + "basic.to_delayed_action_delay_milliseconds": 500, + "basic.to_if_alone_timeout_milliseconds": 1000, + "basic.to_if_held_down_threshold_milliseconds": 500, + "mouse_motion_to_scroll.speed": 100 + }, + "rules": [ + { + "description": "Insert (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Backspace (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_or_backspace", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_or_backspace", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Delete (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_forward", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_forward", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "A (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "a", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "a", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "B (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "b", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "b", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "left_control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Switch Channels [Slack]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.tinyspeck\\.slackmacgap$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "k", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "k", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Spotlight [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "I (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "i", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "i", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "N (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "n", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "n", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "O (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "o", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "o", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "P (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "p", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "p", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "R (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "r", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "r", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "S (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "s", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "s", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "T (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "t", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "t", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "U (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "u", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "u", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "W (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "w", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "X (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "x", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "x", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Y (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "y", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "y", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Z (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "z", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "z", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Cmd) [Open Finder]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b com.apple.finder" + } + ], + "type": "basic" + } + ] + }, + { + "description": "2 (Cmd) [Open first pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "2", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Cmd) [Open second pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Cmd) [Open third pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "5 (Cmd) [Open fourth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "5", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "6 (Cmd) [Open fifth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "6", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "7 (Cmd) [Open sixth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "7", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "8 (Cmd) [Open eighth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "8", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "9 (Cmd) [Open ninth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "9", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "/ (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "slash", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Space (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F1", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f1", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F3", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f3", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Alt) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "q", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + } + ] + }, + "devices": [ + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": true, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + }, + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + } + ], + "fn_function_keys": [ + { + "from": { + "key_code": "f1" + }, + "to": [ + { + "consumer_key_code": "display_brightness_decrement" + } + ] + }, + { + "from": { + "key_code": "f2" + }, + "to": [ + { + "consumer_key_code": "display_brightness_increment" + } + ] + }, + { + "from": { + "key_code": "f3" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "mission_control" + } + ] + }, + { + "from": { + "key_code": "f4" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ] + }, + { + "from": { + "key_code": "f5" + }, + "to": [ + { + "consumer_key_code": "dictation" + } + ] + }, + { + "from": { + "key_code": "f6" + }, + "to": [ + { + "key_code": "f6" + } + ] + }, + { + "from": { + "key_code": "f7" + }, + "to": [ + { + "consumer_key_code": "rewind" + } + ] + }, + { + "from": { + "key_code": "f8" + }, + "to": [ + { + "consumer_key_code": "play_or_pause" + } + ] + }, + { + "from": { + "key_code": "f9" + }, + "to": [ + { + "consumer_key_code": "fast_forward" + } + ] + }, + { + "from": { + "key_code": "f10" + }, + "to": [ + { + "consumer_key_code": "mute" + } + ] + }, + { + "from": { + "key_code": "f11" + }, + "to": [ + { + "consumer_key_code": "volume_decrement" + } + ] + }, + { + "from": { + "key_code": "f12" + }, + "to": [ + { + "consumer_key_code": "volume_increment" + } + ] + } + ], + "name": "Default profile", + "parameters": { + "delay_milliseconds_before_open_device": 1000 + }, + "selected": true, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_control" + } + ] + } + ], + "virtual_hid_keyboard": { + "country_code": 0, + "indicate_sticky_modifier_keys_state": true, + "mouse_key_xy_scale": 100 + } + } + ] +} \ No newline at end of file diff --git a/dot_config/karabiner/automatic_backups/karabiner_20240108.json b/dot_config/karabiner/automatic_backups/karabiner_20240108.json new file mode 100644 index 0000000..b1eb810 --- /dev/null +++ b/dot_config/karabiner/automatic_backups/karabiner_20240108.json @@ -0,0 +1,3214 @@ +{ + "global": { + "ask_for_confirmation_before_quitting": true, + "check_for_updates_on_startup": true, + "show_in_menu_bar": true, + "show_profile_name_in_menu_bar": false, + "unsafe_ui": false + }, + "profiles": [ + { + "complex_modifications": { + "parameters": { + "basic.simultaneous_threshold_milliseconds": 50, + "basic.to_delayed_action_delay_milliseconds": 500, + "basic.to_if_alone_timeout_milliseconds": 1000, + "basic.to_if_held_down_threshold_milliseconds": 500, + "mouse_motion_to_scroll.speed": 100 + }, + "rules": [ + { + "description": "Insert (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Backspace (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_or_backspace", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_or_backspace", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Delete (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_forward", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_forward", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "A (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "a", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "a", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "B (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "b", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "b", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "left_control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Switch Channels [Slack]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.tinyspeck\\.slackmacgap$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "k", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "k", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Spotlight [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "I (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "i", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "i", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "N (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "n", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "n", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "O (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "o", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "o", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "P (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "p", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "p", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "R (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "r", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "r", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "S (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "s", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "s", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "T (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "t", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "t", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "U (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "u", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "u", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "W (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "w", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "X (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "x", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "x", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Y (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "y", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "y", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Z (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "z", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "z", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Cmd) [Open Finder]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b com.apple.finder" + } + ], + "type": "basic" + } + ] + }, + { + "description": "2 (Cmd) [Open first pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "2", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:0:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Cmd) [Open second pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Cmd) [Open third pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "5 (Cmd) [Open fourth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "5", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "6 (Cmd) [Open fifth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "6", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "7 (Cmd) [Open sixth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "7", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "8 (Cmd) [Open eighth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "8", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "9 (Cmd) [Open ninth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "9", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "/ (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "slash", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Space (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F1", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f1", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F3", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f3", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Alt) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "q", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + } + ] + }, + "devices": [ + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": true, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + }, + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 29699, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [ + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + }, + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 29699, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50504, + "vendor_id": 1133 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "identifiers": { + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50504, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + } + ], + "fn_function_keys": [ + { + "from": { + "key_code": "f1" + }, + "to": [ + { + "consumer_key_code": "display_brightness_decrement" + } + ] + }, + { + "from": { + "key_code": "f2" + }, + "to": [ + { + "consumer_key_code": "display_brightness_increment" + } + ] + }, + { + "from": { + "key_code": "f3" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "mission_control" + } + ] + }, + { + "from": { + "key_code": "f4" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ] + }, + { + "from": { + "key_code": "f5" + }, + "to": [ + { + "consumer_key_code": "dictation" + } + ] + }, + { + "from": { + "key_code": "f6" + }, + "to": [ + { + "key_code": "f6" + } + ] + }, + { + "from": { + "key_code": "f7" + }, + "to": [ + { + "consumer_key_code": "rewind" + } + ] + }, + { + "from": { + "key_code": "f8" + }, + "to": [ + { + "consumer_key_code": "play_or_pause" + } + ] + }, + { + "from": { + "key_code": "f9" + }, + "to": [ + { + "consumer_key_code": "fast_forward" + } + ] + }, + { + "from": { + "key_code": "f10" + }, + "to": [ + { + "consumer_key_code": "mute" + } + ] + }, + { + "from": { + "key_code": "f11" + }, + "to": [ + { + "consumer_key_code": "volume_decrement" + } + ] + }, + { + "from": { + "key_code": "f12" + }, + "to": [ + { + "consumer_key_code": "volume_increment" + } + ] + } + ], + "name": "Default profile", + "parameters": { + "delay_milliseconds_before_open_device": 1000 + }, + "selected": true, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_control" + } + ] + } + ], + "virtual_hid_keyboard": { + "country_code": 0, + "indicate_sticky_modifier_keys_state": true, + "mouse_key_xy_scale": 100 + } + } + ] +} \ No newline at end of file diff --git a/dot_config/karabiner/automatic_backups/karabiner_20240109.json b/dot_config/karabiner/automatic_backups/karabiner_20240109.json new file mode 100644 index 0000000..abace6a --- /dev/null +++ b/dot_config/karabiner/automatic_backups/karabiner_20240109.json @@ -0,0 +1,3461 @@ +{ + "global": { + "ask_for_confirmation_before_quitting": true, + "check_for_updates_on_startup": true, + "show_in_menu_bar": true, + "show_profile_name_in_menu_bar": false, + "unsafe_ui": false + }, + "profiles": [ + { + "complex_modifications": { + "parameters": { + "basic.simultaneous_threshold_milliseconds": 50, + "basic.to_delayed_action_delay_milliseconds": 500, + "basic.to_if_alone_timeout_milliseconds": 1000, + "basic.to_if_held_down_threshold_milliseconds": 500, + "mouse_motion_to_scroll.speed": 100 + }, + "rules": [ + { + "description": "G (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "g", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "f", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "4", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "3", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "2 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "2", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "2", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "1", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Backspace (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_or_backspace", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_or_backspace", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Delete (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_forward", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_forward", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "A (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "a", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "a", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "B (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "b", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "b", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "left_control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Switch Channels [Slack]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.tinyspeck\\.slackmacgap$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "k", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "k", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Spotlight [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "I (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "i", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "i", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "N (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "n", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "n", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "O (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "o", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "o", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "P (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "p", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "p", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "R (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "r", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "r", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "S (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "s", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "s", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "T (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "t", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "t", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "U (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "u", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "u", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "W (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "w", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "X (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "x", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "x", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Y (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "y", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "y", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Z (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "z", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "z", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Cmd) [Open Finder]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b com.apple.finder" + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Cmd) [Open second pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Cmd) [Open third pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "5 (Cmd) [Open fourth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "5", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "6 (Cmd) [Open fifth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "6", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "7 (Cmd) [Open sixth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "7", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "8 (Cmd) [Open eighth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "8", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "9 (Cmd) [Open ninth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "9", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "/ (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "slash", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Space (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F1", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f1", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F3", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f3", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Alt) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "q", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + } + ] + }, + "devices": [ + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": true, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + }, + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 29699, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + }, + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 29699, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50504, + "vendor_id": 1133 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50504, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + } + ], + "fn_function_keys": [ + { + "from": { + "key_code": "f1" + }, + "to": [ + { + "consumer_key_code": "display_brightness_decrement" + } + ] + }, + { + "from": { + "key_code": "f2" + }, + "to": [ + { + "consumer_key_code": "display_brightness_increment" + } + ] + }, + { + "from": { + "key_code": "f3" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "mission_control" + } + ] + }, + { + "from": { + "key_code": "f4" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ] + }, + { + "from": { + "key_code": "f5" + }, + "to": [ + { + "consumer_key_code": "dictation" + } + ] + }, + { + "from": { + "key_code": "f6" + }, + "to": [ + { + "key_code": "f6" + } + ] + }, + { + "from": { + "key_code": "f7" + }, + "to": [ + { + "consumer_key_code": "rewind" + } + ] + }, + { + "from": { + "key_code": "f8" + }, + "to": [ + { + "consumer_key_code": "play_or_pause" + } + ] + }, + { + "from": { + "key_code": "f9" + }, + "to": [ + { + "consumer_key_code": "fast_forward" + } + ] + }, + { + "from": { + "key_code": "f10" + }, + "to": [ + { + "consumer_key_code": "mute" + } + ] + }, + { + "from": { + "key_code": "f11" + }, + "to": [ + { + "consumer_key_code": "volume_decrement" + } + ] + }, + { + "from": { + "key_code": "f12" + }, + "to": [ + { + "consumer_key_code": "volume_increment" + } + ] + } + ], + "name": "Default profile", + "parameters": { + "delay_milliseconds_before_open_device": 1000 + }, + "selected": true, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_control" + } + ] + } + ], + "virtual_hid_keyboard": { + "country_code": 0, + "indicate_sticky_modifier_keys_state": true, + "mouse_key_xy_scale": 100 + } + } + ] +} \ No newline at end of file diff --git a/dot_config/karabiner/karabiner.json b/dot_config/karabiner/karabiner.json new file mode 100644 index 0000000..8b34fbb --- /dev/null +++ b/dot_config/karabiner/karabiner.json @@ -0,0 +1,3557 @@ +{ + "global": { + "ask_for_confirmation_before_quitting": true, + "check_for_updates_on_startup": true, + "show_in_menu_bar": true, + "show_profile_name_in_menu_bar": false, + "unsafe_ui": false + }, + "profiles": [ + { + "complex_modifications": { + "parameters": { + "basic.simultaneous_threshold_milliseconds": 50, + "basic.to_delayed_action_delay_milliseconds": 500, + "basic.to_if_alone_timeout_milliseconds": 1000, + "basic.to_if_held_down_threshold_milliseconds": 500, + "mouse_motion_to_scroll.speed": 100 + }, + "rules": [ + { + "description": "L (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "l", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "New Alacritty", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "shift", + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -n /Applications/Alacritty.app" + } + ], + "type": "basic" + } + ] + }, + { + "description": "G (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "g", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "f", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "4", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "3", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "2 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "2", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "2", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.mozilla\\.firefox$", + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "1", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Insert (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "insert", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Home (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "home", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "up_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "End (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "end", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "down_arrow", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Left Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "left_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "left_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Right Arrow (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "right_arrow", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "right_arrow", + "modifiers": [ + "option", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Backspace (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_or_backspace", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_or_backspace", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Delete (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "delete_forward", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "delete_forward", + "modifiers": [ + "option" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Enter (Ctrl+Shift)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "return_or_enter", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "return_or_enter", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "A (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "a", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "a", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "B (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "b", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "b", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "left_control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "C (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "c", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "c", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Switch Channels [Slack]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.tinyspeck\\.slackmacgap$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "k", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "k", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Spotlight [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "I (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "i", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "i", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Win) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Login Window]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "/System/Library/CoreServices/Menu\\ Extras/User.menu/Contents/Resources/CGSession -suspend" + } + ], + "type": "basic" + } + ] + }, + { + "description": "L (Alt+Ctrl) [Lock Screen]", + "manipulators": [ + { + "from": { + "key_code": "l", + "modifiers": { + "mandatory": [ + "control", + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "power", + "modifiers": [ + "control", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "N (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "n", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "n", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "O (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "o", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "o", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "P (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "p", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "p", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "R (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "r", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "r", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "S (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "s", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "s", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "T (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "t", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "t", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "U (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "u", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "u", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "V (Ctrl+Shift) [Only Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "v", + "modifiers": { + "mandatory": [ + "control", + "shift" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "v", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "W (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "w", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "X (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "x", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "x", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Y (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "y", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "y", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Z (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "z", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "z", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "1 (Cmd) [Open Finder]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "1", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b com.apple.finder" + } + ], + "type": "basic" + } + ] + }, + { + "description": "3 (Cmd) [Open second pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "3", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:1:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "4 (Cmd) [Open third pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "4", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:2:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "5 (Cmd) [Open fourth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "5", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:3:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "6 (Cmd) [Open fifth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "6", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:4:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "7 (Cmd) [Open sixth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "7", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:5:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "8 (Cmd) [Open eighth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "8", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:6:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "9 (Cmd) [Open ninth pinned Dock app]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "9", + "modifiers": { + "mandatory": [ + "command" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "shell_command": "open -b $(/usr/libexec/PlistBuddy -c 'print :persistent-apps:7:tile-data:bundle-identifier' ~/Library/Preferences/com.apple.dock.plist)" + } + ], + "type": "basic" + } + ] + }, + { + "description": "/ (Ctrl) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "slash", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "Space (Ctrl)", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "spacebar", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "spacebar", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F1", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f1", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "slash", + "modifiers": [ + "command", + "shift" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F3", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$", + "^org\\.alacritty$", + "^co\\.zeit\\.hyper$", + "^com\\.googlecode\\.iterm2$", + "^com\\.apple\\.Terminal$", + "^com\\.github\\.wez\\.wezterm$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f3", + "modifiers": { + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "g", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Alt) [+Terminal Emulators]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^org\\.virtualbox\\.app\\.VirtualBoxVM$", + "^com\\.parallels\\.desktop\\.console$", + "^org\\.vmware\\.fusion$", + "^org\\.gnu\\.emacs$", + "^com\\.jetbrains", + "^com\\.microsoft\\.VSCode$", + "^com\\.sublimetext\\.3$", + "^net\\.kovidgoyal\\.kitty$", + "^com\\.citrix\\.XenAppViewer$", + "^com\\.microsoft\\.rdc\\.macos$" + ], + "file_paths": [ + "Chrome Remote Desktop\\.app" + ], + "type": "frontmost_application_unless" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "option" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "q", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + }, + { + "description": "F4 (Ctrl) [Only Chrome]", + "manipulators": [ + { + "conditions": [ + { + "bundle_identifiers": [ + "^com\\.google\\.Chrome$" + ], + "type": "frontmost_application_if" + } + ], + "from": { + "key_code": "f4", + "modifiers": { + "mandatory": [ + "control" + ], + "optional": [ + "any" + ] + } + }, + "to": [ + { + "key_code": "w", + "modifiers": [ + "command" + ] + } + ], + "type": "basic" + } + ] + } + ] + }, + "devices": [ + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 0, + "vendor_id": 0 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50475, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": true, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 32774, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + }, + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 29699, + "vendor_id": 3141 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [ + { + "from": { + "key_code": "left_command" + }, + "to": [ + { + "key_code": "left_option" + } + ] + }, + { + "from": { + "key_code": "left_option" + }, + "to": [ + { + "key_code": "left_command" + } + ] + } + ], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 29699, + "vendor_id": 3141 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": true, + "is_pointing_device": false, + "product_id": 50504, + "vendor_id": 1133 + }, + "ignore": false, + "manipulate_caps_lock_led": true, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + }, + { + "disable_built_in_keyboard_if_exists": false, + "fn_function_keys": [], + "game_pad_swap_sticks": false, + "identifiers": { + "is_game_pad": false, + "is_keyboard": false, + "is_pointing_device": true, + "product_id": 50504, + "vendor_id": 1133 + }, + "ignore": true, + "manipulate_caps_lock_led": false, + "mouse_flip_horizontal_wheel": false, + "mouse_flip_vertical_wheel": false, + "mouse_flip_x": false, + "mouse_flip_y": false, + "mouse_swap_wheels": false, + "mouse_swap_xy": false, + "simple_modifications": [], + "treat_as_built_in_keyboard": false + } + ], + "fn_function_keys": [ + { + "from": { + "key_code": "f1" + }, + "to": [ + { + "consumer_key_code": "display_brightness_decrement" + } + ] + }, + { + "from": { + "key_code": "f2" + }, + "to": [ + { + "consumer_key_code": "display_brightness_increment" + } + ] + }, + { + "from": { + "key_code": "f3" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "mission_control" + } + ] + }, + { + "from": { + "key_code": "f4" + }, + "to": [ + { + "apple_vendor_keyboard_key_code": "spotlight" + } + ] + }, + { + "from": { + "key_code": "f5" + }, + "to": [ + { + "consumer_key_code": "dictation" + } + ] + }, + { + "from": { + "key_code": "f6" + }, + "to": [ + { + "key_code": "f6" + } + ] + }, + { + "from": { + "key_code": "f7" + }, + "to": [ + { + "consumer_key_code": "rewind" + } + ] + }, + { + "from": { + "key_code": "f8" + }, + "to": [ + { + "consumer_key_code": "play_or_pause" + } + ] + }, + { + "from": { + "key_code": "f9" + }, + "to": [ + { + "consumer_key_code": "fast_forward" + } + ] + }, + { + "from": { + "key_code": "f10" + }, + "to": [ + { + "consumer_key_code": "mute" + } + ] + }, + { + "from": { + "key_code": "f11" + }, + "to": [ + { + "consumer_key_code": "volume_decrement" + } + ] + }, + { + "from": { + "key_code": "f12" + }, + "to": [ + { + "consumer_key_code": "volume_increment" + } + ] + } + ], + "name": "Default profile", + "parameters": { + "delay_milliseconds_before_open_device": 1000 + }, + "selected": true, + "simple_modifications": [ + { + "from": { + "key_code": "caps_lock" + }, + "to": [ + { + "key_code": "left_control" + } + ] + } + ], + "virtual_hid_keyboard": { + "country_code": 0, + "indicate_sticky_modifier_keys_state": true, + "mouse_key_xy_scale": 100 + } + } + ] +} \ No newline at end of file diff --git a/dot_config/ncspot/config.toml b/dot_config/ncspot/config.toml new file mode 100644 index 0000000..9fee54c --- /dev/null +++ b/dot_config/ncspot/config.toml @@ -0,0 +1,16 @@ +[keybindings] +"Esc" = "back" +"Q" = "quit" +"q" = "back" +"1" = "focus queue" +"2" = "focus search" +"3" = "focus library" +"i" = "insert" +"b" = "goto album" +"a" = "goto artist" +"Space" = "playpause" +"Enter" = "play" +"p" = "play" +"o" = "open selected" +"Ctrl+f" = "seek +10000" +"Ctrl+b" = "seek -10000" diff --git a/dot_config/rofi/config.rasi b/dot_config/rofi/config.rasi new file mode 100644 index 0000000..523ae81 --- /dev/null +++ b/dot_config/rofi/config.rasi @@ -0,0 +1,3 @@ +//@theme "/home/barak/.local/share/rofi/themes/spotlight-dark.rasi" +//@theme "/home/barak/.local/share/rofi/themes/rounded-blue-dark.rasi" +@theme "/home/barak/.local/share/rofi/themes/spotlight-dark.rasi" diff --git a/dot_config/systemd/user/default.target.wants/ssh-agent.service b/dot_config/systemd/user/default.target.wants/ssh-agent.service new file mode 120000 index 0000000..8c9a931 --- /dev/null +++ b/dot_config/systemd/user/default.target.wants/ssh-agent.service @@ -0,0 +1 @@ +/home/barak/.config/systemd/user/ssh-agent.service \ No newline at end of file diff --git a/dot_config/systemd/user/ssh-agent.service b/dot_config/systemd/user/ssh-agent.service new file mode 100644 index 0000000..87d6c04 --- /dev/null +++ b/dot_config/systemd/user/ssh-agent.service @@ -0,0 +1,10 @@ +[Unit] +Description=SSH key agent + +[Service] +Type=forking +Environment=SSH_AUTH_SOCK=%t/ssh-agent.socket +ExecStart=/usr/bin/ssh-agent -a $SSH_AUTH_SOCK + +[Install] +WantedBy=default.target diff --git a/dot_config/terminator/config b/dot_config/terminator/config new file mode 100644 index 0000000..7303597 --- /dev/null +++ b/dot_config/terminator/config @@ -0,0 +1,64 @@ +[global_config] + focus = mouse + tab_position = bottom + title_transmit_bg_color = "#535d6c" + title_inactive_fg_color = "#b8b8b8" + title_inactive_bg_color = "#222222" + enabled_plugins = LaunchpadCodeURLHandler, APTURLHandler, LaunchpadBugURLHandler +[keybindings] + cycle_next = <Primary>j + cycle_prev = <Primary>k + split_vert = "" + close_term = <Primary><Shift>w + paste = <Primary><Shift>v + help = "" +[profiles] + [[default]] + allow_bold = False + background_darkness = 0.8 + background_type = transparent + cursor_color = "#ffffff" + font = Iosevka Berkeley Light 18 + foreground_color = "#ffffff" + show_titlebar = False + scrollbar_position = hidden + scrollback_infinite = True + use_system_font = False + bold_is_bright = True + [[4k]] + background_darkness = 0.8 + background_type = transparent + font = Inconsolata Medium 18 + foreground_color = "#ffffff" + show_titlebar = False + scrollbar_position = hidden + scrollback_infinite = True + use_system_font = False + [[Large]] + background_darkness = 0.8 + background_type = transparent + font = Inconsolata Medium 32 + foreground_color = "#ffffff" + show_titlebar = False + scrollbar_position = hidden + scrollback_infinite = True + use_system_font = False + [[Medium]] + background_darkness = 0.8 + background_type = transparent + font = Droid Sans Mono Dotted 14 + foreground_color = "#ffffff" + show_titlebar = False + scrollbar_position = hidden + scrollback_infinite = True + use_system_font = False +[layouts] + [[default]] + [[[child1]]] + parent = window0 + profile = default + type = Terminal + [[[window0]]] + parent = "" + type = Window +[plugins] diff --git a/dot_config/tig/config b/dot_config/tig/config new file mode 100644 index 0000000..f9a345a --- /dev/null +++ b/dot_config/tig/config @@ -0,0 +1,76 @@ +# Vim-style keybindings for Tig +# +# To use these keybindings copy the file to your HOME directory and include +# it from your ~/.tigrc file: +# +# $ cp contrib/vim.tigrc ~/.tigrc.vim +# $ echo "source ~/.tigrc.vim" >> ~/.tigrc + +bind generic h scroll-left +bind generic j move-down +bind generic k move-up +bind generic l scroll-right + +bind generic g none +bind generic gg move-first-line +bind generic gj next +bind generic gk previous +bind generic gp parent +bind generic gP back +bind generic gn view-next + +bind main G move-last-line +bind generic G move-last-line + +bind generic <C-f> move-page-down +bind generic <C-b> move-page-up + +bind generic v none +bind generic vm view-main +bind generic vd view-diff +bind generic vl view-log +bind generic vt view-tree +bind generic vb view-blob +bind generic vx view-blame +bind generic vr view-refs +bind generic vs view-status +bind generic vu view-stage +bind generic vy view-stash +bind generic vg view-grep +bind generic vp view-pager +bind generic vh view-help + +bind generic o none +bind generic oo :toggle sort-order +bind generic os :toggle sort-field +bind generic on :toggle line-number +bind generic od :toggle date +bind generic oa :toggle author +bind generic og :toggle line-graphics +bind generic of :toggle file-name +bind generic op :toggle ignore-space +bind generic oi :toggle id +bind generic ot :toggle commit-title-overflow +bind generic oF :toggle file-filter +bind generic or :toggle commit-title-refs + +bind generic @ none +bind generic @j :/^@@ +bind generic @k :?^@@ +bind generic @- :toggle diff-context -1 +bind generic @+ :toggle diff-context +1 + +bind status u none +bind stage u none +bind generic uu status-update +bind generic ur status-revert +bind generic um status-merge +bind generic ul stage-update-line +bind generic us stage-split-chunk + +bind generic c none +bind generic cc !git commit +bind generic ca !?@git commit --amend --no-edit + +bind generic K view-help +bind generic <C-w><C-w> view-next diff --git a/dot_config/xfce4/desktop/icons.screen0-2544x1399.rc b/dot_config/xfce4/desktop/icons.screen0-2544x1399.rc new file mode 100644 index 0000000..f8c5c47 --- /dev/null +++ b/dot_config/xfce4/desktop/icons.screen0-2544x1399.rc @@ -0,0 +1,15 @@ +[xfdesktop-version-4.10.3+-rcfile_format] +4.10.3+=true + +[Trash] +row=0 +col=0 + +[/] +row=1 +col=0 + +[/home/barak] +row=2 +col=0 + diff --git a/dot_config/xfce4/panel/genmon-13.rc b/dot_config/xfce4/panel/genmon-13.rc new file mode 100644 index 0000000..bd3cdb9 --- /dev/null +++ b/dot_config/xfce4/panel/genmon-13.rc @@ -0,0 +1,6 @@ +Command=hostname -s +UseLabel=0 +Text=hostname +UpdatePeriod=60000 +Font=Sans Bold 16 + diff --git a/dot_config/xfce4/panel/whiskermenu-1.rc b/dot_config/xfce4/panel/whiskermenu-1.rc new file mode 100644 index 0000000..13975de --- /dev/null +++ b/dot_config/xfce4/panel/whiskermenu-1.rc @@ -0,0 +1,68 @@ +favorites=exo-web-browser.desktop,exo-mail-reader.desktop,exo-file-manager.desktop,pidgin.desktop,exo-terminal-emulator.desktop +recent=xfce-mouse-settings.desktop,xfce-ui-settings.desktop,firefox.desktop,exo-terminal-emulator.desktop +button-title=Applications Menu +button-icon=xfce4-whiskermenu +button-single-row=false +show-button-title=false +show-button-icon=true +launcher-show-name=true +launcher-show-description=false +launcher-show-tooltip=true +item-icon-size=1 +hover-switch-category=false +category-show-name=true +category-icon-size=0 +load-hierarchy=true +recent-items-max=10 +favorites-in-recent=true +display-recent-default=false +position-search-alternate=true +position-commands-alternate=false +position-categories-alternate=false +menu-width=400 +menu-height=500 +menu-opacity=100 +command-settings=xfce4-settings-manager +show-command-settings=true +command-lockscreen=xflock4 +show-command-lockscreen=true +command-switchuser=dm-tool switch-to-greeter +show-command-switchuser=false +command-logout=xfce4-session-logout +show-command-logout=true +command-menueditor=menulibre +show-command-menueditor=true +command-profile=mugshot +show-command-profile=true +search-actions=5 + +[action0] +name=Man Pages +pattern=# +command=exo-open --launch TerminalEmulator man %s +regex=false + +[action1] +name=Web Search +pattern=? +command=exo-open --launch WebBrowser https://duckduckgo.com/?q=%u +regex=false + +[action2] +name=Wikipedia +pattern=!w +command=exo-open --launch WebBrowser https://en.wikipedia.org/wiki/%u +regex=false + +[action3] +name=Run in Terminal +pattern=! +command=exo-open --launch TerminalEmulator %s +regex=false + +[action4] +name=Open URI +pattern=^(file|http|https):\\/\\/(.*)$ +command=exo-open \\0 +regex=true + diff --git a/dot_config/xfce4/terminal/accels.scm b/dot_config/xfce4/terminal/accels.scm new file mode 100644 index 0000000..a7682f3 --- /dev/null +++ b/dot_config/xfce4/terminal/accels.scm @@ -0,0 +1,58 @@ +; xfce4-terminal GtkAccelMap rc-file -*- scheme -*- +; this file is an automated accelerator map dump +; +(gtk_accel_path "<Actions>/terminal-window/goto-tab-2" "<Alt>2") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-6" "<Alt>6") +; (gtk_accel_path "<Actions>/terminal-window/copy-input" "") +; (gtk_accel_path "<Actions>/terminal-window/close-other-tabs" "") +; (gtk_accel_path "<Actions>/terminal-window/move-tab-right" "<Primary><Shift>Page_Down") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-7" "<Alt>7") +; (gtk_accel_path "<Actions>/terminal-window/set-title-color" "") +; (gtk_accel_path "<Actions>/terminal-window/edit-menu" "") +; (gtk_accel_path "<Actions>/terminal-window/zoom-menu" "") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-1" "<Alt>1") +; (gtk_accel_path "<Actions>/terminal-window/fullscreen" "F11") +; (gtk_accel_path "<Actions>/terminal-window/read-only" "") +; (gtk_accel_path "<Actions>/terminal-window/preferences" "") +; (gtk_accel_path "<Actions>/terminal-window/reset-and-clear" "") +; (gtk_accel_path "<Actions>/terminal-window/about" "") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-5" "<Alt>5") +; (gtk_accel_path "<Actions>/terminal-window/close-window" "<Primary><Shift>q") +; (gtk_accel_path "<Actions>/terminal-window/reset" "") +; (gtk_accel_path "<Actions>/terminal-window/save-contents" "") +(gtk_accel_path "<Actions>/terminal-window/toggle-menubar" "F10") +; (gtk_accel_path "<Actions>/terminal-window/copy" "<Primary><Shift>c") +; (gtk_accel_path "<Actions>/terminal-window/copy-html" "") +; (gtk_accel_path "<Actions>/terminal-window/last-active-tab" "") +; (gtk_accel_path "<Actions>/terminal-window/show-borders" "") +; (gtk_accel_path "<Actions>/terminal-window/view-menu" "") +; (gtk_accel_path "<Actions>/terminal-window/detach-tab" "<Primary><Shift>d") +; (gtk_accel_path "<Actions>/terminal-window/scroll-on-output" "") +; (gtk_accel_path "<Actions>/terminal-window/show-toolbar" "") +; (gtk_accel_path "<Actions>/terminal-window/next-tab" "<Primary>Page_Down") +; (gtk_accel_path "<Actions>/terminal-window/tabs-menu" "") +; (gtk_accel_path "<Actions>/terminal-window/search-next" "") +; (gtk_accel_path "<Actions>/terminal-window/search-prev" "") +; (gtk_accel_path "<Actions>/terminal-window/undo-close-tab" "") +; (gtk_accel_path "<Actions>/terminal-window/set-title" "<Primary><Shift>s") +(gtk_accel_path "<Actions>/terminal-window/contents" "") +; (gtk_accel_path "<Actions>/terminal-window/zoom-reset" "<Primary>0") +; (gtk_accel_path "<Actions>/terminal-window/close-tab" "<Primary><Shift>w") +; (gtk_accel_path "<Actions>/terminal-window/new-tab" "<Primary><Shift>t") +; (gtk_accel_path "<Actions>/terminal-window/new-window" "<Primary><Shift>n") +; (gtk_accel_path "<Actions>/terminal-window/terminal-menu" "") +; (gtk_accel_path "<Actions>/terminal-window/show-menubar" "") +; (gtk_accel_path "<Actions>/terminal-window/select-all" "<Primary><Shift>a") +; (gtk_accel_path "<Actions>/terminal-window/paste" "<Primary><Shift>v") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-9" "<Alt>9") +; (gtk_accel_path "<Actions>/terminal-window/move-tab-left" "<Primary><Shift>Page_Up") +; (gtk_accel_path "<Actions>/terminal-window/search" "<Primary><Shift>f") +; (gtk_accel_path "<Actions>/terminal-window/file-menu" "") +; (gtk_accel_path "<Actions>/terminal-window/prev-tab" "<Primary>Page_Up") +; (gtk_accel_path "<Actions>/terminal-window/paste-selection" "") +; (gtk_accel_path "<Actions>/terminal-window/zoom-in" "<Primary>plus") +; (gtk_accel_path "<Actions>/terminal-window/zoom-out" "<Primary>minus") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-8" "<Alt>8") +; (gtk_accel_path "<Actions>/terminal-window/help-menu" "") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-4" "<Alt>4") +(gtk_accel_path "<Actions>/terminal-window/goto-tab-3" "<Alt>3") diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/displays.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/displays.xml new file mode 100644 index 0000000..abe7b1e --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/displays.xml @@ -0,0 +1,101 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="displays" version="1.0"> + <property name="Default" type="empty"> + <property name="eDP1" type="string" value="1. LGD 14""> + <property name="Active" type="bool" value="false"/> + <property name="Resolution" type="string" value="2560x1440"/> + <property name="RefreshRate" type="double" value="59.997716"/> + <property name="Rotation" type="int" value="0"/> + <property name="Reflection" type="string" value="0"/> + <property name="Primary" type="bool" value="true"/> + <property name="Position" type="empty"> + <property name="X" type="int" value="0"/> + <property name="Y" type="int" value="0"/> + </property> + </property> + <property name="DP2" type="string" value="2. Hewlett Packard 27""> + <property name="Active" type="bool" value="true"/> + <property name="Resolution" type="string" value="3840x2160"/> + <property name="RefreshRate" type="double" value="59.996625"/> + <property name="Rotation" type="int" value="0"/> + <property name="Reflection" type="string" value="0"/> + <property name="Primary" type="bool" value="false"/> + <property name="Position" type="empty"> + <property name="X" type="int" value="0"/> + <property name="Y" type="int" value="0"/> + </property> + </property> + <property name="HDMI-1" type="string" value="Goldstar Company Ltd 27""> + <property name="Active" type="bool" value="true"/> + <property name="EDID" type="string" value="8b6223e9c3908f0c17cb0487baafb4b7dae247a4"/> + <property name="Resolution" type="string" value="3840x2160"/> + <property name="RefreshRate" type="double" value="60.000000"/> + <property name="Rotation" type="int" value="0"/> + <property name="Reflection" type="string" value="0"/> + <property name="Primary" type="bool" value="true"/> + <property name="Position" type="empty"> + <property name="X" type="int" value="0"/> + <property name="Y" type="int" value="0"/> + </property> + <property name="Scale" type="empty"> + <property name="X" type="double" value="1.000000"/> + <property name="Y" type="double" value="1.000000"/> + </property> + </property> + <property name="DP-3" type="string" value="DO NOT USE - RTK 27""> + <property name="Active" type="bool" value="true"/> + <property name="EDID" type="string" value="f396435bdc58149bc1f56157ea28cd14af2aaf3d"/> + <property name="Resolution" type="string" value="3840x2160"/> + <property name="RefreshRate" type="double" value="59.981998"/> + <property name="Rotation" type="int" value="0"/> + <property name="Reflection" type="string" value="0"/> + <property name="Primary" type="bool" value="false"/> + <property name="Position" type="empty"> + <property name="X" type="int" value="0"/> + <property name="Y" type="int" value="0"/> + </property> + <property name="Scale" type="empty"> + <property name="X" type="double" value="1.000000"/> + <property name="Y" type="double" value="1.000000"/> + </property> + </property> + </property> + <property name="ActiveProfile" type="string" value="Default"/> + <property name="Fallback" type="empty"> + <property name="HDMI-1" type="string" value="Goldstar Company Ltd 27""> + <property name="Active" type="bool" value="true"/> + <property name="EDID" type="string" value="8b6223e9c3908f0c17cb0487baafb4b7dae247a4"/> + <property name="Resolution" type="string" value="3840x2160"/> + <property name="RefreshRate" type="double" value="60.000000"/> + <property name="Rotation" type="int" value="0"/> + <property name="Reflection" type="string" value="0"/> + <property name="Primary" type="bool" value="true"/> + <property name="Position" type="empty"> + <property name="X" type="int" value="0"/> + <property name="Y" type="int" value="0"/> + </property> + <property name="Scale" type="empty"> + <property name="X" type="double" value="1.000000"/> + <property name="Y" type="double" value="1.000000"/> + </property> + </property> + <property name="DP-3" type="string" value="DO NOT USE - RTK 27""> + <property name="Active" type="bool" value="true"/> + <property name="EDID" type="string" value="f396435bdc58149bc1f56157ea28cd14af2aaf3d"/> + <property name="Resolution" type="string" value="3840x2160"/> + <property name="RefreshRate" type="double" value="59.981998"/> + <property name="Rotation" type="int" value="0"/> + <property name="Reflection" type="string" value="0"/> + <property name="Primary" type="bool" value="false"/> + <property name="Position" type="empty"> + <property name="X" type="int" value="0"/> + <property name="Y" type="int" value="0"/> + </property> + <property name="Scale" type="empty"> + <property name="X" type="double" value="1.000000"/> + <property name="Y" type="double" value="1.000000"/> + </property> + </property> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml new file mode 100644 index 0000000..9ddc443 --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/keyboards.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="keyboards" version="1.0"> + <property name="Default" type="empty"> + <property name="Numlock" type="bool" value="false"/> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml new file mode 100644 index 0000000..6dc0558 --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/thunar.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="thunar" version="1.0"> + <property name="misc-volume-management" type="empty"/> + <property name="shortcuts-icon-size" type="empty"/> + <property name="last-view" type="string" value="ThunarIconView"/> + <property name="last-icon-view-zoom-level" type="string" value="THUNAR_ZOOM_LEVEL_75_PERCENT"/> + <property name="last-window-width" type="int" value="1274"/> + <property name="last-window-height" type="int" value="2121"/> + <property name="last-window-maximized" type="bool" value="false"/> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml new file mode 100644 index 0000000..6f340b0 --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-desktop.xml @@ -0,0 +1,56 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfce4-desktop" version="1.0"> + <property name="desktop-icons" type="empty"> + <property name="style" type="empty"/> + <property name="file-icons" type="empty"> + <property name="show-home" type="empty"/> + <property name="show-filesystem" type="empty"/> + <property name="show-removable" type="empty"/> + <property name="show-trash" type="empty"/> + </property> + <property name="icon-size" type="empty"/> + <property name="tooltip-size" type="empty"/> + </property> + <property name="backdrop" type="empty"> + <property name="screen0" type="empty"> + <property name="monitor0" type="empty"> + <property name="image-path" type="empty"/> + <property name="image-style" type="empty"/> + <property name="image-show" type="empty"/> + <property name="workspace0" type="empty"> + <property name="color-style" type="int" value="0"/> + <property name="image-style" type="int" value="5"/> + <property name="last-image" type="string" value="/usr/share/xfce4/backdrops/xubuntu-wallpaper.png"/> + </property> + </property> + <property name="monitor1" type="empty"> + <property name="image-path" type="empty"/> + <property name="image-style" type="empty"/> + <property name="image-show" type="empty"/> + </property> + <property name="monitorHDMI-1" type="empty"> + <property name="workspace0" type="empty"> + <property name="color-style" type="int" value="0"/> + <property name="image-style" type="int" value="5"/> + <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> + </property> + <property name="workspace1" type="empty"> + <property name="color-style" type="int" value="0"/> + <property name="image-style" type="int" value="5"/> + <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> + </property> + <property name="workspace2" type="empty"> + <property name="color-style" type="int" value="0"/> + <property name="image-style" type="int" value="5"/> + <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> + </property> + <property name="workspace3" type="empty"> + <property name="color-style" type="int" value="0"/> + <property name="image-style" type="int" value="5"/> + <property name="last-image" type="string" value="/usr/share/backgrounds/xfce/xfce-verticals.png"/> + </property> + </property> + </property> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml new file mode 100644 index 0000000..2faa48e --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-keyboard-shortcuts.xml @@ -0,0 +1,211 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfce4-keyboard-shortcuts" version="1.0"> + <property name="commands" type="empty"> + <property name="default" type="empty"> + <property name="<Alt>F1" type="empty"/> + <property name="<Alt>F2" type="empty"> + <property name="startup-notify" type="empty"/> + </property> + <property name="<Alt>F3" type="empty"> + <property name="startup-notify" type="empty"/> + </property> + <property name="<Primary><Alt>Delete" type="empty"/> + <property name="<Primary><Alt>l" type="empty"/> + <property name="XF86Display" type="empty"/> + <property name="<Super>p" type="empty"/> + <property name="<Primary>Escape" type="empty"/> + <property name="XF86WWW" type="empty"/> + <property name="XF86Mail" type="empty"/> + <property name="<Primary><Alt>Escape" type="empty"/> + <property name="Print" type="empty"/> + <property name="<Alt>Print" type="empty"/> + <property name="XF86HomePage" type="empty"/> + <property name="<Super>w" type="empty"/> + <property name="<Super>m" type="empty"/> + <property name="XF86Explorer" type="empty"/> + <property name="<Super>f" type="empty"/> + <property name="<Super>F1" type="empty"/> + <property name="<Primary><Alt>t" type="empty"/> + <property name="<Super>t" type="empty"/> + <property name="<Super>r" type="empty"/> + <property name="<Super>e" type="empty"/> + <property name="XF86Calculator" type="empty"/> + <property name="XF86Music" type="empty"/> + <property name="<Super>1" type="empty"/> + <property name="XF86Messenger" type="empty"/> + <property name="<Super>2" type="empty"/> + <property name="<Super>3" type="empty"/> + <property name="<Super>4" type="empty"/> + </property> + <property name="custom" type="empty"> + <property name="Print" type="string" value="xfce4-screenshooter -f"/> + <property name="<Alt>Print" type="string" value="xfce4-screenshooter -w"/> + <property name="<Primary><Alt>Delete" type="string" value="xflock4"/> + <property name="XF86Explorer" type="string" value="exo-open --launch FileManager"/> + <property name="<Super>e" type="string" value="mousepad"/> + <property name="<Super>f" type="string" value="exo-open --launch FileManager"/> + <property name="<Alt>F3" type="string" value="xfce4-appfinder"> + <property name="startup-notify" type="bool" value="true"/> + </property> + <property name="<Alt>F2" type="string" value="xfrun4"> + <property name="startup-notify" type="bool" value="true"/> + </property> + <property name="<Primary><Alt>l" type="string" value="xflock4"/> + <property name="<Super>m" type="string" value="exo-open --launch MailReader"/> + <property name="<Super>1" type="string" value="parole"/> + <property name="<Super>2" type="string" value="pidgin"/> + <property name="<Super>3" type="string" value="libreoffice --writer"/> + <property name="<Super>4" type="string" value="libreoffice --calc"/> + <property name="<Primary><Alt>t" type="string" value="exo-open --launch TerminalEmulator"/> + <property name="<Super>r" type="string" value="xfce4-appfinder"/> + <property name="<Super>t" type="string" value="exo-open --launch TerminalEmulator"/> + <property name="<Super>p" type="string" value="xfce4-display-settings --minimal"/> + <property name="<Super>w" type="string" value="exo-open --launch WebBrowser"/> + <property name="<Primary>Escape" type="string" value="xfce4-popup-whiskermenu"/> + <property name="XF86Display" type="string" value="xfce4-display-settings --minimal"/> + <property name="<Alt>F1" type="string" value="xfce4-popup-applicationsmenu"/> + <property name="XF86WWW" type="string" value="exo-open --launch WebBrowser"/> + <property name="XF86Mail" type="string" value="exo-open --launch MailReader"/> + <property name="<Primary><Alt>Escape" type="string" value="xkill"/> + <property name="XF86Messenger" type="string" value="pidgin"/> + <property name="XF86Calculator" type="string" value="mate-calc"/> + <property name="XF86Music" type="string" value="parole"/> + <property name="XF86HomePage" type="string" value="exo-open --launch WebBrowser"/> + <property name="<Super>F1" type="string" value="xfce4-find-cursor"/> + <property name="override" type="bool" value="true"/> + </property> + </property> + <property name="xfwm4" type="empty"> + <property name="default" type="empty"> + <property name="<Alt>Insert" type="empty"/> + <property name="Escape" type="empty"/> + <property name="Left" type="empty"/> + <property name="Right" type="empty"/> + <property name="Up" type="empty"/> + <property name="Down" type="empty"/> + <property name="<Alt>Tab" type="empty"/> + <property name="<Alt><Shift>Tab" type="empty"/> + <property name="<Alt>Delete" type="empty"/> + <property name="<Primary><Alt>Down" type="empty"/> + <property name="<Primary><Alt>Left" type="empty"/> + <property name="<Shift><Alt>Page_Down" type="empty"/> + <property name="<Alt>F4" type="empty"/> + <property name="<Alt>F6" type="empty"/> + <property name="<Alt>F7" type="empty"/> + <property name="<Alt>F8" type="empty"/> + <property name="<Alt>F9" type="empty"/> + <property name="<Alt>F10" type="empty"/> + <property name="<Alt>F11" type="empty"/> + <property name="<Alt>F12" type="empty"/> + <property name="<Primary><Shift><Alt>Left" type="empty"/> + <property name="<Primary><Alt>End" type="empty"/> + <property name="<Primary><Alt>Home" type="empty"/> + <property name="<Primary><Shift><Alt>Right" type="empty"/> + <property name="<Primary><Shift><Alt>Up" type="empty"/> + <property name="<Primary><Alt>KP_1" type="empty"/> + <property name="<Primary><Alt>KP_2" type="empty"/> + <property name="<Primary><Alt>KP_3" type="empty"/> + <property name="<Primary><Alt>KP_4" type="empty"/> + <property name="<Primary><Alt>KP_5" type="empty"/> + <property name="<Primary><Alt>KP_6" type="empty"/> + <property name="<Primary><Alt>KP_7" type="empty"/> + <property name="<Primary><Alt>KP_8" type="empty"/> + <property name="<Primary><Alt>KP_9" type="empty"/> + <property name="<Alt>space" type="empty"/> + <property name="<Shift><Alt>Page_Up" type="empty"/> + <property name="<Primary><Alt>Right" type="empty"/> + <property name="<Primary><Alt>d" type="empty"/> + <property name="<Primary><Alt>Up" type="empty"/> + <property name="<Super>Tab" type="empty"/> + <property name="<Primary>F1" type="empty"/> + <property name="<Primary>F2" type="empty"/> + <property name="<Primary>F3" type="empty"/> + <property name="<Primary>F4" type="empty"/> + <property name="<Primary>F5" type="empty"/> + <property name="<Primary>F6" type="empty"/> + <property name="<Primary>F7" type="empty"/> + <property name="<Primary>F8" type="empty"/> + <property name="<Primary>F9" type="empty"/> + <property name="<Primary>F10" type="empty"/> + <property name="<Primary>F11" type="empty"/> + <property name="<Primary>F12" type="empty"/> + <property name="<Alt>F5" type="empty"/> + <property name="<Super>KP_1" type="empty"/> + <property name="<Super>Down" type="empty"/> + <property name="<Super>KP_3" type="empty"/> + <property name="<Super>Left" type="empty"/> + <property name="<Super>Right" type="empty"/> + <property name="<Super>KP_7" type="empty"/> + <property name="<Super>Up" type="empty"/> + <property name="<Super>KP_9" type="empty"/> + </property> + <property name="custom" type="empty"> + <property name="Up" type="string" value="up_key"/> + <property name="<Primary><Alt>KP_9" type="string" value="move_window_workspace_9_key"/> + <property name="<Super>KP_7" type="string" value="tile_up_left_key"/> + <property name="Left" type="string" value="left_key"/> + <property name="<Super>KP_9" type="string" value="tile_up_right_key"/> + <property name="<Primary><Alt>KP_7" type="string" value="move_window_workspace_7_key"/> + <property name="<Primary>F3" type="string" value="workspace_3_key"/> + <property name="<Super>Up" type="string" value="tile_up_key"/> + <property name="<Alt>Tab" type="string" value="cycle_windows_key"/> + <property name="<Primary><Alt>KP_6" type="string" value="move_window_workspace_6_key"/> + <property name="<Alt>Insert" type="string" value="add_workspace_key"/> + <property name="<Primary><Alt>Right" type="string" value="right_workspace_key"/> + <property name="<Primary><Shift><Alt>Right" type="string" value="move_window_right_key"/> + <property name="<Primary><Alt>d" type="string" value="show_desktop_key"/> + <property name="<Primary><Alt>Up" type="string" value="up_workspace_key"/> + <property name="<Primary><Alt>KP_8" type="string" value="move_window_workspace_8_key"/> + <property name="<Primary><Alt>KP_4" type="string" value="move_window_workspace_4_key"/> + <property name="<Alt><Shift>Tab" type="string" value="cycle_reverse_windows_key"/> + <property name="<Primary><Alt>KP_3" type="string" value="move_window_workspace_3_key"/> + <property name="<Primary><Alt>Home" type="string" value="move_window_prev_workspace_key"/> + <property name="<Super>Right" type="string" value="tile_right_key"/> + <property name="<Primary><Alt>Down" type="string" value="down_workspace_key"/> + <property name="<Alt>F5" type="string" value="maximize_horiz_key"/> + <property name="<Primary><Shift><Alt>Left" type="string" value="move_window_left_key"/> + <property name="<Alt>F11" type="string" value="fullscreen_key"/> + <property name="<Super>Down" type="string" value="tile_down_key"/> + <property name="<Alt>F6" type="string" value="maximize_vert_key"/> + <property name="<Alt>F4" type="string" value="close_window_key"/> + <property name="<Alt>F12" type="string" value="above_key"/> + <property name="Escape" type="string" value="cancel_key"/> + <property name="<Alt>F7" type="string" value="maximize_window_key"/> + <property name="<Alt>F8" type="string" value="stick_window_key"/> + <property name="<Primary><Alt>End" type="string" value="move_window_next_workspace_key"/> + <property name="<Primary>F11" type="string" value="workspace_11_key"/> + <property name="<Primary>F10" type="string" value="workspace_10_key"/> + <property name="<Super>Tab" type="string" value="switch_window_key"/> + <property name="<Alt>F9" type="string" value="hide_window_key"/> + <property name="<Primary><Shift><Alt>Up" type="string" value="move_window_up_key"/> + <property name="Down" type="string" value="down_key"/> + <property name="<Shift><Alt>Page_Down" type="string" value="lower_window_key"/> + <property name="Right" type="string" value="right_key"/> + <property name="<Primary>F6" type="string" value="workspace_6_key"/> + <property name="<Primary>F12" type="string" value="workspace_12_key"/> + <property name="<Primary>F1" type="string" value="workspace_1_key"/> + <property name="<Primary><Alt>Left" type="string" value="left_workspace_key"/> + <property name="<Primary>F2" type="string" value="workspace_2_key"/> + <property name="<Primary>F4" type="string" value="workspace_4_key"/> + <property name="<Primary>F5" type="string" value="workspace_5_key"/> + <property name="<Super>Left" type="string" value="tile_left_key"/> + <property name="<Primary>F7" type="string" value="workspace_7_key"/> + <property name="<Primary>F8" type="string" value="workspace_8_key"/> + <property name="<Primary>F9" type="string" value="workspace_9_key"/> + <property name="<Primary><Alt>KP_1" type="string" value="move_window_workspace_1_key"/> + <property name="<Super>KP_1" type="string" value="tile_down_left_key"/> + <property name="<Shift><Alt>Page_Up" type="string" value="raise_window_key"/> + <property name="<Super>KP_3" type="string" value="tile_down_right_key"/> + <property name="<Primary><Alt>KP_2" type="string" value="move_window_workspace_2_key"/> + <property name="<Alt>Delete" type="string" value="del_workspace_key"/> + <property name="<Alt>space" type="string" value="popup_menu_key"/> + <property name="<Primary><Alt>KP_5" type="string" value="move_window_workspace_5_key"/> + <property name="override" type="bool" value="true"/> + </property> + </property> + <property name="providers" type="array"> + <value type="string" value="xfwm4"/> + <value type="string" value="commands"/> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml new file mode 100644 index 0000000..1d7482c --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-notifyd.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfce4-notifyd" version="1.0"> + <property name="notify-location" type="empty"/> + <property name="theme" type="empty"/> + <property name="initial-opacity" type="empty"/> + <property name="applications" type="empty"> + <property name="known_applications" type="array"> + <value type="string" value="Firefox"/> + <value type="string" value="google-chrome"/> + <value type="string" value="nm-applet"/> + <value type="string" value="notify-send"/> + <value type="string" value="org.gnome.Evolution-alarm-notify"/> + <value type="string" value="Spotify"/> + <value type="string" value="Xfce volume control"/> + <value type="string" value="xfce4-settings-helper"/> + </property> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml new file mode 100644 index 0000000..3077199 --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-panel.xml @@ -0,0 +1,98 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfce4-panel" version="1.0"> + <property name="panels" type="uint" value="1"> + <property name="panel-0" type="empty"> + <property name="position" type="string" value="p=6;x=0;y=0"/> + <property name="length" type="uint" value="100"/> + <property name="position-locked" type="bool" value="true"/> + <property name="plugin-ids" type="array"> + <value type="int" value="7"/> + <value type="int" value="12"/> + <value type="int" value="2"/> + <value type="int" value="3"/> + <value type="int" value="4"/> + <value type="int" value="5"/> + <value type="int" value="6"/> + <value type="int" value="1"/> + <value type="int" value="10"/> + <value type="int" value="11"/> + </property> + <property name="background-style" type="uint" value="0"/> + <property name="background-alpha" type="uint" value="80"/> + <property name="size" type="uint" value="32"/> + <property name="length-adjust" type="bool" value="true"/> + <property name="span-monitors" type="bool" value="false"/> + <property name="enter-opacity" type="uint" value="100"/> + <property name="leave-opacity" type="uint" value="100"/> + <property name="mode" type="uint" value="0"/> + <property name="autohide-behavior" type="uint" value="0"/> + </property> + </property> + <property name="plugins" type="empty"> + <property name="plugin-2" type="string" value="tasklist"> + <property name="flat-buttons" type="bool" value="true"/> + </property> + <property name="plugin-3" type="string" value="separator"> + <property name="style" type="uint" value="0"/> + <property name="expand" type="bool" value="true"/> + </property> + <property name="plugin-4" type="string" value="systray"> + <property name="show-frame" type="bool" value="false"/> + <property name="size-max" type="uint" value="22"/> + <property name="names-visible" type="array"> + <value type="string" value="network"/> + <value type="string" value="networkmanager applet"/> + <value type="string" value="blueman-applet"/> + <value type="string" value="remmina"/> + </property> + <property name="names-ordered" type="array"> + <value type="string" value="remmina"/> + <value type="string" value="hexchat"/> + <value type="string" value="obs"/> + </property> + <property name="known-items" type="array"> + <value type="string" value="chrome_status_icon_1"/> + <value type="string" value="Barrier"/> + <value type="string" value="discord1"/> + <value type="string" value="vlc"/> + <value type="string" value="obs"/> + <value type="string" value="remmina-icon"/> + </property> + <property name="known-legacy-items" type="array"> + <value type="string" value="reminders"/> + <value type="string" value="evolution-alarm-notify"/> + <value type="string" value="remmina"/> + </property> + </property> + <property name="plugin-9" type="string" value="pulseaudio"> + <property name="enable-keyboard-shortcuts" type="bool" value="true"/> + <property name="enable-mpris" type="bool" value="true"/> + <property name="mixer-command" type="string" value="pavucontrol"/> + <property name="mpris-players" type="string" value="parole"/> + <property name="show-notifications" type="bool" value="true"/> + </property> + <property name="plugin-10" type="string" value="separator"> + <property name="style" type="uint" value="0"/> + <property name="expand" type="bool" value="false"/> + </property> + <property name="plugin-11" type="string" value="clock"> + <property name="digital-format" type="string" value="%d %b, %H:%M:%S"/> + </property> + <property name="plugin-12" type="string" value="pager"> + <property name="rows" type="uint" value="1"/> + <property name="miniature-view" type="bool" value="true"/> + </property> + <property name="plugin-13" type="string" value="genmon"/> + <property name="plugin-1" type="string" value="xfce4-clipman-plugin"/> + <property name="plugin-5" type="string" value="cpugraph"/> + <property name="plugin-6" type="string" value="pulseaudio"> + <property name="enable-keyboard-shortcuts" type="bool" value="true"/> + <property name="mpris-players" type="string" value="chrome.instance486584;firefox.instance139344;firefox.instance177030;firefox.instance354219;firefox.instance435270;firefox.instance47310;firefox.instance67698;firefox.instance8847;firefox.instance984;kdeconnect.mpris_139c920d94b14a47b3c01f1cb40b9a31;spotify;vlc"/> + </property> + <property name="plugin-7" type="string" value="applicationsmenu"> + <property name="show-button-title" type="bool" value="false"/> + </property> + </property> + <property name="configver" type="int" value="2"/> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml new file mode 100644 index 0000000..2950c5c --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-power-manager.xml @@ -0,0 +1,20 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfce4-power-manager" version="1.0"> + <property name="xfce4-power-manager" type="empty"> + <property name="power-button-action" type="empty"/> + <property name="lock-screen-suspend-hibernate" type="bool" value="false"/> + <property name="logind-handle-lid-switch" type="empty"/> + <property name="blank-on-ac" type="int" value="60"/> + <property name="blank-on-battery" type="empty"/> + <property name="dpms-enabled" type="bool" value="false"/> + <property name="dpms-on-ac-sleep" type="uint" value="60"/> + <property name="dpms-on-ac-off" type="uint" value="60"/> + <property name="dpms-on-battery-sleep" type="empty"/> + <property name="dpms-on-battery-off" type="empty"/> + <property name="show-panel-label" type="empty"/> + <property name="brightness-switch-restore-on-exit" type="int" value="1"/> + <property name="brightness-switch" type="int" value="0"/> + <property name="show-tray-icon" type="bool" value="false"/> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml new file mode 100644 index 0000000..ac75ee5 --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-session.xml @@ -0,0 +1,45 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfce4-session" version="1.0"> + <property name="general" type="empty"> + <property name="FailsafeSessionName" type="empty"/> + <property name="LockCommand" type="empty"/> + <property name="SaveOnExit" type="bool" value="true"/> + <property name="SessionName" type="string" value="Default"/> + </property> + <property name="sessions" type="empty"> + <property name="Failsafe" type="empty"> + <property name="IsFailsafe" type="empty"/> + <property name="Count" type="empty"/> + <property name="Client0_Command" type="empty"/> + <property name="Client0_Priority" type="empty"/> + <property name="Client0_PerScreen" type="empty"/> + <property name="Client1_Command" type="empty"/> + <property name="Client1_Priority" type="empty"/> + <property name="Client1_PerScreen" type="empty"/> + <property name="Client2_Command" type="empty"/> + <property name="Client2_Priority" type="empty"/> + <property name="Client2_PerScreen" type="empty"/> + <property name="Client3_Command" type="empty"/> + <property name="Client3_Priority" type="empty"/> + <property name="Client3_PerScreen" type="empty"/> + <property name="Client4_Command" type="empty"/> + <property name="Client4_Priority" type="empty"/> + <property name="Client4_PerScreen" type="empty"/> + </property> + </property> + <property name="splash" type="empty"> + <property name="Engine" type="empty"/> + </property> + <property name="compat" type="empty"> + <property name="LaunchGNOME" type="empty"/> + </property> + <property name="shutdown" type="empty"> + <property name="LockScreen" type="empty"/> + </property> + <property name="startup" type="empty"> + <property name="screensaver" type="empty"> + <property name="type" type="empty"/> + </property> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml new file mode 100644 index 0000000..e3f254f --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfce4-settings-manager.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfce4-settings-manager" version="1.0"> + <property name="last" type="empty"> + <property name="window-width" type="int" value="948"/> + <property name="window-height" type="int" value="2032"/> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml new file mode 100644 index 0000000..d13769e --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xfwm4.xml @@ -0,0 +1,97 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xfwm4" version="1.0"> + <property name="general" type="empty"> + <property name="activate_action" type="string" value="bring"/> + <property name="box_move" type="bool" value="false"/> + <property name="box_resize" type="bool" value="false"/> + <property name="button_layout" type="string" value="O|SHMC"/> + <property name="button_offset" type="int" value="0"/> + <property name="button_spacing" type="int" value="0"/> + <property name="click_to_focus" type="bool" value="true"/> + <property name="cycle_apps_only" type="bool" value="false"/> + <property name="cycle_draw_frame" type="bool" value="true"/> + <property name="cycle_preview" type="bool" value="true"/> + <property name="double_click_distance" type="int" value="5"/> + <property name="double_click_time" type="int" value="250"/> + <property name="focus_delay" type="int" value="250"/> + <property name="focus_new" type="bool" value="true"/> + <property name="frame_opacity" type="int" value="100"/> + <property name="full_width_title" type="bool" value="true"/> + <property name="maximized_offset" type="int" value="0"/> + <property name="mousewheel_rollup" type="bool" value="true"/> + <property name="placement_mode" type="string" value="center"/> + <property name="raise_delay" type="int" value="250"/> + <property name="raise_on_click" type="bool" value="true"/> + <property name="raise_on_focus" type="bool" value="false"/> + <property name="repeat_urgent_blink" type="bool" value="false"/> + <property name="scroll_workspaces" type="bool" value="true"/> + <property name="shadow_delta_height" type="int" value="0"/> + <property name="shadow_delta_width" type="int" value="0"/> + <property name="shadow_delta_x" type="int" value="0"/> + <property name="shadow_delta_y" type="int" value="-3"/> + <property name="shadow_opacity" type="int" value="50"/> + <property name="show_app_icon" type="bool" value="false"/> + <property name="show_dock_shadow" type="bool" value="true"/> + <property name="show_frame_shadow" type="bool" value="true"/> + <property name="show_popup_shadow" type="bool" value="false"/> + <property name="snap_to_border" type="bool" value="true"/> + <property name="snap_to_windows" type="bool" value="false"/> + <property name="snap_width" type="int" value="10"/> + <property name="theme" type="string" value="Default"/> + <property name="title_alignment" type="string" value="center"/> + <property name="title_font" type="string" value="Sans Bold 9"/> + <property name="title_horizontal_offset" type="int" value="0"/> + <property name="title_shadow_active" type="string" value="false"/> + <property name="title_shadow_inactive" type="string" value="false"/> + <property name="title_vertical_offset_active" type="int" value="0"/> + <property name="title_vertical_offset_inactive" type="int" value="0"/> + <property name="urgent_blink" type="bool" value="false"/> + <property name="use_compositing" type="bool" value="true"/> + <property name="workspace_count" type="int" value="5"/> + <property name="workspace_names" type="array"> + <value type="string" value="1"/> + <value type="string" value="2"/> + <value type="string" value="3"/> + <value type="string" value="5"/> + <value type="string" value="6"/> + <value type="string" value="7"/> + <value type="string" value="9"/> + <value type="string" value="Workspace 8"/> + <value type="string" value="9"/> + </property> + <property name="wrap_resistance" type="int" value="10"/> + <property name="wrap_windows" type="bool" value="true"/> + <property name="wrap_workspaces" type="bool" value="false"/> + <property name="borderless_maximize" type="bool" value="true"/> + <property name="cycle_hidden" type="bool" value="true"/> + <property name="cycle_minimum" type="bool" value="true"/> + <property name="cycle_tabwin_mode" type="int" value="0"/> + <property name="cycle_workspaces" type="bool" value="false"/> + <property name="double_click_action" type="string" value="maximize"/> + <property name="easy_click" type="string" value="Alt"/> + <property name="focus_hint" type="bool" value="true"/> + <property name="horiz_scroll_opacity" type="bool" value="false"/> + <property name="inactive_opacity" type="int" value="100"/> + <property name="move_opacity" type="int" value="100"/> + <property name="placement_ratio" type="int" value="20"/> + <property name="popup_opacity" type="int" value="100"/> + <property name="prevent_focus_stealing" type="bool" value="false"/> + <property name="raise_with_any_button" type="bool" value="true"/> + <property name="resize_opacity" type="int" value="100"/> + <property name="snap_resist" type="bool" value="false"/> + <property name="sync_to_vblank" type="bool" value="false"/> + <property name="tile_on_move" type="bool" value="true"/> + <property name="titleless_maximize" type="bool" value="false"/> + <property name="toggle_workspaces" type="bool" value="false"/> + <property name="unredirect_overlays" type="bool" value="true"/> + <property name="wrap_cycle" type="bool" value="true"/> + <property name="wrap_layout" type="bool" value="true"/> + <property name="zoom_desktop" type="bool" value="true"/> + <property name="cycle_raise" type="bool" value="false"/> + <property name="cycle_minimized" type="bool" value="false"/> + <property name="frame_border_top" type="int" value="0"/> + <property name="vblank_mode" type="string" value="auto"/> + <property name="zoom_pointer" type="bool" value="true"/> + </property> +</channel> diff --git a/dot_config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml new file mode 100644 index 0000000..762e18a --- /dev/null +++ b/dot_config/xfce4/xfconf/xfce-perchannel-xml/xsettings.xml @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> + +<channel name="xsettings" version="1.0"> + <property name="Net" type="empty"> + <property name="ThemeName" type="string" value="Adwaita-dark"/> + <property name="IconThemeName" type="string" value="Arc"/> + <property name="DoubleClickTime" type="empty"/> + <property name="DoubleClickDistance" type="empty"/> + <property name="DndDragThreshold" type="empty"/> + <property name="CursorBlink" type="empty"/> + <property name="CursorBlinkTime" type="empty"/> + <property name="SoundThemeName" type="empty"/> + <property name="EnableEventSounds" type="empty"/> + <property name="EnableInputFeedbackSounds" type="empty"/> + <property name="FallbackIconTheme" type="empty"/> + </property> + <property name="Xft" type="empty"> + <property name="DPI" type="int" value="130"/> + <property name="Antialias" type="int" value="1"/> + <property name="Hinting" type="int" value="1"/> + <property name="HintStyle" type="string" value="hintslight"/> + <property name="RGBA" type="string" value="rgb"/> + <property name="Lcdfilter" type="empty"/> + </property> + <property name="Gtk" type="empty"> + <property name="CanChangeAccels" type="empty"/> + <property name="ColorPalette" type="empty"/> + <property name="FontName" type="string" value="Sans 12"/> + <property name="MonospaceFontName" type="string" value="Liberation Mono 12"/> + <property name="IconSizes" type="empty"/> + <property name="KeyThemeName" type="empty"/> + <property name="ToolbarStyle" type="empty"/> + <property name="ToolbarIconSize" type="empty"/> + <property name="MenuImages" type="empty"/> + <property name="ButtonImages" type="empty"/> + <property name="MenuBarAccel" type="empty"/> + <property name="CursorThemeName" type="string" value="elementary"/> + <property name="CursorThemeSize" type="empty"/> + <property name="DecorationLayout" type="empty"/> + <property name="DialogsUseHeader" type="empty"/> + <property name="TitlebarMiddleClick" type="empty"/> + </property> + <property name="Gdk" type="empty"> + <property name="WindowScalingFactor" type="empty"/> + </property> + <property name="Xfce" type="empty"> + <property name="LastCustomDPI" type="int" value="130"/> + </property> +</channel> diff --git a/dot_conkyrc b/dot_conkyrc new file mode 100644 index 0000000..5bd27fd --- /dev/null +++ b/dot_conkyrc @@ -0,0 +1,78 @@ +# Conky, a system monitor, based on torsmo +# +# Any original torsmo code is licensed under the BSD license +# +# All code written since the fork of torsmo is licensed under the GPL +# +# Please see COPYING for details +# +# Copyright (c) 2004, Hannu Saransaari and Lauri Hakkarainen +# Copyright (c) 2005-2010 Brenden Matthews, Philip Kovacs, et. al. (see AUTHORS) +# All rights reserved. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# You should have received a copy of the GNU General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +alignment top_right +background no +border_width 1 +cpu_avg_samples 2 +default_color white +default_outline_color white +default_shade_color white +draw_borders no +draw_graph_borders yes +draw_outline no +draw_shades no +use_xft yes +xftfont DejaVu Sans Mono:size=12 +gap_x 5 +gap_y 60 +minimum_size 5 5 +net_avg_samples 2 +no_buffers yes +out_to_console no +out_to_stderr no +extra_newline no +own_window yes +own_window_class Conky +own_window_type override +own_window_transparent yes +stippled_borders 0 +update_interval 1.0 +uppercase no +use_spacer none +show_graph_scale no +show_graph_range no +double_buffer yes + +TEXT +${scroll 30 $nodename - $sysname $kernel on $machine | } +$hr +${color grey}Uptime:$color $uptime +${color grey}Frequency (in MHz):$color $freq +${color grey}Frequency (in GHz):$color $freq_g +${color grey}RAM Usage:$color $mem/$memmax - $memperc% ${membar 4} +${color grey}Swap Usage:$color $swap/$swapmax - $swapperc% ${swapbar 4} +${color grey}CPU Usage:$color $cpu% ${cpubar 4} +${color grey}Processes:$color $processes ${color grey}Running:$color $running_processes +$hr +${color grey}File systems: + / $color${fs_used /}/${fs_size /} ${fs_bar 6 /} +${color grey}Networking: +Up:$color ${upspeed eth0} ${color grey} - Down:$color ${downspeed eth0} +$hr +${color grey}Name PID CPU% MEM% +${color lightgrey} ${top name 1} ${top pid 1} ${top cpu 1} ${top mem 1} +${color lightgrey} ${top name 2} ${top pid 2} ${top cpu 2} ${top mem 2} +${color lightgrey} ${top name 3} ${top pid 3} ${top cpu 3} ${top mem 3} +${color lightgrey} ${top name 4} ${top pid 4} ${top cpu 4} ${top mem 4} diff --git a/dot_emacs.local/barak-theme.el b/dot_emacs.local/barak-theme.el new file mode 100644 index 0000000..70dad62 --- /dev/null +++ b/dot_emacs.local/barak-theme.el @@ -0,0 +1,262 @@ +;;; Code: + +(deftheme barak "Barak's Theme") + +;;; Color Palette + +(defvar zenburn-colors-alist + '(("zenburn-fg+1" . "#FFFFEF") + ("zenburn-fg" . "#DCDCCC") + ("zenburn-fg-1" . "#656555") + ("zenburn-bg-2" . "#000000") + ("zenburn-bg-1" . "#2B2B2B") + ("zenburn-bg-05" . "#383838") + ("zenburn-bg" . "#3F3F3F") + ("zenburn-bg+1" . "#4F4F4F") + ("zenburn-bg+2" . "#5F5F5F") + ("zenburn-bg+3" . "#6F6F6F") + ("zenburn-red+1" . "#DCA3A3") + ("zenburn-red" . "#CC9393") + ("zenburn-red-1" . "#BC8383") + ("zenburn-red-2" . "#AC7373") + ("zenburn-red-3" . "#9C6363") + ("zenburn-red-4" . "#8C5353") + ("zenburn-orange" . "#DFAF8F") + ("zenburn-yellow" . "#F0DFAF") + ("zenburn-yellow-1" . "#E0CF9F") + ("zenburn-yellow-2" . "#D0BF8F") + ("zenburn-green-1" . "#5F7F5F") + ("zenburn-green" . "#7F9F7F") + ("zenburn-green+1" . "#8FB28F") + ("zenburn-green+2" . "#9FC59F") + ("zenburn-green+3" . "#AFD8AF") + ("zenburn-green+4" . "#BFEBBF") + ("zenburn-cyan" . "#93E0E3") + ("zenburn-blue+1" . "#94BFF3") + ("zenburn-blue" . "#8CD0D3") + ("zenburn-blue-1" . "#7CB8BB") + ("zenburn-blue-2" . "#6CA0A3") + ("zenburn-blue-3" . "#5C888B") + ("zenburn-blue-4" . "#4C7073") + ("zenburn-blue-5" . "#366060") + ("zenburn-magenta" . "#DC8CC3"))) + +(defvar barak-colors-alist + '(("background" . "#000000") + ("cursor" . "#A7A7A7") + ("fg-default" . "#E0E0E0") + ("mouse" . "sienna1") + ("comment" . "#238E23") + ("constant" . "#E3AC3D") + ("docstring" . "DarkOrange") + ("zenburn-fg+1" . "#FFFFEF") + ("zenburn-fg" . "#DCDCCC") + ("zenburn-fg-1" . "#656555") + ("zenburn-bg-2" . "#000000") + ("zenburn-bg-1" . "#2B2B2B") + ("zenburn-bg-05" . "#383838") + ("zenburn-bg" . "#3F3F3F") + ("zenburn-bg+1" . "#4F4F4F") + ("zenburn-bg+2" . "#5F5F5F") + ("zenburn-bg+3" . "#6F6F6F") + ("zenburn-red+1" . "#DCA3A3") + ("zenburn-red" . "#CC9393") + ("zenburn-red-1" . "#BC8383") + ("zenburn-red-2" . "#AC7373") + ("zenburn-red-3" . "#9C6363") + ("zenburn-red-4" . "#8C5353") + ("zenburn-orange" . "#DFAF8F") + ("zenburn-yellow" . "#F0DFAF") + ("zenburn-yellow-1" . "#E0CF9F") + ("zenburn-yellow-2" . "#D0BF8F") + ("zenburn-green-1" . "#5F7F5F") + ("zenburn-green" . "#7F9F7F") + ("zenburn-green+1" . "#8FB28F") + ("zenburn-green+2" . "#9FC59F") + ("zenburn-green+3" . "#AFD8AF") + ("zenburn-green+4" . "#BFEBBF") + ("zenburn-cyan" . "#93E0E3") + ("zenburn-blue+1" . "#94BFF3") + ("zenburn-blue" . "#8CD0D3") + ("zenburn-blue-1" . "#7CB8BB") + ("zenburn-blue-2" . "#6CA0A3") + ("zenburn-blue-3" . "#5C888B") + ("zenburn-blue-4" . "#4C7073") + ("zenburn-blue-5" . "#366060") + ("zenburn-magenta" . "#DC8CC3")) + "List of Zenburn colors. +Each element has the form (NAME . HEX).") + + +(defmacro barak-with-color-variables (&rest body) + "`let' bind all colors defined in `zenburn-colors-alist' around BODY. +Also bind `class' to ((class color) (min-colors 89))." + (declare (indent 0)) + `(let ((class '((class color) (min-colors 89))) + ,@(mapcar (lambda (cons) + (list (intern (car cons)) (cdr cons))) + barak-colors-alist)) + ,@body)) + +(defmacro zenburn-with-color-variables (&rest body) + "`let' bind all colors defined in `zenburn-colors-alist' around BODY. +Also bind `class' to ((class color) (min-colors 89))." + (declare (indent 0)) + `(let ((class '((class color) (min-colors 89))) + ,@(mapcar (lambda (cons) + (list (intern (car cons)) (cdr cons))) + zenburn-colors-alist)) + ,@body)) + +;;; Theme Faces +(barak-with-color-variables + (custom-theme-set-faces + 'barak +;;;; Built-in +;;;;; basic coloring + '(button ((t (:underline t)))) + `(link ((t (:foreground ,zenburn-yellow :underline t :weight bold)))) + `(link-visited ((t (:foreground ,zenburn-yellow-2 :underline t :weight normal)))) + `(default ((t (:foreground ,fg-default :background ,background)))) + `(cursor ((t (:foreground ,cursor :background ,zenburn-fg+1)))) + `(blue ((t (:foreground "blue")))) + `(bold ((t (:bold t)))) + `(bold-italic ((t (:bold t)))) + `(border-glyph ((t (nil)))) + `(buffers-tab ((t (:background "#121212" :foreground "#E0E0E0")))) + `(font-lock-builtin-face ((t (:foreground "#E0E0E0")))) + `(font-lock-comment-face ((t (:foreground "#238E23")))) + `(font-lock-constant-face ((t (:foreground "#E3AC3D")))) + `(font-lock-doc-string-face ((t (:foreground "DarkOrange")))) + `(font-lock-function-name-face ((t (:foreground "#C5A6FF")))) + `(font-lock-keyword-face ((t (:bold t :foreground "#4876FF")))) + `(font-lock-preprocessor-face ((t (:foreground "#E9DFEF")))) + `(font-lock-reference-face ((t (:foreground "#E1634F")))) + `(font-lock-regexp-grouping-backslash ((t (:foreground "#E9C062")))) + `(font-lock-regexp-grouping-construct ((t (:foreground "red")))) + `(font-lock-string-face ((t (:foreground "#F05656")))) + `(font-lock-type-face ((t (:foreground "#73E1E6")))) + `(font-lock-variable-name-face ((t (:foreground "#00BFFF")))) + `(font-lock-warning-face ((t (:bold t :foreground "Pink")))) + `(gui-element ((t (:background "#A0A0A0" :foreground "black")))) + `(region ((t (:background "#364458")))) + `(mode-line ((t (:background "grey75" :foreground "black")))) + `(highlight ((t (:background "#222222")))) + `(highline-face ((t (:background "SeaGreen")))) + `(italic ((t (nil)))) + `(left-margin ((t (nil)))) + `(text-cursor ((t (:background "green" :foreground "black")))) + `(toolbar ((t (nil)))) + `(tabbar-default ((t (:background "black" :foreground "grey75")))) + `(tabbar-selected ((t (:background "grey75" :foreground "black")))) + `(tabbar-highlight ((t (:bold t)))) + `(underline ((nil (:underline nil)))) + `(match ((t (:bold t :background nil)))) + `(show-paren-match ((t ((:bold t :foreground "#00ff00" :background nil))))) + + ; company mode + `(company-tooltip ((t (:background "#303840" :foreground "#e0e0e0")))) + `(company-tooltip-annotation ((t (:bold t :background "#303840" :foreground "#cae682")))) + `(company-tooltip-selection ((t (:bold t :background "#505860" :foreground "#ffa000")))) + `(company-scrollbar-bg ((t (:background "#505860" :foreground "#505860")))) + `(company-scrollbar-fg ((t (:background "#808890" :foreground "#808890")))) + ; powerline + `(powerline-active1 ((t (:background "#303840" :foreground "#e0e0e0")))) + `(powerline-active2 ((t (:background "#505860" :foreground "#ffa000")))) + ; motion-face + `(spacemacs-motion-face ((t (:background "#5f87ff" :foreground "#ffffff")))) + `(spacemacs-normal-face ((t (:background "#5f87ff" :foreground "#ffffff")))) + `(spacemacs-replace-face ((t (:background "#870000" :foreground "#ffffff")))) + `(spacemacs-visual-face ((t (:background "#ffac00" :foreground "#ffffff")))) + )) + +;;; Theme Variables +(zenburn-with-color-variables + (custom-theme-set-variables + 'barak +;;;;; ansi-color + `(ansi-color-names-vector [,zenburn-bg ,zenburn-red ,zenburn-green ,zenburn-yellow + ,zenburn-blue ,zenburn-magenta ,zenburn-cyan ,zenburn-fg]) +;;;;; fill-column-indicator + `(fci-rule-color ,zenburn-bg-05) +;;;;; vc-annotate + `(vc-annotate-color-map + '(( 20. . ,zenburn-red-1) + ( 40. . ,zenburn-red) + ( 60. . ,zenburn-orange) + ( 80. . ,zenburn-yellow-2) + (100. . ,zenburn-yellow-1) + (120. . ,zenburn-yellow) + (140. . ,zenburn-green-1) + (160. . ,zenburn-green) + (180. . ,zenburn-green+1) + (200. . ,zenburn-green+2) + (220. . ,zenburn-green+3) + (240. . ,zenburn-green+4) + (260. . ,zenburn-cyan) + (280. . ,zenburn-blue-2) + (300. . ,zenburn-blue-1) + (320. . ,zenburn-blue) + (340. . ,zenburn-blue+1) + (360. . ,zenburn-magenta))) + `(vc-annotate-very-old-color ,zenburn-magenta) + `(vc-annotate-background ,zenburn-bg-1) + )) + +;;; Rainbow Support + +;; (declare-function rainbow-mode 'rainbow-mode) +;; (declare-function rainbow-colorize-by-assoc 'rainbow-mode) + +(defvar barak-add-font-lock-keywords nil + "Whether to add font-lock keywords for zenburn color names. +In buffers visiting library `zenburn-theme.el' the zenburn +specific keywords are always added. In all other Emacs-Lisp +buffers this variable controls whether this should be done. +This requires library `rainbow-mode'.") + +(defvar barak-colors-font-lock-keywords nil) + +;; (defadvice rainbow-turn-on (after zenburn activate) +;; "Maybe also add font-lock keywords for zenburn colors." +;; (when (and (derived-mode-p 'emacs-lisp-mode) +;; (or zenburn-add-font-lock-keywords +;; (equal (file-name-nondirectory (buffer-file-name)) +;; "zenburn-theme.el"))) +;; (unless zenburn-colors-font-lock-keywords +;; (setq zenburn-colors-font-lock-keywords +;; `((,(regexp-opt (mapcar 'car zenburn-colors-alist) 'words) +;; (0 (rainbow-colorize-by-assoc zenburn-colors-alist)))))) +;; (font-lock-add-keywords nil zenburn-colors-font-lock-keywords))) + +;; (defadvice rainbow-turn-off (after zenburn activate) +;; "Also remove font-lock keywords for zenburn colors." +;; (font-lock-remove-keywords nil zenburn-colors-font-lock-keywords)) + +;;; Footer + +;;;###autoload +;; (and load-file-name +;; (boundp 'custom-theme-load-path) +;; (add-to-list 'custom-theme-load-path +;; (file-name-as-directory +;; (file-name-directory load-file-name)))) + +;(defun color-theme-barak-extras () +;; Highlight numbers +;(add-hook 'after-change-major-mode-hook + ;(lambda () (font-lock-add-keywords + ;nil + ;'(("\\<\\(\\(0[xX]\\|0[bB]\\)?-?[0-9a-fA-F]+\\.?[0-9]*?[fFlL]?\\)\\>" 1 '((t (:foreground "#E3AC3D"))))))))) + +(provide-theme 'barak) + +;;;###autoload +;; (add-to-list 'safe-local-eval-forms +;; '(when (require 'rainbow-mode nil t) (rainbow-mode 1))) + +;; Local Variables: +;; no-byte-compile: t +;; indent-tabs-mode: nil +;; eval: (when (require 'rainbow-mode nil t) (rainbow-mode 1)) +;; End: diff --git a/dot_fehbg.example b/dot_fehbg.example new file mode 100755 index 0000000..322d2ee --- /dev/null +++ b/dot_fehbg.example @@ -0,0 +1,2 @@ +#!/bin/sh +feh --bg-fill '/home/barak/Documents/Grand_Central_Station_ultra_hd_wallpapers_4k.jpg' diff --git a/dot_fonts.conf b/dot_fonts.conf new file mode 120000 index 0000000..20d11f6 --- /dev/null +++ b/dot_fonts.conf @@ -0,0 +1 @@ +/home/barak/.config/fontconfig/fonts.conf \ No newline at end of file diff --git a/dot_fonts/Droid Sans Mono Dotted.ttf b/dot_fonts/Droid Sans Mono Dotted.ttf new file mode 100644 index 0000000000000000000000000000000000000000..e56a5ca7171d818ae4476e10abbeb208083aae13 GIT binary patch literal 117696 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 literal 0 HcmV?d00001 diff --git a/dot_gitconfig b/dot_gitconfig new file mode 100644 index 0000000..5c45626 --- /dev/null +++ b/dot_gitconfig @@ -0,0 +1,60 @@ +[user] + name = Barak Michener + email = me@barakmich.com + +[alias] + br = branch -a -v + st = status -uno + stat = status -uno + ci = commit + co = checkout + w = whatchanged + revert = checkout -f + stagediff = diff --staged + sdiff = diff --staged + graph = log --graph --oneline + submodule-pull = submodule foreach git pull + ours = "!f() { git checkout --ours $@ && git add $@; }; f" + theirs = "!f() { git checkout --theirs $@ && git add $@; }; f" + praise = blame + hist = show-branch -a + undo-last = reset HEAD^ + unstage = restore --staged + latest = branch --sort=committerdate + f = fetch origin main + +[diff] + renamelimit = 0 + +[merge] + conflictstyle = diff3 + +[color] + diff = auto + interactive = auto + status = auto + branch = auto + +[core] + autocrlf = input +;[push] + ;default = simple +[push] + default = current +[rerere] + enabled = true + +[url "git@github.com:"] + insteadOf = https://github.com + +[url "git@git.barakmich.com:"] + insteadOf = https://git.barakmich.com +[pull] + ff = only +[init] + defaultBranch = main +[filter "lfs"] + clean = git-lfs clean -- %f + smudge = git-lfs smudge -- %f + process = git-lfs filter-process + required = true diff --git a/dot_gitignore b/dot_gitignore new file mode 100644 index 0000000..93bfd12 --- /dev/null +++ b/dot_gitignore @@ -0,0 +1,2 @@ +*~ +.DS_Store diff --git a/dot_gnome.dconf b/dot_gnome.dconf new file mode 100644 index 0000000..7fd06a0 --- /dev/null +++ b/dot_gnome.dconf @@ -0,0 +1,100 @@ +[desktop/input-sources] +current=uint32 0 +sources=[('xkb', 'us')] +xkb-options=['lv3:ralt_switch', 'ctrl:nocaps'] + +[desktop/interface] +clock-show-seconds=false +clock-show-weekday=true +enable-hot-corners=false +gtk-im-module='gtk-im-context-simple' +gtk-key-theme='Default' +show-battery-percentage=true +text-scaling-factor=1.2 +toolkit-accessibility=false + +[desktop/peripherals/mouse] +natural-scroll=false + +[desktop/peripherals/touchpad] +natural-scroll=false +tap-to-click=true +two-finger-scrolling-enabled=true + +[desktop/privacy] +report-technical-problems=false + +[desktop/wm/keybindings] +close=['<Shift><Alt>c'] +move-to-workspace-1=['<Shift><Alt>exclam'] +move-to-workspace-10=['<Shift><Alt>parenright'] +move-to-workspace-2=['<Shift><Alt>at'] +move-to-workspace-3=['<Shift><Alt>numbersign'] +move-to-workspace-4=['<Shift><Alt>dollar'] +move-to-workspace-5=['<Shift><Alt>percent'] +move-to-workspace-6=['<Shift><Alt>asciicircum'] +move-to-workspace-7=['<Shift><Alt>ampersand'] +move-to-workspace-8=['<Shift><Alt>asterisk'] +move-to-workspace-9=['<Shift><Alt>parenleft'] +move-to-workspace-left=['<Primary><Shift><Alt>h'] +move-to-workspace-right=['<Primary><Shift><Alt>l'] +switch-to-workspace-1=['<Alt>1'] +switch-to-workspace-10=['<Alt>0'] +switch-to-workspace-2=['<Alt>2'] +switch-to-workspace-3=['<Alt>3'] +switch-to-workspace-4=['<Alt>4'] +switch-to-workspace-5=['<Alt>5'] +switch-to-workspace-6=['<Alt>6'] +switch-to-workspace-7=['<Alt>7'] +switch-to-workspace-8=['<Alt>8'] +switch-to-workspace-9=['<Alt>9'] + +[desktop/wm/preferences] +focus-mode='mouse' +num-workspaces=10 + +[mutter] +dynamic-workspaces=false + +[settings-daemon/plugins/media-keys] +custom-keybindings=['/org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0/'] +screensaver=['<Shift><Alt>F12'] + +[settings-daemon/plugins/media-keys/custom-keybindings/custom0] +binding='<Shift><Alt>Return' +command='terminator' +name='Launch Terminal' + +[shell/extensions/pop-shell] +activate-launcher=['<Primary>space'] +active-hint=true +focus-down=['<Alt>j'] +focus-left=['<Alt>h'] +focus-right=['<Alt>l'] +focus-up=['<Alt>k'] +gap-inner=uint32 2 +gap-outer=uint32 2 +hint-color-rgba='rgb(52,158,143)' +show-title=false +smart-gaps=true +tile-by-default=true +tile-enter=['<Alt>r'] +toggle-floating=['<Alt>g'] +toggle-tiling=['<Alt>y'] + +[shell/keybindings] +focus-active-notification=['<Alt>n'] +toggle-application-view=@as [] +toggle-message-tray=['<Shift><Alt>n'] + +[terminal/legacy/profiles:/:b1dcc9dd-5262-4d8d-a863-c897e6d979b9] +background-color='rgb(0,0,0)' +background-transparency-percent=13 +bold-is-bright=false +font='Iosevka Berkeley 18' +foreground-color='rgb(255,255,255)' +palette=['rgb(46,52,54)', 'rgb(204,0,0)', 'rgb(78,154,6)', 'rgb(196,160,0)', 'rgb(52,101,164)', 'rgb(117,80,123)', 'rgb(6,152,154)', 'rgb(211,215,207)', 'rgb(85,87,83)', 'rgb(239,41,41)', 'rgb(138,226,52)', 'rgb(252,233,79)', 'rgb(114,159,207)', 'rgb(173,127,168)', 'rgb(52,226,226)', 'rgb(238,238,236)'] +scrollbar-policy='never' +use-system-font=false +use-theme-colors=false +use-transparent-background=true diff --git a/dot_gvimrc b/dot_gvimrc new file mode 100644 index 0000000..ce225a2 --- /dev/null +++ b/dot_gvimrc @@ -0,0 +1,32 @@ +winsize 115 45 +"set expandtab +"set guifont=DejaVu\ Sans\ Mono:h15.00 +set guifont=Inconsolata\ 14 +set guioptions-=L +set guioptions-=r +set guioptions-=m +set guioptions-=T +set guioptions+=c + +if has("gui_macvim") + set fuoptions=maxvert,maxhorz + set guifont=Inconsolata:h18 +endif +"call AppleTSetPath("~/work/client") +"map gg :CmdT +map <C-1> 1gt +map <C-2> 2gt +map <C-3> 3gt +map <C-4> 4gt +map <C-5> 5gt +map <C-6> 6gt +map <C-7> 7gt +map <C-8> 8gt +map <D-1> 1gt +map <D-2> 2gt +map <D-3> 3gt +map <D-4> 4gt +map <D-5> 5gt +map <D-6> 6gt +map <D-7> 7gt +map <D-8> 8gt diff --git a/dot_hgrc b/dot_hgrc new file mode 100644 index 0000000..3b743d0 --- /dev/null +++ b/dot_hgrc @@ -0,0 +1,16 @@ +[ui] +username = Barak Michener <me@barakmich.com> + +[extensions] +#hgext.bookmarks = +#hggit = +fetch = +color = + +[color] +status.modified = green bold +status.added = yellow bold +status.removed = red bold +status.deleted = cyan bold +status.unknown = none +status.ignored = black bold diff --git a/dot_i3/config b/dot_i3/config new file mode 100644 index 0000000..0574562 --- /dev/null +++ b/dot_i3/config @@ -0,0 +1,240 @@ +# This file has been auto-generated by i4-config-wizard(1). +# It will not be overwritten, so edit it as you like. +#jk +# Should you change your keyboard layout some time, delete +# this file and re-run i3-config-wizard(1). +# + +# i3 config file (v4) +# +# Please see http://i3wm.org/docs/userguide.html for a complete reference! + +set $mod Mod1 +set $win Mod4 + +# Font for window titles. Will also be used by the bar unless a different font +# is used in the bar {} block below. +# This font is widely installed, provides lots of unicode glyphs, right-to-left +# text rendering and scalability on retina/hidpi displays (thanks to pango). +font pango:DejaVu Sans Mono 13 +# Before i3 v4.8, we used to recommend this one as the default: +# font -misc-fixed-medium-r-normal--13-120-75-75-C-70-iso10646-1 +# The font above is very space-efficient, that is, it looks good, sharp and +# clear in small sizes. However, its unicode glyph coverage is limited, the old +# X core fonts rendering does not support right-to-left and this being a bitmap +# font, it doesn’t scale on retina/hidpi displays. +# + +new_window pixel 2 + +# class border backgr. text indicator +#client.focused #4c7899 #285577 #ffffff #2e9ef4 +client.focused #00bfff #00bfff #ffffff #2e9ef4 +client.focused_inactive #333333 #5f676a #ffffff #484e50 +client.unfocused #333333 #222222 #888888 #292d2e +client.urgent #2f343a #900000 #ffffff #900000 +#client.placeholder #000000 #0c0c0c #ffffff #000000 +#force_focus_wrapping yes + +# Use Mouse+$mod to drag floating windows to their wanted position +floating_modifier $mod + +#gaps inner 10 + + +# start a terminal +bindsym $mod+Shift+Return exec alacritty + +#bindsym Control+space exec rofi -show run -fuzzy -terminal run_terminal +#bindsym Control+space exec rofi -combi-modi window,run,ssh -modi combi -show combi +bindsym Control+space exec "rofi -combi-modi run,drun -modi combi -show combi -terminal run_terminal -fuzzy" + +# kill focused window +bindsym $mod+Shift+c kill + +# start dmenu (a program launcher) +#bindsym $mod+d exec dmenu_run + +bindsym $mod+d exec i3-dmenu-desktop --dmenu='rofi -dmenu' + +bindsym $mod+F12 exec xscreensaver-command -lock +bindsym $mod+Shift+y exec xinput-toggle -r yubikey -n -e -t 10 +bindsym $mod+Shift+f exec --no-startup-id xmodmap ~/.Xmodmap +bindsym $mod+Shift+s exec xfce4-screenshooter +# There also is the (new) i3-dmenu-desktop which only displays applications +# shipping a .desktop file. It is a wrapper around dmenu, so you need that +# installed. +# bindsym $mod+d exec --no-startup-id i3-dmenu-desktop + +# change focus +bindsym $mod+h focus left +bindsym $mod+j focus down +bindsym $mod+k focus up +bindsym $mod+l focus right +#bindsym $mod+j exec --no-startup-id ~/.i3/i3-focus-next +#bindsym $mod+k exec --no-startup-id ~/.i3/i3-focus-next --reverse +bindsym $mod+y move workspace to output left +bindsym $mod+Return exec --no-startup-id ~/.i3/i3-barak-tool.py promote + +# alternatively, you can use the cursor keys: +#bindsym $mod+Left focus left +#bindsym $mod+Down focus down +#bindsym $mod+Up focus up +#bindsym $mod+Right focus right + +# move focused window +bindsym $mod+Shift+h move left +bindsym $mod+Shift+j move down +bindsym $mod+Shift+k move up +bindsym $mod+Shift+l move right + +# alternatively, you can use the cursor keys: +#bindsym $mod+Shift+Left move left +#bindsym $mod+Shift+Down move down +#bindsym $mod+Shift+Up move up +#bindsym $mod+Shift+Right move right + +# split in vim-horizontal (vertical) orientation +bindsym $mod+i split v + +# split in vim-vertical (horizontal) orientation +bindsym $mod+v split h + +# enter fullscreen mode for the focused container +bindsym $mod+f fullscreen + +# change container layout (stacked, tabbed, toggle split) +bindsym $mod+s layout stacking +bindsym $mod+w layout tabbed +bindsym $mod+e layout toggle split + +# toggle tiling / floating +bindsym $mod+Shift+space floating toggle + +# change focus between tiling / floating windows +bindsym $mod+space focus mode_toggle + +# focus the parent container +bindsym $mod+a focus parent + +# focus the child container +bindsym $mod+z focus child + +# switch to workspace +bindsym $mod+1 workspace 1 +bindsym $mod+2 workspace 2 +bindsym $mod+3 workspace 3 +bindsym $mod+4 workspace 4 +bindsym $mod+5 workspace 5 +bindsym $mod+6 workspace 6 +bindsym $mod+7 workspace 7 +bindsym $mod+8 workspace 8 +bindsym $mod+9 workspace 9 +bindsym $mod+0 workspace 10 + +bindsym $mod+Tab workspace back_and_forth + +# move focused container to workspace +bindsym $mod+Shift+1 move container to workspace 1 +bindsym $mod+Shift+2 move container to workspace 2 +bindsym $mod+Shift+3 move container to workspace 3 +bindsym $mod+Shift+4 move container to workspace 4 +bindsym $mod+Shift+5 move container to workspace 5 +bindsym $mod+Shift+6 move container to workspace 6 +bindsym $mod+Shift+7 move container to workspace 7 +bindsym $mod+Shift+8 move container to workspace 8 +bindsym $mod+Shift+9 move container to workspace 9 +bindsym $mod+Shift+0 move container to workspace 10 + +# reload the configuration file +bindsym $mod+Shift+t reload +# restart i3 inplace (preserves your layout/session, can be used to upgrade i3) +bindsym $mod+Shift+r restart +# exit i3 (logs you out of your X session) +bindsym $mod+Shift+q exec "i3-nagbar -t warning -m 'You pressed the exit shortcut. Do you really want to exit i3? This will end your X session.' -b 'Yes, exit i3' 'i3-msg exit'" + +bindsym $mod+u resize set width 62ppt + +# resize window (you can also use the mouse for that) +mode "resize" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym h resize shrink width 5 px or 5 ppt + bindsym j resize grow height 5 px or 5 ppt + bindsym k resize shrink height 5 px or 5 ppt + bindsym l resize grow width 5 px or 5 ppt + + # same bindings, but for the arrow keys + #bindsym Left resize shrink width 10 px or 10 ppt + #bindsym Down resize grow height 10 px or 10 ppt + #bindsym Up resize shrink height 10 px or 10 ppt + #bindsym Right resize grow width 10 px or 10 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" + bindsym $mod+r mode "default" +} + +bindsym $mod+r mode "resize" + +mode "moveworkspace" { + # These bindings trigger as soon as you enter the resize mode + + # Pressing left will shrink the window’s width. + # Pressing right will grow the window’s width. + # Pressing up will shrink the window’s height. + # Pressing down will grow the window’s height. + bindsym h move workspace to output left + bindsym j move workspace to output down + bindsym k move workspace to output up + bindsym l move workspace to output right + + # same bindings, but for the arrow keys + #bindsym Left resize shrink width 10 px or 10 ppt + #bindsym Down resize grow height 10 px or 10 ppt + #bindsym Up resize shrink height 10 px or 10 ppt + #bindsym Right resize grow width 10 px or 10 ppt + + # back to normal: Enter or Escape + bindsym Return mode "default" + bindsym Escape mode "default" +} + +bindsym $mod+t mode "moveworkspace" + +mode "goremote" { + bindsym g exec "remmina -c ~/.local/share/remmina/1523485448993.remmina"; mode "default" + bindsym t exec "run_terminal -x ssh -p 2222 barak@rack.0b100.net"; mode "default" + bindsym p exec "run_terminal -x ssh -p 2222 barak@barakmich.com"; mode "default" + bindsym Return mode "default" + bindsym Escape mode "default" +} + +bindsym $mod+Shift+Control+r mode "goremote" + + +# Media controls +bindsym $win+Shift+k exec "playerctl play-pause" +bindsym $win+Shift+h exec "playerctl previous" +bindsym $win+Shift+l exec "playerctl next" +# Spotify doesn't understand volume controls? +#bindsym $win+Shift+j exec "playerctl volume 0.1-" +#bindsym $win+Shift+k exec "playerctl volume 0.1+" + +# Start i3bar to display a workspace bar (plus the system information i3status +# finds out, if available) +#bar { +## status_command i3status + #status_command i3-wrapper + #position top + #tray_output primary +#} +#exec --no-startup-id xfce4-panel --disable-wm-check +#exec polybar HDMI1 +#exec --no-startup-id nitrogen --restore +#exec --no-startup-id picom -b --config ~/.compton.conf diff --git a/dot_i3/i3-barak-tool.py b/dot_i3/i3-barak-tool.py new file mode 100755 index 0000000..97e9c6e --- /dev/null +++ b/dot_i3/i3-barak-tool.py @@ -0,0 +1,151 @@ +#!/usr/bin/env python3 + +import json +import subprocess +import socket +import struct +import sys + + +_struct_header = '=6sII' + +RUN_COMMAND = 0 +GET_WORKSPACES = 1 +SUBSCRIBE = 4 +GET_OUTPUTS=3 +GET_TREE = 4 + + +def get_i3_socketpath(): + socketpath = subprocess.check_output(["i3", "--get-socketpath"]) + return socketpath.decode().rstrip() + + +def format_i3_command(kind: int, cmd: str): + b = cmd.encode() + return b"i3-ipc" + struct.pack("=II", len(b), kind) + b + + +def _ipc_recv(sock): + data = sock.recv(14) + + if len(data) == 0: + raise EOFError('got EOF from ipc socket') + + _, msg_length, msg_type = _unpack_header(data) + msg_size = 6 + msg_length + while len(data) < msg_size: + data += sock.recv(msg_length) + payload = _unpack(data) + return payload, msg_type + + +def _unpack(data): + _, msg_length, _ = _unpack_header(data) + size = struct.calcsize(_struct_header) + msg_size = size + msg_length + payload = data[size:msg_size] + return payload.decode('utf-8', 'replace') + + +def _unpack_header(data: bytes): + return struct.unpack(_struct_header, data[:struct.calcsize(_struct_header)]) + + +def open_i3_socket(): + client = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) + client.connect(get_i3_socketpath()) + return client + + +def send_command(client, kind, data): + client.sendall(format_i3_command(kind, data)) + result, _ = _ipc_recv(client) + return json.loads(result) + + +class TreeNode: + def __init__(self, json): + self.id = None + self.rect = None + self.focused = False + self.name = "" + for k, v in json.items(): + if k != "nodes": + self.__setattr__(k, v) + self.parent = None + self.nodes = list(map(TreeNode, json["nodes"])) + for n in self.nodes: + n.parent = self + + def find(self, where=None): + if where is None: + where = lambda _: True + if where(self): + yield self + for n in self.nodes: + yield from n.find(where) + + def __repr__(self) -> str: + return "TreeNode(%d, %s, focused=%s, rect=%s)" % (self.id, self.name, self.focused, str(self.rect)) + + def find_parent(self, where=None): + if self.parent is None: + return None + if where is None or where(self.parent): + return self.parent + return self.parent.find_parent(where) + + def leaves(self): + if len(self.nodes) == 0: + yield self + else: + for n in self.nodes: + yield from n.leaves() + + +def find_biggest_window(tree: TreeNode): + max_leaf = None + max_area = 0 + max_x = -1 + for leaf in tree.leaves(): + rect = leaf.rect + area = rect["width"] * rect["height"] + if area > max_area or (area == max_area and max_x > rect["x"]): + max_area = area + max_leaf = leaf + max_x = rect["x"] + + return max_leaf + + +def current_workspace(tree): + focused = list(tree.find(where=lambda n: n.focused is True)) + if len(focused) == 0: + print("not found") + sys.exit(1) + focused = focused[0] + ws = focused.find_parent(lambda n: n.type == "workspace") + return ws + + +def promote(client): + json = send_command(client, GET_TREE, "") + tree = TreeNode(json) + ws = current_workspace(tree) + master = find_biggest_window(ws) + send_command(client, RUN_COMMAND, "swap container with con_id %s" % master.id) + + +def main(): + if len(sys.argv) < 2: + print("needs an argument") + return + command = sys.argv[1] + client = open_i3_socket() + if command == "promote": + promote(client) + client.close() + +if __name__ == "__main__": + main() diff --git a/dot_i3/i3-focus-next b/dot_i3/i3-focus-next new file mode 100755 index 0000000..ecc3630 --- /dev/null +++ b/dot_i3/i3-focus-next @@ -0,0 +1,196 @@ +#!/usr/bin/env perl +# +# needs package perl-json +# + +use IO::Socket::UNIX; +use JSON; +use Encode; +use Getopt::Long; + +use constant MAGIC_STRING => 'i3-ipc'; + +use constant TYPE_COMMAND => 0; +use constant TYPE_GET_WORKSPACES => 1; +use constant TYPE_GET_TREE => 4; + +# +# ipc functions +# +sub message { + my ($type, $content) = @_; + my $payload = ''; + + if ($content) { + $payload = encode_utf8($content); + } + + return(MAGIC_STRING . pack('LL', length($payload), $type) . $payload); +} + +sub ipc_request { + my ($sock, $type, $content) = @_; + + # send request + $sock->write(message($type, $content)); + + # read response header + my $header = ''; + $sock->read($header, length(MAGIC_STRING) + 4 + 4); + + # get payload length + my ($len, $type) = unpack('LL', substr($header, length(MAGIC_STRING))); + + # read payload + my $payload = ''; + $sock->read($payload, $len); + + # return decoded json + return decode_json $payload; +} + +# +# tree functions +# +sub get_node_by_name { + my ($ref, $name) = @_; + + # search for a direct child node by name + foreach my $node (@{${${ref}}{'nodes'}}) { + if (${${node}}{'name'} eq $name) { + return $node; + } + } +} + +sub pop_window_array { + my ($ref, $arr) = @_; + my @node_types = qw(nodes floating_nodes); + + # iterate through all child nodes + foreach my $node_type (@node_types) { + foreach my $node (@{${${ref}}{$node_type}}) { + # if child node is not a window + if (${${node}}{'window'} eq undef) { + # go one level down + pop_window_array($node, \@{$arr}); + } else { + # add window id to array + push(@{$arr}, ${${node}}{'id'}); + } + } + } +} + +sub get_focused_node { + my $ref = shift; + my $ret = ''; + my @node_types = qw(nodes floating_nodes); + + # iterate through all child nodes + foreach my $node_type (@node_types) { + foreach my $node (@{${${ref}}{$node_type}}) { + # if child node is not a window + if (${${node}}{'window'} eq undef) { + # go one level down + $ret = get_focused_node($node); + if ($ret != '') { + return $ret; + } + } else { + # return focused window id + if (${${node}}{'focused'}) { + return ${${node}}{'id'}; + } + } + } + } + return ''; +} + +# +# main +# + +my $reverse; +GetOptions("reverse" => \$reverse); + +# get socket path +chomp(my $path = qx(i3 --get-socketpath)); + +# open connection +my $sock = IO::Socket::UNIX->new(Peer => $path); + +# get current workspaces +my $response = ''; +$response = ipc_request($sock, TYPE_GET_WORKSPACES); + +# get focused output and workspace +my $i3output = ''; +my $i3workspace = ''; +foreach my $node (@{$response}) { + if (${$node}{'focused'}) { + $i3output = ${$node}{output}; + $i3workspace = ${$node}{num}; + } +} + +# get layout tree +my $response = ''; +$response = ipc_request($sock, TYPE_GET_TREE); + +my @windows, $focused, $prev, $next; +if (${$response}{'name'} eq 'root') { + my $output = get_node_by_name($response, $i3output); + my $content = get_node_by_name($output, 'content'); + my $workspace = get_node_by_name($content, $i3workspace); + + # populate window array + pop_window_array($workspace, \@windows); + + # get focused window + $focused = get_focused_node($workspace); + + # find window key for focused window + my $focused_key; + while (my ($key, $val) = each @windows) { + if ($val eq $focused) { + + # get previous window + if ($key == 0) { + $prev = $windows[$#windows]; + } else { + $prev = $windows[$key-1]; + } + + # get next window + if ($key == $#windows) { + $next = $windows[0]; + } else { + $next = $windows[$key+1]; + } + } + } + +} + +#print $prev . "\n" . $focused . "\n" . $next . "\n"; + +my $response = ''; +if ($reverse) { + # set focus to previous window + $response = ipc_request($sock, TYPE_COMMAND, '[con_id="' . $prev . '"] focus'); +} else { + # set focus to next window + $response = ipc_request($sock, TYPE_COMMAND, '[con_id="' . $next . '"] focus'); +} + +close($sock); + +# exit with ipc command status +if (${$response}[0]{'success'}) { + exit(0); +} else { + exit(1); +} + diff --git a/dot_i3status.conf b/dot_i3status.conf new file mode 100644 index 0000000..63ab518 --- /dev/null +++ b/dot_i3status.conf @@ -0,0 +1,60 @@ +# i3status configuration file. +# see "man i3status" for documentation. + +# It is important that this file is edited as UTF-8. +# The following line should contain a sharp s: +# ß +# If the above line is not correctly displayed, fix your editor first! + +general { + colors = true + interval = 5 +} + +order += "wireless wlan0" +order += "ethernet eth0" +order += "battery 0" +order += "cpu_usage" +order += "load" +order += "tztime local" + +wireless wlan0 { + format_up = "W: (%quality at %essid) %ip" + format_down = "W: down" +} + +ethernet eth0 { + # if you use %speed, i3status requires root privileges + format_up = "E: %ip (%speed)" + format_down = "E: down" +} + +battery 0 { + format = "%status %remaining" + #last_full_capacity = true + #integer_battery_capacity = true +} + +run_watch DHCP { + pidfile = "/var/run/dhclient*.pid" +} + +run_watch VPN { + pidfile = "/var/run/vpnc/pid" +} + +tztime local { + format = "%Y-%m-%d %H:%M:%S" +} + +load { + format = "L: %1min %5min" +} + +cpu_usage { + format = "CPU: %usage" +} + +disk "/" { + format = "%avail" +} diff --git a/dot_latex/basehtml.cfg b/dot_latex/basehtml.cfg new file mode 100644 index 0000000..34e0fe2 --- /dev/null +++ b/dot_latex/basehtml.cfg @@ -0,0 +1,10 @@ +\Preamble{html} +\begin{document} +\Css {body { + margin-top: 50px; + margin-left: auto; + margin-right: auto; + width: 1000px; + } + } +\EndPreamble diff --git a/dot_local/share/applications/com.spotify.Client.desktop b/dot_local/share/applications/com.spotify.Client.desktop new file mode 100755 index 0000000..1240b5d --- /dev/null +++ b/dot_local/share/applications/com.spotify.Client.desktop @@ -0,0 +1,15 @@ +[Desktop Entry] +Type=Application +Name=Spotify +GenericName=Online music streaming service +Comment=Access all of your favorite music +Icon=com.spotify.Client +Exec=/usr/bin/flatpak run --branch=stable --arch=x86_64 --command=spotify --file-forwarding com.spotify.Client --force-device-scale-factor=1.5 @@u %U @@ +Terminal=false +MimeType=x-scheme-handler/spotify; +Categories=Audio;Music;AudioVideo; +Keywords=Music;Player;Streaming;Online; +StartupWMClass=Spotify +X-GNOME-UsesNotifications=true +X-Flatpak-Tags=proprietary; +X-Flatpak=com.spotify.Client diff --git a/dot_local/share/fonts b/dot_local/share/fonts new file mode 120000 index 0000000..fe8ce3a --- /dev/null +++ b/dot_local/share/fonts @@ -0,0 +1 @@ +/home/barak/.fonts \ No newline at end of file diff --git a/dot_local/share/rofi/themes/rounded-blue-dark.rasi b/dot_local/share/rofi/themes/rounded-blue-dark.rasi new file mode 100644 index 0000000..712d714 --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-blue-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #1A73E8F2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/rounded-common.rasi b/dot_local/share/rofi/themes/rounded-common.rasi new file mode 100644 index 0000000..5072337 --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-common.rasi @@ -0,0 +1,94 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + font: "Roboto 12"; + + background-color: transparent; + text-color: @fg0; + + margin: 0px; + padding: 0px; + spacing: 0px; +} + +window { + location: center; + width: 480; + y-offset: -200; + border-radius: 24px; + + background-color: @bg0; +} + +mainbox { + padding: 12px; +} + +inputbar { + background-color: @bg1; + border-color: @bg3; + + border: 2px; + border-radius: 16px; + + padding: 8px 16px; + spacing: 8px; + children: [ prompt, entry ]; +} + +prompt { + text-color: @fg2; +} + +entry { + placeholder: "Search"; + placeholder-color: @fg3; +} + +message { + margin: 12px 0 0; + border-radius: 16px; + border-color: @bg2; + background-color: @bg2; +} + +textbox { + padding: 8px 24px; +} + +listview { + background-color: transparent; + + margin: 12px 0 0; + lines: 8; + columns: 1; + + fixed-height: false; +} + +element { + padding: 8px 16px; + spacing: 8px; + border-radius: 16px; +} + +element normal active { + text-color: @bg3; +} + +element selected normal, element selected active { + background-color: @bg3; +} + +element-icon { + size: 1em; + vertical-align: 0.5; +} + +element-text { + text-color: inherit; +} diff --git a/dot_local/share/rofi/themes/rounded-gray-dark.rasi b/dot_local/share/rofi/themes/rounded-gray-dark.rasi new file mode 100644 index 0000000..943280d --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-gray-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #616161F2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/rounded-green-dark.rasi b/dot_local/share/rofi/themes/rounded-green-dark.rasi new file mode 100644 index 0000000..a268f62 --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-green-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #4CAF50F2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/rounded-nord-dark.rasi b/dot_local/share/rofi/themes/rounded-nord-dark.rasi new file mode 100644 index 0000000..ef35389 --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-nord-dark.rasi @@ -0,0 +1,22 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #2E3440F2; + bg1: #3B4252; + bg2: #4C566A80; + bg3: #88C0D0F2; + fg0: #D8DEE9; + fg1: #ECEFF4; + fg2: #D8DEE9; + fg3: #4C566A; +} + +@import "rounded-common.rasi" + +element selected { + text-color: @bg1; +} diff --git a/dot_local/share/rofi/themes/rounded-orange-dark.rasi b/dot_local/share/rofi/themes/rounded-orange-dark.rasi new file mode 100644 index 0000000..da4acea --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-orange-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #F57C00F2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/rounded-pink-dark.rasi b/dot_local/share/rofi/themes/rounded-pink-dark.rasi new file mode 100644 index 0000000..2288dc0 --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-pink-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #EC407AF2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/rounded-purple-dark.rasi b/dot_local/share/rofi/themes/rounded-purple-dark.rasi new file mode 100644 index 0000000..55c651b --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-purple-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #AB47BCF2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/rounded-red-dark.rasi b/dot_local/share/rofi/themes/rounded-red-dark.rasi new file mode 100644 index 0000000..c1d71a6 --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-red-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #E53935F2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/rounded-yellow-dark.rasi b/dot_local/share/rofi/themes/rounded-yellow-dark.rasi new file mode 100644 index 0000000..dbdaeb3 --- /dev/null +++ b/dot_local/share/rofi/themes/rounded-yellow-dark.rasi @@ -0,0 +1,18 @@ +/******************************************************************************* + * ROUNDED THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + bg0: #212121F2; + bg1: #2A2A2A; + bg2: #3D3D3D80; + bg3: #FBC02DF2; + fg0: #E6E6E6; + fg1: #FFFFFF; + fg2: #969696; + fg3: #3D3D3D; +} + +@import "rounded-common.rasi" diff --git a/dot_local/share/rofi/themes/spotlight-dark.rasi b/dot_local/share/rofi/themes/spotlight-dark.rasi new file mode 100644 index 0000000..b61bc21 --- /dev/null +++ b/dot_local/share/rofi/themes/spotlight-dark.rasi @@ -0,0 +1,99 @@ +/******************************************************************************* + * MACOS SPOTLIGHT LIKE DARK THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + font: "Montserrat 18"; + + bg0: #242424E6; + bg1: #7E7E7E80; + bg2: #0860f2E6; + + fg0: #DEDEDE; + fg1: #FFFFFF; + fg2: #DEDEDE80; + + background-color: transparent; + text-color: @fg0; + + margin: 0.1em; + padding: 0; + spacing: 0; +} + +window { + background-color: @bg0; + + location: center; + width: 640; + y-offset: -200; + border-radius: 8; +} + +inputbar { + font: "Montserrat 32"; + padding: 12px; + spacing: 12px; + children: [ icon-search, entry ]; +} + +icon-search { + expand: false; + filename: "search"; + size: 28px; +} + +icon-search, entry, element-icon, element-text { + vertical-align: 0.5; +} + +entry { + font: inherit; + + placeholder : "Search"; + placeholder-color : @fg2; +} + +message { + border: 2px 0 0; + border-color: @bg1; + background-color: @bg1; +} + +textbox { + padding: 8px 24px; +} + +listview { + lines: 10; + columns: 1; + + fixed-height: false; + border: 1px 0 0; + border-color: @bg1; +} + +element { + padding: 8px 16px; + spacing: 16px; + background-color: transparent; +} + +element normal active { + text-color: @bg2; +} + +element selected normal, element selected active { + background-color: @bg2; + text-color: @fg1; +} + +element-icon { + size: 1em; +} + +element-text { + text-color: inherit; +} diff --git a/dot_local/share/rofi/themes/spotlight.rasi b/dot_local/share/rofi/themes/spotlight.rasi new file mode 100644 index 0000000..3f17463 --- /dev/null +++ b/dot_local/share/rofi/themes/spotlight.rasi @@ -0,0 +1,99 @@ +/******************************************************************************* + * MACOS SPOTLIGHT LIKE THEME FOR ROFI + * User : LR-Tech + * Theme Repo : https://github.com/lr-tech/rofi-themes-collection + *******************************************************************************/ + +* { + font: "Montserrat 12"; + + bg0: #F5F5F5BF; + bg1: #7E7E7E80; + bg2: #0860F2E6; + + fg0: #242424; + fg1: #FFFFFF; + fg2: #24242480; + + background-color: transparent; + text-color: @fg0; + + margin: 0; + padding: 0; + spacing: 0; +} + +window { + background-color: @bg0; + + location: center; + width: 640; + y-offset: -200; + border-radius: 8; +} + +inputbar { + font: "Montserrat 20"; + padding: 12px; + spacing: 12px; + children: [ icon-search, entry ]; +} + +icon-search { + expand: false; + filename: "search"; + size: 28px; +} + +icon-search, entry, element-icon, element-text { + vertical-align: 0.5; +} + +entry { + font: inherit; + + placeholder : "Search"; + placeholder-color : @fg2; +} + +message { + border: 2px 0 0; + border-color: @bg1; + background-color: @bg1; +} + +textbox { + padding: 8px 24px; +} + +listview { + lines: 10; + columns: 1; + + fixed-height: false; + border: 1px 0 0; + border-color: @bg1; +} + +element { + padding: 8px 16px; + spacing: 16px; + background-color: transparent; +} + +element normal active { + text-color: @bg2; +} + +element selected normal, element selected active { + background-color: @bg2; + text-color: @fg1; +} + +element-icon { + size: 1em; +} + +element-text { + text-color: inherit; +} diff --git a/dot_mailcap b/dot_mailcap new file mode 100644 index 0000000..3ba639f --- /dev/null +++ b/dot_mailcap @@ -0,0 +1,3 @@ +text/html; w3m -I %{charset} -T text/html -cols 150; copiousoutput; +#text/html; pandoc -f html -t markdown; copiousoutput; + diff --git a/dot_muttrc b/dot_muttrc new file mode 100644 index 0000000..56c3284 --- /dev/null +++ b/dot_muttrc @@ -0,0 +1,133 @@ +set imap_user = "barak@barakmich.com" +#set imap_pass = "secret" +source ~/.mutt/secret + +set smtp_url = "smtp://barak@barakmich.com@smtp.gmail.com:587/" +#set smtp_pass = "secret" +set from = "me@barakmich.com" +set realname = "Barak Michener" + +set folder = "imaps://imap.gmail.com:993" +set spoolfile = "+INBOX" +set postponed = "+[Gmail]/Drafts" +set record="+[Gmail]/Sent Mail" +set copy=no +set trash = "imaps://imap.gmail.com/[Gmail]/Trash" + +# These two lines appear to be needed on some Linux distros, like Arch Linux +set ssl_starttls = yes +set ssl_force_tls = yes + +#set imap_force_ssl = yes + +set header_cache=~/.mutt/cache/headers +set message_cachedir=~/.mutt/cache/bodies +set certificate_file=~/.mutt/certificates +set signature=~/.sig + +bind editor <space> noop +bind index,pager g noop +bind index,pager c mail #Compose +macro index,pager e "<save-message>=[Gmail]/All Mail<enter>" "Archive" +bind generic x tag-entry #Select Conversation +bind index x tag-thread #Select Conversation +bind pager x tag-message #Select Conversation +bind index,pager s flag-message #Star a message +macro index,pager + "<save-message>=[Gmail]/Important<enter>" "Mark as important" +macro index,pager ! "<save-message>=[Gmail]/Spam<enter>" "Report spam" +bind index,pager a group-reply #Reply all +bind pager A view-attachments #In emails +bind index,pager \# delete-thread #Delete +bind index,pager l copy-message #Label +bind index L limit +bind index,pager v save-message #Move to +macro index,pager I "<set-flag>O" "Mark as read" +macro index,pager U "<clear-flag>O" "Mark as unread" +macro index,pager ga "<change-folder>=[Gmail]/All Mail<enter>" "Go to all mail" +macro index,pager gs "<change-folder>=[Gmail]/Starred<enter>" "Go to 'Starred'" +macro index,pager gd "<change-folder>=[Gmail]/Drafts<enter>" "Go to 'Drafts'" +macro index,pager gl "<change-folder>?" "Go to 'Label'" +macro index,pager gi "<change-folder>=INBOX<enter>" "Go to inbox" +macro index,pager gt "<change-folder>=[Gmail]/Sent Mail<enter>" "Go to 'Sent Mail'" +macro pager B "<pipe-entry>'urlview'<enter>" 'Follow links with urlview' +folder-hook +INBOX macro index,pager y "e" "Archive" +folder-hook "+[Gmail]/Trash" macro index,pager y "<save-message>=INBOX<enter><enter>" "Move to inbox" +folder-hook "+[Gmail]/Starred" bind index,pager y flag-message #"Toggle star" +set to_chars = " +>-<L" + +set move = no +set mark_old=no +set imap_keepalive = 900 + +# Better defaults +set wait_key=no +#set timeout=3 +set mail_check=0 +set markers=no +unset move +set delete +unset confirmappend +set quit +unset mark_old +set beep_new + + +set sort = reverse-threads +set sort_aux = last-date-received + +alternative_order text/plain text/enriched text/html +auto_view text/html + +#set alias_file = ~/.mutt/aliases +set alias_file=~/.mutt_alias +set sort_alias = alias +set reverse_alias = yes + +set editor = "vi -c \"set spell spelllang=en_us\"" +set reverse_name = yes + +bind index gg first-entry +bind index G last-entry +#bind index A toggle-read +bind index n mail +bind index _ collapse-all +bind index - collapse-thread + +macro index c "<change-folder>?<toggle-mailboxes>" "open a different folder" +macro pager c "<change-folder>?<toggle-mailboxes>" "open a different folder" +macro index C "<copy-message>?<toggle-mailboxes>" "copy a message to a mailbox" +macro index M "<save-message>?<toggle-mailboxes>" "move a message to a mailbox" +macro index m "<clear-flag>N" "mark as read" +macro compose A "<attach-message>?<toggle-mailboxes>" "attach message(s) to this message" +macro index J "<next-new>" "next unread" +macro index,pager "\Cf" "<next-page>" "page down" +macro index,pager "\Cb" "<previous-page>" "page down" + +color normal white default +color attachment brightyellow black +color hdrdefault cyan black +color indicator black cyan +color markers brightred black +color quoted green black +color signature cyan black +color status brightgreen blue +color tilde blue black +color tree red black +color header brightgreen black ^From: +color header brightcyan black ^To: +color header brightcyan black ^Reply-To: +color header brightcyan black ^Cc: +color header brightblue black ^Subject: +color body brightred black [\-\.+_a-zA-Z0-9]+@[\-\.a-zA-Z0-9]+ +color body brightblue black (https?|ftp)://[\-\.,/%~_:?&=\#a-zA-Z0-9]+ +color index brightcyan default ~N + +color index yellow default "~v~(!~N)~(!~F)" # collapsed thread with no New or Flagged +color index red default "~v~(~F)~(!~N)" # collapsed thread with Flagged but no New +color index green default "~v~(~N)" # collapsed thread with New + +folder-hook . exec collapse-all +## TO show the number of messages in a collapsed thread +## you need to add "%M" to the "index_format", eg: +#set index_format="%4C %Z %2M %[!%y%m%d] %-17.17F (%3l) %s" +set index_format="%4C %Z %2M %{%b %d} %-15.15L (%?l?%4l&%4c?) %s" diff --git a/dot_nethackrc b/dot_nethackrc new file mode 100644 index 0000000..f352d95 --- /dev/null +++ b/dot_nethackrc @@ -0,0 +1,29 @@ +# +# System-wide NetHack configuration file for console-only NetHack. +# +OPTIONS=windowtype:tty,toptenwin,hilite_pet,!number_pad,!cmdassist +OPTIONS=fixinv,safe_pet,sortpack,tombstone,color +OPTIONS=verbose,news,fruit:potato +OPTIONS=dogname:Darty +OPTIONS=catname:Tiger +OPTIONS=pickup_types:$ +OPTIONS=nomail + +# Enable this if you want to see your inventory sorted in alphabetical +# order by item instead of by index letter: +# OPTIONS=sortloot:full +# or if you just want containers sorted: +# OPTIONS=sortloot:loot + +# +# Some sane defaults for menucolor +# + +OPTIONS=menucolors +MENUCOLOR=" blessed "=green +MENUCOLOR=" holy "=green +MENUCOLOR=" uncursed "=yellow +MENUCOLOR=" cursed "=red +MENUCOLOR=" unholy "=red +MENUCOLOR=" cursed .* (being worn)"=orange&underline + diff --git a/dot_npmrc b/dot_npmrc new file mode 100644 index 0000000..1e2fdb1 --- /dev/null +++ b/dot_npmrc @@ -0,0 +1,2 @@ +root = /home/barakmich/.node_libraries +binroot = /home/barakmich/.node_libraries/bin diff --git a/dot_nvim b/dot_nvim new file mode 120000 index 0000000..8355b52 --- /dev/null +++ b/dot_nvim @@ -0,0 +1 @@ +.vim \ No newline at end of file diff --git a/dot_nvimrc b/dot_nvimrc new file mode 120000 index 0000000..1490f7a --- /dev/null +++ b/dot_nvimrc @@ -0,0 +1 @@ +.vimrc \ No newline at end of file diff --git a/dot_puppet/console.pp b/dot_puppet/console.pp new file mode 100644 index 0000000..9a309e9 --- /dev/null +++ b/dot_puppet/console.pp @@ -0,0 +1,6 @@ +$enhancers = [ "tmux", "zsh", "strace", "sudo" ] + +package { + $enhancers: + ensure => "installed" +} diff --git a/dot_puppet/cpp.pp b/dot_puppet/cpp.pp new file mode 100644 index 0000000..46ebd3b --- /dev/null +++ b/dot_puppet/cpp.pp @@ -0,0 +1,16 @@ +case $operatingsystem { + centos, redhat: {$build_essential = ["make", "automake", "gcc", "gcc-c++", "kernel-devel"]} + debian, ubuntu: {$build_essential = ["build-essential"]} + default: {fail("Don't know how to make build-essential for $operatingsystem")} +} + +package { + $build_essential: + ensure => "installed" +} + +$other_makes = ["cmake"] +package { + $other_makes: + ensure => "installed" +} diff --git a/dot_puppet/editor.pp b/dot_puppet/editor.pp new file mode 100644 index 0000000..503fec2 --- /dev/null +++ b/dot_puppet/editor.pp @@ -0,0 +1,6 @@ +$packages = [ "vim-gnome", "ctags", "ttf-inconsolata"] + +package { + $packages: + ensure => "installed" +} diff --git a/dot_puppet/go.pp b/dot_puppet/go.pp new file mode 100644 index 0000000..0822d0a --- /dev/null +++ b/dot_puppet/go.pp @@ -0,0 +1,22 @@ +package { + "golang": + ensure => "installed" +} + +exec { + "get_gocode": + command => "go get -u github.com/nsf/gocode", + path => "/usr/bin", +} + +exec { + "get_gocov": + command => "go get -u github.com/axw/gocov/gocov", + path => "/usr/bin", +} + +exec { + "get_gotags": + command => "go get -u github.com/jstemmer/gotags", + path => "/usr/bin", +} diff --git a/dot_puppet/install-dev.pp b/dot_puppet/install-dev.pp new file mode 100644 index 0000000..26ae682 --- /dev/null +++ b/dot_puppet/install-dev.pp @@ -0,0 +1,3 @@ +import "cpp.pp" +import "go.pp" +import "python.pp" diff --git a/dot_puppet/install-linux.pp b/dot_puppet/install-linux.pp new file mode 100644 index 0000000..8a8d930 --- /dev/null +++ b/dot_puppet/install-linux.pp @@ -0,0 +1,3 @@ +import "console.pp" +import "editor.pp" +import "x11.pp" diff --git a/dot_puppet/python.pp b/dot_puppet/python.pp new file mode 100644 index 0000000..873f9e1 --- /dev/null +++ b/dot_puppet/python.pp @@ -0,0 +1,15 @@ +$packages = [ "python-pip"] + +package { + $packages: + ensure => "installed" +} + +$pip_packages = ["flake8", "jedi", "tornado"] + +package { + $pip_packages : + ensure => "installed", + provider => "pip", + +} diff --git a/dot_puppet/x11.pp b/dot_puppet/x11.pp new file mode 100644 index 0000000..dd99ca2 --- /dev/null +++ b/dot_puppet/x11.pp @@ -0,0 +1,6 @@ +$x11_packages = [ "awesome", "awesome-extra", "feh", "synapse", "thunar", "terminator"] + +package { + $x11_packages: + ensure => "installed" +} diff --git a/dot_pylintrc b/dot_pylintrc new file mode 100644 index 0000000..162c0cb --- /dev/null +++ b/dot_pylintrc @@ -0,0 +1,390 @@ +[MASTER] + +# Specify a configuration file. +#rcfile= + +# Python code to execute, usually for sys.path manipulation such as +# pygtk.require(). +#init-hook= + +# Profiled execution. +profile=no + +# Add files or directories to the blacklist. They should be base names, not +# paths. +ignore=CVS,.git + +# Pickle collected data for later comparisons. +persistent=yes + +# List of plugins (as comma separated values of python modules names) to load, +# usually to register additional checkers. +load-plugins= + +# Deprecated. It was used to include message's id in output. Use --msg-template +# instead. +include-ids=no + +# Deprecated. It was used to include symbolic ids of messages in output. Use +# --msg-template instead. +symbols=no + +# Use multiple processes to speed up Pylint. +jobs=1 + +# Allow loading of arbitrary C extensions. Extensions are imported into the +# active Python interpreter and may run arbitrary code. +unsafe-load-any-extension=no + +# A comma-separated list of package or module names from where C extensions may +# be loaded. Extensions are loading into the active Python interpreter and may +# run arbitrary code +extension-pkg-whitelist= + +# Allow optimization of some AST trees. This will activate a peephole AST +# optimizer, which will apply various small optimizations. For instance, it can +# be used to obtain the result of joining multiple strings with the addition +# operator. Joining a lot of strings can lead to a maximum recursion error in +# Pylint and this flag can prevent that. It has one side effect, the resulting +# AST will be different than the one from reality. +optimize-ast=no + + +[MESSAGES CONTROL] + +# Only show warnings with the listed confidence levels. Leave empty to show +# all. Valid levels: HIGH, INFERENCE, INFERENCE_FAILURE, UNDEFINED +confidence= + +# Enable the message, report, category or checker with the given id(s). You can +# either give multiple identifier separated by comma (,) or put this option +# multiple time. See also the "--disable" option for examples. +#enable= + +# Disable the message, report, category or checker with the given id(s). You +# can either give multiple identifiers separated by comma (,) or put this +# option multiple times (only on the command line, not in the configuration +# file where it should appear only once).You can also use "--disable=all" to +# disable everything first and then reenable specific checks. For example, if +# you want to run only the similarities checker, you can use "--disable=all +# --enable=similarities". If you want to run only the classes checker, but have +# no Warning level messages displayed, use"--disable=all --enable=classes +# --disable=W" +disable=E1608,W1627,E1601,E1603,E1602,E1605,E1604,E1607,E1606,W1621,W1620,W1623,W1622,W1625,W1624,W1609,W1608,W1607,W1606,W1605,W1604,W1603,W1602,W1601,W1639,W1640,I0021,W1638,I0020,W1618,W1619,W1630,W1626,W1637,W1634,W1635,W1610,W1611,W1612,W1613,W1614,W1615,W1616,W1617,W1632,W1633,W0704,W1628,W1629,W1636 + + +[REPORTS] + +# Set the output format. Available formats are text, parseable, colorized, msvs +# (visual studio) and html. You can also give a reporter class, eg +# mypackage.mymodule.MyReporterClass. +output-format=text + +# Put messages in a separate file for each module / package specified on the +# command line instead of printing them on stdout. Reports (if any) will be +# written in a file name "pylint_global.[txt|html]". +files-output=no + +# Tells whether to display a full report or only the messages +reports=yes + +# Python expression which should return a note less than 10 (10 is the highest +# note). You have access to the variables errors warning, statement which +# respectively contain the number of errors / warnings messages and the total +# number of statements analyzed. This is used by the global evaluation report +# (RP0004). +evaluation=10.0 - ((float(5 * error + warning + refactor + convention) / statement) * 10) + +# Add a comment according to your evaluation note. This is used by the global +# evaluation report (RP0004). +comment=no + +# Template used to display messages. This is a python new-style format string +# used to format the message information. See doc for all details +#msg-template= + + +[BASIC] + +# Required attributes for module, separated by a comma +required-attributes= + +# List of builtins function names that should not be used, separated by a comma +bad-functions=map,filter,input + +# Good variable names which should always be accepted, separated by a comma +good-names=i,j,k,ex,Run,_,x,y,z + +# Bad variable names which should always be refused, separated by a comma +bad-names=foo,bar,baz,toto,tutu,tata,quux + +# Colon-delimited sets of names that determine each other's naming style when +# the name regexes allow several styles. +name-group= + +# Include a hint for the correct naming format with invalid-name +include-naming-hint=no + +# Regular expression matching correct function names +function-rgx=[a-zA-Z_][a-zA-Z0-9_]{2,30}$ + +# Naming hint for function names +function-name-hint=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression matching correct variable names +variable-rgx=[a-z_][a-z0-9_]{1,30}$ + +# Naming hint for variable names +variable-name-hint=[a-z_][a-z0-9_]{1,30}$ + +# Regular expression matching correct constant names +const-rgx=(([A-Z_][A-Z0-9_]*)|(__.*__))$ + +# Naming hint for constant names +const-name-hint=(([A-Z_][A-Z0-9_]*)|(__.*__))$ + +# Regular expression matching correct attribute names +attr-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Naming hint for attribute names +attr-name-hint=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression matching correct argument names +argument-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Naming hint for argument names +argument-name-hint=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression matching correct class attribute names +class-attribute-rgx=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$ + +# Naming hint for class attribute names +class-attribute-name-hint=([A-Za-z_][A-Za-z0-9_]{2,30}|(__.*__))$ + +# Regular expression matching correct inline iteration names +inlinevar-rgx=[A-Za-z_][A-Za-z0-9_]*$ + +# Naming hint for inline iteration names +inlinevar-name-hint=[A-Za-z_][A-Za-z0-9_]*$ + +# Regular expression matching correct class names +class-rgx=[A-Z_][a-zA-Z0-9]+$ + +# Naming hint for class names +class-name-hint=[A-Z_][a-zA-Z0-9]+$ + +# Regular expression matching correct module names +module-rgx=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ + +# Naming hint for module names +module-name-hint=(([a-z_][a-z0-9_]*)|([A-Z][a-zA-Z0-9]+))$ + +# Regular expression matching correct method names +method-rgx=[a-z_][a-z0-9_]{2,30}$ + +# Naming hint for method names +method-name-hint=[a-z_][a-z0-9_]{2,30}$ + +# Regular expression which should only match function or class names that do +# not require a docstring. +no-docstring-rgx=__.*__ + +# Minimum line length for functions/classes that require docstrings, shorter +# ones are exempt. +docstring-min-length=-1 + + +[LOGGING] + +# Logging modules to check that the string format arguments are in logging +# function parameter format +logging-modules=logging + + +[VARIABLES] + +# Tells whether we should check for unused import in __init__ files. +init-import=no + +# A regular expression matching the name of dummy variables (i.e. expectedly +# not used). +dummy-variables-rgx=_$|dummy + +# List of additional names supposed to be defined in builtins. Remember that +# you should avoid to define new builtins when possible. +additional-builtins= + +# List of strings which can identify a callback function by name. A callback +# name must start or end with one of those strings. +callbacks=cb_,_cb + + +[SIMILARITIES] + +# Minimum lines number of a similarity. +min-similarity-lines=4 + +# Ignore comments when computing similarities. +ignore-comments=yes + +# Ignore docstrings when computing similarities. +ignore-docstrings=yes + +# Ignore imports when computing similarities. +ignore-imports=no + + +[TYPECHECK] + +# Tells whether missing members accessed in mixin class should be ignored. A +# mixin class is detected if its name ends with "mixin" (case insensitive). +ignore-mixin-members=yes + +# List of module names for which member attributes should not be checked +# (useful for modules/projects where namespaces are manipulated during runtime +# and thus existing member attributes cannot be deduced by static analysis +ignored-modules= + +# List of classes names for which member attributes should not be checked +# (useful for classes with attributes dynamically set). +ignored-classes=SQLObject + +# When zope mode is activated, add a predefined set of Zope acquired attributes +# to generated-members. +zope=no + +# List of members which are set dynamically and missed by pylint inference +# system, and so shouldn't trigger E0201 when accessed. Python regular +# expressions are accepted. +generated-members=REQUEST,acl_users,aq_parent + + +[MISCELLANEOUS] + +# List of note tags to take in consideration, separated by a comma. +notes=FIXME,XXX,TODO + + +[SPELLING] + +# Spelling dictionary name. Available dictionaries: none. To make it working +# install python-enchant package. +spelling-dict= + +# List of comma separated words that should not be checked. +spelling-ignore-words= + +# A path to a file that contains private dictionary; one word per line. +spelling-private-dict-file= + +# Tells whether to store unknown words to indicated private dictionary in +# --spelling-private-dict-file option instead of raising a message. +spelling-store-unknown-words=no + + +[FORMAT] + +# Maximum number of characters on a single line. +max-line-length=100 + +# Regexp for a line that is allowed to be longer than the limit. +ignore-long-lines=^\s*(# )?<?https?://\S+>?$ + +# Allow the body of an if to be on the same line as the test if there is no +# else. +single-line-if-stmt=no + +# List of optional constructs for which whitespace checking is disabled +no-space-check=trailing-comma,dict-separator + +# Maximum number of lines in a module +max-module-lines=1000 + +# String used as indentation unit. This is usually " " (4 spaces) or "\t" (1 +# tab). +indent-string=' ' + +# Number of spaces of indent required inside a hanging or continued line. +indent-after-paren=4 + +# Expected format of line ending, e.g. empty (any line ending), LF or CRLF. +expected-line-ending-format= + + +[IMPORTS] + +# Deprecated modules which should not be used, separated by a comma +deprecated-modules=regsub,TERMIOS,Bastion,rexec + +# Create a graph of every (i.e. internal and external) dependencies in the +# given file (report RP0402 must not be disabled) +import-graph= + +# Create a graph of external dependencies in the given file (report RP0402 must +# not be disabled) +ext-import-graph= + +# Create a graph of internal dependencies in the given file (report RP0402 must +# not be disabled) +int-import-graph= + + +[DESIGN] + +# Maximum number of arguments for function / method +max-args=5 + +# Argument names that match this expression will be ignored. Default to name +# with leading underscore +ignored-argument-names=_.* + +# Maximum number of locals for function / method body +max-locals=15 + +# Maximum number of return / yield for function / method body +max-returns=6 + +# Maximum number of branch for function / method body +max-branches=12 + +# Maximum number of statements in function / method body +max-statements=50 + +# Maximum number of parents for a class (see R0901). +max-parents=7 + +# Maximum number of attributes for a class (see R0902). +max-attributes=7 + +# Minimum number of public methods for a class (see R0903). +min-public-methods=0 + +# Maximum number of public methods for a class (see R0904). +max-public-methods=20 + + +[CLASSES] + +# List of interface methods to ignore, separated by a comma. This is used for +# instance to not check methods defines in Zope's Interface base class. +ignore-iface-methods=isImplementedBy,deferred,extends,names,namesAndDescriptions,queryDescriptionFor,getBases,getDescriptionFor,getDoc,getName,getTaggedValue,getTaggedValueTags,isEqualOrExtendedBy,setTaggedValue,isImplementedByInstancesOf,adaptWith,is_implemented_by + +# List of method names used to declare (i.e. assign) instance attributes. +defining-attr-methods=__init__,__new__,setUp + +# List of valid names for the first argument in a class method. +valid-classmethod-first-arg=cls + +# List of valid names for the first argument in a metaclass class method. +valid-metaclass-classmethod-first-arg=mcs + +# List of member names, which should be excluded from the protected access +# warning. +exclude-protected=_asdict,_fields,_replace,_source,_make + + +[EXCEPTIONS] + +# Exceptions that will emit a warning when being caught. Defaults to +# "Exception" +overgeneral-exceptions=Exception diff --git a/dot_screenrc b/dot_screenrc new file mode 100644 index 0000000..68b2ceb --- /dev/null +++ b/dot_screenrc @@ -0,0 +1,166 @@ +# $Id: screenrc,v 1.3 1998-06-15 20:06:42-07 mconst Exp mconst $ + +# make bells in other windows audible +bell "Bell in window %^G" + +# get rid of some useless stuff in /usr/local/etc/screenrc +bind P +bind R + +# add an easy key to renumber the current window +bind \# colon "number " + +# unbind the keys for "kill all windows" +bind \\ echo "You cannot hope to slay so many windows at once!" +register \\ ^A\ +bind ^\ process \\ + +# make h consistent with ^H as "move to previous window"; use C for hardcopy +bind h prev +bind C hardcopy + +# make ^N and ^P next and prev for laziness +bind ^N next +bind ^P prev + +# make "kill this window" a bit harder to hit +bind k echo "Your weak spell bounces harmlessly off the window." +bind K kill + +# unbind "toggle wrap mode" and flow control, which I tend to hit by mistake +bind r echo "Despite your effort, the wrap mode remains unchanged." +bind f echo "Despite your effort, the flow control remains unchanged." +register r ^Ar +register f ^Af +bind ^R process r +bind ^F process f + +# make split more convenient: it now brings up the previous window +# instead of a blank one, and it leaves the cursor in the new region +register S "^A:split^M^A^I^A^A" +bind S process S + +# bind generic function keys to switch windows +bindkey -k k0 select 0 +bindkey -k k1 select 1 +bindkey -k k2 select 2 +bindkey -k k3 select 3 +bindkey -k k4 select 4 +bindkey -k k5 select 5 +bindkey -k k6 select 6 +bindkey -k k7 select 7 +bindkey -k k8 select 8 +bindkey -k k9 select 9 +#bindkey -k k; select 0 + +bindkey "\033[[A" select 1 +bindkey "\033[[B" select 2 +bindkey "\033[[C" select 3 +bindkey "\033[[D" select 4 +bindkey "\033[[E" select 5 + +bindkey "\033[11~" select 1 +bindkey "\033[12~" select 2 +bindkey "\033[13~" select 3 +bindkey "\033[14~" select 4 +bindkey "\033[15~" select 5 +bindkey "\033[17~" select 6 +bindkey "\033[18~" select 7 +bindkey "\033[19~" select 8 +bindkey "\033[20~" select 9 +bindkey "\033[21~" select 0 + +bindkey "\033[11~" select 1 +bindkey "\033[12~" select 2 +bindkey "\033[13~" select 3 +bindkey "\033[14~" select 4 +bindkey "\033[15~" select 5 + +# make keypad_delete send ascii 127. this is wrong: really I ought +# to fix all the termcaps that have kD=\177 instead of kD=\E[3~, but +# this works and I don't care that much. +#bindkey -k kD stuff \177 + +# by default, always let me know when background windows produce text +#defmonitor on + +# don't lock up when one display dies +defnonblock on + +# keep 5000 lines of history in all windows +defscrollback 5000 + +# make ^O the escape character, and make ^Oo a literal ^O +#escape ^Oo + +# use the xterm's title bar to display window titles, but display ordinary +# screen messages on the bottom line, as usual +#hardstatus off +#hardstatus ignore + +# make the timeout for multicharacter key bindings nice and short +maptimeout 100 + +# let messages be displayed for a long time if they're not interrupted +msgwait 15 + +# use interesting messages +nethack on + +# use nifty cool dynamic window title updating +shelltitle "$ |zsh" + +# by default, wait an entire minute before deciding a window is silent +silencewait 60 + +# suppress the default startup message +startup_message off + +# pretend to be a vt100, since no one has heard of terminal type "screen" +#term vt220 +term xterm + +# use an xterm's title bar to display the hardstatus line +#termcapinfo xterm hs:ts=\E]0;:fs=\007:ds=\E]0;\007 + + +#Begin +#terminfo and termcap for nice 256 color terminal +# allow bold colors - necessary for some reason +attrcolor b ".I" +# tell screen how to set colors. AB = background, AF=foreground +termcapinfo xterm "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm" +termcapinfo xterm-color "Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm" +# erase background with current bg color +defbce "on" +#End + + + +# make bells in this window audible +vbell off + +#fix scrollback residue from size changes +altscreen on +setenv SCREENME false + + +# make only the first window show up in the utmp, and report idle time to it +#screen -t "] |login" 0 +#reportidle +#deflogin off +deflogin on + +#Add neato titlebar and windowlist. +hardstatus on +hardstatus alwayslastline +#caption always "%{= C}screen[%n] | %c | %h%=" +#hardstatus string "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H %{..Y} %m/%d %C%a " +#hardstatus string "%{.bW}%-w%{.rW}%n %t%{-}%+w %=%{..G} %H %{..Y} %D %m/%d %C%a " +hardstatus string '%{= kG}[ %{G}%H %{g} %{C}%l%{c}%{G}][%{g}%= %{= kw}%?%-Lw%?%{r}(%{W}%n %t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{C} %m/%d %{W}%c %{g}]' + +windowlist string " screen[%n %t] %h" +aclchg root -wx "#?" +aclchg root +x detach,select,next,prev,windowlist + + diff --git a/dot_setup_new_env.sh b/dot_setup_new_env.sh new file mode 100755 index 0000000..367a4a8 --- /dev/null +++ b/dot_setup_new_env.sh @@ -0,0 +1,13 @@ +#!/usr/bin/env bash + +function main { + mv -f .* $HOME + mv -f bin $HOME + cd $HOME + git submodule update --init --recursive +} + +read -p "This will overwrite files in $HOME. Type 'yes' to confirm: " confirm +if [ "$confirm" == "yes" ]; then + main; +fi diff --git a/dot_spacemacs b/dot_spacemacs new file mode 100644 index 0000000..a9ac93f --- /dev/null +++ b/dot_spacemacs @@ -0,0 +1,432 @@ +;; It must be stored in your home directory. + +(defun dotspacemacs/layers () + "Configuration Layers declaration. +You should not put any user code in this function besides modifying the variable +values." + (setq-default + ;; Base distribution to use. This is a layer contained in the directory + ;; `+distribution'. For now available distributions are `spacemacs-base' + ;; or `spacemacs'. (default 'spacemacs) + dotspacemacs-distribution 'spacemacs + ;; List of additional paths where to look for configuration layers. + ;; Paths must have a trailing slash (i.e. `~/.mycontribs/') + dotspacemacs-configuration-layer-path '() + ;; List of configuration layers to load. If it is the symbol `all' instead + ;; of a list then all discovered layers will be installed. + dotspacemacs-configuration-layers + '( + ;; ---------------------------------------------------------------- + ;; Example of useful layers you may want to use right away. + ;; Uncomment some layer names and press <SPC f e R> (Vim style) or + ;; <M-m f e R> (Emacs style) to install them. + ;; ---------------------------------------------------------------- + (auto-completion :variables + auto-completion-enable-help-tooltip t + auto-completion-enable-snippets-in-popup nil) + ;; better-defaults + idris + emacs-lisp + mu4e + git + go + ;themes-megapack + latex + markdown + (org :variables + org-enable-github-support t) + (shell :variables + shell-default-height 30 + shell-default-position 'bottom + shell-default-term-shell "/bin/zsh") + ;; spell-checking + python + yaml + syntax-checking + (version-control :variables + version-control-diff-tool 'diff-hl + version-control-global-margin t) + ) + ;; List of additional packages that will be installed without being + ;; wrapped in a layer. If you need some configuration for these + ;; packages then consider to create a layer, you can also put the + ;; configuration in `dotspacemacs/config'. + dotspacemacs-additional-packages '( + s + protobuf-mode + systemd + ) + ;; A list of packages and/or extensions that will not be install and loaded. + dotspacemacs-excluded-packages '( + rainbow-delimiters + highlight-parentheses + ) + ;; If non-nil spacemacs will delete any orphan packages, i.e. packages that + ;; are declared in a layer which is not a member of + ;; the list `dotspacemacs-configuration-layers'. (default t) + dotspacemacs-delete-orphan-packages t)) + +(defun dotspacemacs/init () + "Initialization function. +This function is called at the very startup of Spacemacs initialization +before layers configuration. +You should not put any user code in there besides modifying the variable +values." + ;; This setq-default sexp is an exhaustive list of all the supported + ;; spacemacs settings. + (setq-default + ;; One of `vim', `emacs' or `hybrid'. Evil is always enabled but if the + ;; variable is `emacs' then the `holy-mode' is enabled at startup. `hybrid' + ;; uses emacs key bindings for vim's insert mode, but otherwise leaves evil + ;; unchanged. (default 'vim) + dotspacemacs-editing-style 'vim + + ;; If non nil output loading progress in `*Messages*' buffer. (default nil) + dotspacemacs-verbose-loading nil + ;; Specify the startup banner. Default value is `official', it displays + ;; the official spacemacs logo. An integer value is the index of text + ;; banner, `random' chooses a random text banner in `core/banners' + ;; directory. A string value must be a path to an image format supported + ;; by your Emacs build. + ;; If the value is nil then no banner is displayed. (default 'official) + dotspacemacs-startup-banner 'official + ;; List of items to show in the startup buffer. If nil it is disabled. + ;; Possible values are: `recents' `bookmarks' `projects'. + ;; (default '(recents projects)) + dotspacemacs-startup-lists '(recents projects) + ;; List of themes, the first of the list is loaded when spacemacs starts. + ;; Press <SPC> T n to cycle to the next theme in the list (works great + ;; with 2 themes variants, one dark and one light) + ;; dotspacemacs-themes '(spacemacs-dark + ;; spacemacs-light + ;; solarized-light + ;; solarized-dark + ;; leuven + ;; monokai + ;; zenburn) + ;;dotspacemacs-themes '(barak) + ;; If non nil the cursor color matches the state color. + dotspacemacs-colorize-cursor-according-to-state t + ;; Default font. `powerline-scale' allows to quickly tweak the mode-line + ;; size to make separators look not too crappy. + dotspacemacs-default-font '("Droid Sans Mono Dotted" + :size 24 + :weight normal + :width normal + :powerline-scale 1.3) + ;; dotspacemacs-default-font '("Inconsolata" + ;; :size 22 + ;; :weight normal + ;; :width normal + ;; :powerline-scale 1.1) + ;; The leader key + dotspacemacs-leader-key "SPC" + ;; The leader key accessible in `emacs state' and `insert state' + ;; (default "M-m") + dotspacemacs-emacs-leader-key "M-m" + ;; Major mode leader key is a shortcut key which is the equivalent of + ;; pressing `<leader> m`. Set it to `nil` to disable it. (default ",") + dotspacemacs-major-mode-leader-key "," + ;; Major mode leader key accessible in `emacs state' and `insert state'. + ;; (default "C-M-m) + dotspacemacs-major-mode-emacs-leader-key "C-M-m" + ;; The command key used for Evil commands (ex-commands) and + ;; Emacs commands (M-x). + ;; By default the command key is `:' so ex-commands are executed like in Vim + ;; with `:' and Emacs commands are executed with `<leader> :'. + dotspacemacs-command-key ":" + ;; If non nil `Y' is remapped to `y$'. (default t) + dotspacemacs-remap-Y-to-y$ t + ;; Location where to auto-save files. Possible values are `original' to + ;; auto-save the file in-place, `cache' to auto-save the file to another + ;; file stored in the cache directory and `nil' to disable auto-saving. + ;; (default 'cache) + dotspacemacs-auto-save-file-location 'cache + ;; If non nil then `ido' replaces `helm' for some commands. For now only + ;; `find-files' (SPC f f), `find-spacemacs-file' (SPC f e s), and + ;; `find-contrib-file' (SPC f e c) are replaced. (default nil) + dotspacemacs-use-ido nil + ;; If non nil, `helm' will try to miminimize the space it uses. (default nil) + dotspacemacs-helm-resize nil + ;; if non nil, the helm header is hidden when there is only one source. + ;; (default nil) + dotspacemacs-helm-no-header nil + ;; define the position to display `helm', options are `bottom', `top', + ;; `left', or `right'. (default 'bottom) + dotspacemacs-helm-position 'bottom + ;; If non nil the paste micro-state is enabled. When enabled pressing `p` + ;; several times cycle between the kill ring content. (default nil) + dotspacemacs-enable-paste-micro-state nil + ;; Which-key delay in seconds. The which-key buffer is the popup listing + ;; the commands bound to the current keystroke sequence. (default 0.4) + dotspacemacs-which-key-delay 0.4 + ;; Which-key frame position. Possible values are `right', `bottom' and + ;; `right-then-bottom'. right-then-bottom tries to display the frame to the + ;; right; if there is insufficient space it displays it at the bottom. + ;; (default 'bottom) + dotspacemacs-which-key-position 'bottom + ;; If non nil a progress bar is displayed when spacemacs is loading. This + ;; may increase the boot time on some systems and emacs builds, set it to + ;; nil to boost the loading time. (default t) + dotspacemacs-loading-progress-bar t + ;; If non nil the frame is fullscreen when Emacs starts up. (default nil) + ;; (Emacs 24.4+ only) + dotspacemacs-fullscreen-at-startup nil + ;; If non nil `spacemacs/toggle-fullscreen' will not use native fullscreen. + ;; Use to disable fullscreen animations in OSX. (default nil) + dotspacemacs-fullscreen-use-non-native nil + ;; If non nil the frame is maximized when Emacs starts up. + ;; Takes effect only if `dotspacemacs-fullscreen-at-startup' is nil. + ;; (default nil) (Emacs 24.4+ only) + dotspacemacs-maximized-at-startup nil + ;; A value from the range (0..100), in increasing opacity, which describes + ;; the transparency level of a frame when it's active or selected. + ;; Transparency can be toggled through `toggle-transparency'. (default 90) + dotspacemacs-active-transparency 90 + ;; A value from the range (0..100), in increasing opacity, which describes + ;; the transparency level of a frame when it's inactive or deselected. + ;; Transparency can be toggled through `toggle-transparency'. (default 90) + dotspacemacs-inactive-transparency 90 + ;; If non nil unicode symbols are displayed in the mode line. (default t) + dotspacemacs-mode-line-unicode-symbols t + ;; If non nil smooth scrolling (native-scrolling) is enabled. Smooth + ;; scrolling overrides the default behavior of Emacs which recenters the + ;; point when it reaches the top or bottom of the screen. (default t) + dotspacemacs-smooth-scrolling t + ;; If non-nil smartparens-strict-mode will be enabled in programming modes. + ;; (default nil) + dotspacemacs-smartparens-strict-mode nil + ;; Select a scope to highlight delimiters. Possible values are `any', + ;; `current', `all' or `nil'. Default is `all' (highlight any scope and + ;; emphasis the current one). (default 'all) + dotspacemacs-highlight-delimiters 'all + ;; If non nil advises quit functions to keep server open when quitting. + ;; (default nil) + dotspacemacs-persistent-server nil + ;; List of search tool executable names. Spacemacs uses the first installed + ;; tool of the list. Supported tools are `ag', `pt', `ack' and `grep'. + ;; (default '("ag" "pt" "ack" "grep")) + dotspacemacs-search-tools '("ag" "pt" "ack" "grep") + ;; The default package repository used if no explicit repository has been + ;; specified with an installed package. + ;; Not used for now. (default nil) + dotspacemacs-default-package-repository nil + + company-go-show-annotation t + company-minimum-prefix-length 0 + neo-window-position 'right + neo-dont-be-alone t + )) + + +(defun dotspacemacs/user-init () + "Initialization function for user code. +It is called immediately after `dotspacemacs/init'. You are free to put any +user code." +) + +(defun dotspacemacs/user-config () + "Configuration function for user code. + This function is called at the very end of Spacemacs initialization after +layers configuration. You are free to put any user code." + (load-file "~/.emacs.local/barak-theme.el") + (load-theme 'barak t) + (fset 'xterm-color-unfontify-region 'font-lock-default-unfontify-region) + ;(setq dotspacemacs-additional-packages '(barak-theme)) + (defun kill-buffer-and-its-windows (buffer) + "Kill BUFFER and delete its windows. Default is `current-buffer'. +BUFFER may be either a buffer or its name (a string)." + (interactive (list (read-buffer "Kill buffer: " (current-buffer) 'existing))) + (setq buffer (get-buffer buffer)) + (if (buffer-live-p buffer) ; Kill live buffer only. + (let ((wins (get-buffer-window-list buffer nil t))) ; On all frames. + (when (and (buffer-modified-p buffer) + (fboundp '1on1-flash-ding-minibuffer-frame)) + (1on1-flash-ding-minibuffer-frame t)) ; Defined in `oneonone.el'. + (when (kill-buffer buffer) ; Only delete windows if buffer killed. + (dolist (win wins) ; (User might keep buffer if modified.) + (when (window-live-p win) + ;; Ignore error, in particular, + ;; "Attempt to delete the sole visible or iconified frame". + (condition-case nil (delete-window win) (error nil)))))) + (when (interactive-p) + (error "Cannot kill buffer. Not a live buffer: `%s'" buffer)))) + + (defun custom-neotree-enter-hide () + (interactive) + (neotree-enter) + (neotree-hide) + ) + + (defun custom-neotree-peek () + (interactive) + (neotree-enter) + (select-window-0) + ) + + (defun org-my-custom-timestamp () + (interactive) + (evil-open-below 0) + (insert (format-time-string "[%D %H:%M]\n"))) + + (defun md-my-custom-timestamp () + (interactive) + (evil-open-below 0) + (insert (format-time-string "###### [%D %H:%M]\n"))) + + (evil-leader/set-key-for-mode 'markdown-mode "," 'md-my-custom-timestamp) + (evil-leader/set-key-for-mode 'org-mode "," 'org-my-custom-timestamp) + + (defadvice spacemacs//neotree-key-bindings (after add-custom-keybindings activate) + "add keybindings for enter-hide and peek functions" + (define-key evil-motion-state-local-map (kbd "RET") 'custom-neotree-enter-hide) + (define-key evil-motion-state-local-map (kbd "TAB") 'custom-neotree-peek) + ) + + ;; Make evil-mode up/down operate in screen lines instead of logical lines + (define-key evil-motion-state-map "j" 'evil-next-visual-line) + (define-key evil-motion-state-map "k" 'evil-previous-visual-line) + ;; Also in visual mode + (define-key evil-visual-state-map "j" 'evil-next-visual-line) + (define-key evil-visual-state-map "k" 'evil-previous-visual-line) + (define-key evil-normal-state-map "gc" 'kill-buffer-and-window) + (define-key evil-normal-state-map "gn" 'next-buffer) + (define-key evil-normal-state-map "gp" 'previous-buffer) + (define-key evil-normal-state-map "gt" 'neotree-find-project-root) + (define-key evil-normal-state-map "gw" 'evil-search-unbounded-word-forward) + (evil-ex-define-cmd "W[rite]" 'evil-write) + + (setq gofmt-command "goimports") + (setq flycheck-go-golint-executable "golintc.pl") + ; (setq tooltip-delay 0.2) + (setq flycheck-display-error 0.2) + (setq x-gtk-use-system-tooltips nil) + (setq flycheck-display-errors-function 'flycheck-display-error-messages-unless-error-list) + (setq vc-ignore-dir-regexp + (format "\\(%s\\)\\|\\(%s\\)" + vc-ignore-dir-regexp + tramp-file-name-regexp)) + + (setq tramp-ssh-controlmaster-options "-o ControlMaster=auto -o ControlPath='tramp.%%C' -o ControlPersist=no") + + (defun on-after-init () + (unless (display-graphic-p (selected-frame)) + (set-face-background 'default "unspecified-bg" (selected-frame)))) + + (add-hook 'window-setup-hook 'on-after-init) + + ;(set-frame-parameter (selected-frame) 'alpha '(85 85)) + ;(add-to-list 'default-frame-alist '(alpha 85 85)) + + (setq diff-hl-side 'left) + (defun cleanup-org-tables () + (save-excursion + (goto-char (point-min)) + (while (search-forward "-+-" nil t) (replace-match "-|-")) + )) + + (add-hook 'markdown-mode-hook 'orgtbl-mode) + (add-hook 'markdown-mode-hook + (lambda() + (add-hook 'after-save-hook 'cleanup-org-tables nil 'make-it-local))) + (add-hook 'go-mode-hook 'clean-aindent-mode) + + (setq mu4e-maildir "~/.mail/barak" + mu4e-trash-folder "/Trash" + mu4e-refile-folder "/Archive" + mu4e-sent-folder "/Sent" + mu4e-drafts-folder "/Drafts" + mu4e-get-mail-command "mbsync -a" + mu4e-update-interval nil + mu4e-compose-signature-auto-include nil + mu4e-view-show-images nil + mu4e-confirm-quit nil + mu4e-view-show-addresses t) + + (setq mu4e-maildir-shortcuts + '(("/INBOX" . ?i))) + + (setq mu4e-bookmarks + `(("flag:unread AND NOT flag:trashed" "Unread messages" ?u) + ;("date:today..now" "Today's messages" ?t) + ("date:today..now AND NOT flag:trashed AND NOT maildir:/Haskell" "Today's messages" ?t) + ("date:7d..now" "Last 7 days" ?w) + ("mime:image/*" "Messages with images" ?p) + (,(mapconcat 'identity + (mapcar + (lambda (maildir) + (concat "maildir:" (car maildir))) + mu4e-maildir-shortcuts) " OR ") + "All inboxes" ?i))) + +) + +;; ;; Do not write anything past this comment. This is where Emacs will +;; ;; auto-generate custom variable definitions. +;; (custom-set-variables +;; ;; custom-set-variables was added by Custom. +;; ;; If you edit it by hand, you could mess it up, so be careful. +;; ;; Your init file should contain only one such instance. +;; ;; If there is more than one, they won't work right. +;; '(ansi-color-names-vector +;; ["#3F3F3F" "#CC9393" "#7F9F7F" "#F0DFAF" "#8CD0D3" "#DC8CC3" "#93E0E3" "#DCDCCC"]) +;; '(custom-safe-themes +;; (quote +;; ("f3fdd9bfa4344c8264130b9f170938f878073bec453f3ad87577ca204be112fd" default))) +;; '(fci-rule-color "#383838" t) +;; '(vc-annotate-background "#2B2B2B") +;; '(vc-annotate-color-map +;; (quote +;; ((20 . "#BC8383") +;; (40 . "#CC9393") +;; (60 . "#DFAF8F") +;; (80 . "#D0BF8F") +;; (100 . "#E0CF9F") +;; (120 . "#F0DFAF") +;; (140 . "#5F7F5F") +;; (160 . "#7F9F7F") +;; (180 . "#8FB28F") +;; (200 . "#9FC59F") +;; (220 . "#AFD8AF") +;; (240 . "#BFEBBF") +;; (260 . "#93E0E3") +;; (280 . "#6CA0A3") +;; (300 . "#7CB8BB") +;; (320 . "#8CD0D3") +;; (340 . "#94BFF3") +;; (360 . "#DC8CC3")))) +;; '(vc-annotate-very-old-color "#DC8CC3")) +;; (custom-set-faces +;; ;; custom-set-faces was added by Custom. +;; ;; If you edit it by hand, you could mess it up, so be careful. +;; ;; Your init file should contain only one such instance. +;; ;; If there is more than one, they won't work right. +;; '(company-tooltip-common ((t (:inherit company-tooltip :weight bold :underline nil)))) +;; '(company-toolt +;; '(helm-candidate-number ((t (:background "chartreuse" :foreground "black"))))) +(custom-set-variables + ;; custom-set-variables was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + '(evil-want-Y-yank-to-eol t) + '(org-support-shift-select (quote always)) + '(package-selected-packages + (quote + (idris-mode prop-menu winum solarized-theme org-category-capture madhat2r-theme dash-functional fuzzy autothemer powerline spinner org alert log4e gntp markdown-mode hydra parent-mode projectile request go-guru gitignore-mode fringe-helper git-gutter+ git-gutter flycheck pkg-info epl flx magit magit-popup git-commit with-editor smartparens iedit anzu evil goto-chg undo-tree highlight diminish pos-tip go-mode company bind-map bind-key yasnippet packed anaconda-mode pythonic f dash s helm avy helm-core async auto-complete popup package-build yapfify uuidgen py-isort ox-gfm org-projectile org-download mu4e-maildirs-extension mu4e-alert ht live-py-mode link-hint hide-comnt git-link eyebrowse evil-visual-mark-mode evil-unimpaired evil-ediff eshell-z dumb-jump darkokai-theme column-enforce-mode company-auctex auctex-latexmk auctex zonokai-theme zenburn-theme zen-and-art-theme yaml-mode xterm-color ws-butler window-numbering which-key volatile-highlights vi-tilde-fringe use-package underwater-theme ujelly-theme twilight-theme twilight-bright-theme twilight-anti-bright-theme tronesque-theme toxi-theme toc-org tao-theme tangotango-theme tango-plus-theme tango-2-theme systemd sunny-day-theme sublime-themes subatomic256-theme subatomic-theme stekene-theme spacemacs-theme spaceline spacegray-theme soothe-theme soft-stone-theme soft-morning-theme soft-charcoal-theme smyx-theme smooth-scrolling smeargle shell-pop seti-theme reverse-theme restart-emacs railscasts-theme quelpa pyvenv pytest pyenv-mode py-yapf purple-haze-theme protobuf-mode professional-theme popwin planet-theme pip-requirements phoenix-dark-pink-theme phoenix-dark-mono-theme persp-mode pcre2el pastels-on-dark-theme paradox page-break-lines orgit organic-green-theme org-repo-todo org-present org-pomodoro org-plus-contrib org-bullets open-junk-file omtose-phellack-theme oldlace-theme occidental-theme obsidian-theme noctilux-theme niflheim-theme neotree naquadah-theme mustang-theme multi-term move-text monokai-theme monochrome-theme molokai-theme moe-theme mmm-mode minimal-theme material-theme markdown-toc majapahit-theme magit-gitflow macrostep lush-theme lorem-ipsum linum-relative light-soap-theme leuven-theme jbeans-theme jazz-theme ir-black-theme inkpot-theme info+ indent-guide ido-vertical-mode hy-mode hungry-delete htmlize hl-todo highlight-parentheses highlight-numbers highlight-indentation heroku-theme hemisu-theme help-fns+ helm-themes helm-swoop helm-pydoc helm-projectile helm-mode-manager helm-make helm-gitignore helm-flx helm-descbinds helm-company helm-c-yasnippet helm-ag hc-zenburn-theme gruvbox-theme gruber-darker-theme grandshell-theme gotham-theme google-translate golden-ratio go-eldoc gnuplot gitconfig-mode gitattributes-mode git-timemachine git-messenger git-gutter-fringe git-gutter-fringe+ gh-md gandalf-theme flycheck-pos-tip flx-ido flatui-theme flatland-theme firebelly-theme fill-column-indicator farmhouse-theme fancy-battery expand-region exec-path-from-shell evil-visualstar evil-tutor evil-surround evil-search-highlight-persist evil-numbers evil-nerd-commenter evil-mc evil-matchit evil-magit evil-lisp-state evil-indent-plus evil-iedit-state evil-exchange evil-escape evil-args evil-anzu eval-sexp-fu espresso-theme eshell-prompt-extras esh-help elisp-slime-nav dracula-theme django-theme diff-hl define-word darktooth-theme darkmine-theme darkburn-theme dakrone-theme cython-mode cyberpunk-theme company-statistics company-quickhelp company-go company-anaconda colorsarenice-theme color-theme-sanityinc-tomorrow color-theme-sanityinc-solarized clues-theme clean-aindent-mode cherry-blossom-theme busybee-theme buffer-move bubbleberry-theme bracketed-paste birds-of-paradise-plus-theme badwolf-theme auto-yasnippet auto-highlight-symbol auto-compile apropospriate-theme anti-zenburn-theme ample-zen-theme ample-theme alect-themes aggressive-indent afternoon-theme adaptive-wrap ace-window ace-link ace-jump-helm-line ac-ispell))) + '(paradox-github-token t) + '(safe-local-variable-values + (quote + ((eval setenv "GOPATH" "/home/barak/src/roba") + (eval setenv "GOPATH" "/home/barak/src/bb4") + (eval setenv "GOPATH" "/home/barak/src/bbot") + (eval setenv "GOPATH" "/home/barak/src/torus") + (eval setenv "GOPATH" "/home/barak/src/cayley") + (eval setenv "GOPATH" "/home/barak/src/livemd") + (eval setenv "GOPATH" "/home/barak/src/agro"))))) +(custom-set-faces + ;; custom-set-faces was added by Custom. + ;; If you edit it by hand, you could mess it up, so be careful. + ;; Your init file should contain only one such instance. + ;; If there is more than one, they won't work right. + ) diff --git a/dot_taskrc b/dot_taskrc new file mode 100644 index 0000000..72b4780 --- /dev/null +++ b/dot_taskrc @@ -0,0 +1,32 @@ +# [Created by task 2.2.0 5/9/2013 17:01:23] +# Taskwarrior program configuration file. +# For more documentation, see http://taskwarrior.org or try 'man task', 'man task-faq', +# 'man task-tutorial', 'man task-color', 'man task-sync' or 'man taskrc' + +# Here is an example of entries that use the default, override and blank values +# variable=foo -- By specifying a value, this overrides the default +# variable= -- By specifying no value, this means no default +# #variable=foo -- By commenting out the line, or deleting it, this uses the default + +# Use the command 'task show' to see all defaults and overrides + +# Files +data.location=~/.task + +# Color theme (uncomment one to use) +#include /usr/share/doc/task/rc/light-16.theme +#include /usr/share/doc/task/rc/light-256.theme +#include /usr/share/doc/task/rc/dark-16.theme +#include /usr/share/doc/task/rc/dark-256.theme +#include /usr/share/doc/task/rc/dark-red-256.theme +#include /usr/share/doc/task/rc/dark-green-256.theme +#include /usr/share/doc/task/rc/dark-blue-256.theme +#include /usr/share/doc/task/rc/dark-violets-256.theme +#include /usr/share/doc/task/rc/dark-yellow-green.theme +#include /usr/share/doc/task/rc/dark-gray-256.theme + +taskd.server=freecinc.com:53589 +taskd.credentials=FreeCinc\/freecinc_d9da621f\/9b20be7a-db4e-45a3-aa6e-61173f5988e4 +taskd.certificate=~\/.task\/freecinc_d9da621f.cert.pem +taskd.key=~\/.task\/freecinc_d9da621f.key.pem +taskd.ca=~\/.task\/freecinc_d9da621f.ca.pem diff --git a/dot_tz_aliases.sh b/dot_tz_aliases.sh new file mode 100644 index 0000000..dcc68c6 --- /dev/null +++ b/dot_tz_aliases.sh @@ -0,0 +1,3 @@ +alias time_pst='TZ="America/Los_Angeles" date "+%I:%M%p %Z"' +alias time_est='TZ="America/New_York" date "+%I:%M%p %Z"' +alias time_cet='TZ="Europe/Paris" date "+%I:%M%p %Z"' diff --git a/dot_weechat/weechat.conf b/dot_weechat/weechat.conf new file mode 100644 index 0000000..d7156d7 --- /dev/null +++ b/dot_weechat/weechat.conf @@ -0,0 +1,697 @@ +# +# weechat -- weechat.conf +# +# WARNING: It is NOT recommended to edit this file by hand, +# especially if WeeChat is running. +# +# Use /set or similar command to change settings in WeeChat. +# +# For more info, see: https://weechat.org/doc/quickstart +# + +[debug] + +[startup] +command_after_plugins = "" +command_before_plugins = "" +display_logo = on +display_version = on +sys_rlimit = "" + +[look] +align_end_of_lines = message +align_multiline_words = on +bar_more_down = "++" +bar_more_left = "<<" +bar_more_right = ">>" +bar_more_up = "--" +bare_display_exit_on_input = on +bare_display_time_format = "%H:%M" +buffer_auto_renumber = on +buffer_notify_default = all +buffer_position = end +buffer_search_case_sensitive = off +buffer_search_force_default = off +buffer_search_regex = off +buffer_search_where = prefix_message +buffer_time_format = "%H:%M:%S" +buffer_time_same = "" +color_basic_force_bold = off +color_inactive_buffer = on +color_inactive_message = on +color_inactive_prefix = on +color_inactive_prefix_buffer = on +color_inactive_time = off +color_inactive_window = on +color_nick_offline = off +color_pairs_auto_reset = 5 +color_real_white = off +command_chars = "" +command_incomplete = off +confirm_quit = off +confirm_upgrade = off +day_change = on +day_change_message_1date = "-- %a, %d %b %Y --" +day_change_message_2dates = "-- %%a, %%d %%b %%Y (%a, %d %b %Y) --" +eat_newline_glitch = off +emphasized_attributes = "" +highlight = "" +highlight_regex = "" +highlight_tags = "" +hotlist_add_conditions = "${away} || ${buffer.num_displayed} == 0" +hotlist_buffer_separator = ", " +hotlist_count_max = 2 +hotlist_count_min_msg = 2 +hotlist_names_count = 3 +hotlist_names_length = 0 +hotlist_names_level = 12 +hotlist_names_merged_buffers = off +hotlist_prefix = "H: " +hotlist_remove = merged +hotlist_short_names = on +hotlist_sort = group_time_asc +hotlist_suffix = "" +hotlist_unique_numbers = on +input_cursor_scroll = 20 +input_share = none +input_share_overwrite = off +input_undo_max = 32 +item_away_message = on +item_buffer_filter = "*" +item_buffer_zoom = "!" +item_mouse_status = "M" +item_time_format = "%H:%M" +jump_current_to_previous_buffer = on +jump_previous_buffer_when_closing = on +jump_smart_back_to_buffer = on +key_bind_safe = on +key_grab_delay = 800 +mouse = off +mouse_timer_delay = 100 +nick_color_force = "" +nick_color_hash = djb2 +nick_color_hash_salt = "" +nick_color_stop_chars = "_|[" +nick_prefix = "" +nick_suffix = "" +paste_auto_add_newline = on +paste_bracketed = on +paste_bracketed_timer_delay = 10 +paste_max_lines = 1 +prefix_action = " *" +prefix_align = right +prefix_align_max = 0 +prefix_align_min = 0 +prefix_align_more = "+" +prefix_align_more_after = on +prefix_buffer_align = right +prefix_buffer_align_max = 0 +prefix_buffer_align_more = "+" +prefix_buffer_align_more_after = on +prefix_error = "=!=" +prefix_join = "-->" +prefix_network = "--" +prefix_quit = "<--" +prefix_same_nick = "" +prefix_same_nick_middle = "" +prefix_suffix = "|" +quote_nick_prefix = "<" +quote_nick_suffix = ">" +quote_time_format = "%H:%M:%S" +read_marker = line +read_marker_always_show = off +read_marker_string = "- " +save_config_on_exit = on +save_config_with_fsync = off +save_layout_on_exit = none +scroll_amount = 3 +scroll_bottom_after_switch = off +scroll_page_percent = 100 +search_text_not_found_alert = on +separator_horizontal = "-" +separator_vertical = "" +tab_width = 1 +time_format = "%a, %d %b %Y %T" +window_auto_zoom = off +window_separator_horizontal = on +window_separator_vertical = on +window_title = "WeeChat ${info:version}" +word_chars_highlight = "!\u00A0,-,_,|,alnum" +word_chars_input = "!\u00A0,-,_,|,alnum" + +[palette] + +[color] +bar_more = lightmagenta +chat = default +chat_bg = default +chat_buffer = white +chat_channel = white +chat_day_change = cyan +chat_delimiters = green +chat_highlight = yellow +chat_highlight_bg = magenta +chat_host = cyan +chat_inactive_buffer = default +chat_inactive_window = default +chat_nick = lightcyan +chat_nick_colors = "cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue" +chat_nick_offline = default +chat_nick_offline_highlight = default +chat_nick_offline_highlight_bg = blue +chat_nick_other = cyan +chat_nick_prefix = green +chat_nick_self = white +chat_nick_suffix = green +chat_prefix_action = white +chat_prefix_buffer = brown +chat_prefix_buffer_inactive_buffer = default +chat_prefix_error = yellow +chat_prefix_join = lightgreen +chat_prefix_more = lightmagenta +chat_prefix_network = magenta +chat_prefix_quit = lightred +chat_prefix_suffix = green +chat_read_marker = magenta +chat_read_marker_bg = default +chat_server = brown +chat_tags = red +chat_text_found = yellow +chat_text_found_bg = lightmagenta +chat_time = default +chat_time_delimiters = brown +chat_value = cyan +chat_value_null = blue +emphasized = yellow +emphasized_bg = magenta +input_actions = lightgreen +input_text_not_found = red +item_away = yellow +nicklist_away = cyan +nicklist_group = green +separator = blue +status_count_highlight = magenta +status_count_msg = brown +status_count_other = default +status_count_private = green +status_data_highlight = lightmagenta +status_data_msg = yellow +status_data_other = default +status_data_private = lightgreen +status_filter = green +status_more = yellow +status_mouse = green +status_name = white +status_name_ssl = lightgreen +status_nicklist_count = default +status_number = yellow +status_time = default + +[completion] +base_word_until_cursor = on +command_inline = on +default_template = "%(nicks)|%(irc_channels)" +nick_add_space = on +nick_case_sensitive = off +nick_completer = ":" +nick_first_only = off +nick_ignore_chars = "[]`_-^" +partial_completion_alert = on +partial_completion_command = off +partial_completion_command_arg = off +partial_completion_count = on +partial_completion_other = off +partial_completion_templates = "config_options" + +[history] +display_default = 5 +max_buffer_lines_minutes = 0 +max_buffer_lines_number = 4096 +max_commands = 100 +max_visited_buffers = 50 + +[proxy] + +[network] +connection_timeout = 60 +gnutls_ca_file = "/etc/ssl/certs/ca-certificates.crt" +gnutls_handshake_timeout = 30 +proxy_curl = "" + +[plugin] +autoload = "*" +debug = off +extension = ".so,.dll" +path = "%h/plugins" +save_config_on_unload = on + +[bar] +buflist.color_bg = default +buflist.color_bg_inactive = default +buflist.color_delim = default +buflist.color_fg = default +buflist.conditions = "" +buflist.filling_left_right = vertical +buflist.filling_top_bottom = columns_vertical +buflist.hidden = off +buflist.items = "buflist" +buflist.position = left +buflist.priority = 0 +buflist.separator = on +buflist.size = 0 +buflist.size_max = 0 +buflist.type = root +fset.color_bg = default +fset.color_bg_inactive = default +fset.color_delim = cyan +fset.color_fg = default +fset.conditions = "${buffer.full_name} == fset.fset" +fset.filling_left_right = vertical +fset.filling_top_bottom = horizontal +fset.hidden = off +fset.items = "fset" +fset.position = top +fset.priority = 0 +fset.separator = on +fset.size = 3 +fset.size_max = 3 +fset.type = window +input.color_bg = default +input.color_bg_inactive = default +input.color_delim = cyan +input.color_fg = default +input.conditions = "" +input.filling_left_right = vertical +input.filling_top_bottom = horizontal +input.hidden = off +input.items = "[input_prompt]+(away),[input_search],[input_paste],input_text" +input.position = bottom +input.priority = 1000 +input.separator = off +input.size = 1 +input.size_max = 0 +input.type = window +nicklist.color_bg = default +nicklist.color_bg_inactive = default +nicklist.color_delim = cyan +nicklist.color_fg = default +nicklist.conditions = "${nicklist}" +nicklist.filling_left_right = vertical +nicklist.filling_top_bottom = columns_vertical +nicklist.hidden = off +nicklist.items = "buffer_nicklist" +nicklist.position = right +nicklist.priority = 200 +nicklist.separator = on +nicklist.size = 0 +nicklist.size_max = 0 +nicklist.type = window +status.color_bg = blue +status.color_bg_inactive = default +status.color_delim = cyan +status.color_fg = default +status.conditions = "" +status.filling_left_right = vertical +status.filling_top_bottom = horizontal +status.hidden = off +status.items = "[buffer_last_number],[buffer_plugin],buffer_number+:+buffer_name+(buffer_modes)+{buffer_nicklist_count}+buffer_zoom+buffer_filter,scroll,[lag],[hotlist],completion" +status.position = bottom +status.priority = 500 +status.separator = off +status.size = 1 +status.size_max = 0 +status.type = window +title.color_bg = blue +title.color_bg_inactive = default +title.color_delim = cyan +title.color_fg = default +title.conditions = "" +title.filling_left_right = vertical +title.filling_top_bottom = horizontal +title.hidden = off +title.items = "buffer_title" +title.position = top +title.priority = 500 +title.separator = off +title.size = 1 +title.size_max = 0 +title.type = window +vi_cmd.color_bg = default +vi_cmd.color_bg_inactive = default +vi_cmd.color_delim = default +vi_cmd.color_fg = default +vi_cmd.conditions = "" +vi_cmd.filling_left_right = vertical +vi_cmd.filling_top_bottom = vertical +vi_cmd.hidden = on +vi_cmd.items = "cmd_text" +vi_cmd.position = bottom +vi_cmd.priority = 0 +vi_cmd.separator = off +vi_cmd.size = 0 +vi_cmd.size_max = 0 +vi_cmd.type = root +vi_line_numbers.color_bg = default +vi_line_numbers.color_bg_inactive = default +vi_line_numbers.color_delim = default +vi_line_numbers.color_fg = default +vi_line_numbers.conditions = "" +vi_line_numbers.filling_left_right = vertical +vi_line_numbers.filling_top_bottom = vertical +vi_line_numbers.hidden = on +vi_line_numbers.items = "line_numbers" +vi_line_numbers.position = left +vi_line_numbers.priority = 0 +vi_line_numbers.separator = off +vi_line_numbers.size = 0 +vi_line_numbers.size_max = 0 +vi_line_numbers.type = window + +[layout] + +[notify] + +[filter] + +[key] +ctrl-? = "/input delete_previous_char" +ctrl-A = "/input move_beginning_of_line" +ctrl-B = "/window page_up" +ctrl-C_ = "/input insert \x1F" +ctrl-Cb = "/input insert \x02" +ctrl-Cc = "/input insert \x03" +ctrl-Ci = "/input insert \x1D" +ctrl-Co = "/input insert \x0F" +ctrl-Cv = "/input insert \x16" +ctrl-D = "/input delete_next_char" +ctrl-E = "/input move_end_of_line" +ctrl-F = "/window page_down" +ctrl-H = "/input delete_previous_char" +ctrl-I = "/input complete_next" +ctrl-J = "/input return" +ctrl-K = "/input delete_end_of_line" +ctrl-L = "/window refresh" +ctrl-M = "/input return" +ctrl-N = "/buffer +1" +ctrl-O = "/input jump_smart" +ctrl-P = "/buffer -1" +ctrl-R = "/input search_text_here" +ctrl-Sctrl-U = "/input set_unread" +ctrl-T = "/input transpose_chars" +ctrl-U = "/input delete_beginning_of_line" +ctrl-W = "/input delete_previous_word" +ctrl-W= = "/window balance" +ctrl-Wh = "/window left" +ctrl-Wj = "/window down" +ctrl-Wk = "/window up" +ctrl-Wl = "/window right" +ctrl-Wq = "/window merge" +ctrl-Ws = "/window splith" +ctrl-Wv = "/window splitv" +ctrl-Wx = "/window swap" +ctrl-X = "/input switch_active_buffer" +ctrl-Y = "/input clipboard_paste" +meta-meta-OP = "/bar scroll buflist * b" +meta-meta-OQ = "/bar scroll buflist * e" +meta-meta2-11~ = "/bar scroll buflist * b" +meta-meta2-12~ = "/bar scroll buflist * e" +meta-meta2-1~ = "/window scroll_top" +meta-meta2-23~ = "/bar scroll nicklist * b" +meta-meta2-24~ = "/bar scroll nicklist * e" +meta-meta2-4~ = "/window scroll_bottom" +meta-meta2-5~ = "/window scroll_up" +meta-meta2-6~ = "/window scroll_down" +meta-meta2-7~ = "/window scroll_top" +meta-meta2-8~ = "/window scroll_bottom" +meta-meta2-A = "/buffer -1" +meta-meta2-B = "/buffer +1" +meta-meta2-C = "/buffer +1" +meta-meta2-D = "/buffer -1" +meta-- = "/filter toggle @" +meta-/ = "/input jump_last_buffer_displayed" +meta-0 = "/buffer *10" +meta-1 = "/buffer *1" +meta-2 = "/buffer *2" +meta-3 = "/buffer *3" +meta-4 = "/buffer *4" +meta-5 = "/buffer *5" +meta-6 = "/buffer *6" +meta-7 = "/buffer *7" +meta-8 = "/buffer *8" +meta-9 = "/buffer *9" +meta-< = "/input jump_previously_visited_buffer" +meta-= = "/filter toggle" +meta-> = "/input jump_next_visited_buffer" +meta-B = "/buflist toggle" +meta-OA = "/input history_global_previous" +meta-OB = "/input history_global_next" +meta-OC = "/input move_next_word" +meta-OD = "/input move_previous_word" +meta-OF = "/input move_end_of_line" +meta-OH = "/input move_beginning_of_line" +meta-OP = "/bar scroll buflist * -100%" +meta-OQ = "/bar scroll buflist * +100%" +meta-Oa = "/input history_global_previous" +meta-Ob = "/input history_global_next" +meta-Oc = "/input move_next_word" +meta-Od = "/input move_previous_word" +meta2-11^ = "/bar scroll buflist * -100%" +meta2-11~ = "/bar scroll buflist * -100%" +meta2-12^ = "/bar scroll buflist * +100%" +meta2-12~ = "/bar scroll buflist * +100%" +meta2-15~ = "/buffer -1" +meta2-17~ = "/buffer +1" +meta2-18~ = "/window -1" +meta2-19~ = "/window +1" +meta2-1;3A = "/buffer -1" +meta2-1;3B = "/buffer +1" +meta2-1;3C = "/buffer +1" +meta2-1;3D = "/buffer -1" +meta2-1;3F = "/window scroll_bottom" +meta2-1;3H = "/window scroll_top" +meta2-1;3P = "/bar scroll buflist * b" +meta2-1;3Q = "/bar scroll buflist * e" +meta2-1;5A = "/input history_global_previous" +meta2-1;5B = "/input history_global_next" +meta2-1;5C = "/input move_next_word" +meta2-1;5D = "/input move_previous_word" +meta2-1;5P = "/bar scroll buflist * -100%" +meta2-1;5Q = "/bar scroll buflist * +100%" +meta2-1~ = "/input move_beginning_of_line" +meta2-200~ = "/input paste_start" +meta2-201~ = "/input paste_stop" +meta2-20~ = "/bar scroll title * -30%" +meta2-21~ = "/bar scroll title * +30%" +meta2-23;3~ = "/bar scroll nicklist * b" +meta2-23~ = "/bar scroll nicklist * -100%" +meta2-24;3~ = "/bar scroll nicklist * e" +meta2-24~ = "/bar scroll nicklist * +100%" +meta2-3~ = "/input delete_next_char" +meta2-4~ = "/input move_end_of_line" +meta2-5;3~ = "/window scroll_up" +meta2-5~ = "/window page_up" +meta2-6;3~ = "/window scroll_down" +meta2-6~ = "/window page_down" +meta2-7~ = "/input move_beginning_of_line" +meta2-8~ = "/input move_end_of_line" +meta2-A = "/input history_previous" +meta2-B = "/input history_next" +meta2-C = "/input move_next_char" +meta2-D = "/input move_previous_char" +meta2-F = "/input move_end_of_line" +meta2-G = "/window page_down" +meta2-H = "/input move_beginning_of_line" +meta2-I = "/window page_up" +meta2-Z = "/input complete_previous" +meta2-[E = "/buffer -1" +meta-_ = "/input redo" +meta-a = "/input jump_smart" +meta-b = "/input move_previous_word" +meta-d = "/input delete_next_word" +meta-f = "/input move_next_word" +meta-h = "/input hotlist_clear" +meta-j01 = "/buffer *1" +meta-j02 = "/buffer *2" +meta-j03 = "/buffer *3" +meta-j04 = "/buffer *4" +meta-j05 = "/buffer *5" +meta-j06 = "/buffer *6" +meta-j07 = "/buffer *7" +meta-j08 = "/buffer *8" +meta-j09 = "/buffer *9" +meta-j10 = "/buffer *10" +meta-j11 = "/buffer *11" +meta-j12 = "/buffer *12" +meta-j13 = "/buffer *13" +meta-j14 = "/buffer *14" +meta-j15 = "/buffer *15" +meta-j16 = "/buffer *16" +meta-j17 = "/buffer *17" +meta-j18 = "/buffer *18" +meta-j19 = "/buffer *19" +meta-j20 = "/buffer *20" +meta-j21 = "/buffer *21" +meta-j22 = "/buffer *22" +meta-j23 = "/buffer *23" +meta-j24 = "/buffer *24" +meta-j25 = "/buffer *25" +meta-j26 = "/buffer *26" +meta-j27 = "/buffer *27" +meta-j28 = "/buffer *28" +meta-j29 = "/buffer *29" +meta-j30 = "/buffer *30" +meta-j31 = "/buffer *31" +meta-j32 = "/buffer *32" +meta-j33 = "/buffer *33" +meta-j34 = "/buffer *34" +meta-j35 = "/buffer *35" +meta-j36 = "/buffer *36" +meta-j37 = "/buffer *37" +meta-j38 = "/buffer *38" +meta-j39 = "/buffer *39" +meta-j40 = "/buffer *40" +meta-j41 = "/buffer *41" +meta-j42 = "/buffer *42" +meta-j43 = "/buffer *43" +meta-j44 = "/buffer *44" +meta-j45 = "/buffer *45" +meta-j46 = "/buffer *46" +meta-j47 = "/buffer *47" +meta-j48 = "/buffer *48" +meta-j49 = "/buffer *49" +meta-j50 = "/buffer *50" +meta-j51 = "/buffer *51" +meta-j52 = "/buffer *52" +meta-j53 = "/buffer *53" +meta-j54 = "/buffer *54" +meta-j55 = "/buffer *55" +meta-j56 = "/buffer *56" +meta-j57 = "/buffer *57" +meta-j58 = "/buffer *58" +meta-j59 = "/buffer *59" +meta-j60 = "/buffer *60" +meta-j61 = "/buffer *61" +meta-j62 = "/buffer *62" +meta-j63 = "/buffer *63" +meta-j64 = "/buffer *64" +meta-j65 = "/buffer *65" +meta-j66 = "/buffer *66" +meta-j67 = "/buffer *67" +meta-j68 = "/buffer *68" +meta-j69 = "/buffer *69" +meta-j70 = "/buffer *70" +meta-j71 = "/buffer *71" +meta-j72 = "/buffer *72" +meta-j73 = "/buffer *73" +meta-j74 = "/buffer *74" +meta-j75 = "/buffer *75" +meta-j76 = "/buffer *76" +meta-j77 = "/buffer *77" +meta-j78 = "/buffer *78" +meta-j79 = "/buffer *79" +meta-j80 = "/buffer *80" +meta-j81 = "/buffer *81" +meta-j82 = "/buffer *82" +meta-j83 = "/buffer *83" +meta-j84 = "/buffer *84" +meta-j85 = "/buffer *85" +meta-j86 = "/buffer *86" +meta-j87 = "/buffer *87" +meta-j88 = "/buffer *88" +meta-j89 = "/buffer *89" +meta-j90 = "/buffer *90" +meta-j91 = "/buffer *91" +meta-j92 = "/buffer *92" +meta-j93 = "/buffer *93" +meta-j94 = "/buffer *94" +meta-j95 = "/buffer *95" +meta-j96 = "/buffer *96" +meta-j97 = "/buffer *97" +meta-j98 = "/buffer *98" +meta-j99 = "/buffer *99" +meta-k = "/input grab_key_command" +meta-l = "/window bare" +meta-m = "/mute mouse toggle" +meta-n = "/window scroll_next_highlight" +meta-p = "/window scroll_previous_highlight" +meta-r = "/input delete_line" +meta-s = "/mute aspell toggle" +meta-u = "/window scroll_unread" +meta-x = "/input zoom_merged_buffer" +meta-z = "/window zoom" +ctrl-^ = "/input jump_last_buffer_displayed" +ctrl-_ = "/input undo" + +[key_search] +ctrl-I = "/input search_switch_where" +ctrl-J = "/input search_stop_here" +ctrl-M = "/input search_stop_here" +ctrl-Q = "/input search_stop" +ctrl-R = "/input search_switch_regex" +meta2-A = "/input search_previous" +meta2-B = "/input search_next" +meta-c = "/input search_switch_case" + +[key_cursor] +ctrl-J = "/cursor stop" +ctrl-M = "/cursor stop" +meta-meta2-A = "/cursor move area_up" +meta-meta2-B = "/cursor move area_down" +meta-meta2-C = "/cursor move area_right" +meta-meta2-D = "/cursor move area_left" +meta2-1;3A = "/cursor move area_up" +meta2-1;3B = "/cursor move area_down" +meta2-1;3C = "/cursor move area_right" +meta2-1;3D = "/cursor move area_left" +meta2-A = "/cursor move up" +meta2-B = "/cursor move down" +meta2-C = "/cursor move right" +meta2-D = "/cursor move left" +@item(buffer_nicklist):K = "/window ${_window_number};/kickban ${nick}" +@item(buffer_nicklist):b = "/window ${_window_number};/ban ${nick}" +@item(buffer_nicklist):k = "/window ${_window_number};/kick ${nick}" +@item(buffer_nicklist):q = "/window ${_window_number};/query ${nick};/cursor stop" +@item(buffer_nicklist):w = "/window ${_window_number};/whois ${nick}" +@chat:Q = "hsignal:chat_quote_time_prefix_message;/cursor stop" +@chat:m = "hsignal:chat_quote_message;/cursor stop" +@chat:q = "hsignal:chat_quote_prefix_message;/cursor stop" + +[key_mouse] +@bar(buflist):ctrl-wheeldown = "hsignal:buflist_mouse" +@bar(buflist):ctrl-wheelup = "hsignal:buflist_mouse" +@bar(input):button2 = "/input grab_mouse_area" +@bar(nicklist):button1-gesture-down = "/bar scroll nicklist ${_window_number} +100%" +@bar(nicklist):button1-gesture-down-long = "/bar scroll nicklist ${_window_number} e" +@bar(nicklist):button1-gesture-up = "/bar scroll nicklist ${_window_number} -100%" +@bar(nicklist):button1-gesture-up-long = "/bar scroll nicklist ${_window_number} b" +@chat(fset.fset):button1 = "/window ${_window_number};/fset -go ${_chat_line_y}" +@chat(fset.fset):button2* = "hsignal:fset_mouse" +@chat(fset.fset):wheeldown = "/fset -down 5" +@chat(fset.fset):wheelup = "/fset -up 5" +@chat(script.scripts):button1 = "/window ${_window_number};/script go ${_chat_line_y}" +@chat(script.scripts):button2 = "/window ${_window_number};/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}" +@chat(script.scripts):wheeldown = "/script down 5" +@chat(script.scripts):wheelup = "/script up 5" +@item(buffer_nicklist):button1 = "/window ${_window_number};/query ${nick}" +@item(buffer_nicklist):button1-gesture-left = "/window ${_window_number};/kick ${nick}" +@item(buffer_nicklist):button1-gesture-left-long = "/window ${_window_number};/kickban ${nick}" +@item(buffer_nicklist):button2 = "/window ${_window_number};/whois ${nick}" +@item(buffer_nicklist):button2-gesture-left = "/window ${_window_number};/ban ${nick}" +@item(buflist):button1* = "hsignal:buflist_mouse" +@item(buflist):button2* = "hsignal:buflist_mouse" +@item(buflist2):button1* = "hsignal:buflist_mouse" +@item(buflist2):button2* = "hsignal:buflist_mouse" +@item(buflist3):button1* = "hsignal:buflist_mouse" +@item(buflist3):button2* = "hsignal:buflist_mouse" +@bar:wheeldown = "/bar scroll ${_bar_name} ${_window_number} +20%" +@bar:wheelup = "/bar scroll ${_bar_name} ${_window_number} -20%" +@chat:button1 = "/window ${_window_number}" +@chat:button1-gesture-left = "/window ${_window_number};/buffer -1" +@chat:button1-gesture-left-long = "/window ${_window_number};/buffer 1" +@chat:button1-gesture-right = "/window ${_window_number};/buffer +1" +@chat:button1-gesture-right-long = "/window ${_window_number};/input jump_last_buffer" +@chat:ctrl-wheeldown = "/window scroll_horiz -window ${_window_number} +10%" +@chat:ctrl-wheelup = "/window scroll_horiz -window ${_window_number} -10%" +@chat:wheeldown = "/window scroll_down -window ${_window_number}" +@chat:wheelup = "/window scroll_up -window ${_window_number}" +@*:button3 = "/cursor go ${_x},${_y}" diff --git a/dot_xinitrc.bak b/dot_xinitrc.bak new file mode 100755 index 0000000..8e3d5c3 --- /dev/null +++ b/dot_xinitrc.bak @@ -0,0 +1,51 @@ +#!/bin/bash + +export PATH=$HOME/bin:$PATH +systemctl --user import-environment DISPLAY XAUTHORITY +systemctl --user start pulseaudio.socket +systemctl --user start pulseaudio.service + +if which dbus-update-activation-environment >/dev/null 2>&1; then + dbus-update-activation-environment DISPLAY XAUTHORITY +fi + +eval $(/usr/bin/gnome-keyring-daemon --start --components=pkcs11,secrets,ssh) +export SSH_AUTH_SOCK + +xinput-toggle -r yubikey -d + +xfsettingsd & +xrdb -merge .Xdefaults & + +#gnome-settings-daemon & +xscreensaver -no-splash & +#kupfer --no-splash & +rofi -key-run control-space -fuzzy -terminal run_terminal & +#nm-applet & +gnome-sound-applet & +remmina -i & +#setxkbmap -option ctrl:nocaps & +xmodmap ~/.Xmodmap & +#synclient PalmDetect=1 + +# Running a really minimal arch system? This helps: + +/usr/lib/xfce4/notifyd/xfce4-notifyd & +#pulseaudio --start & +blueman-applet & +#wicd-gtk --tray & + +if [ -f ~/.xrandrrc ]; then + ~/.xrandrrc +fi + + +~/.fehbg & +if command -v picom &>/dev/null; then + picom -b --config ~/.compton.conf & +fi + +#exec awesome +exec i3 +#exec startxfce4 +#exec dbus-launch --sh-syntax --exit-with-session i3 diff --git a/dot_xmonad/xmonad.hs b/dot_xmonad/xmonad.hs new file mode 100644 index 0000000..bd4e96f --- /dev/null +++ b/dot_xmonad/xmonad.hs @@ -0,0 +1,216 @@ +import XMonad +import XMonad.Config.Gnome +import XMonad.Operations + +import XMonad.Actions.Commands +import XMonad.Actions.CycleWS +import XMonad.Actions.DeManage +import qualified XMonad.Actions.DynamicWorkspaces as DW + +import XMonad.Hooks.DynamicLog as DL +import XMonad.Hooks.EwmhDesktops +import XMonad.Hooks.ManageDocks +import XMonad.Hooks.ManageHelpers +import XMonad.ManageHook + +import qualified XMonad.StackSet as W + +import XMonad.Util.Loggers as LS +import XMonad.Util.Run +import XMonad.Util.WindowProperties +import XMonad.Util.XSelection + +import qualified XMonad.Util.EZConfig as EZ +import qualified Data.Map as M + +myManageHook :: [ManageHook] +myManageHook = + [ resource =? "Synapse" --> doIgnore ] +{-myManageHook = -} + {-[ resource =? "Do" --> doFloat ]-} + +main = xmonad gnomeConfig + { manageHook = manageHook gnomeConfig <+> composeAll myManageHook + , borderWidth = 2 + , focusedBorderColor = "#00BFFF" + } + +{- +-- delKeys x = foldr M.delete (keys defaultConfig x) (keysToRemove x) +delKeys = keys defaultConfig +newKeys x = M.union (delKeys x) (myKeys x) + +myKeys :: XConfig Layout -> M.Map (KeyMask, KeySym) (X ()) +myKeys conf@(XConfig {XMonad.modMask = modMask}) = M.fromList $ + [ ((modMask .|. shiftMask, xK_r ), spawn "if type xmonad; then xmonad --recompile && xmonad --restart; else xmessage xmonad not in \\$PATH: \"$PATH\"; fi") -- %! Restart xmonad + ] + ++ + -- mod-{w,e,r} %! Switch to physical/Xinerama screens 1, 2, or 3 + -- mod-shift-{w,e,r} %! Move client to screen 1, 2, or 3 + [((m .|. modMask, key), screenWorkspace sc >>= flip whenJust (windows . f)) + | (key, sc) <- zip [xK_q, xK_w, xK_e] [0..] + , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]] + -} +{- Reference -- the originals + -- launching and killing programs + [ ((modMask .|. shiftMask, xK_Return), spawn $ XMonad.terminal conf) -- %! Launch terminal + , ((modMask, xK_p ), spawn "dmenu_run") -- %! Launch dmenu + , ((modMask .|. shiftMask, xK_p ), spawn "gmrun") -- %! Launch gmrun + , ((modMask .|. shiftMask, xK_c ), kill) -- %! Close the focused window + + , ((modMask, xK_space ), sendMessage NextLayout) -- %! Rotate through the available layout algorithms + , ((modMask .|. shiftMask, xK_space ), setLayout $ XMonad.layoutHook conf) -- %! Reset the layouts on the current workspace to default + + , ((modMask, xK_n ), refresh) -- %! Resize viewed windows to the correct size + + -- move focus up or down the window stack + , ((modMask, xK_Tab ), windows W.focusDown) -- %! Move focus to the next window + , ((modMask .|. shiftMask, xK_Tab ), windows W.focusUp ) -- %! Move focus to the previous window + , ((modMask, xK_j ), windows W.focusDown) -- %! Move focus to the next window + , ((modMask, xK_k ), windows W.focusUp ) -- %! Move focus to the previous window + , ((modMask, xK_m ), windows W.focusMaster ) -- %! Move focus to the master window + + -- modifying the window order + , ((modMask, xK_Return), windows W.swapMaster) -- %! Swap the focused window and the master window + , ((modMask .|. shiftMask, xK_j ), windows W.swapDown ) -- %! Swap the focused window with the next window + , ((modMask .|. shiftMask, xK_k ), windows W.swapUp ) -- %! Swap the focused window with the previous window + + -- resizing the master/slave ratio + , ((modMask, xK_h ), sendMessage Shrink) -- %! Shrink the master area + , ((modMask, xK_l ), sendMessage Expand) -- %! Expand the master area + + -- floating layer support + , ((modMask, xK_t ), withFocused $ windows . W.sink) -- %! Push window back into tiling + + -- increase or decrease number of windows in the master area + , ((modMask , xK_comma ), sendMessage (IncMasterN 1)) -- %! Increment the number of windows in the master area + , ((modMask , xK_period), sendMessage (IncMasterN (-1))) -- %! Deincrement the number of windows in the master area + + -- toggle the status bar gap + --, ((modMask , xK_b ), modifyGap (\i n -> let x = (XMonad.defaultGaps conf ++ repeat (0,0,0,0)) !! i in if n == x then (0,0,0,0) else x)) -- %! Toggle the status bar gap + + -- quit, or restart + , ((modMask .|. shiftMask, xK_q ), io (exitWith ExitSuccess)) -- %! Quit xmonad + , ((modMask , xK_q ), spawn "if type xmonad; then xmonad --recompile && xmonad --restart; else xmessage xmonad not in \\$PATH: \"$PATH\"; fi") -- %! Restart xmonad + ] + ++ + -- mod-[1..9] %! Switch to workspace N + -- mod-shift-[1..9] %! Move client to workspace N + [((m .|. modMask, k), windows $ f i) + | (i, k) <- zip (XMonad.workspaces conf) [xK_1 .. xK_9] + , (f, m) <- [(W.greedyView, 0), (W.shift, shiftMask)]] + ++ + -- mod-{w,e,r} %! Switch to physical/Xinerama screens 1, 2, or 3 + -- mod-shift-{w,e,r} %! Move client to screen 1, 2, or 3 + [((m .|. modMask, key), screenWorkspace sc >>= flip whenJust (windows . f)) + | (key, sc) <- zip [xK_w, xK_e, xK_r] [0..] + , (f, m) <- [(W.view, 0), (W.shift, shiftMask)]] +-} + +keysToRemove :: XConfig Layout -> [(KeyMask, KeySym)] +keysToRemove XConfig{modMask = modm} = + [ (modm, xK_p ) + , (modm .|. shiftMask, xK_p ) + ] + +{- +myKeys :: XConfig Layout -> M.Map (KeyMask, KeySym) (X()) +myKeys conf = EZ.mkKeymap conf $(_emacsKeys conf) + + +_emacsKeys :: [(String, X())] +_emacsKeys = [ + ("M-q" +_emacsKeys :: XConfig Layout -> [(String, X())] +_emacsKeys conf = + [ -- Applications + {-("M-t", goto "terminals")-} + {-, ("M-S-t", runColourTerminal)-} + {-, ("M-v M-t", pasteTerminal)-} + {-, ("M-v M-d", manTerminal)-} + {-, ("M-i", goto "browsen")-} + {-, ("M-S-i", runBrowser)-} + {-, ("M-v M-i", pasteBrowser)-} + {-, ("M-p", runCmdLine)-} + {-, ("M-x", WD.changeDir P.defaultXPConfig)-} + {-, ("M-e", goto "muziek")-} + {--- , ("M-o", runMixer)-} + {-, ("M-h", runFileManager)-} + {-, ("M-s", goto "praten")-} + {-, ("M-m", goto "berichten")-} + {-, ("M-S-m", runMail)-} + {-, ("M-u", goto "agenda")-} + {-, ("M-0", goto "schutbord")-} + {-, ("M-w", goto "flim")-} + + -- mpd + {-, ("<XF86AudioPlay>", io $ return . fromRight =<< MPD.withMPD MPD.toggle)-} + {-, ("<XF86AudioStop>", io $ return . fromRight =<< MPD.withMPD MPD.stop)-} + {-, ("<XF86AudioNext>", io $ return . fromRight =<< MPD.withMPD MPD.next)-} + {-, ("<XF86AudioPrev>", io $ return . fromRight =<< MPD.withMPD MPD.previous)-} + {-, ("<XF86AudioLowerVolume>", spawn "amixer set Master 2-")-} + {-, ("<XF86AudioRaiseVolume>", spawn "amixer set Master 2+")-} + {-, ("<XF86AudioMute>", spawn "amixer set Master toggle")-} + + -- couple of scripts to change brightness, very hardware specific to my laptop + -- brightness + {-, ("<XF86MonBrightnessUp>", spawn "lcd-brightness-inc")-} + {-, ("<XF86MonBrightnessDown>", spawn "lcd-brightness-dec")-} + + -- Layouts + , ("M-n", refresh) + , ("M-S-<Space>", setLayout $ XMonad.layoutHook conf) + , ("M-<Space>", sendMessage NextLayout) + , ("M-<Tab>", windows W.focusDown) + , ("M-j", windows W.focusDown) + , ("M-k", windows W.focusUp) + , ("M-<Return>", windows W.focusMaster) + , ("M-S-<Return>", DwmP.dwmpromote) + , ("M-S-j", windows W.swapDown) + , ("M-S-k", windows W.swapUp) + , ("M-g", sendMessage Shrink) + , ("M-l", sendMessage Expand) + , ("M-r", withFocused $ windows . W.sink) + , ("M-,", sendMessage (IncMasterN 1)) + , ("M-.", sendMessage (IncMasterN (-1))) + + -- Toggle full screen + , ("M-<F12>", sendMessage ToggleStruts >> refresh) + + -- Windows + , ("M-[", PWork.workspacePrompt P.defaultXPConfig goto) + , ("M-]", PWin.windowPromptGoto P.defaultXPConfig) + ,("M-S-[", PWork.workspacePrompt P.defaultXPConfig shift) + + , ("M-c", kill) -- window + , ("M-S-c", WithAll.killAll) ] -- window + -- ++ + -- [ ("M-" ++ [num], goto name) + -- | (name, num) <- + -- zip _workspaces (['1' .. '9'] ++ ['0'])] + + -- -- Workspaces + -- ++ + -- [ ("M-S-" ++ [num], shift name) + -- | (name, num) <- + -- zip _workspaces (['1' .. '9'] ++ ['0'])] + ++ + [ ("M-<Right>", moveTo Next NonEmptyWS) + , ("M-<Left>", moveTo Prev NonEmptyWS) + , ("M-S-<Right>", moveTo Next EmptyWS) + , ("M-S-<Left>", moveTo Prev EmptyWS) + -- Toggle between current and previous + , ("M-`", toggleWS) + + , ("M-S-n", PI.inputPrompt P.defaultXPConfig "New Workspace:" PI.?+ newWorkspaceDir) + , ("M-S-<Backspace>", WithAll.killAll >> DW.removeWorkspace) --buggy, messes with focus and creates flicker, needs to be fixed + , ("M-S-r", DW.renameWorkspace P.defaultXPConfig) + + -- -- Commands + -- , ("M-y", runCommand _commands) + + -- -- Remember + , ("M1-C-r", runRemember) + -- xmonad + , ("M1-q", restartXMonad)] +-} diff --git a/dot_ycm_extra_conf.py b/dot_ycm_extra_conf.py new file mode 100644 index 0000000..bc3c837 --- /dev/null +++ b/dot_ycm_extra_conf.py @@ -0,0 +1,118 @@ +import os +import ycm_core +from clang_helpers import PrepareClangFlags + +# These are the compilation flags that will be used in case there's no +# compilation database set (by default, one is not set). +# CHANGE THIS LIST OF FLAGS. YES, THIS IS THE DROID YOU HAVE BEEN LOOKING FOR. +flags = [ +'-Wall', +'-Wextra', +'-Werror', +'-Wno-long-long', +'-Wno-variadic-macros', +'-fexceptions', +'-DNDEBUG', +# THIS IS IMPORTANT! Without a "-std=<something>" flag, clang won't know which +# language to use when compiling headers. So it will guess. Badly. So C++ +# headers will be compiled as C headers. You don't want that so ALWAYS specify +# a "-std=<something>". +# For a C project, you would set this to something like 'c99' instead of +# 'c++11'. +'-std=c++11', +# ...and the same thing goes for the magic -x option which specifies the +# language that the files to be compiled are written in. This is mostly +# relevant for c++ headers. +# For a C project, you would set this to 'c' instead of 'c++'. +'-x', +'c++', +'-isystem', +'../BoostParts', +'-isystem', +# This path will only work on OS X, but extra paths that don't exist are not +# harmful +'/System/Library/Frameworks/Python.framework/Headers', +'-isystem', +'../llvm/include', +'-isystem', +'../llvm/tools/clang/include', +'-I', +'.', +'-I', +'./ClangCompleter', +'-isystem', +'./tests/gmock/gtest', +'-isystem', +'./tests/gmock/gtest/include', +'-isystem', +'./tests/gmock', +'-isystem', +'./tests/gmock/include' +] + +# Set this to the absolute path to the folder (NOT the file!) containing the +# compile_commands.json file to use that instead of 'flags'. See here for +# more details: http://clang.llvm.org/docs/JSONCompilationDatabase.html +# +# Most projects will NOT need to set this to anything; you can just change the +# 'flags' list of compilation flags. Notice that YCM itself uses that approach. +compilation_database_folder = '' + +if compilation_database_folder: + database = ycm_core.CompilationDatabase( compilation_database_folder ) +else: + database = None + + +def DirectoryOfThisScript(): + return os.path.dirname( os.path.abspath( __file__ ) ) + + +def MakeRelativePathsInFlagsAbsolute( flags, working_directory ): + if not working_directory: + return flags + new_flags = [] + make_next_absolute = False + path_flags = [ '-isystem', '-I', '-iquote', '--sysroot=' ] + for flag in flags: + new_flag = flag + + if make_next_absolute: + make_next_absolute = False + if not flag.startswith( '/' ): + new_flag = os.path.join( working_directory, flag ) + + for path_flag in path_flags: + if flag == path_flag: + make_next_absolute = True + break + + if flag.startswith( path_flag ): + path = flag[ len( path_flag ): ] + new_flag = path_flag + os.path.join( working_directory, path ) + break + + if new_flag: + new_flags.append( new_flag ) + return new_flags + + +def FlagsForFile( filename ): + if database: + # Bear in mind that compilation_info.compiler_flags_ does NOT return a + # python list, but a "list-like" StringVec object + compilation_info = database.GetCompilationInfoForFile( filename ) + final_flags = PrepareClangFlags( + MakeRelativePathsInFlagsAbsolute( + compilation_info.compiler_flags_, + compilation_info.compiler_working_dir_ ), + filename ) + + else: + relative_to = DirectoryOfThisScript() + final_flags = MakeRelativePathsInFlagsAbsolute( flags, relative_to ) + + return { + 'flags': final_flags, + 'do_cache': True + } diff --git a/dot_zprofile b/dot_zprofile new file mode 100644 index 0000000..6aac3e5 --- /dev/null +++ b/dot_zprofile @@ -0,0 +1,35 @@ +# $FreeBSD: src/share/skel/dot.profile,v 1.19.2.2 2002/07/13 16:29:10 mp Exp $ +# +# .profile - Bourne Shell startup script for login shells +# +# see also sh(1), environ(7). +# + +# remove /usr/games and /usr/X11R6/bin if you want +PATH=$HOME/bin:/bin:/sbin:/usr/local/bin:/usr/local/sbin:/usr/bin:/usr/sbin:/usr/games:/usr/X11R6/bin:/$HOME/.gem/ruby/2.4.0/bin:$HOME/.go/bin:$HOME/.cargo/bin:$HOME/.cabal/bin:/usr/lib/go/bin:$PATH; export PATH +case `uname` in +SunOS) + UCB_PATH=/usr/sww/lang/acl:/usr/sww/lang/jdk-1.5.0/bin:/usr/openwin/bin:/usr/dt/bin:/usr/sww/opt/java/bin:/usr/sww/bin:/share/b/grading/bin:/share/b/grading/sbin:/share/b/runas/sun4u:/share/b/bin:/home/aa/projects/scheme/bin:/usr/ucb:/usr/ccs/bin:/usr/sfw/bin; export UCB_PATH + PATH=$PATH:$UCB_PATH; export PATH + ;; +esac +#PATH=$HOME/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/games:/usr/local/sbin:/usr/local/bin:/usr/X11R6/bin; export PATH + +# Setting TERM is normally done through /etc/ttys. Do only override +# if you're sure that you'll never log in via telnet or xterm or a +# serial line. +# Use cons25l1 for iso-* fonts +# TERM=cons25; export TERM + +BLOCKSIZE=K; export BLOCKSIZE +EDITOR=vi; export EDITOR +PAGER=less; export PAGER + +# set ENV to a file invoked each time sh is started for interactive use. +ENV=$HOME/.zshrc; export ENV +RUST_BACKTRACE=1; export RUST_BACKTRACE + +#alias ls='ls -FG' +#alias la='ls -FGal' +#source ~/.zshrc +export SSH_AUTH_SOCK="$XDG_RUNTIME_DIR/ssh-agent.socket" diff --git a/dot_zsh_profile b/dot_zsh_profile new file mode 120000 index 0000000..12f501c --- /dev/null +++ b/dot_zsh_profile @@ -0,0 +1 @@ +./.zprofile \ No newline at end of file diff --git a/dot_zshenv b/dot_zshenv new file mode 100644 index 0000000..3c26470 --- /dev/null +++ b/dot_zshenv @@ -0,0 +1,16 @@ +export NOBEEP="YES" # Stop that infernal beeping +export CLICOLOR="YES" # Show colors +export LSCOLORS="ExGxFxdxCxDxDxhbadExEx" # Look like bash +export HELM_HOME=$HOME/kube/helm +bindkey '\e[1~' beginning-of-line # Home key +bindkey '\e[4~' end-of-line # End key +bindkey '\e[H' beginning-of-line # Home key (alternate) +bindkey '\e[F' end-of-line # End key (alternate) +bindkey '\e[3~' forward-delete-char # Delete key +bindkey '\e[6~' end-of-history # Page down key +bindkey '\e[2~' redisplay # Insert key +bindkey '\e[5~' insert-last-word # Page up key + +if [ -z "$GOPATH" ]; then + export GOPATH="$HOME/.go/" +fi diff --git a/dot_zshrc b/dot_zshrc new file mode 100644 index 0000000..2add78b --- /dev/null +++ b/dot_zshrc @@ -0,0 +1,176 @@ +#complist +# If not running interactively, don't do anything +[ -z "$PS1" ] && return + +# don't put duplicate lines in the history. See bash(1) for more options +export HISTCONTROL=ignoredups +_JAVA_AWT_WM_NONREPARENTING=1; export _JAVA_AWT_WM_NONREPARENTING + +# make less more friendly for non-text input files, see lesspipe(1) +[ -x /usr/bin/lesspipe ] && eval "$(lesspipe)" + +# set variable identifying the chroot you work in (used in the prompt below) +if [ -z "$debian_chroot" ] && [ -r /etc/debian_chroot ]; then + debian_chroot=$(cat /etc/debian_chroot) +fi + + +PERL5LIB=$HOME/local/lib64/perl5/site_perl/5.8.8/ +autoload -U compinit +compinit +setopt extended_glob +bindkey -e +#ZLS_COLORS=$LS_COLORS + + +#export DISTCC_HOSTS='hyades01 hyades02 hyades03 hyades04' +#if [[ "$GOROOT" == "" ]]; then + #export GOROOT=$HOME/local/go + #export GOARCH=amd64 + #export GOOS=linux +#case `uname` in +#Darwin) + #export GOOS=darwin + #;; +#FreeBSD) + #export GOOS=freebsd + #;; +#esac +#fi + + +setopt prompt_subst + + +### +# See if we can use colors. + +autoload colors zsh/terminfo +if [[ "$terminfo[colors]" -ge 8 ]]; then + colors +fi +for color in RED GREEN YELLOW BLUE MAGENTA CYAN WHITE; do + eval PR_LIGHT_$color='%{$terminfo[bold]$fg[${(L)color}]%}' + eval PR_$color='%{$fg[${(L)color}]%}' + (( count = $count + 1 )) +done +PR_NO_COLOUR="%{$terminfo[sgr0]%}" + +case `uname` in + Darwin) + PR_HOST_COLOR=$PR_CYAN + ;; + Linux) + PR_HOST_COLOR=$PR_GREEN + ;; + FreeBSD) + PR_HOST_COLOR=$PR_RED + ;; + *) + PR_HOST_COLOR=$PR_YELLOW + ;; +esac + +#PR_HOST_COLOR=$PR_NO_COLOUR +#if [ -x "$(command -v $MD5_COMMAND)" ]; then + #str=`echo -n "${HOST} ${HOSTNAME}" | $MD5_COMMAND $MD5_COMMAND_OPTS` + #last="${str: -1}" + #echo + #case $last in + #"1"|"6"|"b"|"0") + #PR_HOST_COLOR=$PR_GREEN + #;; + #"2"|"7"|"c") + #PR_HOST_COLOR=$PR_YELLOW + #;; + #"3"|"8"|"d") + #PR_HOST_COLOR=$PR_BLUE + #;; + #"4"|"9"|"e") + #PR_HOST_COLOR=$PR_MAGENTA + #;; + #"5"|"a"|"f") + #PR_HOST_COLOR=$PR_CYAN + #;; + #"*") + #;; + #esac +#fi + + +PROMPT='$PR_STITLE$PR_LIGHT_BLUE(%(!.$PR_RED.$PR_LIGHT_YELLOW)%D{%H:%M}|%!$PR_BLUE%)[%(!.$PR_RED.$PR_HOST_COLOR)%n@%m$PR_LIGHT_CYAN %~$PR_BLUE]$PR_NO_COLOUR +%(!.#.$) ' + #source .zshprompt + +#source ~/.zsh_profile +source ~/.zprofile +if [ -f ~/.bash_aliases ]; then + source ~/.bash_aliases +fi + +if [ -f /usr/local/bin/virtualenvwrapper_lazy.sh ]; then + source /usr/local/bin/virtualenvwrapper_lazy.sh +elif [ -f /usr/bin/virtualenvwrapper_lazy.sh ]; then + source /usr/bin/virtualenvwrapper_lazy.sh +fi + +fasd_cache="$HOME/.fasd-init-zsh" +if [ "$(command -v fasd)" -nt "$fasd_cache" -o ! -s "$fasd_cache" ]; then + fasd --init posix-alias zsh-hook zsh-ccomp zsh-ccomp-install zsh-wcomp zsh-wcompinstall >| "$fasd_cache" + fi + +[ -f ~/.fzf.bash ] && source ~/.fzf.bash + + +[ -f /usr/share/fzf/key-bindings.zsh ] && source /usr/share/fzf/key-bindings.zsh +[ -f /usr/share/fzf/shell/key-bindings.zsh ] && source /usr/share/fzf/shell/key-bindings.zsh +[ -f /usr/share/fzf/completion.zsh ] && source /usr/share/fzf/completion.zsh + +export FZF_DEFAULT_COMMAND='rg --files --hidden --follow -g "!{.git,node_modules}/*" 2> /dev/null' +export FZF_CTRL_T_COMMAND="$FZF_DEFAULT_COMMAND" +#bind -x '"\C-p": vim $(fzf);' + +source "$fasd_cache" +unset fasd_cache + + +source ~/.zshenv + +############################################################## +## Stuff from http://zshwiki.org/home/examples/compquickstart # +############################################################### +zmodload zsh/complist +autoload -U compinit && compinit +zstyle ':completion:::::' completer _complete _approximate +zstyle -e ':completion:*:approximate:*' max-errors 'reply=( $(( ($#PREFIX + $#SUFFIX) / 3 )) )' +zstyle ':completion:*:descriptions' format "- %d -" +zstyle ':completion:*:corrections' format "- %d - (errors %e})" +zstyle ':completion:*:default' list-prompt '%S%M matches%s' +zstyle ':completion:*' group-name '' +zstyle ':completion:*:manuals' separate-sections true +zstyle ':completion:*' menu select +zstyle ':completion:*' verbose yes +## case-insensitive (uppercase from lowercase) completion +zstyle ':completion:*' matcher-list 'm:{a-z}={A-Z}' +#zstyle ':completion:*' special-dirs .. + +if [ -n "`which fortune`" ]; then + fortune +fi + +# The next line updates PATH for the Google Cloud SDK. +if [ -f '/home/barak/local/google-cloud-sdk/path.zsh.inc' ]; then source '/home/barak/local/google-cloud-sdk/path.zsh.inc'; fi + +# The next line enables shell command completion for gcloud. +if [ -f '/home/barak/local/google-cloud-sdk/completion.zsh.inc' ]; then source '/home/barak/local/google-cloud-sdk/completion.zsh.inc'; fi + +if [ -f '/usr/local/lib/bazel/bin/_bazel' ]; then source '/usr/local/lib/bazel/bin/_bazel'; fi + +# This enables autocomplete for kubectl +if [ $commands[kubectl] ]; then + source <(kubectl completion zsh) +fi + +export PATH="$HOME/.yarn/bin:$HOME/.config/yarn/global/node_modules/.bin:$PATH" + +if [ -f "$HOME/.zsh_work_rc" ]; then source $HOME/.zsh_work_rc; fi