shell-independent config (aliases, functions, env vars, options) to .config/shell/shrc, make bashrc and zshrc use the same shrc, add TTY detection for changing caps lock to escape in a TTY, add option for skipping plugin loading, and maybe a few other things If this goes well, I'll be tempted to call this version 1.0. Things have been very stable for the last few months. Although, since it's the first really big change in a while, that might make it version 2.0? Should dotfiles have big version numbers at all? Probably not.
132 lines
3.7 KiB
Bash
132 lines
3.7 KiB
Bash
#!/bin/sh
|
|
## Short hand programs (ex: sc = shellcheck) >>>
|
|
# use nvim rather than vim if the command exists
|
|
alias \
|
|
vim='nvim' \
|
|
vimdiff='nvim -d'
|
|
|
|
alias \
|
|
vv='$EDITOR' \
|
|
e='$EDITOR' \
|
|
sedit='sudoedit' \
|
|
|
|
# I do this too much by accident smh my head
|
|
alias :q='exit' \
|
|
q='exit' \
|
|
|
|
# rmdir is long
|
|
alias \
|
|
rmd='rmdir' \
|
|
rd='rmdir' \
|
|
|
|
alias \
|
|
mkd="mkdir -p" \
|
|
g=git \
|
|
sctl='sudo systemctl' \
|
|
|
|
# <<<
|
|
## Program improvements (ex: ls = ls -h) >>>
|
|
alias sudo='sudo ' # allow using aliases in sudo commands
|
|
alias df='df -h' # Human-readable sizes
|
|
alias free='free -m' # Show sizes in MB
|
|
alias bc='bc -ql' # Make bc usable for fast math
|
|
[ -z "$VIMRUNTIME" ] &&
|
|
alias glow='glow -p' # force Glow to preview with `less` if not in vim
|
|
|
|
# I hate it when I get ghost script instead of git status. this will be removed
|
|
alias gs="echo 'you don'\''t really want ghost script, do you?'"
|
|
|
|
# tell make to use all cpu cores
|
|
alias make='make -j$(nproc)'
|
|
|
|
# Colors
|
|
alias \
|
|
ls='ls -hN --color=auto --group-directories-first' \
|
|
grep='grep --color=auto' \
|
|
egrep='egrep --color=auto' \
|
|
fgrep='fgrep --color=auto' \
|
|
diff='diff --color=auto' \
|
|
pacman='pacman --color=auto' \
|
|
|
|
# super duper paru alias
|
|
# shellcheck disable=SC2139
|
|
alias \
|
|
parue="$(which paru) --color=auto --sudoloop --newsonupgrade --pgpfetch --upgrademenu --bottomup --fm nvim" \
|
|
paru='parue --skipreview'
|
|
|
|
if command -v lsd > /dev/null; then
|
|
$IS_TTY && alias ls=lsd
|
|
alias lsd='lsd --group-dirs=first'
|
|
fi
|
|
# <<<
|
|
## Mini short-hand scripts (ex: glone = git clone) >>>
|
|
# dotfile management
|
|
alias dot='git --git-dir="$HOME/git/dotfiles" --work-tree="$HOME"'
|
|
alias d='git --git-dir="$HOME/git/dotfiles" --work-tree="$HOME"' # duplicate for auto-complete
|
|
|
|
# quicker shutdown
|
|
alias sdn='shutdown now'
|
|
|
|
# open a new session called 0, but if there is already a session called 0, connect to it
|
|
alias tm='tmux new -As0'
|
|
|
|
# List available X displays. Useful for finding what display to export when connected over ssh.
|
|
alias lsx='ls /tmp/.X11-unix | tr "X" ":"'
|
|
|
|
# Make ydotool actually usable for short things
|
|
alias ydotool='(sudo ydotoold &) && sleep 0.05 && sudo ydotool'
|
|
|
|
# Update zinit and plugins
|
|
alias zup='zinit self-update && zinit update --parallel'
|
|
|
|
# Edit config files
|
|
alias \
|
|
nvc='(cd ~/.config/nvim/lua/blake && nvim ../../init.lua)' \
|
|
zc='$EDITOR ~/.zshrc' \
|
|
sc='$EDITOR $SHELL_CONFIG_DIR/shrc' \
|
|
fstab='sudoedit /etc/fstab' \
|
|
hst='$EDITOR $HISTFILE' \
|
|
|
|
# Git cLONE
|
|
alias glone="git clone"
|
|
|
|
# Docker
|
|
alias \
|
|
logs='docker-compose logs --tail=200 -f' \
|
|
dupd='docker-compose up -d' \
|
|
ddwn='docker-compose down' \
|
|
dc='docker-compose' \
|
|
occ='docker exec -u www-data nextcloud php occ' \
|
|
|
|
# file copying with a progress bar
|
|
alias cpv="rsync -ah --info=progress2"
|
|
|
|
# lists all open ports, along with some other info
|
|
alias ls-ports='netstat -tulpn'
|
|
|
|
# list all disks and their mount points
|
|
# shellcheck disable=SC2142
|
|
alias mnt="mount | awk -F' ' '{ printf \"%s\t%s\n\",\$1,\$3; }' | column -t | grep -E '^/dev/' | sort"
|
|
|
|
# backs up list of packages
|
|
alias packback='comm -23 <(paru -Qqett | sort) <(paru -Qqg base -g base-devel | sort | uniq) > ~/pkglist.txt'
|
|
|
|
# thoroughly reset the terminal
|
|
alias rce='reset && clear && exec zsh'
|
|
|
|
# find pretty much any file, quickly
|
|
alias fds='fd --hidden --exclude /run'
|
|
|
|
# smart plug things
|
|
SMART_PLUG_IP='192.168.1.250'
|
|
alias light='tplink_smartplug.py -t $SMART_PLUG_IP -c'
|
|
|
|
# Common ls aliases
|
|
alias \
|
|
l='ls' \
|
|
la='ls -ah' \
|
|
ll='ls -lh' \
|
|
lla='ls -lah' \
|
|
# <<<
|
|
|
|
# vim:fdm=marker:fmr=>>>,<<<:fdl=1:et:ft=bash:sw=3:ts=3
|