all-the-icons
目前还是 emacs 里最好的 icon 包,可惜不支持 terminal。之前看到@twlz0ne 老铁开发了nerd-fonts.el
,提议开发一个nerd-icons.el
,原帖在此:参照 all-the-icons.el 写一个扩展:nerd-icons.el 。但是发现图标缺失太多,且大小格式不统一,还需要大量的时间和精力去调整,否则无法复用之前的代码。
在讨论过程中,我参考 all-the-icons
和 icons-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.el
和 nerd-icons.el
原理类似,优势是对图标支持和all-the-icons
接近,几乎不需要调整 (目前发现的只有 material 字体位置有所不同),显示效果很统一;唯一的缺点就是需要额外多安装一个字体icons-in-terminal.ttf
以支持图标显示。
目前效果如下:
-
GUI:
-
TUI:
-
Icons: