# 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 : ${TERM:=vt100} ${HOME:=/data} ${MKSH:=/system/bin/sh} ${HOSTNAME:=$(getprop ro.product.device)} : ${SHELL:=$MKSH} ${USER:=$(typeset x=$(id); x=${x#*\(}; print -r -- ${x%%\)*})} ${HOSTNAME:=android} if (( USER_ID )); then PS1='$'; else PS1='#'; fi PS4='[$EPOCHREALTIME] '; PS1='${| local e=$? (( e )) && REPLY+="$e|" return $e }$USER@$HOSTNAME:${PWD:-?} '"$PS1 " export HOME HOSTNAME MKSH SHELL TERM USER alias l='ls' alias la='l -a' alias ll='l -l' alias lo='l -a -l' 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 more { ( set +m cat "$@" |& trap "rv=\$?; kill $! >/dev/null 2>&1; exit \$rv" EXIT while IFS= read -pr line; do llen=${%line} (( llen == -1 )) && llen=${#line} (( llen = llen ? (llen + COLUMNS - 1) / COLUMNS : 1 )) if (( (curlin += llen) >= LINES )); then print -n -- '\033[7m--more--\033[0m' read -u1 || exit $? [[ $REPLY = [Qq]* ]] && exit 0 curlin=$llen fi print -r -- "$line" done ) } 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