# for history export HISTFILE="$HOME/.history" export HISTSIZE=10000 export HISTFILESIZE=20000 export HISTCONTROL=ignoredups:ignorespace # terminal export GPG_TTY=$(tty) export COLORTERM=truecolor # gpg export GPG_KEY="BBA6732C9C740D27" # editors, pagers, aliases, funcs export EDITOR="mg" export VISUAL="mg" export PAGER="less" export MANPAGER="less -R" alias ls='ls -p' alias feed='sfeed_plain ~/.sfeed/feeds/* | less -S' gpgsign() { if [ $# -eq 0 ]; then echo "err: bad usage." return 2 fi local binary_mode=0 local file="" while [ $# -gt 0 ]; do case "$1" in -b) binary_mode=1 shift ;; -*) echo "err: not a option '$1'." return 2 ;; *) file="$1" shift ;; esac done if [ -z "$file" ]; then echo "err: no filename specified." return 1 fi local backup_file="${file}.bak.$$" cp "$file" "$backup_file" || return 1 local temp_file=$(mktemp -p /tmp gpgsign.XXXXXX) || { rm -f "$backup_file" return 1 } trap "rm -f '$temp_file' '$backup_file'" EXIT INT TERM local sign_cmd="gpg --batch --yes --clearsign" [ $binary_mode -eq 1 ] && sign_cmd="gpg --batch --yes --sign" echo "signing file..." $sign_cmd -u "$GPG_KEY" -o "$temp_file" "$file" 2>/dev/null || { echo "err: failed to sign." mv "$backup_file" "$file" rm -f "$temp_file" return 1 } if gpg --verify "$temp_file" 2>/dev/null; then mv "$temp_file" "$file" && rm -f "$backup_file" echo "ok: signed successfully." trap - EXIT INT TERM return 0 else echo "err: verification failed" mv "$backup_file" "$file" rm -f "$temp_file" return 1 fi } export PS1="> "