NIP2(1)

✨ NIP2(1) ✨

the nip2 manual page, section 1 of the General Commands Manual β€” bestie edition πŸ’–


🌸 NAME 🌸

nip2 β€” image processing with the VIPS library πŸ¦‹


πŸ’… SYNOPSIS πŸ’…

nip2 [filename1 ...]
nip2 -s filename [arg1 ...]
nip2 -e expression [arg1 ...]

πŸ‘‘ DESCRIPTION πŸ‘‘

nip2 (it stands for New Image Processing, iykyk) is a tool for manipulating images using the VIPS image processing library. it's giving main character energy in the terminal, fr fr πŸ’…

There are three principal modes, bestie. pick your fighter:

  • nip2 [filename1 ...] start in GUI mode, loading the named files ✨
  • nip2 -e expression [arg1 ...] nip2 --expression=EXPRESSION [arg1 ...] start in no-GUI mode; set main = expression, set list argv to ["filename", "arg1", "arg2", ...], set argc to length of list; print the value of symbol main to stdout; exit 🫢
  • nip2 -s filename [arg1 ...] nip2 --script=FILENAME [arg1 ...] start in no-GUI mode; read in filename as a set of definitions, set list argv to ["filename", "arg1", "arg2", ...], set argc to length of list; print the value of symbol main to stdout; exit; useful for running nip2 as an interpreter on unix 🌈

okay so you can use -o to direct output to a file rather than stdout. obsessed 😭

  • -o filename
  • --output=FILENAME the value of main is written to the named file. If main is a list, the filename is incremented between objects. You can use the suffix to specify the format and options to write in πŸ’Ύ

Other options provide finer control over startup and shutdown. If you need to do something strange, don't use -e/-s, use these in combination. no cap 🧚

  • -b, --batch β€” batch (ie. non-GUI) mode
  • -m, --no-load-menus β€” don't load menus, for faster startup ⚑
  • -a, --no-load-args β€” don't load extra command-line arguments
  • -w, --stdin-ws β€” load stdin as a workspace
  • -d, --stdin-def β€” load stdin as a set of definitions
  • -p, --print-main β€” print the value of main on exit. nip2 will check for a top-level symbol called main, and also check each workspace for a main πŸ‘€

Finally some other options are useful for debugging, timing and for generating strings for internationalisation. the way that… πŸ’€

  • -V, --verbose β€” produce verbose error messages: handy for debugging in batch mode
  • -i, --i18n β€” output strings from .def files for internationalisation 🌍
  • -v, --version β€” print version information
  • -c, --benchmark β€” benchmark: no GUI, just start up and shut down
  • -t, --time-save β€” time saves: after every image save a popup tells you the time the save took in seconds ⏱️
  • -T, --test β€” test: start up (including any arg processing), test for any errors, and exit with an error code if any occured. Useful for running automated tests. πŸ§ͺ
  • -x PREFIX, --prefix=PREFIX β€” set install prefix: start up as if nip2 had been installed to PREFIX. Useful for running automated tests without installing the thing.

πŸŽ€ EXAMPLES πŸŽ€

nip2 fred.jpg

Start nip2, loading fred.jpg. πŸ–ΌοΈ

nip2 -e "2 + 2"

Prints 4 to stdout. math ate that πŸ’…

nip2 -e "99 + Image_file argv?1" -o result.png fred.jpg

Load argv1 (fred.jpg), add 99, output to result.png. πŸ”₯

nip2 -e "Matrix [[1,2],[4,5]] ** -1" -o poop.mat

Invert the 2x2 matrix and write the result to poop.mat. not the poop.mat 😭 iconic


2008 (c) Imperial College, London


and that's the whole page, bestie 🫢 this one's from the General Commands Manual, dated Oct 4 2004, and it lives at NIP2(1) β€” go forth and process them images βœ¨πŸŒΈπŸ’–