Skip to content

lmburns/dotfiles

Repository files navigation

dotfiles

Contents

There are several more configuration file than the ones listed in contents. These are the ones that have been configured the most.

Colorschemes

Alacritty Colorscheme

  • The actual colors may not match the displayed colors
  • The alacritty theme file can be found here

Displayed Colors

{b,f}ground Red Green Yellow Blue Magenta Cyan
#221a02 #dc3958 #088649 #f79a32 #733e8b #7e5053 #088649
#221a02 #dc3958 #088649 #f79a32 #733e8b #7e5053 #088649
#c2a383 #f14a68 #a3b95a #f79a32 #dc3958 #fe8019 #4c96a8
#c2a383 #f14a68 #a3b95a #f79a32 #dc3958 #fe8019 #4c96a8

Neovim Color

Plug 'lmburns/kimbox'
colorscheme kimbox

Displayed Colors

#39260E #291804 #EF1D55 #DC3958 #FF5813 #FF9500 #819C3B
#39260E #291804 #EF1D55 #DC3958 #FF5813 #FF9500 #819C3B
#7EB2B1 #4C96A8 #98676A #A06469 #7F5D38 #A89984 #D9AE80
#7EB2B1 #4C96A8 #98676A #A06469 #7F5D38 #A89984 #D9AE80

AutoKey

  • AutoKey is a very useful utility on MacOS that allows for global keybindings.
  • The keybindings that are there mimic Vim's functionality when holding caps lock.
  • When ⇪ Caps lock is held down it is mapped to:
    • ⌃ Control + ⌥ Option + ⌘ Command + ⇧ Shift
  • When ⇪ Caps lock is pressed it is mapped to ⎋ Escape
  • To get ⇪ Caps lock you need to press left ⇧ Shift then right ⇧ Shift
  • While holding ⇪ Caps lock, pressing the following keys will do these actions:
Main AutoKey Mappings
Key Action
j down
k up
h left
l right

TODO:

| 0 | beginning of line | | 4 | end of line (close enough to $) | | gg | beginning of document | | G | end of document | | b | move backwards a word | | w | move forward a word | | u | highlight all words to the left | | i | highlight one word to the left | | o | highlight one word the right | | p | highlight all words to the right | | yy | copy | | J | ⌥ Option + ⌃ Control + | | K | ⌥ Option + ⌃ Control + |


sxhkd

  • sxhkdrc
  • Hyper = Ctrl + Alt + Cmd + Shift
