Qxw is a program to help you create and publish crosswords. Here are some mini-screenshots to illustrate the kinds of crossword you can produce using it.
Step 1: create a grid
Step 2: fill it in
Step 3: publish it
Alternatively, use ‘batch mode’ to experiment with arbitrary grid topologies and automated grid design space exploration.
How does it work?
Qxw’s main window is divided into two parts. On the left it shows the grid being constructed, while on the right it shows a list of the words in Qxw’s dictionary that will fit where the cursor (the grey triangle in the grid) points. Clicking on one of these words enters it into the grid; alternatively, you can simply type a word in using the keyboard.
As you build the grid, Qxw continuously attempts to find words that fit. If it turns out that there are only a few possible letters to go in a certain cell, a red square appears to indicate a ‘hotspot’. The fewer alternative letters available, the bigger the red square. This helps guide you to the parts of the grid that will be trickiest to fill in. If there is only one possible letter for a certain square, Qxw automatically adds that letter in grey. The grey letters can be confirmed in the grid with a click of the mouse, eliminating huge amounts of trial and error.
The word list on the right only shows the words that are consistent with the rest of the grid built so far. For example, in the picture here, only five possible words are shown even though there are hundreds of seven-letter words in the dictionary starting with ‘T’. This is because the only across possibility in the third row is ‘ICIER’, forcing an ‘R’ in the third position; in the fourth row, only ‘NODDED’, ‘NODDER’ and ‘NODDLE’ are possible; in the fifth row, only ‘UPSEE’ and ‘UPSET’ are possible; and so on.
Statistics and rules check
A statistics window can be called up at any time. It shows the distribution of light lengths and checking patterns along with other general information. You can also see the distribution of letters in the grid. If not dismissed, the window will update dynamically as you edit the grid.
Any combination of lights or cells can be selected. This can be done via menu items (or their keyboard shortcut equivalents) or by holding down the shift key and clicking on or dragging over the desired cells with the mouse. Various of Qxw’s functions can be restricted to selected lights or cells.
The selection function can also be used to highlight any lights that violate user-defined checking criteria.
At any point an ‘auto-fill’ function can be invoked that will attempt to complete the grid. Filling can be either deterministic (always producing the same fill) or randomised (producing a different fill every time). The auto-fill function can be restricted to a selected region of the grid. The auto-fill function is based on the same technology as Crux.
These features make creating a grid a very quick job. A grid like the one above can be constructed and filled in just a couple of minutes.
Qxw’s system requirements are modest. The Linux version should work on any reasonably modern Linux system; it is tested and the distributed 64-bit binary built under Xubuntu 18.04 LTS. A Debian package is available.
The Windows version should work on any machine running Windows 7 or later.
How do I get a copy?
This page most recently updated Sat 22 May 10:34:34 BST 2021
New: ARM Cortex-M7 cycle counts and dual-issue combinations; Free, fast, and compact ARM Cortex-M0 single- and double-precision floating-point library; Offline SOWPODS checker
Qxw is a free (GPL) crossword construction program. New! Release 20200708 for both Linux and Windows. Non-Roman alphabets, batch mode, multiplex lights, answer treatments, circular and hex grids, jumbled entries, lots more besides. More...
You can order my book, ‘Practical Signal Processing’, directly from CUP or via Hive, Amazon UK or Amazon US.
If you find this site useful or diverting, please consider a donation to NASS (a UK registered charity), to KickAS (in the US), or to a similar body in your own country.
All trademarks used are hereby acknowledged.