]> git.r.bdr.sh - rbdr/dotfiles/commitdiff
Merge branch 'main' of git.sr.ht:~rbdr/dotfiles
authorRuben Beltran del Rio <redacted>
Sun, 19 Mar 2023 13:08:51 +0000 (14:08 +0100)
committerRuben Beltran del Rio <redacted>
Sun, 19 Mar 2023 13:08:51 +0000 (14:08 +0100)
config/karabiner/automatic_backups/karabiner_20230205.json [new file with mode: 0644]
config/karabiner/karabiner.json
config/kitty/kitty.conf
install
runcoms/zprofile
runcoms/zshrc
skhdrc [new file with mode: 0644]
vim-rbdr-colors.vim/colors/rbdr.vim
zsh/modules/aliases.zsh

diff --git a/config/karabiner/automatic_backups/karabiner_20230205.json b/config/karabiner/automatic_backups/karabiner_20230205.json
new file mode 100644 (file)
index 0000000..360dd8c
--- /dev/null
@@ -0,0 +1,234 @@
+{
+    "global": {
+        "check_for_updates_on_startup": true,
+        "show_in_menu_bar": true,
+        "show_profile_name_in_menu_bar": 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": "print_screen to command+shift+4",
+                        "manipulators": [
+                            {
+                                "from": {
+                                    "key_code": "print_screen"
+                                },
+                                "to": [
+                                    {
+                                        "key_code": "4",
+                                        "modifiers": [
+                                            "left_gui",
+                                            "left_shift"
+                                        ],
+                                        "repeat": false
+                                    }
+                                ],
+                                "type": "basic"
+                            }
+                        ]
+                    },
+                    {
+                        "description": "pause to ctrl+command+q",
+                        "manipulators": [
+                            {
+                                "from": {
+                                    "key_code": "pause"
+                                },
+                                "to": [
+                                    {
+                                        "key_code": "q",
+                                        "modifiers": [
+                                            "left_gui",
+                                            "left_control"
+                                        ],
+                                        "repeat": false
+                                    }
+                                ],
+                                "type": "basic"
+                            }
+                        ]
+                    },
+                    {
+                        "description": "Insert to Ctrl+Cmd+Alt+N",
+                        "manipulators": [
+                            {
+                                "from": {
+                                    "key_code": "insert"
+                                },
+                                "to": [
+                                    {
+                                        "key_code": "n",
+                                        "modifiers": [
+                                            "left_control",
+                                            "left_alt",
+                                            "left_gui"
+                                        ],
+                                        "repeat": true
+                                    }
+                                ],
+                                "type": "basic"
+                            }
+                        ]
+                    }
+                ]
+            },
+            "devices": [
+                {
+                    "disable_built_in_keyboard_if_exists": false,
+                    "fn_function_keys": [],
+                    "identifiers": {
+                        "is_keyboard": true,
+                        "is_pointing_device": false,
+                        "product_id": 25903,
+                        "vendor_id": 3141
+                    },
+                    "ignore": false,
+                    "manipulate_caps_lock_led": false,
+                    "simple_modifications": []
+                }
+            ],
+            "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": [
+                        {
+                            "key_code": "mission_control"
+                        }
+                    ]
+                },
+                {
+                    "from": {
+                        "key_code": "f4"
+                    },
+                    "to": [
+                        {
+                            "key_code": "launchpad"
+                        }
+                    ]
+                },
+                {
+                    "from": {
+                        "key_code": "f5"
+                    },
+                    "to": [
+                        {
+                            "key_code": "illumination_decrement"
+                        }
+                    ]
+                },
+                {
+                    "from": {
+                        "key_code": "f6"
+                    },
+                    "to": [
+                        {
+                            "key_code": "illumination_increment"
+                        }
+                    ]
+                },
+                {
+                    "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
index 360dd8c955421f9e698b2c86d651e675632c0402..e8977b3c67e1f1511d479962f957dc139c629f8d 100644 (file)
@@ -1,8 +1,10 @@
 {
     "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
+        "show_profile_name_in_menu_bar": false,
+        "unsafe_ui": false
     },
     "profiles": [
         {
                     },
                     "ignore": false,
                     "manipulate_caps_lock_led": false,
-                    "simple_modifications": []
+                    "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": 834,
+                        "vendor_id": 1452
+                    },
+                    "ignore": false,
+                    "manipulate_caps_lock_led": true,
+                    "simple_modifications": [
+                        {
+                            "from": {
+                                "key_code": "non_us_backslash"
+                            },
+                            "to": [
+                                {
+                                    "key_code": "grave_accent_and_tilde"
+                                }
+                            ]
+                        },
+                        {
+                            "from": {
+                                "key_code": "grave_accent_and_tilde"
+                            },
+                            "to": [
+                                {
+                                    "key_code": "non_us_backslash"
+                                }
+                            ]
+                        }
+                    ],
+                    "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": 834,
+                        "vendor_id": 1452
+                    },
+                    "ignore": true,
+                    "manipulate_caps_lock_led": false,
+                    "simple_modifications": [],
+                    "treat_as_built_in_keyboard": false
                 }
             ],
             "fn_function_keys": [
index 2302b21808370733ba955ff65deb29d18020b120..9dc6e76a776dc8d2c22ada8af67dd833f748fe52 100644 (file)
@@ -4,6 +4,7 @@ bold_font Input Mono Medium
 italic_font Input Mono Light Italic
 bold_italic_font Input Mono Medium Italic
 font_size 14.0
+macos_thicken_font 0.75
 
 # Cursor
 cursor #eeeeee
@@ -16,6 +17,10 @@ foreground #eeeeee
 background #3e3937
 selection_foreground #000000
 selection_background #c1ddff
+active_border_color #55ff55
+inactive_border_color #c1ddff
+
+background_opacity 0.9
 
 # Regular Colors
 # black
diff --git a/install b/install
index ba0458bf1da83714fb0acbf2ac1556401c492fa5..a7f07b6ebae7ce7879b87f3fc50ac25af78144c6 100755 (executable)
--- a/install
+++ b/install
@@ -45,6 +45,9 @@ ln -fns .dotfiles/Xdefaults ~/.Xdefaults
 # ripgrep
 ln -fns .dotfiles/rgignore ~/.rgignore
 
+# skhdc
+ln -fns .dotfiles/skhdrc ~/.skhdrc
+
 # tmuxp
 ln -fns .dotfiles/tmuxp ~/.tmuxp
 
@@ -57,7 +60,7 @@ ln -fns ../.dotfiles/config/kitty ~/.config/kitty
 # nvim
 ln -fns ../.dotfiles/config/nvim ~/.config/nvim
 
-# Karabiner
+# karabiner
 ln -fns ../.dotfiles/config/karabiner ~/.config/karabiner
 
 # i3
index b18b30737de56b5e5396ee490abedcc33e1661d8..d0cb3b852484bf30167004f4509c539812d49836 100644 (file)
@@ -43,7 +43,7 @@ typeset -gU cdpath fpath mailpath path
 
 # Set the list of directories that Zsh searches for programs.
 path=(
-  /usr/local/{bin,sbin}
+  /opt/homebrew/{bin,sbin}
   $path
 )
 
index 808616a00897ecd08f686679fc49f34178917cf7..9555055dc9c9b56dcaa2f9063c18e698644aa14c 100644 (file)
@@ -29,11 +29,10 @@ export TERM=xterm-256color-italic
 # Paths
 # export JAVA_HOME=$(/usr/libexec/java_home) # Enable if using JDK, otherwise disable for performance
 export GOPATH=$HOME/Projects/go
-export NODE_PATH=/usr/local/lib/node_modules:$NODE_PATH
 export ANDROID_HOME=$HOME/Library/Android/sdk
 export ANDROID_NDK_HOME=$HOME/Library/Android/sdk/ndk-bundle
 export NVM_DIR=$HOME/.nvm
-export PATH=$PATH:$HOME:/usr/local/opt/go/libexec/bin:${GOPATH//://bin:}/bin
+export PATH=$PATH:$HOME:${GOPATH//://bin:}/bin
 export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$ANDROID_NDK_HOME:/Applications/calibre.app/Contents/MacOS
 
 # Editor.
@@ -44,7 +43,6 @@ export VISUAL="nvim"
 export VIRTUAL_ENV_DISABLE_PROMPT=1
 export WORKON_HOME=$HOME/.virtualenvs
 export PROJECT_HOME=$HOME/Documents/projects
-export VIRTUALENVWRAPPER_PYTHON="/usr/local/bin/python3"
 
 # GPG
 export GPG_TTY=$(tty)
@@ -103,5 +101,5 @@ if ! command -v brew &>  /dev/null; then
     . $HOME/.asdf/asdf.sh
   fi
 else
-  . $(brew --prefix asdf)/asdf.sh
+  . $(brew --prefix asdf)/libexec/asdf.sh
 fi
diff --git a/skhdrc b/skhdrc
new file mode 100644 (file)
index 0000000..f46d36d
--- /dev/null
+++ b/skhdrc
@@ -0,0 +1,225 @@
+#  NOTE(koekeishiya): A list of all built-in modifier and literal keywords can
+#                     be found at https://github.com/koekeishiya/skhd/issues/1
+#
+#                     A hotkey is written according to the following rules:
+#
+#                       hotkey       = <mode> '<' <action> | <action>
+#
+#                       mode         = 'name of mode' | <mode> ',' <mode>
+#
+#                       action       = <keysym> '[' <proc_map_lst> ']' | <keysym> '->' '[' <proc_map_lst> ']'
+#                                      <keysym> ':' <command>          | <keysym> '->' ':' <command>
+#                                      <keysym> ';' <mode>             | <keysym> '->' ';' <mode>
+#
+#                       keysym       = <mod> '-' <key> | <key>
+#
+#                       mod          = 'modifier keyword' | <mod> '+' <mod>
+#
+#                       key          = <literal> | <keycode>
+#
+#                       literal      = 'single letter or built-in keyword'
+#
+#                       keycode      = 'apple keyboard kVK_<Key> values (0x3C)'
+#
+#                       proc_map_lst = * <proc_map>
+#
+#                       proc_map     = <string> ':' <command> | <string>     '~' |
+#                                      '*'      ':' <command> | '*'          '~'
+#
+#                       string       = '"' 'sequence of characters' '"'
+#
+#                       command      = command is executed through '$SHELL -c' and
+#                                      follows valid shell syntax. if the $SHELL environment
+#                                      variable is not set, it will default to '/bin/bash'.
+#                                      when bash is used, the ';' delimeter can be specified
+#                                      to chain commands.
+#
+#                                      to allow a command to extend into multiple lines,
+#                                      prepend '\' at the end of the previous line.
+#
+#                                      an EOL character signifies the end of the bind.
+#
+#                       ->           = keypress is not consumed by skhd
+#
+#                       *            = matches every application not specified in <proc_map_lst>
+#
+#                       ~            = application is unbound and keypress is forwarded per usual, when specified in a <proc_map>
+#
+#  NOTE(koekeishiya): A mode is declared according to the following rules:
+#
+#                       mode_decl = '::' <name> '@' ':' <command> | '::' <name> ':' <command> |
+#                                   '::' <name> '@'               | '::' <name>
+#
+#                       name      = desired name for this mode,
+#
+#                       @         = capture keypresses regardless of being bound to an action
+#
+#                       command   = command is executed through '$SHELL -c' and
+#                                   follows valid shell syntax. if the $SHELL environment
+#                                   variable is not set, it will default to '/bin/bash'.
+#                                   when bash is used, the ';' delimeter can be specified
+#                                   to chain commands.
+#
+#                                   to allow a command to extend into multiple lines,
+#                                   prepend '\' at the end of the previous line.
+#
+#                                   an EOL character signifies the end of the bind.
+
+# add an on_enter command to the default mode
+# :: default : chunkc border::color 0xff775759
+#
+# defines a new mode 'test' with an on_enter command, that captures keypresses
+# :: test @ : chunkc border::color 0xff24ccaa
+#
+# from 'default' mode, activate mode 'test'
+# cmd - x ; test
+#
+# from 'test' mode, activate mode 'default'
+# test < cmd - x ; default
+#
+# launch a new terminal instance when in either 'default' or 'test' mode
+# default, test < cmd - return : open -na /Applications/Terminal.app
+
+# application specific bindings
+#
+# cmd - n [
+#     "kitty"       : echo "hello kitty"
+#     *             : echo "hello everyone"
+#     "qutebrowser" : echo "hello qutebrowser"
+#     "terminal"    ~
+#     "finder"      : false
+# ]
+
+# specify a file that should be included as an additional config-file.
+# treated as an absolutepath if the filename begins with '/' otherwise
+# the file is relative to the path of the config-file it was loaded from.
+#
+# .load "/Users/Koe/.config/partial_skhdrc"
+# .load "partial_skhdrc"
+
+# prevent skhd from monitoring events for specific applications.
+#
+# .blacklist [
+#    "kitty"
+#    "terminal"
+#    "qutebrowser"
+# ]
+
+# open terminal, blazingly fast compared to iTerm/Hyper
+alt - return : /Applications/kitty.app/Contents/MacOS/kitty --single-instance -d ~
+
+# open qutebrowser
+# cmd + shift - return : ~/Scripts/qtb.sh
+
+# open mpv
+# cmd - m : open -na /Applications/mpv.app $(pbpaste)
+
+# focus window
+alt - h : yabai -m window --focus west
+alt - j : yabai -m window --focus south
+alt - k : yabai -m window --focus north
+alt - l : yabai -m window --focus east
+
+# swap managed window
+shift + alt - h : yabai -m window --swap west
+shift + alt - j : yabai -m window --swap south
+shift + alt - k : yabai -m window --swap north
+shift + alt - l : yabai -m window --swap east
+
+# move managed window
+shift + ctrl + alt - h : yabai -m window --warp west
+shift + ctrl + alt - j : yabai -m window --warp south
+shift + ctrl + alt - k : yabai -m window --warp north
+shift + ctrl + alt - l : yabai -m window --warp east
+
+# balance size of windows
+shift + alt - 0 : yabai -m space --balance
+
+# make floating window fill screen
+shift + alt - up     : yabai -m window --grid 1:1:0:0:1:1
+
+# make floating window fill left-half of screen
+shift + alt - left   : yabai -m window --grid 1:2:0:0:1:1
+shift + alt - right   : yabai -m window --grid 1:2:1:0:1:1
+
+# create desktop, move window and follow focus - uses jq for parsing json (brew install jq)
+# shift + cmd - n : yabai -m space --create && \
+#                   index="$(yabai -m query --spaces --display | jq 'map(select(."is-native-fullscreen" == false))[-1].index')" && \
+#                   yabai -m window --space "${index}" && \
+#                   yabai -m space --focus "${index}"
+
+# fast focus desktop
+# cmd + alt - x : yabai -m space --focus recent
+# cmd + alt - 1 : yabai -m space --focus 1
+
+# send window to desktop and follow focus
+# shift + cmd - z : yabai -m window --space next; yabai -m space --focus next
+shift + alt - 1 : yabai -m window --space  1; yabai -m space --focus 1
+shift + alt - 2 : yabai -m window --space  2; yabai -m space --focus 2
+shift + alt - 3 : yabai -m window --space  3; yabai -m space --focus 3
+shift + alt - 4 : yabai -m window --space  4; yabai -m space --focus 4
+shift + alt - 5 : yabai -m window --space  5; yabai -m space --focus 5
+shift + alt - 6 : yabai -m window --space  6; yabai -m space --focus 6
+shift + alt - 7 : yabai -m window --space  7; yabai -m space --focus 7
+shift + alt - 8 : yabai -m window --space  8; yabai -m space --focus 8
+shift + alt - 9 : yabai -m window --space  9; yabai -m space --focus 9
+shift + alt - 0 : yabai -m window --space  0; yabai -m space --focus 0
+
+# focus monitor
+# ctrl + alt - z  : yabai -m display --focus prev
+shift + ctrl - 1  : yabai -m display --focus 1
+shift + ctrl - 2  : yabai -m display --focus 2
+shift + ctrl - 3  : yabai -m display --focus 3
+
+# send window to monitor and follow focus
+# ctrl + cmd - c  : yabai -m window --display next; yabai -m display --focus next
+# ctrl + cmd - 1  : yabai -m window --display 1; yabai -m display --focus 1
+shift + ctrl + alt - 1  : yabai -m window --display 1; yabai -m display --focus 1
+shift + ctrl + alt - 2  : yabai -m window --display 2; yabai -m display --focus 2
+shift + ctrl + alt - 3  : yabai -m window --display 3; yabai -m display --focus 3
+
+# move floating window
+# shift + ctrl - a : yabai -m window --move rel:-20:0
+# shift + ctrl - s : yabai -m window --move rel:0:20
+
+# increase window size
+shift + alt - a : yabai -m window --resize --left:-20:0
+shift + alt - s : yabai -m window --resize --bottom:0:20
+shift + alt - w : yabai -m window --resize --top:0:-20
+shift + alt - d : yabai -m window --resize --right:20:0
+
+# decrease window size
+# shift + cmd - s : yabai -m window --resize bottom:0:-20
+# shift + cmd - w : yabai -m window --resize top:0:20
+shift + ctrl+ alt - a : yabai -m window --resize --right:-20:0
+shift + ctrl+ alt - s : yabai -m window --resize --top:0:20
+shift + ctrl+ alt - w : yabai -m window --resize --bottom:0:-20
+shift + ctrl+ alt - d : yabai -m window --resize --left:20:0
+
+# set insertion point in focused container
+ctrl + alt - h : yabai -m window --insert west
+ctrl + alt - j : yabai -m window --insert south
+ctrl + alt - k : yabai -m window --insert north
+ctrl + alt - l : yabai -m window --insert east
+
+# toggle window zoom
+shift + alt - z : yabai -m window --toggle zoom-parent
+shift + ctrl + alt - z : yabai -m window --toggle zoom-fullscreen
+
+# toggle window split type
+shift + alt - e : yabai -m window --toggle split
+
+# float / unfloat window and center on screen
+shift + alt - t : yabai -m window --toggle float --grid 4:4:1:1:2:2
+
+# toggle sticky(+float), topmost, picture-in-picture
+shift + alt - p : yabai -m window --toggle sticky --toggle topmost --toggle pip
+
+# rotate tree
+shift + alt - r : yabai -m space --rotate 90
+
+# mirror tree y-axis
+shift + alt - y : yabai -m space --mirror y-axis
+
+# mirror tree x-axis
+shift + alt - x : yabai -m space --mirror x-axis
index 4ced1d4c19864b2cf676b86e93a7d7d4965eb784..50fe5e1024d9d6b1a136140975569a43c21a6022 100644 (file)
@@ -16,11 +16,11 @@ endif
 
 let g:colors_name = "rbdr"
 
-hi Normal guifg=#FFF1E8 guibg=#232323
+hi Normal guifg=#FFF1E8 guibg=none
 hi Comment guifg=#FF55FF
 hi Cursor guifg=#232323   guibg=#FFEC27
 hi LineNr          guifg=#555555 guibg=#232323
-hi NonText         guifg=#555555
+hi NonText         guifg=#555555 guibg=none
 hi SpecialKey      guifg=#555555
 
 hi Boolean guifg=#FF55FF
index 0f69a9e4f80c63e1df58f5e07b7f18e8e239e3d4..ad391220e4aa02628f21fe9edda9fd56aae82489 100644 (file)
@@ -14,7 +14,7 @@ alias ta="tmux attach -t"
 alias tn="tmux new -s"
 
 # Simple python server
-alias spawn-server="python -m SimpleHTTPServer"
+alias spawn-server="python -m http.server 9000"
 
 # Git aliases
 alias g='git'
@@ -28,7 +28,7 @@ alias gm='git merge'
 alias gp='git push'
 
 # Graphicsmagick override
-alias grm="/usr/local/bin/gm"
+alias grm="$(brew --prefix)/bin/gm"
 
 # JS friendly tree
 alias arbol="tree -I 'node_modules|bower_components|doc|__pycache__|\.pyc'"