From 68095db20f5e53a73e8f284f6a3c529a98d39e00 Mon Sep 17 00:00:00 2001 From: Bruce Hill Date: Wed, 3 Jun 2020 23:40:44 -0700 Subject: Misc fixes and tweaks --- scripts/bbbindkeys | 10 +++++----- scripts/bbpick | 10 +++++----- scripts/bbshutdown | 1 - scripts/bbstartup | 11 ++++++++--- scripts/bbtargets | 2 +- 5 files changed, 19 insertions(+), 15 deletions(-) (limited to 'scripts') diff --git a/scripts/bbbindkeys b/scripts/bbbindkeys index 8ffadc0..b89bb16 100755 --- a/scripts/bbbindkeys +++ b/scripts/bbbindkeys @@ -39,7 +39,7 @@ bbcmd cd:.. if [ -d "$BBCURSOR" ]; then bbcmd cd:"$BBCURSOR"; fi ## Ctrl-f: Search for file -file="$(find $BBGLOB -mindepth 1 -printf '%P\0' | bbpick "Find: ")" +file="$(find . -mindepth 1 -printf '%P\0' | bbpick "Find: ")" bbcmd goto:"$file" ## /: Pick a file @@ -115,6 +115,10 @@ bbcmd select: $patt patt="$(bbask "Unselect: ")" bbcmd deselect: $patt +## Comma: Save the current settings +bbconfirm "Save the current settings? " +echo "bbcmd glob:'$BBGLOB' sort:'$BBSORT' columns:'$BBCOLUMNS' $BBINTERLEAVE" > "$XDG_DATA_HOME"/bb/settings.sh + ## Ctrl-s: Save the selection [ $# -gt 0 ] savename="$(bbask "Save selection as: ")" @@ -187,10 +191,6 @@ bbcmd deselect refresh for f; do bbcmd sel:"$(basename "$f")"; done ## c: Copy a file -case "$(bbtargets "$BBCURSOR" "$@")" in - cursor) set -- "$BBCURSOR";; - both) set -- "$BBCURSOR" "$@";; -esac [ $# -gt 0 ] printf "\033[1mCopying the following to here:\n\033[33m$(printf ' %s\n' "$@")\033[0m" | bbunscroll | more bbconfirm diff --git a/scripts/bbpick b/scripts/bbpick index 3316484..8cad371 100755 --- a/scripts/bbpick +++ b/scripts/bbpick @@ -15,21 +15,21 @@ if [ -z "$PICKER" ]; then fi case "$PICKER" in - fzf) + fzf*) printf '\033[3A\033[?25h' >/dev/tty fzf --read0 --height=4 --prompt="$(printf "$1")" ;; - fzy) + fzy*) printf '\033[3A\033[?25h' >/dev/tty tr '\0' '\n' | fzy --lines=3 --prompt="$(printf "\033[1m$1\033[0m")" ;; - ask) + ask*) ask --read0 --prompt="$(printf "$1\033[?25h")" ;; - dmenu) + dmenu*) tr '\0' '\n' | dmenu -i -l 10 -p "$(printf "$1")" ;; - pick) + pick*) printf '\033[?25h' >/dev/tty tr '\0' '\n' | pick ;; diff --git a/scripts/bbshutdown b/scripts/bbshutdown index 368fd2f..987c376 100755 --- a/scripts/bbshutdown +++ b/scripts/bbshutdown @@ -1,3 +1,2 @@ #!/bin/sh # This file gets run when `bb` shuts down. -echo "bbcmd glob:'$BBGLOB' sort:'$BBSORT' columns:'$BBCOLUMNS' $BBINTERLEAVE" > "$XDG_DATA_HOME"/bb/settings.sh diff --git a/scripts/bbstartup b/scripts/bbstartup index 21d04e3..93fbb43 100755 --- a/scripts/bbstartup +++ b/scripts/bbstartup @@ -1,11 +1,16 @@ #!/bin/sh # This file contains the script that is run when bb launches +# Delay running command-line commands (bb +) until after startup: +tmpfile="$(mktemp "${TMPDIR-/tmp}/bb-cmdline-XXXXXX")" +trap 'cat "$tmpfile" >> "$BBCMD"; rm -f "$tmpfile"' EXIT +mv "$BBCMD" "$tmpfile" + +# Create bb data dir: [ ! -d "$XDG_DATA_HOME/bb" ] && mkdir -p "$XDG_DATA_HOME/bb" # Load key bindings bbbindkeys -if [ -e "$XDG_DATA_HOME/bb/settings.sh" ]; then - . "$XDG_DATA_HOME/bb/settings.sh" -fi +# Reload settings +[ -e "$XDG_DATA_HOME/bb/settings.sh" ] && . "$XDG_DATA_HOME/bb/settings.sh" diff --git a/scripts/bbtargets b/scripts/bbtargets index 1862ca0..dff50c9 100755 --- a/scripts/bbtargets +++ b/scripts/bbtargets @@ -16,7 +16,7 @@ else intended='Cursor file' fi -[ -z "$intended" ] && intended="$(printf '%s\0' 'Cursor file' 'Selected files' 'Both' | bbpick 'Which do you want to delete? ')" +[ -z "$intended" ] && intended="$(printf '%s\0' 'Cursor file' 'Selected files' 'Both' | bbpick 'Which do you mean? ')" case "$intended" in Cursor*) echo cursor ;; -- cgit v1.2.3