From c037f0c55bb56677e68f3331870aaef3dfd99159 Mon Sep 17 00:00:00 2001 From: Arun Prakash Jana Date: Fri, 31 Mar 2017 08:22:51 +0530 Subject: [PATCH] Update documentation (man, README) --- README.md | 36 +++++++++++++++++++------------ nnn.1 | 63 +++++++++++++++++++++++++++++-------------------------- 2 files changed, 56 insertions(+), 43 deletions(-) diff --git a/README.md b/README.md index dbb5f8c..348ea0a 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,7 @@ Noice is Not Noice, a noicer fork... - [Installation](#installation) - [Usage](#usage) - [Keyboard shortcuts](#keyboard-shortcuts) +- [Filters](#filters) - [File type abbreviations](#file-type-abbreviations) - [Help](#help) - [Copy current file path to clipboard](#copy-current-file-path-to-clipboard) @@ -54,10 +55,11 @@ I chose to fork because: - full name of currently selected file - Case-insensitive alphabetic content listing instead of upper case first - Roll over at the first and last entries of a directory (with Up/Down keys) + - Removed navigation restriction with relative paths (and let permissions handle it) - Sort entries by file size (largest to smallest) - Shortcut to invoke file name copier (set using environment variable `NNN_COPIER`) - File associations - - Environment variable `NNN_OPENER` to override all associations and open all files with your desktop environment's default file opener. Examples: + - Environment variable `NNN_OPENER` to let desktop opener handle it all. E.g.: export NNN_OPENER=xdg-open export NNN_OPENER=gnome-open @@ -67,8 +69,8 @@ I chose to fork because: - Remove video file associations (to each his own favourite video player) - Associate common audio mimes with lightweight [fmedia](http://fmedia.firmdev.com/) - Associate PDF files with [zathura](https://pwmt.org/projects/zathura/) - - Removed `less` as default file opener - Use environment variable `NNN_FALLBACK_OPENER` to open other non-associated files + - Removed `less` as default file opener (there is no universal standalone opener utility) - Compilation - Use `-O3` for compilation, fixed warnings - Added compilation flag `-march=native` @@ -96,14 +98,14 @@ Start nnn (default: current directory): | Key | Function | | --- | --- | -| `Down`, `j`, `Ctrl-n` | next entry | -| `Up`, `k`, `Ctrl-p` | previous entry | -| `>`, `Enter`, `l` | open file or enter dir | -| `<`, `Backspace`, `h` | parent dir | -| `Page Down`, `Ctrl-d` | one page down | -| `Page Up`, `Ctrl-u` | one page up | -| `Home`, `Ctrl-a`, `^` | jump to first dir entry | -| `End`, `Ctrl-e`, `$` | jump to last dir entry | +| `Up`, `k`, `^P` | previous entry | +| `Down`, `j`, `^N` | next entry | +| `PgUp`, `^U` | scroll half page up | +| `PgDn`, `^D` | scroll half page down | +| `Home`, `^`, `^A` | jump to first dir entry | +| `End`, `$`, `^E` | jump to last dir entry | +| `Right`, `Enter`, `l`, `^M` | open file or enter dir | +| `Left`, `Backspace`, `h`, `^H` | parent dir | | `~` | jump to home dir | | `/`, `&` | filter dir contents | | `c` | show change dir prompt | @@ -112,13 +114,21 @@ Start nnn (default: current directory): | `s` | toggle sort by file size | | `t` | toggle sort by modified time | | `!` | spawn a shell in current dir | +| `z` | run `top` | | `e` | edit entry in `vim` | | `p` | open entry with `less` pager | -| `z` | run `top` | -| `Ctrl-k` | invoke file name copier | -| `Ctrl-l` | redraw window | +| `^K` | invoke file name copier | +| `^L` | redraw window | | `q` | quit | +### Filters + +Filters support regexes to display only the matched entries in the current directory view. This effectively allows searching through the directory tree for a particular entry. + +Filters do not stack on top of each other. They are applied anew every time. An empty filter expression resets the filter. + +If nnn is invoked as root the default filter will also match hidden files. + ### File type abbreviations The following abbreviations are used in the detail view: diff --git a/nnn.1 b/nnn.1 index 1010d10..d389d4c 100644 --- a/nnn.1 +++ b/nnn.1 @@ -3,30 +3,22 @@ .Os .Sh NAME .Nm nnn -.Nd small file browser +.Nd free, fast, friendly file browser .Sh SYNOPSIS .Nm nnn .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. +(Noice is Not Noice) is a fork of the noice terminal file browser with improved desktop integration, file associations and navigation. It remains a simple and efficient file browser that stays out of your way. .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. +is not specified. .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. +configuration. The default key bindings are listed below. .Pp .Bl -tag -width "l, [Right], [Return] or C-mXXXX" -offset indent -compact .It Ic k, [Up] or C-p @@ -45,18 +37,20 @@ Move to the last entry. Open file or enter directory. .It Ic h, C-h, [Left] or [Backspace] Back up one directory level. +.It Ic ~ +Change to the HOME directory. .It Ic / or & Change filter (see below for more information). .It Ic c Change into the given directory. -.It Ic ~ -Change to the HOME directory. +.It Ic d +Toggle detail view. .It Ic \&. Toggle hide .dot files. +.It Ic s +Toggle sort by file size. .It Ic t Toggle sort by time modified. -.It Ic C-l -Force a redraw. .It Ic \&! Spawn a shell in current directory. .It Ic z @@ -65,6 +59,10 @@ Run the system top utility. Open selected entry with the vi editor. .It Ic p Open selected entry with the less pager. +.It Ic C-k +Invoke file name copier. +.It Ic C-l +Force a redraw. .It Ic q Quit. .El @@ -77,18 +75,19 @@ 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 'v' command in -.Xr less 1 to edit the file using the EDITOR environment variable. +Environment variable +.Ar NNN_OPENER +overrides all hard-coded file associations. +.Pp +Hard-coded 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 environment variable +.Ar NNN_FALLBACK_OPENER +is invoked, if set. +.Pp +No particular utility is set as the default opener as no standalone universal opener for all mime types exists. .Pp See the examples section below for more information. .Sh FILTERS -Filters allow you to use regexes to display only the matched +Filters support 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 @@ -116,19 +115,24 @@ type. Custom associations are listed in the EXAMPLES section below. .Pp \fBNNN_COPIER:\fR set to a clipboard copier script. For example, on Linux: .Bd -literal + ------------------------------------- #!/bin/sh echo -n $1 | xsel --clipboard --input + ------------------------------------- .Sh EXAMPLES The following example shows one possible configuration for file associations which is also the default if environment variable NNN_OPENER is not set: .Bd -literal + ----------------------------------------------- struct assoc assocs[] = { { "\\.(c|cpp|h|txt|log)$", "vim" }, + { "\\.(wma|mp3|ogg|flac)$", "fmedia" }, { "\\.pdf$", "zathura" }, { "\\.sh$", "sh" }, }; + ----------------------------------------------- Plain text files are opened with vim. .br Any other file types are opened with the 'xdg-open' command. @@ -137,8 +141,7 @@ Any other file types are opened with the 'xdg-open' command. If you are using urxvt you might have to set backspacekey to DEC. .Sh AUTHORS .An Lazaros Koromilas Aq Mt lostd@2f30.org , -.An Dimitris Papastamos Aq Mt sin@2f30.org . -.Pp -** The current non-mainstream version is a modified one patched by Arun Prakash Jana . -.br -More details: https://github.com/jarun/nnn +.An Dimitris Papastamos Aq Mt sin@2f30.org , +.An Arun Prakash Jana Aq Mt engineerarun@gmail.com . +.Sh HOME +https://github.com/jarun/nnn