oh-my-fish/plugins/omf/omf.packages.update.fish

53 lines
1.7 KiB
Fish
Raw Normal View History

2015-05-26 21:48:21 +08:00
# NAME
2015-05-31 20:29:05 +08:00
# omf.packages.update - Update a plugin or theme
#
# SYNOPSIS
# --plugin <plugin_name>
# --theme <theme_name>
2015-05-26 21:48:21 +08:00
#
# DESCRIPTION
2015-05-31 20:29:05 +08:00
# Update a plugin or theme
2015-05-26 21:48:21 +08:00
#
2015-05-31 20:29:05 +08:00
function omf.packages.update --argument-names type name -d "Update a plugin or theme"
pushd # Save current dir
2015-05-26 21:48:21 +08:00
2015-05-31 20:29:05 +08:00
switch $type
case '--plugin'
if [ -e $fish_path/plugins/$name -a -e $fish_path/plugins/$name/.git ]
omf.log -n white "Updating $name "
echo (cd $fish_path/plugins/$name; and git pull --rebase > /dev/null) >/dev/null
2015-05-31 19:31:55 +08:00
omf.log green "√"
2015-05-31 20:29:05 +08:00
emit omf_package_updated
2015-05-26 21:48:21 +08:00
else
2015-05-31 20:29:05 +08:00
if [ -e $fish_custom/plugins/$name -a -e $fish_custom/plugins/$name/.git ]
omf.log -n white "Updating $name "
echo (cd $fish_custom/plugins/$name; and git pull --rebase > /dev/null) >/dev/null
omf.log green "√"
emit omf_package_updated
else
#echo "Plugin is not installed or not a git repo. Skipping."
end
2015-05-26 21:48:21 +08:00
end
2015-05-31 20:29:05 +08:00
case '--theme'
if [ -e $fish_path/themes/$name -a -e $fish_path/themes/$name/.git ]
omf.log -n white "Updating $name "
echo (cd $fish_path/themes/$name; and git pull --rebase > /dev/null) >/dev/null
omf.log green "√"
emit omf_package_updated
else
if [ -e $fish_custom/themes/$name -a -e $fish_custom/themes/$name/.git ]
omf.log -n white "Updating $name "
echo (cd $fish_custom/themes/$name; and git pull --rebase > /dev/null) >/dev/null
omf.log green "√"
emit omf_package_updated
else
#echo "Theme is not installed or not a git repo. Skipping."
end
end
case '*'
omf.log red 'Unknown option'
2015-05-26 21:48:21 +08:00
end
2015-05-31 20:29:05 +08:00
popd # Restore current dir
2015-05-26 21:48:21 +08:00
end