name change to 'zshmarks' to better represent that this comes from 'bash marks'

added a new function to manually edit the ~/.bookmarks file, using whatever $EDITOR the use has registered
This commit is contained in:
Jocelyn Mallon 2011-10-03 19:25:26 -07:00
commit c103b091d4
3 changed files with 27 additions and 22 deletions

View file

@ -1,4 +0,0 @@
#compdef go
#autoload
_arguments "1: :(`grep "|" $HOME/.zshbookmarks | cut -d\| -f2`)"

4
plugins/zshmarks/_go Normal file
View file

@ -0,0 +1,4 @@
#compdef go
#autoload
_arguments "1: :(`grep "|" $HOME/.bookmarks | cut -d\| -f2`)"

View file

@ -1,15 +1,15 @@
# ------------------------------------------------------------------------------
# FILE: go.plugin.zsh
# FILE: zshmarks.plugin.zsh
# DESCRIPTION: oh-my-zsh plugin file.
# AUTHOR: Jocelyn Mallon (jocelyn.e.mallon@gmail.com)
# VERSION: 1.0
# ------------------------------------------------------------------------------
bookmarks_file="$HOME/.zshbookmarks"
bookmarks_file="$HOME/.bookmarks"
# Create bookmarks_file it if it doesn't exist
if [[ ! -f $bookmarks_file ]]; then
touch $bookmarks_file
touch $bookmarks_file
fi
function bookmark() {
@ -29,22 +29,27 @@ function bookmark() {
}
function go() {
bookmark_name=$1
bookmark="$(grep "|$bookmark_name$" "$bookmarks_file")"
if [[ -z $bookmark ]]; then
echo "Invalid name, please provide a valid bookmark name. For example:"
echo " go foo"
echo
echo "To bookmark a folder, go to the folder then do this (naming the bookmark 'foo'):"
echo " bookmark foo"
else
dir="${bookmark%%|*}"
cd "${dir}"
dir=""
fi
bookmark_name=$1
bookmark="$(grep "|$bookmark_name$" "$bookmarks_file")"
if [[ -z $bookmark ]]; then
echo "Invalid name, please provide a valid bookmark name. For example:"
echo " go foo"
echo
echo "To bookmark a folder, go to the folder then do this (naming the bookmark 'foo'):"
echo " bookmark foo"
else
dir="${bookmark%%|*}"
cd "${dir}"
dir=""
fi
}
# Show a list of the bookmarks
function bookmarksshow(){
cat ~/.bookmarks | awk '{ printf "%-40s%-40s%s\n",$1,$2,$3}' FS=\|
function showmarks() {
cat ~/.bookmarks | awk '{ printf "%-40s%-40s%s\n",$1,$2,$3}' FS=\|
}
# manually edit bookmarks
function editmarks() {
$EDITOR $bookmarks_file
}