支持 GUI 和 TUI 的图标扩展:icons-in-terminal.el

elisp

#1

all-the-icons目前还是 emacs 里最好的 icon 包,可惜不支持 terminal。之前看到@twlz0ne 老铁开发了nerd-fonts.el,提议开发一个nerd-icons.el ,原帖在此:参照 all-the-icons.el 写一个扩展:nerd-icons.el 。但是发现图标缺失太多,且大小格式不统一,还需要大量的时间和精力去调整,否则无法复用之前的代码。

在讨论过程中,我参考 all-the-iconsicons-in-terminal 也简单写了一个包icons-in-terminal.el,能同时支持 GUI 和 TUI,而且最大程度兼容了all-the-icons接口,所有调用all-the-icons-xxx的地方直接改成icons-in-terminal-xxx即可。和all-the-icons 一样,除了主字体之外还需要安装图标字体,不过对系统来讲经过映射只有一个icons-in-terminal.ttf,这样在终端里可以设置用该字体显示 Unicode 字符。

icons-in-terminal.elnerd-icons.el 原理类似,优势是对图标支持和all-the-icons接近,几乎不需要调整 (目前发现的只有 material 字体位置有所不同),显示效果很统一;唯一的缺点就是需要额外多安装一个字体icons-in-terminal.ttf 以支持图标显示。

目前效果如下:


#2

请问用ssh连linux,再开个emacs,也能用吗?


#3

远端 Linux 支持字体就行


#4

mac怎么操作?我看doom-modeline不行啊,要修改代码?


#5

目前icons-in-terminal不在 melpa 上,doom-modeline 主分支还不支持icons-in-terminal,我只在本地开发分支测试了。