FoxTrot Search Forum
FoxTrot Search for macOS Forum

Home » Public Forums » FoxTrot Search User Forum » Please clarify what's the meaning of the "Ignore" settings
Please clarify what's the meaning of the "Ignore" settings [message #1411] Sat, 23 April 2022 13:51 Go to next message
Atlas
Messages: 66
Registered: August 2009
Member
When we use "Then Apply Advanced Filter", there are a bunch of settings like "Ignore Blanks", "Ignore Composition", etc. Foxtrot doesn't have a manual, and I've looked up under the Help setting as well as the Help page on the website but cannot get any details on what these settings mean. Please clarify what are these settings:

(1) Ignore Accents
(2) Ignore Punctuation
(3) Ignore Blanks <--- Especially this
(4) Ignore Composition

In particular, I thought that using "Ignore Blanks" would mean that a search string like "machine learning" would be treated as a single string rather than two separate words, because the space between the two words would be ignored. But "Ignore Blanks" seems to mean the opposite, because I have to use it in order to include blank spaces in the search string. What's actually a "blank"? It seems like I have to turn on "Ignore Blanks" even when my search string doesn't contain any space.

Thank you.
Re: Please clarify what's the meaning of the "Ignore" settings [message #1412 is a reply to message #1411] Sat, 23 April 2022 16:31 Go to previous messageGo to next message
FoxTrot Engineering
Messages: 325
Registered: April 2020
Senior Member
I have just updated the FAQ:

- Ignore Case: [foo] = [Foo] = [FOO]
- Ignore Accents: [resumé] = [resume]
- Ignore Punctuation: [foo, bar] = [foo; bar] = [foo?!... bar] = [foo bar]
- Ignore Blanks: spaces, tabs, returns and other Unicode spacing characters are ignored; [foo bar] = [foo    bar] = [foobar]
- Ignore Symbols: characters classified in Unicode as: Spacing_Mark (Mc), Enclosing_Mark (Me), Math_Symbol (Sm), Currency_Symbol (Sc), Modifier_Symbol (Sk) or Other_Symbol (So) are all ignored; [$] = [€] = [<<<] = []
- Ignore Composition: in Unicode, some characters can be encoded using either a single codepoint, or a sequence of codepoints. This is especially the case for accented lowercase Roman vowels (those part of ISO-8859-1), and Korean letters. When enabled, both forms are considered equal.


Jérôme - FoxTrot Engineering
Re: Please clarify what's the meaning of the "Ignore" settings [message #1413 is a reply to message #1412] Sat, 23 April 2022 16:46 Go to previous messageGo to next message
Atlas
Messages: 66
Registered: August 2009
Member
Thank you for this info! Now it's more clear how to use these settings.

But from your description of "Ignore Blanks", now I think there's a bug. The situation is I want to ignore all files whose parent folder name contain "9000" or "8000". So I used "Advanced Filter" -> "Parent Folder Name" -> "Does not contain any of the string" -> "Multiple Strings" -> The search string I used is [9000 — 8000]. In this situation, if I don't use the "Ignore Blanks" option, then folders with "9000" or "8000" will show up. Is that how it's supposed to work?? It seems like if I turn on "Multiple Strings" and use em-dash to do OR's, then I also have to use "Ignore Blanks" or else the query doesn't work
Re: Please clarify what's the meaning of the "Ignore" settings [message #1414 is a reply to message #1413] Sat, 23 April 2022 16:55 Go to previous messageGo to next message
FoxTrot Engineering
Messages: 325
Registered: April 2020
Senior Member
There should be no space character around the — (option-dash) character to specify multiple strings; so if your search string is actually [9000 — 8000], then the behavior you observe seems correct.

Jérôme - FoxTrot Engineering
Re: Please clarify what's the meaning of the "Ignore" settings [message #1415 is a reply to message #1414] Sat, 23 April 2022 17:42 Go to previous messageGo to next message
Atlas
Messages: 66
Registered: August 2009
Member
Ok, so it looks like removing spaces around the (— ) character works, but this seems rather odd compared to other syntaxes. I'm pretty sure others are confused by this as well, because other search operators like "|" and "&" are usually separated by space. I suggest we make the em-dash work similar to "|", so that people can put space around them. Or if it's too much work to change the behavior, we should update the Help page so that it's clear how people should use the em-dash when enabling "Multiple Strings". It definitely caused me confusion. Thanks for helping.
Re: Please clarify what's the meaning of the "Ignore" settings [message #1419 is a reply to message #1415] Mon, 25 April 2022 09:21 Go to previous messageGo to next message
FoxTrot Engineering
Messages: 325
Registered: April 2020
Senior Member
In fact, in basic queries, spaces are ignored (or rather, they are just considered as word separators), so [foo | bar] is the same as [foo|bar]. When using [includes the exact string] (or [then apply advanced filters]), spaces matter (unless you explicitly ignore them in the options popup menu).

If you don't like the choice of em-dash as the separator character (e.g. if you actually want to search for an em-dash character, or if em-dash is not accessible using your keyboard layout), there is a Terminal.app preference to change it:
defaults write com.ctmdev.FoxTrotShared StringSeparator "SeparatorCharacter"
I have not tested, but I think you can set a string that includes some spaces:
defaults write com.ctmdev.FoxTrotShared StringSeparator " — "


Jérôme - FoxTrot Engineering
Re: Please clarify what's the meaning of the "Ignore" settings [message #1420 is a reply to message #1419] Mon, 25 April 2022 12:59 Go to previous message
Atlas
Messages: 66
Registered: August 2009
Member
Thanks for clarifying that spaces matter when using "advanced filter" and "includes exact string".
Previous Topic: Is there a limit to how long regex expression can be?
Next Topic: [ANN] FoxTrot Search 7.5b1 available for public testing
Goto Forum:
  


Current Time: Sun Aug 07 23:30:33 CEST 2022