Overall keybindings
Keys Action
Super + Shift + Escape Restart bspwm
Super + Shift + x Restart sxhkd
Super + Shift + p Restart polybar
Super + Return Launch alacritty
Super + Ctrl + Return Launch tdrop
Hyper + d Launch rofi -show drun
Hyper + x (release) - x Launch rofi -show drun
Hyper + x (release) - b Launch rofi -show window
Hyper + b Launch $BROWSER
Hyper + p Launch pcmanfm
Hyper + . Launch thunderbird
Hyper + n dunsctl history-pop
Hyper + N dunsctl close-all
Alt + Space dmenu app launcher
Ctrl + Alt + p prs password launcher
Super + Delete Lock screen with xidlehook
Super + Shift + q Kill window
Alt + Ctrl + Shift + x Kill window
Super + Shift + c Close window
Alt + Shift + x Close window
Super + m rofi view minimized
Super + Shift + m Hide (minimize) window
Super + Ctrl + m Focus last minimized window
F11 Remap keys
F10 caffeinate (xidlehook) on
Shift + F10 caffeinate (xidlehook) off
Additional keybindings (extending function keys)
Keys Action
XF86AudioMute Toggle pulseaudio mute
XF86AudioLowerVolume Decrease pulseaudio -5%
XF86AudioRaiseVolume Increase pulseaudio +5%
Shift + XF86AudioMute Bluetooth - Toggle pulseaudio mute
Shift + XF86AudioLowerVolume Bluetooth - Decrease pulseaudio -5%
Shift + XF86AudioRaiseVolume Bluetooth - Increase pulseaudio +5%
Hyper + XF86AudioPlay playerctl play-pause
Hyper + XF86AudioPrev playerctl previous
Hyper + XF86AudioNext playerctl next
Print flameshot full screen
Shift + Print flameshot gui
Super + Print flameshot screen pick
Ctrl + Shift + 3 Alternative full screen-capture
Ctrl + Shift + 4 Alternative region screen-capture
Ctrl + Shift + 5 Alternative window screen-capture
Super + F1 ncmpcpp
Super + F4 playerctl previous
Super + F5 playerctl play-pause
Super + F6 playerctl next
Super + F8 mailsync
Super + F9 dmenumount
Super + F10 dmenuumount
XF86Mail Launch neomutt
XF86MonBrightnessDown xbacklight decrease 15
XF86MonBrightnessUp xbacklight increase 15
Swapping windows keybindings
Swapping
Shift + Alt h Swap west
Shift + Alt j Swap south
Shift + Alt k Swap north
Shift + Alt l Swap east
Focusing windows keybindings
Focusing
Alt + h Focus west
Alt + j Focus south
Alt + k Focus north
Alt + l Focus east
Super + , Focus last (cyclic)
Super + c Focus last
Super + C Focus next
Super + c Focus last
Super + j Focus next
Super + k Focus last
Super + o Focus older
Super + i Focus newer
Alt + Ctrl + Shift + h Pre-select west
Alt + Ctrl + Shift + j Pre-select south
Alt + Ctrl + Shift + k Pre-select north
Alt + Ctrl + Shift + l Pre-select east
Alt + Ctrl + Shift + c Pre-select cancel
Resizing windows keybindings
Resizing
L-Ctrl + Alt + h Resize left
L-Ctrl + Alt + j Resize bottom
L-Ctrl + Alt + k Resize top
L-Ctrl + Alt + l Resize right
L-Ctrl + Alt + 0 Equalize
Floating windows keybindings
Floating
Hyper + Space Toggle float
Super + Ctrl + h Resize west
Super + Ctrl + j Resize south
Super + Ctrl + k Resize north
Super + Ctrl + l Resize east
Hyper + e Cycle next floating window
Hyper + c (release) - h Move floating west
Hyper + c (release) - j Move floating south
Hyper + c (release) - k Move floating north
Hyper + c (release) - l Move floating east
Moving windows keybindings
Moving Window
Hyper + f Fullscreen layout
Hyper + [ Fullscreen next
Hyper + ] Fullscreen previous
Hyper + m Monocle layout
Hyper + r Rotate 90 degrees

TODO:

| Shift + Alt + x | Mirror x-axis | | Shift + Alt + y | Mirror y-axis |

Window stacks (monocle) keybindings
Stacks
Hyper + m Monocle layout
Super + j Go to next window (in or out of stack)
Super + k Go to prev window (in or out of stack)
Super + Shift + j View layer underneath (no focus)
Desktop keybindings
Desktop
Alt + Left Desktop previous
Alt + Right Desktop next
Super + [ Desktop previous
Super + ] Desktop next
Super + grave Node last
Super + tab Desktop last
Super + [0-9] Desktop focus
Super + Shift + [0-9] Send window to desktop
Continuous input keybindings

These are keybindings where after the '(release)', the previous keys no longer need to be held and the key following the release can be pressed without holding any modifiers. It is the same kind of idea that a tmux binding like bind -r H resize-pane -L 2 does.

Continuous
Hyper + c (release) - h Resize window west
Hyper + c (release) - j Resize window south
Hyper + c (release) - k Resize window north
Hyper + c (release) - l Resize window east
Hyper + c (release) - [ Dynamic gaps shrink
Hyper + c (release) - ] Dynamic gaps enlarge
Hyper + c (release) - Left Move floating west
Hyper + c (release) - Up Move floating north
Hyper + c (release) - Down Move floating south
Hyper + c (release) - Right Move floating east

ZSH Functions

zsh Functions
 $ pflist                                                 【  ~/.conf/zs/functions】─╯
