PrimeXP list of changes since release ------------------------------------- v1.19.6 2026-10-31 Stereochemistry assignment using Cahn-Ingold-Prelog rules with Helmchen's extensions are implemented in the CIPH command. This is still in development, so please carefully check any assignments and provide feedback. Currently, rules 1-5 have been implemented and rule 6 is planned. CIPH only uses geometry, i.e., no explicit bond-order data is used. v1.19.5 2026-10-26 Bogus duplication in ENVI and SRCH fixed. CShM updated to include anchoring on the fragment centroid in addition to anchoring on the central atom. Graph-set analysis implemented as an experimental procedure - it is undergoing testing, and shows lots of promise. All feedback is welcome. v1.19.4 2026-10-19 Added .html output option to the HIST command, which allows colour information written to the terminal by ADPS, RIGB, SYMM etc. to be preserved in the HIST file. (Thanks to Kuldeep Mahiya for the suggestion.) Fixed a minor discrepancy in PrimeXP's parser in sys_core.py, which might never have been found in practice, but best to fix anyhow. Added continuous shape measurement (CShM) in the form of command CSHM. It is a work in progress, so if you find problems, please let me know. Command QUEL to calculate quadratic elongation and bond angle variance for 4- and 6-coordinate polyhedra. See Robinson et al. (1971). Science, 172, 567-570. v1.19.3 2026-10-08 MPLN/V flag added to make MPLN draw mean planes. The colour and alpha channel (transparency) are set from the terminal command line. TAUX command to calculate tau4,5,6 parameters for metal atom coordination geometry added. In the CPOP and ZPAD ring puckering analyses, the shapes are now given as percentages of the various canonical shape types, as suggested by Evans and Boeyens (1989). Wall-eye (parallel view) and cross-eye stereo added as 'EYES 3' and 'EYES 4', respectively. (Thanks to Paul Boyle and Peter Mueller for independently suggesting this.) v1.19.2 2026-10-02 Added a /R flag to the UNIQ command, which allows regression to the atom list prior to the last UNIQ command, as a 'just in case' safety measure. UNIQ command logic fixed to allow no arguments, so as to make it more similar to XP's UNIQ command. (Thanks to Peter Mueller for the reminder.) The UNIQ command logic is moved into its own module (commands/cmds_uniq.py). v1.19.1 2026-09-30 HADD bug on high-symmetry GROWn fragments fixed. Label tags (PART, RESI, SYMM) right-offset fixed. Rendering bug for dashed ellipses in ATYP -4 and -9 fixed. For ATYPs 1-10, H atom line and dot colours are now white/black if the background is dark/light. Other ATYP styles for H/D should not be affected. (Thanks to Peter Mueller for this suggestion.) Wireframe and sticks now show isolated atoms as jacks, spheres, or ellipsoids depending on new config parameter ISOLATED_ATOM_STYLE in rsrc_config.py Graphics fonts wider/narrower/oblique now works for text in RIGB & LIBR (TLS) dashboards. Duplicate dummy X atoms leaky state fixed. ENVI arguments should now be order agnostic. TORS with no atoms specified now ignores non-bonded sequences. READ now pulls in a .cif from a terminal launch even if the extension is not included. The .PrimeXP.cfg file is now imported as part of the READ/REAP sequence, should be cross-platform. grfx_overlay.py split into grfx_overlay_core.py, grfx_overlay_labels.py, grfx_overlay_rigb.py, grfx_overlay_tls.py, and grfx_overlay_ui.py grfx_render_scene.py split into grfx_render_core.py, grfx_draw_core.py, grfx_draw_shaders.py, while keeping grfx_render_scene.py and absorbing grfx_draw.py into other modules. v1.19.0 2026-09-27 sys_terminal.py split into sys_terminal_core.py, sys_terminal_menu.py, sys_terminal_widget.py, sys_terminal_window.py grfx_adp.py split into grfx_adp_core.py, grfx_adp_pnut.py, grfx_tls_core.py, grfx_tls_buffer.py, grfx_tls_render.py, and some maths transferred to maths_adp.py grfx_density.py split into grfx_density_core.py, grfx_density_2d.py, grfx_density_3d.py, maths_marching.py grfx_events.py split into grfx_events_edit.py, grfx_events_export.py, grfx_events_input.py grfx_gui.py split into grfx_gui_core.py, grfx_gui_slots.py, grfx_gui_sync.py grfx_render.py split into grfx_render_core.py, grfx_render_gnomon.py, grfx_renderploy.py, grfx_render_scene.py (The above refactors were long overdue.) LINK command added. It uses the same logic as JOIN, but with default bond style code=6 (thin dashes). Anaglyph stereo (via click button or EYES command) now also splits atom labels for red/blue stereo. (Thanks to Peter Mueller for the prod on LINK and anaglyph stereo labels.) Added 'oblique' option to the 'Fonts' menu dropdown. (Thanks to Paul Boyle for the suggestion.) Fixed a bug in the PICK dashboard that displayed Q-peaks as ATYP -1 spheres. v1.18.17 2026-09-22 A few more fonts customized for PrimeXP, including Bill Clegg's original atom labelling font from XP have been added. Some details are in the updated manual. v1.18.16 2026-09-15 To try to keep the interface across Mac, Windows, and Linux consistent, two free fonts are included in v1.18.16. These are JetBrains Mono in terminal and the National Park font (used for routed signs in the US National Parks!) for the atom labels, LIBR, and RIGB dashboards. I modified the NP font to add serifs to 'I', change to a single-storey 'a', and add a slash to the 0 (zero). NOTE: Font scaling on Linux still seems to be off a bit ... the lettering is too large. I'm working on a fix. v1.18.15 2026-09-10 Three-state toggle for H on, H off, C-H off (was just on/off). (Thanks to Sanjay Dutta and Gary Nichol for independently suggesting this.) v1.18.14 2026-09-04 Some improvements to 2D electron-density contouring. v1.18.13 2026-08-31 HADD bug - some H atoms got the occupancy poorly formatted (e.g. 1.00000 not 11.00000) - fixed. (Thanks to Steven Kelley for finding this bug.) ATYP 0 X* (or $X etc.) did not always make the X-atom jacks invisible - fixed. v1.18.12 2026-08-26 Title and pop-up font sizes given parameters in rsrc_config.py. Alpha-channel bug affecting positive ATYPs fixed. v1.18.11 2026-08-25 Bug caused by introduction of alpha channel fixed. It affected the LIBR graphics L-tensor visuals. v1.18.10 2026-08-25 Individual, group, PART, RESI etc. colours for atoms, with transparency (alpha channel) via the COLR command. Black and white images for TELP - are also possible using the COLR command (e.g., 'COLR black' etc.) (Thanks to Simon Parsons for most of these suggestions.) (Also thanks whomever it was at the IUCr meeting that suggested transparency - let me know if it was you!) Add bond mode parameter in rsrc_config.py ('BOND_DEFAULT_MODE': 0,) (where 0=split, 1=blend, 2=grey, 3=deltaU) (Thanks to Gary Nichol for the suggestion.) v1.18.9 2026-08-24 PARTs may be drawn with different ATYPs on startup (configurable in rsrc_config.py). Allow 'LESS' to be used with DRAW, e.g. 'DRAW LESS PART2'. FMOL/B - added /B flag to FMOL to bypass resetting all bond styles to 'JOIN 1'. (Thanks to Gary Nichol for the suggestions.) MGEN/B - as per FMOL/B, retains custom bond styles in symmetry-generated moieties. v1.18.8 2026-08-20 VOID command now able to quantify and visualize interstitial voids as well as solvent-accessible voids: use 'VOID 0 0.02 minvol 0' for interstitial voids. (Thanks to Andrzej Katrusiak for the suggestion.) v1.18.7 2026-08-14 Atom labels can now inherit the colour of their atom (command LABL match). (Thanks to Bill Dougherty for the suggestion.) v1.18.6 2026-08-12 10-pt main font for Windows/Linux, 12pt for Mac. Maybe it will help a bit on Windows ? v1.18.5 2026-08-05 Clickable launcher for Windows added. v1.18.4 2026-07-29 First release for Mac, Linux, and Windows.