2006-11-08 04:55:39 +08:00
|
|
|
|
2007-01-16 09:29:18 +08:00
|
|
|
function alias --description "Legacy function for creating shellscript functions using an alias-like syntax"
|
2006-11-18 00:24:38 +08:00
|
|
|
|
|
|
|
if count $argv >/dev/null
|
|
|
|
switch $argv[1]
|
|
|
|
case -h --h --he --hel --help
|
|
|
|
__fish_print_help alias
|
|
|
|
return 0
|
|
|
|
end
|
|
|
|
end
|
|
|
|
|
2006-11-08 04:55:39 +08:00
|
|
|
set -l name
|
|
|
|
set -l body
|
|
|
|
switch (count $argv)
|
|
|
|
|
|
|
|
case 1
|
|
|
|
set -l tmp (echo $argv|sed -e "s/\([^=]\)=/\1\n/")
|
|
|
|
set name $tmp[1]
|
|
|
|
set body $tmp[2]
|
|
|
|
|
|
|
|
case 2
|
|
|
|
set name $argv[1]
|
|
|
|
set body $argv[2]
|
|
|
|
|
|
|
|
case \*
|
|
|
|
printf ( _ "%s: Expected one or two arguments, got %d") alias (count $argv)
|
|
|
|
return 1
|
|
|
|
end
|
|
|
|
|
|
|
|
eval "function $name; $body \$argv; end"
|
|
|
|
end
|