Hi Oli,
(sorry for the slow response - was travelling with a very full schedule).
I'm glad you're finding ISOLDE useful! Regarding non-crystallographic symmetry: yes and no. Turns out it's extraordinarily difficult (and possibly intractable) to implement true, "live" NCS restraints in an environment like ISOLDE, which relies on a divide-and-conquer approach to maintain performance compatible with interactivity (i.e. simulating only enough of the model to cover the problem you want to fix). The classic approach towards NCS restraints involves biasing all copies of a given site to their internal average conformation - so if one copy is mobile, then for the restraints to work correctly all copies would need to be mobile. Not only does that become a bit of an accounting nightmare when initialising a simulation from a given selection, but for high-order NCS it will rapidly blow out the number of atoms in the interactive simulation.
That being said, there are a few tricks you can do which are generally pretty good at giving you the desired effect. The general idea (as you might expect) is to focus most of your interactive work on a single copy of the repeat unit, then propagate your changes to the remainder using mostly non-interactive simulations.
Approach 1: use your working copy as a template for torsion and/or distance restraints on the remaining copies. For example, if your working copy is made up of chains A and B, and you want to propagate to chains C and D:
isolde restrain torsions #1/C template #1/A angleRange 180
isolde restrain torsions #1/D template #1/B angleRange 180
isolde restrain distances "#1/C","#1/D" template "#1/A","#1/B" useCoord f
The resulting restraints will of course only be targeted to the current instantaneous conformation of the template chains, but you can update them whenever you want to by repeating the commands. Probably the easiest way (particularly for bigger models with many NCS chains) is to put all the necessary commands in a .cxc command script so you can repeat them with e.g. "open apply_ncs_restraints.cxc".
Approach 2: delete and replace the NCS chains with copies of your working chains. For the same scenario as above:
sel #1/A,B
save template.pdb #1 sel t
open template.pdb
match #2/A to #1/C
del #1/C,D
sel #2
... then use ISOLDE/Model Building/Merge Models Into Working Model
This approach has its pros and cons. Pro: it ensures your symmetry copies are identical to your main copy (at least until you start things moving again). Cons: (a) if you had any restraints applied to your symmetry copies, they will be wiped out; (b) it is not guaranteed that the chain IDs in the replacement symmetry copies will be the same as the ones you just deleted.
For what it's worth, there may be a better approach in the works, but it will take a bit of effort to fully implement in ISOLDE and I'm a bit short on development time lately so I can't make any promises on when it will happen. Peter Eastman on the OpenMM team recently added the ability to support symmetry-constrained MD (where the simulation consists of a single set of "true" atoms plus a set of transformation matrices to set the positions of their symmetry equivalents).
Best,
Tristan