January 27th, 2021

RichEdit Emoticon Shortcuts

Murray Sargent
Principal Software Engineer

Seems many email messages and IM’s include emoji smiley faces like 😊. You just type 🙂 and you get 😉 whether you want it or not! About a year ago, the Microsoft 365 RichEdit started offering such a facility. This post describes the built-in emoticon shortcut strings and the corresponding emoji characters and the APIs for enabling the conversions. For a substantially larger set of emoticons, see https://en.wikipedia.org/wiki/List_of_emoticons. That list includes both Western and Eastern emoticons. The RichEdit emoticon shortcuts currently include only Western emoticons.

The build-in emoticon shortcuts are defined in the table

Type Get Unicode
%) 😕 U+1F615
0:) 😇 U+1F607
:'( 😢 U+1F622
:') 😂 U+1F602
:'-( 😢 U+1F622
:'-) 😂 U+1F602
:( U+02639
:) ☺️ U+0263A
:+1: 👍 U+1F44D
:-( U+02639
:-) 😊 U+1F60A
:-D 😃 U+1F603
:-o 😲 U+1F632
:-p 😝 U+1F61D
:-| 😐 U+1F610
:D 😃 U+1F603
:fire: 🔥 U+1F525
:grin: 😁 U+1F601
:o 😲 U+1F632
:p 😝 U+1F61D
:smile: 😄 U+1F604
:yum: 😋 U+1F60B
:| 😐 U+1F610
;) 😉 U+1F609
;-) 😉 U+1F609
</3 💔 U+1F494
<3 U+02764
>:) 😈 U+1F608
B-) 😎 U+1F60E

 

How to enable emoticon shortcuts

The emoticon shortcut facility is incorporated into the RichEdit autocorrect facility. To enable the autocorrect facility, send the message EM_SETAUTOCORRECTPROC with wparam = an AutoCorrectProc callback pointer. If you don’t want to implement an autocorrect callback, set wparam = 1. This activates the built-in math autocorrect facility in math zones. It also activates emoticon shortcuts if they’re enabled. To enable the emoticon shortcuts, get the current language-option flags by sending EM_GETLANGOPTIONS, OR in IMF_EMOTICONSHORTCUTS (0x8000), and send EM_SETLANGOPTIONS with lparam equal to the result. The emoticon-shortcut option is disabled by default. Have fun 😎

 

 

Author

Murray Sargent
Principal Software Engineer

Yale BS, MS, PhD in theoretical physics. Worked 22 years in laser theory & applications first at Bell Labs and then Professor of Optical Sciences, University of Arizona. Worked on technical word processing, writing the first math display program (1969) and the technical word processor PS (1980s). Developed the SST debugger we used to get Windows 2.0 running in protected mode thereby eliminating the 640KB DOS barrier (1988). Have more than 100 refereed publications, 3 laser-physics books, 4 ...

More about author

0 comments

Discussion are closed.