Xcode 12.3
How to avoid the "Non-breaking space used instead of regular expression" warning in Xcode
Why this warning?
Non-breaking space is produced by pressing ⌥ optionspace. Which happens to me all the time when typing such a code line items.map { ... }
because I tend to hold prematurely or release too late the ⌥ option key needed to print the {
or }
symbols (azerty).
map⌥ option (holding)space(
Chosen solution
Use a snippet!
Create an empty closure snippet and use ⌘ cmd⇧ shiftL to insert the snippet. It even ended up speeding up my workflow 🎉
Usage
How to create this snippet
- Type your snippet in Xcode, here
items.map { <#code#> }
- Select the part of the snippet, here space{ <#code#> }
- Xcode Menu > Editor > Create Code Snippet
- Enter a title
- Click Done
An azerty keyboard thing
As I said, I guess this ennoying thing should mostly concern AZERTY keyboards because on these keyboards, you have to hold ⌥ option to print { or }.
First try with editing IDETextKeyBindingSet.plist
file
I did try this stackoverflow answer from klanomath 🙏🏻.
It's kind of work. Indeed I no longer have the warning but for the reason that ⌥ optionspace no longer works at all: no more space neither normal nor non-breaking.
Which was very bordering on my typing speed.
Plus I would probably have to redo the modification with every new Xcode version.
Also tried with no luck
- iTerm2 stackoverflow answer but it's only working inside the iTerm2 editor
- Modifying
~/Library/KeyBindings/DefaultKeyBinding.dict
stackoverflow answer but I don't want to touch that file indeed...
Now I use the snippet.
Please reach me if you find a better solution 👋
Thank you
Hope it helps. Please drop a ❤️ on my Twitter post to show your support 🙏.