Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Ohmyzsh
Commits
1dd9c43e
Commit
1dd9c43e
authored
Dec 02, 2013
by
Robby Russell
Browse files
Merge pull request #1134 from koraa/pull_req_helpers
Helpers for default variables and alias value access
parents
c9dd778e
8f71efc0
Changes
1
Hide whitespace changes
Inline
Side-by-side
lib/functions.zsh
View file @
1dd9c43e
...
@@ -15,3 +15,61 @@ function take() {
...
@@ -15,3 +15,61 @@ function take() {
cd
$1
cd
$1
}
}
#
# Get the value of an alias.
#
# Arguments:
# 1. alias - The alias to get its value from
# STDOUT:
# The value of alias $1 (if it has one).
# Return value:
# 0 if the alias was found,
# 1 if it does not exist
#
function
alias_value
()
{
alias
"
$1
"
|
sed
"s/^
$1
='
\(
.*
\)
'
$/
\1
/"
test
$(
alias
"
$1
"
)
}
#
# Try to get the value of an alias,
# otherwise return the input.
#
# Arguments:
# 1. alias - The alias to get its value from
# STDOUT:
# The value of alias $1, or $1 if there is no alias $1.
# Return value:
# Always 0
#
function
try_alias_value
()
{
alias_value
"
$1
"
||
echo
"
$1
"
}
#
# Set variable "$1" to default value "$2" if "$1" is not yet defined.
#
# Arguments:
# 1. name - The variable to set
# 2. val - The default value
# Return value:
# 0 if the variable exists, 3 if it was set
#
function
default
()
{
test
`
typeset
+m
"
$1
"
`
&&
return
0
typeset
-g
"
$1
"
=
"
$2
"
&&
return
3
}
#
# Set enviroment variable "$1" to default value "$2" if "$1" is not yet defined.
#
# Arguments:
# 1. name - The env variable to set
# 2. val - The default value
# Return value:
# 0 if the env variable exists, 3 if it was set
#
function
env_default
()
{
env
|
grep
-q
"^
$1
="
&&
return
0
export
"
$1
=
$2
"
&&
return
3
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment