Files
dots/files/shell/.shellrc.alias
2025-02-01 19:28:11 +01:00

115 lines
3.3 KiB
Plaintext

### System Utility
alias cdt='mkdir /tmp/$(cat /proc/sys/kernel/random/uuid); cd $_'
alias cpu='watch -n.1 "grep \"^[c]pu MHz\" /proc/cpuinfo"'
alias fixagent='eval $(tmux show-env -s | grep "^SSH_")'
alias truecolor='curl -s https://raw.githubusercontent.com/JohnMorales/dotfiles/master/colors/24-bit-color.sh | bash'
alias whatsmyip='curl https://ipinfo.io/ip; echo'
alias mirror='wl-mirror eDP-1'
### zfs (just saved commands)
# zfs send pool/path/to/zvol@snapshot| gzip -c >/mnt/some/location/zvol@20230302.gz
# gzip -dc /mnt/some/location/zvol@20230302.gz | zfs receive pool/path/to/zvol
### Always ask first when moving files
alias cp='cp -i'
alias mv='mv -i'
alias rm='rm -i'
### fzf
# basics
alias f='fzf --reverse'
alias c='cd $(fd --type d | fzf --reverse)'
# git
alias gbl='git show $(git ls-files | fzf -e --reverse --bind "enter:become(git blame {1} | fzf -e --ansi --reverse | cut -f 1 -d \" \")")'
gg() {
git grep --color=always $1 | fzf --reverse --ansi --bind "enter:become($EDITOR {1} +{2})" --delimiter :
}
glg() {
git log --graph --color=always --format="%C(auto)%h%d %s %C(black)%C(bold)%cr" "$@" | fzf --ansi --no-sort --reverse --tiebreak=index --toggle-sort=\` --bind "ctrl-m:execute: echo {} | grep -o '[a-f0-9]\{7\}' | head -1 | xargs -I % sh -c 'git show --color=always % | less -R'";
}
# nix
alias nd="nix develop ."
alias ns="nix-shell"
alias nu="nix-channel --update"
alias nt="cp $HOME/.dots/templates/typst.nix . && echo 'Copied typst.nix'"
tw() {
typst watch $1 --open
}
# ripgrep
rf() {
rg $1 --line-number --color=always | fzf --reverse --ansi --bind "enter:become($EDITOR {1} +{2})" --delimiter :
}
### Abbreviations
alias d='docker'
alias dc='docker compose'
alias dcr='dc down && dc up -d && dc logs -f'
alias dh1='du . -h -d1'
alias dhs='du . -hs'
alias diff_dir='diff -qr'
alias g='git'
alias l='ls --color --hyperlink'
alias nssh='SSH_AUTH_SOCK= ssh'
alias s='kitten ssh'
alias o='xdg-open' # to change a mime use: `xdg-mime default APPLICATION HANDLE`
t() {
tmux new-session -A -s ${1:-dev}
}
### nmcli(1)
alias con='nmcli con'
alias conup='nmcli con up id'
alias condown='nmcli con down id'
alias conscan='nmcli dev wifi'
alias conedit='nm-connection-editor'
# password hash (sed needed when using in docker-compose)
pwhash() {
name=$1
if [ -z $name ]; then
echo "Please enter a username."
return
fi
echo $(htpasswd -nB ${name}) | sed -e s/\\$/\\$\\$/g
}
# ocr
ocr() {
file=$1
if [ -z $file ]; then
echo "Please input a file."
return
fi
name=${file%%.*}
ocrmypdf -l deu+eng --output-type pdf $file ${name}.ocr.pdf
}
### laptop acpi magic
conservation() {
location='/sys/bus/platform/drivers/ideapad_acpi/VPC2004:00/conservation_mode'
if [ -z $1 ]; then
cat $location
elif [ $1 = '0' ] || [ $1 = '1' ]; then
echo $1 | sudo tee $location
else
echo 'Invalid option'
fi
}
power() {
location='/sys/firmware/acpi/platform_profile'
if [ -z $1 ]; then
echo "Current:" $(cat $location)
echo "Can be one of:" $(cat /sys/firmware/acpi/platform_profile_choices)
elif [ $1 = 'low-power' ] || [ $1 = 'balanced' ] || [ $1 = 'performance' ]; then
echo $1 | sudo tee $location
else
echo 'Invalid option'
fi
}