Community patches, scripts, tips and tricks for nsxiv.
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.
NRK 904e41d591 nav-dir: clarify the README 1 month ago
.github/workflows Use newer patch on tests and exit non-zero on fail 2 months ago
.woodpecker CI: Fix picking stale patches and make output less noisy (#24) 1 month ago
exec/key-handler exec/key-handler/dmenu-imitation: preserve backwards compatibility 1 month ago
patches nav-dir: clarify the README 1 month ago
scripts export misc scripts into it's own file under scripts/ 1 month ago move to codeberg (#17) 2 months ago Export to exec/ 1 month ago



This repo is used for hosting community patches, user scripts, tips and tricks, etc.

  • For general information on nsxiv, please consult the nsxiv readme.
  • For detailed information, please consult the manpage.
  • For information on how to manage patches and customization, please see CUSTOMIZATION.

NOTE: All patches and scripts in this repository are community submitted and maintained. Mainline nsxiv does not make any guarantee that there won't be merge conflicts or broken functionality on upgrade.

Community patches

Name Comments
alpha Add alpha/transparency to nsxiv
dmenu-mode Add dmenu mode to nsxiv
env-theme Change colors and font via env variables
image-mode-cycle Cycle when viewing multiple images
load-dir Load the entire directory
nav-dir Jump to next/prev directory
random-image Switch to a random image
toggle-winbg Keybinding to toggle the window background color
zoom-per-image Remember what the zoom for image was

For patch submissions please use the following format:

  • name-[BASE].ext

name is simply the name of the patch and .ext is the extension, which can be either .diff or .patch. [BASE] corresponds to either the version or the seven chars git commit short hash corresponding to the last commit on which the patch can be applied correctly and is tested to work with.

User scripts

Some examples scripts which add new and commonly requested functionality to nsxiv. These are meant to be minimal examples, users are encouraged to modify them to fit their use-cases.

Name Comments
nsxiv-env Pass arguments to nsxiv using environment variables.
nsxiv-url Open remote files.
nsxiv-rifle Open all images in a directory.
nsxiv-saver Use nsxiv as a xsecurelock screensaver.
subtube Watch subscribed youtubed videos.
nsxiv-pipe Pipe images into nsxiv
nsxiv-thumb Select videos to open in the current directory.
misc Misc oneliners and other useful scripts.

For script submissions, it is highly encouraged (but not required) to use POSIX sh rather than bash, zsh, Python, etc.

Exec excerpts

Idioms, excerpts or full examples for image-info, key-handler, thumb-info and win-title.


To contribute, sumbit a pull request at CodeBerg. Alternatively you may e-mail the patch (obtained via git format-patch) to any of the active maintainers instead.

One of easiest way to contribute is to look for failing patches and rebasing them on nsxiv master. Take a look at the CodeBerg CI to get a list of failing patches.

Feel free to add yourself to the list of "Authors" if you contribute to anything. You may also add some form of contact detail if you wish (preferably email, but can be anything else).


Since this repo is community maintained there's no guarantee that an issue will be worked on. If you run into any problems with any of the patches/scripts, try to fix it yourself and submit a pull request.

You may also open an issue for a request, but as stated above, there's no guarantee.

NOTE: Issues should be opened at CodeBerg