From 4b8a062fa4bad190b677444f9ab182e6639aee7a Mon Sep 17 00:00:00 2001 From: halex <> Date: Fri, 11 Jul 2014 21:12:39 +0000 Subject: [PATCH] Introducing a nifty _ignore function makes the file neater and easier to maintain. The eval's must stay to make the aliases expand at run time instead of at parse time. ok krw@ --- src/etc/ksh.kshrc | 52 ++++++++++++----------------------------------- 1 file changed, 13 insertions(+), 39 deletions(-) diff --git a/src/etc/ksh.kshrc b/src/etc/ksh.kshrc index 78f71456..f825b430 100644 --- a/src/etc/ksh.kshrc +++ b/src/etc/ksh.kshrc @@ -1,5 +1,5 @@ : -# $OpenBSD: ksh.kshrc,v 1.18 2014/07/11 16:41:16 halex Exp $ +# $OpenBSD: ksh.kshrc,v 1.19 2014/07/11 21:12:39 halex Exp $ # # NAME: # ksh.kshrc - global initialization for ksh @@ -98,44 +98,18 @@ case "$-" in alias stripe='label "$USER@$HOST ($tty) - $PWD"' alias istripe='ilabel "$USER@$HOST ($tty)"' - function wftp { ilabel "ftp $*"; "ftp" "$@"; eval istripe; } - function wcd { \cd "$@" && eval stripe; } - function wssh - { - local rc - "ssh" "$@" - rc=$? - eval istripe - eval stripe - return $rc - } - function wtelnet - { - local rc - "telnet" "$@" - rc=$? - eval istripe - eval stripe - return $rc - } - function wrlogin - { - local rc - "rlogin" "$@" - rc=$? - eval istripe - eval stripe - return $rc - } - function wsu - { - local rc - "su" "$@" - rc=$? - eval istripe - eval stripe - return $rc - } + # Run stuff through this to preserve the exit code + function _ignore { local rc=$?; "$@"; return $rc; } + + function wftp { ilabel "ftp $*"; "ftp" "$@"; _ignore eval istripe; } + + function wcd { \cd "$@"; _ignore eval stripe; } + + function wssh { \ssh "$@"; _ignore eval 'istripe; stripe'; } + function wtelnet { \telnet "$@"; _ignore eval 'istripe; stripe'; } + function wrlogin { \rlogin "$@"; _ignore eval 'istripe; stripe'; } + function wsu { \su "$@"; _ignore eval 'istripe; stripe'; } + alias su=wsu alias cd=wcd alias ftp=wftp