diff options
| author | Bruce Hill <bruce@bruce-hill.com> | 2019-05-21 20:06:53 -0700 |
|---|---|---|
| committer | Bruce Hill <bruce@bruce-hill.com> | 2019-05-21 20:06:53 -0700 |
| commit | 3d401cd70150fd8f984b644f24ffe34488a7d656 (patch) | |
| tree | 414dd2d23c8ca33dd7849c0d07750b5cf504d35c /config.h | |
| parent | 1a0382f55de966426586441e8ec33db3b4e7100f (diff) | |
Updates and improvements.
Diffstat (limited to 'config.h')
| -rw-r--r-- | config.h | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/config.h b/config.h new file mode 100644 index 0000000..109d318 --- /dev/null +++ b/config.h @@ -0,0 +1,36 @@ +/* + * User-defined key bindings. + */ +#define PROG_FUZZY "fzf" +#define PROG_DELETE "rm -rf" +#define SCROLLOFF 5 + +#define NO_FILES (1<<0) +#define PROMPT (1<<1) +#define CD_TO_RESULT (1<<2) +#define REFRESH (1<<3) +#define CLEAR_SELECTION (1<<4) +#define SILENT (1<<5) + +#define DEVNULL " >/dev/null 2>/dev/null" + +struct { + int key; + const char *command; + int flags; + const char *prompt; +} bindings[] = { + {'?', "less"}, + {'D', "xargs rm -rf" DEVNULL, CLEAR_SELECTION | REFRESH | SILENT}, + {'d', "xargs -I @ sh -c 'rm -rfi @ </dev/tty'", CLEAR_SELECTION | REFRESH}, + {'+', "xargs -n1 -I @ cp @ @.copy" DEVNULL, REFRESH | SILENT}, + {'m', "xargs -I @ mv @ ." DEVNULL, CLEAR_SELECTION | REFRESH | SILENT}, + {'p', "xargs -I @ cp @ ." DEVNULL, CLEAR_SELECTION | REFRESH | SILENT}, + {'n', "touch %s", SILENT | PROMPT | REFRESH | NO_FILES, "New file: "}, + {'|', "sh -c \"`read -p '> ' </dev/tty`\"", 0},//, PROMPT, "> "}, + //{'|', "%s", PROMPT, "> "}, + {'>', "%s", PROMPT | NO_FILES, "> "}, + {'r', "xargs -I @ -n1 sh -c 'mv \"@\" \"`printf \"\\033[1mRename \\033[0;33m%%s\\033[0m: \" \"@\" >&2 && head -n1 </dev/tty`\"'", + REFRESH | CLEAR_SELECTION}, + {0}, +}; |
