Question

In my emoji picker when I enter freedom I see some french fries.

macOS character/emoji picker showing search for ‘freedom’ returning french fries emoji

Why is that?

Practical example:

So if I want to write something like the following:

People of the world appreciate what you're given, go out there and enjoy your freedom

So emojifying the above quote is somewhat dangerous:

👫👬 of the 🌎, appreciate what you're given, go out there and enjoy your 🍟.

Was it helpful?

Solution

The 🍟 emoji is offered as an option for any search matching the string freedom fries, which

was a political euphemism for French fries in the United States. The term was born in 2003 when the then Republican Chairman of the Committee on House Administration, Bob Ney, renamed the menu item in three Congressional cafeterias in response to France's opposition to the proposed invasion of Iraq.

In the character picker, any prefix substring match on a word relating to that emoji will present the emoji for selection. Therefore ‘free’ or ‘freedom’ will match ‘freedom fries’.

Where does the OS find these strings?

CoreEmoji.framework contains a list of emojis and relevant search strings, per locale, in

/System/Library/PrivateFrameworks/CoreEmoji.framework/Versions/A/Resources/en.lproj/

replacing en with the locale. For the strings used by the character picker when searching, look in CharacterPicker.strings. For example:

/System/L*/Priv*/CoreE*/V*/A/R*/en.*/C*

Open the .strings file as a .plist in Xcode to prettyprint it as shown above, or use plutil:

$ plutil -extract "🍟" xml1 -o - /System/L*/Priv*/CoreE*/V*/A/R*/en.*/C*
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<string>fries | freedom fries | french fries | fast food | junk food | food | object</string>
</plist>
$ plutil -convert json -o - /System/L*/Priv*/CoreE*/V*/A/R*/en.*/C* | jq -r ".[\"🍟\"]"
fries | freedom fries | french fries | fast food | junk food | food | object

I don't want QuickType to suggest 🍟 as an autocomplete to ‘freedom’!

It won't. QuickType autocomplete emoji suggestions, or Messages tap-to-replace words with emojis when the emoji keyboard is shown, is defined by another file, FindReplace.strings.

Emojis are suggested as word replacements when an entire word in the original text matches an entire word in a string relating to the emoji. The word ‘freedom’ will not be replaced by the emoji since the ‘freedom fries’ phrase only exists in CharacterPicker.strings, not FindReplace.strings.

$ plutil -convert json -o - /System/L*/Priv*/CoreE*/V*/A/R*/en.*/F* | jq -r ".[\"🍟\"]"
fries | french fries | french fry

‘fries’ showing fries emoji ‘freedom’ not showing fries emoji

OTHER TIPS

It doesn't (any more)

As of MacOS 10.14.4 (released Mar 25, 2019), "freedom fries" is no longer a search keyword for the 🍟 french fries emoji.

I checked before and after upgrading from MacOS 10.14.1 (released Oct 30, 2018) to confirm that this was a recent change.


The removal was plausibly a result of this Stack Exchange thread (posted Nov 2, 2018). I can't find anybody else on the internet drawing attention to this keyword until this question was posted. This question got over nine thousand views and was a Stack Exchange "Hot Network Question", and then I emailed Tim Cook for good measure.

“Freedom Fries” used in Apple’s emoji picker

Date: Fri, 2 Nov 2018 12:39:08 -0400
To: Tim Cook <tcook@apple.com>
From: Jeremy Banks

Hello Tim,

I just wanted to draw your attention to the fact that the phrase “freedom fries”, a potentially offensive and dated political meme, is one of the search terms used by Apple’s emoji picker. (It’s listed in the CharacterPicker.plist file.)

Please consider removing this keyword.

Thank you.

- An Apple User

Licensed under: CC-BY-SA with attribution
Not affiliated with apple.stackexchange
scroll top