diff options
60 files changed, 445 insertions, 0 deletions
diff --git a/.chezmoiignore b/.chezmoiignore new file mode 100644 index 0000000..cbbf4c0 --- /dev/null +++ b/.chezmoiignore @@ -0,0 +1 @@ +UNLICENSE diff --git a/.gitmodules b/.gitmodules index e69de29..604f4ef 100644 --- a/.gitmodules +++ b/.gitmodules @@ -0,0 +1,4 @@ +[submodule "dot_config/nvim/pack/vim-toastpack"] + path = dot_config/nvim/pack/vim-toastpack + url = https://github.com/5paceToast/vim-toastpack.git + branch = master diff --git a/UNLICENSE b/UNLICENSE new file mode 100644 index 0000000..fdddb29 --- /dev/null +++ b/UNLICENSE @@ -0,0 +1,24 @@ +This is free and unencumbered software released into the public domain. + +Anyone is free to copy, modify, publish, use, compile, sell, or +distribute this software, either in source code form or as a compiled +binary, for any purpose, commercial or non-commercial, and by any +means. + +In jurisdictions that recognize copyright laws, the author or authors +of this software dedicate any and all copyright interest in the +software to the public domain. We make this dedication for the benefit +of the public at large and to the detriment of our heirs and +successors. We intend this dedication to be an overt act of +relinquishment in perpetuity of all present and future rights to this +software under copyright law. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR +OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to <https://unlicense.org> diff --git a/dot_anypaste-plugins/executable_anyclone b/dot_anypaste-plugins/executable_anyclone new file mode 100644 index 0000000..6fc03d5 --- /dev/null +++ b/dot_anypaste-plugins/executable_anyclone @@ -0,0 +1,21 @@ +#!/bin/sh +case $1 in + check_eligibility) + true + ;; + upload) + d=$(date +%Y/%m/%d) + rclone copyto "$ap_path" "fafnir:shared/anypaste/$d/$ap_human_name" + echo >&2 + echo "Direct: https://minio.toast.cafe/shared/anypaste/$d/$ap_human_name" + echo + ;; + get_info) + echo '[name]' + echo 'RClone' + echo '[description]' + echo 'LMAO' + echo '[tags]' + echo 'private' + echo 'direct' +esac diff --git a/dot_anypaste-plugins/executable_brpaste b/dot_anypaste-plugins/executable_brpaste new file mode 100644 index 0000000..7d36ca4 --- /dev/null +++ b/dot_anypaste-plugins/executable_brpaste @@ -0,0 +1,28 @@ +#!/bin/sh + +: "${brpaste_host:=https://brpaste.xyz}" + +case $1 in + check_eligibility) + [[ $ap_mime == text/* ]] + ;; + upload) + brpaste_id=$(curl -#fF "data=<$ap_path" "$brpaste_host") \ + || { echo 'ERROR: Upload failed!' >&2 && exit 1; } + echo >&2 + echo "Link: $brpaste_host/$brpaste_id" + echo "Direct: $brpaste_host/raw/$brpaste_id" + echo + ;; + get_info) + echo '[name]' + echo 'BRPaste' + echo '[description]' + echo 'A pastebin so fast, it burns rubber.' + echo '[tags]' + echo 'private' + echo 'direct' + echo + echo '[optional_config]' + echo 'brpaste_host:Hosted instance to use (default: https://brpaste.xyz)' +esac diff --git a/dot_config/beets/config.yaml b/dot_config/beets/config.yaml new file mode 100644 index 0000000..3c83952 --- /dev/null +++ b/dot_config/beets/config.yaml @@ -0,0 +1,11 @@ +directory: ~/Music +library: ~/.local/share/beets.db +incremental: yes + +plugins: bpd edit fetchart fromfilename info inline lastgenre mbsync replaygain scrub web + +bpd: + password: musicalthrones + +replaygain: + backend: gstreamer diff --git a/dot_config/git/config b/dot_config/git/config new file mode 100644 index 0000000..9c72614 --- /dev/null +++ b/dot_config/git/config @@ -0,0 +1,73 @@ +[alias] + aa = add -A + ap = add -p + bd = branch -D + cs = commit --verbose --gpg-sign + ci = commit --verbose + co = checkout + cb = checkout -b + cp = commit --patch + dc = diff --cached + hr = reset --hard HEAD + last = log -1 --stat + lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %Cblue<%an>%Creset' --abbrev-commit --date=relative --all + pf = push --force + st = status + stat = diff --stat +[apply] + whitespace = warn +[color] + ui = true +[core] + editor = nvim + filemode = false + trustctime = false + whitespace = blank-at-eol,space-before-tab,tab-in-indent,tabwidth=4 +[credential] + helper = cache --timeout=3600 +[help] + autocorrect = 1 +[merge] + tool = vimdiff +[mergetool] + keepbackup = false + keeptemporaries = false + prompt = false +[pager] + stat = false +[pull] + rebase = true +[push] + default = simple +[sendemail] + from = toast+misc@toast.cafe + smtpencryption = tls + smtpserver = smtp.soverin.net + smtpserverport = 587 + smtpuser = toast@toast.cafe +[status] + branch = true + short = true +[user] + email = toast@toast.cafe + name = Chloe Kudryavtsev + +[url "git@github.com:5paceToast/"] + insteadOf = "st:" + +[url "https://github.com/"] + insteadOf = "gh:" + +[url "git@gitlab.com:SpaceToast/"] + insteadOf = "lst:" + +[url "https://gitlab.com/"] + insteadOf = "gl:" + +[filter "lfs"] + smudge = git-lfs smudge -- %f + process = git-lfs filter-process + required = true + clean = git-lfs clean -- %f + +# vim: ft=gitconfig diff --git a/dot_config/luarocks/config.lua b/dot_config/luarocks/config.lua new file mode 100644 index 0000000..3650446 --- /dev/null +++ b/dot_config/luarocks/config.lua @@ -0,0 +1,14 @@ +-- LuaRocks configuration + +rocks_trees = { + { name = "user", root = home .. "/.local/luarocks" }; + { name = "system", root = "/usr" }; +} +lua_interpreter = "lua5.3"; +variables = { + LUA_DIR = "/usr"; + LUA_BINDIR = "/usr/bin"; +} + +home_tree = home .. "/.local/luarocks" +homeconfdir = home .. "/.config/luarocks" diff --git a/dot_config/mpv/mpv.conf b/dot_config/mpv/mpv.conf new file mode 100644 index 0000000..a931bad --- /dev/null +++ b/dot_config/mpv/mpv.conf @@ -0,0 +1,16 @@ +[default] +volume=80 + +hwdec=auto-safe + +ao=pulse +vo=gpu +gpu-api=vulkan +video-sync=display-resample + +screenshot-format=png +screenshot-directory=~/Pictures/Screenshots/mpv + +[twitch] +osc=no +input-conf=~/.config/mpv/twitch-input.conf diff --git a/dot_config/mpv/script-opts/acompressor.conf b/dot_config/mpv/script-opts/acompressor.conf new file mode 100644 index 0000000..892c0ba --- /dev/null +++ b/dot_config/mpv/script-opts/acompressor.conf @@ -0,0 +1 @@ +default_enable=yes diff --git a/dot_config/mpv/scripts/symlink_acompressor.lua b/dot_config/mpv/scripts/symlink_acompressor.lua new file mode 100644 index 0000000..c3ab129 --- /dev/null +++ b/dot_config/mpv/scripts/symlink_acompressor.lua @@ -0,0 +1 @@ +/usr/share/mpv/scripts/acompressor.lua
\ No newline at end of file diff --git a/dot_config/mpv/twitch-input.conf b/dot_config/mpv/twitch-input.conf new file mode 100644 index 0000000..46aea4c --- /dev/null +++ b/dot_config/mpv/twitch-input.conf @@ -0,0 +1,21 @@ +WHEEL_UP ignore +WHEEL_DOWN ignore +RIGHT ignore +LEFT ignore +UP ignore +DOWN ignore +Shift+RIGHT ignore +Shift+LEFT ignore +Shift+UP ignore +Shift+DOWN ignore +Ctrl+LEFT ignore +Ctrl+RIGHT ignore +Shift+PGUP ignore +Shift+PGDWN ignore +Shift+BS ignore +Shift+Ctrl+BS ignore +FORWARD ignore +REWIND ignore +NEXT ignore +PREV ignore +l ignore diff --git a/dot_config/nvim/.chezmoiignore b/dot_config/nvim/.chezmoiignore new file mode 100644 index 0000000..8b08707 --- /dev/null +++ b/dot_config/nvim/.chezmoiignore @@ -0,0 +1,4 @@ +* +!init.vim +!vimrc +!pack diff --git a/dot_config/nvim/pack/vim-toastpack b/dot_config/nvim/pack/vim-toastpack new file mode 160000 +Subproject 98bf18cc6dd8beeeafc0879912c4942038c75f4 diff --git a/dot_config/nvim/symlink_init.vim b/dot_config/nvim/symlink_init.vim new file mode 100644 index 0000000..c9a3c9c --- /dev/null +++ b/dot_config/nvim/symlink_init.vim @@ -0,0 +1 @@ +vimrc
\ No newline at end of file diff --git a/dot_config/nvim/vimrc b/dot_config/nvim/vimrc new file mode 100644 index 0000000..7003af6 --- /dev/null +++ b/dot_config/nvim/vimrc @@ -0,0 +1,82 @@ +set nocompatible + +" annoyances +set backspace=2 " aka indent,eol,start. vi-compat backspace is annoying +set clipboard=unnamedplus " Use system clipboard ('+' register) +set ffs=unix,dos,mac " default to UNIX encodings (\n) +set hidden " don't delete buffers when you switch through them +set magic " \. not . for literal dots and so on +set nobackup " stop bothering me with backups! +set noerrorbells " stop. bothering. me. with. noises. +set nofoldenable " don't start with everything folded +set nolazyredraw " update the screen when it's time to update it +set noswapfile " no ~ files (TODO: maybe have a swap/undo dir instead) +set noundofile " no .un files +let g:is_bash=1 " yes, use bash for highlighting. at least for now. + +" major annoyances +if !has('nvim') " vim fails to into colors unless you claim to be xterm + let oldterm = &term + if &term =~ "-256color$" " neovim is fine tho + set term=xterm-256color + endif + if oldterm =~? '\(tmux\|screen\)' + set t_ut= " tmux/screen need xterm-* but break background cleaning + endif " neovim should still be fine +endif +if has('nvim') + set rtp^=/usr/share/vim/vimfiles/ " let vim piggy back off of vim packages +endif + +" ui +set background=dark " white text on black, get over it +set laststatus=2 " always have a status line (2=always) +set mat=2 " see: showmatch. do it for less long +set number " line numbers +set scrolloff=2 " 2 lines around the cursor at all times (remove?) +set showmatch " quickly show where the matching (, etc is +syntax on " syntax highlighting is not evil +set termguicolors " truecolor +set ttyfast " I swear, this isn't 1998 +set t_Co=256 " you might *think* I don't have colors. I do tho +set visualbell " you can have the window blink tho +set wrap " wrap > broken +if !has('nvim') " plsgofasts (no meaning on neovim) + set ttymouse=xterm2 +endif +" ui-plugins +let g:airline_powerline_fonts=1 " we have powerline fonts! :D +let g:airline#extensions#tabline#enabled=1 " buffers=tabs when tabc=1 + +" interaction +filetype plugin on " enable ftplugin stuff +filetype indent on " allow custom indents per ft - e.g go/elixir 2-spaces +set loadplugins " plugins = good +set mouse=a " meh, mice can be convenient +set pastetoggle=<F2> " press F2 to toggle "paste" mode +set smartindent " this is the less annoying variant +set spelllang=en " I speaken ze ingles +set whichwrap+=<,>,h,l " hl and arrows can switch lines + +" tabs (maybe move to annoyances later) +set expandtab " tabs are spaces +set shiftwidth=4 " indention: 4 +set softtabstop=4 " see tabstop +set tabstop=4 " tabs count as 4 spaces +" tab-plugins +let g:vim_markdown_folding_disabled=1 " folding's on + +" mappings +" F12 to reparse syntax +noremap <F12> <Esc>:syntax sync fromstart<CR> +inoremap <F12> <C-o>:syntax sync fromstart<CR> +" gt to re-align text based on previous pattern +noremap gt :Tabularize<CR> +" :Sprunge to upload current buffer to sprunge.us +command! Sprunge w !curl -F 'sprunge=<-' http://sprunge.us + +color pencil + +if filereadable(glob("~/.vim/vimrc.local")) + source ~/.vim/vimrc.local " overwrite things here +endif diff --git a/dot_config/rofi/config b/dot_config/rofi/config new file mode 100644 index 0000000..b495912 --- /dev/null +++ b/dot_config/rofi/config @@ -0,0 +1,9 @@ +rofi.combi-modi: ssh,drun +rofi.font: Hack 15 +rofi.matching: fuzzy +rofi.modi: combi,run +rofi.parse-known-hosts: true +rofi.sort: true +rofi.sorting-method: fzf +rofi.terminal: alacritty +rofi.theme: /usr/share/rofi/themes/Pop-Dark.rasi diff --git a/dot_config/streamlink/config.tmpl b/dot_config/streamlink/config.tmpl new file mode 100644 index 0000000..7f2f028 --- /dev/null +++ b/dot_config/streamlink/config.tmpl @@ -0,0 +1,10 @@ +player=mpv +verbose-player + +{{- if eq .chezmoi.hostname "LapToast" }} +default-stream=720p,720p60,1080p60,best +{{- else }} +default-stream=best +{{- end }} + +player-passthrough=hls,http,rtmp diff --git a/dot_config/tmux/linux-clipboard.tmux b/dot_config/tmux/linux-clipboard.tmux new file mode 100644 index 0000000..5b2a711 --- /dev/null +++ b/dot_config/tmux/linux-clipboard.tmux @@ -0,0 +1,6 @@ +bind -T copy-mode MouseDragEnd1Pane send -X copy-pipe-and-cancel "xsel -ib" +bind -T copy-mode-vi MouseDragEnd1Pane send -X copy-pipe-and-cancel "xsel -ib" + +bind -n M-C-v run "xsel -ob | tmux load-buffer -; tmux paste-buffer" + +# vim: ft=tmux diff --git a/dot_config/tmux/tmux.conf b/dot_config/tmux/tmux.conf new file mode 100644 index 0000000..4fd021f --- /dev/null +++ b/dot_config/tmux/tmux.conf @@ -0,0 +1,43 @@ +# --- obvious settings --- +# basics +set -g default-terminal "tmux-256color" # colors +set -g mouse on # mouse mode +set -sg escape-time 10 # fix vim +set -g xterm-keys on # ctrl-arrows, others... + +# 0 is very far away from 1 +set -g base-index 1 +set -g pane-base-index 1 + +# terminal titles +set -g set-titles on +set -g set-titles-string "#T" + +# true colors +set -ga terminal-overrides ",alacritty:RGB" +set -ga terminal-overrides ",*256col*:RGB" +set -ga terminal-overrides ",xterm-kitty:RGB" + +# --- keybinds --- +# splitting +bind | split-window -h +bind - split-window -v +unbind '"' +unbind % + +# alt-direction to switch panes +bind -n M-Left select-pane -L +bind -n M-Right select-pane -R +bind -n M-Up select-pane -U +bind -n M-Down select-pane -D + +# convenient copy/paste +if "uname | grep -q Linux" "source-file ~/.config/tmux/linux-clipboard.tmux" # requires xsel + +# convenience +bind r source-file ~/.config/tmux/tmux.conf + +# local conf +source-file -q ~/.config/tmux/local.tmux + +# vim: ft=tmux diff --git a/dot_local/bin/.keep b/dot_local/bin/.keep new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/dot_local/bin/.keep diff --git a/.gitignore b/dot_local/share/toasty/.gitignore index 3368c47..3368c47 100644 --- a/.gitignore +++ b/dot_local/share/toasty/.gitignore diff --git a/dot_local/share/toasty/.gitmodules b/dot_local/share/toasty/.gitmodules new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/dot_local/share/toasty/.gitmodules diff --git a/.zshrc b/dot_local/share/toasty/.zshrc index c8b42f4..c8b42f4 120000 --- a/.zshrc +++ b/dot_local/share/toasty/.zshrc diff --git a/LICENSE.md b/dot_local/share/toasty/LICENSE.md index 2a7b602..2a7b602 100644 --- a/LICENSE.md +++ b/dot_local/share/toasty/LICENSE.md diff --git a/README.adoc b/dot_local/share/toasty/README.adoc index 8ecf7dd..8ecf7dd 100644 --- a/README.adoc +++ b/dot_local/share/toasty/README.adoc diff --git a/completions/_autosource b/dot_local/share/toasty/completions/_autosource index 35dbccd..35dbccd 100644 --- a/completions/_autosource +++ b/dot_local/share/toasty/completions/_autosource diff --git a/examples/source/enable-shared-history.zsh b/dot_local/share/toasty/examples/source/enable-shared-history.zsh index 9b29c96..9b29c96 100644 --- a/examples/source/enable-shared-history.zsh +++ b/dot_local/share/toasty/examples/source/enable-shared-history.zsh diff --git a/examples/zshrc.local b/dot_local/share/toasty/examples/zshrc.local index 6b74342..6b74342 100644 --- a/examples/zshrc.local +++ b/dot_local/share/toasty/examples/zshrc.local diff --git a/functions/autosource b/dot_local/share/toasty/functions/autosource index 12b6bab..12b6bab 100644 --- a/functions/autosource +++ b/dot_local/share/toasty/functions/autosource diff --git a/functions/brpaste b/dot_local/share/toasty/functions/brpaste index b4cf5ef..b4cf5ef 100644 --- a/functions/brpaste +++ b/dot_local/share/toasty/functions/brpaste diff --git a/functions/sourceall b/dot_local/share/toasty/functions/sourceall index b63c58b..b63c58b 100644 --- a/functions/sourceall +++ b/dot_local/share/toasty/functions/sourceall diff --git a/functions/sprunge b/dot_local/share/toasty/functions/sprunge index c76ed76..c76ed76 100644 --- a/functions/sprunge +++ b/dot_local/share/toasty/functions/sprunge diff --git a/plugins/sudo b/dot_local/share/toasty/plugins/sudo index 0ba8bed..0ba8bed 100644 --- a/plugins/sudo +++ b/dot_local/share/toasty/plugins/sudo diff --git a/plugins/xterm-title b/dot_local/share/toasty/plugins/xterm-title index a57ea03..a57ea03 100644 --- a/plugins/xterm-title +++ b/dot_local/share/toasty/plugins/xterm-title diff --git a/prompts/async b/dot_local/share/toasty/prompts/async index d35f128..d35f128 100644 --- a/prompts/async +++ b/dot_local/share/toasty/prompts/async diff --git a/prompts/prompt_pure_setup b/dot_local/share/toasty/prompts/prompt_pure_setup index a313c83..a313c83 100644 --- a/prompts/prompt_pure_setup +++ b/dot_local/share/toasty/prompts/prompt_pure_setup diff --git a/prompts/prompt_purer_setup b/dot_local/share/toasty/prompts/prompt_purer_setup index f800176..f800176 100644 --- a/prompts/prompt_purer_setup +++ b/dot_local/share/toasty/prompts/prompt_purer_setup diff --git a/prompts/prompt_shellder_setup b/dot_local/share/toasty/prompts/prompt_shellder_setup index 671eac4..671eac4 100644 --- a/prompts/prompt_shellder_setup +++ b/dot_local/share/toasty/prompts/prompt_shellder_setup diff --git a/prompts/prompt_toasty_setup b/dot_local/share/toasty/prompts/prompt_toasty_setup index c10c766..c10c766 100644 --- a/prompts/prompt_toasty_setup +++ b/dot_local/share/toasty/prompts/prompt_toasty_setup diff --git a/source/aliases.zsh b/dot_local/share/toasty/source/aliases.zsh index 69b9c24..69b9c24 100644 --- a/source/aliases.zsh +++ b/dot_local/share/toasty/source/aliases.zsh diff --git a/source/bindkeys.zsh b/dot_local/share/toasty/source/bindkeys.zsh index 0c78646..0c78646 100644 --- a/source/bindkeys.zsh +++ b/dot_local/share/toasty/source/bindkeys.zsh diff --git a/source/completions.zsh b/dot_local/share/toasty/source/completions.zsh index 8c3f0ae..8c3f0ae 100644 --- a/source/completions.zsh +++ b/dot_local/share/toasty/source/completions.zsh diff --git a/source/env.zsh b/dot_local/share/toasty/source/env.zsh index 0da30e0..0da30e0 100644 --- a/source/env.zsh +++ b/dot_local/share/toasty/source/env.zsh diff --git a/source/options.zsh b/dot_local/share/toasty/source/options.zsh index 0f6d0f6..0f6d0f6 100644 --- a/source/options.zsh +++ b/dot_local/share/toasty/source/options.zsh diff --git a/third-party-licenses/LICENSE.OMZ.md b/dot_local/share/toasty/third-party-licenses/LICENSE.OMZ.md index a8e750c..a8e750c 100644 --- a/third-party-licenses/LICENSE.OMZ.md +++ b/dot_local/share/toasty/third-party-licenses/LICENSE.OMZ.md diff --git a/third-party-licenses/LICENSE.pure.txt b/dot_local/share/toasty/third-party-licenses/LICENSE.pure.txt index 654d0bf..654d0bf 100644 --- a/third-party-licenses/LICENSE.pure.txt +++ b/dot_local/share/toasty/third-party-licenses/LICENSE.pure.txt diff --git a/third-party-licenses/LICENSE.purer.txt b/dot_local/share/toasty/third-party-licenses/LICENSE.purer.txt index 654d0bf..654d0bf 100644 --- a/third-party-licenses/LICENSE.purer.txt +++ b/dot_local/share/toasty/third-party-licenses/LICENSE.purer.txt diff --git a/third-party-licenses/LICENSE.shellder.txt b/dot_local/share/toasty/third-party-licenses/LICENSE.shellder.txt index 9a97054..9a97054 100644 --- a/third-party-licenses/LICENSE.shellder.txt +++ b/dot_local/share/toasty/third-party-licenses/LICENSE.shellder.txt diff --git a/zshenv b/dot_local/share/toasty/zshenv index 6bfcdf7..6bfcdf7 100644 --- a/zshenv +++ b/dot_local/share/toasty/zshenv diff --git a/zshrc b/dot_local/share/toasty/zshrc index 33fcbb6..33fcbb6 100644 --- a/zshrc +++ b/dot_local/share/toasty/zshrc diff --git a/dot_zsh/functions/twitch b/dot_zsh/functions/twitch new file mode 100644 index 0000000..8b852f4 --- /dev/null +++ b/dot_zsh/functions/twitch @@ -0,0 +1,6 @@ +#!/bin/zsh +[[ $# -gt 0 ]] || return +(( $+commands[streamlink] )) || return +zstyle -s :function:twitch ${1:l} stream || stream=${1:l} +shift +streamlink twitch.tv/$stream "$@" diff --git a/dot_zsh/plugins/exa b/dot_zsh/plugins/exa new file mode 100644 index 0000000..afdee79 --- /dev/null +++ b/dot_zsh/plugins/exa @@ -0,0 +1,11 @@ +#!/bin/zsh +(( $+commands[exa] )) || return + +# removes default ls-likes, replaces them with exa variants +unalias ls ll l la + +# old ones +alias ls=exa ll='ls -l' l=ll la='l -a' +# extras +alias lr='l -T' +alias lp='lr --git-ignore' diff --git a/dot_zsh/plugins/fuzzy b/dot_zsh/plugins/fuzzy new file mode 100644 index 0000000..ed419c1 --- /dev/null +++ b/dot_zsh/plugins/fuzzy @@ -0,0 +1,27 @@ +#!/bin/zsh +(( $+commands[fd] )) || return # find(1) sucks, not worth without fd + +# if it's not set yet, set it +[[ -z $fuzzy_command ]] && (( $+commands[fzf] )) && fuzzy_command=fzf +[[ -z $fuzzy_command ]] && (( $+commands[sk] )) && fuzzy_command=sk + +local FUZZY_DEFAULT='fd -t f' +local FUZZY_ALT_C='fd -t d' +local FUZZY_CTRL_T="$FUZZY_DEFAULT" + +case $fuzzy_command in + fzf) + export FZF_DEFAULT_COMMAND="$FUZZY_DEFAULT" + export FZF_ALT_C_COMMAND="$FUZZY_ALT_C" + export FZF_CTRL_T_COMMAND="$FUZZY_CTRL_T" + . /usr/share/fzf/key-bindings.zsh + . /usr/share/fzf/completion.zsh + ;; + sk) + export SKIM_DEFAULT_COMMAND="$FUZZY_DEFAULT" + export SKIM_ALT_C_COMMAND="$FUZZY_ALT_C" + export SKIM_CTRL_T_COMMAND="$FUZZY_CTRL_T" + . /usr/share/skim/key-bindings.zsh + . /usr/share/skim/completion.zsh + ;; +esac diff --git a/dot_zsh/source/path.zsh b/dot_zsh/source/path.zsh new file mode 100644 index 0000000..42b8c9d --- /dev/null +++ b/dot_zsh/source/path.zsh @@ -0,0 +1,25 @@ +export CARGO_HOME=~/.local/cargo +export DENO_DIR=~/.local/deno +export GOPATH=~/.local/go +export LUAROCKS_CONFIG=~/.config/luarocks/config.lua + +path+=( + ~/bin + ~/Applications + ~/.local/cargo/bin + ~/.local/go/bin + ~/.local/yarn/bin + ~/.gem/ruby/*/bin(N) +) + +if (( $+commands[luarocks] )); then + PATH="$PATH:$(luarocks path --lr-bin)" # luarocks puts :s in the output + eval $(luarocks path --no-bin) +fi +if (( $+commands[opam] )); then + eval $(opam env) +fi +if (( $+commands[yarn] )) && [[ ! -f ~/.yarnrc ]]; then + yarn config set global-folder ~/.local/yarn/global + yarn config set prefix ~/.local/yarn +fi diff --git a/run_submodules.sh b/run_submodules.sh new file mode 100644 index 0000000..53f9fcf --- /dev/null +++ b/run_submodules.sh @@ -0,0 +1,2 @@ +#!/bin/sh +chezmoi source -- submodule update --init --remote --recursive diff --git a/symlink_bin b/symlink_bin new file mode 100644 index 0000000..aab3518 --- /dev/null +++ b/symlink_bin @@ -0,0 +1 @@ +.local/bin
\ No newline at end of file diff --git a/symlink_dot_tmux.conf b/symlink_dot_tmux.conf new file mode 100644 index 0000000..9e5901d --- /dev/null +++ b/symlink_dot_tmux.conf @@ -0,0 +1 @@ +.config/tmux/tmux.conf
\ No newline at end of file diff --git a/symlink_dot_vim b/symlink_dot_vim new file mode 100644 index 0000000..35dbcb1 --- /dev/null +++ b/symlink_dot_vim @@ -0,0 +1 @@ +.config/nvim
\ No newline at end of file diff --git a/symlink_dot_zshrc b/symlink_dot_zshrc new file mode 100644 index 0000000..12a19bc --- /dev/null +++ b/symlink_dot_zshrc @@ -0,0 +1 @@ +.local/share/toasty/zshrc
\ No newline at end of file |
