the short opt -t does not accept optional argument since it'd
break short option chaining.
e.g `nsxiv -tp` currently works as `nsxiv -t -p` but if `-t`
accepted optional argument then it'd stop working since "p" will
be interpreted as argument to `-t` instead of being a flag.
ref: https://codeberg.org/nsxiv/nsxiv/issues/404
A decent amount of users have been confused by this.
So make it more explicit to avoid confusion.
Co-authored-by: NRK <nrk@disroot.org>
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/488
Reviewed-by: NRK <nrk@disroot.org>
Co-authored-by: fxdn <fxdn@noreply.codeberg.org>
Co-committed-by: fxdn <fxdn@noreply.codeberg.org>
the fedora copr repo is no longer being updated since the maintainer of
it, mamg22, no longer uses nsxiv in his daily setup (and thus stopped
contributing to nsxiv as well).
he has requested the repo and his email to be removed from the project.
so go ahead and honor that request.
also take this as an opportunity to remove some long inactive
maintainers from the CURRENT MAINTAINERS section of the manpage.
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/448
Reviewed-by: explosion-mental <explosion-mental@noreply.codeberg.org>
The last time[0] this was discussed, no-one was against it but no-one
was confident in it either and so it was added to nsxiv-extra as a
patch.
But now that enough time has passed, it seems like there's a pretty high
demand for something like this because there's plenty of use-cases that
use nsxiv as a "picker" where it's meant to quickly pick a single file.
And so add this as a convenient default key-bind.
[0]: https://codeberg.org/nsxiv/nsxiv-record/pulls/42
Co-authored-by: eylles <ed.ylles1997@gmail.com>
Co-authored-by: NRK <nrk@disroot.org>
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/432
Reviewed-by: NRK <nrk@disroot.org>
Co-authored-by: eylles <eylles@noreply.codeberg.org>
Co-committed-by: eylles <eylles@noreply.codeberg.org>
removes a couple maintainers who have never been active in the
development.
there are a couple other maintainers have not been active in a while,
but was somewhat active in the past. so keep their names in it
(for now at least).
also re-arrange the entires a bit based on activity.
this section was added almost 10 years ago (see commit 60f84190f) back
when sxiv was pretty new and didn't have many contributors.
the situation has obviously changed now, especially with `nsxiv` we have
a fair amount of contributors now. so it makes no sense to special case
a couple of them.
now that we have long-opts, we don't have to worry about exhausting the
alphabet list for short-opts. so adding a cli flag to set/unset the
checker background makes sense.
ref: https://codeberg.org/nsxiv/nsxiv/issues/404
* Imlib2 supports modifying gamma, brightness and contrast directly
while sxiv only supports gamma. Makes sense to extend it to brightness
and contrast as well.
* Since color corrections need to be aware of each other, they have been
refactored into one centralized function.
* This also makes the code more hackable as it makes it easier to add
more color correction functions without them interfering with each
other.
Co-authored-by: 0ion9 <finticemo@gmail.com>
Co-authored-by: NRK <nrk@disroot.org>
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/396
Reviewed-by: NRK <nrk@disroot.org>
Reviewed-by: TAAPArthur <taaparthur@noreply.codeberg.org>
Co-authored-by: Berke Kocaoğlu <kberke@metu.edu.tr>
Co-committed-by: Berke Kocaoğlu <kberke@metu.edu.tr>
simply running nsxiv with `--anti-alias` will enable anti-aliasing, and
running it with `--anti-alias=no` will disable it.
the cli flag will overwrite the config.h default.
Closes: https://codeberg.org/nsxiv/nsxiv/issues/349
* link to online man-page
* rename: "N-R-K" -> "NRK"
* separate multiple links with a comma.
otherwise the links get messed up due to `[] []` being valid syntax for
reference style links with the 2nd `[]` serving as `id`.
* prefer codeberg links over github ones
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/362
Reviewed-by: explosion-mental <explosion-mental@noreply.codeberg.org>
Uses [optparse] to add support for long-opts. optparse is posix
compliant with getopt(3) and thus would be backwards compatible.
It does not have any dependency (not even the c standard library!) and
is C89 compatible and thus fits our current code-style.
[optparse]: https://github.com/skeeto/optparse
Note that we're using a couple `pragma`-s to silence some harmless
warnings. This should be portable because these pragma-s don't change the
behavior of the program. Furthermore, C standard mandates that unknown
pragma's should be ignored by the compiler and thus would not result in
build failure on compilers which do not recognize them.
Closes: https://codeberg.org/nsxiv/nsxiv/issues/328
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/332
Reviewed-by: eylles <eylles@noreply.codeberg.org>
This is mainly just to reduce the amount of files in the project root.
The criteria of what gets into `etc/` are the following:
* The file should not be necessary for building nsxiv. This excludes the
`icon/*` stuff since that's needed by `window.c`.
* The file shouldn't have any valid reason to stay in the project root.
This excludes things like `README.md`, `.gitignore` etc.
Reviewed-on: https://codeberg.org/nsxiv/nsxiv/pulls/350
Reviewed-by: explosion-mental <explosion-mental@noreply.codeberg.org>