Difference between revisions of "Main Page"
Jump to navigation
Jump to search
(→Features: Update list of features) |
(→Features: Better wording for user mappings item) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
== Overview == | == Overview == | ||
− | '''Vifm''' is | + | '''Vifm''' is a file manager with [https://en.wikipedia.org/wiki/Curses_(programming_library) curses] interface, which provides [https://en.wikipedia.org/wiki/Vim_(text_editor) Vim]-like environment for managing objects within file systems, extended with some useful ideas from [https://en.wikipedia.org/wiki/Mutt_(email_client) mutt]. |
+ | If you're used to Vi[m], vifm gives you complete keyboard control over your files without having to learn a new set of commands. | ||
=== Features === | === Features === | ||
Line 8: | Line 9: | ||
* cross-platform (GNU/Linux, *BSD, Solaris, Windows, Mac OS) | * cross-platform (GNU/Linux, *BSD, Solaris, Windows, Mac OS) | ||
− | * | + | * vi-like user mappings <spoiler text="..."> |
− | |||
Input model is very Vi[m]-alike. | Input model is very Vi[m]-alike. | ||
Each mode has set of commands for managing mappings (see [http://vifm.info/vimdoc.shtml#vifm-%3Amap :map], [http://vifm.info/vimdoc.shtml#vifm-%3Anoremap :noremap] and [http://vifm.info/vimdoc.shtml#vifm-%3Aunmap :unmap]) associated with it. | Each mode has set of commands for managing mappings (see [http://vifm.info/vimdoc.shtml#vifm-%3Amap :map], [http://vifm.info/vimdoc.shtml#vifm-%3Anoremap :noremap] and [http://vifm.info/vimdoc.shtml#vifm-%3Aunmap :unmap]) associated with it. | ||
Line 40: | Line 40: | ||
Content of registers can be saved across sessions. | Content of registers can be saved across sessions. | ||
</spoiler> | </spoiler> | ||
+ | * directory tree comparison | ||
* operation undoing/redoing <spoiler text="..."> | * operation undoing/redoing <spoiler text="..."> | ||
Foreground file operations can be reversed and replayed again if their nature allows it. For example, deletion (not moving to trash) or file overwrite can't be reversed, on the other hand any rename operations can be reversed unless previous file names conflict with names of newly created files. Irreversible operations require explicit confirmation of some form. | Foreground file operations can be reversed and replayed again if their nature allows it. For example, deletion (not moving to trash) or file overwrite can't be reversed, on the other hand any rename operations can be reversed unless previous file names conflict with names of newly created files. Irreversible operations require explicit confirmation of some form. | ||
Line 50: | Line 51: | ||
</spoiler> | </spoiler> | ||
* [https://en.wikipedia.org/wiki/Filesystem_in_Userspace FUSE] file systems support | * [https://en.wikipedia.org/wiki/Filesystem_in_Userspace FUSE] file systems support | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
* multiple files renaming (also known as "bulk renaming" or [https://en.wikipedia.org/wiki/Batch_renaming "batch renaming"]) | * multiple files renaming (also known as "bulk renaming" or [https://en.wikipedia.org/wiki/Batch_renaming "batch renaming"]) | ||
* color schemes, which can also be applied to specific sub-trees <spoiler text="..."> | * color schemes, which can also be applied to specific sub-trees <spoiler text="..."> | ||
Line 100: | Line 90: | ||
</spoiler> | </spoiler> | ||
* shell-like command-line editing | * shell-like command-line editing | ||
− | * table | + | * table/[https://en.wikipedia.org/wiki/Ls ls]/tree-like views |
* customizable file name prefixes and suffixes | * customizable file name prefixes and suffixes | ||
* built-in integration with [https://en.wikipedia.org/wiki/GNU_Screen GNU Screen] and [https://en.wikipedia.org/wiki/Tmux tmux] | * built-in integration with [https://en.wikipedia.org/wiki/GNU_Screen GNU Screen] and [https://en.wikipedia.org/wiki/Tmux tmux] | ||
Line 109: | Line 99: | ||
* command-line abbreviations | * command-line abbreviations | ||
* ability to script configuration for specific directories | * ability to script configuration for specific directories | ||
+ | * trash <spoiler text="..."> | ||
+ | Apart from being storage for files which are about to be erased this is also a place for files that were "cut" (which corresponds to "delete" operation in Vi[m]), but not pasted yet. | ||
+ | |||
+ | Trash is enabled by default ([http://vifm.info/vimdoc.shtml#vifm-%27trash%27 'trash'] option) and it is better to leave it in this state. [http://vifm.info/vimdoc.shtml#vifm-%27trashdir%27 'trashdir'] can used to customize location of trash directories, which are media-specific by default and are named <code>.vifm-Trash/</code>. | ||
+ | |||
+ | List of files in trashes is available on [http://vifm.info/vimdoc.shtml#vifm-%3Alstrash :lstrash] command. [http://vifm.info/vimdoc.shtml#vifm-%3Atrashes :trashes] lists trash directories themselves, optionally along with their sizes. Inside trash directory [http://vifm.info/vimdoc.shtml#vifm-%3Arestore :restore] command restores file to the place where it used to be, it's also possible to just move files by other means, which will automatically demangle their names. | ||
+ | |||
+ | [http://vifm.info/vimdoc.shtml#vifm-%3Aempty :empty] command is there to clean trashes in background. | ||
+ | |||
+ | Registers are connected with trashes, which allows managing several groups of files at the same time. | ||
+ | </spoiler> | ||
+ | * [https://en.wikipedia.org/wiki/UTF-8 UTF-8] aware | ||
== Main sections == | == Main sections == |
Revision as of 17:46, 4 February 2018
Overview
Vifm is a file manager with curses interface, which provides Vim-like environment for managing objects within file systems, extended with some useful ideas from mutt. If you're used to Vi[m], vifm gives you complete keyboard control over your files without having to learn a new set of commands.
Features
To make it easier to understand use cases and to connect features to their configuration and controls some details are provided in spoilers.
- cross-platform (GNU/Linux, *BSD, Solaris, Windows, Mac OS)
- vi-like user mappings ...
- ranges for command-line commands ...
- user defined commands (support ranges)
- registers ...
- directory tree comparison
- operation undoing/redoing ...
- FUSE file systems support
- multiple files renaming (also known as "bulk renaming" or "batch renaming")
- color schemes, which can also be applied to specific sub-trees ...
- colorization of files according to their type and/or name
- vi-like marks and named bookmarks (tags)
- operation backgrounding
- customizable file viewers
- handy less-like preview mode with support of colors
- (interactive) filtering out and searching with match highligh for files using regular expressions
- one or two pane view (vertical or horizontal) ...
- shell-like command-line editing
- table/ls/tree-like views
- customizable file name prefixes and suffixes
- built-in integration with GNU Screen and tmux
- external editing of command line
- multi-block selection
- remembering position in previously visited directories
- remote command execution
- command-line abbreviations
- ability to script configuration for specific directories
- trash ...
- UTF-8 aware
Main sections
- Contributing. Advices for those who would like to contribute bug report or feature request.
- Contributing to This Wiki. A place to map out and plan the topics found in the wiki.
- Development. Some information about development process.
- FAQ. Answers to frequently asked questions.
- Glossary. Explanation of abbreviations or ambiguous words.
- HOWTOs. Tutorials on various subjects.
- Manual. Main tutorial.
- Obtaining Vifm. Details about obtaining Vifm in different environments.
- Tips and Tricks. Description of some possibly unexpected/non-obvious uses of features.
- Utility scripts. Scripts that help utilize external applications.
- Vifm on the Web. List of pages related to Vifm.