la mise en place de polices mono-espacées sur Emacs?

6

J'avais l'habitude d'utiliser la police mono de libération sur emacs (sous X11) sur un système Ubuntu à l'aide de la commande suivante et cela fonctionnait très bien:

(custom-set-faces
  '(default ((t (:inherit nil :stipple nil :background "lightgrey" :foreground "gray20" :inverse-video nil :box nil :strike-through nil :overline nil :underline nil :slant normal :width normal :height 120 :family "liberation mono"))))
  '(background "blue")
  '(font-lock-builtin-face ((((class color) (background dark)) (:foreground "Turquoise"))))
  '(font-lock-comment-face ((t (:foreground "darkred"))))
  '(font-lock-constant-face ((((class color) (background dark)) (:bold t :foreground "DarkOrchid"))))
  '(font-lock-doc-string-face ((t (:foreground "lightblue"))))
  '(font-lock-function-name-face ((t (:foreground "blue"))))
  '(font-lock-keyword-face ((t (:bold t :foreground "steelblue"))))
;  '(font-lock-keyword-face ((t (:bold t :foreground "CornflowerBlue"))))
  '(font-lock-preprocessor-face ((t (:italic nil :foreground "CornFlowerBlue"))))
  '(font-lock-reference-face ((t (:foreground "DodgerBlue"))))
  '(font-lock-string-face ((t (:foreground "Aquamarine4")))))

Cela ressemblait à ceci:

enter image description here

Notre administrateur système a mis à niveau vers une nouvelle version d'Ubuntu et la police est maintenant complètement différente dans emacs. Il ne semble plus anti-aliasé, apparaît "moins gras" et ressemble à ceci:

enter image description here

J'essaie de faire en sorte que cela ressemble à ce qu'il était avant. En gros, je veux une apparence de police qui ressemble le plus possible à la police Monaco à largeur fixe sous Mac OS X, qui ressemble à ceci sur mon terminal:

enter image description here

Comment cela peut-il être fait? Des idées? Je ne peux pas le comprendre. Merci.

user46976
la source

Réponses:

2

Vous pouvez toujours utiliser la police monaco:

  1. Créer un nouveau répertoire de polices

    sudo mkdir /usr/share/fonts/truetype/mine
    
  2. Obtenez Monaco.ttf

    sudo wget http://usystem.googlecode.com/files/MONACO.TTF -O /usr/share/fonts/truetype/mine/MONACO.TTF
    
  3. Mettre à jour votre cache de polices

    fc-cache -f -v   
    
  4. Dites à Emacs d'utiliser la police Monaco. Ajouter cette ligne à votre ~/.emacs:

    (set-default-font "monaco")
    

    Personnellement, je le préfère un peu plus petit qu’il n’apparaît avec le réglage par défaut ci-dessus, alors j’utilise

    (set-default-font "-apple-Monaco-normal-normal-normal-*-14-*-*-*-*-0-iso10646-1")
    
terdon
la source
0

Vous pouvez essayer d'utiliser le niveau inférieur set-frame-font.

(set-frame-font "Liberation Mono-14:antialias=1")

Changer le 14 à la taille que vous voulez. le antialias l'option devrait être explicite; 1 pour sur, 0 pour off.

Vous pouvez également utiliser des choses comme Liberation Mono-bold-14:antialias=1 pour le texte en gras (ou Liberation Mono-14:weight=bold:antialias=1.

Si votre hauteur de 120 (dans votre configuration d'origine) est importante, ajoutez :height=120.

Informations plus détaillées dans le manuel officiel , bien qu’il semble que cela n’énumère pas toutes les options.

qmega
la source
merci, mais à la réflexion, je ne suis pas sûr que la police d'origine que je souhaite utiliser soit Liberation Mono. Il se peut que le système utilise par défaut la monospace ou la police système par défaut, ce que fait emacs. J'essaie simplement d'obtenir exactement la même police que la capture d'écran ci-dessus. Savez-vous de quelle police il s'agit?
user46976
Je suppose que cela aurait pu être DejaVu Sans Mono; c'est une police mono assez commune par défaut pour les distributions Linux. La capture d'écran que vous avez là-haut ressemble vraiment à Liberation Mono, cependant. Si vous avez accès à un environnement où il fonctionne comme avant, vous pouvez utiliser M-x describe-font pour savoir à coup sûr. Il pourrait cependant y avoir d'autres problèmes. Peut-être que la police que vous aviez n’est plus installée par défaut; il y a de bonnes chances que cette mise à niveau passe de 10,04 LTS à 12,04 LTS, et la première est une version avant l'ajout des nouvelles polices Ubuntu. (Je n'utilise pas Ubuntu, donc je ne suis pas tout à fait sûr de cette information.)
qmega
Si ce que vous voulez vraiment, c'est Monaco, y a-t-il une raison pour laquelle vous ne pouvez pas simplement le copier à partir de votre ordinateur OS X et l'installer en mode local sur ce système?
qmega
je vois sur ma boite mac /System/Library/Fonts/Monaco.dfont - Je n'en ai pas besoin .ttf format à utiliser sur Ubuntu? Si oui, comment puis-je le convertir en ttf ou trouver le ttf version sur mon mac?
user46976
dfont est en fait un conteneur pour les polices TrueType, il vous suffit donc de les extraire. Fondu fera cela pour vous.
qmega
0

Cela fait plus de six mois que vous avez posté votre question. Il n'est pas clair que vous ayez trouvé la réponse.

Voir cette page sur le wiki Emacs: SetFonts . Il contient tout ce dont vous avez besoin de savoir sur l’affichage des polices installées et sur le choix de celle pour Emacs.

Drew
la source