我使用了 2021 年 1 月 30 日更新的 Meld 3.20.2-1ubuntu1,最近升级到了 Ubuntu 20.04。直到最近,Meld 一直运行良好:虽然一开始有一个崩溃报告警告,但 Meld 会比较指示的目录并发出报告,但文件名被隐藏了(下图)。发生了什么事?谢谢你的帮助,
在执行时
mkdir /tmp/{da,db}; echo a > /tmp/da/f; echo b > /tmp/db/f; meld /tmp/{da,db}
我收到很多错误消息:
回溯(最近一次调用最后一次):文件“/usr/lib/python3/dist-packages/meld/ui/emblemcellrenderer.py”,第 95 行,在 do_render pixbuf = self._get_pixbuf(self._icon_name,self._icon_size)文件“/usr/lib/python3/dist-packages/meld/ui/emblemcellrenderer.py”,第 83 行,在 _get_pixbuf pixbuf = icon_theme.load_icon(name,size,0).copy()gi.repository.GLib.Error:gtk-icon-theme-error-quark:图标‘文件夹’不在主题 Adwaita (0) 中”多次并以“cairo.Error:Context.restore() 没有匹配的 Context.save()”结束,但报告正确,
$ gsettings list-recursively | grep icon-theme; export | grep DESKTOP
org.cinnamon.desktop.interface icon-theme 'gnome'
org.cinnamon.desktop.interface icon-theme-backup 'gnome'
com.canonical.unity-greeter icon-theme-name 'ubuntu-mono-dark'
org.gnome.desktop.interface icon-theme 'Adwaita'
declare -x DESKTOP_SESSION="ubuntu"
declare -x GNOME_DESKTOP_SESSION_ID="this-is-deprecated"
declare -x XDG_CURRENT_DESKTOP="ubuntu:GNOME"
declare -x XDG_SESSION_DESKTOP="ubuntu"
答案1
我最初在 WSL 1 上新安装的 Ubuntu 20.04 中遇到了这个问题,后来在 WSL 2 上的 Ubuntu 22.04 中也遇到了这个问题。我想分享一下解决方案最初指出来自@logoff:
我安装了 adwaita-icon-theme-full 包:
sudo apt update
sudo apt install adwaita-icon-theme-full
此后,meld 开始正常运行。
答案2
我刚刚遇到了 meld 的这个问题(但是我试图在具有 X11 转发的 docker 容器内运行它)。我的问题是我没有在 docker 容器中安装主机上的图标主题(对我来说是 ubuntustudio-icon-theme)。如果找不到它期望的图标,Meld 似乎会非常沮丧。
也许值得尝试一下apt install adwaita-icon-theme
(我还注意到一个 adwaita-icon-theme-full 包...不知道这是否与您的问题有关)。
(我意识到我的设置可能与你的不同,这可能无法解决你的问题,但我认为值得一提的是,它可以帮助所有 3 个在 docker 中努力使用 meld 的人)