1
0
Fork 0
mirror of https://github.com/notwa/rc synced 2024-11-05 06:39:02 -08:00
rc/home/bashrc

54 lines
1.5 KiB
Bash

[ -z "$PS1" ] && return
. ~/.prep # handle boring stuff like /etc/profile and $PATH
HISTCONTROL=erasedups
HISTSIZE=1000
HISTFILESIZE=2000
shopt -s histappend
shopt -s checkwinsize
#shopt -s physical # chaselinks (doesn't exist?)
set -o hashall # enable hash command
set +o histexpand # disable expansion of ! characters
[ "$TERM" != rxvt-unicode-256color ] || export TERM=xterm-256color
_temporary_scope_() {
local t="${TERM%%-*}" title=
if [ "$t" = xterm ] || [ "$t" = screen ] || [ "$t" = tmux ]; then
title='\[\033]2;\w\a\]'
fi
local color_okay='\\[\e[42m\\]'
local color_fail='\\[\e[41m\\]'
local line1=' \\[\e[0m\\]'
local line2='\\[\e[1;37m\\]\\$\\[\e[0m\\] '
local ret_okay="$title$color_okay$line1\n$color_okay$line2"
local ret_fail="$title$color_fail$line1\n$color_fail$line2"
PROMPT_COMMAND="[ \$? = 0 ] && PS1=\$'$ret_okay' || PS1=\$'$ret_fail'"
}; _temporary_scope_; unset _temporary_scope_
. ~/.shrc
# this doesn't work for all scripts at the moment, but
ADDPATH "$HOME/sh"
# combine everything matching "YES_BASH" in ~/sh/ into ~/.sh-bash.
# unlike zsh, we do not check the sha1sum of the output.
(: \
&& cd ~/sh \
&& printf '%s\n' '#!/usr/bin/env false' '[ -n "$preload" ] || exit 1' '' \
| cat - > ~/.sh-bash \
$(grep -lF YES_BASH -- $(find ~/sh/ -maxdepth 1 -type f '!' -name '*.bak')) \
;)
dummy() { :; } ### @- return 0, ignoring arguments.
preload=dummy
. ~/.sh-bash
unset preload
alias reload='cd; exec bash' ### @- **TODO:** respect initctl like in `.zshrc`.
[ ! -e ~/.lol ] || . ~/.lol
true