「Go工具箱」通过这个工具包,你就能了解每天使用的表情符号是怎么来的

2023-01-31 16:27:57 浏览数 (2)

大家好,我是渔夫子。本号新推出「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文档。

0 人点赞