How do I get my Emacs to *always* use 6x13 on X11

走远了吗. 提交于 2019-12-04 08:31:16

问题


I recently declared .emacs bankrupcy and reorganized my init stuff. In the process, I ripped out all the hacky font selection stuff I had accrued over the years, figuring there are probably easier ways to accomplish what I want in the most modern version of emacs.

GNU Emacs 23.0.91.1 (i686-pc-linux-gnu, GTK+ Version 2.14.4)
on a GNU/Linux System (Ubuntu 8.10).

Let's ignore, for the moment, the fact that I also run emacs under Mac OS X (GUI+Terminal) and occasionally on Windows and just focus on the X11 case:

(Background: The font 6x13 has been part of X11 for as long as I can remember. (a.k.a misc-fixed semi-condensed ...). It's a bitmap font.)

  • I want emacs to always use the X11 bitmap font 6x13. (This gives me two buffers next to eachother on my netbook.)
  • I don't want to see DejaVu Sans Mono 16pt or whatever the heck comes up by default on my netbook (it's huge!)
  • I want every new frame and window to use this font.
  • I want derived faces (like org-mode-column) to use 6x13 font and not mysteriously switch back to DejaVu Sans Mono
  • I don't care what GNOME and X11 think the logical DPI of my screen is. I want 6x13.
  • When I remote into my netbook (NX Machine) I don't want to see 6x10. I want 6x13.
  • In case there's any doubt: I want 6x13.

What's the canonical way to do to make this happen?

And before some smart-aleck tells me about menu: Options>>Set Default Font: the resulting dialog box doesn't even offer bitmap fonts, so there's no way to choose 6x13. Furthermore, it doesn't solve the problem with org-mode: table-views still come up with the wrong font.


回答1:


I control this stuff from my .Xresources file.

Personally I have

emacs.reverseVideo:     true
emacs.font:             7x13bold

(And I quite agree... long live the bitmap fonts! I'll take my xterm with

XTerm*foreground:       green
XTerm*background:       black
XTerm*font:             7x13bold

... over the Gnome terminal any day).

If you're playing with .Xresources from within a session, xrdb command is useful to reload them.




回答2:


You want to set the default frame parameters in your .emacs.

  • find out the name of the font you want to use
  • add the needed value to the default-frame-alist.

The easiest way, actually, is to use customize and customize default-frame-alist, but can also use elisp and write

(setq default-frame-alist 
   '(font . "-*-*-medium-r-normal--16-*-*-*-*-*-fontset-hiramin_w6"))

That's stolen from my emacs, you'll need to find the full font name (xfontsel?) for the font you want.

See also the EmacsWiki on setting fonts and faces.




回答3:


For anyone reading this with a recent Linux distribution you will have to install 6x13 first (yes, sounds obvious..). There are instructions here for Ubuntu/Debian which should work on other distros too if you skip the apt-getting of random fonts. Install the "FixedSC" .tgz from there (it unpacks to /usr/local/share/fonts) then follow the instructions to add it to the font cache so it will appear in the Gnome Font selection dialog.



来源:https://stackoverflow.com/questions/623748/how-do-i-get-my-emacs-to-always-use-6x13-on-x11

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!