Vifm v0.7.4October 18, 2012

0.7.4 is a minor release, which improves existing features as well as adds some new ones.

There are two main directions in which improvements were made. One of them is TUI, which now has support of multiple columns and ls-like view as well as customizable file name decoration (prefix and suffix). The second one is connected with command interpreter, which now supports builtin functions, conditional operators and conditional execution of commands (using if-else-endif statements). Additionally, Vifm's memory footprint was made smaller and running of programs associated with files made smarter (won't stop until existing program is found).

Main changes
  • New multicolumn view.
  • New ls-like view (see 'lsview' option) and related keys for it.
  • Prefixes and suffixes of files of different types are configurable now.
  • Smarter handling of file associations (now Vifm will try to find existing program).
  • Some basic means to do scripting (if-else-endif statements, builtin functions, comparison operators).
  • Reduced history memory consumption.
  • Better configure script, which now checks more stuff (and does it in a more accurate way) needed to build Vifm.
More detailed list of changes... Configuration:
  • Removed compile-time compatibility mode (the compatibility-mode switch), now "f" flag in 'cpoptions' does the same.
  • Added --without/[with]-X11 configure script option.
  • configure script now checks much more then before.
  • Better make files (thanks to Hendrik Jaeger).
Only on Windows:
  • Replaced gl normal mode mapping for Windows with gr because of conflict (with 'lsview').
  • Allow paths in :file[x]type command that contain spaces to be doublequoted on Windows.
Normal and visual modes related changes:
  • Added Ctrl-W H/J/K/L normal mode keys.
  • Added gh, gj, gk and gl keys for normal and visual modes.
  • Added 0, ^ and $ keys for normal and visual modes, which also work as selectors in normal mode.
Command-line mode related changes:
  • Added Ctrl-T handling in command line to swap characters.
  • Added Meta-. handling in command line to paste last parts of previous commands.
  • Added :echo command.
  • Added :if, :else and :endif commands.
  • Added support for `==` and `!=` operators.
  • Added :normal command.
  • Added mapping commands for view and menu modes.
  • Changed relative path base for :split and :vsplit commands.
  • Expand macros for user defined commands.
:set command and options:
  • Added 'viewcolumns' local option to control view columns.
  • Added 'lsview' option to control ls-like view look.
  • Added 'dotdirs' option to control visibility of "../" directory.
  • Added 'classify' option to set prefixes and suffixes for different file types.
  • Added %E 'statusline' option macro, which means size of all selected files or current file, if no files are selected.
  • Added "t" flag to 'cpoptions' option (replaces compile-time compatibility mode).
Completion:
  • Added completion for :set option= even for options without variants.
  • Complete only directory names for :split and :vsplit commands.
  • Escape pipe character during :file completion.
  • Complete :set for short and full option names like Vim does (e.g. 'so' should be expanded to 'sort', not only 'scrolloff').
TUI (Terminal User Interface):
  • Added status bar messages for :apropos, :find and :locate commands.
  • Flicker less on :restart command.
  • Don't show Ctrl-C part in information message boxes where it doesn't make sense.
  • Reduce delay between terminal resize and TUI redrawing.
  • Fixed background bold (light) colors in linux native console.
Color scheme related changes:
  • Added light versions of color names.
Key bindings:
  • Don't pause on '0' after Ctrl-W (count cannot start with zero).
  • Multiply counts in front and in the middle of commands with Ctrl-W (as Vim does).
  • Multiply counts in front of command and its selector (as Vim does).
Other changes:
  • Added support for builtin functions and filetype() as the first one.
  • Check current view of other pane on leaving FUSE mount directory an don't unmount if that file system is still in use.
  • Try the rest of the programs for an association when the default one isn't found.
  • Reduced memory consumption of view histories.
And fixes of bugs and memory leaks.

See change log for full list of changes and by whom they were suggested.
Download links