Repolode
noborus

noborus/ov

A feature-rich terminal pager for viewing text, with column mode, follow mode, exec mode and incremental search.

Open-source alternative to:less

Stars
2,045
Forks
53
Open issues
28
Last commit
10 hours ago

What is it?

ov is a terminal pager, a tool for reading text files and command output one screen at a time, similar in role to less or more. It is aimed at viewing tabular text such as CSV files and output from commands like ps or df, with column highlighting, fixed header rows and columns, and column-width detection for irregularly spaced output.

Beyond basic paging, ov can follow files as they grow in the manner of tail -f or tail -F, re-run a command periodically in watch mode, or display a command's output directly in exec mode. It supports regular expression search, filtering lines into a new document, multi-color highlighting of several words, marks, and sections split by a regex delimiter. Files larger than memory can be opened, and gzip, bzip2, zstd, lz4 and xz compressed files are handled.

Key bindings, styles and sidebar behavior are configurable through a YAML file, and a less-compatible key set can be generated. Installation is available through common package managers on Linux, macOS, Windows and FreeBSD, as well as through go install.

Key features

  • 01Opens files larger than memory and handles gzip, bzip2, zstd, lz4 and xz compressed files.
  • 02Column mode with delimiter or regex-based splitting, plus automatic column detection for command output.
  • 03Follow mode, follow-name mode and exec mode for live logs and command output.
  • 04Incremental, regex and filter search, with multi-color highlighting of multiple words.
  • 05Sidebar for help, marks, documents and sections, with configurable keys and styles.

Use cases

  • Reading large CSV or TSV files in the terminal with aligned, highlighted columns.
  • Watching live log files, similar to tail -f, while searching and marking positions.
  • Browsing output of ps, df or other commands with irregular spacing.
  • Using as the PAGER for git diff, log or other tools that produce sectioned output.

Quick start

  1. 1

    Install via Homebrew (macOS or Linux)

    brew install ov
  2. 2

    Run ov on a file

    ov filename
  3. 3

    Or pipe standard input into ov

    cat filename|ov

Things to know

  • Does not support syntax highlighting for file types.

In collections

Topics

FAQ

What is ov?
A feature-rich terminal pager for viewing text, with column mode, follow mode, exec mode and incremental search. ov is a terminal pager, a tool for reading text files and command output one screen at a time, similar in role to less or more. It is aimed at viewing tabular text such as CSV files and output from commands like ps or df, with column highlighting, fixed header rows and columns, and column-width detection for irregularly spaced output.
Is ov free to use? What license does it have?
ov is open source under the MIT license. Check the license terms before using it in commercial products.
Is ov still maintained?
Actively maintained. The last commit to ov was on Oct 22, 2026.
What can I use ov for?
Reading large CSV or TSV files in the terminal with aligned, highlighted columns. Watching live log files, similar to tail -f, while searching and marking positions. Browsing output of ps, df or other commands with irregular spacing. Using as the PAGER for git diff, log or other tools that produce sectioned output.
How do I install ov?
Install via Homebrew (macOS or Linux): brew install ov Run ov on a file: ov filename Or pipe standard input into ov: cat filename|ov
Where can I get ov?
The source code and installation instructions are on GitHub: https://github.com/noborus/ov

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects