[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Help in querying xlsfonts for a particular font from elisp
From: |
Andrew M. Scott |
Subject: |
Re: Help in querying xlsfonts for a particular font from elisp |
Date: |
Mon, 28 Aug 2006 10:24:23 -0700 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (gnu/linux) |
>>>>> "Kevin" == Kevin Rodgers <ihs_4664@yahoo.com> writes:
Kevin> Andrew M. Scott wrote:
>> I'd like help with cleaner solution to test for a supported
>> platform font.
>>
>> (when (<need-some-help-here>) (set-face-font 'default
>> "-bitstream-bitstream vera sans
>> mono-medium-r-*-*-16-120-*-*-*-*-*-1")
>> ;; AMS: Not clear why I need these next two lines
>> (add-to-list 'default-frame-alist '(font .
>> "-bitstream-bitstream vera sans
>> mono-medium-r-*-*-16-120-*-*-*-*-*-1")) (add-to-list
>> 'initial-frame-alist '(font . "-bitstream-bitstream vera sans
>> mono-medium-r-*-*-16-120-*-*-*-*-*-1")) (set-frame-position
>> (selected-frame) -8 -100) )
Kevin> You need `if', not `when' there.
Yup. My error.
>> but the shell calling subtleties escape me. Is there a
>> non-interactive version of shell-command?
Kevin> First, does (x-list-fonts "-bitstream-bitstream vera sans
Kevin> mono-medium-r-*-*-16-120-*-*-*-*-*-1") work?
Returns nil (=> Emacs doesn't know about it).
Kevin> If not, try calling the xlsfonts command with
Kevin> `shell-command-to-string' instead of `shell'.
Thanks for the pointer, Kevin!
Here's my .updated emacs fragment, which is working for me. I'm
depending on xlsfonts returning "unmatched" if the 'vera sans mono'
doesn't exist on that platform.
;; Use the bitstream vera sans mono font if available
(when (executable-find "xlsfonts")
(unless (string-match "unmatched"
(shell-command-to-string "xlsfonts -fn '-bitstream-bitstream vera sans
mono-medium-r-*-*-16-120-*-*-*-*-*-1'"))
(set-face-font 'default "-bitstream-bitstream vera sans
mono-medium-r-*-*-16-120-*-*-*-*-*-1")
(add-to-list 'default-frame-alist '(font . "-bitstream-bitstream vera sans
mono-medium-r-*-*-16-120-*-*-*-*-*-1"))
(add-to-list 'initial-frame-alist '(font . "-bitstream-bitstream vera sans
mono-medium-r-*-*-16-120-*-*-*-*-*-1"))
(set-frame-position (selected-frame) -8 -100)
))
Thanks again!
Andy Scott