When comparing sxiv vs nomacs, the Slant community recommends nomacs for most people. In the question“What are the best FOSS image viewers for UNIX-like systems?” nomacs is ranked 2nd while sxiv is ranked 10th.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Anti-aliasing can be toggled
Anti-aliasing is usually enabled on startup and can be toggled with 'a'.
Disabling anti-aliasing means faster operation due to less CPU load.
Changing the default is possible by compiling with this setting:
# config.h
static const bool ANTI_ALIAS = false;
Pro Supports embedding into other X windows
Via option -e.
Pro Basic support for multi-frame images (aka animations)
Load all frames from GIF files and play GIF animations.
Pro Acts as a filter for images that interacts with the command line
Option -i (input) takes filenames from stdinput and outputs marked images to stdoutput via option -o (output).
Pro Userscripts can be applied to single images or thumbnail mode selection
Examples of how to use the key-handler are found here:
/usr/share/sxiv/exec/key-handler
Pro Image infobox can be configured
Can be configured in ~/.config/sxiv/exec/image-info. See also here.
Pro Rudimentary viewing manipulation
Images can be rotated (<,>), flipped (|,_) and scaled (w,W,e,E,=).
Pro View mode with marked files
Keys 'N' and 'P' move in list of marked files. This can be useful.
Pro Thumbnail mode
Pro Fast
Pro Highly customizable
Pro Detailed view of image metadata
Pro Lots of image adjustment tools
Pro Simple and pleasant look
No cramped toolbars or large icons; the UI is cohesive, minimal and keeps out of your way.
Pro Lightweight
Starts very quickly and has a small memory footprint.
Pro You can work with hot keys that can be reassigned as you want them
Pro Frameless view
Pro Allows to cut (frame) images
It is important if you have to work with photos of documents and want to cut off the background on which you made photos.
Pro Flexible thumbnail views
Can display thumbnails in a strip or a zoomable grid as well, also has hotkey for both of these. Opening a folder is one of the main actions on the toolbar!
Pro Cross-platform
Has builds for Windows, Mac and Linux.
Pro Remembers last used folders
Often used folders (e.g., screenshots) can be quickly accessed.
Pro Batch image processing
Has tools for applying conversions etc. to many files at once.
Pro Can print to printer
Unlike most other image viewers.
Pro Supports new image formats out of the box
Such as WebP, AVIF, etc.
Pro Comparing two images
This feature is called Synchronization. With the synchronization it is possible that multiple viewers perform the same action (like panning, zooming, etc.). This feature is useful when comparing two images. See more here.
Cons
Con Browsing a directory after opening a single file needs fixing
See here
There is a workaround implemented in ranger that works more or less out of the box
# This hook allows image viewers to open all images in the current
# directory, keeping the order of files the same as in ranger.
# The requirements to use it are:
# 1. set open_all_images to true
# 2. ensure no files are marked
# 3. call rifle with a command that starts with "sxiv " or "feh "
def sxiv_workaround_hook(command):
Con Jumping in thumbnail mode possible, but limited
By entering a number, followed by capital G the focus jumps to that image in the list counted from beginning. (G is default key for 'g_n_or_last'-action (see config.h in source).)
It has to be noted that prefixing a motion with a number also works as espected (vim style).
Alas, a jumping mode with lables (like with pqiv) would be an advantage.
Con It doesn't have pong
Con Thumbnail mode only with simple marking
Key 'm' marks files.
Con Keys not configurable except via keyhandler mode or compilation
Keys can be associated with userscripts, which can be defined in ~/.config/sxiv/exec/key-handler. Every associated button needs to be prefixed with the key combination C-x (although that prefix can be configured to another key or key combination in config.h).
It has to be noted that key configuration apart from the key-handler is possible via compilation (Customizable key and mouse button mappings in config.h), which must not be a bad way to configure buttons, but certainly means a barrier for the not so tech-savvy.
Easy instruction for compilation:
1) Enter in terminal: "git clone https://github.com/muennich/sxiv.git"
2) Edit file "config.h" according to this
3) Compile and install, namely enter directory and enter in terminal: "make && sudo make install" (beware of sudo/root unless you know what you do)
( 4) Iterate: 2), then: enter directory and enter in terminal: "make clean && make && sudo make install" )
See an example for remapping the navigation buttons:
// navigate thumbnail+image
{ 0, XK_Left, i_navigate, -1 },
{ 0, XK_Left, t_move_sel, DIR_LEFT },
{ 0, XK_Right, i_navigate, +1 },
{ 0, XK_Right, t_move_sel, DIR_RIGHT },
{ 0, XK_Down, t_move_sel, DIR_DOWN },
{ 0, XK_Up, t_move_sel, DIR_UP },
{ ShiftMask, XK_Right, i_navigate, +10 },
{ ShiftMask, XK_Left, i_navigate, -10 },
Con No support for JPEG-XL
Con Only partial support for HEIC
Apple's HEIC format is only partially supported. Nomacs can open individual images, but can't navigate among them.
Con Heavy compared to other Linux image viewers
Uses more memory and CPU than other lightweight image viewers. High CPU usage when starting.
Con Returns to default settings after update
Con Recent version has slowed down
The latest version (3.8) suddenly became very slow in Fedora 26. Slow to step from image to image; slow to open a directory; slow slow slow. Downgrading to the previous version (3.6) restored speed.