Neo Simple X Image Viewer
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

15 KiB

nsxiv - Changelog


Changes will only be documented on stable releases. If you're on git/master then there may be more changes. Please use git log to view them.

SPECIAL NOTE: Due to this incident we have moved development over to CodeBerg.

A lot of the references below may now be 404 on GitHub. Any threads which survived the wipe have been migrated over to nsxiv-record. All of the references above can be found on the new main nsxiv repository on CodeBerg.

v30 (June 15, 2022)

  • Changes:

    • Development and main repository moved over to Codeberg. See the special note above for more info.
    • autoreload_{inotify,nop}.c merged into a single file, autoreload.c. #263
    • Moved all configuration related macros to #264
    • win-title is now called only when there's change rather than being called on each redraw. #266
  • Added:

    • Added more mimetypes to the .desktop entry. #260
    • Added thumb-info for customizing the statusbar in thumbnail-mode. #265
    • Added comments for building on OpenBSD. #264
  • Fixes:

    • "Too many open file" error due to not closing the win-title script. #245
    • -f now directly starts in fullscreen mode rather than opening a normal window and then going fullscreen. #251
    • Broken slideshow on slow systems or fast animations. #282
    • Memory leak when removing an image in thumbnail mode. #247
    • Correctly setting _NET_WM_PID. #251
    • Don't override statusbar if info script doesn't exist. #271
    • Potential misbehavior regarding font. #250

v29 (March 03, 2022)

  • Changes:

    • Window title is now customizeable via win-title, cli flag -T and related config.h options are removed. See WINDOW TITLE section of the manpage for more info. #213
    • Imlib2 cache size is now set based on total memory percentage, by default set to 3%. #184
    • Removed some non-POSIX extensions in the Makefile. #225
  • Added:

    • Ability to customize thumbnail mode mouse-bindings via config.h. #167
    • Option to set statusbar position to top via config.h. #231
    • New keybinding z to scroll to center. #203
  • Fixes:

    • Manpage cleanup: avoid confusing wording and document thumbnail mode mouse-bindings. #186
    • Wrong jpeg exif orientation with Imlib2 v1.7.5 (and above). #188
    • Animation slowdown when zoomed in. #200
    • Reset statusbar after failed keyhandler. #191
    • Window title not working on certain WMs. #234
    • Various compiler warnings. #197

v28 (December 12, 2021)

  • Changes:

    • Statusbar made optional via HAVE_LIBFONTS. #95
    • Remove library auto-detection, use OPT_DEP_DEFAULT instead. #71
    • Example scripts will now be installed into EGPREFIX ($(PREFIX)/share/doc/nsxiv/examples by default). See README for more info. #86
  • Added:

    • Animated webp support (optional via HAVE_LIBWEBP). #20
    • New mouse-binding Ctrl-Button1 for relative drag. #117
    • Ability to configure colors and fonts in config.h. #115
    • Ability to configure navigation width area in config.h. #155
    • Ability to customize the set of modifiers used when processing keybindings in config.h via USED_MODMASK. #150
    • Ability to configure Imlib2's cache size for better image (re)loading performance in config.h. #171
    • Cli flag -0 for sending null-seperated file-list to standard out (-o), and key-handler and receiving null-seperated file-list via stdin (-i). #68,#141,#164
    • Export environment variable NSXIV_USING_NULL to key-handler. #164
    • Embed new nsxiv icon. #163
    • make install-icon to install icons. #80,#96
    • make install-desktop to install .desktop entry. #80,#96
    • make install-all to install everything. #80,#96
    • Configurable KEYHANDLER_ABORT in config.h. #91,#172
    • Statusbar message upon key-handler activation. #98
    • Ability to write custom C functions in config.h and use them via keybindings. #76
  • Fixes:

    • Not able to use KEYHANDLER_ABORT key (Escape by default) in regular keybindings. #91
    • Memory leak related to Xresources. #134
    • Memory leak in gif loader. #165
    • Better handle gif colormap and prevent out-of-bound access. #165
    • Prevent crash when zooming out in very small images. #178
    • Removed non-POSIX commands and extensions from Makefile. #71
    • Regression where nsxiv wouldn't run on non-TrueColor X server. #114
    • Wrong comments in config.h and description in manpage. #105,#106,#152

v27.1 (September 16, 2021)

  • Fixes:

    • Source tarball failing build #66

