diff --git a/functions/bookmarks b/functions/bookmarks new file mode 100755 index 0000000..6fe5dea --- /dev/null +++ b/functions/bookmarks @@ -0,0 +1,13 @@ +#!/bin/zsh +function bookmarks() { + typeset -A bookmarks + while read k v; do bookmarks[$k]="$v"; done < ~/.bookmarks + target=$(printf "%s\n" ${(k)bookmarks} | fzf) + cd ${~bookmarks[$target]} +} + +function zle-bookmarks() { + bookmarks + zle reset-prompt +} +zle -N zle-bookmarks diff --git a/modules/bindings/init b/modules/bindings/init index 7f11629..dbccb62 100644 --- a/modules/bindings/init +++ b/modules/bindings/init @@ -90,3 +90,4 @@ if exists incstring; then bindkey "^A" inc-last-command fi +bindkey "\eb" zle-bookmarks