summaryrefslogblamecommitdiffstats
path: root/kshrc
blob: b9dc7733666674ddfc2c1adfdb84569c49fc3f80 (plain) (tree)
1
2
3
4
5
6

                                                           



                             







                           
                                       
                                        
                                      
                                 



                                                                   
                           
                           

                                  









                                                       
                                                      

                                                             

                                        
  
 




                                           




                                           







                                                

                                                                                       
                                                                                                                     
                                             

         
               
                                















                                                                            
                                                          

 




                                                      

                                          
                                                                                                                          

 
                                                                     




                                                                                                      









                                                                                             




                                                                                                                 





                                  
 
     



                                                                                         


                                                            






                                              
# from https://www.c0ffee.net/blog/openbsd-on-a-laptop/#x11
# use vim if it's installed, vi otherwise
# case "$(command -v vim)" in
#   */vim) VIM=vim ;;
#   *)     VIM=vi  ;;
# esac

export EDITOR=$VIM
export FCEDIT=$EDITOR
export PAGER=less
export LESS='-iMRS -x2'
export LANG=en_US.UTF-8
export LC_CTYPE=en_US.UTF-8
export CLICOLOR=1
#export LSCOLORS=Gxfxcxdxbxegedabagacad
#export PATH=$PATH:/usr/local/jdk-11/bin
export PATH=$PATH:/home/lemon/.fzf/bin
export PATH=/home/lemon/bin:$PATH
export BOOKMARK_PY_SMTP_HOST=smtp.fastmail.com
export BOOKMARK_PY_FROM=mrlemon@mailforce.net
export BOOKMARK_PY_EMAIL=bookmark@matthewlemon.com
BOOKMARK_PY_SMTP_PWD="$(pass AppPasswords/mbsync_fastmail_may2022)"
export BOOKMARK_PY_SMTP_PWD
HISTFILE=$HOME/.ksh_history
HISTSIZE=100000
HISTCONTROL=ignoredups:ignorespace

# emacs mode gives you the familiar Ctrl-A, Ctrl-E, etc
set -o emacs

# use colorls if it's installed, plain old ls otherwise
if command -v colorls > /dev/null ; then
  LS='colorls'
else
  LS='ls'
fi
command -v neomutt > /dev/null && alias mutt='neomutt'
alias gac="git commit -am 'update' && git push origin master"

if [ -e /home/lemon/.ksh_aliases ]; then
. /home/lemon/.ksh_aliases
fi

# we want completion
if [ -e /home/lemon/.ksh_completion ]; then
  . /home/lemon/.ksh_completion
fi

# set environment variables for bookmark.py
if [ -e /home/lemon/.bookmarkpy ]; then
. /home/lemon/.bookmarkpy
fi

# nice colored prompt that also sets xterm title
_XTERM_TITLE='\[\033]0;\u@\h:\w\007\]'
_PS1_CLEAR='\[\033[0m\]'
_PS1_BLUE='\[\033[34m\]'
case "$(id -u)" in
  0) _PS1_COLOR='\[\033[1;31m\]' ;;
  *) _PS1_COLOR='\[\033[32m\]'   ;;
esac
PS1='$_XTERM_TITLE\A $_PS1_COLOR\u@\h$_PS1_CLEAR:$_PS1_BLUE\w$_PS1_COLOR\$$_PS1_CLEAR '
export PS1
# export PS1="x1\[\e[31m\] \[\e[m\]\[\e[31m\]:\[\e[m\]\[\e[31m\]:\[\e[m\] \[\e[32m\]\w\[\e[m\] \[\e[34m\]ยป\[\e[m\] "
# export PS1='\u@\h:\[\e[33m\]\w\[\e[0m\]\$ '

todj () {
	CMD=cat
	if [[ $1 = "-v" ]]; then
		CMD=vim
	fi
	$CMD $(find /home/lemon/Notes/journal -name "*$(date '+%Y-%m-%d')*")
}

tj () {
	if [[ -z $1 ]]; then
		echo "Please give me your message in quotes."
	fi
	echo $1 | _tj
}

tjclip () {
	if [[ -z $1 ]]; then
		echo "Please give me your message in quotes."
	fi
	echo "$1: $(xclip -o -clipboard clipboard)." | _tj
}

# mpv func
yta() {
      mpv --ytdl-format=bestaudio ytdl://ytsearch:"$*"
  }

# search for a file and download instantly
ytda() {
  cd ~/Downloads && yt-dlp -f 'bestaudio' -x --audio-format mp3 ytsearch"$2":"$1" -o '%(title)s.%(ext)s' && cd - || return
}

# get best audio of YouTube file or playlist (just use the right URL)
ytmp3 () {
  if [ -z "$1" ]; then print "I need a valid YouTube URL.\n"; fi
  cd ~/Downloads && yt-dlp -f 'ba' -x --audio-format mp3 "$1" -o '%(title)s.%(ext)s' && cd - || return
}

# update /usr/ports
myupdateports() {
  cd /usr && cvs -d anoncvs@anoncvs.spacehopper.org:/cvs -q up -Pd -A ports && cd - || return
}

# update /usr/sr
myupdatesrc() {
  cd /usr && cvs -d anoncvs@anoncvs.spacehopper.org:/cvs -q up -Pd -A src && cd - || return
}

# get date of latest snapshot
snapdate() {
  curl -s https://cdn.openbsd.org/pub/OpenBSD/snapshots/amd64/|grep INSTALL|tr -d ' '|cut -d'>' -f3|cut -d':' -f1
}

# completions - experimental
set -A complete_task_1 -- add sync

# GPG agent
GPG_TTY=$(tty)
export GPG_TTY

# FZF
#export FZF_DEFAULT_COMMAND='ag  -g ""'
#export FZF_CTRL_T_COMMAND=$FZF_DEFAULT_COMMAND
#export FZF_ALT_C_COMMAND=$FZF_DEFAULT_COMMAND
#export FZF_DEFAULT_OPTS='--color info:108,prompt:109,spinner:108,pointer:168,marker:168'
#[ -f ~/.fzf.bash ] && source ~/.fzf.bash

# from https://dataswamp.org/~solene/2021-10-17-ksh-fzf.html
#function fzf-histo {
#    RES=$(fzf --tac --no-sort -e < $HISTFILE)
#        test -n "$RES" || exit 0
#	    eval "$RES"
#    }
#
#bind -m ^R=fzf-histo^J