Inital commit

This commit is contained in:
2021-04-07 22:56:28 +01:00
commit a4498f2f85
88 changed files with 6055 additions and 0 deletions

96
.config/shell/aliasrc Normal file
View File

@@ -0,0 +1,96 @@
#!/bin/sh
# Use neovim for vim if present
[ -x "$(command -v nvim)" ] && alias vim="nvim" vimdiff="nvim -d"
# Use $XINITRC variable if file exists.
[ -f "$XINITRC" ] && alias startx="startx $XINITRC"
# sudo not required for some system commands
for x in mount umount sv pacman updatedb su ; do
alias $x="sudo $x"
done
# Verbosity and settings that you pretty much just always are going to want.
alias \
cp="cp -iv" \
mv="mv -iv" \
rm="rm -vI" \
bc="bc -ql" \
mkd="mkdir -pv" \
yt="youtube-dl --add-metadata -i" \
yta="yt -x -f bestaudio/best" \
ffmpeg="ffmpeg -hide_banner" \
# Colorize commands when possible.
alias \
ls="ls -hN --color=auto --group-directories-first" \
grep="grep --color=auto" \
diff="diff --color=auto" \
ccat="highlight --out-format=ansi"
# Abbreviating long commands
alias \
ka="killall" \
YT="youtube-viewer" \
sdn="sudo shutdown -h now" \
e="$EDITOR" \
v="$EDITOR" \
p="sudo pacman" \
z="zathura" \
ll="ls -l" \
la="ls -al" \
ag="alias | grep"
# Git aliases
alias \
g="git" \
ga="git add" \
ga="git add --all" \
gb="git branch" \
gba="git branch -a" \
gbd="git branch -d" \
gbD="git branch -D" \
gbs="git bisect" \
gbsb="git bisect bad" \
gbsg="git bisect good" \
gbsr="git bisect reset" \
gbss="git bisect start" \
gc="git commit -v" \
gc!="git commit -v --amend" \
gcn!="git commit -v --no-edit --amend" \
gca="git commit -v -a" \
gca!="git commit -v -a --amend" \
gcan!="git commit -v -a --no-edit --amend" \
gcam="git commit -a -m" \
gcm="git checkout $(git_main_branch)" \
gco="git checkout" \
gcb="git checkout -b" \
gf="git fetch" \
gfa="git fetch --all --prune" \
gd="git diff" \
gl="git pull" \
glg="git log --stat" \
glgg="git log --graph" \
glo="git log --oneline --decorate" \
glgp="git log --stat -p" \
gm="git merge" \
gp="git push" \
grb="git rebase" \
gsb="git status -sb" \
gsh="git show" \
gsps="git show --pretty=short --show-signature" \
gsta="git stash push" \
gstaa="git stash apply" \
gstp="git stash pop" \
gstl="git stash list" \
gsts="git stash show --text" \
gup="git pull --rebase" \
nah="git reset --hard; git clean -df" \
gapa="git add --patch -A" \
gun="git reset --" \
glgm="git log --stat --author=christopher" \
glgpm="git log --stat -p --author=christopher"

22
.config/shell/bm-dirs Normal file
View File

@@ -0,0 +1,22 @@
cac ${XDG_CACHE_HOME:-$HOME/.cache}
cf ${XDG_CONFIG_HOME:-$HOME/.config}
D ${XDG_DOWNLOAD_DIR:-$HOME/Downloads}
d ${XDG_DOCUMENTS_DIR:-$HOME/Tower/Documents}
dt ${XDG_DATA_HOME:-$HOME/.local/share}
h $HOME
m ${XDG_MUSIC_DIR:-$HOME/Tower/Music}
mn /mnt
pp ${XDG_PICTURES_DIR:-$HOME/Tower/Pictures}
sc $HOME/.local/bin
src $HOME/.local/src
vv ${XDG_VIDEOS_DIR:-$HOME/Tower/Videos}
c $HOME/Code
cp $HOME/Code/PHP
cw $HOME/Code/Websites
cj $HOME/Code/JavaScript
cd $HOME/Code/DevOps
cr $HOME/Code/Rust
cm $HOME/Code/MobileApps
cs $HOME/Code/Scala
ct $HOME/Code/Tutorials

