The test release of nip4 is now out and it seems to work OK on Linux, Windows and macOS. I thought I’d write a few notes for users of nip2 outlining the big changes and the bits of it that are still missing.

Background

nip2 was mostly finished around 2000, with the final big feature going in in 2005 (I think). It still works fine, but it was becoming difficult to maintain since the major libraries it depends on (libvips-7 for image processing, gtk-2 for the user interface widgets, and goffice-0.8 for plotting) have long fallen out of maintenance.

It was also starting to look rather crude and old-fashioned! Something of a trip back in time, with brightly coloured elements and hard edges and corners everywhere. And nip2 is a “kitchen sink” program — it has lots of features which seemed like a good idea at the time, but which I never ended up using much.

nip2

nip4 is a rewrite of nip2 with the following aims:

And here is nip4, running the same very complex workspace:

nip4

New image window

One of the biggest changes is a completely new image view window. It understands most pyramidal image formats, it does smooth zooming, it runs on your GPU, it handles alpha, it supports animation and multipage images, and it should be a lot quicker.

The big changes from a user-interface point of view are:

Most other things are the same, so number keys for zoom levels, i and o for zoom in and out, Ctrl-drag to mark regions, cursor keys to pan, and so on.

Toolkit bar

The big change in the main window is the new toolkit bar down the left, replacing the old Toolkits menu.

nip4

It slides left and right as you select items or go back, and it stays open after clicking on a tool, so you can use several related tools together, which can be convenient.

It also supports keyword search. Click on the magnifying glass at the top-left, then type something related to what you want. Entering “lab”, for example, will show all the tools related to CIELAB colourspace, for example:

nip4

Searching is fuzzy, so you don’t need to be exact.

Workspace drag animations

The main workspace view has fancy animations for column and row dragging, which can help make it easier to see what’s going on. The big change from nip2 is that you can now (finally!) drag rows between columns.

You can also left-drag on the workspace background to pan, phew.

No region context menu

In nip2 there was a right-click menu in image view windows you could use to delete or edit region properties. This is gone in nip4, you’re supposed to go back to the workspace and right-click on the row for that region. You can change region properties by opening the row a few times and editing the members:

nip4

This works for all objects: open the row, edit the members.

Recover after crash

nip4 has a much better recover after crash system. Select Recover after crash … from the main burger menu and you see a table of recent workspace auto-backups, sorted by the process ID and time. Doubleclick one of them to restore it.

nip4

New graphing window

The graphing window has been rewritten and now uses kplot.

nip4

It no longer supports bar plots, but everything else works, and it’s very fast.

Multiple select on rows

You can now range-select rows, then right-click on a row name and act on them all. This is useful for deleting or duplicating sets of rows.

Definitions

If you right-click on the workspace background, the workspace menu includes Workspace definitions and Edit toolkits ….

The toolkit editor is a bit basic, but does work.

What’s missing

The paintbox is probably the biggest missing feature, this might come back.

The github repository has a large TODO file with notes on bugs, ideas and other missing features.