Le 🍟 emoji est proposé en option pour toute recherche correspondant à la chaîne ' Freedom frites ' , qui
était un euphémisme politique pour les frites aux États-Unis. Le terme est né en 2003 lorsque le président républicain de la Commission de l’administration de la Chambre, Bob Ney, a renommé le menu dans trois cafétérias du Congrès en réponse à l’opposition de la France au projet d’invasion de l’Irak.
Dans le sélecteur de caractères, toute correspondance de préfixe sur un mot relatif à cet emoji présentera l'émoji pour la sélection. Par conséquent, "libre" ou "liberté" correspondra à "frites de liberté".
Où le système d'exploitation trouve-t-il ces chaînes?
CoreEmoji.framework contient une liste d’emojis et des chaînes de recherche pertinentes, par région, dans
/System/Library/PrivateFrameworks/CoreEmoji.framework/Versions/A/Resources/en.lproj/
en remplaçant en
par la locale. Pour rechercher les chaînes utilisées par le sélecteur de caractères lors de la recherche, consultez CharacterPicker.strings . Par exemple:
/System/L*/Priv*/CoreE*/V*/A/R*/en.*/C*
Ouvrez le fichier .strings en tant que .plist dans Xcode pour l’imprimer comme ci-dessus, ou utilisez 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
Je ne veux pas que QuickType suggère comme une saisie semi-automatique pour la «liberté»!
Ça ne va pas. Suggestions QuickType autocomplete emoji, ou Messages tap-pour-remplacer les mots par emojis lorsque le clavier emoji est affiché, est défini par un autre fichier, FindReplace.strings .
Les émoji sont suggérés comme substituts de mots lorsqu'un mot entier du texte original correspond à un mot entier d'une chaîne relative à l'émoji. Le mot "liberté" ne sera pas remplacé par le terme emoji car l'expression "frites de liberté" n'existe que dans CharacterPicker.strings, et non pas FindReplace.strings.
$ plutil -convert json -o - /System/L*/Priv*/CoreE*/V*/A/R*/en.*/F* | jq -r ".[\"🍟\"]"
fries | french fries | french fry