dot_testing/bash/bashrc

125 lines
2.7 KiB
Bash
Raw Normal View History

2022-02-05 22:58:21 -06:00
#!/bin/bash
# some housekeeping
set -o vi
shopt -s autocd
2022-10-18 18:19:26 -05:00
alias rc=". ~/.config/bash/bashrc"
alias erc="nvim ~/.config/bash/bashrc"
alias reload=". ~/.config/bash/bashrc; . ~/.config/bash/profile"
2022-02-05 22:58:21 -06:00
# ssh keeping tidy
alias ssh="ssh -F $HOME/.config/ssh/config"
# remind alias
alias sched="nvim $DOTREMINDERS"
2022-02-22 13:52:11 -06:00
alias cal="rem -cl"
2022-10-17 13:20:52 -05:00
alias shutdown="sudo shutdown -h now"
2022-10-18 18:19:26 -05:00
alias ls="ls --color=auto"
2022-11-10 14:35:43 -06:00
alias irssi="irssi --home=$HOME/.config/irssi"
2022-10-18 18:19:26 -05:00
PS1="\w\$ "
# repos func
repos() {
sel="$(ls ~/git | fzy | awk '{print "/home/usr/git/"$1}')"
[ "$?" -eq 1 ] && exit
cd "$sel"
}
2022-10-18 18:19:26 -05:00
files() {
2022-12-04 15:32:50 -06:00
sel=$(find /home/$(whoami) |
grep -v '\.cache\|\.pki\|/scratch/\|\.config/chromium\|\.git\|\.local/lib\|\.mozilla/firefox/' |
fzy -l 50)
2022-10-18 18:19:26 -05:00
[ -z "$sel" ] && return 1
[ -d "$sel" ] && cd "$sel" || nvim "$sel"
return 0
}
2022-11-27 13:17:51 -06:00
rss() {
cd ~/.local/share/sfeed/
2023-01-03 23:13:10 -06:00
touch .urls
2022-11-27 13:17:51 -06:00
sfeed_curses *
cd -
}
2022-12-24 00:54:45 -06:00
# stolen from stackoverflow
# code from a stranger is always perfect
git_main_branch () {
git branch | cut -c 3- | grep -E '^master$|^main$'
}
gp() {
# a bodge -- git authentication doesn't work quite right
pash c tildegit
2022-12-24 00:54:45 -06:00
git push -u origin $(git_main_branch)
}
2023-01-03 23:13:10 -06:00
start_bitlbee() {
mkdir -p $HOME/.config/bitlbee/
touch $HOME/.config/bitlbee/config
bitlbee #-D -c $HOME/.config/bitlbee/config -d $HOME/.config/bitlbee/
}
record() {
tmp=$(mktemp)
res=$(xrandr |
grep ' connected' |
awk -F' ' '{print $1 " " $4}' |
awk -F'+' '{print $1}' |
fzy |
awk -F' ' '{print $2}' )
2023-01-15 16:41:46 -06:00
medium=$(printf ".mp4\n.png\n" | fzy)
output="$tmp$medium"
case "$medium" in
*mp4*)
printf "> starting video capture...\n"
ffmpeg -video_size "$res" -f x11grab -framerate 60 -i $DISPLAY -preset ultrafast -pix_fmt yuv420p "$output"
;;
*png*)
printf "> taking screenshot...\n"
# for a screenshot, we usually want an a s t h e t i c
ffmpeg -f x11grab -video_size "$res" -i $DISPLAY -vframes 1 "$output" -loglevel quiet # be quiet
;;
*)
printf "not a choice\n"
return
esac
printf "> written to %s\n" "$output"
2023-01-03 23:13:10 -06:00
while true; do
2023-01-14 20:17:33 -06:00
result=$(printf "delete\nmove to home directory\nupload to pastebin\nreview footage\nquit\n" | fzy --prompt="what next? ")
2023-01-03 23:13:10 -06:00
case "$result" in
*upload*)
2023-01-15 16:41:46 -06:00
paste "$output" | xclip -i
printf "> pasted! check your clipboard\n"
2023-01-03 23:13:10 -06:00
;;
*review*)
2023-01-15 16:41:46 -06:00
[ "$medium" = ".mp4" ] && mpv "$output" && continue
feh "$output"
2023-01-03 23:13:10 -06:00
;;
*delete*)
2023-01-15 16:41:46 -06:00
printf "> removing target file...\n"
rm "$output"
2023-01-03 23:13:10 -06:00
return
;;
2023-01-14 20:17:33 -06:00
*home*)
2023-01-15 16:41:46 -06:00
printf "> warping your capture to home...\n"
name=$(echo "capture$medium" | fzy --prompt="name please? ")
mv "$output" "$HOME/$name"
2023-01-14 20:17:33 -06:00
return
;;
2023-01-03 23:13:10 -06:00
*quit*)
return
;;
esac
done
}
2022-12-24 00:54:45 -06:00
alias gs='git status'
2022-10-18 18:19:26 -05:00
alias f=files
2022-12-26 19:06:29 -06:00
alias lofi="mpv https://www.youtube.com/watch?v=jfKfPfyJRdk --no-video"