How does EF handle dashes?

I’m trying to find all records that contain the compound word “single-arm.”
When I use an anywhere search, I get records that have both “single” and “arm,” instead of records with just “single-arm.”
This happens whether I look for single-arm or “single-arm” and whether I match partial words or not.

Is there a way to get records with just the compound word?

A dash is a word separator like a space. If you want to find those two words in sequence, you can use a phrase search:



"single arm"

In order for this to work, the library needs to be set to use phrase indexing. This is the default, but you can also change it or rebuild the index by holding down the Command and Option keys as you open the library.

Does it work for you in a small test library or after rebuilding the index? If not, is the problem only with that particular search, or also with other search terms?

That worked.
In addition to finding “single-arm” it also found “single arm.”
So it’s not distinguishing “-“ from “ “.
In this case that helps me.

There was the warning about the additional disc space.
How serious an issue is that?

That’s correct. All non-word characters are treated equivalently as separators.

Phrase indexes can use double or more the disk space compared with word indexes. In most cases this isn’t a problem, but it’s something to be aware of if you have a large library and/or a very full drive on your Mac.