###
### Bash startup things
-## Only do any of this if we haven't done it before. Otherwise we
-## can have loops and lots of wasted time.
-if [ -z "$__mdw_profile" ]; then
+## The `.bashrc' hook will run us if it thinks we haven't been run before.
+## We should therefore let it know.
export __mdw_profile=done
###--------------------------------------------------------------------------
## Pager configuration.
export MDW_PAGER=`type -p less` PAGER=mdw-pager METAMAIL_PAGER=mdw-pager
-export LESS="-iqgRh1FSX"
+export LESS="-iqgRh1j.3FSX"
export LESSOPEN="|lesspipe.sh %s"
case "${LC_CTYPE-$LANG}" in
*utf8 | *utf-8 | *UTF8 | *UTF-8) LESSCHARSET=utf-8 ;;
## If we have `distcc' then tell `ccache' to use it.
__mdw_programp distcc && export CCACHE_PREFIX=distcc
+## Choose a sensible web browser. If we have a display, try to pick a
+## graphical one.
+browsers="elinks w3m lynx"
+case "${DISPLAY+t}" in
+ t) browsers="mdw-iceweasel mdw-chrome iceweasel firefox $browsers" ;;
+esac
+for i in $browsers; do
+ if __mdw_programp $i; then
+ export BROWSER=$i
+ break
+ fi
+done
+unset browsers
+
## Acquiring root privileges. This is mainly the job of `bashrc', but we
## cache the mechanism here.
export __MDW_ROOTLY=`mdw-conf rootly`
## If there's a local hook then run it.
[ -f "$HOME/.profile-local" ] && . "$HOME/.profile-local"
-## End of the `__mdw_profile' guard.
-fi
-
## If we haven't run the `.bashrc' yet, and this shell is interactive, then
## run it now.
[ -z "$__mdw_bashrc" ] && [ -t 0 ] && \