========================================================================================
acc_print                  fancify text
@append_dir-history-var    helper function for per-dir-hist
arc.list                   list contents of archive
aurview                    Temporarily look at an aur package
autoenv-files              NICHOLAS85: find all autoenv zsh files and edit
be                         use fzf to edit bookmark with buku
bindkey::help              list bindkeys prettily
bkpdir                     Backup current directory
bo                         use fzf to open bookmark with buku
bot                        use fzf to open bookmark with buku (search by tag first)
bow2                       a copy of bow but as a zsh func
.btitle                    buku - change title
.btm                       buku - remove tags
.btp                       buku -- add tags
capzsh                     Dumps all functions/vars/commands etc
ccheat                     cheatsheet of cheat and tldr
cdown                      countdown timer
cdownq                     countdown timer; no display
cdrc                       my modification of cdr
cdreal                     cd realpath
cf                         Create lazily loaded Functions
cfile                      copy contents of file to clipboard
chpwd_ls                   func ran on every cd
@chwpd_dir-history-var     helper function for per-dir-hist
codeline                   get specific lang lines colorized
delta                      delta variable column width side by side
deploy-code
dkill                      interactively kill process with dmenu
docka                      select a docker container to start and attach to
dockrm                     select a docker container to remove
dockrmi                    select a docker image or images to remove
docks                      select a running docker container to stop
exchange                   swap files
_ex_cmd                    Helper for vbindkey (taken from marlonrichert)
explainperm                convert letter permissions to octal
fbd                        cd to selected parent directory
fcd                        change directories with fzf
fcd-zle                    change directories with fzf
fcq                        use copyq to view clipboard history (non-tmux)
fcqt                       use copyq to view clipboard history (tmux)
fcs                        get git commit sha
fds                        list file descriptors
fed                        open the selected file with the default editor
fenv                       search environment vars with fzf
ffig                       figlet font selector
fiff                       using ripgrep combined with preview
fim                        open script in editor (this one does functions)
fjj                        autojump fzf
fjrnl                      search JRNL headlines
fkill                      interactively kill process with fzf
flc                        lolcate fzf
fld                        lolcate fzf default (HOME)
flg                        lolcate fzf
fll                        cd to a directory file is in
flp                        lolcate fzf projects
fman                       fzf man pages
fmates                     use fzf with mates contacts open mutt
fmpc                       fzf mpd
fpdf                       search directory for pdf and open in zathura
frd                        fzf recent directories
fsearch                    search fonts on system
fset                       search set items
fssh                       fzf ssh
ftags                      search ctags
ftm                        create new tmux session, or switch
g1all                      Iterates over .git directories, runs git "$@"
g1zip                      Creates basename pwd-date archive
getpid                     get pid and pipe to pstree
gkey                       print keyboard shortcuts to application - iteractive option
godoc                      colorize go docs
gsha                       show sha of branch
help::glob                 show a help message about globbing
hgrep                      grep history
hist_stat                  zsh history stats
id_process                 get num of process by id
inputbox
jotoday                    Show journalctl logs from a given date
jrnlimport                 import file to jrnl
listening                  listen on port entered
listports                  list open ports
lowercasecurdir            lowercase every file in current dir
lsafter                    list files after a date
lsbefore                   list files before a date
macho-zle                  macho for the use of zle
mksub                      creates a subdir, & moves all files or dirs ...
mp3                        use youtube-dl to get audio
ngu                        get git repo url
old_fk                     fzf rualdi and dirstack combined
oomscore                   list processes likely to be killed first when memory is short
opts
p10k::status               show description of p10k parts
pblist                     lists mybin funcs with their embedded descriptions
perldoc                    wrapper to colorize perldoc man pages
pflist                     lists ZDOTDIR/functions/* with their embedded descriptions
pier-exec                  execute pier command colorfully
pllist                     lists mybin linux funcs with their embedded descriptions
printc                     escape code for colors
prompt_my_per_dir_status   helper function for per-dir-hist
rel                        print the relative path of 2 files
rm                         remove wrapper depending on if root
rmhist                     remove a line from history
run-multi                  run tasks in parallel
setopt_wrap
sudo                       sudo wrapper to allow aliases
suppress                   generates a function named  which:
tmfiles                    Display tags and files with tmsu
tmjson                     Convert tmsu tags and files to json
tmls                       Display tags and files with tmsu in current dir
tmlsa                      Display tags of all files with tmsu in current dir
tmm                        attach to tmux session or create new
tmtag                      use tmsu to either edit a file or cd to dir
tm-tagcount                tmsu list tag and count
towebm                     convert an mp4 to a webm
um                         wrapper to colorize um man pages
urlshort                   shorten url with tinyurl
vbindkey                   vim bindkey
vii                        open file interactively with twf
whim                       open script/function/alias
wtag                       use wutag to either edit a file or cd to dir
xevk                       easy key reader
zdr                        fzf-extras cd to parent directory
zed2                       zed2
zicompinit_fast            faster & more efficient compinit
zman-mine                  Searches zshall with special keyword () matching
zsh-help                   easier way to access zsh manual - taken from ZSH
zst
ztes                       Searches zshall with special keyword () matching
zuiprompt                  TODO: Create a prompt used for other scripts with zui
========================================================================================

Scripts

There are many scripts found within this repo.

  • pblist (b = bin) will list all regular scripts
  • pllist (l = Linux) will list all Linux-specific scripts