Emacs自动完成弹出菜单已损坏

Emacs自动完成弹出菜单已损坏,emacs,autocomplete,elisp,Emacs,Autocomplete,Elisp,我已经重新安装了我的emacs,现在我正在使用emacs v24.3.50和auto completev1.4和popup.elv0.5。不幸的是,auto complete的弹出“菜单”有点坏(请参阅所附的屏幕截图)。 不同的项目没有沿着公共垂直线对齐[忽略黑色覆盖,它源于CEDET,可能要放在弹出菜单旁边的右侧;禁用CEDET时问题仍然存在,因此不相关) 据我所知,行与行之间的“偏移”程度似乎取决于字符串的长度差异。此外,当使用箭头键选择不同的建议时,每次标记向上/向下移动一行时,行的水平

我已经重新安装了我的emacs,现在我正在使用emacs v24.3.50和
auto complete
v1.4和
popup.el
v0.5。不幸的是,auto complete的弹出“菜单”有点坏(请参阅所附的屏幕截图)。
不同的项目没有沿着公共垂直线对齐[忽略黑色覆盖,它源于CEDET,可能要放在弹出菜单旁边的右侧;禁用CEDET时问题仍然存在,因此不相关)

据我所知,行与行之间的“偏移”程度似乎取决于字符串的长度差异。此外,当使用箭头键选择不同的建议时,每次标记向上/向下移动一行时,行的水平偏移会发生一点变化(~几个像素)

我已经上传了
.emacs.d/init.el
中用于配置自动完成的部分


关于如何解决这个问题有什么建议吗?

看起来您使用的是比例字体,这打破了覆盖左侧边缘的计算

您可以尝试更改“自动完成”计算列的方式:

(setq popup-use-optimized-column-computation nil)
您还可以更改为固定宽度字体


请注意,其他一些Emacs补全系统可以使用工具提示而不是覆盖,这将避免此问题。

设置该变量不起作用,但切换到固定宽度字体才起作用(我现在使用的是
Incolata
;不知道我使用的字体不是固定宽度)。谢谢!