Since there is no built-in emoji picker in the Cool VL Viewer, you need to use the picker provided by your OS or a third party software (*). However, the result is not guaranteed, since those pickers might not output the right code point for the viewer to receive the right UTF-8 character... Note also that multi-characters emojis (e.g flags, some complex faces, etc) which are encoded over several (two or three, usually) UTF-8 characters are not supported at all (by LL's code).
It is also the normal and wanted behaviour, that some "emojis" (which are actually special UTF-8 characters), are printed using the monochrome fonts glyph (for example, the heart, the cog, the arrows, the squares, the circles, the crosses, the check marks, etc): this ensures that existing (pre-emojis) LSL scripts using such characters in their menu (
llDiialog()) or printed reports (
llSay() & Co) still render properly and as they were designed to render by the scripter...
Note that next release will have an improved algorithm for fallback fonts (see
this commit I proposed for LL's code base and that got adopted), which will solve some "yellow face" (actual/genuine) emojis currently being printed with monochrome fallback font glyphs in the Cool VL Viewer.
(*) Under Linux, I tested it successfully with
jome and
xclip (this won't work properly using
xdotool like described in jome's documentation), with this wrapper script, launched via a custom keyboard shortcut defined in my desktop environment:
Once the selection done in jome, I just have to press the mouse middle button to insert the emoji at the mouse cursor position...
Here is what jome looks like: