summaryrefslogtreecommitdiff
path: root/z
diff options
context:
space:
mode:
Diffstat (limited to 'z')
-rwxr-xr-xz35
1 files changed, 33 insertions, 2 deletions
diff --git a/z b/z
index 1a3507e..855e669 100755
--- a/z
+++ b/z
@@ -1,2 +1,33 @@
-#!/usr/bin/env sh
-exec guile -l ~/biz/z.scm -e main -s ~/biz/z.scm "$@" 2>/tmp/z.err
+#!/usr/bin/env bash
+# TODO:
+# -- browse tags:
+# --bind "ctrl-t:unbind(change)+enable-search+preview[echo 'match: {}']+reload[rg --no-filename --only-matching '(^|\B)#\w+' | sort | uniq]" \
+# - vim function to follow wiki links
+set -euo pipefail
+notesdir=${NOTES:-~/notes/notes}
+cd "$notesdir"
+RG="rg --ignore-case --files-with-matches"
+RG_VIEW="rg --no-line-number --color=always --ignore-case --pretty --context 5"
+EDITOR="vim --cmd 'set wrap'"
+DATEFMT="+%Y.%-m.%-d"
+fzf \
+ --ansi \
+ --disabled \
+ --header="alt+: 0=view 1=search 2=tags 3=outline 4=backlinks" \
+ --header-first \
+ --bind "ctrl-/:change-preview-window(90%|down|hidden|)" \
+ --bind "change:reload:$RG {q} || true" \
+ --bind "enter:execute($EDITOR {})" \
+ --bind "alt-enter:execute($EDITOR {q}.md)" \
+ --bind "ctrl-space:execute($EDITOR daily/\$(date $DATEFMT).md)" \
+ --bind "ctrl-r:replace-query" \
+ --bind "pgdn:preview-page-down" \
+ --bind "pgup:preview-page-up" \
+ --bind "alt-0:preview:bat -p --color always {}" \
+ --bind "alt-1:preview($RG_VIEW {q} {})" \
+ --bind "alt-1:+reload:$RG {q} || true" \
+ --bind "alt-2:preview:rg --only-matching '(^|\B)#\w+' {}" \
+ --bind "alt-3:preview:rg --only-matching '^[#]+ .*$' {}" \
+ --bind "alt-4:reload:rg -lF \$(tr -d '.md' <<< {+}) || true" \
+ --preview "$RG_VIEW {q} {}"
+