dotfiles/.kshrc

130 lines
3.4 KiB
Bash

# ksh environment file
########################################################################
# ENVIRONMENT VARIABLES
########################################################################
### SEARCH PATHS
PATH=~/.bin\
:~/.local/bin\
:/bin\
:/sbin\
:/usr/bin\
:/usr/sbin\
:/usr/local/bin\
:/usr/local/sbin\
:/usr/X11R6/bin\
:/usr/games\
:/usr/ports/infrastructure/bin
JAVA_HOME=/usr/local/jdk-11/bin
PATH=${PATH}:${JAVA_HOME}
export PATH
### LANGUAGE
LANG=en_US.UTF-8
LC_MESSAGES=C
LC_NUMERIC=C
LC_TIME=de_DE.UTF-8
export LANG LC_ALL LC_MESSAGES LC_NUMERIC LC_TIME
### SOFTWARE PREFERENCES
EDITOR="vim"
VISUAL="vim"
BROWSER="chrome"
PAGER="less"
export EDITOR VISUAL BROWSER PAGER
PRINTER="rp"
export PRINTER
########################################################################
# STOP HERE IF NON INTERACTIVE
########################################################################
[[ $- != *i* ]] && return
########################################################################
# MANDATORY ENVIRONMENT
########################################################################
### HISTORY
HISTCONTROL=ignoredups:ignorespace:erasedups
HISTFILE=$HOME/.ksh-history
HISTSIZE=2000
export HISTCONTROL HISTFILE HISTSIZE
# LESS
LESS="-giJmR--tilde"
LESSHISTFILE="$HOME/.less-history"
export LESS LESSHISTFILE
########################################################################
# PROMPT
########################################################################
C1="\[$(tput setaf 241)\]" # gray
#C2="\[$(tput setaf 208)\]" # orange
C2="\[$(tput setaf 37)\]" # green
C0="\[$(tput op)\]" # reset
x=$(print \\001) # hack from ksh(1)
PS1="$x\${C1}[\${C2}\h\${C1}](\${C2}\${?}\${C1})(\${C2}\W\${C1})\\$ \${C0}$x"
########################################################################
# SHELL SETTINGS
########################################################################
ulimit -c 0
stty -ixon -ixoff
set -o emacs
set bell-style none
########################################################################
# MODULE LOADER
########################################################################
load() { [ -f ~/.ksh/$1 ] && . ~/.ksh/$1; }
load environment.ksh
load functions.ksh
load aliases.ksh
if hostname | fgrep -q codevoid
then
load email.ksh
load porttools.ksh
load remind.ksh
load amused.ksh
load gnupg.ksh
fi
load ytdl.ksh
load fzf.ksh
load dotfiles.ksh
load localstuff.ksh
load complete.ksh
########################################################################
# ALIASES (MISC)
########################################################################
# mount
alias mount_msdos="doas \mount_msdos -o nodev,nosuid,noatime -u 1000 -g 1000"
mount_tank() { awk '$3=="nfs"{print $2}' /etc/fstab | xargs -n1 doas mount -v | cut -d" " -f-3; }
umount_tank() { awk '$3=="nfs"{print $2}' /etc/fstab | xargs -n1 doas umount -v | cut -d" " -f-3; }
pw() { pwgen -1 -y --remove-chars=\~\`\"\'{}\(\)\[\]\*.\;\|,\<\> 22; }
########################################################################
# TWITCH FROM CLI
########################################################################
alias twitch_play="mpv https://www.twitch.tv/c0dev0id"
twitch_stream() {
local API_KEY=$(pass Internet/Twitch | head -1)
local RES=$(xrandr | grep "*+" | awk '{print $1}')
local FAUX_OPTS="-d snd/default -m -vmic 5.0 -vmon 0.2 -r $RES -f 20 -b 4000"
fauxstream $FAUX_OPTS rtmp://live-ams.twitch.tv/app/$API_KEY
}