---
name: "vis"
section: "1"
platform: "openbsd"
package: "man"
version: "8.0-current-20261101"
release: "OpenBSD 8.0-current (2026-11-01)"
platforms: ["linux", "freebsd", "openbsd", "macos"]
url: "https://new.carta.tech/vis"
---

# vis(1)

display non-printable characters in a visual format

## NAME

**vis** – display non-printable characters in a visual format

## SYNOPSIS

**vis** \[**-abcflnostw**\] \[**-F** *foldwidth*\] \[*file ...*\]

## DESCRIPTION

**vis** is a filter for converting non-printable characters into a visual representation. It differs from **cat** **-v** in that the form can be unique and invertible. By default, all non-printing characters except space, tab, and newline are encoded, as are any meta-characters (eighth bit set). A detailed description of the various visual formats is given in [vis(3)](/vis/3.md).

The options are as follows:

- **-a**

  Encode all characters, whether originally visible or not.

- **-b**

  Turns off prepending of backslash before up-arrow control sequences and meta-characters, and disables the doubling of backslashes. This produces output which is neither invertible nor precise, but does represent a minimum of change to the input. It is similar to **cat** **-v**.

- **-c**

  Request a format which displays a small subset of the non-printable characters using C-style backslash sequences.

- **-F** *foldwidth*

  Causes **vis** to fold output lines to *foldwidth* columns, like [fold(1)](/fold/1.md), except that a hidden newline sequence is used, (which is removed when inverting the file back to its original form with [unvis(1)](/unvis/1.md)). If the last character in the encoded file does not end in a newline, a hidden newline sequence is appended to the output. This makes the output usable with various editors and other utilities which typically don't work with partial lines.

- **-f**

  Like **-F**, except output is always folded to 80 columns.

- **-l**

  Mark newlines with the visible sequence ‘\\$’, followed by the newline.

- **-n**

  Turns off any encoding, except for the fact that backslashes are still doubled and hidden newline sequences inserted if **-f** or **-F** is selected. When combined with the **-f** flag, **vis** becomes like an invertible version of the [fold(1)](/fold/1.md) utility. That is, the output can be unfolded by running the output through [unvis(1)](/unvis/1.md).

- **-o**

  Request a format which displays non-printable characters as an octal number, \\ddd.

- **-s**

  Only characters considered unsafe to send to a terminal are encoded. This flag allows backspace, bell, and carriage return in addition to the default space, tab, and newline. Meta-characters that are considered graphic characters by [isgraph(3)](/isgraph/3.md) are not encoded.

- **-t**

  Tabs are also encoded.

- **-w**

  White space (space-tab-newline) is also encoded.

## SEE ALSO

[unvis(1)](/unvis/1.md), [vis(3)](/vis/3.md)

## HISTORY

The **vis** command appeared in 4.3BSD-Reno.
