summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--plugins/jump/jump.plugin.zsh21
1 files changed, 21 insertions, 0 deletions
diff --git a/plugins/jump/jump.plugin.zsh b/plugins/jump/jump.plugin.zsh
new file mode 100644
index 000000000..b792f544c
--- /dev/null
+++ b/plugins/jump/jump.plugin.zsh
@@ -0,0 +1,21 @@
+# Easily jump around the file system by manually adding marks
+# marks are stored as symbolic links in the directory $MARKPATH (default $HOME/.marks)
+#
+# jump FOO: jump to a mark named FOO
+# mark FOO: create a mark named FOO
+# unmark FOO: delete a mark
+# marks: lists all marks
+#
+export MARKPATH=$HOME/.marks
+function jump {
+ cd -P $MARKPATH/$1 2>/dev/null || echo "No such mark: $1"
+}
+function mark {
+ mkdir -p $MARKPATH; ln -s $(pwd) $MARKPATH/$1
+}
+function unmark {
+ rm -i $MARKPATH/$1
+}
+function marks {
+ ls -l $MARKPATH | sed 's/ / /g' | cut -d' ' -f9- | sed 's/ -/\t-/g' && echo
+}