NSXIV(1)

NAME
nsxiv - Neo Simple X Image Viewer

SYNOPSIS
nsxiv [-abcfhiopqrtvZ0] [-A FRAMERATE] [-e WID] [-G GAMMA] [-g GEOMETRY] [-N NAME] [-n NUM] [-S DELAY] [-s MODE] [-z ZOOM] FILE...

DESCRIPTION
nsxiv is a simple image viewer for X.

It has two modes of operation: image and thumbnail mode. The default is image mode, in which only the current image is shown. In thumbnail mode a grid of small previews is displayed, making it easy to choose an image to open.

Please note, that the fullscreen mode requires an EWMH/NetWM compliant window manager.

OPTIONS

-A FRAMERATE
    Play animations with a constant frame rate set to FRAMERATE.

-a  Play animations of multi-frame images.

-b  Do not show statusbar at the bottom of the window.

-c  Remove all orphaned cache files from the thumbnail cache directory and exit.

-e WID
    Embed nsxiv's window into window whose ID is WID.

-f  Start in fullscreen mode.

-G GAMMA
    Set image gamma to GAMMA (-32..32).

-g GEOMETRY
    Set window position and size. See section GEOMETRY SPECIFICATIONS of X(7) for more information on GEOMETRY argument.

-N NAME
    Set the resource name of nsxiv's X window to NAME.

-n NUM
    Start at picture number NUM.

-h  Print brief usage information to standard output and exit.

-i  Read names of files to open from standard input. Also done if FILE is `-'.

-o  Write list of all marked files to standard output when quitting. In combination with -i nsxiv can be used as a visual filter/pipe.

-p  Enable private mode, in which nsxiv does not write any cache or temporary files.

-q  Be quiet, disable warnings to standard error stream.

-r  Search the given directories recursively for images to view.

-S DELAY
    Start in slideshow mode. Set the delay between images to DELAY seconds. DELAY may be a floating point number.

-s MODE
    Set scale mode according to MODE character. Supported modes are: [d]own, [f]it, [F]ill, [w]idth, [h]eight.

-t  Start in thumbnail mode.

-v  Print version information to standard output and exit.

-Z  The same as `-z 100'.

-z ZOOM
    Set zoom level to ZOOM percent.

-0  Use NULL-separator. With this option output of -o and file-list sent to the key-handler and the input of -i will be separated by a NULL character.

KEYBOARD COMMANDS

  General
The following keyboard commands are available in both image and thumbnail mode:

0-9 Prefix the next command with a number (denoted via count).

q   Quit nsxiv.

Return
    Switch to thumbnail mode / open selected image in image mode.

f   Toggle fullscreen mode.

b   Toggle visibility of statusbar at the bottom of the window.

Ctrl-x
    Send the next key to the external key-handler. See section EXTERNAL KEY HANDLER for more information.

g   Go to the first image.

G   Go to the last image, or image number count.

r   Reload image.

D   Remove current image from file list and go to next image.

Ctrl-h, Ctrl-Left
    Scroll left one screen width.

Ctrl-j, Ctrl-Down
    Scroll down one screen height.

Ctrl-k, Ctrl-Up
    Scroll up one screen height.

Ctrl-l, Ctrl-Right
    Scroll right one screen width.

+   Zoom in.

-   Zoom out.

m   Mark/unmark the current image.

M   Mark/unmark all images starting from the last marked/unmarked image up to the current one.

Ctrl-m
    Reverse all image marks.

Ctrl-u
    Remove all image marks.

N   Go count marked images forward.

P   Go count marked images backward.

{   Decrease gamma correction by count steps.

}   Increase gamma correction by count steps.

Ctrl-g
    Reset gamma correction.

  Thumbnail mode
The following keyboard commands are only available in thumbnail mode:

h, Left
    Move selection left count times.

j, Down
    Move selection down count times.

k, Up
    Move selection up count times.

l, Right
    Move selection right count times.

R   Reload all thumbnails.

  Image mode
The following keyboard commands are only available in image mode:

Navigate image list:

n, Space
    Go count images forward.

p, Backspace
    Go count images backward.

[   Go count * 10 images backward.

]   Go count * 10 images forward.

Handle multi-frame images:

Ctrl-n
    Go count frames of a multi-frame image forward.

Ctrl-p
    Go count frames of a multi-frame image backward.

Ctrl-a, Ctrl-Space
    Play/stop animations of multi-frame images.

Panning:

h, Left
    Scroll image 1/5 of window width or count pixels left.

j, Down
    Scroll image 1/5 of window height or count pixels down.

k, Up
    Scroll image 1/5 of window height or count pixels up.

l, Right
    Scroll image 1/5 of window width or count pixels right.

H   Scroll to left image edge.

J   Scroll to bottom image edge.

K   Scroll to top image edge.

L   Scroll to right image edge.

z   Scroll to image center.

Zooming:

=   Set zoom level to 100%, or count%.

w   Set zoom level to 100%, but fit large images into window.

W   Fit image to window.

F   Fill image to window.

e   Fit image to window width.

E   Fit image to window height.

Rotation:

<   Rotate image counter-clockwise by 90 degrees.

>   Rotate image clockwise by 90 degrees.

?   Rotate image by 180 degrees.

Flipping:

|   Flip image horizontally.

_   Flip image vertically.

Miscellaneous:

