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

49 lines
1.6 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 ]
emit omf_package_updating $name
2015-05-31 20:29:05 +08:00
echo (cd $fish_path/plugins/$name; and git pull --rebase > /dev/null) >/dev/null
emit omf_package_updated $name
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 ]
emit omf_package_updating $name
2015-05-31 20:29:05 +08:00
echo (cd $fish_custom/plugins/$name; and git pull --rebase > /dev/null) >/dev/null
emit omf_package_updated $name
2015-05-31 20:29:05 +08:00
else
# Plugin is not installed or not a git repo. Skipping.
2015-05-31 20:29:05 +08:00
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 ]
emit omf_package_updating $name
2015-05-31 20:29:05 +08:00
echo (cd $fish_path/themes/$name; and git pull --rebase > /dev/null) >/dev/null
emit omf_package_updated $name
2015-05-31 20:29:05 +08:00
else
if [ -e $fish_custom/themes/$name -a -e $fish_custom/themes/$name/.git ]
emit omf_package_updating $name
2015-05-31 20:29:05 +08:00
echo (cd $fish_custom/themes/$name; and git pull --rebase > /dev/null) >/dev/null
emit omf_package_updated $name
2015-05-31 20:29:05 +08:00
else
# Theme is not installed or not a git repo. Skipping.
2015-05-31 20:29:05 +08:00
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