#!/usr/bin/env zsh function () { # Bookmarks local -A bookmarks=( 'nvim' '~/.config/nvim/init.vim' 'lf' '~/.config/lf/lfrc' 'mpv' '~/.config/mpv/mpv.conf' 'xres' '~/.config/X11/xresources' 'wm' '~/.config/bspwm/bspwmrc' 'keys' '~/.config/sxhkd/sxhkdrc' 'correo' '~/.config/mutt/muttrc' 'shell' '~/.config/zsh/.zshrc' 'dunst' '~/.config/dunst/dunstrc' 'ranger' '~/.config/ranger/rc.conf' 'music' '~/.config/ncmpcpp/config' 'tmux' '~/.tmux.conf' 'xinit' '~/.xinitrc' 'alias' '~/.config/zsh/aliases.plugin.zsh' 'compose' '~/.config/picom.conf' 'env' '~/.zshenv' ) local selected_bookmark if [[ "$1" != '' ]] { selected_bookmark="${bookmarks[$1]}" } else { local bookmarks_table local key foreach key (${(k)bookmarks}) { bookmarks_table+="$key ${bookmarks[$key]}\n" } if (! hash fzf &>/dev/null) { return 1 } else { selected_bookmark=$( printf "$bookmarks_table" \ | fzf \ --height='45%' \ ) selected_bookmark="${selected_bookmark[(ws: :)2]}" } } if [[ "$selected_bookmark" != '' ]] { eval $EDITOR "$selected_bookmark" } else { return 1 } }