大家好,我是渔夫子。本号新推出「Go工具箱」系列,意在给大家分享使用go语言编写的、实用的、好玩的工具。同时了解其底层的实现原理,以便更深入地了解Go语言。
大家在使用微信或钉钉聊天时,一定使用过表情符号。今天就给大家介绍一个能够在终端上显示emoji表情符号的包:emoji。下面是emoji的基本情况:
emoji小档案 | |||
---|---|---|---|
star | 711 | used by | 575 |
contributors | 10 | 分类 | 娱乐消遣 |
功能简介 | 一款在终端上显示emoji表情符号的库 | ||
相关知识 | unicode编码、rune字符 |
实现原理:emoji表情符号实际上就是在unicode编码表中有定义的一个编码。通过将符号的文字表示和对应的unicode编码进行一一对应,在使用时对文字符号进行替换成rune字符输出即可。
基本使用:使用也非常简单,如下:
代码语言:javascript复制package main
import (
"fmt"
"github.com/kyokomi/emoji/v2"
)
func main() {
fmt.Println("Hello World Emoji!")
emoji.Println(":beer: Beer!!!")
pizzaMessage := emoji.Sprint("I like a :pizza: and :sushi:!!")
fmt.Println(pizzaMessage)
}
输出效果:
程序中的符号短名称可以参考源文件emoji_codemap.go中的映射表。该映射表中的表情符号来源于以下4个数据源:
- emoji-v5:https://raw.githubusercontent.com/CodeFreezr/emojo/master/db/v5/emoji-v5.json
- unicode编码:http://www.unicode.org/emoji/charts/emoji-list.html
- gemoji符号:https://raw.githubusercontent.com/github/gemoji/master/db/emoji.json
- iamcal:https://github.com/iamcal/emoji-data/raw/master/emoji.json
同时,如果想了解更多的emoji符号和知识,可以通过 https://emojixd.com/ 网站进行了解,该网站是一本线上的emoji表情百科全书。
更多项目详情请查看如下链接。
开源项目地址:https://github.com/kyokomi/emoji
开源项目作者:kyokomi
---特别推荐---
特别推荐:一个专注go项目实战、项目中踩坑经验及避坑指南、各种好玩的go工具的公众号,「Go学堂」,专注实用性,非常值得大家关注。点击下方公众号卡片,直接关注。关注送《100个go常见的错误》pdf文档。