aboutsummaryrefslogtreecommitdiff
path: root/config.h
diff options
context:
space:
mode:
authorBruce Hill <bruce@bruce-hill.com>2019-05-22 00:25:25 -0700
committerBruce Hill <bruce@bruce-hill.com>2019-05-22 00:25:25 -0700
commit075525603907717663e22f424d40ac6a74b806db (patch)
tree7868f8a58b0d94a18ab7c191cce6c50a53364e30 /config.h
parentb7b6b6cc74a477a3745d06bce64e284e5b2dd880 (diff)
Added dynamically generated help, fixed some ctrl-c stuff.
Diffstat (limited to 'config.h')
-rw-r--r--config.h34
1 files changed, 28 insertions, 6 deletions
diff --git a/config.h b/config.h
index 146696d..7659983 100644
--- a/config.h
+++ b/config.h
@@ -1,8 +1,9 @@
/*
* User-defined key bindings.
*/
+#include "keys.h"
+
#define PROG_FUZZY "fzf"
-#define PROG_DELETE "rm -rf"
#define SCROLLOFF 5
#define NO_FILES (1<<0)
@@ -18,18 +19,39 @@ struct {
const char *command;
int flags;
} bindings[] = {
- {'?', "less"},
+ // User-defined custom scripts go here:
+ {'L', "less"},
{'D', "xargs rm -rf" DEVNULL, CLEAR_SELECTION | REFRESH | ONSCREEN},
{'d', "xargs -I @ sh -c 'rm -rfi @ </dev/tty'", CLEAR_SELECTION | REFRESH | ONSCREEN},
- {'+', "xargs -n1 -I @ cp @ @.copy" DEVNULL, REFRESH | ONSCREEN},
+ {'c', "xargs -n1 -I @ cp @ @.copy" DEVNULL, REFRESH | ONSCREEN},
{'m', "xargs -I @ mv -i @ . </dev/tty" DEVNULL, CLEAR_SELECTION | REFRESH | ONSCREEN},
{'p', "xargs -I @ cp -i @ . </dev/tty" DEVNULL, CLEAR_SELECTION | REFRESH | ONSCREEN},
{'n', "touch \"`printf '\\033[33;1mNew file:\\033[0m ' >/dev/tty && head -n1 /dev/tty`\"", ONSCREEN | REFRESH | NO_FILES},
{'|', "sh -c \"`printf '> ' >/dev/tty && head -n1 /dev/tty`\"", REFRESH},
{'>', "sh -c \"`printf '> ' >/dev/tty && head -n1 /dev/tty`\"", NO_FILES | REFRESH},
- {'r', "xargs -I @ -n1 sh -c 'mv \"@\" \"`printf \"\e[1mRename \e[0;33m%%s\e[0m: \" \"@\" >&2 && head -n1 </dev/tty`\"'",
- REFRESH | CLEAR_SELECTION | ONSCREEN},
- {'r', "xargs -I @ -n1 sh -c 'mv \"@\" \"`printf \"\\033[1mRename \\033[0;33m%%s\\033[0m: \" \"@\" >&2 && head -n1 </dev/tty`\"'",
+ {'r', "xargs -I @ -n1 sh -c 'mv \"@\" \"`printf \"\e[1mRename \e[1;33m%%s\e[0m: \" \"@\" >&2 && head -n1 </dev/tty`\"'",
REFRESH | CLEAR_SELECTION | ONSCREEN},
+
+ // Hard-coded behaviors (these are just placeholders for the help):
+ {-1, "?\t\e[0;34mOpen help menu\e[0m"},
+ {-1, "h,Left\t\e[0;34mNavigate up a directory\e[0m"},
+ {-1, "j,Down\t\e[0;34mMove cursor down\e[0m"},
+ {-1, "k,Up\t\e[0;34mMove cursor up\e[0m"},
+ {-1, "l,Right,Enter\t\e[0;34mOpen file/dir\e[0m"},
+ {-1, "Space\t\e[0;34mToggle selection\e[0m"},
+ {-1, "J\t\e[0;34mMove selection state down\e[0m"},
+ {-1, "K\t\e[0;34mMove selection state up\e[0m"},
+ {-1, "q,Q\t\e[0;34mQuit\e[0m"},
+ {-1, "g,Home\t\e[0;34mGo to first item\e[0m"},
+ {-1, "G,End\t\e[0;34mGo to last item\e[0m"},
+ {-1, "s\t\e[0;34mChange sorting\e[0m"},
+ {-1, "f,/\t\e[0;34mFuzzy find\e[0m"},
+ {-1, "Escape\t\e[0;34mClear selection\e[0m"},
+ {-1, "F5,Ctrl-R\t\e[0;34mRefresh\e[0m"},
+ {-1, "Ctrl-A\t\e[0;34mSelect all\e[0m"},
+ {-1, "Ctrl-C\t\e[0;34mAbort and exit\e[0m"},
+ {-1, "PgDn,Ctrl-D\t\e[0;34mPage down\e[0m"},
+ {-1, "PgUp,Ctrl-U\t\e[0;34mPage up\e[0m"},
+ {-1, "Ctrl-Z\t\e[0;34mSuspend\e[0m"},
{0},
};