Vis aims to be a modern, legacy-free, simple yet efficient editor, combining the strengths of both Vi(m) and sam.
Vis strives to be simple and focuses on its core task: efficient text management. Clipboard and digraph handling as well as a fuzzy file open dialog are all provided by independent utilities.
Vis uses selections as core editing primitives. A selection is a non-empty, directed range with two endpoints called cursor and anchor. A selection can be anchored in which case the anchor remains fixed while only the position of the cursor is adjusted. For non-anchored selections both endpoints are updated. A singleton selection covers one character on which both cursor and anchor reside. There always exists a primary selection which remains visible (i.e. changes to its position will adjust the viewport).
The intention is not to be bug-for-bug compatible with Vi(m).
Structural regular expressions focus on the notion that text editing shouldn’t be artificially limited by the concept of a line.
- Same modal editing approach as vi, but extends it with built-in support for multiple cursors/selections.
- More powerful editing features based on an elegant design and clean implementation.
- Builtin support for multiple cursors/selections.
- Undo tree to keep track of text revisions.
- Combines it with sam’s structural regular expression based command language.
- Unicode support.
- Works with with arbitrary files, including large, binary or single-line ones.
- Efficient syntax highlighting is provided using Parsing Expression Grammars, which can be conveniently expressed using Lua in the form of LPeg.
- POSIX Extended Regular Expression.
- Clipboard integration, digraph support and a menu used for a file selection dialog and word completion are all implemented as standalone tools.
- Plugins extend functionality.
- Uses Lua for configuration and scripting purposes.
|Read our complete collection of recommended free and open source software. The collection covers all categories of software.|