@cobodo 今実験してるEntityの仕様では、Model#entitiesみたいなやつがModelの配列を返して、通常のテキストはTextEntityというプレーンテキストを持ったModelで表現し、やりたいことに合わせてHyperLinkEntityとかEmojiEntityとかAttachmentEntityを順番に格納していくと、ビュー側のEntityの対応状況によって各Entityが絵文字になったりショートコードになったりというのを考えてます。
Mastodonの状況とはかなり相性が良い仕様なんだけど、細かい欠点もいろいろあってまだまだ作っては壊しを繰り返すことになりそうです