FAQ
Ingrid will have more complete documentation in the future, but for now this page collects the most common questions from users. If you have any questions that aren’t covered here, please check out the community Discord server.
§The Basics
§How do I get started with crossword construction?
Here are a few useful resources to get going:
-
The New York Times has a series of blog posts called How to Make a Crossword Puzzle that goes over the whole process of creating a puzzle.
-
For a more in-depth explanation of pretty much everything about construction, check out Patrick Berry’s Crossword Constructor’s Handbook, which costs $10 on his website.
-
Will Eisenberg made an Ingrid demo video a few years ago that’s very helpful as an overview of the app.
§How do I put black squares in the grid?
Select a square in the grid with the mouse or keyboard and hit the period key on your keyboard.
By default, black squares will follow standard rotational symmetry rules; you can use the Symmetry dropdown in the Layout panel to change this.
§How does the Filter tool in the Fill panel and Word Browser work?
The Filter tool in Ingrid uses regular expressions, which are a standardized system for searching through text. At their simplest, they filter the list of words to only ones containing the exact text you enter in the box; you can also use more advanced syntax to do many other kinds of searches.
Two things to note that are specific to Ingrid:
-
For convenience, Ingrid lets you use
@to represent any vowel (including Y) and#to represent any consonant (including Y). -
Words listed in Ingrid are displayed exactly as they appear in the word list they came from, which may be different from how they will appear in the grid. For example, if a word list contains the line
ran away;51, the Fill panel will show the word asran away, but it will appear in the grid asRANAWAY.When you use the Filter tool, your filter is matched case-insensitively against words as they will appear in the grid, not as they appear in the list. So the filter
an awwill not matchran away, butnawwill.
§What do “Reject”, “Approve”, and “Choose” mean?
There are three basic commands you can use in the Fill panel:
-
“Reject” means that you definitely don’t want to use the selected words in the current slot. They won’t be available as options for this slot in future fill attempts, and they’ll be moved from the “Undecided” section of the list to a “Rejected” section that’s collapsed by default.
-
“Choose” means that you definitely do want to use a single selected word in the current slot. This fills its letters directly into the grid.
-
“Approve” allows you to specify multiple words at once that are the only acceptable choices for the slot, which will be moved to an “Approved” section at the top of the list. As long as you have any approved words in a given slot, no other words can be used there.
In general, I’d encourage using Reject generously and Approve sparingly. See Why does Undo not get rid of rejected words? for more about how to use Reject.
§What does it mean when a slot in the grid has shaded edges?
This means that you’ve applied some additional constraint to the slot: approved or rejected words, a pinned filter, or an overridden required word score. You can hover your mouse over the slot in the grid to see a summary of the constraints added to it.
§What does “Longest shared sequence” mean?
Standard crossword rules prohibit duplicate entries (“dupes”), generally
including duplication between parts of entries (for example, GET OUT and GET IN appearing in the same grid).
Ingrid will never generate fill that includes the same entry more than once verbatim, but things get fuzzier when it comes to partial dupes. The Fill panel warns about options that contain four or more letters of overlap with an existing entry, but this leaves it up to the constructor to see the warning and decide what to do about it, and it can be frustrating not to notice a dupe until late in the fill process.
The “Longest shared sequence” setting prevents Ingrid from generating fill containing two entries with more than the given number of consecutive letters in common. Some constructors prefer to keep this set to a low number to minimize the odds that they’ll run into dupes, but the downside of this is that it makes it harder to fill the grid, since it prevents using many combinations of words that have short overlaps but aren’t dupes.
§What does the Recommended sort order in the Fill panel do?
The default sort order in the fill panel, Recommended, tries to balance word score, letter score, and a factor based on how many options will be available in the crossing slots for each word.
Note that this is not based on the quality of the fill in the entire grid. When Ingrid evaluates options in the Fill panel (and in the global fillability check that appears at the top right corner of the grid), it’s just looking for some fill, not necessarily the best possible fill. As a result, it would be arbitrary and potentially misleading to draw any conclusions from the quality of the fill that Ingrid finds for each option.
§What should I do if my fill attempts are timing out?
Entries in the Fill panel will appear with a question mark icon if Ingrid couldn’t either find a fill or prove that no fill is possible within the configured time limit.
There are several factors that affect the difficulty of filling a grid:
-
The layout of your grid. More open grids with fewer black squares are generally harder to fill.
-
The size of your word list, given your current “Required word score” setting. The more options you have available, the easier it is to find a fill.
-
The “Longest shared sequence” setting. Setting this to a low value like 3 makes it more difficult to find a fill.
-
The single-core performance of your computer. Having more cores will enable you to try filling more words at the same time, but it won’t make individual fill attempts faster.
If you’re finding that your grid takes too long to fill, I’d suggest first checking that your “Longest shared sequence” setting isn’t too low, and then working on your black square placement. Beyond that, you could try reducing your required word score (maybe only in specific trouble spots, using the “Override Required Word Score” option in the Fill panel) or raising the time limit.
§How can I see the unfillable words for a slot?
If you have a slot with some letters filled in, and you’re curious what words would be possible in that slot if they didn’t have to fit into your larger grid, you can use the Word Browser to find out.
Use the “Browse All Options” command in the dropdown menu in the upper-right corner of the Fill panel to open the Word Browser with the current slot's length, letter pattern, and other settings prefilled.
§Once I’m done with my puzzle, how can I share it with other people?
There are a number of sites that allow you to upload your puzzle for other people to solve. As a starting point, I’d recommend squares.io to share directly with your friends, or Crosshare if you want to post your puzzle for the general public.
§Where does Ingrid keep its data?
Ingrid stores all of your projects in a single database file, which you can (and should!) back up, and which you can move between computers if you need to. Its location depends on your operating system:
- Windows:
C:\Users\<username>\AppData\Roaming\Ingrid\data.sqlite3 - macOS:
/Users/<username>/Library/Application Support/Ingrid/data.sqlite3 - Linux:
~/.config/Ingrid/data.sqlite3
This Ingrid directory is also the location of the default Personal List,
which is in a file called Personal List.dict.
§Is Ingrid open source?
Ingrid is currently proprietary freeware, but the core fill algorithm is open source and is available on GitHub.
Of course, any puzzles or other content you produce using Ingrid belong to you, and you can use Ingrid as-is for any purpose.
§Things Ingrid Can’t Do
§Can Ingrid do _____________?
As a catch-all for common feature requests that don’t have good workarounds, here’s an incomplete list of things Ingrid currently can’t do (but may in the future):
- Automatically fill in letters that are forced by existing fill
- Display clues from a database
- Easily sync your data between computers
- Lock black squares
- Mark two arbitrary words as dupes of each other
- Mark two suspected dupes as definitely not dupes of each other
- Search for clues and fill in the Projects list
- Use a custom wordlist for a single puzzle or slot
§Can I make a puzzle with rebuses?
Ingrid doesn’t currently have built-in support for rebuses. It’s possible to work around this with wordlist manipulation if you want to construct a rebus-based puzzle in Ingrid, although you’d then need to export it to another tool that can generate puzzle files with actual rebuses.
§Can I use shaded squares in my puzzle?
It’s currently not possible to make shaded squares in Ingrid directly. However, there is a workaround:
-
Use circled squares in Ingrid to represent the squares you want shaded.
-
Export your puzzle as a JPZ file.
-
Using a text editor like Notepad, replace all instances of
background-shape="circle"in the JPZ file withbackground-color="#CCCCCC", or whatever other color you want to use.
Thanks to Joon Pahk for the tip!
§Can I print my puzzles or export them to PDF?
You can export your puzzle as a JPZ from the File menu, then use the Crossword PDF Editor tool maintained by Nam Jin Yoon and Crossword Nexus to convert it to a printable PDF. This site also has a tool for generating PDFs in the New York Times submission format.
§Is Ingrid available on the web, ChromeOS, iOS, or Android?
No, for the foreseeable future Ingrid will only be available on macOS, Windows, and Linux. If you’re looking for a construction tool you can use on the web, check out Crosserville.
§Can Ingrid help me place my black squares and theme entries, or is there a tool that can?
No, for now placing black squares and theme entries is still a manual process, and I’m not aware of any construction tool that automates it. It can be a tricky skill to learn; I’d suggest checking out Patrick Berry’s Crossword Constructor’s Handbook for useful advice about this and every other aspect of crossword construction.
You also might find it useful to try Crosserville’s grid search feature, which lets you reference a database of grids used in published puzzles.
§Can I collaboratively edit a puzzle with someone else?
No, the easiest way to collaborate on a grid with Ingrid is to have one person share their screen on a video call. The only construction tool I’m aware of that currently offers live collaboration is Crossworthy.
That said, if you’re done with your grid and want to collaborate on clues, you can use the “Copy Special | Clues as Spreadsheet” and “Paste Special | Clues from Spreadsheet” commands in the Edit menu to bring your entries and clues into Google Sheets, edit them there, and then bring them back into your Ingrid project.
§Can I customize keyboard shortcuts?
Ingrid doesn’t have built-in functionality for customizing keyboard shortcuts, but on macOS you can do this at the system level since almost every Ingrid command is also a menu item.
§Philosophical Questions
§Why does Undo not get rid of rejected words?
An unfilled crossword grid has an immense number of possible fills, most of which are awful. Filling a grid means finding one option in that pile that you’re OK with, and ideally one that you’re excited about.
When you choose to put a word into the grid, you’re making a bet that some fill exists that contains that word in that slot and that you’ll be happy with overall. Each time you add another word, you’re doubling down on that bet by further limiting the set of available fills. More often than not, you’ll eventually discover that you bet wrong somewhere along the way, and that the only options left are unacceptable to you.
You can certainly deal with this by just hitting Undo and making different choices, but in practice this means that you’ll end up seeing the same deal-breakers over and over again, since there can be many different paths that lead to the same bad fill.
The purpose of the Reject command is to make this process more efficient by permanently removing bad options from the pile as you discover them. This goes hand in hand with the process of choosing or approving words:
-
Near the beginning of the process, you can review your most constrained slots (those with the fewest options) and reject anything that you know you don’t want. This lets you avoid seeing options elsewhere that would inevitably lead to those words.
-
When you do eventually “bottom out” by finding that some slot only has options that you don't want to use, you can reject those options. This will make the grid unfillable, since it was only possible to fill by using the words you’ve now rejected; you can then hit Undo until it becomes fillable again, since Undo doesn’t remove rejected words.
If you do want to clear all of the words you’ve rejected and restart the process of narrowing down your options, use the “Clear All Rejected Words” command in the Edit menu.
