From f0b32f45746c026d402651013b7e98315d6956a1 Mon Sep 17 00:00:00 2001 From: delta Date: Sat, 4 Mar 2023 22:04:55 +0100 Subject: restructure awesome config, add fresnel --- .config/fish/functions/up-or-search.fish | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .config/fish/functions/up-or-search.fish (limited to '.config/fish/functions/up-or-search.fish') diff --git a/.config/fish/functions/up-or-search.fish b/.config/fish/functions/up-or-search.fish new file mode 100644 index 0000000..11ef268 --- /dev/null +++ b/.config/fish/functions/up-or-search.fish @@ -0,0 +1,28 @@ +# Depending on cursor position and current mode, either search backward or move up one line" +function up-or-search -d "Search back or move cursor up 1 line" + # If we are already in search mode, continue + if commandline --search-mode + commandline -f history-prefix-search-backward + return + end + + # If we are navigating the pager, then up always navigates + if commandline --paging-mode + commandline -f up-line + return + end + + # We are not already in search mode. + # If we are on the top line, start search mode, + # otherwise move up + set -l lineno (commandline -L) + + switch $lineno + case 1 + commandline -f history-prefix-search-backward + + case '*' + commandline -f up-line + end +end + -- cgit v1.2.3