a   Toggle anti-aliasing.

A   Toggle visibility of alpha-channel, i.e. image transparency.

s   Toggle slideshow mode and/or set the delay between images to count seconds.

MOUSE COMMANDS

  Thumbnail mode
The following mouse mappings are available in thumbnail mode:

Button1
    Select the image. Goes into image mode if double-clicked.

Button3
    Mark/unmark the image. Dragging while holding Button3 down will mark/unmark multiple images.

Button4
    Scroll up by one row.

Button5
    Scroll down by one row.

Ctrl-Button4
    Scroll up by one page.

Ctrl-Button5
    Scroll down by one page.

  Image mode
The following mouse mappings are available in image mode:

Button1
    Go to the next image if the mouse cursor is in the right part of the window or to the previous image if it is in the left part.

Ctrl-Button1
    Pan the image relative to the mouse cursor.

Button2
    Pan the image according to the mouse cursor position in the window while keeping this button pressed down.

Button3
    Switch to thumbnail mode.

Button4
    Zoom in.

Button5
    Zoom out.

CONFIGURATION
The following X resources are supported:

window.background
    Color of the window background

window.foreground
    Color of the window foreground

bar.font
    Name of Xft bar font

bar.background
    Color of the bar background. Defaults to window.background

bar.foreground
    Color of the bar foreground. Defaults to window.foreground

mark.foreground
    Color of the mark foreground. Defaults to window.foreground

Please see xrdb(1) on how to change them.

WINDOW TITLE
The window title can be replaced with the output of a user-provided script, which is called by nsxiv whenever there's a redraw. The path of this script is $XDG_CONFIG_HOME/nsxiv/exec/win-title and the arguments given to it (where "Optional" arguments might be empty) are: 1) resolved absolute path of the current file, 2) current file number, 3) total file count, 4) image width (Optional: Disabled on thumbnails mode), 5) image height (Optional: Disabled on thumbnails mode), 6) current zoom (Optional: Disabled on thumbnails mode).

The term file is used rather than image as nsxiv does not precheck that the input files are valid images. Total file count may be different from the actual count of valid images.

There is also an example script installed together with nsxiv as /usr/pkg/share/doc/nsxiv/examples/win-title.

STATUS BAR
The information displayed on the left side of the status bar can be replaced with the output of a user-provided script, which is called by nsxiv whenever an image gets loaded. The path of this script is $XDG_CONFIG_HOME/nsxiv/exec/image-info and the arguments given to it are: 1) path to image file, 2) image width, 3) image height.

There is also an example script installed together with nsxiv as /usr/pkg/share/doc/nsxiv/examples/image-info.

EXTERNAL KEY HANDLER
Additional external keyboard commands can be defined using a handler program located in $XDG_CONFIG_HOME/nsxiv/exec/key-handler. The handler is invoked by pressing Ctrl-x. The next key combo is passed as its first argument. Passed via stdin are the images to act upon: all marked images, if in thumbnail mode and at least one image has been marked, otherwise the current image. nsxiv(1) will block until the handler terminates. It then checks which images have been modified and reloads them. By default nsxiv(1) will send one image per-line to stdin, however when using -0 the image list will be NULL separated and the enviornment variable "$NSXIV_USING_NULL" will be set to 1. The key combo argument has the following form: "[C-][M-][S-]KEY", where C/M/S indicate Ctrl/Meta(Alt)/Shift modifier states and KEY is the X keysym as listed in /usr/include/X11/keysymdef.h without the "XK_" prefix. If KEY has an uppercase equivalent, S-KEY is resolved into it. For instance, K replaces S-k and Scedilla replaces S-scedilla, but S-Delete is sent as-is. There is also an example script installed together with nsxiv as /usr/pkg/share/doc/nsxiv/examples/key-handler.

THUMBNAIL CACHING
nsxiv stores all thumbnails under $XDG_CACHE_HOME/nsxiv/.

Use the command line option -c to remove all orphaned cache files. Additionally, run the following command afterwards inside the cache directory to remove empty subdirectories:

    find . -depth -type d -empty ! -name '.' -exec rmdir {} \;

ORIGINAL AUTHOR
    Bert Muennich          <ber.t at posteo.de>

CURRENT MAINTAINERS
    N-R-K                  <nrk at disroot.org>
    Berke Kocaoğlu         <berke.kocaoglu at metu.edu.tr>
    TAAPArthur             <taaparthur at gmail.com>
    eylles                 <ed.ylles1997 at gmail.com>
    mamg22                 <marcomonizg at gmail.com>
    LuXu
    explosion-mental       <explosion0mental at gmail.com>
    Guilherme Freire
    Stein Gunnar Bakkeby   <bakkeby at gmail.com>
    Anupam Ashish Minz
    Sam Whitehead
    Kian Kasad             <kian at kasad.com>
    qsmodo

CONTRIBUTORS
    Bastien Dejean         <nihilhill at gmail.com>
    Dave Reisner           <d at falconindy.com>
    Fung SzeTat            <sthorde at gmail.com>
    Max Voit               <mvdev at with-eyes.net>
    For additional contributors, run `git shortlog -s` in the nsxiv repository.

HOMEPAGE

Website:
    https://nsxiv.github.io/nsxiv/

Source code:
https://github.com/nsxiv/nsxiv

SEE ALSO
X(7), xrdb(1)