---
name: "moor"
section: "1"
platform: "linux"
package: "moor"
version: "2.19.6-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/moor"
---

# moor(1)

the nice pager

## NAME

moor - the nice pager

## SYNOPSIS

**moor** \[options\] *file*...\
 **moor --help**\
 **moor --version**

## DESCRIPTION

**moor** is a pager much like *less* (1), but with generally nicer out-of-the-box behavior.

More information and screenshots: https://github.com/walles/moor#readme

Inside of **moor**, press **h** to access the built-in help.

Input is expected to be (optionally compressed) UTF-8 text. Invalid / unprintable characters are by default rendered as '?'.

If you have opened multiple files, press **:** to switch between them.

## OPTIONS

Multiple-choice options all have the default value listed first.

All of these options can be appended to the **MOOR** environment variable for persistent configuration.

Doing **moor --help** will also list these options.

- **--colors**={**auto** \| **8** \| **16** \| **256** \| **16M**}

  Size of color palette we output to the terminal

- **--debug**

  Print debug logs after exiting, less verbose than **--trace**

- **--follow**

  Scrolls automatically to follow piped input, just like **tail -f**

- **--lang**=string

  Used for highlighting. Without this flag highlighting is based on the input file name. Valid values are MIME types like **text/x-markdown**, file extensions like **md** or language names like **markdown**. For the source of truth on what is supported exactly, look in https://github.com/alecthomas/chroma/tree/master/lexers/embedded or its parent directory.

- **--mousemode**={**auto** \| **select** \| **scroll**}

  Guarantee selecting text with the mouse works but maybe not mouse scrolling. Or guarantee mouse scrolling works but selecting text requiring extra effort. Details here: https://github.com/walles/moor/blob/master/MOUSE.md

- **--no-clear-on-exit**

  Retain screen contents when exiting moor. Affected by **--no-clear-on-exit-margin**.

- **--no-clear-on-exit-margin**=int

  Leave this number of lines for your shell prompt after exiting. Defaults to 1. Affects **--no-clear-on-exit** and **--quit-if-one-screen**.

- **--no-linenumbers**

  Hide line numbers on startup, press left arrow key to show

- **--no-reformat**

  No effect, exists for backwards compatibility. See --reformat.

- **--no-search-line-highlight**

  Do not highlight the background of lines with search hits. The search hits themselves are still highlighted though, even with this option.

- **--no-statusbar**

  Hide the status bar, toggle with **=**

- **--quit-if-one-screen**

  Print input contents without paging if the input fits on one screen. Affected by **--no-clear-on-exit-margin**.

- **--reformat**

  Reformat supported input files (JSON) before showing them.

- **--render-unprintable**={**highlight** \| **whitespace**}

  How unprintable characters are rendered

- **--scroll-left-hint**=string

  UTF-8 character indicating the view can scroll left, defaults to an inverse **\<**. This can be a string containing ANSI formatting. The word **ESC** in caps will be interpreted as one escape character. Example value for faint (using ANSI SGR code 2) tilde characters: **ESC\[2m~**

- **--scroll-right-hint**=string

  UTF-8 character indicating the view can scroll right, defaults to an inverse **\>**. This can be a string containing ANSI formatting. The word **ESC** in caps will be interpreted as one escape character. Example value for faint (using ANSI SGR code 2) tilde characters: **ESC\[2m~**

- **--shift**=int

  Arrow keys side scroll amount. Or try ALT+arrow to scroll one column at a time.

- **--statusbar**={**inverse** \| **plain** \| **bold**}

  Status bar style

- **--style**={**native** \| *style*}

  Highlighting style from https://xyproto.github.io/splash/docs/longer/all.html

- **--tab-size**=int

  Number of spaces per tab stop, defaults to 8. Or try **CTRL-t** to toggle when **moor** is running.

- **--terminal-fg**

  Use terminal colors rather than style colors for unstyled text. This resets both foreground and background to their terminal defaults, so it also helps if your terminal window has a transparent or image background rather than a solid color.

- **--trace**

  Print trace logs after exiting, more verbose than **--debug**

- **--wrap**

  Wrap long lines, toggle with **w**

- **+1234**

  Immediately scroll to line **1234**

- **+/pattern**

  Immediately scroll to line matching **pattern**

## FILES

- **$XDG\_DATA\_HOME/moor/search\_history**

  Moor will store your search history in this file. If $XDG\_DATA\_HOME is not set, the file will be stored in the default XDG location, usually **~/.local/share/moor/search\_history**.

## ENVIRONMENT

- **LESS\_TERMCAP\_\***

  For backwards compatibility with less, moor reads all **LESS\_TERMCAP\_\*** values. In these values, both actual escape characters and the word **ESC** in caps are interpreted as escape characters. In moor, styling should be done using the **--style** option rather than using these environment variables. Example value: **ESC\[1m**.

- **LESS\_TERMCAP\_md**

  Formatting used for man page bold text.

- **LESS\_TERMCAP\_us**

  Formatting used for man page underlined text.

- **LESS\_TERMCAP\_so**

  Formatting used for status bar and search hits.

- **LESSSECURE**

  Setting this to "1" prevents moor from opening new files or launching external programs, as required by **[systemctl(1)](/systemctl/1.md).** In secure mode, the "v" command for opening the current file in an editor is disabled, and the search history file is not updated.

- **MOOR**

  Additional options are read from this variable if it is set, just as if those same options had been manually added to each moor invocation. Try setting it to **--reformat** to have JSON input automatically reformatted!

- **PAGER**

  If set to "moor", many programs will use **moor** as their pager.

- **PAGER\_WRAP\_COLUMNS**

  If set to a positive number, this limits the maximum width for wrapping long lines.

- **PAGER\_LABEL**

  Other programs can set this to tell moor what name to show for stdin input.

## BUGS

Kindly report any bugs here: https://github.com/walles/moor/issues
