mirror of
https://github.com/ohmybash/oh-my-bash.git
synced 2024-05-11 05:55:37 +00:00
Add short form of '-g' option to bashmarks plugin (#41)
Accept just a bookmark name as a short form of the '-g' option. If just
one arg is supplied, and it doesn't start with a dash, then it is assumed
to be a bookmark name and _goto_bookmark is called. [ bm BOOKMARK_NAME ]
Add a -h option to print usage info with same behavior as supplying no args
Add echoing an error message if an unrecognized option is given, followed
by usage info
Augment usage info to reflect these changes and update README.md
This commit is contained in:
@@ -67,19 +67,38 @@ function bm {
|
||||
_list_bookmark
|
||||
;;
|
||||
# help [ bm -h ]
|
||||
-h)
|
||||
_echo_usage
|
||||
;;
|
||||
*)
|
||||
echo 'USAGE:'
|
||||
echo 'bm -a <bookmark_name> - Saves the current directory as "bookmark_name"'
|
||||
echo 'bm -g <bookmark_name> - Goes (cd) to the directory associated with "bookmark_name"'
|
||||
echo 'bm -p <bookmark_name> - Prints the directory associated with "bookmark_name"'
|
||||
echo 'bm -d <bookmark_name> - Deletes the bookmark'
|
||||
echo 'bm -l - Lists all available bookmarks'
|
||||
kill -SIGINT $$
|
||||
exit 1
|
||||
if [[ $1 == -* ]]; then
|
||||
# unrecognized option. echo error message and usage [ bm -X ]
|
||||
echo "Unknown option '$1'"
|
||||
_echo_usage
|
||||
kill -SIGINT $$
|
||||
exit 1
|
||||
elif [[ $1 == "" ]]; then
|
||||
# no args supplied - echo usage [ bm ]
|
||||
_echo_usage
|
||||
else
|
||||
# non-option supplied as first arg. assume goto [ bm BOOKMARK_NAME ]
|
||||
_goto_bookmark "$1"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
# print usage information
|
||||
function _echo_usage {
|
||||
echo 'USAGE:'
|
||||
echo "bm -h - Prints this usage info"
|
||||
echo 'bm -a <bookmark_name> - Saves the current directory as "bookmark_name"'
|
||||
echo 'bm [-g] <bookmark_name> - Goes (cd) to the directory associated with "bookmark_name"'
|
||||
echo 'bm -p <bookmark_name> - Prints the directory associated with "bookmark_name"'
|
||||
echo 'bm -d <bookmark_name> - Deletes the bookmark'
|
||||
echo 'bm -l - Lists all available bookmarks'
|
||||
}
|
||||
|
||||
# save current directory to bookmarks
|
||||
function _save_bookmark {
|
||||
_bookmark_name_valid "$@"
|
||||
|
||||
Reference in New Issue
Block a user