Biểu tượng cảm xúc được cung cấp dưới dạng tùy chọn cho mọi tìm kiếm khớp với chuỗi ' khoai tây chiên tự do ' , mà
là một uyển ngữ chính trị cho khoai tây chiên ở Hoa Kỳ. Thuật ngữ này ra đời vào năm 2003 khi Chủ tịch Ủy ban Quản lý Nhà của đảng Cộng hòa, Bob Ney, đổi tên món ăn trong ba quán ăn tự phục vụ của Quốc hội để đáp lại sự phản đối của Pháp đối với cuộc xâm lược Iraq.
Trong bộ chọn ký tự, bất kỳ chuỗi con tiền tố nào khớp với một từ liên quan đến biểu tượng cảm xúc đó sẽ đưa ra biểu tượng cảm xúc để lựa chọn. Do đó, 'miễn phí' hoặc 'tự do' sẽ phù hợp với 'khoai tây chiên tự do'.
Hệ điều hành tìm những chuỗi này ở đâu?
CoreEmoji.framework chứa danh sách biểu tượng cảm xúc và chuỗi tìm kiếm có liên quan, trên mỗi miền, trong
/System/Library/PrivateFrameworks/CoreEmoji.framework/Versions/A/Resources/en.lproj/
thay thế en
bằng miền địa phương. Đối với các chuỗi được sử dụng bởi bộ chọn ký tự khi tìm kiếm, hãy tìm trong CharacterPicker.strings . Ví dụ:
/System/L*/Priv*/CoreE*/V*/A/R*/en.*/C*
Mở tệp .strings dưới dạng .plist trong Xcode để in nó như hiển thị ở trên hoặc sử dụng 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
Tôi không muốn QuickType đề xuất dưới dạng tự động hoàn thành 'tự do'!
Nó sẽ không. Đề xuất biểu tượng cảm xúc tự động hoàn thành QuickType hoặc Tin nhắn chạm để thay thế các từ bằng biểu tượng cảm xúc khi bàn phím biểu tượng cảm xúc được hiển thị, được xác định bởi một tệp khác, FindReplace.strings .
Biểu tượng cảm xúc được đề xuất dưới dạng thay thế từ khi toàn bộ từ trong văn bản gốc khớp với toàn bộ từ trong chuỗi liên quan đến biểu tượng cảm xúc. Từ 'tự do' sẽ không được thay thế bằng biểu tượng cảm xúc vì cụm từ 'khoai tây chiên tự do' chỉ tồn tại trong CharacterPicker.strings, không phải FindReplace.strings.
$ plutil -convert json -o - /System/L*/Priv*/CoreE*/V*/A/R*/en.*/F* | jq -r ".[\"🍟\"]"
fries | french fries | french fry