Browse Source

use "function X" rather than "X ()" since for the former, preceding parameter

assignments function calls are not surprisingly polluting your shell environment
"makes sense" krw@, ok tedu@ guenther@
OPENBSD_5_0
halex 13 years ago
parent
commit
557825f651
1 changed files with 13 additions and 13 deletions
  1. +13
    -13
      src/etc/ksh.kshrc

+ 13
- 13
src/etc/ksh.kshrc View File

@ -1,5 +1,5 @@
: :
# $OpenBSD: ksh.kshrc,v 1.15 2010/04/26 09:04:15 otto Exp $
# $OpenBSD: ksh.kshrc,v 1.16 2011/07/04 19:52:37 halex Exp $
# #
# NAME: # NAME:
# ksh.kshrc - global initialization for ksh # ksh.kshrc - global initialization for ksh
@ -92,15 +92,15 @@ case "$-" in
esac esac
# do we want window decorations? # do we want window decorations?
if [ "$ILS" ]; then if [ "$ILS" ]; then
ilabel () { print -n "${ILS}$*${ILE}">/dev/tty; }
label () { print -n "${WLS}$*${WLE}">/dev/tty; }
function ilabel { print -n "${ILS}$*${ILE}">/dev/tty; }
function label { print -n "${WLS}$*${WLE}">/dev/tty; }
alias stripe='label "$USER@$HOST ($tty) - $PWD"' alias stripe='label "$USER@$HOST ($tty) - $PWD"'
alias istripe='ilabel "$USER@$HOST ($tty)"' alias istripe='ilabel "$USER@$HOST ($tty)"'
wftp () { ilabel "ftp $*"; "ftp" "$@"; eval istripe; }
wcd () { \cd "$@" && eval stripe; }
wssh ()
function wftp { ilabel "ftp $*"; "ftp" "$@"; eval istripe; }
function wcd { \cd "$@" && eval stripe; }
function wssh
{ {
local rc local rc
"ssh" "$@" "ssh" "$@"
@ -109,7 +109,7 @@ case "$-" in
eval stripe eval stripe
return $rc return $rc
} }
wtelnet ()
function wtelnet
{ {
local rc local rc
"telnet" "$@" "telnet" "$@"
@ -118,7 +118,7 @@ case "$-" in
eval stripe eval stripe
return $rc return $rc
} }
wrlogin ()
function wrlogin
{ {
local rc local rc
"rlogin" "$@" "rlogin" "$@"
@ -127,7 +127,7 @@ case "$-" in
eval stripe eval stripe
return $rc return $rc
} }
wsu ()
function wsu
{ {
local rc local rc
"su" "$@" "su" "$@"
@ -173,7 +173,7 @@ esac
# commands for both interactive and non-interactive shells # commands for both interactive and non-interactive shells
# is $1 missing from $2 (or PATH) ? # is $1 missing from $2 (or PATH) ?
no_path () {
function no_path {
eval _v="\$${2:-PATH}" eval _v="\$${2:-PATH}"
case :$_v: in case :$_v: in
*:$1:*) return 1;; # no we have it *:$1:*) return 1;; # no we have it
@ -181,15 +181,15 @@ no_path () {
return 0 return 0
} }
# if $1 exists and is not in path, append it # if $1 exists and is not in path, append it
add_path () {
function add_path {
[ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="\$${2:-PATH}:$1" [ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="\$${2:-PATH}:$1"
} }
# if $1 exists and is not in path, prepend it # if $1 exists and is not in path, prepend it
pre_path () {
function pre_path {
[ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="$1:\$${2:-PATH}" [ -d ${1:-.} ] && no_path $* && eval ${2:-PATH}="$1:\$${2:-PATH}"
} }
# if $1 is in path, remove it # if $1 is in path, remove it
del_path () {
function del_path {
no_path $* || eval ${2:-PATH}=`eval echo :'$'${2:-PATH}: | no_path $* || eval ${2:-PATH}=`eval echo :'$'${2:-PATH}: |
sed -e "s;:$1:;:;g" -e "s;^:;;" -e "s;:\$;;"` sed -e "s;:$1:;:;g" -e "s;^:;;" -e "s;:\$;;"`
} }

Loading…
Cancel
Save