]> git.armaanb.net Git - dotfiles.git/blob - .kshrc
ksh: uclip: use xsel instead of xclip
[dotfiles.git] / .kshrc
1 [ $(hostname) = "alcatraz.armaanb.net" ] && {
2         date
3         apm | head -n 1
4 }
5
6 set -o vi
7
8 alias pman='man -M /usr/local/share/doc/posix/man'
9 alias papropos='apropos -M /usr/local/share/doc/posix/man'
10 alias pwhatis='whatis -M /usr/local/share/doc/posix/man'
11
12 alias rsync='openrsync -rv'
13
14 ufile() {
15     [ "$(file -bi "$1")" = "text/plain" ] && ext="txt"
16     ext=$(printf "%s" "$1" | awk -F . '{print $NF}')
17     fname="$(basename ${2:-tmp$RANDOM.$ext})"
18     rsync "$1" "l.armaanb.net:/var/www/htdocs/l.armaanb.net/$fname"
19     printf "https://l.armaanb.net/%s\n" "$fname" | xsel -sel c
20 }
21
22 export GPG_TTY="$(tty)"
23 export CDPATH=":~"
24
25 alias ls="LC_COLLATE=C ls -lhF"
26 alias df="df -h"
27 alias du="du -h"
28 alias cp="cp -riv"
29 alias rm='rm -iv'
30 alias mv='mv -iv'
31 alias grep='grep -in'
32 alias mkdir='mkdir -p'
33 alias nl='nl -b all'
34 alias rclone='rclone -P'
35
36 alias ytmusic="youtube-dl --add-metadata --extract-audio \
37         --audio-format vorbis --prefer-ffmpeg --restrict-filenames \
38         -o '%(title)s.%(ext)s'"
39 alias mosh="env LC_CTYPE=en_US.UTF-8 mosh"
40 alias serve="python3 -m http.server"
41 alias wttr='curl wttr.in?format="%l+%T\n%C+%t\nSunrise:+%S,+Sunset+%s\n"'
42 alias nv="nvim"
43 alias dotgit="git --git-dir=~/.local/share/dotfiles --work-tree=~"
44
45 pass() {
46         printf "Master password: "
47         stty -echo
48         read masterpass
49         stty echo
50         sqlcipher .passwords.db -column -cmd "PRAGMA key = \"$masterpass\"" "$1"
51 }
52
53 plike() {
54         pass "SELECT * FROM p WHERE name LIKE \"%$1%\";"
55 }
56
57 pget() {
58         pass "SELECT * FROM p WHERE name = \"$1\";"
59 }
60
61 pinsert() {
62         printf "New password: "
63         stty -echo
64         read newpass
65         stty echo
66         pass "INSERT INTO p VALUES (\"$1\", \"$2\", \"$newpass\");"
67 }
68
69 pgen() {
70         tr -dc 'A-Za-z0-9!"#$%&'\''()*+,-./:;<=>?@[\]^_`{|}~' < /dev/urandom \
71                 | fold -w 20 \
72                 | head -n 1
73 }
74
75
76 dosa() {
77         echo "Dosa! Yum yum yum"
78         doas $@
79 }
80
81 watch() {
82         inp=$1
83         shift
84         fwa $inp | while read; do $@; done
85 }
86
87 stty dsusp undef