Update docs

This commit is contained in:
Arun Prakash Jana 2018-11-11 23:20:16 +05:30
parent ede3e0830e
commit 642af4667c
No known key found for this signature in database
GPG key ID: A75979F35C080412
5 changed files with 43 additions and 42 deletions

View file

@ -36,7 +36,7 @@ It runs on Linux, OS X, Raspberry Pi, Cygwin, Linux subsystem for Windows and Te
<a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RMLTQ76JSXJ4Q"><img src="https://img.shields.io/badge/PayPal-donate-green.svg" alt="Donate via PayPal!" /></a> <a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=RMLTQ76JSXJ4Q"><img src="https://img.shields.io/badge/PayPal-donate-green.svg" alt="Donate via PayPal!" /></a>
</p> </p>
### Table of Contents #### TABLE OF CONTENTS
- [Features](#features) - [Features](#features)
- [Performance](#performance) - [Performance](#performance)
@ -71,48 +71,49 @@ It runs on Linux, OS X, Raspberry Pi, Cygwin, Linux subsystem for Windows and Te
- [work faster at rename prompt](#work-faster-at-rename-prompt) - [work faster at rename prompt](#work-faster-at-rename-prompt)
- [set idle timeout](#set-idle-timeout) - [set idle timeout](#set-idle-timeout)
- [show hot plugged drives](#show-hot-plugged-drives) - [show hot plugged drives](#show-hot-plugged-drives)
- [tmux config](#tmux-config) - [tmux configuration](#tmux-configuration)
- [Why fork?](#why-fork) - [Why fork?](#why-fork)
- [Mentions](#mentions) - [Mentions](#mentions)
- [Developers](#developers) - [Developers](#developers)
### Features #### FEATURES
- Modes - basic, detail (default), disk usage analyzer (du) - Modes
- Basic, detail (default), disk usage analyzer (du)
- Navigation - Navigation
- Familiar, easy shortcuts (arrows, `~`, `-`, `&`) - Familiar, easy shortcuts (arrows, `~`, `-`, `&`)
- *Navigate-as-you-type* mode with dir auto-select for the maverick - *Navigate-as-you-type* with auto-select directory
- Handy bookmarks, start at bookmark, pin and visit directory - Contexts (_aka_ tabs _aka_ workspaces)
- Multiple contexts - Bookmarks, pin and visit directory
- Roll-over at edges, page through entries
- Show directories in custom color (default: enabled in blue)
- Sorting - Sorting
- Directories always listed on top - Directories always listed on top
- Sort by file name, modification time, size - Sort by file name, modification time, size
- Numeric order (1, 2, ... 10, 11, ...) for numeric names - Numeric order for numeric names (visit _/proc_)
- Search - Search
- Superfast directory content filtering with *search-as-you-type* - Instant filtering with *search-as-you-type*
- Mimes - Mimes
- Open with desktop opener (default) or specify a custom app - Open with desktop opener or specify a custom app
- Create, list and extract archives (needs atool/patool) - Create, list, extract archives (needs (p)atool)
- Optionally open text files in EDITOR (fallback vi) - Open all text files in EDITOR (optional)
- Information - Information
- Detailed stat-like file information - Detailed stat-like file information
- Media information (needs mediainfo or exiftool, if specified) - Media information (needs mediainfo/exiftool)
- Convenience - Convenience
- Copy, move, delete multiple files by selection
- Create, rename files and directories - Create, rename files and directories
- Batch rename/move/delete current directory entries in vidir (from moreutils) - Select multiple files; copy, move, delete selection
- Spawn SHELL (fallback sh) in the current directory - Batch rename/move/delete (needs vidir)
- Show directories in custom color (default: blue)
- Spawn SHELL in the current directory
- Run custom scripts in the current directory - Run custom scripts in the current directory
- Change directory at exit (*easy* shell integration) - Change directory at exit (*easy* shell integration)
- Open any file in EDITOR (fallback vi) or PAGER (fallback less) - Edit file in EDITOR or open in PAGER
- GUI app launcher (maximum 2 space-separated arguments) - GUI app launcher (up to 2 space-separated args)
- Terminal screensaver/locker integration - Terminal locker integration
- Unicode support - Unicode support
- Highly optimized code, minimal resource usage - Highly optimized code, minimal resource usage
- Available on many distros
### Performance #### PERFORMANCE
`nnn` vs. ncdu memory usage in disk usage analyzer mode (400K files on disk): `nnn` vs. ncdu memory usage in disk usage analyzer mode (400K files on disk):
@ -133,7 +134,7 @@ It runs on Linux, OS X, Raspberry Pi, Cygwin, Linux subsystem for Windows and Te
Intrigued? Find out [HOW](https://github.com/jarun/nnn/wiki/performance-factors). Intrigued? Find out [HOW](https://github.com/jarun/nnn/wiki/performance-factors).
### Installation #### INSTALLATION
#### Dependencies #### Dependencies
@ -172,11 +173,11 @@ To cook yourself, download the [latest stable release](https://github.com/jarun/
`PREFIX` is supported, in case you want to install to a different location. `PREFIX` is supported, in case you want to install to a different location.
### Shell completion #### SHELL COMPLETION
Search keyword and option completion scripts for Bash, Fish and Zsh can be found in respective subdirectories of [`scripts/auto-completion/`](scripts/auto-completion). Please refer to your shell's manual for installation instructions. Search keyword and option completion scripts for Bash, Fish and Zsh can be found in respective subdirectories of [`scripts/auto-completion/`](scripts/auto-completion). Please refer to your shell's manual for installation instructions.
### Usage #### USAGE
#### Cmdline options #### Cmdline options
@ -260,7 +261,7 @@ If all the configured bookmark keys are single character, the prompt is not show
#### Contexts #### Contexts
Contexts (aka _tabs_ aka _workspaces_) serve the purpose of exploring multiple directories simultaneously. 4 contexts are available. The status of the contexts are shown in the top left corner: Contexts serve the purpose of exploring multiple directories simultaneously. 4 contexts are available. The status of the contexts are shown in the top left corner:
- the current context is in reverse - the current context is in reverse
- other used contexts are underlined - other used contexts are underlined
@ -314,9 +315,10 @@ The following indicators are used in the detail view:
| External dependency | Operation | | External dependency | Operation |
| --- | --- | | --- | --- |
| xdg-open (Linux), open(1) (OS X), cygstart (Cygwin) | desktop opener | | xdg-open (Linux), open(1) (OS X), cygstart (Cygwin) | desktop opener |
| cp, mv, rm | copy, move and remove files |
| mediainfo, exiftool | multimedia file details | | mediainfo, exiftool | multimedia file details |
| atool, patool ([integration](#integrate-patool)) | create, list and extract archives | | atool, patool ([integration](#integrate-patool)) | create, list and extract archives |
| vidir from moreutils | batch rename, move, delete dir entries | | vidir (from moreutils) | batch rename, move, delete dir entries |
| vlock (Linux), bashlock (OS X), lock(1) (BSD) | terminal locker | | vlock (Linux), bashlock (OS X), lock(1) (BSD) | terminal locker |
| $EDITOR (overridden by $VISUAL, if defined) | edit files (fallback vi) | | $EDITOR (overridden by $VISUAL, if defined) | edit files (fallback vi) |
| $PAGER | page through files (fallback less) | | $PAGER | page through files (fallback less) |
@ -332,7 +334,7 @@ The following indicators are used in the detail view:
$ man nnn $ man nnn
To lookup keyboard shortcuts at runtime, press <kbd>?</kbd>. To lookup keyboard shortcuts at runtime, press <kbd>?</kbd>.
### Quickstart #### QUICKSTART
1. Install the [utilities required](#file-handling) for your regular activities. 1. Install the [utilities required](#file-handling) for your regular activities.
2. Configure [cd on quit](#cd-on-quit). 2. Configure [cd on quit](#cd-on-quit).
@ -343,7 +345,7 @@ To lookup keyboard shortcuts at runtime, press <kbd>?</kbd>.
5. Press <kbd>?</kbd> for help on keyboard shortcuts anytime. 5. Press <kbd>?</kbd> for help on keyboard shortcuts anytime.
6. For additional functionality [setup custom scripts](#run-custom-scripts). 6. For additional functionality [setup custom scripts](#run-custom-scripts).
### How to #### HOW TO
#### add bookmarks #### add bookmarks
@ -484,30 +486,30 @@ The rename prompt supports some bash-like command-line shortcuts - <kbd>^A</kbd>
#### set idle timeout #### set idle timeout
The terminal screensaver is disabled by default. To set the wait time in seconds, use environment variable `NNN_IDLE_TIMEOUT`. The terminal locker is disabled by default. To set the wait time in seconds, use environment variable `NNN_IDLE_TIMEOUT`.
#### show hot plugged drives #### show hot plugged drives
Enable volume management in your DE file manager and set removable drives or media to be auto-mounted when inserted. Then visit the usual mount point location (`/mnt` or `/media/user`) in `nnn`. Enable volume management in your DE file manager and set removable drives or media to be auto-mounted when inserted. Then visit the usual mount point location (`/mnt` or `/media/user`) in `nnn`.
#### tmux config #### tmux configuration
`nnn` might not handle keypresses correctly when used with tmux (see issue #104 for more details). Set `TERM=xterm-256color` to address it. `nnn` might not handle keypresses correctly when used with tmux (see issue #104 for more details). Set `TERM=xterm-256color` to address it.
### Why fork? #### WHY FORK?
`nnn` was initially forked from [noice](http://git.2f30.org/noice/) but is significantly [different](https://github.com/jarun/nnn/wiki/nnn-vs.-noice) today. I chose to fork because: `nnn` was initially forked from [noice](http://git.2f30.org/noice/) but is significantly [different](https://github.com/jarun/nnn/wiki/nnn-vs.-noice) today. I chose to fork because:
- one can argue my approach deviates from the goal of the original project - keep the utility `suckless`. In my opinion evolution is the taste of time. - one can argue my approach deviates from the goal of the original project - keep the utility `suckless`. `noice` was rudimentary. In my opinion evolution is the taste of time.
- I would like to have a bit of control on what features are added in the name of desktop integration. A feature-bloat is the last thing in my mind. Check out [nnn design considerations](https://github.com/jarun/nnn/wiki/nnn-design-considerations) for more details. - I would like to have a bit of control on what features are added in the name of desktop integration. A feature-bloat is the last thing in my mind. Check out [nnn design considerations](https://github.com/jarun/nnn/wiki/nnn-design-considerations) for more details.
### Mentions #### MENTIONS
- [FOSSMint](https://www.fossmint.com/nnn-linux-terminal-file-browser/) - [FOSSMint](https://www.fossmint.com/nnn-linux-terminal-file-browser/)
- [It's FOSS](https://itsfoss.com/nnn-file-browser-linux/) - [It's FOSS](https://itsfoss.com/nnn-file-browser-linux/)
- [LinuxLinks](https://www.linuxlinks.com/nnn-fast-and-flexible-file-manager/) - [LinuxLinks](https://www.linuxlinks.com/nnn-fast-and-flexible-file-manager/)
- [Ubuntu Full Circle Magazine - Issue 135](https://fullcirclemagazine.org/issue-135/) - [Ubuntu Full Circle Magazine - Issue 135](https://fullcirclemagazine.org/issue-135/)
### Developers #### DEVELOPERS
1. Copyright © 2014-2016 Lazaros Koromilas 1. Copyright © 2014-2016 Lazaros Koromilas
2. Copyright © 2014-2016 Dimitris Papastamos 2. Copyright © 2014-2016 Dimitris Papastamos

3
nnn.1
View file

@ -273,8 +273,7 @@ files.
export NNN_USE_EDITOR=1 export NNN_USE_EDITOR=1
.Ed .Ed
.Pp .Pp
\fBNNN_IDLE_TIMEOUT:\fR set idle timeout (in seconds) to invoke terminal \fBNNN_IDLE_TIMEOUT:\fR set idle timeout (in seconds) to invoke terminal locker.
screensaver.
.Pp .Pp
\fBNNN_COPIER:\fR set to a clipboard copier script. For example, on Linux: \fBNNN_COPIER:\fR set to a clipboard copier script. For example, on Linux:
.Bd -literal .Bd -literal

View file

@ -72,8 +72,8 @@ elif [ "$2" == "search" ]; then
bg=(">/dev/null 2>&1 &" bg=(">/dev/null 2>&1 &"
">/dev/null 2>&1 &") ">/dev/null 2>&1 &")
#--------------- SCREENSAVER ---------------- #------------------ LOCKER ------------------
elif [ "$2" == "screensaver" ]; then elif [ "$2" == "locker" ]; then
app=("vlock" app=("vlock"
"bashlock" "bashlock"
"lock") "lock")

View file

@ -22,14 +22,14 @@ supports the following options:
The first argument can be the file or path to pass as an argument to the app. It can also be an empty string e.g., while locking the terminal. The first argument can be the file or path to pass as an argument to the app. It can also be an empty string e.g., while locking the terminal.
.Pp .Pp
"type/action" "type/action"
This can be any of the strings \fItext\fR, \fIsearch\fR, \fIscript\fR or \fI screensaver\fR. This can be any of the strings \fItext\fR, \fIsearch\fR, \fIscript\fR or \fIlocker\fR.
.Sh USAGE .Sh USAGE
.Pp .Pp
.Bd -literal .Bd -literal
$ nlay info.txt text $ nlay info.txt text
$ nlay . search $ nlay . search
$ nlay ~/script.sh script $ nlay ~/script.sh script
$ nlay "" screensaver $ nlay "" locker
.Ed .Ed
.Sh AUTHOR .Sh AUTHOR
.An Arun Prakash Jana Aq Mt engineerarun@gmail.com . .An Arun Prakash Jana Aq Mt engineerarun@gmail.com .

View file

@ -3503,7 +3503,7 @@ int main(int argc, char *argv[])
editor = xgetenv("EDITOR", "vi"); editor = xgetenv("EDITOR", "vi");
} }
/* Get screensaver wait time, if set; copier used as tmp var */ /* Get locker wait time, if set; copier used as tmp var */
copier = getenv("NNN_IDLE_TIMEOUT"); copier = getenv("NNN_IDLE_TIMEOUT");
if (copier) { if (copier) {
opt = atoi(copier); opt = atoi(copier);