16
.config/shell/bm-files Normal file
View File

@@ -0,0 +1,16 @@
bf ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-files
bd ${XDG_CONFIG_HOME:-$HOME/.config}/shell/bm-dirs
cfx ${XDG_CONFIG_HOME:-$HOME/.config}/x11/xresources
cfb ~/.local/src/dwmblocks/config.h
cfv ${XDG_CONFIG_HOME:-$HOME/.config}/nvim/init.vim
cfz $ZDOTDIR/.zshrc
cfa ${XDG_CONFIG_HOME:-$HOME/.config}/shell/aliasrc
cfp ${XDG_CONFIG_HOME:-$HOME/.config}/shell/profile
cfm ${XDG_CONFIG_HOME:-$HOME/.config}/mutt/muttrc
cfn ${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/config
cfu ${XDG_CONFIG_HOME:-$HOME/.config}/newsboat/urls
cfmb ${XDG_CONFIG_HOME:-$HOME/.config}/ncmpcpp/bindings
cfmc ${XDG_CONFIG_HOME:-$HOME/.config}/ncmpcpp/config
cfl ${XDG_CONFIG_HOME:-$HOME/.config}/lf/lfrc
cfL ${XDG_CONFIG_HOME:-$HOME/.config}/lf/scope
cfX ${XDG_CONFIG_HOME:-$HOME/.config}/sxiv/exec/key-handler

19
.config/shell/inputrc Normal file
View File

@@ -0,0 +1,19 @@
$inclue /etc/inputrc
set editing-mode vi
$if mode=vi
set show-mode-in-prompt on
set vi-ins-mode-string \1\e[6 q\2
set vi-cmd-mode-string \1\e[2 q\2
set keymap vi-command
# these are for vi-command mode
Control-l: clear-screen
Control-a: beginning-of-line
set keymap vi-insert
# these are for vi-insert mode
Control-l: clear-screen
Control-a: beginning-of-line
$endif

144
.config/shell/profile Normal file
View File

@@ -0,0 +1,144 @@
#!/bin/zsh
# profile file. Runs on login. Environmental variables are set here.
# Adds `~/.local/bin` to $PATH
export PATH="$PATH:${$(find ~/.local/bin -type d -printf %p:)%%:}"
unsetopt PROMPT_SP
# Default programs
export EDITOR="nvim"
export TERMINAL="alacritty"
export BROWSER="firefox"
# ~/ Clean-up:
export TOWER="$HOME/Tower"
export XDG_CONFIG_HOME="$HOME/.config"
export XDG_DATA_HOME="$HOME/.local/share"
export XDG_CACHE_HOME="$HOME/.cache"
export XDG_DOCUMENTS_DIR="$TOWER/Documents"
export XDG_MUSIC_DIR="$TOWER/Music"
export XDG_PICTURES_DIR="$TOWER/Pictures"
export XDG_VIDEOS_DIR="$TOWER/Videos"
export XINITRC="${XDG_CONFIG_HOME:-$HOME/.config}/x11/xinitrc"
export NOTMUCH_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/notmuch-config"
export GTK2_RC_FILES="${XDG_CONFIG_HOME:-$HOME/.config}/gtk-2.0/gtkrc-2.0"
export LESSHISTFILE="-"
export WGETRC="${XDG_CONFIG_HOME:-$HOME/.config}/wget/wgetrc"
export INPUTRC="${XDG_CONFIG_HOME:-$HOME/.config}/shell/inputrc"
export ZDOTDIR="${XDG_CONFIG_HOME:-$HOME/.config}/zsh"
export WINEPREFIX="${XDG_DATA_HOME:-$HOME/.local/share}/wineprefixes/default"
export KODI_DATA="${XDG_DATA_HOME:-$HOME/.local/share}/kodi"
export PASSWORD_STORE_DIR="${XDG_DATA_HOME:-$HOME/.local/share}/password-store"
export TMUX_TMPDIR="$XDG_RUNTIME_DIR"
export ANDROID_SDK_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/android"
export CARGO_HOME="${XDG_DATA_HOME:-$HOME/.local/share}/cargo"
export GOPATH="${XDG_DATA_HOME:-$HOME/.local/share}/go"
export ANSIBLE_CONFIG="${XDG_CONFIG_HOME:-$HOME/.config}/ansible/ansible.cfg"
export UNISON="${XDG_DATA_HOME:-$HOME/.local/share}/unison"
export HISTFILE="${XDG_DATA_HOME:-$HOME/.local/share}/history"
export WEECHAT_HOME="${XDG_CONFIG_HOME:-$HOME/.config}/weechat"
export MBSYNCRC="${XDG_CONFIG_HOME:-$HOME/.config}/mbsync/config"
export ELECTRUMDIR="${XDG_DATA_HOME:-$HOME/.local/share}/electrum"
# Other program settings
export DICS="/usr/share/stardicts/dic/"
export SUDO_ASK_PASS="$HOME/.local/bin/dmenupass"
export FZF_DEFAULT_OPTS="--layout=reverse --height 40%"
export LESS=-R
export LESS_TERMCAP_mb="$(printf '%b' '[1;31m')"
export LESS_TERMCAP_md="$(printf '%b' '[1;36m')"
export LESS_TERMCAP_me="$(printf '%b' '[0m')"
export LESS_TERMCAP_so="$(printf '%b' '[01;44;33m')"
export LESS_TERMCAP_se="$(printf '%b' '[0m')"
export LESS_TERMCAP_us="$(printf '%b' '[1;32m')"
export LESS_TERMCAP_ue="$(printf '%b' '[0m')"
export LESS_OPEN="| /usr/bin/highlight -O ansi %s 2>/dev/null"
export QT_QPA_PLATFORMTHEME="gtk2" # Have QT use gtk2 theme.
export MOZ_USE_XINPUT2="1" # Mozilla smooth scrolling/touchpads.
export _JAVA_AWT_WM_NONREPARENTING=1 # Fix for Java applications in dwm
# This is the list for lf icons:
export LF_ICONS="di=📁:\
fi=📃:\
tw=🤝:\
ow=📂:\
ln=⛓:\
or=❌:\
ex=🎯:\
*.txt=✍:\
*.mom=✍:\
*.me=✍:\
*.ms=✍:\
*.png=🖼:\
*.webp=🖼:\
*.ico=🖼:\
*.jpg=📸:\
*.jpe=📸:\
*.jpeg=📸:\
*.gif=🖼:\
*.svg=🗺:\
*.tif=🖼:\
*.tiff=🖼:\
*.xcf=🖌:\
*.html=🌎:\
*.xml=📰:\
*.gpg=🔒:\
*.css=🎨:\
*.pdf=📚:\
*.djvu=📚:\
*.epub=📚:\
*.csv=📓:\
*.xlsx=📓:\
*.tex=📜:\
*.md=📘:\
*.r=📊:\
*.R=📊:\
*.rmd=📊:\
*.Rmd=📊:\
*.m=📊:\
*.mp3=🎵:\
*.opus=🎵:\
*.ogg=🎵:\
*.m4a=🎵:\
*.flac=🎼:\
*.wav=🎼:\
*.mkv=🎥:\
*.mp4=🎥:\
*.webm=🎥:\
*.mpeg=🎥:\
*.avi=🎥:\
*.mov=🎥:\
*.mpg=🎥:\
*.wmv=🎥:\
*.m4b=🎥:\
*.flv=🎥:\
*.zip=📦:\
*.rar=📦:\
*.7z=📦:\
*.tar.gz=📦:\
*.z64=🎮:\
*.v64=🎮:\
*.n64=🎮:\
*.gba=🎮:\
*.nes=🎮:\
*.gdi=🎮:\
*.1=:\
*.nfo=:\
*.info=:\
*.log=📙:\
*.iso=📀:\
*.img=📀:\
*.bib=🎓:\
*.ged=👪:\
*.part=💔:\
*.torrent=🔽:\
*.jar=♨:\
*.java=♨:\
"
[ ! -f ${XDG_CONFIG_HOME:-$HOME/.config}/shell/shortcutrc ] && shortcuts >/dev/null 2>&1 &
[ "$(tty)" = "/dev/tty1" ] && ! pidof -s Xorg >/dev/null 2>&1 && exec startx "$XINITRC"