# Copyright (c) 2010, 2012, 2013, 2014
#	Thorsten Glaser <tg@mirbsd.org>
# This file is provided under the same terms as mksh.
#-
# Minimal /system/etc/mkshrc for Android
#
# Support: https://launchpad.net/mksh

: ${HOME:=/data}
: ${HOSTNAME:=$(getprop ro.product.device)}
: ${HOSTNAME:=android}
: ${MKSH:=/system/bin/sh}
: ${SHELL:=$MKSH}
: ${TERM:=xterm}
: ${TMPDIR:=/data/local/tmp}
: ${USER:=$(id -un)}
export HOME HOSTNAME MKSH SHELL TERM TMPDIR USER

if (( USER_ID )); then PS1='$'; else PS1='#'; fi
PS4='[$EPOCHREALTIME] '; PS1='${|
	local e=$?

	(( e )) && REPLY+="$e|"

	return $e
}$USER@$HOSTNAME:${PWD:-?} '"$PS1 "

function hd {
	local -Uui16 -Z11 pos=0
	local -Uui16 -Z5 hv=2147483647
	local dasc line i

	cat "$@" | { set +U; if read -arN -1 line; then
		typeset -i1 'line[*]'
		i=0
		while (( i < ${#line[*]} )); do
			hv=${line[i++]}
			if (( (pos & 15) == 0 )); then
				(( pos )) && print -r -- "$dasc|"
				print -n "${pos#16#}  "
				dasc=' |'
			fi
			print -n "${hv#16#} "
			if (( (hv < 32) || (hv > 126) )); then
				dasc+=.
			else
				dasc+=${line[i-1]#1#}
			fi
			(( (pos++ & 15) == 7 )) && print -n -- '- '
		done
		while (( pos & 15 )); do
			print -n '   '
			(( (pos++ & 15) == 7 )) && print -n -- '- '
		done
		(( hv == 2147483647 )) || print -r -- "$dasc|"
	fi; }
}

function setenv {
	eval export "\"$1\""'="$2"'
}

for p in ~/bin; do
	[[ -d $p/. ]] || continue
	[[ :$PATH: = *:$p:* ]] || PATH=$p:$PATH
done

unset p

: place customisations above this line