SkillAgentSearch skills...

Ov

🎑Feature-rich terminal-based text viewer. It is a so-called terminal pager.

Install / Use

/learn @noborus/Ov

README

ov - feature rich terminal pager

<!-- markdownlint-disable MD019 MD029 MD033 MD036 MD060 -->

PkgGoDev Actions Status Go Report Card

ov is a terminal pager.

ov-image.png

<!-- vscode-markdown-toc --> <!-- vscode-markdown-toc-config numbering=true autoSave=true /vscode-markdown-toc-config --> <!-- /vscode-markdown-toc -->

1. <a name='feature'></a>Feature

  • Quickly opens files larger than memory.
  • Supports fixed header lines and columns.
  • Optimized for tabular text with column mode and customizable column colors.
  • Fully customizable shortcut keys and styles.
  • Follow mode for real-time updates (like tail -f / tail -F).
  • Exec mode to display command output dynamically.
  • Watch mode to monitor file changes periodically.
  • Advanced search: incremental, regex, and filter functions.
  • Multi-color highlighting for multiple words.
  • Supports Unicode and East Asian Width characters.
  • Handles compressed files (gzip, bzip2, zstd, lz4, xz).

1.1. <a name='not-supported'></a>Not supported

  • Does not support syntax highlighting for file types (source code, markdown, etc.)

2. <a name='install'></a>Install

2.1. <a name='deb-package'></a>deb package

You can download the package from releases.

curl -L -O https://github.com/noborus/ov/releases/download/vx.x.x/ov_x.x.x-1_amd64.deb
sudo dpkg -i ov_x.x.x-1_amd64.deb

2.2. <a name='rpm-package'></a>rpm package

You can download the package from releases.

sudo rpm -ivh https://github.com/noborus/ov/releases/download/vx.x.x/ov_x.x.x-1_amd64.rpm

2.3. <a name='macports-(macos)'></a>MacPorts (macOS)

sudo port install ov

2.4. <a name='homebrew(macos-or-linux)'></a>Homebrew(macOS or Linux)

brew install ov

2.5. <a name='winget(windows)'></a>winget(windows)

winget install -e --id noborus.ov

2.6. <a name='pkg-(freebsd)'></a>pkg (FreeBSD)

pkg install ov

2.7. <a name='arch-linux'></a>Arch Linux

You can install ov using an AUR helper.

Choose an AUR package:

2.8. <a name='nix-(nixos,-linux,-or-macos)'></a>nix (nixOS, Linux, or macOS)

ov is available as a nix package. You can install it with

nix profile install nixpkgs#ov

if you use flakes, or using nix-env otherwise:

nix-env -iA nixpkgs.ov

2.9. <a name='binary'></a>Binary

You can download the binary from releases.

curl -L -O https://github.com/noborus/ov/releases/download/vx.x.x/ov_x.x.x_linux_amd64.zip
unzip ov_x.x.x_linux_amd64.zip
sudo install ov /usr/local/bin

2.10. <a name='go-install'></a>go install

It will be installed in $GOPATH/bin by the following command.

go install github.com/noborus/ov@latest

Or to install the latest commit from master:

go install github.com/noborus/ov@master

2.11. <a name='build-from-source'></a>Build from source

First of all, clone this repo with either git clone or gh repo clone, then cd to the directory, for example:

git clone https://github.com/noborus/ov.git
cd ov

Next, to install to $GOPATH/bin, run the make install command.

make install

Or, install it in a PATH location for other users to use (For example, in /usr/local/bin).

make
sudo install ov /usr/local/bin

2.12. <a name='completion'></a>Completion

You can generate completion scripts for bash, zsh, fish, and powershell.

2.12.1. <a name='bash'></a>bash

ov --completion bash > /etc/bash_completion.d/ov

2.12.2. <a name='zsh'></a>zsh

ov --completion zsh > /usr/share/zsh/site-functions/_ov

For zinit users.

zinit load 'https://github.com/noborus/ov/blob/master/ov.plugin.zsh'

2.12.3. <a name='fish'></a>fish

ov --completion fish > ~/.config/fish/completions/ov.fish

2.12.4. <a name='powershell'></a>powershell

ov --completion powershell completion powershell | Out-String | Invoke-Expression

3. <a name='basic-usage'></a>Basic usage

ov supports open file name or standard input.

ov filename
cat filename|ov

Used by other commands by setting the environment variable PAGER.

export PAGER=ov

4. <a name='usage'></a>Usage

See the ov site for more use cases and examples.

[!NOTE] (default key key) indicates the key that can be specified even after starting the same function as the command line option.

4.1. <a name='config'></a>Config

You can set style and key bindings in the configuration file.

ov will look for a configuration file in the following paths in descending order:

$XDG_CONFIG_HOME/ov/config.yaml
$HOME/.config/ov/config.yaml
$HOME/.ov.yaml

On Windows:

%USERPROFILE%/.config/ov/config.yaml
%USERPROFILE%/.ov.yaml

Create a config.yaml file in one of the above directories. If the file is in the user home directory, i

View on GitHub
GitHub Stars1.9k
CategoryDevelopment
Updated2d ago
Forks42

Languages

Go

Security Score

100/100

Audited on Mar 30, 2026

No findings