Difference between revisions of "Contributing to This Wiki"

From Vifm Wiki
Jump to navigation Jump to search
Line 200: Line 200:
*style for represnting code in a file (might want to snag the template used at [https://wiki.archlinux.org/index.php/Vim#Installation  arch wiki])
*style for represnting code in a file (might want to snag the template used at [https://wiki.archlinux.org/index.php/Vim#Installation  arch wiki])
===Table to Compare Modes===

Revision as of 00:15, 25 July 2014

A place to map out and plan the topics found in the wiki.

Manual Outline


  1. Why vifm?
    • Compare with ranger.
  2. How not to use vifm.
  3. When and how use vifm.

Quickstart Tutorial

This should cover all of the most basic Tasks I'll keep updating this with my biggest bumps in the learning curve as well.

This first part should allow you do almost anything you could in any other graphical filemanager, just not as fast(yet!)

  1. The Bare Essentials
    • Launching Vifm
    • Navigate
      • j,k
      • [space]
      • h,l --> on a directory. Explain how to quit vim/vi if they hit 'l' on an file.
    • Open a File
      • If a launcher is already defined by default and installed [Enter] -- i think
      • if run an unknown filetype without Defining a Filetype Association, you must use the commandline.
        • if the program runs within the terminal as text only, such as ls, type without the quotes, ':!!ls -al %c' and then press [Enter]. Explain that that is a commandline mode command and what each part of it does. link to a list of available command line commands.
        • if you would like to continue using Vifm while the program runs, which is most likely the case if it runs in its own window, run the task in the background using '&'. For example, if you wanted to launch the terminal emulator xterm in the current directory use '!xterm &'. If xterm didn't work try gnome-terminal, urxvt, konsol, [[1] etc]. Did you noticed that you didn't need to specify the current directory? This is because Vifm launches '!' commands in the current directory.
        • Press the [Enter] key(carriage return) to execute an executable file (or open a folder) ??don't actually know if [Enter] does this by default. (Not sure if this this bullet should be included in the very basic tutorial???)
    • by now you should be able to do anything from with Vifm, if just might not be much fast then just using the command line.
  2. Do Common Tasks Faster
    • yank
    • paste
    • delete
    • ....I really haven't figured out much more than this...yet!!

Starting vifm

  1. From some kind of menu (e.g. KDEMenu).
  2. From command-line
    • Where it starts (previous directories/current directory/any other directory)
    • Start by specifying name of a file rather than directory name
      • Specify path to fuse mount and path inside of it
  3. From any buffer in Vim
    • Replace file in current buffer
    • Edit in tab
    • Edit in horizontal split
    • Edit in vertical split
    • Diff with file
  4. From mail buffer in Vim to add an attachment

Quiting vifm

  1. Saving/not saving state.
    • Controlling whether current directories are remembered.
  2. Switching shell current working directory after leaving vifm.

Modes general

  1. What modes and submodes exist.
  2. Transitions between modes and submodes.


  1. Navigation within view.
  2. Rearranging views.
  3. Marks.
  4. Directory stack.

File searching

  1. / and ?
  2. n and N
  3. 'hlsearch', 'incsearch', 'ignorecase', 'smartcase'
  4. Regular expressions

Manual file selection

  1. 'hlsearch' and searching.
  2. t command.
  3. Visual mode.
    • cover all submodes

File auto selection

  1. Motions.
  2. Selectors.

Command-line and alike modes

  1. Auto-completion.
    • Mention slash completion shortcut.
    • Mention completion of :help that checks for presence not for starts with.
  2. Emacs-like navigation.
  3. History (Ctrl-N/Ctrl-P/Down/Up).
  4. External command editing.
    • Plugin addition.
  5. Alt-. command.
  6. Ctrl-X mappings.

Command-line commands

  1. General syntax overview.
    • :[range]command arg1 'arg2' "arg3" /arg4/
    • Comments.
    • Several commands separated by a bar ("|").
  2. :!! command.
  3. Ranges.
  4. Macros.
  5. User-defined commands.
    • External commands.
    • Local commands (":do something").
    • Background commands.
  6. Commands that accept expressions.
  7. Backgrounding commands.
  8. Cancelling commands.

Controlling view

  1. Permanent file filtering.
  2. Real-time file filtering.


  1. With remapping (:map).
  2. Without remapping (:noremap).
  3. Angle-bracket notation.
  4. Displaying existing mappings.

Trash directories

  1. Overview, state incompatibility with Trash specification of FreeDesktop.
  2. Location ('trashdir' option).
  3. Related command-line commands (":lstrash", ":trashes").
  4. Related normal mode commands (p, P, d, D).

Previewing files

  1. Exploring.
  2. Previewing.

Color schemes

Running files

Combining with external scripts

Writing scripts in vifmrc file

Index of Features

list all capabilities including synonyms of features to make things easier to search. These should link to pages talking about the feature in detail. Brainstorming how the index should look:

I think full syntax should be given in the command coloumn, with the command itself linking to a section that described all the fine details of the command in full

keywords will make actual ideas or concept easy to lookup ps. It took me making this table that yank was a feature different than copy......

Feature Description Command(s) Default Mapping(s) see also keywords
copy copy to opposite pane :[range]co[py][!?][&] cp, yank, move
delete delete file and add to default(") register* :delete d rm, cut
Page up navigate up one page PageUp, Ctrl-B
view view current file in the opposite pane :vie[w][!] preview, less
yank add file to the default(") register :[range]y[ank] [reg] [count] y copy cp

Other Pages

Users coming from mc

Differences from vim

Wiki Style Guidelines

  • Vifm vs vifm
  • filemanager not Filebrowser
  • style for represnting code in a file (might want to snag the template used at arch wiki)
  • commandline/shell/CLI/TUI

Table to Compare Modes