summary refs log tree commit diff
path: root/bin/fzfez
diff options
context:
space:
mode:
authorRobert Günzler <r@gnzler.io>2026-02-10 12:32:48 +0100
committerRobert Günzler <r@gnzler.io>2026-02-10 12:41:25 +0100
commit63feeb9f369fc6176e85c1c2d8fcc863caad1946 (patch)
tree41cd5d2d1ec36e74e464caab722cc9b460153f04 /bin/fzfez
parent5bd0a4aca65ecb9818ef1285982d160b6b6ff665 (diff)
start new
Signed-off-by: Robert Günzler <r@gnzler.io>
Diffstat (limited to 'bin/fzfez')
-rwxr-xr-xbin/fzfez181
1 files changed, 0 insertions, 181 deletions
diff --git a/bin/fzfez b/bin/fzfez
deleted file mode 100755
index e2e46f6..0000000
--- a/bin/fzfez
+++ /dev/null
@@ -1,181 +0,0 @@
-#!/bin/sh
-
-set -e
-[ -n "$DEBUG" ] && set -x
-
-windowstyle='border-sharp'
-
-exec_hist=/tmp/fzf-interactive_exec-hist
-if [ ! -f "$exec_hist" ]; then
-	touch "$exec_hist"
-fi
-
-_cat='cat'
-if bat --version >/dev/null; then
-	_cat='bat --color=always --style=numbers,changes'
-fi
-_ls='ls'
-if eza --version >/dev/null; then
-	_ls='eza --classify --group --header --group-directories-first --color=always'
-fi
-
-case "$1" in
-help | -h | --help)
-	printf "usage: fzfez [exec|git-log|git-tag|git-branches|rg|fd|vimwiki|*]\n"
-	exit 1
-	;;
-
-exec)
-	uniq "$exec_hist" |
-		grep -v '^$' |
-		fzf \
-			--header "${FZFEZ_HEADER:-EXEC:} select or enter a command, {} is \"$2\"" \
-			--bind 'tab:replace-query' \
-			--bind 'enter:print-query' |
-		tee -a $exec_hist |
-		sed "s#{}#$2#g" |
-		sh -s
-	exit $?
-	;;
-
-_preview)
-	case "$(xdg-mime query filetype "$2")" in
-	inode/directory) $_ls -la "$2" ;;
-	text/*) $_cat "$2" ;;
-	application/javascript) $_cat "$2" ;;
-	application/x-yaml) $_cat "$2" ;;
-	application/x-shellscript) $_cat "$2" ;;
-	application/json) jq "$2" || $_cat "$2" ;;
-	application/x-compressed-tar) tar -tvf "$2" ;;
-	application/pdf) pdftotext "$2" - ;;
-	image/*) mediainfo "$2" ;;
-	video/* | audio/*) mediainfo "$2" ;;
-	*) file "$2" ;;
-	esac
-	;;
-_preview-detach) # invoke for media files
-	case "$(xdg-mime query filetype "$2")" in
-	inode/directory) swx -f vifm "$2" ;;
-	image/*) swx -f imv "$2" ;;
-	video/* | audio/*) swx -f mpv "$2" ;;
-	application/pdf) swx -f zathura "$2" ;;
-	text/*) swx -t ${EDITOR} "$2" ;;
-	*) env FZFEZ_HEADER='PREVIEW-DETACH' $0 exec "$2" ;;
-	esac
-	;;
-_batpreview) # highlights the line matching the query, usage: _batpreview FILENAME QUERY
-	_filename=${2}
-	if [ -z "${_filename}" ]; then
-		exit 1
-	fi
-	_query=${3}
-	if [ -n "${_query}" ]; then
-		_ln=$(grep -n ${_query} "${_filename}" | head -n1 | cut -d: -f1)
-		[ -n "${_ln}" ] && opts="${opts} -H ${_ln}"
-	fi
-	shift 3
-	exec bat ${*} ${opts} "${_filename}"
-	;;
-
-	# | sed 's#^refs/##' \
-	# | sed 's#^remotes/##' \
-	# | sed 's#^heads/##' \
-git-branches)
-	git rev-parse HEAD >/dev/null 2>&1 || exit 1
-	git branch -a --format='%(refname)' |
-		grep -v 'remote' |
-		cut -d'/' -f3 |
-		sort |
-		env FZFEZ_HEADER='BRANCHES: c-o (switch)' \
-			$0 \
-			--ansi --no-sort --tac \
-			--preview 'git log --color=always --oneline --graph --date=short ..{} && echo && git diff --color=always --stat {}' \
-			--preview-window "${windowstyle},right:70%" \
-			--bind "ctrl-o:execute(git switch {})+abort"
-	;;
-
-git-tags)
-	git rev-parse HEAD >/dev/null 2>&1 || exit 1
-	git tag --sort -version:refname |
-		cut -d' ' -f1 |
-		sed 's#^refs/##' |
-		sed 's#^remotes/##' |
-		sed 's#^heads/##' |
-		env FZFEZ_HEADER='TAGS:' \
-			$0 \
-			--ansi --no-sort \
-			--preview 'git show --color=always {} | head -${LINES}' \
-			--preview-window "${windowstyle},right:70%"
-	;;
-
-git-log)
-	git log --color=always --oneline |
-		env FZFEZ_HEADER='LOG:' \
-			$0 \
-			--ansi --no-sort --reverse \
-			--preview 'echo {} | cut -d\  -f1 | xargs git show --color=always --pretty=full --stat --patch' \
-			--preview-window "${windowstyle},right:50%" |
-		cut -d' ' -f1 |
-		xargs -r -i git log -1 --pretty=%H {}
-	;;
-
-neuron)
-	NOTESDIR=$HOME/.zk
-	rg --no-heading --line-number --with-filename --sort path . "${NOTESDIR}" |
-		env FZFEZ_HEADER='NEURON:' \
-			$0 \
-			--tac -d ':' -n .. \
-			--preview 'bat --style=plain --color=always --highlight-line={2} {1}' \
-			--preview-window "${windowstyle},+{2}-20" |
-		awk -F: "{system(\"${EDITOR}\" \" -c \" \$2 \" \" \$1)}"
-	;;
-
-rg)
-	shift
-	rg --files-with-matches "$@" |
-		env FZFEZ_HEADER='RG:' \
-			$0 \
-			--preview "rg \"$*\" --color=always --no-filename --glob='{}' --context=5 --line-number" \
-			--preview-window "${windowstyle}"
-	;;
-
-fd)
-	shift
-	fd "$@" |
-		env FZFEZ_HEADER='FD: c-o (xdg-open)' \
-			$0 \
-			--ansi --reverse \
-			--bind "ctrl-o:execute(xdg-open {})+abort" \
-			--preview-window "${windowstyle},hidden"
-	;;
-
-clipboard | cb)
-	shift
-	wl-paste | env FZFEZ_HEADER='CLIPBOARD:' $0
-	;;
-
-mail)
-	shift
-	exec fzf-notmuch "$@"
-	;;
-
-*)
-	fzf \
-		--header "${FZFEZ_HEADER:-FZF:} c-x (exec), ? (preview), c-space (preview-detach), c-s (sort)" \
-		--preview "${0} _preview {}" \
-		--preview-window "${windowstyle},hidden" \
-		--multi \
-		--bind 'enter:replace-query+print-query' \
-		--bind 'ctrl-a:select-all' \
-		--bind '?:toggle-preview' \
-		--bind 'ctrl-s:toggle-sort' \
-		--bind "ctrl-space:execute(${0} _preview-detach {})" \
-		--bind "ctrl-y:yank" \
-		--bind "ctrl-e:execute(${EDITOR} {})+abort" \
-		--bind "ctrl-x:execute(env FZFEZ_HEADER=EXEC: ${0} exec {})+abort" \
-		--height '50%' \
-		--reverse \
-		$FZFEZ_OPTS \
-		"$@"
-	;;
-esac