2012-11-05 5 views
5

Ho reinstallato il mio emacs e ora sto usando emacs v24.3.50 con auto-complete v1.4 e popup.el v0.5. Sfortunatamente il "menu" popup del completamento automatico è un po 'rotto (vedi screenshot allegato).
I diversi elementi non sono allineati lungo una linea verticale comune [ignorare la sovrapposizione nera, che deriva da CEDET e probabilmente è destinata a essere posizionata sul lato destro accanto al menu a comparsa; il problema rimane quando si disabilita CEDET, quindi non è correlato).Menu popup auto-completo di Emacs interrotto

example of error

Da quello che posso dire sembra che la portata di questo "passaggio" tra le righe dipende da quanto la lunghezza delle stringhe è diversa. Inoltre, quando si seleziona un suggerimento diverso usando i tasti freccia, lo spostamento orizzontale delle linee cambia leggermente (~ pochi pixel) ogni volta che il segno viene spostato di una riga su/giù.

Ho caricato la parte del mio .emacs.d/init.el utilizzata per la configurazione del completamento automatico here.

Qualche suggerimento su come risolvere questo problema?

risposta

9

Sembra che si stia utilizzando un carattere proporzionale, che interrompe il calcolo del bordo sinistro dell'overlay.

si può provare a cambiare il modo in cui completamento automatico calcola la colonna:

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

si può anche cambiare ad un carattere a larghezza fissa.

Si noti che alcuni altri sistemi di completamento per Emacs possono utilizzare tooltip anziché overlay, che eviterebbero questo problema.

+1

L'impostazione di tale variabile non ha funzionato, ma il passaggio a un font a larghezza fissa ha fatto il trucco (ora sto usando "Inconsolata", non sapevo che il font che ho usato non era a larghezza fissa). Grazie! – elemakil