Copy link to clipboard
Copied
Hi, I've been researching this issue: when InDesign documents are set to the 'English UK' dictionary, it does not consider "z" words (ex. "compromize", "capitalization") misspelled because both "z" and "s" versions of the words are acceptable. However, since most English UK speakers/businesses prefer to use the "s" versions of these words, is there a way in InDesign to get around this issue and flag the "z" versions as incorrectly spelled?
I know you can manually add/remove words in dictionaries, but there's too many different "z" words to add manually one by one. Maybe there's a GREP solution, but I've only found GREP solutions that call out 1 or more words that have a very similar type of spelling and this issue covers a broad spectrum of many different types of "z" spelled words. Is there maybe a different/custom English UK dictionary somewhere out there that can be loaded into InDesign to address this issue? Or another solution?
Any suggestions would be greatly appreciated, thanks in advance.
Actually, that should be
z(?=(e[ds]?|ations?)\b)
Sorry.
Copy link to clipboard
Copied
Hi @spikel_work,
I tried reproducing the issue on my end, and it seems to be working as expected i.e., if I type "compromize," InDesign flags it as incorrect and suggests "compromise" as the correct spelling. Could you share which version of InDesign you're using and the details of your operating system?
It would also be helpful to test this after resetting your preferences to see if that makes a difference. Ref: Reset InDesign Preferences. Just make sure to back up your preferences before resetting.
Additionally, could you share a screenshot of your Dictionary and Spelling preferences settings? Looking forward to your update!
^
Abhishek
Copy link to clipboard
Copied
Sorry, I made a spelling error. "compromize" wasn't a good example since that is incorrect in both English US and UK. "Realize" vs "Realise" is a better example, along with "capitalization" vs "capitalisation".
I'm using InDesign 2025 (20.2 x64)
Copy link to clipboard
Copied
And Windows 11
Copy link to clipboard
Copied
Hi @spikel_work,
Thanks for the clarification there. While you try the suggestion from Peter, I’ve reproduced the behavior on my end and observed that in the English UK dictionary setting, “z” spellings (like realize or capitalization) are not flagged, while the preferred “s” spellings (realise, capitalisation) are incorrectly marked as misspelled.
I have escalated this to the product team for confirmation on the working of the dictionary.
Thanks for bringing this up!
^
Abhishek
Copy link to clipboard
Copied
Hi @spikel_work,
I checked with the product team, and UK English is indeed more flexible. It accepts both “s” and “z” spellings, unlike US English which strictly prefers “z.” So, there's no need to enforce “s” spellings in UK English.
Hope the insights from the experts were helpful! Feel free to reach out if you have any other questions.
^
Abhishek
Copy link to clipboard
Copied
z-spelling is acceptable in UK English,that's why it's accepted by InDesign.
You can look for z-spellings using this grep expression:
z(?=(e[ds]|ations?)\b)
which looks for words that end in ze, zes, zed, zation, or zations and highlights only the z.
Copy link to clipboard
Copied
Thanks Peter! This GREP expression might be a great solution. I'm a GREP novice, so I couldn't think of something like this, but I'm excited to try it. I'll report back here once I test it out. Appreciate the help!
Copy link to clipboard
Copied
Actually, that should be
z(?=(e[ds]?|ations?)\b)
Sorry.
Copy link to clipboard
Copied
I tested this GREP expression and it works great — to highlight the "z" spellings. I'm using it in the Find/Change GREP tab and simply putting "s" in the 'Change to:' field. Thanks again for the help! Really appreciate it.
I wonder if there's a way to have this function automatically, maybe via a GREP style nested inside a Paragraph Style..?
Copy link to clipboard
Copied
No, you can't replace text with grep styles.
And remember that some words should be ignored, such as maize. If you do a global change you should change these back afterwards
Copy link to clipboard
Copied
@Peter Kahrel is a master of GREP and scripts - always in awe.
What I'd do - is create a special Character Style and colour that stands out.
And in the GREP style add the letter z using this to make it case insensitive
(?iz) to the find and apply the character style colour - once you're finished delete the character style trick from the GREP style.
Then trap legitimate words not being changed - as Peter points out Maize and Bronze
However, it's still not a catch all.
But with a Character Style triggering the z in the text in the GREP style you can change your character style font size to say 36pt - so all z's in the text is huge and you can monitor them individually.
I'd still do this search with a Find/Change Next rather than a global change - you don't want to mess up legitimate words.
(?<!\b[Mm]ai)(?<!\b[Pp]ri)(?<!\b[Ss]ei)(?<!\b[Ff]ree)(?<!\b[Ss]i)(?<!\b[Bb]ron)(?<!\b[Gg]au)(?<!\b[Gg]la)(?<!\b[Hh]a)(?<!\b[Ww]hee)(?<!\b[Cc]apsi)(?<!\b[Oo]o)(?<!\b[Ss]nee)(?<!\b[Ss]quee)(?<!\b[Bb]ree)(?<!\b[Dd]o)(?<!\b[Ff]rie)z(?=(e[ds]?|ations?)\b)
The bold part is Peters - but I can't seem to find a way to ignore double ZZ words
I know it looks scary
(?<!\b[Mm]ai)
This means "do not match if preceded by 'mai' or 'Mai' at the start of the sequence (\b ensures we check the whole prefix, preventing matches inside other words if relevant, though less critical with short prefixes).
(?<!\b[Pp]ri)
Excludes prize.
(?<!\b[Ss]ei)
Excludes seize.
(?<!\b[Ff]ree)
Excludes freeze.
(?<!\b[Ss]I)
Excludes size
(?<!\b[Bb]ron)
Excludes bronze
(?<!\b[Gg]au)
Excludes gauze
(?<!\b[Gg]la)
Excludes glaze
(?<!\b[Hh]a)
Excludes haze
(?<!\b[Ww]hee)
Excludes wheeze
(?<!\b[Cc]apsi)
Excludes capsize.
THIS IS NOT PERFECTION JUST AN IDEA.
Copy link to clipboard
Copied
Nice one, Eugene. I agree that a manual find-and-replace is much safer, and your exception list looks good. It would look less scary if you make it case-insensitive with the (?i) switch, so you can use
(?i)(?<!\bmai)(?<!\bpri) . . .
Another thing is that I now remember that ize words should be changed only if you have a consonant+vowel before the z, so my original would be
[bcdfghjklmnpqrstvwxz][aeiou]\Kz(?=(e[ds]?|ations?)\b)
which ignores snooze, maize, etc. (You could probably remove some of the consonants in that list, x for instance.)
Probably some more generalizations are possible. Maybe it's the case that words like raze, razed should be ignored, i.e. you need three or more letters before the z.
And of course there are words that should be changed in some cases, e.g. the noun prize should be changed, but the verb should not.
As to applying a character style to make things visible, that's a nice idea, but I suggest using my GREP editor. It highlights all matches in a text (and can make a long GREP expression more readable). When you're satisfied that everything the expression catches can be changed, you simply change everything. When you see anything amiss, add it to the exceptions.
The GREP editor is here:
https://creativepro.com/files/kahrel/indesign/grep_editor.html
Copy link to clipboard
Copied
Copy link to clipboard
Copied
Thanks again! To keep it simple, I think I'll stick with Peter's original Find/Change Grep code:
z(?=(e[ds]?|ations?)\b)
This way, I can preview each word it finds and decide to change each from "z" to "s" spelling or ignore/skip.