.Dd Jan 19, 2019 .Dt NOICE 1 .Os .Sh NAME .Nm noice .Nd small file browser .Sh SYNOPSIS .Nm .Op Fl p .Op Ar dir .Sh DESCRIPTION .Nm is a simple and efficient file browser that gets out of your way as much as possible. It was initially implemented to be controlled with a TV remote control. .Pp .Nm defaults to the current directory if .Ar dir is not specified. As an extra feature, if .Ar dir is a relative path, .Nm will not go back beyond the first component of the path using standard navigation key presses. .Pp If the .Fl p flag is passed, .Nm will print the last path upon exit. This can be circumvented by exiting via SIGINT. .Pp .Nm supports both vi-like and emacs-like key bindings in the default configuration. The default key bindings are described below; their functionality is described in more detail later. .Pp .Bl -tag -width "l, [Right], [Return] or C-mXXXX" -offset indent -compact .It Ic k, [Up] or C-p Move to previous entry. .It Ic j, [Down] or C-n Move to next entry. .It Ic [Pgup] or C-u Scroll up half a page. .It Ic [Pgdown] or C-d Scroll down half a page. .It Ic [Home], ^ or M-< Move to the first entry. .It Ic [End], $ or M-> Move to the last entry. .It Ic l, [Right], [Return] or C-m Open file or enter directory. .It Ic h, C-h, [Left] or [Backspace] Back up one directory level. .It Ic / or & Change filter (see below for more information). .It Ic c Change into the given directory. .It Ic ~ Change to the .Ev HOME directory. .It Ic \&. Toggle hidden .dot files. .It Ic d Toggle sort by directory first. .It Ic t Toggle sort by time modified. .It Ic i Toggle case sensitive sort. .It Ic C-l Force a redraw. .It Ic \&! Spawn a shell in current directory. .It Ic z Run the system top utility. .It Ic e Open selected entry with the vi editor. .It Ic p Open selected entry with the less pager. .It Ic q Quit. .El .Pp Backing up one directory level will set the cursor position at the directory you came out of. .Sh CONFIGURATION .Nm is configured by modifying .Pa config.h and recompiling the code. .Pp The file associations are specified by regexes matching on the currently selected filename. If a match is found the associated program is executed with the filename passed in as the argument. If no match is found the program .Xr less 1 is invoked. This is useful for editing text files as one can use the .Ic v command in .Xr less 1 to edit the file using the .Ev EDITOR environment variable. .Pp See the examples section below for more information. .Sh FILTERS Filters allow you to use regexes to display only the matched entries in the current directory view. This effectively allows searching through the directory tree for a particular entry. .Pp Filters do not stack on top of each other. They are applied anew every time. .Pp To reset the filter you can input an empty filter expression. .Pp If .Nm is invoked as root the default filter will also match hidden files. .Sh ENVIRONMENT The .Ev SHELL , .Ev EDITOR and .Ev PAGER environment variables take precedence when dealing with the .Ic \&! , .Ic e and .Ic p commands respectively. .Sh EXAMPLES The following example shows one possible configuration for file associations which is also the default: .Bd -literal struct assoc assocs[] = { { "\\.(avi|mp4|mkv|mp3|ogg|flac|mov)$", "mpv" }, { "\\.(png|jpg|gif)$", "sxiv" }, { "\\.(html|svg)$", "firefox" }, { "\\.pdf$", "mupdf" }, { "\\.sh$", "sh" }, { ".", "less" }, }; .Ed .Sh KNOWN ISSUES If you are using .Xr urxvt 1 you might have to set backspace key to DEC. .Sh AUTHORS .An Lazaros Koromilas Aq Mt lostd@2f30.org , .An Dimitris Papastamos Aq Mt sin@2f30.org .