v27 (September 16, 2021)

  • Changes:

    • Re-release under the name nsxiv.
    • Xresources Sxiv.foreground and Sxiv.background changed to Nsxiv.window.foreground and Nsxiv.window.background.
    • Xresources Sxiv.font changed to
    • Rework the build system. Now by default we'll build with only optional dependencies that are already installed. #19
  • Added:

    • Fill scale mode. #2
    • Configurable X window title (via config.h and the -T flag). #23
    • Support custom bar colors via Xresources. #19
    • Support custom mark color via Xresources. #51
    • Toggle animation playback with Ctrl-a. #33
    • Set _NET_WM_PID and WM_CLIENT_MACHINE X properties. #13
    • Set ICCCM WM manager hints. #12
  • Fixes:

    • Cli flag -G not initially setting gamma. #31
    • Wrong keybinding description in the manpage. #14
    • .desktop entry not advertising webp support. #15
    • Prevent crash when embedded into transparent window. #3
    • Small memory leak. #57
    • Rare crash when showing some GIFs. #41
    • Rare event where nsxiv wouldn't close after window being destroyed. #53


Stable releases

v26 (January 16, 2020)

  • Maintenance release

v25 (January 26, 2019)

  • Support font fallback for missing glyphs
  • Fix busy loop when built without inotify
  • Use background/foreground colors from X resource database

v24 (October 27, 2017)

  • Automatically reload the current image whenever it changes
  • Support embedding into other X windows with -e (e.g. tabbed)
  • New option -p prevents sxiv from creating cache and temporary files
  • Simpler mouse mappings, the most basic features are accessible with the mouse only (navigate, zoom, pan)

v1.3.2 (December 20, 2015)

  • external key handler gets file paths on stdin, not as arguments
  • Cache out-of-view thumbnails in the background
  • Apply gamma correction to thumbnails

v1.3.1 (November 16, 2014)

  • Fixed build error, caused by delayed config.h creation
  • Fixed segfault when run with -c

v1.3 (October 24, 2014)

  • Extract thumbnails from EXIF tags (requires libexif)
  • Zoomable thumbnails, supported sizes defined in config.h
  • Fixed build error with giflib version >= 5.1.0

v1.2 (April 24, 2014)

  • Added external key handler, called on keys prefixed with Ctrl-x
  • New keybinding {/} to change gamma (by András Mohari)
  • Support for slideshows, enabled with -S option & toggled with s
  • Added application icon (created by 0ion9)
  • Checkerboard background for alpha layer
  • Option -o only prints files marked with m key
  • Fixed rotation/flipping of multi-frame images (gifs)

v1.1.1 (June 2, 2013)

  • Various bug fixes

v1.1 (March 30, 2013)

  • Added status bar on bottom of window with customizable content
  • New keyboard shortcuts \/|: flip image vertically/horizontally
  • New keyboard shortcut Ctrl-6: go to last/alternate image
  • Added own EXIF orientation handling, removed dependency on libexif
  • Fixed various bugs

v1.0 (October 31, 2011)

  • Support for multi-frame images & GIF animations
  • POSIX compliant (IEEE Std 1003.1-2001)

v0.9 (August 17, 2011)

  • Made key and mouse mappings fully configurable in config.h
  • Complete code refactoring

v0.8.2 (June 29, 2011)

  • POSIX-compliant Makefile; compiles under NetBSD

v0.8.1 (May 8, 2011)

  • Fixed fullscreen under window managers, which are not fully EWMH-compliant

v0.8 (April 18, 2011)

  • Support for thumbnail caching
  • Ability to run external commands (e.g. jpegtran, convert) on current image

v0.7 (February 26, 2011)

  • Sort directory entries when using -r command line option
  • Hide cursor in image mode
  • Full functional thumbnail mode, use Return key to switch between image and thumbnail mode

v0.6 (February 16, 2011)

  • Bug fix: Correctly display filenames with umlauts in window title
  • Basic support of thumbnails

v0.5 (February 6, 2011)

  • New command line option: -r: open all images in given directories
  • New key shortcuts: w: resize image to fit into window; W: resize window to fit to image

v0.4 (February 1, 2011)

  • New command line option: -F, -g: use fixed window dimensions and apply a given window geometry
  • New key shortcut: r: reload current image

v0.3.1 (January 30, 2011)

  • Bug fix: Do not set setuid bit on executable when using make install
  • Pan image with mouse while pressing middle mouse button

v0.3 (January 29, 2011)

  • New command line options: -d, -f, -p, -s, -v, -w, -Z, -z
  • More mouse mappings: Go to next/previous image with left/right click, scroll image with mouse wheel (horizontally if Shift key is pressed), zoom image with mouse wheel if Ctrl key is pressed

v0.2 (January 23, 2011)

  • Bug fix: Handle window resizes correctly
  • New keyboard shortcuts: g/G: go to first/last image; [/]: go 10 images back/forward
  • Support for mouse wheel zooming (by Dave Reisner)
  • Added fullscreen mode

v0.1 (January 21, 2011)

  • Initial release