|
- /* See LICENSE file for copyright and license details. */
- #define CWD "cwd: "
- #define CURSR " > "
- #define EMPTY " "
-
- static int mtimeorder = 0; /* Set to 1 to sort by time modified */
- static int sizeorder = 0; /* Set to 1 to sort by file size */
- static int bsizeorder = 0; /* Set to 1 to sort by blocks used including content */
- static int idletimeout = 0; /* Screensaver timeout in seconds, 0 to disable */
- static int showhidden = 0; /* Set to 1 to show hidden files by default */
- static int showdetail = 0; /* Set to show additional file info */
- static char *idlecmd = "rain"; /* The screensaver program */
-
- static struct assoc assocs[] = {
- { "\\.(c|cpp|h|log|md|py|sh|txt)$", "text" },
- { "\\.(3g2|3gp|asf|avi|divx|flv|m2v|m4v|mkv|mov|mp4|mp4v|mpeg|mpg|ogv|qt|rm|rmvb|vob|webm|wmv)$", "video" },
- { "\\.(aac|ac3|amr|flac|m4a|m4b|m4p|mp3|mp4a|ogg|opus|ra|wav|wma)$", "audio" },
- { "\\.(bmp|gif|jpeg|jpg|pbm|pgm|png|svg|tiff|webp)$", "image" },
- { "\\.pdf$", "pdf" },
- };
-
- static struct key bindings[] = {
- /* Quit */
- { 'q', SEL_QUIT, "", "" },
- { 'Q', SEL_CDQUIT, "", "" },
- /* Back */
- { KEY_BACKSPACE, SEL_BACK, "", "" },
- { KEY_LEFT, SEL_BACK, "", "" },
- { 'h', SEL_BACK, "", "" },
- { CONTROL('H'), SEL_BACK, "", "" },
- /* Inside */
- { KEY_ENTER, SEL_GOIN, "", "" },
- { '\r', SEL_GOIN, "", "" },
- { KEY_RIGHT, SEL_GOIN, "", "" },
- { 'l', SEL_GOIN, "", "" },
- /* Filter */
- { '/', SEL_FLTR, "", "" },
- /* Next */
- { 'j', SEL_NEXT, "", "" },
- { KEY_DOWN, SEL_NEXT, "", "" },
- { CONTROL('N'), SEL_NEXT, "", "" },
- /* Previous */
- { 'k', SEL_PREV, "", "" },
- { KEY_UP, SEL_PREV, "", "" },
- { CONTROL('P'), SEL_PREV, "", "" },
- /* Page down */
- { KEY_NPAGE, SEL_PGDN, "", "" },
- { CONTROL('D'), SEL_PGDN, "", "" },
- /* Page up */
- { KEY_PPAGE, SEL_PGUP, "", "" },
- { CONTROL('U'), SEL_PGUP, "", "" },
- /* First entry */
- { KEY_HOME, SEL_HOME, "", "" },
- { 'g', SEL_HOME, "", "" },
- { CONTROL('A'), SEL_HOME, "", "" },
- { '^', SEL_HOME, "", "" },
- /* Last entry */
- { KEY_END, SEL_END, "", "" },
- { 'G', SEL_END, "", "" },
- { CONTROL('E'), SEL_END, "", "" },
- { '$', SEL_END, "", "" },
- /* Change dir */
- { 'c', SEL_CD, "", "" },
- /* HOME */
- { '~', SEL_CDHOME, "", "" },
- /* Initial directory */
- { '&', SEL_CDBEGIN, "", "" },
- /* Last visited dir */
- { '-', SEL_CDLAST, "", "" },
- /* Toggle hide .dot files */
- { '.', SEL_TOGGLEDOT, "", "" },
- /* Detailed listing */
- { 'd', SEL_DETAIL, "", "" },
- /* File details */
- { 'D', SEL_STATS, "", "" },
- /* Show mediainfo short */
- { 'm', SEL_MEDIA, "", "" },
- /* Show mediainfo full */
- { 'M', SEL_FMEDIA, "", "" },
- /* Open dir in desktop file manager */
- { 'o', SEL_DFB, "", "" },
- /* Toggle sort by size */
- { 's', SEL_FSIZE, "", "" },
- /* Sort by total block size including dir contents */
- { 'S', SEL_BSIZE, "", "" },
- /* Toggle sort by time */
- { 't', SEL_MTIME, "", "" },
- { CONTROL('L'), SEL_REDRAW, "", "" },
- /* Copy currently selected file path */
- { CONTROL('K'), SEL_COPY, "", "" },
- /* Show help */
- { '?', SEL_HELP, "", "" },
- /* Run command */
- { 'z', SEL_RUN, "top", "" },
- { '!', SEL_RUN, "sh", "SHELL" },
- /* Run command with argument */
- { 'e', SEL_RUNARG, "vi", "EDITOR" },
- { 'p', SEL_RUNARG, "less", "PAGER" },
- };
|