2012-11-05 60 views
5

我已經重新安裝了我的emacs,現在我正在使用emacs v24.3.50與auto-complete v1.4和popup.el v0.5。不幸的是,自動完成的彈出式「菜單」有點兒壞了(見附件截圖)。
不同的項目沒有沿着一條垂直線對齊[忽略黑色覆蓋,源自CEDET,可能意味着放置在彈出菜單旁邊的右側;當禁用CEDET時仍存在問題,所以不相關)。Emacs自動完成彈出菜單損壞

example of error

從我可以告訴它看起來像這樣行之間「移動」的程度取決於字符串的長度多少不同。另外,當使用箭頭鍵選擇不同的建議時,每當標記向上/向下移動一行時,線的水平移動會稍微變化(〜幾個像素)。

我已經上傳了我的.emacs.d/init.el中用於配置自動完成here的部分。

有關如何解決此問題的任何建議?

回答

9

看起來您使用的比例字體打破了疊加層左邊緣的計算。

您可以嘗試更改自動完成計算列的方式:

(setq popup-use-optimized-column-computation nil) 

您也可以更改爲固定寬度的字體。

請注意,Emacs的一些其他完成系統可以使用工具提示而不是覆蓋,這將避免此問題。

+1

設置該變量不起作用,但切換到固定寬度的字體沒有技巧(我現在使用'Inconsolata';不知道我使用的字體不是固定寬度)。謝謝! – elemakil