Mardown에 사용되는 그림 문자 코드의 일람표를 만들어 보려고 합니다.
Go제 SSG의Hugo는 v0이다.82.0노트 를 발행 하다으로 업데이트가 돼서 봤는데 마크다운이 사용하는 그림 문자 코드의 권한kyokomi/emoji은 포장을 사용했어요.
Markdown에서 사용하는 그림 문자 코드를 GiitHub과 Slack 등에 입력하면
:smile:
😄 로 변환합니다.응?kyokomi/emoji 포장이 있으면 그림문자 코드 일람표를 만들 수 있지 않나요?그래서 코드를 썼어요.이런 느낌.
// +build run
package main
import (
"fmt"
"sort"
"strings"
"github.com/kyokomi/emoji/v2"
)
type EmojiCode struct {
Code, Emoji string
Aliases []string
}
func NewEmoji(e string, cs []string) (EmojiCode, bool) {
if len(cs) > 0 {
return EmojiCode{Code: emoji.NormalizeShortCode(cs[0]), Emoji: e, Aliases: cs}, true
}
return EmojiCode{}, false
}
func EmojiListAll() []EmojiCode {
emojiList := []EmojiCode{}
for e, clist := range emoji.RevCodeMap() {
if ec, ok := NewEmoji(e, clist); ok {
emojiList = append(emojiList, ec)
}
}
sort.Slice(emojiList, func(i, j int) bool {
return strings.Compare(emojiList[i].Code, emojiList[j].Code) < 0
})
return emojiList
}
func main() {
fmt.Println("| Short Code | Graph | Aliases |")
fmt.Println("| ---------- | :---: | ------- |")
for _, ec := range EmojiListAll() {
var bldr strings.Builder
for _, c := range ec.Aliases {
if ec.Code != c {
bldr.WriteString(fmt.Sprintf(" `%s`", c))
}
}
fmt.Printf("| `%s` | %s |%s |\n", ec.Code, ec.Emoji, bldr.String())
}
}
실제로 움직여 봤더니 3천 줄 이상의 거대한 테이블로 변했다(웃음) 여기에 붙일 수 없어 지스트에 붙인 것이다.Zenn의markedown도 그림 문자 코드에 대응할 수 없어요.
참고 자료
Reference
이 문제에 관하여(Mardown에 사용되는 그림 문자 코드의 일람표를 만들어 보려고 합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/spiegel/articles/20210322-emoji-shortcode-for-markdown텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)