My build of nnn with minor changes
Vous ne pouvez pas sélectionner plus de 25 sujets Les noms de sujets doivent commencer par une lettre ou un nombre, peuvent contenir des tirets ('-') et peuvent comporter jusqu'à 35 caractères.

README.md 9.5 KiB

il y a 4 ans
il y a 8 ans
il y a 7 ans
il y a 5 ans
il y a 8 ans
il y a 5 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 4 ans
il y a 4 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 7 ans
il y a 4 ans
il y a 4 ans
il y a 4 ans
il y a 4 ans
il y a 4 ans
il y a 4 ans
il y a 4 ans
il y a 4 ans
il y a 5 ans
il y a 5 ans
il y a 5 ans
il y a 5 ans
il y a 7 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 5 ans
il y a 4 ans
il y a 7 ans
il y a 5 ans
il y a 5 ans
il y a 7 ans
il y a 5 ans
il y a 7 ans
il y a 4 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 4 ans
il y a 7 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 5 ans
il y a 7 ans
il y a 4 ans
il y a 5 ans
il y a 4 ans
il y a 8 ans
il y a 5 ans
il y a 5 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 5 ans
il y a 8 ans
il y a 5 ans
il y a 4 ans
il y a 4 ans
il y a 5 ans
il y a 5 ans
il y a 7 ans
il y a 5 ans
il y a 7 ans
il y a 4 ans
il y a 5 ans
il y a 6 ans
il y a 5 ans
il y a 5 ans
il y a 6 ans
il y a 7 ans
il y a 5 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 4 ans
il y a 5 ans
il y a 5 ans
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186
  1. <h1 align="center">nnn - <i>supercharge your productivity!</i></h1>
  2. <p align="center">
  3. <a href="https://github.com/jarun/nnn/releases/latest"><img src="https://img.shields.io/github/release/jarun/nnn.svg?maxAge=600" alt="Latest release" /></a>
  4. <a href="https://repology.org/project/nnn/versions"><img src="https://repology.org/badge/tiny-repos/nnn.svg" alt="Availability"></a>
  5. <a href="https://travis-ci.org/jarun/nnn"><img src="https://img.shields.io/travis/jarun/nnn/master.svg?label=travis" alt="Travis Status" /></a>
  6. <a href="https://circleci.com/gh/jarun/workflows/nnn"><img src="https://img.shields.io/circleci/project/github/jarun/nnn.svg?label=circleci" alt="CircleCI Status" /></a>
  7. <a href="https://en.wikipedia.org/wiki/Privacy-invasive_software"><img src="https://img.shields.io/badge/privacy-✓-crimson" alt="Privacy Awareness" /></a>
  8. <a href="https://github.com/jarun/nnn/blob/master/LICENSE"><img src="https://img.shields.io/badge/license-BSD%202--Clause-yellow.svg?maxAge=2592000" alt="License" /></a>
  9. </p>
  10. <p align="center"><a href="https://www.youtube.com/watch?v=U2n5aGqou9E"><img src="https://i.imgur.com/MPWpmos.png" /></a></p>
  11. <p align="center"><i>navigate-as-you-type & du (click to see demo video)</i></p>
  12. ## Introduction
  13. `nnn` is a full-featured terminal file manager. It's tiny and nearly 0-config with an [incredible performance](https://github.com/jarun/nnn/wiki/Performance).
  14. `nnn` is also a du analyzer, an app launcher, a batch renamer and a file picker. The [plugin repository](https://github.com/jarun/nnn/tree/master/plugins#nnn-plugins) has tons of plugins and documentation to extend the capabilities further. You can _plug_ new functionality _and play_ with a hotkey. There's an independent [(neo)vim plugin](https://github.com/mcchrish/nnn.vim).
  15. It runs smoothly on the Pi, [Termux](https://www.youtube.com/watch?v=AbaauM7gUJw), Linux, macOS, BSD, Haiku, Cygwin, WSL, across DEs and GUI utilities or a strictly CLI environment.
  16. [**Wiki**](https://github.com/jarun/nnn/wiki).
  17. <p align="center">
  18. <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-1eb0fc.svg" alt="Donate via PayPal!" /></a>
  19. </p>
  20. ## Features
  21. - Resource sensitive
  22. - Typically needs less than 3.5MB resident memory
  23. - Works with 8-bit colors
  24. - Disk-IO sensitive (few disk reads and writes)
  25. - No FPU usage (all integer maths, even for file size)
  26. - Minimizes screen refresh with fast line redraws
  27. - Tiny binary (typically less than 100KB)
  28. - Portable
  29. - Statically-linked binary available
  30. - Language-agnostic plugins
  31. - Minimal library deps, easy to compile
  32. - Compile in/out features with make variables
  33. - No config file, minimal config with sensible defaults
  34. - Widely available on many packagers
  35. - Unicode support
  36. - Quality
  37. - Privacy-aware (no unconfirmed user data collection)
  38. - POSIX-compliant, follows Linux kernel coding style
  39. - Highly optimized, static analysis integrated code
  40. - Modes
  41. - Light (default), detail
  42. - Disk usage analyzer (block/apparent)
  43. - File picker, (neo)vim plugin
  44. - Navigation
  45. - *Navigate-as-you-type* with dir auto-select
  46. - Contexts (_aka_ tabs/workspaces) with custom colors
  47. - Sessions, bookmarks with hotkeys; pin and visit a dir
  48. - Remote mounts (needs sshfs, rclone)
  49. - Familiar shortcuts (arrows, <kbd>~</kbd>, <kbd>-</kbd>, <kbd>@</kbd>), quick reference
  50. - CD on quit (*easy* shell integration)
  51. - Auto-proceed on opening files
  52. - Search
  53. - Instant filtering with *search-as-you-type*
  54. - Regex (POSIX/PCRE) and string (default) filters
  55. - Subtree search plugin to open or edit files
  56. - Sort
  57. - Ordered pure numeric names by default (visit _/proc_)
  58. - Case-insensitive version (_aka_ natural) sort
  59. - By file name, modification/access time, size, extension
  60. - Reverse sort
  61. - Mimes
  62. - Open with desktop opener or specify a custom app
  63. - Create, list, extract, mount (FUSE based) archives
  64. - Option to open all text files in EDITOR
  65. - Information
  66. - Detailed file information
  67. - Media information plugin
  68. - Convenience
  69. - Run plugins and custom commands with hotkeys
  70. - FreeDesktop compliant trash (needs trash-cli)
  71. - Cross-dir file/all/range selection
  72. - Batch renamer (feature-limited) for selection or dir
  73. - Display a list of files from stdin
  74. - Copy (as), move (as), delete, archive, link selection
  75. - Dir updates, notification on cp, mv, rm completion
  76. - Copy file paths to system clipboard on select
  77. - Create (with parents), rename, duplicate (anywhere) files and dirs
  78. - Launch GUI apps, run commands, spawn a shell, toggle executable
  79. - Hovered file set as `$nnn` at prompt and spawned shell
  80. - Lock terminal after configurable idle timeout
  81. ## Quickstart
  82. 1. Install the [utilities you may need](https://github.com/jarun/nnn#utility-dependencies) based on your regular workflows.
  83. 2. Configure [cd on quit](https://github.com/jarun/nnn/wiki/Basic-use-cases#configure-cd-on-quit).
  84. 3. To open text files in `$VISUAL` (else `$EDITOR`, fallback vi) add program option `-e` in your alias.
  85. 4. For additional functionality [install plugins](https://github.com/jarun/nnn/tree/master/plugins#installing-plugins).
  86. 5. To copy selected file paths to system clipboard and show notis on cp, mv, rm completion use option `-x`.
  87. 6. For a strictly CLI environment, customize and use plugin [`nuke`](https://github.com/jarun/nnn/blob/master/plugins/nuke).
  88. Don't memorize! Arrows (or <kbd>h</kbd> <kbd>j</kbd> <kbd>k</kbd> <kbd>l</kbd>), <kbd>/</kbd>, <kbd>q</kbd> suffice. <kbd>Tab</kbd> creates, cycles contexts. <kbd>?</kbd> lists shortcuts.
  89. ## Installation
  90. No permission to install packages? Get the statically linked binary from the latest release.
  91. #### Library dependencies
  92. A curses library with wide char support (e.g. ncursesw), libreadline (optional) and standard libc.
  93. #### Utility dependencies
  94. | Dependency | Installation | Operation |
  95. | --- | --- | --- |
  96. | xdg-open (Linux), open(1) (macOS), cygstart<br>(Cygwin), open (Haiku) | base | desktop opener |
  97. | file, coreutils (cp, mv, rm), xargs | base | file type, copy, move and remove |
  98. | tar, (un)zip [atool/bsdtar for more formats] | base | create, list, extract bzip2, (g)zip, tar |
  99. | archivemount, fusermount(3) | optional | mount, unmount archives |
  100. | sshfs, [rclone](https://rclone.org/), fusermount(3) | optional | mount, unmount remotes |
  101. | trash-cli | optional | trash files (default action: rm) |
  102. | vlock (Linux), bashlock (macOS), lock(1) (BSD),<br>peaclock (Haiku) | optional | terminal locker (fallback: [cmatrix](https://github.com/abishekvashok/cmatrix)) |
  103. | advcpmv (Linux) ([integration](https://github.com/jarun/nnn/wiki/Advanced-use-cases#show-cp-mv-progress)) | optional | copy, move progress |
  104. | `$VISUAL` (else `$EDITOR`), `$PAGER`, `$SHELL` | optional | fallback vi, less, sh |
  105. #### From a package manager
  106. Install `nnn` from your package manager. If the version available is dated try an alternative installation method.
  107. <details><summary>Packaging status (expand)</summary>
  108. <p>
  109. <br>
  110. <a href="https://repology.org/project/nnn/versions"><img src="https://repology.org/badge/vertical-allrepos/nnn.svg" alt="Packaging status"></a>
  111. </p>
  112. Unlisted packagers:
  113. <p>
  114. <br>
  115. ● CentOS (<code>yum --enablerepo=epel install nnn</code>)<br>
  116. ● <a href="https://notabug.org/milislinux/milis/src/master/talimatname/genel/n/nnn/talimat">Milis Linux</a> (<code>mps kur nnn</code>)<br>
  117. ● <a href="https://www.nutyx.org/en/?type=pkg&branch=rolling&arch=x86_64&searchpkg=nnn">NuTyX</a> (<code>cards install nnn</code>)<br>
  118. ● <a href="http://codex.sourcemage.org/test/shell-term-fm/nnn/">Source Mage</a> (<code>cast nnn</code>)<br>
  119. </p>
  120. </details>
  121. #### Release packages
  122. Packages for Arch Linux, CentOS, Debian, Fedora and Ubuntu are auto-generated with the [latest stable release](https://github.com/jarun/nnn/releases/latest).
  123. #### From source
  124. Download the latest stable release or clone this repository (*risky*), install deps and compile. On Ubuntu 18.04:
  125. ```sh
  126. sudo apt-get install pkg-config libncursesw5-dev libreadline-dev
  127. sudo make strip install
  128. ```
  129. `PREFIX` is supported, in case you want to install to a different location.
  130. See the [developer guides](https://github.com/jarun/nnn/wiki/Developer-guides) for source verification, compilation notes on the Pi, Cygwin and other tips.
  131. #### Shell completion
  132. Completion scripts for Bash, Fish and Zsh are [available](misc/auto-completion). Refer to your shell's manual for installation instructions.
  133. ## Elsewhere
  134. - [Wikipedia](https://en.wikipedia.org/wiki/Nnn_(file_manager))
  135. - [ArchWiki](https://wiki.archlinux.org/index.php/Nnn)
  136. - [FOSSMint](https://www.fossmint.com/nnn-linux-terminal-file-browser/)
  137. - [gHacks Tech News](https://www.ghacks.net/2019/11/01/nnn-is-an-excellent-command-line-based-file-manager-for-linux-macos-and-bsds/)
  138. - Hacker News [[1](https://news.ycombinator.com/item?id=18520898)] [[2](https://news.ycombinator.com/item?id=19850656)]
  139. - [It's FOSS](https://itsfoss.com/nnn-file-browser-linux/)
  140. - LinuxLinks [[1](https://www.linuxlinks.com/nnn-fast-and-flexible-file-manager/)] [[2](https://www.linuxlinks.com/bestconsolefilemanagers/)]
  141. - [Suckless Rocks](https://suckless.org/rocks/)
  142. - [Ubuntu Full Circle Magazine - Issue 135](https://fullcirclemagazine.org/issue-135/)
  143. ## Developers
  144. - [Arun Prakash Jana](https://github.com/jarun) (Copyright © 2016-2020)
  145. - [0xACE](https://github.com/0xACE)
  146. - [Anna Arad](https://github.com/annagrram)
  147. - [KlzXS](https://github.com/KlzXS)
  148. - [Maxim Baz](https://github.com/maximbaz)
  149. - and other contributors
  150. `nnn` is actively developed. Visit the to the [ToDo list](https://github.com/jarun/nnn/issues/472) to contribute or see the features in progress.