嗯这个图标大小确实是个问题。mono字体为了适应宽度这个字体的图标会比较小,这也是保证宽度一致的一个副作用吧
Windows图标乱码的话请下载最新的nerd font并确保安装到位
嗯这个图标大小确实是个问题。mono字体为了适应宽度这个字体的图标会比较小,这也是保证宽度一致的一个副作用吧
Windows图标乱码的话请下载最新的nerd font并确保安装到位
emacs-nerd-icons-for-mode函数的参数后可以加:face然后用您想用的face
但是这样原有的face就没有了,我希望保留原有的foreground颜色,设置background颜色
之前使用all-the-icons时也遇到这个问题,当时是写了个函数解决的。
vim-devicons 图标也很小吗?mono如果这样的话就只能在terminal下使用了,GUI 下实用性大大下降。
Windows下我是通过scoop安装的FiraCode Nerd Mono。Windows Terminal下表现良好,Emacs GUI 就变成了乱码,很奇怪。
哦哦确实,之后可以加个inherit default什么的,感谢建议
不用mono的话是正常的大小,主要还是要解决为什么会有图标显示不全的问题这样就不用非要用mono了
当然用scale-factor也行,不过得把间距变大的问题解决了,感觉这个目前比较可行
这个mono大小问题算是字体本身的设置,vim-devicon用mono也会小
scoop的字体可能路径不一样,我一般Windows是把ttf什么的下载下来右键install
所以还是解决这个问题就行了,对吧?
我看这个问题存在很久了: Nerd Fonts Cut Off Characters, No Spacing, or overlapping · Issue #991 · polybar/polybar (github.com)
但似乎vim-devicons图标还是挺正常的
补充下今天Windows下的测试效果(左边是all-the-icons-dired
,右边是emacs-nerd-icons-dired
):
图标如果用mono也会很小,用非mono的基本显示正常,但是某些图标还是偏小,比如 elisp,git。猜测是为了对齐? 感觉Windows上基本可用,但是macOS下还是存在截断的情况。
配置如下:
(use-package emacs-nerd-icons
:ensure nil
:demand
:config (setq emacs-nerd-icons-font-family "FiraCode NF"))
(use-package emacs-nerd-icons-dired
:ensure nil
:commands emacs-nerd-icons-dired-mode
:hook (dired-mode . emacs-nerd-icons-dired-mode))
补充wsl下发现的一个问题:如果显示nerd icons,刷新有问题,显示会差一行,移动光标会把当前行刷新成最新的。GUI下没有这个问题,不知道是Windows Terminal问题还是icons包或者是Emacs本身有问题。我录了一个gif。
请问这个Windows的是emacs29吗?请问是您自己编译的还是release binary?
我用的是这个:GNU Emacs 30.0.50 (build 1, x86_64-w64-mingw32)。
关于这个刷新问题我偶尔会遇到,但是reproduce的方式不同,我是orgfile的tag会遇到这种情况,平常是正常的
edit: 我重装了一下这个包,现在也遇到这个同样的问题了
目前试下来只有linux下的terminal没有这个问题,不知道macos的terminal有没有这个问题,如果只有windows有这个问题那得给Windows下做一些判定
MacOS iterm测试没有刷新问题,会不会跟Windows Terminal有关?
是的,windows的utf-8支持很迷,而且我用的是\u的unicode sequence,Windows原生的terminal现在好像用[char]0x,这个可能要调整一下,但是wsl可能就又不太一样了
请问可以在您渲染图标有问题的那个emacs里输入C-h v cairo-version-string
来看一下是否有用cairo吗?
mark一下,回头去试一下,赞:+1:
没有cairo-version-string
变量
这就说得通了,你试试编译的时候加上cairo应该就能正常渲染了
我用的 d12frosted/homebrew-emacs-plus: Emacs Plus formulae for the Homebrew package manager (github.com),并没有这个option
all-the-icons都能正常渲染,nerd 必须要cairo才行?
我网上查到一些关于cairo对Unicode图标支持更好的帖子,所以认为cairo可能对这个情况有所帮助
当然我在Linux下编译一个不带cairo的emacs也没有出现图标显示的问题所以cairo不是必备条件
看来还得换个方向 我再研究研究all-the-icons