12
votes

Qu'est-ce qui provoque cette erreur graphique dans EMACS avec le mode Linum sur OS X?

Je reçois cette erreur graphique avec le mode Linum dans mes EMACS. J'ai essayé de passer de 23 à 24 ans (via Git) et j'ai essayé à la fois avec divers binaires fournis en ligne et avec ma version accompagnée de la maison. Ce que je suis vraiment intéressé, c'est où commencer diagnostiquer le problème.

Le problème disparaît si je fais défiler les numéros de ligne déchirés hors écran et retour dans.


0 commentaires

5 Réponses :


11
votes

J'ai connu le même problème et j'ai passé un peu de temps à essayer de le résoudre. L'erreur graphique résulte d'un choc entre le mode Linum et la manière dont la frange est rendue. Malheureusement, je n'ai pas pu résoudre le problème de Linum.el et le code d'affichage Fringe fait partie de la source C.

On peut toujours être fait! Le moyen le plus simple de résoudre consiste simplement à éteindre la frange. P> xxx pré>

pour rendre la frange de manière permanente, je vous recommande de personnaliser les paramètres avec MX personnaliser-group sur le groupe RET Fringe code> car certaines versions compilées de EMACS pour Mac OS X ont leurs propres paramètres de franges qui peuvent remplacer des parties de votre fichier .emacs. P>

Je n'ai pas vraiment besoin de ces indicateurs d'enveloppement. Ne pas avoir une frange ne me dérange pas. Cependant, j'ai manqué une légère séparation entre les numéros de ligne et le texte tampon. J'ai suivi l'avis d'un poste sur le wiki Emacs pour obtenir cet espacement. Dans la version 0.9x de linum, changez la ligne 160 de p> xxx pré>

à p> xxx pré>

L'inspiration de ce changement est ici: http://www.emacswiki.org/emacs/linenumbers p>

Il y a des arguments à la source Lien pour définir la variable code> linum-format > au lieu de modifier linum.el. Bien que je comprends d'où ils viennent, la plupart des thèmes de couleur ces jours-ci coloraient l'espace supplémentaire et ne fourniraient pas ce que je cherche (une séparation d'un espace qui est la couleur de fond). Si vous modifiez Linum.el, assurez-vous d'exécuter P>

M-x emacs-lisp-byte-compile-and-load


0 commentaires

0
votes

Voici comment j'ai la configuration dans mon .emacs et je n'ai pas le problème, bien que je n'utilise pas non plus EMACS avec GTK ou une autre interface graphique.

(mode Linum +1)

(SETQ LINUM-FORMAT "% D")

Vous voudrez peut-être pirater avec (setq linum-format) pour voir si vous pouvez obtenir de bons résultats. N'oubliez pas non plus de parcourir Emacswiki sur Linum .


0 commentaires

8
votes

J'ai eu le même problème et j'ai compris une solution et que ce n'est pas la plus jolie, en raison d'un espace supplémentaire à gauche du numéro de ligne, c'est beaucoup plus élégant que de changer la linum.el. Voici la partie pertinente de mes ~ / .emacs: xxx

Cela supprime le problème de la superposition de frange et n'a pas d'autre impact autre que compensant le numéro de ligne. >


0 commentaires

1
votes

Pour faire une séparation entre les numéros de ligne et le texte tampon, le changement de suivi sera meilleur:

dans la version 0.9x de Linum, changez la ligne 150 de

(Concat "%" (numéros à chaîne w) "D"))))

à

(Concat "%" (numéros à chaîne w) "d"))))

Ceci fait que la séparation a la même couleur de fond avec les numéros de ligne '.


1 commentaires

La modification du code d'origine n'est pas une bonne idée, cependant. Je suggérerais d'adopter le code à la réponse suivante et de passer à cela à la place: Stackoverflow.com/a/11496199/324105



0
votes

Le problème était toujours ici sur EMACS 24.4, OS X 10.10.1. La solution que j'ai élaborée: Après avoir chargé le thème de votre choix:

(load-theme 'whatever)
(set-face-attribute 'fringe nil :background (face-background 'default))


0 commentaires